Subject: bug#32855: sshuttle /usr/bin/env

From: Tobias Geerinckx-Rice <[email-masked]>
Date: Thu, 27 Sep 2018 21:11:45 +0200

Hullo,

Thanks for the report!

Nam Nguyen wrote:
> sshuttle is a python program that uses /usr/bin/env at line 196 
> of:
> /gnu/store/...-sshuttle-0.78.4/lib/python3.6/site-packages/sshuttle/client.py
> ['sudo', '-p', '[local sudo] Password: ', '/usr/bin/env',
>
> Trying to run sshuttle on GuixSD results in:
> $ sshuttle -r [email-masked] 0/0 -x server.com
> sudo: /usr/bin/env: command not found

This means that sshuttle on vanilla GuixSD has been broken ever 
since I added it in 2016, which saddens me. I guess nobody else 
uses it or, like me, they happen to also have a /usr/bin/env 
symlink.

> Here is a potential fix that I recycled from sshoot's recipe. I 
> tested it,
> and it works.
>
> $ diff 
> ~/.config/guix/current/share/guile/site/2.2/gnu/packages/vpn.scm 
> ~/vpn.scm
> 349a350,357
>>     (arguments
>>      '(#:phases
>>        (modify-phases %standard-phases
>>          (add-after 'unpack 'patch-paths
>>            (lambda _
>>              (substitute* "sshuttle/client.py"
>>                (("/usr/bin/env") (which "env")))
>>              #t)))))

I'll push this soon. Is it all right if I mention your name & 
e-mail in the commit message?

Kind regards,

T G-R