me
/
guix
Archived
1
0
Fork 0

Merge branch 'core-updates'

master
Marius Bakke 2020-05-08 21:40:51 +02:00
commit 4bdf4182fe
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
375 changed files with 15419 additions and 7439 deletions

View File

@ -175,6 +175,7 @@ MODULES = \
guix/build/git.scm \ guix/build/git.scm \
guix/build/hg.scm \ guix/build/hg.scm \
guix/build/glib-or-gtk-build-system.scm \ guix/build/glib-or-gtk-build-system.scm \
guix/build/gnu-bootstrap.scm \
guix/build/gnu-build-system.scm \ guix/build/gnu-build-system.scm \
guix/build/gnu-dist.scm \ guix/build/gnu-dist.scm \
guix/build/guile-build-system.scm \ guix/build/guile-build-system.scm \

View File

@ -384,11 +384,11 @@ interface (FFI) of Guile.")
#:key verbose? (version (date-version-string)) system #:key verbose? (version (date-version-string)) system
(pull-version 0) (pull-version 0)
;; For the standalone Guix, default to Guile 2.2. For old ;; For the standalone Guix, default to Guile 3.0. For old
;; versions of 'guix pull' (pre-0.15.0), we have to use the ;; versions of 'guix pull' (pre-0.15.0), we have to use the
;; same Guile as the current one. ;; same Guile as the current one.
(guile-version (if (> pull-version 0) (guile-version (if (> pull-version 0)
"2.2" "3.0"
(effective-version))) (effective-version)))
#:allow-other-keys #:allow-other-keys

View File

@ -26510,7 +26510,7 @@ program. That gives a lot of flexibility. The
program to run in that initrd. program to run in that initrd.
@deffn {Scheme Procedure} expression->initrd @var{exp} @ @deffn {Scheme Procedure} expression->initrd @var{exp} @
[#:guile %guile-static-stripped] [#:name "guile-initrd"] [#:guile %guile-3.0-static-stripped] [#:name "guile-initrd"]
Return as a file-like object a Linux initrd (a gzipped cpio archive) Return as a file-like object a Linux initrd (a gzipped cpio archive)
containing @var{guile} and that evaluates @var{exp}, a G-expression, containing @var{guile} and that evaluates @var{exp}, a G-expression,
upon booting. All the derivations referenced by @var{exp} are upon booting. All the derivations referenced by @var{exp} are

View File

@ -2,6 +2,7 @@
;; ;;
;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com> ;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;; ;;
;; Copying and distribution of this file, with or without modification, are ;; Copying and distribution of this file, with or without modification, are
;; permitted in any medium without royalty provided the copyright notice and ;; permitted in any medium without royalty provided the copyright notice and
@ -10,6 +11,73 @@
(channel-news (channel-news
(version 0) (version 0)
(entry (commit "a33eac038a811603c8b9ed106ae405a5f80a0e9d")
(title (en "GNU C Library upgraded")
(de "GNU-C-Bibliothek aktualisiert")
(es "Actualización de la biblioteca C de GNU")
(fr "Mise à jour de la bibliothèque C de GNU")
(nl "GNU C-bibliotheek bijgewerkt"))
(body
(en "The GNU C Library (glibc) has been upgraded to version 2.31. To
run previously-installed programs linked against glibc 2.29, you need to
install locale data for version 2.29 in addition to locale data for 2.31:
@example
guix install glibc-locales glibc-locales-2.29
@end example
On Guix System, you can adjust the @code{locale-libcs} field of your
@code{operating-system} form. Run @code{info \"(guix) Locales\"}, for more
info.")
(de "Die GNU-C-Bibliothek (glibc) wurde auf Version 2.31
aktualisiert. Um zuvor installierte Programme, die an glibc 2.29 gebunden
worden sind, weiter benutzen zu können, müssen Sie Locale-Daten für Version
2.29 zusätzlich zu den Locale-Daten für 2.31 installieren:
@example
guix install glibc-locales glibc-locales-2.29
@end example
Auf Guix System genügt es, das @code{locale-libcs}-Feld Ihrer
@code{operating-system}-Form anzupassen. Führen Sie @code{info \"(guix.de)
Locales\"} aus, um weitere Informationen dazu zu erhalten.")
(es "Se ha actualizado la biblioteca de C de GNU (glibc) a la versión
2.31. Para ejecutar programas instalados previamente que se encuentren
enlazados con glibc 2.29, es necesario que instale los datos de localización
de la versión 2.29 junto a los datos de localización de la versión 2.31:
@example
guix install glibc-locales glibc-locales-2.29
@end example
En el sistema Guix, puede ajustar el campo @code{locale-libcs} de su
declaración @code{operating-system}. Ejecute @code{info \"(guix.es)
Localizaciones\"} para obtener más información.")
(fr "La bibliothèque C de GNU (glibc) a été mise à jour en version
2.31. Pour pouvoir lancer tes programmes déjà installés et liés à glibc 2.29,
tu dois installer les données pour la version 2.29 en plus des données de
régionalisation pour la version 2.31:
@example
guix install glibc-locales glibc-locales-2.29
@end example
Sur le système Guix, tu peux ajuster le champ @code{locale-libcs} de ta forme
@code{operating-system}. Lance @code{info \"(guix.fr) Régionalisation\"} pour
plus de détails.")
(nl "De GNU C-bibliotheek (glibc) werd bijgewerkt naar versie 2.31.
Om gebruik te maken van reeds geïnstalleerde programma's die aan glibc 2.29
gebonden zijn, moet u de regionale informatie van versie 2.29 naast die van
versie 2.31 installeren:
@example
guix install glibc-locales glibc-locales-2.29
@end example
Op Guix System kunt u het @code{locale-libcs}-veld van uw
@code{operating-system}-vorm aanpassen. Voer @code{info \"(guix) Locales\"}
uit voor verdere uitleg.")))
(entry (commit "e1e6491226347d9fb93ff484d78cef98848a510a") (entry (commit "e1e6491226347d9fb93ff484d78cef98848a510a")
(title (en "Guix Cookbook now available as Info") (title (en "Guix Cookbook now available as Info")
(de "Guix-Kochbuch jetzt als Info-Dokument verfügbar")) (de "Guix-Kochbuch jetzt als Info-Dokument verfügbar"))
@ -45,6 +113,15 @@ Ihre Beiträge werden gerne gesehen. Bitte
@uref{https://guix.gnu.org/contact/, kontaktieren Sie die Entwickler}, um Ihre @uref{https://guix.gnu.org/contact/, kontaktieren Sie die Entwickler}, um Ihre
Rezepte mit uns zu teilen!"))) Rezepte mit uns zu teilen!")))
(entry (commit "2ca7af43fe17d9acf082dce85d137a27a8ac4887")
(title (en "Further reduced binary seed bootstrap"))
(body
(en "The package graph on x86_64 and i686 is now rooted in a further
@dfn{reduced set of binary seeds}. The initial set of binaries from which
packages are built now weighs in at approximately 60 MiB, a quarter of what it
used to be. Run @code{info \"(guix) Bootstrapping\"} to learn more, or watch
the talk at @uref{https://fosdem.org/2020/schedule/event/gnumes/}.")))
(entry (commit "0468455e7d279c89ea3ad1b51935efb2b785ec47") (entry (commit "0468455e7d279c89ea3ad1b51935efb2b785ec47")
(title (en "Rottlog service added to @code{%base-services}") (title (en "Rottlog service added to @code{%base-services}")
(de "Rottlog-Dienst ist nun Teil der @code{%base-services}")) (de "Rottlog-Dienst ist nun Teil der @code{%base-services}"))
@ -59,6 +136,14 @@ Systemdienst bereits in Ihrer Konfiguration für Guix System ausdrücklich
genannt wurde, sollten Sie ihn jetzt daraus entfernen. Siehe den Abschnitt genannt wurde, sollten Sie ihn jetzt daraus entfernen. Siehe den Abschnitt
Log-Rotation im Handbuch für weitere Informationen."))) Log-Rotation im Handbuch für weitere Informationen.")))
(entry (commit "b6bee63bed4f013064c0d902e7c8b83ed7514ade")
(title (en "@code{guile} package now refers to version 3.0"))
(body (en "The @code{guile} package has been upgraded to version 3.0
(instead of 2.2). The @code{guile3.0-} packages have been renamed to their
original name, and @code{guile2.2-} variants of these packages have been
defined. Additionally, derivations are now all built with Guile 3.0, and
system services also run on 3.0.")))
(entry (commit "e3e1a7ba08af2d58c47264c543617e499c239444") (entry (commit "e3e1a7ba08af2d58c47264c543617e499c239444")
(title (en "@command{guix pull} now supports SSH authenticated (title (en "@command{guix pull} now supports SSH authenticated
repositories") repositories")

View File

@ -66,7 +66,7 @@ TARGET."
;; Packages that must be cross-buildable from x86_64-linux. ;; Packages that must be cross-buildable from x86_64-linux.
;; FIXME: Add (@ (gnu packages gcc) gcc) when <https://bugs.gnu.org/40463> ;; FIXME: Add (@ (gnu packages gcc) gcc) when <https://bugs.gnu.org/40463>
;; is fixed. ;; is fixed.
(append (list (@ (gnu packages guile) guile-2.2/fixed)) (append (list (@ (gnu packages guile) guile-3.0/fixed))
(map specification->package (map specification->package
'("coreutils" "grep" "sed" "findutils" "diffutils" "patch" '("coreutils" "grep" "sed" "findutils" "diffutils" "patch"
"gawk" "gettext" "gzip" "xz" "gawk" "gettext" "gzip" "xz"

View File

@ -3,7 +3,7 @@
;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com> ;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2019, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
@ -54,6 +54,7 @@
grub-bootloader grub-bootloader
grub-efi-bootloader grub-efi-bootloader
grub-mkrescue-bootloader grub-mkrescue-bootloader
grub-minimal-bootloader
grub-configuration)) grub-configuration))
@ -457,6 +458,14 @@ fi~%"))))
(configuration-file "/boot/grub/grub.cfg") (configuration-file "/boot/grub/grub.cfg")
(configuration-file-generator grub-configuration-file))) (configuration-file-generator grub-configuration-file)))
(define grub-minimal-bootloader
(bootloader
(name 'grub)
(package grub-minimal)
(installer install-grub)
(configuration-file "/boot/grub/grub.cfg")
(configuration-file-generator grub-configuration-file)))
(define* grub-efi-bootloader (define* grub-efi-bootloader
(bootloader (bootloader
(inherit grub-bootloader) (inherit grub-bootloader)

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013, 2014, 2015, 2016, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com> ;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
@ -38,8 +38,11 @@
(define %gcc-include-paths (define %gcc-include-paths
;; Environment variables for header search paths. ;; Environment variables for header search paths.
;; Note: See <http://bugs.gnu.org/30756> for why not 'C_INCLUDE_PATH' & co. ;; Note: See <http://bugs.gnu.org/22186> for why not 'CPATH'.
'("CPATH")) '("C_INCLUDE_PATH"
"CPLUS_INCLUDE_PATH"
"OBJC_INCLUDE_PATH"
"OBJCPLUS_INCLUDE_PATH"))
(define %gcc-cross-include-paths (define %gcc-cross-include-paths
;; Search path for target headers when cross-compiling. ;; Search path for target headers when cross-compiling.

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com> ;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
@ -76,6 +76,13 @@ the context of the caller. If the directive matches those defaults then,
(('directory name uid gid mode) (('directory name uid gid mode)
(loop `(directory ,name ,uid ,gid)) (loop `(directory ,name ,uid ,gid))
(chmod (string-append target name) mode)) (chmod (string-append target name) mode))
(('file name)
(call-with-output-file (string-append target name)
(const #t)))
(('file name (? string? content))
(call-with-output-file (string-append target name)
(lambda (port)
(display content port))))
((new '-> old) ((new '-> old)
(let try () (let try ()
(catch 'system-error (catch 'system-error
@ -126,11 +133,14 @@ STORE."
(directory "/home" 0 0))) (directory "/home" 0 0)))
(define (populate-root-file-system system target) (define* (populate-root-file-system system target
#:key (extras '()))
"Make the essential non-store files and directories on TARGET. This "Make the essential non-store files and directories on TARGET. This
includes /etc, /var, /run, /bin/sh, etc., and all the symlinks to SYSTEM." includes /etc, /var, /run, /bin/sh, etc., and all the symlinks to SYSTEM.
EXTRAS is a list of directives appended to the built-in directives to populate
TARGET."
(for-each (cut evaluate-populate-directive <> target) (for-each (cut evaluate-populate-directive <> target)
(directives (%store-directory))) (append (directives (%store-directory)) extras))
;; Add system generation 1. ;; Add system generation 1.
(let ((generation-1 (string-append target (let ((generation-1 (string-append target

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net> ;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
;;; ;;;
@ -40,6 +40,7 @@
find-long-option find-long-option
find-long-options find-long-options
make-essential-device-nodes make-essential-device-nodes
make-hurd-device-nodes
make-static-device-nodes make-static-device-nodes
configure-qemu-networking configure-qemu-networking
@ -223,7 +224,7 @@ one specific hardware device. These we have to create."
(call-with-input-file devname-name (call-with-input-file devname-name
read-static-device-nodes)))) read-static-device-nodes))))
(define* (make-essential-device-nodes #:key (root "/")) (define* (make-essential-device-nodes #:optional (root "/"))
"Make essential device nodes under ROOT/dev." "Make essential device nodes under ROOT/dev."
;; The hand-made devtmpfs/udev! ;; The hand-made devtmpfs/udev!
@ -323,6 +324,36 @@ one specific hardware device. These we have to create."
;; File systems in user space (FUSE). ;; File systems in user space (FUSE).
(mknod (scope "dev/fuse") 'char-special #o666 (device-number 10 229))) (mknod (scope "dev/fuse") 'char-special #o666 (device-number 10 229)))
(define* (make-hurd-device-nodes #:optional (root "/"))
"Make some of the nodes needed on GNU/Hurd."
(define (scope dir)
(string-append root
(if (string-suffix? "/" root)
""
"/")
dir))
(mkdir (scope "dev"))
(for-each (lambda (file)
(call-with-output-file (scope file)
(lambda (port)
(chmod port #o666))))
'("dev/null"
"dev/zero"
"dev/full"
"dev/random"
"dev/urandom"))
;; Don't create /dev/console, /dev/vcs, etc.: they are created by
;; console-run on first boot.
(mkdir (scope "servers"))
(mkdir (scope "servers/socket"))
;; Don't create /servers/socket/1 & co: runsystem does that on first boot.
;; TODO: Set the 'gnu.translator' extended attribute for passive translator
;; settings?
)
(define %host-qemu-ipv4-address (define %host-qemu-ipv4-address
(inet-pton AF_INET "10.0.2.10")) (inet-pton AF_INET "10.0.2.10"))

View File

@ -34,6 +34,7 @@
#:use-module (guix records) #:use-module (guix records)
#:use-module ((guix combinators) #:select (fold2)) #:use-module ((guix combinators) #:select (fold2))
#:use-module (ice-9 format) #:use-module (ice-9 format)
#:use-module (ice-9 ftw)
#:use-module (ice-9 match) #:use-module (ice-9 match)
#:use-module (ice-9 regex) #:use-module (ice-9 regex)
#:use-module (ice-9 popen) #:use-module (ice-9 popen)
@ -234,6 +235,8 @@ deduplicates files common to CLOSURE and the rest of PREFIX."
(device partition-device (default #f)) (device partition-device (default #f))
(size partition-size) (size partition-size)
(file-system partition-file-system (default "ext4")) (file-system partition-file-system (default "ext4"))
(file-system-options partition-file-system-options ;passed to 'mkfs.FS'
(default '()))
(label partition-label (default #f)) (label partition-label (default #f))
(uuid partition-uuid (default #f)) (uuid partition-uuid (default #f))
(flags partition-flags (default '())) (flags partition-flags (default '()))
@ -308,7 +311,7 @@ actual /dev name based on DEVICE."
(define MS_BIND 4096) ; <sys/mounts.h> again! (define MS_BIND 4096) ; <sys/mounts.h> again!
(define* (create-ext-file-system partition type (define* (create-ext-file-system partition type
#:key label uuid) #:key label uuid (options '()))
"Create an ext-family file system of TYPE on PARTITION. If LABEL is true, "Create an ext-family file system of TYPE on PARTITION. If LABEL is true,
use that as the volume name. If UUID is true, use it as the partition UUID." use that as the volume name. If UUID is true, use it as the partition UUID."
(format #t "creating ~a partition... ~@[label: ~s~] ~@[uuid: ~s~]\n" (format #t "creating ~a partition... ~@[label: ~s~] ~@[uuid: ~s~]\n"
@ -320,26 +323,29 @@ use that as the volume name. If UUID is true, use it as the partition UUID."
'()) '())
,@(if uuid ,@(if uuid
`("-U" ,(uuid->string uuid)) `("-U" ,(uuid->string uuid))
'())))) '())
,@options)))
(define* (create-fat-file-system partition (define* (create-fat-file-system partition
#:key label uuid) #:key label uuid (options '()))
"Create a FAT file system on PARTITION. The number of File Allocation Tables "Create a FAT file system on PARTITION. The number of File Allocation Tables
will be determined based on file system size. If LABEL is true, use that as the will be determined based on file system size. If LABEL is true, use that as the
volume name." volume name."
;; FIXME: UUID is ignored! ;; FIXME: UUID is ignored!
(format #t "creating FAT partition...\n") (format #t "creating FAT partition...\n")
(apply invoke "mkfs.fat" partition (apply invoke "mkfs.fat" partition
(if label `("-n" ,label) '()))) (append (if label `("-n" ,label) '()) options)))
(define* (format-partition partition type (define* (format-partition partition type
#:key label uuid) #:key label uuid (options '()))
"Create a file system TYPE on PARTITION. If LABEL is true, use that as the "Create a file system TYPE on PARTITION. If LABEL is true, use that as the
volume name." volume name. Options is a list of command-line options passed to 'mkfs.FS'."
(cond ((string-prefix? "ext" type) (cond ((string-prefix? "ext" type)
(create-ext-file-system partition type #:label label #:uuid uuid)) (create-ext-file-system partition type #:label label #:uuid uuid
#:options options))
((or (string-prefix? "fat" type) (string= "vfat" type)) ((or (string-prefix? "fat" type) (string= "vfat" type))
(create-fat-file-system partition #:label label #:uuid uuid)) (create-fat-file-system partition #:label label #:uuid uuid
#:options options))
(else (error "Unsupported file system.")))) (else (error "Unsupported file system."))))
(define (initialize-partition partition) (define (initialize-partition partition)
@ -349,7 +355,8 @@ it, run its initializer, and unmount it."
(format-partition (partition-device partition) (format-partition (partition-device partition)
(partition-file-system partition) (partition-file-system partition)
#:label (partition-label partition) #:label (partition-label partition)
#:uuid (partition-uuid partition)) #:uuid (partition-uuid partition)
#:options (partition-file-system-options partition))
(mkdir-p target) (mkdir-p target)
(mount (partition-device partition) target (mount (partition-device partition) target
(partition-file-system partition)) (partition-file-system partition))
@ -363,14 +370,20 @@ it, run its initializer, and unmount it."
copy-closures? copy-closures?
(register-closures? #t) (register-closures? #t)
system-directory system-directory
(deduplicate? #t)) (deduplicate? #t)
(make-device-nodes
make-essential-device-nodes)
(extra-directives '()))
"Return a procedure to initialize a root partition. "Return a procedure to initialize a root partition.
If REGISTER-CLOSURES? is true, register all of CLOSURES in the partition's If REGISTER-CLOSURES? is true, register all of CLOSURES in the partition's
store. If DEDUPLICATE? is true, then also deduplicate files common to store. If DEDUPLICATE? is true, then also deduplicate files common to
CLOSURES and the rest of the store when registering the closures. If CLOSURES and the rest of the store when registering the closures. If
COPY-CLOSURES? is true, copy all of CLOSURES to the partition. COPY-CLOSURES? is true, copy all of CLOSURES to the partition.
SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation." SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation.
EXTRA-DIRECTIVES is an optional list of directives to populate the root file
system that is passed to 'populate-root-file-system'."
(lambda (target) (lambda (target)
(define target-store (define target-store
(string-append target (%store-directory))) (string-append target (%store-directory)))
@ -381,7 +394,7 @@ SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation."
target)) target))
;; Populate /dev. ;; Populate /dev.
(make-essential-device-nodes #:root target) (make-device-nodes target)
;; Optionally, register the inputs in the image's store. ;; Optionally, register the inputs in the image's store.
(when register-closures? (when register-closures?
@ -403,12 +416,22 @@ SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation."
;; Add the non-store directories and files. ;; Add the non-store directories and files.
(display "populating...\n") (display "populating...\n")
(populate-root-file-system system-directory target) (populate-root-file-system system-directory target
#:extras extra-directives)
;; 'register-closure' resets timestamps and everything, so no need to do it ;; 'register-closure' resets timestamps and everything, so no need to do it
;; once more in that case. ;; once more in that case.
(unless register-closures? (unless register-closures?
(reset-timestamps target)))) ;; 'reset-timestamps' also resets file permissions; do that everywhere
;; except on /dev so that /dev/null remains writable, etc.
(for-each (lambda (directory)
(reset-timestamps (string-append target "/" directory)))
(scandir target
(match-lambda
((or "." ".." "dev") #f)
(_ #t))))
(reset-timestamps (string-append target "/dev")
#:preserve-permissions? #t))))
(define (register-bootcfg-root target bootcfg) (define (register-bootcfg-root target bootcfg)
"On file system TARGET, register BOOTCFG as a GC root." "On file system TARGET, register BOOTCFG as a GC root."

View File

@ -125,8 +125,12 @@ SYSTEM."
%guile-bootstrap-tarball %guile-bootstrap-tarball
%bootstrap-tarballs)) %bootstrap-tarballs))
(define %packages-to-cross-build (define (packages-to-cross-build target)
%core-packages) "Return the list of packages to cross-build for TARGET."
;; Don't cross-build the bootstrap tarballs for MinGW.
(if (string-contains target "mingw")
(drop-right %core-packages 6)
%core-packages))
(define %cross-targets (define %cross-targets
'("mips64el-linux-gnu" '("mips64el-linux-gnu"
@ -177,7 +181,7 @@ SYSTEM."
(map (lambda (package) (map (lambda (package)
(package-cross-job store (job-name package) (package-cross-job store (job-name package)
package target system)) package target system))
%packages-to-cross-build)) (packages-to-cross-build target)))
(remove (either from-32-to-64? same? pointless?) (remove (either from-32-to-64? same? pointless?)
%cross-targets))) %cross-targets)))

View File

@ -313,18 +313,18 @@ selected keymap."
(define set-installer-path (define set-installer-path
;; Add the specified binary to PATH for later use by the installer. ;; Add the specified binary to PATH for later use by the installer.
#~(let* ((inputs #~(let* ((inputs
'#$(append (list bash ;start subshells '#$(list bash ;start subshells
connman ;call connmanctl connman ;call connmanctl
cryptsetup cryptsetup
dosfstools ;mkfs.fat dosfstools ;mkfs.fat
e2fsprogs ;mkfs.ext4 e2fsprogs ;mkfs.ext4
btrfs-progs ;mkfs.btrfs btrfs-progs
jfsutils ;jfs_mkfs jfsutils ;jfs_mkfs
kbd ;chvt kbd ;chvt
guix ;guix system init call guix ;guix system init call
util-linux ;mkwap util-linux ;mkwap
shadow) shadow
(map canonical-package (list coreutils))))) coreutils)))
(with-output-to-port (%make-void-port "w") (with-output-to-port (%make-void-port "w")
(lambda () (lambda ()
(set-path-environment-variable "PATH" '("bin" "sbin") inputs))))) (set-path-environment-variable "PATH" '("bin" "sbin") inputs)))))

View File

@ -11,10 +11,10 @@
# Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com> # Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
# Copyright © 2016, 2017, 2018, 2019 Alex Vong <alexvong1995@gmail.com> # Copyright © 2016, 2017, 2018, 2019 Alex Vong <alexvong1995@gmail.com>
# Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il> # Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
# Copyright © 2016, 2017, 2018, 2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> # Copyright © 2016, 2017, 2018, 2019, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
# Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> # Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
# Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org> # Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
# Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> # Copyright © 2017, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
# Copyright © 2017, 2018, 2019 Gábor Boskovits <boskovits@gmail.com> # Copyright © 2017, 2018, 2019 Gábor Boskovits <boskovits@gmail.com>
# Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net> # Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
# Copyright © 2018, 2019, 2020 Oleg Pykhalov <go.wigust@gmail.com> # Copyright © 2018, 2019, 2020 Oleg Pykhalov <go.wigust@gmail.com>
@ -608,6 +608,7 @@ GNU_SYSTEM_MODULES = \
%D%/system.scm \ %D%/system.scm \
%D%/system/accounts.scm \ %D%/system/accounts.scm \
%D%/system/file-systems.scm \ %D%/system/file-systems.scm \
%D%/system/hurd.scm \
%D%/system/image.scm \ %D%/system/image.scm \
%D%/system/install.scm \ %D%/system/install.scm \
%D%/system/keyboard.scm \ %D%/system/keyboard.scm \
@ -735,7 +736,8 @@ dist_patch_DATA = \
%D%/packages/patches/aegis-test-fixup-1.patch \ %D%/packages/patches/aegis-test-fixup-1.patch \
%D%/packages/patches/aegis-test-fixup-2.patch \ %D%/packages/patches/aegis-test-fixup-2.patch \
%D%/packages/patches/aegisub-icu59-include-unistr.patch \ %D%/packages/patches/aegisub-icu59-include-unistr.patch \
%D%/packages/patches/aegisub-boost68.patch \ %D%/packages/patches/aegisub-boost68.patch \
%D%/packages/patches/aegisub-make43.patch \
%D%/packages/patches/agg-am_c_prototype.patch \ %D%/packages/patches/agg-am_c_prototype.patch \
%D%/packages/patches/akonadi-paths.patch \ %D%/packages/patches/akonadi-paths.patch \
%D%/packages/patches/akonadi-not-relocatable.patch \ %D%/packages/patches/akonadi-not-relocatable.patch \
@ -748,7 +750,6 @@ dist_patch_DATA = \
%D%/packages/patches/antlr3-3_3-fix-java8-compilation.patch \ %D%/packages/patches/antlr3-3_3-fix-java8-compilation.patch \
%D%/packages/patches/apr-skip-getservbyname-test.patch \ %D%/packages/patches/apr-skip-getservbyname-test.patch \
%D%/packages/patches/aspell-default-dict-dir.patch \ %D%/packages/patches/aspell-default-dict-dir.patch \
%D%/packages/patches/aspell-gcc-compat.patch \
%D%/packages/patches/ath9k-htc-firmware-binutils.patch \ %D%/packages/patches/ath9k-htc-firmware-binutils.patch \
%D%/packages/patches/ath9k-htc-firmware-gcc.patch \ %D%/packages/patches/ath9k-htc-firmware-gcc.patch \
%D%/packages/patches/ath9k-htc-firmware-objcopy.patch \ %D%/packages/patches/ath9k-htc-firmware-objcopy.patch \
@ -767,7 +768,6 @@ dist_patch_DATA = \
%D%/packages/patches/audiofile-hurd.patch \ %D%/packages/patches/audiofile-hurd.patch \
%D%/packages/patches/audiofile-signature-of-multiplyCheckOverflow.patch \ %D%/packages/patches/audiofile-signature-of-multiplyCheckOverflow.patch \
%D%/packages/patches/automake-skip-amhello-tests.patch \ %D%/packages/patches/automake-skip-amhello-tests.patch \
%D%/packages/patches/avahi-CVE-2018-1000845.patch \
%D%/packages/patches/avahi-localstatedir.patch \ %D%/packages/patches/avahi-localstatedir.patch \
%D%/packages/patches/avogadro-boost148.patch \ %D%/packages/patches/avogadro-boost148.patch \
%D%/packages/patches/avogadro-eigen3-update.patch \ %D%/packages/patches/avogadro-eigen3-update.patch \
@ -777,10 +777,13 @@ dist_patch_DATA = \
%D%/packages/patches/azr3.patch \ %D%/packages/patches/azr3.patch \
%D%/packages/patches/bash-reproducible-linux-pgrp-pipe.patch \ %D%/packages/patches/bash-reproducible-linux-pgrp-pipe.patch \
%D%/packages/patches/bash-completion-directories.patch \ %D%/packages/patches/bash-completion-directories.patch \
%D%/packages/patches/bash-linux-pgrp-pipe.patch \
%D%/packages/patches/bastet-change-source-of-unordered_set.patch \ %D%/packages/patches/bastet-change-source-of-unordered_set.patch \
%D%/packages/patches/bazaar-CVE-2017-14176.patch \ %D%/packages/patches/bazaar-CVE-2017-14176.patch \
%D%/packages/patches/bc-fix-cross-compilation.patch \
%D%/packages/patches/beancount-disable-googleapis-fonts.patch \ %D%/packages/patches/beancount-disable-googleapis-fonts.patch \
%D%/packages/patches/beets-werkzeug-compat.patch \ %D%/packages/patches/beets-werkzeug-compat.patch \
%D%/packages/patches/behave-skip-a-couple-of-tests.patch \
%D%/packages/patches/beignet-correct-file-names.patch \ %D%/packages/patches/beignet-correct-file-names.patch \
%D%/packages/patches/benchmark-unbundle-googletest.patch \ %D%/packages/patches/benchmark-unbundle-googletest.patch \
%D%/packages/patches/biber-fix-encoding-write.patch \ %D%/packages/patches/biber-fix-encoding-write.patch \
@ -817,6 +820,9 @@ dist_patch_DATA = \
%D%/packages/patches/clang-10.0-libc-search-path.patch \ %D%/packages/patches/clang-10.0-libc-search-path.patch \
%D%/packages/patches/clang-runtime-asan-build-fixes.patch \ %D%/packages/patches/clang-runtime-asan-build-fixes.patch \
%D%/packages/patches/clang-runtime-esan-build-fixes.patch \ %D%/packages/patches/clang-runtime-esan-build-fixes.patch \
%D%/packages/patches/clang-runtime-9-libsanitizer-mode-field.patch \
%D%/packages/patches/clang-runtime-3.9-libsanitizer-mode-field.patch \
%D%/packages/patches/clang-runtime-3.8-libsanitizer-mode-field.patch \
%D%/packages/patches/classpath-aarch64-support.patch \ %D%/packages/patches/classpath-aarch64-support.patch \
%D%/packages/patches/clementine-fix-sqlite.patch \ %D%/packages/patches/clementine-fix-sqlite.patch \
%D%/packages/patches/clementine-remove-crypto++-dependency.patch \ %D%/packages/patches/clementine-remove-crypto++-dependency.patch \
@ -829,19 +835,24 @@ dist_patch_DATA = \
%D%/packages/patches/combinatorial-blas-awpm.patch \ %D%/packages/patches/combinatorial-blas-awpm.patch \
%D%/packages/patches/combinatorial-blas-io-fix.patch \ %D%/packages/patches/combinatorial-blas-io-fix.patch \
%D%/packages/patches/containerd-test-with-go1.13.patch \ %D%/packages/patches/containerd-test-with-go1.13.patch \
%D%/packages/patches/coreutils-ls.patch \
%D%/packages/patches/cpufrequtils-fix-aclocal.patch \ %D%/packages/patches/cpufrequtils-fix-aclocal.patch \
%D%/packages/patches/crawl-upgrade-saves.patch \ %D%/packages/patches/crawl-upgrade-saves.patch \
%D%/packages/patches/crda-optional-gcrypt.patch \ %D%/packages/patches/crda-optional-gcrypt.patch \
%D%/packages/patches/clucene-contribs-lib.patch \ %D%/packages/patches/clucene-contribs-lib.patch \
%D%/packages/patches/cube-nocheck.patch \ %D%/packages/patches/cube-nocheck.patch \
%D%/packages/patches/curl-use-ssl-cert-env.patch \
%D%/packages/patches/cursynth-wave-rand.patch \ %D%/packages/patches/cursynth-wave-rand.patch \
%D%/packages/patches/cvs-CVE-2017-12836.patch \ %D%/packages/patches/cvs-CVE-2017-12836.patch \
%D%/packages/patches/cyrus-sasl-ac-try-run-fix.patch \
%D%/packages/patches/date-output-pkg-config-files.patch \ %D%/packages/patches/date-output-pkg-config-files.patch \
%D%/packages/patches/darkice-workaround-fpermissive-error.patch \ %D%/packages/patches/darkice-workaround-fpermissive-error.patch \
%D%/packages/patches/datefudge-gettimeofday.patch \
%D%/packages/patches/dbacl-include-locale.h.patch \ %D%/packages/patches/dbacl-include-locale.h.patch \
%D%/packages/patches/dbus-helper-search-path.patch \ %D%/packages/patches/dbus-helper-search-path.patch \
%D%/packages/patches/dbus-c++-gcc-compat.patch \ %D%/packages/patches/dbus-c++-gcc-compat.patch \
%D%/packages/patches/dbus-c++-threading-mutex.patch \ %D%/packages/patches/dbus-c++-threading-mutex.patch \
%D%/packages/patches/dconf-meson-0.52.patch \
%D%/packages/patches/debops-constants-for-external-program-names.patch \ %D%/packages/patches/debops-constants-for-external-program-names.patch \
%D%/packages/patches/debops-debops-defaults-fall-back-to-less.patch \ %D%/packages/patches/debops-debops-defaults-fall-back-to-less.patch \
%D%/packages/patches/deja-dup-use-ref-keyword-for-iter.patch \ %D%/packages/patches/deja-dup-use-ref-keyword-for-iter.patch \
@ -856,6 +867,7 @@ dist_patch_DATA = \
%D%/packages/patches/docker-fix-tests.patch \ %D%/packages/patches/docker-fix-tests.patch \
%D%/packages/patches/dovecot-trees-support-dovecot-2.3.patch \ %D%/packages/patches/dovecot-trees-support-dovecot-2.3.patch \
%D%/packages/patches/doxygen-test.patch \ %D%/packages/patches/doxygen-test.patch \
%D%/packages/patches/doxygen-1.8.17-runtests.patch \
%D%/packages/patches/dstat-fix-crash-when-specifying-delay.patch \ %D%/packages/patches/dstat-fix-crash-when-specifying-delay.patch \
%D%/packages/patches/dstat-skip-devices-without-io.patch \ %D%/packages/patches/dstat-skip-devices-without-io.patch \
%D%/packages/patches/dune-istl-2.7-fix-non-mpi-tests.patch \ %D%/packages/patches/dune-istl-2.7-fix-non-mpi-tests.patch \
@ -898,19 +910,17 @@ dist_patch_DATA = \
%D%/packages/patches/fasthenry-spFactor.patch \ %D%/packages/patches/fasthenry-spFactor.patch \
%D%/packages/patches/fbreader-curl-7.62.patch \ %D%/packages/patches/fbreader-curl-7.62.patch \
%D%/packages/patches/ffmpeg-prefer-dav1d.patch \ %D%/packages/patches/ffmpeg-prefer-dav1d.patch \
%D%/packages/patches/fifengine-swig-compat.patch \
%D%/packages/patches/fifo-map-fix-flags-for-gcc.patch \ %D%/packages/patches/fifo-map-fix-flags-for-gcc.patch \
%D%/packages/patches/fifo-map-remove-catch.hpp.patch \ %D%/packages/patches/fifo-map-remove-catch.hpp.patch \
%D%/packages/patches/file-CVE-2018-10360.patch \
%D%/packages/patches/findutils-gnulib-libio.patch \
%D%/packages/patches/findutils-localstatedir.patch \ %D%/packages/patches/findutils-localstatedir.patch \
%D%/packages/patches/findutils-makedev.patch \ %D%/packages/patches/findutils-test-rwlock-threads.patch \
%D%/packages/patches/findutils-test-xargs.patch \
%D%/packages/patches/flann-cmake-3.11.patch \ %D%/packages/patches/flann-cmake-3.11.patch \
%D%/packages/patches/flint-ldconfig.patch \ %D%/packages/patches/flint-ldconfig.patch \
%D%/packages/patches/foobillard++-pkg-config.patch \ %D%/packages/patches/foobillard++-pkg-config.patch \
%D%/packages/patches/foomatic-filters-CVE-2015-8327.patch \ %D%/packages/patches/foomatic-filters-CVE-2015-8327.patch \
%D%/packages/patches/foomatic-filters-CVE-2015-8560.patch \ %D%/packages/patches/foomatic-filters-CVE-2015-8560.patch \
%D%/packages/patches/fribidi-CVE-2019-18397.patch \ %D%/packages/patches/fontconfig-hurd-path-max.patch \
%D%/packages/patches/freeimage-unbundle.patch \ %D%/packages/patches/freeimage-unbundle.patch \
%D%/packages/patches/fuse-overlapping-headers.patch \ %D%/packages/patches/fuse-overlapping-headers.patch \
%D%/packages/patches/gawk-shell.patch \ %D%/packages/patches/gawk-shell.patch \
@ -918,18 +928,22 @@ dist_patch_DATA = \
%D%/packages/patches/gcc-arm-link-spec-fix.patch \ %D%/packages/patches/gcc-arm-link-spec-fix.patch \
%D%/packages/patches/gcc-asan-missing-include.patch \ %D%/packages/patches/gcc-asan-missing-include.patch \
%D%/packages/patches/gcc-boot-2.95.3.patch \ %D%/packages/patches/gcc-boot-2.95.3.patch \
%D%/packages/patches/gcc-boot-4.7.4.patch \ %D%/packages/patches/gcc-boot-4.6.4.patch \
%D%/packages/patches/gcc-cross-environment-variables.patch \ %D%/packages/patches/gcc-cross-environment-variables.patch \
%D%/packages/patches/gcc-fix-texi2pod.patch \ %D%/packages/patches/gcc-fix-texi2pod.patch \
%D%/packages/patches/gcc-4.8-libsanitizer-fix.patch \ %D%/packages/patches/gcc-4.8-libsanitizer-fix.patch \
%D%/packages/patches/gcc-4.9-libsanitizer-fix.patch \ %D%/packages/patches/gcc-4.9-libsanitizer-fix.patch \
%D%/packages/patches/gcc-4.9-libsanitizer-ustat.patch \ %D%/packages/patches/gcc-4.9-libsanitizer-ustat.patch \
%D%/packages/patches/gcc-libsanitizer-ustat.patch \ %D%/packages/patches/gcc-libsanitizer-ustat.patch \
%D%/packages/patches/gcc-4.9-libsanitizer-mode-size.patch \
%D%/packages/patches/gcc-6-libsanitizer-mode-size.patch \
%D%/packages/patches/gcc-7-libsanitizer-mode-size.patch \
%D%/packages/patches/gcc-libvtv-runpath.patch \ %D%/packages/patches/gcc-libvtv-runpath.patch \
%D%/packages/patches/gcc-strmov-store-file-names.patch \ %D%/packages/patches/gcc-strmov-store-file-names.patch \
%D%/packages/patches/gcc-4-compile-with-gcc-5.patch \ %D%/packages/patches/gcc-4-compile-with-gcc-5.patch \
%D%/packages/patches/gcc-4.6-gnu-inline.patch \ %D%/packages/patches/gcc-4.6-gnu-inline.patch \
%D%/packages/patches/gcc-4.9.3-mingw-gthr-default.patch \ %D%/packages/patches/gcc-4.9.3-mingw-gthr-default.patch \
%D%/packages/patches/gcc-5-hurd.patch \
%D%/packages/patches/gcc-5.0-libvtv-runpath.patch \ %D%/packages/patches/gcc-5.0-libvtv-runpath.patch \
%D%/packages/patches/gcc-5-source-date-epoch-1.patch \ %D%/packages/patches/gcc-5-source-date-epoch-1.patch \
%D%/packages/patches/gcc-5-source-date-epoch-2.patch \ %D%/packages/patches/gcc-5-source-date-epoch-2.patch \
@ -939,21 +953,18 @@ dist_patch_DATA = \
%D%/packages/patches/gcc-6-source-date-epoch-2.patch \ %D%/packages/patches/gcc-6-source-date-epoch-2.patch \
%D%/packages/patches/gcc-7-cross-mingw.patch \ %D%/packages/patches/gcc-7-cross-mingw.patch \
%D%/packages/patches/gcc-7-cross-environment-variables.patch \ %D%/packages/patches/gcc-7-cross-environment-variables.patch \
%D%/packages/patches/gcc-7-cross-toolexeclibdir.patch \
%D%/packages/patches/gcc-8-cross-environment-variables.patch \ %D%/packages/patches/gcc-8-cross-environment-variables.patch \
%D%/packages/patches/gcc-8-strmov-store-file-names.patch \ %D%/packages/patches/gcc-8-strmov-store-file-names.patch \
%D%/packages/patches/gcc-9-asan-fix-limits-include.patch \ %D%/packages/patches/gcc-9-asan-fix-limits-include.patch \
%D%/packages/patches/gcc-9-strmov-store-file-names.patch \ %D%/packages/patches/gcc-9-strmov-store-file-names.patch \
%D%/packages/patches/gd-CVE-2018-5711.patch \
%D%/packages/patches/gd-CVE-2018-1000222.patch \
%D%/packages/patches/gd-CVE-2019-6977.patch \
%D%/packages/patches/gd-CVE-2019-6978.patch \
%D%/packages/patches/gd-fix-tests-on-i686.patch \ %D%/packages/patches/gd-fix-tests-on-i686.patch \
%D%/packages/patches/gd-freetype-test-failure.patch \ %D%/packages/patches/gd-brect-bounds.patch \
%D%/packages/patches/gdm-default-session.patch \ %D%/packages/patches/gdm-default-session.patch \
%D%/packages/patches/geoclue-config.patch \ %D%/packages/patches/geoclue-config.patch \
%D%/packages/patches/ghc-8.0-fall-back-to-madv_dontneed.patch \ %D%/packages/patches/ghc-8.0-fall-back-to-madv_dontneed.patch \
%D%/packages/patches/ghc-diff-swap-cover-args.patch \ %D%/packages/patches/ghc-testsuite-dlopen-pie.patch \
%D%/packages/patches/ghc-dont-pass-linker-flags-via-response-files.patch \ %D%/packages/patches/ghc-diff-swap-cover-args.patch \
%D%/packages/patches/ghc-haddock-api-fix-haddock.patch \ %D%/packages/patches/ghc-haddock-api-fix-haddock.patch \
%D%/packages/patches/ghc-hpack-fix-tests.patch \ %D%/packages/patches/ghc-hpack-fix-tests.patch \
%D%/packages/patches/ghc-microlens-aeson-fix-tests.patch \ %D%/packages/patches/ghc-microlens-aeson-fix-tests.patch \
@ -963,7 +974,6 @@ dist_patch_DATA = \
%D%/packages/patches/ghostscript-no-header-id.patch \ %D%/packages/patches/ghostscript-no-header-id.patch \
%D%/packages/patches/ghostscript-no-header-uuid.patch \ %D%/packages/patches/ghostscript-no-header-uuid.patch \
%D%/packages/patches/ghostscript-no-header-creationdate.patch \ %D%/packages/patches/ghostscript-no-header-creationdate.patch \
%D%/packages/patches/giflib-make-reallocarray-private.patch \
%D%/packages/patches/glib-tests-timer.patch \ %D%/packages/patches/glib-tests-timer.patch \
%D%/packages/patches/glibc-CVE-2015-5180.patch \ %D%/packages/patches/glibc-CVE-2015-5180.patch \
%D%/packages/patches/glibc-CVE-2015-7547.patch \ %D%/packages/patches/glibc-CVE-2015-7547.patch \
@ -977,13 +987,19 @@ dist_patch_DATA = \
%D%/packages/patches/glibc-CVE-2018-11237.patch \ %D%/packages/patches/glibc-CVE-2018-11237.patch \
%D%/packages/patches/glibc-CVE-2019-7309.patch \ %D%/packages/patches/glibc-CVE-2019-7309.patch \
%D%/packages/patches/glibc-CVE-2019-9169.patch \ %D%/packages/patches/glibc-CVE-2019-9169.patch \
%D%/packages/patches/glibc-CVE-2019-19126.patch \
%D%/packages/patches/glibc-allow-kernel-2.6.32.patch \ %D%/packages/patches/glibc-allow-kernel-2.6.32.patch \
%D%/packages/patches/glibc-boot-2.16.0.patch \ %D%/packages/patches/glibc-boot-2.16.0.patch \
%D%/packages/patches/glibc-boot-2.2.5.patch \ %D%/packages/patches/glibc-boot-2.2.5.patch \
%D%/packages/patches/glibc-bootstrap-system-2.16.0.patch \ %D%/packages/patches/glibc-bootstrap-system-2.16.0.patch \
%D%/packages/patches/glibc-bootstrap-system.patch \ %D%/packages/patches/glibc-bootstrap-system.patch \
%D%/packages/patches/glibc-hidden-visibility-ldconfig.patch \ %D%/packages/patches/glibc-hidden-visibility-ldconfig.patch \
%D%/packages/patches/glibc-hurd-clock_gettime_monotonic.patch \
%D%/packages/patches/glibc-hurd-clock_t_centiseconds.patch \
%D%/packages/patches/glibc-hurd-gettyent.patch \
%D%/packages/patches/glibc-hurd-mach-print.patch \
%D%/packages/patches/glibc-hurd-magic-pid.patch \ %D%/packages/patches/glibc-hurd-magic-pid.patch \
%D%/packages/patches/glibc-hurd-signal-sa-siginfo.patch \
%D%/packages/patches/glibc-ldd-x86_64.patch \ %D%/packages/patches/glibc-ldd-x86_64.patch \
%D%/packages/patches/glibc-locales.patch \ %D%/packages/patches/glibc-locales.patch \
%D%/packages/patches/glibc-locales-2.28.patch \ %D%/packages/patches/glibc-locales-2.28.patch \
@ -996,15 +1012,18 @@ dist_patch_DATA = \
%D%/packages/patches/glibc-2.29-git-updates.patch \ %D%/packages/patches/glibc-2.29-git-updates.patch \
%D%/packages/patches/glibc-2.27-supported-locales.patch \ %D%/packages/patches/glibc-2.27-supported-locales.patch \
%D%/packages/patches/glibc-2.28-supported-locales.patch \ %D%/packages/patches/glibc-2.28-supported-locales.patch \
%D%/packages/patches/glibc-2.29-supported-locales.patch \
%D%/packages/patches/glibc-supported-locales.patch \ %D%/packages/patches/glibc-supported-locales.patch \
%D%/packages/patches/glm-restore-install-target.patch \ %D%/packages/patches/glm-restore-install-target.patch \
%D%/packages/patches/gmp-arm-asm-nothumb.patch \ %D%/packages/patches/gmp-arm-asm-nothumb.patch \
%D%/packages/patches/gmp-faulty-test.patch \ %D%/packages/patches/gmp-faulty-test.patch \
%D%/packages/patches/gnome-shell-theme.patch \ %D%/packages/patches/gnome-shell-theme.patch \
%D%/packages/patches/gnome-shell-disable-test.patch \
%D%/packages/patches/gnome-todo-delete-esource-duplicate.patch \ %D%/packages/patches/gnome-todo-delete-esource-duplicate.patch \
%D%/packages/patches/gnome-tweaks-search-paths.patch \ %D%/packages/patches/gnome-tweaks-search-paths.patch \
%D%/packages/patches/gnupg-default-pinentry.patch \ %D%/packages/patches/gnupg-default-pinentry.patch \
%D%/packages/patches/gnutls-skip-trust-store-test.patch \ %D%/packages/patches/gnutls-skip-trust-store-test.patch \
%D%/packages/patches/gnutls-cross.patch \
%D%/packages/patches/gobject-introspection-absolute-shlib-path.patch \ %D%/packages/patches/gobject-introspection-absolute-shlib-path.patch \
%D%/packages/patches/gobject-introspection-cc.patch \ %D%/packages/patches/gobject-introspection-cc.patch \
%D%/packages/patches/gobject-introspection-girepository.patch \ %D%/packages/patches/gobject-introspection-girepository.patch \
@ -1018,18 +1037,21 @@ dist_patch_DATA = \
%D%/packages/patches/gromacs-tinyxml2.patch \ %D%/packages/patches/gromacs-tinyxml2.patch \
%D%/packages/patches/groovy-add-exceptionutilsgenerator.patch \ %D%/packages/patches/groovy-add-exceptionutilsgenerator.patch \
%D%/packages/patches/grub-efi-fat-serial-number.patch \ %D%/packages/patches/grub-efi-fat-serial-number.patch \
%D%/packages/patches/gsl-test-i686.patch \ %D%/packages/patches/grub-verifiers-Blocklist-fallout-cleanup.patch \
%D%/packages/patches/gspell-dash-test.patch \ %D%/packages/patches/gspell-dash-test.patch \
%D%/packages/patches/guile-1.8-cpp-4.5.patch \ %D%/packages/patches/guile-1.8-cpp-4.5.patch \
%D%/packages/patches/guile-2.2-default-utf8.patch \
%D%/packages/patches/guile-2.2-skip-oom-test.patch \ %D%/packages/patches/guile-2.2-skip-oom-test.patch \
%D%/packages/patches/guile-default-utf8.patch \ %D%/packages/patches/guile-default-utf8.patch \
%D%/packages/patches/guile-gdbm-ffi-support-gdbm-1.14.patch \ %D%/packages/patches/guile-2.2-default-utf8.patch \
%D%/packages/patches/guile-linux-syscalls.patch \
%D%/packages/patches/guile-present-coding.patch \
%D%/packages/patches/guile-relocatable.patch \ %D%/packages/patches/guile-relocatable.patch \
%D%/packages/patches/guile-3.0-relocatable.patch \
%D%/packages/patches/guile-linux-syscalls.patch \
%D%/packages/patches/guile-3.0-linux-syscalls.patch \
%D%/packages/patches/guile-gdbm-ffi-support-gdbm-1.14.patch \
%D%/packages/patches/guile-present-coding.patch \
%D%/packages/patches/guile-rsvg-pkgconfig.patch \ %D%/packages/patches/guile-rsvg-pkgconfig.patch \
%D%/packages/patches/guile-emacs-fix-configure.patch \ %D%/packages/patches/guile-emacs-fix-configure.patch \
%D%/packages/patches/guile-sqlite3-fix-cross-compilation.patch \
%D%/packages/patches/gtk2-respect-GUIX_GTK2_PATH.patch \ %D%/packages/patches/gtk2-respect-GUIX_GTK2_PATH.patch \
%D%/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch \ %D%/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch \
%D%/packages/patches/gtk2-theme-paths.patch \ %D%/packages/patches/gtk2-theme-paths.patch \
@ -1055,7 +1077,7 @@ dist_patch_DATA = \
%D%/packages/patches/hdf-eos5-fix-szip.patch \ %D%/packages/patches/hdf-eos5-fix-szip.patch \
%D%/packages/patches/hdf-eos5-fortrantests.patch \ %D%/packages/patches/hdf-eos5-fortrantests.patch \
%D%/packages/patches/hubbub-sort-entities.patch \ %D%/packages/patches/hubbub-sort-entities.patch \
%D%/packages/patches/hurd-fix-eth-multiplexer-dependency.patch \ %D%/packages/patches/hurd-cross.patch \
%D%/packages/patches/hplip-remove-imageprocessor.patch \ %D%/packages/patches/hplip-remove-imageprocessor.patch \
%D%/packages/patches/hydra-disable-darcs-test.patch \ %D%/packages/patches/hydra-disable-darcs-test.patch \
%D%/packages/patches/icecat-makeicecat.patch \ %D%/packages/patches/icecat-makeicecat.patch \
@ -1070,6 +1092,7 @@ dist_patch_DATA = \
%D%/packages/patches/id3lib-UTF16-writing-bug.patch \ %D%/packages/patches/id3lib-UTF16-writing-bug.patch \
%D%/packages/patches/ilmbase-fix-tests.patch \ %D%/packages/patches/ilmbase-fix-tests.patch \
%D%/packages/patches/ilmbase-openexr-pkg-config.patch \ %D%/packages/patches/ilmbase-openexr-pkg-config.patch \
%D%/packages/patches/inetutils-hurd.patch \
%D%/packages/patches/inkscape-poppler-0.76.patch \ %D%/packages/patches/inkscape-poppler-0.76.patch \
%D%/packages/patches/intltool-perl-compatibility.patch \ %D%/packages/patches/intltool-perl-compatibility.patch \
%D%/packages/patches/irrlicht-use-system-libs.patch \ %D%/packages/patches/irrlicht-use-system-libs.patch \
@ -1085,7 +1108,6 @@ dist_patch_DATA = \
%D%/packages/patches/java-xerces-bootclasspath.patch \ %D%/packages/patches/java-xerces-bootclasspath.patch \
%D%/packages/patches/java-xerces-build_dont_unzip.patch \ %D%/packages/patches/java-xerces-build_dont_unzip.patch \
%D%/packages/patches/java-xerces-xjavac_taskdef.patch \ %D%/packages/patches/java-xerces-xjavac_taskdef.patch \
%D%/packages/patches/jbig2dec-ignore-testtest.patch \
%D%/packages/patches/jfsutils-add-sysmacros.patch \ %D%/packages/patches/jfsutils-add-sysmacros.patch \
%D%/packages/patches/jfsutils-include-systypes.patch \ %D%/packages/patches/jfsutils-include-systypes.patch \
%D%/packages/patches/jsoncpp-fix-inverted-case.patch \ %D%/packages/patches/jsoncpp-fix-inverted-case.patch \
@ -1131,6 +1153,7 @@ dist_patch_DATA = \
%D%/packages/patches/ldc-bootstrap-disable-tests.patch \ %D%/packages/patches/ldc-bootstrap-disable-tests.patch \
%D%/packages/patches/ldc-disable-phobos-tests.patch \ %D%/packages/patches/ldc-disable-phobos-tests.patch \
%D%/packages/patches/leela-zero-gtest.patch \ %D%/packages/patches/leela-zero-gtest.patch \
%D%/packages/patches/less-hurd-path-max.patch \
%D%/packages/patches/liba52-enable-pic.patch \ %D%/packages/patches/liba52-enable-pic.patch \
%D%/packages/patches/liba52-link-with-libm.patch \ %D%/packages/patches/liba52-link-with-libm.patch \
%D%/packages/patches/liba52-set-soname.patch \ %D%/packages/patches/liba52-set-soname.patch \
@ -1148,9 +1171,6 @@ dist_patch_DATA = \
%D%/packages/patches/libgit2-mtime-0.patch \ %D%/packages/patches/libgit2-mtime-0.patch \
%D%/packages/patches/libgnome-encoding.patch \ %D%/packages/patches/libgnome-encoding.patch \
%D%/packages/patches/libgnomeui-utf8.patch \ %D%/packages/patches/libgnomeui-utf8.patch \
%D%/packages/patches/libgpg-error-gawk-compat.patch \
%D%/packages/patches/libffi-3.2.1-complex-alpha.patch \
%D%/packages/patches/libjpeg-turbo-CVE-2019-2201.patch \
%D%/packages/patches/libjxr-fix-function-signature.patch \ %D%/packages/patches/libjxr-fix-function-signature.patch \
%D%/packages/patches/libjxr-fix-typos.patch \ %D%/packages/patches/libjxr-fix-typos.patch \
%D%/packages/patches/libotr-test-auth-fix.patch \ %D%/packages/patches/libotr-test-auth-fix.patch \
@ -1166,6 +1186,7 @@ dist_patch_DATA = \
%D%/packages/patches/libmygpo-qt-fix-qt-5.11.patch \ %D%/packages/patches/libmygpo-qt-fix-qt-5.11.patch \
%D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch \ %D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch \
%D%/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch \ %D%/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch \
%D%/packages/patches/libreoffice-poppler-compat.patch \
%D%/packages/patches/libsndfile-armhf-type-checks.patch \ %D%/packages/patches/libsndfile-armhf-type-checks.patch \
%D%/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch \ %D%/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch \
%D%/packages/patches/libsndfile-CVE-2017-8362.patch \ %D%/packages/patches/libsndfile-CVE-2017-8362.patch \
@ -1174,6 +1195,8 @@ dist_patch_DATA = \
%D%/packages/patches/libtgvoip-disable-sse2.patch \ %D%/packages/patches/libtgvoip-disable-sse2.patch \
%D%/packages/patches/libtgvoip-disable-webrtc.patch \ %D%/packages/patches/libtgvoip-disable-webrtc.patch \
%D%/packages/patches/libtheora-config-guess.patch \ %D%/packages/patches/libtheora-config-guess.patch \
%D%/packages/patches/libtirpc-hurd.patch \
%D%/packages/patches/libtirpc-hurd-client.patch \
%D%/packages/patches/libtommath-fix-linkage.patch \ %D%/packages/patches/libtommath-fix-linkage.patch \
%D%/packages/patches/libtool-skip-tests2.patch \ %D%/packages/patches/libtool-skip-tests2.patch \
%D%/packages/patches/libusb-0.1-disable-tests.patch \ %D%/packages/patches/libusb-0.1-disable-tests.patch \
@ -1192,6 +1215,7 @@ dist_patch_DATA = \
%D%/packages/patches/lierolibre-remove-arch-warning.patch \ %D%/packages/patches/lierolibre-remove-arch-warning.patch \
%D%/packages/patches/lierolibre-try-building-other-arch.patch \ %D%/packages/patches/lierolibre-try-building-other-arch.patch \
%D%/packages/patches/linkchecker-tests-require-network.patch \ %D%/packages/patches/linkchecker-tests-require-network.patch \
%D%/packages/patches/linphoneqt-tabbutton.patch \
%D%/packages/patches/linux-libre-support-for-Pinebook-Pro.patch \ %D%/packages/patches/linux-libre-support-for-Pinebook-Pro.patch \
%D%/packages/patches/linux-pam-no-setfsuid.patch \ %D%/packages/patches/linux-pam-no-setfsuid.patch \
%D%/packages/patches/lirc-localstatedir.patch \ %D%/packages/patches/lirc-localstatedir.patch \
@ -1210,7 +1234,6 @@ dist_patch_DATA = \
%D%/packages/patches/luminance-hdr-qt-printer.patch \ %D%/packages/patches/luminance-hdr-qt-printer.patch \
%D%/packages/patches/lvm2-static-link.patch \ %D%/packages/patches/lvm2-static-link.patch \
%D%/packages/patches/lxsession-use-gapplication.patch \ %D%/packages/patches/lxsession-use-gapplication.patch \
%D%/packages/patches/make-glibc-compat.patch \
%D%/packages/patches/make-impure-dirs.patch \ %D%/packages/patches/make-impure-dirs.patch \
%D%/packages/patches/mariadb-client-test-32bit.patch \ %D%/packages/patches/mariadb-client-test-32bit.patch \
%D%/packages/patches/mars-install.patch \ %D%/packages/patches/mars-install.patch \
@ -1233,6 +1256,8 @@ dist_patch_DATA = \
%D%/packages/patches/mingw-w64-reproducible-gendef.patch \ %D%/packages/patches/mingw-w64-reproducible-gendef.patch \
%D%/packages/patches/minisat-friend-declaration.patch \ %D%/packages/patches/minisat-friend-declaration.patch \
%D%/packages/patches/minisat-install.patch \ %D%/packages/patches/minisat-install.patch \
%D%/packages/patches/mit-krb5-hurd.patch \
%D%/packages/patches/mit-krb5-qualify-short-hostnames.patch \
%D%/packages/patches/mpc123-initialize-ao.patch \ %D%/packages/patches/mpc123-initialize-ao.patch \
%D%/packages/patches/module-init-tools-moduledir.patch \ %D%/packages/patches/module-init-tools-moduledir.patch \
%D%/packages/patches/monero-use-system-miniupnpc.patch \ %D%/packages/patches/monero-use-system-miniupnpc.patch \
@ -1293,6 +1318,7 @@ dist_patch_DATA = \
%D%/packages/patches/openjdk-10-idlj-reproducibility.patch \ %D%/packages/patches/openjdk-10-idlj-reproducibility.patch \
%D%/packages/patches/openmpi-mtl-priorities.patch \ %D%/packages/patches/openmpi-mtl-priorities.patch \
%D%/packages/patches/openocd-nrf52.patch \ %D%/packages/patches/openocd-nrf52.patch \
%D%/packages/patches/openssh-hurd.patch \
%D%/packages/patches/openssl-runpath.patch \ %D%/packages/patches/openssl-runpath.patch \
%D%/packages/patches/openssl-1.1-c-rehash-in.patch \ %D%/packages/patches/openssl-1.1-c-rehash-in.patch \
%D%/packages/patches/openssl-c-rehash-in.patch \ %D%/packages/patches/openssl-c-rehash-in.patch \
@ -1307,6 +1333,8 @@ dist_patch_DATA = \
%D%/packages/patches/p7zip-remove-unused-code.patch \ %D%/packages/patches/p7zip-remove-unused-code.patch \
%D%/packages/patches/pam-krb5-CVE-2020-10595.patch \ %D%/packages/patches/pam-krb5-CVE-2020-10595.patch \
%D%/packages/patches/pam-mount-luks2-support.patch \ %D%/packages/patches/pam-mount-luks2-support.patch \
%D%/packages/patches/pango-skip-libthai-test.patch \
%D%/packages/patches/pciutils-hurd-configure.patch \
%D%/packages/patches/sdl-pango-api_additions.patch \ %D%/packages/patches/sdl-pango-api_additions.patch \
%D%/packages/patches/sdl-pango-blit_overflow.patch \ %D%/packages/patches/sdl-pango-blit_overflow.patch \
%D%/packages/patches/sdl-pango-fillrect_crash.patch \ %D%/packages/patches/sdl-pango-fillrect_crash.patch \
@ -1316,6 +1344,7 @@ dist_patch_DATA = \
%D%/packages/patches/patchutils-test-perms.patch \ %D%/packages/patches/patchutils-test-perms.patch \
%D%/packages/patches/patch-hurd-path-max.patch \ %D%/packages/patches/patch-hurd-path-max.patch \
%D%/packages/patches/perl-autosplit-default-time.patch \ %D%/packages/patches/perl-autosplit-default-time.patch \
%D%/packages/patches/perl-cross.patch \
%D%/packages/patches/perl-deterministic-ordering.patch \ %D%/packages/patches/perl-deterministic-ordering.patch \
%D%/packages/patches/perl-finance-quote-unuse-mozilla-ca.patch \ %D%/packages/patches/perl-finance-quote-unuse-mozilla-ca.patch \
%D%/packages/patches/perl-io-socket-ssl-openssl-1.0.2f-fix.patch \ %D%/packages/patches/perl-io-socket-ssl-openssl-1.0.2f-fix.patch \
@ -1346,7 +1375,6 @@ dist_patch_DATA = \
%D%/packages/patches/portaudio-audacity-compat.patch \ %D%/packages/patches/portaudio-audacity-compat.patch \
%D%/packages/patches/portmidi-modular-build.patch \ %D%/packages/patches/portmidi-modular-build.patch \
%D%/packages/patches/postgresql-disable-resolve_symlinks.patch \ %D%/packages/patches/postgresql-disable-resolve_symlinks.patch \
%D%/packages/patches/potrace-tests.patch \
%D%/packages/patches/procmail-ambiguous-getline-debian.patch \ %D%/packages/patches/procmail-ambiguous-getline-debian.patch \
%D%/packages/patches/procmail-CVE-2014-3618.patch \ %D%/packages/patches/procmail-CVE-2014-3618.patch \
%D%/packages/patches/procmail-CVE-2017-16844.patch \ %D%/packages/patches/procmail-CVE-2017-16844.patch \
@ -1369,20 +1397,21 @@ dist_patch_DATA = \
%D%/packages/patches/python-2.7-search-paths.patch \ %D%/packages/patches/python-2.7-search-paths.patch \
%D%/packages/patches/python-2.7-site-prefixes.patch \ %D%/packages/patches/python-2.7-site-prefixes.patch \
%D%/packages/patches/python-2.7-source-date-epoch.patch \ %D%/packages/patches/python-2.7-source-date-epoch.patch \
%D%/packages/patches/python-3-arm-alignment.patch \
%D%/packages/patches/python-3-deterministic-build-info.patch \ %D%/packages/patches/python-3-deterministic-build-info.patch \
%D%/packages/patches/python-3-search-paths.patch \ %D%/packages/patches/python-3-search-paths.patch \
%D%/packages/patches/python-3-fix-tests.patch \ %D%/packages/patches/python-3-fix-tests.patch \
%D%/packages/patches/python-3.8-search-paths.patch \
%D%/packages/patches/python-3.8-fix-tests.patch \ %D%/packages/patches/python-3.8-fix-tests.patch \
%D%/packages/patches/python-CVE-2018-14647.patch \ %D%/packages/patches/python-CVE-2018-14647.patch \
%D%/packages/patches/python-aiohttp-3.6.2-no-warning-fail.patch \ %D%/packages/patches/python-aiohttp-3.6.2-no-warning-fail.patch \
%D%/packages/patches/python-alembic-exceptions-cause.patch \ %D%/packages/patches/python-alembic-exceptions-cause.patch \
%D%/packages/patches/python-axolotl-AES-fix.patch \ %D%/packages/patches/python-axolotl-AES-fix.patch \
%D%/packages/patches/python-cairocffi-dlopen-path.patch \ %D%/packages/patches/python-cairocffi-dlopen-path.patch \
%D%/packages/patches/python-cffi-x87-stack-clean.patch \ %D%/packages/patches/python-cross-compile.patch \
%D%/packages/patches/python2-larch-coverage-4.0a6-compatibility.patch \ %D%/packages/patches/python2-larch-coverage-4.0a6-compatibility.patch \
%D%/packages/patches/python-configobj-setuptools.patch \ %D%/packages/patches/python-configobj-setuptools.patch \
%D%/packages/patches/python-flask-restful-werkzeug-compat.patch \ %D%/packages/patches/python-flask-restful-werkzeug-compat.patch \
%D%/packages/patches/python-gst-fix-build-with-python-3.8.patch \
%D%/packages/patches/python-keras-integration-test.patch \ %D%/packages/patches/python-keras-integration-test.patch \
%D%/packages/patches/python-pep8-stdlib-tokenize-compat.patch \ %D%/packages/patches/python-pep8-stdlib-tokenize-compat.patch \
%D%/packages/patches/python-pyfakefs-remove-bad-test.patch \ %D%/packages/patches/python-pyfakefs-remove-bad-test.patch \
@ -1395,6 +1424,7 @@ dist_patch_DATA = \
%D%/packages/patches/python2-parameterized-docstring-test.patch \ %D%/packages/patches/python2-parameterized-docstring-test.patch \
%D%/packages/patches/python-paste-remove-timing-test.patch \ %D%/packages/patches/python-paste-remove-timing-test.patch \
%D%/packages/patches/python-pycrypto-CVE-2013-7459.patch \ %D%/packages/patches/python-pycrypto-CVE-2013-7459.patch \
%D%/packages/patches/python-pycrypto-time-clock.patch \
%D%/packages/patches/python2-pygobject-2-gi-info-type-error-domain.patch \ %D%/packages/patches/python2-pygobject-2-gi-info-type-error-domain.patch \
%D%/packages/patches/python-pygpgme-fix-pinentry-tests.patch \ %D%/packages/patches/python-pygpgme-fix-pinentry-tests.patch \
%D%/packages/patches/python-robotframework-honor-source-date-epoch.patch \ %D%/packages/patches/python-robotframework-honor-source-date-epoch.patch \
@ -1411,6 +1441,7 @@ dist_patch_DATA = \
%D%/packages/patches/qemu-fix-documentation-build-failure.patch \ %D%/packages/patches/qemu-fix-documentation-build-failure.patch \
%D%/packages/patches/qrcodegen-cpp-make-install.patch \ %D%/packages/patches/qrcodegen-cpp-make-install.patch \
%D%/packages/patches/qt4-ldflags.patch \ %D%/packages/patches/qt4-ldflags.patch \
%D%/packages/patches/qtbase-moc-ignore-gcc-macro.patch \
%D%/packages/patches/qtbase-use-TZDIR.patch \ %D%/packages/patches/qtbase-use-TZDIR.patch \
%D%/packages/patches/qtbase-QTBUG-81715.patch \ %D%/packages/patches/qtbase-QTBUG-81715.patch \
%D%/packages/patches/qtscript-disable-tests.patch \ %D%/packages/patches/qtscript-disable-tests.patch \
@ -1452,10 +1483,11 @@ dist_patch_DATA = \
%D%/packages/patches/scheme48-tests.patch \ %D%/packages/patches/scheme48-tests.patch \
%D%/packages/patches/scotch-build-parallelism.patch \ %D%/packages/patches/scotch-build-parallelism.patch \
%D%/packages/patches/scotch-integer-declarations.patch \ %D%/packages/patches/scotch-integer-declarations.patch \
%D%/packages/patches/screen-hurd-path-max.patch \
%D%/packages/patches/sdl-libx11-1.6.patch \ %D%/packages/patches/sdl-libx11-1.6.patch \
%D%/packages/patches/seahorse-gkr-use-0-on-empty-flags.patch \
%D%/packages/patches/seq24-rename-mutex.patch \ %D%/packages/patches/seq24-rename-mutex.patch \
%D%/packages/patches/sharutils-CVE-2018-1000097.patch \ %D%/packages/patches/sharutils-CVE-2018-1000097.patch \
%D%/packages/patches/shadow-hurd-pctrl.patch \
%D%/packages/patches/shishi-fix-libgcrypt-detection.patch \ %D%/packages/patches/shishi-fix-libgcrypt-detection.patch \
%D%/packages/patches/slim-session.patch \ %D%/packages/patches/slim-session.patch \
%D%/packages/patches/slim-config.patch \ %D%/packages/patches/slim-config.patch \
@ -1471,7 +1503,6 @@ dist_patch_DATA = \
%D%/packages/patches/superlu-dist-awpm-grid.patch \ %D%/packages/patches/superlu-dist-awpm-grid.patch \
%D%/packages/patches/superlu-dist-scotchmetis.patch \ %D%/packages/patches/superlu-dist-scotchmetis.patch \
%D%/packages/patches/supertux-unbundle-squirrel.patch \ %D%/packages/patches/supertux-unbundle-squirrel.patch \
%D%/packages/patches/swig-guile-gc.patch \
%D%/packages/patches/swish-e-search.patch \ %D%/packages/patches/swish-e-search.patch \
%D%/packages/patches/swish-e-format-security.patch \ %D%/packages/patches/swish-e-format-security.patch \
%D%/packages/patches/symmetrica-bruch.patch \ %D%/packages/patches/symmetrica-bruch.patch \
@ -1486,13 +1517,14 @@ dist_patch_DATA = \
%D%/packages/patches/tar-skip-unreliable-tests.patch \ %D%/packages/patches/tar-skip-unreliable-tests.patch \
%D%/packages/patches/tcc-boot-0.9.27.patch \ %D%/packages/patches/tcc-boot-0.9.27.patch \
%D%/packages/patches/tclxml-3.2-install.patch \ %D%/packages/patches/tclxml-3.2-install.patch \
%D%/packages/patches/tcl-fix-cross-compilation.patch \
%D%/packages/patches/tcsh-fix-autotest.patch \ %D%/packages/patches/tcsh-fix-autotest.patch \
%D%/packages/patches/tcsh-fix-out-of-bounds-read.patch \
%D%/packages/patches/teensy-loader-cli-help.patch \ %D%/packages/patches/teensy-loader-cli-help.patch \
%D%/packages/patches/texinfo-5-perl-compat.patch \ %D%/packages/patches/texinfo-5-perl-compat.patch \
%D%/packages/patches/texlive-bin-CVE-2018-17407.patch \ %D%/packages/patches/texlive-bin-poppler-0.83.patch \
%D%/packages/patches/texlive-bin-luatex-poppler-compat.patch \ %D%/packages/patches/texlive-bin-poppler-0.86.patch \
%D%/packages/patches/telegram-purple-adjust-test.patch \ %D%/packages/patches/telegram-purple-adjust-test.patch \
%D%/packages/patches/telepathy-glib-channel-memory-leak.patch \
%D%/packages/patches/texi2html-document-encoding.patch \ %D%/packages/patches/texi2html-document-encoding.patch \
%D%/packages/patches/texi2html-i18n.patch \ %D%/packages/patches/texi2html-i18n.patch \
%D%/packages/patches/thefuck-test-environ.patch \ %D%/packages/patches/thefuck-test-environ.patch \
@ -1534,6 +1566,7 @@ dist_patch_DATA = \
%D%/packages/patches/vboot-utils-fix-format-load-address.patch \ %D%/packages/patches/vboot-utils-fix-format-load-address.patch \
%D%/packages/patches/vboot-utils-fix-tests-show-contents.patch \ %D%/packages/patches/vboot-utils-fix-tests-show-contents.patch \
%D%/packages/patches/vboot-utils-skip-test-workbuf.patch \ %D%/packages/patches/vboot-utils-skip-test-workbuf.patch \
%D%/packages/patches/vigra-python-compat.patch \
%D%/packages/patches/vinagre-newer-freerdp.patch \ %D%/packages/patches/vinagre-newer-freerdp.patch \
%D%/packages/patches/vinagre-newer-rdp-parameters.patch \ %D%/packages/patches/vinagre-newer-rdp-parameters.patch \
%D%/packages/patches/virglrenderer-CVE-2017-6386.patch \ %D%/packages/patches/virglrenderer-CVE-2017-6386.patch \
@ -1582,5 +1615,4 @@ dist_patch_DATA = \
%D%/packages/patches/zziplib-CVE-2018-16548.patch %D%/packages/patches/zziplib-CVE-2018-16548.patch
MISC_DISTRO_FILES = \ MISC_DISTRO_FILES = \
%D%/packages/ld-wrapper.in \ %D%/packages/ld-wrapper.in
%D%/packages/ld-wrapper-next.in

View File

@ -95,7 +95,7 @@
("libchamplain" ,libchamplain) ("libchamplain" ,libchamplain)
("libglade" ,libglade) ("libglade" ,libglade)
("libgsf" ,libgsf) ("libgsf" ,libgsf)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("librsvg" ,librsvg) ("librsvg" ,librsvg)
("libxml2" ,libxml2) ("libxml2" ,libxml2)

View File

@ -48,6 +48,7 @@
(arguments (arguments
`(#:modules ((ice-9 ftw) `(#:modules ((ice-9 ftw)
,@%gnu-build-system-modules) ,@%gnu-build-system-modules)
#:configure-flags '("--disable-static")
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
;; XXX After repacking the sources the timestamps are reset to the ;; XXX After repacking the sources the timestamps are reset to the

View File

@ -29,8 +29,9 @@
;;; Copyright © 2019 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2019 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2019 Alex Griffin <a@ajgrf.com> ;;; Copyright © 2019 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net> ;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2019, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com> ;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; ;;;
@ -91,6 +92,7 @@
#:use-module (gnu packages groff) #:use-module (gnu packages groff)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
#:use-module (gnu packages hurd)
#:use-module (gnu packages image) #:use-module (gnu packages image)
#:use-module (gnu packages imagemagick) #:use-module (gnu packages imagemagick)
#:use-module (gnu packages inkscape) #:use-module (gnu packages inkscape)
@ -257,10 +259,10 @@ and provides a \"top-like\" mode (monitoring).")
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
;; This is the Guile we use as a cross-compiler... ;; This is the Guile we use as a cross-compiler...
("guile" ,guile-2.2.7))) ("guile" ,guile-3.0)))
(inputs (inputs
;; ... and this is the one that appears in shebangs when cross-compiling. ;; ... and this is the one that appears in shebangs when cross-compiling.
`(("guile" ,guile-2.2.7) ;for <https://bugs.gnu.org/37757> `(("guile" ,guile-3.0)
;; The 'shepherd' command uses Readline when used interactively. It's ;; The 'shepherd' command uses Readline when used interactively. It's
;; an unusual use case though, so we don't propagate it. ;; an unusual use case though, so we don't propagate it.
@ -274,15 +276,18 @@ interface and is based on GNU Guile.")
(license license:gpl3+) (license license:gpl3+)
(home-page "https://www.gnu.org/software/shepherd/"))) (home-page "https://www.gnu.org/software/shepherd/")))
(define-public guile3.0-shepherd (define-public guile2.2-shepherd
(package (package
(inherit shepherd) (inherit shepherd)
(name "guile3.0-shepherd") (name "guile2.2-shepherd")
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
("guile" ,guile-next))) ("guile" ,guile-2.2)))
(inputs (inputs
`(("guile" ,guile-next))))) `(("guile" ,guile-2.2)))))
(define-public guile3.0-shepherd
(deprecated-package "guile3.0-shepherd" shepherd))
(define-public guile2.0-shepherd (define-public guile2.0-shepherd
(package (package
@ -488,6 +493,7 @@ re-executing them as necessary.")
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/inetutils/inetutils-" (uri (string-append "mirror://gnu/inetutils/inetutils-"
version ".tar.gz")) version ".tar.gz"))
(patches (search-patches "inetutils-hurd.patch"))
(sha256 (sha256
(base32 (base32
"05n65k4ixl85dc6rxc51b1b732gnmm8xnqi424dy9f1nz7ppb3xy")))) "05n65k4ixl85dc6rxc51b1b732gnmm8xnqi424dy9f1nz7ppb3xy"))))
@ -499,13 +505,27 @@ re-executing them as necessary.")
;; cross-compiling (by default it does not.) ;; cross-compiling (by default it does not.)
,@(if (%current-target-system) ,@(if (%current-target-system)
'("--with-path-procnet-dev=/proc/net/dev") '("--with-path-procnet-dev=/proc/net/dev")
'())
,@(if (hurd-target?)
'("--disable-rcp"
"--disable-rexec"
"--disable-rexecd"
"--disable-rlogin"
"--disable-rlogind"
"--disable-rsh"
"--disable-rshd"
"--disable-uucpd"
"--disable-whois")
'())) '()))
;; On some systems, 'libls.sh' may fail with an error such as: ;; On some systems, 'libls.sh' may fail with an error such as:
;; "Failed to tell switch -a apart from -A". ;; "Failed to tell switch -a apart from -A".
#:parallel-tests? #f)) #:parallel-tests? #f))
(inputs `(("ncurses" ,ncurses) (inputs `(("ncurses" ,ncurses)
("readline" ,readline))) ;for 'ftp' ("readline" ,readline))) ;for 'ftp'
(native-inputs `(("netstat" ,net-tools))) ;for tests (native-inputs (if (member (%current-system)
(package-supported-systems net-tools))
`(("netstat" ,net-tools)) ;for tests
'()))
(home-page "https://www.gnu.org/software/inetutils/") (home-page "https://www.gnu.org/software/inetutils/")
(synopsis "Basic networking utilities") (synopsis "Basic networking utilities")
(description (description
@ -523,6 +543,7 @@ hostname.")
(uri (string-append (uri (string-append
"https://github.com/shadow-maint/shadow/releases/" "https://github.com/shadow-maint/shadow/releases/"
"download/" version "/shadow-" version ".tar.xz")) "download/" version "/shadow-" version ".tar.xz"))
(patches (search-patches "shadow-hurd-pctrl.patch"))
(sha256 (sha256
(base32 (base32
"0qmfq50sdhz6xilgxvinblll8j2iqfl7hwk45bq744y4plq4dbd3")))) "0qmfq50sdhz6xilgxvinblll8j2iqfl7hwk45bq744y4plq4dbd3"))))
@ -556,11 +577,7 @@ hostname.")
(for-each delete-file (find-files man "^groups\\.")) (for-each delete-file (find-files man "^groups\\."))
#t)))))) #t))))))
(inputs (if (string-contains (or (%current-target-system) (inputs `(("linux-pam" ,linux-pam)))
(%current-system))
"-linux")
`(("linux-pam" ,linux-pam))
'()))
(home-page "https://github.com/shadow-maint/shadow") (home-page "https://github.com/shadow-maint/shadow")
(synopsis "Authentication-related tools such as passwd, su, and login") (synopsis "Authentication-related tools such as passwd, su, and login")
(description (description
@ -587,13 +604,17 @@ login, passwd, su, groupadd, and useradd.")
`(#:phases `(#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(replace 'configure (replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs target #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")) (let* ((out (assoc-ref outputs "out"))
(man8 (string-append out "/share/man/man8")) (man8 (string-append out "/share/man/man8"))
(sbin (string-append out "/sbin")) (sbin (string-append out "/sbin"))
(shadow (assoc-ref inputs "shadow")) (shadow (assoc-ref inputs "shadow"))
(login (string-append shadow "/bin/login"))) (login (string-append shadow "/bin/login")))
(substitute* "Makefile" (substitute* "Makefile"
,@(if (%current-target-system)
'((("CC=.*$")
(string-append "CC=" target "-gcc\n")))
'())
(("^SBINDIR.*") (("^SBINDIR.*")
(string-append "SBINDIR = " out (string-append "SBINDIR = " out
"/sbin\n")) "/sbin\n"))
@ -944,8 +965,9 @@ connection alive.")
("file" ,file))) ("file" ,file)))
(inputs `(("inetutils" ,inetutils) (inputs `(("inetutils" ,inetutils)
("net-tools" ,net-tools) ,@(if (hurd-target?) '()
("iproute" ,iproute) `(("net-tools" ,net-tools)
("iproute" ,iproute)))
;; isc-dhcp bundles a copy of BIND, which has proved vulnerable ;; isc-dhcp bundles a copy of BIND, which has proved vulnerable
;; in the past. Use a BIND-VERSION of our choosing instead. ;; in the past. Use a BIND-VERSION of our choosing instead.
@ -1767,12 +1789,12 @@ characters can be replaced as well, as can UTF-8 characters.")
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
`(("ntfs-3g" ,ntfs-3g) `(("ntfs-3g" ,ntfs-3g)
("util-linux" ,util-linux) ("util-linux" ,util-linux "lib")
("openssl" ,openssl) ("openssl" ,openssl)
;; FIXME: add reiserfs. ;; FIXME: add reiserfs.
("zlib" ,zlib) ("zlib" ,zlib)
("e2fsprogs" ,e2fsprogs) ("e2fsprogs" ,e2fsprogs)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("ncurses" ,ncurses))) ("ncurses" ,ncurses)))
(home-page "https://www.cgsecurity.org/wiki/TestDisk") (home-page "https://www.cgsecurity.org/wiki/TestDisk")
(synopsis "Data recovery tool") (synopsis "Data recovery tool")
@ -2897,14 +2919,7 @@ buffers.")
(base32 "1gpdjs5aj6vsnzwcjvw5bb120lgffvvshi4202phr0bzw3b92ky8")))) (base32 "1gpdjs5aj6vsnzwcjvw5bb120lgffvvshi4202phr0bzw3b92ky8"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f ; many of the tests try to load kernel modules `(#:tests? #f)) ; many of the tests try to load kernel modules
#:phases
(modify-phases %standard-phases
(replace 'bootstrap
(lambda _
;; Don't run configure in this phase.
(setenv "NOCONFIGURE" "1")
(invoke "sh" "autogen.sh"))))))
(inputs (inputs
`(("cairo" ,cairo) `(("cairo" ,cairo)
("elfutils" ,elfutils) ; libdw ("elfutils" ,elfutils) ; libdw
@ -3643,6 +3658,7 @@ tcpdump and snoop.")
("lvm2" ,lvm2) ("lvm2" ,lvm2)
("openssl" ,openssl) ("openssl" ,openssl)
("pcre" ,pcre) ("pcre" ,pcre)
("libmount" ,util-linux "lib")
("util-linux" ,util-linux))) ("util-linux" ,util-linux)))
(arguments (arguments
`(#:configure-flags `(#:configure-flags

View File

@ -62,7 +62,7 @@ scripts.")
(define-public c-ares (define-public c-ares
(package (package
(name "c-ares") (name "c-ares")
(version "1.15.0") (version "1.16.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -70,7 +70,7 @@ scripts.")
".tar.gz")) ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0lk8knip4xk6qzksdkn7085mmgm4ixfczdyyjw656c193y3rgnvc")))) "129sm0wzij0mp8vdv68v18hnykcjb6ivi66wnqnnw598q7bql1fy"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))

View File

@ -8,6 +8,7 @@
;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017, 2019 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2017, 2019 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> ;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net> ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com> ;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
@ -407,7 +408,7 @@ precision.")
("gsl" ,gsl) ("gsl" ,gsl)
("lapack" ,lapack) ("lapack" ,lapack)
("libao" ,ao) ("libao" ,ao)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libsamplerate" ,libsamplerate) ("libsamplerate" ,libsamplerate)
("libx11" ,libx11) ("libx11" ,libx11)
@ -690,15 +691,23 @@ binary.")
(uri (string-append "mirror://gnu/bc/bc-" version ".tar.gz")) (uri (string-append "mirror://gnu/bc/bc-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0amh9ik44jfg66csyvf4zz1l878c4755kjndq9j0270akflgrbb2")))) "0amh9ik44jfg66csyvf4zz1l878c4755kjndq9j0270akflgrbb2"))
(patches (search-patches "bc-fix-cross-compilation.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("ed" ,ed) `(("automake" ,automake)
("autoconf" ,autoconf)
("ed" ,ed)
("flex" ,flex) ("flex" ,flex)
("texinfo" ,texinfo))) ("texinfo" ,texinfo)))
(arguments (arguments
'(#:configure-flags '(#:configure-flags
(list "--with-readline"))) (list "--with-readline")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'autogen
(lambda _
(invoke "autoreconf" "-vif"))))))
(home-page "https://www.gnu.org/software/bc/") (home-page "https://www.gnu.org/software/bc/")
(synopsis "Arbitrary precision numeric processing language") (synopsis "Arbitrary precision numeric processing language")
(description (description
@ -1240,15 +1249,6 @@ objects.")
("libtool" ,libtool))) ("libtool" ,libtool)))
(propagated-inputs (propagated-inputs
`(("gmp" ,gmp))) ; gmp++.h includes gmpxx.h `(("gmp" ,gmp))) ; gmp++.h includes gmpxx.h
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'bootstrap 'setenv
;; Prevent the autogen.sh script to carry out the configure
;; script, which has not yet been patched to replace /bin/sh.
(lambda _
(setenv "NOCONFIGURE" "yes")
#t)))))
(synopsis "Algebraic computations with exact rings and fields") (synopsis "Algebraic computations with exact rings and fields")
(description (description
"Givaro is a C++ library implementing the basic arithmetic of various "Givaro is a C++ library implementing the basic arithmetic of various
@ -1287,15 +1287,7 @@ compound objects, such as vectors, matrices and univariate polynomials.")
`(#:configure-flags `(#:configure-flags
(list (string-append "--with-blas-libs=" (list (string-append "--with-blas-libs="
(assoc-ref %build-inputs "openblas") (assoc-ref %build-inputs "openblas")
"/lib/libopenblas.so")) "/lib/libopenblas.so"))))
#:phases
(modify-phases %standard-phases
(add-before 'bootstrap 'setenv
;; Prevent the autogen.sh script to carry out the configure
;; script, which has not yet been patched to replace /bin/sh.
(lambda _
(setenv "NOCONFIGURE" "yes")
#t)))))
(synopsis "C++ library for linear algebra over finite fields") (synopsis "C++ library for linear algebra over finite fields")
(description (description
"FFLAS-FFPACK is a C++ template library for basic linear algebra "FFLAS-FFPACK is a C++ template library for basic linear algebra
@ -1331,15 +1323,6 @@ algebra, such as the row echelon form.")
("pkg-config" ,pkg-config))) ("pkg-config" ,pkg-config)))
(inputs (inputs
`(("fflas-ffpack" ,fflas-ffpack))) `(("fflas-ffpack" ,fflas-ffpack)))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'bootstrap 'setenv
;; Prevent the autogen.sh script to carry out the configure
;; script, which has not yet been patched to replace /bin/sh.
(lambda _
(setenv "NOCONFIGURE" "yes")
#t)))))
(synopsis "C++ library for linear algebra over exact rings") (synopsis "C++ library for linear algebra over exact rings")
(description (description
"LinBox is a C++ template library for exact linear algebra computation "LinBox is a C++ template library for exact linear algebra computation

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012 Stefan Handschuh <handschuh.stefan@googlemail.com> ;;; Copyright © 2012 Stefan Handschuh <handschuh.stefan@googlemail.com>
;;; Copyright © 2015 Kai-Chung Yan <seamlikok@gmail.com> ;;; Copyright © 2015 Kai-Chung Yan <seamlikok@gmail.com>
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2016, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu> ;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2017 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2017 Maxim Cournoyer <maxim.cournoyer@gmail.com>
@ -611,9 +611,20 @@ file system.")
#:make-flags '("CXXFLAGS=-std=gnu++11 -Wno-error") #:make-flags '("CXXFLAGS=-std=gnu++11 -Wno-error")
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'set-paths 'augment-CPLUS_INCLUDE_PATH
(lambda* (#:key inputs #:allow-other-keys)
;; Hide the default GCC from CPLUS_INCLUDE_PATH to prevent it from
;; shadowing the version of GCC provided in native-inputs.
(let ((gcc (assoc-ref inputs "gcc")))
(setenv "CPLUS_INCLUDE_PATH"
(string-join
(delete (string-append gcc "/include/c++")
(string-split (getenv "CPLUS_INCLUDE_PATH")
#\:))
":"))
#t)))
(add-after 'unpack 'enter-source (add-after 'unpack 'enter-source
(lambda _ (chdir "libutils") #t)) (lambda _ (chdir "libutils") #t))
(add-after 'install 'install-headers (add-after 'install 'install-headers
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(copy-recursively "../include/utils" (string-append (assoc-ref outputs "out") "/include/utils"))))))) (copy-recursively "../include/utils" (string-append (assoc-ref outputs "out") "/include/utils")))))))
@ -623,7 +634,7 @@ file system.")
(native-inputs (native-inputs
`(("android-bionic-uapi" ,android-bionic-uapi) `(("android-bionic-uapi" ,android-bionic-uapi)
("android-liblog" ,android-liblog) ("android-liblog" ,android-liblog)
("gcc" ,gcc-5))) ; XXX: fails to build with GCC 7 ("gcc@5" ,gcc-5))) ; XXX: fails to build with GCC 7
(home-page "https://developer.android.com/") (home-page "https://developer.android.com/")
(synopsis "Android utility library") (synopsis "Android utility library")
(description "@code{android-libutils} provides utilities for Android NDK developers.") (description "@code{android-libutils} provides utilities for Android NDK developers.")
@ -840,7 +851,7 @@ script that you can put anywhere in your path.")
(install-file "abootimg" bin) (install-file "abootimg" bin)
#t)))))) #t))))))
(inputs (inputs
`(("libblkid" ,util-linux))) `(("libblkid" ,util-linux "lib")))
(home-page "https://ac100.grandou.net/abootimg") (home-page "https://ac100.grandou.net/abootimg")
(synopsis "Tool for manipulating Android Boot Images") (synopsis "Tool for manipulating Android Boot Images")
(description "This package provides a tool for manipulating old Android (description "This package provides a tool for manipulating old Android

View File

@ -112,7 +112,7 @@ C++ @dfn{Standard Template Library} (STL).")
`(("boost" ,boost) `(("boost" ,boost)
("ffmpeg" ,ffmpeg) ("ffmpeg" ,ffmpeg)
("libdv" ,libdv) ("libdv" ,libdv)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libmng" ,libmng) ("libmng" ,libmng)
("zlib" ,zlib))) ("zlib" ,zlib)))

View File

@ -216,13 +216,7 @@ engine programmable using Lua.")
(assoc-ref %build-inputs "xkbcomp") (assoc-ref %build-inputs "xkbcomp")
"/bin") "/bin")
,(string-append "--with-xkb-output=" ,(string-append "--with-xkb-output="
"/tmp")) ; FIXME: Copied from xorg "/tmp")))) ; FIXME: Copied from xorg
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'noconfigure
(lambda _
(setenv "NOCONFIGURE" "true")
#t)))))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
("autoconf" ,autoconf) ("autoconf" ,autoconf)

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013, 2014, 2015, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2016 Alex Kost <alezost@gmail.com> ;;; Copyright © 2015, 2016 Alex Kost <alezost@gmail.com>
;;; Copyright © 2016 John Darrington <jmd@gnu.org> ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
@ -40,7 +40,7 @@
(define-public aspell (define-public aspell
(package (package
(name "aspell") (name "aspell")
(version "0.60.6.1") (version "0.60.8")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -48,9 +48,8 @@
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1qgn5psfyhbrnap275xjfrzppf5a83fb67gpql0kfqv37al869gm")) "1wi60ankalmh8ds7nplz434jd7j94gdvbahdwsr539rlad8pxdzr"))
(patches (search-patches "aspell-default-dict-dir.patch" (patches (search-patches "aspell-default-dict-dir.patch"))))
"aspell-gcc-compat.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -67,14 +66,6 @@
(("\"filter-path(.*)DICT_DIR" _ middle) (("\"filter-path(.*)DICT_DIR" _ middle)
(string-append "\"filter-path" middle (string-append "\"filter-path" middle
"\"" libdir "\""))) "\"" libdir "\"")))
#t)))
(add-after 'install 'wrap-aspell
(lambda* (#:key outputs #:allow-other-keys)
(let ((bin/aspell (string-append (assoc-ref outputs "out")
"/bin/aspell")))
(wrap-program bin/aspell
'("ASPELL_CONF" "" =
("${ASPELL_CONF:-\"dict-dir ${GUIX_PROFILE:-$HOME/.guix-profile}/lib/aspell\"}")))
#t)))))) #t))))))
(inputs `(("perl" ,perl))) (inputs `(("perl" ,perl)))

View File

@ -140,7 +140,7 @@ header.")
(inputs (inputs
`(("cfitsio" ,cfitsio) `(("cfitsio" ,cfitsio)
("gsl" ,gsl) ("gsl" ,gsl)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libtiff" ,libtiff) ("libtiff" ,libtiff)
("wcslib" ,wcslib) ("wcslib" ,wcslib)
("zlib" ,zlib))) ("zlib" ,zlib)))
@ -226,7 +226,7 @@ objects.")
`(("glu" ,glu) `(("glu" ,glu)
("glew" ,glew) ("glew" ,glew)
("libtheora" ,libtheora) ("libtheora" ,libtheora)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
;; maybe required? ;; maybe required?
("mesa" ,mesa) ("mesa" ,mesa)
@ -326,7 +326,7 @@ Mechanics, Astrometry and Astrodynamics library.")
("freetype" ,freetype) ("freetype" ,freetype)
("pango" ,pango) ("pango" ,pango)
("giflib" ,giflib) ("giflib" ,giflib)
("libjpeg", libjpeg) ("libjpeg", libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libtiff" ,libtiff) ("libtiff" ,libtiff)
("netpbm" ,netpbm) ("netpbm" ,netpbm)

View File

@ -1630,7 +1630,7 @@ especially for creating reverb effects. It supports impulse responses with 1,
;; uuid.h is included in the JACK type headers ;; uuid.h is included in the JACK type headers
;; db.h is included in the libjack metadata headers ;; db.h is included in the libjack metadata headers
(propagated-inputs (propagated-inputs
`(("libuuid" ,util-linux) `(("libuuid" ,util-linux "lib")
("bdb" ,bdb))) ("bdb" ,bdb)))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))
@ -2555,13 +2555,6 @@ tempo and pitch of an audio recording independently of one another.")
(base32 (base32
"1k962ljpnwyjw9jjiky2372khhri1wqvrj5qsalfpys31xqzw31p")))) "1k962ljpnwyjw9jjiky2372khhri1wqvrj5qsalfpys31xqzw31p"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'bootstrap 'noconfigure
(lambda _
(setenv "NOCONFIGURE" "yes")
#t)))))
(inputs (inputs
`(("jack" ,jack-1) `(("jack" ,jack-1)
("alsa-lib" ,alsa-lib))) ("alsa-lib" ,alsa-lib)))

View File

@ -2,6 +2,7 @@
;;; Copyright © 2013, 2014 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2013, 2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -51,6 +52,10 @@
;; “Something went wrong bootstrapping makefile fragments for ;; “Something went wrong bootstrapping makefile fragments for
;; automatic dependency tracking. Try re-running configure with […]” ;; automatic dependency tracking. Try re-running configure with […]”
(list "--disable-dependency-tracking") (list "--disable-dependency-tracking")
;; XXX: Parallel tests may cause an indefinite hang with GNU Make 4.3.
#:parallel-tests? #f
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-before 'patch-source-shebangs 'patch-test-scripts (add-before 'patch-source-shebangs 'patch-test-scripts

View File

@ -9,6 +9,8 @@
;;; Copyright © 2017, 2019 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2019 Pierre-Moana Levesque <pierre.moana.levesque@gmail.com>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -54,12 +56,43 @@
(base32 (base32
"113nlmidxy9kjr45kg9x3ngar4951mvag1js2a3j8nxcz34wxsv4")))) "113nlmidxy9kjr45kg9x3ngar4951mvag1js2a3j8nxcz34wxsv4"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs
;; TODO: remove `if' in the next rebuild cycle.
(if (%current-target-system)
`(("bash" ,bash-minimal)
("perl" ,perl)
("m4" ,m4))
'()))
(native-inputs (native-inputs
`(("perl" ,perl) `(("perl" ,perl)
("m4" ,m4))) ("m4" ,m4)))
;; XXX: testsuite: 209 and 279 failed. The latter is an impurity. It (arguments
;; should use our own "cpp" instead of "/lib/cpp". `(;; XXX: testsuite: 209 and 279 failed. The latter is an impurity. It
(arguments `(#:tests? #f)) ;; should use our own "cpp" instead of "/lib/cpp".
#:tests? #f
,@(if (%current-target-system)
`(#:phases
(modify-phases %standard-phases
(add-after 'install 'patch-non-shebang-references
(lambda* (#:key build inputs outputs #:allow-other-keys)
;; `patch-shebangs' patches shebangs only, and the Perl
;; scripts use a re-exec feature that references the
;; build hosts' perl. Also, BASH and M4 store references
;; hide in the scripts.
(let ((bash (assoc-ref inputs "bash"))
(m4 (assoc-ref inputs "m4"))
(perl (assoc-ref inputs "perl"))
(out (assoc-ref outputs "out"))
(store-directory (%store-directory)))
(substitute* (find-files (string-append out "/bin"))
(((string-append store-directory "/[^/]*-bash-[^/]*"))
bash)
(((string-append store-directory "/[^/]*-m4-[^/]*"))
m4)
(((string-append store-directory "/[^/]*-perl-[^/]*"))
perl))
#t)))))
'())))
(home-page "https://www.gnu.org/software/autoconf/") (home-page "https://www.gnu.org/software/autoconf/")
(synopsis "Create source code configuration scripts") (synopsis "Create source code configuration scripts")
(description (description
@ -249,17 +282,24 @@ output is indexed in many ways to simplify browsing.")
(define-public automake (define-public automake
(package (package
(name "automake") (name "automake")
(version "1.16.1") (version "1.16.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/automake/automake-" (uri (string-append "mirror://gnu/automake/automake-"
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"08g979ficj18i1w6w5219bgmns7czr03iadf20mk3lrzl8wbn1ax")) "1l7dkqbsmbf94ax29jj1jf6a0r6ikc8jybg1p5m0c3ki7pg5ki6c"))
(patches (patches
(search-patches "automake-skip-amhello-tests.patch")))) (search-patches "automake-skip-amhello-tests.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs
;; TODO: remove `if' in the next rebuild cycle.
(if (%current-target-system)
`(("autoconf" ,autoconf-wrapper)
("bash" ,bash-minimal)
("perl" ,perl))
'()))
(native-inputs (native-inputs
`(("autoconf" ,autoconf-wrapper) `(("autoconf" ,autoconf-wrapper)
("perl" ,perl))) ("perl" ,perl)))
@ -268,7 +308,7 @@ output is indexed in many ways to simplify browsing.")
(variable "ACLOCAL_PATH") (variable "ACLOCAL_PATH")
(files '("share/aclocal"))))) (files '("share/aclocal")))))
(arguments (arguments
'(#:modules ((guix build gnu-build-system) `(#:modules ((guix build gnu-build-system)
(guix build utils) (guix build utils)
(srfi srfi-1) (srfi srfi-1)
(srfi srfi-26) (srfi srfi-26)
@ -288,6 +328,37 @@ output is indexed in many ways to simplify browsing.")
(setenv "CONFIG_SHELL" sh) (setenv "CONFIG_SHELL" sh)
#t))) #t)))
(add-before 'check 'skip-test
(lambda _
;; This test requires 'etags' and fails if it's missing.
;; Skip it.
(substitute* "t/tags-lisp-space.sh"
(("^required.*" all)
(string-append "exit 77\n" all "\n")))
#t))
,@(if (%current-target-system)
`((add-after 'install 'patch-non-shebang-references
(lambda* (#:key build inputs outputs #:allow-other-keys)
;; `patch-shebangs' patches shebangs only, and the Perl
;; scripts use a re-exec feature that references the
;; build hosts' perl. Also, AUTOCONF and BASH store
;; references hide in the scripts.
(let ((autoconf (assoc-ref inputs "autoconf"))
(bash (assoc-ref inputs "bash"))
(perl (assoc-ref inputs "perl"))
(out (assoc-ref outputs "out"))
(store-directory (%store-directory)))
(substitute* (find-files (string-append out "/bin"))
(((string-append store-directory "/[^/]*-autoconf-[^/]*"))
autoconf)
(((string-append store-directory "/[^/]*-bash-[^/]*"))
bash)
(((string-append store-directory "/[^/]*-perl-[^/]*"))
perl))
#t))))
'())
;; Files like `install-sh', `mdate.sh', etc. must use ;; Files like `install-sh', `mdate.sh', etc. must use
;; #!/bin/sh, otherwise users could leak erroneous shebangs ;; #!/bin/sh, otherwise users could leak erroneous shebangs
;; in the wild. See <http://bugs.gnu.org/14201> for an ;; in the wild. See <http://bugs.gnu.org/14201> for an
@ -324,32 +395,6 @@ intuitive format and then Automake works with Autoconf to produce a robust
Makefile, simplifying the entire process for the developer.") Makefile, simplifying the entire process for the developer.")
(license gpl2+))) ; some files are under GPLv3+ (license gpl2+))) ; some files are under GPLv3+
(define-public automake-1.16.2
(package
(inherit automake)
(version "1.16.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/automake/automake-"
version ".tar.xz"))
(sha256
(base32
"1l7dkqbsmbf94ax29jj1jf6a0r6ikc8jybg1p5m0c3ki7pg5ki6c"))
(patches
(search-patches "automake-skip-amhello-tests.patch"))))
(arguments
(substitute-keyword-arguments (package-arguments automake)
((#:phases phases '%standard-phases)
`(modify-phases ,phases
(add-before 'check 'skip-test
(lambda _
;; This test requires 'etags' and fails if it's missing.
;; Skip it.
(substitute* "t/tags-lisp-space.sh"
(("^required.*" all)
(string-append "exit 77\n" all "\n")))
#t))))))))
(define-public libtool (define-public libtool
(package (package
(name "libtool") (name "libtool")
@ -379,21 +424,22 @@ Makefile, simplifying the entire process for the developer.")
;; XXX: There are test failures on mips64el-linux starting from 2.4.4: ;; XXX: There are test failures on mips64el-linux starting from 2.4.4:
;; <http://hydra.gnu.org/build/181662>. ;; <http://hydra.gnu.org/build/181662>.
#:tests? ,(not (string-prefix? "mips64" ;; Also, do not run tests when cross compiling
(or (%current-target-system) #:tests? ,(not (or (%current-target-system)
(string-prefix? "mips64"
(%current-system)))) (%current-system))))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-before 'check 'pre-check (add-before 'check 'pre-check
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs native-inputs #:allow-other-keys)
;; Run the test suite in parallel, if possible. ;; Run the test suite in parallel, if possible.
(setenv "TESTSUITEFLAGS" (setenv "TESTSUITEFLAGS"
(string-append (string-append
"-j" "-j"
(number->string (parallel-job-count)))) (number->string (parallel-job-count))))
;; Patch references to /bin/sh. ;; Patch references to /bin/sh.
(let ((bash (assoc-ref inputs "bash"))) (let ((bash (assoc-ref (or native-inputs inputs) "bash")))
(substitute* "tests/testsuite" (substitute* "tests/testsuite"
(("/bin/sh") (("/bin/sh")
(string-append bash "/bin/sh"))) (string-append bash "/bin/sh")))

View File

@ -2,6 +2,7 @@
;;; Copyright © 2013, 2014, 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013, 2014, 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -25,17 +26,18 @@
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages dbm) #:use-module (gnu packages dbm)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages libdaemon) #:use-module (gnu packages libdaemon)
#:use-module (gnu packages libevent)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages glib)
#:use-module (gnu packages xml)) #:use-module (gnu packages xml))
(define-public avahi (define-public avahi
(package (package
(name "avahi") (name "avahi")
(version "0.7") (version "0.8")
(replacement avahi/fixed)
(home-page "https://avahi.org") (home-page "https://avahi.org")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
@ -43,29 +45,40 @@
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0128n7jlshw4bpx0vg8lwj8qwdisjxi7mvniwfafgnkzzrfrpaap")) "1npdixwxxn3s9q1f365x9n9rc5xgfz39hxf23faqvlrklgbhj0q6"))
(patches (search-patches "avahi-localstatedir.patch")))) (patches (search-patches "avahi-localstatedir.patch"))
(modules '((guix build utils)))
(snippet
'(begin
;; Fix version constraint in the avahi-libevent pkg-config file.
;; This can be removed for Avahi versions > 0.8.
(substitute* "avahi-libevent.pc.in"
(("libevent-2\\.1\\.5")
"libevent >= 2.1.5"))
#t))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:configure-flags '("--with-distro=none" '(#:configure-flags '("--with-distro=none"
"--disable-static"
"--localstatedir=/var" ; for the DBus socket "--localstatedir=/var" ; for the DBus socket
"--disable-python" "--disable-python"
"--disable-mono" "--disable-mono"
"--disable-doxygen-doc" "--disable-doxygen-doc"
"--disable-xmltoman" "--disable-xmltoman"
"--enable-tests" "--enable-tests"
"--disable-qt3" "--disable-qt4" "--disable-qt4" "--disable-qt5"
"--disable-gtk" "--disable-gtk3" "--disable-gtk" "--disable-gtk3"
"--enable-compat-libdns_sd"))) "--enable-compat-libdns_sd")))
(inputs (inputs
`(("expat" ,expat) `(("dbus" ,dbus)
("glib" ,glib) ("expat" ,expat)
("dbus" ,dbus)
("gdbm" ,gdbm) ("gdbm" ,gdbm)
("glib" ,glib)
("libcap" ,libcap) ;to enable chroot support in avahi-daemon ("libcap" ,libcap) ;to enable chroot support in avahi-daemon
("libdaemon" ,libdaemon))) ("libdaemon" ,libdaemon)
("libevent" ,libevent)))
(native-inputs (native-inputs
`(("intltool" ,intltool) `(("gettext" ,gettext-minimal)
("glib" ,glib "bin") ("glib" ,glib "bin")
("pkg-config" ,pkg-config))) ("pkg-config" ,pkg-config)))
(synopsis "Implementation of mDNS/DNS-SD protocols") (synopsis "Implementation of mDNS/DNS-SD protocols")
@ -75,17 +88,6 @@ network. It is an implementation of the mDNS (for \"Multicast DNS\") and
DNS-SD (for \"DNS-Based Service Discovery\") protocols.") DNS-SD (for \"DNS-Based Service Discovery\") protocols.")
(license lgpl2.1+))) (license lgpl2.1+)))
(define avahi/fixed
(package
(inherit avahi)
(source (origin
(inherit (package-source avahi))
(patches
(append (search-patches "avahi-CVE-2018-1000845.patch")
(origin-patches (package-source avahi))))))
;; Hide a duplicate of the CVE fixed above.
(properties `((lint-hidden-cve . ("CVE-2017-6519"))))))
(define-public nss-mdns (define-public nss-mdns
(package (package
(name "nss-mdns") (name "nss-mdns")

View File

@ -14,6 +14,7 @@
;;; Copyright © 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2019 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2019 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
@ -203,18 +204,18 @@ backups (called chunks) to allow easy burning to CD/DVD.")
(define-public libarchive (define-public libarchive
(package (package
(name "libarchive") (name "libarchive")
(version "3.4.0") (version "3.4.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (list (string-append "https://libarchive.org/downloads/libarchive-" (uri (list (string-append "https://libarchive.org/downloads/libarchive-"
version ".tar.gz") version ".tar.xz")
(string-append "https://github.com/libarchive/libarchive" (string-append "https://github.com/libarchive/libarchive"
"/releases/download/v" version "/libarchive-" "/releases/download/v" version "/libarchive-"
version ".tar.gz"))) version ".tar.xz")))
(sha256 (sha256
(base32 (base32
"0pl25mmz1b1cnwf35kxmygyy9g7z7hslxbx329a9yx8csh7dahw6")))) "18dd01ahs2hv74xm7axjc3yhq839p0x0s4vssvlmm8fknja09qfq"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
`(("bzip2" ,bzip2) `(("bzip2" ,bzip2)
@ -234,24 +235,34 @@ backups (called chunks) to allow easy burning to CD/DVD.")
(("/bin/pwd") (which "pwd"))) (("/bin/pwd") (which "pwd")))
#t)) #t))
(replace 'check (replace 'check
(lambda _ (lambda* (#:key (tests? #t) #:allow-other-keys)
;; XXX: The test_owner_parse, test_read_disk, and (if tests?
;; test_write_disk_lookup tests expect user 'root' to exist, but ;; XXX: The test_owner_parse, test_read_disk, and
;; the chroot's /etc/passwd doesn't have it. Turn off those tests. ;; test_write_disk_lookup tests expect user 'root' to
;; ;; exist, but the chroot's /etc/passwd doesn't have
;; XXX: Adjust test that fails with zstd 1.4.1 because the default ;; it. Turn off those tests.
;; options compresses two bytes better than this test expects. ;;
;; https://github.com/libarchive/libarchive/issues/1226 ;; XXX: Adjust test that fails with zstd 1.4.1
(substitute* "libarchive/test/test_write_filter_zstd.c" ;; because the default options compresses two bytes
(("compression-level\", \"6\"") ;; better than this test expects.
"compression-level\", \"7\"")) ;; https://github.com/libarchive/libarchive/issues/1226
(begin
(substitute* "libarchive/test/test_write_filter_zstd.c"
(("compression-level\", \"6\"")
"compression-level\", \"7\""))
;; The tests allow one to disable tests matching a globbing pattern. ;; The tests allow one to disable tests matching a globbing pattern.
(invoke "make" "libarchive_test" "bsdcpio_test" "bsdtar_test") (invoke "make"
;; XXX: This glob disables too much. "libarchive_test"
(invoke "./libarchive_test" "^test_*_disk*") "bsdcpio_test"
(invoke "./bsdcpio_test" "^test_owner_parse") "bsdtar_test")
(invoke "./bsdtar_test")))
;; XXX: This glob disables too much.
(invoke "./libarchive_test" "^test_*_disk*")
(invoke "./bsdcpio_test" "^test_owner_parse")
(invoke "./bsdtar_test"))
;; Tests may be disabled if cross-compiling.
(format #t "Test suite not run.~%"))))
(add-after 'install 'add--L-in-libarchive-pc (add-after 'install 'add--L-in-libarchive-pc
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")) (let* ((out (assoc-ref outputs "out"))

View File

@ -1,16 +1,16 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2019 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2014, 2019 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org> ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2014, 2015, 2016, 2018 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014, 2015, 2016, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014 Alex Kost <alezost@gmail.com> ;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
;;; Copyright © 2014, 2015 Manolis Fragkiskos Ragkousis <manolis837@gmail.com> ;;; Copyright © 2014, 2015 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2016, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2016, 2018 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2016, 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org> ;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2017, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017, 2018, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
@ -93,14 +93,14 @@ command-line arguments, multiple languages, and so on.")
(define-public grep (define-public grep
(package (package
(name "grep") (name "grep")
(version "3.3") (version "3.4")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/grep/grep-" (uri (string-append "mirror://gnu/grep/grep-"
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"055mqp6vrd0brkygmygb2673qwz409a7kyp1mzbfy6cn94f58q5r")) "1yy33kiwrxrwj2nxa4fg15bvmwyghqbs8qwkdvy5phm784f7brjq"))
(patches (search-patches "grep-timing-sensitive-test.patch")))) (patches (search-patches "grep-timing-sensitive-test.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs `(("perl" ,perl))) ;some of the tests require it (native-inputs `(("perl" ,perl))) ;some of the tests require it
@ -134,14 +134,14 @@ including, for example, recursive directory searching.")
(define-public sed (define-public sed
(package (package
(name "sed") (name "sed")
(version "4.7") (version "4.8")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/sed/sed-" version (uri (string-append "mirror://gnu/sed/sed-" version
".tar.xz")) ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0smxcx66vx29djzb542nxcynl7qnzxqa5032ibazi7x2s267d198")))) "0alqagh0nliymz23kfjg6g9w3cr086k0sfni56gi8fhzqwa3xksk"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(synopsis "Stream editor") (synopsis "Stream editor")
(native-inputs (native-inputs
@ -171,7 +171,22 @@ implementation offers several extensions over the standard utility.")
(build-system gnu-build-system) (build-system gnu-build-system)
;; Note: test suite requires ~1GiB of disk space. ;; Note: test suite requires ~1GiB of disk space.
(arguments (arguments
`(#:phases (modify-phases %standard-phases `(,@(if (hurd-target?)
'(#:make-flags
(list (string-append
"TESTSUITEFLAGS= -k '"
"!sparse"
",!renamed dirs in incrementals"
",!--exclude-tag option in incremental pass"
",!incremental dumps with -C"
",!incremental dumps of nested directories"
",!incremental restores with -C"
",!concatenated incremental archives (renames)"
",!renamed directory containing subdirectories"
",!renamed subdirectories"
"'")))
'())
#:phases (modify-phases %standard-phases
(add-before 'build 'set-shell-file-name (add-before 'build 'set-shell-file-name
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
;; Do not use "/bin/sh" to run programs. ;; Do not use "/bin/sh" to run programs.
@ -254,40 +269,29 @@ interactive means to merge two files.")
(define-public findutils (define-public findutils
(package (package
(name "findutils") (name "findutils")
(version "4.6.0") (version "4.7.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/findutils/findutils-" (uri (string-append "mirror://gnu/findutils/findutils-"
version ".tar.gz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"178nn4dl7wbcw499czikirnkniwnx36argdnqgz4ik9i6zvwkm6y")) "16kqz9yz98dasmj70jwf5py7jk558w96w0vgp3zf9xsqk3gzpzn5"))
(patches (search-patches (patches (search-patches "findutils-localstatedir.patch"
"findutils-gnulib-libio.patch" "findutils-test-rwlock-threads.patch"))))
"findutils-localstatedir.patch"
"findutils-makedev.patch"
"findutils-test-xargs.patch"))
(modules '((guix build utils)))
(snippet
'(begin
;; The gnulib test-lock test is prone to writer starvation
;; with our glibc@2.25, which prefers readers, so disable it.
;; The gnulib commit b20e8afb0b2 should fix this once
;; incorporated here.
(substitute* "tests/Makefile.in"
(("test-lock\\$\\(EXEEXT\\) ") ""))
#t))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags (list `(#:configure-flags (list
;; Tell 'updatedb' to write to /var. ;; Tell 'updatedb' to write to /var.
"--localstatedir=/var" "--localstatedir=/var")
#:phases (modify-phases %standard-phases
;; Work around cross-compilation failure. See (add-before 'check 'adjust-test-shebangs
;; <http://savannah.gnu.org/bugs/?27299#comment1>. (lambda _
,@(if (%current-target-system) (substitute* '("tests/xargs/verbose-quote.sh"
'("gl_cv_func_wcwidth_works=yes") "tests/find/exec-plus-last-file.sh")
'())))) (("#!/bin/sh")
(string-append "#!" (which "sh"))))
#t)))))
(synopsis "Operating on files matching given criteria") (synopsis "Operating on files matching given criteria")
(description (description
"Findutils supplies the basic file directory searching utilities of the "Findutils supplies the basic file directory searching utilities of the
@ -302,23 +306,26 @@ used to apply commands with arbitrarily long arguments.")
(define-public coreutils (define-public coreutils
(package (package
(name "coreutils") (name "coreutils")
(version "8.31") (version "8.32")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/coreutils/coreutils-" (uri (string-append "mirror://gnu/coreutils/coreutils-"
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1zg9m79x1i2nifj4kb0waf9x3i5h6ydkypkjnbsb9rnwis8rqypz")))) "1yjcrh5hw70c0yn8zw55pd6j51dj90anpq8mmg649ps9g3gdhn24"))
(patches (search-patches "coreutils-ls.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs `(("acl" ,acl) ; TODO: add SELinux (inputs `(("acl" ,acl) ; TODO: add SELinux
("gmp" ,gmp) ;bignums in 'expr', yay! ("gmp" ,gmp) ;bignums in 'expr', yay!
;; Drop the dependency on libcap when cross-compiling since it's ;; Do not use libcap when cross-compiling since it's not quite
;; not quite cross-compilable. ;; cross-compilable; and use it only for supported systems.
,@(if (%current-target-system) ,@(if (and (not (%current-target-system))
'() (member (%current-system)
`(("libcap" ,libcap))))) ;capability support is 'ls', etc. (package-supported-systems libcap)))
`(("libcap" ,libcap)) ;capability support in 'ls', etc.
'())))
(native-inputs (native-inputs
;; Perl is needed to run tests in native builds, and to run the bundled ;; Perl is needed to run tests in native builds, and to run the bundled
;; copy of help2man. However, don't pass it when cross-compiling since ;; copy of help2man. However, don't pass it when cross-compiling since
@ -330,6 +337,23 @@ used to apply commands with arbitrarily long arguments.")
(outputs '("out" "debug")) (outputs '("out" "debug"))
(arguments (arguments
`(#:parallel-build? #f ; help2man may be called too early `(#:parallel-build? #f ; help2man may be called too early
,@(if (hurd-target?)
'(#:make-flags ; these tests fail deterministically
(list (string-append "XFAIL_TESTS=tests/misc/env-S.pl"
" tests/misc/kill.sh"
" tests/misc/nice.sh"
" tests/misc/shred-passes.sh"
" tests/split/fail.sh"
" tests/split/l-chunk.sh"
" tests/dd/stats.sh"
" test-fdutimensat"
" test-futimens"
" test-linkat"
" test-renameat"
" test-renameatu"
" test-tls"
" test-utimensat")))
'())
#:phases (modify-phases %standard-phases #:phases (modify-phases %standard-phases
(add-before 'build 'patch-shell-references (add-before 'build 'patch-shell-references
(lambda _ (lambda _
@ -341,16 +365,6 @@ used to apply commands with arbitrarily long arguments.")
(("/bin/sh") (which "sh"))) (("/bin/sh") (which "sh")))
(substitute* (find-files "tests" "\\.sh$") (substitute* (find-files "tests" "\\.sh$")
(("#!/bin/sh") (string-append "#!" (which "sh")))) (("#!/bin/sh") (string-append "#!" (which "sh"))))
#t))
(add-before 'check 'disable-broken-test
(lambda _
;; This test hits the 127 character shebang limit in the build
;; environment due to the way "env -S" splits arguments into
;; shebangs. Note that "env-S-script.sh" works around this
;; specific issue, but "env-S.pl" is not adjusted for build
;; environments with long prefixes (/tmp/guix-build-...).
(substitute* "Makefile"
(("^.*tests/misc/env-S.pl.*$") ""))
#t))))) #t)))))
(synopsis "Core GNU utilities (file, text, shell)") (synopsis "Core GNU utilities (file, text, shell)")
(description (description
@ -373,31 +387,31 @@ standard.")
(define-public gnu-make (define-public gnu-make
(package (package
(name "make") (name "make")
(version "4.2.1") (version "4.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/make/make-" version (uri (string-append "mirror://gnu/make/make-" version
".tar.bz2")) ".tar.gz"))
(sha256 (sha256
(base32 (base32
"12f5zzyq2w56g95nni65hc0g5p7154033y2f3qmjvd016szn5qnn")) "06cfqzpqsvdnsxbysl5p2fgdgxgl9y4p7scpnrfa8z2zgkjdspz0"))
(patches (search-patches "make-impure-dirs.patch" (patches (search-patches "make-impure-dirs.patch"))))
"make-glibc-compat.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs `(("pkg-config" ,pkg-config))) ; to detect Guile (native-inputs `(("pkg-config" ,pkg-config))) ; to detect Guile
(inputs `(("guile" ,guile-2.0))) (inputs `(("guile" ,guile-3.0)))
(outputs '("out" "debug")) (outputs '("out" "debug"))
(arguments (arguments
'(;; Work around faulty glob detection with glibc 2.27. See `(,@(if (hurd-target?)
;; <https://lists.nongnu.org/archive/html/bug-make/2017-11/msg00027.html>. '(#:configure-flags '("CFLAGS=-D__alloca=alloca"
#:configure-flags '("make_cv_sys_gnu_glob=yes") "ac_cv_func_posix_spawn=no"))
'())
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-before 'build 'set-default-shell (add-before 'build 'set-default-shell
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
;; Change the default shell from /bin/sh. ;; Change the default shell from /bin/sh.
(let ((bash (assoc-ref inputs "bash"))) (let ((bash (assoc-ref inputs "bash")))
(substitute* "job.c" (substitute* "src/job.c"
(("default_shell =.*$") (("default_shell =.*$")
(format #f "default_shell = \"~a/bin/sh\";\n" (format #f "default_shell = \"~a/bin/sh\";\n"
bash))) bash)))
@ -413,17 +427,42 @@ change. GNU make offers many powerful extensions over the standard utility.")
(license gpl3+) (license gpl3+)
(home-page "https://www.gnu.org/software/make/"))) (home-page "https://www.gnu.org/software/make/")))
(define-public gnu-make-4.2
(package
(inherit gnu-make)
(version "4.2.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/make/make-" version
".tar.bz2"))
(sha256
(base32
"12f5zzyq2w56g95nni65hc0g5p7154033y2f3qmjvd016szn5qnn"))))
(arguments
`(#:configure-flags '("CFLAGS=-D__alloca=alloca")
#:phases
(modify-phases %standard-phases
(add-before 'build 'set-default-shell
(lambda* (#:key inputs #:allow-other-keys)
;; Change the default shell from /bin/sh.
(let ((bash (assoc-ref inputs "bash")))
(substitute* "job.c"
(("default_shell =.*$")
(format #f "default_shell = \"~a/bin/sh\";\n"
bash)))
#t))))))))
(define-public binutils (define-public binutils
(package (package
(name "binutils") (name "binutils")
(version "2.32") (version "2.34")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/binutils/binutils-" (uri (string-append "mirror://gnu/binutils/binutils-"
version ".tar.bz2")) version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"0b8767nyal1bc4cyzg5h9iis8kpkln1i3wkamig75cifj1fb2f6y")) "1rin1f5c7wm4n3piky6xilcrpf2s0n3dd5vqq8irrxkcic3i1w49"))
(patches (search-patches "binutils-loongson-workaround.patch")))) (patches (search-patches "binutils-loongson-workaround.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
@ -448,7 +487,17 @@ change. GNU make offers many powerful extensions over the standard utility.")
;; Make sure 'ar' and 'ranlib' produce archives in a ;; Make sure 'ar' and 'ranlib' produce archives in a
;; deterministic fashion. ;; deterministic fashion.
"--enable-deterministic-archives"))) "--enable-deterministic-archives")
;; XXX: binutils 2.34 was mistakenly released without generated manuals:
;; <https://sourceware.org/bugzilla/show_bug.cgi?id=25491>. To avoid a
;; circular dependency on texinfo, prevent the build system from creating
;; the manuals by calling "true" instead of "makeinfo"...
#:make-flags '("MAKEINFO=true")))
;; ...and "hide" this package so that users who install binutils get the
;; version with documentation defined below.
(properties '((hidden? . #t)))
(synopsis "Binary utilities: bfd gas gprof ld") (synopsis "Binary utilities: bfd gas gprof ld")
(description (description
@ -461,6 +510,37 @@ included.")
(license gpl3+) (license gpl3+)
(home-page "https://www.gnu.org/software/binutils/"))) (home-page "https://www.gnu.org/software/binutils/")))
;; Work around a problem with binutils 2.34 whereby manuals are missing from
;; the release tarball. Remove this and the related code above when updating.
(define-public binutils+documentation
(package/inherit
binutils
(native-inputs
`(("texinfo" ,texinfo)))
(arguments
(substitute-keyword-arguments (package-arguments binutils)
((#:make-flags _ ''()) ''())))
(properties '())))
;; FIXME: ath9k-firmware-htc-binutils.patch do not apply on 2.34 because of a
;; big refactoring of xtensa-modules.c (commit 567607c11fbf7105 upstream).
;; Keep this version around until the patch is updated.
(define-public binutils-2.33
(package/inherit
binutils
(version "2.33.1")
(source (origin
(inherit (package-source binutils))
(uri (string-append "mirror://gnu/binutils/binutils-"
version ".tar.bz2"))
(sha256
(base32
"1cmd0riv37bqy9mwbg6n3523qgr8b3bbm5kwj19sjrasl4yq9d0c"))))
(arguments
(substitute-keyword-arguments (package-arguments binutils)
((#:make-flags _ ''()) ''())))
(properties '())))
(define-public binutils-gold (define-public binutils-gold
(package (package
(inherit binutils) (inherit binutils)
@ -491,7 +571,7 @@ included.")
(define* (make-ld-wrapper name #:key (define* (make-ld-wrapper name #:key
(target (const #f)) (target (const #f))
binutils binutils
(guile (canonical-package guile-2.2)) (guile (canonical-package guile-3.0))
(bash (canonical-package bash)) (bash (canonical-package bash))
(guile-for-build guile)) (guile-for-build guile))
"Return a package called NAME that contains a wrapper for the 'ld' program "Return a package called NAME that contains a wrapper for the 'ld' program
@ -529,7 +609,9 @@ wrapper for the cross-linker for that target, called 'TARGET-ld'."
'(string-append bin "/ld"))) '(string-append bin "/ld")))
(go (string-append ld ".go"))) (go (string-append ld ".go")))
(setvbuf (current-output-port) _IOLBF) (setvbuf (current-output-port)
(cond-expand (guile-2.0 _IOLBF)
(else 'line)))
(format #t "building ~s/bin/ld wrapper in ~s~%" (format #t "building ~s/bin/ld wrapper in ~s~%"
(assoc-ref %build-inputs "binutils") (assoc-ref %build-inputs "binutils")
out) out)
@ -569,13 +651,13 @@ the store.")
;; version 2.28, GNU/Hurd used a different glibc branch. ;; version 2.28, GNU/Hurd used a different glibc branch.
(package (package
(name "glibc") (name "glibc")
(version "2.29") (version "2.31")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/glibc/glibc-" version ".tar.xz")) (uri (string-append "mirror://gnu/glibc/glibc-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0jzh58728flfh939a8k9pi1zdyalfzlxmwra7k0rzji5gvavivpk")) "05zxkyz9bv3j9h0xyid1rhvh3klhsmrpkf3bcs6frvlgyr2gwilj"))
(snippet (snippet
;; Disable 'ldconfig' and /etc/ld.so.cache. The latter is ;; Disable 'ldconfig' and /etc/ld.so.cache. The latter is
;; required on LFS distros to avoid loading the distro's libc.so ;; required on LFS distros to avoid loading the distro's libc.so
@ -587,14 +669,14 @@ the store.")
#t)) #t))
(modules '((guix build utils))) (modules '((guix build utils)))
(patches (search-patches "glibc-ldd-x86_64.patch" (patches (search-patches "glibc-ldd-x86_64.patch"
"glibc-CVE-2019-7309.patch"
"glibc-CVE-2019-9169.patch"
"glibc-2.29-git-updates.patch"
"glibc-hidden-visibility-ldconfig.patch" "glibc-hidden-visibility-ldconfig.patch"
"glibc-versioned-locpath.patch" "glibc-versioned-locpath.patch"
"glibc-allow-kernel-2.6.32.patch" "glibc-allow-kernel-2.6.32.patch"
"glibc-reinstate-prlimit64-fallback.patch" "glibc-reinstate-prlimit64-fallback.patch"
"glibc-supported-locales.patch")))) "glibc-supported-locales.patch"
"glibc-hurd-clock_t_centiseconds.patch"
"glibc-hurd-clock_gettime_monotonic.patch"
"glibc-hurd-signal-sa-siginfo.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
;; Glibc's <limits.h> refers to <linux/limit.h>, for instance, so glibc ;; Glibc's <limits.h> refers to <linux/limit.h>, for instance, so glibc
@ -821,6 +903,44 @@ with the Linux kernel.")
;; Below are old libc versions, which we use mostly to build locale data in ;; Below are old libc versions, which we use mostly to build locale data in
;; the old format (which the new libc cannot cope with.) ;; the old format (which the new libc cannot cope with.)
(define-public glibc-2.30
(package
(inherit glibc)
(version "2.30")
(source (origin
(inherit (package-source glibc))
(uri (string-append "mirror://gnu/glibc/glibc-" version ".tar.xz"))
(sha256
(base32
"1bxqpg91d02qnaz837a5kamm0f43pr1il4r9pknygywsar713i72"))
(patches (search-patches "glibc-ldd-x86_64.patch"
"glibc-CVE-2019-19126.patch"
"glibc-hidden-visibility-ldconfig.patch"
"glibc-versioned-locpath.patch"
"glibc-allow-kernel-2.6.32.patch"
"glibc-reinstate-prlimit64-fallback.patch"
"glibc-2.29-supported-locales.patch"))))))
(define-public glibc-2.29
(package
(inherit glibc)
(version "2.29")
(source (origin
(inherit (package-source glibc))
(uri (string-append "mirror://gnu/glibc/glibc-" version ".tar.xz"))
(sha256
(base32
"0jzh58728flfh939a8k9pi1zdyalfzlxmwra7k0rzji5gvavivpk"))
(patches (search-patches "glibc-ldd-x86_64.patch"
"glibc-CVE-2019-7309.patch"
"glibc-CVE-2019-9169.patch"
"glibc-2.29-git-updates.patch"
"glibc-hidden-visibility-ldconfig.patch"
"glibc-versioned-locpath.patch"
"glibc-allow-kernel-2.6.32.patch"
"glibc-reinstate-prlimit64-fallback.patch"
"glibc-2.29-supported-locales.patch"))))))
(define-public glibc-2.28 (define-public glibc-2.28
(package (package
(inherit glibc) (inherit glibc)
@ -980,21 +1100,8 @@ with the Linux kernel.")
(package-name libc) "-" (package-name libc) "-"
(package-version libc))) (package-version libc)))
(arguments (arguments
(substitute-keyword-arguments (ensure-keyword-arguments (package-arguments base-gcc)
(ensure-keyword-arguments (package-arguments base-gcc) '(#:implicit-inputs? #f)))
'(#:implicit-inputs? #f))
((#:phases phases)
`(modify-phases ,phases
(add-before 'configure 'treat-glibc-as-system-header
(lambda _
(let ((libc (assoc-ref %build-inputs "libc")))
;; GCCs build processes requires that the libc
;; we're building against is on the system header
;; search path.
(for-each (lambda (var)
(setenv var (string-append libc "/include")))
'("C_INCLUDE_PATH" "CPLUS_INCLUDE_PATH"))
#t)))))))
(native-inputs (native-inputs
`(,@(package-native-inputs base-gcc) `(,@(package-native-inputs base-gcc)
,@(append (fold alist-delete (%final-inputs) '("libc" "libc:static"))) ,@(append (fold alist-delete (%final-inputs) '("libc" "libc:static")))
@ -1134,18 +1241,12 @@ test environments.")
(make-glibc-utf8-locales glibc)) (make-glibc-utf8-locales glibc))
;; Packages provided to ease use of binaries linked against the previous libc. ;; Packages provided to ease use of binaries linked against the previous libc.
(define-public glibc-locales-2.28 (define-public glibc-locales-2.29
(package (inherit (make-glibc-locales glibc-2.28)) (package (inherit (make-glibc-locales glibc-2.29))
(name "glibc-locales-2.28"))) (name "glibc-locales-2.29")))
(define-public glibc-utf8-locales-2.28 (define-public glibc-utf8-locales-2.29
(package (inherit (make-glibc-utf8-locales glibc-2.28)) (package (inherit (make-glibc-utf8-locales glibc-2.29))
(name "glibc-utf8-locales-2.28"))) (name "glibc-utf8-locales-2.29")))
;; These should no longer be needed.
(define-public glibc-utf8-locales-2.27
(deprecated-package "glibc-utf8-locales-2.27" glibc-utf8-locales-2.28))
(define-public glibc-locales-2.27
(deprecated-package "glibc-locales-2.27" glibc-locales-2.28))
(define-public which (define-public which
(package (package
@ -1282,26 +1383,7 @@ and daylight-saving rules.")
;;; package. ;;; package.
(define-public tzdata-for-tests (define-public tzdata-for-tests
(hidden-package (hidden-package
(package (package/inherit tzdata)))
(inherit tzdata)
(version "2019b")
(source (origin
(method url-fetch)
(uri (string-append
"https://data.iana.org/time-zones/releases/tzdata"
version ".tar.gz"))
(sha256
(base32
"0r0clnlslwm15m1c61dinf1fi9ffgl6aipng7i7yryfwj0n0kn85"))))
(inputs
`(("tzcode" ,(origin
(method url-fetch)
(uri (string-append
"https://data.iana.org/time-zones/releases/tzcode"
version ".tar.gz"))
(sha256
(base32
"0vbmswvv3li25s31shyllq5v24449lxnrki9hr043nipjd09sirf")))))))))
(define-public libiconv (define-public libiconv
(package (package

View File

@ -69,7 +69,16 @@
(4 "021gqqvgydixkrmqss64b6srfdlkvnx88lyfzpxfrn5d6bc7li0l") (4 "021gqqvgydixkrmqss64b6srfdlkvnx88lyfzpxfrn5d6bc7li0l")
(5 "0xl2kyzm84nlyklrqzkn73ixabhzfhn9x91lzcmis89cppclvxav") (5 "0xl2kyzm84nlyklrqzkn73ixabhzfhn9x91lzcmis89cppclvxav")
(6 "0844749ixk1z60437nkznzms1f0nzh9an62kj7sny6r0zyk2k1fn") (6 "0844749ixk1z60437nkznzms1f0nzh9an62kj7sny6r0zyk2k1fn")
(7 "16xg37gp1b8zlj5969w8mcrparwqlcbj9695vn3qhgb7wdz1xd0p"))) (7 "16xg37gp1b8zlj5969w8mcrparwqlcbj9695vn3qhgb7wdz1xd0p")
(8 "1qyp19krjh8zxvb0jgwmyjz40djslwcf4xi7kc1ab0iaca44bipf")
(9 "00yrjjqd95s81b21qq3ba1y7h879q8jaajlkjggc6grhcwbs4g7d")
(10 "04ca5bjv456v538mkspzvn4xb2zdphh31r4fpvfm9p5my0jw7yyn")
(11 "1sklyixvsv8993kxzs0jigacpdchjrq7jv5xpdx7kbqyp4rf6k9c")
(12 "0cz21qg2gbr40lfgza7g02bqi2qknwqgxnq459pjj640d0cywhr9")
(13 "16h9nwz3yzwj7fnxvlidjymdc4yr30h818433gh9j1x3in6igmzm")
(14 "12gm5bvv2pd3m72z2ilj26pa08c61az253dsgfl24vpf2ijywvjx")
(15 "0pm0px758w4i23s55wajcv6lqfiym7zgxvq0pxf6vclkv8nxy5x5")
(16 "0vdha332km2iwx8g2ld15jy7d24cbplzgr1531dpzylr9ajxglgz")))
(define (download-patches store count) (define (download-patches store count)
"Download COUNT Bash patches into store. Return a list of "Download COUNT Bash patches into store. Return a list of
@ -116,7 +125,8 @@ number/base32-hash tuples, directly usable in the 'patch-series' form."
(base32 (base32
"0kgvfwqdcd90waczf4gx39xnrxzijhjrzyzv7s8v4w31qqm0za5l")) "0kgvfwqdcd90waczf4gx39xnrxzijhjrzyzv7s8v4w31qqm0za5l"))
(patch-flags '("-p0")) (patch-flags '("-p0"))
(patches %patch-series-5.0))) (patches (cons (search-patch "bash-linux-pgrp-pipe.patch")
%patch-series-5.0))))
(version (string-append version "." (number->string (length %patch-series-5.0)))) (version (string-append version "." (number->string (length %patch-series-5.0))))
(build-system gnu-build-system) (build-system gnu-build-system)

View File

@ -3,7 +3,7 @@
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016, 2018 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016, 2018 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org> ;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -24,6 +24,7 @@
#:use-module (guix licenses) #:use-module (guix licenses)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix utils)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages hurd)) #:use-module (gnu packages hurd))
@ -31,14 +32,14 @@
(define-public libgc (define-public libgc
(package (package
(name "libgc") (name "libgc")
(version "7.6.12") (version "8.0.4")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/ivmai/bdwgc/releases" (uri (string-append "https://github.com/ivmai/bdwgc/releases"
"/download/v" version "/gc-" version ".tar.gz")) "/download/v" version "/gc-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"10jhhi79d5brwlsyhwgpnrmc8nhlf7aan2lk9xhgihk5jc6srbvc")))) "1798rp3mcfkgs38ynkbg2p47bq59pisrc6mn0l20pb5iczf0ssj3"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags
@ -54,21 +55,14 @@
,@(if (hurd-triplet? (or (%current-system) ,@(if (hurd-triplet? (or (%current-system)
(%current-target-system))) (%current-target-system)))
'("--disable-gcj-support") '("--disable-gcj-support")
'())) '()))))
#:phases (modify-phases %standard-phases
(add-after 'unpack 'adjust-pc-file
(lambda* (#:key inputs #:allow-other-keys)
(let ((libatomic-ops (assoc-ref inputs "libatomic-ops")))
;; GC 7.6.10 and later includes -latomic_ops in the
;; pkg-config file. To avoid propagation, insert an
;; absolute reference so dependent programs can find it.
(substitute* "bdw-gc.pc.in"
(("@ATOMIC_OPS_LIBS@" match)
(string-append "-L" libatomic-ops "/lib "
match)))
#t))))))
(native-inputs `(("pkg-config" ,pkg-config))) (native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("libatomic-ops" ,libatomic-ops))) (propagated-inputs
(if (%current-target-system)
;; The build system refuses to check for compiler intrinsics when
;; cross-compiling, and demands using libatomic-ops instead.
`(("libatomic-ops" ,libatomic-ops))
'()))
(outputs '("out" "debug")) (outputs '("out" "debug"))
(synopsis "The Boehm-Demers-Weiser conservative garbage collector (synopsis "The Boehm-Demers-Weiser conservative garbage collector
for C and C++") for C and C++")
@ -91,17 +85,27 @@ C or C++ programs, though that is not its primary goal.")
(license (x11-style (string-append home-page "license.txt"))))) (license (x11-style (string-append home-page "license.txt")))))
(define-public libgc-8.0 ;; TODO: Add a static output in libgc in the next rebuild cycle.
(define-public libgc/static-libs
(package/inherit
libgc
(arguments (substitute-keyword-arguments (package-arguments libgc)
((#:configure-flags flags ''())
`(cons "--enable-static" ,flags))))
(properties '((hidden? . #t)))))
(define-public libgc-7
(package (package
(inherit libgc) (inherit libgc)
(version "8.0.4") (version "7.6.12")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/ivmai/bdwgc/releases" (uri (string-append "https://github.com/ivmai/bdwgc/releases"
"/download/v" version "/gc-" version ".tar.gz")) "/download/v" version "/gc-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1798rp3mcfkgs38ynkbg2p47bq59pisrc6mn0l20pb5iczf0ssj3")))))) "10jhhi79d5brwlsyhwgpnrmc8nhlf7aan2lk9xhgihk5jc6srbvc"))))
(propagated-inputs `(("libatomic-ops" ,libatomic-ops)))))
(define-public libgc/back-pointers (define-public libgc/back-pointers
(package/inherit (package/inherit

View File

@ -11995,7 +11995,8 @@ dependency like SeqAn.")
;; Ensure that Eigen headers can be found ;; Ensure that Eigen headers can be found
(setenv "CPLUS_INCLUDE_PATH" (setenv "CPLUS_INCLUDE_PATH"
(string-append (assoc-ref inputs "eigen") (string-append (assoc-ref inputs "eigen")
"/include/eigen3")) "/include/eigen3:"
(or (getenv "CPLUS_INCLUDE_PATH") "")))
#t))))) #t)))))
(inputs (inputs
`(("boost" ,boost) `(("boost" ,boost)
@ -12173,8 +12174,8 @@ The following file formats are supported:
(("lib/libdivsufsort.a") "/lib/libdivsufsort.so")) (("lib/libdivsufsort.a") "/lib/libdivsufsort.so"))
;; Ensure that all headers can be found ;; Ensure that all headers can be found
(setenv "CPATH" (setenv "CPLUS_INCLUDE_PATH"
(string-append (getenv "CPATH") (string-append (or (getenv "CPLUS_INCLUDE_PATH") "")
":" ":"
(assoc-ref inputs "eigen") (assoc-ref inputs "eigen")
"/include/eigen3")) "/include/eigen3"))

View File

@ -31,7 +31,7 @@
(define-public bison (define-public bison
(package (package
(name "bison") (name "bison")
(version "3.4.1") (version "3.5.3")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -39,7 +39,7 @@
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"03c2pmq3bs0drdislnz6gm1rwz3n4pb2rz9navyxydppxg2rl597")))) "1i57hbczvr8674z73775jxdd3y59qggs5lmfd60gmwm5i1gmpy1b"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(;; Building in parallel on many-core systems may cause an error such as '(;; Building in parallel on many-core systems may cause an error such as

View File

@ -407,7 +407,7 @@ and will take advantage of multiple processor cores where possible.")
(assoc-ref %outputs "out") "/lib")))) (assoc-ref %outputs "out") "/lib"))))
(inputs `(("boost" ,boost) (inputs `(("boost" ,boost)
("openssl" ,openssl))) ("openssl" ,openssl)))
(native-inputs `(("python" ,python-2) (native-inputs `(("python" ,python-wrapper)
("pkg-config" ,pkg-config))) ("pkg-config" ,pkg-config)))
(home-page "https://www.libtorrent.org/") (home-page "https://www.libtorrent.org/")
(synopsis "Feature complete BitTorrent implementation") (synopsis "Feature complete BitTorrent implementation")

View File

@ -10,7 +10,9 @@
;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2018, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org> ;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019, 2020 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -40,66 +42,113 @@
#:use-module (gnu packages icu4c) #:use-module (gnu packages icu4c)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)
#:use-module (gnu packages python) #:use-module (gnu packages python)
#:use-module (gnu packages shells)) #:use-module (gnu packages shells)
#:use-module (srfi srfi-1))
(define (version-with-underscores version)
(string-map (lambda (x) (if (eq? x #\.) #\_ x)) version))
(define (boost-patch name version hash)
(origin
(method url-fetch)
(uri (string-append "https://www.boost.org/patches/"
(version-with-underscores version) "/" name))
(file-name (string-append "boost-" name))
(sha256 (base32 hash))))
(define-public boost (define-public boost
(package (package
(name "boost") (name "boost")
(version "1.70.0") (version "1.72.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (let ((version-with-underscores (uri (string-append "https://dl.bintray.com/boostorg/release/"
(string-map (lambda (x) (if (eq? x #\.) #\_ x)) version))) version "/source/boost_"
(list (string-append "mirror://sourceforge/boost/boost/" version (version-with-underscores version) ".tar.bz2"))
"/boost_" version-with-underscores ".tar.bz2") (patches
(string-append "https://dl.bintray.com/boostorg/release/" (list (boost-patch
version "/source/boost_" ;; 1.72.0 was released with a faulty coroutine submodule:
version-with-underscores ".tar.bz2")))) ;; <https://github.com/boostorg/coroutine/issues/46>.
"0001-revert-cease-dependence-on-range.patch" version
"1zcqxzh56m1s635wqwk15j3zcs2gmjvjy2f0hid7i78s4pgm0yfs")))
(sha256 (sha256
(base32 (base32
"0y47nc7w0arwgj4x1phadxbvl7wyfcgknbz5kv8lzpl98wsyh2j3")))) "08h7cv61fd0lzb4z50xanfqn0pdgvizjrpd1kcdgj725pisb5jar"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs `(("icu4c" ,icu4c) (inputs `(("icu4c" ,icu4c)
("zlib" ,zlib))) ("zlib" ,zlib)))
(native-inputs (native-inputs
`(("perl" ,perl) `(("perl" ,perl)
("python" ,python-2) ,@(if (%current-target-system)
'()
`(("python" ,python-wrapper)))
("tcsh" ,tcsh))) ("tcsh" ,tcsh)))
(arguments (arguments
`(#:tests? #f `(#:imported-modules ((guix build python-build-system)
,@%gnu-build-system-modules)
#:modules (((guix build python-build-system) #:select (python-version))
,@%gnu-build-system-modules)
#:tests? #f
#:make-flags #:make-flags
(list "threading=multi" "link=shared" (list "threading=multi" "link=shared"
;; XXX: Disable installation of Boosts modular CMake config scripts
;; which conflicts in 1.70.0 with the ones provided by CMake.
;; See <https://bugs.gnu.org/36721>.
"--no-cmake-config"
;; Set the RUNPATH to $libdir so that the libs find each other. ;; Set the RUNPATH to $libdir so that the libs find each other.
(string-append "linkflags=-Wl,-rpath=" (string-append "linkflags=-Wl,-rpath="
(assoc-ref %outputs "out") "/lib")) (assoc-ref %outputs "out") "/lib")
,@(if (%current-target-system)
`("--user-config=user-config.jam"
;; Python is not supported when cross-compiling.
"--without-python"
"binary-format=elf"
"target-os=linux"
,@(cond
((string-prefix? "arm" (%current-target-system))
'("abi=aapcs"
"address-model=32"
"architecture=arm"))
((string-prefix? "aarch64" (%current-target-system))
'("abi=aapcs"
"address-model=64"
"architecture=arm"))
(else '())))
'()))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(delete 'bootstrap) (delete 'bootstrap)
(replace 'configure (replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(let ((icu (assoc-ref inputs "icu4c")) (let ((icu (assoc-ref inputs "icu4c"))
(python (assoc-ref inputs "python"))
(out (assoc-ref outputs "out"))) (out (assoc-ref outputs "out")))
(substitute* '("libs/config/configure" (substitute* '("libs/config/configure"
"libs/spirit/classic/phoenix/test/runtest.sh" "libs/spirit/classic/phoenix/test/runtest.sh"
"tools/build/src/engine/execunix.c" "tools/build/src/engine/execunix.cpp"
"tools/build/src/engine/Jambase" "tools/build/src/engine/Jambase")
"tools/build/src/engine/jambase.c")
(("/bin/sh") (which "sh"))) (("/bin/sh") (which "sh")))
(setenv "SHELL" (which "sh")) (setenv "SHELL" (which "sh"))
(setenv "CONFIG_SHELL" (which "sh")) (setenv "CONFIG_SHELL" (which "sh"))
,@(if (%current-target-system)
`((call-with-output-file "user-config.jam"
(lambda (port)
(format port
"using gcc : cross : ~a-c++ ;"
,(%current-target-system)))))
'())
(invoke "./bootstrap.sh" (invoke "./bootstrap.sh"
(string-append "--prefix=" out) (string-append "--prefix=" out)
;; Auto-detection looks for ICU only in traditional ;; Auto-detection looks for ICU only in traditional
;; install locations. ;; install locations.
(string-append "--with-icu=" icu) (string-append "--with-icu=" icu)
;; Ditto for Python.
,@(if (%current-target-system)
'()
`((string-append "--with-python-root=" python)
(string-append "--with-python=" python "/bin/python")
(string-append "--with-python-version="
(python-version python))))
"--with-toolset=gcc")))) "--with-toolset=gcc"))))
(replace 'build (replace 'build
(lambda* (#:key make-flags #:allow-other-keys) (lambda* (#:key make-flags #:allow-other-keys)
@ -109,17 +158,27 @@
(replace 'install (replace 'install
(lambda* (#:key make-flags #:allow-other-keys) (lambda* (#:key make-flags #:allow-other-keys)
(apply invoke "./b2" "install" make-flags))) (apply invoke "./b2" "install" make-flags)))
(add-after 'install 'provide-libboost_python ,@(if (%current-target-system)
(lambda* (#:key outputs #:allow-other-keys) '()
(let ((out (assoc-ref outputs "out"))) '((add-after 'install 'provide-libboost_python
;; Boost can build support for both Python 2 and Python 3 since (lambda* (#:key inputs outputs #:allow-other-keys)
;; version 1.67.0, and suffixes each library with the Python (let* ((out (assoc-ref outputs "out"))
;; version. Many consumers only check for libboost_python (python-version (python-version
;; however, so we provide it here as suggested in (assoc-ref inputs "python")))
;; <https://github.com/boostorg/python/issues/203>. (libboost_pythonNN.so
(with-directory-excursion (string-append out "/lib") (string-append "libboost_python"
(symlink "libboost_python27.so" "libboost_python.so")) (string-join (string-split
#t)))))) python-version #\.)
"")
".so")))
(with-directory-excursion (string-append out "/lib")
(symlink libboost_pythonNN.so "libboost_python.so")
;; Some packages only look for the major version.
(symlink libboost_pythonNN.so
(string-append "libboost_python"
(string-take python-version 1)
".so")))
#t))))))))
(home-page "https://www.boost.org") (home-page "https://www.boost.org")
(synopsis "Peer-reviewed portable C++ source libraries") (synopsis "Peer-reviewed portable C++ source libraries")
@ -129,54 +188,16 @@ across a broad spectrum of applications.")
(license (license:x11-style "https://www.boost.org/LICENSE_1_0.txt" (license (license:x11-style "https://www.boost.org/LICENSE_1_0.txt"
"Some components have other similar licences.")))) "Some components have other similar licences."))))
;; TODO: Merge with 'Boost' in the next rebuild cycle. (define-public boost-with-python2
(define-public boost-with-python3
(package (package
(inherit boost) (inherit boost)
(name "boost-python3") (name "boost-python2")
(native-inputs (native-inputs
`(("perl" ,perl) `(("python" ,python-2)
("python" ,python) ,@(alist-delete "python" (package-native-inputs boost))))))
("tcsh" ,tcsh)))
(arguments (substitute-keyword-arguments (package-arguments boost)
((#:phases phases)
`(modify-phases ,phases
(replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((icu (assoc-ref inputs "icu4c"))
(python (assoc-ref inputs "python"))
(out (assoc-ref outputs "out")))
(substitute* '("libs/config/configure"
"libs/spirit/classic/phoenix/test/runtest.sh"
"tools/build/src/engine/execunix.c"
"tools/build/src/engine/Jambase"
"tools/build/src/engine/jambase.c")
(("/bin/sh") (which "sh")))
(setenv "SHELL" (which "sh")) (define-public boost-with-python3
(setenv "CONFIG_SHELL" (which "sh")) (deprecated-package "boost-with-python3" boost))
(substitute* "tools/build/src/tools/python.jam"
(("include/python\\$\\(version\\)")
"include/python$(version)m"))
(invoke "./bootstrap.sh"
(string-append "--prefix=" out)
;; Auto-detection looks for dependencies only
;; in traditional install locations.
(string-append "--with-icu=" icu)
(string-append "--with-python=" python "/bin/python3")
(string-append "--with-python-root=" python)
"--with-python-version=3.7"
"--with-toolset=gcc"))))
(replace 'provide-libboost_python
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(with-directory-excursion (string-append out "/lib")
(symlink "libboost_python37.so" "libboost_python.so")
;; Some packages also look for libboost_python3.so
(symlink "libboost_python37.so" "libboost_python3.so"))
#t)))))))))
(define-public boost-static (define-public boost-static
(package (package
@ -189,10 +210,18 @@ across a broad spectrum of applications.")
((#:phases phases) ((#:phases phases)
`(modify-phases ,phases `(modify-phases ,phases
(replace 'provide-libboost_python (replace 'provide-libboost_python
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))) (let* ((out (assoc-ref outputs "out"))
(python-version (python-version
(assoc-ref inputs "python")))
(libboost_pythonNN.a
(string-append "libboost_python"
(string-join (string-split
python-version #\.)
"")
".a")))
(with-directory-excursion (string-append out "/lib") (with-directory-excursion (string-append out "/lib")
(symlink "libboost_python27.a" "libboost_python.a")) (symlink libboost_pythonNN.a "libboost_python.a"))
#t))))))))) #t)))))))))
(define-public boost-1.69 (define-public boost-1.69

View File

@ -11,6 +11,7 @@
;;; Copyright © 2019 nee <nee@cock.li> ;;; Copyright © 2019 nee <nee@cock.li>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> ;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2018, 2019, 2020 Vagrant Cascadian <vagrant@debian.org> ;;; Copyright © 2018, 2019, 2020 Vagrant Cascadian <vagrant@debian.org>
;;; Copyright © 2020 Pierre Langlois <pierre.langlois@gmx.com> ;;; Copyright © 2020 Pierre Langlois <pierre.langlois@gmx.com>
;;; ;;;
@ -93,7 +94,9 @@
(sha256 (sha256
(base32 (base32
"0zgp5m3hmc9jh8wpjx6czzkh5id2y8n1k823x2mjvm2sk6b28ag5")) "0zgp5m3hmc9jh8wpjx6czzkh5id2y8n1k823x2mjvm2sk6b28ag5"))
(patches (search-patches "grub-efi-fat-serial-number.patch")))) (patches (search-patches
"grub-efi-fat-serial-number.patch"
"grub-verifiers-Blocklist-fallout-cleanup.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags
@ -154,11 +157,19 @@
;; Depend on LVM2 for libdevmapper, used by 'grub-probe' and ;; Depend on LVM2 for libdevmapper, used by 'grub-probe' and
;; 'grub-install' to recognize mapped devices (LUKS, etc.) ;; 'grub-install' to recognize mapped devices (LUKS, etc.)
("lvm2" ,lvm2) ,@(if (member (or (%current-target-system)
(%current-system))
(package-supported-systems lvm2))
`(("lvm2" ,lvm2))
'())
;; Depend on mdadm, which is invoked by 'grub-probe' and 'grub-install' ;; Depend on mdadm, which is invoked by 'grub-probe' and 'grub-install'
;; to determine whether the root file system is RAID. ;; to determine whether the root file system is RAID.
("mdadm" ,mdadm) ,@(if (member (or (%current-target-system)
(%current-system))
(package-supported-systems mdadm))
`(("mdadm" ,mdadm))
'())
;; Console-setup's ckbcomp is invoked by grub-kbdcomp. It is required ;; Console-setup's ckbcomp is invoked by grub-kbdcomp. It is required
;; for generating alternative keyboard layouts. ;; for generating alternative keyboard layouts.
@ -166,7 +177,11 @@
;; Needed for grub-mount, the only reliable way to tell whether a given ;; Needed for grub-mount, the only reliable way to tell whether a given
;; file system will be readable by GRUB without rebooting. ;; file system will be readable by GRUB without rebooting.
("fuse" ,fuse) ,@(if (member (or (%current-target-system)
(%current-system))
(package-supported-systems fuse))
`(("fuse" ,fuse))
'())
("freetype" ,freetype) ("freetype" ,freetype)
;; ("libusb" ,libusb) ;; ("libusb" ,libusb)
@ -198,7 +213,9 @@
;; Dependencies for the test suite. The "real" QEMU is needed here, ;; Dependencies for the test suite. The "real" QEMU is needed here,
;; because several targets are used. ;; because several targets are used.
("parted" ,parted) ("parted" ,parted)
("qemu" ,qemu-minimal) ,@(if (member (%current-system) (package-supported-systems qemu-minimal))
`(("qemu" ,qemu-minimal))
'())
("xorriso" ,xorriso))) ("xorriso" ,xorriso)))
(home-page "https://www.gnu.org/software/grub/") (home-page "https://www.gnu.org/software/grub/")
(synopsis "GRand Unified Boot loader") (synopsis "GRand Unified Boot loader")
@ -212,6 +229,33 @@ menu to select one of the installed operating systems.")
(license license:gpl3+) (license license:gpl3+)
(properties '((cpe-name . "grub2"))))) (properties '((cpe-name . "grub2")))))
(define-public grub-minimal
(package
(inherit grub)
(name "grub-minimal")
(inputs
(fold alist-delete (package-inputs grub)
'("lvm2" "mdadm" "fuse" "console-setup")))
(native-inputs
(fold alist-delete (package-native-inputs grub)
'("help2man" "texinfo" "parted" "qemu" "xorriso")))
(arguments
`(#:configure-flags (list "PYTHON=true")
#:phases (modify-phases %standard-phases
(add-after 'unpack 'patch-stuff
(lambda* (#:key native-inputs inputs #:allow-other-keys)
(substitute* "grub-core/Makefile.in"
(("/bin/sh") (which "sh")))
;; Make the font visible.
(copy-file (assoc-ref (or native-inputs inputs)
"unifont")
"unifont.bdf.gz")
(system* "gunzip" "unifont.bdf.gz")
#t)))
#:tests? #f))))
(define-public grub-efi (define-public grub-efi
(package (package
(inherit grub) (inherit grub)
@ -305,7 +349,7 @@ menu to select one of the installed operating systems.")
("perl" ,perl) ("perl" ,perl)
("python-2" ,python-2))) ("python-2" ,python-2)))
(inputs (inputs
`(("libuuid" ,util-linux) `(("libuuid" ,util-linux "lib")
("mtools" ,mtools))) ("mtools" ,mtools)))
(arguments (arguments
`(#:parallel-build? #f `(#:parallel-build? #f
@ -943,7 +987,7 @@ to Novena upstream, does not load u-boot.img from the first partition.")
("libyaml" ,libyaml) ("libyaml" ,libyaml)
("openssl" ,openssl) ("openssl" ,openssl)
("openssl:static" ,openssl "static") ("openssl:static" ,openssl "static")
("util-linux" ,util-linux))) ("util-linux" ,util-linux "lib")))
(home-page (home-page
"https://dev.chromium.org/chromium-os/chromiumos-design-docs/verified-boot") "https://dev.chromium.org/chromium-os/chromiumos-design-docs/verified-boot")
(synopsis "ChromiumOS verified boot utilities") (synopsis "ChromiumOS verified boot utilities")

View File

@ -1,8 +1,8 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2018, 2019 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014, 2015, 2018, 2019 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2018, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2019 Carl Dong <contact@carldong.me> ;;; Copyright © 2019 Carl Dong <contact@carldong.me>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
@ -104,6 +104,15 @@
,(base32 "07830bx29ad5i0l1ykj0g0b1jayjdblf01sr3ww9wbnwdbzinqms")) ,(base32 "07830bx29ad5i0l1ykj0g0b1jayjdblf01sr3ww9wbnwdbzinqms"))
("xz" ("xz"
,(base32 "0i9kxdi17bm5gxfi2xzm0y73p3ii0cqxli1sbljm6rh2fjgyn90k"))) ,(base32 "0i9kxdi17bm5gxfi2xzm0y73p3ii0cqxli1sbljm6rh2fjgyn90k")))
("i586-gnu"
("bash"
,(base32 "1as8649aqaibahhhrvkj10ci8shpi4hq5n7gnik8rhhy0dc1jarg"))
("mkdir"
,(base32 "1snqgpfrl00hfn82lm29jqylzjsfb9jd6ha74dp12phwb8fpbmb9"))
("tar"
,(base32 "0nq2c1zb3wv5bf7kd83sziaashydazrn7xgq6kijlk0zj2syzc2m"))
("xz"
,(base32 "033rhpk6zrpxpd6ffjyg5y2zwq9x9cnq0zljb7k8jlncbalsayq5")))
("mips64el-linux" ("mips64el-linux"
("bash" ("bash"
,(base32 "1aw046dhda240k9pb9iaj5aqkm23gkvxa9j82n4k7fk87nbrixw6")) ,(base32 "1aw046dhda240k9pb9iaj5aqkm23gkvxa9j82n4k7fk87nbrixw6"))
@ -114,12 +123,17 @@
("xz" ("xz"
,(base32 "09j1d69qr0hhhx4k4ih8wp00dfc9y4rp01hfg3vc15yxd0jxabh5"))))) ,(base32 "09j1d69qr0hhhx4k4ih8wp00dfc9y4rp01hfg3vc15yxd0jxabh5")))))
(define (bootstrap-executable-url program system) (define %bootstrap-executable-base-urls
"Return the URL where PROGRAM can be found for SYSTEM." ;; This is where the bootstrap executables come from.
(string-append '("https://git.savannah.gnu.org/cgit/guix.git/plain/gnu/packages/bootstrap/"
"https://git.savannah.gnu.org/cgit/guix.git/plain/gnu/packages/bootstrap/" "http://lilypond.org/janneke/guix/"))
system "/" program
"?id=44f07d1dc6806e97c4e9ee3e6be883cc59dc666e")) (define (bootstrap-executable-file-name system program)
"Return the FILE-NAME part of url where PROGRAM can be found for SYSTEM."
(match system
("i586-gnu" (string-append system "/20200326/" program))
(_ (string-append system "/" program
"?id=44f07d1dc6806e97c4e9ee3e6be883cc59dc666e"))))
(define bootstrap-executable (define bootstrap-executable
(mlambda (program system) (mlambda (program system)
@ -140,7 +154,9 @@ for system '~a'")
((sha256) ((sha256)
(origin (origin
(method url-fetch/executable) (method url-fetch/executable)
(uri (bootstrap-executable-url program system)) (uri (map (cute string-append <>
(bootstrap-executable-file-name system program))
%bootstrap-executable-base-urls))
(file-name program) (file-name program)
(sha256 sha256))))))) (sha256 sha256)))))))
@ -301,7 +317,8 @@ or false to signal an error."
"http://alpha.gnu.org/gnu/guix/bootstrap" "http://alpha.gnu.org/gnu/guix/bootstrap"
"ftp://alpha.gnu.org/gnu/guix/bootstrap" "ftp://alpha.gnu.org/gnu/guix/bootstrap"
"http://www.fdn.fr/~lcourtes/software/guix/packages" "http://www.fdn.fr/~lcourtes/software/guix/packages"
"http://flashner.co.il/guix/bootstrap")) "http://flashner.co.il/guix/bootstrap"
"http://lilypond.org/janneke/guix/"))
(define (bootstrap-guile-url-path system) (define (bootstrap-guile-url-path system)
"Return the URI for FILE." "Return the URI for FILE."
@ -311,6 +328,8 @@ or false to signal an error."
"/20170217/guile-2.0.14.tar.xz") "/20170217/guile-2.0.14.tar.xz")
("armhf-linux" ("armhf-linux"
"/20150101/guile-2.0.11.tar.xz") "/20150101/guile-2.0.11.tar.xz")
("i586-gnu"
"/20200326/guile-static-stripped-2.0.14-i586-pc-gnu.tar.xz")
(_ (_
"/20131110/guile-2.0.9.tar.xz")))) "/20131110/guile-2.0.9.tar.xz"))))
@ -326,7 +345,9 @@ or false to signal an error."
("armhf-linux" ("armhf-linux"
(base32 "1mi3brl7l58aww34rawhvja84xc7l1b4hmwdmc36fp9q9mfx0lg5")) (base32 "1mi3brl7l58aww34rawhvja84xc7l1b4hmwdmc36fp9q9mfx0lg5"))
("aarch64-linux" ("aarch64-linux"
(base32 "1giy2aprjmn5fp9c4s9r125fljw4wv6ixy5739i5bffw4jgr0f9r")))) (base32 "1giy2aprjmn5fp9c4s9r125fljw4wv6ixy5739i5bffw4jgr0f9r"))
("i586-gnu"
(base32 "0wgqpsmvg25rnqn49ap7kwd2qxccd8dr4lllzp7i3rjvgav27vac"))))
(define (bootstrap-guile-origin system) (define (bootstrap-guile-origin system)
"Return an <origin> object for the Guile tarball of SYSTEM." "Return an <origin> object for the Guile tarball of SYSTEM."
@ -456,6 +477,8 @@ $out/bin/guile --version~%"
"/20150101/static-binaries.tar.xz") "/20150101/static-binaries.tar.xz")
("aarch64-linux" ("aarch64-linux"
"/20170217/static-binaries.tar.xz") "/20170217/static-binaries.tar.xz")
("i586-gnu"
"/20200326/static-binaries-0-i586-pc-gnu.tar.xz")
(_ (_
"/20131110/static-binaries.tar.xz"))) "/20131110/static-binaries.tar.xz")))
%bootstrap-base-urls)) %bootstrap-base-urls))
@ -473,6 +496,9 @@ $out/bin/guile --version~%"
("aarch64-linux" ("aarch64-linux"
(base32 (base32
"18dfiq6c6xhsdpbidigw6480wh0vdgsxqq3xindq4lpdgqlccpfh")) "18dfiq6c6xhsdpbidigw6480wh0vdgsxqq3xindq4lpdgqlccpfh"))
("i586-gnu"
(base32
"17kllqnf3fg79gzy9ansgi801c46yh9c23h4d923plvb0nfm1cfn"))
("mips64el-linux" ("mips64el-linux"
(base32 (base32
"072y4wyfsj1bs80r6vbybbafy8ya4vfy7qj25dklwk97m6g71753")))))) "072y4wyfsj1bs80r6vbybbafy8ya4vfy7qj25dklwk97m6g71753"))))))
@ -519,6 +545,8 @@ $out/bin/guile --version~%"
"/20150101/binutils-2.25.tar.xz") "/20150101/binutils-2.25.tar.xz")
("aarch64-linux" ("aarch64-linux"
"/20170217/binutils-2.27.tar.xz") "/20170217/binutils-2.27.tar.xz")
("i586-gnu"
"/20200326/binutils-static-stripped-2.34-i586-pc-gnu.tar.xz")
(_ (_
"/20131110/binutils-2.23.2.tar.xz"))) "/20131110/binutils-2.23.2.tar.xz")))
%bootstrap-base-urls)) %bootstrap-base-urls))
@ -536,6 +564,9 @@ $out/bin/guile --version~%"
("aarch64-linux" ("aarch64-linux"
(base32 (base32
"111s7ilfiby033rczc71797xrmaa3qlv179wdvsaq132pd51xv3n")) "111s7ilfiby033rczc71797xrmaa3qlv179wdvsaq132pd51xv3n"))
("i586-gnu"
(base32
"11kykv1kmqc5wln57rs4klaqa13hm952smkc57qcsyss21kfjprs"))
("mips64el-linux" ("mips64el-linux"
(base32 (base32
"1x8kkhcxmfyzg1ddpz2pxs6fbdl6412r7x0nzbmi5n7mj8zw2gy7")))))) "1x8kkhcxmfyzg1ddpz2pxs6fbdl6412r7x0nzbmi5n7mj8zw2gy7"))))))
@ -589,6 +620,8 @@ $out/bin/guile --version~%"
"/20150101/glibc-2.20.tar.xz") "/20150101/glibc-2.20.tar.xz")
("aarch64-linux" ("aarch64-linux"
"/20170217/glibc-2.25.tar.xz") "/20170217/glibc-2.25.tar.xz")
("i586-gnu"
"/20200326/glibc-stripped-2.31-i586-pc-gnu.tar.xz")
(_ (_
"/20131110/glibc-2.18.tar.xz"))) "/20131110/glibc-2.18.tar.xz")))
%bootstrap-base-urls)) %bootstrap-base-urls))
@ -606,6 +639,9 @@ $out/bin/guile --version~%"
("aarch64-linux" ("aarch64-linux"
(base32 (base32
"07nx3x8598i2924rjnlrncg6rm61c9bmcczbbcpbx0fb742nvv5c")) "07nx3x8598i2924rjnlrncg6rm61c9bmcczbbcpbx0fb742nvv5c"))
("i586-gnu"
(base32
"14ddm10lpbas8bankmn5bcrlqvz1v5dnn1qjzxb19r57vd2w5952"))
("mips64el-linux" ("mips64el-linux"
(base32 (base32
"0k97a3whzx3apsi9n2cbsrr79ad6lh00klxph9hw4fqyp1abkdsg"))))))))) "0k97a3whzx3apsi9n2cbsrr79ad6lh00klxph9hw4fqyp1abkdsg")))))))))
@ -675,6 +711,8 @@ exec ~a/bin/.gcc-wrapped -B~a/lib \
"/20150101/gcc-4.8.4.tar.xz") "/20150101/gcc-4.8.4.tar.xz")
("aarch64-linux" ("aarch64-linux"
"/20170217/gcc-5.4.0.tar.xz") "/20170217/gcc-5.4.0.tar.xz")
("i586-gnu"
"/20200326/gcc-stripped-5.5.0-i586-pc-gnu.tar.xz")
(_ (_
"/20131110/gcc-4.8.2.tar.xz"))) "/20131110/gcc-4.8.2.tar.xz")))
%bootstrap-base-urls)) %bootstrap-base-urls))
@ -692,6 +730,9 @@ exec ~a/bin/.gcc-wrapped -B~a/lib \
("aarch64-linux" ("aarch64-linux"
(base32 (base32
"1ar3vdzyqbfm0z36kmvazvfswxhcihlacl2dzdjgiq25cqnq9ih1")) "1ar3vdzyqbfm0z36kmvazvfswxhcihlacl2dzdjgiq25cqnq9ih1"))
("i586-gnu"
(base32
"1j2zc58wzil71a34h7c70sd68dmqvcscrw3rmn2whq79vd70zvv5"))
("mips64el-linux" ("mips64el-linux"
(base32 (base32
"1m5miqkyng45l745n0sfafdpjkqv9225xf44jqkygwsipj2cv9ks"))))))))) "1m5miqkyng45l745n0sfafdpjkqv9225xf44jqkygwsipj2cv9ks")))))))))
@ -808,19 +849,18 @@ exec ~a/bin/.gcc-wrapped -B~a/lib \
(define (%bootstrap-inputs) (define (%bootstrap-inputs)
;; The initial, pre-built inputs. From now on, we can start building our ;; The initial, pre-built inputs. From now on, we can start building our
;; own packages. ;; own packages.
`(,@(match (%current-system) (match (%current-system)
((or "i686-linux" "x86_64-linux") ((or "i686-linux" "x86_64-linux")
`(("linux-libre-headers" ,%bootstrap-linux-libre-headers) `(("linux-libre-headers" ,%bootstrap-linux-libre-headers)
("bootstrap-mescc-tools" ,%bootstrap-mescc-tools) ("bootstrap-mescc-tools" ,%bootstrap-mescc-tools)
("mes" ,%bootstrap-mes))) ("mes" ,%bootstrap-mes)))
(_ (_
`(("libc" ,%bootstrap-glibc) `(("libc" ,%bootstrap-glibc)
("gcc" ,%bootstrap-gcc) ("gcc" ,%bootstrap-gcc)
("binutils" ,%bootstrap-binutils)))) ("binutils" ,%bootstrap-binutils)
("coreutils&co" ,%bootstrap-coreutils&co) ("coreutils&co" ,%bootstrap-coreutils&co)
;; In gnu-build-system.scm, we rely on the availability of Bash.
;; In gnu-build-system.scm, we rely on the availability of Bash. ("bash" ,%bootstrap-coreutils&co)))))
("bash" ,%bootstrap-coreutils&co)))
(define %bootstrap-inputs-for-tests (define %bootstrap-inputs-for-tests
;; These are bootstrap inputs that are cheap to produce (no compilation ;; These are bootstrap inputs that are cheap to produce (no compilation

View File

@ -171,7 +171,7 @@ files and generates build instructions for the Ninja build system.")
(define-public meson (define-public meson
(package (package
(name "meson") (name "meson")
(version "0.50.1") (version "0.53.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/mesonbuild/meson/" (uri (string-append "https://github.com/mesonbuild/meson/"
@ -179,7 +179,7 @@ files and generates build instructions for the Ninja build system.")
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1k2fw5qk4mqjcb4j5dhp8xfn0caqphb11yh8zkw7v9w01kb5d3zn")))) "07y2hh9dfn1m9g4bsy49nbn3vdmd0b2iwr8bxg19fhqq6c7q73ry"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(;; FIXME: Tests require many additional inputs, a fix for the RUNPATH `(;; FIXME: Tests require many additional inputs, a fix for the RUNPATH

View File

@ -38,6 +38,7 @@
#:use-module (gnu packages dav) #:use-module (gnu packages dav)
#:use-module (gnu packages freedesktop) #:use-module (gnu packages freedesktop)
#:use-module (gnu packages glib) #:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages icu4c) #:use-module (gnu packages icu4c)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)
@ -136,7 +137,10 @@ the <tz.h> library for handling time zones and leap seconds.")
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
'(#:tests? #f ; test suite appears broken '(#:tests? #f ; test suite appears broken
#:configure-flags '("-DSHARED_ONLY=true") #:configure-flags '("-DSHARED_ONLY=true"
;; required by evolution-data-server
"-DGOBJECT_INTROSPECTION=true"
"-DICAL_GLIB_VAPI=true")
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-before 'configure 'patch-paths (add-before 'configure 'patch-paths
@ -153,9 +157,11 @@ the <tz.h> library for handling time zones and leap seconds.")
(("\\\"/usr/share/lib/zoneinfo\\\"") ""))) (("\\\"/usr/share/lib/zoneinfo\\\"") "")))
#t))))) #t)))))
(native-inputs (native-inputs
`(("gtk-doc" ,gtk-doc) `(("gobject-introspection" ,gobject-introspection)
("gtk-doc" ,gtk-doc)
("perl" ,perl) ("perl" ,perl)
("pkg-config" ,pkg-config))) ("pkg-config" ,pkg-config)
("vala" ,vala)))
(inputs (inputs
`(("glib" ,glib) `(("glib" ,glib)
("libxml2" ,libxml2) ("libxml2" ,libxml2)

View File

@ -477,7 +477,7 @@ capacity is user-selectable.")
("eudev" ,eudev) ("eudev" ,eudev)
("fontconfig" ,fontconfig) ("fontconfig" ,fontconfig)
("libexif" ,libexif) ("libexif" ,libexif)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("ffmpeg" ,ffmpeg-3.4))) ("ffmpeg" ,ffmpeg-3.4)))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)

View File

@ -67,6 +67,7 @@
#:use-module (gnu packages python-web) #:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz) #:use-module (gnu packages python-xyz)
#:use-module (gnu packages time) #:use-module (gnu packages time)
#:use-module (gnu packages xml)
#:use-module (guix utils) #:use-module (guix utils)
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages) #:use-module (guix packages)
@ -645,26 +646,20 @@ doctest.")
(define-public python-mock (define-public python-mock
(package (package
(name "python-mock") (name "python-mock")
(version "2.0.0") (version "3.0.5")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "mock" version)) (uri (pypi-uri "mock" version))
(sha256 (sha256
(base32 (base32
"1flbpksir5sqrvq2z0dp8sl4bzbadg21sj4d42w3klpdfvgvcn5i")))) "1hrp6j0yrx2xzylfv02qa8kph661m6yq4p0mc8fnimch9j4psrc3"))))
(propagated-inputs (propagated-inputs
`(("python-pbr" ,python-pbr-minimal) `(("python-six" ,python-six)))
("python-six" ,python-six)))
(build-system python-build-system) (build-system python-build-system)
(native-inputs
`(("python-unittest2" ,python-unittest2)))
(arguments (arguments
`(#:phases ;; FIXME: Tests require "pytest", which depends on this package.
(modify-phases %standard-phases '(#:tests? #f))
(replace 'check
(lambda _
(zero? (system* "unit2")))))))
(home-page "https://github.com/testing-cabal/mock") (home-page "https://github.com/testing-cabal/mock")
(synopsis "Python mocking and patching library for testing") (synopsis "Python mocking and patching library for testing")
(description (description
@ -772,35 +767,40 @@ standard library.")
(define-public python-pytest (define-public python-pytest
(package (package
(name "python-pytest") (name "python-pytest")
(version "4.4.2") (version "5.3.5")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "pytest" version)) (uri (pypi-uri "pytest" version))
(sha256 (sha256
(base32 (base32
"18w38kjnffdcrlbw6ny6dksgxai6x9bxpjs2m6klqmb8hfzjkcb2")))) "139i9cjhrv5aici3skq8iihvfb3lq0d8xb5j7qycr2hlk8cfjpqd"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:phases `(#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(replace 'check (replace 'check
(lambda _ (lambda* (#:key (tests? #t) #:allow-other-keys)
(invoke "pytest" "-vv" "-k" (if tests?
(string-append (invoke "pytest" "-vv" "-k"
;; These tests involve the /usr directory, and fails. (string-append
"not test_remove_dir_prefix" ;; These tests involve the /usr directory, and fails.
" and not test_argcomplete" "not test_remove_dir_prefix"
;; This test tries to override PYTHONPATH, and " and not test_argcomplete"
;; subsequently fails to locate the test libraries. ;; This test tries to override PYTHONPATH, and
" and not test_collection"))))))) ;; subsequently fails to locate the test libraries.
" and not test_collection"))
(format #t "test suite not run~%"))
#t)))))
(propagated-inputs (propagated-inputs
`(("python-atomicwrites" ,python-atomicwrites) `(("python-atomicwrites" ,python-atomicwrites)
("python-attrs" ,python-attrs-bootstrap) ("python-attrs" ,python-attrs-bootstrap)
("python-more-itertools" ,python-more-itertools) ("python-more-itertools" ,python-more-itertools)
("python-packaging" ,python-packaging-bootstrap)
("python-pluggy" ,python-pluggy) ("python-pluggy" ,python-pluggy)
("python-py" ,python-py) ("python-py" ,python-py)
("python-six" ,python-six-bootstrap))) ("python-six" ,python-six-bootstrap)
("python-wcwidth" ,python-wcwidth)))
(native-inputs (native-inputs
`(;; Tests need the "regular" bash since 'bash-final' lacks `compgen`. `(;; Tests need the "regular" bash since 'bash-final' lacks `compgen`.
("bash" ,bash) ("bash" ,bash)
@ -808,7 +808,8 @@ standard library.")
("python-nose" ,python-nose) ("python-nose" ,python-nose)
("python-mock" ,python-mock) ("python-mock" ,python-mock)
("python-pytest" ,python-pytest-bootstrap) ("python-pytest" ,python-pytest-bootstrap)
("python-setuptools-scm" ,python-setuptools-scm))) ("python-setuptools-scm" ,python-setuptools-scm)
("python-xmlschema" ,python-xmlschema)))
(home-page "https://docs.pytest.org/en/latest/") (home-page "https://docs.pytest.org/en/latest/")
(synopsis "Python testing library") (synopsis "Python testing library")
(description (description
@ -818,15 +819,41 @@ and many external plugins.")
(license license:expat) (license license:expat)
(properties `((python2-variant . ,(delay python2-pytest)))))) (properties `((python2-variant . ,(delay python2-pytest))))))
;; Pytest 4.x are the last versions that support Python 2.
(define-public python2-pytest (define-public python2-pytest
(let ((pytest (package-with-python2 (package
(strip-python2-variant python-pytest)))) (inherit (strip-python2-variant python-pytest))
(package (name "python2-pytest")
(inherit pytest) (version "4.6.9")
(propagated-inputs (source (origin
`(("python2-funcsigs" ,python2-funcsigs) (method url-fetch)
("python2-pathlib2" ,python2-pathlib2) (uri (pypi-uri "pytest" version))
,@(package-propagated-inputs pytest)))))) (sha256
(base32
"0fgkmpc31nzy97fxfrkqbzycigdwxwwmninx3qhkzp81migggs0r"))))
(build-system python-build-system)
(arguments
`(#:python ,python-2
,@(package-arguments python-pytest)))
(propagated-inputs
`(("python-atomicwrites" ,python2-atomicwrites)
("python-attrs" ,python2-attrs-bootstrap)
("python-funcsigs" ,python2-funcsigs)
("python-importlib-metadata" ,python2-importlib-metadata-bootstrap)
("python-more-itertools" ,python2-more-itertools)
("python-packaging" ,python2-packaging-bootstrap)
("python-pathlib2" ,python2-pathlib2)
("python-pluggy" ,python2-pluggy)
("python-py" ,python2-py)
("python-six" ,python2-six-bootstrap)
("python-wcwidth" ,python2-wcwidth)))
(native-inputs
`(("bash" ,bash) ;tests require 'compgen'
("python-hypothesis" ,python2-hypothesis)
("python-nose" ,python2-nose)
("python-mock" ,python2-mock)
("python-pytest" ,python2-pytest-bootstrap)
("python-setuptools-scm" ,python2-setuptools-scm)))))
(define-public python-pytest-bootstrap (define-public python-pytest-bootstrap
(package (package
@ -837,24 +864,37 @@ and many external plugins.")
(properties `((python2-variant . ,(delay python2-pytest-bootstrap)))))) (properties `((python2-variant . ,(delay python2-pytest-bootstrap))))))
(define-public python2-pytest-bootstrap (define-public python2-pytest-bootstrap
(let ((pytest (package-with-python2 (hidden-package
(strip-python2-variant python-pytest-bootstrap)))) (package/inherit
(package (inherit pytest) python2-pytest
(propagated-inputs (name "python2-pytest-bootstrap")
`(("python2-funcsigs" ,python2-funcsigs-bootstrap) (arguments
("python2-pathlib2" ,python2-pathlib2-bootstrap) (substitute-keyword-arguments (package-arguments python2-pytest)
,@(package-propagated-inputs pytest)))))) ((#:tests? _ #f) #f)))
(native-inputs
`(("python-setuptools-scm" ,python2-setuptools-scm)))
(propagated-inputs
`(("python-atomicwrites" ,python2-atomicwrites)
("python-attrs" ,python2-attrs-bootstrap)
("python-funcsigs" ,python2-funcsigs-bootstrap)
("python-importlib-metadata" ,python2-importlib-metadata-bootstrap)
("python-more-itertools" ,python2-more-itertools)
("python-packaging" ,python2-packaging-bootstrap)
("python-pathlib2" ,python2-pathlib2-bootstrap)
("python-pluggy" ,python2-pluggy-bootstrap)
("python-py" ,python2-py)
("python-wcwidth" ,python2-wcwidth))))))
(define-public python-pytest-cov (define-public python-pytest-cov
(package (package
(name "python-pytest-cov") (name "python-pytest-cov")
(version "2.6.1") (version "2.8.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "pytest-cov" version)) (uri (pypi-uri "pytest-cov" version))
(sha256 (sha256
(base32 "0cyxbbghx2l4p60w10k00j1j74q1ngfiffr0pxn73ababjr69dha")))) (base32 "0avzlk9p4nc44k7lpx9109dybq71xqnggxb9f4hp0l64pbc44ryc"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -883,18 +923,28 @@ supports coverage of subprocesses.")
(define-public python-pytest-runner (define-public python-pytest-runner
(package (package
(name "python-pytest-runner") (name "python-pytest-runner")
(version "4.4") (version "5.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "pytest-runner" version)) (uri (pypi-uri "pytest-runner" version))
(sha256 (sha256
(base32 (base32
"1x0d9n40lsiphblbs61rdc0d5r31f6vh0vcahqdv0mffakbnrb80")))) "0awll1bva5zy8cspsxcpv7pjcrdf5c6pf56nqn4f74vvmlzfgiwn"))))
(build-system python-build-system) (build-system python-build-system)
(arguments
'(;; FIXME: The test suite requires 'python-flake8' and 'python-black',
;; but that introduces a circular dependency.
#:tests? #f
#:phases (modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(if tests?
(invoke "pytest" "-vv")
(format #t "test suite not run~%"))
#t)))))
(native-inputs (native-inputs
`(("python-pytest" ,python-pytest-bootstrap) `(("python-setuptools-scm" ,python-setuptools-scm)))
("python-setuptools-scm" ,python-setuptools-scm)))
(home-page "https://github.com/pytest-dev/pytest-runner") (home-page "https://github.com/pytest-dev/pytest-runner")
(synopsis "Invoke py.test as a distutils command") (synopsis "Invoke py.test as a distutils command")
(description (description
@ -1385,14 +1435,14 @@ have failed since the last commit or what tests are currently failing.")))
(define-public python-coverage (define-public python-coverage
(package (package
(name "python-coverage") (name "python-coverage")
(version "4.5.3") (version "5.0.3")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "coverage" version)) (uri (pypi-uri "coverage" version))
(sha256 (sha256
(base32 (base32
"02f6m073qdispn96rc616hg0rnmw1pgqzw3bgxwiwza4zf9hirlx")))) "1vrg8panqw79pswg52ygbrff3wdnxarrd9qz6c64ah0c4h2cmbvp"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
;; FIXME: 95 tests failed, 539 passed, 6 skipped, 2 errors. ;; FIXME: 95 tests failed, 539 passed, 6 skipped, 2 errors.
@ -1677,20 +1727,20 @@ instantly.")
(define-public python-hypothesis (define-public python-hypothesis
(package (package
(name "python-hypothesis") (name "python-hypothesis")
(version "4.18.3") (version "5.4.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "hypothesis" version)) (uri (pypi-uri "hypothesis" version))
(sha256 (sha256
(base32 (base32
"0a35nwqyjnm4cphi43xracqpkws0ip61mndvqb1iqq7gkva83lb1")))) "0zn09bn6hadk4vxl6jy8bkjr5fz8mrhin3z46w7pq5qgbaycr89p"))))
(build-system python-build-system) (build-system python-build-system)
(native-inputs (arguments
`(("python-flake8" ,python-flake8) ;; XXX: Tests are not distributed with the PyPI archive.
("python-pytest" ,python-pytest-bootstrap))) '(#:tests? #f))
(propagated-inputs (propagated-inputs
`(("python-attrs" ,python-attrs-bootstrap) `(("python-attrs" ,python-attrs-bootstrap)
("python-coverage" ,python-coverage))) ("python-sortedcontainers" ,python-sortedcontainers)))
(synopsis "Library for property based testing") (synopsis "Library for property based testing")
(description "Hypothesis is a library for testing your Python code against a (description "Hypothesis is a library for testing your Python code against a
much larger range of examples than you would ever want to write by hand. Its much larger range of examples than you would ever want to write by hand. Its
@ -1700,10 +1750,18 @@ seamlessly into your existing Python unit testing work flow.")
(license license:mpl2.0) (license license:mpl2.0)
(properties `((python2-variant . ,(delay python2-hypothesis)))))) (properties `((python2-variant . ,(delay python2-hypothesis))))))
;; This is the last version of Hypothesis that supports Python 2.
(define-public python2-hypothesis (define-public python2-hypothesis
(let ((hypothesis (package-with-python2 (let ((hypothesis (package-with-python2
(strip-python2-variant python-hypothesis)))) (strip-python2-variant python-hypothesis))))
(package (inherit hypothesis) (package (inherit hypothesis)
(version "4.57.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "hypothesis" version))
(sha256
(base32
"183gpxbfcdhdqzlahkji5a71n6lmvgqsbkcb0ihqad51n2j6jhrw"))))
(propagated-inputs (propagated-inputs
`(("python2-enum34" ,python2-enum34) `(("python2-enum34" ,python2-enum34)
,@(package-propagated-inputs hypothesis)))))) ,@(package-propagated-inputs hypothesis))))))
@ -2075,7 +2133,9 @@ backported from Python 2.7 for Python 2.4+.")
(uri (pypi-uri "behave" version)) (uri (pypi-uri "behave" version))
(sha256 (sha256
(base32 (base32
"11hsz365qglvpp1m1w16239c3kiw15lw7adha49lqaakm8kj6rmr")))) "11hsz365qglvpp1m1w16239c3kiw15lw7adha49lqaakm8kj6rmr"))
(patches (search-patches
"behave-skip-a-couple-of-tests.patch"))))
(build-system python-build-system) (build-system python-build-system)
(native-inputs (native-inputs
`(("python-mock" ,python-mock) `(("python-mock" ,python-mock)
@ -2256,13 +2316,13 @@ create data based on random numbers and yet remain repeatable.")
(define-public python-freezegun (define-public python-freezegun
(package (package
(name "python-freezegun") (name "python-freezegun")
(version "0.3.12") (version "0.3.14")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "freezegun" version)) (uri (pypi-uri "freezegun" version))
(sha256 (sha256
(base32 "1rx57v8ryjncjimg8hys9kx1r3rknvwcl4y340g20jn0sf69qk9a")))) (base32 "0al75mk829j1izxi760b7yjnknjihyfhp2mvi5qiyrxb9cpxwqk2"))))
(build-system python-build-system) (build-system python-build-system)
(native-inputs (native-inputs
`(("python-mock" ,python-mock) `(("python-mock" ,python-mock)
@ -2429,11 +2489,21 @@ portable to just about any platform.")
(let ((out (assoc-ref outputs "out"))) (let ((out (assoc-ref outputs "out")))
(setenv "CC" "gcc") (setenv "CC" "gcc")
(setenv "PREFIX" out) (setenv "PREFIX" out)
;; XXX: Without this flag, the CLOCK_REALTIME test hangs
;; indefinitely. See README.packagers for more information.
;; Try removing this for future versions of libfaketime.
(setenv "FAKETIME_COMPILE_CFLAGS" "-DFORCE_MONOTONIC_FIX")
#t))) #t)))
(add-before 'check 'pre-check (add-before 'check 'pre-check
(lambda _ (lambda _
(substitute* "test/functests/test_exclude_mono.sh" (substitute* "test/functests/test_exclude_mono.sh"
(("/bin/bash") (which "bash"))) (("/bin/bash") (which "bash")))
;; Do not fail due to use of 'ftime', which was deprecated in
;; glibc 2.31. Remove this for later versions of libfaketime.
(setenv "FAKETIME_COMPILE_CFLAGS" "-Wno-deprecated-declarations")
#t))) #t)))
#:test-target "test")) #:test-target "test"))
(native-inputs (native-inputs
@ -2569,6 +2639,19 @@ system. The code under test requires no modification to work with pyfakefs.")
(define-public python2-pyfakefs (define-public python2-pyfakefs
(package-with-python2 python-pyfakefs)) (package-with-python2 python-pyfakefs))
;; This minimal variant is used to avoid a circular dependency between
;; python2-importlib-metadata, which requires pyfakefs for its tests, and
;; python2-pytest, which requires python2-importlib-metadata.
(define-public python2-pyfakefs-bootstrap
(hidden-package
(package
(inherit python2-pyfakefs)
(name "python2-pyfakefs-bootstrap")
(native-inputs '())
(arguments
`(#:python ,python-2
#:tests? #f)))))
(define-public python-aiounittest (define-public python-aiounittest
(package (package
(name "python-aiounittest") (name "python-aiounittest")

View File

@ -77,7 +77,7 @@
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
`(("ncurses" ,ncurses) `(("ncurses" ,ncurses)
("libuuid" ,util-linux) ("libuuid" ,util-linux "lib")
("libx11" ,libx11) ("libx11" ,libx11)
("xorg-rgb" ,xorg-rgb) ("xorg-rgb" ,xorg-rgb)
("nanopass" ,nanopass) ("nanopass" ,nanopass)

View File

@ -427,18 +427,6 @@ from forcing GEXP-PROMISE."
`(cons "--enable-custom-modes" `(cons "--enable-custom-modes"
,flags)))))) ,flags))))))
;; Add a custom ld wrapper that supports quoted strings in response files.
;; To be merged with 'ld-wrapper' in a future rebuild cycle.
(define-public ld-wrapper-next
(let ((orig (car (assoc-ref (%final-inputs) "ld-wrapper"))))
(package
(inherit orig)
(name "ld-wrapper-next")
(inputs
`(("wrapper" ,(search-path %load-path
"gnu/packages/ld-wrapper-next.in"))
,@(alist-delete "wrapper" (package-inputs orig)))))))
(define-public ungoogled-chromium (define-public ungoogled-chromium
(package (package
(name "ungoogled-chromium") (name "ungoogled-chromium")
@ -770,7 +758,6 @@ from forcing GEXP-PROMISE."
("clang" ,clang-9) ("clang" ,clang-9)
("gn" ,gn) ("gn" ,gn)
("gperf" ,gperf) ("gperf" ,gperf)
("ld-wrapper" ,ld-wrapper-next)
("ninja" ,ninja) ("ninja" ,ninja)
("node" ,node) ("node" ,node)
("pkg-config" ,pkg-config) ("pkg-config" ,pkg-config)
@ -799,7 +786,7 @@ from forcing GEXP-PROMISE."
("glib" ,glib) ("glib" ,glib)
("gtk+" ,gtk+) ("gtk+" ,gtk+)
("harfbuzz" ,harfbuzz) ("harfbuzz" ,harfbuzz)
("icu4c" ,icu4c-66.1) ("icu4c" ,icu4c)
("jsoncpp" ,jsoncpp) ("jsoncpp" ,jsoncpp)
("lcms" ,lcms) ("lcms" ,lcms)
("libevent" ,libevent) ("libevent" ,libevent)

View File

@ -120,7 +120,7 @@
`("GUILE_LOAD_COMPILED_PATH" ":" prefix (,objs))) `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,objs)))
#t)))))) #t))))))
(inputs (inputs
`(("guile" ,guile-2.2) `(("guile" ,guile-3.0)
("guile-fibers" ,guile-fibers) ("guile-fibers" ,guile-fibers)
("guile-gcrypt" ,guile-gcrypt) ("guile-gcrypt" ,guile-gcrypt)
("guile-json" ,guile-json-3) ("guile-json" ,guile-json-3)

View File

@ -51,13 +51,6 @@
(base32 (base32
"18mjy80ly9361npjhxpm3n0pkmrwviaqr2kixjb7hyxa6kzzh5xw")))) "18mjy80ly9361npjhxpm3n0pkmrwviaqr2kixjb7hyxa6kzzh5xw"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'bootstrap 'skip-premature-configure
(lambda _
(setenv "NOCONFIGURE" "set")
#t)))))
;; TODO: package 'libgsystem'. ;; TODO: package 'libgsystem'.
(inputs (inputs
`(("accountsservice" ,accountsservice) `(("accountsservice" ,accountsservice)

View File

@ -5,10 +5,12 @@
;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net> ;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com> ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017, 2018, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2019 Pierre-Moana Levesque <pierre.moana.levesque@gmail.com>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -32,6 +34,7 @@
#:use-module (guix utils) #:use-module (guix utils)
#:use-module (guix deprecation) #:use-module (guix deprecation)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system cmake)
#:use-module (guix build-system emacs) #:use-module (guix build-system emacs)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages backup) #:use-module (gnu packages backup)
@ -39,19 +42,63 @@
#:use-module (gnu packages crypto) #:use-module (gnu packages crypto)
#:use-module (gnu packages curl) #:use-module (gnu packages curl)
#:use-module (gnu packages file) #:use-module (gnu packages file)
#:use-module (gnu packages hurd)
#:use-module (gnu packages libevent) #:use-module (gnu packages libevent)
#:use-module (gnu packages ncurses) #:use-module (gnu packages ncurses)
#:use-module (gnu packages serialization)
#:use-module (gnu packages sphinx) #:use-module (gnu packages sphinx)
#:use-module (gnu packages texinfo) #:use-module (gnu packages texinfo)
#:use-module (gnu packages xml) #:use-module (gnu packages xml)
#:use-module (ice-9 match)
#:use-module (srfi srfi-1)) #:use-module (srfi srfi-1))
;;; This minimal variant of CMake does not include the documentation. It is ;;; Build phases shared between 'cmake-bootstrap' and the later variants
;;; used by the cmake-build-system. ;;; that use cmake-build-system.
(define-public cmake-minimal (define %common-build-phases
`((add-after 'unpack 'split-package
;; Remove files that have been packaged in other package recipes.
(lambda _
(delete-file "Auxiliary/cmake-mode.el")
(substitute* "Auxiliary/CMakeLists.txt"
((".*cmake-mode.el.*") ""))
#t))
(add-before 'configure 'patch-bin-sh
(lambda _
;; Replace "/bin/sh" by the right path in... a lot of
;; files.
(substitute*
'("Modules/CompilerId/Xcode-3.pbxproj.in"
"Modules/Internal/CPack/CPack.RuntimeScript.in"
"Source/cmGlobalXCodeGenerator.cxx"
"Source/cmLocalUnixMakefileGenerator3.cxx"
"Source/cmExecProgramCommand.cxx"
"Utilities/Release/release_cmake.cmake"
"Tests/CMakeLists.txt"
"Tests/RunCMake/File_Generate/RunCMakeTest.cmake")
(("/bin/sh") (which "sh")))
#t))))
(define %common-disabled-tests
'(;; This test copies libgcc_s.so.1 from GCC and tries to modify its RPATH,
;; but does not cope with the file being read-only.
"BundleUtilities"
;; This test requires network access.
"CTestTestUpload"
;; This test requires 'ldconfig' which is not available in Guix.
"RunCMake.install"))
(define %preserved-third-party-files
'(;; 'Source/cm_getdate.c' includes archive_getdate.c wholesale, so it must
;; be available along with the required headers.
"Utilities/cmlibarchive/libarchive/archive_getdate.c"
"Utilities/cmlibarchive/libarchive/archive_getdate.h"))
;;; The "bootstrap" CMake. It is used to build 'cmake-minimal' below, as well
;;; as any dependencies that need cmake-build-system.
(define-public cmake-bootstrap
(package (package
(name "cmake-minimal") (name "cmake-bootstrap")
(version "3.15.1") (version "3.16.5")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://www.cmake.org/files/v" (uri (string-append "https://www.cmake.org/files/v"
@ -59,23 +106,50 @@
"/cmake-" version ".tar.gz")) "/cmake-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1xyprly3sf4wi0n1x79k4n22yxm6pb7fv70gqr9lvc7qv14cbphq")) "1z4bb8z6b4dvq5hrvajrf1hyybqay3xybyimf71w1jgcp180nxjz"))
(modules '((guix build utils))) (modules '((guix build utils)
(ice-9 ftw)))
(snippet (snippet
'(begin `(begin
;; Drop bundled software. ;; CMake bundles its dependencies in the "Utilities" directory.
(with-directory-excursion "Utilities" ;; Delete those to ensure the system libraries are used.
(for-each delete-file-recursively (define preserved-files
'("cmbzip2" '(,@%preserved-third-party-files
;; "cmcompress" ;; Use the bundled JsonCpp during bootstrap to work around
"cmcurl" ;; a circular dependency. TODO: JsonCpp can be built with
"cmexpat" ;; Meson instead of CMake, but meson-build-system currently
;; "cmjsoncpp" ;; does not support cross-compilation.
;; "cmlibarchive" "Utilities/cmjsoncpp"
"cmliblzma" ;; LibUV is required to bootstrap the initial build system.
;; "cmlibuv" "Utilities/cmlibuv"))
"cmzlib"))
#t))))) (file-system-fold (lambda (dir stat result) ;enter?
(or (string=? "Utilities" dir) ;init
;; The bundled dependencies are
;; distinguished by having a "cm"
;; prefix to their upstream names.
(and (string-prefix? "Utilities/cm" dir)
(not (member dir preserved-files)))))
(lambda (file stat result) ;leaf
(unless (or (member file preserved-files)
;; Preserve top-level files.
(string=? "Utilities"
(dirname file)))
(delete-file file)))
(const #t) ;down
(lambda (dir stat result) ;up
(when (equal? (scandir dir) '("." ".."))
(rmdir dir)))
(const #t) ;skip
(lambda (file stat errno result)
(format (current-error-port)
"warning: failed to delete ~a: ~a~%"
file (strerror errno)))
#t
"Utilities"
lstat)
#t))
(patches (search-patches "cmake-curl-certificates.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:test-target "test" `(#:test-target "test"
@ -86,7 +160,7 @@
(string-append "--parallel=" parallel-job-count) (string-append "--parallel=" parallel-job-count)
(string-append "--prefix=" out) (string-append "--prefix=" out)
"--system-libs" "--system-libs"
"--no-system-jsoncpp" ; FIXME: Circular dependency. "--no-system-jsoncpp"
;; By default, the man pages and other docs land ;; By default, the man pages and other docs land
;; in PREFIX/man and PREFIX/doc, but we want them ;; in PREFIX/man and PREFIX/doc, but we want them
;; in share/{man,doc}. Note that unlike ;; in share/{man,doc}. Note that unlike
@ -95,14 +169,18 @@
;; to --mandir and --docdir. ;; to --mandir and --docdir.
"--mandir=share/man" "--mandir=share/man"
,(string-append "--docdir=share/doc/cmake-" ,(string-append "--docdir=share/doc/cmake-"
(version-major+minor version)))) (version-major+minor version))
;; By default CMake is built without any optimizations. Use
;; the recommended Release target for a ~2.5x speedup.
"--" "-DCMAKE_BUILD_TYPE=Release"))
#:make-flags #:make-flags
(let ((skipped-tests (let ((skipped-tests
(list "BundleUtilities" ; This test fails on Guix. (list ,@%common-disabled-tests
"CTestTestSubdir" ; This test fails to build 2 of the 3 tests. "CTestTestSubdir" ; This test fails to build 2 of the 3 tests.
;; These tests requires network access. ;; This test fails when ARGS (below) is in use, see
"CTestCoverageCollectGCOV" ;; <https://gitlab.kitware.com/cmake/cmake/issues/17165>.
"CTestTestUpload"))) "CTestCoverageCollectGCOV")))
(list (list
(string-append (string-append
;; These arguments apply for the tests only. ;; These arguments apply for the tests only.
@ -111,29 +189,7 @@
" --exclude-regex ^\\(" (string-join skipped-tests "\\|") "\\)$"))) " --exclude-regex ^\\(" (string-join skipped-tests "\\|") "\\)$")))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'split-package ,@%common-build-phases
;; Remove files that have been packaged in other package recipes.
(lambda _
(delete-file "Auxiliary/cmake-mode.el")
(substitute* "Auxiliary/CMakeLists.txt"
((".*cmake-mode.el.*") ""))
#t))
(add-before 'configure 'patch-bin-sh
(lambda _
;; Replace "/bin/sh" by the right path in... a lot of
;; files.
(substitute*
'("Modules/CompilerId/Xcode-3.pbxproj.in"
"Modules/CPack.RuntimeScript.in"
"Source/cmGlobalXCodeGenerator.cxx"
"Source/cmLocalUnixMakefileGenerator3.cxx"
"Source/cmExecProgramCommand.cxx"
"Utilities/Release/release_cmake.cmake"
"Utilities/cmlibarchive/libarchive/archive_write_set_format_shar.c"
"Tests/CMakeLists.txt"
"Tests/RunCMake/File_Generate/RunCMakeTest.cmake")
(("/bin/sh") (which "sh")))
#t))
(add-before 'configure 'set-paths (add-before 'configure 'set-paths
(lambda _ (lambda _
;; Help cmake's bootstrap process to find system libraries ;; Help cmake's bootstrap process to find system libraries
@ -148,18 +204,31 @@
(apply invoke "./configure" configure-flags)))))) (apply invoke "./configure" configure-flags))))))
(inputs (inputs
`(("bzip2" ,bzip2) `(("bzip2" ,bzip2)
("curl" ,curl) ("curl" ,curl-minimal)
("expat" ,expat) ("expat" ,expat)
("file" ,file) ("file" ,file)
("libarchive" ,libarchive) ("libarchive" ,libarchive)
("libuv" ,libuv) ,@(if (hurd-target?)
("ncurses" ,ncurses) ; required for ccmake '()
`(("libuv" ,libuv))) ;not supported on the Hurd
("ncurses" ,ncurses) ;required for ccmake
("rhash" ,rhash) ("rhash" ,rhash)
("zlib" ,zlib))) ("zlib" ,zlib)))
(native-search-paths (native-search-paths
(list (search-path-specification (list (search-path-specification
(variable "CMAKE_PREFIX_PATH") (variable "CMAKE_PREFIX_PATH")
(files '(""))))) (files '("")))
;; "cmake-curl-certificates.patch" changes CMake to honor 'SSL_CERT_DIR'
;; and 'SSL_CERT_FILE', hence these search path entries.
(search-path-specification
(variable "SSL_CERT_DIR")
(separator #f) ;single entry
(files '("etc/ssl/certs")))
(search-path-specification
(variable "SSL_CERT_FILE")
(file-type 'regular)
(separator #f) ;single entry
(files '("etc/ssl/certs/ca-certificates.crt")))))
(home-page "https://cmake.org/") (home-page "https://cmake.org/")
(synopsis "Cross-platform build system") (synopsis "Cross-platform build system")
(description (description
@ -169,23 +238,84 @@ and compiler independent configuration files. CMake generates native makefiles
and workspaces that can be used in the compiler environment of your choice.") and workspaces that can be used in the compiler environment of your choice.")
(properties '((hidden? . #t))) (properties '((hidden? . #t)))
(license (list license:bsd-3 ; cmake (license (list license:bsd-3 ; cmake
license:bsd-4 ; cmcompress
license:bsd-2 ; cmlibarchive
license:expat ; cmjsoncpp is dual MIT/public domain license:expat ; cmjsoncpp is dual MIT/public domain
license:public-domain)))) ; cmlibarchive/archive_getdate.c license:public-domain)))) ; cmlibarchive/archive_getdate.c
;;; This minimal variant of CMake does not include the documentation. It is
;;; used by the cmake-build-system.
(define-public cmake-minimal
(package
(inherit cmake-bootstrap)
(name "cmake-minimal")
(source (origin
(inherit (package-source cmake-bootstrap))
(snippet
(match (origin-snippet (package-source cmake-bootstrap))
((_ _ exp ...)
;; Now we can delete the remaining software bundles.
(append `(begin
(define preserved-files ',%preserved-third-party-files))
exp))))))
(inputs
`(("curl" ,curl)
("jsoncpp" ,jsoncpp)
,@(alist-delete "curl" (package-inputs cmake-bootstrap))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags
(list "-DCMAKE_USE_SYSTEM_LIBRARIES=ON"
(string-append "-DCMAKE_DOC_DIR=share/doc/cmake-"
,(version-major+minor (package-version
cmake-bootstrap))))
;; This is the CMake used in cmake-build-system. Ensure compiler
;; optimizations are enabled to save size and CPU cycles.
#:build-type "Release"
#:phases
(modify-phases %standard-phases
,@%common-build-phases
(replace 'check
(lambda* (#:key tests? parallel-tests? #:allow-other-keys)
(let ((skipped-tests (list ,@%common-disabled-tests
;; This test requires the bundled libuv.
"BootstrapTest")))
(if tests?
(begin
(invoke "ctest" "-j" (if parallel-tests?
(number->string (parallel-job-count))
"1")
"--exclude-regex"
(string-append "^(" (string-join skipped-tests "|") ")$")))
(format #t "test suite not run~%"))
#t))))
,@(if (%current-target-system)
'()
`(#:cmake ,cmake-bootstrap))))))
;;; The "user-facing" CMake, now with manuals and HTML documentation.
(define-public cmake (define-public cmake
(package (package
(inherit cmake-minimal) (inherit cmake-minimal)
(name "cmake") (name "cmake")
(arguments (arguments
(substitute-keyword-arguments (package-arguments cmake-minimal) (substitute-keyword-arguments (package-arguments cmake-minimal)
((#:configure-flags configure-flags ''()) ;; Use cmake-minimal this time.
`(append ,configure-flags ((#:cmake _ #f)
;; Extra configure flags used to generate the documentation. (if (%current-target-system)
'("--sphinx-info" cmake-minimal-cross
"--sphinx-man" cmake-minimal))
"--sphinx-html")))
;; Enable debugging information for convenience.
((#:build-type _ #f) "RelWithDebInfo")
((#:configure-flags flags ''())
`(append (list "-DSPHINX_INFO=ON" "-DSPHINX_MAN=ON" "-DSPHINX_HTML=ON"
(string-append "-DCMAKE_DOC_DIR=share/doc/cmake-"
,(version-major+minor (package-version
cmake-minimal)))
"-DCMAKE_INFO_DIR=share/info"
"-DCMAKE_MAN_DIR=share/man")
,flags))
((#:phases phases) ((#:phases phases)
`(modify-phases ,phases `(modify-phases ,phases
(add-after 'install 'move-html-doc (add-after 'install 'move-html-doc
@ -208,45 +338,13 @@ and workspaces that can be used in the compiler environment of your choice.")
(outputs '("out" "doc")) (outputs '("out" "doc"))
(properties (alist-delete 'hidden? (package-properties cmake-minimal))))) (properties (alist-delete 'hidden? (package-properties cmake-minimal)))))
(define-public cmake-3.15.5 (define-public cmake-minimal-cross
;; CMake 3.15.5 fixes some issues, but declare another version to
;; avoid triggering the rebuild of all CMake-based packages.
;; See <https://issues.guix.gnu.org/issue/38060>.
;;
;; Furthermore, this variant fixes X.509 certificate lookup:
;; <https://issues.guix.gnu.org/issue/37371>.
(package (package
(inherit cmake) (inherit cmake-minimal)
(version "3.15.5") (name "cmake-minimal-cross")
(source (origin (native-search-paths '())
(inherit (package-source cmake)) (search-paths
(uri (string-append "https://www.cmake.org/files/v" (package-native-search-paths cmake-minimal))))
(version-major+minor version)
"/cmake-" version ".tar.gz"))
(sha256
(base32
"1d5y8d92axcc6rfqlsxamayfs3fc1vdby91hn5mx1kn02ppprpgv"))
(patches
(append (search-patches "cmake-curl-certificates.patch")
(origin-patches (package-source cmake))))))
(native-search-paths
;; "cmake-curl-certificates.patch" changes CMake to honor 'SSL_CERT_DIR'
;; and 'SSL_CERT_FILE', hence these search path entries.
(append (list (search-path-specification
(variable "SSL_CERT_DIR")
(separator #f) ;single entry
(files '("etc/ssl/certs")))
(search-path-specification
(variable "SSL_CERT_FILE")
(file-type 'regular)
(separator #f) ;single entry
(files '("etc/ssl/certs/ca-certificates.crt"))))
(package-native-search-paths cmake)))))
;; This was cmake@3.15.1 plus "cmake-curl-certificates.patch".
(define-deprecated cmake/fixed cmake-3.15.5)
(export cmake/fixed)
(define-public emacs-cmake-mode (define-public emacs-cmake-mode
(package (package

View File

@ -30,6 +30,7 @@
(define-module (gnu packages code) (define-module (gnu packages code)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix utils)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix git-download) #:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
@ -660,9 +661,24 @@ the C, C++, C++/CLI, ObjectiveC, C#, and Java programming languages.")
;; overrides this to be in PREFIX/doc. Fix this. ;; overrides this to be in PREFIX/doc. Fix this.
(substitute* "doc/Makefile.in" (substitute* "doc/Makefile.in"
(("^docdir = .*$") "docdir = @docdir@\n")) (("^docdir = .*$") "docdir = @docdir@\n"))
#t))
(add-after 'unpack 'fix-configure
(lambda* (#:key inputs native-inputs #:allow-other-keys)
;; Replace outdated config.sub and config.guess:
(with-directory-excursion "config"
(for-each (lambda (file)
(install-file
(string-append (assoc-ref
(or native-inputs inputs) "automake")
"/share/automake-"
,(version-major+minor
(package-version automake))
"/" file) "."))
'("config.sub" "config.guess")))
#t))))) #t)))))
(native-inputs (native-inputs
`(("texinfo" ,texinfo))) `(("texinfo" ,texinfo)
("automake" ,automake))) ; For up to date 'config.guess' and 'config.sub'.
(synopsis "Code reformatter") (synopsis "Code reformatter")
(description (description
"Indent is a program that makes source code easier to read by "Indent is a program that makes source code easier to read by

File diff suppressed because it is too large Load Diff

View File

@ -270,16 +270,14 @@ file; as a result, it is often used in conjunction with \"tar\", resulting in
(define-public bzip2 (define-public bzip2
(package (package
(name "bzip2") (name "bzip2")
(version "1.0.6") (version "1.0.8")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
;; XXX The bzip.org domain was allowed to expire. (uri (string-append "https://sourceware.org/pub/bzip2/bzip2-"
(uri (string-append "https://web.archive.org/web/20180624184806/" version ".tar.gz"))
"http://www.bzip.org/"
version "/bzip2-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1kfrc7f0ja9fdn6j1y6yir6li818npy6217hvr3wzmnmzhs8z152")))) "0s92986cv0p692icqlw1j42y9nld8zd83qwhzbqd61p1dqbh6nmb"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:modules ((guix build gnu-build-system) `(#:modules ((guix build gnu-build-system)
@ -288,6 +286,22 @@ file; as a result, it is often used in conjunction with \"tar\", resulting in
(srfi srfi-1)) (srfi srfi-1))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'set-paths 'hide-input-bzip2
(lambda* (#:key inputs #:allow-other-keys)
(let ((bzip2 (assoc-ref inputs "bzip2")))
(if bzip2
;; Prevent the build system from retaining a reference to
;; BZIP2 from INPUTS.
(begin
(setenv "LIBRARY_PATH"
(string-join (delete (string-append bzip2 "/lib")
(string-split (getenv "LIBRARY_PATH")
#\:))
":"))
(format #t "environment variable `LIBRARY_PATH' set to `~a'~%"
(getenv "LIBRARY_PATH")))
(format #t "no bzip2 found, nothing done~%"))
#t)))
(replace 'configure (replace 'configure
(lambda* (#:key target #:allow-other-keys) (lambda* (#:key target #:allow-other-keys)
(when ,(%current-target-system) (when ,(%current-target-system)
@ -1345,18 +1359,18 @@ or junctions, and always follows hard links.")
(define-public zstd (define-public zstd
(package (package
(name "zstd") (name "zstd")
(version "1.4.2") (version "1.4.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/facebook/zstd/releases/download/" (uri (string-append "https://github.com/facebook/zstd/releases/download/"
"v" version "/zstd-" version ".tar.gz")) "v" version "/zstd-" version ".tar.gz"))
(sha256 (sha256
(base32 "1ja3nrjynmiwwdjrf6crraizkbagp7y414bqqq2ady91nn1hjwqj")))) (base32 "05ckxap00qvc0j51d3ci38150cxsw82w7s9zgd5fgzspnzmp1vsr"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(outputs '("out" ;1.1MiB executables and documentation (outputs '("out" ;1.2MiB executables and documentation
"lib" ;1MiB shared library and headers "lib" ;1.2MiB shared library and headers
"static")) ;1MiB static library "static")) ;1.2MiB static library
(arguments (arguments
`(#:phases `(#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
@ -1376,12 +1390,10 @@ or junctions, and always follows hard links.")
(delete-file ar)) (delete-file ar))
(find-files shared-libs "\\.a$")) (find-files shared-libs "\\.a$"))
;; While here, remove prefix= from the pkg-config file because it ;; Make sure the pkg-config file refers to the right output.
;; is unused, and because it contains a needless reference to $out.
;; XXX: It would be great if #:disallow-references worked between
;; outputs.
(substitute* (string-append shared-libs "/pkgconfig/libzstd.pc") (substitute* (string-append shared-libs "/pkgconfig/libzstd.pc")
(("^prefix=.*") "")) (("^prefix=.*")
(string-append "prefix=" lib "\n")))
#t)))) #t))))
#:make-flags #:make-flags
@ -1558,13 +1570,13 @@ recreates the stored directory structure by default.")
(package (package
(name "zziplib") (name "zziplib")
(version "0.13.69") (version "0.13.69")
(replacement zziplib/fixed)
(home-page "https://github.com/gdraheim/zziplib") (home-page "https://github.com/gdraheim/zziplib")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (url home-page) (uri (git-reference (url home-page)
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(patches (search-patches "zziplib-CVE-2018-16548.patch"))
(sha256 (sha256
(base32 (base32
"0fbk9k7ryas2wh2ykwkvm1pbi40i88rfvc3dydh9xyd7w2jcki92")))) "0fbk9k7ryas2wh2ykwkvm1pbi40i88rfvc3dydh9xyd7w2jcki92"))))
@ -1596,13 +1608,6 @@ recreates the stored directory structure by default.")
;; files carry the Zlib license; see "docs/copying.html" for details. ;; files carry the Zlib license; see "docs/copying.html" for details.
(license (list license:lgpl2.0+ license:mpl1.1)))) (license (list license:lgpl2.0+ license:mpl1.1))))
(define zziplib/fixed
(package
(inherit zziplib)
(source (origin
(inherit (package-source zziplib))
(patches (search-patches "zziplib-CVE-2018-16548.patch"))))))
(define-public libzip (define-public libzip
(package (package
(name "libzip") (name "libzip")
@ -1791,17 +1796,7 @@ single-member files which can't be decompressed in parallel.")
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:tests? #f `(#:tests? #f
#:phases (modify-phases %standard-phases #:configure-flags '("-DBoost_NO_BOOST_CMAKE=ON")))
(add-before 'configure 'glibc-is-already-a-system-library
(lambda _
;; Prevent the build system from passing the glibc
;; header files to GCC as "system headers", because
;; it conflicts with the system headers already known
;; to GCC, causing #include_next failures.
(substitute* "CMakeLists.txt"
(("include_directories\\(SYSTEM \\$\\{iconv")
"include_directories(${iconv"))
#t)))))
(inputs `(("boost" ,boost) (inputs `(("boost" ,boost)
("libiconv" ,libiconv) ("libiconv" ,libiconv)
("xz" ,xz))) ("xz" ,xz)))

View File

@ -1480,7 +1480,7 @@ applications. That is, compute distances and related measures for angular
(base32 (base32
"1a8mi70x79a691r40yiw684jkg1mr9n8agkxlcksxcnrdybs9c0x")))) "1a8mi70x79a691r40yiw684jkg1mr9n8agkxlcksxcnrdybs9c0x"))))
(build-system r-build-system) (build-system r-build-system)
(inputs `(("libjpeg" ,libjpeg))) (inputs `(("libjpeg" ,libjpeg-turbo)))
(home-page "https://www.rforge.net/jpeg/") (home-page "https://www.rforge.net/jpeg/")
(synopsis "Read and write JPEG images with R") (synopsis "Read and write JPEG images with R")
(description "This package provides a way to read, write and display (description "This package provides a way to read, write and display
@ -9900,7 +9900,7 @@ redundant complex conjugate when the input is real data.")
(build-system r-build-system) (build-system r-build-system)
(inputs (inputs
`(("libtiff" ,libtiff) `(("libtiff" ,libtiff)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("zlib" ,zlib))) ("zlib" ,zlib)))
(home-page "https://www.rforge.net/tiff/") (home-page "https://www.rforge.net/tiff/")
(synopsis "Read and write TIFF images") (synopsis "Read and write TIFF images")
@ -18630,7 +18630,7 @@ currently limited to 8 bit greyscale images and 24, 32 bit (A)RGB images.")
(properties `((upstream-name . "readbitmap"))) (properties `((upstream-name . "readbitmap")))
(build-system r-build-system) (build-system r-build-system)
(inputs (inputs
`(("libjpeg" ,libjpeg) `(("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng))) ("libpng" ,libpng)))
(propagated-inputs (propagated-inputs
`(("r-bmp" ,r-bmp) `(("r-bmp" ,r-bmp)

View File

@ -4,8 +4,9 @@
;;; Copyright © 2016, 2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2016, 2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com> ;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2019 Carl Dong <contact@carldong.me> ;;; Copyright © 2019 Carl Dong <contact@carldong.me>
;;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -54,8 +55,11 @@
(define %gcc-include-paths (define %gcc-include-paths
;; Environment variables for header search paths. ;; Environment variables for header search paths.
;; Note: See <http://bugs.gnu.org/30756> for why not 'C_INCLUDE_PATH' & co. ;; Note: See <http://bugs.gnu.org/22186> for why not 'CPATH'.
'("CPATH")) '("C_INCLUDE_PATH"
"CPLUS_INCLUDE_PATH"
"OBJC_INCLUDE_PATH"
"OBJCPLUS_INCLUDE_PATH"))
(define %gcc-cross-include-paths (define %gcc-cross-include-paths
;; Search path for target headers when cross-compiling. ;; Search path for target headers when cross-compiling.
@ -70,8 +74,8 @@
`(cons ,(string-append "--target=" target) `(cons ,(string-append "--target=" target)
,flags)))))) ,flags))))))
(define (cross-binutils target) (define* (cross-binutils target #:optional (binutils binutils))
"Return a cross-Binutils for TARGET." "Return a cross-Binutils for TARGET using BINUTILS."
(let ((binutils (package (inherit binutils) (let ((binutils (package (inherit binutils)
(arguments (arguments
(substitute-keyword-arguments (package-arguments (substitute-keyword-arguments (package-arguments
@ -158,6 +162,13 @@ base compiler and using LIBC (which may be either a libc package or #f.)"
"--disable-libsanitizer" "--disable-libsanitizer"
)) ))
;; Install cross-built libraries such as libgcc_s.so in
;; the "lib" output.
,@(if libc
`((string-append "--with-toolexeclibdir="
(assoc-ref %outputs "lib")
"/" ,target "/lib"))
'())
;; For a newlib (non-glibc) target ;; For a newlib (non-glibc) target
,@(if (cross-newlib? target) ,@(if (cross-newlib? target)
'("--with-newlib") '("--with-newlib")
@ -176,19 +187,7 @@ base compiler and using LIBC (which may be either a libc package or #f.)"
,flags)) ,flags))
flags)) flags))
((#:phases phases) ((#:phases phases)
`(cross-gcc-build-phases `(cross-gcc-build-phases ,target ,phases))))))
,target
(modify-phases ,phases
(add-before 'configure 'treat-glibc-as-system-header
(lambda* (#:key inputs #:allow-other-keys)
(let ((libc (assoc-ref inputs "libc")))
(when libc
;; For GCC6 and later, make sure Glibc is treated as a "system
;; header" such that #include_next does the right thing.
(for-each (lambda (var)
(setenv var (string-append libc "/include")))
'("CROSS_C_INCLUDE_PATH" "CROSS_CPLUS_INCLUDE_PATH")))
#t))))))))))
(define (cross-gcc-patches xgcc target) (define (cross-gcc-patches xgcc target)
"Return GCC patches needed for XGCC and TARGET." "Return GCC patches needed for XGCC and TARGET."
@ -204,12 +203,19 @@ base compiler and using LIBC (which may be either a libc package or #f.)"
(define (cross-gcc-snippet target) (define (cross-gcc-snippet target)
"Return GCC snippet needed for TARGET." "Return GCC snippet needed for TARGET."
(cond ((target-mingw? target) `(begin
'(begin ,@(if (target-mingw? target)
(copy-recursively "libstdc++-v3/config/os/mingw32-w64" '((copy-recursively "libstdc++-v3/config/os/mingw32-w64"
"libstdc++-v3/config/os/newlib") "libstdc++-v3/config/os/newlib"))
#t)) '())
(else #f))) ;; TOOLDIR_BASE_PREFIX is erroneous when using a separate "lib"
;; output. Specify it correctly, otherwise GCC won't find its shared
;; libraries installed in the "lib" output. See:
;; https://lists.gnu.org/archive/html/bug-guix/2020-03/msg00196.html.
(substitute* "gcc/Makefile.in"
(("-DTOOLDIR_BASE_PREFIX=[^ ]*")
"-DTOOLDIR_BASE_PREFIX=\\\"../../../../\\\""))
#t))
(define* (cross-gcc target (define* (cross-gcc target
#:key #:key
@ -224,22 +230,26 @@ target that libc."
(name (string-append "gcc-cross-" (name (string-append "gcc-cross-"
(if libc "" "sans-libc-") (if libc "" "sans-libc-")
target)) target))
(source (origin (inherit (package-source xgcc)) (source
(patches (origin
(append (inherit (package-source xgcc))
(origin-patches (package-source xgcc)) (patches
(cons (cond (append
((version>=? (package-version xgcc) "8.0") (search-patch "gcc-8-cross-environment-variables.patch")) (origin-patches (package-source xgcc))
((version>=? (package-version xgcc) "6.0") (search-patch "gcc-6-cross-environment-variables.patch")) (append (cond
(else (search-patch "gcc-cross-environment-variables.patch"))) ((version>=? (package-version xgcc) "8.0")
(cross-gcc-patches xgcc target)))) (search-patches "gcc-8-cross-environment-variables.patch"))
(modules '((guix build utils))) ((version>=? (package-version xgcc) "6.0")
(snippet (search-patches "gcc-7-cross-toolexeclibdir.patch"
(cross-gcc-snippet target)))) "gcc-6-cross-environment-variables.patch"))
(else
(search-patches "gcc-cross-environment-variables.patch")))
(cross-gcc-patches xgcc target))))
(modules '((guix build utils)))
(snippet
(cross-gcc-snippet target))))
;; For simplicity, use a single output. Otherwise libgcc_s & co. are not (outputs '("out" "lib"))
;; found by default, etc.
(outputs '("out"))
(arguments (arguments
`(#:implicit-inputs? #f `(#:implicit-inputs? #f
@ -261,27 +271,31 @@ target that libc."
#:binutils xbinutils)) #:binutils xbinutils))
("binutils-cross" ,xbinutils) ("binutils-cross" ,xbinutils)
;; Call it differently so that the builder can check whether the "libc"
;; input is #f.
("libc-native" ,@(assoc-ref (%final-inputs) "libc"))
;; Remaining inputs.
,@(let ((inputs (append (package-inputs xgcc) ,@(let ((inputs (append (package-inputs xgcc)
(alist-delete "libc" (%final-inputs))))) (fold alist-delete (%final-inputs)
'("libc" "libc:static"))
;; Call it differently so that the builder can
;; check whether the "libc" input is #f.
`(("libc-native"
,@(assoc-ref (%final-inputs) "libc"))
("libc-native:static"
,@(assoc-ref (%final-inputs)
"libc:static"))))))
(cond (cond
((target-mingw? target) ((target-mingw? target)
(if libc (if libc
`(("libc" ,libc) `(,@inputs
,@inputs) ("libc" ,libc))
`(("mingw-source" ,(package-source mingw-w64)) `(,@inputs
,@inputs))) ("mingw-source" ,(package-source mingw-w64)))))
(libc (libc
`(("libc" ,libc) `(,@inputs
("libc" ,libc)
("libc:static" ,libc "static") ("libc:static" ,libc "static")
("xkernel-headers" ;the target headers ("xkernel-headers" ;the target headers
,@(assoc-ref (package-propagated-inputs libc) ,@(assoc-ref (package-propagated-inputs libc)
"kernel-headers")) "kernel-headers"))))
,@inputs))
(else inputs))))) (else inputs)))))
(inputs '()) (inputs '())
@ -293,7 +307,15 @@ target that libc."
(map (lambda (variable) (map (lambda (variable)
(search-path-specification (search-path-specification
(variable variable) (variable variable)
(files '("include"))))
;; Add 'include/c++' here so that <cstdlib>'s
;; "#include_next <stdlib.h>" finds GCC's
;; <stdlib.h>, not libc's.
(files (match variable
("CROSS_CPLUS_INCLUDE_PATH"
'("include/c++" "include"))
(_
'("include"))))))
%gcc-cross-include-paths))) %gcc-cross-include-paths)))
(native-search-paths '()))) (native-search-paths '())))
@ -499,7 +521,16 @@ and the cross tool chain."
(("/[^ ]+/lib/libc.so.0.3") (("/[^ ]+/lib/libc.so.0.3")
(string-append out "/lib/libc.so.0.3" (string-append out "/lib/libc.so.0.3"
" libmachuser.so libhurduser.so")))) " libmachuser.so libhurduser.so"))))
#t))) #t))
;; TODO: move to glibc in the next rebuild cycle
(add-after 'unpack 'patch-libc/hurd
(lambda* (#:key inputs #:allow-other-keys)
(for-each
(lambda (name)
(let ((patch (assoc-ref inputs name)))
(invoke "patch" "-p1" "--force" "-i" patch)))
'("hurd-mach-print.patch"
"hurd-gettyent.patch")))))
'()))))) '())))))
;; Shadow the native "kernel-headers" because glibc's recipe expects the ;; Shadow the native "kernel-headers" because glibc's recipe expects the
@ -515,7 +546,12 @@ and the cross tool chain."
,@(if (hurd-triplet? target) ,@(if (hurd-triplet? target)
`(("cross-mig" `(("cross-mig"
,@(assoc-ref (package-native-inputs xheaders) ,@(assoc-ref (package-native-inputs xheaders)
"cross-mig"))) "cross-mig"))
;; TODO: move to glibc in the next rebuild cycle
("hurd-mach-print.patch"
,@(search-patches "glibc-hurd-mach-print.patch"))
("hurd-gettyent.patch"
,@(search-patches "glibc-hurd-gettyent.patch")))
'()) '())
,@(package-inputs libc) ;FIXME: static-bash ,@(package-inputs libc) ;FIXME: static-bash
,@(package-native-inputs libc)))))) ,@(package-native-inputs libc))))))

View File

@ -14,6 +14,7 @@
;;; Copyright © 2018 Tim Gesthuizen <tim.gesthuizen@yahoo.de> ;;; Copyright © 2018 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org> ;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net> ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
@ -715,19 +716,28 @@ BLAKE.")
(define-public rhash (define-public rhash
(package (package
(name "rhash") (name "rhash")
(version "1.3.8") (version "1.3.9")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/rhash/RHash/archive/v" (uri (string-append "mirror://sourceforge/rhash/rhash/" version
version ".tar.gz")) "/rhash-" version "-src.tar.gz"))
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append "rhash-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0k60ywyhwqwqxa2q2l85vwgf884hcgy31nxir3dqgz7ymib6llxy")))) "1xn9fqa6rlnhsbgami45g82dlw9i1skg2sri3ydiinwak5ph1ca2"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:make-flags `(#:configure-flags
(list (string-append "--prefix=" (assoc-ref %outputs "out"))
,@(let ((target (%current-target-system)))
(if target
`((string-append "--target=" ,target)
(string-append "--cc="
(assoc-ref %build-inputs "cross-gcc")
"/bin/" ,target "-gcc"))
'())))
#:make-flags
;; The binaries in /bin need some help finding librhash.so.0. ;; The binaries in /bin need some help finding librhash.so.0.
(list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib")) (list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib"))
#:test-target "test" ; make check just checks the sources #:test-target "test" ; make check just checks the sources
@ -736,9 +746,13 @@ BLAKE.")
(replace 'configure (replace 'configure
;; ./configure is not GNU autotools' and doesn't gracefully handle ;; ./configure is not GNU autotools' and doesn't gracefully handle
;; unrecognized options, so we must call it manually. ;; unrecognized options, so we must call it manually.
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key configure-flags #:allow-other-keys)
(invoke "./configure" (apply invoke "./configure" configure-flags)))
(string-append "--prefix=" (assoc-ref outputs "out"))))) (add-before 'check 'patch-/bin/sh
(lambda _
(substitute* "Makefile"
(("/bin/sh") (which "sh")))
#t))
(add-after 'install 'install-library-extras (add-after 'install 'install-library-extras
(lambda* (#:key make-flags #:allow-other-keys) (lambda* (#:key make-flags #:allow-other-keys)
(apply invoke (apply invoke

View File

@ -62,7 +62,7 @@
("libgcrypt" ,libgcrypt) ("libgcrypt" ,libgcrypt)
("lvm2" ,lvm2) ; device-mapper ("lvm2" ,lvm2) ; device-mapper
("popt" ,popt) ("popt" ,popt)
("util-linux" ,util-linux))) ; libuuid ("util-linux" ,util-linux "lib"))) ;libuuid
(synopsis "Hard disk encryption tool") (synopsis "Hard disk encryption tool")
(description (description
"LUKS (Linux Unified Key Setup)/Cryptsetup provides a standard on-disk "LUKS (Linux Unified Key Setup)/Cryptsetup provides a standard on-disk
@ -142,6 +142,6 @@ files). This assumes LIBRARY uses Libtool."
("libgcrypt" ,libgcrypt-static) ("libgcrypt" ,libgcrypt-static)
("lvm2" ,lvm2-static) ("lvm2" ,lvm2-static)
("util-linux" ,util-linux "static") ("util-linux" ,util-linux "static")
("util-linux" ,util-linux) ("util-linux" ,util-linux "lib")
("popt" ,popt)))) ("popt" ,popt))))
(synopsis "Hard disk encryption tool (statically linked)"))) (synopsis "Hard disk encryption tool (statically linked)")))

View File

@ -6,6 +6,7 @@
;;; Copyright © 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2017 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -158,7 +159,7 @@
("ijs" ,ijs) ("ijs" ,ijs)
("dbus" ,dbus) ("dbus" ,dbus)
("lcms" ,lcms) ("lcms" ,lcms)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libtiff" ,libtiff) ("libtiff" ,libtiff)
("glib" ,glib) ("glib" ,glib)
@ -536,7 +537,20 @@ should only be used as part of the Guix cups-pk-helper service.")
(string-append "rulessystemdir = " out (string-append "rulessystemdir = " out
"/lib/systemd/system")) "/lib/systemd/system"))
(("/etc/sane.d") (("/etc/sane.d")
(string-append out "/etc/sane.d")))))) (string-append out "/etc/sane.d")))
#t)))
(add-before 'configure 'fix-build-with-python-3.8
(lambda* (#:key inputs #:allow-other-keys)
(let ((python (assoc-ref inputs "python")))
;; XXX: The configure script of looks for Python headers in the
;; wrong places as of version 3.20.3. Help it by adding the
;; include directory on C_INCLUDE_PATH.
(when python
(setenv "C_INCLUDE_PATH"
(string-append python "/include/python"
(python:python-version python)
":" (getenv "C_INCLUDE_PATH"))))
#t)))
(add-after 'install 'install-models-dat (add-after 'install 'install-models-dat
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")) (let* ((out (assoc-ref outputs "out"))
@ -585,7 +599,7 @@ should only be used as part of the Guix cups-pk-helper service.")
(inputs (inputs
`(("cups-minimal" ,cups-minimal) `(("cups-minimal" ,cups-minimal)
("dbus" ,dbus) ("dbus" ,dbus)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libusb" ,libusb) ("libusb" ,libusb)
("python" ,python) ("python" ,python)
("python-dbus" ,python-dbus) ("python-dbus" ,python-dbus)

View File

@ -4,11 +4,12 @@
;;; Copyright © 2015 Tomáš Čech <sleep_walker@suse.cz> ;;; Copyright © 2015 Tomáš Čech <sleep_walker@suse.cz>
;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017, 2019 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016, 2017, 2019 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017, 2019 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Roel Janssen <roel@gnu.org> ;;; Copyright © 2018 Roel Janssen <roel@gnu.org>
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -36,7 +37,6 @@
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
#:use-module (gnu packages golang) #:use-module (gnu packages golang)
#:use-module (gnu packages groff)
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
#:use-module (gnu packages kerberos) #:use-module (gnu packages kerberos)
#:use-module (gnu packages libidn) #:use-module (gnu packages libidn)
@ -45,20 +45,21 @@
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages python) #:use-module (gnu packages python)
#:use-module (gnu packages tls) #:use-module (gnu packages tls)
#:use-module (gnu packages web)) #:use-module (gnu packages web)
#:use-module (srfi srfi-1))
(define-public curl (define-public curl
(package (package
(name "curl") (name "curl")
(version "7.65.3") (version "7.69.1")
(replacement curl-7.66.0)
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://curl.haxx.se/download/curl-" (uri (string-append "https://curl.haxx.se/download/curl-"
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1sjz4fq7jg96mpmpqq82nd61njna6jp3c4m9yrbx2j1rh5a8ingj")))) "0kwxh76iq9fblk7iyv4f75bmcmasarp2bcm1mm07wyvzd7kdbiq3"))
(patches (search-patches "curl-use-ssl-cert-env.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(outputs '("out" (outputs '("out"
"doc")) ;1.2 MiB of man3 pages "doc")) ;1.2 MiB of man3 pages
@ -70,27 +71,42 @@
("zlib" ,zlib))) ("zlib" ,zlib)))
(native-inputs (native-inputs
`(("perl" ,perl) `(("perl" ,perl)
;; to enable the --manual option and make test 1026 pass
("groff" ,groff)
("pkg-config" ,pkg-config) ("pkg-config" ,pkg-config)
("python" ,python-wrapper))) ("python" ,python-wrapper)))
(native-search-paths (native-search-paths
;; Note: This search path is respected by the `curl` command-line tool only. ;; These variables are introduced by curl-use-ssl-cert-env.patch.
;; Ideally we would bake this into libcurl itself so other users can benefit,
;; but it's not supported upstream due to thread safety concerns.
(list (search-path-specification (list (search-path-specification
(variable "SSL_CERT_DIR")
(separator #f) ;single entry
(files '("etc/ssl/certs")))
(search-path-specification
(variable "SSL_CERT_FILE")
(file-type 'regular)
(separator #f) ;single entry
(files '("etc/ssl/certs/ca-certificates.crt")))
;; Note: This search path is respected by the `curl` command-line
;; tool only. Patching libcurl to read it too would bring no
;; advantages and require maintaining a more complex patch.
(search-path-specification
(variable "CURL_CA_BUNDLE") (variable "CURL_CA_BUNDLE")
(file-type 'regular) (file-type 'regular)
(separator #f) ;single entry (separator #f) ;single entry
(files '("etc/ssl/certs/ca-certificates.crt"))))) (files '("etc/ssl/certs/ca-certificates.crt")))))
(arguments (arguments
`(#:configure-flags (list "--with-gnutls" `(#:disallowed-references ("doc")
#:configure-flags (list "--with-gnutls"
(string-append "--with-gssapi=" (string-append "--with-gssapi="
(assoc-ref %build-inputs "mit-krb5")) (assoc-ref %build-inputs "mit-krb5"))
"--disable-static") "--disable-static")
;; Add a phase to patch '/bin/sh' occurances in tests/runtests.pl
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'do-not-record-configure-flags
(lambda _
;; Do not save the configure options to avoid unnecessary references.
(substitute* "curl-config.in"
(("@CONFIGURE_OPTIONS@")
"\"not available\""))
#t))
(add-after (add-after
'install 'move-man3-pages 'install 'move-man3-pages
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
@ -143,17 +159,14 @@ tunneling, and so on.")
"See COPYING in the distribution.")) "See COPYING in the distribution."))
(home-page "https://curl.haxx.se/"))) (home-page "https://curl.haxx.se/")))
(define curl-7.66.0 ;; This package exists mainly to bootstrap CMake. It must not depend on
(package ;; anything that uses cmake-build-system.
(inherit curl) (define-public curl-minimal
(version "7.66.0") (hidden-package
(source (origin (package/inherit
(method url-fetch) curl
(uri (string-append "https://curl.haxx.se/download/curl-" (name "curl-minimal")
version ".tar.xz")) (inputs (alist-delete "openldap" (package-inputs curl))))))
(sha256
(base32
"1hcqxpibhknhjy56wcxz5vd6m9ggx3ykwp3wp5wx05ih36481d6v"))))))
(define-public kurly (define-public kurly
(package (package

View File

@ -2,6 +2,7 @@
;;; Copyright © 2013, 2014, 2015, 2017 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013, 2014, 2015, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -20,6 +21,7 @@
(define-module (gnu packages cyrus-sasl) (define-module (gnu packages cyrus-sasl)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages dbm) #:use-module (gnu packages dbm)
#:use-module (gnu packages kerberos) #:use-module (gnu packages kerberos)
#:use-module (gnu packages tls) #:use-module (gnu packages tls)
@ -41,8 +43,13 @@
"ftp://ftp.cyrusimap.org/cyrus-sasl/cyrus-sasl-" "ftp://ftp.cyrusimap.org/cyrus-sasl/cyrus-sasl-"
version ".tar.gz"))) version ".tar.gz")))
(sha256 (base32 (sha256 (base32
"1m85zcpgfdhm43cavpdkhb1s2zq1b31472hq1w1gs3xh94anp1i6")))) "1m85zcpgfdhm43cavpdkhb1s2zq1b31472hq1w1gs3xh94anp1i6"))
(patches (search-patches "cyrus-sasl-ac-try-run-fix.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)))
(inputs `(("gdbm" ,gdbm) (inputs `(("gdbm" ,gdbm)
("openssl" ,openssl))) ("openssl" ,openssl)))
(propagated-inputs (propagated-inputs
@ -57,7 +64,13 @@
;; 'plugin_common.c'. When building the shared libraries there, libtool ;; 'plugin_common.c'. When building the shared libraries there, libtool
;; ends up doing "ln -s plugin_common.lo plugin_common.o", which can ;; ends up doing "ln -s plugin_common.lo plugin_common.o", which can
;; fail with EEXIST when building things in parallel. ;; fail with EEXIST when building things in parallel.
#:parallel-build? #f)) #:parallel-build? #f
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'autogen
(lambda _
(invoke "autoreconf" "-vif"))))))
(synopsis "Simple Authentication Security Layer implementation") (synopsis "Simple Authentication Security Layer implementation")
(description (description
"SASL (Simple Authentication Security Layer) is an Internet "SASL (Simple Authentication Security Layer) is an Internet

View File

@ -168,7 +168,7 @@
("avahi" ,avahi) ("avahi" ,avahi)
("cyrus-sasl" ,cyrus-sasl) ("cyrus-sasl" ,cyrus-sasl)
("openssl" ,openssl) ("openssl" ,openssl)
("util-linux" ,util-linux))) ("util-linux" ,util-linux "lib")))
;; http://www.4store.org has been down for a while now. ;; http://www.4store.org has been down for a while now.
(home-page "https://github.com/4store/4store") (home-page "https://github.com/4store/4store")
(synopsis "Clustered RDF storage and query engine") (synopsis "Clustered RDF storage and query engine")
@ -761,6 +761,20 @@ Language.")
"-DINSTALL_SHAREDIR=share") "-DINSTALL_SHAREDIR=share")
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
,@(if (string-prefix? "arm" (%current-system))
;; XXX: Because of the GCC 5 input, we need to hide GCC 7 from
;; CPLUS_INCLUDE_PATH so that its headers do not shadow GCC 5.
'((add-after 'set-paths 'hide-default-gcc
(lambda* (#:key inputs #:allow-other-keys)
(let ((gcc (assoc-ref inputs "gcc")))
(setenv "CPLUS_INCLUDE_PATH"
(string-join
(delete (string-append gcc "/include/c++")
(string-split (getenv "CPLUS_INCLUDE_PATH")
#\:))
":"))
#t))))
'())
(add-after 'unpack 'fix-pcre-detection (add-after 'unpack 'fix-pcre-detection
(lambda _ (lambda _
;; The bundled PCRE in MariaDB has a patch that was upstreamed ;; The bundled PCRE in MariaDB has a patch that was upstreamed
@ -893,7 +907,7 @@ Language.")
`(("bison" ,bison) `(("bison" ,bison)
;; XXX: On armhf, use GCC 5 to work around <https://bugs.gnu.org/37605>. ;; XXX: On armhf, use GCC 5 to work around <https://bugs.gnu.org/37605>.
,@(if (string-prefix? "armhf" (%current-system)) ,@(if (string-prefix? "armhf" (%current-system))
`(("gcc", gcc-5)) `(("gcc@5", gcc-5))
'()) '())
("perl" ,perl))) ("perl" ,perl)))
(inputs (inputs
@ -974,7 +988,7 @@ developed in C/C++ to MariaDB and MySQL databases.")
(invoke "make" "-C" "contrib" "install")))))) (invoke "make" "-C" "contrib" "install"))))))
(inputs (inputs
`(("readline" ,readline) `(("readline" ,readline)
("libuuid" ,util-linux) ("libuuid" ,util-linux "lib")
("openssl" ,openssl) ("openssl" ,openssl)
("zlib" ,zlib))) ("zlib" ,zlib)))
(home-page "https://www.postgresql.org/") (home-page "https://www.postgresql.org/")
@ -2698,7 +2712,7 @@ PickleShare.")
(define-public python-apsw (define-public python-apsw
(package (package
(name "python-apsw") (name "python-apsw")
(version "3.28.0-r1") (version "3.31.1-r1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -2706,7 +2720,7 @@ PickleShare.")
"/download/" version "/apsw-" version ".zip")) "/download/" version "/apsw-" version ".zip"))
(sha256 (sha256
(base32 (base32
"0x62534l5hcgwrc4k2gxpdzc1sxlhm6m4nwlay74rnmr77qh8wly")))) "1gap5lr6c7bp134nzvfwr693i6d0fqyaysg3ms2cayjldv616yfx"))))
(build-system python-build-system) (build-system python-build-system)
(native-inputs (native-inputs
`(("unzip" ,unzip))) `(("unzip" ,unzip)))

View File

@ -80,6 +80,11 @@ clients.")
(if tests? (if tests?
(invoke "make" "test") (invoke "make" "test")
#t))) #t)))
(add-after 'unpack 'patch-version-call
(lambda _
(substitute* "docs/conf.py"
(("^release.*") (string-append "release = '" ,version "'\n")))
#t))
(add-after 'install 'manpage (add-after 'install 'manpage
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(invoke "make" "--directory=docs/" "man") (invoke "make" "--directory=docs/" "man")

View File

@ -55,7 +55,7 @@
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(replace 'configure (replace 'configure
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key target outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")) (let ((out (assoc-ref outputs "out"))
(doc (assoc-ref outputs "doc"))) (doc (assoc-ref outputs "doc")))
;; '--docdir' is not honored, so we need to patch. ;; '--docdir' is not honored, so we need to patch.
@ -74,6 +74,10 @@
'("--build=aarch64-unknown-linux-gnu") '("--build=aarch64-unknown-linux-gnu")
'()) '())
,@(if (%current-target-system) ; cross building
'((string-append "--host=" target))
'())
;; Remove 7 MiB of .a files. ;; Remove 7 MiB of .a files.
"--disable-static" "--disable-static"
@ -134,7 +138,8 @@ SQL, Key/Value, XML/XQuery or Java Object storage for their data model.")
(sha256 (sha256
(base32 (base32
"1p4ibds6z3ccy65lkmd6lm7js0kwifvl53r0fd759fjxgr917rl6")))) "1p4ibds6z3ccy65lkmd6lm7js0kwifvl53r0fd759fjxgr917rl6"))))
(arguments `(#:configure-flags '("--enable-libgdbm-compat"))) (arguments `(#:configure-flags '("--enable-libgdbm-compat"
"--disable-static")))
(build-system gnu-build-system) (build-system gnu-build-system)
(home-page "http://www.gnu.org.ua/software/gdbm") (home-page "http://www.gnu.org.ua/software/gdbm")
(synopsis (synopsis

View File

@ -112,7 +112,7 @@
("libgcrypt" ,libgcrypt) ("libgcrypt" ,libgcrypt)
("lz4" ,lz4) ("lz4" ,lz4)
("lzo" ,lzo) ("lzo" ,lzo)
("util-linux" ,util-linux) ("util-linux" ,util-linux "lib")
("xz" ,xz) ("xz" ,xz)
("zlib" ,zlib) ("zlib" ,zlib)
("zstd:lib" ,zstd "lib"))) ("zstd:lib" ,zstd "lib")))
@ -212,13 +212,15 @@ tmpfs/ramfs filesystems.")
(inputs (inputs
`(("lvm2" ,lvm2) `(("lvm2" ,lvm2)
("readline" ,readline) ("readline" ,readline)
("util-linux" ,util-linux))) ("util-linux" ,util-linux "lib")))
(native-inputs (native-inputs
`(("gettext" ,gettext-minimal) `(("gettext" ,gettext-minimal)
;; For the tests. ;; For the tests.
("e2fsprogs" ,e2fsprogs) ("e2fsprogs" ,e2fsprogs)
("perl" ,perl) ("perl" ,perl)
("python" ,python-2))) ("python" ,python-2)
("util-linux" ,util-linux)))
(home-page "https://www.gnu.org/software/parted/") (home-page "https://www.gnu.org/software/parted/")
(synopsis "Disk partition editor") (synopsis "Disk partition editor")
(description (description
@ -242,7 +244,7 @@ tables. It includes a library and command-line utility.")
(inputs (inputs
`(("gettext" ,gettext-minimal) `(("gettext" ,gettext-minimal)
("guile" ,guile-1.8) ("guile" ,guile-1.8)
("util-linux" ,util-linux) ("util-linux" ,util-linux "lib")
("parted" ,parted))) ("parted" ,parted)))
;; The build neglects to look for its own headers in its own tree. A next ;; The build neglects to look for its own headers in its own tree. A next
;; release should fix this, but may never come: GNU fdisk looks abandoned. ;; release should fix this, but may never come: GNU fdisk looks abandoned.
@ -282,7 +284,7 @@ tables, and it understands a variety of different formats.")
`(("gettext" ,gettext-minimal) `(("gettext" ,gettext-minimal)
("ncurses" ,ncurses) ("ncurses" ,ncurses)
("popt" ,popt) ("popt" ,popt)
("util-linux" ,util-linux))) ; libuuid ("util-linux" ,util-linux "lib"))) ;libuuid
(arguments (arguments
`(#:test-target "test" `(#:test-target "test"
#:phases #:phases
@ -472,7 +474,7 @@ and can dramatically shorten the lifespan of the drive if left unchecked.")
;; as '/dev/disk/by-id' ;; as '/dev/disk/by-id'
`(#:tests? #f)) `(#:tests? #f))
(inputs (inputs
`(("util-linux" ,util-linux) `(("util-linux" ,util-linux "lib")
("parted" ,parted) ("parted" ,parted)
("glib" ,glib) ("glib" ,glib)
("gtkmm" ,gtkmm) ("gtkmm" ,gtkmm)
@ -700,7 +702,7 @@ automatically finding out which program to use for what file type.")
(inputs (inputs
`(("cryptsetup" ,cryptsetup) `(("cryptsetup" ,cryptsetup)
("nss" ,nss) ("nss" ,nss)
("libblkid" ,util-linux) ("libblkid" ,util-linux "lib")
("lvm2" ,lvm2) ; for "-ldevmapper" ("lvm2" ,lvm2) ; for "-ldevmapper"
("glib" ,glib) ("glib" ,glib)
("gpgme" ,gpgme))) ("gpgme" ,gpgme)))
@ -753,7 +755,7 @@ passphrases.")
("json-c" ,json-c) ("json-c" ,json-c)
("keyutils" ,keyutils) ("keyutils" ,keyutils)
("kmod" ,kmod) ("kmod" ,kmod)
("util-linux" ,util-linux))) ("util-linux" ,util-linux "lib")))
(arguments (arguments
`(#:configure-flags `(#:configure-flags
(list "--disable-asciidoctor" ; use docbook-xsl instead (list "--disable-asciidoctor" ; use docbook-xsl instead
@ -922,7 +924,7 @@ LVM D-Bus API).")
("libelf" ,libelf) ("libelf" ,libelf)
("elfutils" ,elfutils) ("elfutils" ,elfutils)
("json-glib" ,json-glib) ("json-glib" ,json-glib)
("libblkid" ,util-linux))) ("libblkid" ,util-linux "lib")))
(home-page "https://rmlint.rtfd.org") (home-page "https://rmlint.rtfd.org")
(synopsis "Remove duplicates and other lint from the file system") (synopsis "Remove duplicates and other lint from the file system")
(description "@command{rmlint} finds space waste and other broken things (description "@command{rmlint} finds space waste and other broken things

View File

@ -271,7 +271,7 @@ GTK+, lets you select a desktop session and log in to it.")
(build-system cmake-build-system) (build-system cmake-build-system)
(inputs `(("linux-pam" ,linux-pam) (inputs `(("linux-pam" ,linux-pam)
("libpng" ,libpng) ("libpng" ,libpng)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("freeglut" ,freeglut) ("freeglut" ,freeglut)
("libxrandr" ,libxrandr) ("libxrandr" ,libxrandr)
("libxrender" ,libxrender) ("libxrender" ,libxrender)

View File

@ -6,7 +6,7 @@
;;; Copyright © 2016 John Darrington <jmd@gnu.org> ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
;;; Copyright © 2016 ng0 <ng0@n0.is> ;;; Copyright © 2016 ng0 <ng0@n0.is>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2016, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com> ;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com>
;;; Copyright © 2017 Gregor Giesen <giesen@zaehlwerk.net> ;;; Copyright © 2017 Gregor Giesen <giesen@zaehlwerk.net>
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>

View File

@ -183,7 +183,7 @@ by no means limited to these applications.) This package provides XML DTDs.")
(define-public dblatex (define-public dblatex
(package (package
(name "dblatex") (name "dblatex")
(version "0.3.10") (version "0.3.11")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://sourceforge/dblatex/dblatex/" (uri (string-append "mirror://sourceforge/dblatex/dblatex/"
@ -191,7 +191,7 @@ by no means limited to these applications.) This package provides XML DTDs.")
version ".tar.bz2")) version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"1yicd861rqz78i2khl35j7nvc0ccv4jx4hzqrbhll17082vrdmkg")))) "0rp1bc2lgisigscq1i7zxfd2qdaxxxld6khbcxss4pq7fpi9fzkv"))))
(build-system python-build-system) (build-system python-build-system)
;; TODO: Add xfig/transfig for fig2dev utility ;; TODO: Add xfig/transfig for fig2dev utility
(inputs (inputs

View File

@ -7,6 +7,7 @@
;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net> ;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
@ -33,6 +34,7 @@
#:use-module (guix build-system cmake) #:use-module (guix build-system cmake)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash) #:use-module (gnu packages bash)
#:use-module (gnu packages python) #:use-module (gnu packages python)
#:use-module (gnu packages bison) #:use-module (gnu packages bison)
@ -148,7 +150,7 @@ markup) can be customized and extended by the user.")
(define-public doxygen (define-public doxygen
(package (package
(name "doxygen") (name "doxygen")
(version "1.8.15") (version "1.8.17")
(home-page "http://www.doxygen.nl/") (home-page "http://www.doxygen.nl/")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
@ -159,8 +161,9 @@ markup) can be customized and extended by the user.")
".src.tar.gz"))) ".src.tar.gz")))
(sha256 (sha256
(base32 (base32
"0p94b4yb6bk2dxzs5kyl82xxgq2qakgbx5yy3ssbbadncb20x75x")) "16dmv0gm1x8rvbm82fmjvi213q8fxqxinm75pcf595flya59ific"))
(patches (search-patches "doxygen-test.patch")))) (patches (search-patches "doxygen-test.patch"
"doxygen-1.8.17-runtests.patch"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(native-inputs (native-inputs
`(("bison" ,bison) `(("bison" ,bison)
@ -170,7 +173,15 @@ markup) can be customized and extended by the user.")
(inputs (inputs
`(("bash" ,bash-minimal))) `(("bash" ,bash-minimal)))
(arguments (arguments
`(#:test-target "tests" ;; Force cmake to use iconv header from cross-libc instead of the one
;; from native libc.
`(,@(if (%current-target-system)
'(#:configure-flags
(list (string-append "-DICONV_INCLUDE_DIR="
(assoc-ref %build-inputs "cross-libc")
"/include")))
'())
#:test-target "tests"
#:phases (modify-phases %standard-phases #:phases (modify-phases %standard-phases
(add-before 'configure 'patch-sh (add-before 'configure 'patch-sh
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)

View File

@ -291,7 +291,7 @@ designed to be used in a generic text renderer.")
("fribidi" ,fribidi) ("fribidi" ,fribidi)
("glib" ,glib) ("glib" ,glib)
("gtk+-2" ,gtk+-2) ("gtk+-2" ,gtk+-2)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("liblinebreak" ,liblinebreak) ("liblinebreak" ,liblinebreak)
("libxft" ,libxft) ("libxft" ,libxft)
("sqlite" ,sqlite) ("sqlite" ,sqlite)

View File

@ -28,14 +28,14 @@
(define-public ed (define-public ed
(package (package
(name "ed") (name "ed")
(version "1.15") (version "1.16")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/ed/ed-" (uri (string-append "mirror://gnu/ed/ed-"
version ".tar.lz")) version ".tar.lz"))
(sha256 (sha256
(base32 (base32
"0x6ivy5k0d7dy5z9g8q8nipr89m4qbk2ink2898qq43smp08ji5d")))) "0b4b1lwizvng9bvpcjnmpj2i80xz9xw2w8nfff27b2h4mca7mh6g"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs `(("lzip" ,lzip))) (native-inputs `(("lzip" ,lzip)))
(arguments (arguments

View File

@ -112,6 +112,7 @@ environment presented by Intel's EFI.")
("util-linux" ,util-linux))) ; getopt ("util-linux" ,util-linux))) ; getopt
(inputs (inputs
`(("gnu-efi" ,gnu-efi) `(("gnu-efi" ,gnu-efi)
("libuuid" ,util-linux "lib")
("openssl" ,openssl))) ("openssl" ,openssl)))
(synopsis "EFI signing tools") (synopsis "EFI signing tools")
(description "This package provides tools for signing EFI binaries.") (description "This package provides tools for signing EFI binaries.")

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 Taylan Ulrich Bayirli/Kammer <taylanbayirli@gmail.com> ;;; Copyright © 2014 Taylan Ulrich Bayirli/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014, 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Alex Kost <alezost@gmail.com> ;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Alex Kost <alezost@gmail.com>
;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch> ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
@ -68,6 +68,7 @@
;;; Copyright © 2020 John Soo <jsoo1@asu.edu> ;;; Copyright © 2020 John Soo <jsoo1@asu.edu>
;;; Copyright © 2020 Jérémy Korwin-Zmijowski <jeremy@korwin-zmijowski.fr> ;;; Copyright © 2020 Jérémy Korwin-Zmijowski <jeremy@korwin-zmijowski.fr>
;;; Copyright © 2020 Alberto Eleuterio Flores Guerrero <barbanegra+guix@posteo.mx> ;;; Copyright © 2020 Alberto Eleuterio Flores Guerrero <barbanegra+guix@posteo.mx>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 pinoaffe <pinoaffe@airmail.cc> ;;; Copyright © 2020 pinoaffe <pinoaffe@airmail.cc>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
@ -2427,13 +2428,21 @@ type, for example: packages, buffers, files, etc.")
"releases/emacs-guix-" version ".tar.gz")) "releases/emacs-guix-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0yz64c0z4ygi2k4af18k4r1ncgys18jb8icywkp2g5pgmpn5l7ps")))) "0yz64c0z4ygi2k4af18k4r1ncgys18jb8icywkp2g5pgmpn5l7ps"))
(modules '((guix build utils)))
(snippet
'(begin
;; Add support for Guile 3.0. Remove for versions > 0.5.2.
(substitute* "configure"
(("\"2\\.2 2\\.0\"")
"\"3.0 2.2 2.0\""))
#t))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
("emacs" ,emacs-minimal))) ("emacs" ,emacs-minimal)))
(inputs (inputs
`(("guile" ,guile-2.2) `(("guile" ,guile-3.0)
("guix" ,guix))) ("guix" ,guix)))
(propagated-inputs (propagated-inputs
`(("geiser" ,emacs-geiser) `(("geiser" ,emacs-geiser)
@ -10334,15 +10343,12 @@ It should enable you to implement low-level X11 applications.")
;; Add a .desktop file to xsessions ;; Add a .desktop file to xsessions
(mkdir-p xsessions) (mkdir-p xsessions)
(mkdir-p bin) (mkdir-p bin)
(with-output-to-file (make-desktop-entry-file
(string-append xsessions "/exwm.desktop") (string-append xsessions "/exwm.desktop")
(lambda _ #:name ,name
(format #t "[Desktop Entry]~@ #:comment ,synopsis
Name=~a~@ #:exec exwm-executable
Comment=~a~@ #:try-exec exwm-executable)
Exec=~a~@
TryExec=~:*~a~@
Type=Application~%" ,name ,synopsis exwm-executable)))
;; Add a shell wrapper to bin ;; Add a shell wrapper to bin
(with-output-to-file exwm-executable (with-output-to-file exwm-executable
(lambda _ (lambda _

View File

@ -141,7 +141,7 @@
"lisp/textmodes/artist.el" "lisp/textmodes/artist.el"
"lisp/progmodes/sh-script.el") "lisp/progmodes/sh-script.el")
(("\"/bin/sh\"") (("\"/bin/sh\"")
(format "~s" (which "sh")))) (format #f "~s" (which "sh"))))
#t)) #t))
(add-before 'configure 'fix-/bin/pwd (add-before 'configure 'fix-/bin/pwd
(lambda _ (lambda _
@ -165,7 +165,7 @@
(byte-recompile-directory (byte-recompile-directory
(file-name-as-directory ,dir) 0 1)))) (file-name-as-directory ,dir) 0 1))))
(invoke emacs "--quick" "--batch" (invoke emacs "--quick" "--batch"
(format "--eval=~s" expr)))) (format #f "--eval=~s" expr))))
(copy-file (assoc-ref inputs "guix-emacs.el") (copy-file (assoc-ref inputs "guix-emacs.el")
(string-append lisp-dir "/guix-emacs.el")) (string-append lisp-dir "/guix-emacs.el"))
@ -195,7 +195,7 @@
("libxft" ,libxft) ("libxft" ,libxft)
("libtiff" ,libtiff) ("libtiff" ,libtiff)
("giflib" ,giflib) ("giflib" ,giflib)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("imagemagick" ,imagemagick) ("imagemagick" ,imagemagick)
("acl" ,acl) ("acl" ,acl)

View File

@ -770,7 +770,8 @@ fonts to gEDA.")
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(setenv "CPLUS_INCLUDE_PATH" (setenv "CPLUS_INCLUDE_PATH"
(string-append (assoc-ref inputs "catch") (string-append (assoc-ref inputs "catch")
"/include/catch")) "/include/catch:"
(or (getenv "CPLUS_INCLUDE_PATH") "")))
#t))))) #t)))))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))
@ -2216,7 +2217,7 @@ engineers for reverse engineers.")
(native-inputs (native-inputs
`(("googletest-source" ,(package-source googletest)))) `(("googletest-source" ,(package-source googletest))))
(inputs (inputs
`(("libuuid" ,util-linux))) `(("libuuid" ,util-linux "lib")))
(arguments (arguments
`(#:phases `(#:phases
(modify-phases %standard-phases (modify-phases %standard-phases

View File

@ -124,7 +124,7 @@
("glib" ,glib) ("glib" ,glib)
("harfbuzz" ,harfbuzz) ("harfbuzz" ,harfbuzz)
("libinput" ,libinput-minimal) ("libinput" ,libinput-minimal)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libsndfile" ,libsndfile) ("libsndfile" ,libsndfile)
("libpng" ,libpng) ("libpng" ,libpng)
("libx11" ,libx11) ("libx11" ,libx11)
@ -133,7 +133,7 @@
("lz4" ,lz4) ("lz4" ,lz4)
("openssl" ,openssl) ("openssl" ,openssl)
("pulseaudio" ,pulseaudio) ("pulseaudio" ,pulseaudio)
("util-linux" ,util-linux) ("util-linux" ,util-linux "lib")
("wayland" ,wayland) ("wayland" ,wayland)
("zlib" ,zlib))) ("zlib" ,zlib)))
(arguments (arguments

View File

@ -122,7 +122,7 @@ from a mounted filesystem.")
("libscrypt" ,libscrypt) ("libscrypt" ,libscrypt)
("libsodium" ,libsodium) ("libsodium" ,libsodium)
("liburcu" ,liburcu) ("liburcu" ,liburcu)
("util-linux" ,util-linux) ; lib{blkid,uuid} ("util-linux" ,util-linux "lib") ; lib{blkid,uuid}
("lz4" ,lz4) ("lz4" ,lz4)
("zlib" ,zlib) ("zlib" ,zlib)
("zstd:lib" ,zstd "lib"))) ("zstd:lib" ,zstd "lib")))
@ -214,7 +214,7 @@ single file can be mounted.")
"jfsutils-include-systypes.patch")))) "jfsutils-include-systypes.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
`(("util-linux" ,util-linux))) `(("util-linux" ,util-linux "lib")))
(home-page "http://jfs.sourceforge.net/home.html") (home-page "http://jfs.sourceforge.net/home.html")
(synopsis "Utilities for managing JFS file systems") (synopsis "Utilities for managing JFS file systems")
(description (description
@ -358,7 +358,7 @@ non-determinism in the build process.")
("fuse", fuse) ("fuse", fuse)
("openssl" ,openssl) ("openssl" ,openssl)
("liburcu" ,liburcu) ("liburcu" ,liburcu)
("libuuid" ,util-linux) ("libuuid" ,util-linux "lib")
("libxml2" ,libxml2) ("libxml2" ,libxml2)
("readline" ,readline) ("readline" ,readline)
("zlib" ,zlib) ("zlib" ,zlib)
@ -590,7 +590,7 @@ APFS.")
("openssl" ,openssl) ("openssl" ,openssl)
("python" ,python) ("python" ,python)
("python-cffi" ,python-cffi) ("python-cffi" ,python-cffi)
("util-linux" ,util-linux) ("util-linux" ,util-linux "lib")
("zlib" ,zlib))) ("zlib" ,zlib)))
(home-page "https://zfsonlinux.org/") (home-page "https://zfsonlinux.org/")
(synopsis "Native ZFS on Linux") (synopsis "Native ZFS on Linux")

View File

@ -30,15 +30,14 @@
(define-public file (define-public file
(package (package
(name "file") (name "file")
(version "5.33") (version "5.38")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "ftp://ftp.astron.com/pub/file/file-" (uri (string-append "ftp://ftp.astron.com/pub/file/file-"
version ".tar.gz")) version ".tar.gz"))
(patches (search-patches "file-CVE-2018-10360.patch"))
(sha256 (sha256
(base32 (base32
"1iipnwjkag7q04zjkaqic41r9nlw0ml6mhqian6qkkbisb1whlhw")))) "0d7s376b4xqymnrsjxi3nsv3f5v89pzfspzml2pcajdk5by2yg2r"))))
(build-system gnu-build-system) (build-system gnu-build-system)
;; When cross-compiling, this package depends upon a native install of ;; When cross-compiling, this package depends upon a native install of

View File

@ -258,7 +258,7 @@ and dynamically with report tools based on filtering and graphical charts.")
("gmp" ,gmp) ("gmp" ,gmp)
("libedit" ,libedit) ("libedit" ,libedit)
("mpfr" ,mpfr) ("mpfr" ,mpfr)
("python" ,python-2) ("python" ,python)
("utfcpp" ,utfcpp))) ("utfcpp" ,utfcpp)))
(native-inputs (native-inputs
`(("groff" ,groff) `(("groff" ,groff)

View File

@ -5,6 +5,8 @@
;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Vagrant Cascadian <vagrant@debian.org> ;;; Copyright © 2018 Vagrant Cascadian <vagrant@debian.org>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -31,6 +33,7 @@
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages admin) #:use-module (gnu packages admin)
#:use-module (gnu packages assembly) #:use-module (gnu packages assembly)
#:use-module (gnu packages base)
#:use-module (gnu packages bison) #:use-module (gnu packages bison)
#:use-module (gnu packages cmake) #:use-module (gnu packages cmake)
#:use-module (gnu packages cross-base) #:use-module (gnu packages cross-base)
@ -59,7 +62,7 @@
'(#:phases '(#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-before 'configure 'pre-configure (add-before 'configure 'pre-configure
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs native-inputs #:allow-other-keys)
(chdir "target_firmware") (chdir "target_firmware")
;; 'configure' is a simple script that runs 'cmake' with ;; 'configure' is a simple script that runs 'cmake' with
@ -67,7 +70,7 @@
(substitute* "configure" (substitute* "configure"
(("^TOOLCHAIN=.*$") (("^TOOLCHAIN=.*$")
(string-append "TOOLCHAIN=" (string-append "TOOLCHAIN="
(assoc-ref inputs "cross-gcc") (assoc-ref (or native-inputs inputs) "cross-gcc")
"\n"))) "\n")))
#t)) #t))
(replace 'install (replace 'install
@ -82,8 +85,11 @@
;; The firmware is cross-compiled using a "bare bones" compiler (no libc.) ;; The firmware is cross-compiled using a "bare bones" compiler (no libc.)
;; Use our own tool chain for that. ;; Use our own tool chain for that.
(native-inputs `(("cross-gcc" ,(cross-gcc "xtensa-elf")) (native-inputs `(("cross-gcc" ,(cross-gcc
("cross-binutils" ,(cross-binutils "xtensa-elf")) "xtensa-elf"
#:xbinutils (cross-binutils "xtensa-elf"
binutils-2.33)))
("cross-binutils" ,(cross-binutils "xtensa-elf" binutils-2.33))
("cmake" ,cmake-minimal) ("cmake" ,cmake-minimal)
("perl" ,perl))) ("perl" ,perl)))
(home-page "https://wireless.wiki.kernel.org/en/users/Drivers/ath9k_htc") (home-page "https://wireless.wiki.kernel.org/en/users/Drivers/ath9k_htc")
@ -314,14 +320,26 @@ coreboot.")
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("acpica" ,acpica) `(("acpica" ,acpica)
("gcc" ,gcc-5) ("gcc@5" ,gcc-5)
("nasm" ,nasm) ("nasm" ,nasm)
("python-2" ,python-2) ("python-2" ,python-2)
("util-linux" ,util-linux))) ("util-linux" ,util-linux "lib")))
(arguments (arguments
`(#:tests? #f ; No check target. `(#:tests? #f ; No check target.
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
;; Hide the default GCC from CPLUS_INCLUDE_PATH to prevent it from
;; shadowing the version of GCC provided in native-inputs.
(add-after 'set-paths 'hide-gcc7
(lambda* (#:key inputs #:allow-other-keys)
(let ((gcc (assoc-ref inputs "gcc")))
(setenv "CPLUS_INCLUDE_PATH"
(string-join
(delete (string-append gcc "/include/c++")
(string-split (getenv "CPLUS_INCLUDE_PATH")
#\:))
":"))
#t)))
(replace 'configure (replace 'configure
(lambda _ (lambda _
(let* ((cwd (getcwd)) (let* ((cwd (getcwd))

View File

@ -56,7 +56,7 @@
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))
(inputs (inputs
`(("libjpeg" ,libjpeg) `(("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libx11" ,libx11) ("libx11" ,libx11)
("libxft" ,libxft) ("libxft" ,libxft)
@ -129,7 +129,7 @@ UI builder called FLUID that can be used to create applications in minutes.")
(assoc-ref outputs "out") "/lib")) (assoc-ref outputs "out") "/lib"))
#t))))) #t)))))
(inputs (inputs
`(("libjpeg" ,libjpeg) `(("libjpeg" ,libjpeg-turbo)
("glu" ,glu) ("glu" ,glu)
("waf" ,python-waf))) ("waf" ,python-waf)))
;; ntk.pc lists "x11" and "xft" in Requires.private, and "cairo" in ;; ntk.pc lists "x11" and "xft" in Requires.private, and "cairo" in

View File

@ -12,7 +12,7 @@
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016 Dmitry Nikolaev <cameltheman@gmail.com> ;;; Copyright © 2016 Dmitry Nikolaev <cameltheman@gmail.com>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2016, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2016 Toni Reina <areina@riseup.net> ;;; Copyright © 2016 Toni Reina <areina@riseup.net>
;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 José Miguel Sánchez García <jmi2k@openmailbox.com> ;;; Copyright © 2017 José Miguel Sánchez García <jmi2k@openmailbox.com>
@ -236,6 +236,8 @@ The Lato 2.010 family supports more than 100 Latin-based languages, over
(define-public font-gnu-freefont (define-public font-gnu-freefont
(package (package
(name "font-gnu-freefont") (name "font-gnu-freefont")
;; Note: Remove the special FontForge input and package once the 2020
;; release is out.
(version "20120503") (version "20120503")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
@ -289,12 +291,8 @@ The Lato 2.010 family supports more than 100 Latin-based languages, over
(lambda (file) (string-suffix? "woff" file)) (lambda (file) (string-suffix? "woff" file))
(find-files "." ""))))))) (find-files "." "")))))))
#:test-target "tests")) #:test-target "tests"))
;; replace python 3 with python 2 ;; FreeFont anno 2012 requires a FontForge built with Python 2.
;; python 3 support commits aren't yet released in 20120503 (native-inputs `(("fontforge" ,fontforge-20190801)))
;; so freefont needs python 2 support in fontforge
(native-inputs `(("fontforge" ,(package (inherit fontforge)
(inputs `(("python-2" ,python-2)
,@(package-inputs fontforge)))))))
(home-page "https://www.gnu.org/software/freefont/") (home-page "https://www.gnu.org/software/freefont/")
(synopsis "Unicode-encoded outline fonts") (synopsis "Unicode-encoded outline fonts")
(description (description

View File

@ -9,7 +9,7 @@
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018, 2019 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Roel Janssen <roel@gnu.org> ;;; Copyright © 2020 Roel Janssen <roel@gnu.org>
;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; ;;;
@ -60,7 +60,9 @@
#:use-module (guix build-system cmake) #:use-module (guix build-system cmake)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system python) #:use-module (guix build-system python)
#:use-module (guix build-system meson)) #:use-module (guix build-system meson)
#:use-module (guix utils)
#:use-module (srfi srfi-1))
(define-public freetype (define-public freetype
(package (package
@ -296,13 +298,14 @@ fonts to/from the WOFF2 format.")
(uri (string-append (uri (string-append
"https://www.freedesktop.org/software/fontconfig/release/fontconfig-" "https://www.freedesktop.org/software/fontconfig/release/fontconfig-"
version ".tar.bz2")) version ".tar.bz2"))
(patches (search-patches "fontconfig-hurd-path-max.patch"))
(sha256 (base32 (sha256 (base32
"0hb700a68kk0ip51wdlnjjc682kvlrmb6q920mzajykdk0mdsmgn")))) "0hb700a68kk0ip51wdlnjjc682kvlrmb6q920mzajykdk0mdsmgn"))))
(build-system gnu-build-system) (build-system gnu-build-system)
;; In Requires or Requires.private of fontconfig.pc. ;; In Requires or Requires.private of fontconfig.pc.
(propagated-inputs `(("expat" ,expat) (propagated-inputs `(("expat" ,expat)
("freetype" ,freetype) ("freetype" ,freetype)
("libuuid" ,util-linux))) ("libuuid" ,util-linux "lib")))
(inputs `(("gs-fonts" ,gs-fonts))) (inputs `(("gs-fonts" ,gs-fonts)))
(native-inputs (native-inputs
`(("gperf" ,gperf) `(("gperf" ,gperf)
@ -397,6 +400,8 @@ X11-system or any other graphical user interface.")
(sha256 (sha256
(base32 "0gbxyip4wdibirdg2pvzayzyy927vxyd6dfyfiflx8zg88qzn8v8")))) (base32 "0gbxyip4wdibirdg2pvzayzyy927vxyd6dfyfiflx8zg88qzn8v8"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments
'(#:configure-flags '("--disable-static")))
(inputs (inputs
`(("zlib" ,zlib) `(("zlib" ,zlib)
("expat" ,expat))) ("expat" ,expat)))
@ -465,7 +470,7 @@ and returns a sequence of positioned glyphids from the font.")
(define-public potrace (define-public potrace
(package (package
(name "potrace") (name "potrace")
(version "1.15") (version "1.16")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -473,8 +478,7 @@ and returns a sequence of positioned glyphids from the font.")
"/potrace-" version ".tar.gz")) "/potrace-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"17ajildjp14shsy339xarh1lw1p0k60la08ahl638a73mh23kcx9")) "1k3sxgjqq0jnpk9xxys05q32sl5hbf1lbk1gmfxcrmpdgnhli0my"))))
(patches (search-patches "potrace-tests.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs `(("ghostscript" ,ghostscript))) ;for tests (native-inputs `(("ghostscript" ,ghostscript))) ;for tests
(inputs `(("zlib" ,zlib))) (inputs `(("zlib" ,zlib)))
@ -519,16 +523,18 @@ using the above tables.")
(define-public libspiro (define-public libspiro
(package (package
(name "libspiro") (name "libspiro")
(version "0.5.20150702") (version "20190731")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/fontforge/libspiro/releases" (uri (string-append "https://github.com/fontforge/libspiro/releases"
"/download/" version "/libspiro-dist-" version ".tar.gz")) "/download/" version "/libspiro-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"153ckwj6h3wwlsgcppzqj8cymv1927hi8ar8fzpchq5q89cj2kai")))) "0m63x97b7aciviijprvy85gm03p2jsgslxn323zl9zn7qz6d3ir4"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments
'(#:configure-flags '("--disable-static")))
(synopsis "Clothoid to bezier conversion library") (synopsis "Clothoid to bezier conversion library")
(description (description
"Raph Levien's Spiro package as a library. A mechanism for drawing "Raph Levien's Spiro package as a library. A mechanism for drawing
@ -539,7 +545,7 @@ smooth contours with constant curvature at the spline joins.")
(define-public libuninameslist (define-public libuninameslist
(package (package
(name "libuninameslist") (name "libuninameslist")
(version "20190701") (version "20200313")
(home-page "https://github.com/fontforge/libuninameslist") (home-page "https://github.com/fontforge/libuninameslist")
(source (source
(origin (origin
@ -548,7 +554,7 @@ smooth contours with constant curvature at the spline joins.")
"/libuninameslist-dist-" version ".tar.gz")) "/libuninameslist-dist-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"18c9pcz81wm26q2m7npmvh9j3ibjs2hycxfh5xic2xgjfw40v2qn")))) "10ri80c64xb4rhbif3sr87y5vhi3m702zb0m02imvj1jib9rq0m8"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(synopsis "Unicode names and annotation list") (synopsis "Unicode names and annotation list")
(description (description
@ -565,15 +571,15 @@ definitions.")
(define-public fontforge (define-public fontforge
(package (package
(name "fontforge") (name "fontforge")
(version "20190801") (version "20200314")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
"https://github.com/fontforge/fontforge/releases/download/" "https://github.com/fontforge/fontforge/releases/download/"
version "/fontforge-" version ".tar.gz")) version "/fontforge-" version ".tar.xz"))
(sha256 (sha256
(base32 "0lh8yx01asbzxm6car5cfi64njh5p4lxc7iv8dldr5rwg357a86r")))) (base32 "0qf88wd6riycq56d24brybyc93ns74s0nyyavm43zp2kfcihn6fd"))))
(build-system gnu-build-system) (build-system cmake-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))
(inputs `(("cairo" ,cairo) (inputs `(("cairo" ,cairo)
@ -584,7 +590,7 @@ definitions.")
("libSM" ,libsm) ("libSM" ,libsm)
("libX11" ,libx11) ("libX11" ,libx11)
("libXi" ,libxi) ("libXi" ,libxi)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libltdl" ,libltdl) ("libltdl" ,libltdl)
("libpng" ,libpng) ("libpng" ,libpng)
("libspiro" ,libspiro) ("libspiro" ,libspiro)
@ -598,8 +604,20 @@ definitions.")
("python" ,python) ("python" ,python)
("zlib" ,zlib))) ("zlib" ,zlib)))
(arguments (arguments
'(#:phases '(#:configure-flags '(;; TODO: Provide GTK+ for the Wayland-friendly GDK
;; backend, instead of the legacy X11 backend.
;; Currently it introduces a circular dependency.
"-DENABLE_X11=ON")
#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'do-not-override-RPATH
(lambda _
;; Do not attempt to set a default RPATH, as our ld-wrapper
;; already does the right thing.
(substitute* "CMakeLists.txt"
(("^set_default_rpath\\(\\)")
""))
#t))
(add-after 'install 'set-library-path (add-after 'install 'set-library-path
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")) (let ((out (assoc-ref outputs "out"))
@ -624,6 +642,31 @@ generate bitmaps.")
(license license:gpl3+) (license license:gpl3+)
(home-page "https://fontforge.github.io"))) (home-page "https://fontforge.github.io")))
;; This is the last version that supports Python 2, which is needed for
;; GNU FreeFont. Remove once no longer required.
(define-public fontforge-20190801
(package
(inherit fontforge)
(version "20190801")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/fontforge/fontforge/releases/download/"
version "/fontforge-" version ".tar.gz"))
(sha256
(base32 "0lh8yx01asbzxm6car5cfi64njh5p4lxc7iv8dldr5rwg357a86r"))))
(build-system gnu-build-system)
(arguments
(substitute-keyword-arguments (package-arguments fontforge)
((#:configure-flags _)
''())
((#:phases phases)
`(modify-phases ,phases
(delete 'do-not-override-RPATH)))))
(inputs
`(("python" ,python-2)
,@(alist-delete "python" (package-inputs fontforge))))))
(define-public python2-ufolib (define-public python2-ufolib
(package (package
(name "python2-ufolib") (name "python2-ufolib")
@ -756,7 +799,7 @@ maintain the Noto Fonts project.")
("desktop-file-utils" ,desktop-file-utils))) ("desktop-file-utils" ,desktop-file-utils)))
(inputs (inputs
`(("json-glib" ,json-glib) `(("json-glib" ,json-glib)
("sqlite-with-column-metadata" ,sqlite-with-column-metadata) ("sqlite" ,sqlite)
("fonconfig" ,fontconfig) ("fonconfig" ,fontconfig)
("freetype" ,freetype) ("freetype" ,freetype)
("gtk+" ,gtk+))) ("gtk+" ,gtk+)))

View File

@ -532,7 +532,7 @@ of a the system to know what users are logged in, and where.")
(find-files ".." "^(kbd-model-map|language-fallback-map)$")) (find-files ".." "^(kbd-model-map|language-fallback-map)$"))
#t))))))) #t)))))))
(native-inputs (package-native-inputs elogind)) (native-inputs (package-native-inputs elogind))
(inputs `(("libmount" ,util-linux) (inputs `(("libmount" ,util-linux "lib")
("xkeyboard-config" ,xkeyboard-config) ("xkeyboard-config" ,xkeyboard-config)
("kbd" ,kbd) ("kbd" ,kbd)
,@(package-inputs elogind))) ,@(package-inputs elogind)))
@ -743,7 +743,7 @@ applications, X servers (rootless or fullscreen) or other display servers.")
("lcms" ,lcms) ("lcms" ,lcms)
("libevdev" ,libevdev) ("libevdev" ,libevdev)
("libinput" ,libinput-minimal) ("libinput" ,libinput-minimal)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libunwind" ,libunwind) ("libunwind" ,libunwind)
("libva" ,libva) ("libva" ,libva)
("libwebp" ,libwebp) ("libwebp" ,libwebp)

View File

@ -27,18 +27,17 @@
(define-public fribidi (define-public fribidi
(package (package
(replacement fribidi/fixed)
(name "fribidi") (name "fribidi")
(version "1.0.5") (version "1.0.9")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (uri
(string-append "https://github.com/fribidi/fribidi/releases" (string-append "https://github.com/fribidi/fribidi/releases"
"/download/v" version "/fribidi-" version "/download/v" version "/fribidi-" version
".tar.bz2")) ".tar.xz"))
(sha256 (sha256
(base32 "1kp4b1hpx2ky20ixgy2xhj5iygfl7ps5k9kglh1z5i7mhykg4r3a")))) (base32 "1iz06r6ha2nrgbzbn4141r58a60a9s5qiaadjjhhvdkg0alpxr65"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(synopsis "Implementation of the Unicode bidirectional algorithm") (synopsis "Implementation of the Unicode bidirectional algorithm")
(description (description
@ -48,13 +47,6 @@ or right-to-left ordering as necessary.")
(home-page "https://github.com/fribidi/fribidi") (home-page "https://github.com/fribidi/fribidi")
(license lgpl2.1+))) (license lgpl2.1+)))
(define fribidi/fixed
(package
(inherit fribidi)
(source
(origin (inherit (package-source fribidi))
(patches (search-patches "fribidi-CVE-2019-18397.patch"))))))
(define-public bidiv (define-public bidiv
(package (package
(name "bidiv") (name "bidiv")

View File

@ -533,7 +533,7 @@ clone.")
("xcb-util-image" ,xcb-util-image) ("xcb-util-image" ,xcb-util-image)
("libxrandr" ,libxrandr) ("libxrandr" ,libxrandr)
("eudev" ,eudev) ("eudev" ,eudev)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libsndfile" ,libsndfile) ("libsndfile" ,libsndfile)
("stb-image" ,stb-image) ("stb-image" ,stb-image)
("stb-image-write" ,stb-image-write))) ("stb-image-write" ,stb-image-write)))
@ -780,7 +780,7 @@ etc.")
("freetype" ,freetype) ("freetype" ,freetype)
("glu" ,glu) ("glu" ,glu)
("gtk" ,gtk+-2) ("gtk" ,gtk+-2)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libtheora" ,libtheora) ("libtheora" ,libtheora)
("libvorbis" ,libvorbis) ("libvorbis" ,libvorbis)
@ -862,7 +862,7 @@ etc.")
("curl" ,curl) ("curl" ,curl)
("freetype" ,freetype) ("freetype" ,freetype)
("giflib" ,giflib) ("giflib" ,giflib)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libwebp" ,libwebp) ("libwebp" ,libwebp)
("libx11" ,libx11) ("libx11" ,libx11)
@ -1014,7 +1014,7 @@ interface (API).")
("sdl-mixer" ,sdl-mixer) ("sdl-mixer" ,sdl-mixer)
("sdl-ttf" ,sdl-ttf) ("sdl-ttf" ,sdl-ttf)
("sdl-gfx" ,sdl-gfx) ("sdl-gfx" ,sdl-gfx)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libX11" ,libx11) ("libX11" ,libx11)
("libsmpeg" ,libsmpeg) ("libsmpeg" ,libsmpeg)
@ -1727,7 +1727,7 @@ scripted in a Python-like language.")
("libxft" ,libxft) ("libxft" ,libxft)
("libxinerama" ,libxinerama) ("libxinerama" ,libxinerama)
("libfontconfig" ,fontconfig) ("libfontconfig" ,fontconfig)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("fltk" ,fltk) ("fltk" ,fltk)
("zlib" ,zlib))) ("zlib" ,zlib)))
@ -1935,7 +1935,7 @@ of the others")
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
`(("sdl2" ,sdl2) `(("sdl2" ,sdl2)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("openal" ,openal) ("openal" ,openal)
("curl" ,curl) ("curl" ,curl)
("opusfile" ,opusfile) ("opusfile" ,opusfile)
@ -2289,7 +2289,7 @@ utilities frequently used in roguelikes.")
("curl" ,curl) ("curl" ,curl)
("freetype" ,freetype) ("freetype" ,freetype)
("ffmpeg" ,ffmpeg) ("ffmpeg" ,ffmpeg)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libogg" ,libogg) ("libogg" ,libogg)
("libpng" ,libpng) ("libpng" ,libpng)
("libtheora" ,libtheora) ("libtheora" ,libtheora)
@ -2300,7 +2300,7 @@ utilities frequently used in roguelikes.")
("qtbase" ,qtbase) ("qtbase" ,qtbase)
("qtdeclarative" ,qtdeclarative) ("qtdeclarative" ,qtdeclarative)
("sdl2" ,sdl2) ("sdl2" ,sdl2)
("uuid.h" ,util-linux) ("uuid.h" ,util-linux "lib")
("zlib" ,zlib))) ("zlib" ,zlib)))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))

View File

@ -241,7 +241,7 @@
`(("expat" ,expat) `(("expat" ,expat)
("freeglut" ,freeglut) ("freeglut" ,freeglut)
("glu" ,glu) ("glu" ,glu)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libogg" ,libogg) ("libogg" ,libogg)
("libtiff" ,libtiff) ("libtiff" ,libtiff)
("libvorbis" ,libvorbis) ("libvorbis" ,libvorbis)
@ -863,7 +863,7 @@ effects and music to make a completely free game.")
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))
(inputs (inputs
`(("glu" ,glu) `(("glu" ,glu)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libogg" ,libogg) ("libogg" ,libogg)
("libpng" ,libpng) ("libpng" ,libpng)
("libvorbis" ,libvorbis) ("libvorbis" ,libvorbis)
@ -2213,7 +2213,7 @@ are primarily in English, however some in other languages are provided.")
#:make-flags '("CC=gcc" "sharedlib"))) #:make-flags '("CC=gcc" "sharedlib")))
(inputs (inputs
`(("bzip2" ,bzip2) `(("bzip2" ,bzip2)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libx11" ,libx11) ("libx11" ,libx11)
("libxxf86vm" ,libxxf86vm) ("libxxf86vm" ,libxxf86vm)
@ -2360,7 +2360,7 @@ match, cannon keep, and grave-itation pit.")
("gmp" ,gmp) ("gmp" ,gmp)
("irrlicht" ,irrlicht) ("irrlicht" ,irrlicht)
("jsoncpp" ,jsoncpp) ("jsoncpp" ,jsoncpp)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libogg" ,libogg) ("libogg" ,libogg)
("libvorbis" ,libvorbis) ("libvorbis" ,libvorbis)
@ -2497,6 +2497,7 @@ Widgets, and allows users to create more.")
(uri (string-append "https://codeload.github.com/fifengine/" (uri (string-append "https://codeload.github.com/fifengine/"
"fifengine/tar.gz/" version)) "fifengine/tar.gz/" version))
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(patches (search-patches "fifengine-swig-compat.patch"))
(sha256 (sha256
(base32 (base32
"1y4grw25cq5iqlg05rnbyxw1njl11ypidnlsm3qy4sm3xxdvb0p8")))) "1y4grw25cq5iqlg05rnbyxw1njl11ypidnlsm3qy4sm3xxdvb0p8"))))
@ -2513,7 +2514,9 @@ Widgets, and allows users to create more.")
"/include/AL") "/include/AL")
(string-append "-DPYTHON_SITE_PACKAGES=" (string-append "-DPYTHON_SITE_PACKAGES="
(assoc-ref %outputs "out") (assoc-ref %outputs "out")
"/lib/python3.7/site-packages")) "/lib/python"
,(version-major+minor (package-version python))
"/site-packages"))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'patch-run_tests.py (add-after 'unpack 'patch-run_tests.py
@ -2602,7 +2605,7 @@ games using Python as well as C++.")
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))
(inputs (inputs
`(("freetype" ,freetype) `(("freetype" ,freetype)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libsndfile" ,libsndfile) ("libsndfile" ,libsndfile)
("libxml2" ,libxml2) ("libxml2" ,libxml2)
@ -2731,7 +2734,7 @@ This game is based on the GPL version of the famous game TuxRacer.")
("curl" ,curl) ("curl" ,curl)
;; The following input is needed to build the bundled and modified ;; The following input is needed to build the bundled and modified
;; version of irrlicht. ;; version of irrlicht.
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("openssl" ,openssl) ("openssl" ,openssl)
("enet" ,enet))) ("enet" ,enet)))
(native-inputs (native-inputs
@ -2882,20 +2885,7 @@ falling, themeable graphics and sounds, and replays.")
"1i8mz6gw3qar09bscczhki0g4scj8pl58v85rp0g55r4bcq41l5v")))) "1i8mz6gw3qar09bscczhki0g4scj8pl58v85rp0g55r4bcq41l5v"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:tests? #f ;no check target `(#:tests? #f)) ;no check target
#:phases (modify-phases %standard-phases
(add-before 'configure 'treat-boost-as-system-header
(lambda* (#:key inputs #:allow-other-keys)
(let ((boost (assoc-ref inputs "boost")))
;; Ensure Boost is treated as "system headers" to
;; pacify compiler warnings induced by Boost headers.
(for-each (lambda (variable)
(setenv variable
(string-append boost "/include:"
(or (getenv variable)
""))))
'("C_INCLUDE_PATH" "CPLUS_INCLUDE_PATH"))
#t))))))
(native-inputs (native-inputs
`(("gettext" ,gettext-minimal) `(("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config))) ("pkg-config" ,pkg-config)))
@ -4391,7 +4381,7 @@ throwing people around in pseudo-randomly generated buildings.")
(add-after 'set-paths 'set-sdl-paths (add-after 'set-paths 'set-sdl-paths
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(setenv "CPATH" (setenv "CPATH"
(string-append (getenv "CPATH") ":" (string-append (or (getenv "CPATH") "") ":"
(assoc-ref inputs "sdl-union") (assoc-ref inputs "sdl-union")
"/include/SDL")))) "/include/SDL"))))
(replace 'configure (replace 'configure
@ -4800,7 +4790,8 @@ over 100 user-created campaigns.")
(string-append (assoc-ref inputs "sdl-union") (string-append (assoc-ref inputs "sdl-union")
"/include/SDL:" "/include/SDL:"
(assoc-ref inputs "python") (assoc-ref inputs "python")
"/include/python2.7")) "/include/python2.7:"
(or (getenv "CPLUS_INCLUDE_PATH") "")))
(substitute* "src/main/main.cpp" (substitute* "src/main/main.cpp"
(("#include <SDL.h>" line) (("#include <SDL.h>" line)
(string-append line " (string-append line "
@ -5577,7 +5568,7 @@ Crowther & Woods, its original authors, in 1995. It has been known as
(setenv "CPATH" (setenv "CPATH"
(string-append (assoc-ref inputs "sdl-union") (string-append (assoc-ref inputs "sdl-union")
"/include/SDL2:" "/include/SDL2:"
(getenv "CPATH"))) (or (getenv "CPATH") "")))
#t)) #t))
(delete 'check) (delete 'check)
;; premake doesn't provide install target ;; premake doesn't provide install target
@ -5631,19 +5622,13 @@ Crowther & Woods, its original authors, in 1995. It has been known as
(copy-recursively "game" (string-append data "/game")) (copy-recursively "game" (string-append data "/game"))
;; launcher ;; launcher
(mkdir-p applications) (mkdir-p applications)
(with-output-to-file (string-append applications "/" (make-desktop-entry-file
,name ".desktop") (string-append applications "/" ,name ".desktop")
(lambda () #:name "ToME4"
(display #:comment ,synopsis
(string-append #:exec ,name
"[Desktop Entry] #:icon icon
Name=ToME4 #:categories '("Game" "RolePlaying")))
Comment=" ,synopsis "\n"
"Exec=" ,name "\n"
"Icon=" icon "\n"
"Terminal=false
Type=Application
Categories=Game;RolePlaying;\n")))))
#t))))) #t)))))
(home-page "https://te4.org") (home-page "https://te4.org")
(description "Tales of MajEyal (ToME) RPG, featuring tactical turn-based (description "Tales of MajEyal (ToME) RPG, featuring tactical turn-based
@ -6100,7 +6085,7 @@ You can save humanity and get programming skills!")
("fluidsynth" ,fluidsynth) ("fluidsynth" ,fluidsynth)
("gtk+3" ,gtk+) ("gtk+3" ,gtk+)
("libgme" ,libgme) ("libgme" ,libgme)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libsndfile" ,libsndfile) ("libsndfile" ,libsndfile)
("mesa" ,mesa) ("mesa" ,mesa)
("mpg123" ,mpg123) ("mpg123" ,mpg123)
@ -6557,7 +6542,7 @@ quotation from a collection of quotes.")
`(("xonotic-data" ,xonotic-data) `(("xonotic-data" ,xonotic-data)
("alsa-lib" ,alsa-lib) ("alsa-lib" ,alsa-lib)
("curl" ,curl) ("curl" ,curl)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libmodplug" ,libmodplug) ("libmodplug" ,libmodplug)
("libvorbis" ,libvorbis) ("libvorbis" ,libvorbis)
("libogg" ,libogg) ("libogg" ,libogg)
@ -7988,22 +7973,18 @@ on items and player adaptability for character progression.")
;; game, so we borrow SCUMMVM's. ;; game, so we borrow SCUMMVM's.
(let ((apps (string-append out "/share/applications"))) (let ((apps (string-append out "/share/applications")))
(mkdir-p apps) (mkdir-p apps)
(with-output-to-file (string-append apps "/drascula.desktop") (make-desktop-entry-file
(lambda _ (string-append apps "/drascula.desktop")
(format #t #:name "Drascula: The Vampire Strikes Back"
"[Desktop Entry]~@ #:generic-name "Drascula"
Name=Drascula: The Vampire Strikes Back~@ #:exec (string-append out "/bin/drascula")
GenericName=Drascula~@ #:icon (string-append scummvm "/share/icons/hicolor/scalable/apps/scummvm.svg")
Exec=~a/bin/drascula~@ #:categories '("AdventureGame" "Game" "RolePlaying")
Icon=~a/share/icons/hicolor/scalable/apps/scummvm.svg~@ #:keywords '("game" "adventure" "roleplaying" "2D" "fantasy")
Categories=AdventureGame;Game;RolePlaying;~@ #:comment '((#f "Classic 2D point and click adventure game")
Keywords=game;adventure;roleplaying;2D,fantasy;~@ ("de" "Klassisches 2D-Abenteuerspiel in Zeigen-und-Klicken-Manier")
Comment=Classic 2D point and click adventure game~@ ("fr" "Jeu classique d'aventure pointer-et-cliquer en 2D")
Comment[de]=klassisches 2D-Abenteuerspiel in Zeigen-und-Klicken-Manier~@ ("it" "Gioco classico di avventura punta e clicca 2D"))))
Comment[fr]=Jeux classique d'aventure pointer-et-cliquer en 2D~@
Comment[it]=Gioco classico di avventura punta e clicca 2D~@
Type=Application~%"
out scummvm))))
#t)))) #t))))
(native-inputs (native-inputs
`(("bash" ,bash) `(("bash" ,bash)
@ -10246,7 +10227,7 @@ This package is part of the KDE games module.")
`(("curl" ,curl) `(("curl" ,curl)
("font-dejavu" ,font-dejavu) ("font-dejavu" ,font-dejavu)
("glu" ,glu) ("glu" ,glu)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libxdg-basedir" ,libxdg-basedir) ("libxdg-basedir" ,libxdg-basedir)
("libxml2" ,libxml2) ("libxml2" ,libxml2)
@ -10565,7 +10546,7 @@ kingdom.")
(native-inputs (native-inputs
`(("gettext" ,gettext-minimal))) ;for msgfmt `(("gettext" ,gettext-minimal))) ;for msgfmt
(inputs (inputs
`(("libjpeg" ,libjpeg) `(("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libvorbis" ,libvorbis) ("libvorbis" ,libvorbis)
("physfs" ,physfs) ("physfs" ,physfs)

View File

@ -6,7 +6,7 @@
;;; Copyright © 2015, 2016, 2017, 2018, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2015, 2016, 2017, 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Carlos Sánchez de La Lama <csanchezdll@gmail.com> ;;; Copyright © 2016 Carlos Sánchez de La Lama <csanchezdll@gmail.com>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2018, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Joseph LaFreniere <joseph@lafreniere.xyz> ;;; Copyright © 2020 Joseph LaFreniere <joseph@lafreniere.xyz>
;;; Copyright © 2020 Guy Fleury Iteriteka <gfleury@disroot.org> ;;; Copyright © 2020 Guy Fleury Iteriteka <gfleury@disroot.org>
;;; ;;;
@ -342,7 +342,9 @@ where the OS part is overloaded to denote a specific ABI---into GCC
(files '("include"))) (files '("include")))
(search-path-specification (search-path-specification
(variable "CPLUS_INCLUDE_PATH") (variable "CPLUS_INCLUDE_PATH")
(files '("include"))) ;; Add 'include/c++' here so that <cstdlib>'s "#include_next
;; <stdlib.h>" finds GCC's <stdlib.h>, not libc's.
(files '("include/c++" "include")))
(search-path-specification (search-path-specification
(variable "LIBRARY_PATH") (variable "LIBRARY_PATH")
(files '("lib" "lib64"))))) (files '("lib" "lib64")))))
@ -402,6 +404,7 @@ Go. It also includes runtime support libraries for these languages.")
"14l06m7nvcvb0igkbip58x59w3nq6315k6jcz3wr9ch1rn9d44bc")) "14l06m7nvcvb0igkbip58x59w3nq6315k6jcz3wr9ch1rn9d44bc"))
(patches (search-patches "gcc-4.9-libsanitizer-fix.patch" (patches (search-patches "gcc-4.9-libsanitizer-fix.patch"
"gcc-4.9-libsanitizer-ustat.patch" "gcc-4.9-libsanitizer-ustat.patch"
"gcc-4.9-libsanitizer-mode-size.patch"
"gcc-arm-bug-71399.patch" "gcc-arm-bug-71399.patch"
"gcc-asan-missing-include.patch" "gcc-asan-missing-include.patch"
"gcc-libvtv-runpath.patch" "gcc-libvtv-runpath.patch"
@ -421,7 +424,33 @@ Go. It also includes runtime support libraries for these languages.")
#t)))) #t))))
;; Override inherited texinfo-5 with latest version. ;; Override inherited texinfo-5 with latest version.
(native-inputs `(("perl" ,perl) ;for manpages (native-inputs `(("perl" ,perl) ;for manpages
("texinfo" ,texinfo))))) ("texinfo" ,texinfo)))
(arguments
(if (%current-target-system)
(package-arguments gcc-4.8)
;; For native builds of GCC 4.9 and GCC 5, the C++ include path needs
;; to be adjusted so it does not interfere with GCC's own build processes.
(substitute-keyword-arguments (package-arguments gcc-4.8)
((#:modules modules %gnu-build-system-modules)
`((srfi srfi-1)
,@modules))
((#:phases phases)
`(modify-phases ,phases
(add-after 'set-paths 'adjust-CPLUS_INCLUDE_PATH
(lambda* (#:key inputs #:allow-other-keys)
(let ((libc (assoc-ref inputs "libc"))
(gcc (assoc-ref inputs "gcc")))
(setenv "CPLUS_INCLUDE_PATH"
(string-join (fold delete
(string-split (getenv "CPLUS_INCLUDE_PATH")
#\:)
(list (string-append libc "/include")
(string-append gcc "/include/c++")))
":"))
(format #t
"environment variable `CPLUS_INCLUDE_PATH' changed to ~a~%"
(getenv "CPLUS_INCLUDE_PATH"))
#t))))))))))
(define-public gcc-5 (define-public gcc-5
;; Note: GCC >= 5 ships with .info files but 'make install' fails to install ;; Note: GCC >= 5 ships with .info files but 'make install' fails to install
@ -441,7 +470,9 @@ Go. It also includes runtime support libraries for these languages.")
"gcc-5.0-libvtv-runpath.patch" "gcc-5.0-libvtv-runpath.patch"
"gcc-5-source-date-epoch-1.patch" "gcc-5-source-date-epoch-1.patch"
"gcc-5-source-date-epoch-2.patch" "gcc-5-source-date-epoch-2.patch"
"gcc-fix-texi2pod.patch")) "gcc-6-libsanitizer-mode-size.patch"
"gcc-fix-texi2pod.patch"
"gcc-5-hurd.patch"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
;; Fix 'libcc1/configure' error when cross-compiling GCC. ;; Fix 'libcc1/configure' error when cross-compiling GCC.
@ -473,35 +504,31 @@ Go. It also includes runtime support libraries for these languages.")
(base32 (base32
"0i89fksfp6wr1xg9l8296aslcymv2idn60ip31wr9s4pwin7kwby")) "0i89fksfp6wr1xg9l8296aslcymv2idn60ip31wr9s4pwin7kwby"))
(patches (search-patches "gcc-strmov-store-file-names.patch" (patches (search-patches "gcc-strmov-store-file-names.patch"
"gcc-6-libsanitizer-mode-size.patch"
"gcc-6-source-date-epoch-1.patch" "gcc-6-source-date-epoch-1.patch"
"gcc-6-source-date-epoch-2.patch" "gcc-6-source-date-epoch-2.patch"
"gcc-5.0-libvtv-runpath.patch")))) "gcc-5.0-libvtv-runpath.patch"))))
;; GCC 4.9 and 5 has a workaround that is not needed for GCC 6 and later.
(arguments (package-arguments gcc-4.8))
(inputs (inputs
`(("isl" ,isl) `(("isl" ,isl)
,@(package-inputs gcc-4.7))) ,@(package-inputs gcc-4.7)))))
(native-search-paths
;; We have to use 'CPATH' for GCC > 5, not 'C_INCLUDE_PATH' & co., due to
;; <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70129>.
(list (search-path-specification
(variable "CPATH")
(files '("include")))
(search-path-specification
(variable "LIBRARY_PATH")
(files '("lib" "lib64")))))))
(define-public gcc-7 (define-public gcc-7
(package (package
(inherit gcc-6) (inherit gcc-6)
(version "7.4.0") (version "7.5.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/gcc/gcc-" (uri (string-append "mirror://gnu/gcc/gcc-"
version "/gcc-" version ".tar.xz")) version "/gcc-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0lgy170b0pp60j9cczqkmaqyjjb584vfamj4c30swd7k0j6y5pgd")) "0qg6kqc5l72hpnj4vr6l0p69qav0rh4anlkk3y55540zy3klc6dq"))
(patches (search-patches "gcc-strmov-store-file-names.patch" (patches (search-patches "gcc-strmov-store-file-names.patch"
"gcc-7-libsanitizer-mode-size.patch"
"gcc-5.0-libvtv-runpath.patch")))) "gcc-5.0-libvtv-runpath.patch"))))
(description (description
"GCC is the GNU Compiler Collection. It provides compiler front-ends "GCC is the GNU Compiler Collection. It provides compiler front-ends
@ -628,12 +655,12 @@ as the 'native-search-paths' field."
(native-search-paths search-paths) (native-search-paths search-paths)
(properties (alist-delete 'hidden? (package-properties gcc))) (properties (alist-delete 'hidden? (package-properties gcc)))
(arguments (arguments
(substitute-keyword-arguments `(#:modules ((guix build gnu-build-system) (substitute-keyword-arguments (package-arguments gcc)
(guix build utils) ((#:modules modules %gnu-build-system-modules)
(ice-9 regex) `(,@modules
(srfi srfi-1) (srfi srfi-1)
(srfi srfi-26)) (srfi srfi-26)
,@(package-arguments gcc)) (ice-9 regex)))
((#:configure-flags flags) ((#:configure-flags flags)
`(cons (string-append "--enable-languages=" `(cons (string-append "--enable-languages="
,(string-join languages ",")) ,(string-join languages ","))
@ -911,7 +938,7 @@ as the 'native-search-paths' field."
(define-public isl (define-public isl
(package (package
(name "isl") (name "isl")
(version "0.21") (version "0.22.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (list (string-append (uri (list (string-append
@ -922,8 +949,27 @@ as the 'native-search-paths' field."
name "-" version ".tar.bz2"))) name "-" version ".tar.bz2")))
(sha256 (sha256
(base32 (base32
"0ng8l3q1px9lkzb44nxnzhh6fhdbclrwng9xs2v9m8yii8gs336i")))) "1kf54jib0nind1pvakblnfhimmwzm0y1llz8470ag0di5vwqwrhs"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(outputs '("out" "static"))
(arguments
'(#:phases (modify-phases %standard-phases
(add-after 'install 'move-static-library
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(static (assoc-ref outputs "static"))
(source (string-append out "/lib/libisl.a"))
(target (string-append static "/lib/libisl.a")))
(mkdir-p (dirname target))
(link source target)
(delete-file source)
;; Remove reference to libisl.a from the .la file so
;; libtool looks for it in the usual locations.
(substitute* (string-append out "/lib/libisl.la")
(("^old_library=.*")
"old_library=''\n"))
#t))))))
(inputs `(("gmp" ,gmp))) (inputs `(("gmp" ,gmp)))
(home-page "http://isl.gforge.inria.fr/") (home-page "http://isl.gforge.inria.fr/")
(synopsis (synopsis

View File

@ -42,7 +42,7 @@
;; Note: With libgd.org now pointing to github.com, genuine old ;; Note: With libgd.org now pointing to github.com, genuine old
;; tarballs are no longer available. Notably, versions 2.0.x are ;; tarballs are no longer available. Notably, versions 2.0.x are
;; missing. ;; missing.
(version "2.2.5") (version "2.3.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -50,19 +50,15 @@
version "/libgd-" version ".tar.xz")) version "/libgd-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0lfy5f241sbv8s3splm2zqiaxv7lxrcshh875xryryk7yk5jqc4c")) "0n5czhxzinvjvmhkf5l9fwjdx5ip69k5k7pj6zwb6zs1k9dibngc"))
(patches (search-patches "gd-fix-tests-on-i686.patch"
(patches (search-patches "gd-CVE-2018-5711.patch" "gd-brect-bounds.patch"))))
"gd-CVE-2018-1000222.patch"
"gd-CVE-2019-6977.patch"
"gd-CVE-2019-6978.patch"
"gd-fix-tests-on-i686.patch"
"gd-freetype-test-failure.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
;; As recommended by github.com/libgd/libgd/issues/278 to fix rounding ;; As recommended by github.com/libgd/libgd/issues/278 to fix rounding
;; issues on aarch64 and other architectures. ;; issues on aarch64 and other architectures.
`(#:make-flags '("CFLAGS=-ffp-contract=off") `(#:make-flags '("CFLAGS=-ffp-contract=off")
#:configure-flags '("--disable-static")
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
;; This test is known to fail on i686-linux: ;; This test is known to fail on i686-linux:
@ -77,12 +73,11 @@
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))
(inputs (inputs
`(("freetype" ,freetype) `(("fontconfig" ,fontconfig)
("freetype" ,freetype)
("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("zlib" ,zlib))) ("zlib" ,zlib)))
(propagated-inputs
`(("fontconfig" ,fontconfig)
("libjpeg" ,libjpeg)))
(home-page "https://www.libgd.org/") (home-page "https://www.libgd.org/")
(synopsis "Library for the dynamic creation of images by programmers") (synopsis "Library for the dynamic creation of images by programmers")
(description (description
@ -113,8 +108,10 @@ most common applications of GD involve website development.")
("freetype" ,freetype) ("freetype" ,freetype)
("gd" ,gd) ("gd" ,gd)
("libpng" ,libpng) ("libpng" ,libpng)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("zlib" ,zlib))) ("zlib" ,zlib)))
(native-inputs
`(("perl-extutils-pkgconfig" ,perl-extutils-pkgconfig)))
(arguments (arguments
`(#:make-maker-flags `(#:make-maker-flags
(list (string-append "--lib_jpeg_path=" (list (string-append "--lib_jpeg_path="

View File

@ -92,7 +92,6 @@
("readline" ,readline) ("readline" ,readline)
("ncurses" ,ncurses) ("ncurses" ,ncurses)
("guile" ,guile-2.0) ("guile" ,guile-2.0)
("python" ,python)
("python-wrapper" ,python-wrapper) ("python-wrapper" ,python-wrapper)
("dejagnu" ,dejagnu) ("dejagnu" ,dejagnu)
("source-highlight" ,source-highlight) ("source-highlight" ,source-highlight)

View File

@ -140,7 +140,7 @@ topology functions.")
(define-public gnome-maps (define-public gnome-maps
(package (package
(name "gnome-maps") (name "gnome-maps")
(version "3.32.2.1") (version "3.34.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -148,7 +148,7 @@ topology functions.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1m191iq1gjaqz79ci3dkbmwrkxp7pzknngimlf5bqib5x8yairlb")))) "00xslcnhhwslqglgfv2im7vq3awa49y2jxzr8wsby7f713k28vf5"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:glib-or-gtk? #t `(#:glib-or-gtk? #t
@ -189,11 +189,12 @@ topology functions.")
,geocode-glib-path))) ,geocode-glib-path)))
#t)))))) #t))))))
(native-inputs (native-inputs
`(("gobject-introspection" ,gobject-introspection) `(("gettext" ,gettext-minimal)
("intltool" ,intltool) ("gobject-introspection" ,gobject-introspection)
("pkg-config" ,pkg-config))) ("pkg-config" ,pkg-config)))
(inputs (inputs
`(("folks" ,folks) `(("evolution-data-server" ,evolution-data-server)
("folks" ,folks)
("libchamplain" ,libchamplain) ("libchamplain" ,libchamplain)
("libgee" ,libgee) ("libgee" ,libgee)
("libsecret" ,libsecret) ("libsecret" ,libsecret)
@ -209,10 +210,9 @@ topology functions.")
("glib" ,glib) ("glib" ,glib)
("gnome-online-accounts:lib" ,gnome-online-accounts "lib") ("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
("gsettings-desktop-schemas" ,gsettings-desktop-schemas) ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
("gtk+" ,gtk+)
("rest" ,rest) ("rest" ,rest)
("webkitgtk" ,webkitgtk))) ("webkitgtk" ,webkitgtk)))
(propagated-inputs
`(("gtk+3" ,gtk+)))
(synopsis "Graphical map viewer and wayfinding program") (synopsis "Graphical map viewer and wayfinding program")
(description "GNOME Maps is a graphical map viewer. It uses map data from (description "GNOME Maps is a graphical map viewer. It uses map data from
the OpenStreetMap project. It can provide directions for walking, bicycling, the OpenStreetMap project. It can provide directions for walking, bicycling,
@ -1444,7 +1444,7 @@ using the dataset of topographical information collected by
("qtwebengine" ,qtwebengine) ("qtwebengine" ,qtwebengine)
("quazip" ,quazip) ("quazip" ,quazip)
("routino" ,routino) ("routino" ,routino)
("sqlite" ,sqlite-with-column-metadata) ; See wrap phase ("sqlite" ,sqlite) ; See wrap phase
("zlib" ,zlib))) ("zlib" ,zlib)))
(arguments (arguments
`(#:tests? #f `(#:tests? #f
@ -1465,23 +1465,15 @@ using the dataset of topographical information collected by
(invoke "patch" "-p1" "-i" "FindQuaZip5.patch") (invoke "patch" "-p1" "-i" "FindQuaZip5.patch")
#t)) #t))
(add-after 'install 'wrap (add-after 'install 'wrap
;; The program fails to run with the error: ;; The program fails to find the QtWebEngineProcess program,
;; undefined symbol: sqlite3_column_table_name16
;; Forcing the program to use sqlite-with-column-metadata instead
;; of sqlite using LD_LIBRARY_PATH solves the problem.
;;
;; The program also fails to find the QtWebEngineProcess program,
;; so we set QTWEBENGINEPROCESS_PATH to help it. ;; so we set QTWEBENGINEPROCESS_PATH to help it.
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(let ((bin (string-append (assoc-ref outputs "out") "/bin")) (let ((bin (string-append (assoc-ref outputs "out") "/bin"))
(qtwebengineprocess (string-append (qtwebengineprocess (string-append
(assoc-ref inputs "qtwebengine") (assoc-ref inputs "qtwebengine")
"/lib/qt5/libexec/QtWebEngineProcess")) "/lib/qt5/libexec/QtWebEngineProcess")))
(sqlite-lib (string-append (assoc-ref inputs "sqlite")
"/lib")))
(for-each (lambda (program) (for-each (lambda (program)
(wrap-program program (wrap-program program
`("LD_LIBRARY_PATH" ":" prefix (,sqlite-lib))
`("QTWEBENGINEPROCESS_PATH" = `("QTWEBENGINEPROCESS_PATH" =
(,qtwebengineprocess)))) (,qtwebengineprocess))))
(find-files bin ".*"))) (find-files bin ".*")))
@ -1993,7 +1985,7 @@ growing set of geoscientific methods.")
("qtwebkit" ,qtwebkit) ("qtwebkit" ,qtwebkit)
("qwt" ,qwt) ("qwt" ,qwt)
("saga" ,saga) ("saga" ,saga)
("sqlite" ,sqlite-with-column-metadata))) ("sqlite" ,sqlite)))
(native-inputs (native-inputs
`(("bison" ,bison) `(("bison" ,bison)
("flex" ,flex) ("flex" ,flex)

View File

@ -7,7 +7,8 @@
;;; Copyright © 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2018, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -57,7 +58,9 @@
(sha256 (base32 (sha256 (base32
"083xisy6z01zhm7p7rgk4bx9d6zlr8l20qkfv1g29ylnhgwzvij8")))) "083xisy6z01zhm7p7rgk4bx9d6zlr8l20qkfv1g29ylnhgwzvij8"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs `(("libjpeg" ,libjpeg) (arguments
`(#:configure-flags '("--disable-static")))
(inputs `(("libjpeg" ,libjpeg-turbo)
("libtiff" ,libtiff) ("libtiff" ,libtiff)
("zlib" ,zlib))) ("zlib" ,zlib)))
(synopsis "Little CMS, a small-footprint colour management engine") (synopsis "Little CMS, a small-footprint colour management engine")
@ -84,6 +87,25 @@ Consortium standard (ICC), approved as ISO 15076-1.")
(sha256 (base32 (sha256 (base32
"0zhcx67afb6b5r936w5jmaydj3ks8zh83n9rm5sv3m3k8q8jib1q")))) "0zhcx67afb6b5r936w5jmaydj3ks8zh83n9rm5sv3m3k8q8jib1q"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs
`(("automake" ,automake))) ; For up to date 'config.guess' and 'config.sub'.
(arguments
`(#:configure-flags '("--disable-static")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-configure
(lambda* (#:key inputs native-inputs #:allow-other-keys)
;; Replace outdated config.sub and config.guess:
(for-each (lambda (file)
(install-file
(string-append (assoc-ref
(or native-inputs inputs) "automake")
"/share/automake-"
,(version-major+minor
(package-version automake))
"/" file) "."))
'("config.sub" "config.guess"))
#t)))))
(synopsis "Library for handling paper sizes") (synopsis "Library for handling paper sizes")
(description (description
"The paper library and accompanying files are intended to provide a simple "The paper library and accompanying files are intended to provide a simple
@ -137,13 +159,7 @@ printing, and psresize, for adjusting page sizes.")
(define-public ghostscript (define-public ghostscript
(package (package
(name "ghostscript") (name "ghostscript")
(version "9.27") (version "9.52")
;; The problems addressed by GHOSTSCRIPT/FIXED are not security-related,
;; but they have a significant impact on usability, hence this graft.
;; TODO: Ungraft on next update cycle.
(replacement ghostscript/fixed)
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -153,7 +169,7 @@ printing, and psresize, for adjusting page sizes.")
"/ghostscript-" version ".tar.xz")) "/ghostscript-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"06dnj0mxyaryfbwlsjwaqf847w91w2h8f108kxxcc41nrnx1y3zw")) "0z1w42y2jmcpl2m1l3z0sfii6zmvzcwcgzn6bydklia6ig7jli2p"))
(patches (search-patches "ghostscript-no-header-creationdate.patch" (patches (search-patches "ghostscript-no-header-creationdate.patch"
"ghostscript-no-header-id.patch" "ghostscript-no-header-id.patch"
"ghostscript-no-header-uuid.patch")) "ghostscript-no-header-uuid.patch"))
@ -186,6 +202,10 @@ printing, and psresize, for adjusting page sizes.")
(string-append "ZLIBDIR=" (string-append "ZLIBDIR="
(assoc-ref %build-inputs "zlib") "/include") (assoc-ref %build-inputs "zlib") "/include")
"--enable-dynamic" "--enable-dynamic"
"--disable-compile-inits"
(string-append "--with-fontpath="
(assoc-ref %build-inputs "gs-fonts")
"/share/fonts/type1/ghostscript")
,@(if (%current-target-system) ,@(if (%current-target-system)
'(;; Specify the native compiler, which is used to build 'echogs' '(;; Specify the native compiler, which is used to build 'echogs'
@ -213,10 +233,6 @@ printing, and psresize, for adjusting page sizes.")
(substitute* "base/gscdef.c" (substitute* "base/gscdef.c"
(("GS_DOCDIR") (("GS_DOCDIR")
"\"~/.guix-profile/share/doc/ghostscript\"")) "\"~/.guix-profile/share/doc/ghostscript\""))
;; The docdir default changed in 9.23 and a compatibility
;; symlink was added from datadir->docdir. Remove it.
(substitute* "base/unixinst.mak"
(("ln -s \\$\\(DESTDIR\\)\\$\\(docdir\\).*") ""))
#t)) #t))
(add-after 'configure 'patch-config-files (add-after 'configure 'patch-config-files
(lambda _ (lambda _
@ -249,6 +265,7 @@ printing, and psresize, for adjusting page sizes.")
#t)))))) #t))))))
(native-inputs (native-inputs
`(("perl" ,perl) `(("perl" ,perl)
("pkg-config" ,pkg-config) ;needed for freetype
("python" ,python-wrapper) ("python" ,python-wrapper)
("tcl" ,tcl) ("tcl" ,tcl)
@ -256,12 +273,14 @@ printing, and psresize, for adjusting page sizes.")
;; these libraries. ;; these libraries.
,@(if (%current-target-system) ,@(if (%current-target-system)
`(("zlib/native" ,zlib) `(("zlib/native" ,zlib)
("libjpeg/native" ,libjpeg)) ("libjpeg/native" ,libjpeg-turbo))
'()))) '())))
(inputs (inputs
`(("freetype" ,freetype) `(("fontconfig" ,fontconfig)
("freetype" ,freetype)
("gs-fonts" ,gs-fonts)
("jbig2dec" ,jbig2dec) ("jbig2dec" ,jbig2dec)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libpaper" ,libpaper) ("libpaper" ,libpaper)
("libpng" ,libpng) ("libpng" ,libpng)
("libtiff" ,libtiff) ("libtiff" ,libtiff)
@ -275,25 +294,6 @@ output file formats and printers.")
(home-page "https://www.ghostscript.com/") (home-page "https://www.ghostscript.com/")
(license license:agpl3+))) (license license:agpl3+)))
(define ghostscript/fixed
;; This adds the Freetype dependency (among other things), which fixes the
;; rendering issues described in <https://issues.guix.gnu.org/issue/34877>.
(package/inherit
ghostscript
(arguments
(substitute-keyword-arguments (package-arguments ghostscript)
((#:configure-flags flags ''())
`(append (list "--disable-compile-inits"
(string-append "--with-fontpath="
(assoc-ref %build-inputs "gs-fonts")
"/share/fonts/type1/ghostscript"))
,flags))))
(native-inputs `(("pkg-config" ,pkg-config) ;needed for freetype
,@(package-native-inputs ghostscript)))
(inputs `(("gs-fonts" ,gs-fonts)
("fontconfig" ,fontconfig)
,@(package-inputs ghostscript)))))
(define-public ghostscript/x (define-public ghostscript/x
(package/inherit ghostscript (package/inherit ghostscript
(name (string-append (package-name ghostscript) "-with-x")) (name (string-append (package-name ghostscript) "-with-x"))

View File

@ -5,6 +5,7 @@
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Leo Famulari <leo@famulari.name> ;;; Copyright © 2018 Leo Famulari <leo@famulari.name>
;;; Copyright © 2018 Thorsten Wilms <t_w_@freenet.de> ;;; Copyright © 2018 Thorsten Wilms <t_w_@freenet.de>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -117,7 +118,7 @@ provided, as well as a framework to add new color models and data types.")
`(("cairo" ,cairo) `(("cairo" ,cairo)
("pango" ,pango) ("pango" ,pango)
("libpng" ,libpng) ("libpng" ,libpng)
("libjpeg" ,libjpeg))) ("libjpeg" ,libjpeg-turbo)))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
("glib" ,glib "bin") ; for gtester ("glib" ,glib "bin") ; for gtester
@ -151,9 +152,16 @@ buffers.")
(list (string-append "--with-html-dir=" (list (string-append "--with-html-dir="
(assoc-ref %outputs "doc") (assoc-ref %outputs "doc")
"/share/gtk-doc/html") "/share/gtk-doc/html")
;; Prevent the build system from running 'gtk-update-icon-cache'
;; which is not needed during the build because Guix runs it at
;; profile creation time.
"ac_cv_path_GTK_UPDATE_ICON_CACHE=true"
;; Disable automatic network request on startup to check for ;; Disable automatic network request on startup to check for
;; version updates. ;; version updates.
"--disable-check-update" "--disable-check-update"
;; ./configure requests not to annoy upstream with packaging bugs. ;; ./configure requests not to annoy upstream with packaging bugs.
"--with-bug-report-url=https://bugs.gnu.org/guix") "--with-bug-report-url=https://bugs.gnu.org/guix")
#:phases #:phases
@ -178,7 +186,7 @@ buffers.")
("glib-networking" ,glib-networking) ("glib-networking" ,glib-networking)
("libtiff" ,libtiff) ("libtiff" ,libtiff)
("libwebp" ,libwebp) ("libwebp" ,libwebp)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("atk" ,atk) ("atk" ,atk)
("gexiv2" ,gexiv2) ("gexiv2" ,gexiv2)
("gtk+" ,gtk+-2) ("gtk+" ,gtk+-2)

View File

@ -294,7 +294,7 @@ also known as DXTn or DXTC) for Mesa.")
'(,@(match (%current-system) '(,@(match (%current-system)
((or "armhf-linux" "aarch64-linux") ((or "armhf-linux" "aarch64-linux")
;; TODO: Fix svga driver for aarch64 and armhf. ;; TODO: Fix svga driver for aarch64 and armhf.
'("-Dgallium-drivers=etnaviv,freedreno,nouveau,r300,r600,swrast,tegra,v3d,vc4,virgl")) '("-Dgallium-drivers=etnaviv,freedreno,kmsro,lima,nouveau,panfrost,r300,r600,swrast,tegra,v3d,vc4,virgl"))
(_ (_
'("-Dgallium-drivers=iris,nouveau,r300,r600,radeonsi,svga,swrast,virgl"))) '("-Dgallium-drivers=iris,nouveau,r300,r600,radeonsi,svga,swrast,virgl")))
;; Enable various optional features. TODO: opencl requires libclc, ;; Enable various optional features. TODO: opencl requires libclc,

View File

@ -11,7 +11,7 @@
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org> ;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -105,6 +105,9 @@
;; Install the session bus socket under /tmp. ;; Install the session bus socket under /tmp.
"--with-session-socket-dir=/tmp" "--with-session-socket-dir=/tmp"
;; Build shared libraries only.
"--disable-static"
;; Use /etc/dbus-1 for system-wide config. ;; Use /etc/dbus-1 for system-wide config.
;; Look for configuration file under ;; Look for configuration file under
;; /etc/dbus-1. This is notably required by ;; /etc/dbus-1. This is notably required by
@ -162,7 +165,7 @@ shared NFS home directories.")
(define glib (define glib
(package (package
(name "glib") (name "glib")
(version "2.60.6") (version "2.62.6")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" (uri (string-append "mirror://gnome/sources/"
@ -170,7 +173,7 @@ shared NFS home directories.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0v7vpx2md1gn0wwiirn7g4bhf2csfvcr03y96q2zv97ain6sp3zz")) "174bsmbmcvaw69ff9g60q5sx0fn23rkhqcwqz17h5s7sprps4kqh"))
(patches (search-patches "glib-tests-timer.patch")) (patches (search-patches "glib-tests-timer.patch"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
@ -185,11 +188,9 @@ shared NFS home directories.")
`(("pcre" ,pcre) ; in the Requires.private field of glib-2.0.pc `(("pcre" ,pcre) ; in the Requires.private field of glib-2.0.pc
("libffi" ,libffi) ; in the Requires.private field of gobject-2.0.pc ("libffi" ,libffi) ; in the Requires.private field of gobject-2.0.pc
;; These are in the Requires.private field of gio-2.0.pc ;; These are in the Requires.private field of gio-2.0.pc
("util-linux" ,util-linux) ; for libmount ("util-linux" ,util-linux "lib") ;for libmount
("libselinux" ,libselinux) ("libselinux" ,libselinux)
("zlib" ,zlib))) ("zlib" ,zlib)))
(inputs
`(("coreutils" ,coreutils)))
(native-inputs (native-inputs
`(("gettext" ,gettext-minimal) `(("gettext" ,gettext-minimal)
("m4" ,m4) ; for installing m4 macros ("m4" ,m4) ; for installing m4 macros
@ -199,11 +200,26 @@ shared NFS home directories.")
("perl" ,perl) ; needed by GIO tests ("perl" ,perl) ; needed by GIO tests
("tzdata" ,tzdata-for-tests))) ; for tests/gdatetime.c ("tzdata" ,tzdata-for-tests))) ; for tests/gdatetime.c
(arguments (arguments
`(;; TODO: Uncomment on the next rebuild cycle. `(#:disallowed-references (,tzdata-for-tests)
;; #:disallowed-references (,tzdata-for-tests)
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'patch-dbus-launch-path
(lambda* (#:key inputs #:allow-other-keys)
(let ((dbus (assoc-ref inputs "dbus")))
(substitute* "gio/gdbusaddress.c"
(("command_line = g_strdup_printf \\(\"dbus-launch")
(string-append "command_line = g_strdup_printf (\""
dbus "/bin/dbus-launch")))
#t)))
(add-after 'unpack 'patch-gio-launch-desktop
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
;; See also <https://gitlab.gnome.org/GNOME/glib/issues/1633>
;; for another future fix.
(substitute* "gio/gdesktopappinfo.c"
(("gio-launch-desktop")
(string-append out "/libexec/gio-launch-desktop")))
#t)))
(add-before 'build 'pre-build (add-before 'build 'pre-build
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
;; For tests/gdatetime.c. ;; For tests/gdatetime.c.
@ -284,7 +300,7 @@ shared NFS home directories.")
(;; Requires /etc/machine-id. (;; Requires /etc/machine-id.
"/gdbus/codegen-peer-to-peer")) "/gdbus/codegen-peer-to-peer"))
("gio/tests/gdbus-unix-addresses.c" ("gio/tests/gdbus-address-get-session.c"
(;; Requires /etc/machine-id. (;; Requires /etc/machine-id.
"/gdbus/x11-autolaunch")) "/gdbus/x11-autolaunch"))
@ -312,6 +328,13 @@ shared NFS home directories.")
(mkdir-p bin) (mkdir-p bin)
(rename-file (string-append out "/bin") (rename-file (string-append out "/bin")
(string-append bin "/bin")) (string-append bin "/bin"))
;; This one is an implementation detail of glib.
;; It is wrong that that's in "/bin" in the first place,
;; but that's what upstream is doing right now.
;; See <https://gitlab.gnome.org/GNOME/glib/issues/1633>.
(mkdir (string-append out "/libexec"))
(rename-file (string-append bin "/bin/gio-launch-desktop")
(string-append out "/libexec/gio-launch-desktop"))
;; Do not refer to "bindir", which points to "${prefix}/bin". ;; Do not refer to "bindir", which points to "${prefix}/bin".
;; We don't patch "bindir" to point to "$bin/bin", because that ;; We don't patch "bindir" to point to "$bin/bin", because that
;; would create a reference cycle between the "out" and "bin" ;; would create a reference cycle between the "out" and "bin"
@ -380,14 +403,14 @@ dynamic loading, and an object system.")
(define gobject-introspection (define gobject-introspection
(package (package
(name "gobject-introspection") (name "gobject-introspection")
(version "1.60.2") (version "1.62.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" (uri (string-append "mirror://gnome/sources/"
"gobject-introspection/" (version-major+minor version) "gobject-introspection/" (version-major+minor version)
"/gobject-introspection-" version ".tar.xz")) "/gobject-introspection-" version ".tar.xz"))
(sha256 (sha256
(base32 "172ymc1vbg2rclq1rszx4y32vm900nn1mc4qg1a4mqxjiwvf5pzz")) (base32 "18lhglg9v6y83lhqzyifc1z0wrlawzrhzzxx0a3h1g7xaz97xvmi"))
(patches (search-patches (patches (search-patches
"gobject-introspection-cc.patch" "gobject-introspection-cc.patch"
"gobject-introspection-girepository.patch" "gobject-introspection-girepository.patch"
@ -529,20 +552,10 @@ information in their documents, such as whether a particular element should be
translated.") translated.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public itstool/fixed
;; This variant fixes a python-libxml2 crash when processing UTF-8
;; sequences: <https://bugs.gnu.org/37468>. Since the issue is quite rare,
;; create this variant here to avoid a full rebuild.
(package/inherit
itstool
(inputs
`(("python-libxml2" ,python-libxml2/fixed)
,@(alist-delete "python-libxml2" (package-inputs itstool))))))
(define dbus-glib (define dbus-glib
(package (package
(name "dbus-glib") (name "dbus-glib")
(version "0.108") (version "0.110")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (uri
@ -550,7 +563,7 @@ translated.")
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0b307hw9j41npzr6niw1bs6ryp87m5yafg492gqwvsaj4dz0qd4z")))) "09g8swvc95bk1z6j8sw463p2v0dqmgm2zjfndf7i8sbcyq67dr3w"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(propagated-inputs ; according to dbus-glib-1.pc (propagated-inputs ; according to dbus-glib-1.pc
`(("dbus" ,dbus) `(("dbus" ,dbus)
@ -570,7 +583,7 @@ by GDBus included in Glib.")
(define libsigc++ (define libsigc++
(package (package
(name "libsigc++") (name "libsigc++")
(version "2.10.2") (version "2.10.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/libsigc++/" (uri (string-append "mirror://gnome/sources/libsigc++/"
@ -578,7 +591,7 @@ by GDBus included in Glib.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"163s14d1rqp82gc1vsm3q0wzsbdicb9q6307kz0zk5lm6x9h5jmi")))) "11j7j1jv4z58d9s7jvl42fnqa1dzl4idgil9r45cjv1w673dys0b"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs `(("pkg-config" ,pkg-config) (native-inputs `(("pkg-config" ,pkg-config)
("m4" ,m4))) ("m4" ,m4)))
@ -597,7 +610,7 @@ has an ease of use unmatched by other C++ callback libraries.")
(define glibmm (define glibmm
(package (package
(name "glibmm") (name "glibmm")
(version "2.60.0") (version "2.62.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/glibmm/" (uri (string-append "mirror://gnome/sources/glibmm/"
@ -605,7 +618,7 @@ has an ease of use unmatched by other C++ callback libraries.")
"/glibmm-" version ".tar.xz")) "/glibmm-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1g7jxqd270dv2d83r7pf5893mwpz7d5xib0q01na2yalh34v38d3")))) "1ziwx6r7k7wbvg4qq1rgrv8zninapgrmhn1hs6926a3krh9ryr9n"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -679,7 +692,7 @@ useful for C++.")
(define-public python-pygobject (define-public python-pygobject
(package (package
(name "python-pygobject") (name "python-pygobject")
(version "3.28.3") (version "3.34.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -688,24 +701,20 @@ useful for C++.")
"/pygobject-" version ".tar.xz")) "/pygobject-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1c6h3brzlyvzbpdsammnd957azmp6cbzqrd65r400vnh2l8f5lrx")))) "06i7ynnbvgpz0gw09zsjbvhgcp5qz4yzdifw27qjwdazg2mckql7"))
(build-system gnu-build-system) (modules '((guix build utils)))
(arguments (snippet
`(#:phases '(begin
(modify-phases %standard-phases ;; We disable these tests in a snippet so that they are inherited
(add-after 'unpack 'delete-broken-tests ;; by the Python 2 variant which is built differently.
(lambda _ (with-directory-excursion "tests"
;; FIXME: this test freezes and times out. ;; FIXME: These tests require Gdk and/or Gtk 4.
(delete-file "tests/test_mainloop.py") (for-each delete-file
;; FIXME: this test fails with this kind of error: '("test_atoms.py" "test_overrides_gtk.py"))
;; AssertionError: <Handlers.SIG_IGN: 1> != <built-in function default_int_handler
(delete-file "tests/test_ossig.py")
#t))))) #t)))))
(build-system meson-build-system)
(native-inputs (native-inputs
`(("which" ,which) `(("glib-bin" ,glib "bin")
;for tests: dbus-run-session and glib-compile-schemas
("dbus" ,dbus)
("glib-bin" ,glib "bin")
("pkg-config" ,pkg-config) ("pkg-config" ,pkg-config)
("python-pytest" ,python-pytest))) ("python-pytest" ,python-pytest)))
(inputs (inputs
@ -728,45 +737,31 @@ useful for C++.")
(define-public python2-pygobject (define-public python2-pygobject
(package (inherit (strip-python2-variant python-pygobject)) (package (inherit (strip-python2-variant python-pygobject))
(name "python2-pygobject") (name "python2-pygobject")
;; Note: We use python-build-system here, because Meson only supports
;; Python 3, and needs PYTHONPATH etc set up correctly, which makes it
;; difficult to use for Python 2 projects.
(build-system python-build-system)
(arguments
`(#:python ,python-2
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'delete-broken-tests
(lambda _
;; FIXME: this test freezes and times out.
(delete-file "tests/test_mainloop.py")
;; FIXME: this test fails with this kind of error:
;; AssertionError: <Handlers.SIG_IGN: 1> != <built-in function default_int_handler
(delete-file "tests/test_ossig.py")
#t)))))
(inputs (inputs
`(("python" ,python-2) `(("python-pycairo" ,python2-pycairo)
("python-pycairo" ,python2-pycairo)
("gobject-introspection" ,gobject-introspection))) ("gobject-introspection" ,gobject-introspection)))
(native-inputs (native-inputs
`(("which" ,which) `(("glib-bin" ,glib "bin")
;for tests: dbus-run-session and glib-compile-schemas
("dbus" ,dbus)
("glib-bin" ,glib "bin")
("pkg-config" ,pkg-config) ("pkg-config" ,pkg-config)
("python-pytest" ,python2-pytest))))) ("python-pytest" ,python2-pytest)))))
;; Newer version of this core-updates package, for Lollypop.
(define-public python-pygobject-3.34
(package/inherit
python-pygobject
(version "3.34.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/pygobject/"
(version-major+minor version)
"/pygobject-" version ".tar.xz"))
(sha256
(base32 "06i7ynnbvgpz0gw09zsjbvhgcp5qz4yzdifw27qjwdazg2mckql7"))))
(build-system meson-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'delete-broken-tests
(lambda _
(with-directory-excursion "tests"
(for-each
delete-file
;; FIXME: these tests require Gdk and/or Gtk 4.
'("test_atoms.py"
"test_overrides_gtk.py")))
#t)))))))
(define-public perl-glib (define-public perl-glib
(package (package
(name "perl-glib") (name "perl-glib")
@ -810,6 +805,7 @@ up the Gnome environment, and are used in many unrelated projects.")
"1symyzbjmxvksn2ifdkk50lafjm2llf2sbmky062gq2pz3cg23cy")) "1symyzbjmxvksn2ifdkk50lafjm2llf2sbmky062gq2pz3cg23cy"))
(patches (patches
(list (list
(search-patch "telepathy-glib-channel-memory-leak.patch")
;; Don't use the same test name for multiple tests. ;; Don't use the same test name for multiple tests.
;; <https://bugs.freedesktop.org/show_bug.cgi?id=92245> ;; <https://bugs.freedesktop.org/show_bug.cgi?id=92245>
(origin (origin
@ -829,7 +825,18 @@ up the Gnome environment, and are used in many unrelated projects.")
;; ;;
;; EOFError: EOF read where object expected ;; EOFError: EOF read where object expected
;; make[2]: *** [Makefile:1906: _gen/register-dbus-glib-marshallers-body.h] Error 1 ;; make[2]: *** [Makefile:1906: _gen/register-dbus-glib-marshallers-body.h] Error 1
#:parallel-build? #f)) #:parallel-build? #f
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'disable-failing-tests
(lambda _
;; None of the tests below are able to find the org.gtk.vfs.Daemon
;; service file provided by gvfs.
(substitute* "tests/dbus/Makefile.in"
(("test-contacts\\$\\(EXEEXT\\)") "")
(("test-file-transfer-channel\\$\\(EXEEXT\\)") "")
(("test-stream-tube\\$\\(EXEEXT\\)") ""))
#t)))))
(native-inputs (native-inputs
`(("glib" ,glib "bin") ; uses glib-mkenums `(("glib" ,glib "bin") ; uses glib-mkenums
("gobject-introspection" ,gobject-introspection) ("gobject-introspection" ,gobject-introspection)
@ -915,7 +922,7 @@ programming language. It also contains the utility
(propagated-inputs (propagated-inputs
`(("gcab" ,gcab) ; for .pc file `(("gcab" ,gcab) ; for .pc file
("gdk-pixbuf" ,gdk-pixbuf) ; for .pc file ("gdk-pixbuf" ,gdk-pixbuf) ; for .pc file
("util-linux" ,util-linux))) ; for .pc file ("libuuid" ,util-linux "lib"))) ; for .pc file
(inputs (inputs
`(("glib" ,glib) `(("glib" ,glib)
("gperf" ,gperf) ("gperf" ,gperf)

File diff suppressed because it is too large Load Diff

View File

@ -102,7 +102,7 @@
("gtk+" ,gtk+) ("gtk+" ,gtk+)
("libarchive" ,libarchive) ("libarchive" ,libarchive)
("libgsf" ,libgsf) ("libgsf" ,libgsf)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libltdl" ,libltdl) ("libltdl" ,libltdl)
("libmpeg2" ,libmpeg2) ("libmpeg2" ,libmpeg2)
("libmp4v2" ,libmp4v2) ("libmp4v2" ,libmp4v2)
@ -270,7 +270,7 @@ supports HTTP, HTTPS and GnuTLS.")
("libextractor" ,libextractor) ("libextractor" ,libextractor)
("libidn" ,libidn2) ("libidn" ,libidn2)
("libgcrypt" ,libgcrypt) ("libgcrypt" ,libgcrypt)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libltdl" ,libltdl) ("libltdl" ,libltdl)
("libmicrohttpd" ,libmicrohttpd) ("libmicrohttpd" ,libmicrohttpd)
("libogg" ,libogg) ("libogg" ,libogg)

View File

@ -16,6 +16,7 @@
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2018, 2019 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> ;;; Copyright © 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -78,7 +79,7 @@
(define-public libgpg-error (define-public libgpg-error
(package (package
(name "libgpg-error") (name "libgpg-error")
(version "1.36") (version "1.37")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -86,17 +87,33 @@
version ".tar.bz2")) version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"0z696dmhfxm2n6pmr8b857wwljq9h633yi99bhbn7h88f91rigds")) "0qwpx8mbc2l421a22l0l1hpzkip9jng06bbzgxwpkkvk5bvnybdk"))))
(patches (search-patches "libgpg-error-gawk-compat.patch"))
;; XXX: Remove this snippet with the gawk patch above. It avoids having
;; to call autoreconf for the Makefile.am change to take effect.
(modules '((guix build utils)))
(snippet
'(begin
(substitute* "src/Makefile.in"
(("namespace=errnos") "pkg_namespace=errnos"))
#t))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments
(if (%current-target-system)
`(#:modules ((ice-9 match)
(guix build gnu-build-system)
(guix build utils))
#:phases
(modify-phases %standard-phases
;; When cross-compiling, some platform specific properties cannot
;; be detected. Create a symlink to the appropriate platform
;; file. See Cross-Compiling section at:
;; https://github.com/gpg/libgpg-error/blob/master/README
(add-after 'unpack 'cross-symlinks
(lambda* (#:key target inputs #:allow-other-keys)
(let ((triplet
(match (string-take target
(string-index target #\-))
("armhf" "arm-unknown-linux-gnueabi")
(x
(string-append x "-unknown-linux-gnu")))))
(symlink
(string-append "lock-obj-pub." triplet ".h")
"src/syscfg/lock-obj-pub.linux-gnu.h"))
#t))))
'()))
(native-inputs `(("gettext" ,gettext-minimal)))
(home-page "https://gnupg.org") (home-page "https://gnupg.org")
(synopsis "Library of error values for GnuPG components") (synopsis "Library of error values for GnuPG components")
(description (description
@ -111,15 +128,14 @@ Daemon and possibly more in the future.")
(define-public libgcrypt (define-public libgcrypt
(package (package
(name "libgcrypt") (name "libgcrypt")
(version "1.8.4") (version "1.8.5")
(replacement libgcrypt-1.8.5)
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnupg/libgcrypt/libgcrypt-" (uri (string-append "mirror://gnupg/libgcrypt/libgcrypt-"
version ".tar.bz2")) version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"09r27ywj9zplq6n9qw3mn7zmvf6y2jdmwx5d1kg8yqkj0qx18f7n")))) "1hvsazms1bfd769q0ngl0r9g5i4m9mpz9jmvvrdzyzk3rfa2ljiv"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(propagated-inputs (propagated-inputs
`(("libgpg-error-host" ,libgpg-error))) `(("libgpg-error-host" ,libgpg-error)))
@ -132,7 +148,10 @@ Daemon and possibly more in the future.")
;; the 'gpg-error-config' it runs is the native one---i.e., the wrong one. ;; the 'gpg-error-config' it runs is the native one---i.e., the wrong one.
`(#:configure-flags `(#:configure-flags
(list (string-append "--with-gpg-error-prefix=" (list (string-append "--with-gpg-error-prefix="
(assoc-ref %build-inputs "libgpg-error-host"))))) (assoc-ref %build-inputs "libgpg-error-host"))
;; When cross-compiling, _gcry_mpih_lshift etc are undefined
,@(if (%current-target-system) '("--disable-asm")
'()))))
(outputs '("out" "debug")) (outputs '("out" "debug"))
(home-page "https://gnupg.org/") (home-page "https://gnupg.org/")
(synopsis "Cryptographic function library") (synopsis "Cryptographic function library")
@ -145,18 +164,6 @@ generation.")
(properties '((ftp-server . "ftp.gnupg.org") (properties '((ftp-server . "ftp.gnupg.org")
(ftp-directory . "/gcrypt/libgcrypt"))))) (ftp-directory . "/gcrypt/libgcrypt")))))
(define-public libgcrypt-1.8.5
(package
(inherit libgcrypt)
(version "1.8.5")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnupg/libgcrypt/libgcrypt-"
version ".tar.bz2"))
(sha256
(base32
"1hvsazms1bfd769q0ngl0r9g5i4m9mpz9jmvvrdzyzk3rfa2ljiv"))))))
(define-public libassuan (define-public libassuan
(package (package
(name "libassuan") (name "libassuan")
@ -478,13 +485,28 @@ gpgpme starting with version 1.7.")
"0n232iyayc46f7hywmjw0jr7pbmmz5h4b04jskhkzz9gxz0ci99c")) "0n232iyayc46f7hywmjw0jr7pbmmz5h4b04jskhkzz9gxz0ci99c"))
(file-name (git-file-name name version)))) (file-name (git-file-name name version))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments
;; When cross-compiling, the bash script libgcrypt-config provided by
;; libgcrypt must be accessible during configure phase.
`(,@(if (%current-target-system)
'(#:phases
(modify-phases %standard-phases
(add-before 'configure 'add-libgrypt-config
(lambda _
(setenv "PATH" (string-append
(assoc-ref %build-inputs "libgcrypt")
"/bin:"
(getenv "PATH")))
#t))))
'())))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
("autoconf" ,autoconf) ("autoconf" ,autoconf)
("automake" ,automake) ("automake" ,automake)
("texinfo" ,texinfo))) ("texinfo" ,texinfo)
("guile" ,guile-3.0)))
(inputs (inputs
`(("guile" ,guile-2.2) `(("guile" ,guile-3.0)
("libgcrypt" ,libgcrypt))) ("libgcrypt" ,libgcrypt)))
(synopsis "Cryptography library for Guile using Libgcrypt") (synopsis "Cryptography library for Guile using Libgcrypt")
(description (description
@ -498,18 +520,27 @@ interface (FFI) of Guile.")
(define-public guile2.0-gcrypt (define-public guile2.0-gcrypt
(package (inherit guile-gcrypt) (package (inherit guile-gcrypt)
(name "guile2.0-gcrypt") (name "guile2.0-gcrypt")
(native-inputs
`(("guile" ,guile-2.0)
,@(alist-delete "guile" (package-native-inputs guile-gcrypt))))
(inputs (inputs
`(("guile" ,guile-2.0) `(("guile" ,guile-2.0)
,@(alist-delete "guile" (package-inputs guile-gcrypt)))))) ,@(alist-delete "guile" (package-inputs guile-gcrypt))))))
(define-public guile3.0-gcrypt (define-public guile2.2-gcrypt
(package (package
(inherit guile-gcrypt) (inherit guile-gcrypt)
(name "guile3.0-gcrypt") (name "guile2.2-gcrypt")
(native-inputs
`(("guile" ,guile-2.2)
,@(alist-delete "guile" (package-native-inputs guile-gcrypt))))
(inputs (inputs
`(("guile" ,guile-next) `(("guile" ,guile-2.2)
,@(alist-delete "guile" (package-inputs guile-gcrypt)))))) ,@(alist-delete "guile" (package-inputs guile-gcrypt))))))
(define-public guile3.0-gcrypt
(deprecated-package "guile3.0-gcrypt" guile-gcrypt))
(define-public python-gpg (define-public python-gpg
(package (package
(name "python-gpg") (name "python-gpg")

View File

@ -139,7 +139,7 @@ to easily create cross-compiled binaries.")
("libx11" ,libx11) ("libx11" ,libx11)
("libxinerama" ,libxinerama) ("libxinerama" ,libxinerama)
("fontconfig" ,fontconfig) ("fontconfig" ,fontconfig)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("giflib" ,giflib) ("giflib" ,giflib)
("libpng" ,libpng) ("libpng" ,libpng)
("libtiff" ,libtiff))) ("libtiff" ,libtiff)))

View File

@ -1022,20 +1022,6 @@ from forcing GEXP-PROMISE."
(string-append name "\"" null-hash "\""))) (string-append name "\"" null-hash "\"")))
(generate-all-checksums "third_party/rust")) (generate-all-checksums "third_party/rust"))
#t)) #t))
(add-before 'configure 'augment-CPLUS_INCLUDE_PATH
(lambda* (#:key build inputs #:allow-other-keys)
;; Here, we add additional entries to CPLUS_INCLUDE_PATH, to work
;; around a problem that otherwise occurs when attempting to
;; build Stylo, which requires Rust and Clang. Without these
;; additional entries, errors occur during the build indicating
;; that the <cstddef> and "c++config.h" headers cannot be found.
;; Note that the 'build' keyword argument contains the GNU
;; triplet, e.g. "x86_64-unknown-linux-gnu".
(let ((gcc (assoc-ref inputs "gcc")))
(setenv "CPLUS_INCLUDE_PATH"
(string-append gcc "/include/c++" ":"
gcc "/include/c++/" build)))
#t))
(replace 'configure (replace 'configure
;; configure does not work followed by both "SHELL=..." and ;; configure does not work followed by both "SHELL=..." and
;; "CONFIG_SHELL=..."; set environment variables instead ;; "CONFIG_SHELL=..."; set environment variables instead

View File

@ -531,6 +531,8 @@ of graphs.")
(base32 (base32
"08yw3maxhn5fl1lff81gmcrpa4j9aas4mmby1g9w5qcr0np82d1w")))) "08yw3maxhn5fl1lff81gmcrpa4j9aas4mmby1g9w5qcr0np82d1w"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs (inputs
`(("gd" ,gd))) `(("gd" ,gd)))
(home-page "http://www.mcternan.me.uk/mscgen/") (home-page "http://www.mcternan.me.uk/mscgen/")

View File

@ -119,7 +119,7 @@
("freetype" ,freetype) ("freetype" ,freetype)
("gl" ,mesa) ("gl" ,mesa)
("glu" ,glu) ("glu" ,glu)
("jpeg" ,libjpeg) ("jpeg" ,libjpeg-turbo)
("png" ,libpng) ("png" ,libpng)
("tiff" ,libtiff) ("tiff" ,libtiff)
("x11" ,libx11) ("x11" ,libx11)
@ -172,11 +172,11 @@ objects!")
"-DWITH_MOD_OCEANSIM=ON" "-DWITH_MOD_OCEANSIM=ON"
"-DWITH_OPENSUBDIV=ON" "-DWITH_OPENSUBDIV=ON"
"-DWITH_PYTHON_INSTALL=OFF" "-DWITH_PYTHON_INSTALL=OFF"
(string-append "-DPYTHON_LIBRARY=python" ,python-version "m") (string-append "-DPYTHON_LIBRARY=python" ,python-version)
(string-append "-DPYTHON_LIBPATH=" (assoc-ref %build-inputs "python") (string-append "-DPYTHON_LIBPATH=" (assoc-ref %build-inputs "python")
"/lib") "/lib")
(string-append "-DPYTHON_INCLUDE_DIR=" (assoc-ref %build-inputs "python") (string-append "-DPYTHON_INCLUDE_DIR=" (assoc-ref %build-inputs "python")
"/include/python" ,python-version "m") "/include/python" ,python-version)
(string-append "-DPYTHON_VERSION=" ,python-version) (string-append "-DPYTHON_VERSION=" ,python-version)
(string-append "-DPYTHON_NUMPY_PATH=" (string-append "-DPYTHON_NUMPY_PATH="
(assoc-ref %build-inputs "python-numpy") (assoc-ref %build-inputs "python-numpy")
@ -211,7 +211,7 @@ objects!")
("opensubdiv" ,opensubdiv) ("opensubdiv" ,opensubdiv)
("ilmbase" ,ilmbase) ("ilmbase" ,ilmbase)
("openjpeg" ,openjpeg) ("openjpeg" ,openjpeg)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libtiff" ,libtiff) ("libtiff" ,libtiff)
("ffmpeg" ,ffmpeg) ("ffmpeg" ,ffmpeg)
@ -469,7 +469,7 @@ storage of the \"EXR\" file format for storing 16-bit floating-point images.")
(inputs (inputs
`(("boost" ,boost) `(("boost" ,boost)
("libpng" ,libpng) ("libpng" ,libpng)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libtiff" ,libtiff) ("libtiff" ,libtiff)
("giflib" ,giflib) ("giflib" ,giflib)
("openexr" ,openexr) ("openexr" ,openexr)
@ -531,7 +531,7 @@ visual effects work for film.")
("unzip" ,unzip))) ("unzip" ,unzip)))
(inputs (inputs
`(("giflib" ,giflib) `(("giflib" ,giflib)
("libjpeg" ,libjpeg) ; required by the JPEG texture plugin ("libjpeg" ,libjpeg-turbo) ; required for the JPEG texture plugin.
("jasper" ,jasper) ("jasper" ,jasper)
("librsvg" ,librsvg) ("librsvg" ,librsvg)
("libxrandr" ,libxrandr) ("libxrandr" ,libxrandr)
@ -570,7 +570,7 @@ virtual reality, scientific visualization and modeling.")
"-DCMAKE_CXX_FLAGS=-fpermissive" "-DCMAKE_CXX_FLAGS=-fpermissive"
,flags)))) ,flags))))
(inputs (inputs
`(("libjpeg" ,libjpeg) `(("libjpeg" ,libjpeg-turbo)
,@(package-inputs openscenegraph))))) ,@(package-inputs openscenegraph)))))
@ -635,7 +635,7 @@ virtual reality, scientific visualization and modeling.")
("pkg-config" ,pkg-config))) ("pkg-config" ,pkg-config)))
(inputs (inputs
`(("boost" ,boost) `(("boost" ,boost)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libtiff" ,libtiff) ("libtiff" ,libtiff)
("openexr" ,openexr) ("openexr" ,openexr)
@ -987,7 +987,7 @@ your terminal.")
`(("imagemagick" ,imagemagick) `(("imagemagick" ,imagemagick)
("lcms" ,lcms) ("lcms" ,lcms)
("fbida" ,fbida) ("fbida" ,fbida)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("zip" ,zip) ("zip" ,zip)
("perl" ,perl) ("perl" ,perl)
("perl-cpanel-json-xs" ,perl-cpanel-json-xs) ("perl-cpanel-json-xs" ,perl-cpanel-json-xs)

View File

@ -56,15 +56,15 @@
(define-public graphviz (define-public graphviz
(package (package
(name "graphviz") (name "graphviz")
(version "2.40.1") (version "2.42.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
"http://www.graphviz.org/pub/graphviz/ARCHIVE/graphviz-" "https://www2.graphviz.org/Packages/stable/portable_source/"
version ".tar.gz")) "graphviz-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"08d4ygkxz2f553bxj6087da56a23kx1khv0j8ycxa102vvx1hlna")))) "1pbswjbx3fjdlsxcm7cmlsl5bvaa3d6gcnr0cr8x3c8pag13zbwg"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
;; FIXME: rtest/rtest.sh is a ksh script (!). Add ksh as an input. ;; FIXME: rtest/rtest.sh is a ksh script (!). Add ksh as an input.
@ -104,7 +104,7 @@
("libltdl" ,libltdl) ("libltdl" ,libltdl)
("libXaw" ,libxaw) ("libXaw" ,libxaw)
("expat" ,expat) ("expat" ,expat)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng))) ("libpng" ,libpng)))
(native-inputs (native-inputs
`(("bison" ,bison) `(("bison" ,bison)

View File

@ -5,6 +5,7 @@
;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2019 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2019 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -55,12 +56,28 @@
;; from 'inputs'. ;; from 'inputs'.
(inputs `(("ghostscript" ,ghostscript))) (inputs `(("ghostscript" ,ghostscript)))
(native-inputs `(("bison" ,bison)
;; When cross-compiling, this package depends upon a native install of
;; itself.
(native-inputs `(,@(if (%current-target-system)
`(("self" ,this-package))
'())
("bison" ,bison)
("perl" ,perl) ("perl" ,perl)
("psutils" ,psutils) ("psutils" ,psutils)
("texinfo" ,texinfo))) ("texinfo" ,texinfo)))
(arguments (arguments
`(#:parallel-build? #f ; parallel build fails `(#:parallel-build? #f ; parallel build fails
,@(if (%current-target-system)
`(#:make-flags
;; In groff-minimal package, that inherits from this package,
;; we'll need to locate "groff" instead of "self".
(let ((groff (or (assoc-ref %build-host-inputs "groff")
(assoc-ref %build-host-inputs "self"))))
(list
(string-append "GROFF_BIN_PATH=" groff)
(string-append "GROFFBIN=" groff "/bin/groff"))))
'())
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'disable-relocatability (add-after 'unpack 'disable-relocatability
@ -115,7 +132,8 @@ is usually the formatter of \"man\" documentation pages.")
;; Omit the DVI, PS, PDF, and HTML backends. ;; Omit the DVI, PS, PDF, and HTML backends.
(inputs '()) (inputs '())
(native-inputs `(("bison" ,bison) (native-inputs `(("bison" ,bison)
("perl" ,perl))) ("perl" ,perl)
("groff" ,groff)))
(arguments (arguments
`(#:disallowed-references (,perl) `(#:disallowed-references (,perl)

View File

@ -265,7 +265,7 @@ for the GStreamer multimedia library.")
("libcaca" ,libcaca) ("libcaca" ,libcaca)
("libdv" ,libdv) ("libdv" ,libdv)
("libiec61883" ,libiec61883) ("libiec61883" ,libiec61883)
("libjpeg" ,libjpeg) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libshout" ,libshout) ("libshout" ,libshout)
("libsoup" ,libsoup) ("libsoup" ,libsoup)
@ -521,7 +521,9 @@ non-linear editors.")
"gst-python-" version ".tar.xz")) "gst-python-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1a48ca66izmm8hnp608jv5isg3jxb0vlfmhns0bg9nbkilag7390")))) "1a48ca66izmm8hnp608jv5isg3jxb0vlfmhns0bg9nbkilag7390"))
(patches
(search-patches "python-gst-fix-build-with-python-3.8.patch"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:modules ((guix build meson-build-system) `(#:modules ((guix build meson-build-system)

Some files were not shown because too many files have changed in this diff Show More