[tor-project] Tor Browser Bundle on Guix

Richard Pospesel richard at torproject.org
Mon Dec 19 15:52:10 UTC 2022


So tbh, our Wikis are in need of some attention. In general we want to migrate things to the 'Team' wiki here:

- https://gitlab.torproject.org/tpo/applications/team/-/wikis/home

We've made some effort maintaining our docs but are in general not very actively maintained (though there have been some 
great updates to our build docs over the past year). Something more to work on in 2023. If you want to make edits I 
think the usual fork+MR workflow works best, just tag me ( @richard ) and I should get a notification.

best,
-Richard

On 12/19/22 14:25, Jim Newsome wrote:
> Makes sense! I'm just dipping my toe into Guix and definitely not looking to take on maintainership of packages there at 
> the moment. Was sharing the info primarily for other individuals running Guix who may want to run Tor Browser.
> 
> Maybe the wiki, on or around this page would be a good place to document this sort of distro-specific workaround in the 
> meantime? https://gitlab.torproject.org/tpo/applications/tor-browser/-/wikis/Platform_Installation
> 
> The list of runtime dependencies (e.g. libssl @ v1, libevent, ...) may be more generally useful for running on Linux, 
> since I imagine someone on any distro could run into problems if they happen to not have those installed.
> 
> What is the procedure for proposing/making edits to the the Tor Browser wiki, anyway?
> 
> On 12/19/22 06:41, Richard Pospesel wrote:
>> So I think in general we (applications team) don't want to support every possible distribution format out there/be 
>> smart about which ones we *do* support in terms of maximizing reach/going where the users are.
>>
>> But that said there are a few downstream re-packagers (Tails, torbrowser-launcher/ BSD, etc) that we don't want to 
>> break. If this is something you (or someone else) wants to build+maintain, then we can add you to the list of folks 
>> who get early notification of new browser releases, potentially breaking changes, etc. I think we're also generally in 
>> favor (within reason, case by case basis, etc) of taking patches to the browser itself for things which make 
>> downstream packaging easier or less complicated.
>>
>> best,
>> -Richard
>>
>> On 12/17/22 00:06, Jim Newsome wrote:
>>> Possibly of interest to browser and/or guix folks -
>>>
>>> I was experimenting with the [Guix System Distro] on my laptop, and managed to get Tor Browser Bundle running with a 
>>> relatively new feature `--emulate-fhs`. Details below. I haven't messed with it too much yet, so I wouldn't be 
>>> surprised if the runtime dependency list below is missing some, which may result in runtime errors.
>>>
>>> It'd be nice to get it packaged properly, but probably not high priority in terms of wide user reach. It's 
>>> essentially an OS for people who think [NixOS] is too mainstream ;P
>>>
>>> Maybe I'll get around to poking at it sometime; they have other firefox variants in there (icecat), so that might be 
>>> a reasonable starting point.
>>>
>>> [Guix System Distro]: https://guix.gnu.org/
>>> [NixOS]: https://nixos.org/
>>>
>>> -------- Forwarded Message --------
>>> Subject: re: Drafting a Guix blog post on the FHS container
>>> Date: Fri, 16 Dec 2022 17:39:21 -0600
>>> From: Jim Newsome <jim at sporksmith.net>
>>> To: john.kehayias at protonmail.com, help-guix at gnu.org, guix-devel at gnu.org
>>>
>>> Sorry for (presumably) breaking threading; I came across this online and don't see a way to set my in-reply-to-email 
>>> header properly.
>>>
>>> Anyways just thought I'd mention that I recently learned about this feature, and was able to use it to get a 
>>> downloaded [Tor Browser Bundle] running with:
>>>
>>>
>>> ```
>>> guix shell \
>>>    --container \
>>>    --network \
>>>    --emulate-fhs \
>>>    --preserve='^DISPLAY$'
>>>    --share=/run/user/$(id -u)/gdm \
>>>    openssl at 1 \
>>>    libevent \
>>>    pciutils \
>>>    dbus-glib \
>>>    bash \
>>>    libgccjit \
>>>    libcxx \
>>>    gtk+ \
>>>    coreutils \
>>>    grep \
>>>    sed \
>>>    file \
>>>    alsa-lib \
>>>    -- \
>>>    ./start-tor-browser.desktop -v
>>> ```
>>>
>>> `--preserve='^DISPLAY$'` and `--share=/run/user/$(id -u)/gdm` are to get access to the display. I'm not sure the 
>>> second parameter is universally correct; I reverse-engineered it via roughly `ps aux | grep -- -auth`.
>>>
>>> The `-v` parameter to the browser script keeps it from trying to background itself, which otherwise causes the 
>>> container and browser to terminate.
>>>
>>> It'd ultimately be nice to package the Tor Browser Bundle properly for guix, but it's nice to be able to use it this 
>>> way in the meantime.
>>>
>>> -Jim
>>>
>>> [Tor Browser Bundle]: https://www.torproject.org/download/
>>> _______________________________________________
>>> tor-project mailing list
>>> tor-project at lists.torproject.org
>>> https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-project
>>
>> _______________________________________________
>> tor-project mailing list
>> tor-project at lists.torproject.org
>> https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-project
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_0xDE47360363F34B2C.asc
Type: application/pgp-keys
Size: 4816 bytes
Desc: OpenPGP public key
URL: <http://lists.torproject.org/pipermail/tor-project/attachments/20221219/024d8759/attachment-0001.key>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 840 bytes
Desc: OpenPGP digital signature
URL: <http://lists.torproject.org/pipermail/tor-project/attachments/20221219/024d8759/attachment-0001.sig>


More information about the tor-project mailing list