Opened 7 years ago

Closed 6 years ago

Last modified 16 months ago

#7842 closed enhancement (fixed)

make a graphical TBB installer (extractor)

Reported by: proper Owned by: mo
Priority: Medium Milestone:
Component: Applications/Tor bundles/installation Version:
Severity: Keywords: tbb-usability
Cc: proper Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

Quote: PET: Eliminating Stop-Points in the Installation and Use of. Anonymity Systems

Issue: Archive Confusion (3/41)

Some users expected a guided “wizard” installer, and did not realize they had to click on “Start Tor Browser Bundle” once unzipping had occurred, leading to confusion.

Users could extract it, open their system browser afterwards and erroneously assume their traffic is already anonymized.

I don't agree with their suggestion (note on website) and will propose a better one.

Solution Windows:

Even thought TBB is portable, you can still make a minimal installer which asks where to extract, extracts and optionally starts it.

Firefox Portable by portableapps.com has a much more intuitive installer for Windows.

If you don't want to try it, there is short video. (Turn of the music, jump to 1:40 min Seconds and watch until 3:00 min.) The installer is Free Software and the only missing feature is optionally starting TBB.

Solution Linux:

  • #5236 "Make a deb of the Torbrowser and add to repository"
  • #3994 "Get TorBrowser in Debian"
  • Or make a graphical installer (extractor).

Child Tickets

Change History (21)

comment:1 Changed 7 years ago by bastik

The TBBs for Windows are executables which ask where to extract, already. I don't know if the 7zip extractor is flexible enough to allow something to be launched after extraction.

(How hard can it be to open the folder you extracted it in and click on the executable called start-tor-browser?)

The FirefoxPortable "installer" (as well as the other executables, that aren't too old, from portableapps.com) optionally offers (via check-box) to launch the "installed" application. (The "installer" still allows to choose where to extract).
(Indeed a handy feature to launch what you extracted, comfortable feature)

Installers do a lot of things (wanted or not) like putting an icon on the desktop, add entries to the Start Menu (so people can start applications from there). (If I install, actually install, something I expect to find it in the Start Menu)(probably unwanted things for TBB anyway)

If you talk about users are used to install something... what about un-installing (user question on tor-talk)?

Installing things usually makes changes to the system (registry, add libraries to the system folder), so programs come with an un-installer to undo the changes. Some people deleted folders and thought everything would be fine, some just deleted the desktop icon and believed the program would be gone (Windows tells users that they have to unistall it, when they delete an shortcut that points to an installed application). People got told, that when they install something, they have to uninstall it instead of just deleting the folder. Someone saying "just delete the folder" could confuse them.

Maybe adding the word "portable" to the extractors filename would help a bit, because some people have learned that portable software behaves different than installed software. To be sure adding it to the folders name would be even better. (portableapss.com does that; Well, they also say "install", what I find misleading.)

I hope people are going to realize that they can safely delete the TBB folder after "installing" it, while being taught for years that deleting the folder is not enough.
(This seems to be a complex topic, diverting from my initial thought on how hard it would be, while assuming it's easy, to just execute start-tor-browser; why aren't we all robots.)

comment:2 Changed 7 years ago by proper

Owner: changed from erinn to mikeperry
Status: newassigned

Voting for keyword tbb-usability.

comment:3 Changed 7 years ago by mikeperry

Keywords: tbb-usability added

Our usability studies have in fact discovered that the extraction mechanism and destination directory are a common source of confusion. Specifically, http://petsymposium.org/2012/papers/hotpets12-1-usability.pdf lists "archive confusion" as the 4th most common "stop issue" that prevented people from using TBB. They tested only Windows 7, which uses the self-extracting exe, which I would have actually guessed as easier to figure out than a zip? Even in the best case, it's the same user activity though: Click on exe/zip, lose track of extraction folder, get confused.

See also #4261 for a similar issue for MacOS users.

comment:4 Changed 7 years ago by mikeperry

Owner: mikeperry deleted

This is not something I'm likely to do anytime soon, though. I'm not a Windows GUI programmer.

comment:5 Changed 6 years ago by mikeperry

Owner: set to mo

Moritz offered to help get us started here with an NSIS script.

comment:6 Changed 6 years ago by mo

A first basic version is online at https://github.com/moba/tbb-windows-installer .

apt-get install nsis
makensis torbrowser.nsi

will take a "./Tor Browser" directory and produce torbrowser-install.exe from it. In will prompt to run Tor Browser after installation (and will still confuse users who are not able to find Tor Browser again later), and warn if you are trying to overwrite existing Tor Browser installations.

A major hassle is multi-language support: While it does offer decent default language support, any custom string we add (like the warning about overwriting existing installations) will either default to English or would have to be translated. NSIS does not support .pot files out of the box so we cannot directly use Transifex, but it should be fairly easy to script this.

Even with highest compression, NSIS is not as space efficient as 7zip: 29.4MB vs. 26.5MB with the current stable release. We could use 7zip inside the NSIS installer, but we will lose the NSIS progress bar. There seems to be a 7zip plugin for NSIS, but I have not looked at it yet. Is this an issue?

Currently, the default location for TBB "installation" is the user desktop. I am not sure this is the best default, but I think it is an improvement over the installer directory (which is the 7zip default).

I would like to replace the generic Welcome page ("This wizard will guide you through the installation...") with some information about the portability of TBB (no shortcuts, simply delete of directory to uninstall, can install to USB device), but that again will add more language-dependent strings.

comment:7 in reply to:  6 ; Changed 6 years ago by phobos

Replying to mo:

will take a "./Tor Browser" directory and produce torbrowser-install.exe from it. In will prompt to run Tor Browser after installation (and will still confuse users who are not able to find Tor Browser again later), and warn if you are trying to overwrite existing Tor Browser installations.

We do not want an installer for TBB. TBB was created to get away from the horrible installers we had in the past. We had no end of issues with installers (which led to the creation of TBB). We should not spend time on installers.

Currently, the default location for TBB "installation" is the user desktop. I am not sure this is the best default, but I think it is an improvement over the installer directory (which is the 7zip default).

The default location is whatever directory in which the zip/exe files resides. What we want is a simple exe/zip/dmg that runs TBB, does everything behind the scenes, and just works. Users shouldn't be exposed to installers, un-extractors, etc. It should just simply be a download and run. This will encourage more users to run from torproject.org, but they already do this. The answer is to fix TBB, not write installers and dig more into a system.

I would like to replace the generic Welcome page ("This wizard will guide you through the installation...") with some information about the portability of TBB (no shortcuts, simply delete of directory to uninstall, can install to USB device), but that again will add more language-dependent strings.

We have this already, written up in a new check.tpo release by aagbsn. It's waiting on merging into the current check codebase before we can roll it out. I can't find the ticket for it, but there's at least two open tickets about it.

comment:8 in reply to:  7 ; Changed 6 years ago by mikeperry

Replying to phobos:

Replying to mo:

will take a "./Tor Browser" directory and produce torbrowser-install.exe from it. In will prompt to run Tor Browser after installation (and will still confuse users who are not able to find Tor Browser again later), and warn if you are trying to overwrite existing Tor Browser installations.

I don't think we need to warn about overwriting an existing Tor Browser. That should work in the future. It simply didn't work this time because of the major changes from FF10->FF17. We may end up with similar issues during the switch from FF17-FF24, but normally it should be fine to upgrade in this way, and this is how we intend to make the updater work.

We do not want an installer for TBB. TBB was created to get away from the horrible installers we had in the past. We had no end of issues with installers (which led to the creation of TBB). We should not spend time on installers.

Well, it depends on what we mean by "Installer". I agree that anything complicated that touches Windows in any other way than writing to the TBB directory is bad. My understanding is that minimal NSIS installer scripts can be made such that this doesn't happen. If that's not the case, then yes, we need to reconsider the option.

Currently, the default location for TBB "installation" is the user desktop. I am not sure this is the best default, but I think it is an improvement over the installer directory (which is the 7zip default).

The default location is whatever directory in which the zip/exe files resides. What we want is a simple exe/zip/dmg that runs TBB, does everything behind the scenes, and just works. Users shouldn't be exposed to installers, un-extractors, etc. It should just simply be a download and run. This will encourage more users to run from torproject.org, but they already do this. The answer is to fix TBB, not write installers and dig more into a system.

This simply does not work with most browsers. They click to run the exe and the TBB bundle dir ends up in their Downloads or Documents folders and they can't find it.

We desperately need *something* that guides a user through the conversion of the TBB download exe to the TBB app directory. If 12.5% of computer literate college students get lost and give up on TBB at this step (see http://petsymposium.org/2012/papers/hotpets12-1-usability.pdf, pages 6 and 7), imagine what happens to older people. Having seen it, I'll tell you: It's not pretty.

Having a simple GUI that does nothing other than help point the user to the location where TBB ends up is a huge win.

I would like to replace the generic Welcome page ("This wizard will guide you through the installation...") with some information about the portability of TBB (no shortcuts, simply delete of directory to uninstall, can install to USB device), but that again will add more language-dependent strings.

We have this already, written up in a new check.tpo release by aagbsn. It's waiting on merging into the current check codebase before we can roll it out. I can't find the ticket for it, but there's at least two open tickets about it.

This assumes they can find the TBB directory to run it though. If the NSIS thing just launched TBB, that might work.

comment:9 Changed 6 years ago by cypherpunks

Please see this related bug report: #8376 "Tor requires "Run as Administrator" to install on Win 7 (and Win 8?)"

Last edited 16 months ago by cypherpunks (previous) (diff)

comment:10 in reply to:  7 ; Changed 6 years ago by cypherpunks

Replying to phobos:

Replying to mo:

will take a "./Tor Browser" directory and produce torbrowser-install.exe from it. In will prompt to run Tor Browser after installation (and will still confuse users who are not able to find Tor Browser again later), and warn if you are trying to overwrite existing Tor Browser installations.

We do not want an installer for TBB. TBB was created to get away from the horrible installers we had in the past. We had no end of issues with installers (which led to the creation of TBB). We should not spend time on installers.

Currently, the default location for TBB "installation" is the user desktop. I am not sure this is the best default, but I think it is an improvement over the installer directory (which is the 7zip default).

The default location is whatever directory in which the zip/exe files resides. What we want is a simple exe/zip/dmg that runs TBB, does everything behind the scenes, and just works. Users shouldn't be exposed to installers, un-extractors, etc. It should just simply be a download and run. This will encourage more users to run from torproject.org, but they already do this. The answer is to fix TBB, not write installers and dig more into a system.

Hi Phobos

I can state that many people (Facebook using 20-something Americans) I have introduced to TBB do not realize what to do once they extract TBB. They often can't find the TBB install dir after they install to \Downloads\ (they very rarely extract anywhere except \Downloads\), crazy yes, but true of many people. YMMV.

comment:11 in reply to:  10 Changed 6 years ago by mo

Replying to phobos:

We do not want an installer for TBB. TBB was created to get away from the horrible installers we had in the past.

I understand the worries. But, the current 7zip SFX is an installer. It can also be tweaked to do stuff. Not as flexible as NSIS, but still.

The default location is whatever directory in which the zip/exe files resides. What we want is a simple exe/zip/dmg that runs TBB, does everything behind the scenes, and just works. Users shouldn't be exposed to installers, un-extractors, etc. It should just simply be a download and run.

My "installer" does not really change this. It has a welcome page that I planned to extend to let people know about the portability and that there will be no shortcuts, a fancier extraction process, and finally an option to directly launch TBB. Other than that, it is a self-extracting archive.

We have this already, written up in a new check.tpo release by aagbsn.

What Mike said. A welcome page BEFORE installation aims at all the people that fail to find how to launch TBB. They will never see check.tpo.

We can easily drop the welcome page, and just leave the "Start Tor Browser" option at the end. Or replace it by a "Open Tor Browser directory".

The default location is whatever directory in which the zip/exe files resides.

You make it sound like that is not a decision, but a fact. It remains a decision, and I am not sure it is the best one, given that many people WILL click through whatever dialog they see and end up having TBB inside their Download folder. Even experienced users are used to installers that FIRST extract stuff and then offer (installation) options.

comment:12 Changed 6 years ago by mo

I would want an installer that has a "portable" option (selected by default), with the Desktop as default target that opens the directory after installation, and a "system install" that requires administrative privileges to install to Program Files, creates proper shortcuts and an uninstaller, and offers to launch TBB after installation. I don't see why TBB must be harder to install and use than basically any other application out there. We get support questions about removal and "can't find TBB" nearly on a daily basis.

comment:13 Changed 6 years ago by mo

I understand that your goal, phobos, is a one-click executable. What about this: We check if TBB it already in %TEMP, if not we extract it there, if yes (+ version check), we just launch it.

Many people will have problems with that approach, because they will not find the large executable they downloaded again in their Downloads folder, and not expect that they have to run it again.

I think we have to go with what most Windows users are familiar with.

comment:14 in reply to:  12 ; Changed 6 years ago by cypherpunks

Replying to mo:

I would want an installer that has a "portable" option (selected by default), with the Desktop as default target that opens the directory after installation, and a "system install" that requires administrative privileges to install to Program Files, creates proper shortcuts and an uninstaller, and offers to launch TBB after installation. I don't see why TBB must be harder to install and use than basically any other application out there. We get support questions about removal and "can't find TBB" nearly on a daily basis.

Replying to mo:

I would want an installer that has a "portable" option (selected by default), with the Desktop as default target that opens the directory after installation, and a "system install" that requires administrative privileges to install to Program Files, creates proper shortcuts and an uninstaller, and offers to launch TBB after installation. I don't see why TBB must be harder to install and use than basically any other application out there. We get support questions about removal and "can't find TBB" nearly on a daily basis.

Yes, please.

I think there are two types of Tor users: (1) those who want/need to keep zero traces of Tor on their system; and (2) those who don't care about traces of Tor on their system. I'm in the latter group, and I suspect many others users feel likewise. The trade-off is computer illiterate/novice users in oppressive countries that may not realize they *need* to be in group 1 . . .

comment:15 Changed 6 years ago by phobos

TBB should not be installed. TBB should not be extracted. It should be a single-file download which a user runs and magically Tor Browser appears and works. Installers, extractors, and anything that involves a user doing something is not the direction we should be going. The entire point of TBB is to be lightweight and zero-install, and someday, zero-footprint. Any other direction seems wrong to me.

comment:16 Changed 6 years ago by mo

You know that that is impossible. All you can do is hide the files. I described the closed thing you can get towards a "one-click executable" in https://trac.torproject.org/projects/tor/ticket/7842#comment:13 . Instead of %TEMP%, we could also go for a RAM disk, but that will cause even more trouble.

comment:17 in reply to:  14 Changed 6 years ago by mo

I think there are two types of Tor users: (1) those who want/need to keep zero traces of Tor on their system; and (2) those who don't care about traces of Tor on their system. I'm in the latter group, and I suspect many others users feel likewise. The trade-off is computer illiterate/novice users in oppressive countries that may not realize they *need* to be in group 1 . . .

Leaving "no traces" on a system is a fine goal, but impossible. Windows already logs enough about executed processes etc. Just adding a shortcut and a removal entry won't do much difference, especially when people leave the TBB directory lying around. If you want to get rid of TBB, you will always have to actively do something, be it running an uninstaller or delete the directory on their own. Currently, users cannot be sure what it takes to uninstall TBB, and we often get questions about it. Hey, an uninstaller could even wipe/shred the files ...

comment:18 in reply to:  8 Changed 6 years ago by mo

If this "one-click wrapper" is really the way we want to go, some more things to consider: We can't really put the files anywhere and just leave them lying around, as this is against the "zero footprint". Besides, it is a very bad custom to just leave files lying around somewhere. So, unless we make it clear to the user where we actually put the files (by giving her shortcuts or guide through the extraction process), the only way that is left towards a "one-click wrapper" would be to extract all files every time (maybe to a ramdisk), and zip them back up afterwards (to keep state files and customizations).
Since we also want people to be able to upgrade and keep their changes, and we can't store where we actually put the last installation ("zero footprint"), we would have to ask the user if she wanted to import an old TBB profile at least on first start of the wrapper, and make her point us at the previous wrapper (and hope she did not just replace it already, thinking we keep settings stored somewhere else like a regular application). In general, for a working update process, we would need the ability to also remove files in the wrapper, because, currently, all we do is put more stuff into the TBB directory. Which is bad when we plan to drop stuff, like Vidalia or an extension.

Replying to mikeperry:

I don't think we need to warn about overwriting an existing Tor Browser. That should work in the future. It simply didn't work this time because of the major changes from FF10->FF17. We may end up with similar issues during the switch from FF17-FF24, but normally it should be fine to upgrade in this way, and this is how we intend to make the updater work.

It will happen again. The wrapper/installer should at least be prepared for situations like that, because likely the build engineer will not have enough time to do it then. I don't see how overwriting currently "works", given it does overwrite at least custom torrc's.

A reasonable wrapper/installer that does not need to be changed too often knows about configuration files (torrc and the Firefox profile, anything else?), copies them to a temporary location (ideally a ramdisk), deletes the previous installation, extracts, and copies back the config files. This will not work if we change torrc settings again.

If the build engineer does not have enough time to figure out details, and wants to indicate that upgrading is harder than the regular upgrade process (currently: overwriting), it should be a simple switch to warn or even block extraction to an existing directory.

comment:19 in reply to:  10 Changed 6 years ago by cypherpunks

Replying to cypherpunks:

Replying to phobos:

Replying to mo:

will take a "./Tor Browser" directory and produce torbrowser-install.exe from it. In will prompt to run Tor Browser after installation (and will still confuse users who are not able to find Tor Browser again later), and warn if you are trying to overwrite existing Tor Browser installations.

We do not want an installer for TBB. TBB was created to get away from the horrible installers we had in the past. We had no end of issues with installers (which led to the creation of TBB). We should not spend time on installers.

Currently, the default location for TBB "installation" is the user desktop. I am not sure this is the best default, but I think it is an improvement over the installer directory (which is the 7zip default).

The default location is whatever directory in which the zip/exe files resides. What we want is a simple exe/zip/dmg that runs TBB, does everything behind the scenes, and just works. Users shouldn't be exposed to installers, un-extractors, etc. It should just simply be a download and run. This will encourage more users to run from torproject.org, but they already do this. The answer is to fix TBB, not write installers and dig more into a system.

Hi Phobos

I can state that many people (Facebook using 20-something Americans) I have introduced to TBB do not realize what to do once they extract TBB. They often can't find the TBB install dir after they install to \Downloads\ (they very rarely extract anywhere except \Downloads\), crazy yes, but true of many people. YMMV.

And by "install dir" I mean "extraction dir," sorry. I wrote "install" because that's what the 20-something Windows users kept calling the process of extracting TBB. When I said "go to the location where you extracted the TBB file," only one or two people knew to what I was referring. However, out of those few people that knew what I was talking about, none could find the TBB extraction dir - everyone just clicks the "Extract" button and doesn't record the location.

Almost everyone asked why they can't find the program under the Start menu. That's where everyone went to find the file after they extract it; at least that's the case with the dozen or two people I've introduced to TBB.

comment:20 Changed 6 years ago by runa

Apologies for joining the discussion a bit late, but I just learned one can use NSIS scripts to prevent applications from leaving traces in the Windows Registry (and other places). With the recent tbb-disk-leak issues, is this something worth considering?

comment:21 Changed 6 years ago by mikeperry

Resolution: fixed
Status: assignedclosed

This was fixed some time ago. I am super curious what Runa was talking about 7 months ago, which I somehow missed, but that is a topic for another ticket (#10720)

Note: See TracTickets for help on using tickets.