gnu: linux-libre-with-bpf: Deprecate in favor of linux-libre.
The kernel has progressively enabled the BPF settings, to the point where
having a separate kernel for it makes little sense, so repatriate the few
non-default BPF-related configs to our main kernel.
* gnu/packages/linux.scm (%bpf-extra-linux-options): Delete variable.
(default-extra-linux-options): Enable CONFIG_NET_CLS_BPF and
CONFIG_NET_ACT_BPF. CONFIG_IKHEADERS is dropped as it adds 4 MiB to the
kernel image and appears somewhat redundant with BTF debug info.
(linux-libre-with-bpf): Deprecate to linux-libre.
Change-Id: Id672241916dcbcdca7cbc16d869d00223446cd3d
gnu: linux-libre: Enable Zstd compression of kernel modules.
This brings the on disk size of the kernel from 164 MiB to 144 MiB, or about
12%.
* gnu/packages/linux.scm (default-extra-linux-options)
[version>=5.13]: Enable CONFIG_MODULE_COMPRESS_ZSTD, else
CONFIG_MODULE_COMPRESS_GZIP.
(make-linux-libre*) [phases] {set-environment}: Set ZSTD_CLEVEL environment
variable to 19.
[native-inputs]: Add zstd.
* gnu/build/linux-modules.scm (module-regex): Add .zst to regexp. Update doc.
(modinfo-section-contents): Extend support to Zstd compressed module.
(dot-ko): Register the 'zstd compression type.
(ensure-dot-ko, file-name->module-name, load-linux-module*)
(module-name->file-name/guess, write-module-name-database)
(write-module-alias-database, write-module-device-database): Update doc.
(module-name-lookup): Also consider zstd-compressed modules.
* gnu/installer.scm (installer-program): Add guile-zstd extension to gexp.
* gnu/system/linux-initrd.scm (flat-linux-module-directory): Likewise.
Decompress zstd-compressed modules for use in initrd.
* guix/profiles.scm (linux-module-database): Add guile-zstd extension to gexp.
Change-Id: Ide899dc5c58ea5033583b1a91a92c025fc8d901a
gnu: linux-libre: Enable BTF debug info.
This is needed for software making use of eBPF programs, such as the sysdig
utility, among others. For more information about BPF, see:
<https://brendangregg.com/blog/2020-11-04/bpf-co-re-btf-libbpf.html>.
* gnu/packages/linux.scm (%default-extra-linux-options): Enable
CONFIG_DEBUG_INFO, CONFIG_DEBUG_INFO_BTF,
CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT, CONFIG_BPF_JIT,
CONFIG_BPF_JIT_ALWAYS_ON, CONFIG_BPF_SYSCALL and BPF_UNPRIV_DEFAULT_OFF.
Disable CONFIG_DEBUG_INFO_REDUCED.
(make-linux-libre*) [native-inputs]: Add dwarves, python-wrapper and zlib.
Change-Id: Idfc64f82aa404e86168bffcf721a325f9e807f75
gnu: linux: Turn %default-extra-linux-options into a procedure.
This is to allow version-specific options to the list of defaults.
* gnu/packages/linux.scm (%default-extra-linux-options): Transform to...
(default-extra-linux-options): ... this procedure, which accepts a 'version'
argument.
(make-linux-libre, linux-libre-arm-generic, linux-libre-arm-generic-5.10)
(linux-libre-arm-generic-5.4, linux-libre-arm64-generic)
(linux-libre-arm64-generic-5.10, linux-libre-arm64-generic-5.4)
(linux-libre-riscv64-generic, linux-libre-mips64el-fuloong2e)
(linux-libre-with-bpf): Adjust accordingly.
* doc/guix-cookbook.texi (Customizing the Kernel): Adjust accordingly.
Change-Id: Ifd3be8b7ed8699bada224a938dbc84205366ff3d
gnu: make-linux-libre*: Run install targets in parallel.
This reduces the total build time by about 20%.
* gnu/packages/linux.scm (make-linux-libre*) [phases] {install}: Ensure that
-jN is used for the install targets. Also honor make flags.
Change-Id: Ib3f4fdcbdeab736315a91eafa8d6d1dff5b89884
gnu: make-linux-libre*: Set KBUILD_BUILD_VERSION for reproducibility.
* gnu/packages/linux.scm (make-linux-libre*) [phases] {set-environment}: Set
KBUILD_BUILD_VERSION to 1.
Change-Id: I6c2e561605a13c757a4eb4d1c59343ba26464067
gnu: Add dwarves.
* gnu/packages/linux.scm (dwarves): New variable.
Change-Id: Ib2452868eae76bea95060a70e568dfb6e84b2a75
gnu: Add sysdig.
* gnu/packages/admin.scm (sysdig): New variable.
* gnu/packages/patches/sysdig-shared-falcosecurity-libs.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
Change-Id: I02b64db7a548e17ea83beb1ea27db87d29e99cf1
gnu: Add falcosecurity-libs.
* gnu/packages/linux.scm (falcosecurity-libs): New variable.
* gnu/packages/patches/falcosecurity-libs-install-pman.patch
* gnu/packages/patches/falcosecurity-libs-libscap-pc.patch
* gnu/packages/patches/falcosecurity-libs-pkg-config.patch
* gnu/packages/patches/falcosecurity-libs-shared-library-fix.patch
* gnu/packages/patches/falcosecurity-libs-libsinsp-pkg-config.patch: New files.
* gnu/local.mk (dist_patch_DATA): Register them.
Change-Id: I0cb15e6a25256598678fc20eb298ad947d699ef4
gnu: libbpf: Update to 1.4.1.
* gnu/packages/linux.scm (libbpf): Update to 1.4.1.
[phases] {install-linux-bpf-headers}: New phase.
[native-inputs]: Add linux-libre-headers-6.8.
Change-Id: I969a017b0ed52c1a611b3fe0d90d5b8703d35e73
gnu: libbpf: Use gexps.
* gnu/packages/linux.scm (libbpf) [arguments]: Use gexps.
Change-Id: I5529cda3b316a24b48f4a33bfd685695614350bb
gnu: Add valijson.
* gnu/packages/serialization.scm (valijson): New variable.
Change-Id: I604a0ecdd5ffaa256db4053b77e760d549881f33
gnu: grpc: Propagate abseil-cpp-cxxstd11.
* gnu/packages/rpc.scm (grpc) [native-inputs]: Move abseil-cpp-cxxstd11 to...
[propagated-inputs]: ... here.
Change-Id: I5bceefa762494423c0bc40b559bcf243ecdf85d8
gnu: grpc: Modernize.
* gnu/packages/rpc.scm (grpc) [arguments]: Use gexps. Delete trailing #t.
[native-inputs]: Remove labels.
* gnu/packages/rpc.scm (grpc-1.16.1) [arguments]: Use gexps.
Change-Id: I0e89d246cc62a293274a32344108a7249f343257
gnu: nss/fixed: Hasten test suite.
This causes the test suite to run in about in nearly a third of the original
time (from 145 min to 52 minutes on a particular machine).
* gnu/packages/nss.scm (nss/fixed) [phases] {check}: Set NSS_CYCLES
environment variable to 'standard'.
Change-Id: I5dab1ed16b302af2276b0f075a790f6193edbe95
gnu: jami: Work toward reinstating functional tests.
* gnu/packages/patches/jami-enable-testing.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/jami.scm (jami) [source]: Apply it.
[phases] <check>: Use 'ctest' to run tests. Update comment explaining why the
QML test suite is disabled.
Change-Id: I5c9333a3b5064ecec9a2dd4fe13ae597d5354b7c
gnu: jami: Update to 20240524.0.
* gnu/packages/jami.scm (libjami): Update to 20240524.0.
[source]: Remove stale integration tests patch.
[arguments] <#tests?> Set to #f, disabling tests.
[inputs]: Replace libgit2-1.6 with libgit2-1.8.
[phases] <move-jamid>: Update comment.
* gnu/packages/patches/jami-disable-integration-tests.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): De-register it.
(jami): Update to 20240524.0.
Series-postfix: telephony-team
Change-Id: I6e46ca936951ff41e8f322eed2b5a663e1e3d197
gnu: ffmpeg-jami: Enable pipewire support.
* gnu/packages/video.scm (ffmpeg-jami)
[arguments]: Update configure flags.
[inputs]: Add pipewire.
* gnu/packages/patches/ffmpeg-jami-pipewiregrab-source-filter.patch: Fix
includes.
Change-Id: Ife3bf532496bc06144c1cbbcea50e406a58ecc7a
gnu: dhtnet: Update to 0.0.1-3.7733109.
* gnu/packages/networking.scm (dhtnet): Update to 0.0.1-3.7733109.
[arguments] <delete-problematic-tests>: Update comment for disabling
connectionManager. Also disable the new turnCache and peerDiscovery tests.
Change-Id: I68ca66283e9b7b79411b1735f7bbec68eb41f77e
gnu: pjproject-jami: Update to 2.13.1-2.797f1a3.
* gnu/packages/telephony.scm (pjproject-jami): Update to 2.13.1-2.797f1a3.
Change-Id: I7a037ee040f5c8ae9b038eada4a33e89559b5332