guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#70341] [PATCH v3] services: tor: Add support for pluggable transpor


From: Nigko Yerden
Subject: [bug#70341] [PATCH v3] services: tor: Add support for pluggable transports.
Date: Tue, 30 Apr 2024 14:13:24 +0500
User-agent: Mozilla Thunderbird

Hi André,

Here is some additional information about the patched tor-service-type which reveals:
1) Why it can fail if not properly configured.
2) Its internal workings which I find kind of cool.

First, it is not necessary to use PT-plugin from ready-to-go Guix package. It is possible to download PT-plugin source code and compile it directly, say, somewhere in $HOME folder. The corresponding configuration may look like this

(service tor-service-type
    (config-file (plain-file "torrc" ".... Bridge obfs4 ..."))
    (transport-plugin
       (local-file "/home/..../lyrebird"
                   #:recursive? #t)))

But this will not necessary work. The reason why it can fail is somewhat interesting. As we know, the tor process, thanks to the 'least-authority-wrapper', is run inside a container, which, in particular, means it has very limited view of the file system. But PT-plugin executable is linked dynamically by default and has its dependency libraries inaccessible from within the container. However, if PT-plugin is linked statically, the configuration above will work.

Similarly, if PT-plugin is specified as a direct string path to the store item like this

(transport-plugin "/gnu/store/..../bin/lyrebird")

it may not work for the same reason.


However, if a file-like object is used instead like this

(transport-plugin (file-append PT-PACKAGE "/bin/lyrebird"))

all the dependencies of PT-PACKAGE are added automatically to the list of allowed paths inside the container (this is provided by the call to 'references-file' from inside 'least-authority-wrapper' procedure). As for me this means that the suggested patch fits very well to the guix'y way of doing things.


Regards,
Nigko





reply via email to

[Prev in Thread] Current Thread [Next in Thread]