[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#30728: guix-install.sh doesn't work if run with "sudo"
From: |
Marius Bakke |
Subject: |
bug#30728: guix-install.sh doesn't work if run with "sudo" |
Date: |
Mon, 26 Mar 2018 11:18:50 +0200 |
User-agent: |
Notmuch/0.26 (https://notmuchmail.org) Emacs/25.3.1 (x86_64-pc-linux-gnu) |
Clément Lassieur <address@hidden> writes:
> Hi Chris,
>
> Chris Marusich <address@hidden> writes:
>
>> Clément Lassieur <address@hidden> writes:
>>
>>> Clément Lassieur <address@hidden> writes:
>>>
>>>> Hi,
>>>>
>>>> My system is Ubuntu 16.04.
>>>>
>>>> I ran './guix-install.sh' and got the message: "This script must be run
>>>> as root.". So I ran 'sudo ./guix-install.sh' and got an error message
>>>> saying that:
>>>>
>>>> GUIX_PROFILE="${HOME}/.guix-profile"
>>>> source "${GUIX_PROFILE}/etc/profile"
>>>>
>>>> the 'source' command doesn't work because ${GUIX_PROFILE} was never
>>>> created, ${HOME} being /home/clement, not /root.
>>>>
>>>> To recover from this I had to manually delete /var/guix and /gnu, log as
>>>> root with 'su', and start again.
>>>>
>>>> Clément
>>>
>>> I believe the script should install Guix in the user's home directory,
>>> not in ~root.
>>
>> The manual says (see: (guix) Binary Installation):
>>
>> 3. Make ‘root’’s profile available under ‘~/.guix-profile’:
>>
>> # ln -sf /var/guix/profiles/per-user/root/guix-profile \
>> ~root/.guix-profile
>
> I think the manual is wrong here. This only makes sense if the user is
> 'root'. Otherwise, the user would expect Guix to be installed in their
> home, not in root's home. We could use the HOME and USER environment
> variables like this:
>
> # ln -sf /var/guix/profiles/per-user/$USER/guix-profile $HOME/.guix-profile
>
> Thus, even if 'sudo' decides to change these environment variables, it
> will still be consistent.
The binary installation tarball only comes with a profile for 'root'.
The problem is that the installation script assumes $HOME will expand to
~root when sourcing the profile, but as you found that isn't always the
case.
~root/.guix-profile is "hard-coded" many other places in the script, so
Tatianas solution seems sensible to me.
signature.asc
Description: PGP signature
- bug#30728: guix-install.sh doesn't work if run with "sudo", Clément Lassieur, 2018/03/06
- bug#30728: guix-install.sh doesn't work if run with "sudo", Clément Lassieur, 2018/03/23
- bug#30728: guix-install.sh doesn't work if run with "sudo", Chris Marusich, 2018/03/25
- bug#30728: guix-install.sh doesn't work if run with "sudo", Clément Lassieur, 2018/03/26
- bug#30728: guix-install.sh doesn't work if run with "sudo",
Marius Bakke <=
- bug#30728: guix-install.sh doesn't work if run with "sudo", Ricardo Wurmus, 2018/03/27
- bug#30728: guix-install.sh doesn't work if run with "sudo", Clément Lassieur, 2018/03/27
- bug#30728: guix-install.sh doesn't work if run with "sudo", Chris Marusich, 2018/03/27
- bug#30728: guix-install.sh doesn't work if run with "sudo", Ricardo Wurmus, 2018/03/28
- bug#30728: guix-install.sh doesn't work if run with "sudo", Chris Marusich, 2018/03/29
- bug#30728: guix-install.sh doesn't work if run with "sudo", Clément Lassieur, 2018/03/29
- bug#30728: guix-install.sh doesn't work if run with "sudo", Clément Lassieur, 2018/03/29
- bug#30728: guix-install.sh doesn't work if run with "sudo", Ricardo Wurmus, 2018/03/29
- bug#30728: guix-install.sh doesn't work if run with "sudo", Clément Lassieur, 2018/03/30
- bug#30728: guix-install.sh doesn't work if run with "sudo", Clément Lassieur, 2018/03/29