Feature #11403

Migrate to Tor Browser 6.0.x based on Firefox 45.2

Added by anonym 2016-05-09 06:43:17 . Updated 2016-06-08 01:27:02 .

Status:
Resolved
Priority:
High
Assignee:
Category:
Target version:
Start date:
2016-05-09
Due date:
% Done:

100%

Feature Branch:
feature/11403-tor-browser-6.x
Type of work:
Code
Blueprint:

Starter:
Affected tool:
Browser
Deliverable for:

Description

The Tor Browser that will be published at the same time as Tails 2.4 will be version 6.x, based on Firefox 45.2.


Subtasks


Related issues

Related to Tails - Feature #10835: Tor Browser has no MPEG-4 video support on Jessie Resolved 2016-01-01
Related to Tails - Bug #11489: Graphics artifacts cover parts of the web page content with Tor Browser 6.x on libvirt/QXL Resolved 2016-05-25
Related to Tails - Bug #10442: Totem "Watching a WebM video over HTTPS" test never passes on Jenkins Resolved 2015-10-28

History

#1 Updated by anonym 2016-05-09 06:50:57

  • Status changed from Confirmed to In Progress
  • % Done changed from 0 to 10
  • Feature Branch set to feature/11403-tor-browser-6.x

Currently building the branch for the first time. Except the Firefox bump, there are no big changes to expect, AFAICT, so maybe this migration will be fairly painless (oops, now I probably jinxed it! :S).

I didn’t bother uploading these alpha packages to our torbrowser tarball archive, but if this ends up being the version we ship in 2.4~rc1 I’ll try to remember to do that (otherwise it’s not so bad since archive.tp.o is used as source).

#2 Updated by anonym 2016-05-09 09:54:24

  • % Done changed from 10 to 20

I pushed a preliminary commit (commit:f8d046e) so that the branch at least builds. But there are problems (yay, didn’t I tell you I jinxed it?):

Search plugins

The browser/searchplugins doesn’t share with all locales, and distribution/searchplugins/locale/common doesn’t work, so it seems we need to copy the xml:s of the “common” plugins (wikipedia-en-US.xml) into each locale’s directory. Symlinks doesn’t work.

Relatedly, the Tor Browser’s default plugins now end up packed inside browser/omni.ja so we’ll have to modify it if we want to deal with them.

Performance

From my initial testing, it seems pretty bad.

Addon signing

The Adblock Plus and amnesia-branding addons do not work because of this. See: https://blog.mozilla.org/addons/2016/01/22/add-on-signing-update/

Now a good question is how we’ll deal with this, especially for the dynamically generated (during build) amnesia-brading addon.

#3 Updated by anonym 2016-05-11 04:38:55

See Bug #10957#note-7; as part of this migration, let’s also drop the localized search plugins from the iceweasel-l10n packages. We’ll of course keep the localized plugins that we generate for Disconnect.me, Startpage and Wikipedia.

#4 Updated by anonym 2016-05-14 22:17:00

  • % Done changed from 20 to 30

anonym wrote:
> h3. Search plugins
>
> The browser/searchplugins doesn’t share with all locales, and distribution/searchplugins/locale/common doesn’t work, so it seems we need to copy the xml:s of the “common” plugins (wikipedia-en-US.xml) into each locale’s directory. Symlinks doesn’t work.

Fixed, with copies. Ugly, but whatever.

> Relatedly, the Tor Browser’s default plugins now end up packed inside browser/omni.ja so we’ll have to modify it if we want to deal with them.

Done.

> h3. Performance
>
> From my initial testing, it seems pretty bad.

After some more testing, I don’t think this is the case.

> h3. Addon signing
>
> The Adblock Plus and amnesia-branding addons do not work because of this. See: https://blog.mozilla.org/addons/2016/01/22/add-on-signing-update/
>
> Now a good question is how we’ll deal with this, especially for the dynamically generated (during build) amnesia-brading addon.

Short term, which might be good enough for Tails 2.4: commit:fdb22c3. The only drawback is that the Add-ons page lists a warning for the affected extensions.

Long term: Bug #11419

> See Bug #10957#note-7; as part of this migration, let’s also drop the localized search plugins from the iceweasel-l10n packages. We’ll of course keep the localized plugins that we generate for Disconnect.me, Startpage and Wikipedia.

Done.

So unless we’re not happy enough with the solution for the extension signing, things are starting to look up!

#5 Updated by intrigeri 2016-05-15 00:45:11

> Short term, which might be good enough for Tails 2.4: commit:fdb22c3.

Did you forget to push, maybe?

#6 Updated by anonym 2016-05-15 03:48:46

intrigeri wrote:
> Did you forget to push, maybe?

Yes, sorry! Now pushed.

#7 Updated by anonym 2016-05-18 13:33:06

  • Assignee changed from anonym to intrigeri
  • QA Check set to Ready for QA

I’d appreciate an early code review and some manual testing of this branch; in particular what do you think of the new zoom-levels and the “inner” border introduced as a protection against resolution fingerprinting?

Please do not merge this branch yet!

#8 Updated by anonym 2016-05-18 13:33:28

  • Subject changed from Migrate to Tor Browser 6.x based on Firefox 45.2 to Migrate to Tor Browser 6.0.x based on Firefox 45.2

#9 Updated by intrigeri 2016-05-18 13:54:05

  • Assignee changed from intrigeri to anonym
  • QA Check changed from Ready for QA to Dev Needed

The link to config/chroot_local-hooks/14-add_localized_browser_searchplugins in the design doc can be removed. And btw the one to 12-install_browser_searchplugins, 12-remove_unwanted_browser_searchplugins, and maybe more in this section seem to not have been updated last time all this stuff was revamped. Otherwise, code review passes at commit:64996376493531165e04b80a2c6ccee7aebaa662.

Some spontaneous manual testing passes, but I would recommend trying our manual test suite for Tor Browser early.

> in particular what do you think of the new zoom-levels

I get 136% by default here on the homepage. Is that a TB specific protection or what?

> and the “inner” border introduced as a protection against resolution fingerprinting?

It’s ugly, and should be explained in known issues (of the 2.4 release + support/known_issues) because users will no doubt complain.
=> please add this on the branch so we don’t forget it, and then have sajolida check the phrasing if he has time.

#10 Updated by anonym 2016-05-22 17:29:31

  • related to Feature #10835: Tor Browser has no MPEG-4 video support on Jessie added

#11 Updated by intrigeri 2016-05-24 23:57:33

Reviewed up to commit:9fc4e30628a824dade0f8ccdbd3dc9c3c40f3923.

In commit:c1bcba2ed669c7b121e6998598351cb776a17a55: s/this has disappeared/this has appeared/, maybe?

#12 Updated by intrigeri 2016-05-25 17:32:41

  • related to Bug #11489: Graphics artifacts cover parts of the web page content with Tor Browser 6.x on libvirt/QXL added

#13 Updated by anonym 2016-05-26 11:56:24

  • Status changed from In Progress to Fix committed
  • % Done changed from 30 to 100

Applied in changeset commit:c85b38043de63c4fb6ac5df57769c6f6324a8846.

#14 Updated by anonym 2016-05-30 07:51:38

  • Assignee deleted (anonym)
  • QA Check changed from Dev Needed to Pass

intrigeri wrote:
> Reviewed up to commit:9fc4e30628a824dade0f8ccdbd3dc9c3c40f3923.
>
> In commit:c1bcba2ed669c7b121e6998598351cb776a17a55: s/this has disappeared/this has appeared/, maybe?

I fixed it directly in testing (commit:dcd8f85).

#15 Updated by intrigeri 2016-05-30 08:04:33

  • Status changed from Fix committed to In Progress
  • Assignee set to anonym
  • % Done changed from 100 to 90
  • QA Check changed from Pass to Dev Needed

anonym, I think you might have missed my comment above regarding the missing design doc update. Feel free to handle it in a separate ticket if you prefer :)

#16 Updated by anonym 2016-05-30 08:33:25

  • Status changed from In Progress to Fix committed
  • Assignee deleted (anonym)
  • % Done changed from 90 to 100
  • QA Check changed from Dev Needed to Pass

intrigeri wrote:
> anonym, I think you might have missed my comment above regarding the missing design doc update.

The code is the design docs!!

Fixed in commit:e53f355 (in testing).

> Feel free to handle it in a separate ticket if you prefer :)

Not when it takes longer to fix than to implement. :)

#17 Updated by intrigeri 2016-05-31 13:09:13

  • related to Bug #10442: Totem "Watching a WebM video over HTTPS" test never passes on Jenkins added

#18 Updated by anonym 2016-06-08 01:27:02

  • Status changed from Fix committed to Resolved