--- Begin Message ---
Subject: |
guix system docker-image fails when store items contain non-ascii characters |
Date: |
Fri, 14 Jun 2019 23:05:06 +0200 |
$ guix system docker-image docker-minimal-system.scm
[..]
building
/gnu/store/a3mlhl86g54w7i7yyx7yyfycn8bzp3nc-guix-docker-image.tar.gz.drv...
-builder for
`/gnu/store/a3mlhl86g54w7i7yyx7yyfycn8bzp3nc-guix-docker-image.tar.gz.drv'
failed with exit code 1
build of
/gnu/store/a3mlhl86g54w7i7yyx7yyfycn8bzp3nc-guix-docker-image.tar.gz.drv failed
View build log at
'/var/log/guix/drvs/a3/mlhl86g54w7i7yyx7yyfycn8bzp3nc-guix-docker-image.tar.gz.drv.bz2'.
guix system: error: build of
`/gnu/store/a3mlhl86g54w7i7yyx7yyfycn8bzp3nc-guix-docker-image.tar.gz.drv'
failed
And the log says:
qemu-system-x86_64: warning: hub 0 is not connected to host network
ESCcESC[?7lESC[2JESC[0mSeaBIOS (version
rel-1.12.0-0-ga698c8995f-prebuilt.qemu.org)
iPXE (http://ipxe.org) 00:03.0 C980 PCI2.10 PnP PMM+0FF91100+0FEF1100 C980
Press Ctrl-B to configure iPXE (PCI 00:03.0)...^M
Booting from ROM...
ESCcESC[?7lESC[2J[ 0.000000] Linux version 5.1.8-gnu (nixbld@) (gcc version
7.4.0 (GCC)) #1 SMP 1
[ 0.000000] Command line: panic=1
--load=/gnu/store/5w2d4p93hzfri3b02yw76cmdkpbk1szi-linux-vm-loader console=ttyS0
[ 0.000000] KERNEL supported cpus:
[...]
[Kregistering 177 items [###################################
]Backtrace:
In ./guix/store/database.scm:
95:20 19 (call-with-database _ _)
In ice-9/boot-9.scm:
829:9 18 (catch _ _ #<procedure 12aa0a0 at ./guix/store/databas?> ?)
In ./guix/store/database.scm:
114:20 17 (_)
In ./guix/progress.scm:
70:36 16 (call-with-progress-reporter _ _)
In srfi/srfi-1.scm:
640:9 15 (for-each #<procedure f54a50 at ./guix/store/database.?> ?)
In ./guix/store/database.scm:
340:36 14 (_ #<<store-info> item: "/gnu/store/6w65nzbc3ah30y5kr4z?>)
In ./guix/store/deduplication.scm:
60:4 13 (nar-sha256 "/guixsd-system-root/gnu/store/6w65nzbc3ah3?")
In ./guix/serialization.scm:
363:9 12 (dump "/guixsd-system-root/gnu/store/6w65nzbc3ah30y5kr4?")
In srfi/srfi-1.scm:
640:9 11 (for-each #<procedure 126c660 at ./guix/serialization.?> ?)
In ./guix/serialization.scm:
370:23 10 (_ "etc")
363:9 9 (dump "/guixsd-system-root/gnu/store/6w65nzbc3ah30y5kr4?")
In srfi/srfi-1.scm:
640:9 8 (for-each #<procedure 126c630 at ./guix/serialization.?> ?)
In ./guix/serialization.scm:
370:23 7 (_ "ssl")
363:9 6 (dump "/guixsd-system-root/gnu/store/6w65nzbc3ah30y5kr4?")
In srfi/srfi-1.scm:
640:9 5 (for-each #<procedure 126c600 at ./guix/serialization.?> ?)
In ./guix/serialization.scm:
370:23 4 (_ "certs")
362:43 3 (dump "/guixsd-system-root/gnu/store/6w65nzbc3ah30y5kr4?")
In srfi/srfi-1.scm:
697:23 2 (filter-map #<procedure 10724c0 at ./guix/serializat?> . #)
In ./guix/serialization.scm:
304:56 1 (_ "NetLock_Arany_=Class_Gold=_F??tan??s??tv??ny:2.6.73?")
In unknown file:
0 (lstat "/guixsd-system-root/gnu/store/6w65nzbc3ah30y5kr?")
ERROR: In procedure lstat:
In procedure lstat: No such file or directory:
"/guixsd-system-root/gnu/store/6w65nzbc3ah30y5kr4zx9rcgknpjr1f5-nss-certs-3.43/etc/ssl/certs/NetLock_Arany_=Class_Gold=_F??tan??s??tv??ny:2.6.73.65.44.228.0.16.pem"
^MESC[Kregistering 177 items
[ 152.952990] Kernel panic - not syncing: Attempted to kill init!
exitcode=0x00000100
[
I don't know what exactly is done here, but on my real machine, that
path exists (with the right encoding):
$ ls
/gnu/store/6w65nzbc3ah30y5kr4zx9rcgknpjr1f5-nss-certs-3.43/etc/ssl/certs/NetLock_Arany_*
'/gnu/store/6w65nzbc3ah30y5kr4zx9rcgknpjr1f5-nss-certs-3.43/etc/ssl/certs/NetLock_Arany_=Class_Gold=_Főtanúsítvány:2.6.73.65.44.228.0.16.pem'
When I remove the "nss-certs" package from my system-definition, it works.
Also, creating the qemu-image works:
$ guix system vm-image docker-minimal-nginx.scm
[..]
/gnu/store/w3w5w8i3iq7zqhbk78rkc17r97v2yi62-qemu-image
$ guix describe
Generation 62 Jun 11 2019 19:29:17 (current)
guix-hoebjo 385a225
repository URL: file:///home/bjoern/guix/guix-hoebjo
branch: master
commit: 385a2254007c66bfea30eeef7534800605107131
guix 944cb87
repository URL: https://git.savannah.gnu.org/git/guix.git
branch: master
commit: 944cb87a33e222cacae6647f37325b94e6a47568
System file attached.
Björn
docker-minimal-system.scm
Description: Text Data
pgpObF4ufNh28.pgp
Description: OpenPGP digital signature
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#36215: guix system docker-image fails when store items contain non-ascii characters |
Date: |
Mon, 17 Jun 2019 12:36:38 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux) |
Hi Björn,
Björn Höfling <address@hidden> skribis:
> On Fri, 14 Jun 2019 23:05:06 +0200
> Björn Höfling <address@hidden> wrote:
>
>> qemu-system-x86_64: warning: hub 0 is not connected to host network
>
> [..]
>
>> ERROR: In procedure lstat:
>> In procedure lstat: No such file or directory:
>> "/guixsd-system-root/gnu/store/6w65nzbc3ah30y5kr4zx9rcgknpjr1f5-nss-certs-3.43/etc/ssl/certs/NetLock_Arany_=Class_Gold=_F??tan??s??tv??ny:2.6.73.65.44.228.0.16.pem"
>> ^MESC[Kregistering 177 items [ 152.952990] Kernel panic - not
>> syncing: Attempted to kill init! exitcode=0x00000100 [
>
> I looked a bit around the code, added some debugging outputs and found
> out that finally in gnu/build/vm.scm in procedure load-in-linux-vm a
> QEMU VM is started where the docker image will be created in.
>
> To test things, I entered a container with qemu-minimal:
>
> guix environment -N -C --share=/dev/kvm --share=/tmp/.X11-unix/ --ad-hoc
> coreutils less findutils emacs qemu-minimal nss-certs
>
> And started an existing VM with the store being available over virtfs:
>
> [env] $ qemu-system-x86_64 -m 2048 -smp 2 \
> -boot menu=on \
> -drive file=guixsd0.2018-02-19.qcow2 \
> -drive format=raw,file=swap.img \
> -virtfs
> local,id=store_dev,path=/gnu/store,security_model=none,mount_tag=store
>
> In that machine, I mounted the fs:
>
> mount -t 9p -o trans=virtio store /mnt
>
> When I then looked at /mnt/...nss-certs.../..., the non-ascii
> characters are looking all good.
>
> I think the encoding-problem is more in the script.
Yes, it looks similar to what 9c941364bfc0120e3ab5c5c4cc71a9a302d59a2b
fixed.
Fixed in ed504cafa23c34bfa1823a4d5abf3ad55205484b.
Thanks!
Ludo’.
--- End Message ---