OK, so following the discussion at https://issues.guix.info/issue/39195, my container was missing the $USER environment variable so Guix was failing back to the "default" profile. Once $USER is set to "root" my current user in this context, Guix is not complaining about the profiles anymore.
Le dim. 19 janv. 2020 à 19:54, Jimmy Thrasibule <jimmy.thrasib...@gmail.com> a écrit : > I tried some actions and here is what happening: > > > # 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 ' > https://git.savannah.gnu.org/git/guix.git'... > [...] > > > When ``.config/guix/current`` is pointing to > ``/var/guix/profiles/per-user/root/current-guix``, the ``guix pull`` > command will change the link to `` /var/guix/profiles/default`` or the > other way arround. > > 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*``. > > It is not clear why Guix is constantly swapping the profiles this way. > > Le sam. 18 janv. 2020 à 22:11, Jimmy Thrasibule < > jimmy.thrasib...@gmail.com> a écrit : > >> Hi, >> >> I'm working on an Alpine Docker image with the Guix package manager [1]. >> The container is building and can run Guix without the ``--privileged`` >> option. >> >> The installation process is based on the documentation and the >> installation script [2]. Everything is working fine however, when I run >> ``guix pull`` in the generated image, I got the following error: >> >> >> Migrating profile generations to '/var/guix/profiles/per-user/root'... >> guix pull: error: symlink: File exists: " >> /var/guix/profiles/per-user/root/current-guix" >> >> >> This issue has already been discussed at [3] but the workaround to delete >> all the links in the directory ``/var/guix/profiles/per-user/root`` is >> causing some troubles: >> >> 1. If I want to ship a ready to use image and delete the links upfront, >> ``guix daemon`` will fail to start since ``/root/.config/guix/current`` is >> broken. >> 2. Users of the image can delete the links themselves but this is not >> really friendly. >> >> So what is exactly causing this error and what would be a good option to >> fix it? >> >> >> [1] https://hub.docker.com/repository/docker/x237net/alpine-guix >> [2] https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh >> [3] https://lists.gnu.org/archive/html/help-guix/2018-12/msg00098.html >> >>