help-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Repair / reinstall Guix package manager (foreign distro)


From: Zelphir Kaltstahl
Subject: Re: Repair / reinstall Guix package manager (foreign distro)
Date: Mon, 29 Jun 2020 18:08:25 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Icedove/68.8.0

Hi!

Thank you both for your responses!

In the end I had already begun removing everything that

find / -iname '*guix*

would give me and that was not created by me, so I went the route of
reinstallation.

However, I'll archive these e-mails and in case I ever forget the `-i`
in the sudo command again, I have the solution ready : )

Btw.: I deleted a whole lot more files than I thought I would need to. I
make a list and only after the last 2 removals, the Guix installer would
not find a previous installation any longer:

~~~~
   rm --recursive --force /gnu/store || true;
   rm --recursive --force /var/guix || true;
   rm --recursive --force ~/.guix-profile || true;
   rm --recursive --force ~/.config/guix || true;
   rm --recursive --force /etc/guix/profile/config.scm || true;
   rm --recursive --force /tmp/guix.* || true;
   rm --recursive --force /home/xiaolong/.cache/guix || true;
   rm --recursive --force /root/.cache/guix/ || true;
   rm --recursive --force /root/.cache/guile/ || true;
   rm --recursive --force /var/log/guix || true;
   rm --recursive --force /root/.config/guix || true;
   rm --recursive --force /etc/systemd/system/guix-daemon.service || true;
   rm --recursive --force /etc/guix || true;
   rm --recursive --force /usr/local/bin/guix || true;
   rm --recursive --force 
/etc/systemd/system/multi-user.target.wants/guix-daemon.service || true;
   rm --recursive --force /usr/local/share/info/guix.* || true;
   rm --recursive --force /tmp/guix.Mgm || true;
   # all of the above does not help
   # you need to do also the following
   rm --recursive --force /var/guix || true;
   rm --recursive --force /gnu || true;
~~~~

Thanks for telling me about the need to use `-i` or `su -`, I did not
know about it. I would have run into this problem again and again.

Regards,
Zelphir

On 28.06.20 20:25, Marius Bakke wrote:
> Zelphir Kaltstahl <zelphirkaltstahl@posteo.de> writes:
>
>> Hi Guix Users!
>>
>> I would like to repair or reinstall my Guix package manager
>> installation, because it seems broken and nothing I tried fixes the problem.
>>
>> The problem:
>>
>> ~~~~
>> xiaolong@xlx200:~/Downloads$ guix pull
>> Migrating profile generations to '/var/guix/profiles/per-user/xiaolong'...
>> guix pull: error: symlink: File exists: 
>> "/var/guix/profiles/per-user/xiaolong/current-guix"
>> ~~~~
>>
>> It started appearing, when I once ran `guix pull` and `guix package -u`
>> as `root` user, to update my locales in the root profile.
> This can happen if you become root by any other method than 'sudo -i' or
> 'su -', because the root shell will otherwise inherit variables such as
> $HOME, leading to this problem.
>
> [...]
>
>> ~~~~
>> xiaolong@xlx200:~/Downloads$ guix pull
>> Migrating profile generations to '/var/guix/profiles/per-user/xiaolong'...
>> Updating channel 'guix' from Git repository at 
>> 'https://git.savannah.gnu.org/git/guix.git'...
>> guix pull: error: Git error: failed open - 
>> '/home/xiaolong/.cache/guix/checkouts/pjmkglp4t7znuugeurpurzikxq3tnlaywmisyr27shj7apsnalwq/.git/FETCH_HEAD'
>>  is locked: Permission denied
>> ~~~~
> You can fix this by either deleting the directory, or
>
>    sudo chown -R xiaolong:xiaolong 
> /home/xiaolong/.cache/guix/checkouts/pjmkglp4t7znuugeurpurzikxq3tnlaywmisyr27shj7apsnalwq
>
> Similarly, chowning or deleting /var/guix-profiles/per-user/xiaolong is
> the only way to fix the permissions issue on the profile.
>
> [...]
>
>> So I a basically giving up now and want to reinstall. I downloaded the
>> install script `guix-install.sh` from the website and ran it:
>>
>> ~~~~
>> xiaolong@xlx200:~/Downloads$ sudo bash guix-install.sh 
>>
>> (... big GUIX logo here ...)
>>
>> This script installs GNU Guix on your system
>>
>> https://www.gnu.org/software/guix/
>> Press return to continue...
>> [1593338927.330]: Starting installation (So 28. Jun 12:08:47 CEST 2020)
>> [1593338927.333]: [ PASS ] verification of required commands completed
>> [1593338927.364]: [ INFO ] init system is: systemd
>> [1593338927.368]: [ INFO ] system is x86_64-linux
>> [1593338928.075]: [ PASS ] Release for your system: 
>> guix-binary-1.1.0.x86_64-linux
>> [1593338928.077]: [ INFO ] Downloading Guix release archive
>> guix-binary-1.1.0.x86_64 100%[==================================>]  70,14M  
>> 4,27MB/s    in 21s     
>> guix-binary-1.1.0.x86_64 100%[==================================>]     833  
>> --.-KB/s    in 0s      
>> [1593338949.457]: [ PASS ] download completed.
>> [1593338950.341]: [ PASS ] Signature is valid.
>> [1593338959.807]: [ PASS ] unpacked archive
>> [1593338959.808]: [ FAIL ] A previous Guix installation was found.  Refusing 
>> to overwrite.
>> ~~~~
>>
>> "OK OK! I'll uninstall the previous one!"
>>
>> But how do I do it exactly? Or is there a flag or anything I can give to
>> make it overwrite the previous installation?
> Reinstalling still won't fix the permissions on your
> ~/.cache/guix/checkouts.  But to eradicate Guix and let the script do
> its thing you should 'sudo rm -rf /var/guix /gnu'.
>
> Hope this helps!

-- 
repositories: https://notabug.org/ZelphirKaltstahl



reply via email to

[Prev in Thread] Current Thread [Next in Thread]