On 2023-10-18 18:24:48 +0000, Hiep Pham wrote: > Hi, > > I want to bump `jsonnet` version from 0.17.0 to 0.20.0 from the master > branch of the `guix` repository. I edited the version in > `gnu/packages/cpp.scm`: > > (define-public jsonnet > (package > (name "jsonnet") > (version "0.20.0") > [snip] > ))
FYI You will need to do some more changes, just version bump sadly does not
build:
$ guix shell jsonnet --no-offload --with-version=jsonnet=0.20.0
guix shell: warning: cannot authenticate source of 'jsonnet', version 0.20.0
updating checkout of 'https://github.com/google/jsonnet'...
retrieved commit f45e01d632b29e4c0757ec7ba188ce759298e6d3
The following derivation will be built:
/gnu/store/d5pndfws378w22c7580fm4w517hfrn1r-jsonnet-0.20.0.drv
building /gnu/store/d5pndfws378w22c7580fm4w517hfrn1r-jsonnet-0.20.0.drv...
63%
▕███████████████████████████████████████████████████████████████████████████████████████████████████████████████████▉
▏builder
for `/gnu/store/d5pndfws378w22c7580fm4w517hfrn1r-jsonnet-0.20.0.drv' failed
with exit code 1
build of /gnu/store/d5pndfws378w22c7580fm4w517hfrn1r-jsonnet-0.20.0.drv
failed
View build log at
'/var/log/guix/drvs/d5/pndfws378w22c7580fm4w517hfrn1r-jsonnet-0.20.0.drv.gz'.
guix shell: error: build of
`/gnu/store/d5pndfws378w22c7580fm4w517hfrn1r-jsonnet-0.20.0.drv' failed
>
> *How do I test building/installing this change locally?*
> Here what I tried so far:
>
> 1. Standing at the root of the `guix` repository, build with:
>
> guix build -L . jsonnet
>
> This failed:
>
> ```
> guix build: warning: failed to load '(build-aux build-self)':
>
>
> no code for module (build-aux build-self)
>
>
> ./build-aux/build-self.scm:19:0: warning: module name (build-self) does
> not match file name 'build-aux/build-self.scm'
>
> hint: File `./build-aux/build-self.scm' should probably start with:
>
>
>
>
>
> (define-module (build-aux build-self))
>
>
>
>
>
> guix build: All 92 channel news entries are valid.
>
>
> guix build: warning: failed to load '(build-aux check-channel-news)':
>
>
> no code for module (build-aux check-channel-news)
>
>
> hint: File `./build-aux/check-channel-news.scm' should probably start
> with:
>
>
>
>
> (define-module (build-aux check-channel-news))
>
>
>
> [snip]
>
>
> guix build: warning: failed to load '(build-aux compile-all)':
> ```
>
> 2. Followed the contributing guide [1], I created a shell instead:
I believe this is the preferred way.
>
> guix shell -C -D guix git help2man strace
> ./bootstrap
> ./configure --localstatedir=/var
I would recommend to use
./configure --localstatedir=/var --sysconfdir=/etc
as described in the latest version of the manual:
https://guix.gnu.org/manual/devel/en/html_node/Building-from-Git.html
(notice the /devel/ in the path). Your version is from 1.4.0 version of the
manual and it has some limitations.
>
> This generated `pre-inst-env`, but `make` step failed with:
>
> ```
> MAKEINFO doc/guix.de.info
> contributing.de.texi:1659: @menu reference to nonexistent node
> `Configuring Git'
> contributing.de.texi:1660: @menu reference to nonexistent node `Sending
> a Patch Series'
> make[2]: *** [Makefile:5003: doc/guix.de.info] Error 1
> ```
Yes, this happens when you try to build guix source using too old guix version.
So try to run `guix pull' first and then attempt to compile it again. It should
succeed.
>
> So I was blocked to progress further :(
>
After that the pre-inst-env should work.
>
> [1] https://guix.gnu.org/manual/en/guix.html#Contributing
>
> --
> Hiep
>
>
W.
--
There are only two hard things in Computer Science:
cache invalidation, naming things and off-by-one errors.
signature.asc
Description: PGP signature
