From c743a9189cd04b164f6027751c4f9a994c5c1f76 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 21 May 2020 23:08:18 +0300 Subject: gnu: kodi: Update to 18.7. * gnu/packages/kodi.scm (kodi): Update to 18.7. --- gnu/packages/kodi.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/kodi.scm b/gnu/packages/kodi.scm index 81294f4859..c81a4bc487 100644 --- a/gnu/packages/kodi.scm +++ b/gnu/packages/kodi.scm @@ -3,7 +3,7 @@ ;;; Copyright © 2017, 2019 Marius Bakke ;;; Copyright © 2017 Oleg Pykhalov ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice -;;; Copyright © 2018 Efraim Flashner +;;; Copyright © 2018, 2020 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -269,7 +269,7 @@ alternatives. In compilers, this can reduce the cascade of secondary errors.") (define-public kodi (package (name "kodi") - (version "18.6") + (version "18.7") (source (origin (method git-fetch) (uri (git-reference @@ -278,7 +278,7 @@ alternatives. In compilers, this can reduce the cascade of secondary errors.") (file-name (git-file-name name version)) (sha256 (base32 - "0rwymipn5hljy5xrslzmrljmj6f9wb191wi7gjw20wl6sv44d0bk")) + "082cpih84j7v29w55qhj0rdia7hdjpwi81qywiwawd4vlyimpv2h")) (patches (search-patches "kodi-skip-test-449.patch" "kodi-increase-test-timeout.patch" "kodi-set-libcurl-ssl-parameters.patch")) -- cgit v1.2.3 From d4d9f882a35b536507c4671dabc6e63e0d3b95e9 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 21 May 2020 22:10:51 +0200 Subject: gnu: edgar: Update to 1.33. * gnu/packages/games.scm (edgar): Update to 1.33. --- gnu/packages/games.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 111e1e0579..9e1a01fc04 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -7359,7 +7359,7 @@ where the player draws runes in real time to effect the desired spell.") (define-public edgar (package (name "edgar") - (version "1.32") + (version "1.33") (source (origin (method url-fetch) @@ -7367,7 +7367,7 @@ where the player draws runes in real time to effect the desired spell.") (string-append "https://github.com/riksweeney/edgar/releases/download/" version "/edgar-" version "-1.tar.gz")) (sha256 - (base32 "12lam6qcscc5ima1w2ksd1cvsvxbd17h6mqkgsqpzx8ap43p2r5p")))) + (base32 "1mbx7dvizdca4g1blcv3bdh6yxd13k47rkya4rdzg0nvvz24m175")))) (build-system gnu-build-system) (arguments '(#:tests? #f ; there are no tests #:make-flags -- cgit v1.2.3 From 6381565d9db2f03f92a951e7fe7317acfa7dad13 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 21 May 2020 22:14:05 +0200 Subject: gnu: opensmtpd: Update to 6.7.1p1. * gnu/packages/mail.scm (opensmtpd): Update to 6.7.1p1. --- gnu/packages/mail.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index e3fd416dd9..8e72edc221 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -2298,14 +2298,14 @@ transfer protocols.") (define-public opensmtpd (package (name "opensmtpd") - (version "6.7.0p1") + (version "6.7.1p1") (source (origin (method url-fetch) (uri (string-append "https://www.opensmtpd.org/archives/" "opensmtpd-" version ".tar.gz")) (sha256 - (base32 "1f8bp40ywyixflg5qbnang6l210bv4vqa1k2pgm2356bp7bmsgy1")))) + (base32 "1jh8vxfajm1mvp1v5yh6llrhjzv0n9fgab88mlwllwqynhcfjy3l")))) (build-system gnu-build-system) (inputs `(("bdb" ,bdb) -- cgit v1.2.3 From 0b7fd225394623a2f2a10d0f422c462c673e3f8a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 21 May 2020 19:08:18 +0200 Subject: gnu: liblcf: Update to 0.6.2. * gnu/packages/easyrpg.scm (liblcf): Update to 0.6.2. --- gnu/packages/easyrpg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/easyrpg.scm b/gnu/packages/easyrpg.scm index 05cdc42449..4adddb85be 100644 --- a/gnu/packages/easyrpg.scm +++ b/gnu/packages/easyrpg.scm @@ -39,7 +39,7 @@ (define-public liblcf (package (name "liblcf") - (version "0.6.1") + (version "0.6.2") (source (origin (method url-fetch) (uri (string-append @@ -47,7 +47,7 @@ "/liblcf-" version ".tar.gz")) (sha256 (base32 - "1qz387r4shbx48r3z7k8llkzz4b039zmak98wxpiwn6a23cssdn5")))) + "0n2k4brd264jg9p6918x7dnb2iimpzjh8q3v1fws58450xbgnkqc")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) -- cgit v1.2.3 From 1ce1583186578deffa119b056ba977d795f52691 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 21 May 2020 21:01:19 +0200 Subject: gnu: font-abattis-cantarell: Update to 0.201. * gnu/packages/fonts.scm (font-abattis-cantarell): Update to 0.201. [native-inputs]: Remove appstream-glib. --- gnu/packages/fonts.scm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index f4071f456f..9284609373 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -196,7 +196,7 @@ itself.")))) (define-public font-cantarell (package (name "font-abattis-cantarell") - (version "0.111") + (version "0.201") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/cantarell-fonts/" @@ -204,11 +204,10 @@ itself.")))) "/cantarell-fonts-" version ".tar.xz")) (sha256 (base32 - "05hpnhihwm9sxlq1qn993g03pwkmpjbn0dvnba71r1gfjv0jp2w5")))) + "0qwqmkczqy09fdj8l11nr841ks0dwsydqg55qyms12m4yvjn87xn")))) (build-system meson-build-system) (native-inputs - `(("appstream-glib" ,appstream-glib) - ("gettext" ,gettext-minimal))) ;for msgfmt + `(("gettext" ,gettext-minimal))) ; for msgfmt (home-page "https://wiki.gnome.org/Projects/CantarellFonts") (synopsis "Cantarell sans-serif typeface") (description "The Cantarell font family is a contemporary Humanist -- cgit v1.2.3 From ce0be5675b702b2ff89aed1772ebb42af4150243 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 19 May 2020 15:55:08 +0200 Subject: packages: Introduce and use it in . * guix/packages.scm (): New record type. (define-content-hash-constructor, build-content-hash) (content-hash): New macros. (print-content-hash): New procedure. (): Rename constructor to '%origin'. [sha256]: Remove field. [hash]: New field. Adjust users. (origin-compatibility-helper, origin): New macros. (origin-sha256): New deprecated procedure. (origin->derivation): Adjust accordingly. * tests/packages.scm ("package-source-derivation, origin, sha512"): New test. * guix/tests.scm: Hide (gcrypt hash) 'sha256' for proper syntax matching. * tests/challenge.scm: Add #:prefix for (gcrypt hash) and adjust users. * tests/derivations.scm: Likewise. * tests/store.scm: Likewise. * tests/graph.scm ("bag DAG, including origins"): Provide 'sha256' field with the right length. * gnu/packages/aspell.scm (aspell-dictionary) (aspell-dict-ca, aspell-dict-it): Use 'hash' and 'content-hash' for proper syntax matching. * gnu/packages/bash.scm (bash-patch): Rename 'sha256' to 'sha256-bv'. * gnu/packages/bootstrap.scm (bootstrap-executable): Rename 'sha256' to 'bv'. * gnu/packages/readline.scm (readline-patch): Likewise. * gnu/packages/virtualization.scm (qemu-patch): Rename 'sha256' to 'sha256-bv'. * guix/import/utils.scm: Hide (gcrypt hash) 'sha256'. --- doc/guix.texi | 34 ++++++++++- gnu/packages/aspell.scm | 8 +-- gnu/packages/bash.scm | 8 +-- gnu/packages/bootstrap.scm | 6 +- gnu/packages/readline.scm | 8 +-- gnu/packages/virtualization.scm | 4 +- guix/import/utils.scm | 2 +- guix/packages.scm | 126 ++++++++++++++++++++++++++++++++++++---- guix/tests.scm | 2 +- tests/challenge.scm | 6 +- tests/derivations.scm | 32 +++++----- tests/graph.scm | 6 +- tests/packages.scm | 28 ++++++++- tests/store.scm | 8 +-- 14 files changed, 220 insertions(+), 58 deletions(-) (limited to 'gnu') diff --git a/doc/guix.texi b/doc/guix.texi index 01dab5b72c..c1e23b5ef3 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -5966,9 +5966,13 @@ specified in the @code{uri} field as a @code{git-reference} object; a @end table @item @code{sha256} -A bytevector containing the SHA-256 hash of the source. Typically the -@code{base32} form is used here to generate the bytevector from a -base-32 string. +A bytevector containing the SHA-256 hash of the source. This is +equivalent to providing a @code{content-hash} SHA256 object in the +@code{hash} field described below. + +@item @code{hash} +The @code{content-hash} object of the source---see below for how to use +@code{content-hash}. You can obtain this information using @code{guix download} (@pxref{Invoking guix download}) or @code{guix hash} (@pxref{Invoking @@ -6013,6 +6017,30 @@ this is @code{#f}, a sensible default is used. @end table @end deftp +@deftp {Data Type} content-hash @var{value} [@var{algorithm}] +Construct a content hash object for the given @var{algorithm}, and with +@var{value} as its hash value. When @var{algorithm} is omitted, assume +it is @code{sha256}. + +@var{value} can be a literal string, in which case it is base32-decoded, +or it can be a bytevector. + +The following forms are all equivalent: + +@lisp +(content-hash "05zxkyz9bv3j9h0xyid1rhvh3klhsmrpkf3bcs6frvlgyr2gwilj") +(content-hash "05zxkyz9bv3j9h0xyid1rhvh3klhsmrpkf3bcs6frvlgyr2gwilj" + sha256) +(content-hash (base32 + "05zxkyz9bv3j9h0xyid1rhvh3klhsmrpkf3bcs6frvlgyr2gwilj")) +(content-hash (base64 "kkb+RPaP7uyMZmu4eXPVkM4BN8yhRd8BTHLslb6f/Rc=") + sha256) +@end lisp + +Technically, @code{content-hash} is currently implemented as a macro. +It performs sanity checks at macro-expansion time, when possible, such +as ensuring that @var{value} has the right size for @var{algorithm}. +@end deftp @node Build Systems @section Build Systems diff --git a/gnu/packages/aspell.scm b/gnu/packages/aspell.scm index 7550736c40..22256f750b 100644 --- a/gnu/packages/aspell.scm +++ b/gnu/packages/aspell.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2017, 2018, 2019 Ludovic Courtès +;;; Copyright © 2013, 2014, 2015, 2017, 2018, 2019, 2020 Ludovic Courtès ;;; Copyright © 2015, 2016 Alex Kost ;;; Copyright © 2016 John Darrington ;;; Copyright © 2016, 2017, 2019 Efraim Flashner @@ -111,7 +111,7 @@ dictionaries, including personal ones.") (uri (string-append "mirror://gnu/aspell/dict/" dict-name "/" prefix dict-name "-" version ".tar.bz2")) - (sha256 sha256))) + (hash (content-hash sha256)))) (build-system gnu-build-system) (arguments `(#:phases @@ -163,7 +163,7 @@ dictionaries, including personal ones.") (method url-fetch) (uri (string-append "https://www.softcatala.org/pub/softcatala/aspell/" version "/aspell6-ca-" version ".tar.bz2")) - (sha256 sha256))) + (hash (content-hash sha256)))) (home-page "https://www.softcatala.org/pub/softcatala/aspell/")))) (define-public aspell-dict-de @@ -264,7 +264,7 @@ dictionaries, including personal ones.") (uri (string-append "mirror://sourceforge/linguistico/" "Dizionario%20italiano%20per%20Aspell/" version "/" "aspell6-it-" version ".tar.bz2")) - (sha256 sha256))) + (hash (content-hash sha256)))) (home-page "http://linguistico.sourceforge.net/pages/dizionario_italiano.html")))) diff --git a/gnu/packages/bash.scm b/gnu/packages/bash.scm index 1b342827c5..311e07a944 100644 --- a/gnu/packages/bash.scm +++ b/gnu/packages/bash.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2019 Ludovic Courtès +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2019, 2020 Ludovic Courtès ;;; Copyright © 2014, 2015, 2018 Mark H Weaver ;;; Copyright © 2015, 2017 Leo Famulari ;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner @@ -48,12 +48,12 @@ "Return the URL of Bash patch number SEQNO." (format #f "mirror://gnu/bash/bash-5.0-patches/bash50-~3,'0d" seqno)) -(define (bash-patch seqno sha256) - "Return the origin of Bash patch SEQNO, with expected hash SHA256" +(define (bash-patch seqno sha256-bv) + "Return the origin of Bash patch SEQNO, with expected hash SHA256-BV." (origin (method url-fetch) (uri (patch-url seqno)) - (sha256 sha256))) + (sha256 sha256-bv))) (define-syntax-rule (patch-series (seqno hash) ...) (list (bash-patch seqno (base32 hash)) diff --git a/gnu/packages/bootstrap.scm b/gnu/packages/bootstrap.scm index f58ce2de93..a3ecb6e692 100644 --- a/gnu/packages/bootstrap.scm +++ b/gnu/packages/bootstrap.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès ;;; Copyright © 2014, 2015, 2018, 2019 Mark H Weaver ;;; Copyright © 2017, 2020 Efraim Flashner ;;; Copyright © 2018, 2020 Jan (janneke) Nieuwenhuizen @@ -151,14 +151,14 @@ built for SYSTEM." (format #f (G_ "could not find bootstrap binary '~a' \ for system '~a'") program system)))))) - ((sha256) + ((bv) (origin (method url-fetch/executable) (uri (map (cute string-append <> (bootstrap-executable-file-name system program)) %bootstrap-executable-base-urls)) (file-name program) - (sha256 sha256))))))) + (hash (content-hash bv sha256)))))))) ;;; diff --git a/gnu/packages/readline.scm b/gnu/packages/readline.scm index 5f61dcb735..8a36883347 100644 --- a/gnu/packages/readline.scm +++ b/gnu/packages/readline.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014 Ludovic Courtès +;;; Copyright © 2012, 2013, 2014, 2020 Ludovic Courtès ;;; Copyright © 2016, 2019 Efraim Flashner ;;; Copyright © 2016 Jan Nieuwenhuizen ;;; Copyright © 2018 Tobias Geerinckx-Rice @@ -35,12 +35,12 @@ (format #f "mirror://gnu/readline/readline-~a-patches/readline~a-~3,'0d" version (string-join (string-split version #\.) "") seqno)) -(define (readline-patch version seqno sha256) - "Return the origin of Readline patch SEQNO, with expected hash SHA256" +(define (readline-patch version seqno sha256-bv) + "Return the origin of Readline patch SEQNO, with expected hash SHA256-BV" (origin (method url-fetch) (uri (patch-url version seqno)) - (sha256 sha256))) + (sha256 sha256-bv))) (define-syntax-rule (patch-series version (seqno hash) ...) (list (readline-patch version seqno (base32 hash)) diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index e0b9a21e72..32113a0f2c 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -104,14 +104,14 @@ #:use-module (srfi srfi-1) #:use-module (ice-9 match)) -(define (qemu-patch commit file-name sha256) +(define (qemu-patch commit file-name sha256-bv) "Return an origin for COMMIT." (origin (method url-fetch) (uri (string-append "http://git.qemu.org/?p=qemu.git;a=commitdiff_plain;h=" commit)) - (sha256 sha256) + (hash (content-hash sha256-bv sha256)) (file-name file-name))) (define-public qemu diff --git a/guix/import/utils.scm b/guix/import/utils.scm index 3809c3d074..0cfa1f8321 100644 --- a/guix/import/utils.scm +++ b/guix/import/utils.scm @@ -24,7 +24,7 @@ (define-module (guix import utils) #:use-module (guix base32) #:use-module ((guix build download) #:prefix build:) - #:use-module (gcrypt hash) + #:use-module ((gcrypt hash) #:hide (sha256)) #:use-module (guix http-client) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix utils) diff --git a/guix/packages.scm b/guix/packages.scm index c1c4805ae9..3d9988d836 100644 --- a/guix/packages.scm +++ b/guix/packages.scm @@ -35,6 +35,8 @@ #:use-module (guix build-system) #:use-module (guix search-paths) #:use-module (guix sets) + #:use-module (guix deprecation) + #:use-module (guix i18n) #:use-module (ice-9 match) #:use-module (ice-9 vlist) #:use-module (ice-9 regex) @@ -44,16 +46,23 @@ #:use-module (srfi srfi-26) #:use-module (srfi srfi-34) #:use-module (srfi srfi-35) + #:use-module (rnrs bytevectors) #:use-module (web uri) #:re-export (%current-system %current-target-system search-path-specification) ;for convenience - #:export (origin + #:export (content-hash + content-hash? + content-hash-algorithm + content-hash-value + + origin origin? this-origin origin-uri origin-method - origin-sha256 + origin-hash + origin-sha256 ;deprecated origin-file-name origin-actual-file-name origin-patches @@ -157,15 +166,79 @@ ;;; ;;; Code: +;; Crytographic content hash. +(define-immutable-record-type + (%content-hash algorithm value) + content-hash? + (algorithm content-hash-algorithm) ;symbol + (value content-hash-value)) ;bytevector + +(define-syntax-rule (define-content-hash-constructor name + (algorithm size) ...) + "Define NAME as a constructor that ensures that (1) its +second argument is among the listed ALGORITHM, and (2), when possible, that +its first argument has the right size for the chosen algorithm." + (define-syntax name + (lambda (s) + (syntax-case s (algorithm ...) + ((_ bv algorithm) + (let ((bv* (syntax->datum #'bv))) + (when (and (bytevector? bv*) + (not (= size (bytevector-length bv*)))) + (syntax-violation 'content-hash "invalid content hash length" s)) + #'(%content-hash 'algorithm bv))) + ...)))) + +(define-content-hash-constructor build-content-hash + (sha256 32) + (sha512 64)) + +(define-syntax content-hash + (lambda (s) + "Return a content hash with the given parameters. The default hash +algorithm is sha256. If the first argument is a literal string, it is decoded +as base32. Otherwise, it must be a bytevector." + ;; What we'd really want here is something like C++ 'constexpr'. + (syntax-case s () + ((_ str) + (string? (syntax->datum #'str)) + #'(content-hash str sha256)) + ((_ str algorithm) + (string? (syntax->datum #'str)) + (with-syntax ((bv (base32 (syntax->datum #'str)))) + #'(content-hash bv algorithm))) + ((_ (id str) algorithm) + (and (string? (syntax->datum #'str)) + (free-identifier=? #'id #'base32)) + (with-syntax ((bv (nix-base32-string->bytevector (syntax->datum #'str)))) + #'(content-hash bv algorithm))) + ((_ (id str) algorithm) + (and (string? (syntax->datum #'str)) + (free-identifier=? #'id #'base64)) + (with-syntax ((bv (base64-decode (syntax->datum #'str)))) + #'(content-hash bv algorithm))) + ((_ bv) + #'(content-hash bv sha256)) + ((_ bv hash) + #'(build-content-hash bv hash))))) + +(define (print-content-hash hash port) + (format port "#" + (content-hash-algorithm hash) + (bytevector->nix-base32-string (content-hash-value hash)))) + +(set-record-type-printer! print-content-hash) + + ;; The source of a package, such as a tarball URL and fetcher---called ;; "origin" to avoid name clash with `package-source', `source', etc. (define-record-type* - origin make-origin + %origin make-origin origin? this-origin (uri origin-uri) ; string (method origin-method) ; procedure - (sha256 origin-sha256) ; bytevector + (hash origin-hash) ; (file-name origin-file-name (default #f)) ; optional file name ;; Patches are delayed so that the 'search-patch' calls are made lazily, @@ -188,12 +261,37 @@ (patch-guile origin-patch-guile ; package or #f (default #f))) +(define-syntax origin-compatibility-helper + (syntax-rules (sha256) + ((_ () (fields ...)) + (%origin fields ...)) + ((_ ((sha256 exp) rest ...) (others ...)) + (%origin others ... + (hash (content-hash exp sha256)) + rest ...)) + ((_ (field rest ...) (others ...)) + (origin-compatibility-helper (rest ...) + (others ... field))))) + +(define-syntax-rule (origin fields ...) + "Build an record, automatically converting 'sha256' field +specifications to 'hash'." + (origin-compatibility-helper (fields ...) ())) + +(define-deprecated (origin-sha256 origin) + origin-hash + (let ((hash (origin-hash origin))) + (unless (eq? (content-hash-algorithm hash) 'sha256) + (raise (condition (&message + (message (G_ "no SHA256 hash for origin")))))) + (content-hash-value hash))) + (define (print-origin origin port) "Write a concise representation of ORIGIN to PORT." (match origin - (($ uri method sha256 file-name patches) + (($ uri method hash file-name patches) (simple-format port "#" - uri (bytevector->base32-string sha256) + uri hash (force patches) (number->string (object-address origin) 16))))) @@ -238,6 +336,7 @@ name of its URI." ;; git, svn, cvs, etc. reference #f)))) + (define %supported-systems ;; This is the list of system types that are supported. By default, we ;; expect all packages to build successfully here. @@ -1388,14 +1487,19 @@ unless you know what you are doing." #:optional (system (%current-system))) "Return the derivation corresponding to ORIGIN." (match origin - (($ uri method sha256 name (= force ()) #f) + (($ uri method hash name (= force ()) #f) ;; No patches, no snippet: this is a fixed-output derivation. - (method uri 'sha256 sha256 name #:system system)) - (($ uri method sha256 name (= force (patches ...)) snippet + (method uri + (content-hash-algorithm hash) + (content-hash-value hash) + name #:system system)) + (($ uri method hash name (= force (patches ...)) snippet (flags ...) inputs (modules ...) guile-for-build) ;; Patches and/or a snippet. - (mlet %store-monad ((source (method uri 'sha256 sha256 name - #:system system)) + (mlet %store-monad ((source (method uri + (content-hash-algorithm hash) + (content-hash-value hash) + name #:system system)) (guile (package->derivation (or guile-for-build (default-guile)) system diff --git a/guix/tests.scm b/guix/tests.scm index 95a7d7c4b8..3ccf049a7d 100644 --- a/guix/tests.scm +++ b/guix/tests.scm @@ -26,7 +26,7 @@ #:use-module (guix monads) #:use-module ((guix utils) #:select (substitute-keyword-arguments)) #:use-module ((guix build utils) #:select (mkdir-p)) - #:use-module (gcrypt hash) + #:use-module ((gcrypt hash) #:hide (sha256)) #:use-module (guix build-system gnu) #:use-module (gnu packages base) #:use-module (gnu packages bootstrap) diff --git a/tests/challenge.scm b/tests/challenge.scm index bb5633a3eb..9c6d6e0d58 100644 --- a/tests/challenge.scm +++ b/tests/challenge.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2015, 2017, 2019 Ludovic Courtès +;;; Copyright © 2015, 2017, 2019, 2020 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -19,7 +19,7 @@ (define-module (test-challenge) #:use-module (guix tests) #:use-module (guix tests http) - #:use-module (gcrypt hash) + #:use-module ((gcrypt hash) #:prefix gcrypt:) #:use-module (guix store) #:use-module (guix monads) #:use-module (guix derivations) @@ -135,7 +135,7 @@ (mlet* %store-monad ((drv (gexp->derivation "something" #~(list #$output #$text))) (out -> (derivation->output-path drv)) - (hash -> (sha256 #vu8()))) + (hash -> (gcrypt:sha256 #vu8()))) (with-derivation-narinfo* drv (sha256 => hash) (>>= (compare-contents (list out) (%test-substitute-urls)) (match-lambda diff --git a/tests/derivations.scm b/tests/derivations.scm index a409fa99f0..9f1104a887 100644 --- a/tests/derivations.scm +++ b/tests/derivations.scm @@ -23,7 +23,7 @@ #:use-module (guix grafts) #:use-module (guix store) #:use-module (guix utils) - #:use-module (gcrypt hash) + #:use-module ((gcrypt hash) #:prefix gcrypt:) #:use-module (guix base32) #:use-module (guix tests) #:use-module (guix tests http) @@ -215,7 +215,7 @@ #:env-vars `(("url" . ,(object->string (%local-url)))) #:hash-algo 'sha256 - #:hash (sha256 (string->utf8 text))))) + #:hash (gcrypt:sha256 (string->utf8 text))))) (and (build-derivations %store (list drv)) (string=? (call-with-input-file (derivation->output-path drv) get-string-all) @@ -230,7 +230,7 @@ #:env-vars `(("url" . ,(object->string (%local-url)))) #:hash-algo 'sha256 - #:hash (sha256 (random-bytevector 100))))) ;wrong + #:hash (gcrypt:sha256 (random-bytevector 100))))) ;wrong (guard (c ((store-protocol-error? c) (string-contains (store-protocol-error-message c) "failed"))) (build-derivations %store (list drv)) @@ -245,7 +245,7 @@ #:env-vars `(("url" . ,(object->string (%local-url)))) #:hash-algo 'sha256 - #:hash (sha256 (random-bytevector 100))))) + #:hash (gcrypt:sha256 (random-bytevector 100))))) (guard (c ((store-protocol-error? c) (string-contains (store-protocol-error-message (pk c)) "failed"))) (build-derivations %store (list drv)) @@ -273,7 +273,7 @@ #:env-vars `(("url" . ,(object->string (%local-url)))) #:hash-algo 'sha256 - #:hash (sha256 (string->utf8 text))))) + #:hash (gcrypt:sha256 (string->utf8 text))))) (and (with-http-server `((200 ,text)) (build-derivations %store (list drv))) (with-http-server `((200 ,text)) @@ -317,7 +317,7 @@ (test-assert "fixed-output-derivation?" (let* ((builder (add-text-to-store %store "my-fixed-builder.sh" "echo -n hello > $out" '())) - (hash (sha256 (string->utf8 "hello"))) + (hash (gcrypt:sha256 (string->utf8 "hello"))) (drv (derivation %store "fixed" %bash `(,builder) #:sources (list builder) @@ -329,10 +329,10 @@ (map (lambda (hash-algorithm) (let* ((builder (add-text-to-store %store "my-fixed-builder.sh" "echo -n hello > $out" '())) - (sha256 (sha256 (string->utf8 "hello"))) - (hash (bytevector-hash + (sha256 (gcrypt:sha256 (string->utf8 "hello"))) + (hash (gcrypt:bytevector-hash (string->utf8 "hello") - (lookup-hash-algorithm hash-algorithm))) + (gcrypt:lookup-hash-algorithm hash-algorithm))) (drv (derivation %store (string-append "fixed-" (symbol->string hash-algorithm)) @@ -353,7 +353,7 @@ "echo -n hello > $out" '())) (builder2 (add-text-to-store %store "fixed-builder2.sh" "echo hey; echo -n hello > $out" '())) - (hash (sha256 (string->utf8 "hello"))) + (hash (gcrypt:sha256 (string->utf8 "hello"))) (drv1 (derivation %store "fixed" %bash `(,builder1) #:hash hash #:hash-algo 'sha256)) @@ -368,7 +368,7 @@ (test-assert "fixed-output derivation, recursive" (let* ((builder (add-text-to-store %store "my-fixed-builder.sh" "echo -n hello > $out" '())) - (hash (sha256 (string->utf8 "hello"))) + (hash (gcrypt:sha256 (string->utf8 "hello"))) (drv (derivation %store "fixed-rec" %bash `(,builder) #:sources (list builder) @@ -390,7 +390,7 @@ "echo -n hello > $out" '())) (builder2 (add-text-to-store %store "fixed-builder2.sh" "echo hey; echo -n hello > $out" '())) - (hash (sha256 (string->utf8 "hello"))) + (hash (gcrypt:sha256 (string->utf8 "hello"))) (fixed1 (derivation %store "fixed" %bash `(,builder1) #:hash hash #:hash-algo 'sha256)) @@ -427,7 +427,7 @@ "echo -n hello > $out" '())) (builder2 (add-text-to-store %store "fixed-builder2.sh" "echo hey; echo -n hello > $out" '())) - (hash (sha256 (string->utf8 "hello"))) + (hash (gcrypt:sha256 (string->utf8 "hello"))) (fixed1 (derivation %store "fixed" %bash `(,builder1) #:hash hash #:hash-algo 'sha256)) @@ -680,7 +680,7 @@ (let* ((value (getenv "GUIX_STATE_DIRECTORY")) (drv (derivation %store "leaked-env-vars" %bash '("-c" "echo -n $GUIX_STATE_DIRECTORY > $out") - #:hash (sha256 (string->utf8 value)) + #:hash (gcrypt:sha256 (string->utf8 value)) #:hash-algo 'sha256 #:sources (list %bash) #:leaked-env-vars '("GUIX_STATE_DIRECTORY")))) @@ -1106,7 +1106,7 @@ (builder2 '(call-with-output-file (pk 'difference-here! %output) (lambda (p) (write "hello" p)))) - (hash (sha256 (string->utf8 "hello"))) + (hash (gcrypt:sha256 (string->utf8 "hello"))) (input1 (build-expression->derivation %store "fixed" builder1 #:hash hash #:hash-algo 'sha256)) @@ -1127,7 +1127,7 @@ (builder2 '(call-with-output-file (pk 'difference-here! %output) (lambda (p) (write "hello" p)))) - (hash (sha256 (string->utf8 "hello"))) + (hash (gcrypt:sha256 (string->utf8 "hello"))) (input1 (build-expression->derivation %store "fixed" builder1 #:hash hash #:hash-algo 'sha256)) diff --git a/tests/graph.scm b/tests/graph.scm index 136260c7d1..0663d13b49 100644 --- a/tests/graph.scm +++ b/tests/graph.scm @@ -162,7 +162,11 @@ edges." (let-values (((backend nodes+edges) (make-recording-backend))) (let* ((m (lambda* (uri hash-type hash name #:key system) (text-file "foo-1.2.3.tar.gz" "This is a fake!"))) - (o (origin (method m) (uri "the-uri") (sha256 #vu8(0 1 2)))) + (o (origin + (method m) (uri "the-uri") + (sha256 + (base32 + "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")))) (p (dummy-package "p" (source o)))) (run-with-store %store (export-graph (list p) 'port diff --git a/tests/packages.scm b/tests/packages.scm index c528d2080c..4935d4503e 100644 --- a/tests/packages.scm +++ b/tests/packages.scm @@ -29,7 +29,7 @@ #:renamer (lambda (name) (cond ((eq? name 'location) 'make-location) (else name)))) - #:use-module (gcrypt hash) + #:use-module ((gcrypt hash) #:hide (sha256)) #:use-module (guix derivations) #:use-module (guix packages) #:use-module (guix grafts) @@ -51,6 +51,7 @@ #:use-module (srfi srfi-34) #:use-module (srfi srfi-35) #:use-module (srfi srfi-64) + #:use-module (rnrs bytevectors) #:use-module (rnrs io ports) #:use-module (ice-9 vlist) #:use-module (ice-9 regex) @@ -497,6 +498,31 @@ (search-path %load-path "guix/base32.scm") get-bytevector-all))))) +(test-equal "package-source-derivation, origin, sha512" + "hello" + (let* ((bash (search-bootstrap-binary "bash" (%current-system))) + (builder (add-text-to-store %store "my-fixed-builder.sh" + "echo -n hello > $out" '())) + (method (lambda* (url hash-algo hash #:optional name + #:rest rest) + (and (eq? hash-algo 'sha512) + (raw-derivation name bash (list builder) + #:sources (list builder) + #:hash hash + #:hash-algo hash-algo)))) + (source (origin + (method method) + (uri "unused://") + (file-name "origin-sha512") + (hash (content-hash + (bytevector-hash (string->utf8 "hello") + (hash-algorithm sha512)) + sha512)))) + (drv (package-source-derivation %store source)) + (output (derivation->output-path drv))) + (build-derivations %store (list drv)) + (call-with-input-file output get-string-all))) + (unless (network-reachable?) (test-skip 1)) (test-equal "package-source-derivation, snippet" "OK" diff --git a/tests/store.scm b/tests/store.scm index f007846dc1..06f7939657 100644 --- a/tests/store.scm +++ b/tests/store.scm @@ -22,7 +22,7 @@ #:use-module (guix store) #:use-module (guix utils) #:use-module (guix monads) - #:use-module (gcrypt hash) + #:use-module ((gcrypt hash) #:prefix gcrypt:) #:use-module (guix base32) #:use-module (guix packages) #:use-module (guix derivations) @@ -321,7 +321,7 @@ #:env-vars `(("t2" . ,t2)))) (o (derivation->output-path d))) (with-derivation-narinfo d - (sha256 => (sha256 (string->utf8 t2))) + (sha256 => (gcrypt:sha256 (string->utf8 t2))) (references => (list t2)) (equal? (references/substitutes s (list o t3 t2 t1)) @@ -940,7 +940,7 @@ (foldm %store-monad (lambda (item result) (define ref-hash - (let-values (((port get) (open-sha256-port))) + (let-values (((port get) (gcrypt:open-sha256-port))) (write-file item port) (close-port port) (get))) @@ -1144,7 +1144,7 @@ (info (query-path-info %store item))) (and (equal? (path-info-references info) (list ref)) (equal? (path-info-hash info) - (sha256 + (gcrypt:sha256 (string->utf8 (call-with-output-string (cut write-file item <>)))))))) -- cgit v1.2.3 From ef1d475b00822194e8e4db794756815d00b7d132 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 22 May 2020 00:25:26 +0200 Subject: gnu: llvm: Remove unused 'package-elisp-from-package' procedure. This private procedure had been unused since 3a3d4d9d545028cda846ae827a60249f7162d34e. * gnu/packages/llvm.scm (package-elisp-from-package): Remove. --- gnu/packages/llvm.scm | 29 ----------------------------- 1 file changed, 29 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index 15e15281a7..47b490aac8 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -866,35 +866,6 @@ with that of libgomp, the GNU Offloading and Multi Processing Library.") "This package provides a Python binding to LLVM for use in Numba.") (license license:bsd-3))) -(define (package-elisp-from-package source-package package-name - source-files) - "Return a package definition named PACKAGE-NAME that packages the Emacs Lisp -SOURCE-FILES found in SOURCE-PACKAGE." - (let ((orig (package-source source-package))) - (package - (inherit source-package) - (name package-name) - (build-system emacs-build-system) - (source (origin - (method (origin-method orig)) - (uri (origin-uri orig)) - (sha256 (origin-sha256 orig)) - (file-name (string-append package-name "-" - (package-version source-package))) - (modules '((guix build utils) - (srfi srfi-1) - (ice-9 ftw))) - (snippet - `(let* ((source-files (quote ,source-files)) - (basenames (map basename source-files))) - (map copy-file - source-files basenames) - (map delete-file-recursively - (fold delete - (scandir ".") - (append '("." "..") basenames))) - #t))))))) - (define-public emacs-clang-format (package (inherit clang) -- cgit v1.2.3 From 0bdfae5363f01a2ad0954ea864ab604c5062fb33 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 22 May 2020 10:55:09 +0300 Subject: gnu: freeipmi: Update to 1.6.5. * gnu/packages/freeipmi.scm (freeipmi): Update to 1.6.5. --- gnu/packages/freeipmi.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/freeipmi.scm b/gnu/packages/freeipmi.scm index 57fe527cbe..4dd9cb7271 100644 --- a/gnu/packages/freeipmi.scm +++ b/gnu/packages/freeipmi.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Ludovic Courtès -;;; Copyright © 2015, 2016, 2017 Efraim Flashner +;;; Copyright © 2015, 2016, 2017, 2020 Efraim Flashner ;;; Copyright © 2019 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. @@ -28,14 +28,14 @@ (define-public freeipmi (package (name "freeipmi") - (version "1.6.4") + (version "1.6.5") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/freeipmi/freeipmi-" version ".tar.gz")) (sha256 (base32 - "0g0s4iwx0ng4rv7hp5cc3kkx4drahsc89981gwjblf04lfavppv5")))) + "1ncf1s84752xaq07h36wrxa5ww1167s2bizkww0igxv8djyddwk1")))) (build-system gnu-build-system) (inputs `(("libgcrypt" ,libgcrypt))) -- cgit v1.2.3 From d8feee9f18ede0d1ea4d0e4876f09a0dab770295 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 22 May 2020 11:00:06 +0300 Subject: gnu: freeipmi: Don't build static libraries. This shrinks the size of the package by about 33%. * gnu/packages/freeipmi.scm (freeipmi)[arguments]: Add configure-flag to disable static libraries. --- gnu/packages/freeipmi.scm | 2 ++ 1 file changed, 2 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/freeipmi.scm b/gnu/packages/freeipmi.scm index 4dd9cb7271..78ab287c5b 100644 --- a/gnu/packages/freeipmi.scm +++ b/gnu/packages/freeipmi.scm @@ -37,6 +37,8 @@ (base32 "1ncf1s84752xaq07h36wrxa5ww1167s2bizkww0igxv8djyddwk1")))) (build-system gnu-build-system) + (arguments + '(#:configure-flags '("--disable-static"))) (inputs `(("libgcrypt" ,libgcrypt))) (home-page "https://www.gnu.org/software/freeipmi/") -- cgit v1.2.3 From 21051eb79efece62d3bda495ce554239ae7bbde2 Mon Sep 17 00:00:00 2001 From: Vinicius Monego Date: Fri, 22 May 2020 17:45:19 +0200 Subject: gnu: Add glabels. * gnu/packages/gnome.scm (glabels): New variable. Signed-off-by: Nicolas Goaziou --- gnu/packages/gnome.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 938efbcdf3..f4703d4dde 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -51,6 +51,7 @@ ;;; Copyright © 2020 Nicolas Goaziou ;;; Copyright © 2020 Naga Malleswari ;;; Copyright © 2020 Ryan Prior +;;; Copyright © 2020 Vinicius Monego ;;; ;;; This file is part of GNU Guix. ;;; @@ -10013,6 +10014,37 @@ to.") ;; snowball license:bsd-2)))) +(define-public glabels + (package + (name "glabels") + (version "3.4.1") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + "glabels-" version ".tar.xz")) + (sha256 + (base32 "0f2rki8i27pkd9r0gz03cdl1g4vnmvp0j49nhxqn275vi8lmgr0q")))) + (build-system glib-or-gtk-build-system) + (native-inputs + `(("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("intltool" ,intltool) + ("itstool" ,itstool) + ("pkg-config" ,pkg-config))) + (inputs + `(("gtk+" ,gtk+) + ("librsvg" ,librsvg) + ("libxml2" ,libxml2))) + (home-page "https://glabels.org/") + (synopsis "Program for creating labels and business cards") + (description + "gLabels is a program for creating labels and business cards. It is +designed to work with various laser/ink-jet peel-off label and business +card sheets that you’ll find at most office supply stores.") + (license license:gpl3+))) + (define-public libratbag (package (name "libratbag") -- cgit v1.2.3 From 50ea3135e0948a042cd3b899e970f6ade291a0c2 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 22 May 2020 18:34:22 +0200 Subject: gnu: bash: Do not autoload (gcrypt hash). Fixes . Reported by Matias Jose Seco Baccanelli . * gnu/packages/bash.scm: Avoid #:autoload for (gcrypt hash). On Guile 2.2, autoloading would bring it not only the 'port-sha256' binding (as on 3.0) but also the 'sha256' binding. As a result, use of 'sha256' in the 'origin' form wouldn't match. --- gnu/packages/bash.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/bash.scm b/gnu/packages/bash.scm index 311e07a944..3ba8a13e40 100644 --- a/gnu/packages/bash.scm +++ b/gnu/packages/bash.scm @@ -38,8 +38,11 @@ #:use-module (guix store) #:use-module (guix build-system gnu) #:autoload (guix gnupg) (gnupg-verify*) - #:autoload (gcrypt hash) (port-sha256) #:autoload (guix base32) (bytevector->nix-base32-string) + + ;; See for why not #:autoload here. + #:use-module ((gcrypt hash) #:select (port-sha256)) + #:use-module (srfi srfi-1) #:use-module (srfi srfi-26) #:use-module (ice-9 format)) -- cgit v1.2.3 From 9af90aafdfd8afd5fb7b5377ca5daf2215d38d7a Mon Sep 17 00:00:00 2001 From: Caleb Ristvedt Date: Thu, 21 May 2020 20:30:58 -0500 Subject: gnu: guile-fibers: Add patch to fix resource leak. guile-fibers@1.0.0 has a resource leak where run-fibers will only destroy one scheduler, but it creates as many as there are cpu cores by default (see https://github.com/wingo/fibers/issues/36). This causes the tests to fail on systems with many cores, and can cause guile to crash under certain circumstances. This fixes that resource leak. At present neither git master nor the latest release has fixed this yet. * gnu/packages/patches/guile-fibers-destroy-peer-schedulers.patch: New patch. * gnu/local.mk: Add it to the list of patches. * gnu/packages/guile-xyz.scm (guile-fibers): Use it. --- gnu/local.mk | 1 + gnu/packages/guile-xyz.scm | 5 ++++- .../guile-fibers-destroy-peer-schedulers.patch | 24 ++++++++++++++++++++++ 3 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/guile-fibers-destroy-peer-schedulers.patch (limited to 'gnu') diff --git a/gnu/local.mk b/gnu/local.mk index 1d9de9a57e..2f24f892b1 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1053,6 +1053,7 @@ dist_patch_DATA = \ %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-fibers-destroy-peer-schedulers.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 \ diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm index 674b1f922b..a1deee32d1 100644 --- a/gnu/packages/guile-xyz.scm +++ b/gnu/packages/guile-xyz.scm @@ -523,7 +523,10 @@ Unix-style DSV format and RFC 4180 format.") (("#:use-module \\(fibers\\)") (string-append "#:use-module (fibers)\n" "#:use-module (ice-9 threads)\n"))) - #t)))) + #t)) + (patches + ;; fixes a resource leak that causes crashes in the tests + (search-patches "guile-fibers-destroy-peer-schedulers.patch")))) (build-system gnu-build-system) (arguments '(;; The code uses 'scm_t_uint64' et al., which are deprecated in 3.0. diff --git a/gnu/packages/patches/guile-fibers-destroy-peer-schedulers.patch b/gnu/packages/patches/guile-fibers-destroy-peer-schedulers.patch new file mode 100644 index 0000000000..8bb7153153 --- /dev/null +++ b/gnu/packages/patches/guile-fibers-destroy-peer-schedulers.patch @@ -0,0 +1,24 @@ +Fibers 1.0.0 has a bug in run-fibers in which peer schedulers aren't destroyed - +so if you had 4 cores, 1 would be destroyed when run-fibers returned, but the +other 3 would stay around. Each scheduler uses 3 file descriptors, so for +machines with many cores, this resource leak adds up quickly - quickly enough +that the test suite can even fail because of it. + +See https://github.com/wingo/fibers/issues/36. + +This fixes that. It should be safe to destroy the peer schedulers at the given +point because the threads that could be running them are all either dead or the +current thread. + +As of May 21, 2020, this bug still existed in the 1.0.0 (latest) release and in +git master. +--- a/fibers.scm 2020-05-21 18:38:06.890690154 -0500 ++++ b/fibers.scm 2020-05-21 18:38:56.395686693 -0500 +@@ -137,5 +137,6 @@ + (%run-fibers scheduler hz finished? affinity)) + (lambda () + (stop-auxiliary-threads scheduler))))) ++ (for-each destroy-scheduler (scheduler-remote-peers scheduler)) + (destroy-scheduler scheduler) + (apply values (atomic-box-ref ret)))))) + -- cgit v1.2.3 From 01c22be7bb48f0500ac5c9e16f8210222e9286ef Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Sat, 9 May 2020 18:48:35 +0200 Subject: gnu: network-manager: Update to 1.24.0. * gnu/packages/gnome.scm (network-manager): Update to 1.24.0. --- gnu/packages/gnome.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index f4703d4dde..2fed03ab08 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -52,6 +52,7 @@ ;;; Copyright © 2020 Naga Malleswari ;;; Copyright © 2020 Ryan Prior ;;; Copyright © 2020 Vinicius Monego +;;; Copyright © 2020 Brice Waegeneire ;;; ;;; This file is part of GNU Guix. ;;; @@ -6350,7 +6351,7 @@ users.") (define-public network-manager (package (name "network-manager") - (version "1.18.4") + (version "1.24.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/NetworkManager/" @@ -6359,7 +6360,7 @@ users.") (patches (search-patches "nm-plugin-path.patch")) (sha256 (base32 - "0pnh1wr2p1fqa5pr945fr3lngfc5ccfrmgddqsg55lxnjpv0ggd3")) + "06044fl60bjlj7c6rqqfbm5795h61h6yzp7ch392hzcnm46wwhn3")) (modules '((guix build utils))) (snippet '(begin -- cgit v1.2.3 From c2f236fa92748b92458495ac58c6c7954bebc2d2 Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Mon, 11 May 2020 09:07:17 +0200 Subject: gnu: network-manager: Add iwd support. --- gnu/packages/gnome.scm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 2fed03ab08..46166e078d 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -6382,7 +6382,9 @@ users.") "--with-suspend-resume=elogind" "--with-consolekit=no" "--with-crypto=gnutls" - "--disable-config-plugin-ibft" + "--with-iwd=yes" + "--with-libaudit=yes" + "--with-resolvconf=yes" "--sysconfdir=/etc" "--localstatedir=/var" (string-append "--with-udev-dir=" @@ -6436,10 +6438,6 @@ users.") (lambda _ ;; For the missing /etc/machine-id. (setenv "DBUS_FATAL_WARNINGS" "0") - - ;; XXX: Regenerate some of the tests that are dependent on Python version. - ;; Try removing this variable for newer versions of NetworkManager. - (setenv "NM_TEST_REGENERATE" "1") #t)) (replace 'install (lambda _ @@ -6474,7 +6472,9 @@ users.") ("gnutls" ,gnutls) ("iptables" ,iptables) ("isc-dhcp" ,isc-dhcp) + ("iwd" ,iwd) ; wpa_supplicant alternative ("jansson" ,jansson) + ("libaudit" ,audit) ("libgcrypt" ,libgcrypt) ("libgudev" ,libgudev) ("libndp" ,libndp) @@ -6482,6 +6482,7 @@ users.") ("libsoup" ,libsoup) ("modem-manager" ,modem-manager) ("newt" ,newt) ;for the 'nmtui' console interface + ("openresolv" ,openresolv) ; alternative resolv.conf manager ("polkit" ,polkit) ("ppp" ,ppp) ("readline" ,readline) -- cgit v1.2.3 From 255ff74f3ab514a76068f6cfccc7f8dbcf8b7f3f Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Mon, 11 May 2020 15:39:57 +0200 Subject: gnu: network-manager: Switch to meson-build-system. --- gnu/packages/gnome.scm | 134 ++++++++++++++++++++++++++----------------------- 1 file changed, 71 insertions(+), 63 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 46166e078d..fb7c3b4fbd 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -6367,42 +6367,42 @@ users.") (substitute* "src/devices/wwan/nm-modem-manager.c" (("systemd") "elogind")) #t)))) - (build-system gnu-build-system) + (build-system meson-build-system) (outputs '("out" "doc")) ; 8 MiB of gtk-doc HTML (arguments - '(#:configure-flags + `(#:configure-flags (let ((out (assoc-ref %outputs "out")) - (doc (assoc-ref %outputs "doc")) (dhclient (string-append (assoc-ref %build-inputs "isc-dhcp") "/sbin/dhclient"))) - (list "--with-libnm-glib" ; needed by network-manager-applet - "--with-systemd-journal=no" - "--with-session-tracking=elogind" - "--with-suspend-resume=elogind" - "--with-consolekit=no" - "--with-crypto=gnutls" - "--with-iwd=yes" - "--with-libaudit=yes" - "--with-resolvconf=yes" - "--sysconfdir=/etc" - "--localstatedir=/var" - (string-append "--with-udev-dir=" - out "/lib/udev") - (string-append "--with-dbus-sys-dir=" - out "/etc/dbus-1/system.d") - (string-append "--with-html-dir=" - doc "/share/gtk-doc/html") - (string-append "--with-dhclient=" dhclient))) + (list + ;; Otherwise, the RUNPATH will lack the final 'NetworkManager' path + ;; component. + (string-append "-Dc_link_args=-Wl,-rpath=" + out "/lib:" + out "/lib/NetworkManager/" ,version) + "-Dsystemd_journal=false" + "-Dsession_tracking=elogind" + "-Dsuspend_resume=elogind" + "-Dsystemdsystemunitdir=no" + "-Dsession_tracking_consolekit=false" + "-Ddhcpcd=no" + "-Ddhcpcanon=no" + "-Dcrypto=gnutls" + "-Diwd=true" + "-Dlibaudit=yes" + "-Dqt=false" + "-Ddocs=true" + "--sysconfdir=/etc" + "--localstatedir=/var" + (string-append "-Dudev_dir=" + out "/lib/udev") + (string-append "-Ddbus_conf_dir=" + out "/etc/dbus-1/system.d") + + (string-append "-Ddhclient=" dhclient))) #:phases (modify-phases %standard-phases - ;; This bare "ls" invocation breaks some tests. - (add-after 'unpack 'patch-ls-invocation - (lambda _ - (substitute* "build-aux/ltmain.sh" - (("`ls -") - (string-append "`" (which "ls") " -"))) - #t)) (add-before 'configure 'pre-configure (lambda _ ;; These tests try to test aspects of network-manager's @@ -6410,61 +6410,64 @@ users.") ;; cope with being already in the Guix build jail as that jail ;; lacks some features that they would like to proxy over (like ;; a /sys mount). - (substitute* '("Makefile.in") - (("src/platform/tests/test-address-linux") " ") - (("src/platform/tests/test-cleanup-linux") " ") - (("src/platform/tests/test-link-linux") " ") - (("src/platform/tests/test-route-linux") " ") - (("src/devices/tests/test-acd") "") - (("src/devices/tests/test-arping") " ") - (("src/devices/tests/test-lldp") " ") - (("src/tests/test-route-manager-linux") " ")) - #t)) - (add-after 'unpack 'delete-failing-tests - (lambda _ - ;; FIXME: These three tests fail for unknown reasons. - ;; ERROR:libnm-core/tests/test-general.c:5842: - ;; _json_config_check_valid: assertion failed (res == expected): (1 == 0) - ;; ERROR:libnm-core/tests/test-keyfile.c:647: - ;; test_team_conf_read_invalid: assertion failed: (nm_setting_team_get_config (s_team) == NULL) - ;; ERROR:libnm-core/tests/test-setting.c:907: - ;; _test_team_config_sync: assertion failed: (nm_streq0 (nm_setting_team_get_runner (s_team), runner)) - (substitute* "Makefile.in" - (("libnm-core/tests/test-general") " ") - (("libnm-core/tests/test-keyfile") " ") - (("libnm-core/tests/test-setting\\$\\(EXEEXT\\)") " ")) + (substitute* "src/platform/tests/meson.build" + ((".*test-address-linux.*") "") + ((".*test-cleanup-linux.*") "") + ((".*test-link-linux.*") "") + ((".*test-route-linux.*") "")) + (substitute* "src/devices/tests/meson.build" + ((".*test-acd.*") "") + ((".*test-lldp.*") "")) #t)) + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + (let ((xmldoc (string-append (assoc-ref inputs "docbook-xml") + "/xml/dtd/docbook"))) + (substitute* (find-files "." ".*\\.(xsl|xml)") + (("http://.*/docbookx\\.dtd") + (string-append xmldoc "/docbookx.dtd"))) + #t))) (add-before 'check 'pre-check (lambda _ ;; For the missing /etc/machine-id. (setenv "DBUS_FATAL_WARNINGS" "0") #t)) - (replace 'install + (add-before 'install 'no-polkit-magic + ;; Meson ‘magically’ invokes pkexec, which fails (not setuid). (lambda _ - (invoke "make" - "sysconfdir=/tmp" - "rundir=/tmp" - "statedir=/tmp" - "nmstatedir=/tmp/nm" - "install") - #t))))) + (setenv "PKEXEC_UID" "something") + #t)) + (add-after 'install 'move-doc + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (doc (assoc-ref outputs "doc"))) + (mkdir-p (string-append doc "/share")) + (for-each (lambda (directory) + (copy-recursively (string-append out directory) + (string-append doc directory)) + (delete-file-recursively + (string-append out directory))) + '("/share/doc" "/share/gtk-doc")) + #t)))))) (propagated-inputs `(("glib" ,glib))) (native-inputs - `(("glib:bin" ,glib "bin") ; for gdbus-codegen + `(("glib:bin" ,glib "bin") ; for gdbus-codegen + ("gtk-doc" ,gtk-doc) ("gobject-introspection" ,gobject-introspection) + ("docbook-xml" ,docbook-xml) ("docbook-xsl" ,docbook-xsl) ("intltool" ,intltool) ("libxslt" ,libxslt) ("libxml2" ,libxml2) ("pkg-config" ,pkg-config) + ("vala" ,vala) ;; For testing. ("python" ,python-wrapper) ("python-dbus" ,python-dbus) ("python-pygobject" ,python-pygobject))) (inputs - `(("coreutils" ,coreutils) ; for ls - ("curl" ,curl) + `(("curl" ,curl) ("cyrus-sasl" ,cyrus-sasl) ("dbus-glib" ,dbus-glib) ("dnsmasq" ,dnsmasq) @@ -6480,6 +6483,7 @@ users.") ("libndp" ,libndp) ("libnl" ,libnl) ("libsoup" ,libsoup) + ("mobile-broadband-provider-info" ,mobile-broadband-provider-info) ("modem-manager" ,modem-manager) ("newt" ,newt) ;for the 'nmtui' console interface ("openresolv" ,openresolv) ; alternative resolv.conf manager @@ -6496,7 +6500,11 @@ devices and connections, attempting to keep active network connectivity when available. It manages ethernet, WiFi, mobile broadband (WWAN), and PPPoE devices, and provides VPN integration with a variety of different VPN services.") - (license license:gpl2+) + ;; “This NetworkManager project consists of the daemon, client tools, and + ;; libnm. libnm is licensed LGPL-2.1+, while the rest is licensed under + ;; GPL-2.0+.” + (license (list license:gpl2+ + license:lgpl2.1+)) (properties '((upstream-name . "NetworkManager"))))) (define-public network-manager-openvpn -- cgit v1.2.3 From 8d0548fd34ff4b6f79b58a77f7266f3e672beb62 Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Mon, 11 May 2020 16:45:24 +0200 Subject: gnu: network-manager: Appease guix lint. * gnu/packages/gnome.scm (network-manager)[home-page]: Use the permenant redirect URL. * gnu/packages/patches/nm-plugin-path.patch: Renamed to 'gnu/packages/patches/network-manager-plugin-path.patch'. --- gnu/local.mk | 2 +- gnu/packages/gnome.scm | 4 +- .../patches/network-manager-plugin-path.patch | 51 ++++++++++++++++++++++ gnu/packages/patches/nm-plugin-path.patch | 51 ---------------------- 4 files changed, 54 insertions(+), 54 deletions(-) create mode 100644 gnu/packages/patches/network-manager-plugin-path.patch delete mode 100644 gnu/packages/patches/nm-plugin-path.patch (limited to 'gnu') diff --git a/gnu/local.mk b/gnu/local.mk index 2f24f892b1..961dedfdf6 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1297,7 +1297,7 @@ dist_patch_DATA = \ %D%/packages/patches/netsurf-y2038-tests.patch \ %D%/packages/patches/netsurf-longer-test-timeout.patch \ %D%/packages/patches/ngircd-handle-zombies.patch \ - %D%/packages/patches/nm-plugin-path.patch \ + %D%/packages/patches/network-manager-plugin-path.patch \ %D%/packages/patches/nsis-env-passthru.patch \ %D%/packages/patches/nss-increase-test-timeout.patch \ %D%/packages/patches/nss-pkgconfig.patch \ diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index fb7c3b4fbd..784eb65426 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -6357,7 +6357,7 @@ users.") (uri (string-append "mirror://gnome/sources/NetworkManager/" (version-major+minor version) "/" "NetworkManager-" version ".tar.xz")) - (patches (search-patches "nm-plugin-path.patch")) + (patches (search-patches "network-manager-plugin-path.patch")) (sha256 (base32 "06044fl60bjlj7c6rqqfbm5795h61h6yzp7ch392hzcnm46wwhn3")) @@ -6493,7 +6493,7 @@ users.") ("util-linux" ,util-linux) ("elogind" ,elogind))) (synopsis "Network connection manager") - (home-page "https://www.gnome.org/projects/NetworkManager/") + (home-page "https://wiki.gnome.org/Projects/NetworkManager") (description "NetworkManager is a system network service that manages your network devices and connections, attempting to keep active network connectivity when diff --git a/gnu/packages/patches/network-manager-plugin-path.patch b/gnu/packages/patches/network-manager-plugin-path.patch new file mode 100644 index 0000000000..505ae31534 --- /dev/null +++ b/gnu/packages/patches/network-manager-plugin-path.patch @@ -0,0 +1,51 @@ +From d3026a6d331298003ccc6cd9d2e20dcb7fa9ae1d Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Tom=C3=A1=C5=A1=20=C4=8Cech?= +Date: Wed, 3 Jul 2019 13:31:54 +0200 +Subject: [PATCH] respect NM_VPN_PLUGIN_DIR + +--- + src/vpn/nm-vpn-manager.c | 14 ++++++++++++++ + 1 file changed, 14 insertions(+) + +diff --git a/src/vpn/nm-vpn-manager.c b/src/vpn/nm-vpn-manager.c +index d063916..d779166 100644 +--- a/src/vpn/nm-vpn-manager.c ++++ b/src/vpn/nm-vpn-manager.c +@@ -223,6 +223,7 @@ nm_vpn_manager_init (NMVpnManager *self) + GSList *infos, *info; + const char *conf_dir_etc = _nm_vpn_plugin_info_get_default_dir_etc (); + const char *conf_dir_lib = _nm_vpn_plugin_info_get_default_dir_lib (); ++ const char *conf_dir_user = _nm_vpn_plugin_info_get_default_dir_user (); + + /* Watch the VPN directory for changes */ + file = g_file_new_for_path (conf_dir_lib); +@@ -241,6 +242,14 @@ nm_vpn_manager_init (NMVpnManager *self) + G_CALLBACK (vpn_dir_changed), self); + } + ++ file = g_file_new_for_path (conf_dir_user); ++ priv->monitor_etc = g_file_monitor_directory (file, G_FILE_MONITOR_NONE, NULL, NULL); ++ g_object_unref (file); ++ if (priv->monitor_etc) { ++ priv->monitor_id_etc = g_signal_connect (priv->monitor_etc, "changed", ++ G_CALLBACK (vpn_dir_changed), self); ++ } ++ + /* first read conf_dir_lib. The name files are not really user configuration, but + * plugin configuration. Hence we expect ~newer~ plugins to install their files + * in /usr/lib/NetworkManager. We want to prefer those files. +@@ -255,6 +264,11 @@ nm_vpn_manager_init (NMVpnManager *self) + try_add_plugin (self, info->data); + g_slist_free_full (infos, g_object_unref); + ++ infos = _nm_vpn_plugin_info_list_load_dir (conf_dir_user, TRUE, 0, NULL, NULL); ++ for (info = infos; info; info = info->next) ++ try_add_plugin (self, info->data); ++ g_slist_free_full (infos, g_object_unref); ++ + priv->active_services = g_hash_table_new_full (nm_str_hash, g_str_equal, g_free, NULL); + } + +-- +2.22.0 + diff --git a/gnu/packages/patches/nm-plugin-path.patch b/gnu/packages/patches/nm-plugin-path.patch deleted file mode 100644 index 505ae31534..0000000000 --- a/gnu/packages/patches/nm-plugin-path.patch +++ /dev/null @@ -1,51 +0,0 @@ -From d3026a6d331298003ccc6cd9d2e20dcb7fa9ae1d Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Tom=C3=A1=C5=A1=20=C4=8Cech?= -Date: Wed, 3 Jul 2019 13:31:54 +0200 -Subject: [PATCH] respect NM_VPN_PLUGIN_DIR - ---- - src/vpn/nm-vpn-manager.c | 14 ++++++++++++++ - 1 file changed, 14 insertions(+) - -diff --git a/src/vpn/nm-vpn-manager.c b/src/vpn/nm-vpn-manager.c -index d063916..d779166 100644 ---- a/src/vpn/nm-vpn-manager.c -+++ b/src/vpn/nm-vpn-manager.c -@@ -223,6 +223,7 @@ nm_vpn_manager_init (NMVpnManager *self) - GSList *infos, *info; - const char *conf_dir_etc = _nm_vpn_plugin_info_get_default_dir_etc (); - const char *conf_dir_lib = _nm_vpn_plugin_info_get_default_dir_lib (); -+ const char *conf_dir_user = _nm_vpn_plugin_info_get_default_dir_user (); - - /* Watch the VPN directory for changes */ - file = g_file_new_for_path (conf_dir_lib); -@@ -241,6 +242,14 @@ nm_vpn_manager_init (NMVpnManager *self) - G_CALLBACK (vpn_dir_changed), self); - } - -+ file = g_file_new_for_path (conf_dir_user); -+ priv->monitor_etc = g_file_monitor_directory (file, G_FILE_MONITOR_NONE, NULL, NULL); -+ g_object_unref (file); -+ if (priv->monitor_etc) { -+ priv->monitor_id_etc = g_signal_connect (priv->monitor_etc, "changed", -+ G_CALLBACK (vpn_dir_changed), self); -+ } -+ - /* first read conf_dir_lib. The name files are not really user configuration, but - * plugin configuration. Hence we expect ~newer~ plugins to install their files - * in /usr/lib/NetworkManager. We want to prefer those files. -@@ -255,6 +264,11 @@ nm_vpn_manager_init (NMVpnManager *self) - try_add_plugin (self, info->data); - g_slist_free_full (infos, g_object_unref); - -+ infos = _nm_vpn_plugin_info_list_load_dir (conf_dir_user, TRUE, 0, NULL, NULL); -+ for (info = infos; info; info = info->next) -+ try_add_plugin (self, info->data); -+ g_slist_free_full (infos, g_object_unref); -+ - priv->active_services = g_hash_table_new_full (nm_str_hash, g_str_equal, g_free, NULL); - } - --- -2.22.0 - -- cgit v1.2.3 From cf390391c817751bbf6c49539c68f277f23d4ad1 Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Mon, 11 May 2020 16:11:16 +0200 Subject: gnu: modem-manager: Update to 1.12.10. * gnu/packages/freedesktop.scm (modem-manager): Update to 1.12.10. [arguments]: Remove arguments '--disable-more-warnings'. --- gnu/packages/freedesktop.scm | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index f00cb1e076..90154cbba9 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -1115,7 +1115,7 @@ which speak the Qualcomm MSM Interface (QMI) protocol.") (define-public modem-manager (package (name "modem-manager") - (version "1.10.8") + (version "1.12.10") (source (origin (method url-fetch) (uri (string-append @@ -1123,15 +1123,11 @@ which speak the Qualcomm MSM Interface (QMI) protocol.") "ModemManager-" version ".tar.xz")) (sha256 (base32 - "16hnl0sdriqgv4v30mfs64mdl9rw7lsh802zlm3ggwxxil3p9qfb")))) + "1apq9camys2gaw6y6ic1ld20cncfwpmxnzvh4j5zkbbjpf5hbcxj")))) (build-system gnu-build-system) (arguments '(#:configure-flags - `(,(string-append "--with-udev-base-dir=" %output "/lib/udev") - ;; FIXME: Without this flag the build fails with "error: assignment - ;; from incompatible pointer type" whenever the return value of - ;; "g_object_ref" is assigned to "ctx->self". - "--disable-more-warnings"))) + `(,(string-append "--with-udev-base-dir=" %output "/lib/udev")))) (native-inputs `(("glib:bin" ,glib "bin") ; for glib-mkenums ("gobject-introspection" ,gobject-introspection) -- cgit v1.2.3 From 8b554a4e5a8a4b376db56d1e037eb804f2c12340 Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Mon, 11 May 2020 16:26:39 +0200 Subject: gnu: libnma: Update to 1.8.28. * gnu/packages/gnome.scm (libnma): Update to 1.8.28. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 784eb65426..f9756e4308 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -809,7 +809,7 @@ client devices can handle.") (define-public libnma (package (name "libnma") - (version "1.8.26") + (version "1.8.28") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -817,7 +817,7 @@ client devices can handle.") name "-" version ".tar.xz")) (sha256 (base32 - "1w9lld38risnk1krknfwln24kabdxnj274pyz4jhndphwigrshaf")))) + "09mp6k0hfam1vyyv9kcd8j4gb2r58i05ipx2nswb58ris599bxja")))) (build-system meson-build-system) (arguments `(#:glib-or-gtk? #t)) -- cgit v1.2.3 From c25ca6b79ea73a71eacbfa28a21ebdc5433e3c2a Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Mon, 11 May 2020 16:30:55 +0200 Subject: gnu: libnma: Update inputs. * gnu/packages/gnome.scm (libnam)[arguments]: Remove 'glib-or-gtk?' and add phase 'patch-docbook-xml'. [native-inputs]: Add 'docboock-xml-4.3' and 'vala'. [inputs]: Remove 'adwaita'icon-theme'. squash! gnu: libnma: Update inputs and licenses. --- gnu/packages/gnome.scm | 29 +++++++++++++++++++---------- 1 file changed, 19 insertions(+), 10 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index f9756e4308..3394c1eb75 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -820,16 +820,26 @@ client devices can handle.") "09mp6k0hfam1vyyv9kcd8j4gb2r58i05ipx2nswb58ris599bxja")))) (build-system meson-build-system) (arguments - `(#:glib-or-gtk? #t)) + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + (let ((xmldoc (string-append (assoc-ref inputs "docbook-xml") + "/xml/dtd/docbook"))) + (substitute* "libnma-docs.xml" + (("http://.*/docbookx\\.dtd") + (string-append xmldoc "/docbookx.dtd"))) + #t)))))) (native-inputs - `(("gettext" ,gettext-minimal) + `(("docbook-xml" ,docbook-xml-4.3) + ("gettext" ,gettext-minimal) ("glib:bin" ,glib "bin") ("gtk-doc" ,gtk-doc) ("gobject-introspection" ,gobject-introspection) - ("pkg-config" ,pkg-config))) + ("pkg-config" ,pkg-config) + ("vala" ,vala))) (inputs - `(("adwaita-icon-theme" ,adwaita-icon-theme) - ("gcr" ,gcr) + `(("gcr" ,gcr) ("gtk+" ,gtk+) ("iso-codes" ,iso-codes) ("mobile-broadband-provider-info" ,mobile-broadband-provider-info) @@ -838,11 +848,10 @@ client devices can handle.") (description "Libnma is an applet library for Network Manager. It was initially part of network-manager-applet and has now become a separate project.") - (home-page "https://gitlab.gnome.org/GNOME/libnma") - - ;; Some files carry the "GPL-2.0+" SPDX identifier while others say - ;; "LGPL-2.1+". - (license license:gpl2+))) + (home-page "https://gitlab.gnome.org/GNOME/libnma") + ;; Some files carry the "GPL-2.0+" SPDX identifier while others say + ;; "LGPL-2.1+". + (license license:gpl2+))) (define-public gnome-menus (package -- cgit v1.2.3 From b1da33d9657ae255294e3b49d5b050bd64b3ee61 Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Mon, 11 May 2020 16:34:50 +0200 Subject: gnu: libnma: Adjust indentation. * gnu/packages/gnome.scm (libnma): Adjust indentation. --- gnu/packages/gnome.scm | 76 +++++++++++++++++++++++++------------------------- 1 file changed, 38 insertions(+), 38 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 3394c1eb75..6683750fd1 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -808,44 +808,44 @@ client devices can handle.") (define-public libnma (package - (name "libnma") - (version "1.8.28") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnome/sources/" name "/" - (version-major+minor version) "/" - name "-" version ".tar.xz")) - (sha256 - (base32 - "09mp6k0hfam1vyyv9kcd8j4gb2r58i05ipx2nswb58ris599bxja")))) - (build-system meson-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'patch-docbook-xml - (lambda* (#:key inputs #:allow-other-keys) - (let ((xmldoc (string-append (assoc-ref inputs "docbook-xml") - "/xml/dtd/docbook"))) - (substitute* "libnma-docs.xml" - (("http://.*/docbookx\\.dtd") - (string-append xmldoc "/docbookx.dtd"))) - #t)))))) - (native-inputs - `(("docbook-xml" ,docbook-xml-4.3) - ("gettext" ,gettext-minimal) - ("glib:bin" ,glib "bin") - ("gtk-doc" ,gtk-doc) - ("gobject-introspection" ,gobject-introspection) - ("pkg-config" ,pkg-config) - ("vala" ,vala))) - (inputs - `(("gcr" ,gcr) - ("gtk+" ,gtk+) - ("iso-codes" ,iso-codes) - ("mobile-broadband-provider-info" ,mobile-broadband-provider-info) - ("network-manager" ,network-manager))) - (synopsis "Network Manager's applet library") - (description "Libnma is an applet library for Network Manager. It was + (name "libnma") + (version "1.8.28") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "09mp6k0hfam1vyyv9kcd8j4gb2r58i05ipx2nswb58ris599bxja")))) + (build-system meson-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + (let ((xmldoc (string-append (assoc-ref inputs "docbook-xml") + "/xml/dtd/docbook"))) + (substitute* "libnma-docs.xml" + (("http://.*/docbookx\\.dtd") + (string-append xmldoc "/docbookx.dtd"))) + #t)))))) + (native-inputs + `(("docbook-xml" ,docbook-xml-4.3) + ("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gtk-doc" ,gtk-doc) + ("gobject-introspection" ,gobject-introspection) + ("pkg-config" ,pkg-config) + ("vala" ,vala))) + (inputs + `(("gcr" ,gcr) + ("gtk+" ,gtk+) + ("iso-codes" ,iso-codes) + ("mobile-broadband-provider-info" ,mobile-broadband-provider-info) + ("network-manager" ,network-manager))) + (synopsis "Network Manager's applet library") + (description "Libnma is an applet library for Network Manager. It was initially part of network-manager-applet and has now become a separate project.") (home-page "https://gitlab.gnome.org/GNOME/libnma") -- cgit v1.2.3 From 3fe368c0ffe9e00360c3fdf60b4dcb0aa5fe5e3a Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Mon, 11 May 2020 16:36:21 +0200 Subject: gnu: network-manager-openvpn: Update to 1.8.12. * gnu/packages/gnome.scm (network-manager-openvpn): Update to 1.8.12. [inputs]: Replace 'network-manager-applet' with 'libnma'. --- gnu/packages/gnome.scm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 6683750fd1..b73f0ad31d 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -6519,8 +6519,7 @@ services.") (define-public network-manager-openvpn (package (name "network-manager-openvpn") - ;; Updating? Check whether network-manager-applet still needs libnm_gtk. - (version "1.8.10") + (version "1.8.12") (source (origin (method url-fetch) (uri (string-append @@ -6529,7 +6528,7 @@ services.") "/NetworkManager-openvpn-" version ".tar.xz")) (sha256 (base32 - "1vri49yff4lj13dnzkpq9nx3a4z1bmbrv807r151plj8m1mwhg5g")))) + "062kh4zj7jfbwy4zzcwpq2m457bzbpm3l18s0ysnw3mgia3siz8f")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--enable-absolute-paths" "--localstatedir=/var") @@ -6559,7 +6558,7 @@ services.") ("kmod" ,kmod) ("openvpn" ,openvpn) ("network-manager" ,network-manager) - ("network-manager-applet" ,network-manager-applet) ;for libnma + ("libnma" ,libnma) ("libsecret" ,libsecret))) (home-page "https://wiki.gnome.org/Projects/NetworkManager/VPN") (synopsis "OpenVPN plug-in for NetworkManager") -- cgit v1.2.3 From 4ca449c50e669b229dbee38e26323bbee7ed5c9c Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Mon, 11 May 2020 18:36:10 +0200 Subject: gnu: network-manager-openconnect: Use libnma. * gnu/packages/gnome.scm (network-manager-openconnect)[native-inputs]: Replace 'network-manager-applet' by 'libnma'. --- gnu/packages/gnome.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index b73f0ad31d..e651f2e2b4 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -6649,7 +6649,7 @@ Compatible with Cisco VPN concentrators configured to use IPsec.") #t))))) (native-inputs `(("intltool" ,intltool) - ("network-manager-applet" ,network-manager-applet) ;for libnma + ("libnma" ,libnma) ("pkg-config" ,pkg-config))) (inputs `(("gcr" ,gcr) -- cgit v1.2.3 From 7c43b78d2cb131796e92500880a9084c2c2ae429 Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Mon, 11 May 2020 19:37:17 +0200 Subject: gnu: network-manager-vpnc: Use 'libnma'. * gnu/packages/gnome.scm (network-manager-vpnc)[arguments]: Add configure flag '--with-libnm-glib=no'. [inputs]: Replace 'network-manager-applet' with 'libnma'. --- gnu/packages/gnome.scm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index e651f2e2b4..7305c8a986 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -6583,7 +6583,11 @@ to virtual private networks (VPNs) via OpenVPN.") "1js5lwcsqws4klgypfxl4ikmakv7v7xgddij1fj6b0y0qicx0kyy")))) (build-system gnu-build-system) (arguments - `(#:configure-flags '("--enable-absolute-paths" "--localstatedir=/var") + `(#:configure-flags '("--enable-absolute-paths" + "--localstatedir=/var" + ;; libnm-glib has been removed from network-manager + ;; 1de8383ad9fdfc8f552117e5d109bdfa7005634b + "--with-libnm-glib=no") #:phases (modify-phases %standard-phases (add-after 'configure 'patch-path @@ -6607,7 +6611,7 @@ to virtual private networks (VPNs) via OpenVPN.") ("kmod" ,kmod) ("vpnc" ,vpnc) ("network-manager" ,network-manager) - ("network-manager-applet" ,network-manager-applet) ;for libnma + ("libnma" ,libnma) ("libsecret" ,libsecret))) (home-page "https://wiki.gnome.org/Projects/NetworkManager/VPN") (synopsis "VPNC plug-in for NetworkManager") -- cgit v1.2.3 From 4c29111232c44c84908922442abd1cd83ddc7686 Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Mon, 11 May 2020 16:59:17 +0200 Subject: gnu: network-manager-applet: Update to 1.16.0. * gnu/packages/gnome.scm (netowrk-manager-applet): Update to 1.16.0. [arguments]: Remove 'configure-flags'. [inputs]: Add 'libnma', remove 'iso-codes' and 'mobile-broadband-provider-info'. --- gnu/packages/gnome.scm | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 7305c8a986..0a24994edb 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -6702,7 +6702,7 @@ Cisco's AnyConnect SSL VPN.") (define-public network-manager-applet (package (name "network-manager-applet") - (version "1.8.24") + (version "1.16.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/network-manager-applet/" @@ -6710,13 +6710,10 @@ Cisco's AnyConnect SSL VPN.") "network-manager-applet-" version ".tar.xz")) (sha256 (base32 - "1gzvz4wfqfsfclqg56y954al8x6fmz71cnxlx1i4nqr7a25bp2qi")))) + "1rf3nm0hjcy9f8ajb4vmvwy503w8yj8d4daxkcb7w7i7b92qmyfn")))) (build-system meson-build-system) (arguments - '(#:configure-flags - ;; ‘Nobody should be using this’ but network-manager-openvpn 1.8.10 does. - (list "-Dlibnm_gtk=true") - #:glib-or-gtk? #t)) + '(#:glib-or-gtk? #t)) (native-inputs `(("intltool" ,intltool) ("glib:bin" ,glib "bin") ; for glib-compile-resources, etc. @@ -6730,14 +6727,13 @@ Cisco's AnyConnect SSL VPN.") ("network-manager" ,network-manager))) (inputs `(("gcr" ,gcr) - ("iso-codes" ,iso-codes) + ("libnma" ,libnma) ("libgudev" ,libgudev) ("libnotify" ,libnotify) ("libsecret" ,libsecret) ("libselinux" ,libselinux) ("jansson" ,jansson) ; for team support - ("modem-manager" ,modem-manager) - ("mobile-broadband-provider-info" ,mobile-broadband-provider-info))) + ("modem-manager" ,modem-manager))) (synopsis "Applet for managing network connections") (home-page "https://www.gnome.org/projects/NetworkManager/") (description -- cgit v1.2.3 From 8ce78609065f8e703dd7b2f36560a8ba278a294e Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Mon, 11 May 2020 19:53:11 +0200 Subject: gnu: network-manager-applet: Appease guix lint. * gnu/packages/gnome.scm (network-manager-applet)[home-page]: Replace with permanent redirect URL. --- gnu/packages/gnome.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 0a24994edb..7afa25d7c0 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -6735,7 +6735,7 @@ Cisco's AnyConnect SSL VPN.") ("jansson" ,jansson) ; for team support ("modem-manager" ,modem-manager))) (synopsis "Applet for managing network connections") - (home-page "https://www.gnome.org/projects/NetworkManager/") + (home-page "https://wiki.gnome.org/Projects/NetworkManager") (description "This package contains a systray applet for NetworkManager. It displays the available networks and allows users to easily switch between them.") -- cgit v1.2.3 From 8d9477b8b8ce671b7c817a4c0dab73f095db955b Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Fri, 22 May 2020 15:13:35 +0200 Subject: gnu: gnome-initial-setup: Use 'libnma'. * gnu/packages/gnome.scm (gnome-initial-setup)[inputs]: Replace 'network-manager-applet' with 'libnma'. --- gnu/packages/gnome.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 7afa25d7c0..b3459e4861 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -645,9 +645,9 @@ extraction, and lookup for applications on the desktop.") ("json-glib" ,json-glib) ("krb5" ,mit-krb5) ("libgweather" ,libgweather) + ("libnma" ,libnma) ("libsecret" ,libsecret) ("network-manager" ,network-manager) - ("network-manager-applet" ,network-manager-applet) ("packagekit" ,packagekit) ("polkit" ,polkit) ("pwquality" ,libpwquality) -- cgit v1.2.3 From 46cf343440a74da662c0b4985e5a43321d86ddd2 Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Fri, 22 May 2020 15:15:56 +0200 Subject: gnu: gnome-control-center: Use 'libnma'. * gnu/packages/gnome.scm (gnome-control-center)[inputs]: Add 'libnma'. --- gnu/packages/gnome.scm | 1 + 1 file changed, 1 insertion(+) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index b3459e4861..e94d65908d 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -7124,6 +7124,7 @@ devices using the GNOME desktop.") ("libgnomekbd" ,libgnomekbd) ("libgudev" ,libgudev) ("libgtop" ,libgtop) + ("libnma" ,libnma) ("libpwquality" ,libpwquality) ("libsecret" ,libsecret) ("libsoup" ,libsoup) -- cgit v1.2.3 From cc1698bc03ae6ca505f5a86bacad7fbd0fef2848 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 21 May 2020 12:44:15 -0400 Subject: gnu: go-golang-org-x-sys: Update to 0.0.0-6.c709ea0. * gnu/packages/golang.scm (go-golang-org-x-sys): Update to 0.0.0-6.c709ea0. --- gnu/packages/golang.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 69f46df743..3a7af4304b 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -723,8 +723,8 @@ processing.") (license license:bsd-3)))) (define-public go-golang-org-x-sys - (let ((commit "749cb33beabd9aa6d3178e3de05bcc914f70b2bf") - (revision "5")) + (let ((commit "c709ea063b76879dc9915358f55d4d77c16ab6d5") + (revision "6")) (package (name "go-golang-org-x-sys") (version (git-version "0.0.0" revision commit)) @@ -736,7 +736,7 @@ processing.") (file-name (git-file-name name version)) (sha256 (base32 - "0dm3257q3rv2kyn5lmqqim2fqg634v6rhrqq4glvbk4wx4l3v337")))) + "15nq53a6kcqchng4j0d1pjw0m6hny6126nhjdwqw5n9dzh6a226d")))) (build-system go-build-system) (arguments `(#:import-path "golang.org/x/sys" -- cgit v1.2.3 From c2176548835a88aa06e62f4cd21c41c8818f9113 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 21 May 2020 12:43:36 -0400 Subject: gnu: go-golang-org-x-crypto: Update to 0.0.0-5.2aa609c. * gnu/packages/golang.scm (go-golang-org-x-crypto): Update to 0.0.0-5.2aa609c. --- gnu/packages/golang.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 3a7af4304b..6295071589 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -623,8 +623,8 @@ Go programming language.") (license license:bsd-3)))) (define-public go-golang-org-x-crypto - (let ((commit "9756ffdc24725223350eb3266ffb92590d28f278") - (revision "4")) + (let ((commit "2aa609cf4a9d7d1126360de73b55b6002f9e052a") + (revision "5")) (package (name "go-golang-org-x-crypto") (version (git-version "0.0.0" revision commit)) @@ -637,7 +637,7 @@ Go programming language.") version "-checkout")) (sha256 (base32 - "0q7hxaaq6lp0v8qqzifvysl47z5rfdlrxkh3d29vsl3wyby3dxl8")))) + "1yvis6fqbsd7f356aqyi18f76vnwj3bry6mxqnkvshq4cwrf92il")))) (build-system go-build-system) (arguments '(#:import-path "golang.org/x/crypto" -- cgit v1.2.3 From 618df2e335acb49a27ca014b555ede34f79503f3 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 21 May 2020 12:45:23 -0400 Subject: gnu: go-github-com-kr-pretty: Update to 0.2.0. * gnu/packages/golang.scm (go-github-com-kr-pretty): Update to 0.2.0. --- gnu/packages/golang.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 6295071589..b5b868cb2d 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -2803,7 +2803,7 @@ format in Go.") (define-public go-github-com-kr-pretty (package (name "go-github-com-kr-pretty") - (version "0.1.0") + (version "0.2.0") (source (origin (method git-fetch) (uri (git-reference @@ -2812,7 +2812,7 @@ format in Go.") (file-name (git-file-name name version)) (sha256 (base32 - "18m4pwg2abd0j9cn5v3k2ksk9ig4vlwxmlw9rrglanziv9l967qp")))) + "1pm4pwg2abd0j9cn5v3k2ksk9ig4vlwxmlw9rrglanziv9l967qp")))) (build-system go-build-system) (propagated-inputs `(("go-github-com-kr-text" ,go-github-com-kr-text))) -- cgit v1.2.3 From 3a8935099f38005b53fe47b483d863a35ce1258e Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 21 May 2020 12:46:20 -0400 Subject: gnu: go-github-com-jackpal-gateway: Update to 1.0.6. * gnu/packages/syncthing.scm (go-github-com-jackpal-gateway): Update to 1.0.6. --- gnu/packages/syncthing.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm index ad4c30d064..75de5b46a0 100644 --- a/gnu/packages/syncthing.scm +++ b/gnu/packages/syncthing.scm @@ -394,7 +394,7 @@ compression format.") (define-public go-github-com-jackpal-gateway (package (name "go-github-com-jackpal-gateway") - (version "1.0.5") + (version "1.0.6") (source (origin (method git-fetch) (uri (git-reference @@ -403,7 +403,7 @@ compression format.") (file-name (git-file-name name version)) (sha256 (base32 - "1ird5xmizj632l3dq24s2xgb8w1dn6v8xznlqz252gvngyr2gjl1")))) + "1yms2dw4dnz4cvj9vhwh6193d50jhvn5awsp2g3a4lcc3sjrgd6m")))) (build-system go-build-system) (arguments `(#:import-path "github.com/jackpal/gateway")) -- cgit v1.2.3 From 64905c24ad56d9278d8790365647d10b2d8eddc4 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 21 May 2020 12:55:10 -0400 Subject: gnu: Add go-github-com-twmb-murmur3. * gnu/packages/golang.scm (go-github-com-calmh-murmur3): Replace with ... (go-github-com-twmb-murmur3): ... new variable. (go-github-com-willf-bloom): Use go-github-com-twmb-murmur3. --- gnu/packages/golang.scm | 50 ++++++++++++++++++++++++------------------------- 1 file changed, 24 insertions(+), 26 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index b5b868cb2d..3a9b109663 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -2186,33 +2186,31 @@ Reference algorithm has been slightly hacked as to support the streaming mode required by Go's standard Hash interface.") (license license:bsd-3))) -(define-public go-github-com-calmh-murmur3 - (let ((commit "74e9af8f47ac56901c490d45546ca167b60c7066") - (revision "0")) - (package - (name "go-github-com-calmh-murmur3") - (version (git-version "1.1.0" revision commit)) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/calmh/murmur3.git") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0k8345ivx228qdbkl8bisd2wxwsinkb44ghba6r09538fr3fbr5w")))) - (build-system go-build-system) - (arguments - '(#:import-path "github.com/calmh/murmur3")) - (home-page "https://github.com/calmh/murmur3") - (synopsis "Native MurmurHash3 Go implementation") - (description "Native Go implementation of Austin Appleby's third +(define-public go-github-com-twmb-murmur3 + (package + (name "go-github-com-twmb-murmur3") + (version "1.1.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/twmb/murmur3.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "00riapwkyf23l5wyis47mbr8rwr4yrjw491jfc30wpzs111c1gyy")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/twmb/murmur3")) + (home-page "https://github.com/twmb/murmur3") + (synopsis "Native MurmurHash3 Go implementation") + (description "Native Go implementation of Austin Appleby's third MurmurHash revision (aka MurmurHash3). Reference algorithm has been slightly hacked as to support the streaming mode required by Go's standard Hash interface.") - (license license:bsd-3)))) + (license license:bsd-3))) (define-public go-github-com-multiformats-go-multihash (let ((commit "97cdb562a04c6ef66d8ed40cd62f8fbcddd396d6") @@ -3496,14 +3494,14 @@ efficient space usage.") (modify-phases %standard-phases (add-after 'unpack 'patch-import-path (lambda _ - ;; See 'go.mod' in the source distribution of Syncthing 1.4.1 for + ;; See 'go.mod' in the source distribution of Syncthing 1.5.0 for ;; more information. ;; (substitute* "src/github.com/willf/bloom/bloom.go" - (("spaolacci") "calmh")) + (("spaolacci") "twmb")) #t))))) (propagated-inputs - `(("go-github-com-calmh-murmur3" ,go-github-com-calmh-murmur3) + `(("go-github-com-twmb-murmur3" ,go-github-com-twmb-murmur3) ("go-github-com-willf-bitset" ,go-github-com-willf-bitset))) (synopsis "Bloom filters in Go") (description "This package provides a Go implementation of bloom filters, -- cgit v1.2.3 From 4a1bc86678df784b0c578e621275db10ffad0be4 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 21 May 2020 14:20:05 -0400 Subject: gnu: go-github-com-marten-seemann-qtls: Update to 0.4.1. * gnu/packages/golang.scm (go-github-com-marten-seemann-qtls): Update to 0.4.1. --- gnu/packages/golang.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 3a9b109663..58016dcbf8 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -3042,7 +3042,7 @@ mutex, simply ignore the RLock/RUnlock functions.") (define-public go-github-com-marten-seemann-qtls (package (name "go-github-com-marten-seemann-qtls") - (version "0.3.2") + (version "0.4.1") (source (origin (method git-fetch) (uri (git-reference @@ -3051,7 +3051,7 @@ mutex, simply ignore the RLock/RUnlock functions.") (file-name (git-file-name name version)) (sha256 (base32 - "1mdymj66qrqy80pfkwy9s9z9ifkg251whngw5lim09zm90wv2q7a")))) + "0dz60y98nm7l70hamq0v2vrs2dspyr5yqhnrds2dfh7hchxvq76j")))) (build-system go-build-system) (arguments '(#:import-path "github.com/marten-seemann/qtls" -- cgit v1.2.3 From 7df8cb254e2683b9f6e8cc5302b8babbd44b1eb4 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 21 May 2020 14:20:39 -0400 Subject: gnu: Add go-github-com-marten-seemann-chacha20. * gnu/packages/golang.scm (go-github-com-marten-seemann-chacha20): New variable. --- gnu/packages/golang.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 58016dcbf8..ac952b52da 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -3065,6 +3065,28 @@ the Go standard library's TLS 1.3 implementation.") (home-page "https://github.com/marten-seemann/qtls") (license license:bsd-3))) +(define-public go-github-com-marten-seemann-chacha20 + (package + (name "go-github-com-marten-seemann-chacha20") + (version "0.2.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/marten-seemann/chacha20") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0x1j4cvbap45zk962qkjalc1h3axhzzdy9cdzhcjmprmm1ql4gjm")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/marten-seemann/chacha20")) + (synopsis "ChaCha20 in Go") + (description "This package is an external copy of the Go standard library's +internal ChaCha20 package.") + (home-page "https://github.com/marten-seemann/chacha20") + (license license:bsd-3))) + (define-public go-github-com-cheekybits-genny (package (name "go-github-com-cheekybits-genny") -- cgit v1.2.3 From cfe4b6e29d33104cb60a1d15e24b2b74733f0501 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 21 May 2020 12:56:37 -0400 Subject: gnu: go-github-com-lucas-clemente-quic-go: Update to 0.14.4. * gnu/packages/golang.scm (go-github-com-lucas-clemente-quic-go): Update to 0.14.4. [propagated-inputs]: Add go-github-com-marten-seemann-chacha20. --- gnu/packages/golang.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index ac952b52da..c6f47aa144 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -3114,7 +3114,7 @@ implementation of generics.") (define-public go-github-com-lucas-clemente-quic-go (package (name "go-github-com-lucas-clemente-quic-go") - (version "0.12.1") + (version "0.14.4") (source (origin (method git-fetch) (uri (git-reference @@ -3123,7 +3123,7 @@ implementation of generics.") (file-name (git-file-name name version)) (sha256 (base32 - "156nhq4dvw7mr08j952248v81q7702phbn4mp228319sahnbv65h")))) + "04l3gqbc3gh079n8vgnrsf8ypgv8sl63xjf28jqfrb45v2l73vyz")))) (build-system go-build-system) (arguments '(#:import-path "github.com/lucas-clemente/quic-go" @@ -3132,6 +3132,7 @@ implementation of generics.") (propagated-inputs `(("go-golang-org-x-crypto" ,go-golang-org-x-crypto) ("go-github-com-cheekybits-genny" ,go-github-com-cheekybits-genny) + ("go-github-com-marten-seemann-chacha20" ,go-github-com-marten-seemann-chacha20) ("go-github-com-marten-seemann-qtls" ,go-github-com-marten-seemann-qtls) ("go-github-com-golang-protobuf-proto" ,go-github-com-golang-protobuf-proto))) (synopsis "QUIC in Go") -- cgit v1.2.3 From 0ffc13921f31728f5421486ba37dfbcb3783815e Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 22 May 2020 15:04:01 -0400 Subject: gnu: Change name of Go asn1-ber package and update to 1.3.1. * gnu/packages/syncthing.scm (go-gopkg.in-asn1-ber.v1): Replace with ... (go-github-com-go-asn1-ber-asn1-ber): ... new variable. [arguments]: Remove custom 'check' phase. --- gnu/packages/syncthing.scm | 23 +++++++---------------- 1 file changed, 7 insertions(+), 16 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm index 75de5b46a0..8286ab4f99 100644 --- a/gnu/packages/syncthing.scm +++ b/gnu/packages/syncthing.scm @@ -942,35 +942,26 @@ server tools for Prometheus metrics.") (home-page "https://github.com/prometheus/client_golang") (license asl2.0))) -(define-public go-gopkg.in-asn1-ber.v1 +(define-public go-github-com-go-asn1-ber-asn1-ber (package - (name "go-gopkg.in-asn1-ber.v1") - (version "1.3") + (name "go-github-com-go-asn1-ber-asn1-ber") + (version "1.3.1") (source (origin (method git-fetch) (uri (git-reference - (url "https://gopkg.in/asn1-ber.v1") + (url "https://github.com/go-asn1-ber/asn1-ber") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 (base32 - "00ixms8x3lrhywbvq5v2sagcqsxa1pcnlk17dp5lnwckv3xg4psb")))) + "0dxfmgk84fn0p6pz3i0cspynh6rly5pfk9wghm1q07mx99npln02")))) (build-system go-build-system) (arguments - '(#:import-path "gopkg.in/asn1-ber.v1" - ;; Tests don't pass "vet" on Go since 1.11. See - ;; https://github.com/go-asn1-ber/asn1-ber/issues/20. - #:phases - (modify-phases %standard-phases - (replace 'check - (lambda* (#:key import-path #:allow-other-keys) - (invoke "go" "test" - "-vet=off" - import-path)))))) + '(#:import-path "github.com/go-asn1-ber/asn1-ber")) (synopsis "ASN.1 BER encoding and decoding in Go") (description "This package provides ASN.1 BER encoding and decoding in the Go language.") - (home-page "https://gopkg.in/asn1-ber.v1") + (home-page "https://github.com/go-asn1-ber/asn1-ber") (license expat))) (define-public go-gopkg.in-ldap.v2 -- cgit v1.2.3 From 4185edf2086af01ab072c6e667a14fdf313b71d1 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 22 May 2020 16:32:08 -0400 Subject: gnu: Change name of Go ldap package and update to 3.1.7. * gnu/packages/syncthing.scm (go-gopkg.in-ldap.v2): Replace with ... (go-github-com-go-ldap-ldap): ... new variable. --- gnu/packages/syncthing.scm | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm index 8286ab4f99..1030b6b557 100644 --- a/gnu/packages/syncthing.scm +++ b/gnu/packages/syncthing.scm @@ -964,29 +964,29 @@ Go language.") (home-page "https://github.com/go-asn1-ber/asn1-ber") (license expat))) -(define-public go-gopkg.in-ldap.v2 +(define-public go-github-com-go-ldap-ldap (package - (name "go-gopkg.in-ldap.v2") - (version "2.5.1") + (name "go-github-com-go-ldap-ldap") + (version "3.1.7") (source (origin (method git-fetch) (uri (git-reference - (url "https://gopkg.in/ldap.v2") + (url "https://github.com/go-ldap/ldap") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 (base32 - "1wf81wy04nhkqs0dg5zkivr4sh37r83bxrfwjz9vr4jq6vmljr3h")))) + "1z6wxia7a1jkmasa9mm6g4n8f0qqbp5rw6vk0zyh4vzk7azklnj2")))) (build-system go-build-system) (arguments - '(#:import-path "gopkg.in/ldap.v2" - #:tests? #f)) ; the test suite requires network access + '(#:import-path "github.com/go-ldap/ldap/v3" + #:tests? #f)) ; test suite requires internet access (propagated-inputs - `(("go-gopkg.in-asn1-ber.v1" ,go-gopkg.in-asn1-ber.v1))) + `(("go-github-com-go-asn1-ber-asn1-ber" ,go-github-com-go-asn1-ber-asn1-ber))) + (home-page "https://github.com/go-ldap/ldap") (synopsis "LDAP v3 functionality for Go") (description "This package provides basic LDAP v3 functionality in the Go language.") - (home-page "https://gopkg.in/ldap.v2") (license expat))) (define-public go-github-com-flynn-archive-go-shlex -- cgit v1.2.3 From 595f30c0de09659d5aeaecfba7384b0c4e668b55 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 21 May 2020 12:56:58 -0400 Subject: gnu: Syncthing: Update to 1.5.0. * gnu/packages/syncthing.scm (syncthing): Update to 1.5.0. [inputs]: Replace go-gopkg.in-ldap.v2 with go-github-com-go-ldap-ldap. --- gnu/packages/syncthing.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm index 1030b6b557..99bdd7704b 100644 --- a/gnu/packages/syncthing.scm +++ b/gnu/packages/syncthing.scm @@ -32,7 +32,7 @@ (define-public syncthing (package (name "syncthing") - (version "1.4.2") + (version "1.5.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/syncthing/syncthing" @@ -40,7 +40,7 @@ "/syncthing-source-v" version ".tar.gz")) (sha256 (base32 - "16dqpbn4saxmmmqd5ya8zdkwvxzz4nim1p4w954zkkdz3cyg86h6")) + "1394b8y4nllihnjngc0kjpdy7pvyh6v1h09hkn8rdmwxpsdkqkjb")) (modules '((guix build utils))) ;; Delete bundled ("vendored") free software source code. (snippet '(begin @@ -77,7 +77,7 @@ ("go-github-com-syndtr-goleveldb" ,go-github-com-syndtr-goleveldb) ("go-github-com-thejerf-suture" ,go-github-com-thejerf-suture) ("go-golang-org-x-time" ,go-golang-org-x-time) - ("go-gopkg.in-ldap.v2" ,go-gopkg.in-ldap.v2) + ("go-github-com-go-ldap-ldap" ,go-github-com-go-ldap-ldap) ("go-github-com-gogo-protobuf" ,go-github-com-gogo-protobuf) ("go-github-com-shirou-gopsutil" ,go-github-com-shirou-gopsutil) ("go-github-com-prometheus-client-golang" -- cgit v1.2.3 From f64a74dd6c69a0e404b40b7688cdcbcaf63fdf42 Mon Sep 17 00:00:00 2001 From: Kyle Meyer Date: Fri, 22 May 2020 14:12:50 -0400 Subject: gnu: git-annex: Update to 8.20200522. * gnu/packages/haskell-apps.scm (git-annex): Update to 8.20200522. [source]: Remove patch that is now in a release. * gnu/packages/patches/git-annex-S3v4.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. Signed-off-by: Leo Famulari --- gnu/local.mk | 1 - gnu/packages/haskell-apps.scm | 6 +-- gnu/packages/patches/git-annex-S3v4.patch | 77 ------------------------------- 3 files changed, 2 insertions(+), 82 deletions(-) delete mode 100644 gnu/packages/patches/git-annex-S3v4.patch (limited to 'gnu') diff --git a/gnu/local.mk b/gnu/local.mk index 961dedfdf6..575b18eb41 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -979,7 +979,6 @@ dist_patch_DATA = \ %D%/packages/patches/ghostscript-no-header-id.patch \ %D%/packages/patches/ghostscript-no-header-uuid.patch \ %D%/packages/patches/ghostscript-no-header-creationdate.patch \ - %D%/packages/patches/git-annex-S3v4.patch \ %D%/packages/patches/glib-tests-timer.patch \ %D%/packages/patches/glibc-CVE-2015-5180.patch \ %D%/packages/patches/glibc-CVE-2015-7547.patch \ diff --git a/gnu/packages/haskell-apps.scm b/gnu/packages/haskell-apps.scm index ecfe439c4b..3089c17145 100644 --- a/gnu/packages/haskell-apps.scm +++ b/gnu/packages/haskell-apps.scm @@ -37,7 +37,6 @@ #:use-module (guix packages) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system haskell) - #:use-module (gnu packages) #:use-module (gnu packages base) #:use-module (gnu packages curl) #:use-module (gnu packages gl) @@ -342,15 +341,14 @@ to @code{cabal repl}).") (define-public git-annex (package (name "git-annex") - (version "8.20200501") + (version "8.20200522") (source (origin (method url-fetch) (uri (string-append "https://hackage.haskell.org/package/" "git-annex/git-annex-" version ".tar.gz")) - (patches (search-patches "git-annex-S3v4.patch")) (sha256 - (base32 "19rggaymvqy7r61n2rl2nigwdi2hzq5l1afcd5l0k1vbacwgq4jl")))) + (base32 "1v71k5k9mcj1nq4pb8apx99rgw2rmckr6yshhvjl1dr6j70d67x8")))) (build-system haskell-build-system) (arguments `(#:configure-flags diff --git a/gnu/packages/patches/git-annex-S3v4.patch b/gnu/packages/patches/git-annex-S3v4.patch deleted file mode 100644 index 9f7cea329e..0000000000 --- a/gnu/packages/patches/git-annex-S3v4.patch +++ /dev/null @@ -1,77 +0,0 @@ -From the upstream commit, with the changes to CHANGELOG and the docs -folder removed. - -From 1532d67c3ecf452b8c86bcc5928525398755cd01 Mon Sep 17 00:00:00 2001 -From: Joey Hess -Date: Thu, 7 May 2020 13:18:11 -0400 -Subject: [PATCH] S3: Support signature=v4 - -To use S3 Signature Version 4. Some S3 services seem to require v4, while -others may only support v2, which remains the default. - -I'm also not sure if v4 works correctly in all cases, there is this -upstream bug report: https://github.com/aristidb/aws/issues/262 -I've only tested it against the default S3 endpoint. ---- - CHANGELOG | 3 +++ - Remote/S3.hs | 23 ++++++++++++++++++- - ..._3bbdf23c8a4a480f4f6b8e8a2f8ddecd._comment | 13 +++++++++++ - ..._854390b9a781da82ecb85ad85eecad04._comment | 13 +++++++++++ - doc/special_remotes/S3.mdwn | 4 ++++ - ..._cf57e8dbd9fdc7c487565b61808b6bb2._comment | 10 ++++++++ - 6 files changed, 65 insertions(+), 1 deletion(-) - create mode 100644 doc/bugs/S3_special_remote_support_for_DigitalOcean_Spaces/comment_2_3bbdf23c8a4a480f4f6b8e8a2f8ddecd._comment - create mode 100644 doc/forum/backblaze_s3/comment_1_854390b9a781da82ecb85ad85eecad04._comment - create mode 100644 doc/special_remotes/S3/comment_34_cf57e8dbd9fdc7c487565b61808b6bb2._comment - -diff --git a/Remote/S3.hs b/Remote/S3.hs -index cb345d1f8..e3ea492f2 100644 ---- a/Remote/S3.hs -+++ b/Remote/S3.hs -@@ -99,6 +99,8 @@ remote = specialRemoteType $ RemoteType - (FieldDesc "port to connect to") - , optionalStringParser requeststyleField - (FieldDesc "for path-style requests, set to \"path\"") -+ , signatureVersionParser signatureField -+ (FieldDesc "S3 signature version") - , optionalStringParser mungekeysField HiddenField - , optionalStringParser AWS.s3credsField HiddenField - ] -@@ -148,6 +150,22 @@ protocolField = Accepted "protocol" - requeststyleField :: RemoteConfigField - requeststyleField = Accepted "requeststyle" - -+signatureField :: RemoteConfigField -+signatureField = Accepted "signature" -+ -+newtype SignatureVersion = SignatureVersion Int -+ -+signatureVersionParser :: RemoteConfigField -> FieldDesc -> RemoteConfigFieldParser -+signatureVersionParser f fd = -+ genParser go f defver fd -+ (Just (ValueDesc "v2 or v4")) -+ where -+ go "v2" = Just (SignatureVersion 2) -+ go "v4" = Just (SignatureVersion 4) -+ go _ = Nothing -+ -+ defver = SignatureVersion 2 -+ - portField :: RemoteConfigField - portField = Accepted "port" - -@@ -877,7 +895,10 @@ s3Configuration c = cfg - Nothing - | port == 443 -> AWS.HTTPS - | otherwise -> AWS.HTTP -- cfg = S3.s3 proto endpoint False -+ cfg = case getRemoteConfigValue signatureField c of -+ Just (SignatureVersion 4) -> -+ S3.s3v4 proto endpoint False S3.SignWithEffort -+ _ -> S3.s3 proto endpoint False - - data S3Info = S3Info - { bucket :: S3.Bucket --- -2.26.2 - -- cgit v1.2.3 From 6597893ba27153efd61bc28b15c1f4cd1aab2864 Mon Sep 17 00:00:00 2001 From: Arne Babenhauserheide Date: Fri, 22 May 2020 15:17:32 +0200 Subject: gnu: libaom: Update to 2.0.0 * gnu/packages/video.scm (libaom): Update to 2.0.0. Signed-off-by: Leo Famulari --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index bb465c64c9..cd3e5ba9ef 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -283,7 +283,7 @@ television and DVD. It is also known as AC-3.") (define-public libaom (package (name "libaom") - (version "1.0.0-errata1-avif") + (version "2.0.0") (source (origin (method git-fetch) (uri (git-reference @@ -292,7 +292,7 @@ television and DVD. It is also known as AC-3.") (file-name (git-file-name name version)) (sha256 (base32 - "169yfgh7zigc21h71qclfyr7s4wwp2i9vbr4z6pkabypvass4v7m")))) + "1616xjhj6770ykn82ml741h8hx44v507iky3s9h7a5lnk9d4cxzy")))) (build-system cmake-build-system) (native-inputs `(("perl" ,perl) -- cgit v1.2.3 From 8d7ee11aac9b4a56b7fd47f0e7b250d6062c7832 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 22 May 2020 19:09:55 -0400 Subject: gnu: libavif: Update to 0.7.3. * gnu/packages/image.scm (libavif): Update to 0.7.3. --- gnu/packages/image.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 28d3385e71..24f1b1570c 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -1986,7 +1986,7 @@ This package can be used to create @code{favicon.ico} files for web sites.") (define-public libavif (package (name "libavif") - (version "0.7.1") + (version "0.7.3") (source (origin (method git-fetch) (uri (git-reference @@ -1995,7 +1995,7 @@ This package can be used to create @code{favicon.ico} files for web sites.") (file-name (git-file-name name version)) (sha256 (base32 - "1xybjbbprvfsrwgysrn7grg6yp7v6ch5vci7zvdcdzcgyrbph172")))) + "17hagdngpc4xzrr0aa48nx399y5lawyyx9cpcdhpds1mqk6p77lp")))) (build-system cmake-build-system) (arguments `(#:configure-flags '("-DAVIF_CODEC_AOM=ON" "-DAVIF_CODEC_DAV1D=ON" -- cgit v1.2.3 From 05e1edf2220080eda548106d48f4699ee97fa263 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 22 May 2020 19:18:24 -0400 Subject: gnu: dav1d: Update to 0.7.0. * gnu/packages/video.scm (dav1d): Update to 0.7.0. --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index cd3e5ba9ef..422eb79941 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -3693,7 +3693,7 @@ transitions, and effects and then export your film to many common formats.") (define-public dav1d (package (name "dav1d") - (version "0.6.0") + (version "0.7.0") (source (origin (method url-fetch) @@ -3701,7 +3701,7 @@ transitions, and effects and then export your film to many common formats.") "/dav1d/" version "/dav1d-" version ".tar.xz")) (sha256 (base32 - "0w5k572jzxp7zwdbsa0jgjzri6hsrkydawzzilrw46nxpcak37q9")))) + "0xcykraf42gkymzqx1k1lcdclgk9y5yf7rr56vslrgmr0r849qnk")))) (build-system meson-build-system) (native-inputs `(("nasm" ,nasm))) (home-page "https://code.videolan.org/videolan/dav1d") -- cgit v1.2.3 From b2d81186165631c50a6e760b52d5830409b65585 Mon Sep 17 00:00:00 2001 From: Vinicius Monego Date: Fri, 22 May 2020 21:51:41 -0300 Subject: gnu: Add emacs-fountain-mode. * gnu/packages/emacs-xyz.scm (emacs-fountain-mode): New variable. Signed-off-by: Nicolas Goaziou --- gnu/packages/emacs-xyz.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index d952e8ea6c..8951119da9 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -70,6 +70,7 @@ ;;; Copyright © 2020 Alberto Eleuterio Flores Guerrero ;;; Copyright © 2020 Marius Bakke ;;; Copyright © 2020 pinoaffe +;;; Copyright © 2020 Vinicius Monego ;;; ;;; This file is part of GNU Guix. ;;; @@ -2767,6 +2768,26 @@ Emacs.") files and directories.") (license license:gpl3+))) +(define-public emacs-fountain-mode + (package + (name "emacs-fountain-mode") + (version "3.1.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rnkn/fountain-mode") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "08giwg0jwk8zzj2i4cm08322qr6znrnv9a49za7c6j47bykpwj6s")))) + (build-system emacs-build-system) + (home-page "https://github.com/rnkn/fountain-mode") + (synopsis "Major mode for screenwriting in Fountain markup") + (description "Fountain Mode is a scriptwriting program for GNU Emacs +using the Fountain plain text markup format.") + (license license:gpl3+))) + (define-public emacs-fringe-helper (let ((commit "ef4a9c023bae18ec1ddd7265f1f2d6d2e775efdd") (revision "1")) -- cgit v1.2.3 From 28e9a1118b8dc3c14d1ffc0533ac2c6683f65ad0 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sat, 23 May 2020 09:43:51 +0200 Subject: gnu: emacs-flycheck-grammalecte: Remove "/usr/bin/env" references. * gnu/packages/emacs-xyz.scm (emacs-flycheck-grammalecte)[arguments]: Fix more python3 locations. --- gnu/packages/emacs-xyz.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 8951119da9..fe68a56fd6 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -3797,13 +3797,15 @@ for Flow files.") #:emacs ,emacs ;need libxml support #:phases (modify-phases %standard-phases - (add-after 'unpack 'fix-python-executable - ;; Hardcode python3 executable in the Emacs library. + (add-after 'unpack 'specify-python-location + ;; Hard-code python3 executable location in the library. (lambda* (#:key inputs #:allow-other-keys) (let ((python3 (string-append (assoc-ref inputs "python") "/bin/python3"))) (substitute* "flycheck-grammalecte.el" (("\"python3") (string-append "\"" python3))) + (substitute* '("conjugueur.py" "flycheck-grammalecte.py") + (("/usr/bin/env python3?") python3)) #t))) (add-before 'build 'link-to-grammalecte ;; XXX: The Python part of the package requires grammalecte, but -- cgit v1.2.3 From e7b2ac1cd8aaa3451e29b7529317932ed9149e68 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 23 May 2020 14:04:48 +0200 Subject: gnu: Add libglvnd. * gnu/packages/gl.scm (libglvnd): New public variable. --- gnu/packages/gl.scm | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index fdc361d761..23b8ed1a29 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -664,6 +664,53 @@ OpenGL graphics API.") "A library for handling OpenGL function pointer management.") (license license:x11))) +(define-public libglvnd + (package + (name "libglvnd") + (version "1.3.1") + (home-page "https://gitlab.freedesktop.org/glvnd/libglvnd") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0mkzdzdxjxjl794rblq4mq33wmb8ikqmfswbqdbr8gw2kw4wlhdl")))) + (build-system meson-build-system) + (arguments + '(#:configure-flags '("-Dx11=enabled") + #:phases (modify-phases %standard-phases + (add-after 'unpack 'disable-glx-tests + (lambda _ + ;; This package is meant to be used alongside Mesa. + ;; To avoid a circular dependency, disable tests that + ;; require a running Xorg server. + (substitute* "tests/meson.build" + (("if with_glx") + "if false")) + #t))))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("libx11" ,libx11) + ("libxext" ,libxext) + ("xorgproto" ,xorgproto))) + (synopsis "Vendor-neutral OpenGL dispatch library") + (description + "libglvnd is a vendor-neutral dispatch layer for arbitrating OpenGL +API calls between multiple vendors. It allows multiple drivers from +different vendors to coexist on the same filesystem, and determines which +vendor to dispatch each API call to at runtime. + +Both GLX and EGL are supported, in any combination with OpenGL and OpenGL ES.") + ;; libglvnd is available under a custom X11-style license, and incorporates + ;; code with various other licenses. See README.md for details. + (license (list (license:x11-style "file://README.md") + license:x11 + license:expat)))) + (define-public soil (package (name "soil") -- cgit v1.2.3 From 22070ad1ff6b943972912cc7b0bc2c04bb28c80c Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 23 May 2020 15:31:14 +0200 Subject: gnu: redshift: Build and install redshift-gtk in a separate output. This also installs a redshift.desktop file as a side-effect. * gnu/packages/xdisorg.scm (redshift)[outputs, arguments]: New fields. --- gnu/packages/xdisorg.scm | 54 ++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 52 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 88719775df..1714cb8caf 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -14,7 +14,7 @@ ;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner ;;; Copyright © 2016 Leo Famulari ;;; Copyright © 2016 Alex Kost -;;; Copyright © 2016, 2017, 2019 Marius Bakke +;;; Copyright © 2016, 2017, 2019, 2020 Marius Bakke ;;; Copyright © 2016 Petter ;;; Copyright © 2017 Mekeor Melire ;;; Copyright © 2017 Nikita @@ -1152,6 +1152,50 @@ the X.Org X Server version 1.7 and later (X11R7.5 or later).") (base32 "1fi27b73x85qqar526dbd33av7mahca2ykaqwr7siqiw1qqcby6j")))) (build-system gnu-build-system) + (arguments + `(#:imported-modules (,@%gnu-build-system-modules + (guix build python-build-system)) + #:phases + (modify-phases %standard-phases + (add-after 'install 'split-outputs + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (gtk (assoc-ref outputs "gtk")) + (desktop-file "/share/applications/redshift-gtk.desktop")) + (mkdir-p (string-append gtk "/bin")) + (link (string-append out "/bin/redshift-gtk") + (string-append gtk "/bin/redshift-gtk")) + (delete-file (string-append out "/bin/redshift-gtk")) + (copy-recursively (string-append out "/lib") + (string-append gtk "/lib")) + (delete-file-recursively (string-append out "/lib")) + (mkdir-p (string-append gtk "/share/applications")) + (link (string-append out desktop-file) + (string-append gtk desktop-file)) + (delete-file (string-append out desktop-file)) + (with-directory-excursion (string-append out "/share") + (for-each (lambda (dir) + (copy-recursively + (string-append out "/share/" dir) + (string-append gtk "/share/" dir)) + (delete-file-recursively dir)) + '("appdata" "icons"))) + #t))) + (add-after 'split-outputs 'wrap + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((gtk (assoc-ref outputs "gtk")) + (python-version + (@ (guix build python-build-system) python-version)) + (python (assoc-ref inputs "python")) + (sitedir (string-append gtk "/lib/python" + (python-version python) + "/site-packages"))) + (wrap-program (string-append gtk "/bin/redshift-gtk") + `("PYTHONPATH" ":" prefix + (,(string-append sitedir ":" (getenv "PYTHONPATH")))) + `("GI_TYPELIB_PATH" ":" prefix (,(getenv "GI_TYPELIB_PATH")))) + #t)))))) + (outputs '("out" "gtk")) (native-inputs `(("pkg-config" ,pkg-config) ("intltool" ,intltool))) @@ -1160,7 +1204,13 @@ the X.Org X Server version 1.7 and later (X11R7.5 or later).") ("libx11" ,libx11) ("libxcb" ,libxcb) ("libxxf86vm" ,libxxf86vm) - ("glib" ,glib))) ; for Geoclue2 support + ("glib" ,glib) ;for Geoclue2 support + + ;; To build the GTK3 GUI, we need these. + ("gtk+" ,gtk+) + ("python" ,python) + ("python-pygobject" ,python-pygobject) + ("python-pyxdg" ,python-pyxdg))) (home-page "https://github.com/jonls/redshift") (synopsis "Adjust the color temperature of your screen") (description -- cgit v1.2.3 From 9fdf982b418e379dc5abfaa072583f19eb314240 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 21 May 2020 22:33:22 +0200 Subject: gnu: inxi: Update to 3.1.00-1. * gnu/packages/admin.scm (inxi-minimal): Update to 3.1.00-1. --- gnu/packages/admin.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 9314abf5be..cb8e73e95a 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -3336,7 +3336,7 @@ Python loading in HPC environments.") (let ((real-name "inxi")) (package (name "inxi-minimal") - (version "3.0.38-1") + (version "3.1.00-1") (source (origin (method git-fetch) @@ -3345,7 +3345,7 @@ Python loading in HPC environments.") (commit version))) (file-name (git-file-name real-name version)) (sha256 - (base32 "1qw3sxgd3ly916bzzl3873s3flngwd3vh57slw0shsj7ivz8bfnm")))) + (base32 "0md6yfd297l8695g0rsbs4mm74dc3k00rfjl4x2n4i33mkylp6qa")))) (build-system trivial-build-system) (inputs `(("bash" ,bash-minimal) -- cgit v1.2.3 From 99f80e5ccdc32eeb588eb8436738ba46973bbe84 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 22 May 2020 01:44:00 +0200 Subject: gnu: polybar: Update to 3.4.3. * gnu/packages/wm.scm (polybar): Update to 3.4.3. --- gnu/packages/wm.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index 1151b8115d..f9db2dbe4d 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -1268,14 +1268,14 @@ its size (define-public polybar (package (name "polybar") - (version "3.4.2") + (version "3.4.3") (source (origin (method url-fetch) (uri (string-append "https://github.com/polybar/polybar/releases/" "download/" version "/polybar-" version ".tar")) (sha256 - (base32 "0fmnviz4b01aw50nkv4yibm8ykc5ff860ynw3xb1ymlsjrvwj8jd")))) + (base32 "0bw22qvbcdvyd0qv3ax48r34rnclbbb6dyb8h8zljq1r3lf15vfl")))) (build-system cmake-build-system) (arguments ;; Test is disabled because it requires downloading googletest from the -- cgit v1.2.3 From d2bc9f0e7d94536662d1466529915c7db3648360 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 22 May 2020 01:52:49 +0200 Subject: gnu: qtractor: Update to 0.9.14. * gnu/packages/music.scm (qtractor): Update to 0.9.14. [source]: Fetch over HTTPS. --- gnu/packages/music.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 3d8a3d4321..1d02e3abcf 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -2499,14 +2499,14 @@ from the command line.") (define-public qtractor (package (name "qtractor") - (version "0.9.12") + (version "0.9.14") (source (origin (method url-fetch) - (uri (string-append "http://downloads.sourceforge.net/qtractor/" + (uri (string-append "https://downloads.sourceforge.net/qtractor/" "qtractor-" version ".tar.gz")) (sha256 (base32 - "06493sf4hr178jkvric3rmc2phh1ph2jlyh8kl9z248amq3zfnhy")))) + "1gh268gdpj7nw19xfh7k2l3aban4yrs1lmx33qswrnngs2izj1fk")))) (build-system gnu-build-system) (arguments `(#:tests? #f)) ; no "check" target -- cgit v1.2.3 From 6d2155168fecee297ceb44f58fa2ccbd31ee7031 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 22 May 2020 02:00:32 +0200 Subject: gnu: spice-protocol: Update to 0.14.2. * gnu/packages/spice.scm (spice-protocol): Update to 0.14.2. [arguments]: Install COPYING manually now. --- gnu/packages/spice.scm | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/spice.scm b/gnu/packages/spice.scm index 29a024c8a9..4aff8dbf56 100644 --- a/gnu/packages/spice.scm +++ b/gnu/packages/spice.scm @@ -43,6 +43,7 @@ #:use-module (gnu packages xiph) #:use-module (gnu packages xml) #:use-module (guix build-system gnu) + #:use-module (guix build-system meson) #:use-module (guix download) #:use-module (guix packages) #:use-module ((guix licenses) #:prefix license:) @@ -101,16 +102,26 @@ system to use the host GPU to accelerate 3D rendering.") (define-public spice-protocol (package (name "spice-protocol") - (version "0.14.1") + (version "0.14.2") (source (origin (method url-fetch) (uri (string-append "https://www.spice-space.org/download/releases/" - "spice-protocol-" version ".tar.bz2")) + "spice-protocol-" version ".tar.xz")) (sha256 (base32 - "0ahk5hlanwhbc64r80xmchdav3ls156cvh9l68a0l22bhdhxmrkr")))) - (build-system gnu-build-system) + "1sgi9ksb781qs47pdbw0bmnyg8dgayn5xrzj6vzdy043nv466flg")))) + (build-system meson-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'install-documentation + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (doc (string-append out "/share/doc/" + ,name "-" ,version))) + (install-file "COPYING" doc) + #t)))))) (synopsis "Protocol headers for the SPICE protocol") (description "SPICE (the Simple Protocol for Independent Computing Environments) is a remote-display system built for virtual environments -- cgit v1.2.3 From 0459649e3ed9a5698bc33858aea3bb11cc749d5a Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sat, 23 May 2020 15:44:53 +0200 Subject: gnu: guile-gcrypt: Update to 0.3.0. * gnu/packages/gnupg.scm (guile-gcrypt): Update to 0.3.0. --- gnu/packages/gnupg.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index cf6f965b0d..daf4bc3b6e 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès ;;; Copyright © 2013, 2015, 2018 Andreas Enge ;;; Copyright © 2014, 2018 Eric Bavier ;;; Copyright © 2014, 2015, 2016 Mark H Weaver @@ -473,7 +473,7 @@ gpgpme starting with version 1.7.") (define-public guile-gcrypt (package (name "guile-gcrypt") - (version "0.2.1") + (version "0.3.0") (home-page "https://notabug.org/cwebber/guile-gcrypt") (source (origin (method git-fetch) @@ -482,7 +482,7 @@ gpgpme starting with version 1.7.") (commit (string-append "v" version)))) (sha256 (base32 - "0n232iyayc46f7hywmjw0jr7pbmmz5h4b04jskhkzz9gxz0ci99c")) + "0m29fg4pdfifnqqsa437zc5c1bhbfh62mc69ba25ak4x2cla41ll")) (file-name (git-file-name name version)))) (build-system gnu-build-system) (arguments @@ -510,7 +510,7 @@ gpgpme starting with version 1.7.") ("libgcrypt" ,libgcrypt))) (synopsis "Cryptography library for Guile using Libgcrypt") (description - "Guile-Gcrypt provides a Guile 2.x interface to a subset of the + "Guile-Gcrypt provides a Guile interface to a subset of the GNU Libgcrypt crytographic library. It provides modules for cryptographic hash functions, message authentication codes (MAC), public-key cryptography, strong randomness, and more. It is implemented using the foreign function -- cgit v1.2.3 From 7ae5d7d7953d268a2751d313fcd3b744717aa631 Mon Sep 17 00:00:00 2001 From: Michael Rohleder Date: Thu, 21 May 2020 23:32:19 +0200 Subject: gnu: libmediainfo: Update to 20.03. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/video.scm (libmediainfo): Update to 20.03. Signed-off-by: Ludovic Courtès --- gnu/packages/video.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 422eb79941..fc7a134df8 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -3019,15 +3019,15 @@ practically any type of media.") (define-public libmediainfo (package (name "libmediainfo") - (version "0.7.95") + (version "20.03") (source (origin (method url-fetch) (uri (string-append "https://mediaarea.net/download/source/" - name "/" version"/" - name "_" version ".tar.bz2")) + name "/" version "/" + name "_" version ".tar.xz")) (sha256 (base32 - "1kchh6285b07z5nixv619hc9gml2ysdayicdiv30frrlqiyxqw4b")))) + "0wkzj5s34m8dvy7hif4h8f90q8ncrzd930gij1zzw3h5nw732j38")))) ;; TODO add a Big Buck Bunny webm for tests. (native-inputs `(("autoconf" ,autoconf) -- cgit v1.2.3 From 4c1f5ea34c4620499654eb9f5086b657055f516d Mon Sep 17 00:00:00 2001 From: Michael Rohleder Date: Thu, 21 May 2020 23:37:13 +0200 Subject: gnu: mediainfo: Update to 20.03. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/video.scm (mediainfo): Update to 20.03. Signed-off-by: Ludovic Courtès --- gnu/packages/video.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index fc7a134df8..1e36c6c313 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -41,6 +41,7 @@ ;;; Copyright © 2020 Vincent Legoll ;;; Copyright © 2020 Guillaume Le Vaillant ;;; Copyright © 2020 Alex McGrath +;;; Copyright © 2020 Michael Rohleder ;;; ;;; This file is part of GNU Guix. ;;; @@ -3077,7 +3078,7 @@ MPEG-2, MPEG-4, DVD (VOB)... (define-public mediainfo (package (name "mediainfo") - (version "18.12") + (version "20.03") (source (origin (method url-fetch) ;; Warning: This source has proved unreliable 1 time at least. @@ -3085,10 +3086,10 @@ MPEG-2, MPEG-4, DVD (VOB)... ;; happens again. (uri (string-append "https://mediaarea.net/download/source/" name "/" version "/" - name "_" version ".tar.bz2")) + name "_" version ".tar.xz")) (sha256 (base32 - "1ix95ilcjlawcq6phh25cgplm3riqa2ii7ql82g8yagqs4ldqp6a")))) + "1f1shnycf0f1fwka9k9s250l228xjkg0k4k73h8bpld8msighgnw")))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) -- cgit v1.2.3 From 964ba6567d00818f34bc96a949e81b73a1ef3570 Mon Sep 17 00:00:00 2001 From: Jonathan Brielmaier Date: Thu, 14 May 2020 13:49:53 +0200 Subject: gnu: icedove: Add a desktop file. * gnu/packages/gnuzilla.scm (icedove)[phases]: Add install-desktop-file phase. Signed-off-by: Marius Bakke --- gnu/packages/gnuzilla.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 8a926681e0..7bf9850e97 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -1344,6 +1344,32 @@ standards of the IceCat project.") (lambda _ (invoke "./mach" "build"))) (replace 'install (lambda _ (invoke "./mach" "install"))) + ;; Thunderbird doesn't provide any .desktop file. + ;; See https://bugzilla.mozilla.org/show_bug.cgi?id=1637575 + (add-after 'install 'install-desktop-file + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (apps (string-append out "/share/applications"))) + (mkdir-p apps) + (with-output-to-file (string-append apps "/icedove.desktop") + (lambda _ + (format #t + "[Desktop Entry]~@ + Name=Icedove~@ + Exec=~a/bin/icedove~@ + Icon=icedove~@ + GenericName=Mail/News Client~@ + Categories=Network;Email;~@ + Terminal=false~@ + StartupNotify=true~@ + MimeType=x-scheme-handler/mailto;~@ + Type=Application~@ + Actions=ComposeMessage;~@ + [Desktop Action ComposeMessage]~@ + Name=Write new message~@ + Exec=~@*~a/bin/icedove -compose~%" + out)))) + #t)) (add-after 'install 'wrap-program (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) -- cgit v1.2.3 From 01e81309c01b901cf46b034152ba7c0829aa9df8 Mon Sep 17 00:00:00 2001 From: Ryan Prior via Guix-patches via Date: Sun, 17 May 2020 18:41:48 +0000 Subject: gnu: Add python-importmagic. * gnu/packages/python-xyz.el (python-importmagic): New variable. Signed-off-by: Marius Bakke --- gnu/packages/python-xyz.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 5c0f0bda82..7d8003a7fb 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -77,6 +77,7 @@ ;;; Copyright © 2020 Lars-Dominik Braun ;;; Copyright © 2020 Alex ter Weele ;;; Copyright © 2020 Matthew Kraai +;;; Copyright © 2020 Ryan Prior ;;; ;;; This file is part of GNU Guix. ;;; @@ -5896,6 +5897,25 @@ need to use the older and less efficient @code{pkg_resources} package.") ("python-contextlib2" ,python2-contextlib2-bootstrap) ("python-importlib-resources" ,python2-importlib-resources-bootstrap)))))) +(define-public python-importmagic + (package + (name "python-importmagic") + (version "0.1.7") + (source + (origin + (method url-fetch) + (uri (pypi-uri "importmagic" version)) + (sha256 + (base32 + "1n7qxa1snj06aw45mcfz7bxc46zp7fxj687140g2k6jcnyjmfxrz")))) + (build-system python-build-system) + (home-page "https://github.com/alecthomas/importmagic") + (synopsis "Library for adding, removing and managing Python imports") + (description + "Importmagic is a Python library for automatically managing imports by +finding unresolved symbols in Python code and their corresponding imports.") + (license license:bsd-3))) + (define-public python-jaraco-packaging (package (name "python-jaraco-packaging") -- cgit v1.2.3 From 1348e512375503e254f8d1f0c79a99754a94f0e8 Mon Sep 17 00:00:00 2001 From: Ryan Prior via Guix-patches via Date: Sun, 17 May 2020 18:41:54 +0000 Subject: gnu: Add python-sexpdata. * gnu/packages/python-xyz.scm (python-sexpdata): New variable. Signed-off-by: Marius Bakke --- gnu/packages/python-xyz.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 7d8003a7fb..fb19523c17 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -5768,6 +5768,25 @@ them as the version argument or in a SCM managed file.") (define-public python2-setuptools-scm (package-with-python2 python-setuptools-scm)) +(define-public python-sexpdata + (package + (name "python-sexpdata") + (version "0.0.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "sexpdata" version)) + (sha256 + (base32 + "1q4lsjyzzqrdv64l0pv4ij9nd8gqhvxqcrpxc2xpxs652sk2gj0s")))) + (build-system python-build-system) + (home-page "https://github.com/jd-boyd/sexpdata") + (synopsis "S-expression parser for Python") + (description + "Sexpdata is an S-expression parser/serializer. It has load and dump +functions like pickle, json or PyYAML module.") + (license license:bsd-3))) + (define-public python-pathlib2 (package (name "python-pathlib2") -- cgit v1.2.3 From c265d78640948410af824d26b981d3ebdebb8a02 Mon Sep 17 00:00:00 2001 From: Ryan Prior via Guix-patches via Date: Sun, 17 May 2020 18:41:59 +0000 Subject: gnu: Add python-epc. * gnu/packages/python-xyz.py (python-epc): New variable. Signed-off-by: Marius Bakke --- gnu/packages/python-xyz.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index fb19523c17..39424d0c14 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -8825,6 +8825,29 @@ functions to find and load entry points.") (define-public python2-entrypoints (package-with-python2 python-entrypoints)) +(define-public python-epc + (package + (name "python-epc") + (version "0.0.5") + (source + (origin + (method url-fetch) + (uri (pypi-uri "epc" version)) + (sha256 + (base32 + "09bx1ln1bwa00917dndlgs4k589h8qx2x080xch5m58p92kjwkd1")))) + (build-system python-build-system) + (propagated-inputs + `(("python-sexpdata" ,python-sexpdata))) + (native-inputs + `(("python-nose" ,python-nose))) + (home-page "https://github.com/tkf/python-epc") + (synopsis "Remote procedure call (RPC) stack for Emacs Lisp and Python") + (description + "Python-EPC can call elisp functions from Python and Python functions +from elisp.") + (license license:gpl3))) + (define-public python-nbconvert (package (name "python-nbconvert") -- cgit v1.2.3 From 51443772b80c5ca51ccbe5cf05c5db4c216a7b66 Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Tue, 19 May 2020 09:24:03 +0200 Subject: gnu: python-argcomplete: Update to 1.11.1. * gnu/packages/python-xyz.scm (python-argcomplete)[version]: Update to 1.11.1. [arguments]: Remove, obsolete. [inputs]: Remove as well. * gnu/packages/patches/python-argcomplete-1.11.1-fish31.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. Signed-off-by: Marius Bakke --- gnu/local.mk | 1 + .../patches/python-argcomplete-1.11.1-fish31.patch | 29 ++++++++++++++++++++++ gnu/packages/python-xyz.scm | 23 +++-------------- 3 files changed, 33 insertions(+), 20 deletions(-) create mode 100644 gnu/packages/patches/python-argcomplete-1.11.1-fish31.patch (limited to 'gnu') diff --git a/gnu/local.mk b/gnu/local.mk index 575b18eb41..23d775284a 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1412,6 +1412,7 @@ dist_patch_DATA = \ %D%/packages/patches/python-CVE-2018-14647.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-argcomplete-1.11.1-fish31.patch \ %D%/packages/patches/python-axolotl-AES-fix.patch \ %D%/packages/patches/python-cairocffi-dlopen-path.patch \ %D%/packages/patches/python-cross-compile.patch \ diff --git a/gnu/packages/patches/python-argcomplete-1.11.1-fish31.patch b/gnu/packages/patches/python-argcomplete-1.11.1-fish31.patch new file mode 100644 index 0000000000..98f0ca1473 --- /dev/null +++ b/gnu/packages/patches/python-argcomplete-1.11.1-fish31.patch @@ -0,0 +1,29 @@ +Upstream commit fixing testcases for fish>=3.1, see +https://github.com/kislyuk/argcomplete/commit/08bfc8a788e8081515d733e67be026d051c726f7 + +diff --git a/test/test.py b/test/test.py +index e91352b..2c34806 100755 +--- a/test/test.py ++++ b/test/test.py +@@ -28,6 +28,8 @@ + + BASH_VERSION = subprocess.check_output(['bash', '-c', 'echo $BASH_VERSION']).decode() + BASH_MAJOR_VERSION = int(BASH_VERSION.split('.')[0]) ++FISH_VERSION_STR = subprocess.check_output(['fish', '-c', 'echo -n $FISH_VERSION']).decode() ++FISH_VERSION_TUPLE = tuple(int(x) for x in FISH_VERSION_STR.split('.')) + + + class TempDir(object): +@@ -1258,8 +1260,11 @@ class TestFish(_TestSh, unittest.TestCase): + expected_failures = [ + 'test_parse_special_characters', + 'test_comp_point', +- 'test_special_characters_double_quoted' + ] ++ if FISH_VERSION_TUPLE < (3, 1): ++ expected_failures.extend([ ++ 'test_special_characters_double_quoted' ++ ]) + + skipped = [ + 'test_single_quotes_in_single_quotes', diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 39424d0c14..9aa5635ab8 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -13070,33 +13070,16 @@ PNG, JPEG, JPEG2000 and GIF files in pure Python.") (define-public python-argcomplete (package (name "python-argcomplete") - (version "1.10.3") + (version "1.11.1") (source (origin (method url-fetch) (uri (pypi-uri "argcomplete" version)) (sha256 (base32 - "02jkc44drb0yjz6x28lvg6rj607n8r2irdpdvyylm8xnycn54zx3")))) + "0h1przxffrhqvi46k40pzjsvdrq4zc3sl1pc96kkigqppq0vdrss")) + (patches (search-patches "python-argcomplete-1.11.1-fish31.patch")))) (build-system python-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'embed-tool-references - (lambda _ - (substitute* "argcomplete/bash_completion.d/python-argcomplete.sh" - ((" grep") - (string-append " " (which "grep"))) - ((" egrep") - (string-append " " (which "egrep"))) - (("elif which") - (string-append "elif " (which "which"))) - (("\\$\\(which") - (string-append "$(" (which "which")))) - #t))))) - (inputs - `(("grep" ,grep) - ("which" ,which))) (native-inputs `(("python-coverage" ,python-coverage) ("python-flake8" ,python-flake8) -- cgit v1.2.3 From 07b1f6dcee0be6297eabca6852e4f52efd437a20 Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Thu, 21 May 2020 16:55:21 +0200 Subject: gnu: umockdev: Add 'gobject-introspection'. * gnu/packages/check.scm (umockdev)[native-inuputs]: Add 'gobject-introspection'. --- gnu/packages/check.scm | 1 + 1 file changed, 1 insertion(+) (limited to 'gnu') diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 12e01795ee..b279dc149d 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -2538,6 +2538,7 @@ provides a simple way to achieve this.") #t))))) (native-inputs `(("vala" ,vala) + ("gobject-introspection" ,gobject-introspection) ("gtk-doc" ,gtk-doc) ("pkg-config" ,pkg-config) -- cgit v1.2.3 From 96ae71f56b245f2f526ddcde3e60530fd19a4720 Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Thu, 21 May 2020 17:01:37 +0200 Subject: gnu: umockdev: Update to 0.14.1. * gnu/packages/check.scm (umockdev) Update to 0.14.1. --- gnu/packages/check.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index b279dc149d..7d7fd189bc 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -2518,7 +2518,7 @@ provides a simple way to achieve this.") (define-public umockdev (package (name "umockdev") - (version "0.13.2") + (version "0.14.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/martinpitt/umockdev/" @@ -2526,7 +2526,7 @@ provides a simple way to achieve this.") "umockdev-" version ".tar.xz")) (sha256 (base32 - "095v3abc321s584sga04y16lcmdzsdi88h24wcrm78v7vq484g74")))) + "1g78jcrvb7yyh0q5kv5409wjqf8nlfqnw1rknm3a247mcx317dpz")))) (build-system gnu-build-system) (arguments `(#:phases -- cgit v1.2.3 From 6039031a1a5e1cabd380b8715334d5a8f600055f Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Thu, 21 May 2020 17:04:23 +0200 Subject: gnu: upower: Enable tests. * gnu/packages/gnome.scm (upower)[arguments]: Enable tests and add phases 'pre-check'. [native-inputs]: Add 'python-pygobject', 'python-dbus', 'python-dbusmock' and 'umockdev'. --- gnu/packages/gnome.scm | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index e94d65908d..5271fe5fbd 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4159,10 +4159,14 @@ faster results and to avoid unnecessary server load.") #t)))) (build-system glib-or-gtk-build-system) (arguments - '( ;; The tests want to contact the system bus, which can't be done in the - ;; build environment. The integration test can run, but the last of - ;; the up-self-tests doesn't. Disable tests for now. - #:tests? #f + '(#:phases + (modify-phases %standard-phases + (add-before 'check 'pre-check + (lambda* (#:key inputs #:allow-other-keys) + (let ((umockdev (string-append (assoc-ref inputs "umockdev") + "/lib"))) + (setenv "LD_LIBRARY_PATH" umockdev)) + #t))) #:configure-flags (list "--localstatedir=/var" (string-append "--with-udevrulesdir=" (assoc-ref %outputs "out") @@ -4173,6 +4177,12 @@ faster results and to avoid unnecessary server load.") ("intltool" ,intltool) ("python" ,python) + ;; For tests. + ("python-dbus" ,python-dbus) + ("python-dbusmock" ,python-dbusmock) + ("python-pygobject" ,python-pygobject) + ("umockdev" ,umockdev) + ;; For man pages. ("libxslt" ,libxslt) ;for 'xsltproc' ("libxml2" ,libxml2) ;for 'XML_CATALOG_FILES' -- cgit v1.2.3 From 899ffa1381afbf5f955aeba4839e920b3d910953 Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Fri, 22 May 2020 00:34:41 +0200 Subject: gnu: deja-dup: Update to 40.6. * gnu/packages/gnome.scm (deja-dup): Update to 40.6. [origin]: Use gitlab.gnome.org since the project migrated away from launchpad. [home-page]: Use 'wiki.gnome.org' instead of 'launchpad.net'. [build-system]: Switch to 'meson-build-system' because upstream removed cmake support. [arguments]: Enable tests. Remove arguments 'modules', 'imported-modules' and 'test-target'. Use argument 'glib-or-gtk?'. Replace configure-flags to only adjust 'RUN_PATH'. Use standard phases for 'configure' and 'check'. Adjust and rename phase 'patch-lockfile-deletion' to 'patch-paths'. Add phases 'patch-libgpg-error' and 'skip-gtk-update-icon-cache'. [inputs]: Remove 'libpeas', 'gobject-introspection'. Replace 'python-2' and 'python2-pygobject' with python-3 versions. Add 'json-glib', 'libsoup' and 'libgpg-error'. [native-inputs]: Remove 'cmake-minimal' and 'intltool'. Add 'appstream-glib','desktop-file-utils', 'glib:bin' and 'gobject-introspection'. * gnu/packages/patches/deja-dup-use-ref-keyword-for-iter.patch: Delete file. --- gnu/packages/gnome.scm | 105 ++++++++++----------- .../deja-dup-use-ref-keyword-for-iter.patch | 41 -------- 2 files changed, 52 insertions(+), 94 deletions(-) delete mode 100644 gnu/packages/patches/deja-dup-use-ref-keyword-for-iter.patch (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 5271fe5fbd..db4678e3ce 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -879,73 +879,72 @@ configuration files for the GNOME menu, as well as a simple menu editor.") (define-public deja-dup (package (name "deja-dup") - (version "34.3") + (version "40.6") (source (origin - (method url-fetch) - (uri "https://launchpadlibrarian.net/295170991/deja-dup-34.3.tar.xz") - (sha256 - (base32 - "1xqcr61hpbahbla7gdjn4ngjfz7w6f57y7f5pkb77yk05f60j2n9")) - (patches - (search-patches "deja-dup-use-ref-keyword-for-iter.patch")))) - (build-system glib-or-gtk-build-system) + (method url-fetch) + (uri (string-append "https://gitlab.gnome.org/World/deja-dup/-/archive/" + version "/deja-dup-" version ".tar.bz2")) + (sha256 + (base32 + "0lwazh6crby5wpy9fg6zvwy4plqbhs2f98bm5lbizjdlbh88n5q0")))) + (build-system meson-build-system) (arguments - `(#:modules ((guix build gnu-build-system) - ((guix build cmake-build-system) #:prefix cmake:) - (guix build glib-or-gtk-build-system) - (guix build utils)) - #:imported-modules (,@%glib-or-gtk-build-system-modules - (guix build cmake-build-system)) - #:test-target "test" - #:configure-flags (list (string-append - "-DCMAKE_INSTALL_FULL_DATADIR=" %output) - (string-append - "-DCMAKE_INSTALL_LIBEXECDIR=" %output)) + `(#:glib-or-gtk? #t + #:configure-flags + (list + ;; Otherwise, the RUNPATH will lack the final path component. + (string-append "-Dc_link_args=-Wl,-rpath=" + (assoc-ref %outputs "out") "/lib/deja-dup")) #:phases (modify-phases %standard-phases - (add-after 'unpack 'patch-lockfile-deletion - (lambda rest - (substitute* "libdeja/tools/duplicity/DuplicityInstance.vala" - (("/bin/rm") - (which "rm"))))) - (replace 'configure - (assoc-ref cmake:%standard-phases 'configure)) - (delete 'check) ;; Fails due to issues with DBus - (add-after 'install 'wrap-deja-dup - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((python (assoc-ref inputs "python")) - (python-path (getenv "PYTHONPATH")) - (duplicity (assoc-ref inputs "duplicity")) - (out (assoc-ref outputs "out"))) - (for-each - (lambda (program) - (wrap-program program - `("PATH" ":" prefix (,(string-append python "/bin") - ,(string-append duplicity "/bin")))) - (wrap-program program - `("PYTHONPATH" ":" prefix (,python-path)))) - - (find-files (string-append out "/bin"))) - #t)))))) + (add-after 'unpack 'patch-paths + (lambda* (#:key inputs #:allow-other-keys) + (let ((python (assoc-ref inputs "python"))) + (substitute* '("libdeja/tools/duplicity/DuplicityInstance.vala" + "libdeja/tests/scripts/instance-error.test") + (("/bin/rm") + (which "rm"))) + (substitute* "libdeja/tests/runner.vala" + (("/bin/sh") + (which "sh"))) + (substitute* "libdeja/tests/scripts/instance-error.test" + (("`which python3`") + (string-append python "/bin/python3")))))) + (add-after 'unpack 'patch-libgpg-error + (lambda* (#:key inputs #:allow-other-keys) + (let ((libgpg-error (assoc-ref inputs "libgpg-error"))) + (substitute* "meson.build" + (("(gpgerror_libs = ).*" _ var) + (format #f "~a '-L~a/lib -lgpg-error'\n" var libgpg-error)))) + #t)) + (add-after 'unpack 'skip-gtk-update-icon-cache + ;; Don't create 'icon-theme.cache'. + (lambda _ + (substitute* "data/post-install.sh" + (("gtk-update-icon-cache") "true")) + #t))))) (inputs `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas) - ("gobject-introspection" ,gobject-introspection) ("duplicity" ,duplicity) - ("python" ,python-2) - ("python-pygobject" ,python2-pygobject) + ("python" ,python) + ("python-pygobject" ,python-pygobject) ("gtk+" ,gtk+) + ("json-glib" ,json-glib) ("libnotify" ,libnotify) - ("libpeas" ,libpeas) + ("libgpg-error" ,libgpg-error) ("libsecret" ,libsecret) + ("libsoup" ,libsoup) ("packagekit" ,packagekit))) (native-inputs - `(("pkg-config" ,pkg-config) - ("vala" ,vala) + `(("appstream-glib" ,appstream-glib) + ("desktop-file-utils" ,desktop-file-utils) ("gettext" ,gettext-minimal) + ("glib" ,glib "bin") ; for glib-compile-schemas. + ("gobject-introspection" ,gobject-introspection) ("itstool" ,itstool) - ("intltool" ,intltool) - ("cmake" ,cmake-minimal))) - (home-page "https://launchpad.net/deja-dup") + ("pkg-config" ,pkg-config) + ("vala" ,vala))) + (home-page "https://wiki.gnome.org/Apps/DejaDup") (synopsis "Simple backup tool, for regular encrypted backups") (description "Déjà Dup is a simple backup tool, for regular encrypted backups. It diff --git a/gnu/packages/patches/deja-dup-use-ref-keyword-for-iter.patch b/gnu/packages/patches/deja-dup-use-ref-keyword-for-iter.patch deleted file mode 100644 index a03e0c5481..0000000000 --- a/gnu/packages/patches/deja-dup-use-ref-keyword-for-iter.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 5676766be5e845ccb6cdf46cfa8722497f151752 Mon Sep 17 00:00:00 2001 -From: Jeremy Bicha -Date: Fri, 16 Jun 2017 15:11:37 -0400 -Subject: Use 'ref' keyword for iter, requires vala 0.36 - - -diff --git a/deja-dup/widgets/ConfigList.vala b/deja-dup/widgets/ConfigList.vala -index 15de2d6..02cd81a 100644 ---- a/deja-dup/widgets/ConfigList.vala -+++ b/deja-dup/widgets/ConfigList.vala -@@ -333,7 +333,7 @@ public class ConfigList : ConfigWidget - - model.row_deleted.disconnect(write_to_config); - foreach (Gtk.TreeIter iter in iters) { -- (model as Gtk.ListStore).remove(iter); -+ (model as Gtk.ListStore).remove(ref iter); - } - model.row_deleted.connect(write_to_config); - -diff --git a/deja-dup/widgets/ConfigLocation.vala b/deja-dup/widgets/ConfigLocation.vala -index 869e2a8..d21c556 100644 ---- a/deja-dup/widgets/ConfigLocation.vala -+++ b/deja-dup/widgets/ConfigLocation.vala -@@ -397,12 +397,12 @@ public class ConfigLocation : ConfigWidget - if (uuid == saved_uuid) - return; - -- store.remove(iter); -+ store.remove(ref iter); - - if (--num_volumes == 0) { - Gtk.TreeIter sep_iter; - if (store.get_iter_from_string(out sep_iter, index_vol_sep.to_string())) { -- store.remove(sep_iter); -+ store.remove(ref sep_iter); - index_vol_sep = -2; - } - } --- -cgit v0.10.2 - -- cgit v1.2.3 From 79d7b5277f803d474f8934b1680ce598c9c27e2d Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Thu, 21 May 2020 15:54:02 +0200 Subject: gnu: dconf: Appease 'guix lint'. * gnu/packages/gnome.scm (dconf)[homepage]: Avoid permanent redirect. --- gnu/packages/gnome.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index db4678e3ce..49fb2c8f0c 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3436,7 +3436,7 @@ and RDP protocols.") ; or /etc/machine-id. #:glib-or-gtk? #t #:configure-flags '("-Denable-gtk-doc=true"))) - (home-page "https://developer.gnome.org/dconf") + (home-page "https://developer.gnome.org/dconf/") (synopsis "Low-level GNOME configuration system") (description "Dconf is a low-level configuration system. Its main purpose is to provide a backend to GSettings on platforms that don't already have -- cgit v1.2.3 From e24d311f9c4787333b136b8bad504ae74f679259 Mon Sep 17 00:00:00 2001 From: Brice Waegeneire Date: Sat, 23 May 2020 21:47:53 +0200 Subject: gnu: gnome-shell: Use libnma. * gnu/packages/gnome.scm (gnome-shell)[inputs]: Add 'libnma'. --- gnu/packages/gnome.scm | 1 + 1 file changed, 1 insertion(+) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 49fb2c8f0c..a568d54044 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -7297,6 +7297,7 @@ properties, screen resolution, and other GNOME parameters.") ("libcroco" ,libcroco) ("libgnomekbd" ,libgnomekbd) ;for gkbd-keyboard-display ("libgweather" ,libgweather) + ("libnma" ,libnma) ("libsoup" ,libsoup) ("mesa-headers" ,mesa-headers) ("mutter" ,mutter) -- cgit v1.2.3 From 21d3b765d9f22cdc2d027531411af27216592ef4 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sat, 23 May 2020 22:54:46 +0100 Subject: gnu: local.mk: Remove absent patch. This follows on from 899ffa1381afbf5f955aeba4839e920b3d910953. * gnu/local.mk (dist_patch_DATA): Remove packages/patches/deja-dup-use-ref-keyword-for-iter.patch. --- gnu/local.mk | 1 - 1 file changed, 1 deletion(-) (limited to 'gnu') diff --git a/gnu/local.mk b/gnu/local.mk index 23d775284a..42707823eb 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -860,7 +860,6 @@ dist_patch_DATA = \ %D%/packages/patches/dconf-meson-0.52.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/deja-dup-use-ref-keyword-for-iter.patch \ %D%/packages/patches/desmume-gcc6-fixes.patch \ %D%/packages/patches/desmume-gcc7-fixes.patch \ %D%/packages/patches/dfu-programmer-fix-libusb.patch \ -- cgit v1.2.3 From b1affd477882b8df39a2cdcc3c419be9322bf778 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 24 May 2020 00:01:15 +0200 Subject: gnu: redshift-wayland: Install redshift.desktop. * gnu/packages/xdisorg.scm (redshift-wayland)[arguments]: New field. --- gnu/packages/xdisorg.scm | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 1714cb8caf..acc74e328a 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -1238,6 +1238,24 @@ color temperature should be set to match the lamps in your room.") (base32 "0nbkcw3avmzjg1jr1g9yfpm80kzisy55idl09b6wvzv2sz27n957")))) (build-system gnu-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (add-after 'install 'create-desktop-file + (lambda* (#:key outputs #:allow-other-keys) + ;; For the GeoClue provider to work, a .desktop file + ;; needs to be provided. A template is available, + ;; but it only gets installed when the GUI is enabled. + ;; Install it manually for this Wayland variant. + (let* ((out (assoc-ref outputs "out")) + (desktop-file + (string-append + out "/share/applications/redshift.desktop"))) + (mkdir-p (dirname desktop-file)) + (copy-file "data/applications/redshift.desktop.in" + desktop-file) + (substitute* desktop-file + (("^_") "")) + #t)))))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) -- cgit v1.2.3 From dfc426582f7e5a34a89015663cadbad3829f55e5 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 24 May 2020 10:18:01 +0300 Subject: gnu: nano: Update to 4.9.3. * gnu/packages/nano.scm (nano): Update to 4.9.3. --- gnu/packages/nano.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/nano.scm b/gnu/packages/nano.scm index 099a953989..8ea84ab724 100644 --- a/gnu/packages/nano.scm +++ b/gnu/packages/nano.scm @@ -30,13 +30,13 @@ (define-public nano (package (name "nano") - (version "4.9.2") + (version "4.9.3") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/nano/nano-" version ".tar.xz")) (sha256 - (base32 "1xifbn1xaklrrf7knxvqif0hy0wgnas7w0wfggay5kifjkm5x8nq")))) + (base32 "1d2i3wvsq5lvpxxinq51dcvd58xx7j0d0c2csz9hgvd06gq3hd3f")))) (build-system gnu-build-system) (inputs `(("gettext" ,gettext-minimal) -- cgit v1.2.3 From 4492981706e0f2041053fdc728e29232855d8689 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 24 May 2020 16:09:36 +0200 Subject: gnu: pidgin: Fix build with Meson network-manager. This is a follow-up commit to 255ff74f3ab514a76068f6cfccc7f8dbcf8b7f3f: building network-manager with Meson breaks users of NetworkManager.pc. * gnu/packages/messaging.scm (pidgin)[source]: Add pidgin-libnm.patch. Force re-bootstrapping in a new snippet. [native-inputs]: Add autoconf, automake, and libtool. * gnu/packages/patches/pidgin-libnm.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/messaging.scm | 18 ++++++++-- gnu/packages/patches/pidgin-libnm.patch | 60 +++++++++++++++++++++++++++++++++ 3 files changed, 77 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/pidgin-libnm.patch (limited to 'gnu') diff --git a/gnu/local.mk b/gnu/local.mk index 42707823eb..bbe06d2b20 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1363,6 +1363,7 @@ dist_patch_DATA = \ %D%/packages/patches/perl-www-curl-remove-symbol.patch \ %D%/packages/patches/picprog-non-intel-support.patch \ %D%/packages/patches/pidgin-add-search-path.patch \ + %D%/packages/patches/pidgin-libnm.patch \ %D%/packages/patches/pinball-const-fix.patch \ %D%/packages/patches/pinball-cstddef.patch \ %D%/packages/patches/pinball-missing-separators.patch \ diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 57ff0835d1..ce542ad4f4 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -440,7 +440,16 @@ authentication.") version "/pidgin-" version ".tar.bz2")) (sha256 (base32 "13vdqj70315p9rzgnbxjp9c51mdzf1l4jg1kvnylc4bidw61air7")) - (patches (search-patches "pidgin-add-search-path.patch")))) + (patches (search-patches "pidgin-add-search-path.patch" + ;; Remove the snippet and bootstrapping + ;; native-inputs together with this patch. + "pidgin-libnm.patch")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Remove stale generated file after applying pidgin-libnm.patch. + (delete-file "configure") + #t)))) (build-system glib-or-gtk-build-system) (native-inputs `(("pkg-config" ,pkg-config) @@ -448,7 +457,12 @@ authentication.") ("intltool" ,intltool) ("gconf" ,gconf) ("python" ,python-2) - ("doxygen" ,doxygen))) + ("doxygen" ,doxygen) + + ;; For bootstrapping after applying pidgin-libnm.patch. + ("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool))) (inputs `(("gtk+" ,gtk+-2) ("libgcrypt" ,libgcrypt) diff --git a/gnu/packages/patches/pidgin-libnm.patch b/gnu/packages/patches/pidgin-libnm.patch new file mode 100644 index 0000000000..d34af749af --- /dev/null +++ b/gnu/packages/patches/pidgin-libnm.patch @@ -0,0 +1,60 @@ +From: Tobias Geerinckx-Rice +Date: Sun, 24 May 2020 16:11:01 +0200 +Subject: [PATCH] gnu: pidgin: Find libnm. + +Copied verbatim from[0]. + +[0]: https://git.archlinux.org/svntogit/packages.git/plain/trunk/pidgin-nm-1.0.patch?h=packages/pidgin + +diff --git a/configure.ac b/configure.ac +index 04836fa..0a2d451 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1423,18 +1423,24 @@ fi + dnl Check for NetworkManager.h; if we don't have it, oh well + if test "x$enable_dbus" = "xyes" ; then + if test "x$enable_nm" = "xyes" ; then +- PKG_CHECK_MODULES(NETWORKMANAGER, [NetworkManager >= 0.5.0], [ ++ PKG_CHECK_MODULES(NETWORKMANAGER, [libnm], [ + AC_SUBST(NETWORKMANAGER_CFLAGS) + AC_SUBST(NETWORKMANAGER_LIBS) + AC_DEFINE(HAVE_NETWORKMANAGER, 1, [Define if we have NetworkManager.]) + ], [ +- enable_nm=no +- if test "x$force_deps" = "xyes" ; then +- AC_MSG_ERROR([ ++ PKG_CHECK_MODULES(NETWORKMANAGER, [NetworkManager >= 0.5.0], [ ++ AC_SUBST(NETWORKMANAGER_CFLAGS) ++ AC_SUBST(NETWORKMANAGER_LIBS) ++ AC_DEFINE(HAVE_NETWORKMANAGER, 1, [Define if we have NetworkManager.]) ++ ], [ ++ enable_nm=no ++ if test "x$force_deps" = "xyes" ; then ++ AC_MSG_ERROR([ + NetworkManager development headers not found. + Use --disable-nm if you do not need NetworkManager support. + ]) +- fi]) ++ fi]) ++ ]) + fi + else + enable_nm=no +diff --git a/libpurple/network.c b/libpurple/network.c +index c43e3c7..b17e439 100644 +--- a/libpurple/network.c ++++ b/libpurple/network.c +@@ -939,8 +939,13 @@ nm_update_state(NMState state) + #if NM_CHECK_VERSION(0,8,992) + case NM_STATE_DISCONNECTING: + #endif ++#if NM_CHECK_VERSION(1,0,0) ++ if (prev != NM_STATE_CONNECTED_GLOBAL && prev != NM_STATE_UNKNOWN) ++ break; ++#else + if (prev != NM_STATE_CONNECTED && prev != NM_STATE_UNKNOWN) + break; ++#endif + if (ui_ops != NULL && ui_ops->network_disconnected != NULL) + ui_ops->network_disconnected(); + break; -- cgit v1.2.3 From 1576acbe09d2adc7e3ca46ade0df8009a26b489a Mon Sep 17 00:00:00 2001 From: Royce Strange Date: Sun, 24 May 2020 03:57:19 -0500 Subject: build: Add missing twinkle patch to gnu/local.mk. This follows up on e5463baf2ce21cd2abc7ac5576401ae7ee7eb28c. * gnu/local.mk (dist_patch_DATA): Add twinkle-bcg729.patch. Signed-off-by: Tobias Geerinckx-Rice --- gnu/local.mk | 1 + 1 file changed, 1 insertion(+) (limited to 'gnu') diff --git a/gnu/local.mk b/gnu/local.mk index bbe06d2b20..f4326d4db8 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1540,6 +1540,7 @@ dist_patch_DATA = \ %D%/packages/patches/ttfautohint-source-date-epoch.patch \ %D%/packages/patches/tomb-fix-errors-on-open.patch \ %D%/packages/patches/tuxpaint-stamps-path.patch \ + %D%/packages/patches/twinkle-bcg729.patch \ %D%/packages/patches/u-boot-riscv64-fix-extlinux.patch \ %D%/packages/patches/u-boot-DT-for-Pinebook-Pro.patch \ %D%/packages/patches/u-boot-add-boe-nv140fhmn49-display.patch \ -- cgit v1.2.3 From bdc7f72fe4391ede313a0388ddd17cbb053931c9 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sun, 24 May 2020 20:48:14 +0100 Subject: gnu: go-github-com-kr-pretty: Fix source sha256. This follows on from 618df2e335acb49a27ca014b555ede34f79503f3, which left the hash suspiciously similar to the previous value. * gnu/packages/golang.scm (go-github-com-kr-pretty): Change the sha256 hash. --- gnu/packages/golang.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index c6f47aa144..3ae59ad2b7 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -2810,7 +2810,7 @@ format in Go.") (file-name (git-file-name name version)) (sha256 (base32 - "1pm4pwg2abd0j9cn5v3k2ksk9ig4vlwxmlw9rrglanziv9l967qp")))) + "1ywbfzz1h3a3qd8rpkiqwi1dm4w8ls9ijb4x1b7567grns9f0vnp")))) (build-system go-build-system) (propagated-inputs `(("go-github-com-kr-text" ,go-github-com-kr-text))) -- cgit v1.2.3 From 1157bee478294af2e2568f4a01a0411eb8fa6fc4 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 3 May 2020 09:23:44 +0300 Subject: gnu: efl: Update to 1.24.1. * gnu/packages/enlightenment.scm (efl): Update to 1.24.1. [propagated-inputs]: Remove bullet. Add libpng. Move libtiff, libwebp, util-linux:lib ... [inputs]: ... to here. Add openjpeg. Remove libxp. [arguments]: In configure-flags disable scim, enable avahi, glib. Use setuid mount/umount binaries. Rename hardcode-libcurl-location to hardcode-dynamic-libraries and add pulseaudio, libsndfile. squash! efl-1.24.1 --- gnu/packages/enlightenment.scm | 47 +++++++++++++++++++++++++----------------- 1 file changed, 28 insertions(+), 19 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index 32d8ea9c0d..42fd8fffd1 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Tomáš Čech ;;; Copyright © 2015 Daniel Pimentel -;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner +;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Efraim Flashner ;;; Copyright © 2017 Nikita ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice ;;; Copyright © 2018 Timo Eisenmann @@ -69,7 +69,7 @@ (define-public efl (package (name "efl") - (version "1.23.3") + (version "1.24.1") (source (origin (method url-fetch) (uri (string-append @@ -77,7 +77,7 @@ version ".tar.xz")) (sha256 (base32 - "00b9lp3h65254kdb1ys15fv7p3ln7qsvf15jkw4kli5ymagadkjk")))) + "1xsbz5kl74cgzyzwmjy3p50m0iigvi53lklkp92v49k4j99zpak7")))) (build-system meson-build-system) (native-inputs `(("check" ,check) @@ -93,6 +93,7 @@ ("libraw" ,libraw) ("librsvg" ,librsvg) ("libspectre" ,libspectre) + ("libtiff" ,libtiff) ("libxau" ,libxau) ("libxcomposite" ,libxcomposite) ("libxcursor" ,libxcursor) @@ -102,18 +103,19 @@ ("libxi" ,libxi) ("libxfixes" ,libxfixes) ("libxinerama" ,libxinerama) - ("libxp" ,libxp) ("libxrandr" ,libxrandr) ("libxrender" ,libxrender) ("libxss" ,libxscrnsaver) ("libxtst" ,libxtst) + ("libwebp" ,libwebp) + ("openjpeg" ,openjpeg) ("poppler" ,poppler) + ("util-linux" ,util-linux "lib") ("wayland-protocols" ,wayland-protocols))) (propagated-inputs ;; All these inputs are in package config files in section ;; Requires.private. `(("avahi" ,avahi) - ("bullet" ,bullet) ("dbus" ,dbus) ("elogind" ,elogind) ("eudev" ,eudev) @@ -122,30 +124,32 @@ ("fribidi" ,fribidi) ("glib" ,glib) ("harfbuzz" ,harfbuzz) - ("luajit" ,luajit) ("libinput" ,libinput-minimal) ("libjpeg" ,libjpeg-turbo) - ("libpng" ,libpng) ("libsndfile" ,libsndfile) - ("libtiff" ,libtiff) - ("libwebp" ,libwebp) + ("libpng" ,libpng) ("libx11" ,libx11) ("libxkbcommon" ,libxkbcommon) + ("luajit" ,luajit) ("lz4" ,lz4) ("openssl" ,openssl) ("pulseaudio" ,pulseaudio) - ("util-linux" ,util-linux "lib") ("wayland" ,wayland) ("zlib" ,zlib))) (arguments `(#:configure-flags '("-Dsystemd=false" + "-Delogind=true" "-Dembedded-lz4=false" "-Devas-loaders-disabler=json" "-Dbuild-examples=false" + "-Decore-imf-loaders-disabler=scim" + "-Davahi=true" + "-Dglib=true" + "-Dmount-path=/run/setuid-programs/mount" + "-Dunmount-path=/run/setuid-programs/umount" ;(string-append "-Ddictionaries-hyphen-dir=" ; (assoc-ref %build-inputs "hyphen") ; "/share/hyphen") - "-Delogind=true" "-Dnetwork-backend=connman" ,@(match (%current-system) ("armhf-linux" @@ -153,22 +157,27 @@ (_ '("-Dopengl=full"))) ;; for wayland - "-Dwl-deprecated=true" ; ecore_wayland - "-Ddrm-deprecated=true" ; ecore_drm "-Dwl=true" "-Ddrm=true") #:tests? #f ; Many tests fail due to timeouts and network requests. #:phases (modify-phases %standard-phases - ;; If we don't hardcode the location of libcurl.so then we - ;; have to wrap the outputs of efl's dependencies in curl. - (add-after 'unpack 'hardcode-libcurl-location + ;; If we don't hardcode the location of libcurl.so and others then we + ;; have to wrap the outputs of efl's dependencies in those libraries. + (add-after 'unpack 'hardcode-dynamic-libraries (lambda* (#:key inputs #:allow-other-keys) - (let* ((curl (assoc-ref inputs "curl")) - (lib (string-append curl "/lib/"))) + (let ((curl (assoc-ref inputs "curl")) + (pulse (assoc-ref inputs "pulseaudio")) + (sndfile (assoc-ref inputs "libsndfile")) + (lib "/lib/")) (substitute* "src/lib/ecore_con/ecore_con_url_curl.c" (("libcurl.so.?" libcurl) ; libcurl.so.[45] - (string-append lib libcurl))) + (string-append curl lib libcurl))) + (substitute* "src/lib/ecore_audio/ecore_audio.c" + (("libpulse.so.0" libpulse) + (string-append pulse lib libpulse)) + (("libsndfile.so.1" libsnd) + (string-append sndfile lib libsnd))) #t))) (add-after 'unpack 'fix-install-paths (lambda _ -- cgit v1.2.3 From 75c5b027ae35f2382ae95023a1f70eb3c5a746cc Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 3 May 2020 09:26:15 +0300 Subject: gnu: python-efl: Update to 1.24.0. * gnu/packages/enlightenment.scm (python-efl): Update to 1.24.0. --- gnu/packages/enlightenment.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index 42fd8fffd1..38e5dbf1cb 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -398,7 +398,7 @@ embedded systems.") (define-public python-efl (package (name "python-efl") - (version "1.23.0") + (version "1.24.0") (source (origin (method url-fetch) @@ -406,7 +406,7 @@ embedded systems.") "python/python-efl-" version ".tar.xz")) (sha256 (base32 - "16yn6a1b9167nfmryyi44ma40m20ansfpwgrvqzfvwix7qaz9pib")) + "1vk1cdd959gia4a9qzyq56a9zw3lqf9ck66k8c9g3c631mp5cfpy")) (modules '((guix build utils))) ;; Remove files generated by Cython (snippet -- cgit v1.2.3 From 2ae11cd0a43bfd8c0106afc620c2e5be1cecef78 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 11 May 2020 10:12:32 +0300 Subject: gnu: enlightenment: Update to 0.24.0. * gnu/packages/enlightenment.scm (enlightenment): Update to 0.24.0. [arguments]: Change configure-flags to hardcode efl binary locations. Remove custom 'fix-dot-desktop-creation phase. Update 'set-system-actions phase. * gnu/packages/patches/enlightenment-fix-setuid-path.patch: Update for new upstream version. * gnu/services/desktop.scm (enlightenment-setuid-programs): Same. --- gnu/packages/enlightenment.scm | 39 ++-- .../patches/enlightenment-fix-setuid-path.patch | 223 ++++----------------- gnu/services/desktop.scm | 29 +-- 3 files changed, 68 insertions(+), 223 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index 38e5dbf1cb..08a52f9d92 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -292,7 +292,7 @@ Libraries with some extra bells and whistles.") (define-public enlightenment (package (name "enlightenment") - (version "0.23.1") + (version "0.24.0") (source (origin (method url-fetch) (uri @@ -300,27 +300,27 @@ Libraries with some extra bells and whistles.") "enlightenment/enlightenment-" version ".tar.xz")) (sha256 (base32 - "0d1cyl07w9pvi2pf029kablazks2q9aislzl46b6fq5m1465jc75")) + "01053hxdmyjfb6gmz1pqmw0llrgc4356np515h5vsqcn59mhvfz7")) (patches (search-patches "enlightenment-fix-setuid-path.patch")))) (build-system meson-build-system) (arguments - `(#:configure-flags '("-Dsystemd=false") + `(#:configure-flags + (let ((efl (assoc-ref %build-inputs "efl"))) + (list "-Dsystemd=false" + "-Dpackagekit=false" + (string-append "-Dedje-cc=" efl "/bin/edje_cc") + (string-append "-Deldbus-codegen=" efl "/bin/eldbus-codegen") + (string-append "-Deet=" efl "/bin/eet"))) #:phases (modify-phases %standard-phases (delete 'bootstrap) ; We don't want to run the autogen script. - (add-after 'unpack 'fix-dot-desktop-creation - (lambda _ - (substitute* "data/session/meson.build" - (("HAVE_WAYLAND'.*") "HAVE_WAYLAND') == true\n")) - #t)) (add-before 'configure 'set-system-actions (lambda* (#:key inputs #:allow-other-keys) - (setenv "HOME" "/tmp") + (setenv "HOME" "/tmp") (let ((xkeyboard (assoc-ref inputs "xkeyboard-config")) (setxkbmap (assoc-ref inputs "setxkbmap")) (utils (assoc-ref inputs "util-linux")) (libc (assoc-ref inputs "libc")) - (bluez (assoc-ref inputs "bluez")) (bc (assoc-ref inputs "bc")) (efl (assoc-ref inputs "efl"))) ;; We need to patch the path to 'base.lst' to be able @@ -337,23 +337,22 @@ Libraries with some extra bells and whistles.") "src/modules/conf_intl/e_int_config_intl.c" "src/modules/wizard/page_010.c") (("locale -a") (string-append libc "/bin/locale -a"))) - (substitute* "src/bin/e_import_config_dialog.c" - (("%s/edje_cc -v %s %s %s\", e_prefix_bin_get\\(\\)") - (string-append efl "/bin/edje_cc -v %s %s %s\""))) (substitute* "src/modules/everything/evry_plug_apps.c" (("/usr/bin/") "")) + (substitute* '("src/bin/e_sys_main.c" + "src/bin/e_util_suid.h") + (("PATH=/bin:/usr/bin:/sbin:/usr/sbin") + (string-append "PATH=/run/setuid-programs:" + "/run/current-system/profile/bin:" + "/run/current-system/profile/sbin"))) (substitute* "src/modules/everything/evry_plug_calc.c" (("bc -l") (string-append bc "/bin/bc -l"))) (substitute* "data/etc/meson.build" (("/bin/mount") "/run/setuid-programs/mount") (("/bin/umount") "/run/setuid-programs/umount") - (("/usr/bin/eject") (string-append utils "/bin/eject")) - (("/usr/bin/l2ping") (string-append bluez "/bin/l2ling")) - (("/bin/rfkill") (string-append utils "/sbin/rfkill")) - (("SUSPEND = ''") "SUSPEND = '/run/current-system/profile/bin/loginctl suspend'") - (("HIBERNATE = ''") "HIBERNATE = '/run/current-system/profile/bin/loginctl hibernate'") - (("/sbin/shutdown -h now") "/run/current-system/profile/bin/loginctl poweroff now") - (("/sbin/shutdown -r now") "/run/current-system/profile/bin/loginctl reboot now")) + (("/usr/bin/eject") (string-append utils "/bin/eject"))) + (substitute* "src/bin/system/e_system_power.c" + (("systemctl") "loginctl")) #t)))))) (native-inputs `(("gettext" ,gettext-minimal) diff --git a/gnu/packages/patches/enlightenment-fix-setuid-path.patch b/gnu/packages/patches/enlightenment-fix-setuid-path.patch index c48f18c8ec..f2930845ba 100644 --- a/gnu/packages/patches/enlightenment-fix-setuid-path.patch +++ b/gnu/packages/patches/enlightenment-fix-setuid-path.patch @@ -1,34 +1,31 @@ diff --git a/src/bin/e_auth.c b/src/bin/e_auth.c -index 00b0e5d84..98ab4518f 100644 +index 8b0aa6641..f15d2c2a2 100644 --- a/src/bin/e_auth.c +++ b/src/bin/e_auth.c -@@ -9,8 +9,7 @@ e_auth_begin(char *passwd) +@@ -11,9 +11,7 @@ e_auth_begin(char *passwd) + pwlen = strlen(passwd); + if (pwlen == 0) goto out; - if (strlen(passwd) == 0) goto out; - -- snprintf(buf, sizeof(buf), "%s/enlightenment/utils/enlightenment_ckpasswd", +- snprintf(buf, sizeof(buf), +- "%s/enlightenment/utils/enlightenment_ckpasswd pw", - e_prefix_lib_get()); + snprintf(buf, sizeof(buf), "/run/setuid-programs/enlightenment_ckpasswd"); + exe = ecore_exe_pipe_run(buf, ECORE_EXE_PIPE_WRITE, NULL); + if (!exe) goto out; + if (ecore_exe_send(exe, passwd, pwlen) != EINA_TRUE) goto out; +@@ -46,9 +44,7 @@ e_auth_polkit_begin(char *passwd, const char *cookie, unsigned int uid) + pwlen = strlen(passwd); + if (pwlen == 0) goto out; +- snprintf(buf, sizeof(buf), +- "%s/enlightenment/utils/enlightenment_ckpasswd pk", +- e_prefix_lib_get()); ++ snprintf(buf, sizeof(buf), "/run/setuid-programs/enlightenment_ckpasswd"); exe = ecore_exe_pipe_run(buf, ECORE_EXE_PIPE_WRITE, NULL); - if (ecore_exe_send(exe, passwd, strlen(passwd)) != EINA_TRUE) goto out; -diff --git a/src/bin/e_backlight.c b/src/bin/e_backlight.c -index 2bced6766..208e583ba 100644 ---- a/src/bin/e_backlight.c -+++ b/src/bin/e_backlight.c -@@ -521,8 +521,8 @@ _bl_sys_level_set(double val) - } - // fprintf(stderr, "SET: %1.3f\n", val); - snprintf(buf, sizeof(buf), -- "%s/enlightenment/utils/enlightenment_backlight %i %s", -- e_prefix_lib_get(), (int)(val * 1000.0), bl_sysval); -+ "/run/setuid-programs/enlightenment_backlight %i %s", -+ (int)(val * 1000.0), bl_sysval); - bl_sys_set_exe = ecore_exe_run(buf, NULL); - } - #endif // HAVE_EEZE || __FreeBSD_kernel__ + if (!exe) goto out; + snprintf(buf, sizeof(buf), "%s %u %s", cookie, uid, passwd); diff --git a/src/bin/e_fm/e_fm_main_eeze.c b/src/bin/e_fm/e_fm_main_eeze.c -index 0fcffa249..c1921121d 100644 +index 9b10b3117..74e6b72ad 100644 --- a/src/bin/e_fm/e_fm_main_eeze.c +++ b/src/bin/e_fm/e_fm_main_eeze.c @@ -318,7 +318,7 @@ _e_fm_main_eeze_volume_eject(E_Volume *v) @@ -58,163 +55,29 @@ index 0fcffa249..c1921121d 100644 eeze_disk_mount_wrapper_set(v->disk, buf2); } v->guard = ecore_timer_loop_add(E_FM_MOUNT_TIMEOUT, (Ecore_Task_Cb)_e_fm_main_eeze_vol_mount_timeout, v); -diff --git a/src/bin/e_sys.c b/src/bin/e_sys.c -index 671fbcd9a..90ee04cf1 100644 ---- a/src/bin/e_sys.c -+++ b/src/bin/e_sys.c -@@ -702,20 +702,16 @@ _e_sys_cb_timer(void *data EINA_UNUSED) - - e_init_status_set(_("Checking System Permissions")); - snprintf(buf, sizeof(buf), -- "%s/enlightenment/utils/enlightenment_sys -t halt", -- e_prefix_lib_get()); -+ "/run/setuid-programs/enlightenment_sys -t halt"); - _e_sys_halt_check_exe = ecore_exe_run(buf, NULL); - snprintf(buf, sizeof(buf), -- "%s/enlightenment/utils/enlightenment_sys -t reboot", -- e_prefix_lib_get()); -+ "/run/setuid-programs/enlightenment_sys -t reboot"); - _e_sys_reboot_check_exe = ecore_exe_run(buf, NULL); - snprintf(buf, sizeof(buf), -- "%s/enlightenment/utils/enlightenment_sys -t suspend", -- e_prefix_lib_get()); -+ "/run/setuid-programs/enlightenment_sys -t suspend"); - _e_sys_suspend_check_exe = ecore_exe_run(buf, NULL); - snprintf(buf, sizeof(buf), -- "%s/enlightenment/utils/enlightenment_sys -t hibernate", -- e_prefix_lib_get()); -+ "/run/setuid-programs/enlightenment_sys -t hibernate"); - _e_sys_hibernate_check_exe = ecore_exe_run(buf, NULL); - return ECORE_CALLBACK_CANCEL; - } -@@ -1134,8 +1130,7 @@ _e_sys_action_do(E_Sys_Action a, char *param EINA_UNUSED, Eina_Bool raw) - if (e_util_immortal_check()) return 0; - e_fm2_die(); - snprintf(buf, sizeof(buf), -- "%s/enlightenment/utils/enlightenment_sys halt", -- e_prefix_lib_get()); -+ "/run/setuid-programs/enlightenment_sys halt"); - if (_e_sys_exe) - { - if ((ecore_time_get() - _e_sys_begin_time) > 2.0) -@@ -1170,8 +1165,7 @@ _e_sys_action_do(E_Sys_Action a, char *param EINA_UNUSED, Eina_Bool raw) - if (e_util_immortal_check()) return 0; - e_fm2_die(); - snprintf(buf, sizeof(buf), -- "%s/enlightenment/utils/enlightenment_sys reboot", -- e_prefix_lib_get()); -+ "/run/setuid-programs/enlightenment_sys reboot"); - if (_e_sys_exe) - { - if ((ecore_time_get() - _e_sys_begin_time) > 2.0) -@@ -1204,8 +1198,7 @@ _e_sys_action_do(E_Sys_Action a, char *param EINA_UNUSED, Eina_Bool raw) - case E_SYS_SUSPEND: - /* /etc/acpi/sleep.sh force */ - snprintf(buf, sizeof(buf), -- "%s/enlightenment/utils/enlightenment_sys suspend", -- e_prefix_lib_get()); -+ "/run/setuid-programs/enlightenment_sys suspend"); - if (_e_sys_exe) - { - if ((ecore_time_get() - _e_sys_begin_time) > 2.0) -@@ -1265,8 +1258,7 @@ _e_sys_action_do(E_Sys_Action a, char *param EINA_UNUSED, Eina_Bool raw) - case E_SYS_HIBERNATE: - /* /etc/acpi/hibernate.sh force */ - snprintf(buf, sizeof(buf), -- "%s/enlightenment/utils/enlightenment_sys hibernate", -- e_prefix_lib_get()); -+ "/run/setuid-programs/enlightenment_sys hibernate"); - if (_e_sys_exe) - { - if ((ecore_time_get() - _e_sys_begin_time) > 2.0) -diff --git a/src/modules/bluez4/e_mod_main.c b/src/modules/bluez4/e_mod_main.c -index 4b5148634..47d34b07f 100644 ---- a/src/modules/bluez4/e_mod_main.c -+++ b/src/modules/bluez4/e_mod_main.c -@@ -49,8 +49,8 @@ _ebluez_l2ping_poller(void *data EINA_UNUSED) - - if (tmp) - { -- eina_strbuf_append_printf(buf, "%s/enlightenment/utils/enlightenment_sys l2ping %s", -- e_prefix_lib_get(), tmp); -+ eina_strbuf_append_printf(buf, "/run/setuid-programs/enlightenment_sys l2ping %s", -+ tmp); - autolock_exe = ecore_exe_run(eina_strbuf_string_get(buf), NULL); - } - -@@ -692,8 +692,7 @@ e_modapi_init(E_Module *m) - autolock_desklock = ecore_event_handler_add(E_EVENT_DESKLOCK, _ebluez_desklock, NULL); - - buf = eina_strbuf_new(); -- eina_strbuf_append_printf(buf, "%s/enlightenment/utils/enlightenment_sys -t l2ping", -- e_prefix_lib_get()); -+ eina_strbuf_append_printf(buf, "/run/setuid-programs/enlightenment_sys -t l2ping"); - autolock_exe = ecore_exe_run(eina_strbuf_string_get(buf), NULL); - eina_strbuf_free(buf); - -diff --git a/src/modules/bluez5/e_mod_main.c b/src/modules/bluez5/e_mod_main.c -index a581c466c..095d8f360 100644 ---- a/src/modules/bluez5/e_mod_main.c -+++ b/src/modules/bluez5/e_mod_main.c -@@ -321,8 +321,8 @@ ebluez5_rfkill_unblock(const char *name) - if (buf) - { - eina_strbuf_append_printf -- (buf, "%s/enlightenment/utils/enlightenment_sys rfkill-unblock %s", -- e_prefix_lib_get(), name); -+ (buf, "/run/setuid-programs/enlightenment_sys rfkill-unblock %s", -+ name); - _rfkill_exe = ecore_exe_run(eina_strbuf_string_get(buf), NULL); - eina_strbuf_free(buf); - } -diff --git a/src/modules/cpufreq/e_mod_main.c b/src/modules/cpufreq/e_mod_main.c -index b66b365d8..bab0802cc 100644 ---- a/src/modules/cpufreq/e_mod_main.c -+++ b/src/modules/cpufreq/e_mod_main.c -@@ -1452,8 +1452,7 @@ e_modapi_init(E_Module *m) - } - E_CONFIG_LIMIT(cpufreq_config->poll_interval, 1, 1024); - -- snprintf(buf, sizeof(buf), "%s/%s/freqset", -- e_module_dir_get(m), MODULE_ARCH); -+ snprintf(buf, sizeof(buf), "/run/setuid-programs/freqset"); - cpufreq_config->set_exe_path = strdup(buf); - - if (stat(buf, &st) < 0) -diff --git a/src/modules/sysinfo/cpuclock/cpuclock.c b/src/modules/sysinfo/cpuclock/cpuclock.c -index 938916e53..00d5067d0 100644 ---- a/src/modules/sysinfo/cpuclock/cpuclock.c -+++ b/src/modules/sysinfo/cpuclock/cpuclock.c -@@ -80,8 +80,7 @@ _cpuclock_set_governor(const char *governor) - char buf[4096 + 100], exe[4096]; - struct stat st; - -- snprintf(exe, 4096, "%s/%s/cpuclock_sysfs", -- e_module_dir_get(sysinfo_config->module), MODULE_ARCH); -+ snprintf(exe, 4096, "/run/setuid-programs/cpuclock_sysfs"); - if (stat(exe, &st) < 0) return; - - snprintf(buf, sizeof(buf), -@@ -108,8 +107,7 @@ _cpuclock_set_frequency(int frequency) - if (system(buf) != 0) - ERR("Error code from trying to run \"%s\"", buf); - #else -- snprintf(exe, 4096, "%s/%s/cpuclock_sysfs", -- e_module_dir_get(sysinfo_config->module), MODULE_ARCH); -+ snprintf(exe, 4096, "/run/setuid-programs/cpuclock_sysfs"); - if (stat(exe, &st) < 0) return; - snprintf(buf, sizeof(buf), - "%s %s %i", exe, "frequency", frequency); -@@ -127,8 +125,7 @@ _cpuclock_set_pstate(int min, int max, int turbo) - char buf[4096 + 100], exe[4096]; - struct stat st; +diff --git a/src/bin/e_start_main.c b/src/bin/e_start_main.c +index b2c439455..cb16c7bd4 100644 +--- a/src/bin/e_start_main.c ++++ b/src/bin/e_start_main.c +@@ -710,7 +710,7 @@ main(int argc, char **argv) + "E_ALERT_FONT_DIR=%s/data/fonts", eina_prefix_data_get(pfx)); + putenv(buf2); + snprintf(buf3, sizeof(buf3), +- "E_ALERT_SYSTEM_BIN=%s/enlightenment/utils/enlightenment_system", eina_prefix_lib_get(pfx)); ++ "E_ALERT_SYSTEM_BIN=/run/setuid-programs/enlightenment_system"); + putenv(buf3); -- snprintf(exe, 4096, "%s/%s/cpuclock_sysfs", -- e_module_dir_get(sysinfo_config->module), MODULE_ARCH); -+ snprintf(exe, 4096, "/run/setuid-programs/cpuclock_sysfs"); - if (stat(exe, &st) < 0) return; + if ((valgrind_mode || valgrind_tool) && +diff --git a/src/bin/e_system.c b/src/bin/e_system.c +index 1e7aabb64..dc0173219 100644 +--- a/src/bin/e_system.c ++++ b/src/bin/e_system.c +@@ -132,7 +132,7 @@ _system_spawn(void) + else _respawn_count = 0; + if (_respawn_count > 5) return; snprintf(buf, sizeof(buf), - "%s %s %i %i %i", exe, "pstate", min, max, turbo); --- -2.23.0 - +- "%s/enlightenment/utils/enlightenment_system", e_prefix_lib_get()); ++ "/run/setuid-programs/enlightenment_system"); + _system_exe = ecore_exe_pipe_run + (buf, ECORE_EXE_NOT_LEADER | ECORE_EXE_TERM_WITH_PARENT | + ECORE_EXE_PIPE_READ | ECORE_EXE_PIPE_WRITE, NULL); diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm index 93f2ae576c..9e45743586 100644 --- a/gnu/services/desktop.scm +++ b/gnu/services/desktop.scm @@ -1036,29 +1036,12 @@ with the administrator's password." (match-record enlightenment-desktop-configuration (enlightenment) - (let ((module-arch (match (string-tokenize (%current-system) - (char-set-complement (char-set #\-))) - ((arch "linux") (string-append "linux-gnu-" arch)) - ((arch "gnu") (string-append "gnu-" arch))))) - (list (file-append enlightenment - "/lib/enlightenment/utils/enlightenment_sys") - (file-append enlightenment - "/lib/enlightenment/utils/enlightenment_backlight") - ;; TODO: Move this binary to a screen-locker service. - (file-append enlightenment - "/lib/enlightenment/utils/enlightenment_ckpasswd") - (file-append enlightenment - (string-append - "/lib/enlightenment/modules/cpufreq/" - module-arch "-" - (package-version enlightenment) - "/freqset")) - (file-append enlightenment - (string-append - "/lib/enlightenment/modules/sysinfo/" - module-arch "-" - (package-version enlightenment) - "/cpuclock_sysfs")))))) + (list (file-append enlightenment + "/lib/enlightenment/utils/enlightenment_sys") + (file-append enlightenment + "/lib/enlightenment/utils/enlightenment_system") + (file-append enlightenment + "/lib/enlightenment/utils/enlightenment_ckpasswd")))) (define enlightenment-desktop-service-type (service-type -- cgit v1.2.3 From cf0abc23e8c8bb444f2f466434827ef068465ad8 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sun, 24 May 2020 22:37:03 +0200 Subject: gnu: emacs-auctex: Update to 12.2.2. * gnu/packages/emacs-xyz.scm (emacs-auctex): Update to 12.2.2. --- gnu/packages/emacs-xyz.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index fe68a56fd6..18c19740e9 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -1758,14 +1758,14 @@ as a library for other Emacs packages.") (define-public emacs-auctex (package (name "emacs-auctex") - (version "12.2.0") + (version "12.2.2") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/auctex-" version ".tar")) (sha256 - (base32 "0j919l3q5sq6h1k1kmk4kyv0vkzl4f98fxcd64v34x5q1ahjhg48")))) + (base32 "1map25xn7r28aldhcz9n8pbfk2l3gvnxx8hgih3ax8hyvnfi6brh")))) (build-system emacs-build-system) ;; We use 'emacs' because AUCTeX requires dbus at compile time ;; ('emacs-minimal' does not provide dbus). -- cgit v1.2.3 From 9b572aba85696520956ea838c3fe08426b6ce88c Mon Sep 17 00:00:00 2001 From: Tim Gesthuizen via Guix-patches via Date: Sun, 24 May 2020 20:58:23 +0200 Subject: gnu: pwsafe: Update to 3.52.0. * gnu/packages/password-utils.scm (pwsafe): Update to 3.52.0. [arguments]: Remove obsolete work-arounds. Co-authored-by: Tobias Geerinckx-Rice --- gnu/packages/password-utils.scm | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm index 4f5ac1029f..a59fb9dc75 100644 --- a/gnu/packages/password-utils.scm +++ b/gnu/packages/password-utils.scm @@ -21,7 +21,7 @@ ;;; Copyright © 2018 Arun Isaac ;;; Copyright © 2018 Pierre Neidhardt ;;; Copyright © 2018 Amirouche Boubekki -;;; Copyright © 2018, 2019 Tim Gesthuizen +;;; Copyright © 2018, 2019, 2020 Tim Gesthuizen ;;; Copyright © 2019 Jens Mølgaard ;;; Copyright © 2019 Tanguy Le Carrour ;;; Copyright © 2020 Guillaume Le Vaillant @@ -196,7 +196,7 @@ algorithms AES or Twofish.") (define-public pwsafe (package (name "pwsafe") - (version "3.50.0") + (version "3.52.0") (home-page "https://www.pwsafe.org/") (source (origin @@ -205,7 +205,7 @@ algorithms AES or Twofish.") (url "https://github.com/pwsafe/pwsafe.git") (commit version))) (sha256 - (base32 "01kfssd2vr64yh4dqhch58x36n3aj3hpj5n560f41rsxym69c6qs")) + (base32 "1ka7xsl63v0559fzf3pwc1iqr37gwr4vq5iaxa2hzar2g28hsxvh")) (file-name (git-file-name name version)))) (build-system cmake-build-system) (native-inputs @@ -232,15 +232,7 @@ algorithms AES or Twofish.") (display "find_package(GTest) add_subdirectory(src/test)\n" cmake-port) (close cmake-port) - #t))) - (add-after 'add-gtest 'patch-executables - (lambda* (#:key inputs #:allow-other-keys) - (chmod "src/test/OSTest.cpp" #o644) - (substitute* "src/os/unix/media.cpp" - (("/usr/bin/file") - (string-append (assoc-ref inputs "file") - "/bin/file"))) - #t))))) + #t)))))) (synopsis "Password safe with automatic input and key generation") (description "pwsafe is a password manager originally designed by Bruce Schneier. It offers a simple UI to manage passwords for different services. -- cgit v1.2.3 From b7e1e556b2d0dd6685f41abcf92bb7f0b28f72e9 Mon Sep 17 00:00:00 2001 From: Jack Hill Date: Sat, 23 May 2020 18:50:38 -0400 Subject: gnu: guile-dsv: Wrap script. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/guile-xyz.scm (guile-dsv)[arguments]: Add "wrap program" phase. Import target-guile-effective-version from guile-build-system for use in new phase. Signed-off-by: Ludovic Courtès --- gnu/packages/guile-xyz.scm | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm index a1deee32d1..b1c1fd0f62 100644 --- a/gnu/packages/guile-xyz.scm +++ b/gnu/packages/guile-xyz.scm @@ -25,6 +25,7 @@ ;;; Copyright © 2019 Timothy Sample ;;; Copyright © 2019, 2020 Martin Becze ;;; Copyright © 2020 Evan Straw +;;; Copyright © 2020 Jack Hill ;;; ;;; This file is part of GNU Guix. ;;; @@ -467,7 +468,12 @@ you send to a FIFO file.") (inputs `(("guile" ,guile-2.2))) (propagated-inputs `(("guile2.2-lib" ,guile2.2-lib))) (arguments - '(#:phases (modify-phases %standard-phases + `(#:modules (((guix build guile-build-system) + #:select (target-guile-effective-version)) + ,@%gnu-build-system-modules) + #:imported-modules ((guix build guile-build-system) + ,@%gnu-build-system-modules) + #:phases (modify-phases %standard-phases (add-before 'configure 'set-guilesitedir (lambda _ (substitute* "Makefile.in" @@ -482,6 +488,24 @@ $(datadir)/guile/site/$(GUILE_EFFECTIVE_VERSION)\n")) (("^guilesitedir =.*$") "guilesitedir = \ $(datadir)/guile/site/$(GUILE_EFFECTIVE_VERSION)\n")) + #t)) + (add-after 'install 'wrap-program + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (guile-lib (assoc-ref inputs "guile2.2-lib")) + (version (target-guile-effective-version)) + (scm (string-append "/share/guile/site/" + version)) + (go (string-append "/lib/guile/" + version "/site-ccache"))) + (wrap-program (string-append bin "/dsv") + `("GUILE_LOAD_PATH" prefix + (,(string-append out scm) + ,(string-append guile-lib scm))) + `("GUILE_LOAD_COMPILED_PATH" prefix + (,(string-append out go) + ,(string-append guile-lib go))))) #t))))) (home-page "https://github.com/artyom-poptsov/guile-dsv") (synopsis "DSV module for Guile") -- cgit v1.2.3 From f81ce752b3395208f911387d95177ecf52d6edbc Mon Sep 17 00:00:00 2001 From: Jack Hill Date: Sat, 23 May 2020 18:50:39 -0400 Subject: gnu: guile-dsv: Build with Guile 3.0. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/guile-xyz.scm (guile-dsv)[inputs]: Replace guile-2.2 with guile-3.0. [propagated-inputs]: Replace guile2.2-lib with guile-lib. [arguments]: Add "configure support guile3.0" phase. (guile2.2-dsv): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/guile-xyz.scm | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm index b1c1fd0f62..8dfce091ef 100644 --- a/gnu/packages/guile-xyz.scm +++ b/gnu/packages/guile-xyz.scm @@ -465,8 +465,8 @@ you send to a FIFO file.") ("automake" ,automake) ("pkg-config" ,pkg-config) ("texinfo" ,texinfo))) - (inputs `(("guile" ,guile-2.2))) - (propagated-inputs `(("guile2.2-lib" ,guile2.2-lib))) + (inputs `(("guile" ,guile-3.0))) + (propagated-inputs `(("guile-lib" ,guile-lib))) (arguments `(#:modules (((guix build guile-build-system) #:select (target-guile-effective-version)) @@ -474,6 +474,14 @@ you send to a FIFO file.") #:imported-modules ((guix build guile-build-system) ,@%gnu-build-system-modules) #:phases (modify-phases %standard-phases + ;; Support Guile 3.0 in configure from upstream commit + ;; 4c724577ccf19bb88580f72f2f6b166a0447ce3f + (add-before 'bootstrap 'configure-support-guile3.0 + (lambda _ + (substitute* "configure.ac" + (("GUILE_PKG.*") + "GUILE_PKG([3.0 2.0 2.2])")) + #t)) (add-before 'configure 'set-guilesitedir (lambda _ (substitute* "Makefile.in" @@ -493,7 +501,7 @@ $(datadir)/guile/site/$(GUILE_EFFECTIVE_VERSION)\n")) (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (bin (string-append out "/bin")) - (guile-lib (assoc-ref inputs "guile2.2-lib")) + (guile-lib (assoc-ref inputs "guile-lib")) (version (target-guile-effective-version)) (scm (string-append "/share/guile/site/" version)) @@ -515,6 +523,13 @@ delimiter-separated values (DSV) data format. Guile-DSV supports the Unix-style DSV format and RFC 4180 format.") (license license:gpl3+))) +(define-public guile2.2-dsv + (package + (inherit guile-dsv) + (name "guile2.2-dsv") + (inputs `(("guile" ,guile-2.2))) + (propagated-inputs `(("guile-lib" ,guile2.2-lib))))) + (define-public guile-fibers (package (name "guile-fibers") -- cgit v1.2.3 From c873980d187ea6f79a0e91c7d1baf5b301dc5035 Mon Sep 17 00:00:00 2001 From: Ryan Prior Date: Wed, 20 May 2020 22:28:11 -0500 Subject: gnu: Add protonvpn-cli. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/vpn.scm (protonvpn-cli): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/vpn.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm index da881493bf..8f7fb3b577 100644 --- a/gnu/packages/vpn.scm +++ b/gnu/packages/vpn.scm @@ -12,6 +12,7 @@ ;;; Copyright © 2019 Rutger Helling ;;; Copyright © 2019 Ricardo Wurmus ;;; Copyright © 2020 Brice Waegeneire +;;; Copyright © 2020 Ryan Prior ;;; ;;; This file is part of GNU Guix. ;;; @@ -55,6 +56,7 @@ #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages python-xyz) + #:use-module (gnu packages python-web) #:use-module (gnu packages tls) #:use-module (gnu packages xml)) @@ -311,6 +313,40 @@ security protocol that utilizes SSL/TLS for key exchange. It is capable of traversing network address translators (@dfn{NAT}s) and firewalls.") (license license:gpl2))) +(define-public protonvpn-cli + (package + (name "protonvpn-cli") + (version "2.2.2") + (source + (origin + ;; PyPI has a ".whl" file but not a proper source release. + ;; Thus, fetch code from Git. + (method git-fetch) + (uri (git-reference + (url "https://github.com/ProtonVPN/linux-cli.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0ixjb02kj4z79whm1izd8mrn2h0rp9cmw4im1qvp93rahqxdd4n8")))) + (build-system python-build-system) + (arguments '(#:tests? #f)) ; no tests in repo + (native-inputs + `(("docopt" ,python-docopt))) + (inputs + `(("pythondialog" ,python-pythondialog) + ("requests" ,python-requests))) + (propagated-inputs + `(("openvpn" ,openvpn))) + (synopsis "Command-line client for ProtonVPN") + (description + "Official CLI for ProtonVPN, a secure point-to-point virtual private +networking service with a gratis tier. It can automatically find and connect +to the fastest servers or use TOR over VPN. The gratis tier offers unlimited +bandwidth for up to 10 devices.") + (home-page "https://github.com/ProtonVPN/linux-cli") + (license license:gpl3+))) + (define-public tinc (package (name "tinc") -- cgit v1.2.3 From 86ac14b2f37efbb6f4a3ed1c3e183fbc9496b7a5 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sun, 24 May 2020 22:05:11 +0200 Subject: gnu: protonvpn-cli: Tweak description. * gnu/packages/vpn.scm (protonvpn-cli)[description]: Tweak. --- gnu/packages/vpn.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm index 8f7fb3b577..dbfd11626a 100644 --- a/gnu/packages/vpn.scm +++ b/gnu/packages/vpn.scm @@ -340,10 +340,10 @@ traversing network address translators (@dfn{NAT}s) and firewalls.") `(("openvpn" ,openvpn))) (synopsis "Command-line client for ProtonVPN") (description - "Official CLI for ProtonVPN, a secure point-to-point virtual private -networking service with a gratis tier. It can automatically find and connect -to the fastest servers or use TOR over VPN. The gratis tier offers unlimited -bandwidth for up to 10 devices.") + "This is the official command-line interface for ProtonVPN, a secure +point-to-point virtual private networking (VPN) service with a gratis tier. +It can automatically find and connect to the fastest servers or use Tor over +VPN. The gratis tier offers unlimited bandwidth for up to 10 devices.") (home-page "https://github.com/ProtonVPN/linux-cli") (license license:gpl3+))) -- cgit v1.2.3 From e451612602c5ae8bca1e56492bbfa7b2fe434cbd Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 24 May 2020 23:56:02 +0200 Subject: gnu: libgphoto2: Update to 2.5.25. * gnu/packages/photo.scm (libgphoto2): Update to 2.5.25. --- gnu/packages/photo.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm index 59947964a3..dfd45fd06b 100644 --- a/gnu/packages/photo.scm +++ b/gnu/packages/photo.scm @@ -228,14 +228,14 @@ data as produced by digital cameras.") (define-public libgphoto2 (package (name "libgphoto2") - (version "2.5.24") + (version "2.5.25") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/gphoto/libgphoto/" version "/libgphoto2-" version ".tar.bz2")) (sha256 (base32 - "0cgvsk06c4kcfj16plc27nm7g16r9ci0y4k83sf3iyphd63mfg7x")))) + "0fkz2rx7xlmr6zl6f56hhxps6bx16dwcw5pyd8c2icf273s9h3kw")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) (inputs -- cgit v1.2.3 From 8bd0b533b30d7ee5e03aee99a2eb96d5b0b1c836 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 25 May 2020 00:12:06 +0200 Subject: gnu: libexif: Update to 0.6.22 [security fixes]. This fixes CVE-2020-13114, CVE-2020-13113, CVE-2020-13112, CVE-2020-0093, CVE-2019-9278, and CVE-2020-12767. * gnu/packages/patches/libexif-CVE-2016-6328.patch, gnu/packages/patches/libexif-CVE-2017-7544.patch, gnu/packages/patches/libexif-CVE-2018-20030.patch: Delete files. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. * gnu/packages/photo.scm (libexif): Update to 0.6.22. [source](uri): Adjust for upstream GitHub migration. --- gnu/local.mk | 3 - gnu/packages/patches/libexif-CVE-2016-6328.patch | 72 ------------- gnu/packages/patches/libexif-CVE-2017-7544.patch | 29 ------ gnu/packages/patches/libexif-CVE-2018-20030.patch | 120 ---------------------- gnu/packages/photo.scm | 14 +-- 5 files changed, 7 insertions(+), 231 deletions(-) delete mode 100644 gnu/packages/patches/libexif-CVE-2016-6328.patch delete mode 100644 gnu/packages/patches/libexif-CVE-2017-7544.patch delete mode 100644 gnu/packages/patches/libexif-CVE-2018-20030.patch (limited to 'gnu') diff --git a/gnu/local.mk b/gnu/local.mk index f4326d4db8..ef4c5d2dcb 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1167,9 +1167,6 @@ dist_patch_DATA = \ %D%/packages/patches/libbonobo-activation-test-race.patch \ %D%/packages/patches/libcanberra-sound-theme-freedesktop.patch \ %D%/packages/patches/libdrm-symbol-check.patch \ - %D%/packages/patches/libexif-CVE-2016-6328.patch \ - %D%/packages/patches/libexif-CVE-2017-7544.patch \ - %D%/packages/patches/libexif-CVE-2018-20030.patch \ %D%/packages/patches/libextractor-exiv2.patch \ %D%/packages/patches/libgeotiff-adapt-test-script-for-proj-6.2.patch \ %D%/packages/patches/libgit2-mtime-0.patch \ diff --git a/gnu/packages/patches/libexif-CVE-2016-6328.patch b/gnu/packages/patches/libexif-CVE-2016-6328.patch deleted file mode 100644 index 67fee0f528..0000000000 --- a/gnu/packages/patches/libexif-CVE-2016-6328.patch +++ /dev/null @@ -1,72 +0,0 @@ -Fix CVE-2016-6328: - -https://bugzilla.redhat.com/show_bug.cgi?id=1366239 -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-6328 - -Patch copied from upstream source repository: - -https://github.com/libexif/libexif/commit/41bd04234b104312f54d25822f68738ba8d7133d - -From 41bd04234b104312f54d25822f68738ba8d7133d Mon Sep 17 00:00:00 2001 -From: Marcus Meissner -Date: Tue, 25 Jul 2017 23:44:44 +0200 -Subject: [PATCH] fixes some (not all) buffer overreads during decoding pentax - makernote entries. - -This should fix: -https://sourceforge.net/p/libexif/bugs/125/ CVE-2016-6328 ---- - libexif/pentax/mnote-pentax-entry.c | 16 +++++++++++++--- - 1 file changed, 13 insertions(+), 3 deletions(-) - -diff --git a/libexif/pentax/mnote-pentax-entry.c b/libexif/pentax/mnote-pentax-entry.c -index d03d159..ea0429a 100644 ---- a/libexif/pentax/mnote-pentax-entry.c -+++ b/libexif/pentax/mnote-pentax-entry.c -@@ -425,24 +425,34 @@ mnote_pentax_entry_get_value (MnotePentaxEntry *entry, - case EXIF_FORMAT_SHORT: - { - const unsigned char *data = entry->data; -- size_t k, len = strlen(val); -+ size_t k, len = strlen(val), sizeleft; -+ -+ sizeleft = entry->size; - for(k=0; kcomponents; k++) { -+ if (sizeleft < 2) -+ break; - vs = exif_get_short (data, entry->order); - snprintf (val+len, maxlen-len, "%i ", vs); - len = strlen(val); - data += 2; -+ sizeleft -= 2; - } - } - break; - case EXIF_FORMAT_LONG: - { - const unsigned char *data = entry->data; -- size_t k, len = strlen(val); -+ size_t k, len = strlen(val), sizeleft; -+ -+ sizeleft = entry->size; - for(k=0; kcomponents; k++) { -+ if (sizeleft < 4) -+ break; - vl = exif_get_long (data, entry->order); - snprintf (val+len, maxlen-len, "%li", (long int) vl); - len = strlen(val); - data += 4; -+ sizeleft -= 4; - } - } - break; -@@ -455,5 +465,5 @@ mnote_pentax_entry_get_value (MnotePentaxEntry *entry, - break; - } - -- return (val); -+ return val; - } --- -2.16.0 - diff --git a/gnu/packages/patches/libexif-CVE-2017-7544.patch b/gnu/packages/patches/libexif-CVE-2017-7544.patch deleted file mode 100644 index c4ea373dc5..0000000000 --- a/gnu/packages/patches/libexif-CVE-2017-7544.patch +++ /dev/null @@ -1,29 +0,0 @@ -Fix CVE-2017-7544: - -https://sourceforge.net/p/libexif/bugs/130/ -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-7544 - -Patch copied from upstream bug tracker: - -https://sourceforge.net/p/libexif/bugs/130/#489a - -Index: libexif/exif-data.c -=================================================================== -RCS file: /cvsroot/libexif/libexif/libexif/exif-data.c,v -retrieving revision 1.131 -diff -u -r1.131 exif-data.c ---- a/libexif/exif-data.c 12 Jul 2012 17:28:26 -0000 1.131 -+++ b/libexif/exif-data.c 25 Jul 2017 21:34:06 -0000 -@@ -255,6 +255,12 @@ - exif_mnote_data_set_offset (data->priv->md, *ds - 6); - exif_mnote_data_save (data->priv->md, &e->data, &e->size); - e->components = e->size; -+ if (exif_format_get_size (e->format) != 1) { -+ /* e->format is taken from input code, -+ * but we need to make sure it is a 1 byte -+ * entity due to the multiplication below. */ -+ e->format = EXIF_FORMAT_UNDEFINED; -+ } - } - } - diff --git a/gnu/packages/patches/libexif-CVE-2018-20030.patch b/gnu/packages/patches/libexif-CVE-2018-20030.patch deleted file mode 100644 index 57e4746b58..0000000000 --- a/gnu/packages/patches/libexif-CVE-2018-20030.patch +++ /dev/null @@ -1,120 +0,0 @@ -https://github.com/libexif/libexif/commit/6aa11df549114ebda520dde4cdaea2f9357b2c89.patch - -NEWS section was removed -'12' -> '30' on line 79 - -From 6aa11df549114ebda520dde4cdaea2f9357b2c89 Mon Sep 17 00:00:00 2001 -From: Dan Fandrich -Date: Fri, 12 Oct 2018 16:01:45 +0200 -Subject: [PATCH] Improve deep recursion detection in - exif_data_load_data_content. - -The existing detection was still vulnerable to pathological cases -causing DoS by wasting CPU. The new algorithm takes the number of tags -into account to make it harder to abuse by cases using shallow recursion -but with a very large number of tags. This improves on commit 5d28011c -which wasn't sufficient to counter this kind of case. - -The limitation in the previous fix was discovered by Laurent Delosieres, -Secunia Research at Flexera (Secunia Advisory SA84652) and is assigned -the identifier CVE-2018-20030. ---- - NEWS | 1 + - libexif/exif-data.c | 45 +++++++++++++++++++++++++++++++++++++-------- - 2 files changed, 38 insertions(+), 8 deletions(-) - -diff --git a/libexif/exif-data.c b/libexif/exif-data.c -index e35403d..a6f9c94 100644 ---- a/libexif/exif-data.c -+++ b/libexif/exif-data.c -@@ -35,6 +35,7 @@ - #include - #include - -+#include - #include - #include - #include -@@ -350,6 +351,20 @@ if (data->ifd[(i)]->count) { \ - break; \ - } - -+/*! Calculate the recursion cost added by one level of IFD loading. -+ * -+ * The work performed is related to the cost in the exponential relation -+ * work=1.1**cost -+ */ -+static unsigned int -+level_cost(unsigned int n) -+{ -+ static const double log_1_1 = 0.09531017980432493; -+ -+ /* Adding 0.1 protects against the case where n==1 */ -+ return ceil(log(n + 0.1)/log_1_1); -+} -+ - /*! Load data for an IFD. - * - * \param[in,out] data #ExifData -@@ -357,13 +372,13 @@ if (data->ifd[(i)]->count) { \ - * \param[in] d pointer to buffer containing raw IFD data - * \param[in] ds size of raw data in buffer at \c d - * \param[in] offset offset into buffer at \c d at which IFD starts -- * \param[in] recursion_depth number of times this function has been -- * recursively called without returning -+ * \param[in] recursion_cost factor indicating how expensive this recursive -+ * call could be - */ - static void - exif_data_load_data_content (ExifData *data, ExifIfd ifd, - const unsigned char *d, -- unsigned int ds, unsigned int offset, unsigned int recursion_depth) -+ unsigned int ds, unsigned int offset, unsigned int recursion_cost) - { - ExifLong o, thumbnail_offset = 0, thumbnail_length = 0; - ExifShort n; -@@ -378,9 +393,20 @@ exif_data_load_data_content (ExifData *data, ExifIfd ifd, - if ((((int)ifd) < 0) || ( ((int)ifd) >= EXIF_IFD_COUNT)) - return; - -- if (recursion_depth > 30) { -+ if (recursion_cost > 170) { -+ /* -+ * recursion_cost is a logarithmic-scale indicator of how expensive this -+ * recursive call might end up being. It is an indicator of the depth of -+ * recursion as well as the potential for worst-case future recursive -+ * calls. Since it's difficult to tell ahead of time how often recursion -+ * will occur, this assumes the worst by assuming every tag could end up -+ * causing recursion. -+ * The value of 170 was chosen to limit typical EXIF structures to a -+ * recursive depth of about 6, but pathological ones (those with very -+ * many tags) to only 2. -+ */ - exif_log (data->priv->log, EXIF_LOG_CODE_CORRUPT_DATA, "ExifData", -- "Deep recursion detected!"); -+ "Deep/expensive recursion detected!"); - return; - } - -@@ -422,15 +448,18 @@ exif_data_load_data_content (ExifData *data, ExifIfd ifd, - switch (tag) { - case EXIF_TAG_EXIF_IFD_POINTER: - CHECK_REC (EXIF_IFD_EXIF); -- exif_data_load_data_content (data, EXIF_IFD_EXIF, d, ds, o, recursion_depth + 1); -+ exif_data_load_data_content (data, EXIF_IFD_EXIF, d, ds, o, -+ recursion_cost + level_cost(n)); - break; - case EXIF_TAG_GPS_INFO_IFD_POINTER: - CHECK_REC (EXIF_IFD_GPS); -- exif_data_load_data_content (data, EXIF_IFD_GPS, d, ds, o, recursion_depth + 1); -+ exif_data_load_data_content (data, EXIF_IFD_GPS, d, ds, o, -+ recursion_cost + level_cost(n)); - break; - case EXIF_TAG_INTEROPERABILITY_IFD_POINTER: - CHECK_REC (EXIF_IFD_INTEROPERABILITY); -- exif_data_load_data_content (data, EXIF_IFD_INTEROPERABILITY, d, ds, o, recursion_depth + 1); -+ exif_data_load_data_content (data, EXIF_IFD_INTEROPERABILITY, d, ds, o, -+ recursion_cost + level_cost(n)); - break; - case EXIF_TAG_JPEG_INTERCHANGE_FORMAT: - thumbnail_offset = o; diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm index dfd45fd06b..4904fa1db1 100644 --- a/gnu/packages/photo.scm +++ b/gnu/packages/photo.scm @@ -206,17 +206,17 @@ cameras (CRW/CR2, NEF, RAF, DNG, and others).") (define-public libexif (package (name "libexif") - (version "0.6.21") + (version "0.6.22") (source (origin (method url-fetch) - (uri (string-append "mirror://sourceforge/libexif/libexif/" - version "/libexif-" version ".tar.bz2")) - (patches (search-patches "libexif-CVE-2016-6328.patch" - "libexif-CVE-2017-7544.patch" - "libexif-CVE-2018-20030.patch")) + (uri (string-append + "https://github.com/libexif/libexif/releases" + "/download/libexif-" + (string-map (lambda (x) (if (char=? x #\.) #\_ x)) version) + "-release/libexif-" version ".tar.xz")) (sha256 (base32 - "06nlsibr3ylfwp28w8f5466l6drgrnydgxrm4jmxzrmk5svaxk8n")))) + "0mhcad5zab7fsn120rd585h8ncwkq904nzzrq8vcd72hzk4g2j2h")))) (build-system gnu-build-system) (home-page "https://libexif.github.io/") (synopsis "Read and manipulate EXIF data in digital photographs") -- cgit v1.2.3