From 0b7bef7045abdf0682e1f628c13421ae8a434693 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sun, 6 May 2018 16:15:35 +0200 Subject: gnu: wireshark: Update to 2.6.0. * gnu/packages/networking.scm (wireshark): Update to 2.6.0. [inputs]: Add lz4, qtmultimedia and snappy. Remove openssl. [arguments]: Update configure flags according to changes above. --- gnu/packages/networking.scm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index f7e5d236db..9f9f21baaf 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -543,7 +543,7 @@ of the same name.") (define-public wireshark (package (name "wireshark") - (version "2.4.5") + (version "2.6.0") (source (origin (method url-fetch) @@ -551,7 +551,7 @@ of the same name.") version ".tar.xz")) (sha256 (base32 - "1mvgy67rvnwj2kbc43s4il81jvz5ai0bx2j3j2js7x50zclyrcmk")))) + "0zqip4ai18iar7sgialc3jmpng1yxxy4i9bphbaig23ss80py73i")))) (build-system gnu-build-system) (inputs `(("c-ares" ,c-ares) ("glib" ,glib) @@ -562,12 +562,14 @@ of the same name.") ("libpcap" ,libpcap) ("libssh" ,libssh) ("libxml2" ,libxml2) + ("lz4" ,lz4) ("lua" ,lua-5.2) ;Lua 5.3 unsupported ("krb5" ,mit-krb5) - ("openssl" ,openssl) ("portaudio" ,portaudio) ("qtbase" ,qtbase) + ("qtmultimedia" ,qtmultimedia) ("sbc" ,sbc) + ("snappy" ,snappy) ("zlib" ,zlib))) (native-inputs `(("perl" ,perl) ("pkg-config" ,pkg-config) @@ -580,11 +582,12 @@ of the same name.") (string-append "--with-libcap=" (assoc-ref %build-inputs "libcap")) (string-append "--with-libssh=" (assoc-ref %build-inputs "libssh")) (string-append "--with-lua=" (assoc-ref %build-inputs "lua")) + (string-append "--with-lz4=" (assoc-ref %build-inputs "lz4")) (string-append "--with-pcap=" (assoc-ref %build-inputs "libpcap")) (string-append "--with-portaudio=" (assoc-ref %build-inputs "portaudio")) (string-append "--with-sbc=" (assoc-ref %build-inputs "sbc")) - (string-append "--with-ssl=" (assoc-ref %build-inputs "openssl")) + (string-append "--with-snappy=" (assoc-ref %build-inputs "snappy")) (string-append "--with-zlib=" (assoc-ref %build-inputs "zlib"))))) (synopsis "Network traffic analyzer") (description "Wireshark is a network protocol analyzer, or @dfn{packet -- cgit v1.2.3 From 6e7be7d37abfb70098e4ce64c3508d992145d9c8 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 6 May 2018 20:11:40 +0200 Subject: gnu: strace: Fix build failure on Linux-Libre 4.16. * gnu/packages/patches/strace-kernel-4.16.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/linux.scm (strace)][source](patches): New field. --- gnu/local.mk | 1 + gnu/packages/linux.scm | 1 + gnu/packages/patches/strace-kernel-4.16.patch | 92 +++++++++++++++++++++++++++ 3 files changed, 94 insertions(+) create mode 100644 gnu/packages/patches/strace-kernel-4.16.patch diff --git a/gnu/local.mk b/gnu/local.mk index cfe698d3ff..bd99883462 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1096,6 +1096,7 @@ dist_patch_DATA = \ %D%/packages/patches/slim-login.patch \ %D%/packages/patches/sooperlooper-build-with-wx-30.patch \ %D%/packages/patches/steghide-fixes.patch \ + %D%/packages/patches/strace-kernel-4.16.patch \ %D%/packages/patches/superlu-dist-scotchmetis.patch \ %D%/packages/patches/swish-e-search.patch \ %D%/packages/patches/swish-e-format-security.patch \ diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index fe1090eb7b..ac28b2b453 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -949,6 +949,7 @@ Zerofree requires the file system to be unmounted or mounted read-only.") (method url-fetch) (uri (string-append home-page "/files/" version "/strace-" version ".tar.xz")) + (patches (search-patches "strace-kernel-4.16.patch")) (sha256 (base32 "17dkpnsjxmys1ydidm9wcvc3wscsz44fmlxw3dclspn9cj9d1306")))) diff --git a/gnu/packages/patches/strace-kernel-4.16.patch b/gnu/packages/patches/strace-kernel-4.16.patch new file mode 100644 index 0000000000..e86d3be439 --- /dev/null +++ b/gnu/packages/patches/strace-kernel-4.16.patch @@ -0,0 +1,92 @@ +Fix test failure when using Linux-Libre >= 4.16. + +Taken from upstream: +https://github.com/strace/strace/commit/bcff87c31c0f27c678a43d6b7f67dab363a974fa + +From bcff87c31c0f27c678a43d6b7f67dab363a974fa Mon Sep 17 00:00:00 2001 +From: Masatake YAMATO +Date: Wed, 2 May 2018 17:11:07 +0900 +Subject: [PATCH] tests/ioctl_kvm_run.c: handle cpuid at the end of vcpu dentry + +Since Linux 4.16, kernel appends the cpuid as suffix to the entry +for a kvm vcpu in /proc/$pid/fd like: + + anon_inode:kvm-vcpu:0 + +That was + + anon_inode:kvm-vcpu + +This kernel change causes the test case failure on newer kernels. +Update the test to deal with the new name as well as the old one. + +* tests/ioctl_kvm_run.c: Include unistd.h for using readlink(2). +(vcpu_dev_should_have_cpuid): New function for detecting whether +a proc entry for given fd has the cpuid suffix or not. +(main): Trim vcpu_dev to remove the cpuid suffix if needed. +(vcpu_dev): Remove const modifier. +--- + tests/ioctl_kvm_run.c | 29 ++++++++++++++++++++++++++++- + 1 file changed, 28 insertions(+), 1 deletion(-) + +diff --git a/tests/ioctl_kvm_run.c b/tests/ioctl_kvm_run.c +index 179461430..e1bef5796 100644 +--- a/tests/ioctl_kvm_run.c ++++ b/tests/ioctl_kvm_run.c +@@ -40,6 +40,7 @@ + # include + # include + # include ++# include + # include + + static int +@@ -56,7 +57,7 @@ kvm_ioctl(int fd, unsigned long cmd, const char *cmd_str, void *arg) + + static const char dev[] = "/dev/kvm"; + static const char vm_dev[] = "anon_inode:kvm-vm"; +-static const char vcpu_dev[] = "anon_inode:kvm-vcpu"; ++static char vcpu_dev[] = "anon_inode:kvm-vcpu:0"; + static size_t page_size; + + extern const char code[]; +@@ -165,6 +166,23 @@ run_kvm(const int vcpu_fd, struct kvm_run *const run, const size_t mmap_size, + } + } + ++static int ++vcpu_dev_should_have_cpuid(int fd) ++{ ++ int r = 0; ++ char *filename = NULL; ++ char buf[sizeof(vcpu_dev)]; ++ ++ if (asprintf(&filename, "/proc/%d/fd/%d", getpid(), fd) < 0) ++ error_msg_and_fail("asprintf"); ++ ++ if (readlink(filename, buf, sizeof(buf)) == sizeof(buf) - 1 ++ && (memcmp(buf, vcpu_dev, sizeof(buf) - 1) == 0)) ++ r = 1; ++ free(filename); ++ return r; ++} ++ + int + main(void) + { +@@ -208,6 +226,15 @@ main(void) + (unsigned long) page_size, (unsigned long) page_size, mem); + + int vcpu_fd = KVM_IOCTL(vm_fd, KVM_CREATE_VCPU, NULL); ++ if (!vcpu_dev_should_have_cpuid(vcpu_fd)) ++ /* ++ * This is an older kernel that doesn't place a cpuid ++ * at the end of the dentry associated with vcpu_fd. ++ * Trim the cpuid part of vcpu_dev like: ++ * "anon_inode:kvm-vcpu:0" -> "anon_inode:kvm-vcpu" ++ */ ++ vcpu_dev[strlen (vcpu_dev) - 2] = '\0'; ++ + printf("ioctl(%d<%s>, KVM_CREATE_VCPU, 0) = %d<%s>\n", + vm_fd, vm_dev, vcpu_fd, vcpu_dev); + -- cgit v1.2.3 From 021469bc058b0f34d8746bf6e6af132614ec61ee Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 6 May 2018 17:22:31 -0400 Subject: gnu: mpd-mpc: Update to 0.30. * gnu/packages/mpd.scm (mpd-mpc): Update to 0.30. --- gnu/packages/mpd.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm index a9d317eb7b..1889035492 100644 --- a/gnu/packages/mpd.scm +++ b/gnu/packages/mpd.scm @@ -162,7 +162,7 @@ protocol.") (define-public mpd-mpc (package (name "mpd-mpc") - (version "0.29") + (version "0.30") (source (origin (method url-fetch) (uri @@ -171,7 +171,7 @@ protocol.") "/mpc-" version ".tar.xz")) (sha256 (base32 - "1lxr0z5i5yx4lcvy9nyxj6q32qlz473j3zm6va68zd1cj3ndmw82")))) + "1kkzhrypkp0v6xv4d6db415pd0h6jqki29kfpsnfkvrhhh55pz35")))) (build-system meson-build-system) (inputs `(("libmpdclient" ,libmpdclient))) (native-inputs `(("pkg-config" ,pkg-config))) -- cgit v1.2.3 From ccb15b343e35d76a5c7c693f4c00d3f5b5a4cc39 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 6 May 2018 23:55:50 +0200 Subject: Revert "gnu: man-db: Embed absolute reference to 'preconv'." This change broke `man` when invoked outside a `guix environment`. This reverts commit 296551a2e9310d4a030ee49530e9367e73aaeecf. --- gnu/packages/man.scm | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/gnu/packages/man.scm b/gnu/packages/man.scm index 334ebe2906..ca6fd351d5 100644 --- a/gnu/packages/man.scm +++ b/gnu/packages/man.scm @@ -5,7 +5,6 @@ ;;; Copyright © 2015 Alex Kost ;;; Copyright © 2015, 2016 Efraim Flashner ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice -;;; Copyright © 2018 Marius Bakke ;;; ;;; This file is part of GNU Guix. ;;; @@ -81,19 +80,11 @@ a flexible and convenient way.") (string-append "#!" (which "sh"))))) (remove file-is-directory? (find-files "src/tests" ".*")))))) - (add-after 'unpack 'patch-absolute-paths + (add-after 'unpack 'patch-iconv-path (lambda* (#:key inputs #:allow-other-keys) (substitute* "src/man.c" (("\"iconv\"") (string-append "\"" (which "iconv") "\""))) - ;; Embed an absolute reference to "preconv", otherwise it - ;; falls back to searching in PATH and ultimately fails - ;; to render unicode data (see ). - (substitute* "lib/encodings.c" - (("groff_preconv = NULL") - (string-append "groff_preconv = \"" - (assoc-ref inputs "groff-minimal") - "/bin/preconv\""))) #t))) #:configure-flags (let ((groff (assoc-ref %build-inputs "groff")) -- cgit v1.2.3 From effd8df8f26ca3474edd4be53affd89579f03c68 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 6 May 2018 23:57:49 +0200 Subject: gnu: wget: Update to 1.19.5 [fixes CVE-2018-0494]. * gnu/packages/wget.scm (wget): Update to 1.19.5. --- gnu/packages/wget.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scm index 585b8a0342..82ddbde4f1 100644 --- a/gnu/packages/wget.scm +++ b/gnu/packages/wget.scm @@ -44,7 +44,7 @@ (define-public wget (package (name "wget") - (version "1.19.4") + (version "1.19.5") (source (origin (method url-fetch) @@ -52,7 +52,7 @@ version ".tar.lz")) (sha256 (base32 - "16jmcqcasx3q9k4azssryli9qyxfq0sfijw998g8zp58cnwzzh1g")))) + "0xfaxmlnih7dhkyks5wi4vrn0n1xshmy6gx6fb2k1120sprydyr9")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases -- cgit v1.2.3 From f2e66663c2e00b482cdf5ba83173291d30363e7c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Sun, 6 May 2018 16:41:50 +0200 Subject: self: Add "guix-packages-base" derivation. This introduces an intermediate derivation, thereby reducing the amount of rebuild that needs to happen when "leaf" package modules are modified. * guix/self.scm (compiled-guix)[*core-package-modules*]: New variable. [*package-modules*, *system-modules*, *cli-modules*]: Depend on it. Add it to the directory union. --- guix/self.scm | 27 +++++++++++++++++++++------ 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/guix/self.scm b/guix/self.scm index 6220efb397..4378a3dee5 100644 --- a/guix/self.scm +++ b/guix/self.scm @@ -260,13 +260,18 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." #:extensions dependencies #:guile-for-build guile-for-build)) - (define *package-modules* - (scheme-node "guix-packages" + (define *core-package-modules* + (scheme-node "guix-packages-base" `((gnu packages) - ,@(scheme-modules* source "gnu/packages")) + (gnu packages base)) (list *core-modules* *extra-modules*) #:extensions dependencies - #:extra-files ;all the non-Scheme files + + ;; Add all the non-Scheme files here. We must do it here so + ;; that 'search-patches' & co. can find them. Ideally we'd + ;; keep them next to the .scm files that use them but it's + ;; difficult to do (XXX). + #:extra-files (file-imports source "gnu/packages" (lambda (file stat) (and (eq? 'regular (stat:type stat)) @@ -276,13 +281,21 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." (not (string-suffix? "~" file))))) #:guile-for-build guile-for-build)) + (define *package-modules* + (scheme-node "guix-packages" + (scheme-modules* source "gnu/packages") + (list *core-modules* *extra-modules* *core-package-modules*) + #:extensions dependencies + #:guile-for-build guile-for-build)) + (define *system-modules* (scheme-node "guix-system" `((gnu system) (gnu services) ,@(scheme-modules* source "gnu/system") ,@(scheme-modules* source "gnu/services")) - (list *package-modules* *extra-modules* *core-modules*) + (list *core-package-modules* *package-modules* + *extra-modules* *core-modules*) #:extensions dependencies #:extra-files (file-imports source "gnu/system/examples" (const #t)) @@ -292,7 +305,8 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." (define *cli-modules* (scheme-node "guix-cli" (scheme-modules* source "/guix/scripts") - (list *core-modules* *extra-modules* *package-modules* + (list *core-modules* *extra-modules* + *core-package-modules* *package-modules* *system-modules*) #:extensions dependencies #:guile-for-build guile-for-build)) @@ -330,6 +344,7 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." *cli-modules* *system-modules* *package-modules* + *core-package-modules* *extra-modules* *core-modules*)) -- cgit v1.2.3 From 16e7afb924deb145325144a2dcd0e2cc21228f89 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 7 May 2018 10:36:13 +0200 Subject: pack: Do not autoload (gnu packages base). * guix/scripts/pack.scm: Do not autoload (gnu packages base). Previously, we could end up with 'canonical-package' as an unbound variable because of the incorrect autoload spec. --- guix/scripts/pack.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/guix/scripts/pack.scm b/guix/scripts/pack.scm index 488638adc5..b90bc41bc4 100644 --- a/guix/scripts/pack.scm +++ b/guix/scripts/pack.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2015, 2017 Ludovic Courtès +;;; Copyright © 2015, 2017, 2018 Ludovic Courtès ;;; Copyright © 2017 Efraim Flashner ;;; Copyright © 2017 Ricardo Wurmus ;;; Copyright © 2018 Konrad Hinsen @@ -37,7 +37,7 @@ #:use-module (gnu packages bootstrap) #:use-module (gnu packages compression) #:use-module (gnu packages guile) - #:autoload (gnu packages base) (tar) + #:use-module (gnu packages base) #:autoload (gnu packages package-management) (guix) #:autoload (gnu packages gnupg) (libgcrypt) #:autoload (gnu packages guile) (guile2.0-json guile-json) -- cgit v1.2.3 From df6f86a0cb652172329597701683cfa837ddced2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 7 May 2018 10:41:33 +0200 Subject: pack: Adjust test to cope with GC'd profiles. Previous "test -x opt/gnu/bin/guile" would fail if the store item "opt/gnu/bin" points to had been GC'd. * tests/guix-pack.sh: Replace "test -x" with "test -L" to deal with store items that have been reclaimed. --- tests/guix-pack.sh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/tests/guix-pack.sh b/tests/guix-pack.sh index 1b63b957be..d34f72015f 100644 --- a/tests/guix-pack.sh +++ b/tests/guix-pack.sh @@ -41,12 +41,14 @@ guix pack --bootstrap guile-bootstrap # Build a tarball with a symlink. the_pack="`guix pack --bootstrap -S /opt/gnu/bin=bin guile-bootstrap`" -# Try to extract it. +# Try to extract it. Note: we cannot test whether /opt/gnu/bin/guile itself +# exists because /opt/gnu/bin may be an absolute symlink to a store item that +# has been GC'd. test_directory="`mktemp -d`" trap 'rm -rf "$test_directory"' EXIT cd "$test_directory" tar -xf "$the_pack" -test -x opt/gnu/bin/guile +test -L opt/gnu/bin is_available () { # Use the "type" shell builtin to see if the program is on PATH. -- cgit v1.2.3 From aad16cc1965ab3488449c262455eb29b15c77e95 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 7 May 2018 10:44:18 +0200 Subject: pack: Honor package transformation options. Previously they would silently be ignored. * guix/scripts/pack.scm (guix-pack)[manifest-from-args]: Add 'store' parameter. Call 'options->transformation' and use it. Move 'with-store' and 'parameterize' around the 'let'. * tests/guix-pack.sh: Add test using '--with-source'. --- guix/scripts/pack.scm | 67 ++++++++++++++++++++++++++++----------------------- tests/guix-pack.sh | 7 ++++++ 2 files changed, 44 insertions(+), 30 deletions(-) diff --git a/guix/scripts/pack.scm b/guix/scripts/pack.scm index b90bc41bc4..1f493d8a09 100644 --- a/guix/scripts/pack.scm +++ b/guix/scripts/pack.scm @@ -43,6 +43,7 @@ #:autoload (gnu packages guile) (guile2.0-json guile-json) #:use-module (srfi srfi-1) #:use-module (srfi srfi-9) + #:use-module (srfi srfi-26) #:use-module (srfi srfi-37) #:use-module (ice-9 match) #:export (compressor? @@ -397,9 +398,14 @@ Create a bundle of PACKAGE.\n")) (read/eval-package-expression exp)) (x #f))) - (define (manifest-from-args opts) - (let ((packages (filter-map maybe-package-argument opts)) - (manifest-file (assoc-ref opts 'manifest))) + (define (manifest-from-args store opts) + (let* ((transform (options->transformation opts)) + (packages (map (match-lambda + (((? package? package) output) + (list (transform store package) + output))) + (filter-map maybe-package-argument opts))) + (manifest-file (assoc-ref opts 'manifest))) (cond ((and manifest-file (not (null? packages))) (leave (G_ "both a manifest and a package list were given~%"))) @@ -409,33 +415,34 @@ Create a bundle of PACKAGE.\n")) (else (packages->manifest packages))))) (with-error-handling - (let* ((dry-run? (assoc-ref opts 'dry-run?)) - (manifest (manifest-from-args opts)) - (pack-format (assoc-ref opts 'format)) - (name (string-append (symbol->string pack-format) - "-pack")) - (target (assoc-ref opts 'target)) - (bootstrap? (assoc-ref opts 'bootstrap?)) - (compressor (if bootstrap? - bootstrap-xz - (assoc-ref opts 'compressor))) - (tar (if bootstrap? - %bootstrap-coreutils&co - tar)) - (symlinks (assoc-ref opts 'symlinks)) - (build-image (match (assq-ref %formats pack-format) - ((? procedure? proc) proc) - (#f - (leave (G_ "~a: unknown pack format") - format)))) - (localstatedir? (assoc-ref opts 'localstatedir?))) - (with-store store - (parameterize ((%graft? (assoc-ref opts 'graft?)) - (%guile-for-build (package-derivation - store - (if (assoc-ref opts 'bootstrap?) - %bootstrap-guile - (canonical-package guile-2.2))))) + (with-store store + (parameterize ((%graft? (assoc-ref opts 'graft?)) + (%guile-for-build (package-derivation + store + (if (assoc-ref opts 'bootstrap?) + %bootstrap-guile + (canonical-package guile-2.2)) + #:graft? (assoc-ref opts 'graft?)))) + (let* ((dry-run? (assoc-ref opts 'dry-run?)) + (manifest (manifest-from-args store opts)) + (pack-format (assoc-ref opts 'format)) + (name (string-append (symbol->string pack-format) + "-pack")) + (target (assoc-ref opts 'target)) + (bootstrap? (assoc-ref opts 'bootstrap?)) + (compressor (if bootstrap? + bootstrap-xz + (assoc-ref opts 'compressor))) + (tar (if bootstrap? + %bootstrap-coreutils&co + tar)) + (symlinks (assoc-ref opts 'symlinks)) + (build-image (match (assq-ref %formats pack-format) + ((? procedure? proc) proc) + (#f + (leave (G_ "~a: unknown pack format") + format)))) + (localstatedir? (assoc-ref opts 'localstatedir?))) ;; Set the build options before we do anything else. (set-build-options-from-command-line store opts) diff --git a/tests/guix-pack.sh b/tests/guix-pack.sh index d34f72015f..ec56ac96a2 100644 --- a/tests/guix-pack.sh +++ b/tests/guix-pack.sh @@ -83,3 +83,10 @@ guix pack --dry-run --bootstrap -f docker -S /opt/gnu=/ guile-bootstrap # Build a tarball pack of cross-compiled software. Use coreutils because # guile-bootstrap is not intended to be cross-compiled. guix pack --dry-run --bootstrap --target=arm-unknown-linux-gnueabihf coreutils + +# Make sure package transformation options are honored. +mkdir -p "$test_directory" +drv1="`guix pack -n guile 2>&1 | grep pack.*\.drv`" +drv2="`guix pack -n --with-source=guile=$test_directory guile 2>&1 | grep pack.*\.drv`" +test -n "$drv1" +test "$drv1" != "$drv2" -- cgit v1.2.3 From 31060bff0091ada6e62bdec45ca9401f496b7b6b Mon Sep 17 00:00:00 2001 From: Pierre-Antoine Rouby Date: Mon, 7 May 2018 11:44:00 +0200 Subject: gnu: bitlbee: Install development headers. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/messaging.scm (bitlbee)[arguments]: Add 'install-lib' phase. Signed-off-by: Ludovic Courtès --- gnu/packages/messaging.scm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index a3e342ca45..5b9245697e 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -14,6 +14,7 @@ ;;; Copyright © 2017 Theodoros Foradis ;;; Copyright © 2017 Rutger Helling ;;; Copyright © 2018 Leo Famulari +;;; Copyright © 2018 Pierre-Antoine Rouby ;;; ;;; This file is part of GNU Guix. ;;; @@ -181,6 +182,9 @@ end-to-end encryption.") (add-after 'install 'install-etc (lambda* (#:key (make-flags '()) #:allow-other-keys) (zero? (apply system* "make" "install-etc" make-flags)))) + (add-after 'install-etc 'install-lib + (lambda* (#:key (make-flags '()) #:allow-other-keys) + (zero? (apply system* "make" "install-dev" make-flags)))) (replace 'configure ;; bitlbee's configure script does not tolerate many of the ;; variable settings that Guix would pass to it. -- cgit v1.2.3 From b992bfea7491795f540a43bb3b5233d7ebfac8c8 Mon Sep 17 00:00:00 2001 From: Pierre-Antoine Rouby Date: Mon, 7 May 2018 11:47:04 +0200 Subject: gnu: Add bitlbee-discord. * gnu/packages/messaging.scm (bitlbee-discord): New variable. --- gnu/packages/messaging.scm | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 5b9245697e..b90f95da1c 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -203,6 +203,49 @@ identi.ca and status.net).") (home-page "http://www.bitlbee.org/") (license (list license:gpl2+ license:bsd-2)))) +(define-public bitlbee-discord + (package + (name "bitlbee-discord") + (version "0.4.1") + (source (origin + (method url-fetch) + (uri + (string-append "https://github.com/sm00th/bitlbee-discord/" + "archive/" version ".tar.gz")) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1bwqxlg6fwj3749y7w69n9jwsdzf5nl9xqiszbpv9k8x1422i1y1")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'autogen + (lambda _ + (let ((sh (which "sh"))) + (substitute* "autogen.sh" (("/bin/sh") sh)) + (setenv "CONFIG_SHELL" sh) + (zero? (system* "./autogen.sh"))))) + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (invoke "./configure" + (string-append "--with-plugindir=" + (assoc-ref outputs "out") + "/lib/bitlbee/"))))))) + (inputs `(("glib" ,glib))) + (native-inputs `(("pkg-config" ,pkg-config) + ("autoconf" ,autoconf) + ("automake" ,automake) + ("texinfo" ,texinfo) + ("libtool" ,libtool) + ("bitlbee" ,bitlbee) ;needs bitlbee headers + ("bash" ,bash))) + (synopsis "Discord plugin for Bitlbee") + (description "Bitlbee-discord is a plugin for Bitlbee witch provides +access to servers running the Discord protocol.") + (home-page "https://github.com/sm00th/bitlbee-discord/") + (license license:gpl2+))) + (define-public hexchat (package (name "hexchat") -- cgit v1.2.3 From 91a56b4ab5e714e230c0088fb9f5ce0519efe1a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 7 May 2018 12:02:23 +0200 Subject: gnu: gcc > 5: Use 'CPATH' instead of 'C_INCLUDE_PATH' & co. Partly addresses . Reported by julien lepiller , Marius Bakke , and Giel van Schijndel * gnu/packages/gcc.scm (gcc-6)[native-search-paths]: New field. --- gnu/packages/gcc.scm | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index 62b8968823..ba2fce6d37 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -476,7 +476,17 @@ Go. It also includes runtime support libraries for these languages.") "pa" "sh" "tilepro" "xtensa"))))) (inputs `(("isl" ,isl) - ,@(package-inputs gcc-4.7))))) + ,@(package-inputs gcc-4.7))) + + (native-search-paths + ;; We have to use 'CPATH' for GCC > 5, not 'C_INCLUDE_PATH' & co., due to + ;; . + (list (search-path-specification + (variable "CPATH") + (files '("include"))) + (search-path-specification + (variable "LIBRARY_PATH") + (files '("lib" "lib64"))))))) (define-public gcc-7 (package -- cgit v1.2.3 From d26727a143fab0dded1dbc848899270dbacd5dad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 7 May 2018 14:04:19 +0200 Subject: pack: Fix handling of '-e'. Fixes a regression introduced in aad16cc1965ab3488449c262455eb29b15c77e95. Reported by Julien Lepiller. * guix/scripts/pack.scm (guix-pack)[manifest-from-args]: In 'match-lambda', add clause for single packages. * tests/guix-pack.sh: Add test for '-e'. --- guix/scripts/pack.scm | 5 +++-- tests/guix-pack.sh | 7 +++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/guix/scripts/pack.scm b/guix/scripts/pack.scm index 1f493d8a09..0e09a01496 100644 --- a/guix/scripts/pack.scm +++ b/guix/scripts/pack.scm @@ -402,8 +402,9 @@ Create a bundle of PACKAGE.\n")) (let* ((transform (options->transformation opts)) (packages (map (match-lambda (((? package? package) output) - (list (transform store package) - output))) + (list (transform store package) output)) + ((? package? package) + (list (transform store package) "out"))) (filter-map maybe-package-argument opts))) (manifest-file (assoc-ref opts 'manifest))) (cond diff --git a/tests/guix-pack.sh b/tests/guix-pack.sh index ec56ac96a2..5584c10e00 100644 --- a/tests/guix-pack.sh +++ b/tests/guix-pack.sh @@ -35,8 +35,11 @@ export GUIX_BUILD_OPTIONS # Build a tarball with no compression. guix pack --compression=none --bootstrap guile-bootstrap -# Build a tarball (with compression). -guix pack --bootstrap guile-bootstrap +# Build a tarball (with compression). Check that '-e' works as well. +out1="`guix pack --bootstrap guile-bootstrap`" +out2="`guix pack --bootstrap -e '(@ (gnu packages bootstrap) %bootstrap-guile)'`" +test -n "$out1" +test "$out1" = "$out2" # Build a tarball with a symlink. the_pack="`guix pack --bootstrap -S /opt/gnu/bin=bin guile-bootstrap`" -- cgit v1.2.3 From 8c58640d179a26a1a4cde3d8920bd928edb84d1c Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Mon, 7 May 2018 19:27:08 +0300 Subject: Revert "gnu: Add emacs-dumb-jump." MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This package duplicates ‘emacs-dumb-jump’ package from d26727a143fab0dded1dbc848899270dbacd5dad. This reverts commit 89378bb87b5f8cb68fb51a9c19b8fbdc372c65fe. --- gnu/packages/emacs.scm | 29 ----------------------------- 1 file changed, 29 deletions(-) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 622915d790..6b581b1612 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -9583,35 +9583,6 @@ buffer with each of your todos.") "The Fantastic File Finder for Emacs. Find files fast, using helm.") (license license:gpl3+))) -(define-public emacs-dumb-jump - (package - (name "emacs-dumb-jump") - (version "0.5.2") - (source - (origin - (method url-fetch) - (uri (string-append "https://github.com/jacktasia/dumb-jump/archive/" - "v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "07n0xjgpxjpf3vp9gxchkjpydyj0zm166930as0kwiwkhjlsirsf")))) - (build-system emacs-build-system) - (propagated-inputs - `(("emacs-f" ,emacs-f) - ("emacs-s" ,emacs-s) - ("emacs-dash" ,emacs-dash) - ("emacs-popup" ,emacs-popup))) - (home-page "https://github.com/jacktasia/dumb-jump") - (synopsis "Jump to definition for multiple languages without configuration") - (description "Dumb Jump is an Emacs \"jump to definition\" package with -support for multiple programming languages that favors \"just working\" over -speed or accuracy. This means minimal -- and ideally zero -- configuration -with absolutely no stored indexes (TAGS) or persistent background processes. -Dumb Jump performs best with The Silver Searcher `ag` or ripgrep `rg` -installed. Dumb Jump requires at least GNU Emacs 24.3. ") - (license license:gpl3+))) - (define-public emacs-lice-el (let ((commit "4339929927c62bd636f89bb39ea999d18d269250")) (package -- cgit v1.2.3 From 0a540b712baec15d9e8d9686498dae4f08e62da7 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 7 May 2018 20:11:18 +0200 Subject: gnu: libsoup: Update to 2.62.2. * gnu/packages/gnome.scm (libsoup): Update to 2.62.2. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index b5bde0bd4d..9ae04b8695 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2457,7 +2457,7 @@ libxml to ease remote use of the RESTful API.") (define-public libsoup (package (name "libsoup") - (version "2.62.1") + (version "2.62.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/libsoup/" @@ -2465,7 +2465,7 @@ libxml to ease remote use of the RESTful API.") name "-" version ".tar.xz")) (sha256 (base32 - "1mw3b3j4f4ln7hl03jd296rx78dy35hzlq005a21r6qg5sndsdzh")))) + "1dkrz1iwsswscayfmjxqv2q00b87snlq9nxdccn5vck0vbinylwy")))) (build-system gnu-build-system) (outputs '("out" "doc")) (arguments -- cgit v1.2.3 From 3274db41b1f5c19e237c119a41e24b8c13b952f0 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 7 May 2018 20:11:50 +0200 Subject: gnu: webkitgtk: Update to 2.20.2 [fixes CVE-2018-4200]. * gnu/packages/webkit.scm (webkitgtk): Update to 2.20.2. --- gnu/packages/webkit.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm index 4c0c955169..d90124ff17 100644 --- a/gnu/packages/webkit.scm +++ b/gnu/packages/webkit.scm @@ -55,14 +55,14 @@ (define-public webkitgtk (package (name "webkitgtk") - (version "2.20.1") + (version "2.20.2") (source (origin (method url-fetch) (uri (string-append "https://www.webkitgtk.org/releases/" name "-" version ".tar.xz")) (sha256 (base32 - "0nc9dj05dbk31ciip08b3rdsfja7ckc5mgagrj030fafza2k5r23")))) + "1qi6nnj4qidzija1am9xscwjxwfqwhiy7x39ndriqgzh86i97znz")))) (build-system cmake-build-system) (arguments '(#:tests? #f ; no tests -- cgit v1.2.3 From 9b107868f8d14f85d9bf47d02c20f1c922f995de Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 7 May 2018 20:16:27 +0200 Subject: gnu: miniupnpc: Update to 2.1. * gnu/packages/upnp.scm (miniupnpc): Update to 2.1. --- gnu/packages/upnp.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/upnp.scm b/gnu/packages/upnp.scm index 4df65431af..475e1750a8 100644 --- a/gnu/packages/upnp.scm +++ b/gnu/packages/upnp.scm @@ -29,14 +29,14 @@ (define-public miniupnpc (package (name "miniupnpc") - (version "2.0.20180503") + (version "2.1") (source (origin (method url-fetch) (uri (string-append "https://miniupnp.tuxfamily.org/files/" name "-" version ".tar.gz")) (sha256 - (base32 "0dv906ibjdrv4wfrccj36z3lvpvgmcg0dwakhi66fqg6y5l97a5k")))) + (base32 "1ik440yspbp3clr4m01xsl9skwyrzcvzb5nbm3i0g9x53vhbb7z1")))) (build-system gnu-build-system) (native-inputs `(("python" ,python-2))) -- cgit v1.2.3 From 5e5bcc800bd08049dbab24f496fd0cfaa144d91e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 7 May 2018 20:35:51 +0200 Subject: gnu: emacs-rsw-elisp: Improve description. * gnu/packages/emacs.scm (emacs-rsw-elisp)[description]: Wrap code with Texinfo syntax for code. --- gnu/packages/emacs.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 6b581b1612..9b6ccf57a5 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -9746,8 +9746,8 @@ split to display more windows and more buffers, the buffer exits (synopsis "Improved expressions that interactively evaluate Emacs Lisp") (description "This package improves and replaces the GNU Emacs commands that interactively evaluate Emacs Lisp expressions. The new commands replace -standard key bindings and are all prefixed with rsw-elisp-. They work the -same way as the old commands when called non-interactively; only the +standard key bindings and are all prefixed with @code{rsw-elisp-}. They work +the same way as the old commands when called non-interactively; only the interactive behavior should be different.") (license license:gpl3+))) -- cgit v1.2.3 From 7017d87438685ace49db2627736127ca34db06fc Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 7 May 2018 22:00:51 +0300 Subject: doc: Fix typo. * doc/guix.texi (Desktop Services): Use 'any' when refering to more than two desktop environments. --- doc/guix.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/guix.texi b/doc/guix.texi index dc9894173e..dce9f0e1aa 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -12632,7 +12632,7 @@ profile, and extends polkit with the actions from @end deffn Because the GNOME, XFCE and MATE desktop services pull in so many packages, -the default @code{%desktop-services} variable doesn't include either of +the default @code{%desktop-services} variable doesn't include any of them by default. To add GNOME, XFCE or MATE, just @code{cons} them onto @code{%desktop-services} in the @code{services} field of your @code{operating-system}: -- cgit v1.2.3 From db369e918a3691002e22b79e945fc6e68caea3f0 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 7 May 2018 16:21:09 -0400 Subject: gnu: DejaVu fonts: Update the home-page. * gnu/packages/fonts.scm (font-dejavu)[home-page]: Use the new home-page. --- gnu/packages/fonts.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index 8e892da279..19597f0519 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -138,7 +138,7 @@ TrueType (TTF) files.") (let ((conf-dir (string-append (assoc-ref outputs "out") "/share/fontconfig/conf.avail"))) (copy-recursively "fontconfig" conf-dir))))))) - (home-page "http://dejavu-fonts.org/") + (home-page "https://dejavu-fonts.github.io/") (synopsis "Vera font family derivate with additional characters") (description "DejaVu provides an expanded version of the Vera font family aiming for quality and broader Unicode coverage while retaining the original -- cgit v1.2.3 From f6cd8586453291d11351e5e4b196210a5e113967 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 7 May 2018 17:44:21 -0400 Subject: gnu: isync / mbsync: Fix typos in description. * gnu/packages/mail.scm (isync)[description]: Fix typos. --- gnu/packages/mail.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 6aef8ab85f..d6ad333fd4 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -1371,7 +1371,7 @@ hashing schemes plugin for @code{Dovecot}.") (home-page "http://isync.sourceforge.net/") (synopsis "Mailbox synchronization program") (description - "isync/mbsync is command line tool for two-way synchronization of + "isync/mbsync is a command-line tool for two-way synchronization of mailboxes. Currently Maildir and IMAP are supported types.") (license gpl2+))) -- cgit v1.2.3 From 9b557beab95fbd19739c68a44e32ac05d905ad79 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 8 May 2018 01:53:17 +0200 Subject: doc: Fix typo. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * doc/guix.texi (X Window): Fix ‘xinitr ’ typo. --- doc/guix.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/guix.texi b/doc/guix.texi index dce9f0e1aa..4095bdb51b 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -11626,7 +11626,7 @@ Script to run after starting xorg-server. @item @code{xdisplay-stop} (default @code{#~(string-append #$sddm "/share/sddm/scripts/Xstop")}) Script to run before stopping xorg-server. -@item @code{xsession-command} (default: @code{xinitr }) +@item @code{xsession-command} (default: @code{xinitrc}) Script to run before starting a X session. @item @code{xsessions-directory} (default: "/run/current-system/profile/share/xsessions") -- cgit v1.2.3 From e554d43dfcd4f9a3e34fc2d0ebca47b06f99b2fe Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Mon, 7 May 2018 02:06:25 +0530 Subject: gnu: wesnoth: Update to 1.14.0. * gnu/packages/patches/wesnoth-fix-std-bad-cast.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/games.scm (wesnoth): Update to 1.14.0. [source]: Add wesnoth-fix-std-bad-cast.patch to patches. [arguments]: Remove "-DENABLE_STRICT_COMPILATION=OFF" configure flag. [inputs]: Remove sdl-image, sdl-mixer, sdl-net and sdl-ttf. Add openssl and sdl-union of sdl2, sdl2-image, sdl2-mixer and sdl2-ttf. [home-page]: Use HTTPS URI. (wesnoth-server)[inputs]: Remove sdl-net. Add icu4c, openssl and sdl2. [arguments]: Remove delete-data phase. Since wesnoth 1.14.0, configure flag "-DENABLE_GAME=OFF" disables installation of game assets. --- gnu/local.mk | 1 + gnu/packages/games.scm | 39 ++++--------- .../patches/wesnoth-fix-std-bad-cast.patch | 67 ++++++++++++++++++++++ 3 files changed, 80 insertions(+), 27 deletions(-) create mode 100644 gnu/packages/patches/wesnoth-fix-std-bad-cast.patch diff --git a/gnu/local.mk b/gnu/local.mk index bd99883462..6d6663f8b8 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1158,6 +1158,7 @@ dist_patch_DATA = \ %D%/packages/patches/wavpack-CVE-2018-7253.patch \ %D%/packages/patches/wavpack-CVE-2018-7254.patch \ %D%/packages/patches/weechat-python.patch \ + %D%/packages/patches/wesnoth-fix-std-bad-cast.patch \ %D%/packages/patches/wicd-bitrate-none-fix.patch \ %D%/packages/patches/wicd-get-selected-profile-fix.patch \ %D%/packages/patches/wicd-urwid-1.3.patch \ diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index e4f87a6c46..b2d106e907 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -1809,7 +1809,7 @@ falling, themeable graphics and sounds, and replays.") (define-public wesnoth (package (name "wesnoth") - (version "1.12.6") + (version "1.14.0") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/wesnoth/wesnoth-" @@ -1818,17 +1818,11 @@ falling, themeable graphics and sounds, and replays.") name "-" version ".tar.bz2")) (sha256 (base32 - "0kifp6g1dsr16m6ngjq2hx19h851fqg326ps3krnhpyix963h3x5")))) + "09niq53y17faizhmd98anx3dha7hvacvj9a0a64lg8wn915cm0bw")) + (patches (search-patches "wesnoth-fix-std-bad-cast.patch")))) (build-system cmake-build-system) (arguments - '(#:tests? #f ; no check target - #:configure-flags - ;; XXX: Failed to compile with '-Werror=old-style-cast'. - ;; boost/mpl/assert.hpp:313:58: error: - ;; use of old-style cast [-Werror=old-style-cast] - ;; [...] - ;; cc1plus: all warnings being treated as errors - '("-DENABLE_STRICT_COMPILATION=OFF"))) + `(#:tests? #f)) ; no check target (native-inputs `(("gettext" ,gettext-minimal) ("pkg-config" ,pkg-config))) @@ -1837,12 +1831,10 @@ falling, themeable graphics and sounds, and replays.") ("dbus" ,dbus) ("fribidi" ,fribidi) ("libvorbis" ,libvorbis) + ("openssl" ,openssl) ("pango" ,pango) - ("sdl-image" ,sdl-image) - ("sdl-mixer" ,sdl-mixer) - ("sdl-net" ,sdl-net) - ("sdl-ttf" ,sdl-ttf))) - (home-page "http://www.wesnoth.org/") + ("sdl-union" ,(sdl-union (list sdl2 sdl2-image sdl2-mixer sdl2-ttf))))) + (home-page "https://www.wesnoth.org/") (synopsis "Turn-based strategy game") (description "The Battle for Wesnoth is a fantasy, turn based tactical strategy game, @@ -1861,19 +1853,12 @@ next campaign.") (name "wesnoth-server") (inputs `(("boost" ,boost) - ("sdl-net" ,sdl-net))) + ("icu4c" ,icu4c) + ("openssl" ,openssl) + ("sdl2" ,sdl2))) (arguments - (append - (substitute-keyword-arguments (package-arguments wesnoth) - ((#:configure-flags configure-flags) - `(append ,configure-flags (list "-DENABLE_GAME=OFF")))) - `(#:phases - (modify-phases %standard-phases - ;; Delete game assets not required by the server. - (add-after 'install 'delete-data - (lambda* (#:key outputs #:allow-other-keys) - (delete-file-recursively (string-append (assoc-ref outputs "out") - "/share/wesnoth")))))))) + `(#:configure-flags '("-DENABLE_GAME=OFF") + ,@(package-arguments wesnoth))) (synopsis "Dedicated @emph{Battle for Wesnoth} server") (description "This package contains a dedicated server for @emph{The Battle for Wesnoth}."))) diff --git a/gnu/packages/patches/wesnoth-fix-std-bad-cast.patch b/gnu/packages/patches/wesnoth-fix-std-bad-cast.patch new file mode 100644 index 0000000000..18328ed018 --- /dev/null +++ b/gnu/packages/patches/wesnoth-fix-std-bad-cast.patch @@ -0,0 +1,67 @@ +From 18e5ea50a7136cb3686c5a7c51c111ccce73dc54 Mon Sep 17 00:00:00 2001 +From: Iris Morelle +Date: Sun, 6 May 2018 16:10:42 -0300 +Subject: [PATCH] i18n: Blind fix attempt for std::bad_cast being thrown on + Windows + +Several reports on Steam and our forums point at std::bad_cast being +thrown when accessing Preferences and the Multiplayer menu amongst +others. It's possible that the locale configuration on those systems is +not quite right, and compare() and icompare() are able to throw +std::bad_cast when this happens as they both use std::use_facet(). + +Note that much like the macOS/iOS version of icompare(), this stopgap +patch doesn't attempt to provide any form of case-insensitive fallback +and just uses a case-sensitive comparison instead. +--- + src/gettext_boost.cpp | 29 +++++++++++++++++++++++++++-- + 1 file changed, 27 insertions(+), 2 deletions(-) + +diff --git a/src/gettext_boost.cpp b/src/gettext_boost.cpp +index 3cc7690d5ef..fb04ffeea90 100644 +--- a/src/gettext_boost.cpp ++++ b/src/gettext_boost.cpp +@@ -423,7 +423,19 @@ void set_language(const std::string& language, const std::vector* / + int compare(const std::string& s1, const std::string& s2) + { + std::lock_guard lock(get_mutex()); +- return std::use_facet>(get_manager().get_locale()).compare(s1.c_str(), s1.c_str() + s1.size(), s2.c_str(), s2.c_str() + s2.size()); ++ ++ try { ++ return std::use_facet>(get_manager().get_locale()).compare(s1.c_str(), s1.c_str() + s1.size(), s2.c_str(), s2.c_str() + s2.size()); ++ } catch(const std::bad_cast&) { ++ static bool bad_cast_once = false; ++ ++ if(!bad_cast_once) { ++ ERR_G << "locale set-up for compare() is broken, falling back to std::string::compare()\n"; ++ bad_cast_once = true; ++ } ++ ++ return s1.compare(s2); ++ } + } + + int icompare(const std::string& s1, const std::string& s2) +@@ -433,8 +445,21 @@ int icompare(const std::string& s1, const std::string& s2) + return compare(s1, s2); + #else + std::lock_guard lock(get_mutex()); +- return std::use_facet>(get_manager().get_locale()).compare( ++ ++ try { ++ return std::use_facet>(get_manager().get_locale()).compare( + bl::collator_base::secondary, s1, s2); ++ } catch(const std::bad_cast&) { ++ static bool bad_cast_once = false; ++ ++ if(!bad_cast_once) { ++ ERR_G << "locale set-up for icompare() is broken, falling back to std::string::compare()\n"; ++ bad_cast_once = true; ++ } ++ ++ // FIXME: not even lazily case-insensitive ++ return s1.compare(s2); ++ } + #endif + } + -- cgit v1.2.3 From a288ab1f39354dffc60af2ee2117a51345f4aa50 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 8 May 2018 13:44:35 +0300 Subject: gnu: love: Remove unnecessary (guix build utils) module. * gnu/packages/game-development.scm (love)[source]: Remove included (guix build utils) module. --- gnu/packages/game-development.scm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index a195b41d7d..bdbfda0169 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -557,8 +557,7 @@ archive on a per-file basis.") "love-" version "-linux-src.tar.gz")) (sha256 (base32 - "1pkwiszmjs0xrwk0wqbc5cp9108b1y8gwsid0gqk1s0x09q9lpmw")) - (modules '((guix build utils))))) + "1pkwiszmjs0xrwk0wqbc5cp9108b1y8gwsid0gqk1s0x09q9lpmw")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) -- cgit v1.2.3 From bbc94ed03a219c10740921f64eea2f630458f538 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Mon, 16 Apr 2018 18:08:30 +0530 Subject: gnu: Add inxi. * gnu/packages/admin.scm (inxi): New variable. Signed-off-by: Oleg Pykhalov --- gnu/packages/admin.scm | 121 ++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 120 insertions(+), 1 deletion(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 4a2fe145f5..3d9ada84d2 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -50,8 +50,11 @@ #:use-module (guix build-system trivial) #:use-module (gnu packages) #:use-module (gnu packages base) + #:use-module (gnu packages bash) #:use-module (gnu packages check) #:use-module (gnu packages cyrus-sasl) + #:use-module (gnu packages dns) + #:use-module (gnu packages file) #:use-module (gnu packages ncurses) #:use-module (gnu packages readline) #:use-module (gnu packages linux) @@ -70,6 +73,7 @@ #:use-module (gnu packages gnupg) #:use-module (gnu packages bison) #:use-module (gnu packages flex) + #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages openldap) #:use-module (gnu packages mcrypt) @@ -97,7 +101,8 @@ #:use-module (gnu packages xml) #:use-module (gnu packages boost) #:use-module (gnu packages elf) - #:use-module (gnu packages mpi)) + #:use-module (gnu packages mpi) + #:use-module (gnu packages web)) (define-public aide (package @@ -2652,3 +2657,117 @@ Python loading in HPC environments.") ;; This package supports x86_64 and PowerPC64 (supported-systems '("x86_64-linux")) (license license:lgpl2.1))) + +(define-public inxi-minimal + (let ((real-name "inxi")) + (package + (name "inxi-minimal") + (version "3.0.04-1") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/smxi/inxi" + "/archive/" version "/inxi.tar.gz")) + (file-name (string-append real-name "-" version ".tar.gz")) + (sha256 + (base32 + "14zxdsjgh9dbijmpp0hhvg2yiqqfwnqgcc6x8dpl1v15z1h1r7pc")))) + (build-system trivial-build-system) + (inputs + `(("bash" ,bash) + ("perl" ,perl))) + (native-inputs + `(("gzip" ,gzip) + ("tar" ,tar))) + (arguments + `(#:modules + ((guix build utils) + (ice-9 match) + (srfi srfi-26)) + #:builder + (begin + (use-modules (guix build utils) + (ice-9 match) + (srfi srfi-26)) + (setenv "PATH" (string-append + (assoc-ref %build-inputs "bash") "/bin" ":" + (assoc-ref %build-inputs "gzip") "/bin" ":" + (assoc-ref %build-inputs "perl") "/bin" ":" + (assoc-ref %build-inputs "tar") "/bin" ":")) + (invoke "tar" "xvf" (assoc-ref %build-inputs "source")) + (with-directory-excursion ,(string-append real-name "-" version) + (with-fluids ((%default-port-encoding #f)) + (substitute* "inxi" (("/usr/bin/env perl") (which "perl")))) + (let ((bin (string-append %output "/bin"))) + (install-file "inxi" bin) + (wrap-program (string-append bin "/inxi") + `("PATH" ":" = + ("$PATH" + ,@(map (lambda (input) + (match input + ((name . store) + (let ((store-append + (cut string-append store <>))) + (cond + ((member name '("util-linux")) + (string-append (store-append "/bin") ":" + (store-append "/sbin"))) + ((member name '("dmidecode" "iproute2")) + (store-append "/sbin")) + (else (store-append "/bin"))))))) + %build-inputs))) + `("PERL5LIB" ":" = + ,(delete + "" + (map (match-lambda + (((? (cut string-prefix? "perl-" <>) name) . dir) + (string-append dir "/lib/perl5/site_perl")) + (_ "")) + %build-inputs))))) + (invoke "gzip" "inxi.1") + (install-file "inxi.1.gz" + (string-append %output "/share/doc/man/man1"))) + #t))) + (home-page "https://smxi.org/docs/inxi.htm") + (synopsis "Full featured system information script") + (description "Inxi is a system information script that can display +various things about your hardware and software to users in an IRC chatroom or +support forum. It runs with the /exec command in most IRC clients.") + (license license:gpl3+)))) + +(define-public inxi + (package + (inherit inxi-minimal) + (name "inxi") + (inputs + `(("dmidecode" ,dmidecode) + ("file" ,file) + ("bind:utils" ,isc-bind "utils") ; dig + ("gzip" ,gzip) + ("iproute2" ,iproute) ; ip + ("kmod" ,kmod) ; modinfo + ("lm-sensors" ,lm-sensors) + ("mesa-utils" ,mesa-utils) + ("pciutils" ,pciutils) + ("procps" ,procps) + ("tar" ,tar) + ("tree" ,tree) + ("util-linux" ,util-linux) ; lsblk + ("usbutils" ,usbutils) ; lsusb + ("wmctrl" ,wmctrl) + ("xdpyinfo" ,xdpyinfo) + ("xprop" ,xprop) + ("xrandr" ,xrandr) + ("coreutils" ,coreutils) ; uptime + ("inetutils" ,inetutils) ; ifconfig + ("perl-cpanel-json-xs" ,perl-cpanel-json-xs) + ("perl-http-tiny" ,perl-http-tiny) + ("perl-io-socket-ssl" ,perl-io-socket-ssl) + ("perl-json-xs" ,perl-json-xs) + ("perl-time-hires" ,perl-time-hires) + ;; TODO: Add more inputs: + ;; ipmi-sensors + ;; hddtemp + ;; perl-xml-dumper + ;; ipmitool + ,@(package-inputs inxi-minimal))))) -- cgit v1.2.3 From 9e2529e112e5d060706436dcca05487017b71a1f Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Tue, 8 May 2018 23:28:46 +0300 Subject: gnu: emacs-helm-eww: Fix byte compilation. * gnu/packages/emacs.scm (emacs-helm-eww)[propagated-inputs]: Add 'emacs-helm'. --- gnu/packages/emacs.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 9b6ccf57a5..ff0a1c990c 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -10001,6 +10001,8 @@ keep Parens and Indentation inline with one another.") (sha256 (base32 "1x442ylrr7cx587s4rvfh187h3qbkr79qp95qr57a4igxkkw6183")))) + (propagated-inputs + `(("emacs-helm" ,emacs-helm))) (build-system emacs-build-system) (home-page "https://github.com/emacs-helm/helm-eww/") (synopsis "Helm interface to EWW") -- cgit v1.2.3 From 0715a9e65d3d7e2b6ec6c80388353d13d28d51f0 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Tue, 8 May 2018 23:31:05 +0300 Subject: gnu: emacs-helm-firefox: Fix byte compilation. * gnu/packages/emacs.scm (emacs-helm-firefox)[propagated-inputs]: Add 'emacs-helm'. --- gnu/packages/emacs.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index ff0a1c990c..f5d4ff3052 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -9894,6 +9894,8 @@ compilation/grep buffers. Works with @code{wgrep}, @code{ack}, @code{ag}, (sha256 (base32 "08mjsi2f9s29fkk35cj1rrparjnkm836qmbfdwdz7y51f9varjbs")))) + (propagated-inputs + `(("emacs-helm" ,emacs-helm))) (build-system emacs-build-system) (home-page "https://github.com/emacs-helm/helm-firefox") (synopsis "Display firefox bookmarks with Emacs Helm interface") -- cgit v1.2.3 From d848f55e5c2d473a3e7d0b3a3c0ce1ead7d6eaa7 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Tue, 8 May 2018 23:31:59 +0300 Subject: gnu: emacs-helm-gtags: Fix byte compilation. * gnu/packages/emacs.scm (emacs-helm-gtags)[propagated-inputs]: Add 'emacs-helm'. --- gnu/packages/emacs.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index f5d4ff3052..0823aae25a 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -8385,6 +8385,8 @@ arXiv, Google Scholar, Library of Congress, etc. (base32 "1a10snhg6nnnan6w9a7mcziy26vxbsr3c35i0gcarnkdp2yqng36")))) (build-system emacs-build-system) + (propagated-inputs + `(("emacs-helm" ,emacs-helm))) (home-page "https://github.com/syohex/emacs-helm-gtags") (synopsis "Emacs Helm interface to GNU Global") (description -- cgit v1.2.3 From ec6f4bdabe341d03b10600a39069dcfd33ca046a Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Tue, 8 May 2018 23:45:32 +0300 Subject: gnu: emacs-magit-org-todos-el: Fix byte compilation. * gnu/packages/emacs.scm (emacs-magit-org-todos-el)[propagated-inputs]: Add 'magit'. --- gnu/packages/emacs.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 0823aae25a..6d46506816 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -9552,6 +9552,8 @@ functions for defining emms simple players of mpv.") (sha256 (base32 "0kdp7k7jnnrkhsg0xh1c3h7iz0vgi120gf5xwl1hxy61avivnxrn")))) + (propagated-inputs + `(("magit" ,magit))) (build-system emacs-build-system) (home-page "https://github.com/danielma/magit-org-todos.el") (synopsis "Get todo.org into Emacs Magit status") -- cgit v1.2.3 From f1f6f227264999bb362a95e6ec74badcb7de34db Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Tue, 8 May 2018 23:52:24 +0300 Subject: gnu: emacs-helm-shell-history: Fix byte compilation. * gnu/packages/emacs.scm (emacs-helm-shell-history)[propagated-inputs]: Add 'emacs-helm'. --- gnu/packages/emacs.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 6d46506816..4ad5155605 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -9187,6 +9187,8 @@ CSS, JavaScript, JSON.") ("(defvar helm-shell-history-file" `(expand-file-name "~/.bash_history")))) #t))))) + (propagated-inputs + `(("emacs-helm" ,emacs-helm))) (home-page "https://github.com/yuutayamada/helm-shell-history") (synopsis "Find shell history with Emacs Helm") (description "This package provides an Emacs Helm interface to search -- cgit v1.2.3