[tbb-dev] [tor-dev] RFC: porting torbrowser

Matthew Finkel matthew.finkel at gmail.com
Fri Mar 9 16:33:29 UTC 2018


On Fri, Mar 09, 2018 at 02:19:44PM +0000, ng0 wrote:
> Georg Koppen transcribed 11K bytes:
> > ng0:
> > > Hi,
> > > 
> > > (top-posting and keeping the old email as reference in complete quote)
> > > I have now started working on a package for Guix. While I've had some
> > > exposure to the packaging of the ESR or Firefox and also some old code
> > > base fork of Firefox (Palemoon), I'm not sure if the problem I experience
> > > is something I can report or ask for at your side or elsewhere.
> > > 
> > > Building fails in the part of the build phase where interaction with quitter
> > > happens (for a lack of more insight into the actual codebase).
> > > 
[...]
> 
> Sorry, I just learned that we don't keep build logs on disk for failed builds.
> 
> > > processing /tmp/guix-build-tor-browser-7.5.drv-0/tor-browser-7.5-checkout/testing/marionette/jar.mn
> > > make[4]: Leaving directory '/tmp/guix-build-tor-browser-7.5.drv-0/tor-browser-7.5-checkout/ff/testing/marionette'
> > > make[4]: Entering directory '/tmp/guix-build-tor-browser-7.5.drv-0/tor-browser-7.5-checkout/ff/tools/quitter'
> > > mkdir -p '../../dist/xpi-stage/quitter/chrome/'
[...]
> > > /tmp/guix-build-tor-browser-7.5.drv-0/tor-browser-7.5-checkout/tools/quitter/jar.mn
> > > processing /tmp/guix-build-tor-browser-7.5.drv-0/tor-browser-7.5-checkout/tools/quitter/jar.mn
> > > Traceback (most recent call last):
[...]
> > >     addEntriesToListFile(manifestPath, myregister.iterkeys())
> > >   File "/tmp/guix-build-tor-browser-7.5.drv-0/tor-browser-7.5-checkout/python/mozbuild/mozbuild/action/buildlist.py", line 36, in 
> > > addEntriesToListFile
> > >     with open(listFile, 'wb') as f:
> > > IOError: [Errno 13] Permission denied: '../../dist/xpi-stage/quitter/chrome.manifest'

It's surprising creating '../../dist/xpi-stage/quitter/chrome/' is
successful, but creating '../../dist/xpi-stage/quitter/chrome.manifest'
fails. Do you have an apparmor or selinux policy enforced? I don't see
anything immediately obvious that would specifically cause EPERM at this
place during the build.

> > 
> > What exactly did you check out and how?
> 
> The build is run with Guix, the rather hacky package definition so far is this commit:
> https://c.n0.is/ng0/ports/commit/?id=320fa06ca3af881ba7c1b26514f04eb69d56f0a6
> For reader convenience I'll attach the guile module to this email. It is in early stages
> and I was mainly focused on getting the configure and build stages running, the rest
> is inherited from an firefox-esr package and needs to be adjusted once I get there.
> 
> As you can read in the file, I use the following checkout url and commit/tag:
> +       (uri (git-reference
> +             (url "https://git.torproject.org/tor-browser.git")
> +             (commit "tor-browser-52.6.0esr-7.5-2-build1")))
> 
> > What .mozconfig file are you using (if any)?
> 
> The .mozconfig is programmatically assembled in the package definition. It boils down to
> these lines, ";;" is a commented line:
> 
> +                     ". $topsrcdir/browser/config/mozconfig\n"
[...]
> +                     "ac_add_options --enable-extensions=default\n"

Is this included for a reason? Do you include additional extensions
using this?

[...]
> +                     ;; "ac_add_options --disable-debug\n"
> +                     ;; ac_add_options --disable-maintenance-service
> +                     ;; ac_add_options --disable-crashreporter

These are duplicated, and included/enabled, below.

[...]
> +                     "ac_add_options --with-app-name=torbrowser\n"
> +                     "ac_add_options --with-app-basename=torbrowser\n"

We don't change these in the official build.

[...]
> 

I noticed you don't enable bundled fonts. Is that on purpose?

Overall, this is exciting. I hope this is successful.


More information about the tbb-dev mailing list