Update Changelog and README
[browser-switch] / README
1 BROWSER SWITCHBOARD
2
3 Browser Switchboard is a program which allows you to choose which
4 browser to use as the default browser. It supports MicroB, Tear,
5 Fennec/Mobile Firefox, and Midori out of the box, and can also be used
6 to launch MicroB without having browserd running.
7
8
9 Download:
10 Binary packages and source are available for download from the project
11 page on garage.maemo.org: https://garage.maemo.org/frs/?group_id=1159
12
13
14 Quick Start:
15 1. Download the binary package: browser-switchboard_X.Y-Z_all.deb
16 (where X.Y-Z is the version number, of course).
17 2. Install the package using the Application Manager (open the
18 Application Manager, then select Application->Install from file in the
19 menu).
20
21 You can now select the default browser by using the Browser Switchboard
22 applet in the Control Panel.  Links in most applications, locally-saved
23 web pages opened from the file manager, and (for Maemo 4.x) entries in
24 the Web sidebar panel will open in the browser that you select as the
25 default.  If you don't configure a default browser, MicroB will continue
26 to be used as the default browser.
27
28 No matter which browser you select as the default, MicroB can always be
29 opened via the Web menu entry in the applications menu (for Maemo 4.x,
30 located in the Internet menu by default), or by running "browser" from
31 the shell.  While MicroB is open, it will receive all links from other
32 applications; closing MicroB will restore your chosen default browser.
33
34 Some users have reported that a restart may be necessary to ensure that
35 Browser Switchboard is functioning.  If you experience trouble after
36 installing the package, try rebooting your device first.
37
38
39 Configuring the Default Browser by Hand:
40
41 If for some reason, you don't want to use the Control Panel applet to
42 configure Browser Switchboard, you can create the configuration file by
43 hand from a shell.  Run the following (where $ is your prompt, not
44 something you type):
45
46 $ cat > $HOME/.config/browser-switchboard <<EOF
47 default_browser = "your_browser"
48 EOF
49
50 where your_browser can be one of "tear", "microb", "fennec", "midori",
51 or "other" (see below for more on the "other" option).  You can of
52 course also edit the $HOME/.config/browser-switchboard file with your
53 favorite text editor.
54
55 To restore the default behavior, just delete the config file:
56
57 $ rm $HOME/.config/browser-switchboard
58
59
60 Advanced Configuration:
61
62 Here's a more complete sample configuration file:
63
64 # BEGIN SAMPLE CONFIG FILE
65 # This is a comment
66 # continuous_mode: 0 -- close after handling a request; 1 -- run
67 # continuously in the background
68 continuous_mode = 0
69 # default_browser: "tear", "microb", "fennec", "midori", or "other"
70 default_browser = "tear"
71 # other_browser_cmd: If default browser is "other", what program
72 # to run (%s will be replaced by URI)
73 #other_browser_cmd = "some_browser %s"
74 # END SAMPLE CONFIG FILE
75
76 Lines beginning with # characters are comments and are ignored by the
77 script.
78
79 In continuous mode, Browser Switchboard keeps running in the background
80 instead of closing after handling each request.  This saves a bit of
81 startup time for each link (on my N800 running Diablo), but costs you
82 about 100 KB extra memory.  Continuous mode is disabled by default; set
83 continuous_mode to 1 to enable.  [This option corresponds to the
84 "Optimize Browser Switchboard for" option group in the UI; "Lower memory
85 usage" corresponds to continuous_mode off, while "Faster browser startup
86 time" corresponds to continuous_mode on.]
87
88 The "tear", "microb", "fennec", and "midori" options for default_browser
89 should be self-explanatory.
90
91 If the default browser is "other", Browser Switchboard will run the
92 program specified in other_browser_cmd as the default browser, with a
93 URI replacing the %s on the command line; for example, if
94 other_browser_cmd is set to "some_browser %s", and Browser Switchboard
95 is asked to load http://www.google.com/, it will perform the equivalent
96 of typing in 
97
98 $ some_browser 'http://www.google.com/'
99
100 at a shell.
101
102
103 Browser Switchboard and MicroB's browserd:
104
105 MicroB uses a background process called browserd to decrease its load
106 time.  Browser Switchboard knows how to launch MicroB without having
107 browserd running all the time, so if you don't plan on using MicroB
108 often, you can disable browserd (for example, by using the
109 maemo-control-services control panel applet available in Maemo Extras to
110 disable tablet-browser-daemon).  This will save you about 1 MB of
111 memory, but add a few seconds to MicroB's load time.
112
113
114 Uninstalling Browser Switchboard:
115
116 Remove the Browser Switchboard package using the Application Manager,
117 and everything should be back to normal.  A reboot may be necessary for
118 changes to take effect -- if you experience problems, try restarting
119 your device first.
120
121
122 Compiling Browser Switchboard:
123
124 If for some reason you don't want to use the prebuilt binary package to
125 install Browser Switchboard, you can compile and install by hand:
126 1. You will need a copy of the SDK for your device.  Make sure the
127 following packages are installed: libdbus-glib-1-dev for
128 browser-switchboard; libdbus-1-dev, libgtk2.0-dev, hildon-dev,
129 hildon-control-panel-dev for the config UI.
130 2. Download the source tarball: browser-switchboard_X.Y.orig.tar.gz
131 3. Unpack the source tarball in your SDK install:
132
133 SDK$ tar -xvzf browser-switchboard_X.Y.orig.tar.gz
134 SDK$ cd browser-switchboard-X.Y
135
136 4. Compile:
137
138 SDK$ make
139 SDK$ make -C config-ui
140
141 (If you want the standalone config application instead of the Control
142 Panel plugin, do 
143 SDK$ make -C config-ui hildon-app
144 instead.
145
146 If you're using the Scratchbox2-based SDK+, you want
147 SDK+$ sb2 make
148 etc. as usual.)
149
150 5. Install to a temporary directory, and tar up the result:
151
152 SDK$ make DESTDIR=temp install
153 SDK$ make -C config-ui install
154 SDK$ cd temp
155 SDK$ tar cf stuff.tar .
156
157 6. As root on your device, move files that will be replaced in the
158 install process out of the way:
159
160 DEVICE# mv /usr/share/dbus-1/services/com.nokia.osso_browser.service
161   /usr/share/dbus-1/services/com.nokia.osso_browser.bak
162 DEVICE# mv /usr/bin/browser /usr/bin/browser.bak
163
164 7. Copy the tar file from step 5 to your device, and as root, unpack it
165 in the root directory of your device:
166
167 DEVICE# cd /
168 DEVICE# tar xf /path/to/stuff.tar
169
170 To uninstall, remove the files you installed, restore the backup copies,
171 and reboot your device.
172
173
174 Bug Reports and Patches:
175
176 Bug reports, patches, and suggested improvements can either be sent to
177 the maintainer via email (see below) or posted in the Tear thread on the
178 talk.maemo.org forums (http://talk.maemo.org/showthread.php?t=28539).
179
180
181 Source Code Repository:
182
183 Source code is hosted in a Git (http://git-scm.com/) repository on
184 git.maemo.org.  You can get a copy of the current development version by
185 cloning the repository:
186
187 $ git clone https://git.maemo.org/projects/browser-switch
188
189 or you can browse the source using gitweb
190 (https://git.maemo.org/projects/browser-switch/?p=browser-switch;a=summary).
191
192
193 Maintainer:
194
195 Steven Luo <steven+maemo@steven676.net> is the primary maintainer, with
196 Jason Simpson (the original developer) assisting in development.
197
198
199 License:
200
201 Browser Switchboard is available under the terms of the GNU General
202 Public License (GPL), version 2 or later (see the file LICENSE in the
203 source).