GNU bug report logs - #30256
[PATCH 3/3] scripts: environment: Add --no-cwd.

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: guix-patches; Reported by: Mike Gerwitz <mtg@HIDDEN>; Keywords: moreinfo patch; merged with #30254; dated Fri, 26 Jan 2018 03:31:03 UTC; Maintainer for guix-patches is guix-patches@HIDDEN.
Added tag(s) moreinfo. Request was from Ricardo Wurmus <rekado@HIDDEN> to control <at> debbugs.gnu.org. Full text available.

Message received at 30256 <at> debbugs.gnu.org:


Received: (at 30256) by debbugs.gnu.org; 8 Nov 2018 01:57:02 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Nov 07 20:57:02 2018
Received: from localhost ([127.0.0.1]:40156 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1gKZZ8-00079Z-2r
	for submit <at> debbugs.gnu.org; Wed, 07 Nov 2018 20:57:02 -0500
Received: from eggs.gnu.org ([208.118.235.92]:50749)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mtg@HIDDEN>) id 1gKZZ6-00079H-2Z
 for 30256 <at> debbugs.gnu.org; Wed, 07 Nov 2018 20:57:00 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <mtg@HIDDEN>) id 1gKZZ0-0008Qf-A0
 for 30256 <at> debbugs.gnu.org; Wed, 07 Nov 2018 20:56:54 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled
 version=3.3.2
Received: from fencepost.gnu.org ([2001:4830:134:3::e]:42020)
 by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <mtg@HIDDEN>)
 id 1gKZYx-0008Oe-Hb; Wed, 07 Nov 2018 20:56:51 -0500
Received: from localhost ([::1]:44866 helo=mikegerwitz-pc.gerwitz.local)
 by fencepost.gnu.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128)
 (Exim 4.82) (envelope-from <mtg@HIDDEN>)
 id 1gKZYx-0006FO-CQ; Wed, 07 Nov 2018 20:56:51 -0500
From: Mike Gerwitz <mtg@HIDDEN>
To: ludo@HIDDEN (Ludovic =?utf-8?Q?Court=C3=A8s?=)
Subject: Re: [bug#30256] [PATCH 3/3] scripts: environment: Add --no-cwd.
In-Reply-To: <87murcdaui.fsf@HIDDEN> ("Ludovic
 \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\=
 \=\?utf-8\?Q\?s\?\= message of "Wed, 17 Oct 2018 14:19:33 +0200")
Date: Wed, 07 Nov 2018 20:56:34 -0500
Message-ID: <87lg64xrfx.fsf@HIDDEN>
References: <87vag2wopo.fsf@HIDDEN> <cover.1516937216.git.mtg@HIDDEN>
 <7bc71eaa3cff48ec7dc0d4fe406dde9482b716a9.1516937216.git.mtg@HIDDEN>
 <87tvtyhhnd.fsf@HIDDEN> <87murcdaui.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)
OpenPGP: id=22175B02E626BC98D7C0C2E5F22BB8158EE30EAB
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
X-Received-From: 2001:4830:134:3::e
X-Spam-Score: -5.0 (-----)
X-Debbugs-Envelope-To: 30256
Cc: 30254 <at> debbugs.gnu.org, 30256 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -6.0 (------)

--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Ludo:

On Wed, Oct 17, 2018 at 15:19:33 +0200, Ludovic Court=C3=A8s wrote:
> There=E2=80=99s this last patch from the series you submitted a while back
> that=E2=80=99s ready modulo an issue with the test.  Could you take a loo=
k?

I'm not ignoring this; I'll have time to look over the next couple of
weeks.  I'll need to research the issue.

=2D-=20
Mike Gerwitz

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCgAGBQJb45fSAAoJEIyRe39dxRuisEMQALzkRSbdn1DLakjTK2vMJTMh
oNJI00NgVPrmTbCgohtIZCvW9rhdmhgDmWr3gSM1I+3ptMKoN79kQCcT3O/seKWd
1oh1MOswwwzNaZPBuVqq8m8FjE25OmYm4+FAT+KJWV3xBA2t3gUuxWway4OLmL7w
wFkMTWUftScog0Aa2BceI56dXT6YmheajMoTjhhc27lnAT71Yf3qPsNfjs7VpGjY
Wqz6oC7h3Kv44WNN7KbUV0Zilvfh/zpU8AKeayovd9v4gQUudiCtPEimPi9VPeuZ
pvQk412DOfTAZYSCai8y8+2JYsXks+BGXd1+yX/cOqHp7tvAcrDxna96X0H1DS4d
+O1srjpEhsb39HvCnya/u6c7ltWNjUAdojksm2KpY5eMjQkvkhV5O6K/0wAZf53l
9jyd4uJ9hLYqKlspbiTvFCAqa3SDp43/deKT3PR1Gd7x04c7R+GtF9PLwvIOSsVY
ZUlsujv/YWQqGVt9LJ0XN2ffQ+wyZ8xxIyPQBtnRUHNFlJrOIXxtkuRKdVuSDB4g
kZPky1QyBhG9HldJEDyvr3JXeyDxgPGBxpAt0K3vadv+5fL59+7Q59oaSnKkC2ln
FpXEw+8cz+93Xjh8N3zybBl9sGfh+LVp87Cjd06Dlw+g/bcCsCoRGV165VHa3kuy
bAe5pEu9SpGWVxBcicgv
=V7Ay
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#30256; Package guix-patches. Full text available.

Message received at 30256 <at> debbugs.gnu.org:


Received: (at 30256) by debbugs.gnu.org; 17 Oct 2018 12:19:43 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Wed Oct 17 08:19:43 2018
Received: from localhost ([127.0.0.1]:54481 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1gCknf-0007v8-5C
	for submit <at> debbugs.gnu.org; Wed, 17 Oct 2018 08:19:43 -0400
Received: from eggs.gnu.org ([208.118.235.92]:58556)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ludo@HIDDEN>) id 1gCknd-0007us-9K
 for 30256 <at> debbugs.gnu.org; Wed, 17 Oct 2018 08:19:41 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <ludo@HIDDEN>) id 1gCknX-0000Wm-0z
 for 30256 <at> debbugs.gnu.org; Wed, 17 Oct 2018 08:19:35 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=disabled
 version=3.3.2
Received: from fencepost.gnu.org ([2001:4830:134:3::e]:35660)
 by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <ludo@HIDDEN>)
 id 1gCknW-0000WK-Rp; Wed, 17 Oct 2018 08:19:34 -0400
Received: from [2a01:e0a:1d:7270:af76:b9b:ca24:c465] (port=53704 helo=ribbon)
 by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256)
 (Exim 4.82) (envelope-from <ludo@HIDDEN>)
 id 1gCknW-0007gc-II; Wed, 17 Oct 2018 08:19:34 -0400
From: ludo@HIDDEN (Ludovic =?utf-8?Q?Court=C3=A8s?=)
To: Mike Gerwitz <mtg@HIDDEN>
Subject: Re: [bug#30256] [PATCH 3/3] scripts: environment: Add --no-cwd.
References: <87vag2wopo.fsf@HIDDEN> <cover.1516937216.git.mtg@HIDDEN>
 <7bc71eaa3cff48ec7dc0d4fe406dde9482b716a9.1516937216.git.mtg@HIDDEN>
 <87tvtyhhnd.fsf@HIDDEN>
Date: Wed, 17 Oct 2018 14:19:33 +0200
In-Reply-To: <87tvtyhhnd.fsf@HIDDEN> ("Ludovic
 \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\=
 \=\?utf-8\?Q\?s\?\= message of "Fri, 02 Mar 2018 11:54:30 +0100")
Message-ID: <87murcdaui.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
X-Received-From: 2001:4830:134:3::e
X-Spam-Score: -5.0 (-----)
X-Debbugs-Envelope-To: 30256
Cc: 30254 <at> debbugs.gnu.org, 30256 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -6.0 (------)

Hello Mike,

There=E2=80=99s this last patch from the series you submitted a while back
that=E2=80=99s ready modulo an issue with the test.  Could you take a look?

TIA,
Ludo=E2=80=99.

ludo@HIDDEN (Ludovic Court=C3=A8s) skribis:

> Mike Gerwitz <mtg@HIDDEN> skribis:
>
>> * doc/guix.texi (Invoking guix environment): Add --no-cwd.
>> * guix/scripts/environment.scm (show-help, %options): Add --no-cwd.
>> (launch-environment/container): Add 'map-cwd?' param; only add mapping f=
or cwd
>> if #t.  Only change to cwd within container if #t, otherwise home.
>> (guix-environment): Error if --no-cwd without --container.  Provide '(not
>> no-cwd?)' to launch-environment/container as 'map-cwd?'.
>> * tests/guix-environment.sh: Add test for no-cwd.
>
> This one LGTM as well (with the test moved to
> guix-environment-container.sh).  There=E2=80=99s just a minor issue:
>
>> --- a/tests/guix-environment.sh
>> +++ b/tests/guix-environment.sh
>> @@ -84,6 +84,14 @@ HOME=3D"$tmpdir" guix environment --bootstrap --conta=
iner --user=3Dfoognu \
>>       --share=3D"$tmpdir/umock" \
>>       -- guile -c "$usertest"
>>=20=20
>> +# if not sharing CWD, chdir home
>> +(
>> +  cd "$tmpdir" \
>> +    && guix environment --bootstrap --container --no-cwd --user=3Dfoo  \
>> +            --ad-hoc guile-bootstrap --pure \
>> +            -- /bin/sh -c 'test $(pwd) =3D=3D "/home/foo" -a ! -d '"$tm=
pdir"
>> +)
>> +
>
> This test would fail for me because my test store is at
> ~ludo/src/guix/test-tmp/store and my CWD is ~/src/guix.  So when using
> both --user and --no-cwd, the effect is that
> ~ludo/src/guix/test-tmp/store is not available at all within the
> container, and thus execve("/bin/sh") fails with ENOENT:
>
> $ ./test-env guix environment --bootstrap --container --no-cwd --user=3Df=
oo --ad-hoc guile-bootstrap
> accepted connection from pid 29684, user ludo
> accepted connection from pid 29695, user ludo
> ./test-env: line 1: 29683 Terminated              "/home/ludo/src/guix/pr=
e-inst-env" "/home/ludo/src/guix/guix-daemon" --disable-chroot --substitute=
-urls=3D"$GUIX_BINARY_SUBSTITUTE_URL"
> $ echo $?
> 1
>
> Thoughts?
>
> TIA,
> Ludo=E2=80=99.




Information forwarded to guix-patches@HIDDEN:
bug#30256; Package guix-patches. Full text available.

Message received at 30256 <at> debbugs.gnu.org:


Received: (at 30256) by debbugs.gnu.org; 6 Mar 2018 18:16:40 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Mar 06 13:16:39 2018
Received: from localhost ([127.0.0.1]:47990 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1etH8f-0000t0-Tj
	for submit <at> debbugs.gnu.org; Tue, 06 Mar 2018 13:16:38 -0500
Received: from eggs.gnu.org ([208.118.235.92]:46324)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mtg@HIDDEN>) id 1etH8e-0000sq-AC
 for 30256 <at> debbugs.gnu.org; Tue, 06 Mar 2018 13:16:36 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <mtg@HIDDEN>) id 1etH8X-0002jN-VC
 for 30256 <at> debbugs.gnu.org; Tue, 06 Mar 2018 13:16:31 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,T_RP_MATCHES_RCVD
 autolearn=disabled version=3.3.2
Received: from fencepost.gnu.org ([2001:4830:134:3::e]:52719)
 by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <mtg@HIDDEN>)
 id 1etH8V-0002hm-02; Tue, 06 Mar 2018 13:16:27 -0500
Received: from localhost ([::1]:55853 helo=mikegerwitz-pc.gerwitz.local)
 by fencepost.gnu.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128)
 (Exim 4.82) (envelope-from <mtg@HIDDEN>)
 id 1etH8U-0008ST-M9; Tue, 06 Mar 2018 13:16:26 -0500
From: Mike Gerwitz <mtg@HIDDEN>
To: ludo@HIDDEN (Ludovic =?utf-8?Q?Court=C3=A8s?=)
Subject: Re: [bug#30256] [PATCH 3/3] scripts: environment: Add --no-cwd.
In-Reply-To: <878tb5zes8.fsf@HIDDEN> ("Ludovic
 \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\=
 \=\?utf-8\?Q\?s\?\= message of "Tue, 06 Mar 2018 11:20:23 +0100")
Date: Tue, 06 Mar 2018 13:07:52 -0500
Message-ID: <87efkx84cn.fsf@HIDDEN>
References: <87vag2wopo.fsf@HIDDEN> <cover.1516937216.git.mtg@HIDDEN>
 <7bc71eaa3cff48ec7dc0d4fe406dde9482b716a9.1516937216.git.mtg@HIDDEN>
 <87tvtyhhnd.fsf@HIDDEN> <877equgxx7.fsf@HIDDEN> <87zi3p9q1w.fsf@HIDDEN>
 <87y3j7btwp.fsf@HIDDEN> <87tvtv32ec.fsf@HIDDEN> <87d10ibds4.fsf@HIDDEN>
 <878tb5zes8.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)
OpenPGP: id=22175B02E626BC98D7C0C2E5F22BB8158EE30EAB
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
X-Received-From: 2001:4830:134:3::e
X-Spam-Score: -5.0 (-----)
X-Debbugs-Envelope-To: 30256
Cc: 30256 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -5.0 (-----)

--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

On Tue, Mar 06, 2018 at 11:20:23 +0100, Ludovic Court=C3=A8s wrote:
> Mike Gerwitz <mtg@HIDDEN> skribis:
>> Currently, I'd have to write a package definition to add a wrapper; that
>> wouldn't be done automatically for me.  But considering a functional
>> package manager, it'd be an interesting problem to try to get around
>> that.  And you don't want containerized versions of _every_
>> package---that's some serious bloat.  Unless maybe they're packages that
>> are generated from existing package definitions (in some
>> yet-to-be-defined manner), and maybe those packages have a special
>> containerized output (in addition to `out',
>> e.g. `icecat:container').  (I suppose short-term, such outputs can be
>> created manually for select packages.)
>
> I was thinking =E2=80=98guix package=E2=80=99 could create those wrappers=
 automatically
> based on a number of criteria: a package property could request
> containerization, command-line options could disable that, and so on.

Yes, I'd much prefer that.  That package definition might not be able to
infer certain things, so we'd need to be able to specify e.g. paths to
include in the container.  Preferably overridable as well---for example,
I don't share ~/.cache/mozilla/icecat with the container (I want it to
be ephemeral), but other users may prefer to.

>> Just spewing thoughts.  I'm still not well-versed in Guix.  So maybe
>> `guix run` is a good starting point and can be used by a wrapper in the
>> future.  It also allows users to containerize something optionally---for
>> example, maybe a user doesn't want to containerize their PDF reader, but
>> if they are opening an untrusted PDF, they'll want to.  A GNOME context
>> menu option to say "Open in isolated container" (sorta like Qubes)
>> sounds attractive.
>
> Yeah, though I very much think least authority would be a better default
> than ambient authority.  :-)

I agree for my needs; I suppose we'd need to see what downsides exist
from containerization (if any) that might make the user think
otherwise.  If containerization by default is suitable, then there may
be no need to provide a non-container option, so long as the user can
choose paths to share with the container (and network access).  This is
sounding more like an AppArmor type of permission system.  (Without the
AppArmor, of course.)

=2D-=20
Mike Gerwitz
Free Software Hacker+Activist | GNU Maintainer & Volunteer
GPG: D6E9 B930 028A 6C38 F43B  2388 FEF6 3574 5E6F 6D05
https://mikegerwitz.com

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCgAGBQJantj5AAoJEIyRe39dxRuiflEQAKYItQrmMaqSrzQG40iELks9
623kK0dFwe/49HHdEDs7qye2u0uSigDrMDR/xMivOFDdbvZ6z+7Jmlg5E0Dhrex6
SSJoQTCKmXcitPRnUXqeVsaj2VN8bcaMxVdzTixxtwHtEKKGfm/503k9K2RxB9o7
1aMgYTMHZPHN8vhCT2EZ4Us1x8RR8TXyjNUpjo989NvoQJxqz33fPjjgUMjrQZE+
aKzCTNKyMrVoU6lzuMsilMvavQ2wfBKv+Z1qOHTo9UDCwvurQe4rAwaUQ+NK0vyH
peyiHWFsh7hd9e18hv4GmGWY9kLfclE8guX/tHPmRWElIClkREezpIbGqT7gYdLE
17SZhe1wPORZT5WDEASikYsWVBvFDZRWy2hxP41Xe8K1LaFbwJf+zAcGkxWaJd0F
OuLtdOFopWpnNRmiZwzxdkWLaEU+UCoNU5jI2Z/WKenE7+gkikaJkuWlqiB6C1+F
XLzwhaQrf2JMzF29Iyg6Z6vDZ03t1aAlTNYCjFZIwupAYY+SXh+YZRkQuChOOx8X
gV4WZXg3PidPCZLpol508kXt9KwQPbmp+5qZJaz9rvhNP4Zw2ZoCRPFHUIWHg5Zt
lzz1Pt+axRT2Z+sBMmeGiGMeXbMwiS0JYbJNfITj2IKu08xM2yA0A+DrYs66+KfP
Gzl0uOYdRxXVcup3oiNy
=6Kf3
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#30256; Package guix-patches. Full text available.

Message received at 30256 <at> debbugs.gnu.org:


Received: (at 30256) by debbugs.gnu.org; 6 Mar 2018 10:20:28 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Mar 06 05:20:28 2018
Received: from localhost ([127.0.0.1]:46849 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1et9hs-0000OR-IY
	for submit <at> debbugs.gnu.org; Tue, 06 Mar 2018 05:20:28 -0500
Received: from hera.aquilenet.fr ([185.233.100.1]:36946)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ludo@HIDDEN>) id 1et9hq-0000OI-93
 for 30256 <at> debbugs.gnu.org; Tue, 06 Mar 2018 05:20:26 -0500
Received: from localhost (localhost [127.0.0.1])
 by hera.aquilenet.fr (Postfix) with ESMTP id 31DF910D29;
 Tue,  6 Mar 2018 11:20:25 +0100 (CET)
X-Virus-Scanned: Debian amavisd-new at aquilenet.fr
Received: from hera.aquilenet.fr ([127.0.0.1])
 by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id ZA528GfCLexu; Tue,  6 Mar 2018 11:20:24 +0100 (CET)
Received: from ribbon (unknown [193.50.110.134])
 by hera.aquilenet.fr (Postfix) with ESMTPSA id B8B5C10437;
 Tue,  6 Mar 2018 11:20:23 +0100 (CET)
From: ludo@HIDDEN (Ludovic =?utf-8?Q?Court=C3=A8s?=)
To: Mike Gerwitz <mtg@HIDDEN>
Subject: Re: [bug#30256] [PATCH 3/3] scripts: environment: Add --no-cwd.
In-Reply-To: <87d10ibds4.fsf@HIDDEN> (Mike Gerwitz's message of "Mon, 05 Mar
 2018 13:03:39 -0500")
References: <87vag2wopo.fsf@HIDDEN> <cover.1516937216.git.mtg@HIDDEN>
 <7bc71eaa3cff48ec7dc0d4fe406dde9482b716a9.1516937216.git.mtg@HIDDEN>
 <87tvtyhhnd.fsf@HIDDEN> <877equgxx7.fsf@HIDDEN>
 <87zi3p9q1w.fsf@HIDDEN> <87y3j7btwp.fsf@HIDDEN>
 <87tvtv32ec.fsf@HIDDEN> <87d10ibds4.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)
X-URL: http://www.fdn.fr/~lcourtes/
X-Revolutionary-Date: 16 =?utf-8?Q?Vent=C3=B4se?= an 226 de la =?utf-8?Q?R?=
 =?utf-8?Q?=C3=A9volution?=
X-PGP-Key-ID: 0x090B11993D9AEBB5
X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc
X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4  0CFB 090B 1199 3D9A EBB5
X-OS: x86_64-pc-linux-gnu
Date: Tue, 06 Mar 2018 11:20:23 +0100
Message-ID: <878tb5zes8.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 30256
Cc: 30256 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 1.0 (+)

Hello,

Mike Gerwitz <mtg@HIDDEN> skribis:

> On Sun, Mar 04, 2018 at 23:24:27 +0100, Ludovic Court=C3=A8s wrote:

[...]

>> You still have to explicitly run =E2=80=98guix run icecat=E2=80=99, whic=
h isn=E2=80=99t great:
>> if you=E2=80=99re using GNOME Shell and clicking on the icon, you don=E2=
=80=99t get to
>> run it in a containerized environment.
>
> Well, I do everything from a shell, so that works for me personally. :)
> But yes, what you are describing is important.
>
> But, from a security perspective, I'd like for containerization to be
> _guaranteed_, otherwise a malicious script could just subvert it
> (e.g. open icecat with an argument to a malicious HTML file).  I used
> `guix environment` not only because of its container support, but
> because that ensured that icecat wasn't in my profile at all to be
> invoked by something else.

Good point.

> Currently, I'd have to write a package definition to add a wrapper; that
> wouldn't be done automatically for me.  But considering a functional
> package manager, it'd be an interesting problem to try to get around
> that.  And you don't want containerized versions of _every_
> package---that's some serious bloat.  Unless maybe they're packages that
> are generated from existing package definitions (in some
> yet-to-be-defined manner), and maybe those packages have a special
> containerized output (in addition to `out',
> e.g. `icecat:container').  (I suppose short-term, such outputs can be
> created manually for select packages.)

I was thinking =E2=80=98guix package=E2=80=99 could create those wrappers a=
utomatically
based on a number of criteria: a package property could request
containerization, command-line options could disable that, and so on.

> Just spewing thoughts.  I'm still not well-versed in Guix.  So maybe
> `guix run` is a good starting point and can be used by a wrapper in the
> future.  It also allows users to containerize something optionally---for
> example, maybe a user doesn't want to containerize their PDF reader, but
> if they are opening an untrusted PDF, they'll want to.  A GNOME context
> menu option to say "Open in isolated container" (sorta like Qubes)
> sounds attractive.

Yeah, though I very much think least authority would be a better default
than ambient authority.  :-)

Ludo=E2=80=99.




Information forwarded to guix-patches@HIDDEN:
bug#30256; Package guix-patches. Full text available.

Message received at 30256 <at> debbugs.gnu.org:


Received: (at 30256) by debbugs.gnu.org; 5 Mar 2018 18:04:27 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Mar 05 13:04:27 2018
Received: from localhost ([127.0.0.1]:46170 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1esuTL-0005fK-7M
	for submit <at> debbugs.gnu.org; Mon, 05 Mar 2018 13:04:27 -0500
Received: from eggs.gnu.org ([208.118.235.92]:39592)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mtg@HIDDEN>) id 1esuTJ-0005f4-5X
 for 30256 <at> debbugs.gnu.org; Mon, 05 Mar 2018 13:04:25 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <mtg@HIDDEN>) id 1esuTD-0003tf-4v
 for 30256 <at> debbugs.gnu.org; Mon, 05 Mar 2018 13:04:20 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-0.0 required=5.0 tests=BAYES_20,T_RP_MATCHES_RCVD
 autolearn=disabled version=3.3.2
Received: from fencepost.gnu.org ([2001:4830:134:3::e]:58284)
 by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <mtg@HIDDEN>)
 id 1esuT9-0003t8-B3; Mon, 05 Mar 2018 13:04:15 -0500
Received: from localhost ([::1]:33184 helo=mikegerwitz-pc.gerwitz.local)
 by fencepost.gnu.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128)
 (Exim 4.82) (envelope-from <mtg@HIDDEN>)
 id 1esuT9-00049E-0R; Mon, 05 Mar 2018 13:04:15 -0500
From: Mike Gerwitz <mtg@HIDDEN>
To: ludo@HIDDEN (Ludovic =?utf-8?Q?Court=C3=A8s?=)
Subject: Re: [bug#30256] [PATCH 3/3] scripts: environment: Add --no-cwd.
In-Reply-To: <87tvtv32ec.fsf@HIDDEN> ("Ludovic
 \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\=
 \=\?utf-8\?Q\?s\?\= message of "Sun, 04 Mar 2018 23:24:27 +0100")
Date: Mon, 05 Mar 2018 13:03:39 -0500
Message-ID: <87d10ibds4.fsf@HIDDEN>
References: <87vag2wopo.fsf@HIDDEN> <cover.1516937216.git.mtg@HIDDEN>
 <7bc71eaa3cff48ec7dc0d4fe406dde9482b716a9.1516937216.git.mtg@HIDDEN>
 <87tvtyhhnd.fsf@HIDDEN> <877equgxx7.fsf@HIDDEN> <87zi3p9q1w.fsf@HIDDEN>
 <87y3j7btwp.fsf@HIDDEN> <87tvtv32ec.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)
OpenPGP: id=22175B02E626BC98D7C0C2E5F22BB8158EE30EAB
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
X-Received-From: 2001:4830:134:3::e
X-Spam-Score: -5.0 (-----)
X-Debbugs-Envelope-To: 30256
Cc: 30256 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -5.0 (-----)

--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

On Sun, Mar 04, 2018 at 23:24:27 +0100, Ludovic Court=C3=A8s wrote:
> Right.  The =E2=80=98guix run=E2=80=99 script I sent doesn=E2=80=99t try =
to build things; it
> just takes whatever is in $PATH (which has to be in the store,
> ultimately) and runs it.

Oh, great!

>> Obviously the desirable behavior is to just containerize whatever is in
>> your profile, if possible.  Maybe the script you sent me does just
>> that.  I'm excited to play around with it, I just can't atm. :(
>
> You still have to explicitly run =E2=80=98guix run icecat=E2=80=99, which=
 isn=E2=80=99t great:
> if you=E2=80=99re using GNOME Shell and clicking on the icon, you don=E2=
=80=99t get to
> run it in a containerized environment.

Well, I do everything from a shell, so that works for me personally. :)
But yes, what you are describing is important.

But, from a security perspective, I'd like for containerization to be
_guaranteed_, otherwise a malicious script could just subvert it
(e.g. open icecat with an argument to a malicious HTML file).  I used
`guix environment` not only because of its container support, but
because that ensured that icecat wasn't in my profile at all to be
invoked by something else.

Currently, I'd have to write a package definition to add a wrapper; that
wouldn't be done automatically for me.  But considering a functional
package manager, it'd be an interesting problem to try to get around
that.  And you don't want containerized versions of _every_
package---that's some serious bloat.  Unless maybe they're packages that
are generated from existing package definitions (in some
yet-to-be-defined manner), and maybe those packages have a special
containerized output (in addition to `out',
e.g. `icecat:container').  (I suppose short-term, such outputs can be
created manually for select packages.)

Just spewing thoughts.  I'm still not well-versed in Guix.  So maybe
`guix run` is a good starting point and can be used by a wrapper in the
future.  It also allows users to containerize something optionally---for
example, maybe a user doesn't want to containerize their PDF reader, but
if they are opening an untrusted PDF, they'll want to.  A GNOME context
menu option to say "Open in isolated container" (sorta like Qubes)
sounds attractive.

=2D-=20
Mike Gerwitz
Free Software Hacker+Activist | GNU Maintainer & Volunteer
GPG: D6E9 B930 028A 6C38 F43B  2388 FEF6 3574 5E6F 6D05
https://mikegerwitz.com

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCgAGBQJanYZ8AAoJEIyRe39dxRuiv8MP/10bVlqnBbPkk99zpHZODV+v
zK/Q/gfv+aXIMzRUC34H/fVfiy2qeyqBeEmPIvOmJRMYQQjMsPaJKiWl3nPCxofd
BhKSZmkGc7eEHqFxPUOXWeaS9oKAN4bR31TisPteyQzq2nCaXeynnhntI3Uwnc8n
TqjfXO0OMYmXpQAgD4MnOvot84ZJI8sNyd8wiKbrSdThLBsAj49qXrCMRBX67nZ3
aefOQYzcIQknB6ZI+/EcFPV+Hlemswf4fFFUNXJ8aXVzNxY4F4NPQdzdX1mkj1b0
WCeoltkdkQrslNJoE/f5fI+891qpwj0R1ruLXsljasWFxA56MKEwnyGSW+vkJUwb
UUhzHvokJVisiPqk3Qe0ZuIdef3xjigxoriQ/3uW0/NjITbI+MZaWL2rYidP/RWs
QDljkSr2rXbtb6SfZDa+f3PRWB2SYkAG4Y8tORBaaV/g7pbDQim8FVm2GcD/fo/4
sk7VFISeLlT9FWp/8T3NTIdTLHIcpHPob6ZhfH/L6E3LuVFde49V/77xDrXsDulx
sCAh0GtTgMvSK4V7ZQiW+3UKuC7t6kNDqR/V73celO3TvYwVUw8cGgEzEAfwsXKe
R6DasyI65kRt/lJNIf0SoW0FJZBJhs5c7q5WJl7lRTdOVq7GlmmfQkkFIF/eQrSE
qLS6tM8lqvYw4UKRxjwZ
=cVDi
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#30256; Package guix-patches. Full text available.

Message received at 30256 <at> debbugs.gnu.org:


Received: (at 30256) by debbugs.gnu.org; 4 Mar 2018 22:24:32 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Mar 04 17:24:32 2018
Received: from localhost ([127.0.0.1]:44789 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1esc3U-0000VR-5q
	for submit <at> debbugs.gnu.org; Sun, 04 Mar 2018 17:24:32 -0500
Received: from hera.aquilenet.fr ([185.233.100.1]:33164)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ludo@HIDDEN>) id 1esc3S-0000VJ-9F
 for 30256 <at> debbugs.gnu.org; Sun, 04 Mar 2018 17:24:30 -0500
Received: from localhost (localhost [127.0.0.1])
 by hera.aquilenet.fr (Postfix) with ESMTP id D040B10A74;
 Sun,  4 Mar 2018 23:24:29 +0100 (CET)
X-Virus-Scanned: Debian amavisd-new at aquilenet.fr
Received: from hera.aquilenet.fr ([127.0.0.1])
 by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id K1g1RWz8YyVV; Sun,  4 Mar 2018 23:24:28 +0100 (CET)
Received: from ribbon (unknown [IPv6:2a01:e0a:1d:7270:af76:b9b:ca24:c465])
 by hera.aquilenet.fr (Postfix) with ESMTPSA id 928B26FF0;
 Sun,  4 Mar 2018 23:24:28 +0100 (CET)
From: ludo@HIDDEN (Ludovic =?utf-8?Q?Court=C3=A8s?=)
To: Mike Gerwitz <mtg@HIDDEN>
Subject: Re: [bug#30256] [PATCH 3/3] scripts: environment: Add --no-cwd.
References: <87vag2wopo.fsf@HIDDEN> <cover.1516937216.git.mtg@HIDDEN>
 <7bc71eaa3cff48ec7dc0d4fe406dde9482b716a9.1516937216.git.mtg@HIDDEN>
 <87tvtyhhnd.fsf@HIDDEN> <877equgxx7.fsf@HIDDEN>
 <87zi3p9q1w.fsf@HIDDEN> <87y3j7btwp.fsf@HIDDEN>
X-URL: http://www.fdn.fr/~lcourtes/
X-Revolutionary-Date: 14 =?utf-8?Q?Vent=C3=B4se?= an 226 de la =?utf-8?Q?R?=
 =?utf-8?Q?=C3=A9volution?=
X-PGP-Key-ID: 0x090B11993D9AEBB5
X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc
X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4  0CFB 090B 1199 3D9A EBB5
X-OS: x86_64-pc-linux-gnu
Date: Sun, 04 Mar 2018 23:24:27 +0100
In-Reply-To: <87y3j7btwp.fsf@HIDDEN> (Mike Gerwitz's message of "Sun, 04 Mar
 2018 13:03:02 -0500")
Message-ID: <87tvtv32ec.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 30256
Cc: 30256 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 1.0 (+)

Heya,

Mike Gerwitz <mtg@HIDDEN> skribis:

> On Sat, Mar 03, 2018 at 15:44:43 +0100, Ludovic Court=C3=A8s wrote:

[...]

>> Sure.  I think the issue of least-authority execution of programs
>> remains open anway.  Do we want a =E2=80=98guix run=E2=80=99-like comman=
d?  Something in
>> the shell, but which shell(s) then?  Automatically-generated wrappers so
>> we don=E2=80=99t depend on specific shells?
>
> One thing in particular about using `guix environment --ad-hoc' that is
> particularly unfortunate with how I'm abusing it is that it will build
> new derivations as necessary (as it is supposed to).  So "starting
> icecat" in a container isn't just that.  I recently upgraded Guix, and
> icecat isn't available on Hydra yet, so I'm unable to start icecat at
> all until it compiles, which is hours on an X200 (though I'm assuming
> that reverting ~/.config/guix/latest might allow me to work around it
> temporarily with an old version).  This would not have been a problem
> with a normal icecat installation in my profile.

Right.  The =E2=80=98guix run=E2=80=99 script I sent doesn=E2=80=99t try to=
 build things; it
just takes whatever is in $PATH (which has to be in the store,
ultimately) and runs it.

> Obviously the desirable behavior is to just containerize whatever is in
> your profile, if possible.  Maybe the script you sent me does just
> that.  I'm excited to play around with it, I just can't atm. :(

You still have to explicitly run =E2=80=98guix run icecat=E2=80=99, which i=
sn=E2=80=99t great:
if you=E2=80=99re using GNOME Shell and clicking on the icon, you don=E2=80=
=99t get to
run it in a containerized environment.

Ludo=E2=80=99.




Information forwarded to guix-patches@HIDDEN:
bug#30256; Package guix-patches. Full text available.

Message received at 30256 <at> debbugs.gnu.org:


Received: (at 30256) by debbugs.gnu.org; 4 Mar 2018 18:03:35 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Mar 04 13:03:35 2018
Received: from localhost ([127.0.0.1]:44668 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1esXyx-0002iR-1m
	for submit <at> debbugs.gnu.org; Sun, 04 Mar 2018 13:03:35 -0500
Received: from eggs.gnu.org ([208.118.235.92]:42694)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mtg@HIDDEN>) id 1esXyw-0002iF-2s
 for 30256 <at> debbugs.gnu.org; Sun, 04 Mar 2018 13:03:34 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <mtg@HIDDEN>) id 1esXyp-0006nI-Ue
 for 30256 <at> debbugs.gnu.org; Sun, 04 Mar 2018 13:03:28 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-0.5 required=5.0 tests=BAYES_05,T_RP_MATCHES_RCVD
 autolearn=disabled version=3.3.2
Received: from fencepost.gnu.org ([2001:4830:134:3::e]:39999)
 by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <mtg@HIDDEN>)
 id 1esXyn-0006mR-HY; Sun, 04 Mar 2018 13:03:25 -0500
Received: from localhost ([::1]:43133 helo=mikegerwitz-pc.gerwitz.local)
 by fencepost.gnu.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128)
 (Exim 4.82) (envelope-from <mtg@HIDDEN>)
 id 1esXyn-0007Ud-93; Sun, 04 Mar 2018 13:03:25 -0500
From: Mike Gerwitz <mtg@HIDDEN>
To: ludo@HIDDEN (Ludovic =?utf-8?Q?Court=C3=A8s?=)
Subject: Re: [bug#30256] [PATCH 3/3] scripts: environment: Add --no-cwd.
In-Reply-To: <87zi3p9q1w.fsf@HIDDEN> ("Ludovic
 \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\=
 \=\?utf-8\?Q\?s\?\= message of "Sat, 03 Mar 2018 15:44:43 +0100")
Date: Sun, 04 Mar 2018 13:03:02 -0500
Message-ID: <87y3j7btwp.fsf@HIDDEN>
References: <87vag2wopo.fsf@HIDDEN> <cover.1516937216.git.mtg@HIDDEN>
 <7bc71eaa3cff48ec7dc0d4fe406dde9482b716a9.1516937216.git.mtg@HIDDEN>
 <87tvtyhhnd.fsf@HIDDEN> <877equgxx7.fsf@HIDDEN> <87zi3p9q1w.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)
OpenPGP: id=22175B02E626BC98D7C0C2E5F22BB8158EE30EAB
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
X-Received-From: 2001:4830:134:3::e
X-Spam-Score: -5.0 (-----)
X-Debbugs-Envelope-To: 30256
Cc: 30256 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -5.0 (-----)

--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

On Sat, Mar 03, 2018 at 15:44:43 +0100, Ludovic Court=C3=A8s wrote:
>> Also---I thought the decision was that this patchset was inappropriate
>> for `guix environment`; did I misinterpret?
>
> My initial reaction was that we shouldn=E2=80=99t stretch =E2=80=98guix e=
nvironment=E2=80=99 to
> do something that=E2=80=99s unrelated to environment management.
>
> However as I looked at your patches, I found that the additions you made
> are useful per se (for instance I=E2=80=99ve been wanting =E2=80=98--link=
-profile=E2=80=99 on a
> couple of occasions for reasons like the one you gave, Fontconfig,
> etc.).  And the patches had tests, documentation, and everything, so it
> seemed more beneficial to include them.  :-)

Okay, sounds good.

>> Thanks for taking a look at and applying these.  If there are better
>> solutions, I'm fine with that---I just wanted a proof-of-concept to
>> start the discussion.  Though, starting the discussion and then ducking
>> out for other obligations wasn't quite what I had in mind...
>
> Sure.  I think the issue of least-authority execution of programs
> remains open anway.  Do we want a =E2=80=98guix run=E2=80=99-like command=
?  Something in
> the shell, but which shell(s) then?  Automatically-generated wrappers so
> we don=E2=80=99t depend on specific shells?

One thing in particular about using `guix environment --ad-hoc' that is
particularly unfortunate with how I'm abusing it is that it will build
new derivations as necessary (as it is supposed to).  So "starting
icecat" in a container isn't just that.  I recently upgraded Guix, and
icecat isn't available on Hydra yet, so I'm unable to start icecat at
all until it compiles, which is hours on an X200 (though I'm assuming
that reverting ~/.config/guix/latest might allow me to work around it
temporarily with an old version).  This would not have been a problem
with a normal icecat installation in my profile.

Obviously the desirable behavior is to just containerize whatever is in
your profile, if possible.  Maybe the script you sent me does just
that.  I'm excited to play around with it, I just can't atm. :(

=2D-=20
Mike Gerwitz
Free Software Hacker+Activist | GNU Maintainer & Volunteer
GPG: D6E9 B930 028A 6C38 F43B  2388 FEF6 3574 5E6F 6D05
https://mikegerwitz.com

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCgAGBQJanDTWAAoJEIyRe39dxRuiNIIQAKoy54MoU3wZHNFAHV+GTOCd
SqBikep+B/ER0QAfnF5UodTdAmEQRXV3E5n5MtKuf7erjWRrKuz6x5Bt8mujIFQV
bXMDACJCgM3OGLsR/H8paFRcf0o/mTE2sRCTIF/8ayrZHhm1+7v68yOLZYTTJHaa
BHtM1hq6TxAtgdKNspZzkIDEmI35J9oJWbybgPQaBY30mG4nyObDzH1f0JeB31HS
wlwH2oZjdVOCVHBz7lmqZAE4VIEr1bAfB7WUDSxKxNLcFlkPii+Qd3i/tw0TjENV
SLt/OgVYrrrzkywEgOXLB5r4WOeLr/7Mh44pEVI0OntVLABP0ejw+0PoQgu2ZT6+
I5QCpAgnq845bZsb70NRtrxGqyYLDHxcdj63ut9KePJhWDQESGtvoqmD8tMzKFvd
LYN0zYtZg6pxi/mebf5pNF5xcN/bclXE8tYIdAP9W4AALB7D6VQZ5wF2HpR8hdnB
FBVHWJcQW6g4BnJtMEXaqPAj+xr+t01G6SMurW0oax0DN/BHR1VWVKE1ZCc0Oo4u
283QQPVmj6e1CQLtA/+f/0lmjsh6T0Xdun5mbRSjg/4NCpEgRZDLIQG/aWf0OrKc
axr0L2rhaJ3Pk766ZdyRlfmhqJDsHh8684xzwjycOCuDvvlzKipeHiu6p0KnQzg1
EuJ3qqqzoqYtCHnc208e
=iXGu
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#30256; Package guix-patches. Full text available.
Merged 30254 30256. Request was from ludo@HIDDEN (Ludovic Courtès) to control <at> debbugs.gnu.org. Full text available.

Message received at 30256 <at> debbugs.gnu.org:


Received: (at 30256) by debbugs.gnu.org; 3 Mar 2018 14:44:47 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Mar 03 09:44:47 2018
Received: from localhost ([127.0.0.1]:42003 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1es8P1-0007U7-GM
	for submit <at> debbugs.gnu.org; Sat, 03 Mar 2018 09:44:47 -0500
Received: from hera.aquilenet.fr ([185.233.100.1]:52552)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ludo@HIDDEN>) id 1es8Oz-0007U0-V0
 for 30256 <at> debbugs.gnu.org; Sat, 03 Mar 2018 09:44:46 -0500
Received: from localhost (localhost [127.0.0.1])
 by hera.aquilenet.fr (Postfix) with ESMTP id 5D1C5724F;
 Sat,  3 Mar 2018 15:44:45 +0100 (CET)
X-Virus-Scanned: Debian amavisd-new at aquilenet.fr
Received: from hera.aquilenet.fr ([127.0.0.1])
 by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id USMfBOcra-o1; Sat,  3 Mar 2018 15:44:44 +0100 (CET)
Received: from ribbon (unknown [IPv6:2a01:e0a:1d:7270:af76:b9b:ca24:c465])
 by hera.aquilenet.fr (Postfix) with ESMTPSA id 01F587127;
 Sat,  3 Mar 2018 15:44:43 +0100 (CET)
From: ludo@HIDDEN (Ludovic =?utf-8?Q?Court=C3=A8s?=)
To: Mike Gerwitz <mtg@HIDDEN>
Subject: Re: [bug#30256] [PATCH 3/3] scripts: environment: Add --no-cwd.
References: <87vag2wopo.fsf@HIDDEN> <cover.1516937216.git.mtg@HIDDEN>
 <7bc71eaa3cff48ec7dc0d4fe406dde9482b716a9.1516937216.git.mtg@HIDDEN>
 <87tvtyhhnd.fsf@HIDDEN> <877equgxx7.fsf@HIDDEN>
X-URL: http://www.fdn.fr/~lcourtes/
X-Revolutionary-Date: 13 =?utf-8?Q?Vent=C3=B4se?= an 226 de la =?utf-8?Q?R?=
 =?utf-8?Q?=C3=A9volution?=
X-PGP-Key-ID: 0x090B11993D9AEBB5
X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc
X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4  0CFB 090B 1199 3D9A EBB5
X-OS: x86_64-pc-linux-gnu
Date: Sat, 03 Mar 2018 15:44:43 +0100
In-Reply-To: <877equgxx7.fsf@HIDDEN> (Mike Gerwitz's message of "Fri, 02 Mar
 2018 13:00:36 -0500")
Message-ID: <87zi3p9q1w.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 30256
Cc: 30256 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 1.0 (+)

Hi Mike,

Mike Gerwitz <mtg@HIDDEN> skribis:

> Sorry I've been silent on the script you provided to me---between my GNU
> volunteer work and preparing for my LP2018 talk, I've had no free time,
> so I haven't even looked at it yet.  After the conference I'll have the
> time to collaborate a bit more.

Sure, understood!

> Also---I thought the decision was that this patchset was inappropriate
> for `guix environment`; did I misinterpret?

My initial reaction was that we shouldn=E2=80=99t stretch =E2=80=98guix env=
ironment=E2=80=99 to
do something that=E2=80=99s unrelated to environment management.

However as I looked at your patches, I found that the additions you made
are useful per se (for instance I=E2=80=99ve been wanting =E2=80=98--link-p=
rofile=E2=80=99 on a
couple of occasions for reasons like the one you gave, Fontconfig,
etc.).  And the patches had tests, documentation, and everything, so it
seemed more beneficial to include them.  :-)

> I admit that I forgot some of the implementation details of my own
> patch; I'd have to look at it in more detail.  I'll consider it tonight
> or this weekend.

OK!

> Thanks for taking a look at and applying these.  If there are better
> solutions, I'm fine with that---I just wanted a proof-of-concept to
> start the discussion.  Though, starting the discussion and then ducking
> out for other obligations wasn't quite what I had in mind...

Sure.  I think the issue of least-authority execution of programs
remains open anway.  Do we want a =E2=80=98guix run=E2=80=99-like command? =
 Something in
the shell, but which shell(s) then?  Automatically-generated wrappers so
we don=E2=80=99t depend on specific shells?

Thanks,
Ludo=E2=80=99.




Information forwarded to guix-patches@HIDDEN:
bug#30256; Package guix-patches. Full text available.

Message received at 30256 <at> debbugs.gnu.org:


Received: (at 30256) by debbugs.gnu.org; 2 Mar 2018 18:02:10 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Mar 02 13:02:10 2018
Received: from localhost ([127.0.0.1]:41508 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1erp0U-00072f-BV
	for submit <at> debbugs.gnu.org; Fri, 02 Mar 2018 13:02:10 -0500
Received: from eggs.gnu.org ([208.118.235.92]:50260)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mtg@HIDDEN>) id 1erp0S-00072Q-Fw
 for 30256 <at> debbugs.gnu.org; Fri, 02 Mar 2018 13:02:08 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <mtg@HIDDEN>) id 1erp0M-0001Q7-0K
 for 30256 <at> debbugs.gnu.org; Fri, 02 Mar 2018 13:02:03 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,T_RP_MATCHES_RCVD
 autolearn=disabled version=3.3.2
Received: from fencepost.gnu.org ([2001:4830:134:3::e]:34154)
 by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <mtg@HIDDEN>)
 id 1erp0J-0001KH-JC; Fri, 02 Mar 2018 13:01:59 -0500
Received: from localhost ([::1]:37287 helo=mikegerwitz-pc.gerwitz.local)
 by fencepost.gnu.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128)
 (Exim 4.82) (envelope-from <mtg@HIDDEN>)
 id 1erp0J-00046p-AK; Fri, 02 Mar 2018 13:01:59 -0500
From: Mike Gerwitz <mtg@HIDDEN>
To: ludo@HIDDEN (Ludovic =?utf-8?Q?Court=C3=A8s?=)
Subject: Re: [bug#30256] [PATCH 3/3] scripts: environment: Add --no-cwd.
In-Reply-To: <87tvtyhhnd.fsf@HIDDEN> ("Ludovic
 \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\=
 \=\?utf-8\?Q\?s\?\= message of "Fri, 02 Mar 2018 11:54:30 +0100")
Date: Fri, 02 Mar 2018 13:00:36 -0500
Message-ID: <877equgxx7.fsf@HIDDEN>
References: <87vag2wopo.fsf@HIDDEN> <cover.1516937216.git.mtg@HIDDEN>
 <7bc71eaa3cff48ec7dc0d4fe406dde9482b716a9.1516937216.git.mtg@HIDDEN>
 <87tvtyhhnd.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)
OpenPGP: id=22175B02E626BC98D7C0C2E5F22BB8158EE30EAB
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
X-Received-From: 2001:4830:134:3::e
X-Spam-Score: -5.0 (-----)
X-Debbugs-Envelope-To: 30256
Cc: 30256 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -5.0 (-----)

--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Hey, Ludo!

Sorry I've been silent on the script you provided to me---between my GNU
volunteer work and preparing for my LP2018 talk, I've had no free time,
so I haven't even looked at it yet.  After the conference I'll have the
time to collaborate a bit more.

Also---I thought the decision was that this patchset was inappropriate
for `guix environment`; did I misinterpret?

On Fri, Mar 02, 2018 at 11:54:30 +0100, Ludovic Court=C3=A8s wrote:
>> --- a/tests/guix-environment.sh
>> +++ b/tests/guix-environment.sh
>> @@ -84,6 +84,14 @@ HOME=3D"$tmpdir" guix environment --bootstrap --conta=
iner --user=3Dfoognu \
>>       --share=3D"$tmpdir/umock" \
>>       -- guile -c "$usertest"
>>=20=20
>> +# if not sharing CWD, chdir home
>> +(
>> +  cd "$tmpdir" \
>> +    && guix environment --bootstrap --container --no-cwd --user=3Dfoo  \
>> +            --ad-hoc guile-bootstrap --pure \
>> +            -- /bin/sh -c 'test $(pwd) =3D=3D "/home/foo" -a ! -d '"$tm=
pdir"
>> +)
>> +
>
> This test would fail for me because my test store is at
> ~ludo/src/guix/test-tmp/store and my CWD is ~/src/guix.  So when using
> both --user and --no-cwd, the effect is that
> ~ludo/src/guix/test-tmp/store is not available at all within the
> container, and thus execve("/bin/sh") fails with ENOENT:
>
> $ ./test-env guix environment --bootstrap --container --no-cwd --user=3Df=
oo --ad-hoc guile-bootstrap
> accepted connection from pid 29684, user ludo
> accepted connection from pid 29695, user ludo
> ./test-env: line 1: 29683 Terminated              "/home/ludo/src/guix/pr=
e-inst-env" "/home/ludo/src/guix/guix-daemon" --disable-chroot --substitute=
-urls=3D"$GUIX_BINARY_SUBSTITUTE_URL"
> $ echo $?
> 1
>
> Thoughts?

I admit that I forgot some of the implementation details of my own
patch; I'd have to look at it in more detail.  I'll consider it tonight
or this weekend.

Thanks for taking a look at and applying these.  If there are better
solutions, I'm fine with that---I just wanted a proof-of-concept to
start the discussion.  Though, starting the discussion and then ducking
out for other obligations wasn't quite what I had in mind...

=2D-=20
Mike Gerwitz
Free Software Hacker+Activist | GNU Maintainer & Volunteer
GPG: D6E9 B930 028A 6C38 F43B  2388 FEF6 3574 5E6F 6D05
https://mikegerwitz.com

--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCgAGBQJamZFFAAoJEIyRe39dxRuiRkkQAIqrzkOPRrupZM0e2+w8B207
2Yyd8Fh4kFnis7FBpDJ9kz+FOiD3mpWYzfmCFQr/Z7CrPYVevnNXqS9sYtibKeNu
laV9dHt9LtBtWAfmwLu+DAqpOD/SCGZn8fRhWJNBwvYmq+Ojqi2PvLfhsQlXStWL
XB4ccwkCd4H+Y9JxXetT3pLQw1xLDAHnphTshU9DQ+E4qfnA5uX/wclwMzwhuYT/
kFvP40fvXVrZMLieAaQNGFNnBfiQy4/iyoOCNWVkSZYUXXflzmROuTkXePxdTtXv
JRsOzgVrdQMZoxFhyuwOB+XSq4S9Q1MVE8jeZGZ2ndyx1LLLYlsm8xtcr1W2wG4B
xq573Sqn+vvciwhAaRYt9pTIAAPYY2eMJz55rI0TysNbgzwlfJJABqtaytn4NmTL
heBEAGPcjmDcWwMkfFz001jA64NuhS0oJMcq2TZ+Zlh8+OqBwO0Ywua1R+8BoprI
BRmfJwdTcIAvo1PSPnTcMSLeOBK5s69Y74ibAQlGVxlHpLeCVjC+O3SnuauYNGMg
UewzSKOUD0kZ7xePy1Oia0K2VfmNVAH91FivfFvlK2st9gpNVqwj1vT7SQhC2SaG
WtMeFA2++ZEnGdpZRg5OjWId9cn1BoJRQHBWfLlq1mBVWA7b+AvEhJgc24DNhz/c
gDSoXDkj+c00/ZRtx6CB
=JVGH
-----END PGP SIGNATURE-----
--=-=-=--




Information forwarded to guix-patches@HIDDEN:
bug#30256; Package guix-patches. Full text available.

Message received at 30256 <at> debbugs.gnu.org:


Received: (at 30256) by debbugs.gnu.org; 2 Mar 2018 10:54:34 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Mar 02 05:54:34 2018
Received: from localhost ([127.0.0.1]:40152 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eriKg-00017A-9F
	for submit <at> debbugs.gnu.org; Fri, 02 Mar 2018 05:54:34 -0500
Received: from hera.aquilenet.fr ([185.233.100.1]:44794)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <ludo@HIDDEN>) id 1eriKf-000172-4k
 for 30256 <at> debbugs.gnu.org; Fri, 02 Mar 2018 05:54:33 -0500
Received: from localhost (localhost [127.0.0.1])
 by hera.aquilenet.fr (Postfix) with ESMTP id 5A0F1119E6;
 Fri,  2 Mar 2018 11:54:32 +0100 (CET)
X-Virus-Scanned: Debian amavisd-new at aquilenet.fr
Received: from hera.aquilenet.fr ([127.0.0.1])
 by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id JkX9vQSvzbzc; Fri,  2 Mar 2018 11:54:31 +0100 (CET)
Received: from ribbon (unknown [193.50.110.134])
 by hera.aquilenet.fr (Postfix) with ESMTPSA id 48B6940E;
 Fri,  2 Mar 2018 11:54:31 +0100 (CET)
From: ludo@HIDDEN (Ludovic =?utf-8?Q?Court=C3=A8s?=)
To: Mike Gerwitz <mtg@HIDDEN>
Subject: Re: [bug#30256] [PATCH 3/3] scripts: environment: Add --no-cwd.
References: <87vag2wopo.fsf@HIDDEN> <cover.1516937216.git.mtg@HIDDEN>
 <7bc71eaa3cff48ec7dc0d4fe406dde9482b716a9.1516937216.git.mtg@HIDDEN>
Date: Fri, 02 Mar 2018 11:54:30 +0100
In-Reply-To: <7bc71eaa3cff48ec7dc0d4fe406dde9482b716a9.1516937216.git.mtg@HIDDEN>
 (Mike Gerwitz's message of "Thu, 25 Jan 2018 22:29:45 -0500")
Message-ID: <87tvtyhhnd.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: 30256
Cc: 30256 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 1.0 (+)

Mike Gerwitz <mtg@HIDDEN> skribis:

> * doc/guix.texi (Invoking guix environment): Add --no-cwd.
> * guix/scripts/environment.scm (show-help, %options): Add --no-cwd.
> (launch-environment/container): Add 'map-cwd?' param; only add mapping fo=
r cwd
> if #t.  Only change to cwd within container if #t, otherwise home.
> (guix-environment): Error if --no-cwd without --container.  Provide '(not
> no-cwd?)' to launch-environment/container as 'map-cwd?'.
> * tests/guix-environment.sh: Add test for no-cwd.

This one LGTM as well (with the test moved to
guix-environment-container.sh).  There=E2=80=99s just a minor issue:

> --- a/tests/guix-environment.sh
> +++ b/tests/guix-environment.sh
> @@ -84,6 +84,14 @@ HOME=3D"$tmpdir" guix environment --bootstrap --contai=
ner --user=3Dfoognu \
>       --share=3D"$tmpdir/umock" \
>       -- guile -c "$usertest"
>=20=20
> +# if not sharing CWD, chdir home
> +(
> +  cd "$tmpdir" \
> +    && guix environment --bootstrap --container --no-cwd --user=3Dfoo  \
> +            --ad-hoc guile-bootstrap --pure \
> +            -- /bin/sh -c 'test $(pwd) =3D=3D "/home/foo" -a ! -d '"$tmp=
dir"
> +)
> +

This test would fail for me because my test store is at
~ludo/src/guix/test-tmp/store and my CWD is ~/src/guix.  So when using
both --user and --no-cwd, the effect is that
~ludo/src/guix/test-tmp/store is not available at all within the
container, and thus execve("/bin/sh") fails with ENOENT:

--8<---------------cut here---------------start------------->8---
$ ./test-env guix environment --bootstrap --container --no-cwd --user=3Dfoo=
 --ad-hoc guile-bootstrap
accepted connection from pid 29684, user ludo
accepted connection from pid 29695, user ludo
./test-env: line 1: 29683 Terminated              "/home/ludo/src/guix/pre-=
inst-env" "/home/ludo/src/guix/guix-daemon" --disable-chroot --substitute-u=
rls=3D"$GUIX_BINARY_SUBSTITUTE_URL"
$ echo $?
1
--8<---------------cut here---------------end--------------->8---

Thoughts?

TIA,
Ludo=E2=80=99.




Information forwarded to guix-patches@HIDDEN:
bug#30256; Package guix-patches. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 26 Jan 2018 03:30:50 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Thu Jan 25 22:30:50 2018
Received: from localhost ([127.0.0.1]:43001 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1eeuj4-000231-Bs
	for submit <at> debbugs.gnu.org; Thu, 25 Jan 2018 22:30:50 -0500
Received: from eggs.gnu.org ([208.118.235.92]:53154)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mtg@HIDDEN>) id 1eeuj0-000229-5p
 for submit <at> debbugs.gnu.org; Thu, 25 Jan 2018 22:30:47 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <mtg@HIDDEN>) id 1eeuit-0002k4-HH
 for submit <at> debbugs.gnu.org; Thu, 25 Jan 2018 22:30:41 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-0.0 required=5.0 tests=BAYES_40,T_RP_MATCHES_RCVD
 autolearn=disabled version=3.3.2
Received: from lists.gnu.org ([2001:4830:134:3::11]:34647)
 by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32)
 (Exim 4.71) (envelope-from <mtg@HIDDEN>) id 1eeuit-0002jr-CP
 for submit <at> debbugs.gnu.org; Thu, 25 Jan 2018 22:30:39 -0500
Received: from eggs.gnu.org ([2001:4830:134:3::10]:44112)
 by lists.gnu.org with esmtp (Exim 4.71) (envelope-from <mtg@HIDDEN>)
 id 1eeuir-0001c0-NZ
 for guix-patches@HIDDEN; Thu, 25 Jan 2018 22:30:39 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <mtg@HIDDEN>) id 1eeuiq-0002i5-Ky
 for guix-patches@HIDDEN; Thu, 25 Jan 2018 22:30:37 -0500
Received: from fencepost.gnu.org ([2001:4830:134:3::e]:34351)
 by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <mtg@HIDDEN>)
 id 1eeuiq-0002hr-Fz
 for guix-patches@HIDDEN; Thu, 25 Jan 2018 22:30:36 -0500
Received: from localhost ([::1]:37485 helo=mikegerwitz-pc.gerwitz.local)
 by fencepost.gnu.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128)
 (Exim 4.82) (envelope-from <mtg@HIDDEN>) id 1eeuiq-0007E8-52
 for guix-patches@HIDDEN; Thu, 25 Jan 2018 22:30:36 -0500
From: Mike Gerwitz <mtg@HIDDEN>
To: guix-patches@HIDDEN
Subject: [PATCH 3/3] scripts: environment: Add --no-cwd.
In-Reply-To: <cover.1516937216.git.mtg@HIDDEN>
Date: Thu, 25 Jan 2018 22:29:45 -0500
References: <87vag2wopo.fsf@HIDDEN>
	<cover.1516937216.git.mtg@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)
X-From-Line: 7bc71eaa3cff48ec7dc0d4fe406dde9482b716a9 Mon Sep 17 00:00:00 2001
Message-Id: <7bc71eaa3cff48ec7dc0d4fe406dde9482b716a9.1516937216.git.mtg@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-=";
 micalg=pgp-sha512; protocol="application/pgp-signature"
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x
X-Received-From: 2001:4830:134:3::11
X-Spam-Score: -5.0 (-----)
X-Debbugs-Envelope-To: submit
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -5.0 (-----)

--=-=-=
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

* doc/guix.texi (Invoking guix environment): Add --no-cwd.
* guix/scripts/environment.scm (show-help, %options): Add --no-cwd.
(launch-environment/container): Add 'map-cwd?' param; only add mapping for =
cwd
if #t.  Only change to cwd within container if #t, otherwise home.
(guix-environment): Error if --no-cwd without --container.  Provide '(not
no-cwd?)' to launch-environment/container as 'map-cwd?'.
* tests/guix-environment.sh: Add test for no-cwd.
=2D--
 doc/guix.texi                |  8 ++++++++
 guix/scripts/environment.scm | 33 ++++++++++++++++++++++++---------
 tests/guix-environment.sh    |  8 ++++++++
 3 files changed, 40 insertions(+), 9 deletions(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index 8218c6637..ce4545038 100644
=2D-- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -7209,6 +7209,14 @@ While this will limit the leaking of user identity t=
hrough home paths
 and each of the user fields, this is only one useful component of a
 broader privacy/anonymity solution---not one in and of itself.
=20
+@item --no-cwd
+For containers, the default behavior is to share the current working
+directory with the isolated container and immediately change to that
+directory within the container.  If this is undesirable, @code{--no-cwd}
+will cause the current working directory to @emph{not} be automatically
+shared and will change to the user's home directory within the container
+instead.  See also @code{--user}.
+
 @item --expose=3D@var{source}[=3D@var{target}]
 For containers, expose the file system @var{source} from the host system
 as the read-only file system @var{target} within the container.  If
diff --git a/guix/scripts/environment.scm b/guix/scripts/environment.scm
index f50018faf..6be263a64 100644
=2D-- a/guix/scripts/environment.scm
+++ b/guix/scripts/environment.scm
@@ -165,6 +165,9 @@ COMMAND or an interactive shell in that environment.\n"=
))
   -u, --user=3DUSER        instead of copying the name and home of the cur=
rent
                          user into an isolated container, use the name USER
                          with home directory /home/USER"))
+  (display (G_ "
+      --no-cwd           do not share current working directory with an
+                         isolated container"))
   (display (G_ "
       --share=3DSPEC       for containers, share writable host file system
                          according to SPEC"))
@@ -251,6 +254,9 @@ COMMAND or an interactive shell in that environment.\n"=
))
                  (lambda (opt name arg result)
                    (alist-cons 'user arg
                                (alist-delete 'user result eq?))))
+         (option '("no-cwd") #f #f
+                 (lambda (opt name arg result)
+                   (alist-cons 'no-cwd? #t result)))
          (option '("share") #t #f
                  (lambda (opt name arg result)
                    (alist-cons 'file-system-mapping
@@ -399,7 +405,8 @@ environment variables are cleared before setting the ne=
w ones."
            ((_ . status) status)))))
=20
 (define* (launch-environment/container #:key command bash user user-mappin=
gs
=2D                                       profile paths link-profile? netwo=
rk?)
+                                       profile paths link-profile? network?
+                                       map-cwd?)
   "Run COMMAND within a container that features the software in PROFILE.
 Environment variables are set according to PATHS, a list of native search
 paths.  The global shell is BASH, a file name for a GNU Bash binary in the
@@ -425,11 +432,13 @@ will be used for the passwd entry.  LINK-PROFILE? cre=
ates a symbolic link from
              (override-user-mappings
               user home
               (append user-mappings
=2D                      ;; Current working directory.
=2D                      (list (file-system-mapping
=2D                             (source cwd)
=2D                             (target cwd)
=2D                             (writable? #t)))
+                      ;; Share current working directory, unless asked not=
 to.
+                      (if map-cwd?
+                          (list (file-system-mapping
+                                 (source cwd)
+                                 (target cwd)
+                                 (writable? #t)))
+                          '())
                       ;; When in Rome, do as Nix build.cc does: Automagica=
lly
                       ;; map common network configuration files.
                       (if network?
@@ -488,8 +497,10 @@ will be used for the passwd entry.  LINK-PROFILE? crea=
tes a symbolic link from
                 (newline port)))
=20
             ;; For convenience, start in the user's current working
=2D            ;; directory rather than the root directory.
=2D            (chdir (override-user-dir user home cwd))
+            ;; directory or, if unmapped, the home directory.
+            (chdir (if map-cwd?
+                       (override-user-dir user home cwd)
+                       home-dir))
=20
             (primitive-exit/status
              ;; A container's environment is already purified, so no need =
to
@@ -640,6 +651,7 @@ message if any test fails."
            (container? (assoc-ref opts 'container?))
            (link-prof? (assoc-ref opts 'link-profile?))
            (network?   (assoc-ref opts 'network?))
+           (no-cwd?    (assoc-ref opts 'no-cwd?))
            (user       (assoc-ref opts 'user))
            (bootstrap? (assoc-ref opts 'bootstrap?))
            (system     (assoc-ref opts 'system))
@@ -677,6 +689,8 @@ message if any test fails."
         (leave (G_ "--link-prof cannot be used without --container~%")))
       (when (and (not container?) user)
         (leave (G_ "--user cannot be used without --container~%")))
+      (when (and (not container?) no-cwd?)
+        (leave (G_ "--no-cwd cannot be used without --container~%")))
=20
       (with-store store
         (set-build-options-from-command-line store opts)
@@ -729,7 +743,8 @@ message if any test fails."
                                                   #:profile profile
                                                   #:paths paths
                                                   #:link-profile? link-pro=
f?
=2D                                                  #:network? network?)))
+                                                  #:network? network?
+                                                  #:map-cwd? (not no-cwd?)=
)))
                  (else
                   (return
                    (exit/status
diff --git a/tests/guix-environment.sh b/tests/guix-environment.sh
index a1ce96579..abb019794 100644
=2D-- a/tests/guix-environment.sh
+++ b/tests/guix-environment.sh
@@ -84,6 +84,14 @@ HOME=3D"$tmpdir" guix environment --bootstrap --containe=
r --user=3Dfoognu \
      --share=3D"$tmpdir/umock" \
      -- guile -c "$usertest"
=20
+# if not sharing CWD, chdir home
+(
+  cd "$tmpdir" \
+    && guix environment --bootstrap --container --no-cwd --user=3Dfoo  \
+            --ad-hoc guile-bootstrap --pure \
+            -- /bin/sh -c 'test $(pwd) =3D=3D "/home/foo" -a ! -d '"$tmpdi=
r"
+)
+
 # Make sure '-r' works as expected.
 rm -f "$gcroot"
 expected=3D"`guix environment --bootstrap --ad-hoc guile-bootstrap \
=2D-=20
2.15.1


--=-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCgAGBQJaaqCpAAoJEIyRe39dxRui3kwP/j/g7RtKUhxxh/6OMocxf4KR
+4wO+THWCS/eG23gGsEUAQ9llz56BFGBRF0SR2Cz/ldQafUAUmND27ZXjfA/li2M
rCBTLnW65NiMJi8YPMGwaVkDvGoN9GDKpsJYQDxISWLNKn7Mb9Cpdjvesop5aE1d
mWYK9K3dafGdUyh+gefCo9aXM/6nHURfwHRbQUsw3i+duQkeqBnE+QSjDjhEY6EU
vQk0sBVmgrcCyIBsKcCOo3LL++QggZTUa7n+3KQp9mcIb1ruPu8XMZw4gEfLAZaV
Qm0pS6CZYy9dX5g8w1Qbh0jenYFeA93QdSA60vPdfx7SUZgVS08BbIV0b+Svr6yu
fumyhmFWAAOyMCoYR3ZPBoydqBEQ+0U3ny1O0HIHzshkGOqLQCcbbW98xGNObZLI
TCyiBnCMPDPtzyMJ/X8Xet7jrQIF9tfXnXzOCha+uAK2vd8VLl+DIggtb3bImQ/i
XE693bTzu+5KVIVeC1Rapup06Vg3GsvdZNFz4QLHy/TTvMrJCF2YKtYDiCZCOMck
LV9qA8ZSh4okc11FQqmaGWJ7VA4Pj97wlMm2y16o6gYXt86SSQf9ET69MadawlXP
otqpje3AnLpUv4o3Ubvh0RVRiEbW1LRO9swY0fWCbfyq18EtXUE6ARrmANxlZNG0
nKQwafK4qe7JoxCEn5lc
=UKN6
-----END PGP SIGNATURE-----
--=-=-=--




Acknowledgement sent to Mike Gerwitz <mtg@HIDDEN>:
New bug report received and forwarded. Copy sent to guix-patches@HIDDEN. Full text available.
Report forwarded to guix-patches@HIDDEN:
bug#30256; Package guix-patches. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Mon, 4 Feb 2019 17:30:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.