Ludovic Courtès writes: Hi!
> Janneke Nieuwenhuizen <[email protected]> skribis: >> So yeah, time to also let go of generated ChangeLog files. > > Yeah. > >> Do you think it's time to replace `make dist' in Guix by some `git >> archive' curse yet? Now that we choose to prefer not using tarballs in >> Guix because they include generated data, wouldn't it make sense not to >> provide tarballs that contain generated data? > > There’s a strong connection with the build system, actually. Sure! > The reason Autotools were made this way is quite smart actually: it’s > easy to install from a ‘make dist’ tarball since you need nothing but a > POSIX shell and make, which were the things one could consider > ubiquitous at the time. Yes, at the end of the 80 and early ninetees, this was a very smart thing to do. Essential even, probably. > Builds systems that came later (CMake, Meson, etc.) did away with this > convenience. That was quite risky at the time (asking users to install > CMake, and the right version, before they could even install the package > they’re interested in!), but in the long run, it appears to work well. As the GNU project promoted good, extensive, documentation and even invented an amazing [tex]info format for that, and CMake's business module was to keep documentation proprietary and sell it, I vowed to never ever touch it. Apart from inventing another stupid language (that was undocumented!), and making a similar mistake as Autotools: generating makefiles on the file-system and using absolute file names and not using any abstractions (like $(CC) or $(CFLAGS) in those, but expanding everyting everywhere. Oh my, and then people actually started to use that, unbelievable :-( > And, there’s some good news! I hear fellow hackers have been working on > this thing called BLUE, which could address our tarball problem as well! > That is, once Guix uses BLUE as its build system, ‘make dist’ is > effectively gone, Well, "someone" actually contributed some patches to BLUE *), making sure that `make dist' would produce a reproducible source tarball ootb ;) Possibly BLUE should support a `make git-dist' or something; but as a generic build system you'd probably not want have a hard dependency on git? Dunno... > and at that point it building from a Git checkout or ‘git archive’ is > the normal experience. > I hope this makes sense. :-) Sure, thanks! Greetings, Janneke *) https://codeberg.org/lapislazuli/blue/pulls/251 https://codeberg.org/lapislazuli/blue/pulls/258 -- Janneke Nieuwenhuizen <[email protected]> | GNU LilyPond https://LilyPond.org Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
