all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Andrew Tropin <andrew@trop.in>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: 54377@debbugs.gnu.org
Subject: [bug#54377] [PATCH 0/3] Add 'guix home container'
Date: Sat, 19 Mar 2022 18:03:40 +0300	[thread overview]
Message-ID: <87tubugf1v.fsf@trop.in> (raw)
In-Reply-To: <87lex6ns4q.fsf_-_@gnu.org>

[-- Attachment #1: Type: text/plain, Size: 1466 bytes --]

On 2022-03-19 11:39, Ludovic Courtès wrote:

> Hi,
>
> Andrew Tropin <andrew@trop.in> skribis:
>
>> What I meant by previous comment: to match a real state of the things
>> it's better to use a shell from /etc/passwd, because it will be launched
>> on user login and will read env vars and run all the following
>> processes, but to make it more reproducible and independent from system
>> state I think we always have to use hardcoded bash and inside the
>> container inspect the value of $SHELL set by login shell (hardcoded
>> bash) and spawn new shell if $SHELL is NOT empty.
>
> Yeah, there’s a tension between conflicting criteria: independence from
> system state, and faithful reproduction of what would happen on the
> system.  I feel like checking $SHELL is a middle ground.
>
> I don’t know, we can revisit that as we gain more experience with the
> tool I guess.

I think the good implementation will be a hardcoded bash (or other shell
defined in /etc/passwd) launched as a login shell, which tries to
execute $SHELL if it is present in bash_profile or somewhere else in
shell startup files (not the $SHELL defined in host environment, but the
one which will be set inside container by login shell).  It both makes
the container reproducible and adds possibility to use patched zsh, fish
or whatever unusual shell user set in his $SHELL.

The current solution probably ok as well.

-- 
Best regards,
Andrew Tropin

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 853 bytes --]

  reply	other threads:[~2022-03-19 15:04 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-13 21:52 [bug#54377] [PATCH 0/3] Add 'guix home container' Ludovic Courtès
2022-03-13 21:54 ` [bug#54377] [PATCH 1/3] linux-container: 'eval/container' honors #:namespaces Ludovic Courtès
2022-03-13 21:54   ` [bug#54377] [PATCH 2/3] linux-container: Add #:guest-uid and #:guest-gid to 'eval/container' Ludovic Courtès
2022-03-13 21:54   ` [bug#54377] [PATCH 3/3] guix home: Add 'container' command Ludovic Courtès
2022-03-17  6:24     ` Andrew Tropin
2022-03-18 13:25       ` Ludovic Courtès
2022-03-19  5:09         ` Andrew Tropin
2022-03-19 10:39           ` [bug#54377] [PATCH 0/3] Add 'guix home container' Ludovic Courtès
2022-03-19 15:03             ` Andrew Tropin [this message]
2022-03-19 18:24           ` bug#54377: " Ludovic Courtès
2022-03-17 15:01 ` [bug#54377] " Frank Pursel
2022-03-19 10:32   ` Ludovic Courtès
2022-03-23  3:06     ` Frank Pursel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87tubugf1v.fsf@trop.in \
    --to=andrew@trop.in \
    --cc=54377@debbugs.gnu.org \
    --cc=ludo@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.