Buildah is fundamentally similar to podman and provides its own Makefile.
This commit switches from go-build-system to gnu-build-system so that the
build can be done using `make' instead of reinvention some parts (like
documentation) in the guile. The package pretty much follows how podman
package looks like.
* gnu/packages/containers.scm (buildah)[source]: Reformat.
[build-system]: Use gnu-build-system.
[arguments]<#:import-path, #:unpack-path, #:go, #:install-source?>: Delete.
<#:make-flags>: Set make flags.
<#:test-target>: Set, even though the tests are disabled.
<#:imported-modules>: Also import (guix build go-build-system) for the
remove-go-references phase.
<#:phases>{'prepare-install-docs, 'build-docs, 'install-docs}: Delete.
{'configure}: Delete.
{'set-env, 'check, 'symlink-helpers, 'wrap-buildah, 'remove-go-references}
{'install-completions}: New phases.
[inputs]: Remove no longer used cni-plugins, conmon, runc. Add bash-minimal.
[native-inputs]: Remove gnu-make, add go-1.21 and bats.
Change-Id: I0ddd5febb0116a71a857e2a98a9951dbe8bd40d9
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Substantial rework of the podman package. The source is no longer patched (at
all) and all necessary modifications were moved into wrap-program and phases.
Not everything is supported out of the box, but description mentions what
packages to install to get additional functionality working.
* gnu/packages/containers.scm (podman)[source]: Remove snippet and patches.
[arguments]<#:make-flags>: Add HELPER_BINARIES_DIR. Add GOMD2MAN to actually
use go-github-com-go-md2man package instead of the bundled version.
<#:imported-modules>: Add (guix build go-build-system).
<#:phases>{'set-env}: Set `CC' as an environment variable due to bug in make
before 4.4.
{'fix-hardcoded-paths}: Remove everything except patching `libexec' and `lib'
locations.
{'symlink-helpers}: New phase symlinking tools not discoverable via $PATH into
one directory (`HELPER_BINARIES_DIR').
{'wrap-podman}: New phase wrapping `podman' to set correct $PATH.
{'remove-go-references}: New phase stripping references to the golang
toolchain from the binaries.
[inputs]: Remove no longer needed cni-plugins, slirp4netns. Remove referenced
in 'wrap-podman conmon, crun, iptables, passt. Move go-github-com-go-md2man
into native-inputs. Add bash-minimal.
[native-inputs]: Add custom grep with supported -P. Use newer go. Add
mandoc.
[description]: Explain how to get `podman compose' and `podman machine'
working.
* gnu/packages/patches/podman-program-lookup.patch: Delete file.
Change-Id: Ifc28971a68751831d781517b041eec951a617087
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
This is handled automatically by go-build-system, but (obviously) not by the
gnu-build-system, so add the phase manually.
* gnu/packages/containers.scm (gvisor-tap-vsock)[arguments]<#:phases>: Add
'remove-go-references phase.
Change-Id: I5cef0bc03dfa7f219bdfec4226d0e7772401a5a5
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
cgroup2 is now the default type.
* gnu/packages/containers.scm (podman): Drop the comment.
Change-Id: I197ed7e4901b26ad820295ed7adcaffd7bf533f5
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Fixes <https://issues.guix.gnu.org/63680>.
Thanks to Nigko Yerden for telling me ExecStart lines can be multi-line
<https://lists.gnu.org/archive/html/bug-guix/2024-05/msg00153.html>.
* doc/guix-cookbook.texi (System Configuration)
[Customizing the Kernel]: Split lines.
[Customizing a Window Manager]<StumpWM>: Likewise.
[Setting up a bind mount]: Move comments.
[Getting substitutes from Tor]: Split line with backslash.
[Music Server with Bluetooth Audio]: Likewise.
(Advanced package management)[Guix Profiles in Practice]
<Basic setup with manifests>: Likewise.
<Reproducible profiles>: Likewise.
(Environment management)[Guix environment via direnv]: Likewise.
(Installing Guix on a Cluster)[Setting Up a Head Node]:
On Info and PDF, split ExecStart= command with backslash.
Change-Id: I31ef5b0417b319c3f6946d65f83edafb86c8f36b
* gnu/packages/python-xyz.scm (python-numba)[arguments]: Adjust the
'disable-failing-tests phase to skip some additional tests on
aarch64-linux and powerpc64le-linux. Also when building for armhf-linux
accept a wider range of python platforms as being part of armhf-linux.
Change-Id: If9edf9282684931a2a4cdcfed692ed3da1d4ec6e
* gnu/packages/bioinformatics.scm (samtools)[arguments]: When building
for i686-linux adjust the make-flags to specifically use the sse math
libraries.
Change-Id: I322d521cbe87e10db7c23db8e68bb377db966aa7
Use valgrind rather than valgrind/interactive, as this doesn't have gdb as an
input, which makes it easier to update gdb.
* gnu/packages/ruby.scm (ruby-ruby-memcheck)[inputs]: Use valgrind.
Change-Id: Icfcee2c27fc41e68e1a34b38c043ece188cc56af
* gnu/packages/flashing-tools.scm (0xffff): Update to 0.10.
[arguments]: Use gexps.
Change-Id: Ifb54578deb016a88e6314ecb7d16966c9294d7b3
Signed-off-by: Jonathan Brielmaier <jonathan.brielmaier@web.de>
"xdot" would always fail to run when graphviz "dot" binary is not available
directly in the user system. This patch fixes it by adding graphviz binaries
from the inputs to the PATH environment variable in "xdot" wrapping script.
Reported by Ada Stevenson <adanskana@gmail.com> in
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=70910
* gnu/packages/graphviz.scm (xdot) [arguments]: Add the "bin" directory from
the graphviz input to the xdot wrapping.
Change-Id: Iba4bbc37daf07407ad4c18b822956fbb730c0033
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>