Re: [tor-project] Tor Browser Bundle on Guix

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? Platform_Installation · Wiki · The Tor Project / Applications / Tor Browser · GitLab

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 :stuck_out_tongue_winking_eye:

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@sporksmith.net>
To: john.kehayias@protonmail.com, help-guix@gnu.org, guix-devel@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@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]: Tor Project | Download
_______________________________________________
tor-project mailing list
tor-project@lists.torproject.org
tor-project Info Page

_______________________________________________
tor-project mailing list
tor-project@lists.torproject.org
tor-project Info Page

_______________________________________________
tor-project mailing list
tor-project@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-project

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

- Home · Wiki · The Tor Project / Applications / Team · GitLab

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? Platform_Installation · Wiki · The Tor Project / Applications / Tor Browser · GitLab

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 :stuck_out_tongue_winking_eye:

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@sporksmith.net>
To: john.kehayias@protonmail.com, help-guix@gnu.org, guix-devel@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@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]: Tor Project | Download
_______________________________________________
tor-project mailing list
tor-project@lists.torproject.org
tor-project Info Page

_______________________________________________
tor-project mailing list
tor-project@lists.torproject.org
tor-project Info Page