GNU bug report logs - #54354
[BUG] guix home: on foreign distro, ~/.bash_profile is not initialized

Previous Next

Package: guix;

Reported by: florhizome <florhizome <at> posteo.net>

Date: Sat, 12 Mar 2022 16:07:01 UTC

Severity: normal

Full log


View this message in rfc822 format

From: florhizome <florhizome <at> posteo.net>
To: Liliana Marie Prikler <liliana.prikler <at> gmail.com>, 54354 <at> debbugs.gnu.org
Subject: bug#54354: [BUG] guix home: on foreign distro, ~/.bash_profile is not initialized
Date: Sun, 20 Mar 2022 14:09:22 +0000
Hi Liliana,

Hm, well it doesn't seem like the exact same issue, but that thread is
helpful. Could systemd/logind be made to use bash for login? For now I thought maybe I can just write shepherd services to do
that stuff for me, to stay in guix homes framework. But shepherd seems
to have a problem starting up:

/gnu/store/y85vzni5yc6lcb7qqhmlkifis9nzmm5l-shepherd.conf wird geladen.
herd: Ausnahmefehler während der Ausführung von »load« mit dem Dienst »root«:
In procedure fport_write: Eingabe-/Ausgabefehler

If you don't speak german, that roughly translates to:

loading /gnu/store/...-shepherd.conf
herd: exception error during the execution of <<load>> with the service
<<root>>:
In procedure fport_write: i/o error

I got the same error when reconfiguring with two differing simple
service configurations (just start a program from a package) passed to shepherd.
In anyway I think it would be good to add to guix home's documentation that some features might not work
due to the login system of a foreign distro if we are sure of that?

cheers


Liliana Marie Prikler <liliana.prikler <at> gmail.com> writes:

> Hi Florian
>
> Am Samstag, dem 12.03.2022 um 13:07 +0000 schrieb florhizome:
>> 
>> Hi guix' !
>> I have been trying to use guix home on my foreign distro partition
>> (manjaro); especially in order to set up additional profiles from
>> there, but my .bash_profile generated by guix doesn't seem to be
>> evaluated at all.
>> 
>> To describe the actual issue finally: None of the things that should
>> happen through .bash_profile seem to happen at the moment (it's just
>> about different environment variables that will not be set up.), but
>> after running bash --login in my terminal-emulator everything is as
>> anticipated so my guess is that .bash_profile actually isn't evaluated
>> at all after login.  I'm happy to hear other suggestions and especially
>> solutions.
> This looks vaguely like a problem others (myself included) have
> experienced/are experiencing on Ubuntu.  See [1] among others.
>
> Given that bash is not used for login, your environment-variables block
> has not effect.  Now if you were to define that inside a variable, you
> could also write up a service that generates systemd unit overrides and
> add those definitions to it.  I'm not sure how well-received such a
> service would be upstream given that we don't use systemd in Guix, but
> it's a point to start.
>
> Cheers
>
> [1] https://issues.guix.gnu.org/48300#7




This bug report was last modified 2 years and 242 days ago.

Previous Next


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