2 ### Plans for USB Tor bundle
3 ### Steven J. Murdoch <http://www.cl.cam.ac.uk/users/sjm217/>
9 - Apply chrisd's SOCKS patch to remove the need for an http proxy
10 altogether. chrisd's patch is linked here,
11 https://bugzilla.mozilla.org/show_bug.cgi?id=280661
12 (NB: Currently applied in the Linux version of TBB, as of 1.1.0 -- EC)
14 - Produce new branding so we don't infringe on the Mozilla trademarks
15 [ Instructions here http://kb.mozillazine.org/Rebranding_Firefox ]
16 [ We've sent 3 emails with no response so far. -Andrew]
19 - Get FirefoxPortable building
21 Build our own firefox with our desired customizations
23 Scrap Firefox and switch to a browser with Tor integration.
26 - Eventually try to remove NSIS dependency for FirefoxPortable and
27 move any necessary code into Vidalia. See docs/ToaST-startup.txt
28 for what we will want to do.
31 - Tailor error messages so are more appropriate to Tor (e.g. point out
32 dangers when submitting forms to non-HTTPS URLs)
35 - Check if setting -UILocale command line option, and match is a more reliable
36 way of setting locale than general.useragent.locale.
37 Alternatively, try intl.locale.matchOS=false and set environment
39 See related Firefox code:
40 http://lxr.mozilla.org/mozilla1.8.0/source/xpfe/bootstrap/nsAppRunner.cpp#802
45 - Check that SOCKS 5 proxy is always used if configured
47 - Don't include real account name when generating IRC realname
52 - OCSP_RESPONSE is defined both in ssl/include/openssl/ossl_typ.h and
53 wincrypt.h, which causes an error on building Tor. This can be fixed
54 by renameing the #define in wincrypt.h, but something better should
56 http://www.mail-archive.com/openssl-dev@openssl.org/msg24079.html
58 - Use process monitor to watch filesystem activity:
59 http://www.microsoft.com/technet/sysinternals/utilities/processmonitor.mspx
61 [ Vidalia doesn't appear to alter the registry other than the RNG
62 seed and MountPoints2. Tor does this too, so can it be stopped?
63 Firefox/FirefoxPortable alters other keys (Audio Compression
64 Manager, Tcpip\Parameters, Shell Folders, Internet Settings) ]
67 - What should the installer look like (should it have the Tor logo)?
68 We need to be clear in the documentation about the difference between
69 the installer and the actual bundle
72 - Ensure Firefox update works securely
75 - Investigate updating Tor automatically
78 - Add ToaST-like bootstrap mode/other pre-caching/disk-caching
79 performance improvements (and understand the bottleneck)
81 - Move "installer" to something more usable (NSIS?)
82 - Set default extraction location the Desktop
83 - Allow it to be translated
84 - Make the directory selector clearer (not "...")
86 - Investigate how to build Windows packages in a deterministic way so
87 others can build them and compare digests.
89 - Ask specific vendors to sign their packaged binary releases, probably with
90 pgp/gpg. The packages are: 7zip, MinGW, MSYS, CMake, QT, msysDTK,
93 Letters requesting package signatures have been sent to: zlib, MinGW, MSYS,
96 Soon letters will be sent to:
97 QT, msysDTK, FirefoxPortable
99 A forum post requesting package signatures have been posted for 7zip:
100 http://sourceforge.net/forum/message.php?msg_id=4982530
107 - Make Vidalia show some evidence of activity while it is starting Tor
108 [mid priority -- what do you have in mind here?]
110 - Also make Vidalia show what percentage progress Tor has made in
111 building a circuit (needs Tor to send events while startup is proceeding)
112 - Tor should send out more status_event messages based on various
113 milestones towards its circuit-establishment phase.
114 - Vidalia should recognize these and either change the text for
115 "Tor is starting up", or have a status bar, or something.
119 Perhaps based on this library http://search.cpan.org/src/SKONNO/Net-UPnP-1.2.1/
121 - Check if Torbutton behaves as intended if pre-configures by prefs.js
123 - Modify Torbutton to prevent user from disabling Tor (easily)
126 - Split archive or make auto-downloader to help people who cannot
127 download large files in one go
131 - If we can't make a static build of Vidalia, produce a small
132 executable to launch Vidalia (so the top level folder doesn't have
133 random DLLs lying around)
136 - Because the batch file cannot have an icon other than the default windows
137 icon, perhaps we should abandon the batch file and use a windows specific
138 shortcut. This would allow us to use the Vidalia icon and Vidalia will do all
139 of the work that the batchfile once did. This may not work if shortcuts are
144 - Make it easier to include optional Firefox extensions
147 - Make Vidalia start and stop Polipo too
151 - Make a web page for bundle
154 - Add bookmarks that will help people understand tor better
156 - A hidden service of some sort?
157 - A "check if your Tor is leaking" page
165 - Add version numbers to builds
168 [ Done: 2007-12-13 -- I think users should be able to stop (and
169 restart Tor) without exiting Firefox. I've added the code to kill
170 the browser when Vidalia exits but this won't work until
171 PortableFirefox is replaced with Vidalia. ]
172 - What to do when user clicks "Stop Tor" or exits Vidalia: Don't let them do it?
173 Kill Firefox? Show a helpful message?
174 We could make Vidalia change its button labels when it has launched Firefox
175 for us, to make it clearer what clicking "stop tor" and "exit" will do.
177 [ Done: 2007-12-19 -- it does guess, but this isn't good for a
179 - Check whether Vidalia auto-detects language if not specified. If
180 this is likely to guess right, then maybe we should not specify in
184 [ Done: 2007-12-19 -- as of r12876 ]
185 - Let us build a Simplified-Chinese and Farsi version. These
186 would have Vidalia and Firefox configured to use these languages
190 * We need a better Farsi translation in that case
191 Once we have it working reasonably well, we should bug our Farsi-speaking
192 friends (for example, our friends at IBB) for help.
195 - Investigate how to programmatically add extensions and modify
196 preference files (partially complete).
197 Adding them to user.js will override user modifications (sometimes
199 Adding them to all.js is better, but entries must be sorted (are
200 there other constraints?)
202 http://forums.mozillazine.org/viewtopic.php?p=1270157&sid=4fe009726e77cb0ae2a07dcf1e179fe6
204 [ Sorting them didn't work -- there is more magic here ]
207 Torbutton [important]
208 https://addons.mozilla.org/en-US/firefox/addon/2275
209 [We should use the latest dev version of this -RD]
211 Extensions we might want (from xB Browser and ToaST):
213 https://addons.mozilla.org/en-US/firefox/addon/1865
215 https://addons.mozilla.org/en-US/firefox/addon/16
217 http://prefbar.mozdev.org/
218 Quick Locale Switcher
219 https://addons.mozilla.org/en-US/firefox/addon/1333
221 https://addons.mozilla.org/en-US/firefox/addon/31
223 https://addons.mozilla.org/en-US/firefox/addon/1249
225 http://www.bamm.gabriana.com/ [inaccessible 2007-12-13]
227 Extensions we don't want (from xB Browser and ToaST):
229 https://addons.mozilla.org/en-US/firefox/addon/3336
230 [Once we have polipo, it will be the one providing error
231 messages. Does that make this extension moot? I think so. -RD]
232 Flush Tor Circuit [superseded by Vidalia]
234 NoScript [probably superseded by Torbutton]
235 https://addons.mozilla.org/en-US/firefox/addon/722
238 - Decide what preferences to set and what extensions to pre-install
239 [ xB use this: http://archives.seul.org/or/talk/Nov-2007/msg00227.html ]
242 - Restore some/all Firefox settings on exit
243 For example, if the user turned off Torbutton.
244 We should accumulate other examples here.
247 [ Done 2007-12-25 -- it's the "Tor Browser Bundle" ]
249 - Come up with a new name
252 Vidalia modifications
253 ---------------------
255 - Prevent user from starting Firefox manually while Tor is still
258 - Allow normal Firefox and Tor Browser to co-exist safely
261 - Make Vidalia kill Firefox when it exits. Currently Vidalia
262 terminates the process, but killing FirefoxPortable does not end Firefox.
263 Either we could kill firefox.exe directly, or wait until Vidalia
266 - Firefox 3 will not support Windows prior to XP. Is this a problem for
267 our userbase? [Turns out, no -Andrew]