Hi, On Thu, 09 Sep 2021 at 01:46, zimoun <zimon.touto...@gmail.com> wrote:
> --8<---------------cut here---------------start------------->8--- > scheme@(guix-user)> (package-source linux-libre-headers-5.13) > $2 = #<origin #<promise #<procedure 7f881c1dd900 at > gnu/packages/linux.scm:248:8 ()>> #<content-hash sha256:#f> (#<origin > "http://www.fsfla.org/svn/fsfla/software/linux-libre/lemote/gnewsense/branches/3.16/100gnu+freedo.patch" > #<content-hash sha256:1hk9swxxc80bmn2zd2qr5ccrjrk28xkypwhl4z0qx4hbivj7qm06> > () 7f881c1ec840> #<origin > "https://salsa.debian.org/kernel-team/linux/raw/34a7d9011fcfcfa38b68282fd2b1a8797e6834f0/debian/patches/bugfix/arm/arm-mm-export-__sync_icache_dcache-for-xen-privcmd.patch" > #<content-hash sha256:1ifnfhpakzffn4b8n7x7w5cps9mzjxlkcfz9zqak2vaw8nzvl39f> > () 7f881c1ec7e0> > "/gnu/store/yrqr7syxbm4pddzlgc4pwn9wixmpy9xh-guix-module-union/share/guile/site/3.0/gnu/packages/patches/linux-libre-arm64-generic-pinebook-lcd.patch") > 7f881c1ec780> > --8<---------------cut here---------------end--------------->8--- > > Therefore, the builder of JSON (mainly ’origin->json’) does not consider > such cases and assume that ’origin-uri’ can be applied. Well, I will > try to improve the situation if no one beats me. :-) Ouch, it appears to me complicated because: a) at the package level, what is the source of linux-libre? b) this source is the result of some computed-origin-method Somehow, SWH ingests URLs and no more. And the current implementation looks like: --8<---------------cut here---------------start------------->8--- (define-public linux-libre-5.14-pristine-source (let ((version linux-libre-5.14-version) (hash (base32 "1iq8s031fviccc4710biwl7gxqdimm3nhlvxd0m3fykvhhmcanq0"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-5.14))) --8<---------------cut here---------------end--------------->8--- where ’make-linux-libre-source’ returns a ’computed-origin-method’. And the ’origin-uri’ of ’linux-libre-5.14-pristine-source’ is a ’gexp’. Then inside this ’gexp’, you can read the ’%upstream-linux-source’ URL: --8<---------------cut here---------------start------------->8--- #<gexp-input native #<origin #"mirror://kernel.org/linux/kernel/v5.x/linux-5.13.14.tar.xz" #<content-hash sha256:06lbjsbr86qa8yai5gfclbfxvcqsw33kxj9b4r93hh6z1wajmx82> --8<---------------cut here---------------end--------------->8--- and I do not know if it is possible to extract such thing. Moreover, the ’deblob-scripts-5.14’ is an origin from ’linux-libre-deblob-scripts’ which returns a list of 2 origins. These 2 URLs do not appear in ’linux-libre-5.14-pristine-source’, for instance. Therefore, I do not know how to extract the source URLs for the package ’linux-libre-5.14’. Ideas? Cheers, simon