Maxim Cournoyer writes: Hi,
> Efraim Flashner <efr...@flashner.co.il> writes: > >> On Sun, Jan 21, 2024 at 10:33:37AM +0100, Janneke Nieuwenhuizen wrote: >>> Hi! >>> >>> On core-updates, running >>> >>> ./pre-inst-env guix build --system=i586-gnu -e '(@@ (gnu packages >>> commencement) gnu-make-boot0)' >>> >>> fails for me with >>> >>> sh: zstd: command not found >>> >>> See log below. FWIW, using --system=i686-linux for example, works fine. > > I don't know what it'd only affect non-x86 systems, but I've noticed one > bug in my recent "default to zstd" repack logic, which would name a xz > tarball as .tar.zst. Perhaps tar then try to use zstd to decompress it, > even if it's really a xz compressed archive? Ah, that could be... > I have the following commit that fixes this, haven't pushed it yet (it's > a world rebuild). > > modified guix/packages.scm > @@ -949,10 +949,7 @@ (define* (patch-and-repack source patches > (bzip2 (lookup-input "bzip2")) > (lzip (lookup-input "lzip")) > (xz (lookup-input "xz")) > - (zstd (or (lookup-input "zstd") > - ;; Fallback to xz in case zstd is not available, such > as > - ;; for bootstrap packages. > - xz)) > + (zstd (lookup-input "zstd")) > (patch (lookup-input "patch")) > (comp (and=> (compressor source-file-name) lookup-input)) > (patches (map instantiate-patch patches))) > @@ -1033,10 +1030,16 @@ (define* (patch-and-repack source patches > locale (system-error-errno args))))) > > (setenv "PATH" > - (string-append #+zstd "/bin" > - (if #+comp > - (string-append ":" #+comp "/bin") > - ""))) > + (string-join (fold (lambda (x path) > + (if (and x (not (member x path))) > + (cons x path) > + path)) > + '() > + ;; Fallback to xz in case zstd is > + ;; not available, such as for > + ;; bootstrap packages. > + (list #+zstd #+xz #+comp)) > + ":")) > > (setenv "ZSTD_NBTHREADS" (number->string (parallel-job-count))) Thanks for looking into this. When trying ./pre-inst-env guix build --system=i586-gnu -e '(@@ (gnu packages commencement) gnu-make-boot0)' (or for --system=riscv64-linux, ftm) with this patch, I get tar (child): gzip: Cannot exec: No such file or directory (see below. So, no longer an attempt to use zstd... Greetings, Janneke --8<---------------cut here---------------start------------->8--- The following derivations will be built: /gnu/store/pr5r6fg3h5c8qrsl46gvvb3ip2zcz96k-make-boot0-4.4.1.drv /gnu/store/zirmshsc75x1isxkfladjmqhkl04l8in-make-4.4.1.tar.xz.drv process 28163 acquired build slot '/var/guix/offload/kluit.dezyne.org:10022/0' process 28163 acquired build slot '/var/guix/offload/localhost:10022/0' normalized load on machine 'kluit.dezyne.org' is 0.16 building /gnu/store/zirmshsc75x1isxkfladjmqhkl04l8in-make-4.4.1.tar.xz.drv... guix offload: sending 0 store items (0 MiB) to 'kluit.dezyne.org'... offloading '/gnu/store/zirmshsc75x1isxkfladjmqhkl04l8in-make-4.4.1.tar.xz.drv' to 'kluit.dezyne.org'... offloading build of /gnu/store/zirmshsc75x1isxkfladjmqhkl04l8in-make-4.4.1.tar.xz.drv to 'kluit.dezyne.org' @ build-started /gnu/store/zirmshsc75x1isxkfladjmqhkl04l8in-make-4.4.1.tar.xz.drv - i586-gnu /var/log/guix/drvs/zi//rmshsc75x1isxkfladjmqhkl04l8in-make-4.4.1.tar.xz.drv.gz 6964 failed to install 'C.UTF-8' locale: 1073741846 tar (child): gzip: Cannot exec: No such file or directory tar (child): Error is not recoverable: exiting now /gnu/store/sb4x78r4d5l8833nmrml4b823irf954h-bootstrap-binaries-0/bin/tar: Child returned status 2 /gnu/store/sb4x78r4d5l8833nmrml4b823irf954h-bootstrap-binaries-0/bin/tar: Error is not recoverable: exiting now Backtrace: In ice-9/boot-9.scm: 160: 10 [catch #t #<catch-closure 303300> ...] In unknown file: ?: 9 [apply-smob/1 #<catch-closure 303300>] In ice-9/boot-9.scm: 66: 8 [call-with-prompt prompt0 ...] In ice-9/eval.scm: 432: 7 [eval # #] In ice-9/boot-9.scm: 2412: 6 [save-module-excursion #<procedure 315be0 at ice-9/boot-9.scm:4084:3 ()>] 4089: 5 [#<procedure 315be0 at ice-9/boot-9.scm:4084:3 ()>] 1734: 4 [%start-stack load-stack #<procedure 316230 at ice-9/boot-9.scm:4080:10 ()>] 1739: 3 [#<procedure 31e930 ()>] In unknown file: ?: 2 [primitive-load "/gnu/store/y0pg4vk114kir2kvf7i7p8i22vf4z8pj-make-4.4.1.tar.xz-builder"] In ice-9/eval.scm: 432: 1 [eval # ()] In guix/build/utils.scm: 816: 0 [invoke "/gnu/store/sb4x78r4d5l8833nmrml4b823irf954h-bootstrap-binaries-0/bin/tar" ...] guix/build/utils.scm:816:6: In procedure invoke: guix/build/utils.scm:816:6: Throw to key `srfi-34' with args `(#<condition &invoke-error [program: "/gnu/store/sb4x78r4d5l8833nmrml4b823irf954h-bootstrap-binaries-0/bin/tar" arguments: ("xvf" "/gnu/store/wp8pr3by5qw6f0waw05x64nchf6pcncm-make-4.4.1.tar.gz") exit-status: 2 term-signal: #f stop-signal: #f] 61f760>)'. builder for `/gnu/store/zirmshsc75x1isxkfladjmqhkl04l8in-make-4.4.1.tar.xz.drv' failed with exit code 1 @ build-failed /gnu/store/zirmshsc75x1isxkfladjmqhkl04l8in-make-4.4.1.tar.xz.drv - 1 builder for `/gnu/store/zirmshsc75x1isxkfladjmqhkl04l8in-make-4.4.1.tar.xz.drv' failed with exit code 1 derivation '/gnu/store/zirmshsc75x1isxkfladjmqhkl04l8in-make-4.4.1.tar.xz.drv' offloaded to 'kluit.dezyne.org' failed: build of `/gnu/store/zirmshsc75x1isxkfladjmqhkl04l8in-make-4.4.1.tar.xz.drv' failed build of /gnu/store/zirmshsc75x1isxkfladjmqhkl04l8in-make-4.4.1.tar.xz.drv failed --8<---------------cut here---------------end--------------->8--- -- Janneke Nieuwenhuizen <jann...@gnu.org> | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | AvatarĀ® https://AvatarAcademy.com