summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/admin.scm14
-rw-r--r--gnu/packages/astronomy.scm2
-rw-r--r--gnu/packages/benchmark.scm2
-rw-r--r--gnu/packages/bioinformatics.scm1
-rw-r--r--gnu/packages/bittorrent.scm2
-rw-r--r--gnu/packages/certs.scm191
-rw-r--r--gnu/packages/check.scm2
-rw-r--r--gnu/packages/crates-io.scm2
-rw-r--r--gnu/packages/databases.scm2
-rw-r--r--gnu/packages/disk.scm2
-rw-r--r--gnu/packages/geo.scm2
-rw-r--r--gnu/packages/guile-xyz.scm54
-rw-r--r--gnu/packages/java.scm2
-rw-r--r--gnu/packages/librewolf.scm2
-rw-r--r--gnu/packages/linux.scm59
-rw-r--r--gnu/packages/mail.scm12
-rw-r--r--gnu/packages/messaging.scm2
-rw-r--r--gnu/packages/mold.scm4
-rw-r--r--gnu/packages/nim.scm2
-rw-r--r--gnu/packages/nss.scm191
-rw-r--r--gnu/packages/patches/guile-gi-fix-marshall-tests.patch27
-rw-r--r--gnu/packages/patches/nss-disable-broken-tests.patch33
-rw-r--r--gnu/packages/pypy.scm2
-rw-r--r--gnu/packages/python-check.scm2
-rw-r--r--gnu/packages/python-crypto.scm2
-rw-r--r--gnu/packages/python-web.scm2
-rw-r--r--gnu/packages/python-xyz.scm2
-rw-r--r--gnu/packages/ruby-xyz.scm22
-rw-r--r--gnu/packages/sphinx.scm2
-rw-r--r--gnu/packages/textutils.scm1
-rw-r--r--gnu/packages/tls.scm1
-rw-r--r--gnu/packages/video.scm2
-rw-r--r--gnu/packages/web.scm2
-rw-r--r--gnu/services/admin.scm2
-rw-r--r--gnu/services/telephony.scm2
-rw-r--r--gnu/system.scm2
-rw-r--r--gnu/system/hurd.scm2
-rw-r--r--gnu/system/images/pine64.scm2
39 files changed, 364 insertions, 297 deletions
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/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)