From 56dab1274e454b7fda89a6b373387975bb6f5fc3 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Wed, 20 Nov 2019 20:25:58 -0500 Subject: gnu: isc-dhcp: Update bundled BIND to 9.11.13 [fixes CVE-2019-6477]. * gnu/packages/admin.scm (isc-dhcp)[bind-patch-version]: Update to 13. [inputs]: Update hash of bind-source-tarball. --- gnu/packages/admin.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/admin.scm') diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index c4723c5a9d..761b26a8d6 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -689,7 +689,7 @@ connection alive.") (define-public isc-dhcp (let* ((bind-major-version "9") (bind-minor-version "11") - (bind-patch-version "11") + (bind-patch-version "13") (bind-release-type "") ; for patch release, use "-P" (bind-release-version "") ; for patch release, e.g. "6" (bind-version (string-append bind-major-version @@ -830,7 +830,7 @@ connection alive.") "/bind-" bind-version ".tar.gz")) (sha256 (base32 - "0swavslyli3vcrkcm2ip11s6p58g3k7r4gjs2b899r25cqrk0lk1")))) + "0z8g81xinqx8j3y2fclxa31dq7zsi9cj9srmvd9agnpwzk4kqgzx")))) ;; When cross-compiling, we need the cross Coreutils and sed. ;; Otherwise just use those from %FINAL-INPUTS. -- cgit 1.4.1 From 377606238f0260a849a1f529d94e1546276a5db6 Mon Sep 17 00:00:00 2001 From: Alex Griffin Date: Tue, 19 Nov 2019 19:59:32 -0600 Subject: gnu: Add netcat-openbsd. * gnu/packages/admin.scm (netcat-openbsd): New variable. --- gnu/packages/admin.scm | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) (limited to 'gnu/packages/admin.scm') diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 761b26a8d6..10caeac763 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -27,6 +27,7 @@ ;;; Copyright © 2019 Björn Höfling ;;; Copyright © 2019 Jakob L. Kreuze ;;; Copyright © 2019 Hartmut Goebel +;;; Copyright © 2019 Alex Griffin ;;; ;;; This file is part of GNU Guix. ;;; @@ -67,6 +68,7 @@ #:use-module (gnu packages file) #:use-module (gnu packages ncurses) #:use-module (gnu packages readline) + #:use-module (gnu packages libbsd) #:use-module (gnu packages linux) #:use-module (gnu packages lua) #:use-module (gnu packages guile) @@ -87,6 +89,7 @@ #:use-module (gnu packages glib) #:use-module (gnu packages openldap) #:use-module (gnu packages mcrypt) + #:use-module (gnu packages patchutils) #:use-module (gnu packages pkg-config) #:use-module (gnu packages popt) #:use-module (gnu packages python) @@ -620,6 +623,64 @@ and exploration tool, since it can create almost any kind of connection you would need and has several interesting built-in capabilities.") (license license:gpl2+))) +(define-public netcat-openbsd + (package + (name "netcat-openbsd") + (version "1.203-2") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://salsa.debian.org/debian/netcat-openbsd.git") + (commit (string-append "debian/" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0j85gzbjzs6yrhgabh3zkwzd27qkr5s0zjjczl0hah8q7yhrjk3m")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no test suite + #:make-flags + (list "CC=gcc" + (string-append "CFLAGS=-I" (assoc-ref %build-inputs "libbsd") "/include") + "LDFLAGS=-lbsd") + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-before 'build 'patch + (lambda _ + (setenv "QUILT_PATCHES" "debian/patches") + (invoke "quilt" "push" "-a") + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (man (string-append out "/share/man/man1")) + (doc (string-append out "/share/doc/netcat-openbsd-" ,version)) + (examples (string-append doc "/examples"))) + (install-file "nc" bin) + (install-file "nc.1" man) + (install-file "debian/copyright" doc) + (copy-recursively "debian/examples" examples) + #t)))))) + (inputs `(("libbsd" ,libbsd))) + (native-inputs `(("pkg-config" ,pkg-config) + ("quilt" ,quilt))) + (home-page "https://packages.debian.org/sid/netcat-openbsd") + (synopsis "Read and write data over TCP/IP") + (description + "Netcat is a simple Unix utility which reads and writes data across +network connections using TCP or UDP protocol. It is designed to be a reliable +\"back-end\" tool that can be used directly or easily driven by other programs +and scripts. At the same time it is a feature-rich network debugging and +exploration tool, since it can create almost any kind of connection you would +need and has several interesting built-in capabilities. + +This package contains the OpenBSD rewrite of netcat, including support for +IPv6, proxies, and Unix sockets.") + (license (list license:bsd-3 + license:bsd-2)))) ; atomicio.*, socks.c + (define-public sipcalc (package (name "sipcalc") -- cgit 1.4.1 From cd2ce8abae37bc900286e5282ebaa08b88768a54 Mon Sep 17 00:00:00 2001 From: Guillaume Le Vaillant Date: Tue, 12 Nov 2019 19:05:18 +0100 Subject: gnu: Add pam-mount. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/admin.scm (pam-mount): New variable. * gnu/packages/patches/pam-mount-luks2-support.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. Signed-off-by: Ludovic Courtès --- gnu/local.mk | 1 + gnu/packages/admin.scm | 68 ++++++++++++++++++++++ gnu/packages/patches/pam-mount-luks2-support.patch | 51 ++++++++++++++++ 3 files changed, 120 insertions(+) create mode 100644 gnu/packages/patches/pam-mount-luks2-support.patch (limited to 'gnu/packages/admin.scm') diff --git a/gnu/local.mk b/gnu/local.mk index e6c6f57c3f..0129e42944 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1216,6 +1216,7 @@ dist_patch_DATA = \ %D%/packages/patches/p7zip-CVE-2016-9296.patch \ %D%/packages/patches/p7zip-CVE-2017-17969.patch \ %D%/packages/patches/p7zip-remove-unused-code.patch \ + %D%/packages/patches/pam-mount-luks2-support.patch \ %D%/packages/patches/patchutils-test-perms.patch \ %D%/packages/patches/patch-hurd-path-max.patch \ %D%/packages/patches/pcre2-fix-jit_match-crash.patch \ diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 10caeac763..d838c81717 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -28,6 +28,7 @@ ;;; Copyright © 2019 Jakob L. Kreuze ;;; Copyright © 2019 Hartmut Goebel ;;; Copyright © 2019 Alex Griffin +;;; Copyright © 2019 Guillaume Le Vaillant ;;; ;;; This file is part of GNU Guix. ;;; @@ -61,8 +62,10 @@ #:use-module (gnu packages algebra) #:use-module (gnu packages base) #:use-module (gnu packages bash) + #:use-module (gnu packages c) #:use-module (gnu packages check) #:use-module (gnu packages crypto) + #:use-module (gnu packages cryptsetup) #:use-module (gnu packages cyrus-sasl) #:use-module (gnu packages dns) #:use-module (gnu packages file) @@ -3513,3 +3516,68 @@ IGMP and Raw, across a wide variety of interface types, and understands BPF filter logic in the same fashion as more common packet sniffing tools, such as tcpdump and snoop.") (license license:bsd-3))) + +(define-public pam-mount + (package + (name "pam-mount") + (version "2.16") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/pam-mount/pam_mount/" + version "/pam_mount-" version ".tar.xz")) + (sha256 + (base32 + "1rvi4irb7ylsbhvx1cr6islm2xxw1a4b19q6z4a9864ndkm0f0mf")) + (patches + ;; Patch adding support for encrypted volumes in LUKS2 format. + ;; It comes from the Gentoo package definition for sys-auth/pam_mount. + (search-patches "pam-mount-luks2-support.patch")))) + (build-system gnu-build-system) + (native-inputs + `(("perl" ,perl) + ("pkg-config" ,pkg-config))) + (inputs + `(("cryptsetup" ,cryptsetup) + ("libhx" ,libhx) + ("libxml2" ,libxml2) + ("linux-pam" ,linux-pam) + ("lvm2" ,lvm2) + ("openssl" ,openssl) + ("pcre" ,pcre) + ("util-linux" ,util-linux))) + (arguments + `(#:configure-flags + (list (string-append "--with-slibdir=" %output "/lib") + (string-append "--with-ssbindir=" %output "/sbin")) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-program-paths + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((util-linux (assoc-ref inputs "util-linux")) + (out (assoc-ref outputs "out"))) + (substitute* "src/mtcrypt.c" + (("\"mount\";") + (string-append "\"" util-linux "/bin/mount\";")) + (("\"umount\";") + (string-append "\"" util-linux "/bin/umount\";")) + (("\"fsck\",") + (string-append "\"" util-linux "/sbin/fsck\","))) + (substitute* "src/rdconf1.c" + (("\"mount\", \"") + (string-append "\"" util-linux "/bin/mount\", \"")) + (("\"umount\", \"") + (string-append "\"" util-linux "/bin/umount\", \"")) + (("\"fsck\", \"") + (string-append "\"" util-linux "/sbin/fsck\", \"")) + (("\"pmvarrun\", \"") + (string-append "\"" out "/sbin/pmvarrun\", \"")))) + #t))))) + (home-page "http://pam-mount.sourceforge.net") + (synopsis "PAM module to mount volumes for a user session") + (description + "Pam-mount is a PAM module that can mount volumes when a user logs in. +It supports mounting local filesystems of any kind the normal mount utility +supports. It can also mount encrypted LUKS volumes using the password +supplied by the user when logging in.") + (license (list license:gpl2+ license:lgpl2.1+)))) diff --git a/gnu/packages/patches/pam-mount-luks2-support.patch b/gnu/packages/patches/pam-mount-luks2-support.patch new file mode 100644 index 0000000000..b59daf5ce1 --- /dev/null +++ b/gnu/packages/patches/pam-mount-luks2-support.patch @@ -0,0 +1,51 @@ +From d4434c05e7c0cf05d87089404cfa2deedc60811a Mon Sep 17 00:00:00 2001 +From: Ingo Franzki +Date: Mon, 29 Oct 2018 16:47:40 +0100 +Subject: [PATCH] crypto: Add support for LUKS2 + +Cryptsetup version 2.0 added support for LUKS2. +This patch adds support for mounting LUKS2 volumes with +pam_mount. + +Signed-off-by: Ingo Franzki +--- + src/crypto-dmc.c | 10 ++++++++-- + 1 file changed, 8 insertions(+), 2 deletions(-) + +diff --git a/src/crypto-dmc.c b/src/crypto-dmc.c +index d0ab6ca..abd0358 100644 +--- a/src/crypto-dmc.c ++++ b/src/crypto-dmc.c +@@ -21,6 +21,12 @@ + #include "libcryptmount.h" + #include "pam_mount.h" + ++#ifndef CRYPT_LUKS ++ #define CRYPT_LUKS NULL /* Passing NULL to crypt_load will ++ default to LUKS(1) on older ++ libcryptsetup versions. */ ++#endif ++ + /** + * dmc_is_luks - check if @path points to a LUKS volume (cf. normal dm-crypt) + * @path: path to the crypto container +@@ -48,7 +54,7 @@ EXPORT_SYMBOL int ehd_is_luks(const char *path, bool blkdev) + + ret = crypt_init(&cd, device); + if (ret == 0) { +- ret = crypt_load(cd, CRYPT_LUKS1, NULL); ++ ret = crypt_load(cd, CRYPT_LUKS, NULL); + if (ret == -EINVAL) + ret = false; + else if (ret == 0) +@@ -106,7 +112,7 @@ static bool dmc_run(const struct ehd_mount_request *req, + #endif + } + +- ret = crypt_load(cd, CRYPT_LUKS1, NULL); ++ ret = crypt_load(cd, CRYPT_LUKS, NULL); + if (ret == 0) { + ret = crypt_activate_by_passphrase(cd, mt->crypto_name, + CRYPT_ANY_SLOT, req->key_data, req->key_size, flags); +-- +2.21.0 -- cgit 1.4.1 From b577306a924800863f25a5aa9733bfc44a58250a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 30 Nov 2019 20:10:25 +0100 Subject: gnu: acpica: Update to 20191018. * gnu/packages/admin.scm (acpica): Update to 20191018. --- gnu/packages/admin.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/admin.scm') diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index d838c81717..98d82e3a50 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -1575,7 +1575,7 @@ module slots, and the list of I/O ports (e.g. serial, parallel, USB).") (define-public acpica (package (name "acpica") - (version "20190816") + (version "20191018") (source (origin (method url-fetch) (uri (string-append @@ -1583,7 +1583,7 @@ module slots, and the list of I/O ports (e.g. serial, parallel, USB).") version ".tar.gz")) (sha256 (base32 - "0lipy3jwl498lvgwzj6xcvmg61myl7hhilpallh1cf3ppgrq13l8")))) + "0k6xr9v46pnw8kl7jh23zfafs2vq3gk2sgkmjdf9a8jx8n3aifgd")))) (build-system gnu-build-system) (native-inputs `(("flex" ,flex) ("bison" ,bison))) -- cgit 1.4.1 From 50db7df4d26bef655d744de5ae1e6441d1e9feeb Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 1 Dec 2019 02:29:48 +0100 Subject: gnu: cbatticon: Update to 1.6.10. * gnu/packages/admin.scm (cbatticon): Update to 1.6.10. --- gnu/packages/admin.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/admin.scm') diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 98d82e3a50..d00e887071 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -2517,7 +2517,7 @@ produce uniform output across heterogeneous networks.") (define-public cbatticon (package (name "cbatticon") - (version "1.6.9") + (version "1.6.10") (source (origin (method git-fetch) @@ -2525,7 +2525,7 @@ produce uniform output across heterogeneous networks.") (url "https://github.com/valr/cbatticon.git") (commit version))) (sha256 - (base32 "0kw09d678sd3m18fmi4380sl4a2m5lkfmq0kps16cdmq7z80rvaf")) + (base32 "0ivm2dzhsa9ir25ry418r2qg2llby9j7a6m3arbvq5c3kaj8m9jr")) (file-name (git-file-name name version)))) (build-system gnu-build-system) (arguments -- cgit 1.4.1 From 4d441ca1743a985eeba33027f864b9b136c5e9e1 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 1 Dec 2019 02:31:52 +0100 Subject: gnu: thermald: Update to 1.9. * gnu/packages/admin.scm (thermald): Update to 1.9. [source]: Remove patch. * packages/patches/thermald-make-int-max32-visible.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/admin.scm | 6 ++---- .../patches/thermald-make-int-max32-visible.patch | 24 ---------------------- 3 files changed, 2 insertions(+), 29 deletions(-) delete mode 100644 gnu/packages/patches/thermald-make-int-max32-visible.patch (limited to 'gnu/packages/admin.scm') diff --git a/gnu/local.mk b/gnu/local.mk index 5de56c9a1b..9ddd1349da 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1391,7 +1391,6 @@ dist_patch_DATA = \ %D%/packages/patches/texi2html-document-encoding.patch \ %D%/packages/patches/texi2html-i18n.patch \ %D%/packages/patches/thefuck-test-environ.patch \ - %D%/packages/patches/thermald-make-int-max32-visible.patch \ %D%/packages/patches/tidy-CVE-2015-5522+5523.patch \ %D%/packages/patches/tinyxml-use-stl.patch \ %D%/packages/patches/tipp10-fix-compiling.patch \ diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index d00e887071..5a135c5829 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -3015,7 +3015,7 @@ make it a perfect utility on modern distros.") (define-public thermald (package (name "thermald") - (version "1.8") + (version "1.9") (source (origin (method git-fetch) @@ -3024,9 +3024,7 @@ make it a perfect utility on modern distros.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1g1l7k8yxj8bl1ysdx8v6anv1s7xk9j072y44gwki70dy48n7j92")) - (patches - (search-patches "thermald-make-int-max32-visible.patch")))) + (base32 "1ajhivl9jifcf12nbk281yayk7666v65m249aclyli0bz1kh8cfs")))) (build-system gnu-build-system) (arguments `(#:configure-flags diff --git a/gnu/packages/patches/thermald-make-int-max32-visible.patch b/gnu/packages/patches/thermald-make-int-max32-visible.patch deleted file mode 100644 index eddbb23547..0000000000 --- a/gnu/packages/patches/thermald-make-int-max32-visible.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 5fb947886bf1e40475edf930fb2b284c24c8cb9a Mon Sep 17 00:00:00 2001 -From: Sanel Zukan -Date: Sun, 23 Dec 2018 00:04:34 +0100 -Subject: [PATCH] Make sure INT_MAX32 is visible. - ---- - src/thd_trip_point.h | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/src/thd_trip_point.h b/src/thd_trip_point.h -index 0eedc95..89eb083 100644 ---- a/src/thd_trip_point.h -+++ b/src/thd_trip_point.h -@@ -29,6 +29,10 @@ - #include "thd_sys_fs.h" - #include "thd_preference.h" - #include "thd_cdev.h" -+ -+#define __STDC_LIMIT_MACROS -+#include -+ - #include - #include - #include // std::sort -- cgit 1.4.1 From f5bfaf32f6084be6c2da5dfe2e661e6755fba93f Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 1 Dec 2019 02:36:38 +0100 Subject: gnu: hostapd: Update to 2.9. * gnu/packages/admin.scm (hostapd): Update to 2.9. --- gnu/packages/admin.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/admin.scm') diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 5a135c5829..57c90531cc 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -1442,14 +1442,14 @@ command.") (define-public hostapd (package (name "hostapd") - (version "2.8") + (version "2.9") (source (origin (method url-fetch) (uri (string-append "https://w1.fi/releases/hostapd-" version ".tar.gz")) (sha256 (base32 - "1c74rrazkhy4lr7pwgwa2igzca7h9l4brrs7672kiv7fwqmm57wj")))) + "1mrbvg4v7vm7mknf0n29mf88k3s4a4qj6r4d51wq8hmjj1m7s7c8")))) (build-system gnu-build-system) (arguments '(#:phases -- cgit 1.4.1 From cf2013d981c862d9cb4140c767a94563cd771e5e Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 1 Dec 2019 02:52:51 +0100 Subject: gnu: nnn: Update to 2.7. * gnu/packages/admin.scm (nnn): Update to 2.7. --- gnu/packages/admin.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages/admin.scm') diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 57c90531cc..947f92379e 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -2979,14 +2979,14 @@ everyone's screenshots nowadays.") (define-public nnn (package (name "nnn") - (version "2.6") + (version "2.7") (source (origin (method url-fetch) (uri (string-append "https://github.com/jarun/nnn/releases/download/v" version "/nnn-v" version ".tar.gz")) (sha256 - (base32 "0xb6crd9vig3xgjwl8m4bmgcs4azfmfdpx3g8pdpzs28jdg7i3rr")))) + (base32 "1wvh11iw7s3r8c985s99fqm2l7cn7dkbx7ah3xpk34jvry7j3vg5")))) (build-system gnu-build-system) (inputs `(("ncurses" ,ncurses) -- cgit 1.4.1 From 0b4ced58c04004a3751c8b84b10b8a92c5289ad9 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 1 Dec 2019 02:58:43 +0100 Subject: gnu: pscircle: Update to 1.3.1. * gnu/packages/admin.scm (pscircle): Update to 1.3.1. --- gnu/packages/admin.scm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'gnu/packages/admin.scm') diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 947f92379e..6e5648d159 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -3300,7 +3300,7 @@ support forum. It runs with the @code{/exec} command in most IRC clients.") (define-public pscircle (package (name "pscircle") - (version "1.3.0") + (version "1.3.1") (source (origin (method git-fetch) @@ -3309,8 +3309,7 @@ support forum. It runs with the @code{/exec} command in most IRC clients.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 - "0qsif00dkqa8ky3vl2ycx5anx2yk62nrv47f5lrlqzclz91f00fx")))) + (base32 "1sm99423hh90kr4wdjqi9sdrrpk65j2vz2hzj65zcxfxyr6khjci")))) (build-system meson-build-system) (native-inputs `(("pkg-config" ,pkg-config))) -- cgit 1.4.1 From 208e743415d7c36e9684851a31cc30dec16db2c3 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Wed, 4 Dec 2019 18:56:31 +0100 Subject: gnu: sunxi-tools: Simplify build. * gnu/packages/admin.scm (sunxi-tools-source): New procedure. (sunxi-target-tools): New variable. (sunxi-tools)[source]: Use sunxi-tools-source. [native-inputs]: Remove cross-gcc, cross-libc, cross-libc-static. Add sunxi-target-tools. [arguments]<#:make-flags>: Modify. [arguments]<#:phases>[set-environment-up]: Delete phase. [build-armhf]: Delete phase. [install]: Modify. --- gnu/packages/admin.scm | 99 ++++++++++++++++++++++++++------------------------ 1 file changed, 51 insertions(+), 48 deletions(-) (limited to 'gnu/packages/admin.scm') diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 6e5648d159..6fbceb4421 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -2629,11 +2629,7 @@ Kerberos and Heimdal and FAST is supported with recent MIT Kerberos.") ;; clause requiring us to give all recipients a copy. (license license:gpl1+))) -(define-public sunxi-tools - (package - (name "sunxi-tools") - (version "1.4.2") - (source +(define (sunxi-tools-source version) (origin (method git-fetch) (uri (git-reference @@ -2648,14 +2644,49 @@ Kerberos and Heimdal and FAST is supported with recent MIT Kerberos.") '(begin (delete-file-recursively "bin") #t)) - (file-name (git-file-name name version)))) + (file-name (git-file-name "sunxi-tools" version)))) + +(define sunxi-target-tools + (package + (name "sunxi-target-tools") + (version "1.4.2") + (build-system gnu-build-system) + (source + (sunxi-tools-source version)) + (arguments + `(#:system "armhf-linux" + #:tests? #f + #:make-flags (list (string-append "PREFIX=" + (assoc-ref %outputs "out")) + (string-append "CROSS_COMPILE=") + "CC=gcc") + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'build + (lambda* (#:key make-flags #:allow-other-keys) + (apply invoke "make" "target-tools" make-flags))) + (replace 'install + (lambda* (#:key make-flags #:allow-other-keys) + (apply invoke "make" "install-target-tools" + make-flags)))))) + (home-page "https://github.com/linux-sunxi/sunxi-tools") + (synopsis "Hardware management tools for Allwinner computers") + (description "This package contains tools for Allwinner devices: +@enumerate +@item @command{sunxi-meminfo}: Prints memory bus settings. +@end enumerate") + (license license:gpl2+))) + +(define-public sunxi-tools + (package + (name "sunxi-tools") + (version "1.4.2") + (source + (sunxi-tools-source version)) (native-inputs - `(("pkg-config" ,pkg-config) - ("cross-gcc" ,(cross-gcc "arm-linux-gnueabihf" - #:xbinutils (cross-binutils "arm-linux-gnueabihf") - #:libc (cross-libc "arm-linux-gnueabihf"))) - ("cross-libc" ,(cross-libc "arm-linux-gnueabihf")) ; header files - ("cross-libc-static" ,(cross-libc "arm-linux-gnueabihf") "static"))) + `(("sunxi-target-tools" ,sunxi-target-tools) + ("pkg-config" ,pkg-config))) (inputs `(("libusb" ,libusb))) (build-system gnu-build-system) @@ -2663,50 +2694,22 @@ Kerberos and Heimdal and FAST is supported with recent MIT Kerberos.") `(#:tests? #f ; no tests exist #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")) - (string-append "CROSS_COMPILE=" - "arm-linux-gnueabihf-") + (string-append "CROSS_COMPILE=disabled") "CC=gcc") #:phases (modify-phases %standard-phases (delete 'configure) - (add-before 'build 'set-environment-up - (lambda* (#:key make-flags #:allow-other-keys) - (define (cross? x) - (string-contains x "cross-arm-linux")) - (define (filter-environment! filter-predicate - environment-variable-names) - (for-each - (lambda (env-name) - (when (getenv env-name) - (let* ((env-value (getenv env-name)) - (search-path (search-path-as-string->list env-value)) - (new-search-path (filter filter-predicate - search-path)) - (new-env-value (list->search-path-as-string - new-search-path ":"))) - (setenv env-name new-env-value)))) - environment-variable-names)) - (setenv "CROSS_CPATH" (getenv "CPATH")) - (setenv "CROSS_C_INCLUDE_PATH" (getenv "C_INCLUDE_PATH")) - (setenv "CROSS_CPLUS_INCLUDE_PATH" (getenv "CPLUS_INCLUDE_PATH")) - (setenv "CROSS_LIBRARY_PATH" (getenv "LIBRARY_PATH")) - (filter-environment! cross? - '("CROSS_CPATH" "CROSS_C_INCLUDE_PATH" "CROSS_CPLUS_INCLUDE_PATH" - "CROSS_LIBRARY_PATH")) - (filter-environment! (lambda (e) (not (cross? e))) - '("CPATH" "C_INCLUDE_PATH" "CPLUS_INCLUDE_PATH" - "LIBRARY_PATH")) - #t)) (replace 'build (lambda* (#:key make-flags #:allow-other-keys) (apply invoke "make" "tools" "misc" make-flags))) - (add-after 'build 'build-armhf - (lambda* (#:key make-flags #:allow-other-keys) - (setenv "LIBRARY_PATH" #f) - (apply invoke "make" "target-tools" make-flags))) (replace 'install - (lambda* (#:key make-flags #:allow-other-keys) - (apply invoke "make" "install-all" "install-misc" + (lambda* (#:key inputs outputs make-flags #:allow-other-keys) + ;; Those tools have been built for armhf but are part of the + ;; installation in the upstream package. So do the same + ;; here. + (copy-recursively (assoc-ref inputs "sunxi-target-tools") + (assoc-ref outputs "out")) + (apply invoke "make" "install-tools" "install-misc" make-flags)))))) (home-page "https://github.com/linux-sunxi/sunxi-tools") (synopsis "Hardware management tools for Allwinner computers") -- cgit 1.4.1