(address . bug-guix@gnu.org)
After a fresh Guix install, when calling subsequent ``guix pull`` it will
always try to migrate the profile at ``/root/.cong/guix/current`` between
``/var/guix/profiles/default`` and ``/var/guix/profiles/per-user/root``.
The issue is that if there are any existing links in the target folder,
``guix pull`` will fail:
guix pull: error: symlink: File exists:
"/var/guix/profiles/per-user/root/current-guix
For example after unpacking the store, the first ``guix pull`` will migrate
the profile to ``profiles/default``:
# ls -l .config/guix/
total 0
lrwxrwxrwx 1 root root 45 Jan 19 18:33 current ->
/var/guix/profiles/per-user/root/current-guix
# guix pull
Migrating profile generations to '/var/guix/profiles/default'...
Updating channel 'guix' from Git repository at '
[...]
Then calling ``guix pull`` again will fail:
# ls -l .config/guix/
total 0
lrwxrwxrwx 1 root root 39 Jan 19 18:37 current ->
/var/guix/profiles/default/current-guix
# guix pull
Migrating profile generations to '/var/guix/profiles/per-user/root'...
guix pull: error: symlink: File exists:
"/var/guix/profiles/per-user/root/current-guix"
The workaround is to link back the profile to ``per-user/root`` and delete
``/var/guix/profiles/default/current-guix*``. After this action, any other
``guix pull`` will run as expected.