;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2015, 2017, 2020 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2015, 2017, 2020, 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Muriithi Frederick Muriuki <fredmanglis@gmail.com>
;;; Copyright © 2017, 2018 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
-;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2017–2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2018, 2019 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org>
;;; Copyright © 2018, 2019 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2019 Jonathan Brielmaier <jonathan.brielmaier@web.de>
;;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2020 Jesse Gibbons <jgibbons2357+guix@gmail.com>
;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
+;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
;; Note: the 'update-guix-package.scm' script expects this definition to
;; start precisely like this.
(let ((version "1.2.0")
- (commit "2c11cf1b91b07ed8c00b5525ab6a75e81f5cc289")
- (revision 2))
+ (commit "4dff6ecde85eec473ab231cf75f51e98e8aca1e9")
+ (revision 21))
(package
(name "guix")
(commit commit)))
(sha256
(base32
- "0w9yrky8qx6zwh97aq6z07mxpjixxg5pp7lzw1r72j3qg3rircj2"))
+ "1n16j7rb4n4pjmp8ck5g206rphmzxii2mbyz1nk4qk70zc3mwszq"))
(file-name (string-append "guix-" version "-checkout"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list
+
+ ;; Provide channel metadata for 'guix describe'.
+ ;; Don't pass '--with-channel-url' and
+ ;; '--with-channel-introduction' and instead use
+ ;; the defaults.
+ ,(string-append "--with-channel-commit=" commit)
+
"--localstatedir=/var"
"--sysconfdir=/etc"
(string-append "--with-bash-completion-dir="
(substitute* "nix/local.mk"
(("^openrcservicedir = .*$")
(string-append "openrcservicedir = \
-$(prefix)/etc/init.d\n")))
+$(prefix)/etc/openrc\n")))
(invoke "sh" "bootstrap")))
(add-before 'build 'use-host-compressors
'((assoc-ref inputs "guile"))))
(avahi (assoc-ref inputs "guile-avahi"))
(gcrypt (assoc-ref inputs "guile-gcrypt"))
+ (guile-lib (assoc-ref inputs "guile-lib"))
(json (assoc-ref inputs "guile-json"))
(sqlite (assoc-ref inputs "guile-sqlite3"))
(zlib (assoc-ref inputs "guile-zlib"))
(lzlib (assoc-ref inputs "guile-lzlib"))
+ (zstd (assoc-ref inputs "guile-zstd"))
(git (assoc-ref inputs "guile-git"))
(bs (assoc-ref inputs
"guile-bytestructures"))
(gnutls (assoc-ref inputs "gnutls"))
(locales (assoc-ref inputs "glibc-utf8-locales"))
(deps (list gcrypt json sqlite gnutls git
- bs ssh zlib lzlib))
+ bs ssh zlib lzlib zstd))
(deps* ,@(if (%current-target-system)
'(deps)
'((cons avahi deps))))
`(("guile-avahi" ,guile-avahi)))
("guile-gcrypt" ,guile-gcrypt)
("guile-json" ,guile-json-4)
+ ("guile-lib" ,guile-lib)
("guile-sqlite3" ,guile-sqlite3)
("guile-zlib" ,guile-zlib)
("guile-lzlib" ,guile-lzlib)
+ ("guile-zstd" ,guile-zstd)
("guile-ssh" ,guile-ssh)
("guile-git" ,guile-git)
;; XXX: Keep the development inputs here even though
;; they're unnecessary, just so that 'guix environment
;; guix' always contains them.
- ("autoconf" ,autoconf-wrapper)
+ ("autoconf" ,autoconf)
("automake" ,automake)
("gettext" ,gettext-minimal)
("texinfo" ,texinfo)
("glibc-utf8-locales" ,glibc-utf8-locales)))
(propagated-inputs
- `(("gnutls" ,(if (%current-target-system) gnutls-3.6.14 gnutls))
+ `(("gnutls" ,gnutls)
;; Avahi requires "glib" which doesn't cross-compile yet.
,@(if (%current-target-system)
'()
`(("guile-avahi" ,guile-avahi)))
("guile-gcrypt" ,guile-gcrypt)
("guile-json" ,guile-json-4)
+ ("guile-lib" ,guile-lib)
("guile-sqlite3" ,guile-sqlite3)
("guile-ssh" ,guile-ssh)
("guile-git" ,guile-git)
("guile-zlib" ,guile-zlib)
- ("guile-lzlib" ,guile-lzlib)))
+ ("guile-lzlib" ,guile-lzlib)
+ ("guile-zstd" ,guile-zstd)))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUIX_EXTENSIONS_PATH")
+ (files '("share/guix/extensions")))
+
+ ;; (guix git) and (guix build download) honor this variable whose
+ ;; name comes from OpenSSL.
+ (search-path-specification
+ (variable "SSL_CERT_DIR")
+ (separator #f) ;single entry
+ (files '("etc/ssl/certs")))))
(home-page "https://www.gnu.org/software/guix/")
(synopsis "Functional package manager for installed software packages and versions")
(define-public nix
(package
(name "nix")
- (version "2.3.9")
+ (version "2.3.10")
(source (origin
(method url-fetch)
(uri (string-append "https://nixos.org/releases/nix/nix-"
version "/nix-" version ".tar.xz"))
(sha256
(base32
- "1yi2c1fp33sxv9j0pvxlpxs1dhq3axrwkxdwr867ll90lbdiycvj"))))
+ "1axphwkx270c10bjyn4icq9wlx46npgnw0qkpymigl23vramxa58"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--sysconfdir=/etc" "--enable-gc")
(define-public rpm
(package
(name "rpm")
- (version "4.14.2.1")
+ (version "4.16.1.3")
(source (origin
(method url-fetch)
(uri (string-append "http://ftp.rpm.org/releases/rpm-"
version ".tar.bz2"))
(sha256
(base32
- "1nmck2fq9h85fgs3zhh6w1avlw5y16cbz5khd459ry3jfd5w4f8i"))))
+ "07g2g0adgjm29wqy94iqhpp5dk0hacfw1yf7kzycrrxnfbwwfgai"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--with-external-db" ;use the system's bdb
("nss" ,nss)
("nspr" ,nspr)
("libarchive" ,libarchive)
+ ("libgcrypt" ,libgcrypt)
("file" ,file)
("bzip2" ,bzip2)
("zlib" ,zlib)
(define-public gwl
(package
(name "gwl")
- (version "0.2.1")
+ (version "0.3.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/gwl/gwl-" version ".tar.gz"))
(sha256
(base32
- "1ji5jvzni8aml9fmimlr11g3k8isrnlvnbzhmwgdjh72hils0alc"))))
+ "1lqif00mq7fsaknbc2gvvcv1j89k311sm44jp9jklbrv0v2lc83n"))))
(build-system gnu-build-system)
(arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-before 'build 'fix-tests
- (lambda _
- ;; Avoid cross-device link.
- (substitute* "tests/cache.scm"
- (("/tmp/gwl-test-input-XXXXXX")
- (string-append (getcwd) "/gwl-test-input-XXXXXX")))
- #t)))))
+ `(#:parallel-build? #false ; for reproducibility
+ #:make-flags
+ '("GUILE_AUTO_COMPILE=0")))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("texinfo" ,texinfo)
("graphviz" ,graphviz)))
(inputs
- `(("guile" ,@(assoc-ref (package-native-inputs guix) "guile"))))
- (propagated-inputs
- `(("guix" ,guix)
- ("guile-commonmark" ,guile-commonmark)
- ("guile-gcrypt" ,guile-gcrypt)
- ("guile-pfds" ,guile-pfds)
- ("guile-syntax-highlight" ,guile-syntax-highlight)
- ("guile-wisp" ,guile-wisp)))
+ (let ((p (package-input-rewriting
+ `((,guile-3.0 . ,guile-3.0-latest))
+ #:deep? #false)))
+ `(("guix" ,guix)
+ ("guile" ,guile-3.0-latest)
+ ("guile-commonmark" ,(p guile-commonmark))
+ ("guile-config" ,(p guile-config))
+ ("guile-gcrypt" ,(p guile-gcrypt))
+ ("guile-pfds" ,(p guile-pfds))
+ ("guile-syntax-highlight" ,(p guile-syntax-highlight))
+ ("guile-wisp" ,(p guile-wisp)))))
(home-page "https://workflows.guix.info")
(synopsis "Workflow management extension for GNU Guix")
(description "The @dfn{Guix Workflow Language} (GWL) provides an
(license (list license:gpl3+ license:agpl3+ license:silofl1.1))))
(define-public guix-build-coordinator
- (let ((commit "ed3b2e56655ccf4cd9574f00e72b20e9022d9ab0")
- (revision "8"))
+ (let ((commit "6fb5eafc33efa109b220efe71594cfcdb2efe133")
+ (revision "24"))
(package
(name "guix-build-coordinator")
(version (git-version "0" revision commit))
(commit commit)))
(sha256
(base32
- "15c7398km1870w82410jrmcnb4mvkhrsb8qvshr8wa1gjcpb6s6z"))
+ "1lf7jry18kwglvyakfkmi8bif8ppsdinl0xjgmkgkp4mvmymh2gj"))
(file-name (string-append name "-" version "-checkout"))))
(build-system gnu-build-system)
(arguments
(setenv "GUILE_AUTO_COMPILE" "0")
#t))
(add-after 'install 'wrap-executable
- (lambda* (#:key inputs outputs #:allow-other-keys)
+ (lambda* (#:key inputs outputs target #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(guile (assoc-ref inputs "guile"))
(for-each
(lambda (file)
(simple-format (current-error-port) "wrapping: ~A\n" file)
- (wrap-program file
- `("PATH" ":" prefix
- (,bin
- ;; Support building without sqitch as an input, as it
- ;; can't be cross-compiled yet
- ,@(or (and=> (assoc-ref inputs "sqitch")
- list)
- '())))
- `("GUILE_LOAD_PATH" ":" prefix
- (,scm ,(getenv "GUILE_LOAD_PATH")))
- `("GUILE_LOAD_COMPILED_PATH" ":" prefix
- (,go ,(getenv "GUILE_LOAD_COMPILED_PATH")))))
+ (let ((guile-inputs (list
+ "guile-json"
+ "guile-gcrypt"
+ "guix"
+ "guile-prometheus"
+ "guile-lib"
+ "guile-lzlib"
+ "guile-zlib"
+ "gnutls"
+ ,@(if (hurd-target?)
+ '()
+ '("guile-fibers")))))
+ (wrap-program file
+ `("PATH" ":" prefix
+ (,bin
+ ;; Support building without sqitch as an input, as it
+ ;; can't be cross-compiled yet
+ ,@(or (and=> (assoc-ref inputs "sqitch")
+ list)
+ '())))
+ `("GUILE_LOAD_PATH" ":" prefix
+ (,scm ,(string-join
+ (map (lambda (input)
+ (simple-format
+ #f "~A/share/guile/site/~A"
+ (assoc-ref inputs input)
+ version))
+ guile-inputs)
+ ":")))
+ `("GUILE_LOAD_COMPILED_PATH" ":" prefix
+ (,go ,(string-join
+ (map (lambda (input)
+ (simple-format
+ #f "~A/lib/guile/~A/site-ccache"
+ (assoc-ref inputs input)
+ version))
+ guile-inputs)
+ ":"))))
+ (when target
+ ;; XXX work around wrap-program picking bash for the
+ ;; host rather than target
+ (let ((bash (assoc-ref inputs "bash")))
+ (substitute* file
+ (("^#!.*/bash")
+ (string-append "#! " bash "/bin/bash")))))))
(find-files bin)))
#t))
(delete 'strip)))) ; As the .go files aren't compatible
("guile" ,@(assoc-ref (package-native-inputs guix) "guile"))))
(inputs
`(("guile" ,@(assoc-ref (package-native-inputs guix) "guile"))
+ ,@(if (%current-target-system)
+ `(("bash" ,bash-minimal))
+ '())
("sqlite" ,sqlite)
- ("sqitch" ,sqitch)))
+ ,@(if (hurd-target?)
+ '()
+ `(("sqitch" ,sqitch)))))
(propagated-inputs
- `(("guile-fibers" ,guile-fibers)
+ `(,@(if (hurd-target?)
+ '()
+ `(("guile-fibers" ,guile-fibers)))
("guile-prometheus" ,guile-prometheus)
("guile-gcrypt" ,guile-gcrypt)
("guile-json" ,guile-json-4)
(define-public guix-jupyter
(package
(name "guix-jupyter")
- (version "0.1.0")
+ (version "0.2.1")
(home-page "https://gitlab.inria.fr/guix-hpc/guix-kernel")
(source (origin
(method git-fetch)
(commit (string-append "v" version))))
(sha256
(base32
- "01z7jjkc7r7lj6637rcgpz40v8xqqyfp6871h94yvcnwm7zy9h1n"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- ;; Allow builds with Guile 3.0.
- (substitute* "configure.ac"
- (("^GUILE_PKG.*")
- "GUILE_PKG([3.0 2.2])\n"))
-
- ;; Avoid name clash and build failure now that
- ;; 'define-json-mapping' is also provided by Guile-JSON, as
- ;; of version 4.3.
- (substitute* (find-files "." "\\.scm$")
- (("define-json-mapping")
- "define-json-mapping*")
- (("<=>")
- "<->"))
- #t))
+ "1kqwfp5h95s6mirq5nbydsbmlhsinn32grz1ld5mbxvhl6sn2i0j"))
(file-name (string-append "guix-jupyter-" version "-checkout"))))
(build-system gnu-build-system)
(arguments
(define-public flatpak
(package
(name "flatpak")
- (version "1.8.2")
+ (version "1.10.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/flatpak/flatpak/releases/download/"
version "/flatpak-" version ".tar.xz"))
(sha256
- (base32 "1c45a0k7wx685n5b3ihv7dk0mm2kmwbw7cx8w5g2la62yxfn49kr"))))
+ (base32 "1r6xw7r3ir2vaa30n3mily6m7d51cf4qv22fkqlzzy3js0wjf5fv"))))
;; Wrap 'flatpak' so that GIO_EXTRA_MODULES is set, thereby allowing GIO to
;; find the TLS backend in glib-networking.