flathub / org.torproject.torbrowser-launcher

https://flathub.org/apps/details/org.torproject.torbrowser-launcher
4 stars 2 forks source link

Not possible to upgrade (older) TB using internal updater #5

Open Nurmagoz opened 9 months ago

Nurmagoz commented 9 months ago

How can TB upgrade itself while it has no ability to do that from within the browser? (even notification of new version its not shown, i need to do that all manually)

AsciiWolf commented 9 months ago

This is a known issue that is being worked on and will hopefully be fixed soon. However, your question is valid - it will sadly require existing users to wipe the app data and reinstall Tor Browser. :-/

Anyway, please take a look at this ticket: https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/42293

mooreye commented 8 months ago

This is a known issue that is being worked on and will hopefully be fixed soon. However, your question is valid - it will sadly require existing users to wipe the app data and reinstall Tor Browser. :-/

Anyway, please take a look at this ticket: https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/42293

I need some clarification.

The linked issue is closed. I see that an env var TORBROWSER_LAUNCHER was introduced but it doesn't fix anything (it is reserved for future use, if you will). The codebase of TB Launcher was moved from GitHub to TB Project's Gitlab.

AsciiWolf commented 8 months ago

It should be fixed when Tor Browser 13.0.10 gets released. This will hopefully happen soon (see this ticket). Unfortunately, current torbrowser-launcher Flatpak users will need to remove the existing data directory (can be done via GUI when uninstalling torbrowser-launcher via GNOME Software / KDE Discover) to trigger the latest Tor Browser archive download.

I will probably add some temporary (Zenity) message window suggesting users to do this after TBB 13.0.10 is out.

pm4rcin commented 7 months ago

@AsciiWolf there's already Tor Browser 13.0.11. Is something blocking updating or you simply had no time/forgot?

mooreye commented 7 months ago

it works fine but redownload of the TB Bundle is needed.

AsciiWolf commented 7 months ago

Yep, it works, but sadly, there is no other solution available for existing users (with older TBB without the fix) than deleting the Flatpak data to trigger the TBB re-download.

harbor6688 commented 7 months ago

Yep, it works, but sadly, there is no other solution available for existing users (with older TBB without the fix) than deleting the Flatpak data to trigger the TBB re-download.

i might be wrong here but i am pretty sure that you could just launch the tbb from the binary in the package instead of the flatpak launcher that way you could update normally and might even be able to keep all your data from before Requires you to manually navigate to the tbb inside the flatpak trough that can be a bit hard to find ngl

AsciiWolf commented 7 months ago

Yes, that is a possible workaround.

Francewhoa commented 6 months ago

If needed, both me and the Ubertus.Org team would be happy to contribute testing and documentation for upgrading TB using internal updater.

Any volunteer to implement this new feature?

AsciiWolf commented 6 months ago

There is a working internal updater, problem is that it was added in TBB 13.0.10. I am thinking about adding some mechanism to detect TBB version directly by torbrowser-launcher and updating it if it is too old, however my free time is sadly very limited. :-/ The current transition process for current users sadly is to manually wipe the Tor Browser Launcher Flatpak data to trigger a clean, latest TBB package download. Everything should work fine from that point.

Francewhoa commented 6 months ago

About the temporary workaround to either deleting the Flatpak data to trigger the Tor Browser Bundle (TBB) re-download or using Tor Browser Launcher (TBL) to reinstall TB. This works great to install or reinstall a fresh new TBB. But from the end-user's point of view, this workaround is not an update. This is just a plain delete TBB and its configuration, then reinstall a new TBB. Update and reinstall are not to be confused.

I mean, for most end-users, the word "update" means that after the TBB update their TBB configuration remains. But, as you know, presently, as of April 12th, 2024, TBL is not yet able to both update TBB and keep the user's TBB configuration. I understand that adding an automated update feature to TBL is in development.

About this Flathub page at https://flathub.org/apps/org.torproject.torbrowser-launcher The challenge is that it claims that Tor Browser Launcher (TBL) version 0.3.7 is able to automatically update Tor Browser Bundle (TBB).

To resolve this challenge above, I suggest this new ticket https://github.com/flathub/org.torproject.torbrowser-launcher/issues/19

Francewhoa commented 6 months ago

Thanks @AsciiWolf :) For both your reply and your contribution to Tor Browser Launcher (TBL) on Flathub


The current transition process for current users sadly is to manually wipe the Tor Browser Launcher Flatpak data to trigger a clean, latest TBB package download. Everything should work fine from that point.

This is to confirm this always fails with the present TBL version 0.3.7. In other words, it does not work fine from that point.

Steps to reproduce:

  1. Install TBL 0.3.7 from https://flathub.org/apps/org.torproject.torbrowser-launcher
  2. Using TBL 0.3.7, install the latest Tor Browser Bundle (TBB). TBL is able to successfully do this :)
  3. Using the TBB, change its configuration. For example, but not limited to, add a new bookmark.
  4. Using TBL 0.3.7, try to update Tor Browser Bundle (TBB) while keeping its configuration, including, but not limited to, keeping the new bookmark you just created above. This update always fails :( This is the challenge. By "fails" we mean TBL does update TBB, but does not keep its configuration. Instead, TBL deleted TBB configuration. The needed end results it that TBL update TBB while keeping its present configuration.

For most end-user, the word "update" means that after the TBB update, their TBB configuration remains. But, per the steps to reproduce above, TBL is not yet able to both update TBB and keep the user's TBB configuration. What TBL presently really does is fully delete both the TBB and delete the user's TBB configuration, then reinstall a fresh TBB.

What most users need is this:

  1. First, use TBL to install TBB. Then, configuring their TBB. Some user spending hours installing and configuring modules/extensions, theme, toolbars, etc. TBL is presently successful at this.
  2. Then, automatically be notified when a new TBB update is available. Then somehow be able to update it. Either via TBL or TBB. TBL is not presently able to do this.
  3. Next, after the above update, their configuration remains. TBL is not presently able to do this.

Any volunteer to add this new feature so that TBL is able to both update TBB and keep its configuration?

If needed, both me and the Ubertus.Org team would be happy to contribute testing and documentation for upgrading TBB using internal updater, while keeping its configuration

boklm commented 6 months ago

The current transition process for current users sadly is to manually wipe the Tor Browser Launcher Flatpak data to trigger a clean, latest TBB package download. Everything should work fine from that point.

This is to confirm this always fails with the present TBL version 0.3.7. In other words, it does not work fine from that point.

Which version of Tor Browser do you have installed?

There was a bug that disabled the updater when running torbrowser-launcher flatpak, but this was fixed with Tor Browser 13.0.10 and torbrowser-launcher 0.3.7.

If you have Tor Browser 13.0.10 or newer installed, the updater is expected to work. If it still doesn't work then this is a different bug.

Francewhoa commented 6 months ago

Thanks for your reply @boklm :) My replies are below. Including two questions for you down below.


Which version of Tor Browser do you have installed?

Tor Browser (TB) 13.0.9 (based on Mozilla Firefox 115.7.0esr). Which was installed with Tor Browser Launcher (TBL) 0.3.7. This screenshot shows that within TB, the TB updater somehow failed. It is not displayed at all. So I'm assuming it did not check for update.

TBB---13 0 9---Failed_update


Just now, we tried using Tor Browser Launcher (TBL) 0.3.7 to reinstall TB 13.0.14 (Based on Mozilla Firefox 115.10.0esr). This screenshot shows that the updater successfully checked for update. Yayaya :) This screenshot is in French. As you know, the green checkmark means the update check was successful.

TBB---13 0 14---Success_check_for_update

After using Tor Browser Launcher (TBL) 0.3.7 reinstalled TB 13.0.14 over an already installed and configured TB 13.0.9, all the user's TB configurations were lost :(

As for the TB update using TB, in the future, after the next TB version is released, we will know if this TB updater work


Question 1. In the future, if the user needs to keep its already installed TB configuration, we need to use TB to update TB. Correct? Not use TBL to update TB.

Question 2. Assuming the TB was installed with TBL. TBL itself, alone, and independently, is not able to update an already installed TB, and keep the user's TB configuration. Because TB updates are done within TB itself. In other words, if TB was installed with TBL, after that, TB is able to both update itself and keep the user's configuration. Correct?

boklm commented 6 months ago

On Wed, 17 Apr 2024, Francois Carpentier wrote:

Thanks for your reply @boklm :) My replies are below. Including two questions for you down below.


Which version of Tor Browser do you have installed?

Tor Browser (TB) 13.0.9 (based on Mozilla Firefox 115.7.0esr). Which was installed with Tor Browser Launcher (TBL) 0.3.7. This screenshot shows that within TB, the TB updater somehow failed. It is not displayed at all. So I'm assuming it did not check for update.

TBB---13 0 9---Failed_update

Yes, this is expected with Tor Browser 13.0.9.

However the issue only happens when running torbrowser-launcher with the flatpak. If I remember correctly a possible workaround is to run the browser without using flatkpak (just one time), which should allow the browser to update itself.


Question 1. In the future, if the user needs to keep its already installed TB configuration, we need to use TB to update TB. Correct? Not use TBL to update TB.

Yes.

Question 2. Assuming the TB was installed with TBL. TBL itself, alone, and independently, is not able to update an already installed TB, and keep the user's TB configuration. Because TB updates are done within TB itself. In other words, if TB was installed with TBL, after that, TB is able to both update itself and keep the user's configuration. Correct?

Yes.

Francewhoa commented 6 months ago

If I remember correctly a possible workaround is to run the browser without using flatkpak (just one time), which should allow the browser to update itself.

@boklm, this is to confirm this workaround was successful. Thanks :) We restored the user's TB configuration from a backup. Then, after the workaround, the configuration remains.


For those not familiar with this workaround, the steps are:

  1. Close Tor Browser (TB)

  2. Using Terminal/Console, execute this command as user to change to the appropriate directory. Where the TB was installed to by Tor Browser Launcher (TBL) for example, for Debian, the command is:

    cd /home/<DEBIAN USER NAME>/.var/app/org.torproject.torbrowser-launcher/data/torbrowser/tbb/x86_64/tor-browser/Browser/

    • Note:

      • In this command above, you need to replace <DEBIAN USER NAME> for your Linux user name
      • This command need to be executed as user. So without sudo and without root.
  3. Using Terminal, execute this command to launch TB outside Flatpak:

    ./start-tor-browser

    • Note:

      • The prefix ./ is required
      • This command need to be executed as user. So without sudo and without root.
  4. TB will open. Using TB, navigate to  [Options] » button ---> « Help » option ---> « About Tor Browser »

  5. TB will automatically check for update and down it if any. This screenshot shows this.

    TBB---13 0 14---One_time_outside_flatpak---Success_updated---1

  6. After the update is fully downloaded, close this « About Tor Browser ». Do not click on "Restart" button. TBB---13 0 14---One_time_outside_flatpak---Success_updated---2

  7. Using GNOME, launch TB. It will automatically start with Flatpak. All TB previous configuration successfully remains.

  8. In the future, to update TB, using TB, navigate to  [Options] » button ---> « Help » option ---> « About Tor Browser ». After the update is fully downloaded, click on "Restart" button.

AsciiWolf commented 6 months ago

Yep, this is also a possible workaround, in fact it is the one I used on my systems. Thanks for documenting these steps!