Zelphir Kaltstahl 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!