Subject: Re: [bug#28399] [PATCH 1/2] services: mysql: Fix missing modules on activation.

From: [email-masked] (Ludovic Courtès)
Date: Wed, 20 Sep 2017 11:21:51 +0200

Hi Chris,

Christopher Baines <[email-masked]> skribis:

> On Sat, 16 Sep 2017 00:02:08 +0200
> [email-masked] (Ludovic Courtès) wrote:

[...]

>> Perhaps it’s due to the libtool/ltdl preload feature.
>> 
>> What’s more puzzling though, is that it works in some cases (like
>> above) and not in others (in the test VM).
>> 
>> Needs more thought…
>
> Interesting, thanks for looking in to this Ludo. I've just thought that
> this could be the cause of my problems in booting one of my GuixSD
> machines, as I am using the mysql service (with MariaDB).
>
> When you say dynamic loading is supposed not to work with a statically
> linked guile, does this mean that activation scripts should avoid using
> (ice-9 popen)? Or, given that it works some of the time, it could be
> made to work reliably...?

No I was completely on the wrong track (libguile/extensions.c, which
implements ‘load-extension’, has a mechanism to load pre-registered
extensions without going through ‘dlopen’.)

The problem is simpler: the ‘guile-static-stripped’ that’s on the store
in the initrd is not necessarily in the store on the real root file
system.  Thus, once we’ve switched roots, we look for “ice-9/popen.scm”
in a load path that’s no longer valid.

I debugged this with:

diff --git a/gnu/services/databases.scm b/gnu/services/databases.scm
index de1f6b841..13c235059 100644
--- a/gnu/services/databases.scm
+++ b/gnu/services/databases.scm
@@ -298,6 +298,14 @@ port=" (number->string port) "
   (let ((mysql  (mysql-configuration-mysql config))
         (my.cnf (mysql-configuration-file config)))
     #~(begin
+        (eval-when (expand load eval)
+          (use-modules (ice-9 ftw))
+          (setvbuf (current-output-port) _IONBF)
+          (pk %load-path (search-path %load-path "ice-9/popen.scm"))
+          (let ((dir (car (last-pair %load-path))))
+            (pk dir 'exits? (file-exists? dir)))
+          (pk 'popen (resolve-module '(ice-9 popen) #:ensure #f))
+          (pk 'scan (scandir "/gnu/store")))
         (use-modules (ice-9 popen)
                      (guix build utils))
         (let* ((mysqld  (string-append #$mysql "/bin/mysqld"))

… and then run your test.

It shows this:

--8<---------------cut here---------------start------------->8---
[…]

adding user 'guixbuilder09'...
adding user 'guixbuilder10'...
adding user 'mysql'...
registering public key '/gnu/store/zh0lb2g15hirq7zw2477w7s5ww7dxkv0-guix-0.13.0-6.a9468b4/share/guix/hydra.gnu.org.pub'...

;;; (("/gnu/store/dsbc8lh9zav2ghb7gi1zm608igbgg1jv-module-import" "/gnu/store/dsbc8lh9zav2ghb7gi1zm608igbgg1jv-module-import" "/gnu/store/m843zdvsv2p3glz91y8icv3qwkr9mnzs-module-import" "/gnu/store/m843zdvsv2p3glz91y8icv3qwkr9mnzs-module-import" "/gnu/store/dr6706rm053d9b6h4rhi29l2ipxcd9jf-module-import" "/gnu/store/dr6706rm053d9b6h4rhi29l2ipxcd9jf-module-import" "/gnu/store/9whwwppmb2sjfsy0967s627bzgdfl8bc-guile-static-stripped-2.2.2/share/guile/2.2") #f)

;;; ("/gnu/store/9whwwppmb2sjfsy0967s627bzgdfl8bc-guile-static-stripped-2.2.2/share/guile/2.2" exits? #f)

;;; (popen #f)

;;; (scan ("." ".." "028jn2qq6b0a5wgfs84jfmkmhpbl015r-module-import-compiled" "03zy9bapqgv9y0q82c3szmzmhghj4h6b-virglrenderer-0.6.0" "09j7scnl3hahcmql986fsjpzj6gqsmzv-ncurses-6.0" "0b83kwl6lbqz9r4kfsblcil25fkmxzd1-activate-service" "0f76ak4jn36qs7syhfaw5ag9958yabzh-libatomic-ops-7.4.4" "0j18kgj0bwlfqnnj78vjib0ax66ndb50-shepherd-syslogd.scm" "0p4gxh2xiz31v2zx8mg43nv2djjyfwmn-libpciaccess-0.13.5" "0s5manjvfa0gmsv2r71rchky7ab70g1d-icu4c-58.2" "0yfji7ibkkz7yh7vfgbm2fvic7lxg71l-groff-1.22.3" "0zqip50gq1ch8hdvlixi9mpkpslvgh7r-shepherd-console-font-tty1.scm" "1287jbyyjydgypzs3r85q9hj6sahq2wx-login.defs" "1542yabm3kaf0ybrn77r5z31icxw7zq2-shepherd-file-system--sys-fs-cgroup-hugetlb.scm" "1dbpiip53l3zmwdcgbpz5cjhgfijl4jn-shepherd-file-system--sys-fs-cgroup.scm" "1dminyi7iq203492l4p8dz0wwagkpsb4-llvm-3.8.1" "1glb29skkvp128a0yizqv1kyillk9a7n-lsof-4.89" "1jcq4fc07bngc5q1cy44j0glv1vrjz52-libffi-3.2.1" "1jp44pfmqcj3zycclvmmva3xcwinyg7l-freetype-2.8" "1kx3sq1lfcz37r6w08bdii5fkw20sk35-shepherd-root-file-system.scm" "1mw2mir3whl20hcx366rk3rcn8ykvdaf-shepherd-term-tty4.scm" "1q0r9idvqjw9s4b6hxa8jklxc3ngy5lq-system" "1skx99scjpm591ixmhpnw17zxcllpqm9-utils.scm" "1xc97akbdcisrid2n8djpkn09f8bkl5f-libxdmcp-1.1.2" "261xd9zwg479rn7yha0k2i97p63flhfg-activate-service" "27hw80d0nn2a5p56vk91qn6jvn036dla-libxshmfence-1.2" "2ayx2b08id7xid0s4ykhfvr1irl2qi7l-elf.scm" "2c37li6qgq031dq4agg9zbb68iw39igx-bdb-5.3.28" "2n80sdqh39y3sgrfyd97ag0sjx5bx9dl-lz4-1.8.0" "33ln3zh2cwchgbf4xv6j9qlxari3w74w-shepherd-guix-daemon.scm" "35rydx7qm4jn3jx6qbj92lvc4p8g3cn4-activation.scm" "36m5h559ikrnp96c6r2zk2p8cn07xjwb-libssh2-1.8.0" "3amb8hw38k2jv604pb87am8v9r17fczi-pcre-8.41" "3b5acw40ls4xvs54ia9cmp0fjx9vryq8-libepoxy-1.4.1" "3c0l9d5fg73lpvrc8d29k5irpwp215dh-activate-service" "3qw66pxqm316r9spl7w1wxbj2q0wa8m1-shishi-1.0.2" "3s6vjw0979hn5i4v4bqa8ybdmb0kn00l-flac-1.3.2" "3wdxwi446k6bbx3r4kfgn2hh754n7ab7-grub.cfg" "3x53yv4v144c9xp02rs64z7j597kkqax-gcc-5.4.0-lib" "3xjvwgzm6bhqc0rn3nwbdczjh4383mpk-libnftnl-1.0.7" "3z94sy8lig6zbwna4j8plmar70jmqyxn-login" "42d5rjrdkln6nwvzwdc8dyd4w6iy3n5j-coreutils-8.27" "47jgabf5wx296alb06pb5iig6cqbmx0v-gdbm-1.13" "4i4bx0434kbpcl9xl5a2xfl2rx52hdzx-linux-modules.scm" "4iqyh8xqjxazza3lx2iz5v39ipzifsfj-gzip-1.8" "4wm6z6dh5gkqbvxj7995lvr2bjwhqq25-libxxf86vm-1.1.4" "4wngzd4rvm3lcchmigajw9jhi2vrgdf0-passwd" "577gkxcv1va0jc33vs0yv9nl3lyg0410-parameters" "57dcsqa95nqjyak02pzpk3lf64j1jnnw-qemu-image" "5889hfnp2vpsnyfwqvknx3649vwx2m7b-pulseaudio-10.0" "5f4vz29llmqa1i9wl02pkilws6dbr2l6-qemu-2.10.0" "5jl21csvr3jmsa4a7d08sqa2waks3f09-gmp-6.1.2" "5kglffwm1gsjhsy5wn7cv0kgmj7asif7-e2fsprogs-1.43.5" "5khzrsqs0bgr2hyrl3yvamwk745wmkql-shepherd-term-tty2.scm" "5kydkrla0c58kpy44ibzmcq0nhpnk8k6-linux-pam-1.3.0" "5lrk6d5cjsv2s29vfji6j59gyf18rb5m-acl-2.2.52" "5mykz9b6whh8pjrpb5yfz6cyip2iaxzg-shepherd-console-font-tty4.scm" "5rhk61dq276h7cdyn6ks112iahn4f8m8-libogg-1.3.2" "5s19lin8dm65aygm85s8cwqsq41hym6d-libxdamage-1.1.4" "5sv5zy2kgg6iaqyv8zw49w4243j0xkd0-gcc-5.4.0" "5z6zqh3cdrix3hq2qxrnh4v59vz2hssc-groupdel" "5zcspv2mjn85nzhk6my4af067nm4vs8g-sudo" "62b4225h7vkpy0xzqlpyp1kx5ik3kiy7-expat-2.2.2" "649641qx9p4y0vz77ss1w8dd50l2yw2b-module-import" "66dp9mxn43jkhhrpcy6v5cdqibbl4bjc-gnutls-3.5.13" "6hicns85s8ddp0y539wdspwx22ac2kmv-bzip2-1.0.6" "72wjwil96zh5f370gnqq7hg2biavbwdx-shepherd-loopback.scm" "73n8primzbqhpzirnmbc2qwzg7f07bz7-psmisc-22.21" "75r85h8krngg7nydp76njyihq774m0dz-environment" "795majdgan135s40l10wbdjs8lqmpifs-useradd" "7gsvp98rssbwy7l4c2gs40bblfvr1yyl-uuid.scm" "7ljjhfz6p14xlnwnmzmg6hi01wfvz9vb-cyrus-sasl-2.1.26" "7nywh80c5mgy80d08x9y6w48ipngn47s-module-import" "7r3ps2rv079kqkh8i8ddgcj29wqzbck1-module-import" "7sq353nilxwwnk983xz38457bp3sv633-libaio-0.3.110" "7v2w3506q0gf96rsf6wf3gdr2iv5frmm-libgpg-error-1.27" "7v8369lgnqvpphcw06hg59hb8hxmkr8x-sed-4.4" "7zbscp5r0djsalcnvfrm7g0mp70mhrkd-diffutils-3.6" "85n2gzncy1dl6cbnky79nih4qhcwibds-libxfixes-5.0.3" "8ba1dina18nqzbx1p4x9i8i88nh1y238-libjpeg-turbo-1.5.2" "8bizb3mkkhh2zgzd59jp9qm1r71fb7ar-libgit2-0.26.0" "8brbpj0jdy3g0za14q18s2cj3w360yxk-mingetty-1.08" "8h3mq2d4s483gsykwgdw0iw2mfngk1ki-guile-ssh-0.11.2" "8k6f3wjk1f3qcigrrvhwmhy0026j0y06-opus-1.2.1" "8v2mhpzfbp88zvb5zgikbz6lbi229y64-shepherd-udev.scm" "8vr17x1cjznibkw4yrgv6gp948ya8qqs-module-import-compiled" "92a6ykqvxzzjzbjb2y4ggsiwnz25m57a-alsa-utils-1.1.4" "965dw3smmsvj6jyfxrkapp0gn9jh9djn-libunistring-0.9.7" "9b0nh58q1dwxli80xj15gv2037az96xw-patch-2.7.5" "9blidf28xz0a0glnv6a4xcw6nxadg427-libgc-7.6.0" "9fcql0sfia5cnfqxk73vdxd0lb87g2b3-wireless-tools-30.pre9" "9kq6xk66zzwdq12kaj7kl96zgy8g50m5-file-systems.scm" "9m4vk172625vlrj62id8a40brbm9prrd-info-reader-6.3" "9pq16kfcldqqcbd58mmfp37g3awhg4sd-gawk-4.1.4" "9s6bag7qk4k2jzx9q1pfrhqrgqrji7x9-shepherd-term-tty1.scm" "9x9229j1sramg64qppmn87m2vy2jq4im-glib-2.52.2" "9xl0lbprkkn4k3b8v5bcz6sq125dlwb5-bashrc" "a1h9c5rxw5r580z4xrshf834dg4c1fh8-activate" "a2n7lmcnkiwb8ix9d9q74a1866dv0a1w-profile" "a8914da78vi7glxyinpap2z7xlr32pli-net-tools-1.60-0.479bb4a" "af581ygb1d9bvpmfmlpwzlmsb1xjgycw-herd.scm" "agy6mpi2ay6rx0sy3plia9xwh7sj1zsl-module-import-compiled" "aj23g4a2kk4nj5rbx0nixybxp9gx5zr5-shepherd-console-font-tty3.scm" "akc3nsnksgv6256jm1ariljb1c7zh8x2-libgc-7.6.0" "b4a7g2xm26yr9pha9k8rj9bmvk4dz9mq-libssh-0.7.5" "b7y66db86k57vbb03nr4bfn9svmks4gf-bash-4.4.12" "b9ww6qv1ii9v6n45kin7543vkf6jfnd3-libpng-1.6.29" "bcmf06k2n1pfwqkzpclvvc3w9jdfi71a-guile-json-0.6.0" "bgv2yzvdvmxjmsvmg5fxaw1id2r2c3sr-libgit2-0.26.0" "bh1f92ij80j4fd4jzlfwlq6kg9hd1kh4-raw-initrd" "bhawz0mpfdjhwq423q6kk2jz34dpcsx5-libnl-3.3.0" "bixk1s0kr8lbpw2m4fhqsncfifwysjj9-iw-4.9" "bl5v4l5c3yibr2mmbx9lxr2qjd65wa9i-shepherd-term-tty3.scm" "bm16lyhdl6h5fxfi0iqjcv5dscqrickv-libsamplerate-0.1.9" "bmc8gv57qj6y5qdiymhaqii8dg51rjdk-marionette.scm" "bpr6szv5g3nwpa2xhj288n68bmsbrv6a-activate-service" "bxdl4knknaigm9s45szb9nqqln8cnbsk-file-5.30" "byx7df0jdaw8941qijp3p4l46q141ss3-libusb-1.0.21" "bzj472nmnnj5hcfd5yvfiqip1wzw84p9-tzdata-2017b" "bzn4wyrbdmfc1bd7lq05db5psfl5f8x8-perl-5.26.0" "c07im5yl6f5360lv623kp50mmq97naz8-mesa-17.1.4" "c44mijwrxm3zgzxf89g9nf8fdhz5vqqz-info-dir" "c6vpfgm9n7jzgr0llax0x7szqk9a5bfm-nettle-3.3" "c7asfsjiyd5p71h6338j3kkvy96k88id-man-db-2.7.6.1" "clrddh6a60b31anv7a9hrk3i9id0k5zs-libxcb-1.12" "cmn75vdszsm2404w0vwhrn2br7ib8508-zile-2.4.13" "cvaa538nkgrkspcpnnbzwqn9dxhxxv7f-curl-7.55.0-doc" "d2cyal3q1dfxcdz4gz8rpkdl1j3zwq2q-usbutils-008" "d7c4kdc4qkwkg9j6jwfxjqi3pxfznaqa-issue" "d7i58hy90961pahsnvjirifn6djmm24s-groupadd" "d8gkn84yqacjr80pzicz1ka3y2s1f2x0-guile-2.2.2" "dbhv0yay7p63v9xfn4s82pwrj43ij32b-bournish.scm" "dgyan2zawxw7qnxrmf9yp3ll954c9sxm-libdaemon-0.14" "dj5273vl9adm1vvjipqajk3lxkpir6yh-shepherd-nscd.scm" "dsbc8lh9zav2ghb7gi1zm608igbgg1jv-module-import" "dv4mr7k5gdi50wvqkhvahb05i905fi17-activate-service" "dy81cx0yshq8vban59vjsdl4rvxnwxab-util-linux-2.30" "f3rjpkrj5129m2rgyknl67pc3kwz782p-libdrm-2.4.81" "f4x2r28lkkr9bc5angw2bm6d922pidsj-guile-ssh-0.11.2" "fcglq7xj6yz2cmn86p14rzd25cnn7kia-hostname" "fjvh70n2iijzd28p1cxxkg234c203k2p-my.cnf" "fjzyz9rww401m5m5517zrqnfmqpk8aa0-libsndfile-1.0.28" "flj8k68s4igx1x03qia9dzkfsdqpf8dc-spice-0.12.8" "fpmp5299w8965xrbwbdbcvqxl89j9vp4-grub-image.png" "frfq5i5bxwwrz1vr04g9kcaz39g4w2ng-shepherd-console-font-tty6.scm" "g1hpcah5jqd665zl3040d4nhqgzzbbhk-libvorbis-1.3.5" "g1x4hnw3qafrwbcbpz4za1sw7pvwrwq6-fstab" "g3nari57wcfnm00kv9bnpyzdzfq4h8pk-xz-5.2.2" "gd4dx9pa04djv5ng2rrjjkj3ym70d0cj-module-import" "gfcfwr1i5kl6vy4p7zfvd87izd2b9dwq-guile-git-0.0-3.e156a10" "gfjnmqvw2ah9dkgv59w26a8bp9k61ra3-shepherd-user-file-systems.scm" "gh3xhwgh927md5ifzdmg0cgpqc0as1sh-nscd.conf" "ghcaayvl03ac7giilm5s4bcvb32nspzp-gnutls-3.5.13" "gj9w0cm9inhwi9iiipapq0xgvqyky7xq-module-import-compiled" "gr98ykgw5d3wr6mh98y20fia18rla83g-bash-completion-2.7" "gyi8x9c8gm5l3sqhvmqpy1n4xvlj62qj-shepherd-file-system--sys-fs-cgroup-memory.scm" "hwygv5jwd47amhp1m67iy3bkvxqjlbhm-libgcrypt-1.8.1" "hxn2viwl04nwswpjkfg0iyyhm815yaza-libcap-2.25" "i4bfsmgzmajbrv9p9cqz60id2j2hvwcz-usermod" "icfpiql578wzx55hkr0fqbzpxwvdymcp-nano-2.8.7" "icmna62bzyjpkx2qlvpa4mbgxyr00slj-shepherd-file-system--dev-pts.scm" "insr5wrif9pn1mlqa5rl9k3sr5qf2q1y-kmod-24" "jcsysx67d8y66n66hi856nfm2f92ws91-sbc-1.3" "jhmb3brgpavi4zx77zr4lrfdbndvw1l5-shepherd-file-system--dev-shm.scm" "jjna4ivyidxfq40mq78g97yzg0wfzcqy-shadow-4.5" "jk0hvcmysjjksi5csyznrhs27k1vc0sc-shepherd-term-tty5.scm" "jlj4f90m36bawbf8jp55j0mbldajm5va-kbd-2.0.4" "jnbb8ffxxvrw2b4z18zn0g08kqk9rsgl-libffi-3.2.1" "jv9hv3sqajrxnmx6ar03lxqk4laf03wj-su" "jz6k6rc0vhqfz1hpn92z8zf0rh19c2vc-alsa-lib-1.1.4.1" "jz7wvy930liqjvm95lhdv9i1dr1xxvxp-libxext-1.3.3" "k0xlmnz27cjyyhwjbc4lg1zkvid3d7jp-shepherd-mysql.scm" "k5zs3rw80aly6inhgvl8icpq9iabrdb2-bdb-6.2.23" "kdfwwd2r5ppdy8kd3yzl1sxibw3ahffq-fftwf-3.3.5" "kdwlvs51isdfbl61jdishzhly8h139zf-libbsd-0.8.3" "kgy00x8jl7q965sngq1yyihbczxj15wk-libxrender-0.9.10" "khjxh5dvx955qid1863j25swz926si2h-less-487" "kj7zjysiyf2d6v92wg5sm0yvbfala4mz-etc" "kpxi8h3669afr9r1bgvaf9ij3y4wdyyn-bash-minimal-4.4.12" "l1w1z627jsn93ilvjqhji96ccc95x0hy-shepherd-console-font-tty5.scm" "l6gb9kk5i9bskgpbsjmba8z794yvdlzw-shepherd-file-system--sys-fs-cgroup-devices.scm" "l7306lcxgapca9348qk6hakgycwkrmfs-libelf-0.8.13" "l8da5k5ji0idb1f36lyzangirnljabr0-activate-service" "lb0z3dkv73p6n7g736zj5zxhv4x28f6l-shepherd-0.3.2" "lh1hwa0i061lwzyvk9brcsjb6h1gyhrg-ncurses-6.0" "lhxswhrz1y69q0zpx76gjimzg3d7sn4h-libtasn1-4.12" "ljzqi3ajkc6l5r8hwdz7kr1zwbli3i7y-pciutils-3.5.5" "lk9axww17rh6jid5nrps0jf869kcrbcw-wireless-regdb-2017.03.07" "lp16q4gjhcpsjw6vhkkb84j8arzwksj6-shepherd-file-system--sys-fs-cgroup-freezer.scm" "m0m6bwzi8lx7kv8zbn3hjrim6flmgnf4-openssl-1.0.2l" "m3xhykrwad33a105zpgi494v4i8js4dl-wayland-1.13.0" "m843zdvsv2p3glz91y8icv3qwkr9mnzs-module-import" "m9zxvfv4ka26732485whl1cbaahf0ff9-avahi-0.6.31" "mhqwkrml6k7ylca5bnsmc467mlj2zdv8-shepherd-user-processes.scm" "mi0bpcbmz94n7wl282xcw12y81zj02ys-manual-database" "mipizipnr4y2hly9b429j8id1albbgqi-readline-7.0" "mk9wvrd5m7fqf328mf37241wkrkw75xa-libidn2-2.0.4" "mpl9b9w60gjzsq470zka5l8p2bmy7r8v-sqlite-3.19.3" "mrk0km6gqw4zn20az2bqidvajps7yy93-motd" "mxnh7py7gl5lfm2825hijgqjh7rvb0gm-sudoers" "mymwcnr619kprab0divalx38s5paw29y-linux-boot.scm" "n1fjxdw7ca00r0qnfk2a5gddv098rsy7-shepherd.conf" "n3b29mh561flznsciaylj4q2a78dmlp3-guile-git-0.0-3.e156a10" "n419gkq8p5l2392v0xy0wz7i69fxgp96-mariadb-10.1.26" "n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25" "n7hfr87kb69pbcz9cfy00yi4jvwk9n4s-iproute2-4.13.0" "nhm602hbfi0vw82377nvfy9kxqm6amb0-hosts" "njx3j0kd26blpdz3q1kcqxh80hiyby3b-syscalls.scm" "nlb440z8pz5wq2s2pggbvzxq0nsd96lj-module-import-compiled" "np05q8mf1y9y4bk5y4ssj99m0dss2b1q-libx11-1.6.5" "nqmzxcsay0flwxi22vb9hzdi9qnkgkhr-fuse-2.9.7" "nwklgz6m8nzmd6568jackkffjjsski8y-module-import" "nx8blr0a248ahbl092h7acyb44lp8f0m-libunistring-0.9.7" "nykcm5wlw8fjsi28nm01gg1as2znh8nf-gmp-6.1.2" "nzv180i3z33vnb9krmc73mazhf626384-findutils-4.6.0" "p204lx246gf8lzx0262d53j6vk4rdip4-boot" "p4cv5l3pbympjdjs2yga8cbp1ghbg4hj-isc-dhcp-4.3.5" "paps5r9hcpszhv8hc3n0s2m2i4a2378i-ed-1.14.2" "pbqal5rp859kfacaj9f8hvwwhlb4zikf-mysql-test-builder" "pf1xr3i3pf7k1b3lr59gffzy891y1yv3-libxvmc-1.0.10" "phyir52lwvndlpw1b30i6vhkyfh5bxgr-dbus-1.10.18" "pp5vlnkh99d9ab4xc3ggrk6mvc961fkx-lzip-1.18" "ps0m5mqdyh1pjdn31dxlbv51ysfhf860-lvm2-2.02.171" "q24zahl037lf2f4152g94v1zhrmbzsj6-libxml2-2.9.4" "q36avjw4lflscxvbmmamlgchdwq70cym-which-2.21" "q6f9samd6m36pyfg8xpzmkljc3vavrnh-activate-service" "qc4avwlbwyprz6gq9fcqwp043r8063f6-libltdl-2.4.6" "qh1fri7qppqi8bhyzbiw7h8knmk4cb3q-libltdl-2.4.6" "qj1kg8kws7fakn7g7zd4pqi59cy42hhp-crda-3.18" "qjal4sb770mjfd05w0fq72zkqpv4mcil-sudo-1.8.21p2" "qkkg7kyv1v828ixc70nngma55wn974li-udev.conf" "qp5cipyqsll9ddgdhxny65cxpvan61ha-procps-3.3.12" "r362f8p4y0xj7sm2jfqysry086lxy91v-zlib-1.2.11" "ra8iaqrk5lc8nzld75a3mv05x9wl4w96-shepherd-file-systems.scm" "rdq9cxcqka2cswqpv4s848a247zvgl93-mdadm-4.0" "rf6b68gjfrcsgc31w6zs5dgmnyschj8r-module-import-compiled" "rp8lfy4yfj08dk41m4ia9b80yy93mzf6-libjpeg-8d" "rqpi1zg82y0h6ic4nlw50x6irv5mgqhs-locale-2.25" "rs7y82hlgdfs1m7h5xr8y2vx7m96qc4v-shepherd-file-system--sys-fs-cgroup-perf_event.scm" "ryqd73alrlq5djsr18xjjihi735592im-pkg-config-0.29.2" "s16wxqjqvqjf49lkmbv3ai3dsjzxjfw6-shepherd-user-homes.scm" "s21q8rx5y9kzdpaia2zqwfbr0b9hn2fv-shepherd-file-system--sys-fs-cgroup-blkio.scm" "s2g2446j1wl1zy4d23vs3a7dc3zzl2c2-libxv-1.0.11" "s3d34jlrpcdbv1xm3y1nwihw1i6xmwrc-run-vm.sh" "scs7siybrjl5bb7sxqaskysf8n1ld718-gmp-6.1.2" "sfx1wh27i6gsrk21p87rdyikc64v7d51-zlib-1.2.11" "sil49ljqkxi6aw0rdiiqnl70jx6hicsx-s2tc-1.0" "sjrcmzr2jdas2zb4b5h8lgglgjlcyy9c-firmware" "skfbvr0wc2va1b2fdvaxbdmqnmji19jx-groupmod" "sngyhm974sbmljknwb1xrni1ggzhpm4d-grep-3.0" "sq26apxpvka5n46xkza1l5lrz5s4w8v2-libxrandr-1.5.1" "sv4p3sn3mp88xlpwl54p4r4gf06rjzlz-combinators.scm" "syzpw2s6s3jk3hj67vq52wfphlwfip2g-gss-1.0.3" "v4jl22k8gmfhw2ly8im5273y7xkby1bd-module-import" "v6ljdrjwh42h7bssk24yjdma5rl43jkr-profile" "v6wgl8g3l6d1zrylf4b9h43qszpklphk-shepherd-urandom-seed.scm" "viz3c2xq5ddl733q55am01fqz2dqiz34-skel" "vm8w2j5qjlan4dl64x8jplfih2dnrn9c-module-import-compiled" "w150ql3qy0di4dnp4c95hpaw6m1aafwc-pkg-config-0.29.2" "w1hj0572wg91blbmsyk83zsnjl6j47ap-grub-2.02" "w26fyfbic9n8fljmgacf5gy8x7y5yn39-udev-rules" "w31zw2chff41x6q6kpa2wrkgx8agr0an-libidn-1.33" "w7p84w2drhdy19j8dyv715i574lj40s9-readline-7.0" "w85rbll51r86mclkmp1bxa774b36jy1q-mit-krb5-1.15.1" "w87pvr1vf0cnbd3w6gzlamz17s761bq3-activate-service" "w8kii3hjvmh50yxs52gkdywkq9jc7s19-pixman-0.34.0" "wjj289vqkjf767xq0b3ldaskbl95vs5s-shepherd-marionette.scm" "wsjnmk2liiav4rqbhf6kxaim0fyvrn39-other" "wzzpvjk9ghhyjqn23lszkjh6pgbayj5x-shepherd-console-font-tty2.scm" "x0kbk8igm6gkkfb45gnnq66m6mswwirn-userdel" "x3b4dsmry7p2r9n30q2myj7ql0h74kqz-libmnl-1.0.4" "x8cwg5bm9y2dk1mrhisr63b5q98mbhhz-guile-bytestructures-20170402.91d042e" "xpqv6vdrxwvnl2545vcmra9gwhlvfzny-linux-libre-4.13.2" "xv8bp0zxbr9iphr38wy0ll4lzkbh9i87-libxau-1.0.8" "xxfwxc0xm748n6y9lrc5338nfpvjxqak-inetutils-1.9.4" "xy9k7k14p20jll9hiy6pj37kb8g23vbj-rfkill-0.5" "y2vyxss0pc603qqh3wmlv7yrgmjf0iam-libpipeline-1.4.2" "y5f4rfh9f8p5cm9kch4pafgmj3vhvqrx-openldap-2.4.45" "y5nrfbj52vlnj77iyki9hbji8qjwk86d-syslog.conf" "yfzdqhy08vygnssg8r69sx1i4i6jh682-sdl-1.2.15" "ygb6jg6qq36wxjcnkq4r9wrfikl754dy-shepherd-file-system--sys-fs-cgroup-cpu.scm" "ygrwcxrx5bhxzm0jilg54dsnwrxs0vci-nsswitch.conf" "yihvhxv3xyyvl1m2cy1lnf1lyi9h76fk-guile-2.2.2" "ylzyjnlsfz08xf1d74mpawvadnihsxx0-iptables-1.6.1" "ynp950nlaj0xx39gf5a10fq7rnsx1672-libatomic-ops-7.4.4" "ypqscsag2fs4j9jnwfqq5kzfyw1k30ls-mysql-test" "yz1lf55ag0904w9ib0q2kcjpdx33y7wm-attr-2.4.47" "yzlmd2nlcyjhx0ydbap7x32zjqxc3hz9-libcap-2.25" "z1lii251cy0y660910hsfc55cy82dk9i-net-base-5.3" "z77nhww8zh96w6lb5ak6h3jb4niain3b-eudev-3.2.2" "zaf2lb18xns27pkbfrm0f27qkkzxdxq2-shepherd-term-tty6.scm" "zb5gqhaj2sb1gy6imgsnhvxxcbzljg90-shepherd-file-system--sys-fs-cgroup-cpuacct.scm" "zh0lb2g15hirq7zw2477w7s5ww7dxkv0-guix-0.13.0-6.a9468b4" "zhhdii9mjckb6c2f7abmdsx39khv6dla-tar-1.29" "zhrajv6qf2hzn9c3g2bb07559hyrz5xp-bash-static-4.4.12" "zikv0zk3y5q2qx65r1xjxawm3ha97zdk-shells" "zs6zn16qbm53f1dda75ywl2gsd7m4xbn-activate-service" "zspi375jsb1076khqr3bbf5pg0vfgj65-shepherd-host-name.scm" "zvakcs6x3zzlx95wypz9dl3k908bc6lc-shepherd-file-system--sys-fs-cgroup-cpuset.scm" "zwhrh2429r7y13nd3bnfihswxdflb4ih-curl-7.55.0" "zwvgwl1yjfbh5k1255jvia6q331ib3m1-pam.d" "zxm6qadad3vc7asy1q0xp9dld012kxgk-90-kvm.rules" "zyya6pd6hg2zvcbqpzavqjv4wagms03c-module-import-compiled" "zzaxsv4jp0k9nhbvxm2al5c8b6l6nxyv-modprobe"))
ERROR: In procedure scm-error:
ERROR: no code for module (ice-9 popen)
--8<---------------cut here---------------end--------------->8---

As you can see,
/gnu/store/9whwwppmb2sjfsy0967s627bzgdfl8bc-guile-static-stripped-2.2.2/share/guile/2.2, which is at
the tail of %load-path, is missing from the root file system, hence the
failure.

To work around it, we’d have to either ensure that
‘guile-static-stripped’ is on the root file system, or adjust the load
path when we switch roots, or (simplest solution) pre-load (ice-9 popen)
before ‘switch-root’.

To be continued…

Ludo’.