diff options
42 files changed, 475 insertions, 299 deletions
diff --git a/CODEOWNERS b/CODEOWNERS index b077b79a6e..d33f5ba043 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -6,6 +6,8 @@ # a good understanding of that area of the codebase and therefore are # usually suited as a reviewer. +gnu/packages/machine-learning\.scm @guix/ai + gnu/packages/audio\.scm @guix/audio gnu/packages/fluidplug\.scm @guix/audio gnu/packages/xiph\.scm @guix/audio @@ -116,6 +118,8 @@ guix/build/gnu-build-system\.scm @guix/core-packages guix/build/utils\.scm @guix/core-packages guix/build-system/gnu\.scm @guix/core-packages +gnu/packages/debian\.scm @guix/debian + \.texi$ @guix/documentation doc/build\.scm @guix/documentation gnu/system/examples/bare-bones\.tmpl @guix/documentation @@ -185,6 +189,12 @@ tests/guix-home\.sh @guix/home tests/home-import\.scm @guix/home tests/home-services\.scm @guix/home +gnu/packages/mpi\.scm @guix/hpc +gnu/packages/rocm\.scm @guix/hpc +gnu/packages/sycl\.scm @guix/hpc +gnu/packages/tbb\.scm @guix/hpc +gnu/packages/vulkan\.scm @guix/hpc + gnu/system/hurd\.scm @guix/hurd gnu/system/images/hurd\.scm @guix/hurd gnu/build/hurd-boot\.scm @guix/hurd diff --git a/etc/teams.scm b/etc/teams.scm index 329e3a6133..362995722c 100755 --- a/etc/teams.scm +++ b/etc/teams.scm @@ -443,6 +443,12 @@ already exists. Lookup team IDs among CURRENT-TEAMS." +(define-team ai + (team 'ai + #:name "Artificial Intelligence" + #:description "Packages related to AI, ML and LLM." + #:scope (list "gnu/packages/machine-learning.scm"))) + (define-team audio (team 'audio #:name "Audio team" @@ -574,6 +580,13 @@ already exists. Lookup team IDs among CURRENT-TEAMS." "guix/build/utils.scm" "guix/build-system/gnu.scm"))) +(define-team debian + (team 'debian + #:name "Debian team" + #:description + "Packages related to Debian and Debian derivatives." + #:scope (list "gnu/packages/debian.scm"))) + (define-team documentation (team 'documentation #:name "Documentation" @@ -683,6 +696,16 @@ the haskell-build-system." "tests/home-import.scm" "tests/home-services.scm"))) +(define-team hpc + (team 'hpc + #:name "Hpc team" + #:description "High performance computing related packages." + #:scope (list "gnu/packages/mpi.scm" + "gnu/packages/rocm.scm" + "gnu/packages/sycl.scm" + "gnu/packages/tbb.scm" + "gnu/packages/vulkan.scm"))) + (define-team hurd (team 'hurd #:name "Team for the Hurd" @@ -1131,7 +1154,7 @@ the \"texlive\" importer." (define-member (person "Vagrant Cascadian" "vagrant@debian.org" "vagrantc") - embedded) + debian embedded) (define-member (person "Vagrant Cascadian" ;XXX: duplicate "vagrant@reproducible-builds.org" @@ -1231,7 +1254,7 @@ the \"texlive\" importer." (define-member (person "Cayetano Santos" "csantosb@inventati.org" "csantosb") - emacs electronics) + ai emacs electronics hpc) (define-member (person "Greg Hogan" "code@greghogan.com" diff --git a/gnu/local.mk b/gnu/local.mk index a0c3803cc5..43caa2ce0b 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1572,6 +1572,7 @@ dist_patch_DATA = \ %D%/packages/patches/guile-fibers-libevent-timeout.patch \ %D%/packages/patches/guile-fix-invalid-unicode-handling.patch \ %D%/packages/patches/guile-gdbm-ffi-support-gdbm-1.14.patch \ + %D%/packages/patches/guile-gi-fix-marshall-tests.patch \ %D%/packages/patches/guile-hurd-posix-spawn.patch \ %D%/packages/patches/guile-lzlib-gcc-14.patch \ %D%/packages/patches/guile-lzlib-hurd64.patch \ diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 237f0e02a8..7ee2048272 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -4642,7 +4642,7 @@ information tool.") (define-public fastfetch (package (name "fastfetch") - (version "2.49.0") + (version "2.50.1") (source (origin (method git-fetch) @@ -4651,7 +4651,7 @@ information tool.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "1mka26ga6jmrimkl93xf97pg8y1k3b41vsb3ds61wi6n257daprk")) + (base32 "13640kljz19lm73ndqzzf2qljpw1d096l54djp9yqzspqjq2x0h5")) (modules '((guix build utils))) (snippet '(begin (delete-file-recursively "src/3rdparty"))))) @@ -4669,7 +4669,15 @@ information tool.") "/share/hwdata/pci.ids") (string-append "-DCUSTOM_AMDGPU_IDS_PATH=" #$(this-package-input "libdrm") - "/share/libdrm/amdgpu.ids")))) + "/share/libdrm/amdgpu.ids")) + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-yyjson + (lambda _ + ;; workaround for https://github.com/fastfetch-cli/fastfetch/pull/1904 + (substitute* "src/util/FFstrbuf.h" + (("\"3rdparty/yyjson/yyjson.h\"") + "<yyjson.h>"))))))) (inputs (list dbus glib hwdata diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm index 0960b567a5..0c63e302cb 100644 --- a/gnu/packages/astronomy.scm +++ b/gnu/packages/astronomy.scm @@ -43,7 +43,7 @@ #:use-module (gnu packages boost) #:use-module (gnu packages build-tools) #:use-module (gnu packages c) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages check) #:use-module (gnu packages cmake) #:use-module (gnu packages compression) diff --git a/gnu/packages/benchmark.scm b/gnu/packages/benchmark.scm index 07de4cae64..c20722245f 100644 --- a/gnu/packages/benchmark.scm +++ b/gnu/packages/benchmark.scm @@ -47,7 +47,7 @@ #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages c) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages databases) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 55087ed54a..e68c801866 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -137,6 +137,7 @@ #:use-module (gnu packages mpi) #:use-module (gnu packages ncurses) #:use-module (gnu packages node) + #:use-module (gnu packages nss) #:use-module (gnu packages ocaml) #:use-module (gnu packages pcre) #:use-module (gnu packages package-management) diff --git a/gnu/packages/bittorrent.scm b/gnu/packages/bittorrent.scm index ac8e496201..c2d2fe0ff2 100644 --- a/gnu/packages/bittorrent.scm +++ b/gnu/packages/bittorrent.scm @@ -59,7 +59,7 @@ #:use-module (gnu packages autotools) #:use-module (gnu packages bash) #:use-module (gnu packages boost) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages check) #:use-module (gnu packages cmake) #:use-module (gnu packages compression) diff --git a/gnu/packages/certs.scm b/gnu/packages/certs.scm index e2de6b168b..aed87ea144 100644 --- a/gnu/packages/certs.scm +++ b/gnu/packages/certs.scm @@ -1,13 +1,8 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2015 Andreas Enge <andreas@enge.fr> -;;; Copyright © 2015 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2016-2017, 2021-2022 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2017 Leo Famulari <leo@famulari.name> -;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com> -;;; Copyright © 2021 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name> -;;; Copyright © 2024 Zheng Junjie <873216071@qq.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -26,7 +21,6 @@ (define-module (gnu packages certs) #:use-module ((guix licenses) #:prefix license:) - #:use-module ((guix search-paths) #:select ($SSL_CERT_DIR $SSL_CERT_FILE)) #:use-module (guix packages) #:use-module (guix utils) #:use-module (guix download) @@ -36,11 +30,51 @@ #:use-module (guix build-system gnu) #:use-module (guix build-system trivial) #:use-module (gnu packages) + #:use-module (gnu packages nss) #:use-module (gnu packages curl) #:use-module (gnu packages python) #:use-module (gnu packages perl) #:use-module (gnu packages tls)) +(define-public certdata2pem + (let ((revision "1") + (commit "4c576f350f44186d439179f63d5be19f710a73f5")) + (package + (name "certdata2pem") + (version "0.0.0") ;no version + (source (origin + (method url-fetch) + (uri (string-append + "https://raw.githubusercontent.com/sabotage-linux/sabotage/" + commit "/KEEP/certdata2pem.c")) + (sha256 + (base32 + "1rywp29q4l1cs2baplkbcravxqs4kw2cys4yifhfznbc210pskq6")))) + (build-system gnu-build-system) + (arguments + `(#:phases (modify-phases %standard-phases + (delete 'configure) + (add-before 'build 'fix-extension + (lambda _ + (substitute* "certdata2pem.c" + (("\\.crt") + ".pem")))) + (replace 'build + (lambda _ + (invoke ,(cc-for-target) "certdata2pem.c" + "-o" "certdata2pem"))) + (delete 'check) ;no test suite + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (install-file "certdata2pem" + (string-append out "/bin")))))))) + (home-page "https://github.com/sabotage-linux/") + (synopsis "Utility to split TLS certificates data into multiple PEM files") + (description "This is a C version of the certdata2pem Python utility +that was originally contributed to Debian.") + (license license:isc)))) + (define-public desec-certbot-hook (let ((commit "68da7abc0793602fd336962a7e2348b57c5d6fd6") (revision "0")) @@ -88,151 +122,6 @@ port forwarding to your local machine.") (home-page "https://desec.io") (license license:expat)))) -(define-public certdata2pem - (let ((revision "1") - (commit "4c576f350f44186d439179f63d5be19f710a73f5")) - (package - (name "certdata2pem") - (version "0.0.0") ;no version - (source (origin - (method url-fetch) - (uri (string-append - "https://raw.githubusercontent.com/sabotage-linux/sabotage/" - commit "/KEEP/certdata2pem.c")) - (sha256 - (base32 - "1rywp29q4l1cs2baplkbcravxqs4kw2cys4yifhfznbc210pskq6")))) - (build-system gnu-build-system) - (arguments - `(#:phases (modify-phases %standard-phases - (delete 'configure) - (add-before 'build 'fix-extension - (lambda _ - (substitute* "certdata2pem.c" - (("\\.crt") - ".pem")))) - (replace 'build - (lambda _ - (invoke ,(cc-for-target) "certdata2pem.c" - "-o" "certdata2pem"))) - (delete 'check) ;no test suite - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (install-file "certdata2pem" - (string-append out "/bin")))))))) - (home-page "https://github.com/sabotage-linux/") - (synopsis "Utility to split TLS certificates data into multiple PEM files") - (description "This is a C version of the certdata2pem Python utility -that was originally contributed to Debian.") - (license license:isc)))) - -(define-public nss-certs - (package - (name "nss-certs") - ;; FIXME We used to refer to the nss package here, but that eventually caused - ;; module cycles. The below is a quick copy-paste job that must be kept in - ;; sync manually. Surely there's a better way…? - (version "3.99") - (source (origin - (method url-fetch) - (uri (let ((version-with-underscores - (string-join (string-split version #\.) "_"))) - (string-append - "https://ftp.mozilla.org/pub/mozilla.org/security/nss/" - "releases/NSS_" version-with-underscores "_RTM/src/" - "nss-" version ".tar.gz"))) - (sha256 - (base32 - "1g89ig40gfi1sp02gybvl2z818lawcnrqjzsws36cdva834c5maw")) - ;; Create nss.pc and nss-config. - (patches (search-patches "nss-3.56-pkgconfig.patch" - "nss-getcwd-nonnull.patch" - "nss-increase-test-timeout.patch")) - (modules '((guix build utils))) - (snippet - '(begin - ;; Delete the bundled copy of these libraries. - (delete-file-recursively "nss/lib/zlib") - (delete-file-recursively "nss/lib/sqlite"))))) - (build-system gnu-build-system) - (outputs '("out")) - (native-inputs - (list certdata2pem openssl)) - (inputs '()) - (propagated-inputs '()) - (arguments - (list #:modules '((guix build gnu-build-system) - (guix build utils) - (rnrs io ports) - (srfi srfi-26)) - #:phases - #~(modify-phases - (map (cut assq <> %standard-phases) - '(set-paths install-locale unpack)) - (add-after 'unpack 'install - (lambda _ - (let ((certsdir (string-append #$output - "/etc/ssl/certs/"))) - (with-directory-excursion "nss/lib/ckfw/builtins/" - (unless (file-exists? "blacklist.txt") - (call-with-output-file "blacklist.txt" (const #t))) - ;; Extract selected single certificates from blob. - (invoke "certdata2pem") - ;; Copy .pem files into the output. - (for-each (cut install-file <> certsdir) - (find-files "." ".*\\.pem$"))) - (invoke "openssl" "rehash" certsdir))))))) - (synopsis "CA certificates from Mozilla") - (description - "This package provides certificates for Certification Authorities (CA) -taken from the NSS package and thus ultimately from the Mozilla project.") - (home-page "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS") - (license license:mpl2.0))) - -(define-public nss-certs-for-test - (hidden-package - (package - (inherit nss-certs) - (name "nss-certs-for-test") - (source #f) - (build-system trivial-build-system) - (native-inputs (list nss-certs)) - (inputs '()) - (propagated-inputs '()) - (arguments - (list #:modules '((guix build utils) - (rnrs io ports) - (srfi srfi-26)) - #:builder - #~(begin - (use-modules (guix build utils) - (rnrs io ports) - (srfi srfi-26)) - (define certs-dir (string-append #$output "/etc/ssl/certs/")) - (define ca-files - (find-files (string-append #+(this-package-native-input - "nss-certs") - "/etc/ssl/certs") - (lambda (file stat) - (string-suffix? ".pem" file)))) - (define (concatenate-files files result) - "Make RESULT the concatenation of all of FILES." - (define (dump file port) - (display (call-with-input-file file get-string-all) port) - (newline port)) - (call-with-output-file result - (lambda (port) - (for-each (cut dump <> port) files)))) - - (mkdir-p certs-dir) - (concatenate-files - ca-files (string-append certs-dir "/ca-certificates.crt")) - (for-each (cut install-file <> certs-dir) ca-files)))) - (native-search-paths - (list $SSL_CERT_DIR - $SSL_CERT_FILE))))) - (define-public le-certs (package (name "le-certs") diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 9272c1dfc1..247b8a9dd4 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -83,7 +83,7 @@ #:use-module (gnu packages crates-check) #:use-module (gnu packages crates-graphics) #:use-module (gnu packages crates-io) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages cmake) #:use-module (gnu packages compression) #:use-module (gnu packages cpp) diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 9c4496878d..3132833ecc 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -84,7 +84,7 @@ #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages c) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages cmake) #:use-module (gnu packages compression) #:use-module (gnu packages cpp) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 00fa390886..d9859069cc 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -92,7 +92,7 @@ #:use-module (gnu packages bash) #:use-module (gnu packages bison) #:use-module (gnu packages boost) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages check) #:use-module (gnu packages cmake) #:use-module (gnu packages compression) diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm index a1767a3ea5..ce14309e5c 100644 --- a/gnu/packages/disk.scm +++ b/gnu/packages/disk.scm @@ -74,7 +74,7 @@ #:use-module (gnu packages bash) #:use-module (gnu packages build-tools) #:use-module (gnu packages c) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages crypto) diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm index a1095a7fba..be73ca3a87 100644 --- a/gnu/packages/geo.scm +++ b/gnu/packages/geo.scm @@ -78,7 +78,7 @@ #:use-module (gnu packages build-tools) #:use-module (gnu packages busybox) #:use-module (gnu packages c) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages check) #:use-module (gnu packages cmake) #:use-module (gnu packages compression) diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm index 11eed6dba5..32227b4af8 100644 --- a/gnu/packages/guile-xyz.scm +++ b/gnu/packages/guile-xyz.scm @@ -4476,37 +4476,40 @@ list of components. This module takes care of that for you.") (license license:lgpl3+))) (define-public guile-gi + (let ((commit "388653ac9e95802d1a69c585aef1d60e35e6b71c") + (revision "0")) (package (name "guile-gi") - (version "0.3.2") + (version (git-version "0.3.2" revision commit)) (source (origin - (method url-fetch) - (uri (string-append "http://lonelycactus.com/tarball/guile_gi-" - version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/spk121/guile-gi.git") + (commit commit))) + (file-name (git-file-name name version)) (sha256 (base32 - "019mbhgyga57k2074kg97mh3qsa8ny9l0kjgqids8cg3c6vbjdby")))) + "1ndzqbgy5jbfm2fan6y31xfxdxglzjhgqib4c34b3w5inxzkrm6v")) + (patches (search-patches "guile-gi-fix-marshall-tests.patch")))) (build-system glib-or-gtk-build-system) (arguments `(#:configure-flags '("CFLAGS=-Wno-error=incompatible-pointer-types" - "--with-gnu-filesystem-hierarchy") + "--with-gnu-filesystem-hierarchy" + "--enable-hardening") #:modules ((guix build glib-or-gtk-build-system) (guix build utils) (ice-9 popen) (ice-9 rdelim)) - #:disallowed-references ,(list gtk+ webkitgtk-for-gtk3) + #:disallowed-references ,(list grilo gtk+) #:phases (modify-phases %standard-phases - (add-after 'unpack 'remove-dotted-circle-from-combining-character - ;; The test/string.scm files contain ◌̀, which is a dotted circle - ;; (U+25cc) followed by an upper combining character (U+0300). The - ;; old guile 3.0.2 reader incorrectly ignores the dotted circle, - ;; and parses it as the combining character alone, but the new - ;; guile reader does not. - ;; See https://github.com/spk121/guile-gi/issues/112 - (lambda* _ - (substitute* "test/string.scm" - (("#\\\\◌̀") "#\\x0300")))) + (add-after 'unpack 'disable-failing-tests + (lambda _ + (substitute* "test/value.scm" + ;; This test segfaults sometimes. Reported at + ;; <https://github.com/spk121/guile-gi/issues/143>. + (("\\(test-equal \"inout-closure\"") + "#;(test-equal \"inout-closure\"")))) (add-after 'unpack 'patch-references-to-extension (lambda* (#:key outputs #:allow-other-keys) (let ((effective (read-line @@ -4534,20 +4537,25 @@ list of components. This module takes care of that for you.") (setenv "DISPLAY" ":1") #t))))) (native-inputs - (list gettext-minimal + (list autoconf + automake + texinfo + gettext-minimal `(,glib "bin") ; for glib-compile-resources - libtool pkg-config xorg-server)) + grilo + gtk+ + libtool + pkg-config + xorg-server-for-tests)) (propagated-inputs (list gobject-introspection)) - (inputs (list guile-3.0 glib - ;; For tests, only relevant when compiling natively - gtk+ webkitgtk-for-gtk3)) + (inputs (list guile-3.0 glib)) (home-page "https://github.com/spk121/guile-gi") (synopsis "GObject bindings for Guile") (description "Guile-GI is a library for Guile that allows using GObject-based libraries, such as GTK+3. Its README comes with the disclaimer: This is pre-alpha code.") - (license license:gpl3+))) + (license license:gpl3+)))) (define-public guile2.2-gi (package diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 885f8ea8c4..7da4cce23e 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -58,7 +58,7 @@ #:use-module (gnu packages autotools) #:use-module (gnu packages base) #:use-module (gnu packages bash) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages cpio) #:use-module (gnu packages cups) #:use-module (gnu packages compression) diff --git a/gnu/packages/kde-plasma.scm b/gnu/packages/kde-plasma.scm index 8c6e858ccf..25657fc021 100644 --- a/gnu/packages/kde-plasma.scm +++ b/gnu/packages/kde-plasma.scm @@ -921,6 +921,82 @@ computer's hardware.") (home-page "https://invent.kde.org/plasma/kmenuedit") (license license:gpl2+))) +(define-public koi + (package + (name "koi") + (version "0.5.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/baduhai/Koi") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1z3j3lcfqkwck4i4srpcanjyb2cmizd702f6s5lhfhrmmsbccwkx")))) + (build-system qt-build-system) + (inputs (list kconfig + kcoreaddons + kconfigwidgets + kdbusaddons + kde-cli-tools + kvantum + plasma-workspace)) + (arguments + (list + #:modules '((ice-9 ftw) + (guix build qt-build-system) + (guix build utils)) + #:tests? #f + #:qtbase qtbase + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-hardcoded-paths + (lambda* (#:key inputs #:allow-other-keys) + ;; Correct theme search paths. This won't be needed if the + ;; following request is implemented: + ;; https://github.com/baduhai/Koi/issues/123 + (ftw "." + (lambda (file _ flag) + (when (and (eq? flag 'regular) + (or (string-suffix? ".c" file) + (string-suffix? ".cpp" file))) + (substitute* file + (("/var/run/current-system/sw") + "/run/current-system/profile"))))) + ;; Correct executable paths. + (substitute* "src/utils.cpp" + (("/usr/bin/kquitapp6") + (search-input-file inputs "bin/kquitapp6")) + (("/usr/bin/kstart") + (search-input-file inputs "bin/kstart"))) + (substitute* "src/plugins/plasmastyle.cpp" + (("/usr/bin/plasma-apply-desktoptheme") + (search-input-file inputs "bin/plasma-apply-desktoptheme"))) + (substitute* "src/plugins/kvantumstyle.cpp" + (("/usr/bin/kvantummanager") + (search-input-file inputs "bin/kvantummanager"))) + (substitute* "src/plugins/colorscheme.cpp" + (("programToLocate = \\{\"plasma-apply-colorscheme\"\\}") + (string-append "programToLocate = {\"" + (search-input-file inputs + "bin/plasma-apply-colorscheme") "\"}"))) + (substitute* "src/plugins/icons.cpp" + (("programToLocate = \\{\"plasma-changeicons\"\\}") + (string-append "programToLocate = {\"" + (search-input-file inputs + "libexec/plasma-changeicons") "\"}"))) + (substitute* "src/plugins/script.cpp" + (("programToLocate = \\{\"bash\"\\}") + (string-append "programToLocate = {\"" + (search-input-file inputs "bin/bash") "\"}")))))))) + (home-page "https://github.com/baduhai/Koi") + (synopsis "Theme scheduling for the KDE Plasma Desktop") + (description + "Koi is a program designed to provide the KDE Plasma Desktop functionality +to automatically switch between light and dark themes.") + (license license:lgpl3))) + (define-public kongress (package (name "kongress") diff --git a/gnu/packages/librewolf.scm b/gnu/packages/librewolf.scm index 271e732054..661c96276b 100644 --- a/gnu/packages/librewolf.scm +++ b/gnu/packages/librewolf.scm @@ -644,7 +644,7 @@ libxt mesa mit-krb5 - nspr-4.36 + nspr nss-rapid pango pciutils diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index dedc4b1665..23a6964ef9 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -2580,38 +2580,35 @@ graphics card on Optimus laptops.") (license license:gpl2)))) (define-public bin-graph - ;; XXX: The upstream does not have tags yet. - (let ((commit "1dd42e3e8e123e993d6c287967502c8d4b36f9ba") - (revision "0")) - (package - (name "bin-graph") - (version (git-version "0.0.0" revision commit)) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/8dcc/bin-graph") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 "1wjkl789r7iys3nnyk813gsdxwwy2ryxgxirx5xw02lzk790dywl")))) - (arguments - (list #:tests? #f ; no tests - #:make-flags - #~(list (string-append "CC=" #$(cc-for-target)) - (string-append "PREFIX=" #$output) - (string-append "INSTALL_DIR=" #$output "/bin")) - #:phases - #~(modify-phases %standard-phases - (delete 'configure)))) ; no configure script - (build-system gnu-build-system) - (inputs (list libpng)) - (home-page "https://github.com/8dcc/bin-graph") - (synopsis "Visualize binary files") - (description - "@code{bin-graph} provides a simple way of visualizing the different regions + (package + (name "bin-graph") + (version "1.0.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/8dcc/bin-graph") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "18m71kn7f4mn7k8hxx8mr1zl35a9ri06a3p1y2mncbgr8nn3pgb0")))) + (arguments + (list #:tests? #f ; no tests + #:make-flags + #~(list (string-append "CC=" #$(cc-for-target)) + (string-append "PREFIX=" #$output) + (string-append "INSTALL_DIR=" #$output "/bin")) + #:phases + #~(modify-phases %standard-phases + (delete 'configure)))) ; no configure script + (build-system gnu-build-system) + (inputs (list libpng)) + (home-page "https://github.com/8dcc/bin-graph") + (synopsis "Visualize binary files") + (description + "@code{bin-graph} provides a simple way of visualizing the different regions of a binary file.") - (license license:gpl3)))) + (license license:gpl3))) (define-public ddcci-driver-linux (let ((revision "0") diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index e6bc71710b..1c8d0e7db4 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -1895,7 +1895,17 @@ MailCore 2.") "09b89wg63hg502hsz592cd2h87wdprb1dq1k1y07n89hym2q56d6")))) (build-system gnu-build-system) (arguments - `(#:tests? #f)) + (list + #:tests? #f + #:configure-flags + #~(list "CFLAGS=-g -O2 -DSTDC_HEADERS") + #:phases + #~(modify-phases %standard-phases + (add-before 'configure 'fix-includes + (lambda _ + (substitute* "config.h" + (("#include <stdlib.h>" all) + (string-append all "\n#include <unistd.h>")))))))) (synopsis "Portrait image compressor") (description "This package takes your 48x48x1 portrait image and compresses it.") diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index cda2ea5cb8..299ee0d55c 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -77,7 +77,7 @@ #:use-module (gnu packages cmake) #:use-module (gnu packages boost) #:use-module (gnu packages check) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages code) #:use-module (gnu packages compression) #:use-module (gnu packages cpp) diff --git a/gnu/packages/mold.scm b/gnu/packages/mold.scm index 5650b075b4..113433f490 100644 --- a/gnu/packages/mold.scm +++ b/gnu/packages/mold.scm @@ -36,7 +36,7 @@ (define-public mold (package (name "mold") - (version "2.40.3") + (version "2.40.4") (source (origin (method git-fetch) @@ -45,7 +45,7 @@ (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0a19k2y56j7i1iw1hxnmwz1x53lf6v9gc8cda5sj7838xnyslkyc")) + (base32 "05prkdr3v8wb8l99qrri9r27yar5yl8aiv1ns41b556ckdjdw8q6")) (modules '((guix build utils))) (snippet #~(begin diff --git a/gnu/packages/nim.scm b/gnu/packages/nim.scm index 048e6358b9..eab2e80964 100644 --- a/gnu/packages/nim.scm +++ b/gnu/packages/nim.scm @@ -31,7 +31,7 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (gnu packages bdw-gc) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages parallel) #:use-module (gnu packages pcre) #:use-module (gnu packages sqlite) diff --git a/gnu/packages/nss.scm b/gnu/packages/nss.scm index 2f1ca45df9..13dffa4966 100644 --- a/gnu/packages/nss.scm +++ b/gnu/packages/nss.scm @@ -1,12 +1,13 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013-2019, 2023 Ludovic Courtès <ludo@gnu.org> -;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2021 Mark H Weaver <mhw@netris.org> +;;; Copyright © 2014-2021 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2016-2019, 2021-2024 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2020, 2021 Marius Bakke <marius@gnu.org> ;;; Copyright © 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de> -;;; Copyright © 2021, 2022, 2023, 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; Copyright © 2021-2025 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be> +;;; Copyright © 2024 Zheng Junjie <873216071@qq.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -25,6 +26,7 @@ (define-module (gnu packages nss) #:use-module (guix packages) + #:use-module ((guix search-paths) #:select ($SSL_CERT_DIR $SSL_CERT_FILE)) #:use-module (guix utils) #:use-module (guix gexp) #:use-module (guix download) @@ -32,22 +34,27 @@ #:use-module (guix build-system cargo) #:use-module (guix build-system gnu) #:use-module (guix build-system mozilla) + #:use-module (guix build-system trivial) #:use-module ((guix licenses) #:prefix license:) #:use-module (gnu packages) #:use-module (gnu packages base) #:use-module (gnu packages bash) + #:use-module (gnu packages certs) #:use-module (gnu packages check) #:use-module (gnu packages crates-check) #:use-module (gnu packages crates-io) #:use-module (gnu packages compression) #:use-module (gnu packages perl) #:use-module (gnu packages sqlite) - #:use-module (gnu packages time)) + #:use-module (gnu packages time) + #:use-module (gnu packages tls) + #:use-module (srfi srfi-1) + #:use-module (srfi srfi-26)) (define-public nspr (package (name "nspr") - (version "4.35") + (version "4.36") (source (origin (method url-fetch) (uri (string-append @@ -55,7 +62,7 @@ version "/src/nspr-" version ".tar.gz")) (sha256 (base32 - "13xwda56yhp1w7v02qvlxvlqiniw8kr4g3fxlljmv6wnlmz2k8vy")))) + "15b83ipjxrmw0909l5qqz13pbarhp50d6i58vgjx4720y4bw7pjm")))) (build-system gnu-build-system) (inputs (list perl ;for 'compile-et.pl' @@ -95,32 +102,6 @@ platform-neutral API for system level and libc-like functions. It is used in the Mozilla clients.") (license license:mpl2.0))) -(define-public nspr-4.36 - (package - (inherit nspr) - (version "4.36") - (source (origin - (method url-fetch) - (uri (string-append - "https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v" - version "/src/nspr-" version ".tar.gz")) - (sha256 - (base32 - "15b83ipjxrmw0909l5qqz13pbarhp50d6i58vgjx4720y4bw7pjm")))))) - -(define-public nspr-4.32 - (package - (inherit nspr) - (version "4.32") - (source (origin - (method url-fetch) - (uri (string-append - "https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v" - version "/src/nspr-" version ".tar.gz")) - (sha256 - (base32 - "0v3zds1id71j5a5si42a658fjz8nv2f6zp6w4gqrqmdr6ksz8sxv")))))) - ;; nss should track ESRs, but currently doesn't. 3.102.1 is the current ESR. (define-public nss @@ -129,7 +110,7 @@ in the Mozilla clients.") ;; IMPORTANT: Also update and test the nss-certs package, which duplicates ;; version and source to avoid a top-level variable reference & module ;; cycle. - (version "3.99") + (version "3.101.4") (source (origin (method url-fetch) (uri (let ((version-with-underscores @@ -140,11 +121,12 @@ in the Mozilla clients.") "nss-" version ".tar.gz"))) (sha256 (base32 - "1g89ig40gfi1sp02gybvl2z818lawcnrqjzsws36cdva834c5maw")) + "1sqvh49qi9vq55sbg42c5n0kz6w6ni383hgiyhaym6drsmbzb86a")) ;; Create nss.pc and nss-config. (patches (search-patches "nss-3.56-pkgconfig.patch" "nss-getcwd-nonnull.patch" - "nss-increase-test-timeout.patch")) + "nss-increase-test-timeout.patch" + "nss-disable-broken-tests.patch")) (modules '((guix build utils))) (snippet '(begin @@ -152,7 +134,7 @@ in the Mozilla clients.") (delete-file-recursively "nss/lib/zlib") (delete-file-recursively "nss/lib/sqlite"))))) (build-system gnu-build-system) - (outputs '("out" "bin")) + (outputs '("out" "bin" "static")) ;11 MiB of static archives (arguments (list #:make-flags @@ -197,6 +179,13 @@ in the Mozilla clients.") (target-ppc32?))) #:phases #~(modify-phases %standard-phases + ;; The "PayPalEE.cert" certificate expires every six months, leading + ;; to test failures: + ;; <https://bugzilla.mozilla.org/show_bug.cgi?id=609734>. To work + ;; around that, set the time to roughly the release date. + (add-after 'unpack 'set-release-date + (lambda _ + (setenv "GUIX_NSS_RELEASE_DATE" "2025-02-05"))) (replace 'configure (lambda _ (setenv "CC" #$(cc-for-target)) @@ -237,34 +226,40 @@ in the Mozilla clients.") (("SOURCE_DIR=.*") (string-append "SOURCE_DIR=" (getcwd) "/nss\n"))))) - ;; The "PayPalEE.cert" certificate expires every six months, - ;; leading to test failures: - ;; <https://bugzilla.mozilla.org/show_bug.cgi?id=609734>. To - ;; work around that, set the time to roughly the release date. - (invoke #$(if (target-64bit?) "faketime" "datefudge") - "2024-01-23" "./nss/tests/all.sh")) + + (let ((release-date (getenv "GUIX_NSS_RELEASE_DATE"))) + (when (string=? "" release-date) + (raise-exception "`GUIX_NSS_RELEASE_DATE' unset")) + (invoke #$(if (target-64bit?) "faketime" "datefudge") + release-date "./nss/tests/all.sh"))) (format #t "test suite not run~%")))) (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append (assoc-ref outputs "bin") "/bin")) - (inc (string-append out "/include/nss")) - (lib (string-append out "/lib/nss")) + (lambda _ + (let* ((inc (string-append #$output "/include/nss")) + (lib (string-append #$output "/lib/nss")) (obj (match (scandir "dist" (cut string-suffix? "OBJ" <>)) ((obj) (string-append "dist/" obj))))) ;; Install nss-config to $out/bin. (install-file (string-append obj "/bin/nss-config") - (string-append out "/bin")) + (string-append #$output "/bin")) (delete-file (string-append obj "/bin/nss-config")) ;; Install nss.pc to $out/lib/pkgconfig. (install-file (string-append obj "/lib/pkgconfig/nss.pc") - (string-append out "/lib/pkgconfig")) + (string-append #$output "/lib/pkgconfig")) (delete-file (string-append obj "/lib/pkgconfig/nss.pc")) (rmdir (string-append obj "/lib/pkgconfig")) ;; Install other files. (copy-recursively "dist/public/nss" inc) - (copy-recursively (string-append obj "/bin") bin) - (copy-recursively (string-append obj "/lib") lib))))))) + (copy-recursively (string-append obj "/bin") #$output:bin) + (copy-recursively (string-append obj "/lib") lib)))) + (add-after 'install 'move-static-archives + (lambda _ + (with-directory-excursion #$output + (for-each (lambda (f) + (install-file f + (string-append #$output:static + "/" (dirname f)))) + (find-files "." "\\.a$")))))))) (inputs (list sqlite zlib)) (propagated-inputs (list nspr)) ;required by nss.pc. (native-inputs (list perl ;for tests @@ -276,13 +271,15 @@ in the Mozilla clients.") (properties '((timeout . 216000))) ;60 hours (home-page "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS") - (synopsis "Network Security Services") + (synopsis "Network Security Services (ESR)") (description "Network Security Services (@dfn{NSS}) is a set of libraries designed to support cross-platform development of security-enabled client and server applications. Applications built with NSS can support SSL v2 and v3, TLS, PKCS #5, PKCS #7, PKCS #11, PKCS #12, S/MIME, X.509 v3 certificates, and other -security standards.") +security standards. + +This package tracks the Extended Support Release (ESR) channel.") (license license:mpl2.0))) ;; nss-rapid tracks the rapid release channel. Unless your package requires a @@ -307,7 +304,10 @@ security standards.") "nss-" version ".tar.gz"))) (sha256 (base32 - "03qwl3ps3xgc9pkc07qrsa4vd2r57mjwicv3gb483gfk2ashdvxc")))) + "03qwl3ps3xgc9pkc07qrsa4vd2r57mjwicv3gb483gfk2ashdvxc")) + (patches + (remove (cut string-suffix? <> "nss-disable-broken-tests.patch") + (origin-patches (package-source nss)))))) (arguments (substitute-keyword-arguments (package-arguments nss) ((#:phases phases) @@ -350,9 +350,6 @@ security standards.") (invoke #$(if (target-64bit?) "faketime" "datefudge") "2025-06-19" "./nss/tests/all.sh")) (format #t "test suite not run~%")))))))) - (propagated-inputs - (modify-inputs (package-propagated-inputs nss) - (replace "nspr" nspr-4.36))) (synopsis "Network Security Services (Rapid Release)") (description "Network Security Services (@dfn{NSS}) is a set of libraries designed to @@ -363,6 +360,88 @@ security standards. This package tracks the Rapid Release channel, which updates frequently."))) +(define-public nss-certs + (package + (inherit nss) + (name "nss-certs") + (build-system gnu-build-system) + (outputs '("out")) + (native-inputs + (list certdata2pem openssl)) + (inputs '()) + (propagated-inputs '()) + (arguments + (list #:modules '((guix build gnu-build-system) + (guix build utils) + (rnrs io ports) + (srfi srfi-26)) + #:phases + #~(modify-phases + (map (cut assq <> %standard-phases) + '(set-paths install-locale unpack)) + (add-after 'unpack 'install + (lambda _ + (let ((certsdir (string-append #$output + "/etc/ssl/certs/"))) + (with-directory-excursion "nss/lib/ckfw/builtins/" + (unless (file-exists? "blacklist.txt") + (call-with-output-file "blacklist.txt" (const #t))) + ;; Extract selected single certificates from blob. + (invoke "certdata2pem") + ;; Copy .pem files into the output. + (for-each (cut install-file <> certsdir) + (find-files "." ".*\\.pem$"))) + (invoke "openssl" "rehash" certsdir))))))) + (synopsis "CA certificates from Mozilla") + (description + "This package provides certificates for Certification Authorities (CA) +taken from the NSS package and thus ultimately from the Mozilla project.") + (home-page "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS") + (license license:mpl2.0))) + +(define-public nss-certs-for-test + (hidden-package + (package + (inherit nss-certs) + (name "nss-certs-for-test") + (source #f) + (build-system trivial-build-system) + (native-inputs (list nss-certs)) + (inputs '()) + (propagated-inputs '()) + (arguments + (list #:modules '((guix build utils) + (rnrs io ports) + (srfi srfi-26)) + #:builder + #~(begin + (use-modules (guix build utils) + (rnrs io ports) + (srfi srfi-26)) + (define certs-dir (string-append #$output "/etc/ssl/certs/")) + (define ca-files + (find-files (string-append #+(this-package-native-input + "nss-certs") + "/etc/ssl/certs") + (lambda (file stat) + (string-suffix? ".pem" file)))) + (define (concatenate-files files result) + "Make RESULT the concatenation of all of FILES." + (define (dump file port) + (display (call-with-input-file file get-string-all) port) + (newline port)) + (call-with-output-file result + (lambda (port) + (for-each (cut dump <> port) files)))) + + (mkdir-p certs-dir) + (concatenate-files + ca-files (string-append certs-dir "/ca-certificates.crt")) + (for-each (cut install-file <> certs-dir) ca-files)))) + (native-search-paths + (list $SSL_CERT_DIR + $SSL_CERT_FILE))))) + (define-public nsncd (package (name "nsncd") diff --git a/gnu/packages/patches/guile-gi-fix-marshall-tests.patch b/gnu/packages/patches/guile-gi-fix-marshall-tests.patch new file mode 100644 index 0000000000..dc2bd2607b --- /dev/null +++ b/gnu/packages/patches/guile-gi-fix-marshall-tests.patch @@ -0,0 +1,27 @@ +From 776c456dc767a261e026865ab5c3a76fe68ff4a2 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?No=C3=A9=20Lopez?= <noelopez@free.fr> +Date: Tue, 12 Aug 2025 12:30:31 +0200 +Subject: [PATCH] Fix marshall tests + +See <https://github.com/spk121/guile-gi/pull/142>. + +--- + test/marshall.scm | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/test/marshall.scm b/test/marshall.scm +index e15b3ee..fd826de 100644 +--- a/test/marshall.scm ++++ b/test/marshall.scm +@@ -23,7 +23,7 @@ + (("Marshall" "1.0") + #:renamer (protect* '(sizeof short int long size_t))) + (("GLib" "2.0") +- #:renamer (protect* '(test-equal test-assert test-skip)))) ++ #:renamer (protect* '(test-equal test-assert test-skip int)))) + + (define-syntax-rule (boolarray-input f) + (test-assert (symbol->string (quote f)) +-- +2.50.1 + diff --git a/gnu/packages/patches/nss-disable-broken-tests.patch b/gnu/packages/patches/nss-disable-broken-tests.patch new file mode 100644 index 0000000000..8d6e101471 --- /dev/null +++ b/gnu/packages/patches/nss-disable-broken-tests.patch @@ -0,0 +1,33 @@ +These tests are broken in 3.101.3. + +See https://bugzilla.mozilla.org/show_bug.cgi?id=1964304 + +--- nss-3.101.3/nss/tests/tools/tools.sh 1969-12-31 16:00:01.000000000 -0800 ++++ nss-3.101.3/nss/tests/tools/tools.sh 2025-05-05 16:36:47.835447542 -0700 +@@ -540,26 +540,6 @@ + ret=$? + html_msg $ret 0 "Importing private key pbmac1 hmac-sha-512 from PKCS#12 file" + check_tmpfile +- +- echo "${BINDIR}/pk12util -l ${TOOLSDIR}/data/pbmac1-invalid-bad-iter.p12 -d ${P_R_COPYDIR} -k ${R_PWFILE} -W '1234'" +- ${BINDIR}/pk12util -l ${TOOLSDIR}/data/pbmac1-invalid-bad-iter.p12 -d ${P_R_COPYDIR} -k ${R_PWFILE} -W '1234' 2>&1 +- ret=$? +- html_msg $ret 19 "Fail to list private key with bad iterator" +- check_tmpfile +- +- echo "${BINDIR}/pk12util -l ${TOOLSDIR}/data/pbmac1-invalid-bad-salt.p12 -d ${P_R_COPYDIR} -k ${R_PWFILE} -W '1234'" +- ${BINDIR}/pk12util -l ${TOOLSDIR}/data/pbmac1-invalid-bad-salt.p12 -d ${P_R_COPYDIR} -k ${R_PWFILE} -W '1234' 2>&1 +- ret=$? +- echo "Fail to list private key with bad salt val=$ret" +- html_msg $ret 19 "Fail to import private key with bad salt" +- check_tmpfile +- +- echo "${BINDIR}/pk12util -l ${TOOLSDIR}/data/pbmac1-invalid-no-length.p12 -d ${P_R_COPYDIR} -k ${R_PWFILE} -W '1234'" +- ${BINDIR}/pk12util -l ${TOOLSDIR}/data/pbmac1-invalid-no-length.p12 -d ${P_R_COPYDIR} -k ${R_PWFILE} -W '1234' 2>&1 +- ret=$? +- echo "Fail to import private key with no length val=$ret" +- html_msg $ret 19 "Fail to import private key with no length" +- check_tmpfile + } + + ############################## tools_p12 ###############################
\ No newline at end of file diff --git a/gnu/packages/pypy.scm b/gnu/packages/pypy.scm index 90986ac096..38fe44f78a 100644 --- a/gnu/packages/pypy.scm +++ b/gnu/packages/pypy.scm @@ -22,7 +22,7 @@ (define-module (gnu packages pypy) #:use-module ((guix licenses) #:prefix license:) #:use-module (gnu packages base) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages compression) #:use-module (gnu packages dbm) #:use-module (gnu packages libffi) diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm index f43b49163d..5bd98ba01a 100644 --- a/gnu/packages/python-check.scm +++ b/gnu/packages/python-check.scm @@ -55,7 +55,7 @@ #:use-module (gnu packages admin) #:use-module (gnu packages base) #:use-module (gnu packages bash) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages check) #:use-module (gnu packages django) #:use-module (gnu packages jupyter) diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm index 79bbf1b08b..8887da9e00 100644 --- a/gnu/packages/python-crypto.scm +++ b/gnu/packages/python-crypto.scm @@ -57,7 +57,7 @@ #:use-module (guix build-system python) #:use-module (guix utils) #:use-module (gnu packages) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages check) #:use-module (gnu packages crates-io) #:use-module (gnu packages crates-tls) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 4f6a237ae0..7f7c9ceff1 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -107,7 +107,7 @@ #:use-module (gnu packages admin) #:use-module (gnu packages base) #:use-module (gnu packages bash) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages check) #:use-module (gnu packages cmake) #:use-module (gnu packages compression) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 0107f3f08e..fcf9c8e20c 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -197,7 +197,7 @@ #:use-module (gnu packages bdw-gc) #:use-module (gnu packages bioinformatics) #:use-module (gnu packages build-tools) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages check) #:use-module (gnu packages cmake) #:use-module (gnu packages compression) diff --git a/gnu/packages/ruby-xyz.scm b/gnu/packages/ruby-xyz.scm index 13539b5364..8ac2fd9e4e 100644 --- a/gnu/packages/ruby-xyz.scm +++ b/gnu/packages/ruby-xyz.scm @@ -157,17 +157,29 @@ elegant API.") (define-public ruby-highline (package (name "ruby-highline") - (version "2.0.1") + (version "3.1.2") (source (origin - (method url-fetch) - (uri (rubygems-uri "highline" version)) + (method git-fetch) ;for tests + (uri (git-reference + (url "https://github.com/JEG2/highline") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0gr6pckj2jayxw1gdgh9193j5jag5zrrqqlrnl4jvcwpyd3sn2zc")))) + "09ysksjmlzhpr5d21qhhl7bq7b3f03qk7jc1k08iwrvx3fjid8gv")))) (build-system ruby-build-system) (arguments - `(#:tests? #f)) ;; TODO: NameError: uninitialized constant SPEC + (list + #:phases + #~(modify-phases %standard-phases + (add-before 'check 'remove-coverage-and-failing-test + (lambda _ + (substitute* "test/test_helper.rb" + (("require \"simplecov\" if RUBY_ENGINE == \"ruby\"") + "")) + ;; TODO: Package dry-types gem. + (delete-file "test/test_highline.rb")))))) (native-inputs (list bundler ruby-code-statistics)) (synopsis diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm index 90bf376b39..6d7875e844 100644 --- a/gnu/packages/sphinx.scm +++ b/gnu/packages/sphinx.scm @@ -47,7 +47,7 @@ #:use-module (guix build-system pyproject) #:use-module ((guix licenses) #:prefix license:) #:use-module (gnu packages) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages check) #:use-module (gnu packages fonts) #:use-module (gnu packages fontutils) diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm index dc5c7c6849..8c829749c7 100644 --- a/gnu/packages/textutils.scm +++ b/gnu/packages/textutils.scm @@ -80,6 +80,7 @@ #:use-module (gnu packages golang-xyz) #:use-module (gnu packages java) #:use-module (gnu packages ncurses) + #:use-module (gnu packages nss) #:use-module (gnu packages pcre) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 8dd820429c..d3e4be0894 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -75,6 +75,7 @@ #:use-module (gnu packages ncurses) #:use-module (gnu packages nettle) #:use-module (gnu packages networking) + #:use-module (gnu packages nss) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index fedc4827aa..eb4815bdd9 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -130,7 +130,7 @@ #:use-module (gnu packages bittorrent) #:use-module (gnu packages boost) #:use-module (gnu packages cdrom) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages check) #:use-module (gnu packages cmake) #:use-module (gnu packages compression) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index de59e8dbb8..a56b313e2c 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -130,7 +130,7 @@ #:use-module (gnu packages bittorrent) #:use-module (gnu packages boost) #:use-module (gnu packages build-tools) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages cpp) diff --git a/gnu/services/admin.scm b/gnu/services/admin.scm index 856e6f375a..8f24950752 100644 --- a/gnu/services/admin.scm +++ b/gnu/services/admin.scm @@ -27,7 +27,7 @@ #:use-module ((gnu packages base) #:select (canonical-package findutils coreutils sed)) #:use-module (gnu packages file-systems) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages disk) #:use-module (gnu packages package-management) #:use-module (gnu packages linux) diff --git a/gnu/services/telephony.scm b/gnu/services/telephony.scm index 9926f4107d..423e007871 100644 --- a/gnu/services/telephony.scm +++ b/gnu/services/telephony.scm @@ -24,7 +24,7 @@ #:use-module (gnu services shepherd) #:use-module (gnu system shadow) #:use-module (gnu packages admin) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages glib) #:use-module (gnu packages guile-xyz) #:use-module (gnu packages jami) diff --git a/gnu/system.scm b/gnu/system.scm index 06181606fa..78a30646e1 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -51,7 +51,7 @@ #:use-module (gnu packages admin) #:use-module (gnu packages base) #:use-module (gnu packages bash) - #:use-module ((gnu packages certs) #:select (nss-certs)) + #:use-module ((gnu packages nss) #:select (nss-certs)) #:use-module (gnu packages compression) #:use-module (gnu packages cross-base) #:use-module (gnu packages firmware) diff --git a/gnu/system/hurd.scm b/gnu/system/hurd.scm index a54c95a957..5e47798cbd 100644 --- a/gnu/system/hurd.scm +++ b/gnu/system/hurd.scm @@ -27,7 +27,7 @@ #:use-module (gnu packages admin) #:use-module (gnu packages base) #:use-module (gnu packages bash) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (gnu packages compression) #:use-module (gnu packages cross-base) #:use-module (gnu packages file) diff --git a/gnu/system/images/pine64.scm b/gnu/system/images/pine64.scm index 43c99c231f..bd7a39ee75 100644 --- a/gnu/system/images/pine64.scm +++ b/gnu/system/images/pine64.scm @@ -22,7 +22,7 @@ #:use-module (gnu bootloader u-boot) #:use-module (gnu image) #:use-module (gnu packages linux) - #:use-module (gnu packages certs) + #:use-module (gnu packages nss) #:use-module (guix platforms arm) #:use-module (gnu services) #:use-module (gnu services base) |