help-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Development shell for diffutils does not appear to work - what am I


From: Ekaitz Zarraga
Subject: Re: Development shell for diffutils does not appear to work - what am I doing wrong?
Date: Wed, 27 Sep 2023 10:08:05 +0000




ElenQ Technology


------- Original Message -------
On Tuesday, September 26th, 2023 at 08:08, Daniel Littlewood 
<danielittlewood@gmail.com> wrote:


> Hi guix help,
> 
> I want to try out making a simple change to the program `diff`, which
> is part of GNU diffutils:
> https://packages.guix.gnu.org/packages/diffutils/3.8/
> I'd like to set up a dev environment, patch diff.c, rebuild it and try
> out the new binary. Maybe install it globally later, but I'm not there
> yet.
> I cloned the diffutils repo from
> https://git.savannah.gnu.org/git/diffutils.git, and in that directory
> ran
> `guix shell git vim nnn -D diffutils` (but I think it's just the -D
> diffutils I'm having trouble with). I believe that the
> -D/--development argument should produce a shell within which I can
> build `diff`.
> The README says that the first step is to run `./bootstrap`, but that
> fails because of several missing packages. I don't have the full list
> right now, but I think autoconf was one, and texi2pdf was another.
> 
> The packaging for diffutils clearly works (since I can install it), so
> I wonder if it does something different from what I'm attempting? I
> couldn't find the scheme file that defines diffutils, but I'm not sure
> I'd be able to read it anyway (I'm really trying out guix for the
> first time).
> 
> Thanks for reading, please let me know if I can provide more info.
> Dan



Dan,

I don't think you are doing anything wrong. I don't know why but
when doing `-D package` guix is often not adding all the development
dependencies as it doesn't load autotools and related things to
the shell.

You have to add them by hand.

Also, diffutils downloads a tar.xz which probably has the bootstrap
step already done because it is considered a release source code.

You are working from development code I expect, which probably needs
some extra tools.

What I would do: go adding them to the shell one by one as the build
system complains until it doesn't complain anymore. They will
probably be `texinfo`, `automake`, `autoconf`, `libtool` and maybe
I'm missing something... If you add them as you go you shouldn't 
leave anything out.

Also, this is an interesting call. It might be cool to have a way to
add those directly... I don't know what is best but probably with
some kind of flag we should add all the deps from the build-system
too.
And also, have all the `autotools` in just one package because I
always forget some of them.

I may start another thread with that...

Thanks for your question, it is a very valid one! It happened to me
before, too, and it's pretty annoying.

Hope this helps,
Ekaitz



reply via email to

[Prev in Thread] Current Thread [Next in Thread]