[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: How to bump a package version locally?
From: |
Hiep Pham |
Subject: |
Re: How to bump a package version locally? |
Date: |
Sat, 21 Oct 2023 19:20:01 +0000 |
On 10/20/23 01:39, Tomas Volf wrote:
> On 2023-10-19 16:47:13 +0000, Hiep Pham wrote:
>> On 10/18/23 21:00, wolf wrote:
>>> 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]
>>>> ))
>>> [trim]
>>>>
>>>> 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.
>>
>> Okay, so I followed exactly this, and ...
>>
>>>>
>>>> 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.
>>
>>
>> I ran `guix pull` but no luck for me. I still met the same error when I
>> was running `make`:
>
> What version of makeinfo is present? For me:
>
> $ guix shell -D guix -- makeinfo --version
> texi2any (GNU texinfo) 6.8
>
>
>>
>> ```
>> contributing.de.texi:1659: @menu reference to nonexistent node
>> `Configuring Git'
>> contributing.de.texi:1660: @menu reference to nonexistent node `Sending
>> a Patch Series'
>> ```
>>
>> My `guix describe` (on my Fedora machine):
>>
>> ```
>> guix c065da0
>> repository URL: https://git.savannah.gnu.org/git/guix.git
>> branch: master
>> commit: c065da01ff956d3c2bdfc45a33d910e509a211d9
>> ```
>>
>> c065da01ff956d3c2bdfc45a33d910e509a211d9 is the latest commit on Oct 19,
>> 2023.
>>
>> And my `which guix` is:
>>
>> /home/[username]/.config/guix/current/bin/guix
>
> I have to admit, I am unsure what the problem exactly is. Unless someone else
> comes with a better idea, what you could try:
>
> 1. Clean up the git worktree (I use `git clean -xffd')
> 2. Do the whole process step-by-step again
I ran `git clean -xffd`, and started anew in a container.
guix shell --container --network --nesting --development guix help2man \
git strace font-ghostscript fontconfig guile-gnutls
Things now work!!
./bootstrap
./configure --localstatedir=/var --sysconfdir=/etc
make
make check
I now can build `jsonnet` with a new version (0.17.0 -> 0.20.0):
/pre-inst-env guix build jsonnet
Of course, the build failed, since *there should be more work than just
bumping the version*. But this is a good start for me to start
contributing to the master tree. Long way to go, though.
Developing in a foreign distro (Fedora in my case) was difficult.
Luckily, I discovered `--container`, `--network` and most importantly,
`--nesting` so that Guix _inside_ the container can interact with the
build daemon that runs _outside_ the container.
Anyway, thanks a lot for your help!
--
Hiep