summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim@guixotic.coop>2025-11-20 13:58:22 +0900
committerMaxim Cournoyer <maxim@guixotic.coop>2025-11-20 14:20:03 +0900
commitf8654d777ebe16949aeaf11060c4e54389cf6a55 (patch)
treef5f9990afc17d9eaef4defe175cbce885d93e05d
parentdf4cac9a5252cf4c3cab4f697b237d94e8b4dd26 (diff)
gnu: libarchive: Update to 3.8.3.
A flaky test was encountered in the previous 3.7.7. version. Built successfully 10 times. * gnu/packages/backup.scm (libarchive): Update to 3.8.3. [#:phases] {patch-pwd}: Rename to... {patch-commands}: ... this, and patch /bin/sh in test_main.c. {check}: Build tests in parallel. Set SKIP_OPEN_FD_ERR_TEST and IGNORE_TRAVERSALS_TEST4 environment variables. Change-Id: I479357d6bdcd907e6893095da91f215ce0f1aa14
-rw-r--r--gnu/packages/backup.scm35
1 files changed, 22 insertions, 13 deletions
diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm
index 4e59f3dd480..a561c5fc7e3 100644
--- a/gnu/packages/backup.scm
+++ b/gnu/packages/backup.scm
@@ -21,7 +21,7 @@
21;;; Copyright © 2021 Timothy Sample <samplet@ngyro.com> 21;;; Copyright © 2021 Timothy Sample <samplet@ngyro.com>
22;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re> 22;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
23;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev> 23;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
24;;; Copyright © 2022 Maxim Cournoyer <maxim@guixotic.coop> 24;;; Copyright © 2022, 2025 Maxim Cournoyer <maxim@guixotic.coop>
25;;; Copyright © 2022 Feng Shu <tumashu@163.com> 25;;; Copyright © 2022 Feng Shu <tumashu@163.com>
26;;; Copyright © 2023 Timo Wilken <guix@twilken.net> 26;;; Copyright © 2023 Timo Wilken <guix@twilken.net>
27;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr> 27;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
@@ -264,7 +264,7 @@ backups (called chunks) to allow easy burning to CD/DVD.")
264(define-public libarchive 264(define-public libarchive
265 (package 265 (package
266 (name "libarchive") 266 (name "libarchive")
267 (version "3.7.7") 267 (version "3.8.3")
268 (source 268 (source
269 (origin 269 (origin
270 (method url-fetch) 270 (method url-fetch)
@@ -275,7 +275,7 @@ backups (called chunks) to allow easy burning to CD/DVD.")
275 version ".tar.xz"))) 275 version ".tar.xz")))
276 (sha256 276 (sha256
277 (base32 277 (base32
278 "1vps57mrpqmrk4zayh5g5amqfq7031s5zzkkxsm7r71rqf1wv6l7")))) 278 "124pp4w6n8xqdwjswc5d4d6kkrgxv67f9xlhgg7934zii4mizqlh"))))
279 (build-system gnu-build-system) 279 (build-system gnu-build-system)
280 (inputs 280 (inputs
281 (list bzip2 281 (list bzip2
@@ -295,24 +295,33 @@ backups (called chunks) to allow easy burning to CD/DVD.")
295 "--without-openssl") 295 "--without-openssl")
296 #:phases 296 #:phases
297 #~(modify-phases %standard-phases 297 #~(modify-phases %standard-phases
298 (add-before 'build 'patch-pwd 298 (add-before 'build 'patch-commands
299 (lambda _ 299 (lambda _
300 (substitute* "Makefile" 300 (substitute* "Makefile"
301 (("/bin/pwd") (which "pwd"))))) 301 (("/bin/pwd") (which "pwd")))
302 (substitute* "test_utils/test_main.c"
303 (("/bin/sh") (which "sh")))))
302 (replace 'check 304 (replace 'check
303 (lambda* (#:key tests? #:allow-other-keys) 305 (lambda* (#:key parallel-build? tests? #:allow-other-keys)
304 (if tests? 306 (if tests?
305 ;; XXX: The test_owner_parse, test_read_disk, and
306 ;; test_write_disk_lookup tests expect user 'root' to
307 ;; exist, but the chroot's /etc/passwd doesn't have
308 ;; it. Turn off those tests.
309 (begin 307 (begin
310 ;; The tests allow one to disable tests matching a globbing pattern. 308 ;; These environment variables are taken from
311 (invoke "make" 309 ;; <https://raw.githubusercontent.com/libarchive/libarchive/refs/heads/master/.github/workflows/ci.yml>
310 (setenv "SKIP_OPEN_FD_ERR_TEST" "1")
311 (setenv "IGNORE_TRAVERSALS_TEST4" "1")
312
313 ;; XXX: The test_owner_parse, test_read_disk, and
314 ;; test_write_disk_lookup tests expect user 'root' to
315 ;; exist, but the chroot's /etc/passwd doesn't have it
316 ;; (see:
317 ;; <https://github.com/libarchive/libarchive/issues/2794>).
318 (invoke "make" "-j" (number->string
319 (if parallel-build?
320 (parallel-job-count)
321 1))
312 "libarchive_test" 322 "libarchive_test"
313 "bsdcpio_test" 323 "bsdcpio_test"
314 "bsdtar_test") 324 "bsdtar_test")
315
316 ;; XXX: This glob disables too much. 325 ;; XXX: This glob disables too much.
317 (invoke "./libarchive_test" "^test_*_disk*") 326 (invoke "./libarchive_test" "^test_*_disk*")
318 (invoke "./bsdcpio_test" "^test_owner_parse") 327 (invoke "./bsdcpio_test" "^test_owner_parse")