gnu: glew: Fix cross-compiling. * gnu/packages/gl.scm (mesa)[native-inputs]: When cross-compiling, add cmake-minimal-cross. [arguments]: Adjust 'fix-cross-compiling to find llvm. * gnu/packages/llvm.scm (llvm-for-mesa) [arguments]<#:configure-flags>: When cross-compiling, set -DBUILD_SHARED_LIBS:BOOL=TRUE and -DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE, remove -DLLVM_LINK_LLVM_DYLIB.*. <#:phases>: When cross-compiling, remove the 'delete-static-libraries phase. Change-Id: If10dec7695e62604e080230e10f2b8d7167f660b Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
guix: import: Optionally import necessary yanked crates. * doc/guix.texi (Invoking guix import): Mention '--allow-yanked'. * guix/import/crate.scm (make-crate-sexp): Add yanked? argument. For yanked packages, use the full version suffixed by "-yanked" for generated variable names and add a comment and package property. (crate->guix-package): Add allow-yanked? argument and if it is set to #t, allow importing yanked crates if no other version matching the requirements exists. [find-package-version]: Packages previously marked as yanked are only included if allow-yanked? is #t and then take the lowest priority. [find-crate-version]: If allow-yanked? is #t, also consider yanked versions with the lowest priority. [dependency-name+version]: Rename to ... [dependency-name+version+yanked] ...this. Honor allow-yanked? and choose between an existing package and an upstream package. Exit with an error message if no version fulfilling the requirement is found. [version*]: Exit with an error message if the crate version is not found. (cargo-recursive-import): Add allow-yanked? argument. * guix/read-print.scm: Export <comment>. * guix/scripts/import/crate.scm: Add "--allow-yanked". * tests/crate.scm: Add test 'crate-recursive-import-only-yanked-available'. [sort-map-dependencies]: Adjust accordingly. [remove-yanked-info]: New variable. Adjust test 'crate-recursive-import-honors-existing-packages'. (test-bar-dependencies): Add yanked dev-dependencies. (test-leaf-bob-crate): Add yanked versions. (rust-leaf-bob-3.0.2-yanked): New variable. Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Change-Id: I175d89b39774e6b57dcd1f05bf68718d23866bb7
tests: Mock find-packages-by-name in crate importer test. * tests/crate.scm: Import only sha256 from (gcrypt hash) as gcrypt-sha256 to prevent a name collision. Rename test 'cargo-recursive-import' to 'crate-recursive-import' and 'cargo-recursive-import-hoors-existing-packages' to 'crate-recursive-import-honors-existing-packages'. Mock find-packages-by-name from (gnu packages). Adjust test to import fake 'bar' crate instead of doctool. (test-bar-crate): New variable. (test-bar-dependencies): New variable. (test-root-crate): Adjust sha256 -> gcrypt-sha256. (test-doctool-crate,test-doctool-dependencies): Remove variables. (rust-leaf-bob-3): New variable. Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
import: crate: Optionally import dev-dependencies recursively. If --recursive-dev-dependencies is specified, development dependencies are also included for all recursively imported packages. * doc/guix.texi (Invoking guix import): Mention --recursive-dev-dependencies. * guix/import/crate.scm (crate-recursive-import): Add recursive-dev-dependencies? argument. * guix/scripts/import/crate.scm (show-help, guix-import-crate): Add "--recursive-dev-dependencies". * tests/crate.scm: Test both #f and #t for #:recursive-dev-dependencies? in the 'cargo-recursive-import' test. (test-root-dependencies): Add intermediate-c as dev-dependency. (test-intermediate-c-crate, test-intermediate-c-dependencies): New variables. Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Change-Id: Iae89794681155d77f128733120e60f03bc297717
gnu: import: Fix memoization in crate-recursive-import. * guix/import/crate.scm (crate-recursive-import): Apply memoize outside the lambda passed to recursive-import in order to actually use the memoization. Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
gnu: linux-libre 5.10: Update to 5.10.206. * gnu/packages/linux.scm (linux-libre-5.10-version): Update to 5.10.206. (linux-libre-5.10-pristine-source, deblob-scripts-5.10): Update hashes. Signed-off-by: Leo Famulari <leo@famulari.name> Change-Id: Id7c119c07c08308150354ffc593ec9bd9c13fa46
gnu: linux-libre 5.15: Update to 5.15.146. * gnu/packages/linux.scm (linux-libre-5.15-version): Update to 5.15.146. (linux-libre-5.15-pristine-source, deblob-scripts-5.15): Update hashes. Signed-off-by: Leo Famulari <leo@famulari.name> Change-Id: Idb7ede0fc8d4bca3edcd267e6d215dfb98ff5c94
gnu: linux-libre 6.1: Update to 6.1.71. * gnu/packages/linux.scm (linux-libre-6.1-version): Update to 6.1.71. (linux-libre-6.1-pristine-source): Update hash. Change-Id: Ifabe9ec0d18d940b10e29f14e00878a89e8767a7 Signed-off-by: Leo Famulari <leo@famulari.name>
gnu: linux-libre 6.6: Update to 6.6.10. * gnu/packages/linux.scm (linux-libre-6.6-version): Update to 6.6.10. (linux-libre-6.6-pristine-source): Update hash. Change-Id: Ie6295d69e1d732436c43e603b63cb1516bf73ace Signed-off-by: Leo Famulari <leo@famulari.name>
services: bitlbee: Use ‘make-inetd-constructor’ unconditionally. This construct was introduced in Shepherd 0.9.0. * gnu/services/messaging.scm (bitlbee-shepherd-service): Use ‘make-inetd-constructor’ unconditionally. Change-Id: Id1b79077d60609c7f95439ee0d097dfe6e66dd2e
home: services: shepherd: Use the 0.10.x interface. * gnu/home/services/shepherd.scm (home-shepherd-configuration-file): Pass ‘register-services’ a list. Call ‘start-in-the-background’ unconditionally. Change-Id: Id7ba005949653a9ac065c47eddb425df4f4792aa
services: shepherd: Use the 0.10.x GOOPS-less interface. * gnu/services/shepherd.scm (%default-modules): Remove (oop goops). (shepherd-service-file): Use (service …) instead of (make <service> …). Use ‘actions’ instead of ‘make-actions’. (scm->go): Remove use of (oop goops). (shepherd-configuration-file): Pass ‘register-services’ a list. Use ‘start-in-the-background’ unconditionally. Change-Id: I0ad1ba32e339c56ee31e59f160b53d3581277d97
system: hurd: Use the Shepherd 0.10.x. * gnu/system.scm (hurd-default-essential-services): Remove reference to ‘shepherd-0.8’. * gnu/system/hurd.scm (%base-packages/hurd): Replace ‘shepherd-0.8’ with ‘shepherd-0.10’. Change-Id: I9f1800693cda456286450d3d0bb6f7e3da85d55e
tests: childhurd: Increase SSH connection timeout. * gnu/tests/virtualization.scm (run-childhurd-test)[run-command-over-ssh]: Pass #:timeout. Change-Id: I44bb3673457275fe3a8ec0af2e364292727f53a8
services: openssh: Add dependency on ‘networking’. * gnu/services/ssh.scm (openssh-shepherd-service): Add ‘networking’ to ‘requirement’. Change-Id: I14c48fe40cce86810a544de6bb7f925bc360653a
gnu: guile-fibers: Apply upstream patch fixing libevent timers. * gnu/packages/patches/guile-fibers-libevent-timeout.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/guile-xyz.scm (guile-fibers)[source]: Use it. Change-Id: I872ffe5b193087234d29eed399d6db518c5af4d5
scripts: system: Build layered images. * guix/scripts/system.scm (show-help, %docker-format-options, %options, %default-options, show-docker-format-options, show-docker-format-options/detailed, process-action): Handle '--max-layers' option. * gnu/system/image.scm (system-docker-image): Same. * gnu/image.scm (<image>)[max-layers]: New record field. Change-Id: I2726655aefd6688b976057fd5a38e9972ebfc292
guix: pack: Build layered images. * guix/scripts/pack.scm (docker-image, guix-pack, %default-options, %docker-format-options, show-docker-format-options/detailed): Handle '--max-layers' option. * doc/guix.texi (Invoking guix pack): Document this. Change-Id: I90660b2421fcdde891f003469fe2e2edaac7da41
guix: docker: Build layered images. * guix/docker.scm (%docker-image-max-layers): New variable. (size-sorted-store-items, create-empty-tar): New procedures. (config, manifest, build-docker-image): Build layered images. Change-Id: I4c8846bff0a3ceccb77e6bdf95d4942e5c3efe41
tests: docker-system: Increase image size. * gnu/tests/docker.scm (run-docker-system-test)[vm]: Increase 'disk-image-size'. Change-Id: If88588d8981efdfdc539460900f1cbb9a663f9cb