I was toying around the idea of having guix as a compatibility layer for an HPC software stack, similar to what Compute Canada had with nix before they switched to Gentoo ( http://users.ugent.be/~kehoste/eum18/easybuild_nix_cvmfs_compute_canada_bart_oldeman.pdf), hence the weird setup. I am aware that the Guix HPC guys recently published a layer between modules and guix shell, which I find interesting.
It took a little while to try your command, as I built guix using Arch's package manager, which doesn't install pre-inst-env. Also, I built in a chroot, and pre-inst-env contains hard-coded references to the build directory. I guess I am a very weird user :) But even with that I still get the same errors. I don't want to keep the two stores simultaneously, I'm fine with fully destroying the old one (although I would be interested in knowing how to properly rollover from one store to another). Thanks! Joey Dumont (Profile <http://blog.joey-dumont.ca/>) The supreme elegance of Nature lies in its apparent simplicity. On Fri, 29 Apr 2022 at 12:57, zimoun <zimon.touto...@gmail.com> wrote: > Hi, > > On Fri, 08 Apr 2022 at 23:14, Joey Dumont <joey.dum...@gmail.com> wrote: > > > I am using guix on Arch Linux, installed through the AUR package, but > with > > a custom store directory: --with-store-dir=/cvmfs/ > soft.valandil.ca/2022.03. > > I was running the daemon with options: > > > > # /etc/systemd/system/guix-daemon.service.d/override.conf > > [Service] > > ExecStart= > > ExecStart=/usr/bin/guix-daemon --build-users-group=guixbuild > > --gc-keep-outputs=yes --gc-keep-derivations=yes > > > > I have since updated my guix install to point to a new store: /cvmfs/ > > soft.valandil.ca/2022.04, but I keep getting errors when running guix > pull: > > Hum, interesting setup… but then Guix will be confused, I guess. > > > $ guix pull > > ;;; WARNING: loading compiled file > /usr/lib/guile/2.2/site-ccache/gnutls.go > > failed: > > ;;; In procedure load-thunk-from-file: Invalid argument > > ;;; WARNING: loading compiled file > /usr/lib/guile/2.2/site-ccache/gnutls.go > > failed: > > ;;; In procedure load-thunk-from-file: Invalid argument > > Updating channel 'guix-hpc' from Git repository at ' > > https://gitlab.inria.fr/guix-hpc/guix-hpc'... > > Updating channel 'guix' from Git repository at ' > > https://git.savannah.gnu.org/git/guix.git'... > > Authenticating channel 'guix', commits 9edb3f6 to 1d4f2cd (23 new > > commits)... > > Building from these channels: > > guix https://git.savannah.gnu.org/git/guix.git 1d4f2cd > > guix-hpc https://gitlab.inria.fr/guix-hpc/guix-hpc de22a12 > > guix pull: error: derivation `/cvmfs/ > > > soft.valandil.ca/2022.03/compat/x86_64/linux/pf4z6hc1f9bwddsravnlacnb2i8p9xyl-guile-3.0.2.tar.xz.drv > ' > > has incorrect output `/cvmfs/ > > > soft.valandil.ca/2022.04/compat/x86_64/linux/92ip5misld973bsm73hfazwmd4n9d58z-guile-3.0.2.tar.xz > ', > > should be `/cvmfs/ > > > soft.valandil.ca/2022.03/compat/x86_64/linux/9gc2alnhkrilqdch2xzjg0vq9b44is43-guile-3.0.2.tar.xz > > ' > > Ah, Guix is really confused. :-) > > > I tried stracing the guix pull, and deleted all cache entries I could, > > ~/.cache/{guile,guix}, and the previous store, but the error persists. > > Where is that derivation stored so that it can be compared against the > new > > derivation? How can I delete it? > > IIUC, you have 2 stores. It means now you have 2 SQLite databases and > so on. Well, I do not know how it can work. > > You pulled with the old store. So the current guix command points to an > item to this old store. To change the store location > (--with-store-dir), you have recompiled Guix, right? > > Then, did you run > > ./pre-inst-env guix pull -p ~/.config/guix/current > ~/.config/guix/current/bin/guix pull > > ? > > > Cheers, > simon >