I think that's because the patch first extracts the archive, chdirs to the first directory, and applies the patch. But if there's no directory, it can't chdir and fails. Note that (with-directory-excursion ".") does nothing :) Le 22 juin 2021 12:35:45 GMT-04:00, Giovanni Biscuolo a écrit : >Hello, > >some more info since I still do not understand where *.gz files are >coming from > >Giovanni Biscuolo writes: > >[...] > >>> Your source tarball contains multiple gzipped files, one of which >>> itself a tarball: >>> >>>> metadata.gz >>>> data.tar.gz >>>> checksums.yaml.gz >>>> source is under 'checksums.yaml.gz' >>>> Backtrace: >>>> 2 (primitive-load >>>> "/gnu/store/0d1j4s7c1h8w6z700sxb88jqmjp?") >>>> In ice-9/eval.scm: >>>> 619:8 1 (_ #(# >>>> "checksum?")) >>>> In unknown file: >>>> 0 (chdir "checksums.yaml.gz") >>>> >>>> ERROR: In procedure chdir: >>>> In procedure chdir: Not a directory > >If I build the package with "--keep-failed" I can inspect the kept >building dir >/home/guix-builder/guix-build-ruby-taskjuggler-3.7.1.drv-4, >and there are no *.gz files > >[...] > >>> so you need to use url-fetch/tarball and/or further unpack the >>> double-packed sources yourself in a custom phase. >> >> I'll try to do this: any example at hand please? > >I've found and tried this: > >--8<---------------cut here---------------start------------->8--- > > (add-after 'unpack 'unpack-bundled-sources > (lambda _ > (with-directory-excursion "." > (invoke "tar" "xf" "checksums.yaml.gz")))) > >--8<---------------cut here---------------end--------------->8--- > >but it fails: > >--8<---------------cut here---------------start------------->8--- > >starting phase `unpack-bundled-sources' >tar: checksums.yaml.gz: Cannot open: No such file or directory >tar: Error is not recoverable: exiting now >command "tar" "xf" "checksums.yaml.gz" failed with status 2 > >--8<---------------cut here---------------end--------------->8--- > >I still don't understand why appying a patch (with "(patches >(search-patches....))" in (source (origin...)) is failing. > >Thanks! Giovanni > >-- >Giovanni Biscuolo > >Xelera IT Infrastructures