Hello everyone, Let me chime in on a specific point.
"David Arroyo" <da...@aqwari.net> writes: > I recently used guix to make a one-line change to the dovecot-pigeonhole > package. Initially I tried to do this without guix, and had difficulties > using autoconf/automake. So instead, I made my changes, captured them with > `git diff`, and then used the `--with-patch` option of `guix install` to > build and install the modified version. It wasn't too hard, but it could > have been easier. It may have not been worth the effort in this case for > someone new to guix, but the nice thing is I could take the same steps > to modify any piece of free software for which a guix package exists, > regardless of the build system in use. I recently did the same to produce my LUKS2 patches for GRUB [1]! What I did was hack on the code to add what I needed, produce some patches with `git format-patch` then define --8<---------------cut here---------------start------------->8--- (define grub-efi-luks2 (package/inherit grub-efi (source (origin (inherit (package-source grub-efi)) (patches (cons* "0001-devmapper-getroot-Have-devmapper-recognize-LUKS2.patch" "0002-devmapper-getroot-Set-up-cheated-LUKS2-cryptodisk-mo.patch" (origin-patches (package-source grub-efi)))))))) --8<---------------cut here---------------end--------------->8--- With this, I could test build failures, but then I also ended up testing the resulting GRUB in a VM by installing guix with a config.scm that had the following: --8<---------------cut here---------------start------------->8--- (operating-system (bootloader (bootloader-configuration (bootloader (bootloader (inherit grub-efi-bootloader) (package grub-efi-luks2))) (target "/boot/efi") (keyboard-layout keyboard-layout))) ...) --8<---------------cut here---------------end--------------->8--- This made it extremely easy to test my changes! I don't think I would've written these patches without Guix's help. [1] https://lists.gnu.org/archive/html/grub-devel/2021-12/msg00076.html Best, -- Josselin Poiret