From b7c1c2b85694dd1ae168fdf317fdbda46d647ebe Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Wed, 12 Dec 2018 01:15:01 +0100 Subject: gnu: rust: Increase build timeouts. * gnu/packages/rust.scm (rust-1.19)[properties]: New field. (rust-1.20)[properties]: New field. --- gnu/packages/rust.scm | 3 +++ 1 file changed, 3 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index ef40431733..501736d898 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -191,6 +191,8 @@ safety and thread safety guarantees.") (source (rust-source version "0l8c14qsf42rmkqy92ahij4vf356dbyspxcips1aswpvad81y8qm" #:patches '("rust-1.19-mrustc.patch"))) (outputs '("out" "cargo")) + (properties '((timeout . 72000) ;20 hours + (max-silent-time . 18000))) ;5 hours (for armel) (arguments `(#:imported-modules ,%cargo-build-system-modules ;for `generate-checksums' #:modules ((guix build utils) (ice-9 match) (guix build gnu-build-system)) @@ -427,6 +429,7 @@ safety and thread safety guarantees.") (package (inherit base-rust) (outputs '("out" "doc" "cargo")) + (properties '()) (arguments (substitute-keyword-arguments (package-arguments rust-1.19) ((#:phases phases) -- cgit v1.2.3 From 8d956d8600d333d33b10c946b023bb49ea0779e6 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Tue, 11 Dec 2018 18:29:38 -0500 Subject: gnu: icecat: Enable Stylo CSS engine. * gnu/packages/gnuzilla.scm (icecat)[native-inputs]: Add 'llvm-3.9.1' and 'clang-3.9.1'. [arguments]: In the configure-flags, use quasiquote, remove "--disable-stylo", and add "--with-clang-path=..." and "--with-libclang-path=...". Add 'augment-CPLUS_INCLUDE_PATH' phase. In the custom 'configure' phase, set the CC environment variable to "gcc". --- gnu/packages/gnuzilla.scm | 37 +++++++++++++++++++++++++++++++++---- 1 file changed, 33 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index d6b1f4c2d6..1c3670bd9a 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -62,6 +62,7 @@ #:use-module (gnu packages gl) #:use-module (gnu packages assembly) #:use-module (gnu packages rust) + #:use-module (gnu packages llvm) #:use-module (gnu packages icu4c) #:use-module (gnu packages video) #:use-module (gnu packages xiph) @@ -620,6 +621,8 @@ security standards.") ;; Icecat 60 checkes for rust>=1.24 `(("rust" ,rust-1.24) ("cargo" ,rust-1.24 "cargo") + ("llvm" ,llvm-3.9.1) + ("clang" ,clang-3.9.1) ("perl" ,perl) ("python" ,python-2) ; Python 3 not supported ("python2-pysqlite" ,python2-pysqlite) @@ -639,7 +642,7 @@ security standards.") #:imported-modules ,%cargo-build-system-modules ;for `generate-checksums' - #:configure-flags '("--enable-default-toolkit=cairo-gtk3" + #:configure-flags `("--enable-default-toolkit=cairo-gtk3" "--with-distribution-id=org.gnu" @@ -653,14 +656,25 @@ security standards.") "--disable-eme" "--disable-gconf" - ;; Stylo requires LLVM/clang. For now, disable it. - "--disable-stylo" - ;; Building with debugging symbols takes ~5GiB, so ;; disable it. "--disable-debug" "--disable-debug-symbols" + ;; Clang is needed to build Stylo, Mozilla's new + ;; CSS engine. We must specify the clang paths + ;; manually, because otherwise the Mozilla build + ;; system looks in the directories returned by + ;; llvm-config --bindir and llvm-config --libdir, + ;; which return paths in the llvm package where + ;; clang is not found. + ,(string-append "--with-clang-path=" + (assoc-ref %build-inputs "clang") + "/bin/clang") + ,(string-append "--with-libclang-path=" + (assoc-ref %build-inputs "clang") + "/lib") + ;; Hack to work around missing ;; "unofficial" branding in icecat. "--enable-official-branding" @@ -754,6 +768,20 @@ security standards.") (generate-checksums dir null-file))) (find-files "third_party/rust" ".cargo-checksum.json"))) #t)) + (add-before 'configure 'augment-CPLUS_INCLUDE_PATH + (lambda* (#:key build inputs #:allow-other-keys) + ;; Here, we add additional entries to CPLUS_INCLUDE_PATH, to work + ;; around a problem that otherwise occurs when attempting to + ;; build Stylo, which requires Rust and Clang. Without these + ;; additional entries, errors occur during the build indicating + ;; that the and "c++config.h" headers cannot be found. + ;; Note that the 'build' keyword argument contains the GNU + ;; triplet, e.g. "x86_64-unknown-linux-gnu". + (let ((gcc (assoc-ref inputs "gcc"))) + (setenv "CPLUS_INCLUDE_PATH" + (string-append gcc "/include/c++" ":" + gcc "/include/c++/" build ":" + (getenv "CPLUS_INCLUDE_PATH")))))) (replace 'configure ;; configure does not work followed by both "SHELL=..." and @@ -770,6 +798,7 @@ security standards.") (setenv "SHELL" bash) (setenv "CONFIG_SHELL" bash) (setenv "AUTOCONF" (which "autoconf")) ; must be autoconf-2.13 + (setenv "CC" "gcc") ; apparently needed when Stylo is enabled (mkdir "../build") (chdir "../build") (format #t "build directory: ~s~%" (getcwd)) -- cgit v1.2.3 From 29eb0bc76cba780fa0455049d52be1849759b5f4 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Tue, 11 Dec 2018 19:13:17 -0500 Subject: gnu: icecat: Relabel patches to reflect CVE assignments. Document that we include fixes for CVE-2018-17466, CVE-2018-18492, CVE-2018-18493, CVE-2018-18498, and 3 out of 10 changesets for CVE-2018-12405. * gnu/packages/gnuzilla.scm (icecat)[source]: Relabel patches to reflect CVE assignments. --- gnu/packages/gnuzilla.scm | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 1c3670bd9a..870d176851 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -507,14 +507,14 @@ security standards.") (search-patch "icecat-use-system-media-libs.patch") (mozilla-patch "icecat-bug-1464061.patch" "d28761dbff18" "1f58rzwx4s1af66fdwn9lgkcd1ksmq8kn8imvf78p90jqi24h7b4") (mozilla-patch "icecat-bug-1479853.patch" "4faeb696dd06" "12891xx9c15s6kby6d3zk64v5nqgaq7sw597zv1fkd3a6x69hlva") - (mozilla-patch "icecat-bug-1488295.patch" "12ba39f69876" "1piyq44f0xa0a9z2748aqwpaziaxwp61d86gyhalbyag8lcxfb3p") - (mozilla-patch "icecat-bug-1500011.patch" "a0adabeedf26" "0f5wazha3zxzhy2j8f93hx62l9p02b1p40vi07qah3ar67h4ccj9") - (mozilla-patch "icecat-bug-1503082.patch" "19604eb26230" "1wqxgph4z14ijhk2j2m4av5p6gx72d02lzz83q6yy0k065kw8psb") - (mozilla-patch "icecat-bug-1499861.patch" "98737ab09270" "0fyl6wv0jxcxpkfpsff46y93k49n8lrw0k7c1p45g8da015dx27a") - (mozilla-patch "icecat-bug-1504452.patch" "1cf7d80355d5" "19jp4x32vyxam54d1r9fm7jwf6krhhf3xazfqmxb9aw4iwdil7dl") - (mozilla-patch "icecat-bug-1494752.patch" "c264774b8913" "1hxyi131x8jwawrq90cgkph833iv9ixrdrgzl1r978gbzwq10xz2") + (mozilla-patch "icecat-CVE-2018-17466.patch" "12ba39f69876" "1piyq44f0xa0a9z2748aqwpaziaxwp61d86gyhalbyag8lcxfb3p") + (mozilla-patch "icecat-CVE-2018-18498.patch" "a0adabeedf26" "0f5wazha3zxzhy2j8f93hx62l9p02b1p40vi07qah3ar67h4ccj9") + (mozilla-patch "icecat-CVE-2018-12405-pt01.patch" "19604eb26230" "1wqxgph4z14ijhk2j2m4av5p6gx72d02lzz83q6yy0k065kw8psb") + (mozilla-patch "icecat-CVE-2018-18492.patch" "98737ab09270" "0fyl6wv0jxcxpkfpsff46y93k49n8lrw0k7c1p45g8da015dx27a") + (mozilla-patch "icecat-CVE-2018-18493.patch" "1cf7d80355d5" "19jp4x32vyxam54d1r9fm7jwf6krhhf3xazfqmxb9aw4iwdil7dl") + (mozilla-patch "icecat-CVE-2018-12405-pt02.patch" "c264774b8913" "1hxyi131x8jwawrq90cgkph833iv9ixrdrgzl1r978gbzwq10xz2") (mozilla-patch "icecat-bug-1477773.patch" "ec13fda7c9b0" "0zj7aylgw55g0y7plaafn5gq8jwcsdr1bpdxacs0hq914nm8zy9z") - (mozilla-patch "icecat-bug-1500759.patch" "5e1a9644aeef" "1qimrpgyrd8zkiri7w57j0aymk20y9b34am5w7rvr6qj1lhrbfla") + (mozilla-patch "icecat-CVE-2018-12405-pt03.patch" "5e1a9644aeef" "1qimrpgyrd8zkiri7w57j0aymk20y9b34am5w7rvr6qj1lhrbfla") (mozilla-patch "icecat-bug-1485655.patch" "9055726e2d89" "1pppxr94zqh6zmi2mn1ih21qap09vk5ivbhnwxqr8iszvygjg44g") (mozilla-patch "icecat-bug-1410214.patch" "9e641345e2ef" "0542xss2jdb8drh4g50cfy32l300x69dyywgx3dqs03vgr3qplxy"))) (modules '((guix build utils))) -- cgit v1.2.3 From 46e613e3e58a4c483562c199ab80687eccb62721 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Tue, 11 Dec 2018 19:16:04 -0500 Subject: gnu: icecat: Add fixes from upstream mozilla-esr60 [security-fixes]. Includes fixes for CVE-2018-18494 and the remaining 7 out of 10 changesets for CVE-2018-12405. * gnu/packages/gnuzilla.scm (icecat)[source]: Add selected changesets from the upstream mozilla-esr60 repository. --- gnu/packages/gnuzilla.scm | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 870d176851..9eb989a0b8 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -516,7 +516,29 @@ security standards.") (mozilla-patch "icecat-bug-1477773.patch" "ec13fda7c9b0" "0zj7aylgw55g0y7plaafn5gq8jwcsdr1bpdxacs0hq914nm8zy9z") (mozilla-patch "icecat-CVE-2018-12405-pt03.patch" "5e1a9644aeef" "1qimrpgyrd8zkiri7w57j0aymk20y9b34am5w7rvr6qj1lhrbfla") (mozilla-patch "icecat-bug-1485655.patch" "9055726e2d89" "1pppxr94zqh6zmi2mn1ih21qap09vk5ivbhnwxqr8iszvygjg44g") - (mozilla-patch "icecat-bug-1410214.patch" "9e641345e2ef" "0542xss2jdb8drh4g50cfy32l300x69dyywgx3dqs03vgr3qplxy"))) + (mozilla-patch "icecat-bug-1410214.patch" "9e641345e2ef" "0542xss2jdb8drh4g50cfy32l300x69dyywgx3dqs03vgr3qplxy") + + (mozilla-patch "icecat-CVE-2018-12405-pt04.patch" "6398541ec302" "1c2yi7mkg3d5afxsgj9fp3zq8yhkmphrll5d60d5xsdv88kqqiyf") + (mozilla-patch "icecat-bug-1496736.patch" "3bed863ee656" "038k7jk3yp16410crwfdvhyb2vis49c6bplrfr83v51885cqldar") + (mozilla-patch "icecat-bug-1498765.patch" "a08c8493ba19" "0bwg4vg03j962lb9q8ihpiy4rmygykf1q9ij8x7h34q7hg43yjya") + (mozilla-patch "icecat-CVE-2018-12405-pt05.patch" "ee204e26690e" "1scs45xhlr1mwv6x2q6n22363f42by8cjmifqwzlikggs21f5mcq") + (mozilla-patch "icecat-bug-1507035.patch" "cec8b58ab3fe" "1f131ibpkrhsa44l822hnm5qgvapbs3i9pj25iimdwvr933winz8") + (mozilla-patch "icecat-bug-1501680.patch" "282c6bb81562" "1zgw7l5zmni8468y3f6cip1nlw63cfdd9vv9b00cbrgy96d1q2cp") + (mozilla-patch "icecat-bug-1500310.patch" "b3a439a26186" "0mrjxcmrlv04fyl36dwxk97dw08g2hlikvw2hfa1l0y8zsc4bgw8") + (mozilla-patch "icecat-bug-1500366.patch" "abd59256c4e3" "1jgwh2v4kwb6kf2h7mwf128w1k1jj119bfhlgqpmn9ami35wpzf3") + (mozilla-patch "icecat-bug-1493080.patch" "a7cabf306d05" "1n7wv67rcaz8wj31jc77ssjdj3kb61gdg7pigj828c5z2cgns1k5") + (mozilla-patch "icecat-CVE-2018-12405-pt06.patch" "8bbf80948b50" "1nvc69zgz9nvbw1pwxkil1fx4cxxpr6bsjrpp6l2kv7jhgax1bqk") + (mozilla-patch "icecat-bug-1507564.patch" "60619cc47b10" "09fanqr08kqgraw4xp7y2az4jc7ia8nn200rqjfj20vmkyjz97j3") + (mozilla-patch "icecat-bug-1507730.patch" "dd0f01818b9c" "14ziq1bm72n58xrvsgzpjj5z6ifpvi70r5jfhbkbj69mf4y4cx2z") + (mozilla-patch "icecat-CVE-2018-12405-pt07.patch" "a73a46ddc848" "1bvvyav3xyn6rgn6haicinxn0dasl9dyc1i37fyb7wr5wcpahybs") + + (mozilla-patch "icecat-CVE-2018-18494.patch" "a72ec8e21577" "095zghmwdcbaid5426p9vpl757d8sfbsvgn201bjm7nhm03m4z7i") + (mozilla-patch "icecat-CVE-2018-12405-pt08.patch" "b6d0fc61fd0b" "0059avawxi4s4747plybjsjq8j2h4z7amw05p28xyg95a2njwnaa") + (mozilla-patch "icecat-bug-1499028.patch" "a62ede2dd3bc" "0ikmnibni8bdvpr9p42wskyyic08vzqdz5qr028bqzyg5119gily") + (mozilla-patch "icecat-bug-1426574.patch" "0db86656655b" "0kmccb4ccdzbzncwklx7w1bg7r61zwl2wnfp67vl27hm9xykbck7") + (mozilla-patch "icecat-CVE-2018-12405-pt09.patch" "20e31905de62" "0b5a441645wy3q4asaygvdq0inrxmxrh33cpgdp6ngflq9p2i6h0") + (mozilla-patch "icecat-CVE-2018-12405-pt10.patch" "c2832f98fe51" "0b4jfjfdyrihwjdfavd54hn9kdg2f017lmfr7mj2llp71flxwwj7") + (mozilla-patch "icecat-bug-1511495.patch" "d428d2b8f585" "1f9xs0bjhbphvkv60cnvz34sr2rv38jzvi47wh3nablg41yjpdrk"))) (modules '((guix build utils))) (snippet '(begin -- cgit v1.2.3 From 0226dca7c9de3ed0d6ddb52d4003c3ffb6e4a415 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Tue, 11 Dec 2018 21:58:21 -0600 Subject: gnu: youtube-viewer: Update to 3.5.0. * gnu/packages/video.scm (youtube-viewer): Update to 3.5.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 fc6caf3ff8..15702b4e2a 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1496,7 +1496,7 @@ audio, images) from the Web. It can use either mpv or vlc for playback.") (define-public youtube-viewer (package (name "youtube-viewer") - (version "3.4.1") + (version "3.5.0") (source (origin (method git-fetch) (uri (git-reference @@ -1505,7 +1505,7 @@ audio, images) from the Web. It can use either mpv or vlc for playback.") (file-name (git-file-name name version)) (sha256 (base32 - "0axgb95lx81psgrb2a5rfdd8gl4mhsrzf41jas6l58d1xkaj54ri")))) + "1s7hv2a46cx2nbdykrijqfh8hdkf3zqn6q8sg3ajnnc5agaspyrg")))) (build-system perl-build-system) (native-inputs `(("perl-module-build" ,perl-module-build))) -- cgit v1.2.3 From b2fb40de984cf2f523ac08edc04d41b7d4c01058 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Tue, 11 Dec 2018 23:59:17 -0600 Subject: gnu: onionshare: Update to 1.3.1. * gnu/packages/tor.scm (onionshare): Update to 1.3.1. [arguments]: Remove unnecessary "get_resource_path" substitutions, which is handled fine by the single substitution in "onionshare/common.py". Fix install location in .desktop. Adjust test runner in 'tests' phase. [native-inputs]: "python-nose" -> "python-pytest". --- gnu/packages/tor.scm | 49 +++++++++---------------------------------------- 1 file changed, 9 insertions(+), 40 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm index a9bbebcd13..764ee52b0a 100644 --- a/gnu/packages/tor.scm +++ b/gnu/packages/tor.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2016, 2017, 2018 Efraim Flashner ;;; Copyright © 2016, 2017 Nils Gillmann ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice -;;; Copyright © 2017 Eric Bavier +;;; Copyright © 2017, 2018 Eric Bavier ;;; Copyright © 2017 Rutger Helling ;;; Copyright © 2018 Ricardo Wurmus ;;; @@ -162,7 +162,7 @@ networks.") (define-public onionshare (package (name "onionshare") - (version "0.9.2") + (version "1.3.1") (source (origin (method git-fetch) @@ -172,7 +172,7 @@ networks.") (file-name (git-file-name name version)) (sha256 (base32 - "1nzr6m3jp04p1i8b652s27zv0xhybl3zwcn5r6l9h0f7d7x4iglv")))) + "02zic4cxwrcfdg22dq9c2rzni3l18wynjxd38scc59s37vlw7w2r")))) (build-system python-build-system) (arguments `(#:phases @@ -181,55 +181,24 @@ networks.") (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (onionshare (string-append out "/share/onionshare"))) - (substitute* "onionshare/strings.py" - ;; correct the locale directory - (("helpers.get_resource_path\\('locale'\\)") - (string-append "'" onionshare "/locale'"))) - (substitute* "onionshare/helpers.py" - ;; correct the location of version.txt - (("get_resource_path\\('version.txt'\\)") - (string-append "'" onionshare "/version.txt'")) - (("get_resource_path\\('wordlist.txt'\\)") - (string-append "'" onionshare "/wordlist.txt'"))) - (substitute* "onionshare/web.py" - ;; fix the location of the html files - (("helpers.get_resource_path\\('html/denied.html'\\)") - (string-append "'" onionshare "/html/denied.html'")) - (("helpers.get_resource_path\\('html/404.html'\\)") - (string-append "'" onionshare "/html/404.html'")) - (("helpers.get_resource_path\\('html/index.html'\\)") - (string-append "'" onionshare "/html/index.html'"))) - (substitute* "onionshare_gui/file_selection.py" - ;; fancy box image in the GUI - (("helpers.get_resource_path\\('images/drop_files.png'\\)") - (string-append "'" onionshare "/images/drop_files.png'"))) - (substitute* "onionshare_gui/server_status.py" - (("helpers.get_resource_path\\('images/server_stopped.png'\\)") - (string-append "'" onionshare "/images/server_stopped.png'")) - (("helpers.get_resource_path\\('images/server_working.png'\\)") - (string-append "'" onionshare "/images/server_working.png'")) - (("helpers.get_resource_path\\('images/server_started.png'\\)") - (string-append "'" onionshare "/images/server_started.png'"))) - (substitute* "onionshare_gui/onionshare_gui.py" - ;; for the icon on the GUI - (("helpers.get_resource_path\\('images/logo.png'\\)") - (string-append "'" onionshare "/images/logo.png'"))) - (substitute* '("setup.py" "onionshare/helpers.py") + (substitute* '("setup.py" "onionshare/common.py") (("sys.prefix,") (string-append "'" out "',"))) (substitute* "setup.py" ;; for the nautilus plugin (("/usr/share/nautilus") "share/nautilus")) - #t))) + (substitute* "install/onionshare.desktop" + (("/usr") out)) + #t))) (delete 'check) (add-before 'strip 'tests ;; After all the patching we run the tests after installing. ;; This is also a known issue: ;; https://github.com/micahflee/onionshare/issues/284 (lambda _ - (invoke "nosetests" "test") + (invoke "pytest" "test") #t))))) (native-inputs - `(("python-nose" ,python-nose))) + `(("python-pytest" ,python-pytest))) (inputs `(("python-flask" ,python-flask) ("python-nautilus" ,python-nautilus) -- cgit v1.2.3 From e200de5457262877cc4bc13bd2723004a2c89963 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Fri, 7 Dec 2018 13:54:21 +0530 Subject: gnu: Add chirp. * gnu/packages/ham-radio.scm (chirp): New variable. --- gnu/packages/ham-radio.scm | 35 +++++++++++++++++++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/ham-radio.scm b/gnu/packages/ham-radio.scm index 0f96553c65..b73671c8bc 100644 --- a/gnu/packages/ham-radio.scm +++ b/gnu/packages/ham-radio.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2017 Arun Isaac +;;; Copyright © 2017, 2018 Arun Isaac ;;; ;;; This file is part of GNU Guix. ;;; @@ -20,9 +20,13 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (gnu packages gtk) #:use-module (gnu packages libusb) #:use-module (gnu packages pkg-config) - #:use-module (guix build-system cmake)) + #:use-module (gnu packages python) + #:use-module (gnu packages xml) + #:use-module (guix build-system cmake) + #:use-module (guix build-system python)) (define-public rtl-sdr (package @@ -50,3 +54,30 @@ cheap software defined radio, since the chip allows transferring the raw I/Q samples to the host. @code{rtl-sdr} provides drivers for this purpose.") (license license:gpl2+))) + +(define-public chirp + (package + (name "chirp") + (version "20181205") + (source + (origin + (method url-fetch) + (uri (string-append "https://trac.chirp.danplanet.com/chirp_daily/daily-" + version "/chirp-daily-" version ".tar.gz")) + (sha256 + (base32 + "1cp280b95j39xaxs50zn55jigg7pyfpm9n098hmsyxrplqn8z43c")))) + (build-system python-build-system) + (inputs + `(("python2-libxml2" ,python2-libxml2) + ("python2-pygtk" ,python2-pygtk) + ("python2-pyserial" ,python2-pyserial))) + (arguments + `(#:python ,python-2)) + (home-page "https://chirp.danplanet.com") + (synopsis "Cross-radio programming tool") + (description "Chirp is a cross-radio programming tool. It supports a +growing list of radios across several manufacturers and allows transferring of +memory contents between them.") + (license (list license:gpl3+ + license:lgpl3+)))) ; chirp/elib_intl.py -- cgit v1.2.3 From 8c380a01a27f0c52173473ba89c9325dff4e5b00 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 11 Dec 2018 21:33:30 +0200 Subject: gnu: Add dav1d. * gnu/packages/video.scm (dav1d): New variable. --- gnu/packages/video.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 15702b4e2a..2672a01ea4 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -3264,3 +3264,23 @@ API. It includes bindings for Python, Ruby, and other languages.") helps you create the film you have always dreamed of. Easily add sub-titles, transitions, and effects and then export your film to many common formats.") (license license:gpl3+))) + +(define-public dav1d + (package + (name "dav1d") + (version "0.1.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://downloads.videolan.org/pub/videolan/" + "dav1d/" version "/dav1d-" version ".tar.xz")) + (sha256 + (base32 + "0dw0liday8cbyrirhm6bgzhxg4cdy66nspfkdlq338gdsfqcvrsc")))) + (build-system meson-build-system) + (native-inputs `(("nasm" ,nasm))) + (home-page "https://code.videolan.org/videolan/dav1d") + (synopsis "AV1 decoder") + (description "dav1d is a new AV1 cross-platform decoder, and focused on +speed and correctness.") + (license license:bsd-2))) -- cgit v1.2.3 From 42140fd434a333d0565617471b51323d6815ee13 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 11 Dec 2018 14:39:40 +0200 Subject: gnu: Add toybox. * gnu/packages/busybox.com (toybox): New variable. --- gnu/packages/busybox.scm | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/busybox.scm b/gnu/packages/busybox.scm index 5f1613bb4c..09812d4a49 100644 --- a/gnu/packages/busybox.scm +++ b/gnu/packages/busybox.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2014 John Darrington ;;; Copyright © 2016, 2017, 2018 Efraim Flashner ;;; Copyright © 2018 Tobias Geerinckx-Rice +;;; Copyright © 2018 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -25,6 +26,7 @@ #:use-module (guix build-system gnu) #:use-module (gnu packages) #:use-module (gnu packages admin) + #:use-module (gnu packages algebra) #:use-module (gnu packages compression) #:use-module (gnu packages perl)) @@ -102,3 +104,41 @@ any small or embedded system.") (home-page "https://www.busybox.net") ;; Some files are gplv2+ (license gpl2))) + +(define-public toybox + (package + (name "toybox") + (version "0.7.8") + (source (origin + (method url-fetch) + (uri (string-append + "https://landley.net/toybox/downloads/toybox-" + version ".tar.gz")) + (sha256 + (base32 + "1mlqv5hsvy8ii6m698hq6rc316klwv44jlr034knwg6bk1lf2qj9")))) + (build-system gnu-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-before 'configure 'set-environment-variables + (lambda _ + (setenv "CC" (which "gcc")) + (setenv "HOSTCC" (which "gcc")) + #t)) + (replace 'configure + (lambda _ (invoke "make" "defconfig"))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (invoke "make" + (string-append "PREFIX=" out) + "install"))))) + #:test-target "tests")) + (native-inputs `(("bc" ,bc))) + (synopsis "Many common UNIX utilities in a single executable") + (description "ToyBox combines tiny versions of many common UNIX utilities +into a single small executable. It provides a fairly complete environment for +any small or embedded system.") + (home-page "https://landley.net/toybox/") + (license bsd-2))) -- cgit v1.2.3 From 7600513a8a29f69f041f20cbbad0b68ccd17ad64 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Mon, 10 Dec 2018 16:19:18 +0100 Subject: gnu: Add python-pytest-sugar. This is required to update python-amqp and python-kombu. * gnu/packages/check.scm (check): New variable. --- gnu/packages/check.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 937e4e094c..5bf849d666 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -1414,6 +1414,30 @@ normally the case.") (define-public python2-pytest-subtesthack (package-with-python2 python-pytest-subtesthack)) +(define-public python-pytest-sugar + (package + (name "python-pytest-sugar") + (version "0.9.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pytest-sugar" version)) + (sha256 + (base32 + "1asq7yc4g8bx2sn7yy974mhc9ywvaihasjab4inkirdwn9s7mn7w")))) + (build-system python-build-system) + (propagated-inputs + `(("python-packaging" ,python-packaging) + ("python-pytest" ,python-pytest) + ("python-termcolor" ,python-termcolor))) + (home-page "https://pivotfinland.com/pytest-sugar/") + (synopsis "Plugin for pytest that changes the default look and feel") + (description + "@code{pytest-sugar} is a plugin for py.test that changes the default +look and feel of py.test, using a progress bar and showing failures and errors +instantly.") + (license license:bsd-3))) + (define-public python-hypothesis (package (name "python-hypothesis") -- cgit v1.2.3 From 053f3d48578e10e8e4be348f3ad6de539cfa2455 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Mon, 10 Dec 2018 16:19:59 +0100 Subject: gnu: Add python-serpent. This is required for python-pyro4, which is needed to update python-amqp and python-kombu. * gnu/packages/python.scm (python-serpent): New variable. --- gnu/packages/python.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 20b07d3e27..4e40e3677f 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -908,6 +908,29 @@ version identifier.") (define-public python2-semantic-version (package-with-python2 python-semantic-version)) +(define-public python-serpent + (package + (name "python-serpent") + (version "1.27") + (source + (origin + (method url-fetch) + (uri (pypi-uri "serpent" version)) + (sha256 + (base32 + "04p9dsrm5pv8vhk3flvih55kgvlzpi38hlaykdiakddmgwqw93bg")))) + (build-system python-build-system) + (home-page "https://github.com/irmen/Serpent") + (synopsis "Serializer for literal Python expressions") + (description + "Serpent provides ast.literal_eval() compatible object tree +serialization. It serializes an object tree into bytes (utf-8 encoded string) +that can be decoded and then passed as-is to ast.literal_eval() to rebuild it +as the original object tree. As such it is safe to send serpent data to other +machines over the network for instance (because only safe literals are +encoded).") + (license license:expat))) + (define-public python-setuptools (package (name "python-setuptools") -- cgit v1.2.3 From 679c979f25e27ea559cf26e806baee4d69ece7bd Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Mon, 10 Dec 2018 16:20:29 +0100 Subject: gnu: Add python-case. This is required to update python-amqp and python-kombu, as well as adding python-vine. * gnu/packages/python.scm (python-case): New variable. --- gnu/packages/python.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 4e40e3677f..e4ef234d8f 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -1071,6 +1071,32 @@ for additional processing.") (define-public python2-capturer (package-with-python2 python-capturer)) +(define-public python-case + (package + (name "python-case") + (version "1.5.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "case" version)) + (sha256 + (base32 + "1cagg06vfph864s6l5jb0zqliwxh647bki8j6lf4a4qrv40jnhs8")))) + (build-system python-build-system) + (propagated-inputs + `(("python-mock" ,python-mock) + ("python-nose" ,python-nose) + ("python-six" ,python-six) + ("python-unittest2" ,python-unittest2))) + (native-inputs + `(("python-coverage" ,python-coverage))) + (home-page "https://github.com/celery/case") + (synopsis "Unittest utilities and convenience methods") + (description + "The @code{case} package provides utilities on top of unittest, including +some helpful Python 2 compatibility convenience methods.") + (license license:bsd-3))) + (define-public python-verboselogs (package (name "python-verboselogs") -- cgit v1.2.3 From 2cfcab3aef1efaab0e06540cd175e8c9912ac2a8 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Mon, 10 Dec 2018 16:20:49 +0100 Subject: gnu: Add python-vine. This is needed to update python-amqp to 2.3.2. * gnu/packages/python.scm (python-vine): New variable. --- gnu/packages/python.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index e4ef234d8f..16847d8647 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -2317,6 +2317,30 @@ object.") (define-public python2-pyyaml (package-with-python2 python-pyyaml)) +(define-public python-vine + (package + (name "python-vine") + (version "1.1.4") + (source + (origin + (method url-fetch) + (uri (pypi-uri "vine" version)) + (sha256 + (base32 + "0wkskb2hb494v9gixqnf4bl972p4ibcmxdykzpwjlfa5picns4aj")))) + (build-system python-build-system) + (native-inputs + `(("python-pytest" ,python-pytest) + ("python-case" ,python-case))) + (home-page "https://github.com/celery/vine") + (synopsis "Promises for Python") + (description + "@code{vine} provides a special implementation of promises in that it can +be used both for \"promise of a value\" and lazy evaluation. The biggest +upside for this is that everything in a promise can also be a promise, +e.g. filters, callbacks and errbacks can all be promises.") + (license license:bsd-3))) + (define-public python-virtualenv (package (name "python-virtualenv") -- cgit v1.2.3 From 9253c429738d5be26edbf4febb39aa85aa88ec90 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Mon, 10 Dec 2018 16:21:13 +0100 Subject: gnu: Add python-pyro4. This is needed to update python-kombu to 4.2.2 * gnu/packages/python.scm (python-pyro4): New variable. --- gnu/packages/python.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 16847d8647..25c84199ec 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -13332,6 +13332,28 @@ such as figshare or Zenodo.") (define-public python2-semver (package-with-python2 python-semver)) +(define-public python-pyro4 + (package + (name "python-pyro4") + (version "4.74") + (source + (origin + (method url-fetch) + (uri (pypi-uri "Pyro4" version)) + (sha256 + (base32 + "0pzp7c6q3vvkxq0wy9lr6wd5wky40sajz69g697i5rb2q497pvc9")))) + (build-system python-build-system) + (propagated-inputs + `(("python-serpent" ,python-serpent))) + (home-page "https://pyro4.readthedocs.io") + (synopsis "Distributed object middleware for Python") + (description + "Pyro enables you to build applications in which objects can talk to each +other over the network. You can just use normal Python method calls to call +objects on other machines, also known as remote procedure calls (RPC).") + (license license:expat))) + (define-public python2-pyro (package (name "python2-pyro") -- cgit v1.2.3 From a65a33d070285bd8fdfab301089e100b41fee867 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Mon, 10 Dec 2018 16:21:37 +0100 Subject: gnu: python-amqp: Update to 2.3.2. This is needed to update python-kombu to 4.2.2. * gnu/packages/python.scm (python-amqp): Update to 2.3.2. --- gnu/packages/python.scm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 25c84199ec..2c87e1a09d 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -8269,18 +8269,21 @@ and provides a uniform API regardless of which JSON implementation is used.") (define-public python-amqp (package (name "python-amqp") - (version "1.4.9") + (version "2.3.2") (source (origin (method url-fetch) (uri (pypi-uri "amqp" version)) (sha256 (base32 - "06n6q0kxhjnbfz3vn8x9yz09lwmn1xi9d6wxp31h5jbks0b4vsid")))) + "1sv600dgqwpimr6i1g59y9hpn50mc236gdqkr7zin13kvlpx0g87")))) (build-system python-build-system) (native-inputs - `(("python-nose" ,python-nose) + `(("python-case" ,python-case) + ("python-pytest-sugar" ,python-pytest-sugar) ("python-mock" ,python-mock))) + (propagated-inputs + `(("python-vine" ,python-vine))) (home-page "https://github.com/celery/py-amqp") (synopsis "Low-level AMQP client for Python (fork of amqplib)") -- cgit v1.2.3 From f6c19fe8ce9ba767ceb62b9f2ef3b8fb3b5ac8c5 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Mon, 10 Dec 2018 16:22:25 +0100 Subject: gnu: python-kombu: Update to 4.2.2. This fixes the build, that probably broke with a Python update. * gnu/packages/python.scm (python-kombu): Update to 4.2.2.. --- gnu/packages/python.scm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 2c87e1a09d..53ab6d35ea 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -8337,23 +8337,26 @@ applications.") (define-public python-kombu (package (name "python-kombu") - (version "3.0.37") + (version "4.2.2") (source (origin (method url-fetch) (uri (pypi-uri "kombu" version)) (sha256 (base32 - "0l16chb314gpq2v7fh94a22c30lcv6w3ylmhsa60bldlcq6a0r70")))) + "15k8f7mzqr049sg9vi48m19vjykviafk3f0p5xzgw9by0x0kyxjj")))) (build-system python-build-system) (native-inputs `(("python-mock" ,python-mock) - ("python-nose" ,python-nose))) + ("python-case" ,python-case) + ("python-pyro4" ,python-pyro4) + ("python-pytest-sugar" ,python-pytest-sugar) + ("python-pytz" ,python-pytz))) (propagated-inputs `(("python-anyjson" ,python-anyjson) ("python-amqp" ,python-amqp) ("python-redis" ,python-redis))) - (home-page "http://kombu.readthedocs.org") + (home-page "https://kombu.readthedocs.io") (synopsis "Message passing library for Python") (description "The aim of Kombu is to make messaging in Python as easy as possible by providing an idiomatic high-level interface for the AMQ protocol, -- cgit v1.2.3 From ae218b75f6e1ea47f11b10008d8815638674bdf7 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Tue, 11 Dec 2018 17:49:39 +0100 Subject: gnu: python-billiard: Update to 3.5.0.5. This is to enable updating python-celery. * gnu/packages/python.scm (python-billiard): Update to 3.5.0.5. [native-inputs]: Remove python-nose, add python-case and python-pytest. --- gnu/packages/python.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 53ab6d35ea..df142353cb 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -8382,17 +8382,18 @@ RabbitMQ messaging server is the most popular implementation.") (define-public python-billiard (package (name "python-billiard") - (version "3.3.0.23") + (version "3.5.0.5") (source (origin (method url-fetch) (uri (pypi-uri "billiard" version)) (sha256 (base32 - "02wxsc6bhqvzh8j6w758kvgqbnj14l796mvmrcms8fgfamd2lak9")))) + "03msmapj3s5zgqk87d646mafz7a01h5bm2wijalgpi0s80ks5na2")))) (build-system python-build-system) (native-inputs - `(("python-nose" ,python-nose))) + `(("python-case" ,python-case) + ("python-pytest" ,python-pytest))) (home-page "https://github.com/celery/billiard") (synopsis "Python multiprocessing fork with improvements and bugfixes") -- cgit v1.2.3 From 95ae013092af8533e3bd315373ca0fcbb6a2d1c1 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Tue, 11 Dec 2018 17:53:14 +0100 Subject: gnu: python-celery: Update to 4.2.1. This is an attempt to get the package building after the update to Python 3.7. I'm not sure this totally works, as the tests detect an incompatibility with Python 3.7 due to use of "async". But with the tests disabled, you can at least import the celery module, which is a start. * gnu/packages/python.scm (python-celery): Update to 4.2.1. [arguments]: Switch to py.test, from nose, disable the tests and loosen the requirements on pytest. [native-inputs]: Remove python-nose, add python-pytest and python-case. [home-page]: Change from HTTP to HTTPS. --- gnu/packages/python.scm | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index df142353cb..fd13339ccc 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -8417,31 +8417,35 @@ Python 2.4 and 2.5, and will draw its fixes/improvements from python-trunk.") (define-public python-celery (package (name "python-celery") - (version "3.1.24") + (version "4.2.1") (source (origin (method url-fetch) (uri (pypi-uri "celery" version)) (sha256 (base32 - "0yh2prhdnx2dgkb67a5drj12hh2zvzx5f611p7mqqg01ydghif4r")))) + "0y66rz7z8dfcgs3s0qxmdddlaq57bzbgxgfz896nbp14grkv9nkp")))) (build-system python-build-system) (arguments - `(#:phases + '(;; TODO The tests fail with Python 3.7 + ;; https://github.com/celery/celery/issues/4849 + #:tests? #f + #:phases (modify-phases %standard-phases - ;; These tests break with Python 3.5: - ;; https://github.com/celery/celery/issues/2897#issuecomment-253066295 - (replace 'check + (add-after 'unpack 'patch-requirements (lambda _ - (zero? - (system* "nosetests" "--exclude=^test_safe_to_remove.*"))))))) + (substitute* "requirements/test.txt" + (("pytest>=3\\.0,<3\\.3") + "pytest>=3.0")) + #t))))) (native-inputs - `(("python-nose" ,python-nose))) + `(("python-case" ,python-case) + ("python-pytest" ,python-pytest))) (propagated-inputs `(("python-pytz" ,python-pytz) ("python-billiard" ,python-billiard) ("python-kombu" ,python-kombu))) - (home-page "http://celeryproject.org") + (home-page "https://celeryproject.org") (synopsis "Distributed Task Queue") (description "Celery is an asynchronous task queue/job queue based on distributed message passing. It is focused on real-time operation, but -- cgit v1.2.3 From ab533c613ee2a44595786a6aca0b958f9f7f1dd9 Mon Sep 17 00:00:00 2001 From: Rutger Helling Date: Wed, 12 Dec 2018 11:04:54 +0100 Subject: gnu: allegro: Fix compilation with Mesa >= 18.2.5. * gnu/packages/game-development.scm (allegro)[source]: Add allegro-fix-compilation-mesa-18.2.5-and-later.patch. * gnu/packages/patches/allegro-fix-compilation-mesa-18.2.5-and-later.patch: New file. --- gnu/packages/game-development.scm | 2 ++ ...gro-fix-compilation-mesa-18.2.5-and-later.patch | 41 ++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 gnu/packages/patches/allegro-fix-compilation-mesa-18.2.5-and-later.patch (limited to 'gnu') diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 34a015bdf7..8a29297805 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -652,6 +652,8 @@ etc.") (uri (string-append "https://github.com/liballeg/allegro5/releases" "/download/" version "/allegro-" version ".tar.gz")) + (patches (search-patches + "allegro-fix-compilation-mesa-18.2.5-and-later.patch")) (sha256 (base32 "1w9a5yqi5q03b2qvmx5ff90paz0xbr9cy7i7f0xiqa65ava66q9l")))) diff --git a/gnu/packages/patches/allegro-fix-compilation-mesa-18.2.5-and-later.patch b/gnu/packages/patches/allegro-fix-compilation-mesa-18.2.5-and-later.patch new file mode 100644 index 0000000000..fa273a5dfa --- /dev/null +++ b/gnu/packages/patches/allegro-fix-compilation-mesa-18.2.5-and-later.patch @@ -0,0 +1,41 @@ +Fixes compilation with Mesa >= 18.2.5. + +Taken from upstream: + +https://github.com/liballeg/allegro5/commit/a40d30e21802ecf5c9382cf34af9b01bd3781e47 + +diff --git a/include/allegro5/allegro_opengl.h b/include/allegro5/allegro_opengl.h +index 0f86a6768..652dd024e 100644 +--- a/include/allegro5/allegro_opengl.h ++++ b/include/allegro5/allegro_opengl.h +@@ -103,10 +103,14 @@ + + /* HACK: Prevent both Mesa and SGI's broken headers from screwing us */ + #define __glext_h_ ++#define __gl_glext_h_ + #define __glxext_h_ ++#define __glx_glxext_h_ + #include + #undef __glext_h_ ++#undef __gl_glext_h_ + #undef __glxext_h_ ++#undef __glx_glxext_h_ + + #endif /* ALLEGRO_MACOSX */ + +diff --git a/include/allegro5/opengl/GLext/glx_ext_defs.h b/include/allegro5/opengl/GLext/glx_ext_defs.h +index 49c502091..fba8aea5d 100644 +--- a/include/allegro5/opengl/GLext/glx_ext_defs.h ++++ b/include/allegro5/opengl/GLext/glx_ext_defs.h +@@ -1,7 +1,9 @@ + /* HACK: Prevent both Mesa and SGI's broken headers from screwing us */ + #define __glxext_h_ ++#define __glx_glxext_h_ + #include + #undef __glxext_h_ ++#undef __glx_glxext_h_ + + #ifndef GLX_VERSION_1_3 + #define _ALLEGRO_GLX_VERSION_1_3 +-- +2.20.0 -- cgit v1.2.3 From 3a48d055383c6838177ffcdc9fd544372bb2d722 Mon Sep 17 00:00:00 2001 From: Rutger Helling Date: Wed, 12 Dec 2018 11:05:28 +0100 Subject: gnu: openttd: Update to 1.8.0. * gnu/packages/games.scm (openttd): Update to 1.8.0. [inputs]: Use allegro instead of allegro-4. --- gnu/packages/games.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 7f84e447bb..04521d399a 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -2306,7 +2306,7 @@ world}, @uref{http://evolonline.org, Evol Online} and (define openttd-engine (package (name "openttd-engine") - (version "1.7.1") + (version "1.8.0") (source (origin (method url-fetch) (uri (string-append "http://binaries.openttd.org/releases/" @@ -2323,7 +2323,7 @@ world}, @uref{http://evolonline.org, Evol Online} and "02d1xmb75yv4x6rfnvxk3vvq4l3lvvwr2pfsdzn7lzalic51ziqh"))))) (sha256 (base32 - "0dhv5bbbg1dmmq7fi3xss0a9jq2rqgb5sf9fsqzlsjcdm590j6b1")) + "0zq8xdg0k92p3s4j9x76591zaqz7k9ra69q008m209vdfffjvly2")) (modules '((guix build utils))) (snippet ;; The DOS port contains proprietary software. @@ -2353,7 +2353,7 @@ world}, @uref{http://evolonline.org, Evol Online} and configure-flags)))))))) (native-inputs `(("pkg-config" ,pkg-config))) (inputs - `(("allegro" ,allegro-4) + `(("allegro" ,allegro) ("fontconfig" ,fontconfig) ("freetype" ,freetype) ("icu4c" ,icu4c) -- cgit v1.2.3 From 7b046b1bdc0b1cbc50428d4e08136a110f0a12af Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Wed, 12 Dec 2018 19:35:05 +0800 Subject: gnu: zathura-pdf-mupdf: Fix dependencies. * gnu/packages/pdf.scm (zathura-pdf-mupdf)[inputs]: Add mujs. [arguments]: Pass 'link-external' to the configure flags. Patch 'meson.build' to include mujs as 'build_dependencies'. --- gnu/packages/pdf.scm | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index 4170e4a0ae..c34a0bc8ca 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -438,6 +438,7 @@ using the DjVuLibre library.") (inputs `(("jbig2dec" ,jbig2dec) ("libjpeg" ,libjpeg) + ("mujs", mujs) ("mupdf" ,mupdf) ("openjpeg" ,openjpeg) ("openssl" ,openssl) @@ -447,7 +448,18 @@ using the DjVuLibre library.") `(#:tests? #f ; package does not contain tests #:configure-flags (list (string-append "-Dplugindir=" (assoc-ref %outputs "out") - "/lib/zathura")))) + "/lib/zathura") + "-Dlink-external=true") + #:phases + (modify-phases %standard-phases + (add-before 'configure 'add-mujs-to-dependencies + (lambda _ + ;; Add mujs to the 'build_dependencies'. + (substitute* "meson.build" + (("^ libopenjp2 = dependency.*" x) + (string-append x " mujs = cc.find_library('mujs')\n")) + (("^ libopenjp2") + " libopenjp2, mujs"))))))) (home-page "https://pwmt.org/projects/zathura-pdf-mupdf/") (synopsis "PDF support for zathura (mupdf backend)") (description "The zathura-pdf-mupdf plugin adds PDF support to zathura -- cgit v1.2.3 From 2eddeebab5005bec2eabd4d4583038ab0dad8204 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Wed, 12 Dec 2018 23:52:50 +0100 Subject: gnu: Add ngrep. * gnu/packages/admin.scm (ngrep): New variable. --- gnu/packages/admin.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 01a58763d8..9487c0c69b 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -2953,3 +2953,36 @@ security defenses and provide tips for further system hardening. It will also scan for general system information, vulnerable software packages, and possible configuration issues.") (license license:gpl3+))) + +(define-public ngrep + (package + (name "ngrep") + (version "1.47") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jpr5/ngrep/") + (commit (string-append "V" (string-replace-substring version "." "_"))))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1x2fyd7wdqlj1r76ilal06cl2wmbz0ws6i3ys204sbjh1cj6dcl7")))) + (build-system gnu-build-system) + (inputs + `(("libpcap" ,libpcap))) + (arguments + `(#:tests? #f ;; No tests. + #:configure-flags (list (string-append "--with-pcap-includes=" + (assoc-ref %build-inputs "libpcap") + "/include/pcap")))) + (home-page "https://github.com/jpr5/ngrep/") + (synopsis "Grep-like utility to search for network packets on an interface") + (description "@command{ngrep} is like GNU grep applied to the network +layer. It's a PCAP-based tool that allows you to specify an extended regular +or hexadecimal expression to match against data payloads of packets. It +understands many kinds of protocols, including IPv4/6, TCP, UDP, ICMPv4/6, +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))) -- cgit v1.2.3 From ce3fef9fcdd2aa562b5aca454af8a39b82cba9c9 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Thu, 13 Dec 2018 00:17:42 +0100 Subject: gnu: Add missing "Pierre Neidhardt" copyright line. * gnu/packages/admin.scm: Fix copyright. --- gnu/packages/admin.scm | 1 + 1 file changed, 1 insertion(+) (limited to 'gnu') diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 9487c0c69b..058af3d583 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -22,6 +22,7 @@ ;;; Copyright © 2018 Arun Isaac ;;; Copyright © 2018 Pierre-Antoine Rouby ;;; Copyright © 2018 Rutger Helling +;;; Copyright © 2018 Pierre Neidhardt ;;; ;;; This file is part of GNU Guix. ;;; -- cgit v1.2.3 From ebcb58c9e8f7cdb554f4be0fa48d54ce3007b484 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Tue, 11 Dec 2018 19:37:05 +0300 Subject: gnu: php: Update to 7.3.0. * gnu/packages/php.scm (php)[version]: Update to 7.3.0. [arguments]: Delete "sapi/cli/tests/upload_2G.phpt" substitution and delete "ext/pcre/tests/bug76909.phpt" file. [inputs]: Replace 'pcre' with 'pcre2'. --- gnu/packages/php.scm | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/php.scm b/gnu/packages/php.scm index a28cb31e5c..dfb9f2db3a 100644 --- a/gnu/packages/php.scm +++ b/gnu/packages/php.scm @@ -53,7 +53,7 @@ (define-public php (package (name "php") - (version "7.2.12") + (version "7.3.0") (home-page "https://secure.php.net/") (source (origin (method url-fetch) @@ -61,7 +61,7 @@ name "-" version ".tar.xz")) (sha256 (base32 - "1qbz2j9kzqxxp0mmx02zavvz20ji7izqdnri25g1mrwyhz60974q")) + "1db0lm84hynilrjj3k1s7skp1y2gl4ip1ihr7662i2xgannmq6bx")) (modules '((guix build utils))) (snippet '(with-directory-excursion "ext" @@ -74,7 +74,7 @@ ;;"fileinfo/libmagic" ; This is a patched version of libmagic. '("gd/libgd" "mbstring/oniguruma" - "pcre/pcrelib" + "pcre/pcre2lib" "sqlite3/libsqlite" "xmlrpc/libxmlrpc" "zip/lib")) @@ -176,11 +176,6 @@ (substitute* "ext/standard/tests/streams/bug60602.phpt" (("'ls'") (string-append "'" (which "ls") "'"))) - ;; The expected output is slightly different from what is given, - ;; in a section that's not related to the actual test - (substitute* "sapi/cli/tests/upload_2G.phpt" - (("Test\\\\n") "Test\n\n")) - ;; Drop tests that are known to fail. (for-each delete-file '("ext/posix/tests/posix_getgrgid.phpt" ; Requires /etc/group. @@ -291,7 +286,10 @@ "ext/ldap/tests/ldap_set_option_error.phpt" ;; Sometimes cannot start the LDAP server. - "ext/ldap/tests/bug76248.phpt")) + "ext/ldap/tests/bug76248.phpt" + + ;; Bug #76909 preg_match difference between 7.3 and < 7.3 + "ext/pcre/tests/bug76909.phpt")) ;; Skip tests requiring network access. (setenv "SKIP_ONLINE_TESTS" "1") @@ -324,7 +322,7 @@ ("oniguruma" ,oniguruma-5) ("openldap" ,openldap) ("openssl" ,openssl) - ("pcre" ,pcre) + ("pcre" ,pcre2) ("postgresql" ,postgresql) ("readline" ,readline) ("sqlite" ,sqlite) -- cgit v1.2.3 From 9c580011925401942567952ae0b95e7e2d291914 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Wed, 12 Dec 2018 23:35:59 -0500 Subject: gnu: icecat: Remove extraneous newlines. * gnu/packages/gnuzilla.scm (icecat)[source]: Remove extraneous newlines. --- gnu/packages/gnuzilla.scm | 2 -- 1 file changed, 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 9eb989a0b8..74845ef239 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -517,7 +517,6 @@ security standards.") (mozilla-patch "icecat-CVE-2018-12405-pt03.patch" "5e1a9644aeef" "1qimrpgyrd8zkiri7w57j0aymk20y9b34am5w7rvr6qj1lhrbfla") (mozilla-patch "icecat-bug-1485655.patch" "9055726e2d89" "1pppxr94zqh6zmi2mn1ih21qap09vk5ivbhnwxqr8iszvygjg44g") (mozilla-patch "icecat-bug-1410214.patch" "9e641345e2ef" "0542xss2jdb8drh4g50cfy32l300x69dyywgx3dqs03vgr3qplxy") - (mozilla-patch "icecat-CVE-2018-12405-pt04.patch" "6398541ec302" "1c2yi7mkg3d5afxsgj9fp3zq8yhkmphrll5d60d5xsdv88kqqiyf") (mozilla-patch "icecat-bug-1496736.patch" "3bed863ee656" "038k7jk3yp16410crwfdvhyb2vis49c6bplrfr83v51885cqldar") (mozilla-patch "icecat-bug-1498765.patch" "a08c8493ba19" "0bwg4vg03j962lb9q8ihpiy4rmygykf1q9ij8x7h34q7hg43yjya") @@ -531,7 +530,6 @@ security standards.") (mozilla-patch "icecat-bug-1507564.patch" "60619cc47b10" "09fanqr08kqgraw4xp7y2az4jc7ia8nn200rqjfj20vmkyjz97j3") (mozilla-patch "icecat-bug-1507730.patch" "dd0f01818b9c" "14ziq1bm72n58xrvsgzpjj5z6ifpvi70r5jfhbkbj69mf4y4cx2z") (mozilla-patch "icecat-CVE-2018-12405-pt07.patch" "a73a46ddc848" "1bvvyav3xyn6rgn6haicinxn0dasl9dyc1i37fyb7wr5wcpahybs") - (mozilla-patch "icecat-CVE-2018-18494.patch" "a72ec8e21577" "095zghmwdcbaid5426p9vpl757d8sfbsvgn201bjm7nhm03m4z7i") (mozilla-patch "icecat-CVE-2018-12405-pt08.patch" "b6d0fc61fd0b" "0059avawxi4s4747plybjsjq8j2h4z7amw05p28xyg95a2njwnaa") (mozilla-patch "icecat-bug-1499028.patch" "a62ede2dd3bc" "0ikmnibni8bdvpr9p42wskyyic08vzqdz5qr028bqzyg5119gily") -- cgit v1.2.3 From b42b5afdf4040939f5b1648664400b0c75935c73 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Wed, 12 Dec 2018 23:30:18 -0500 Subject: gnu: Fix misplaced commas (unquotes). * gnu/packages/java.scm (ant-bootstrap), gnu/packages/kde.scm (kdenlive), gnu/packages/lxqt.scm (lxqt-panel, lxqt-runner), gnu/packages/mpd.scm (ncmpc), gnu/packages/opencl.scm (beignet), gnu/packages/pdf.scm (zathura-pdf-mupdf), gnu/packages/video.scm (streamlink), gnu/packages/web-browsers.scm (luakit), gnu/packages/web.scm (perl-libwww), gnu/packages/wm.scm (ghc-xmonad-contrib): Fix misplaced commas (unquotes). --- gnu/packages/java.scm | 2 +- gnu/packages/kde.scm | 12 ++++++------ gnu/packages/lxqt.scm | 4 ++-- gnu/packages/mpd.scm | 2 +- gnu/packages/opencl.scm | 2 +- gnu/packages/pdf.scm | 2 +- gnu/packages/video.scm | 2 +- gnu/packages/web-browsers.scm | 16 ++++++++-------- gnu/packages/web.scm | 2 +- gnu/packages/wm.scm | 2 +- 10 files changed, 23 insertions(+), 23 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 951c1f4fd3..054ad67731 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -301,7 +301,7 @@ JNI.") `(("jikes" ,jikes) ("jamvm" ,jamvm-1-bootstrap) ("unzip" ,unzip) - ("zip", zip))) + ("zip" ,zip))) (home-page "http://ant.apache.org") (synopsis "Build tool for Java") (description diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm index d2ae91b179..24144797b8 100644 --- a/gnu/packages/kde.scm +++ b/gnu/packages/kde.scm @@ -90,12 +90,12 @@ ("knotifyconfig" ,knotifyconfig) ("kfilemetadata" ,kfilemetadata) ("kdoctools" ,kdoctools) - ("kdeclarative", kdeclarative) - ("qtdeclarative", qtdeclarative) - ("qtquickcontrols", qtquickcontrols) - ("kiconthemes", kiconthemes) + ("kdeclarative" ,kdeclarative) + ("qtdeclarative" ,qtdeclarative) + ("qtquickcontrols" ,qtquickcontrols) + ("kiconthemes" ,kiconthemes) ("qtgraphicaleffects" ,qtgraphicaleffects) - ("kplotting", kplotting))) + ("kplotting" ,kplotting))) (arguments `(#:phases (modify-phases %standard-phases @@ -112,7 +112,7 @@ ,(map (lambda (label) (string-append (assoc-ref inputs label) "/lib/qt5/plugins/")) - '("qtbase", "qtsvg"))) + '("qtbase" "qtsvg"))) `("FREI0R_PATH" ":" = (,(string-append frei0r "/lib/frei0r-1/"))) `("QT_QPA_PLATFORM_PLUGIN_PATH" ":" = diff --git a/gnu/packages/lxqt.scm b/gnu/packages/lxqt.scm index 4cb24ebf64..b3d32c284f 100644 --- a/gnu/packages/lxqt.scm +++ b/gnu/packages/lxqt.scm @@ -513,7 +513,7 @@ of other programs.") ("liblxqt" ,liblxqt) ("libqtxdg" ,libqtxdg) ("libstatgrab" ,libstatgrab) - ("libsysstat", libsysstat) + ("libsysstat" ,libsysstat) ("libxcomposite" ,libxcomposite) ("libxdamage" ,libxdamage) ("libxkbcommon" ,libxkbcommon) @@ -700,7 +700,7 @@ Qt with LXQt.") ("qtx11extras" ,qtx11extras))) (native-inputs `(("pkg-config" ,pkg-config) - ("qttools", qttools) + ("qttools" ,qttools) ("lxqt-build-tools" ,lxqt-build-tools))) (arguments '(#:tests? #f ; no tests diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm index 0a81a3b8b8..89ad010de2 100644 --- a/gnu/packages/mpd.scm +++ b/gnu/packages/mpd.scm @@ -216,7 +216,7 @@ player daemon.") (c++ (string-append gcc "/include/c++"))) (setenv path (string-append c++ ":" (getenv path))) #t)))))) - (inputs `(("gcc", gcc-8) ; for its C++14 support + (inputs `(("gcc" ,gcc-8) ; for its C++14 support ("boost" ,boost) ("pcre" ,pcre) ("libmpdclient" ,libmpdclient) diff --git a/gnu/packages/opencl.scm b/gnu/packages/opencl.scm index da979253b0..a90b17cee3 100644 --- a/gnu/packages/opencl.scm +++ b/gnu/packages/opencl.scm @@ -240,7 +240,7 @@ the system.") ("llvm@3.7" ,llvm-3.7) ("libdrm" ,libdrm) ("libedit" ,libedit) - ("libpthread-stubs", libpthread-stubs) + ("libpthread-stubs" ,libpthread-stubs) ("libsm" ,libsm) ("libva" ,libva) ("libxfixes" ,libxfixes) diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index c34a0bc8ca..64bfda489e 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -438,7 +438,7 @@ using the DjVuLibre library.") (inputs `(("jbig2dec" ,jbig2dec) ("libjpeg" ,libjpeg) - ("mujs", mujs) + ("mujs" ,mujs) ("mupdf" ,mupdf) ("openjpeg" ,openjpeg) ("openssl" ,openssl) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 2672a01ea4..c327c9bc5c 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1955,7 +1955,7 @@ and custom quantization matrices.") ("python-websocket-client" ,python-websocket-client) ("python-iso3166" ,python-iso3166) ("python-iso639" ,python-iso639) - ("python-isodate", python-isodate) + ("python-isodate" ,python-isodate) ("python-pycryptodome" ,python-pycryptodome) ("python-requests" ,python-requests) ("python-urllib3" ,python-urllib3))) diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm index 6caa486b84..0fea571f1a 100644 --- a/gnu/packages/web-browsers.scm +++ b/gnu/packages/web-browsers.scm @@ -152,16 +152,16 @@ features including, tables, builtin image display, bookmarks, SSL and more.") "0dwxhnq90whakgdg21lzcf03n2g1c7hqgliwhav8av5na5mqpn93")) (file-name (string-append name "-" version ".tar.gz")))) (inputs - `(("lua-5.1", lua-5.1) + `(("lua-5.1" ,lua-5.1) ("gtk+" ,gtk+) - ("gsettings-desktop-schemas", gsettings-desktop-schemas) - ("glib-networking", glib-networking) - ("lua5.1-filesystem", lua5.1-filesystem) - ("luajit", luajit) - ("webkitgtk", webkitgtk) - ("sqlite", sqlite))) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("glib-networking" ,glib-networking) + ("lua5.1-filesystem" ,lua5.1-filesystem) + ("luajit" ,luajit) + ("webkitgtk" ,webkitgtk) + ("sqlite" ,sqlite))) (native-inputs - `(("pkg-config", pkg-config))) + `(("pkg-config" ,pkg-config))) (build-system glib-or-gtk-build-system) (arguments '(#:make-flags diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index caf56e4119..84bd795a85 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3062,7 +3062,7 @@ select or poll.") (native-inputs `(("perl-test-fatal" ,perl-test-fatal) ("perl-test-needs" ,perl-test-needs) - ("perl-test-requiresinternet", perl-test-requiresinternet))) + ("perl-test-requiresinternet" ,perl-test-requiresinternet))) (propagated-inputs `(("perl-encode-locale" ,perl-encode-locale) ("perl-file-listing" ,perl-file-listing) diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index 8322a62b51..2e211e3892 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -604,7 +604,7 @@ Haskell, no knowledge of the language is required to install and use it.") ("ghc-random" ,ghc-random) ("ghc-utf8-string" ,ghc-utf8-string) ("ghc-extensible-exceptions" ,ghc-extensible-exceptions) - ("ghc-semigroups", ghc-semigroups) + ("ghc-semigroups" ,ghc-semigroups) ("ghc-x11" ,ghc-x11) ("ghc-x11-xft" ,ghc-x11-xft) ("xmonad" ,xmonad))) -- cgit v1.2.3 From d022c204bd21f3e0787b9fe158eaf395ffe26227 Mon Sep 17 00:00:00 2001 From: Rutger Helling Date: Thu, 13 Dec 2018 11:39:21 +0100 Subject: gnu: Add llvm@7.0.0. * gnu/packages/llvm.scm (llvm@7.0.0): New variable. --- gnu/packages/llvm.scm | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index 8a9d1d312b..7eb785c364 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -95,6 +95,21 @@ languages is in development. The compiler infrastructure includes mirror sets of programming tools as well as libraries with equivalent functionality.") (license license:ncsa))) +;; TODO: Build Mesa with LLVM 7 in the next staging cycle. +;; TODO: Make LLVM 7 the default LLVM once Clang is also upgraded. +(define-public llvm-7.0.0 + (package (inherit llvm) + (name "llvm") + (version "7.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "http://llvm.org/releases/" + version "/llvm-" version ".src.tar.xz")) + (sha256 + (base32 + "08p27wv1pr9ql2zc3f3qkkymci46q7myvh8r5ijippnbwr2gihcb")))))) + ;; FIXME: This package is here to prevent many rebuilds on x86_64 and i686 ;; from commit fc9dbf41311d99d0fd8befc789ea7c0e35911890. Update users of ;; this in the next rebuild cycle. -- cgit v1.2.3 From 63b695740479884dfc48a8436e20f8618a7478c6 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Sat, 1 Dec 2018 18:52:42 +0530 Subject: gnu: Add librepcb. * gnu/packages/engineering.scm (librepcb): New variable. --- gnu/packages/engineering.scm | 53 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index 308501f882..2105d989f7 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; Copyright © 2018 Clément Lassieur ;;; Copyright © 2018 Jonathan Brielmaier +;;; Copyright © 2018 Arun Isaac ;;; ;;; This file is part of GNU Guix. ;;; @@ -1853,3 +1854,55 @@ The S letter indicates SPICE. The purpose of the Qucs-S subproject is to use free SPICE circuit simulation kernels with the Qucs GUI. It provides the simulator backends @code{Qucsator}, @code{ngspice} and @code{Xyce}.") (license license:gpl2+))) + +(define-public librepcb + (package + (name "librepcb") + (version "0.1.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.librepcb.org/releases/0.1.0/librepcb-" + version "-source.zip")) + (sha256 + (base32 + "0affvwwgs1j2wx6bb3zfa2jbfxpckklr8cka2nkswca0p82wd3dv")))) + (build-system gnu-build-system) + (inputs + `(("qtbase" ,qtbase) + ("zlib" ,zlib))) + (native-inputs + `(("qttools" ,qttools) ; for lrelease + ("unzip" ,unzip))) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (mkdir-p "build") + (chdir "build") + (let ((lrelease (string-append (assoc-ref inputs "qttools") + "/bin/lrelease")) + (out (assoc-ref outputs "out"))) + (invoke "qmake" + (string-append "QMAKE_LRELEASE=" lrelease) + (string-append "PREFIX=" out) + "../librepcb.pro"))))))) + (home-page "https://librepcb.org/") + (synopsis "Electronic Design Automation tool") + (description "LibrePCB is @dfn{Electronic Design Automation} (EDA) +software to develop printed circuit boards. It features human readable file +formats and complete project management with library, schematic and board +editors.") + (license (list license:gpl3+ + license:boost1.0 ; libs/clipper, + ; libs/optional/tests/catch.hpp, + ; libs/sexpresso/tests/catch.hpp + license:expat ; libs/delaunay-triangulation, + ; libs/parseagle, libs/type_safe + license:asl2.0 ; libs/fontobene, libs/googletest, + ; libs/parseagle + license:isc ; libs/hoedown + license:cc0 ; libs/optional, libs/sexpresso + license:bsd-2 ; libs/optional/tests/catch.hpp + license:lgpl2.1+)))) ; libs/quazip -- cgit v1.2.3 From d870cc5e8acfed6fee318a66c3ffc7244aa376a1 Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Thu, 13 Dec 2018 08:32:50 -0500 Subject: gnu: mit-scheme: Update to 10.1.3. * gnu/packages/scheme.scm (mit-scheme): Update to 10.1.3. [arguments]: Update 'unpack', 'configure-doc', and 'install-doc' phases accordingly. [supported-systems]: Limit to i686-linux and x86_64-linux. --- gnu/packages/scheme.scm | 29 ++++++++++------------------- 1 file changed, 10 insertions(+), 19 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm index 7267afd709..e8de187650 100644 --- a/gnu/packages/scheme.scm +++ b/gnu/packages/scheme.scm @@ -80,7 +80,7 @@ (define-public mit-scheme (package (name "mit-scheme") - (version "9.2") + (version "10.1.3") (source #f) ; see below (outputs '("out" "doc")) (build-system gnu-build-system) @@ -100,10 +100,7 @@ ;; Delete these dangling symlinks since they break ;; `patch-shebangs'. (for-each delete-file - (append '("src/lib/shim-config.scm") - (find-files "src/lib/lib" "\\.so$") - (find-files "src/lib" "^liarc-") - (find-files "src/compiler" "^make\\."))) + (find-files "src/compiler" "^make\\.")) (chdir "src") #t)) ;; FIXME: the texlive-union insists on regenerating fonts. It stores @@ -128,9 +125,6 @@ (invoke bin/sh "./configure" (string-append "--prefix=" out) (string-append "SHELL=" bin/sh)) - (substitute* '("Makefile" "make-common") - (("/lib/mit-scheme/doc") - (string-append "/share/doc/" ,name "-" ,version))) #t)))) (add-after 'build 'build-doc (lambda* _ @@ -147,11 +141,11 @@ (with-directory-excursion "../doc" (for-each (lambda (target) (invoke "make" target)) - '("install-config" "install-info-gz" "install-man" + '("install-info-gz" "install-man" "install-html" "install-pdf"))) (mkdir-p new-doc/mit-scheme-dir) (copy-recursively - (string-append old-doc-dir "/" ,name "-" ,version) + (string-append old-doc-dir "/" ,name) new-doc/mit-scheme-dir) (delete-file-recursively old-doc-dir) #t)))))) @@ -177,24 +171,21 @@ ("x86_64-linux" (string-append version "-x86-64")) ("i686-linux" - (string-append version "-i386")) - (_ - (string-append "c-" version))) + (string-append version "-i386"))) ".tar.gz")) (sha256 (match (%current-system) ("x86_64-linux" (base32 - "1skzxxhr0iq96bf0j5m7mvf3i4sppfyfa6gpqn34mwgkw1fx8274")) + "03m7cc035w3avs91j2pcz9f15ssgvgp3rm045d1vbydqrkzfyw8k")) ("i686-linux" (base32 - "1fmlpnhf5a75db93phajh4ysbdgrgl72v45lk3kznriprl0a7jc6")) - (_ - (base32 - "0w5ib5vsidihb4hb6fma3sp596ykr8izagm57axvgd6lqzwicsjg")))))))) + "05sjyz90xxfnmi87qv8x0yx0fcallnzl1dciygdafp317pn489is")))))))) ;; Fails to build on MIPS, see . - (supported-systems '("x86_64-linux" "i686-linux" "armhf-linux")) + ;; Also, the portable C version of MIT/GNU Scheme did not work in time for + ;; release in version 10.1. + (supported-systems '("x86_64-linux" "i686-linux")) (home-page "https://www.gnu.org/software/mit-scheme/") (synopsis "A Scheme implementation with integrated editor and debugger") -- cgit v1.2.3 From 5e741ff0212cc09e086f566493508166f4e2e1b8 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Thu, 13 Dec 2018 14:36:38 +0100 Subject: gnu: go-ipfs: Work around tar bomb. * gnu/packages/ipfs.scm (go-ipfs)[source](method): Switch to URL-FETCH/TARBOMB. (file-name): New field. [arguments]: Add 'make-files-writable' phase. --- gnu/packages/ipfs.scm | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/ipfs.scm b/gnu/packages/ipfs.scm index 82ef0ea028..a67919691f 100644 --- a/gnu/packages/ipfs.scm +++ b/gnu/packages/ipfs.scm @@ -218,17 +218,27 @@ written in Go.") (version "0.4.18") (source (origin - (method url-fetch) + (method url-fetch/tarbomb) (uri (string-append "https://dist.ipfs.io/go-ipfs/v" version "/go-ipfs-source.tar.gz")) (sha256 (base32 - "19hfgbyn5sr1bw0cwm3gsjz0w3b3vh3mmkax1906raah30lavj1x")))) + "19hfgbyn5sr1bw0cwm3gsjz0w3b3vh3mmkax1906raah30lavj1x")) + (file-name (string-append name "-" version "-source")))) (build-system go-build-system) (arguments '(#:unpack-path "github.com/ipfs/go-ipfs" - #:import-path "github.com/ipfs/go-ipfs/cmd/ipfs")) + #:import-path "github.com/ipfs/go-ipfs/cmd/ipfs" + #:phases (modify-phases %standard-phases + (add-before 'reset-gzip-timestamps 'make-files-writable + (lambda* (#:key outputs #:allow-other-keys) + ;; Make sure .gz files are writable so that the + ;; 'reset-gzip-timestamps' phase can do its work. + (let ((out (assoc-ref outputs "out"))) + (for-each make-file-writable + (find-files out "\\.gz$")) + #t)))))) (home-page "https://ipfs.io") (synopsis "Go implementation of IPFS, a peer-to-peer hypermedia protocol") (description "IPFS is a global, versioned, peer-to-peer filesystem. It -- cgit v1.2.3 From 6b34499dc62a55283dabd04c39f9b4d53fcf13c8 Mon Sep 17 00:00:00 2001 From: Rutger Helling Date: Wed, 12 Dec 2018 11:57:36 +0100 Subject: gnu: qemu: Update to 3.1.0. * gnu/packages/virtualization.scm (qemu): Update to 3.1.0. [source]: Remove obsolete patches. * gnu/packages/patches/qemu-CVE-2018-16847.patch, gnu/packages/patches/qemu-CVE-2018-16867.patch: Delete files. * gnu/local.mk (dist_patch_DATA): Remove them. --- gnu/local.mk | 2 - gnu/packages/patches/qemu-CVE-2018-16847.patch | 158 ------------------------- gnu/packages/patches/qemu-CVE-2018-16867.patch | 49 -------- gnu/packages/virtualization.scm | 6 +- 4 files changed, 2 insertions(+), 213 deletions(-) delete mode 100644 gnu/packages/patches/qemu-CVE-2018-16847.patch delete mode 100644 gnu/packages/patches/qemu-CVE-2018-16867.patch (limited to 'gnu') diff --git a/gnu/local.mk b/gnu/local.mk index 4f2437befa..0f34ec9a3d 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1112,8 +1112,6 @@ dist_patch_DATA = \ %D%/packages/patches/python-unittest2-remove-argparse.patch \ %D%/packages/patches/python-waitress-fix-tests.patch \ %D%/packages/patches/qemu-glibc-2.27.patch \ - %D%/packages/patches/qemu-CVE-2018-16847.patch \ - %D%/packages/patches/qemu-CVE-2018-16867.patch \ %D%/packages/patches/qt4-ldflags.patch \ %D%/packages/patches/qtbase-use-TZDIR.patch \ %D%/packages/patches/qtscript-disable-tests.patch \ diff --git a/gnu/packages/patches/qemu-CVE-2018-16847.patch b/gnu/packages/patches/qemu-CVE-2018-16847.patch deleted file mode 100644 index c76bdf764a..0000000000 --- a/gnu/packages/patches/qemu-CVE-2018-16847.patch +++ /dev/null @@ -1,158 +0,0 @@ -Fix CVE-2018-16847: - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-16847 - -Patch copied from upstream source repository: - -https://git.qemu.org/?p=qemu.git;a=commitdiff;h=87ad860c622cc8f8916b5232bd8728c08f938fce - -From 87ad860c622cc8f8916b5232bd8728c08f938fce Mon Sep 17 00:00:00 2001 -From: Paolo Bonzini -Date: Tue, 20 Nov 2018 19:41:48 +0100 -Subject: [PATCH] nvme: fix out-of-bounds access to the CMB -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Because the CMB BAR has a min_access_size of 2, if you read the last -byte it will try to memcpy *2* bytes from n->cmbuf, causing an off-by-one -error. This is CVE-2018-16847. - -Another way to fix this might be to register the CMB as a RAM memory -region, which would also be more efficient. However, that might be a -change for big-endian machines; I didn't think this through and I don't -know how real hardware works. Add a basic testcase for the CMB in case -somebody does this change later on. - -Cc: Keith Busch -Cc: qemu-block@nongnu.org -Reported-by: Li Qiang -Reviewed-by: Li Qiang -Tested-by: Li Qiang -Signed-off-by: Paolo Bonzini -Reviewed-by: Philippe Mathieu-Daudé -Tested-by: Philippe Mathieu-Daudé -Signed-off-by: Kevin Wolf ---- - hw/block/nvme.c | 2 +- - tests/Makefile.include | 2 +- - tests/nvme-test.c | 68 +++++++++++++++++++++++++++++++++++------- - 3 files changed, 60 insertions(+), 12 deletions(-) - -diff --git a/hw/block/nvme.c b/hw/block/nvme.c -index 28d284346dd..8c35cab2b43 100644 ---- a/hw/block/nvme.c -+++ b/hw/block/nvme.c -@@ -1201,7 +1201,7 @@ static const MemoryRegionOps nvme_cmb_ops = { - .write = nvme_cmb_write, - .endianness = DEVICE_LITTLE_ENDIAN, - .impl = { -- .min_access_size = 2, -+ .min_access_size = 1, - .max_access_size = 8, - }, - }; -diff --git a/tests/Makefile.include b/tests/Makefile.include -index 613242bc6ef..fb0b449c02a 100644 ---- a/tests/Makefile.include -+++ b/tests/Makefile.include -@@ -730,7 +730,7 @@ tests/test-hmp$(EXESUF): tests/test-hmp.o - tests/machine-none-test$(EXESUF): tests/machine-none-test.o - tests/drive_del-test$(EXESUF): tests/drive_del-test.o $(libqos-virtio-obj-y) - tests/qdev-monitor-test$(EXESUF): tests/qdev-monitor-test.o $(libqos-pc-obj-y) --tests/nvme-test$(EXESUF): tests/nvme-test.o -+tests/nvme-test$(EXESUF): tests/nvme-test.o $(libqos-pc-obj-y) - tests/pvpanic-test$(EXESUF): tests/pvpanic-test.o - tests/i82801b11-test$(EXESUF): tests/i82801b11-test.o - tests/ac97-test$(EXESUF): tests/ac97-test.o -diff --git a/tests/nvme-test.c b/tests/nvme-test.c -index 7674a446e4f..2700ba838aa 100644 ---- a/tests/nvme-test.c -+++ b/tests/nvme-test.c -@@ -8,25 +8,73 @@ - */ - - #include "qemu/osdep.h" -+#include "qemu/units.h" - #include "libqtest.h" -+#include "libqos/libqos-pc.h" -+ -+static QOSState *qnvme_start(const char *extra_opts) -+{ -+ QOSState *qs; -+ const char *arch = qtest_get_arch(); -+ const char *cmd = "-drive id=drv0,if=none,file=null-co://,format=raw " -+ "-device nvme,addr=0x4.0,serial=foo,drive=drv0 %s"; -+ -+ if (strcmp(arch, "i386") == 0 || strcmp(arch, "x86_64") == 0) { -+ qs = qtest_pc_boot(cmd, extra_opts ? : ""); -+ global_qtest = qs->qts; -+ return qs; -+ } -+ -+ g_printerr("nvme tests are only available on x86\n"); -+ exit(EXIT_FAILURE); -+} -+ -+static void qnvme_stop(QOSState *qs) -+{ -+ qtest_shutdown(qs); -+} - --/* Tests only initialization so far. TODO: Replace with functional tests */ - static void nop(void) - { -+ QOSState *qs; -+ -+ qs = qnvme_start(NULL); -+ qnvme_stop(qs); - } - --int main(int argc, char **argv) -+static void nvmetest_cmb_test(void) - { -- int ret; -+ const int cmb_bar_size = 2 * MiB; -+ QOSState *qs; -+ QPCIDevice *pdev; -+ QPCIBar bar; - -- g_test_init(&argc, &argv, NULL); -- qtest_add_func("/nvme/nop", nop); -+ qs = qnvme_start("-global nvme.cmb_size_mb=2"); -+ pdev = qpci_device_find(qs->pcibus, QPCI_DEVFN(4,0)); -+ g_assert(pdev != NULL); -+ -+ qpci_device_enable(pdev); -+ bar = qpci_iomap(pdev, 2, NULL); -+ -+ qpci_io_writel(pdev, bar, 0, 0xccbbaa99); -+ g_assert_cmpint(qpci_io_readb(pdev, bar, 0), ==, 0x99); -+ g_assert_cmpint(qpci_io_readw(pdev, bar, 0), ==, 0xaa99); -+ -+ /* Test partially out-of-bounds accesses. */ -+ qpci_io_writel(pdev, bar, cmb_bar_size - 1, 0x44332211); -+ g_assert_cmpint(qpci_io_readb(pdev, bar, cmb_bar_size - 1), ==, 0x11); -+ g_assert_cmpint(qpci_io_readw(pdev, bar, cmb_bar_size - 1), !=, 0x2211); -+ g_assert_cmpint(qpci_io_readl(pdev, bar, cmb_bar_size - 1), !=, 0x44332211); -+ g_free(pdev); - -- qtest_start("-drive id=drv0,if=none,file=null-co://,format=raw " -- "-device nvme,drive=drv0,serial=foo"); -- ret = g_test_run(); -+ qnvme_stop(qs); -+} - -- qtest_end(); -+int main(int argc, char **argv) -+{ -+ g_test_init(&argc, &argv, NULL); -+ qtest_add_func("/nvme/nop", nop); -+ qtest_add_func("/nvme/cmb_test", nvmetest_cmb_test); - -- return ret; -+ return g_test_run(); - } --- -2.19.2 - diff --git a/gnu/packages/patches/qemu-CVE-2018-16867.patch b/gnu/packages/patches/qemu-CVE-2018-16867.patch deleted file mode 100644 index 1403d8e0f8..0000000000 --- a/gnu/packages/patches/qemu-CVE-2018-16867.patch +++ /dev/null @@ -1,49 +0,0 @@ -Fix CVE-2018-16867: - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-16867 -https://seclists.org/oss-sec/2018/q4/202 - -Patch copied from upstream source repository: - -https://git.qemu.org/?p=qemu.git;a=commitdiff;h=c52d46e041b42bb1ee6f692e00a0abe37a9659f6 - -From c52d46e041b42bb1ee6f692e00a0abe37a9659f6 Mon Sep 17 00:00:00 2001 -From: Gerd Hoffmann -Date: Mon, 3 Dec 2018 11:10:45 +0100 -Subject: [PATCH] usb-mtp: outlaw slashes in filenames -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Slash is unix directory separator, so they are not allowed in filenames. -Note this also stops the classic escape via "../". - -Fixes: CVE-2018-16867 -Reported-by: Michael Hanselmann -Signed-off-by: Gerd Hoffmann -Reviewed-by: Philippe Mathieu-Daudé -Message-id: 20181203101045.27976-3-kraxel@redhat.com ---- - hw/usb/dev-mtp.c | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/hw/usb/dev-mtp.c b/hw/usb/dev-mtp.c -index 0f6a9702ef1..100b7171f4e 100644 ---- a/hw/usb/dev-mtp.c -+++ b/hw/usb/dev-mtp.c -@@ -1719,6 +1719,12 @@ static void usb_mtp_write_metadata(MTPState *s) - - filename = utf16_to_str(dataset->length, dataset->filename); - -+ if (strchr(filename, '/')) { -+ usb_mtp_queue_result(s, RES_PARAMETER_NOT_SUPPORTED, d->trans, -+ 0, 0, 0, 0); -+ return; -+ } -+ - o = usb_mtp_object_lookup_name(p, filename, dataset->length); - if (o != NULL) { - next_handle = o->handle; --- -2.19.2 - diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index 0502bb38c4..8e361558bf 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -95,16 +95,14 @@ (define-public qemu (package (name "qemu") - (version "3.0.0") + (version "3.1.0") (source (origin (method url-fetch) (uri (string-append "https://download.qemu.org/qemu-" version ".tar.xz")) - (patches (search-patches "qemu-CVE-2018-16847.patch" - "qemu-CVE-2018-16867.patch")) (sha256 (base32 - "04sp3f1gp4bdb913jf7fw761njaqp2l32wgipp1sapmxx17zcyld")))) + "1z5bd5nfyjvhfi1s95labc82y4hjdjjkdabw931362ls0zghh1ba")))) (build-system gnu-build-system) (arguments '(;; Running tests in parallel can occasionally lead to failures, like: -- cgit v1.2.3 From 7ef64ec8476e9f13262d7755aff27c97dd2cd683 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 14 Dec 2018 00:36:12 +0100 Subject: gnu: guix: Update to 60b0402. * gnu/packages/package-management.scm (guix): Update to 60b0402. --- gnu/packages/package-management.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index ae8612491f..226add808a 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -102,8 +102,8 @@ ;; Note: the 'update-guix-package.scm' script expects this definition to ;; start precisely like this. (let ((version "0.16.0") - (commit "6ddc63e599a26c302f74d0622f67cfd987f0dc5f") - (revision 3)) + (commit "60b04024f8823192b74c1ed5b14f318049865ac7") + (revision 4)) (package (name "guix") @@ -119,7 +119,7 @@ (commit commit))) (sha256 (base32 - "0vzxrsfbr4phhy60m7pc6klb61whqc404c3x76ydj70xvi1xa0wz")) + "0s80w8wx5qi88bbils699wrlqr5czfvp6c64m801g5dlgkj71rpk")) (file-name (string-append "guix-" version "-checkout")))) (build-system gnu-build-system) (arguments -- cgit v1.2.3 From e6658c7b3803352c666fb9469ce135091ce22dbb Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 13 Dec 2018 19:56:33 -0500 Subject: gnu: linux-libre@4.4: Update to 4.4.167. * gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.167. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 1cdf2bf478..d4423240d5 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -439,8 +439,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.4 - (make-linux-libre "4.4.166" - "1pb6hk141hzf6yf2423h0jfv9bjq09cynsp1xbm12mxayn637xmm" + (make-linux-libre "4.4.167" + "1107bz3v2bjngz3rwqgcr66rbf0ir8n2fnm07rx0l0xyrfpfl7rh" %intel-compatible-systems #:configuration-file kernel-config)) -- cgit v1.2.3 From c4cc1b9d20212369d485a7b3788160117926ea3b Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 13 Dec 2018 19:57:18 -0500 Subject: gnu: linux-libre@4.9: Update to 4.9.145. * gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.145. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index d4423240d5..014a144759 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -433,8 +433,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.9 - (make-linux-libre "4.9.144" - "1jckikf1j294gr3sf43bfy3h34q3yqbqgqbj9l0px427h3n2vgkk" + (make-linux-libre "4.9.145" + "18xbv2m742p3dd68wlsn70if67k0g8qvqcrk1ffhcj1712s28nif" %intel-compatible-systems #:configuration-file kernel-config)) -- cgit v1.2.3 From 3173a3f55497a41baa7c75f50348c91331b8b9bc Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 13 Dec 2018 19:58:07 -0500 Subject: gnu: linux-libre@4.14: Update to 4.14.88. * gnu/packages/linux.scm (%linux-libre-4.14-version): Update to 4.14.88. (%linux-libre-4.14-hash): Update hash. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 014a144759..4b25717f9c 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -423,8 +423,8 @@ It has been modified to remove all non-free binary blobs.") #:patches %linux-libre-4.19-patches #:configuration-file kernel-config)) -(define %linux-libre-4.14-version "4.14.87") -(define %linux-libre-4.14-hash "1013h3qbsq76vlhrbl3gci25jbwydzm7k0bg08fbq42qrhjq92ak") +(define %linux-libre-4.14-version "4.14.88") +(define %linux-libre-4.14-hash "1qsnwaw4kbrchlc6cv9i8a9cgi06cf8pn4hqj0k6g4xdqrwf3k6a") (define-public linux-libre-4.14 (make-linux-libre %linux-libre-4.14-version -- cgit v1.2.3 From ea49fbdea3bbb9b55951b7bff9d9cf768fd23161 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 13 Dec 2018 19:59:02 -0500 Subject: gnu: linux-libre: Update to 4.19.9. * gnu/packages/linux.scm (%linux-libre-version): Update to 4.19.9. (%linux-libre-hash): Update hash. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 4b25717f9c..ae16491f26 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -400,8 +400,8 @@ It has been modified to remove all non-free binary blobs.") ;; supports qemu "virt" machine and possibly a large number of ARM boards. ;; See : https://wiki.debian.org/DebianKernel/ARMMP. -(define %linux-libre-version "4.19.8") -(define %linux-libre-hash "1rmgf3sbcyb47s3sagac7zrrpznq0vlcbzjzlzir95biy7lbswb3") +(define %linux-libre-version "4.19.9") +(define %linux-libre-hash "0yi7f7c5nxk03mja82kmnz2681bxpyl4drvz767dsx19d6gq1h1d") (define %linux-libre-4.19-patches (list %boot-logo-patch -- cgit v1.2.3 From bd208a13ef4c203cf9035c0ccf454a60c1949c58 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Thu, 13 Dec 2018 13:56:41 +0100 Subject: gnu: ghc-call-stack-boot: Make it a hidden package. This package doesn't sound like it should be directly used, so hide it. * gnu/packages/haskell.scm (ghc-call-stack-boot): Use hidden-package to hide the package. --- gnu/packages/haskell.scm | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 57435dca07..8d0e2aef69 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -5069,10 +5069,11 @@ call stacks with different versions of the compiler.") ;; This is used as an input to ghc-hunit. We cannot use ghc-call-stack there, ;; because it depends on ghc-nanospec, which depends on ghc-hunit. (define-public ghc-call-stack-boot - (package - (inherit ghc-call-stack) - (arguments '(#:tests? #f)) - (inputs '()))) + (hidden-package + (package + (inherit ghc-call-stack) + (arguments '(#:tests? #f)) + (inputs '())))) (define-public ghc-statevar (package -- cgit v1.2.3 From dceae6101105a408435db453447209b7d547041e Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Fri, 14 Dec 2018 23:14:40 +0100 Subject: gnu: silkaj: Update to 0.6.1. * gnu/packages/finance.scm (silkaj): Update to 0.6.1. --- gnu/packages/finance.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index 7d7c3ab111..26cc1895a1 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -886,7 +886,7 @@ main features are: (define-public silkaj (package (name "silkaj") - (version "0.6.0") + (version "0.6.1") (source (origin (method git-fetch) @@ -896,7 +896,7 @@ main features are: (file-name (git-file-name name version)) (sha256 (base32 - "02n028rz1pshgh7w0af3b291r8lwvhzskm1q98d991gr8rscvad2")))) + "0a99gbgdd7m9wisqhqpfyaim0rlv9gkp8gmrppkagqf6j0683igh")))) (build-system python-build-system) (arguments `(#:tests? #f)) ;no test -- cgit v1.2.3 From 066d967f003a6d1d9141abc9e80ef2145b0c86a6 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Fri, 14 Dec 2018 23:22:10 +0100 Subject: gnu: snap: Update to 4.2.2.9. * gnu/packages/education.scm (snap): Update to 4.2.2.9. --- gnu/packages/education.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/education.scm b/gnu/packages/education.scm index b333bb9d35..567dfce58d 100644 --- a/gnu/packages/education.scm +++ b/gnu/packages/education.scm @@ -243,7 +243,7 @@ easy.") (define-public snap (package (name "snap") - (version "4.2.2.2") + (version "4.2.2.9") (source (origin (method git-fetch) @@ -253,7 +253,7 @@ easy.") (file-name (git-file-name name version)) (sha256 (base32 - "0bay08yr58qj8wzpjg33gdj78rfhyskfzidknpdl3cr1jrj6i4p9")))) + "07qyhh4f8gr1fqyvxa2i6lkzaaa0vl12yzllgp81rdil8z8bi976")))) (build-system trivial-build-system) (arguments `(#:modules ((guix build utils)) -- cgit v1.2.3 From c11f3b3d68b0311ca388f55f72a540908cf5e0f1 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 14 Dec 2018 10:51:29 +0100 Subject: gnu: chez-scheme: Replace texlive input with minimal texlive-union. * gnu/packages/chez.scm (chez-scheme)[native-inputs]: Replace texlive with minimal texlive-union. --- gnu/packages/chez.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/chez.scm b/gnu/packages/chez.scm index 929e50ee9b..60776b60f7 100644 --- a/gnu/packages/chez.scm +++ b/gnu/packages/chez.scm @@ -88,7 +88,8 @@ ("zlib:static" ,zlib "static") ("stex" ,stex))) (native-inputs - `(("texlive" ,texlive) + `(("texlive" ,(texlive-union (list texlive-latex-oberdiek + texlive-generic-epsf))) ("ghostscript" ,ghostscript) ("netpbm" ,netpbm))) (native-search-paths -- cgit v1.2.3 From 13d37d840366e79dc5c616f261bcb9a552b999f1 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 14 Dec 2018 10:52:33 +0100 Subject: gnu: chez-web: Fix conflicting bootstrap phase. * gnu/packages/chez.scm (chez-web): Fix conflicting bootstrap phase. --- gnu/packages/chez.scm | 3 +++ 1 file changed, 3 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/chez.scm b/gnu/packages/chez.scm index 60776b60f7..c7858147cf 100644 --- a/gnu/packages/chez.scm +++ b/gnu/packages/chez.scm @@ -289,6 +289,9 @@ and 32-bit PowerPC architectures.") #:tests? #f ; no tests #:phases (modify-phases %standard-phases + ;; This package has a custom "bootstrap" script that + ;; is meant to be run from the Makefile. + (delete 'bootstrap) (replace 'configure (lambda* _ (copy-file "config.mk.template" "config.mk") -- cgit v1.2.3 From 8a2cfc7bea37fd5cc5d384ac16d7cd3bd5603ab9 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 14 Dec 2018 10:54:16 +0100 Subject: gnu: coq: Remove unused texlive and hevea from native-inputs. * gnu/packages/ocaml.scm (coq)[native-inputs]: Remove unused texlive and hevea. --- gnu/packages/ocaml.scm | 3 --- 1 file changed, 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 11389440dc..caf2c533de 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -642,9 +642,6 @@ the OCaml core distribution.") (variable "COQPATH") (files (list "lib/coq/user-contrib"))))) (build-system ocaml-build-system) - (native-inputs - `(("texlive" ,texlive) - ("hevea" ,hevea))) (inputs `(("lablgtk" ,lablgtk) ("python" ,python-2) -- cgit v1.2.3 From 547ab6506f6afed3f58596e2df981d1cd6a21205 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 14 Dec 2018 16:39:13 +0100 Subject: gnu: Add texlive-generic-xypic. * gnu/packages/tex.scm (texlive-generic-xypic): New variable. --- gnu/packages/tex.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 916aa54d58..88959adcc1 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -4940,3 +4940,38 @@ used inside tables and moving arguments such as footnotes and section titles.") ;; No version of the GPL is specified. (license license:gpl3+))) + +(define-public texlive-generic-xypic + (package + (name "texlive-generic-xypic") + (version (number->string %texlive-revision)) + (source + (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/generic/xypic")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1g5cyxwdfznq4lk9zl6fkjkapmhmwd2cm4m5aibxj20qgwnaggfz")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/tex/generic/xypic"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (home-page "https://www.ctan.org/pkg/xypic") + (synopsis "Flexible diagramming macros for TeX") + (description + "A package for typesetting a variety of graphs and diagrams with TeX. +Xy-pic works with most formats (including LaTeX, AMS-LaTeX, AMS-TeX, and plain +TeX).") + (license license:gpl3+))) -- cgit v1.2.3 From 1d9ce461f278c050e6ac93358ce74e2b85eb73a0 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 14 Dec 2018 17:09:31 +0100 Subject: gnu: Add texlive-fonts-xypic. * gnu/packages/tex.scm (texlive-fonts-xypic): New variable. --- gnu/packages/tex.scm | 79 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 88959adcc1..90dcf96858 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -4975,3 +4975,82 @@ titles.") Xy-pic works with most formats (including LaTeX, AMS-LaTeX, AMS-TeX, and plain TeX).") (license license:gpl3+))) + +(define-public texlive-fonts-xypic + (package + (name "texlive-fonts-xypic") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/fonts/source/public/xypic")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0p20v1257kwsqnrk98cdhhiz2viv8l3ly4xay4by0an3j37m9xs3")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils) + (ice-9 match)) + #:builder + (begin + (use-modules (guix build utils) + (ice-9 match)) + (let ((root (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/")) + (pkgs '(("source" . "fonts/source/public/xypic") + ("xypic-afm" . "fonts/afm/public/xypic") + ("xypic-type1" . "fonts/type1/public/xypic") + ("xypic-enc" . "fonts/enc/dvips/xypic")))) + (for-each (match-lambda + ((pkg . dir) + (let ((target (string-append root dir))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs pkg) + target)))) + pkgs) + #t)))) + (native-inputs + `(("xypic-afm" + ,(origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/fonts/afm/public/xypic")) + (revision %texlive-revision))) + (file-name (string-append name "-afm-" version "-checkout")) + (sha256 + (base32 + "149xdijxp8lw3s0qv2aqxxxyyn748z57dpr596rjvkqdffpnsddh")))) + ("xypic-type1" + ,(origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/fonts/type1/public/xypic")) + (revision %texlive-revision))) + (file-name (string-append name "-type1-" version "-checkout")) + (sha256 + (base32 + "1bln89wib7g3hcv2jny3qi6jb73k9d2vbgx3wnnjwp3ryg0846if")))) + ("xypic-enc" + ,(origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/fonts/enc/dvips/xypic")) + (revision %texlive-revision))) + (file-name (string-append name "-enc-" version "-checkout")) + (sha256 + (base32 + "0yi8vms3203l3p5slnhrrlzzp0f0jw77fkcvcaicrz2vmw9z99x7")))))) + (home-page "https://www.ctan.org/pkg/xypic") + (synopsis "Fonts for XY-pic") + (description "This package provides the XY-pic fonts.") + (license license:gpl3+))) -- cgit v1.2.3 From 315956895173bdbe54f18ac8938ad1b70f7ef93b Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 14 Dec 2018 17:09:48 +0100 Subject: gnu: Add texlive-bibtex. * gnu/packages/tex.scm (texlive-bibtex): New variable. --- gnu/packages/tex.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 90dcf96858..5763a8c653 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -5054,3 +5054,39 @@ TeX).") (synopsis "Fonts for XY-pic") (description "This package provides the XY-pic fonts.") (license license:gpl3+))) + +(define-public texlive-bibtex + (package + (name "texlive-bibtex") + (version (number->string %texlive-revision)) + (source + (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/bibtex")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1gk9q22fcb2fa1ql6cf9yw505x6a6axdzzfxbsya7nkrph860af8")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/bibtex"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (home-page "https://www.ctan.org/pkg/bibtex") + (synopsis "Process bibliographies for LaTeX") + (description + "BibTeX allows the user to store his citation data in generic form, while +printing citations in a document in the form specified by a BibTeX style, to +be specified in the document itself (one often needs a LaTeX citation-style +package, such as @command{natbib} as well).") + (license license:knuth))) -- cgit v1.2.3 From 9b405aeaa292d7d2171340af6bd5218c72a10f8c Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 14 Dec 2018 17:13:40 +0100 Subject: gnu: hypre: Replace texlive input with minimal texlive-union. * gnu/packages/maths.scm (hypre)[native-inputs]: Replace texlive with minimal texlive-union. --- gnu/packages/maths.scm | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 96a1ecb043..ad6aacf9c9 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -3707,7 +3707,13 @@ set.") `(("doc++" ,doc++) ("netpbm" ,netpbm) ("perl" ,perl) ;needed to run 'ppmquant' during tests - ("texlive" ,texlive) ;full package required for fonts + ("texlive" ,(texlive-union (list texlive-generic-xypic + texlive-fonts-xypic + texlive-latex-hyperref + texlive-latex-oberdiek + texlive-generic-ifxetex + texlive-latex-url + texlive-bibtex))) ("ghostscript" ,ghostscript))) (inputs `(("blas" ,openblas) @@ -3724,6 +3730,12 @@ set.") "--with-blas") #:phases (modify-phases %standard-phases + (add-before 'build 'set-HOME + (lambda _ + ;; FIXME: texlive-union does not find the built + ;; metafonts, so it tries to generate them in HOME. + (setenv "HOME" "/tmp") + #t)) (add-before 'configure 'chdir-src (lambda _ (chdir "src"))) (replace 'configure @@ -3738,7 +3750,7 @@ set.") configure-flags))))))) (add-after 'build 'build-docs (lambda _ - (zero? (system* "make" "-Cdocs" "pdf" "html")))) + (invoke "make" "-Cdocs" "pdf" "html"))) (replace 'check (lambda _ (setenv "LD_LIBRARY_PATH" (string-append (getcwd) "/hypre/lib")) -- cgit v1.2.3 From 68139bce4ae0be3e6af26783e44504b0627a0149 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 14 Dec 2018 17:48:05 +0100 Subject: gnu: unison: Replace texlive input with texlive-tiny. * gnu/packages/ocaml.scm (unison)[native-inputs]: Replace texlive with texlive-tiny. --- gnu/packages/ocaml.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index caf2c533de..e4a76acc89 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -993,7 +993,7 @@ libpanel, librsvg and quartz.") `(("ocaml" ,ocaml-4.02) ;; For documentation ("ghostscript" ,ghostscript) - ("texlive" ,texlive) + ("texlive" ,texlive-tiny) ("hevea" ,hevea) ("lynx" ,lynx) ("which" ,which))) -- cgit v1.2.3 From bbd30e9785dcb54e892bf01a35b4f89c05e0a9fc Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 14 Dec 2018 19:43:45 +0100 Subject: gnu: texlive-dvips: Include all maps. * gnu/packages/tex.scm (texlive-dvips): Include all maps. --- gnu/packages/tex.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 5763a8c653..821ee641b6 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -265,7 +265,7 @@ This package contains the binaries.") (let* ((root (string-append (assoc-ref %outputs "out") "/share/texmf-dist")) (dvips (string-append root "/dvips")) - (maps (string-append root "/fonts/map/dvips/tetex")) + (maps (string-append root "/fonts/map/dvips")) (encs (string-append root "/fonts/enc/dvips/base"))) (mkdir-p dvips) (copy-recursively (assoc-ref %build-inputs "source") dvips) @@ -281,12 +281,12 @@ This package contains the binaries.") (uri (svn-reference (url (string-append "svn://www.tug.org/texlive/tags/" %texlive-tag "/Master/texmf-dist/" - "/fonts/map/dvips/tetex")) + "/fonts/map/dvips")) (revision %texlive-revision))) (file-name (string-append "dvips-font-maps-" version "-checkout")) (sha256 (base32 - "100208pg7q6lj7swiq9p9287nn6b64bl62bnlaxpjni9y2kdrqy5")))) + "09hply3nmy24ilnc6cl8q70jcqxvq6bwri572kms008ini3h9vqh")))) ("dvips-base-enc" ,(origin (method svn-fetch) -- cgit v1.2.3 From 6534e8853d27a54af1b24bc0a73dc61401c4e77c Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 14 Dec 2018 19:44:36 +0100 Subject: gnu: texlive-fonts-cm: Include type1 fonts. * gnu/packages/tex.scm (texlive-fonts-cm): Include type1 fonts. --- gnu/packages/tex.scm | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 821ee641b6..d08251ff5a 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -609,20 +609,36 @@ documents.") (find-files "." "cm(.*[0-9]+.*|inch)\\.mf$")) #t)) (replace 'install - (lambda* (#:key outputs #:allow-other-keys) + (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (tfm (string-append out "/share/texmf-dist/fonts/tfm/public/cm")) - (mf (string-append - out "/share/texmf-dist/fonts/source/public/cm"))) + (mf (string-append + out "/share/texmf-dist/fonts/source/public/cm")) + (type1 (string-append + out "/share/texmf-dist/fonts/type1/public/amsfonts/cm"))) (for-each (cut install-file <> tfm) (find-files "build" "\\.*")) (for-each (cut install-file <> mf) (find-files "." "\\.mf")) + (mkdir-p type1) + (copy-recursively (assoc-ref inputs "cm-type1") type1) #t)))))) (native-inputs `(("texlive-bin" ,texlive-bin) - ("texlive-metafont-base" ,texlive-metafont-base))) + ("texlive-metafont-base" ,texlive-metafont-base) + ("cm-type1" + ,(origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/fonts/type1/public/amsfonts/cm")) + (revision %texlive-revision))) + (file-name (string-append name "-type1-" version "-checkout")) + (sha256 + (base32 + "12jyl9jp3hidifa4l5pmi47p71d5mb5kj5rknxkygilix8yz2iy6")))))) (home-page "https://www.ctan.org/pkg/cm") (synopsis "Computer Modern fonts for TeX") (description "This package provides the Computer Modern fonts by Donald -- cgit v1.2.3 From 7002a45d6951715af6a2e793de1e47d539f3f253 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 14 Dec 2018 19:45:10 +0100 Subject: gnu: texlive-generic-pdftex: Include pdftex map. * gnu/packages/tex.scm (texlive-generic-pdftex): Include pdftex map. --- gnu/packages/tex.scm | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index d08251ff5a..ce2fbb3708 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -4011,10 +4011,27 @@ e-TeX.") (begin (use-modules (guix build utils)) (let ((target (string-append (assoc-ref %outputs "out") - "/share/texmf-dist/tex/generic/pdftex"))) + "/share/texmf-dist/tex/generic/pdftex")) + (target-map (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/fonts/map/pdftex"))) (mkdir-p target) (copy-recursively (assoc-ref %build-inputs "source") target) + (mkdir-p target-map) + (copy-recursively (assoc-ref %build-inputs "pdftex-map") target-map) #t)))) + (native-inputs + `(("pdftex-map" + ,(origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/fonts/map/pdftex")) + (revision %texlive-revision))) + (file-name (string-append name "-map-" version "-checkout")) + (sha256 + (base32 + "197z9kx3bpnz58f5xrn5szyvmb3fxqq12y5sc4dw4jnm3xll8ji2")))))) (home-page "https://www.ctan.org/pkg/pdftex") (synopsis "TeX extension for direct creation of PDF") (description -- cgit v1.2.3 From 744b883ed6d6367991d74e09a3b1d51c1e6d76f3 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 14 Dec 2018 19:50:33 +0100 Subject: gnu: Add texlive-fonts-charter. * gnu/packages/tex.scm (texlive-fonts-charter): New variable. --- gnu/packages/tex.scm | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index ce2fbb3708..5c9ef56601 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -5123,3 +5123,72 @@ printing citations in a document in the form specified by a BibTeX style, to be specified in the document itself (one often needs a LaTeX citation-style package, such as @command{natbib} as well).") (license license:knuth))) + +(define-public texlive-fonts-charter + (package + (name "texlive-fonts-charter") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/fonts/type1/bitstrea/charter")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0yvib45xxff3jm5270zij4q888pivbc18cqs7lz4pqfhn1am4wnv")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils) + (ice-9 match)) + #:builder + (begin + (use-modules (guix build utils) + (ice-9 match)) + (let ((root (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/")) + (pkgs '(("source" . "fonts/type1/bitstrea/charter") + ("charter-afm" . "fonts/afm/bitstrea/charter") + ("charter-tfm" . "fonts/tfm/bitstrea/charter")))) + (for-each (match-lambda + ((pkg . dir) + (let ((target (string-append root dir))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs pkg) + target)))) + pkgs) + #t)))) + (native-inputs + `(("charter-afm" + ,(origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/fonts/afm/bitstrea/charter")) + (revision %texlive-revision))) + (file-name (string-append name "-afm-" version "-checkout")) + (sha256 + (base32 + "02nbkqrlr3vypnzslmr7dxg1353mmc0rl4ynx0s6qbvf313fq76a")))) + ("charter-tfm" + ,(origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/fonts/tfm/bitstrea/charter")) + (revision %texlive-revision))) + (file-name (string-append name "-tfm-" version "-checkout")) + (sha256 + (base32 + "0j7ci9vprivbhac70aq0z7m23hqcpx1g0i3wp1k0h8ilhimj80xk")))))) + (home-page "https://www.ctan.org/pkg/charter") + (synopsis "Charter fonts for TeX") + (description "A commercial text font donated for the common good. Support +for use with LaTeX is available in @code{freenfss}, part of +@command{psnfss}. ") + (license (license:non-copyleft (string-append "http://mirrors.ctan.org/" + "fonts/charter/readme.charter"))))) -- cgit v1.2.3 From a5bfedb45c9f4f06719200140973761547955e94 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 14 Dec 2018 19:50:54 +0100 Subject: gnu: Add texlive-context-base. * gnu/packages/tex.scm (texlive-context-base): New variable. --- gnu/packages/tex.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 5c9ef56601..765f6aa849 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -5192,3 +5192,36 @@ for use with LaTeX is available in @code{freenfss}, part of @command{psnfss}. ") (license (license:non-copyleft (string-append "http://mirrors.ctan.org/" "fonts/charter/readme.charter"))))) + +(define-public texlive-context-base + (package + (name "texlive-context-base") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/context/base")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0zwl0cg6pka13i26dpqh137391f3j9sk69cpvwrm4ivsa0rqnw6g")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/tex/context/case"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (home-page "https://www.ctan.org/pkg/context") + (synopsis "Full featured, parameter driven macro package for TeX") + (description "A full featured, parameter driven macro package, which fully +supports advanced interactive documents. See the ConTeXt garden for a wealth +of support information.") + (license license:gpl2+))) -- cgit v1.2.3 From bc9319f42ba2f9048c7790a0bab9cd447a18e95e Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 14 Dec 2018 20:04:53 +0100 Subject: gnu: chez-web: Replace texlive input with minimal texlive-union. * gnu/packages/chez.scm (chez-web)[native-inputs]: Replace texlive with minimal texlive-union. --- gnu/packages/chez.scm | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/chez.scm b/gnu/packages/chez.scm index c7858147cf..7cae5f27c2 100644 --- a/gnu/packages/chez.scm +++ b/gnu/packages/chez.scm @@ -279,7 +279,15 @@ and 32-bit PowerPC architectures.") (build-system gnu-build-system) (native-inputs `(("chez-scheme" ,chez-scheme) - ("texlive" ,texlive))) + ("ghostscript" ,ghostscript) + ("texlive" ,(texlive-union (list texlive-latex-oberdiek + texlive-generic-epsf + texlive-metapost + texlive-fonts-charter + texlive-generic-pdftex + texlive-context-base + texlive-fonts-cm + texlive-tex-plain))))) (arguments `(#:make-flags (list (string-append "PREFIX=" %output) (string-append "DOCDIR=" %output "/share/doc/" @@ -289,6 +297,12 @@ and 32-bit PowerPC architectures.") #:tests? #f ; no tests #:phases (modify-phases %standard-phases + (add-before 'build 'set-HOME + (lambda _ + ;; FIXME: texlive-union does not find the built + ;; metafonts, so it tries to generate them in HOME. + (setenv "HOME" "/tmp") + #t)) ;; This package has a custom "bootstrap" script that ;; is meant to be run from the Makefile. (delete 'bootstrap) -- cgit v1.2.3 From 1e0f2ae0283949ee2237ca0e6013b54acdc2b7a6 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Fri, 14 Dec 2018 23:01:16 +0100 Subject: gnu: chez-sockets: Replace texlive input with minimal texlive-union. * gnu/packages/chez.scm (chez-sockets)[native-inputs]: Replace texlive with minimal texlive-union. --- gnu/packages/chez.scm | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/chez.scm b/gnu/packages/chez.scm index 7cae5f27c2..10601f0bfa 100644 --- a/gnu/packages/chez.scm +++ b/gnu/packages/chez.scm @@ -345,7 +345,7 @@ programming in Scheme.") (native-inputs `(("chez-scheme" ,chez-scheme) ("chez-web" ,chez-web) - ("texlive" ,texlive))) + ("texlive" ,(texlive-union (list texlive-generic-pdftex))))) (arguments `(#:tests? #f ; no tests #:phases @@ -361,11 +361,16 @@ programming in Scheme.") (string-append var chez-h))) #t))) (add-before 'build 'tangle - (lambda _ + (lambda* (#:key inputs #:allow-other-keys) + (setenv "TEXINPUTS" + (string-append + (getcwd) ":" + (assoc-ref inputs "chez-web") "/share/texmf-local/tex/generic:" + ":")) ;; just using "make" tries to build the .c files before ;; they are created. - (and (zero? (system* "make" "sockets")) - (zero? (system* "make"))))) + (and (invoke "make" "sockets") + (invoke "make")))) (replace 'build (lambda* (#:key outputs inputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) -- cgit v1.2.3 From 6ec3de976b26a596523fbcb85c1b0860c4e3f933 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Fri, 14 Dec 2018 23:42:25 +0100 Subject: gnu: wireshark: Update to 2.6.5. * gnu/packages/networking.scm (wireshark): Update to 2.6.5. --- gnu/packages/networking.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index a9e1576733..84bfe471ed 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -586,7 +586,7 @@ of the same name.") (define-public wireshark (package (name "wireshark") - (version "2.6.4") + (version "2.6.5") (source (origin (method url-fetch) @@ -594,7 +594,7 @@ of the same name.") version ".tar.xz")) (sha256 (base32 - "0qf81dk726sdsmjqa9nd251j1cwvzkyb4hrlp6w4iwa3cdz00sx0")))) + "12j3fw0j8qcr86c1vsz4bsb55j9inp0ll3wjjdvg1cj4hmwmn5ck")))) (build-system gnu-build-system) (inputs `(("c-ares" ,c-ares) ("glib" ,glib) -- cgit v1.2.3 From 4dd1edc7aed15f88f7c2d2f7975368db1ea82143 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 14 Dec 2018 17:05:08 +0100 Subject: gnu: glibc-stripped: Empty 'native-inputs' and 'propagated-inputs'. These would needlessly pull in linux-libre-headers when running "guix build bootstrap-tarballs --target=i586-pc-gnu". * gnu/packages/make-bootstrap.scm (%glibc-stripped)[native-inputs] [propagated-inputs]: New fields. --- gnu/packages/make-bootstrap.scm | 2 ++ 1 file changed, 2 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/make-bootstrap.scm b/gnu/packages/make-bootstrap.scm index 65d632f64e..c6002eb63a 100644 --- a/gnu/packages/make-bootstrap.scm +++ b/gnu/packages/make-bootstrap.scm @@ -382,6 +382,8 @@ for `sh' in $PATH, and without nscd, and with static NSS modules." (parameterize ((%current-target-system #f)) (cross-libc target))) glibc))))) + (native-inputs '()) + (propagated-inputs '()) ;; Only one output. (outputs '("out"))))) -- cgit v1.2.3 From 966629a114fd90153784dfdbe5e332e0ac94f1bc Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 14 Dec 2018 23:39:08 +0100 Subject: gnu: mit-scheme: Match all the system types in 'inputs'. Fixes a regression introduced in d870cc5e8acfed6fee318a66c3ffc7244aa376a1 whereby "guix package -A" on one of the non-x86 systems would crash. * gnu/packages/scheme.scm (mit-scheme)[inputs]: Reintroduce catch-all case. --- gnu/packages/scheme.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm index e8de187650..c7ab00380a 100644 --- a/gnu/packages/scheme.scm +++ b/gnu/packages/scheme.scm @@ -171,7 +171,9 @@ ("x86_64-linux" (string-append version "-x86-64")) ("i686-linux" - (string-append version "-i386"))) + (string-append version "-i386")) + (_ + (string-append "c-" version))) ".tar.gz")) (sha256 (match (%current-system) -- cgit v1.2.3 From 0a2872eeaa139c467115f33c0ab2a6a1f6b78ccf Mon Sep 17 00:00:00 2001 From: Feng Shu Date: Fri, 14 Dec 2018 19:31:48 +0800 Subject: gnu: emacs-exwm-x: Update to 1.9.0. * gnu/packages/emacs.scm (emacs-exwm-x): Update to 1.9.0. [source]: Use git-fetch. Signed-off-by: Arun Isaac --- gnu/packages/emacs.scm | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 358f32cabd..4f2fc94d36 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -24,7 +24,7 @@ ;;; Copyright © 2017, 2018 Kyle Meyer ;;; Copyright © 2017 Kei Kebreau ;;; Copyright © 2017 George Clemmer -;;; Copyright © 2017 Feng Shu +;;; Copyright © 2017, 2018 Feng Shu ;;; Copyright © 2017 Jan Nieuwenhuizen ;;; Copyright © 2017, 2018 Oleg Pykhalov ;;; Copyright © 2017 Mekeor Melire @@ -6880,17 +6880,18 @@ other operations.") (define-public emacs-exwm-x (package (name "emacs-exwm-x") - (version "1.8.1") + (version "1.9.0") (synopsis "Derivative window manager based on EXWM") - (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/tumashu/exwm-x/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "0ali1100aacq4zbvcck80h51pvw204jlxhn4aikkqq4ngbx03kkr")))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tumashu/exwm-x") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "03l3dl7s1qys1kkh40rm1sfx7axy1b8sf5f6nyksj9ps6d30p5i4")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-exwm" ,emacs-exwm) -- cgit v1.2.3 From 4803ce1d6c7b994c3fa105b85cb2417756e11a27 Mon Sep 17 00:00:00 2001 From: Feng Shu Date: Fri, 14 Dec 2018 20:11:58 +0800 Subject: gnu: Add emacs-posframe. * gnu/packages/emacs.scm (emacs-posframe): New variable. Signed-off-by: Arun Isaac --- gnu/packages/emacs.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 4f2fc94d36..2f3236e6e6 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -6674,6 +6674,28 @@ containing words from the rime project.") and cangjie.") (license license:gpl2+))) +(define-public emacs-posframe + (package + (name "emacs-posframe") + (version "0.4.2") + (source + (origin + (method url-fetch) + (uri (string-append + "https://elpa.gnu.org/packages/posframe-" version ".el")) + (sha256 + (base32 + "1h8vvxvsg41vc1nnglqjs2q0k1yzfsn72skga9s76qa3zxmx6kds")))) + (build-system emacs-build-system) + ;; emacs-minimal does not include the function font-info + (arguments `(#:emacs ,emacs)) + (home-page "https://github.com/tumashu/posframe") + (synopsis "Pop a posframe (a child frame) at point") + (description "@code{emacs-posframe} can pop a posframe at point. A +posframe is a child frame displayed within its root window's buffer. +@code{emacs-posframe} is fast and works well with CJK languages.") + (license license:gpl3+))) + (define-public emacs-el2org (package (name "emacs-el2org") -- cgit v1.2.3 From 1827e8db9342ca43af355eaa87acddbc807d72cf Mon Sep 17 00:00:00 2001 From: Feng Shu Date: Fri, 14 Dec 2018 19:57:17 +0800 Subject: gnu: emacs-pyim: Update to 1.8. * gnu/packages/emacs.scm (emacs-pyim): Update to 1.8. [source]: Use git-fetch. [propagated-inputs]: Remove emacs-pos-tip. Add emacs-posframe. Signed-off-by: Arun Isaac --- gnu/packages/emacs.scm | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 2f3236e6e6..98b1c6ddd3 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -6652,22 +6652,23 @@ containing words from the rime project.") (define-public emacs-pyim (package (name "emacs-pyim") - (version "1.6.4") - (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/tumashu/pyim/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "0hfg8q9hcjifvnlghw2g94dfxfirms2psq2ghqb28fhkf0lks13r")))) + (version "1.8") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tumashu/pyim") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "16rma4cv7xgky0g3x4an27v30jdi6i1sqw43cl99zhkqvp43l3f9")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-async" ,emacs-async) ("emacs-pyim-basedict" ,emacs-pyim-basedict) ("emacs-popup" ,emacs-popup) - ("emacs-pos-tip" ,emacs-pos-tip))) + ("emacs-posframe" ,emacs-posframe))) (home-page "https://github.com/tumashu/pyim") (synopsis "Chinese input method") (description "Chinese input method which supports quanpin, shuangpin, wubi -- cgit v1.2.3 From da19696ec6be8a9f2f448994e82c3093526e0ea9 Mon Sep 17 00:00:00 2001 From: Feng Shu Date: Sat, 15 Dec 2018 08:29:34 +0800 Subject: gnu: emacs-switch-window: Update to 1.6.2. * gnu/packages/emacs.scm (emacs-switch-window): Update to 1.6.2. [source]: Use git-fetch. Signed-off-by: Arun Isaac --- gnu/packages/emacs.scm | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 98b1c6ddd3..74ee863dd8 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -6882,16 +6882,17 @@ built on top of XELB.") (define-public emacs-switch-window (package (name "emacs-switch-window") - (version "1.5.1") - (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/dimitri/switch-window/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "07f99apxscwvsp2bjxsbi462c433kcglrjh6xl0gyafs1nvvvnd8")))) + (version "1.6.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/dimitri/switch-window") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0rci96asgamr6qp6nkyr5vwrnslswjxcjd96yccy4aivh0g66yfg")))) (build-system emacs-build-system) (home-page "https://github.com/dimitri/switch-window") (synopsis "Emacs window switch tool") -- cgit v1.2.3 From edc6dd03240b8fe0a1530ce0e80637641903095e Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 13 Dec 2018 15:43:20 -0500 Subject: gnu: Singularity: Update to 2.6.1 [fixes CVE-2018-19295]. Our Singularity package is not vulnerable to CVE-2018-19295 by default, becuase that vulnerability is based on the 'mount', 'start', and 'action' Singularity binaries being installed setuid, which we do not do in Guix. * gnu/packages/linux.scm (singularity): Update to 2.6.1. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index ae16491f26..43ee257c70 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -2612,7 +2612,7 @@ thanks to the use of namespaces.") (define-public singularity (package (name "singularity") - (version "2.5.1") + (version "2.6.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/singularityware/singularity/" @@ -2620,7 +2620,7 @@ thanks to the use of namespaces.") "/singularity-" version ".tar.gz")) (sha256 (base32 - "0f28dgf2qcy8ljjfix7p9q36q12j7rxyicfzzi4n0fl8zr8ab88g")))) + "1whx0hqqi1326scgdxxxa1d94vn95mnq0drid6s8wdp84ni4d3gk")))) (build-system gnu-build-system) (arguments `(#:configure-flags -- cgit v1.2.3 From f5d4c46c2c0ccd62f5c5b44a486af4511d395f8f Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sat, 15 Dec 2018 22:23:30 +0200 Subject: gnu: flatbuffers: Set source file name. * gnu/packages/serialization.scm (flatbuffers)[source]: Add missing 'file-name field. --- gnu/packages/serialization.scm | 1 + 1 file changed, 1 insertion(+) (limited to 'gnu') diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm index 2d61f7451b..71fae465d8 100644 --- a/gnu/packages/serialization.scm +++ b/gnu/packages/serialization.scm @@ -444,6 +444,7 @@ to generate and parse. The two primary functions are @code{cbor.loads} and (method url-fetch) (uri (string-append "https://github.com/google/flatbuffers/archive/v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 "0z4swldxs0s31hnkqdhsbfmc8vx3p7zsvmqaw4l31r2iikdy651p")))) -- cgit v1.2.3 From 978154aee5a98d8ec085f169963a8e1a0cfb07e7 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Dec 2018 09:38:46 +0200 Subject: gnu: gcl: Build with standard gcc. * gnu/packages/lisp.scm (gcl)[native-inputs]: Remove gcc@4.9. --- gnu/packages/lisp.scm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index d1c0a2ef37..f3f9165a14 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -168,8 +168,7 @@ `(("gmp" ,gmp) ("readline" ,readline))) (native-inputs - `(("gcc" ,gcc-4.9) - ("m4" ,m4) + `(("m4" ,m4) ("texinfo" ,texinfo))) (home-page "https://www.gnu.org/software/gcl/") (synopsis "A Common Lisp implementation") -- cgit v1.2.3 From 9f23f6bc2f74957ab9832c973647b754448796a2 Mon Sep 17 00:00:00 2001 From: Vagrant Cascadian Date: Sat, 15 Dec 2018 23:23:41 +0100 Subject: gnu: python-pyelftools: Fix tests with python 3.7. * gnu/packages/python.scm (python-pyelftools) [native-inputs]: Remove python-setuptools. [arguments]: Add set-pythonpath phase. Signed-off-by: Efraim Flashner --- gnu/packages/python.scm | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index fd13339ccc..bb4c5ab760 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -56,6 +56,7 @@ ;;; Copyright © 2018 Clément Lassieur ;;; Copyright © 2018 Maxim Cournoyer ;;; Copyright © 2018 Luther Thompson +;;; Copyright © 2018 Vagrant Cascadian ;;; ;;; This file is part of GNU Guix. ;;; @@ -10707,9 +10708,16 @@ useful as a validator for JSON data.") (base32 "090vdksbz341f7ljvr0zswblw4lspa8qaiikzyjkf318arpxmil9")))) (build-system python-build-system) - ;; Test suite requires python-setuptools - (native-inputs - `(("python-setuptools" ,python-setuptools))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'set-pythonpath + (lambda _ + (setenv "PYTHONPATH" + (string-append + (getcwd) "/test/" + ":" (getenv "PYTHONPATH"))) + #t))))) (home-page "https://github.com/eliben/pyelftools") (synopsis -- cgit v1.2.3 From 04e46b988ad177543632a1cc5c4078904540aa9b Mon Sep 17 00:00:00 2001 From: Vagrant Cascadian Date: Sat, 15 Dec 2018 14:57:32 +0100 Subject: gnu: arm-trusted-firmware-sun50i-a64: Update to 2.0-2.98aab97. * gnu/packages/firmware (arm-trusted-firmware-sun50i-a64): Update to 2.0-2.98aab97. Signed-off-by: Efraim Flashner --- gnu/packages/firmware.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index c396cd644f..0f2d32bbd9 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2017 David Craven ;;; Copyright © 2017, 2018 Efraim Flashner ;;; Copyright © 2018 Tobias Geerinckx-Rice +;;; Copyright © 2018 Vagrant Cascadian ;;; ;;; This file is part of GNU Guix. ;;; @@ -450,8 +451,8 @@ such as: (let ((base (make-arm-trusted-firmware "sun50i_a64")) ;; Use unreleased version which enables additional features needed for ;; LCD support - (commit "cabe0a31801e99e7abb84d2114ded6bb56f3c71e") - (revision "1")) + (commit "98aab97484b27e40aa74a93e5d1c1ac037a7e0b8") + (revision "2")) (package (inherit base) (name "arm-trusted-firmware-sun50i-a64") @@ -465,7 +466,7 @@ such as: (file-name (git-file-name name version)) (sha256 (base32 - "0srw2zj3vn5d2fwzjpwa5h70d5bwvb79jnpdvmd395npv0gxshdz"))))))) + "0z5si034vcn4m68zaixc5v8fs1c7vxbh7n4hggxs55p0jg01dan5"))))))) (define-public arm-trusted-firmware-puma-rk3399 (let ((base (make-arm-trusted-firmware "rk3399")) -- cgit v1.2.3 From d7571ff52fddefcf0b378d27345e93e6315b0dc4 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Dec 2018 12:48:52 +0200 Subject: gnu: urlscan: Update to 0.9.1. * gnu/packages/mail.scm (urlscan): Update to 0.9.1. --- 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 794ae7909d..49778f57ee 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -2595,14 +2595,14 @@ servers. The 4rev1 and 4 versions of IMAP are supported.") (define-public urlscan (package (name "urlscan") - (version "0.9.0") + (version "0.9.1") (source (origin (method url-fetch) (uri (pypi-uri "urlscan" version)) (sha256 (base32 - "133f28bisr4xj0nihpwpil8dyadss62mp8qgqdyzd676hg9xjfyc")))) + "0vpdyrx51sg9a8kswa7ibbcgcpvc7r03aq8x4n4c7v2xg0v3c7wb")))) (build-system python-build-system) (propagated-inputs `(("python-urwid" ,python-urwid))) -- cgit v1.2.3 From 7d6cfa442539e8fda0c145bf7a774c13e4fdc83c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Dec 2018 15:04:22 +0200 Subject: gnu: mit-scheme: Match all systems in "source" input. This fixes a regression from d870cc5e8acfed6fee318a66c3ffc7244aa376a1. * gnu/packages/scheme.scm (mit-scheme)[inputs]: Add the catch-all case for the "source" input. --- gnu/packages/scheme.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm index c7ab00380a..3c688e1204 100644 --- a/gnu/packages/scheme.scm +++ b/gnu/packages/scheme.scm @@ -182,7 +182,10 @@ "03m7cc035w3avs91j2pcz9f15ssgvgp3rm045d1vbydqrkzfyw8k")) ("i686-linux" (base32 - "05sjyz90xxfnmi87qv8x0yx0fcallnzl1dciygdafp317pn489is")))))))) + "05sjyz90xxfnmi87qv8x0yx0fcallnzl1dciygdafp317pn489is")) + (_ + (base32 + "")))))))) ;; Fails to build on MIPS, see . ;; Also, the portable C version of MIT/GNU Scheme did not work in time for -- cgit v1.2.3 From 224b1c833de1361219d3a2df27fbe0fc7ce6c1d2 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Dec 2018 15:38:50 +0200 Subject: gnu: khard: Update to 0.12.2. * gnu/packages/mail.scm (khard): Update to 0.12.2. [propagated-inputs]: Add python-ruamel.yaml, python-unidecode. Sort alphabetically. --- gnu/packages/mail.scm | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 49778f57ee..5abe788d1a 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -89,6 +89,7 @@ #:use-module (gnu packages python-web) #:use-module (gnu packages readline) #:use-module (gnu packages search) + #:use-module (gnu packages serialization) #:use-module (gnu packages texinfo) #:use-module (gnu packages compression) #:use-module (gnu packages glib) @@ -1731,13 +1732,13 @@ maintained.") (define-public khard (package (name "khard") - (version "0.11.4") + (version "0.12.2") (source (origin (method url-fetch) (uri (pypi-uri name version)) (sha256 (base32 - "1shhlq6ljbd8095hd82v4mw56rjcfxf1ymmgknbgh8gix02nsxw1")))) + "01y52qmab4cw9wmx87aahnxbyaxrxw8j2wx06mpcqsfvgk8d54wi")))) (build-system python-build-system) (arguments `(#:phases @@ -1748,14 +1749,17 @@ maintained.") (doc (string-append out "/share/doc/khard"))) (copy-recursively "misc/khard" doc) #t)))) - ;; FIXME: check phase fails with - ;; "Config file /tmp/.config/khard/khard.conf not available" + ;; Tests are currently only runnable without preexisting data on + ;; the development branch: + ;; https://github.com/scheibler/khard/issues/176 #:tests? #f)) (propagated-inputs - `(("python-vobject" ,python-vobject) + `(("python-atomicwrites" ,python-atomicwrites) + ("python-configobj" ,python-configobj) ("python-pyyaml" ,python-pyyaml) - ("python-atomicwrites" ,python-atomicwrites) - ("python-configobj" ,python-configobj))) + ("python-ruamel.yaml" ,python-ruamel.yaml) + ("python-unidecode" ,python-unidecode) + ("python-vobject" ,python-vobject))) (synopsis "Console address book using CardDAV") (description "Khard is an address book for the console. It creates, reads, modifies and removes CardDAV address book entries at your local machine. For -- cgit v1.2.3 From 938078a34d06a3053c14c420dfe0430366a8f47b Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Dec 2018 15:42:01 +0200 Subject: gnu: mail.scm: Sort module imports alphabetically. * gnu/packages/mail.scm: Sort module imports alphabetically. --- gnu/packages/mail.scm | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 5abe788d1a..ed8654b221 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -47,12 +47,13 @@ #:use-module (gnu packages) #:use-module (gnu packages aspell) #:use-module (gnu packages autotools) - #:use-module (gnu packages base) #:use-module (gnu packages backup) + #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages bison) #:use-module (gnu packages calendar) #:use-module (gnu packages check) + #:use-module (gnu packages compression) #:use-module (gnu packages crypto) #:use-module (gnu packages curl) #:use-module (gnu packages cyrus-sasl) @@ -60,11 +61,13 @@ #:use-module (gnu packages dejagnu) #:use-module (gnu packages django) #:use-module (gnu packages dns) + #:use-module (gnu packages docbook) #:use-module (gnu packages documentation) #:use-module (gnu packages emacs) #:use-module (gnu packages enchant) - #:use-module (gnu packages ghostscript) + #:use-module (gnu packages gdb) #:use-module (gnu packages gettext) + #:use-module (gnu packages ghostscript) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gnupg) @@ -80,36 +83,31 @@ #:use-module (gnu packages linux) #:use-module (gnu packages lua) #:use-module (gnu packages m4) + #:use-module (gnu packages man) #:use-module (gnu packages ncurses) + #:use-module (gnu packages networking) #:use-module (gnu packages openldap) #:use-module (gnu packages onc-rpc) #:use-module (gnu packages pcre) #:use-module (gnu packages perl) + #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages python-web) #:use-module (gnu packages readline) + #:use-module (gnu packages ruby) #:use-module (gnu packages search) #:use-module (gnu packages serialization) - #:use-module (gnu packages texinfo) - #:use-module (gnu packages compression) - #:use-module (gnu packages glib) - #:use-module (gnu packages pkg-config) - #:use-module (gnu packages flex) - #:use-module (gnu packages gdb) - #:use-module (gnu packages man) - #:use-module (gnu packages ruby) #:use-module (gnu packages samba) #:use-module (gnu packages screen) #:use-module (gnu packages tcl) + #:use-module (gnu packages texinfo) #:use-module (gnu packages time) #:use-module (gnu packages tls) - #:use-module (gnu packages networking) + #:use-module (gnu packages w3m) #:use-module (gnu packages web) #:use-module (gnu packages webkit) - #:use-module (gnu packages w3m) - #:use-module (gnu packages xml) #:use-module (gnu packages xorg) - #:use-module (gnu packages docbook) + #:use-module (gnu packages xml) #:use-module ((guix licenses) #:select (fdl1.1+ agpl3+ -- cgit v1.2.3 From 92391eaf8df8fecbf6844c57ce5bcd3014eb5d28 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sun, 16 Dec 2018 15:36:48 +0100 Subject: gnu: glibc: Add patch implementing "pid/…" magic lookup on the Hurd. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This patch is missing from glibc 2.28 and is needed to support /proc/self lookup when using the Hurd's procfs, which in turn is needed for our 'guile-relocatable.patch'. See . * gnu/packages/patches/glibc-hurd-magic-pid.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/base.scm (glibc)[arguments]: Add 'apply-hurd-patch' phase. [native-inputs]: Add "hurd-magic-pid-patch" input. * gnu/packages/cross-base.scm (cross-libc)[arguments]: Duplicate 'apply-hurd-patch' phase. --- gnu/local.mk | 1 + gnu/packages/base.scm | 16 +- gnu/packages/cross-base.scm | 21 ++- gnu/packages/patches/glibc-hurd-magic-pid.patch | 190 ++++++++++++++++++++++++ 4 files changed, 226 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/glibc-hurd-magic-pid.patch (limited to 'gnu') diff --git a/gnu/local.mk b/gnu/local.mk index 0f34ec9a3d..0e2316a695 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -759,6 +759,7 @@ dist_patch_DATA = \ %D%/packages/patches/glibc-allow-kernel-2.6.32.patch \ %D%/packages/patches/glibc-bootstrap-system.patch \ %D%/packages/patches/glibc-hidden-visibility-ldconfig.patch \ + %D%/packages/patches/glibc-hurd-magic-pid.patch \ %D%/packages/patches/glibc-ldd-x86_64.patch \ %D%/packages/patches/glibc-locales.patch \ %D%/packages/patches/glibc-memchr-overflow-i686.patch \ diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 60f8051dc6..e79d2a987b 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -681,6 +681,18 @@ store.") #:tests? #f ; XXX #:phases (modify-phases %standard-phases + ,@(if (hurd-target?) + `((add-after 'unpack 'apply-hurd-patch + (lambda* (#:key inputs native-inputs + #:allow-other-keys) + ;; TODO: Move this to 'patches' field. + (let ((patch (or (assoc-ref native-inputs + "hurd-magic-pid-patch") + (assoc-ref inputs + "hurd-magic-pid-patch")))) + (invoke "patch" "-p1" "--force" "--input" + patch))))) + '()) (add-before 'configure 'pre-configure (lambda* (#:key inputs native-inputs outputs @@ -806,7 +818,9 @@ store.") ,@(if (hurd-target?) `(("mig" ,mig) - ("perl" ,perl)) + ("perl" ,perl) + ("hurd-magic-pid-patch" + ,(search-patch "glibc-hurd-magic-pid.patch"))) '()))) (native-search-paths diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm index 2fcb7fb36b..bb3d6d916a 100644 --- a/gnu/packages/cross-base.scm +++ b/gnu/packages/cross-base.scm @@ -454,6 +454,23 @@ XBINUTILS and the cross tool chain." flags))) ((#:phases phases) `(modify-phases ,phases + ;; XXX: The hack below allows us to make sure the + ;; 'apply-hurd-patch' phase gets added in the first + ;; cross-libc, but does *not* get added twice subsequently + ;; when cross-building another libc. + ,@(if (and (hurd-triplet? target) + (not (hurd-target?))) + `((add-after 'unpack 'apply-hurd-patch + (lambda* (#:key inputs native-inputs + #:allow-other-keys) + ;; TODO: Move this to 'patches' field. + (let ((patch (or (assoc-ref native-inputs + "hurd-magic-pid-patch") + (assoc-ref inputs + "hurd-magic-pid-patch")))) + (invoke "patch" "-p1" "--force" "--input" + patch))))) + '()) (add-before 'configure 'set-cross-kernel-headers-path (lambda* (#:key inputs #:allow-other-keys) (let* ((kernel (assoc-ref inputs "kernel-headers")) @@ -477,7 +494,9 @@ XBINUTILS and the cross tool chain." ,@(if (hurd-triplet? target) `(("cross-mig" ,@(assoc-ref (package-native-inputs xheaders) - "cross-mig"))) + "cross-mig")) + ("hurd-magic-pid-patch" + ,(search-patch "glibc-hurd-magic-pid.patch"))) '()) ,@(package-inputs libc) ;FIXME: static-bash ,@(package-native-inputs libc))))))) diff --git a/gnu/packages/patches/glibc-hurd-magic-pid.patch b/gnu/packages/patches/glibc-hurd-magic-pid.patch new file mode 100644 index 0000000000..a6849f7d35 --- /dev/null +++ b/gnu/packages/patches/glibc-hurd-magic-pid.patch @@ -0,0 +1,190 @@ +This patch implements "magic" lookup for "pid/…", as used when looking up +/proc/self. + +The patch comes from the 't/magic-pid' branch +at . It squashes +commit 392e52286a302ca6157fbd221295e64ab6b6d8ba (by Justus Winter) +and commit 392e52286a302ca6157fbd221295e64ab6b6d8ba (a subsequent fix by +Samuel Thibault). + +From: Justus Winter <4winter@informatik.uni-hamburg.de> +Subject: [PATCH] hurd: Handle `pid' magical lookup retry + + * hurd/lookup-retry.c: Handle `pid' magical lookup + retry. + +diff --git a/hurd/lookup-retry.c b/hurd/lookup-retry.c +index aee2ba8f93..6ed8de1653 100644 +--- a/hurd/lookup-retry.c ++++ b/hurd/lookup-retry.c +@@ -25,6 +25,7 @@ + #include + #include <_itoa.h> + #include ++#include + + /* Translate the error from dir_lookup into the error the user sees. */ + static inline error_t +@@ -59,6 +60,7 @@ __hurd_file_name_lookup_retry (error_t (*use_init_port) + error_t err; + char *file_name; + int nloops; ++ file_t lastdir = MACH_PORT_NULL; + + error_t lookup_op (file_t startdir) + { +@@ -107,14 +109,15 @@ __hurd_file_name_lookup_retry (error_t (*use_init_port) + { + case FS_RETRY_REAUTH: + if (err = reauthenticate (*result)) +- return err; ++ goto out; + /* Fall through. */ + + case FS_RETRY_NORMAL: + if (nloops++ >= __eloop_threshold ()) + { + __mach_port_deallocate (__mach_task_self (), *result); +- return ELOOP; ++ err = ELOOP; ++ goto out; + } + + /* An empty RETRYNAME indicates we have the final port. */ +@@ -174,7 +177,7 @@ __hurd_file_name_lookup_retry (error_t (*use_init_port) + + if (err) + __mach_port_deallocate (__mach_task_self (), *result); +- return err; ++ goto out; + } + + startdir = *result; +@@ -189,7 +192,10 @@ __hurd_file_name_lookup_retry (error_t (*use_init_port) + if (*result != MACH_PORT_NULL) + __mach_port_deallocate (__mach_task_self (), *result); + if (nloops++ >= __eloop_threshold ()) +- return ELOOP; ++ { ++ err = ELOOP; ++ goto out; ++ } + file_name = &retryname[1]; + break; + +@@ -208,7 +214,8 @@ __hurd_file_name_lookup_retry (error_t (*use_init_port) + (*end != '/' && *end != '\0')) + { + errno = save; +- return ENOENT; ++ err = ENOENT; ++ goto out; + } + if (! get_dtable_port) + err = EGRATUITOUS; +@@ -226,9 +233,12 @@ __hurd_file_name_lookup_retry (error_t (*use_init_port) + } + errno = save; + if (err) +- return err; ++ goto out; + if (*end == '\0') +- return 0; ++ { ++ err = 0; ++ goto out; ++ } + else + { + /* Do a normal retry on the remaining components. */ +@@ -255,9 +265,12 @@ __hurd_file_name_lookup_retry (error_t (*use_init_port) + if (err = __host_info (__mach_host_self (), HOST_BASIC_INFO, + (integer_t *) &hostinfo, + &hostinfocnt)) +- return err; ++ goto out; + if (hostinfocnt != HOST_BASIC_INFO_COUNT) +- return EGRATUITOUS; ++ { ++ err = EGRATUITOUS; ++ goto out; ++ } + p = _itoa (hostinfo.cpu_subtype, &retryname[8], 10, 0); + *--p = '/'; + p = _itoa (hostinfo.cpu_type, &retryname[8], 10, 0); +@@ -293,10 +306,11 @@ __hurd_file_name_lookup_retry (error_t (*use_init_port) + } + + case '\0': +- return opentty (result); ++ err = opentty (result); ++ goto out; + case '/': + if (err = opentty (&startdir)) +- return err; ++ goto out; + strcpy (retryname, &retryname[4]); + break; + default: +@@ -306,14 +320,48 @@ __hurd_file_name_lookup_retry (error_t (*use_init_port) + goto bad_magic; + break; + ++ case 'p': ++ if (retryname[1] == 'i' && retryname[2] == 'd' && ++ (retryname[3] == '/' || retryname[3] == 0)) ++ { ++ char *p, buf[1024]; /* XXX */ ++ size_t len; ++ p = _itoa (__getpid (), &buf[sizeof buf], 10, 0); ++ len = &buf[sizeof buf] - p; ++ memcpy (buf, p, len); ++ strcpy (buf + len, &retryname[3]); ++ strcpy (retryname, buf); ++ ++ /* Do a normal retry on the remaining components. */ ++ __mach_port_mod_refs (__mach_task_self (), lastdir, ++ MACH_PORT_RIGHT_SEND, 1); ++ startdir = lastdir; ++ file_name = retryname; ++ } ++ else ++ goto bad_magic; ++ break; ++ + default: + bad_magic: +- return EGRATUITOUS; ++ err = EGRATUITOUS; ++ goto out; + } + break; + + default: +- return EGRATUITOUS; ++ err = EGRATUITOUS; ++ goto out; ++ } ++ ++ if (MACH_PORT_VALID (*result) && *result != lastdir) ++ { ++ if (MACH_PORT_VALID (lastdir)) ++ __mach_port_deallocate (__mach_task_self (), lastdir); ++ ++ lastdir = *result; ++ __mach_port_mod_refs (__mach_task_self (), lastdir, ++ MACH_PORT_RIGHT_SEND, 1); + } + + if (startdir != MACH_PORT_NULL) +@@ -326,6 +374,10 @@ __hurd_file_name_lookup_retry (error_t (*use_init_port) + err = (*use_init_port) (dirport, &lookup_op); + } while (! err); + ++out: ++ if (MACH_PORT_VALID (lastdir)) ++ __mach_port_deallocate (__mach_task_self (), lastdir); ++ + return err; + } + weak_alias (__hurd_file_name_lookup_retry, hurd_file_name_lookup_retry) -- cgit v1.2.3 From ee8ee74820711fd1a517dbd082629d5182e190a9 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sun, 16 Dec 2018 15:49:41 +0100 Subject: gnu: guile: Do not warn about 'madvise' ENOSYS on GNU/Hurd. * gnu/packages/guile.scm (guile-2.2)[arguments]: When 'hurd-target?' returns true, add 'allow-madvise-ENOSYS' phase. --- gnu/packages/guile.scm | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index c271c4b6a0..5a3ce44016 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -45,6 +45,7 @@ #:use-module (gnu packages compression) #:use-module (gnu packages gawk) #:use-module (gnu packages gperf) + #:use-module (gnu packages hurd) #:use-module (gnu packages libffi) #:use-module (gnu packages autotools) #:use-module (gnu packages flex) @@ -288,7 +289,19 @@ without requiring the source code to be rewritten.") (substitute* "module/Makefile.in" (("language/elisp/boot\\.el") "\n")) - #t))))) + #t)) + ,@(if (hurd-target?) + `((add-after 'unpack 'allow-madvise-ENOSYS + (lambda _ + ;; Do not warn about ENOSYS on 'madvise'. This is + ;; what Guile commit + ;; 45e4ace6603e00b297e6542362273041aebe7305 does. + ;; TODO: Remove for Guile >= 2.2.5. + (substitute* "libguile/vm.c" + (("perror \\(\"madvise failed\"\\)") + "if (errno != ENOSYS) perror (\"madvised failed\");")) + #t))) + '())))) (package-arguments guile-2.0))))) (define-public guile-2.2/fixed -- cgit v1.2.3 From 1075623a5c94974efc2c336af25dda1407f1c716 Mon Sep 17 00:00:00 2001 From: Pierre Langlois Date: Sat, 15 Dec 2018 22:35:26 +0000 Subject: gnu: Add sbcl-fiasco. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/lisp.scm (sbcl-fiasco, cl-fiasco, ecl-fiasco): New variables. Signed-off-by: Ludovic Courtès --- gnu/packages/lisp.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index f3f9165a14..64f4e7d85a 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -771,6 +771,42 @@ thin compatibility layer for gray streams.") (define-public ecl-trivial-gray-streams (sbcl-package->ecl-package sbcl-trivial-gray-streams)) +(define-public sbcl-fiasco + (let ((commit "d62f7558b21addc89f87e306f65d7f760632655f") + (revision "1")) + (package + (name "sbcl-fiasco") + (version (git-version "0.0.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/joaotavora/fiasco.git") + (commit commit))) + (file-name (git-file-name "fiasco" version)) + (sha256 + (base32 + "1zwxs3d6iswayavcmb49z2892xhym7n556d8dnmvalc32pm9bkjh")))) + (build-system asdf-build-system/sbcl) + (inputs + `(("alexandria" ,sbcl-alexandria) + ("trivial-gray-streams" ,sbcl-trivial-gray-streams))) + (synopsis "Simple and powerful test framework for Common Lisp") + (description "A Common Lisp test framework that treasures your failures, +logical continuation of Stefil. It focuses on interactive debugging.") + (home-page "https://github.com/joaotavora/fiasco") + ;; LICENCE specifies this is public-domain unless the legislation + ;; doesn't allow or recognize it. In that case it falls back to a + ;; permissive licence. + (license (list license:public-domain + (license:x11-style "file://LICENCE")))))) + +(define-public cl-fiasco + (sbcl-package->cl-source-package sbcl-fiasco)) + +(define-public ecl-fiasco + (sbcl-package->ecl-package sbcl-fiasco)) + (define-public sbcl-flexi-streams (package (name "sbcl-flexi-streams") -- cgit v1.2.3 From ba9ba64d93ed9453f0799be4df4ca80ab98e6cab Mon Sep 17 00:00:00 2001 From: Pierre Langlois Date: Sat, 15 Dec 2018 22:38:53 +0000 Subject: gnu: stumpwm: Update to 18.11. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/lisp.scm (stumpwm): Update to 18.11. [native-inputs]: New field. Signed-off-by: Ludovic Courtès --- gnu/packages/lisp.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index 64f4e7d85a..9e66dccfd2 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -967,16 +967,17 @@ from other CLXes around the net.") (define-public stumpwm (package (name "stumpwm") - (version "18.05") + (version "18.11") (source (origin (method url-fetch) (uri (string-append "https://github.com/stumpwm/stumpwm/archive/" version ".tar.gz")) (sha256 - (base32 "1n2gaab3lwgf5r1hmwdcw13dkv9xdd7drn2shx28kfxvhdc9kbb9")) + (base32 "177gxfk4c127i9crghx6fmkipznhgylvzgnjb2pna38g21gg6s39")) (file-name (string-append "stumpwm-" version ".tar.gz")))) (build-system asdf-build-system/sbcl) + (native-inputs `(("fiasco" ,sbcl-fiasco))) (inputs `(("cl-ppcre" ,sbcl-cl-ppcre) ("clx" ,sbcl-clx) ("alexandria" ,sbcl-alexandria))) -- cgit v1.2.3 From 2c742a06c81a740259364dfd24be5a03307c6a62 Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Sun, 16 Dec 2018 16:31:01 +0100 Subject: gnu: Add trivial-clipboard. * gnu/packages/lisp.scm (cl-trivial-clipboard, ecl-trivial-clipboard, sbcl-trivial-clipboard): New variables. --- gnu/packages/lisp.scm | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index 9e66dccfd2..d8da2951df 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -69,6 +69,7 @@ #:use-module (gnu packages databases) #:use-module (gnu packages gtk) #:use-module (gnu packages webkit) + #:use-module (gnu packages xdisorg) #:use-module (ice-9 match) #:use-module (srfi srfi-19)) @@ -3780,3 +3781,42 @@ client and server.") (define-public ecl-s-xml-rpc (sbcl-package->ecl-package sbcl-s-xml-rpc)) + +(define-public sbcl-trivial-clipboard + (let ((commit "10209a79b6016a4c60820269e5a522d4c11ba21b")) + (package + (name "sbcl-trivial-clipboard") + (version "0.0.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/snmsts/trivial-clipboard") + (commit commit))) + (sha256 + (base32 + "1dn4ayhj3aw4dqbg7m3zhn4p2zgn5xp6m66988jnlh13447ap03k")))) + (build-system asdf-build-system/sbcl) + (inputs + `(("xclip" ,xclip))) + (native-inputs + `(("fiveam" ,sbcl-fiveam))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "src/text.lisp" + (("xclip") (string-append + (assoc-ref inputs "xclip") "/bin/xclip")))))))) + (home-page "https://github.com/snmsts/trivial-clipboard") + (synopsis "Access system clipboard in Common Lisp") + (description + "@command{trivial-clipboard} gives access to the system clipboard.") + (license license:expat)))) + +(define-public cl-trivial-clipboard + (sbcl-package->cl-source-package sbcl-trivial-clipboard)) + +(define-public ecl-trivial-clipboard + (sbcl-package->ecl-package sbcl-trivial-clipboard)) -- cgit v1.2.3 From 04eb2645bd9390218b7ab5f8358f7942d76aa58e Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Wed, 12 Dec 2018 00:47:01 +0530 Subject: gnu: Add emacs-buttercup. * gnu/packages/emacs.scm (emacs-buttercup): New variable. --- gnu/packages/emacs.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 74ee863dd8..3dfc7fdafc 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -12782,3 +12782,36 @@ interactive session association with the current contexts (project, directory, buffers). While sesman can be used to manage arbitrary sessions, it primary targets the Emacs based IDEs (CIDER, ESS, Geiser, Robe, SLIME etc.)") (license license:gpl3+))) + +(define-public emacs-buttercup + (package + (name "emacs-buttercup") + (version "1.16") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jorgenschaefer/emacs-buttercup.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0dckgcyzsav6ld78bcyrrygy1cz1jvqgav6vy8f6klpmk3r8xrl1")))) + (build-system emacs-build-system) + (arguments + `(#:tests? #t + #:test-command '("make" "test") + #:phases + (modify-phases %standard-phases + (add-after 'install 'install-bin + (lambda* (#:key outputs #:allow-other-keys) + (install-file "bin/buttercup" + (string-append (assoc-ref outputs "out") "/bin")) + #t))))) + (home-page "https://github.com/jorgenschaefer/emacs-buttercup") + (synopsis "Behavior driven emacs lisp testing framework") + (description "Buttercup is a behavior-driven development framework for +testing Emacs Lisp code. It allows to group related tests so they can share +common set-up and tear-down code, and allows the programmer to \"spy\" on +functions to ensure they are called with the right arguments during testing.") + (license license:gpl3+))) -- cgit v1.2.3 From 665f4591182bf99d2c922805892ac8f5f6181180 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Wed, 12 Dec 2018 00:59:15 +0530 Subject: gnu: emacs-circe: Enable tests. * gnu/packages/emacs.scm (emacs-circe)[arguments]: Enable tests. Set test-command. Add set-home phase. [native-inputs]: Add emacs-buttercup. --- gnu/packages/emacs.scm | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 3dfc7fdafc..824aeb94d2 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -7860,6 +7860,19 @@ value of the access token.") (base32 "10gi14kwxd81blddpvqh95lgmpbfgp0m955naxix3bs3r6a75n4s")))) (build-system emacs-build-system) + (arguments + `(#:tests? #t + #:test-command '("buttercup" "-L" ".") + #:phases + (modify-phases %standard-phases + ;; The HOME environment variable should be set to an existing + ;; directory for the tests to succeed. + (add-before 'check 'set-home + (lambda _ + (setenv "HOME" "/tmp") + #t))))) + (native-inputs + `(("emacs-buttercup" ,emacs-buttercup))) ;; In order to securely connect to an IRC server using TLS, Circe requires ;; the GnuTLS binary. (propagated-inputs -- cgit v1.2.3 From 7101196448825aebe28809d8b5145a3e239cc3e3 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Wed, 12 Dec 2018 01:00:26 +0530 Subject: gnu: emacs-tracking: Enable tests. * gnu/packages/emacs.scm (emacs-tracking)[arguments]: Append to arguments inherited from emacs-circe, instead of overwriting them. --- gnu/packages/emacs.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 824aeb94d2..da0a00592e 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -7893,7 +7893,7 @@ want to use it.") ;; "tracking.el" is a library extracted from Circe package. It requires ;; "shorten.el". `(#:include '("^shorten.el$" "^tracking.el$") - #:tests? #f)) ;tests require buttercup + ,@(package-arguments emacs-circe))) (home-page "https://github.com/jorgenschaefer/circe/wiki/Tracking") (synopsis "Buffer tracking library") (description "@code{tracking.el} provides a way for different modes to -- cgit v1.2.3 From 504d9fcb8599870a7430eac693ff26615f4b7d6e Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Fri, 14 Dec 2018 18:52:35 +0100 Subject: gnu: mes: Update to 0.19. * gnu/packages/mes.scm (mes): Update to 0.19. --- gnu/packages/mes.scm | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm index 6dc6dfb4cb..c45e267875 100644 --- a/gnu/packages/mes.scm +++ b/gnu/packages/mes.scm @@ -63,14 +63,14 @@ extensive examples, including parsers for the Javascript and C99 languages.") (let ((triplet "i686-unknown-linux-gnu")) (package (name "mes") - (version "0.18") + (version "0.19") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/mes/" "mes-" version ".tar.gz")) (sha256 (base32 - "1dsaaqyanzsq9m5wrcd2bjhb3qd6928c9q97rg5r730pyqjwxyxf")))) + "15h4yhaywdc0djpjlin2jz1kzahpqxfki0r0aav1qm9nxxmnp1l0")))) (build-system gnu-build-system) (supported-systems '("i686-linux" "x86_64-linux")) (propagated-inputs @@ -93,10 +93,11 @@ extensive examples, including parsers for the Javascript and C99 languages.") `(#:strip-binaries? #f)) ; binutil's strip b0rkes MesCC/M1/hex2 binaries (synopsis "Scheme interpreter and C compiler for full source bootstrapping") (description - "GNU Mes [Maxwell Equations of Software] aims to create full source -bootstrapping for GuixSD. It consists of a mutual self-hosting [close to -Guile-] Scheme interpreter prototype in C and a Nyacc-based C compiler in -[Guile] Scheme.") + "GNU Mes--Maxwell Equations of Software--brings the Reduced Binary Seed +bootstrap to Guix and aims to help create full source bootstrapping for +GNU/Linux distributions. It consists of a mutual self-hosting Scheme +interpreter in C and a Nyacc-based C compiler in Scheme and is compatible with +Guile.") (home-page "https://gnu.org/software/mes") (license gpl3+)))) -- cgit v1.2.3 From 6da907193b62c5fee9615868b7844277c450bdab Mon Sep 17 00:00:00 2001 From: Rutger Helling Date: Sun, 16 Dec 2018 22:14:11 +0100 Subject: gnu: lookingglass: Update to a12. * gnu/packages/virtualization.scm (lookingglass): Update to a12. [build-system]: Use cmake-build-system. [arguments]: Add 'chdir-to-client phase. --- gnu/packages/virtualization.scm | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index 8e361558bf..c677ccf64b 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -72,6 +72,7 @@ #:use-module (gnu packages web) #:use-module (gnu packages xdisorg) #:use-module (gnu packages xml) + #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system go) #:use-module (guix build-system python) @@ -769,7 +770,7 @@ Machine Protocol.") (define-public lookingglass (package (name "lookingglass") - (version "a11") + (version "a12") (source (origin (method url-fetch) @@ -778,8 +779,8 @@ Machine Protocol.") (file-name (string-append name "-" version)) (sha256 (base32 - "11qwyp332l66sqksqa0z9439yi4accmbq7wjc6kikc5fimdh9wk5")))) - (build-system gnu-build-system) + "0x57chx83f8pq56d9sfxmc9p4qjm9nqvdyamj41bmy145mxw5w3m")))) + (build-system cmake-build-system) (inputs `(("fontconfig" ,fontconfig) ("glu" ,glu) ("mesa" ,mesa) @@ -794,16 +795,17 @@ Machine Protocol.") `(#:tests? #f ;; No tests are available. #:make-flags '("CC=gcc") #:phases (modify-phases %standard-phases - (replace 'configure + (add-before 'configure 'chdir-to-client (lambda* (#:key outputs #:allow-other-keys) (chdir "client") #t)) (replace 'install (lambda* (#:key outputs #:allow-other-keys) - (install-file "bin/looking-glass-client" + (install-file "looking-glass-client" (string-append (assoc-ref outputs "out") "/bin")) - #t))))) + #t)) + ))) (home-page "https://looking-glass.hostfission.com") (synopsis "KVM Frame Relay (KVMFR) implementation") (description "Looking Glass allows the use of a KVM (Kernel-based Virtual -- cgit v1.2.3 From 2119cd3a350cb5544418a0e8ac6c7fb6dcbf0a13 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 16 Dec 2018 16:15:46 -0500 Subject: gnu: Go 1.11: Update to 1.11.4 [fixes CVE-2018-{16873,16874}]. * gnu/packages/golang.scm (go-1.11): Update to 1.11.4. --- 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 6c970700a5..a571477ef2 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -406,7 +406,7 @@ in the style of communicating sequential processes (@dfn{CSP}).") (package (inherit go-1.9) (name "go") - (version "1.11.1") + (version "1.11.4") (source (origin (method url-fetch) @@ -414,7 +414,7 @@ in the style of communicating sequential processes (@dfn{CSP}).") name version ".src.tar.gz")) (sha256 (base32 - "05qivf2f59pv4bfrmdr4m0xvswkmvvl9c5a2h5dy45g2k8b8r3sm")))) + "05fvp8dq0yffsrvdyii4wgl756dn0xkgm5a80al7j7kb19r45zac")))) (arguments (substitute-keyword-arguments (package-arguments go-1.9) ((#:phases phases) -- cgit v1.2.3 From 4b4ccb45fae08e98746eecbdf08cac57029a44ca Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sun, 16 Dec 2018 23:51:31 +0100 Subject: gnu: mame: Update to 0.204. * gnu/packages/emulators.scm (mame): Update to 0.204. [arguments]: Add phase to fix compilation error. --- gnu/packages/emulators.scm | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index 795595e447..991599a394 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -1186,7 +1186,7 @@ play them on systems for which they were never designed!") (define-public mame (package (name "mame") - (version "0.203") + (version "0.204") (source (origin (method git-fetch) @@ -1196,7 +1196,7 @@ play them on systems for which they were never designed!") (file-name (git-file-name name version)) (sha256 (base32 - "19ccqc00024fbjyk0k5d9xljhwq7wsrp7phwm2jmn0h77mgdj844")) + "0yn63v2f1xlksfnvbxc5p5zpc7ps044m1kf69jhzbfirx953slsi")) (modules '((guix build utils))) (snippet ;; Remove bundled libraries. @@ -1223,6 +1223,14 @@ play them on systems for which they were never designed!") #:phases (modify-phases %standard-phases (delete 'configure) + ;; Prevent compilation error: ‘atan’ is not a member of ‘std’. Also + ;; fixed upstream in fec1cde5a40e197d4ed4314bf58b9e66e84e1631. + (add-after 'unpack 'fix-build + (lambda _ + (substitute* "src/mame/video/xavix.cpp" + (("#include \"logmacro.h\"") + "#include \"logmacro.h\"\n#include ")) + #t)) (add-after 'build 'build-documentation (lambda _ (invoke "make" "-C" "docs" "man" "info"))) (replace 'install -- cgit v1.2.3 From 6845fdc710d9c7b687b21bed87e872f6e1a703d2 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Mon, 17 Dec 2018 15:12:15 +0530 Subject: gnu: ansible: Update to 2.7.5. * gnu/packages/admin.scm (ansible): Update to 2.7.5. --- 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 058af3d583..3e41b456e1 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -1601,14 +1601,14 @@ of supported upstream metrics systems simultaneously.") (define-public ansible (package (name "ansible") - (version "2.7.4") + (version "2.7.5") (source (origin (method url-fetch) (uri (pypi-uri "ansible" version)) (sha256 (base32 - "0p1n6yyc632522fl2r247p0jg4mncc7z4hqngzbh1zxq3dcb12s9")) + "1fsif2jmkrrgiawsd8r6sxrqvh01fvrmdhas0p540a6i9fby3yda")) (patches (search-patches "ansible-wrap-program-hack.patch")))) (build-system python-build-system) (native-inputs -- cgit v1.2.3 From f8be7664cbc85e6401f88afa539c5f5e800aaf03 Mon Sep 17 00:00:00 2001 From: Rutger Helling Date: Mon, 17 Dec 2018 10:56:42 +0100 Subject: gnu: virt-manager: Update to 2.0.0. * gnu/packages/virtualization.scm (virt-manager): Update to 2.0.0. [arguments]: Don't build with Python 2. [inputs]: Replace Python 2 inputs with Python 3 versions. --- gnu/packages/virtualization.scm | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index c677ccf64b..0cbd16f534 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -558,7 +558,7 @@ virtualization library.") (define-public virt-manager (package (name "virt-manager") - (version "1.5.1") + (version "2.0.0") (source (origin (method url-fetch) (uri (string-append "https://virt-manager.org/download/sources" @@ -566,11 +566,10 @@ virtualization library.") version ".tar.gz")) (sha256 (base32 - "1ardmd4sxdmd57y7qpka44gf09c1yq2g0xs074d3k1h925crv27f")))) + "1b48xbrx99mfiv80c60k3ydzkpcpbq57c8h8dl0gnffmnzbs8vzb")))) (build-system python-build-system) (arguments - `(#:python ,python-2 - #:use-setuptools? #f ; Uses custom distutils 'install' command. + `(#:use-setuptools? #f ; Uses custom distutils 'install' command. ;; Some of the tests seem to require network access to install virtual ;; machines. #:tests? #f @@ -627,12 +626,12 @@ virtualization library.") ("libosinfo" ,libosinfo) ("vte" ,vte) ("gobject-introspection" ,gobject-introspection) - ("python2-libvirt" ,python2-libvirt) - ("python2-requests" ,python2-requests) - ("python2-ipaddr" ,python2-ipaddr) - ("python2-pycairo" ,python2-pycairo) - ("python2-pygobject" ,python2-pygobject) - ("python2-libxml2" ,python2-libxml2) + ("python-libvirt" ,python-libvirt) + ("python-requests" ,python-requests) + ("python-ipaddress" ,python-ipaddress) + ("python-pycairo" ,python-pycairo) + ("python-pygobject" ,python-pygobject) + ("python-libxml2" ,python-libxml2) ("spice-gtk" ,spice-gtk))) ;; virt-manager searches for qemu-img or kvm-img in the PATH. (propagated-inputs -- cgit v1.2.3 From cc729d257cf6a2cb865a4075fe9135716b3736c9 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Dec 2018 19:56:50 +0200 Subject: gnu: nmap: Don't hardcode python version. * gnu/packages/admin.scm (nmap)[arguments]: Replace hardcoded python version with parameterized one. --- gnu/packages/admin.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 3e41b456e1..36d0ea879f 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -1887,7 +1887,7 @@ done with the @code{auditctl} utility.") ;; TODO Add zenmap output. (outputs '("out" "ndiff")) (arguments - '(#:configure-flags '("--without-zenmap") + `(#:configure-flags '("--without-zenmap") #:phases (modify-phases %standard-phases (add-after 'configure 'patch-Makefile @@ -1903,7 +1903,10 @@ done with the @code{auditctl} utility.") (string-append "prefix=" out) args)) (define (python-path dir) - (string-append dir "/lib/python2.7/site-packages")) + (string-append dir "/lib/python" + ,(version-major+minor + (package-version python)) + "/site-packages")) (let ((out (assoc-ref outputs "out")) (ndiff (assoc-ref outputs "ndiff"))) (for-each mkdir-p (list out ndiff)) -- cgit v1.2.3 From 2f3977b9a7619e909828fbc4030229fe4195b741 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Dec 2018 22:48:53 +0200 Subject: gnu: gess: Don't hardcode python version. * gnu/packages/bioinformatics.scm (gess)[arguments]: Replace hardcoded python version with parameterized one. --- gnu/packages/bioinformatics.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index e17c53675c..5105bfab4f 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -11390,7 +11390,10 @@ remove biased methylation positions for RRBS sequence files.") (out (assoc-ref outputs "out")) (bin (string-append out "/bin/")) (target (string-append - out "/lib/python2.7/site-packages/gess/"))) + out "/lib/python" + ,(version-major+minor + (package-version python)) + "/site-packages/gess/"))) (mkdir-p target) (copy-recursively "." target) ;; Make GESS.py executable -- cgit v1.2.3 From 4ae16f9c4e9233bba2d8fcf22db37797fe77695b Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Dec 2018 22:52:52 +0200 Subject: gnu: avogadro: Don't hardcode python version. * gnu/packages/chemistry.scm (avogadro)[arguments]: Replace hardcoded python version with parametrized one. --- gnu/packages/chemistry.scm | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/chemistry.scm b/gnu/packages/chemistry.scm index 03120aaeee..e682975b36 100644 --- a/gnu/packages/chemistry.scm +++ b/gnu/packages/chemistry.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Konrad Hinsen ;;; Copyright © 2018 Kei Kebreau +;;; Copyright © 2018 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -19,6 +20,7 @@ (define-module (gnu packages chemistry) #:use-module (guix packages) + #:use-module (guix utils) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix download) #:use-module (gnu packages) @@ -55,7 +57,7 @@ "avogadro-boost148.patch")))) (build-system cmake-build-system) (arguments - '(#:tests? #f + `(#:tests? #f #:configure-flags (list "-DENABLE_GLSL=ON" (string-append "-DPYTHON_LIBRARIES=" @@ -63,7 +65,9 @@ "/lib") (string-append "-DPYTHON_INCLUDE_DIRS=" (assoc-ref %build-inputs "python") - "/include/python2.7")) + "/include/python" + ,(version-major+minor + (package-version python)))) #:phases (modify-phases %standard-phases (add-after 'unpack 'patch-python-lib-path @@ -76,7 +80,10 @@ (("^.*OUTPUT_VARIABLE.*") (string-append "set(PYTHON_LIB_PATH \"" (assoc-ref outputs "out") - "/lib/python2.7/site-packages\")"))) + "/lib/python" + ,(version-major+minor + (package-version python)) + "/site-packages\")"))) #t)) (add-after 'install 'wrap-program (lambda* (#:key inputs outputs #:allow-other-keys) @@ -85,7 +92,10 @@ (setenv "PYTHONPATH" (string-append (assoc-ref outputs "out") - "/lib/python2.7/site-packages:" + "/lib/python" + ,(version-major+minor + (package-version python)) + "/site-packages:" (getenv "PYTHONPATH"))) (wrap-program (string-append out "/bin/avogadro") `("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH"))))) -- cgit v1.2.3 From 917f5ee75c836028e277d7510fa0a226dd4cb20f Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Dec 2018 23:07:44 +0200 Subject: gnu: kicad: Don't hardcode version numbers. * gnu/packages/engineering.scm (kicad)[source]: Replace hardcoded version number with parameterized one. [arguments]: Same. --- gnu/packages/engineering.scm | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index 2105d989f7..75045f25b3 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus ;;; Copyright © 2015 Federico Beffa -;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2016, 2018 Efraim Flashner ;;; Copyright © 2016 David Thompson ;;; Copyright © 2016, 2017, 2018 Ludovic Courtès ;;; Copyright © 2016, 2017, 2018 Theodoros Foradis @@ -691,8 +691,8 @@ language.") (method url-fetch) (file-name (string-append name "-" version ".tar.xz")) (uri (string-append - "https://launchpad.net/kicad/5.0/" version "/+download/" name - "-" version ".tar.xz")) + "https://launchpad.net/kicad/" (version-major+minor version) + "/" version "/+download/" name "-" version ".tar.xz")) (sha256 (base32 "17nqjszyvd25wi6550j981whlnb1wxzmlanljdjihiki53j84x9p")))) (build-system cmake-build-system) @@ -711,7 +711,9 @@ language.") ;; headers in the wxwidgets store item, but in wxPython. (string-append "-DCMAKE_CXX_FLAGS=-I" (assoc-ref %build-inputs "wxpython") - "/include/wx-3.0") + "/include/wx-" + ,(version-major+minor + (package-version python2-wxpython))) "-DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE" "-DKICAD_SPICE=TRUE" ;; TODO: Enable this when CA certs are working with curl. @@ -733,7 +735,10 @@ language.") (file (string-append out "/bin/kicad")) (path (string-append out - "/lib/python2.7/site-packages:" + "/lib/python" + ,(version-major+minor + (package-version python)) + "/site-packages:" (getenv "PYTHONPATH")))) (wrap-program file `("PYTHONPATH" ":" prefix (,path)) -- cgit v1.2.3 From 2d7b99b3c6848a8e6f994b74eb04bde472dc445b Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Dec 2018 23:17:09 +0200 Subject: gnu: z3: Declare source-file-name. * gnu/packages/maths.scm (z3)[source]: Add missing 'file-name. --- gnu/packages/maths.scm | 1 + 1 file changed, 1 insertion(+) (limited to 'gnu') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index ad6aacf9c9..1fd3e4b00e 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -3971,6 +3971,7 @@ as equations, scalars, vectors, and matrices.") (method git-fetch) (uri (git-reference (url home-page) (commit (string-append "z3-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 "1vr57bwx40sd5riijyrhy70i2wnv9xrdihf6y5zdz56yq88rl48f")))) -- cgit v1.2.3 From ad6c6a5be5dcc31f592fb664711a96e337df265e Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 17 Dec 2018 10:51:50 +0200 Subject: gnu: z3: Fix building on non-Intel machines. * gnu/packages/maths.scm (z3)[arguments]: Add phase to remove unnecessary include statement. --- gnu/packages/maths.scm | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 1fd3e4b00e..9a5009c78b 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -3985,6 +3985,12 @@ as equations, scalars, vectors, and matrices.") "/lib/python2.7/site-packages")) #:phases (modify-phases %standard-phases + (add-after 'unpack 'fix-compatability + ;; Versions after 4.8.3 have immintrin.h IFDEFed for Windows only. + (lambda _ + (substitute* "src/util/mpz.cpp" + (("#include ") "")) + #t)) (add-before 'configure 'bootstrap (lambda _ (zero? -- cgit v1.2.3 From 3b42e2be921062fcc9f76e508e1284b9280c6809 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Dec 2018 23:19:34 +0200 Subject: gnu: elemental: Fix indentation. * gnu/packages/maths.scm (elemental): Fix indentation of the package definition. --- gnu/packages/maths.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 9a5009c78b..2e9472e3e3 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -4104,8 +4104,8 @@ exclusion algorithms are typical examples of such systems.") "-DCMAKE_INSTALL_LIBDIR=lib" "-DGFORTRAN_LIB=gfortran") #:phases (modify-phases %standard-phases - (add-before 'check 'mpi-setup - ,%openmpi-setup) + (add-before 'check 'mpi-setup + ,%openmpi-setup) (add-before 'check 'setup-tests (lambda _ ;; Parallelism is done at the MPI layer. @@ -4116,7 +4116,7 @@ exclusion algorithms are typical examples of such systems.") ;; Tests are installed, with no easy configuration ;; switch to prevent this, so delete them. (delete-file-recursively - (string-append (assoc-ref outputs "out") "/bin")) + (string-append (assoc-ref outputs "out") "/bin")) #t))))) (synopsis "Dense and sparse-direct linear algebra and optimization") (description "Elemental is a modern C++ library for distributed-memory -- cgit v1.2.3 From 5c0b6d1b1db37a510367bf1e6441db32fda9568f Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 16 Dec 2018 23:24:53 +0200 Subject: gnu: elemental: Don't use unstable tarball. * gnu/packages/maths.scm (elemental)[source]: Download source using git-fetch. --- gnu/packages/maths.scm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 2e9472e3e3..9fb02b7385 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -4074,13 +4074,14 @@ exclusion algorithms are typical examples of such systems.") (name "elemental") (version "0.87.7") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/elemental/Elemental/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/elemental/Elemental.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1nfp82w22pi8x8fg9sc37z8kf84dqi1dhxp8bbk7571y4aygvv3v")))) + "1687xpjjzig27y2pnqv7hv09smpijyfdpz7qjgmcxf4shfajlfkc")))) (build-system cmake-build-system) (home-page "http://libelemental.org") (native-inputs -- cgit v1.2.3 From 1e2ebf7ca4fdcc30dd60c8e88814a59760d14dce Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 17 Dec 2018 09:15:37 +0200 Subject: gnu: tree: Update to 1.8.0. * gnu/packages/admin.scm (tree): Update to 1.8.0. --- 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 36d0ea879f..01deb09950 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -1409,14 +1409,14 @@ recover lost partitions and/or make non-booting disks bootable again.") (define-public tree (package (name "tree") - (version "1.7.0") + (version "1.8.0") (source (origin (method url-fetch) (uri (string-append "http://mama.indstate.edu/users/ice/tree/src/tree-" version ".tgz")) (sha256 - (base32 "04kviw799qxly08zb8n5mgxfd96gyis6x69q2qiw86jnh87c4mv9")))) + (base32 "1hmpz6k0mr6salv0nprvm1g0rdjva1kx03bdf1scw8a38d5mspbi")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases (delete 'configure)) -- cgit v1.2.3 From a7ad051d8a30180206030ee301020886321067f8 Mon Sep 17 00:00:00 2001 From: Rutger Helling Date: Mon, 17 Dec 2018 16:15:55 +0100 Subject: gnu: wget: Update to 1.20. * gnu/packages/wget.scm (wget): Update to 1.20. --- gnu/packages/wget.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scm index 0fb1142b68..67a80b78b6 100644 --- a/gnu/packages/wget.scm +++ b/gnu/packages/wget.scm @@ -45,7 +45,7 @@ (define-public wget (package (name "wget") - (version "1.19.5") + (version "1.20") (source (origin (method url-fetch) @@ -53,7 +53,7 @@ version ".tar.lz")) (sha256 (base32 - "0xfaxmlnih7dhkyks5wi4vrn0n1xshmy6gx6fb2k1120sprydyr9")))) + "07k8yd8rdn27x5fbzlnsz4db7z7qnisiqhs7r1b5wzy2b9b0zf5h")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases -- cgit v1.2.3 From 2c9ac8392ad867f65b1313216dbe7179d6083df5 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Thu, 29 Nov 2018 19:48:02 +0300 Subject: gnu: zabbix-server: Split output. * gnu/packages/monitoring.scm (zabbix-server)[outputs]: Add 'front-end' and 'schema' outputs. --- gnu/packages/monitoring.scm | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/monitoring.scm b/gnu/packages/monitoring.scm index b69ec07158..35fe4c7690 100644 --- a/gnu/packages/monitoring.scm +++ b/gnu/packages/monitoring.scm @@ -182,21 +182,34 @@ solution (client-side agent)") (package (inherit zabbix-agentd) (name "zabbix-server") + (outputs '("out" "front-end" "schema")) (arguments (substitute-keyword-arguments `(#:phases (modify-phases %standard-phases - (add-after 'install 'install-frontend + (add-after 'install 'install-front-end (lambda* (#:key outputs #:allow-other-keys) - (let* ((php (string-append (assoc-ref outputs "out") + (let* ((php (string-append (assoc-ref outputs "front-end") "/share/zabbix/php")) (front-end-conf (string-append php "/conf")) (etc (string-append php "/etc"))) (mkdir-p php) - (copy-recursively "./frontends/php" php) + (copy-recursively "frontends/php" php) + ;; Make front-end write config to ‘/etc/zabbix’ directory. (rename-file front-end-conf (string-append front-end-conf "-example")) - (symlink "/etc/zabbix" front-end-conf))))) + (symlink "/etc/zabbix" front-end-conf)) + #t)) + (add-after 'install 'install-schema + (lambda* (#:key outputs #:allow-other-keys) + (let ((database-directory + (string-append (assoc-ref outputs "schema") + "/database"))) + (for-each delete-file + (find-files "database" "Makefile\\.in|\\.am$")) + (mkdir-p database-directory) + (copy-recursively "database" database-directory)) + #t))) ,@(package-arguments zabbix-agentd)) ((#:configure-flags flags) `(cons* "--enable-server" -- cgit v1.2.3 From 6b1c4179e2596d860b1c49dea8021bc39d28da67 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Thu, 29 Nov 2018 20:22:41 +0300 Subject: services: monitoring: Add 'zabbix-server'. * gnu/services/monitoring.scm (uglify-field-name, serialize-field, serialize-number, serialize-list, serialize-string, group?, serialize-group, include-files?, serialize-include-files, zabbix-server-account, zabbix-server-config-file, zabbix-server-activation, zabbix-server-shepherd-service, generate-zabbix-server-documentation, extra-options, serialize-extra-options): New procedures. (zabbix-server-service-type): New variable. * gnu/tests/monitoring.scm (%psql-user-create-zabbix, %psql-db-zabbix-create-script, %psql-db-create-zabbix, %psql-db-import-zabbix, %zabbix-os, %test-zabbix): New variables. (run-zabbix-server-test): New procedure. * doc/guix.texi (Monitoring Services): Document 'zabbix-server'. squash! services: monitoring: Add 'zabbix-server'. --- doc/guix.texi | 141 ++++++++++++++++++++++++++++++++ gnu/services/monitoring.scm | 191 +++++++++++++++++++++++++++++++++++++++++++- gnu/tests/monitoring.scm | 167 +++++++++++++++++++++++++++++++++++++- 3 files changed, 497 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/doc/guix.texi b/doc/guix.texi index 20b5013fd9..005ff83080 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -16662,6 +16662,147 @@ Bind the web interface to the specified address. @end table @end deftp +@subsubheading Zabbix server +@cindex zabbix zabbix-server +Zabbix provides monitoring metrics, among others network utilization, CPU load +and disk space consumption: + +@itemize +@item High performance, high capacity (able to monitor hundreds of thousands of devices). +@item Auto-discovery of servers and network devices and interfaces. +@item Low-level discovery, allows to automatically start monitoring new items, file systems or network interfaces among others. +@item Distributed monitoring with centralized web administration. +@item Native high performance agents. +@item SLA, and ITIL KPI metrics on reporting. +@item High-level (business) view of monitored resources through user-defined visual console screens and dashboards. +@item Remote command execution through Zabbix proxies. +@end itemize + +@c %start of fragment + +Available @code{zabbix-server-configuration} fields are: + +@deftypevr {@code{zabbix-server-configuration} parameter} package zabbix-server +The zabbix-server package. + +@end deftypevr + +@deftypevr {@code{zabbix-server-configuration} parameter} string user +User who will run the Zabbix server. + +Defaults to @samp{"zabbix"}. + +@end deftypevr + +@deftypevr {@code{zabbix-server-configuration} parameter} group group +Group who will run the Zabbix server. + +Defaults to @samp{"zabbix"}. + +@end deftypevr + +@deftypevr {@code{zabbix-server-configuration} parameter} string db-host +Database host name. + +Defaults to @samp{"127.0.0.1"}. + +@end deftypevr + +@deftypevr {@code{zabbix-server-configuration} parameter} string db-name +Database name. + +Defaults to @samp{"zabbix"}. + +@end deftypevr + +@deftypevr {@code{zabbix-server-configuration} parameter} string db-user +Database user. + +Defaults to @samp{"zabbix"}. + +@end deftypevr + +@deftypevr {@code{zabbix-server-configuration} parameter} string db-password +Database password. Please, use @code{include-files} with +@code{DBPassword=SECRET} inside a specified file instead. + +Defaults to @samp{""}. + +@end deftypevr + +@deftypevr {@code{zabbix-server-configuration} parameter} number db-port +Database port. + +Defaults to @samp{5432}. + +@end deftypevr + +@deftypevr {@code{zabbix-server-configuration} parameter} string log-type +Specifies where log messages are written to: + +@itemize @bullet +@item +@code{system} - syslog. + +@item +@code{file} - file specified with @code{log-file} parameter. + +@item +@code{console} - standard output. + +@end itemize + +Defaults to @samp{""}. + +@end deftypevr + +@deftypevr {@code{zabbix-server-configuration} parameter} string log-file +Log file name for @code{log-type} @code{file} parameter. + +Defaults to @samp{"/var/log/zabbix/server.log"}. + +@end deftypevr + +@deftypevr {@code{zabbix-server-configuration} parameter} string pid-file +Name of PID file. + +Defaults to @samp{"/var/run/zabbix/zabbix_server.pid"}. + +@end deftypevr + +@deftypevr {@code{zabbix-server-configuration} parameter} string ssl-ca-location +The location of certificate authority (CA) files for SSL server +certificate verification. + +Defaults to @samp{"/etc/ssl/certs/ca-certificates.crt"}. + +@end deftypevr + +@deftypevr {@code{zabbix-server-configuration} parameter} string ssl-cert-location +Location of SSL client certificates. + +Defaults to @samp{"/etc/ssl/certs"}. + +@end deftypevr + +@deftypevr {@code{zabbix-server-configuration} parameter} string extra-options +Extra options will be appended to Zabbix server configuration file. + +Defaults to @samp{""}. + +@end deftypevr + +@deftypevr {@code{zabbix-server-configuration} parameter} include-files include-files +You may include individual files or all files in a directory in the +configuration file. + +Defaults to @samp{()}. + +@end deftypevr + + +@c %end of fragment + @node Kerberos Services @subsubsection Kerberos Services @cindex Kerberos diff --git a/gnu/services/monitoring.scm b/gnu/services/monitoring.scm index aa3b63a0e4..cb1f71ebff 100644 --- a/gnu/services/monitoring.scm +++ b/gnu/services/monitoring.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Sou Bunnbu ;;; Copyright © 2018 Gábor Boskovits +;;; Copyright © 2018 Oleg Pykhalov ;;; ;;; This file is part of GNU Guix. ;;; @@ -19,17 +20,23 @@ (define-module (gnu services monitoring) #:use-module (gnu services) + #:use-module (gnu services configuration) #:use-module (gnu services shepherd) #:use-module (gnu packages admin) #:use-module (gnu packages monitoring) #:use-module (gnu system shadow) #:use-module (guix gexp) + #:use-module (guix packages) #:use-module (guix records) #:use-module (ice-9 match) + #:use-module (srfi srfi-26) #:export (darkstat-configuration prometheus-node-exporter-configuration darkstat-service-type - prometheus-node-exporter-service-type)) + prometheus-node-exporter-service-type + + zabbix-server-configuration + zabbix-server-service-type)) ;;; @@ -125,3 +132,185 @@ prometheus.") (list (service-extension shepherd-root-service-type (compose list prometheus-node-exporter-shepherd-service)))))) + + +;;; +;;; Zabbix server +;;; + +(define (uglify-field-name field-name) + (apply string-append + (map (lambda (str) + (if (member (string->symbol str) '(ca db ssl)) + (string-upcase str) + (string-capitalize str))) + (string-split (string-delete #\? + (symbol->string field-name)) + #\-)))) + +(define (serialize-field field-name val) + (format #t "~a=~a~%" (uglify-field-name field-name) val)) + +(define (serialize-number field-name val) + (serialize-field field-name (number->string val))) + +(define (serialize-list field-name val) + (if (null? val) "" (serialize-field field-name (string-join val ",")))) + +(define (serialize-string field-name val) + (if (and (string? val) (string=? val "")) + "" + (serialize-field field-name val))) + +(define group? string?) + +(define serialize-group + (const "")) + +(define include-files? list?) + +(define (serialize-include-files field-name val) + (if (null? val) "" (for-each (cut serialize-field 'include <>) val))) + +(define extra-options? string?) + +(define (serialize-extra-options field-name val) + (if (null? val) "" (display val))) + +(define-configuration zabbix-server-configuration + (zabbix-server + (package zabbix-server) + "The zabbix-server package.") + (user + (string "zabbix") + "User who will run the Zabbix server.") + (group ;for zabbix-server-account procedure + (group "zabbix") + "Group who will run the Zabbix server.") + (db-host + (string "127.0.0.1") + "Database host name.") + (db-name + (string "zabbix") + "Database name.") + (db-user + (string "zabbix") + "Database user.") + (db-password + (string "") + "Database password. Please, use @code{include-files} with +@code{DBPassword=SECRET} inside a specified file instead.") + (db-port + (number 5432) + "Database port.") + (log-type + (string "") + "Specifies where log messages are written to: +@itemize +@item @code{system} - syslog. +@item @code{file} - file specified with @code{log-file} parameter. +@item @code{console} - standard output. +@end itemize\n") + (log-file + (string "/var/log/zabbix/server.log") + "Log file name for @code{log-type} @code{file} parameter.") + (pid-file + (string "/var/run/zabbix/zabbix_server.pid") + "Name of PID file.") + (ssl-ca-location + (string "/etc/ssl/certs/ca-certificates.crt") + "The location of certificate authority (CA) files for SSL server +certificate verification.") + (ssl-cert-location + (string "/etc/ssl/certs") + "Location of SSL client certificates.") + (extra-options + (extra-options "") + "Extra options will be appended to Zabbix server configuration file.") + (include-files + (include-files '()) + "You may include individual files or all files in a directory in the +configuration file.")) + +(define (zabbix-server-account config) + "Return the user accounts and user groups for CONFIG." + (let ((zabbix-user (zabbix-server-configuration-user config)) + (zabbix-group (zabbix-server-configuration-group config))) + (list (user-group (name zabbix-group) (system? #t)) + (user-account + (name zabbix-user) + (system? #t) + (group zabbix-group) + (comment "zabbix privilege separation user") + (home-directory (string-append "/var/run/" zabbix-user)) + (shell #~(string-append #$shadow "/sbin/nologin")))))) + +(define (zabbix-server-config-file config) + "Return the zabbix-server configuration file corresponding to CONFIG." + (computed-file + "zabbix_server.conf" + #~(begin + (call-with-output-file #$output + (lambda (port) + (display "# Generated by 'zabbix-server-service'.\n" port) + (display #$(with-output-to-string + (lambda () + (serialize-configuration + config zabbix-server-configuration-fields))) + port) + #t))))) + +(define (zabbix-server-activation config) + "Return the activation gexp for CONFIG." + (with-imported-modules '((guix build utils) + (ice-9 rdelim)) + #~(begin + (use-modules (guix build utils) + (ice-9 rdelim)) + (let ((user (getpw #$(zabbix-server-configuration-user config)))) + (for-each (lambda (file) + (let ((directory (dirname file))) + (mkdir-p directory) + (chown directory (passwd:uid user) (passwd:gid user)) + (chmod directory #o755))) + (list #$(zabbix-server-configuration-log-file config) + #$(zabbix-server-configuration-pid-file config) + "/etc/zabbix/maintenance.inc.php")))))) + +(define (zabbix-server-shepherd-service config) + "Return a for Zabbix server with CONFIG." + (list (shepherd-service + (provision '(zabbix-server)) + (documentation "Run Zabbix server daemon.") + (start #~(make-forkexec-constructor + (list #$(file-append (zabbix-server-configuration-zabbix-server config) + "/sbin/zabbix_server") + "--config" #$(zabbix-server-config-file config) + "--foreground") + #:user #$(zabbix-server-configuration-user config) + #:group #$(zabbix-server-configuration-group config) + #:pid-file #$(zabbix-server-configuration-pid-file config) + #:environment-variables + (list "SSL_CERT_DIR=/run/current-system/profile\ +/etc/ssl/certs" + "SSL_CERT_FILE=/run/current-system/profile\ +/etc/ssl/certs/ca-certificates.crt"))) + (stop #~(make-kill-destructor))))) + +(define zabbix-server-service-type + (service-type + (name 'zabbix-server) + (extensions + (list (service-extension shepherd-root-service-type + zabbix-server-shepherd-service) + (service-extension account-service-type + zabbix-server-account) + (service-extension activation-service-type + zabbix-server-activation))) + (default-value (zabbix-server-configuration)))) + +(define (generate-zabbix-server-documentation) + (generate-documentation + `((zabbix-server-configuration + ,zabbix-server-configuration-fields)) + 'zabbix-server-configuration)) diff --git a/gnu/tests/monitoring.scm b/gnu/tests/monitoring.scm index 3320a19a77..edc41c4a30 100644 --- a/gnu/tests/monitoring.scm +++ b/gnu/tests/monitoring.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Gábor Boskovits +;;; Copyright © 2018 Oleg Pykhalov ;;; ;;; This file is part of GNU Guix. ;;; @@ -17,13 +18,19 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu tests monitoring) + #:use-module (gnu packages databases) + #:use-module (gnu packages monitoring) #:use-module (gnu services) #:use-module (gnu services monitoring) #:use-module (gnu services networking) + #:use-module (gnu services databases) + #:use-module (gnu services shepherd) #:use-module (gnu system vm) + #:use-module (gnu system) #:use-module (gnu tests) #:use-module (guix gexp) - #:export (%test-prometheus-node-exporter)) + #:export (%test-prometheus-node-exporter + %test-zabbix)) ;;; @@ -95,3 +102,161 @@ (description "Connect to a running prometheus-node-exporter server.") (value (run-prometheus-node-exporter-server-test name %prometheus-node-exporter-os)))) + + +;;; +;;; Zabbix +;;; + +(define %psql-user-create-zabbix + "\ +sudo -u postgres psql <<< \"create user zabbix password 'zabbix';\" +") + +(define %psql-db-zabbix-create-script + "\ +sudo -u postgres psql --no-align <<< \\\\du +") + +(define %psql-db-create-zabbix + "\ +sudo -u postgres createdb -O zabbix -E Unicode -T template0 zabbix +") + +(define %psql-db-import-zabbix + #~(format #f "\ +cat ~a | sudo -u zabbix psql zabbix; +cat ~a | sudo -u zabbix psql zabbix; +cat ~a | sudo -u zabbix psql zabbix; +" + (string-append #$zabbix-server:schema + "/database/postgresql/schema.sql") + (string-append #$zabbix-server:schema + "/database/postgresql/images.sql") + (string-append #$zabbix-server:schema + "/database/postgresql/data.sql"))) + +(define* (run-zabbix-server-test name test-os) + "Run tests in %ZABBIX-OS, which has zabbix running." + (define os + (marionette-operating-system + test-os + #:imported-modules '((gnu services herd)))) + + (define vm + (virtual-machine + (operating-system os) + (port-forwardings '((8080 . 80))) + (memory-size 1024))) + + (define test + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (srfi srfi-11) + (srfi srfi-64) + (gnu build marionette) + (web client) + (web response) + (ice-9 popen) + (ice-9 rdelim)) + + (define marionette + (make-marionette (list #$vm))) + + (mkdir #$output) + (chdir #$output) + + (test-begin #$name) + + ;; XXX: Shepherd reads the config file *before* binding its control + ;; socket, so /var/run/shepherd/socket might not exist yet when the + ;; 'marionette' service is started. + (test-assert "shepherd socket ready" + (marionette-eval + `(begin + (use-modules (gnu services herd)) + (let loop ((i 10)) + (cond ((file-exists? (%shepherd-socket-file)) + #t) + ((> i 0) + (sleep 1) + (loop (- i 1))) + (else + 'failure)))) + marionette)) + + (test-assert "postgres service running" + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (start-service 'postgres)) + marionette)) + + (test-eq "postgres create zabbix user" + 0 + (marionette-eval '(begin (system #$%psql-user-create-zabbix)) + marionette)) + + (test-equal "postgres find zabbix user" + "List of roles +Role name|Attributes|Member of +postgres|Superuser, Create role, Create DB, Replication, Bypass RLS|{} +zabbix||{} +" + (marionette-eval + '(begin (let* ((port (open-pipe #$%psql-db-zabbix-create-script + OPEN_READ)) + (output (read-string port)) + (status (close-pipe port))) + output)) + marionette)) + + (test-eq "postgres create zabbix db" + 0 + (marionette-eval '(begin (system #$%psql-db-create-zabbix)) + marionette)) + + (test-eq "postgres import zabbix db" + 0 + (marionette-eval '(begin (system #$%psql-db-import-zabbix)) + marionette)) + + ;; Wait for zabbix-server to be up and running. + (test-assert "zabbix-server running" + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (start-service 'zabbix-server)) + marionette)) + + ;; Make sure the PID file is created. + (test-assert "zabbix-server PID file" + (marionette-eval + '(file-exists? "/var/run/zabbix/zabbix_server.pid") + marionette)) + + (test-end) + + (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + + (gexp->derivation (string-append name "-test") test)) + +(define %zabbix-os + ;; Return operating system under test. + (let ((base-os + (simple-operating-system + (service dhcp-client-service-type) + (postgresql-service) + (service zabbix-server-service-type + (zabbix-server-configuration + (db-password "zabbix") + (log-type "console")))))) + (operating-system + (inherit base-os) + (packages (cons* postgresql (operating-system-packages base-os)))))) + +(define %test-zabbix + (system-test + (name "zabbix") + (description "Connect to a running Zabbix") + (value (run-zabbix-server-test name %zabbix-os)))) -- cgit v1.2.3 From 6106d7cae49fb6686a237b53d465c89211ecad8f Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Thu, 29 Nov 2018 20:30:49 +0300 Subject: services: monitoring: Add 'zabbix-agent'. * gnu/services/monitoring.scm (zabbix-server-service-type, zabbix-agent-account, zabbix-agent-activation, zabbix-agent-config-file, zabbix-agent-shepherd-service, generate-zabbix-agent-documentation): New procedures. (zabbix-agent-service-type): New 'service-type'. * gnu/tests/monitoring.scm (run-zabbix-server-test): Test 'zabbix-agent'. (%zabbix-os): Add 'zabbix-agent' service. * doc/guix.texi (Monitoring Services): Document 'zabbix-agent'. --- doc/guix.texi | 103 ++++++++++++++++++++++++++++++++++ gnu/services/monitoring.scm | 133 +++++++++++++++++++++++++++++++++++++++++++- gnu/tests/monitoring.scm | 18 +++++- 3 files changed, 252 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/doc/guix.texi b/doc/guix.texi index 005ff83080..02778588ca 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -16800,6 +16800,109 @@ Defaults to @samp{()}. @end deftypevr +@c %end of fragment + +@subsubheading Zabbix agent +@cindex zabbix zabbix-agent + +Zabbix agent gathers information for Zabbix server. + +@c %start of fragment + +Available @code{zabbix-agent-configuration} fields are: + +@deftypevr {@code{zabbix-agent-configuration} parameter} package zabbix-agent +The zabbix-agent package. + +@end deftypevr + +@deftypevr {@code{zabbix-agent-configuration} parameter} string user +User who will run the Zabbix agent. + +Defaults to @samp{"zabbix"}. + +@end deftypevr + +@deftypevr {@code{zabbix-agent-configuration} parameter} group group +Group who will run the Zabbix agent. + +Defaults to @samp{"zabbix"}. + +@end deftypevr + +@deftypevr {@code{zabbix-agent-configuration} parameter} string hostname +Unique, case sensitive hostname which is required for active checks and +must match hostname as configured on the server. + +Defaults to @samp{"Zabbix server"}. + +@end deftypevr + +@deftypevr {@code{zabbix-agent-configuration} parameter} string log-type +Specifies where log messages are written to: + +@itemize @bullet +@item +@code{system} - syslog. + +@item +@code{file} - file specified with @code{log-file} parameter. + +@item +@code{console} - standard output. + +@end itemize + +Defaults to @samp{""}. + +@end deftypevr + +@deftypevr {@code{zabbix-agent-configuration} parameter} string log-file +Log file name for @code{log-type} @code{file} parameter. + +Defaults to @samp{"/var/log/zabbix/agent.log"}. + +@end deftypevr + +@deftypevr {@code{zabbix-agent-configuration} parameter} string pid-file +Name of PID file. + +Defaults to @samp{"/var/run/zabbix/zabbix_agent.pid"}. + +@end deftypevr + +@deftypevr {@code{zabbix-agent-configuration} parameter} list server +List of IP addresses, optionally in CIDR notation, or hostnames of +Zabbix servers and Zabbix proxies. Incoming connections will be +accepted only from the hosts listed here. + +Defaults to @samp{("127.0.0.1")}. + +@end deftypevr + +@deftypevr {@code{zabbix-agent-configuration} parameter} list server-active +List of IP:port (or hostname:port) pairs of Zabbix servers and Zabbix +proxies for active checks. If port is not specified, default port is +used. If this parameter is not specified, active checks are disabled. + +Defaults to @samp{("127.0.0.1")}. + +@end deftypevr + +@deftypevr {@code{zabbix-agent-configuration} parameter} string extra-options +Extra options will be appended to Zabbix server configuration file. + +Defaults to @samp{""}. + +@end deftypevr + +@deftypevr {@code{zabbix-agent-configuration} parameter} include-files include-files +You may include individual files or all files in a directory in the +configuration file. + +Defaults to @samp{()}. + +@end deftypevr @c %end of fragment diff --git a/gnu/services/monitoring.scm b/gnu/services/monitoring.scm index cb1f71ebff..323c0ace56 100644 --- a/gnu/services/monitoring.scm +++ b/gnu/services/monitoring.scm @@ -36,7 +36,9 @@ prometheus-node-exporter-service-type zabbix-server-configuration - zabbix-server-service-type)) + zabbix-server-service-type + zabbix-agent-configuration + zabbix-agent-service-type)) ;;; @@ -314,3 +316,132 @@ configuration file.")) `((zabbix-server-configuration ,zabbix-server-configuration-fields)) 'zabbix-server-configuration)) + +(define-configuration zabbix-agent-configuration + (zabbix-agent + (package zabbix-agentd) + "The zabbix-agent package.") + (user + (string "zabbix") + "User who will run the Zabbix agent.") + (group + (group "zabbix") + "Group who will run the Zabbix agent.") + (hostname + (string "Zabbix server") + "Unique, case sensitive hostname which is required for active checks and +must match hostname as configured on the server.") + (log-type + (string "") + "Specifies where log messages are written to: +@itemize +@item @code{system} - syslog. +@item @code{file} - file specified with @code{log-file} parameter. +@item @code{console} - standard output. +@end itemize\n") + (log-file + (string "/var/log/zabbix/agent.log") + "Log file name for @code{log-type} @code{file} parameter.") + (pid-file + (string "/var/run/zabbix/zabbix_agent.pid") + "Name of PID file.") + (server + (list '("127.0.0.1")) + "List of IP addresses, optionally in CIDR notation, or hostnames of Zabbix +servers and Zabbix proxies. Incoming connections will be accepted only from +the hosts listed here.") + (server-active + (list '("127.0.0.1")) + "List of IP:port (or hostname:port) pairs of Zabbix servers and Zabbix +proxies for active checks. If port is not specified, default port is used. +If this parameter is not specified, active checks are disabled.") + (extra-options + (string "") + "Extra options will be appended to Zabbix server configuration file.") + (include-files + (include-files '()) + "You may include individual files or all files in a directory in the +configuration file.")) + +(define (zabbix-agent-account config) + "Return the user accounts and user groups for CONFIG." + (let ((zabbix-user "zabbix") + (zabbix-group "zabbix")) + (list (user-group (name zabbix-group) (system? #t)) + (user-account + (name zabbix-user) + (system? #t) + (group zabbix-group) + (comment "zabbix privilege separation user") + (home-directory (string-append "/var/run/" zabbix-user)) + (shell #~(string-append #$shadow "/sbin/nologin")))))) + +(define (zabbix-agent-activation config) + "Return the activation gexp for CONFIG." + (with-imported-modules '((guix build utils) + (ice-9 rdelim)) + #~(begin + (use-modules (guix build utils) + (ice-9 rdelim)) + (let ((user + (getpw #$(zabbix-agent-configuration-user config)))) + (for-each (lambda (file) + (let ((directory (dirname file))) + (mkdir-p directory) + (chown directory (passwd:uid user) (passwd:gid user)) + (chmod directory #o755))) + (list #$(zabbix-agent-configuration-log-file config) + #$(zabbix-agent-configuration-pid-file config))))))) + +(define (zabbix-agent-config-file config) + "Return the zabbix-agent configuration file corresponding to CONFIG." + (computed-file + "zabbix_agent.conf" + #~(begin + (call-with-output-file #$output + (lambda (port) + (display "# Generated by 'zabbix-agent-service'.\n" port) + (display #$(with-output-to-string + (lambda () + (serialize-configuration + config zabbix-agent-configuration-fields))) + port) + #t))))) + +(define (zabbix-agent-shepherd-service config) + "Return a for Zabbix agent with CONFIG." + (list (shepherd-service + (provision '(zabbix-agent)) + (documentation "Run Zabbix agent daemon.") + (start #~(make-forkexec-constructor + (list #$(file-append (zabbix-agent-configuration-zabbix-agent config) + "/sbin/zabbix_agentd") + "--config" #$(zabbix-agent-config-file config) + "--foreground") + #:user #$(zabbix-agent-configuration-user config) + #:group #$(zabbix-agent-configuration-group config) + #:pid-file #$(zabbix-agent-configuration-pid-file config) + #:environment-variables + (list "SSL_CERT_DIR=/run/current-system/profile\ +/etc/ssl/certs" + "SSL_CERT_FILE=/run/current-system/profile\ +/etc/ssl/certs/ca-certificates.crt"))) + (stop #~(make-kill-destructor))))) + +(define zabbix-agent-service-type + (service-type + (name 'zabbix-agent) + (extensions + (list (service-extension shepherd-root-service-type + zabbix-agent-shepherd-service) + (service-extension account-service-type + zabbix-agent-account) + (service-extension activation-service-type + zabbix-agent-activation))) + (default-value (zabbix-agent-configuration)))) + +(define (generate-zabbix-agent-documentation) + (generate-documentation + `((zabbix-agent-configuration + ,zabbix-agent-configuration-fields)) + 'zabbix-agent-configuration)) diff --git a/gnu/tests/monitoring.scm b/gnu/tests/monitoring.scm index edc41c4a30..76a2d3e946 100644 --- a/gnu/tests/monitoring.scm +++ b/gnu/tests/monitoring.scm @@ -235,6 +235,20 @@ zabbix||{} '(file-exists? "/var/run/zabbix/zabbix_server.pid") marionette)) + ;; Wait for zabbix-agent to be up and running. + (test-assert "zabbix-agent running" + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (start-service 'zabbix-agent)) + marionette)) + + ;; Make sure the PID file is created. + (test-assert "zabbix-agent PID file" + (marionette-eval + '(file-exists? "/var/run/zabbix/zabbix_agent.pid") + marionette)) + (test-end) (exit (= (test-runner-fail-count (test-runner-current)) 0))))) @@ -250,7 +264,9 @@ zabbix||{} (service zabbix-server-service-type (zabbix-server-configuration (db-password "zabbix") - (log-type "console")))))) + (log-type "console"))) + + (service zabbix-agent-service-type)))) (operating-system (inherit base-os) (packages (cons* postgresql (operating-system-packages base-os)))))) -- cgit v1.2.3 From e517161d6b0ee544dab94477c9ffbad59cc1834b Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Thu, 29 Nov 2018 20:37:55 +0300 Subject: services: php-fpm: Add 'timezone' configuration. * gnu/services/web.scm: ()[timezone]: New record field. (default-php-fpm-config, php-fpm-shepherd-service, php-fpm-activation): Use this. * doc/guix.texi (Web Services): Document this. --- doc/guix.texi | 2 ++ gnu/services/web.scm | 48 ++++++++++++++++++++++++++++-------------------- 2 files changed, 30 insertions(+), 20 deletions(-) (limited to 'gnu') diff --git a/doc/guix.texi b/doc/guix.texi index 02778588ca..7304cf5f13 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -17658,6 +17658,8 @@ Determines whether php errors and warning should be sent to clients and displayed in their browsers. This is useful for local php development, but a security risk for public sites, as error messages can reveal passwords and personal data. +@item @code{timezone} (default @code{#f}) +Specifies @code{php_admin_value[date.timezone]} parameter. @item @code{workers-logfile} (default @code{(string-append "/var/log/php" (version-major (package-version php)) "-fpm.www.log")}) This file will log the @code{stderr} outputs of php worker processes. Can be set to @code{#f} to disable logging. diff --git a/gnu/services/web.scm b/gnu/services/web.scm index fcf453c248..d71fed20ed 100644 --- a/gnu/services/web.scm +++ b/gnu/services/web.scm @@ -142,6 +142,7 @@ php-fpm-configuration-log-file php-fpm-configuration-process-manager php-fpm-configuration-display-errors + php-fpm-configuration-timezone php-fpm-configuration-workers-log-file php-fpm-configuration-file @@ -773,6 +774,8 @@ of index files." (default (php-fpm-dynamic-process-manager-configuration))) (display-errors php-fpm-configuration-display-errors (default #f)) + (timezone php-fpm-configuration-timezone + (default #f)) (workers-log-file php-fpm-configuration-workers-log-file (default (string-append "/var/log/php" (version-major (package-version php)) @@ -827,7 +830,7 @@ of index files." (shell (file-append shadow "/sbin/nologin"))))))) (define (default-php-fpm-config socket user group socket-user socket-group - pid-file log-file pm display-errors workers-log-file) + pid-file log-file pm display-errors timezone workers-log-file) (apply mixed-text-file "php-fpm.conf" (flatten "[global]\n" @@ -840,6 +843,10 @@ of index files." "listen.owner =" socket-user "\n" "listen.group =" socket-group "\n" + (if timezone + (string-append "php_admin_value[date.timezone] = \"" timezone "\"\n") + "") + (match pm (($ pm.max-children @@ -879,7 +886,8 @@ of index files." (define php-fpm-shepherd-service (match-lambda (($ php socket user group socket-user socket-group - pid-file log-file pm display-errors workers-log-file file) + pid-file log-file pm display-errors + timezone workers-log-file file) (list (shepherd-service (provision '(php-fpm)) (documentation "Run the php-fpm daemon.") @@ -890,27 +898,27 @@ of index files." #$(or file (default-php-fpm-config socket user group socket-user socket-group pid-file log-file - pm display-errors workers-log-file))) + pm display-errors timezone workers-log-file))) #:pid-file #$pid-file)) (stop #~(make-kill-destructor))))))) -(define php-fpm-activation - (match-lambda - (($ _ _ user _ _ _ _ log-file _ _ workers-log-file _) - #~(begin - (use-modules (guix build utils)) - (let* ((user (getpwnam #$user)) - (touch (lambda (file-name) - (call-with-output-file file-name (const #t)))) - (init-log-file - (lambda (file-name) - (when #$workers-log-file - (when (not (file-exists? file-name)) - (touch file-name)) - (chown file-name (passwd:uid user) (passwd:gid user)) - (chmod file-name #o660))))) - (init-log-file #$log-file) - (init-log-file #$workers-log-file)))))) +(define (php-fpm-activation config) + #~(begin + (use-modules (guix build utils)) + (let* ((user (getpwnam #$(php-fpm-configuration-user config))) + (touch (lambda (file-name) + (call-with-output-file file-name (const #t)))) + (workers-log-file + #$(php-fpm-configuration-workers-log-file config)) + (init-log-file + (lambda (file-name) + (when workers-log-file + (when (not (file-exists? file-name)) + (touch file-name)) + (chown file-name (passwd:uid user) (passwd:gid user)) + (chmod file-name #o660))))) + (init-log-file #$(php-fpm-configuration-log-file config)) + (init-log-file workers-log-file)))) (define php-fpm-service-type -- cgit v1.2.3 From 1a3e7534d0a02fad1d19173985cf47e1aaa3b956 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Thu, 29 Nov 2018 20:39:53 +0300 Subject: gnu: Add php-with-bcmath. * gnu/packages/php.scm (php-with-bcmath): New variable. --- gnu/packages/php.scm | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/php.scm b/gnu/packages/php.scm index dfb9f2db3a..5ffe7c8999 100644 --- a/gnu/packages/php.scm +++ b/gnu/packages/php.scm @@ -48,6 +48,7 @@ #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system gnu) + #:use-module (guix utils) #:use-module ((guix licenses) #:prefix license:)) (define-public php @@ -348,3 +349,12 @@ systems, web content management systems and web frameworks." ) license:lgpl2.1+ ; ext/bcmath/libbcmath license:bsd-2 ; ext/fileinfo/libmagic license:expat)))) ; ext/date/lib + +(define-public php-with-bcmath + (package + (inherit php) + (name "php-with-bcmath") + (arguments + (substitute-keyword-arguments (package-arguments php) + ((#:configure-flags flags) + `(cons "--enable-bcmath" ,flags)))))) -- cgit v1.2.3 From 85c07cff9cd2197a16c2d3544e4930e278513cf7 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Thu, 29 Nov 2018 20:41:40 +0300 Subject: services: monitoring: Add 'zabbix-front-end'. * gnu/services/monitoring.scm (nginx-server-configuration-list?, serialize-nginx-server-configuration-list, zabbix-front-end-configuration, zabbix-front-end-config, zabbix-front-end-activation, generate-zabbix-front-end-documentation): New procedures. (%zabbix-front-end-configuration-nginx, %maintenance.inc.php, zabbix-front-end-service-type): New variables. * doc/guix.texi (Monitoring Services): Document this. --- doc/guix.texi | 75 ++++++++++++++++++++++ gnu/services/monitoring.scm | 148 +++++++++++++++++++++++++++++++++++++++++++- gnu/tests/monitoring.scm | 49 +++++++++++++++ 3 files changed, 270 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/doc/guix.texi b/doc/guix.texi index 7304cf5f13..338ff45c39 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -16904,6 +16904,81 @@ Defaults to @samp{()}. @end deftypevr +@c %end of fragment + +@subsubheading Zabbix front-end +@cindex zabbix zabbix-front-end + +This service provides a WEB interface to Zabbix server. + +@c %start of fragment + +Available @code{zabbix-front-end-configuration} fields are: + +@deftypevr {@code{zabbix-front-end-configuration} parameter} nginx-server-configuration-list nginx +NGINX configuration. + +@end deftypevr + +@deftypevr {@code{zabbix-front-end-configuration} parameter} string db-host +Database host name. + +Defaults to @samp{"localhost"}. + +@end deftypevr + +@deftypevr {@code{zabbix-front-end-configuration} parameter} number db-port +Database port. + +Defaults to @samp{5432}. + +@end deftypevr + +@deftypevr {@code{zabbix-front-end-configuration} parameter} string db-name +Database name. + +Defaults to @samp{"zabbix"}. + +@end deftypevr + +@deftypevr {@code{zabbix-front-end-configuration} parameter} string db-user +Database user. + +Defaults to @samp{"zabbix"}. + +@end deftypevr + +@deftypevr {@code{zabbix-front-end-configuration} parameter} string db-password +Database password. Please, use @code{db-secret-file} instead. + +Defaults to @samp{""}. + +@end deftypevr + +@deftypevr {@code{zabbix-front-end-configuration} parameter} string db-secret-file +Secret file which will be appended to @file{zabbix.conf.php} file. This +file contains credentials for use by Zabbix front-end. You are expected +to create it manually. + +Defaults to @samp{""}. + +@end deftypevr + +@deftypevr {@code{zabbix-front-end-configuration} parameter} string zabbix-host +Zabbix server hostname. + +Defaults to @samp{"localhost"}. + +@end deftypevr + +@deftypevr {@code{zabbix-front-end-configuration} parameter} number zabbix-port +Zabbix server port. + +Defaults to @samp{10051}. + +@end deftypevr + + @c %end of fragment @node Kerberos Services diff --git a/gnu/services/monitoring.scm b/gnu/services/monitoring.scm index 323c0ace56..18413096e4 100644 --- a/gnu/services/monitoring.scm +++ b/gnu/services/monitoring.scm @@ -22,6 +22,7 @@ #:use-module (gnu services) #:use-module (gnu services configuration) #:use-module (gnu services shepherd) + #:use-module (gnu services web) #:use-module (gnu packages admin) #:use-module (gnu packages monitoring) #:use-module (gnu system shadow) @@ -29,6 +30,7 @@ #:use-module (guix packages) #:use-module (guix records) #:use-module (ice-9 match) + #:use-module (ice-9 rdelim) #:use-module (srfi srfi-26) #:export (darkstat-configuration prometheus-node-exporter-configuration @@ -38,7 +40,10 @@ zabbix-server-configuration zabbix-server-service-type zabbix-agent-configuration - zabbix-agent-service-type)) + zabbix-agent-service-type + zabbix-front-end-configuration + zabbix-front-end-service-type + %zabbix-front-end-configuration-nginx)) ;;; @@ -179,6 +184,12 @@ prometheus.") (define (serialize-extra-options field-name val) (if (null? val) "" (display val))) +(define (nginx-server-configuration-list? val) + (and (list? val) (and-map nginx-server-configuration? val))) + +(define (serialize-nginx-server-configuration-list field-name val) + "") + (define-configuration zabbix-server-configuration (zabbix-server (package zabbix-server) @@ -356,7 +367,7 @@ the hosts listed here.") proxies for active checks. If port is not specified, default port is used. If this parameter is not specified, active checks are disabled.") (extra-options - (string "") + (extra-options "") "Extra options will be appended to Zabbix server configuration file.") (include-files (include-files '()) @@ -445,3 +456,136 @@ configuration file.")) `((zabbix-agent-configuration ,zabbix-agent-configuration-fields)) 'zabbix-agent-configuration)) + +(define %zabbix-front-end-configuration-nginx + (nginx-server-configuration + (root #~(string-append #$zabbix-server:front-end "/share/zabbix/php")) + (index '("index.php")) + (locations + (let ((php-location (nginx-php-location))) + (list (nginx-location-configuration + (inherit php-location) + (body (append (nginx-location-configuration-body php-location) + (list " +fastcgi_param PHP_VALUE \"post_max_size = 16M + max_execution_time = 300\"; +"))))))))) + +(define-configuration zabbix-front-end-configuration + ;; TODO: Specify zabbix front-end package. + ;; (zabbix- + ;; (package zabbix-front-end) + ;; "The zabbix-front-end package.") + (nginx + (nginx-server-configuration-list + (list %zabbix-front-end-configuration-nginx)) + "NGINX configuration.") + (db-host + (string "localhost") + "Database host name.") + (db-port + (number 5432) + "Database port.") + (db-name + (string "zabbix") + "Database name.") + (db-user + (string "zabbix") + "Database user.") + (db-password + (string "") + "Database password. Please, use @code{db-secret-file} instead.") + (db-secret-file + (string "") + "Secret file which will be appended to @file{zabbix.conf.php} file. This +file contains credentials for use by Zabbix front-end. You are expected to +create it manually.") + (zabbix-host + (string "localhost") + "Zabbix server hostname.") + (zabbix-port + (number 10051) + "Zabbix server port.")) + +(define zabbix-front-end-config + (match-lambda + (($ + _ db-host db-port db-name db-user db-password db-secret-file + zabbix-host zabbix-port) + (mixed-text-file "zabbix.conf.php" + "\ +string db-port) "'; +$DB['DATABASE'] = '" db-name "'; +$DB['USER'] = '" db-user "'; +$DB['PASSWORD'] = '" (if (string-null? db-password) + (if (string-null? db-secret-file) + (display "Provide a `db-secret-file' \ +or `db-password' field. +" + (current-error-port)) + (string-trim-both + (with-input-from-file db-secret-file + read-string))) + (begin + (display " +Hint: Consider use `db-secret-file' instead of `db-password' and unset +`db-password' for security in `zabbix-front-end-configuration'. +") + db-password)) "'; + +// Schema name. Used for IBM DB2 and PostgreSQL. +$DB['SCHEMA'] = ''; + +$ZBX_SERVER = '" zabbix-host "'; +$ZBX_SERVER_PORT = '" (number->string zabbix-port) "'; +$ZBX_SERVER_NAME = ''; + +$IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG; +")))) + +(define %maintenance.inc.php + ;; Empty php file to allow us move zabbix-frontend configs to ‘/etc/zabbix’ + ;; directory. See ‘install-front-end’ phase in + ;; (@ (gnu packages monitoring) zabbix-server) package. + "\ + Date: Fri, 30 Nov 2018 20:27:23 +0300 Subject: gnu: zabbix-agentd: Update to 4.0.2. * gnu/packages/monitoring.scm (zabbix-agentd): Update to 4.0.2. --- gnu/packages/monitoring.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/monitoring.scm b/gnu/packages/monitoring.scm index 35fe4c7690..416135414f 100644 --- a/gnu/packages/monitoring.scm +++ b/gnu/packages/monitoring.scm @@ -151,7 +151,7 @@ etc. via a Web interface. Features include: (define-public zabbix-agentd (package (name "zabbix-agentd") - (version "3.4.11") + (version "4.0.2") (source (origin (method url-fetch) @@ -160,7 +160,7 @@ etc. via a Web interface. Features include: "/zabbix-" version ".tar.gz")) (sha256 (base32 - "0qxgf6hx7ibhjmxd2sxizkjc8df4c9d31wz5hhql409ws98qf173")))) + "033qb4b9y02jp2ijj8ny0a0yk1mzj0a8ihxrv11h7ln8kpl55vqw")))) (build-system gnu-build-system) (arguments `(#:configure-flags @@ -220,6 +220,8 @@ solution (client-side agent)") (string-append "--with-gnutls=" (assoc-ref %build-inputs "gnutls")) "--with-libcurl" + (string-append "--with-zlib=" + (assoc-ref %build-inputs "zlib")) ,flags)))) (inputs `(("curl" ,curl) -- cgit v1.2.3 From 2a6ba9ff6102f865761530687866f12397f06c36 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Mon, 17 Dec 2018 21:17:54 +0100 Subject: gnu: opam: Fix package installation. Opam builds packages in an isolated environment, but packages still assume they can access system tools like a compiler, make, etc... Mount /gnu and /run/current-system so these tools are also available to opam packages on GuixSD. * gnu/packages/ocaml.scm (opam)[arguments]: Fix bwrap.sh to also mount the store and the system profile in the opam environment. --- gnu/packages/ocaml.scm | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index e4a76acc89..7ba5a6b4f9 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -384,7 +384,13 @@ functional, imperative and object-oriented styles of programming.") ;; Use bwrap from the store directly. (substitute* "src/state/shellscripts/bwrap.sh" (("-v bwrap") (string-append "-v " bwrap)) - (("exec bwrap") (string-append "exec " bwrap))) + (("exec bwrap") (string-append "exec " bwrap)) + ;; Mount /gnu and /run/current-system in the + ;; isolated environment when building with opam. + ;; This is necessary for packages to find external + ;; dependencies, such as a C compiler, make, etc... + (("^add_mounts ro /usr") + "add_mounts ro /gnu /run/current-system /usr")) (substitute* "src/client/opamInitDefaults.ml" (("\"bwrap\"") (string-append "\"" bwrap "\""))) ;; Build dependencies -- cgit v1.2.3 From bafcf1f32f3dfaf494d7640a3882585c143378cd Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sun, 16 Dec 2018 23:52:06 +0100 Subject: services: udev: Add 'rules' action. * gnu/services/base.scm (udev-shepherd-service): Add 'actions' field. * doc/guix.texi (Base Services): Move "@end deffn" after 'udev-service' definition. Mention 'herd rules udev'. --- doc/guix.texi | 5 ++++- gnu/services/base.scm | 10 +++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/doc/guix.texi b/doc/guix.texi index 338ff45c39..1c26dc5a89 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -11308,6 +11308,7 @@ Run @var{udev}, which populates the @file{/dev} directory dynamically. udev rules can be provided as a list of files through the @var{rules} variable. The procedures @var{udev-rule} and @var{file->udev-rule} from @code{(gnu services base)} simplify the creation of such rule files. +@end deffn @deffn {Scheme Procedure} udev-rule [@var{file-name} @var{contents}] Return a udev-rule file named @var{file-name} containing the rules @@ -11325,6 +11326,9 @@ upon detecting a USB device with a given product identifier. "ATTR@{product@}==\"Example\", " "RUN+=\"/path/to/script\""))) @end example + +The @command{herd rules udev} command, as root, returns the name of the +directory containing all the active udev rules. @end deffn Here we show how the default @var{udev-service} can be extended with it. @@ -11406,7 +11410,6 @@ well as in the @var{groups} field of the @var{operating-system} record. (rules (cons* android-udev-rules (udev-configuration-rules config)))))))) @end example -@end deffn @defvr {Scheme Variable} urandom-seed-service-type Save some entropy in @var{%random-seed-file} to seed @file{/dev/urandom} diff --git a/gnu/services/base.scm b/gnu/services/base.scm index b10f5cbaf1..67bdaef18c 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -1967,7 +1967,15 @@ item of @var{packages}." (respawn? #f) ;; We need additional modules. (modules `((gnu build linux-boot) - ,@%default-modules)))))))) + ,@%default-modules)) + + (actions (list (shepherd-action + (name 'rules) + (documentation "Display the directory containing +the udev rules in use.") + (procedure #~(lambda (_) + (display #$rules) + (newline)))))))))))) (define udev-service-type (service-type (name 'udev) -- cgit v1.2.3 From 997aa1af9977c52d9ab8e296b3c15c96cbe3986e Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 16 Dec 2018 16:29:25 -0500 Subject: gnu: WebKitGTK+ 2.22: Update to 2.22.5 [fixes CVE-2018-4437]. * gnu/packages/webkit.scm (webkitgtk-2.22): Update to 2.22.5. --- gnu/packages/webkit.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm index b56cdd8938..f135666a7e 100644 --- a/gnu/packages/webkit.scm +++ b/gnu/packages/webkit.scm @@ -168,14 +168,14 @@ HTML/CSS applications to full-fledged web browsers.") (define-public webkitgtk-2.22 (package/inherit webkitgtk (name "webkitgtk") - (version "2.22.4") + (version "2.22.5") (source (origin (method url-fetch) (uri (string-append "https://www.webkitgtk.org/releases/" name "-" version ".tar.xz")) (sha256 (base32 - "1f2335hjzsvjxjf6hy5cyypsn65wykpx2pbk1sp548w0hclbxdgs")))) + "04ybyvaz5xhfkd2k65pc0sqizngjvd82j1p56wz3lz4a84zqdlwr")))) (native-inputs `(("gcc" ,gcc-7) ; webkitgtk-2.22 requires gcc-6 or newer ,@(package-native-inputs webkitgtk))) -- cgit v1.2.3 From ed411eb2b86c7970b4fc437b9904df8a11990926 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 17 Dec 2018 19:50:13 -0500 Subject: gnu: RawTherapee: Update to 5.5. * gnu/packages/photo.scm (rawtherapee): Update to 5.5. --- 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 9410d1761d..7b40c2361c 100644 --- a/gnu/packages/photo.scm +++ b/gnu/packages/photo.scm @@ -493,14 +493,14 @@ a complete panorama and stitch any series of overlapping pictures.") (define-public rawtherapee (package (name "rawtherapee") - (version "5.4") + (version "5.5") (source (origin (method url-fetch) (uri (string-append "http://rawtherapee.com/shared/source/" "rawtherapee-" version ".tar.xz")) (sha256 (base32 - "1229hxqq824hcqg1hy2cfglsp7kjbhhis9m33ss39pgmrb1w227d")))) + "1w28a2rnxnw8hs7s8x8zkccgi5z5y653602jg7g86lfx6zxwjsf1")))) (build-system cmake-build-system) (arguments '(#:tests? #f ; no test suite -- cgit v1.2.3 From c15ba0dbf1cda50a8af171ff0598e15eef2a14d4 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 17 Dec 2018 23:33:55 -0500 Subject: gnu: linux-libre@4.4: Update to 4.4.168. * gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.168. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 43ee257c70..d64ae29926 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -439,8 +439,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.4 - (make-linux-libre "4.4.167" - "1107bz3v2bjngz3rwqgcr66rbf0ir8n2fnm07rx0l0xyrfpfl7rh" + (make-linux-libre "4.4.168" + "12wb8fjmgkal1s4sfkfa5gi8bza22ah4p762gl33v4qc9nvjmmpf" %intel-compatible-systems #:configuration-file kernel-config)) -- cgit v1.2.3 From 42159e76e257a3a0ab7357efc79bdc25ead369fb Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 17 Dec 2018 23:34:34 -0500 Subject: gnu: linux-libre@4.9: Update to 4.9.146. * gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.146. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index d64ae29926..94f28aac9b 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -433,8 +433,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.9 - (make-linux-libre "4.9.145" - "18xbv2m742p3dd68wlsn70if67k0g8qvqcrk1ffhcj1712s28nif" + (make-linux-libre "4.9.146" + "0z1jdpa5z3kcgl29am19rvips03w7hr106rc3p9rzggblr623dy5" %intel-compatible-systems #:configuration-file kernel-config)) -- cgit v1.2.3 From ce146a872ce21f34987b19c927b747c1aade1a7a Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 17 Dec 2018 23:35:13 -0500 Subject: gnu: linux-libre@4.14: Update to 4.14.89. * gnu/packages/linux.scm (%linux-libre-4.14-version): Update to 4.14.89. (%linux-libre-4.14-hash): Update hash. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 94f28aac9b..b20be91bc5 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -423,8 +423,8 @@ It has been modified to remove all non-free binary blobs.") #:patches %linux-libre-4.19-patches #:configuration-file kernel-config)) -(define %linux-libre-4.14-version "4.14.88") -(define %linux-libre-4.14-hash "1qsnwaw4kbrchlc6cv9i8a9cgi06cf8pn4hqj0k6g4xdqrwf3k6a") +(define %linux-libre-4.14-version "4.14.89") +(define %linux-libre-4.14-hash "12n6qpcng7c7vdb1p3p914bn3g2namaam6d55ipvz0dv5k283h75") (define-public linux-libre-4.14 (make-linux-libre %linux-libre-4.14-version -- cgit v1.2.3 From 6a9659f5d88b082c3fa831a28ae953c4faed0efc Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 17 Dec 2018 23:36:03 -0500 Subject: gnu: linux-libre: Update to 4.19.10. * gnu/packages/linux.scm (%linux-libre-version): Update to 4.19.10. (%linux-libre-hash): Update hash. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index b20be91bc5..105431b318 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -400,8 +400,8 @@ It has been modified to remove all non-free binary blobs.") ;; supports qemu "virt" machine and possibly a large number of ARM boards. ;; See : https://wiki.debian.org/DebianKernel/ARMMP. -(define %linux-libre-version "4.19.9") -(define %linux-libre-hash "0yi7f7c5nxk03mja82kmnz2681bxpyl4drvz767dsx19d6gq1h1d") +(define %linux-libre-version "4.19.10") +(define %linux-libre-hash "1gazdjnm9hhsclc6l7g7rn9545m1gdil1zxrziihs71hi20rx1pf") (define %linux-libre-4.19-patches (list %boot-logo-patch -- cgit v1.2.3 From 01cb4d47570c38812492bbc331b7b818e1b69fbb Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Mon, 17 Dec 2018 19:32:05 +0530 Subject: gnu: ansible: Work around issues with Guix wrapper scripts. * gnu/packages/admin.scm (ansible)[source]: Remove ansible-wrap-program-hack.patch from patches. [arguments]: Add hide-wrapping and fix-symlinks phases. * gnu/packages/patches/ansible-wrap-program-hack.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Unregister it. --- gnu/local.mk | 1 - gnu/packages/admin.scm | 39 ++++++++++++++++++++-- .../patches/ansible-wrap-program-hack.patch | 22 ------------ 3 files changed, 37 insertions(+), 25 deletions(-) delete mode 100644 gnu/packages/patches/ansible-wrap-program-hack.patch (limited to 'gnu') diff --git a/gnu/local.mk b/gnu/local.mk index 0e2316a695..0d60e9b75e 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -579,7 +579,6 @@ dist_patch_DATA = \ %D%/packages/patches/aegisub-boost68.patch \ %D%/packages/patches/agg-am_c_prototype.patch \ %D%/packages/patches/amule-crypto-6.patch \ - %D%/packages/patches/ansible-wrap-program-hack.patch \ %D%/packages/patches/antiword-CVE-2014-8123.patch \ %D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch \ %D%/packages/patches/antlr3-3_3-fix-java8-compilation.patch \ diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 01deb09950..fa5fa3ab86 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -1608,8 +1608,7 @@ of supported upstream metrics systems simultaneously.") (uri (pypi-uri "ansible" version)) (sha256 (base32 - "1fsif2jmkrrgiawsd8r6sxrqvh01fvrmdhas0p540a6i9fby3yda")) - (patches (search-patches "ansible-wrap-program-hack.patch")))) + "1fsif2jmkrrgiawsd8r6sxrqvh01fvrmdhas0p540a6i9fby3yda")))) (build-system python-build-system) (native-inputs `(("python-bcrypt" ,python-bcrypt) @@ -1626,6 +1625,42 @@ of supported upstream metrics systems simultaneously.") ("python-jinja2" ,python-jinja2) ("python-pyyaml" ,python-pyyaml) ("python-paramiko" ,python-paramiko))) + (arguments + `(#:phases + (modify-phases %standard-phases + ;; Several ansible commands (ansible-config, ansible-console, etc.) + ;; are just symlinks to a single ansible executable. The ansible + ;; executable behaves differently based on the value of + ;; sys.argv[0]. This does not work well with our wrap phase, and + ;; therefore the following two phases are required as a workaround. + (add-after 'unpack 'hide-wrapping + (lambda _ + ;; Overwrite sys.argv[0] to hide the wrapper script from it. + (substitute* "bin/ansible" + (("import traceback" all) + (string-append all " +import re +sys.argv[0] = re.sub(r'\\.([^/]*)-real$', r'\\1', sys.argv[0]) +"))) + #t)) + (add-after 'wrap 'fix-symlinks + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (for-each + (lambda (subprogram) + ;; The symlinks point to the ansible wrapper script. Make + ;; them point to the real executable (.ansible-real). + (delete-file (string-append out "/bin/.ansible-" subprogram "-real")) + (symlink (string-append out "/bin/.ansible-real") + (string-append out "/bin/.ansible-" subprogram "-real")) + ;; The wrapper scripts of the symlinks invoke the ansible + ;; wrapper script. Fix them to invoke the correct executable. + (substitute* (string-append out "/bin/ansible-" subprogram) + (("/bin/ansible") + (string-append "/bin/.ansible-" subprogram "-real")))) + (list "config" "console" "doc" "galaxy" + "inventory" "playbook" "pull" "vault"))) + #t))))) (home-page "https://www.ansible.com/") (synopsis "Radically simple IT automation") (description "Ansible is a radically simple IT automation system. It diff --git a/gnu/packages/patches/ansible-wrap-program-hack.patch b/gnu/packages/patches/ansible-wrap-program-hack.patch deleted file mode 100644 index c2e1028392..0000000000 --- a/gnu/packages/patches/ansible-wrap-program-hack.patch +++ /dev/null @@ -1,22 +0,0 @@ -Ansible changes its behaviour depending on the name of the script that it is -called as. Make it deal with guix' .real wrapper scripts. - -FIXME: Remove once wrapping ansible works properly. -See http://lists.gnu.org/archive/html/bug-guix/2017-05/msg00015.html. ---- ansible-2.3.0.0/bin/ansible 2017-04-12 16:08:05.000000000 +0200 -+++ ansible-2.3.0.0-fixed/bin/ansible 2017-05-21 20:11:18.720872385 +0200 -@@ -75,7 +75,13 @@ - # sometimes add that - target = target[:-1] - -- if len(target) > 1: -+ if target[-1] == "real" and target[0].startswith('.'): -+ target = target[:-1] -+ target[0] = target[0][1:] -+ if len(target) > 1 and target[1] != "real" : -+ sub = target[1] -+ myclass = "%sCLI" % sub.capitalize() -+ elif len(target) > 2 and target[2] == "real" : - sub = target[1] - myclass = "%sCLI" % sub.capitalize() - elif target[0] == 'ansible': -- cgit v1.2.3 From c340d8dc745dec622d854c4b166d475175ee2d31 Mon Sep 17 00:00:00 2001 From: Rutger Helling Date: Tue, 18 Dec 2018 08:42:16 +0100 Subject: gnu: git: Update to 2.20.1. * gnu/packages/version-control.scm (git): Update to 2.20.1. --- gnu/packages/version-control.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index f37936ee5e..2eaf0c69f4 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -146,14 +146,14 @@ as well as the classic centralized workflow.") (name "git") ;; XXX When updating Git, check if the special 'git-source' input to cgit ;; needs to be updated as well. - (version "2.20.0") + (version "2.20.1") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/software/scm/git/git-" version ".tar.xz")) (sha256 (base32 - "07yq186wb3wqvvmzhhsca57m979p7jprkk4h2a516jz1fd87755w")))) + "1sf3h6ms43k15h01ln8lcf24vx9n7c11s83h1ax63sm2zbi92blx")))) (build-system gnu-build-system) (native-inputs `(("native-perl" ,perl) @@ -166,7 +166,7 @@ as well as the classic centralized workflow.") version ".tar.xz")) (sha256 (base32 - "141n20migxaazy0vfkivjk6bzazi3ydyq7qkf6wmkg186l4amgbr")))) + "1fkn134y7an850l7p487v39y5zciaa65gryzqz815dyg8ziwq2h6")))) ;; For subtree documentation. ("asciidoc" ,asciidoc) ("docbook-xsl" ,docbook-xsl) -- cgit v1.2.3 From 809b959680009caeb76172669e414e318cd7337f Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Tue, 18 Dec 2018 09:31:43 +0100 Subject: gnu: emacs-evil-collection: Update to 20181218. * gnu/packages/emacs.scm (emacs-evil-collection): Update to 20181218. --- gnu/packages/emacs.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index da0a00592e..a1b1f83bb7 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -5362,8 +5362,8 @@ extensions.") (license license:gpl3+)))) (define-public emacs-evil-collection - (let ((commit "abc9dd60f71ccc1f24803a12d853f84b4a8b258c") - (revision "4")) + (let ((commit "4e1f0e0b17153d460805a0da90d6191d66b2673d") + (revision "5")) (package (name "emacs-evil-collection") (version (git-version "0.0.1" revision commit)) @@ -5375,7 +5375,7 @@ extensions.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "0c9l93vrsl6kzx8gg305dq8qkb2dr3s10fww7lh382911pdmsh7v")))) + "11d5ppdnb2y2mwsdd9g62h7zds962kw3nss89zv5iwgcf9f1fb5x")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-evil" ,emacs-evil))) -- cgit v1.2.3 From ad01ab161088c4c8f2f514d76f930d14dc13effc Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Tue, 18 Dec 2018 10:40:54 +0100 Subject: gnu: emacs-helpful: Update to 0.15. * gnu/packages/emacs.scm (emacs-helpful): Update to 0.15. --- gnu/packages/emacs.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index a1b1f83bb7..5f02e88f32 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -10271,7 +10271,7 @@ downloading manager for Emacs.") (define-public emacs-helpful (package (name "emacs-helpful") - (version "0.13") + (version "0.15") (source (origin (method url-fetch) (uri (string-append @@ -10280,7 +10280,7 @@ downloading manager for Emacs.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "11kj04y1fa3vnw2991cyqf6adz6bb3hlrdkvypjnmpb0s64q64b6")))) + "1xmvhphzb4hbg647dz4lafy6hd19b7bk3lxni6irqrzdsrclhzn6")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-elisp-refs" ,emacs-elisp-refs))) -- cgit v1.2.3 From 232cc1001d8163a2af9eed0169f0110d70076686 Mon Sep 17 00:00:00 2001 From: Jelle Licht Date: Mon, 17 Dec 2018 22:24:20 +0100 Subject: gnu: emacs-daemons: Update to 2.0.0. * gnu/packages/emacs.scm (emacs-daemons): Update to 2.0.0. --- gnu/packages/emacs.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 5f02e88f32..e9ba0f9174 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -11274,7 +11274,7 @@ device tree files.") (define-public emacs-daemons (package (name "emacs-daemons") - (version "1.2.0") + (version "2.0.0") (source (origin (method git-fetch) @@ -11284,7 +11284,7 @@ device tree files.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "00ijgm22ck76gw0x79krl05yy0m8a502yfakazfy5xhpn1zi6ab7")))) + "00bkzfaw3bqykcks610vk9wlpa2z360xn32bpsrycacwfv29j7g4")))) (build-system emacs-build-system) (home-page "https://github.com/cbowdon/daemons.el") (synopsis "Emacs UI for managing init system services") -- cgit v1.2.3 From 83d4da1211e8c5cdae10f228605f707f307d02c7 Mon Sep 17 00:00:00 2001 From: Rutger Helling Date: Tue, 18 Dec 2018 14:49:33 +0100 Subject: gnu: libostree: Update to 2018.9.1. * gnu/packages/package-management.scm (libostree): Update to 2018.9.1. --- gnu/packages/package-management.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 226add808a..89c9f91dbf 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -934,15 +934,15 @@ for packaging and deployment of cross-compiled Windows applications.") (define-public libostree (package (name "libostree") - (version "2018.7") + (version "2018.9.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/ostreedev/ostree/releases/download/v" - version "/libostree-" version ".tar.xz")) + (version-major+minor version) "/libostree-" version ".tar.xz")) (sha256 (base32 - "1nc310lv36psxn5yslkxlgi9gjxwqpwqzkg2pldgpwrlv6gkagj8")))) + "01mygpkbl9sk2vr3hjbpih6qlg8lwx0q5lklm09f7jfwfpnwyqzj")))) (build-system gnu-build-system) (arguments '(#:phases -- cgit v1.2.3 From 6ea6e1476ff4a18d4b4b864c3065d18ed99c69af Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 18 Dec 2018 14:51:56 +0100 Subject: file-systems: Spawn a REPL only when interaction is possible. Fixes . Reported by Jan Nieuwenhuizen . * gnu/build/file-systems.scm (check-file-system): Call 'start-repl' only if current-input-port passes 'isatty?'. * gnu/services/shepherd.scm (shepherd-configuration-file): After 'for-each' expression, call 'redirect-port'. * gnu/tests/base.scm (run-basic-test)["stdin is /dev/null"]: New test. --- gnu/build/file-systems.scm | 9 ++++++--- gnu/services/shepherd.scm | 12 +++++++++++- gnu/tests/base.scm | 15 +++++++++++++++ 3 files changed, 32 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/build/file-systems.scm b/gnu/build/file-systems.scm index 3f97afeedd..efd744acc1 100644 --- a/gnu/build/file-systems.scm +++ b/gnu/build/file-systems.scm @@ -535,10 +535,13 @@ were found." (sleep 3) (reboot)) ('fatal-error - (format (current-error-port) - "File system check on ~a failed; spawning Bourne-like REPL~%" + (format (current-error-port) "File system check on ~a failed~%" device) - (start-repl %bournish-language))) + + ;; Spawn a REPL only if someone would be able to interact with it. + (when (isatty? (current-input-port)) + (format (current-error-port) "Spawning Bourne-like REPL.~%") + (start-repl %bournish-language)))) (format (current-error-port) "No file system check procedure for ~a; skipping~%" device))) diff --git a/gnu/services/shepherd.scm b/gnu/services/shepherd.scm index 49d08cc30f..12d649f542 100644 --- a/gnu/services/shepherd.scm +++ b/gnu/services/shepherd.scm @@ -281,7 +281,17 @@ stored." (start service))) '#$(append-map shepherd-service-provision (filter shepherd-service-auto-start? - services))))))) + services))) + + ;; Hang up stdin. At this point, we assume that 'start' methods + ;; that required user interaction on the console (e.g., + ;; 'cryptsetup open' invocations, post-fsck emergency REPL) have + ;; completed. User interaction becomes impossible after this + ;; call; this avoids situations where services wrongfully lead + ;; PID 1 to read from stdin (the console), which users may not + ;; have access to (see ). + (redirect-port (open-input-file "/dev/null") + (current-input-port)))))) (scheme-file "shepherd.conf" config))) diff --git a/gnu/tests/base.scm b/gnu/tests/base.scm index 03392cef38..8d4e218a8f 100644 --- a/gnu/tests/base.scm +++ b/gnu/tests/base.scm @@ -123,6 +123,21 @@ initialization step, such as entering a LUKS passphrase." #f)))) marionette)) + (test-eq "stdin is /dev/null" + 'eof + ;; Make sure services can no longer read from stdin once the + ;; system has booted. + (marionette-eval + `(begin + (use-modules (gnu services herd)) + (start 'user-processes) + ((@@ (gnu services herd) eval-there) + '(let ((result (read (current-input-port)))) + (if (eof-object? result) + 'eof + result)))) + marionette)) + (test-assert "shell and user commands" ;; Is everything in $PATH? (zero? (marionette-eval '(system " -- cgit v1.2.3 From 5de5f8184530fd7e0e88514ae35cb2e9305910c1 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 18 Dec 2018 15:08:19 +0100 Subject: file-systems: Have the emergency REPL output to /dev/console. This fixes a bug whereby all emergency REPL output would go to /dev/klog and thus, each line would be prefixed by "[12324.432] shepherd[1]: ". * gnu/build/file-systems.scm (check-file-system): Wrap 'start-repl' call in 'with-output-to-file'. --- gnu/build/file-systems.scm | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/build/file-systems.scm b/gnu/build/file-systems.scm index efd744acc1..e3369d8521 100644 --- a/gnu/build/file-systems.scm +++ b/gnu/build/file-systems.scm @@ -541,7 +541,13 @@ were found." ;; Spawn a REPL only if someone would be able to interact with it. (when (isatty? (current-input-port)) (format (current-error-port) "Spawning Bourne-like REPL.~%") - (start-repl %bournish-language)))) + + ;; 'current-output-port' is typically connected to /dev/klog (in + ;; PID 1), but here we want to make sure we talk directly to the + ;; user. + (with-output-to-file "/dev/console" + (lambda () + (start-repl %bournish-language)))))) (format (current-error-port) "No file system check procedure for ~a; skipping~%" device))) -- cgit v1.2.3 From d852cf9e331888c23b4f9377064145ae74339644 Mon Sep 17 00:00:00 2001 From: Nam Nguyen Date: Sun, 16 Dec 2018 13:25:11 -0800 Subject: gnu: Add sct. * gnu/packages/xdisorg.scm (sct): New variable. Signed-off-by: Danny Milosavljevic --- gnu/packages/xdisorg.scm | 57 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 82ed065a3f..dc729229f3 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -24,6 +24,7 @@ ;;; Copyright © 2018 Thomas Sigurdsen ;;; Copyright © 2018 Rutger Helling ;;; Copyright © 2018 Pierre Neidhardt +;;; Copyright © 2018 Nam Nguyen ;;; ;;; This file is part of GNU Guix. ;;; @@ -52,6 +53,8 @@ #:use-module (guix build-system python) #:use-module (gnu packages) #:use-module (gnu packages documentation) + #:use-module (gnu packages admin) + #:use-module (gnu packages base) #:use-module (gnu packages algebra) #:use-module (gnu packages autotools) #:use-module (gnu packages check) @@ -1555,3 +1558,57 @@ to automatically turn it on on login.") (description "This package provides a small utility for inverting the colors on all monitors attached to an XRandR-capable X11 display server.") (license license:gpl3+))) + +(define-public sct + (package + (name "sct") + (version "0.4") + (source + (origin + (method url-fetch) + (uri + (string-append "https://www.umaxx.net/dl/sct-" + version ".tar.gz")) + (sha256 + (base32 + "0r57z9ki8pvxhawfxys0v5h85z2x211sqxki0xvk1bga88ryldlv")))) + (build-system gnu-build-system) + (arguments + '(#:make-flags (list "CC=gcc") + #:tests? #f ; No tests exist. + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-after 'unpack 'fix-sctd-paths + (lambda* (#:key outputs inputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (coreutils (assoc-ref inputs "coreutils")) + (inetutils (assoc-ref inputs "inetutils")) + (sed (assoc-ref inputs "sed"))) + (substitute* "sctd.sh" + (("\\$\\(which sct\\)") (string-append out "/bin/sct")) + (("date") (string-append coreutils "/bin/date")) + (("printf") (string-append coreutils "/bin/printf")) + (("sleep") (string-append coreutils "/bin/sleep")) + (("logger") (string-append inetutils "/bin/logger")) + (("sed") (string-append sed "/bin/sed")))))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (install-file "sct" (string-append out "/bin")) + (install-file "sctd.sh" (string-append out "/bin")) + (install-file "sct.1" (string-append out "/man/man1")) + (install-file "sctd.1" (string-append out "/man/man1")) + (rename-file (string-append out "/bin/sctd.sh") + (string-append out "/bin/sctd")) + #t)))))) + (inputs + `(("coreutils" ,coreutils) ; sctd uses "date", "printf" and "sleep" + ("inetutils" ,inetutils) ; sctd uses "logger" + ("libxrandr" ,libxrandr) + ("sed" ,sed))) ; sctd uses "sed" + (home-page "https://www.umaxx.net") + (synopsis "Set the color temperature of the screen") + (description "@code{sct} is a lightweight utility to set the color +temperature of the screen.") + (license license:bsd-3))) -- cgit v1.2.3 From effc8325a5c1aa07ca6cf13e864010ea67d24898 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Mon, 19 Nov 2018 23:28:13 +0100 Subject: gnu: ocaml-migrate-parsetree: Use dune-build-system. * gnu/packages/ocaml.scm (ocaml-migrate-parsetree): Use dune-build-system. --- gnu/packages/ocaml.scm | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 7ba5a6b4f9..ed087b7298 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -63,6 +63,7 @@ #:use-module (gnu packages web-browsers) #:use-module (gnu packages xml) #:use-module (gnu packages xorg) + #:use-module (guix build-system dune) #:use-module (guix build-system gnu) #:use-module (guix build-system ocaml) #:use-module (guix download) @@ -1564,26 +1565,13 @@ following a very simple s-expression syntax.") (sha256 (base32 "01zjp1q4hryqaxv4apkjd868fycz2kf887r6lkb6x2a545h1lh7f")))) - (build-system ocaml-build-system) + (build-system dune-build-system) (arguments `(#:tests? #f - #:phases - (modify-phases %standard-phases - (delete 'configure) - (replace 'build - (lambda _ - (invoke "jbuilder" "build" "@install") - #t)) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (invoke "jbuilder" "install" - "--prefix" (assoc-ref outputs "out")) - #t))))) + #:jbuild? #t)) (propagated-inputs `(("ocamlbuild" ,ocamlbuild) ("ocaml-result" ,ocaml-result))) - (native-inputs - `(("dune" ,dune))) (home-page "https://github.com/ocaml-ppx/ocaml-migrate-parsetree") (synopsis "OCaml parsetree convertor") (description "This library converts between parsetrees of different OCaml -- cgit v1.2.3 From 59fa09e1cd812613ebf01e901f6fdedbc65619ab Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Mon, 19 Nov 2018 23:28:14 +0100 Subject: gnu: ocaml-ppx-tools-versioned: Use dune-build-system. * gnu/packages/ocaml.scm (ocaml-ppx-tools-versioned): Use dune-build-system. Remove duplicate definition. --- gnu/packages/ocaml.scm | 55 ++------------------------------------------------ 1 file changed, 2 insertions(+), 53 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index ed087b7298..23ca26652f 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -1592,60 +1592,9 @@ functions to the next and/or previous version.") (sha256 (base32 "1x2xfjpkzbcz4rza1d7gh3ipliw6jqfcklbsln82v3561qgkqgmh")))) - (build-system ocaml-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (delete 'configure) - (replace 'build - (lambda _ - (invoke "dune" "build" "@install") - #t)) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (invoke "dune" "install" - "--prefix" (assoc-ref outputs "out")) - #t))))) - (native-inputs - `(("dune" ,dune))) - (propagated-inputs - `(("ocaml-migrate-parsetree" ,ocaml-migrate-parsetree))) - (home-page "https://github.com/let-def/ppx_tools_versioned") - (synopsis "Variant of ppx_tools") - (description "This package is a variant of ppx_tools based on -ocaml-migrate-parsetree") - (license license:expat))) - -(define-public ocaml-ppx-tools-versioned - (package - (name "ocaml-ppx-tools-versioned") - (version "5.2.1") - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/ocaml-ppx/" - "ppx_tools_versioned/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "1x2xfjpkzbcz4rza1d7gh3ipliw6jqfcklbsln82v3561qgkqgmh")))) - (build-system ocaml-build-system) + (build-system dune-build-system) (arguments - `(#:tests? #f - #:phases - (modify-phases %standard-phases - (delete 'configure) - (replace 'build - (lambda _ - (invoke "dune" "build" "@install") - #t)) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (invoke "dune" "install" - "--prefix" (assoc-ref outputs "out")) - #t))))) - (native-inputs - `(("dune" ,dune))) + `(#:test-target ".")) (propagated-inputs `(("ocaml-migrate-parsetree" ,ocaml-migrate-parsetree))) (home-page "https://github.com/let-def/ppx_tools_versioned") -- cgit v1.2.3 From f93246a541287aca149ceaa5dd7d4b60a5ee4496 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Mon, 19 Nov 2018 23:28:15 +0100 Subject: gnu: ocaml-bitstring: Use dune-build-system. * gnu/packages/ocaml.scm (ocaml-bitstring): Use dune-build-system. (ocaml4.02-bitstring)[build-system]: Use ocaml-build-system explicitly. --- gnu/packages/ocaml.scm | 95 ++++++++++++++++++++++---------------------------- 1 file changed, 42 insertions(+), 53 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 23ca26652f..93d9cf8a27 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -1615,31 +1615,19 @@ ocaml-migrate-parsetree") (sha256 (base32 "15jjk2pq1vx311gl49s5ag6x5y0654x35w75z07g7kr2q334hqps")))) - (build-system ocaml-build-system) + (build-system dune-build-system) (native-inputs `(("camlp4" ,camlp4) ("time" ,time) ("autoconf" ,autoconf) ("automake" ,automake) - ("bisect" ,ocaml-bisect) - ("dune" ,dune))) + ("bisect" ,ocaml-bisect))) (propagated-inputs `(("camlp4" ,camlp4) ("ocaml-ppx-tools-versioned" ,ocaml-ppx-tools-versioned))) (arguments `(#:tests? #f; Tests fail to build - #:phases - (modify-phases %standard-phases - (delete 'configure) - (replace 'build - (lambda _ - (invoke "jbuilder" "build" "@install") - #t)) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (invoke "dune" "install" - "--prefix" (assoc-ref outputs "out")) - #t))))) + #:jbuild? #t)) (properties `((ocaml4.02-variant . ,(delay ocaml4.02-bitstring)))) (home-page "https://github.com/xguerin/bitstring") @@ -1665,44 +1653,45 @@ powerful.") (base32 "0vy8ibrxccii1jbsk5q6yh1kxjigqvi7lhhcmizvd5gfhf7mfyc8")) (patches (search-patches "ocaml-bitstring-fix-configure.patch")))) - (arguments - `(#:ocaml ,ocaml-4.02 - #:findlib ,ocaml4.02-findlib - #:configure-flags - (list "CAMLP4OF=camlp4of" "--enable-coverage") - #:make-flags - (list (string-append "BISECTLIB=" - (assoc-ref %build-inputs "bisect") - "/lib/ocaml/site-lib") - (string-append "OCAMLCFLAGS=-g -I " - (assoc-ref %build-inputs "camlp4") - "/lib/ocaml/site-lib/camlp4 -I " - "$(BISECTLIB)/bisect") - (string-append "OCAMLOPTFLAGS=-g -I " - (assoc-ref %build-inputs "camlp4") - "/lib/ocaml/site-lib/camlp4 -I " - "$(BISECTLIB)/bisect")) - #:phases - (modify-phases %standard-phases - (add-after 'install 'link-lib - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (stubs (string-append out - "/lib/ocaml/site-lib/stubslibs")) - (lib (string-append out - "/lib/ocaml/site-lib/bitstring"))) - (mkdir-p stubs) - (symlink (string-append lib "/dllbitstring.so") - (string-append stubs "/dllbitstring.so"))) - #t)) - (add-before 'configure 'fix-configure - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "Makefile.in" - (("@abs_top_builddir@") - (string-append "@abs_top_builddir@:" (getenv "LIBRARY_PATH")))) - (substitute* "configure" - (("-/bin/sh") (string-append "-" (assoc-ref inputs "bash") - "/bin/sh")))))))) + (build-system ocaml-build-system) + (arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib + #:configure-flags + (list "CAMLP4OF=camlp4of" "--enable-coverage") + #:make-flags + (list (string-append "BISECTLIB=" + (assoc-ref %build-inputs "bisect") + "/lib/ocaml/site-lib") + (string-append "OCAMLCFLAGS=-g -I " + (assoc-ref %build-inputs "camlp4") + "/lib/ocaml/site-lib/camlp4 -I " + "$(BISECTLIB)/bisect") + (string-append "OCAMLOPTFLAGS=-g -I " + (assoc-ref %build-inputs "camlp4") + "/lib/ocaml/site-lib/camlp4 -I " + "$(BISECTLIB)/bisect")) + #:phases + (modify-phases %standard-phases + (add-after 'install 'link-lib + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (stubs (string-append out + "/lib/ocaml/site-lib/stubslibs")) + (lib (string-append out + "/lib/ocaml/site-lib/bitstring"))) + (mkdir-p stubs) + (symlink (string-append lib "/dllbitstring.so") + (string-append stubs "/dllbitstring.so"))) + #t)) + (add-before 'configure 'fix-configure + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "Makefile.in" + (("@abs_top_builddir@") + (string-append "@abs_top_builddir@:" (getenv "LIBRARY_PATH")))) + (substitute* "configure" + (("-/bin/sh") (string-append "-" (assoc-ref inputs "bash") + "/bin/sh")))))))) (native-inputs `(("camlp4" ,camlp4-4.02) ("time" ,time) -- cgit v1.2.3 From f880b03bcab3bbc137e37fef01da9c65e2dfd078 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Mon, 19 Nov 2018 23:28:16 +0100 Subject: gnu: ocaml-lwt: Use dune-build-system. * gnu/packages/ocaml.scm (ocaml-lwt): Use dune-build-system. --- gnu/packages/ocaml.scm | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 93d9cf8a27..d8e50d57d7 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -2161,26 +2161,18 @@ through Transport Layer Security (@dfn{TLS}) encrypted connections.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 "0mhh019bjkg5xfvpy1pxs4xdxb759fyydmgb6l4j0qww1qgr8klp")))) - (build-system ocaml-build-system) + (build-system dune-build-system) (arguments `(#:tests? #f; require lwt_ppx + #:jbuild? #t #:phases (modify-phases %standard-phases - (replace 'configure + (add-before 'build 'configure (lambda _ (invoke "ocaml" "src/util/configure.ml" "-use-libev" "true") - #t)) - (replace 'build - (lambda _ - (invoke "jbuilder" "build" "@install") - #t)) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (invoke "jbuilder" "install" "--prefix" (assoc-ref outputs "out")) #t))))) (native-inputs - `(("dune" ,dune) - ("ocaml-cppo" ,ocaml-cppo) + `(("ocaml-cppo" ,ocaml-cppo) ("ocaml-migrate-parsetree" ,ocaml-migrate-parsetree) ("pkg-config" ,pkg-config) ("ppx-tools-versioned" ,ocaml-ppx-tools-versioned))) -- cgit v1.2.3 From 5d0712638f3131ec34a1632eee3a9a9fed610cc5 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Mon, 19 Nov 2018 23:28:17 +0100 Subject: gnu: ocaml-lwt-log: Use dune-build-system. * gnu/packages/ocaml.scm (ocaml-lwt-log): Use dune-build-system. --- gnu/packages/ocaml.scm | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index d8e50d57d7..5d941a1123 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -2206,22 +2206,10 @@ locks or other synchronization primitives.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 "1lr62j2266pbsi54xmzsfvl2z7fi7smhak7fp1ybl8hssxwi6in2")))) - (build-system ocaml-build-system) + (build-system dune-build-system) (arguments `(#:tests? #f; require lwt_ppx - #:phases - (modify-phases %standard-phases - (delete 'configure) - (replace 'build - (lambda _ - (invoke "jbuilder" "build" "@install") - #t)) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (invoke "jbuilder" "install" "--prefix" (assoc-ref outputs "out")) - #t))))) - (native-inputs - `(("dune" ,dune))) + #:jbuild? #t)) (propagated-inputs `(("lwt" ,ocaml-lwt))) (home-page "https://github.com/aantron/lwt_log") -- cgit v1.2.3 From 48b27902ded3aa89e18b8e46bb0a48f91ea4ae23 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Mon, 19 Nov 2018 23:28:18 +0100 Subject: gnu: ocaml-cppo: Use dune-build-system. * gnu/packages/ocaml.scm (ocaml-cppo): Use dune-build-system. --- gnu/packages/ocaml.scm | 20 ++++---------------- 1 file changed, 4 insertions(+), 16 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 5d941a1123..fe5c6b55c8 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -3023,24 +3023,12 @@ provide a tool that can be used to: (sha256 (base32 "1dkm3d5h6h56y937gcdk2wixlpzl59vv5pmiafglr89p20kf7gqf")) (file-name (string-append name "-" version ".tar.gz")))) - (build-system ocaml-build-system) + (build-system dune-build-system) (arguments - `(#:phases - (modify-phases %standard-phases - (delete 'configure) - (replace 'build - (lambda _ - (invoke "dune" "build" "@install" "--profile" "release") - #t)) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (invoke "dune" "install" - "--prefix" (assoc-ref outputs "out")) - #t))) - #:tests? #f)) + `(#:tests? #f + #:build-flags (list "--profile" "release"))) (native-inputs - `(("dune" ,dune) - ("ocamlbuild" ,ocamlbuild))) + `(("ocamlbuild" ,ocamlbuild))) (home-page "https://github.com/mjambon/cppo") (synopsis "Equivalent of the C preprocessor for OCaml programs") (description "Cppo is an equivalent of the C preprocessor for OCaml -- cgit v1.2.3 From d6fa189eefabdfdd4cca955b98b7b90f0cc07c75 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Mon, 19 Nov 2018 23:28:19 +0100 Subject: gnu: ocaml-re: Use dune-build-system. * gnu/packages/ocaml.scm (ocaml-re): Use dune-build-system. --- gnu/packages/ocaml.scm | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index fe5c6b55c8..a776266dff 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -3663,26 +3663,14 @@ standard iterator type starting from 4.07.") (sha256 (base32 "1pdb0mr6z5ax6szblr3f5lbdnqq9grm97cmsfjmdma60yrx2rqhd")))) - (build-system ocaml-build-system) + (build-system dune-build-system) (arguments `(#:tests? #f - #:phases - (modify-phases %standard-phases - (delete 'configure) - (replace 'build - (lambda _ - (invoke "dune" "build" "@install" "--profile" "release") - #t)) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (invoke "dune" "install" - "--prefix" (assoc-ref outputs "out")) - #t))))) + #:build-flags (list "--profile" "release"))) (propagated-inputs `(("ocaml-seq" ,ocaml-seq))) (native-inputs - `(("dune" ,dune) - ("ounit" ,ocaml-ounit))) + `(("ounit" ,ocaml-ounit))) (home-page "https://github.com/ocaml/ocaml-re/") (synopsis "Regular expression library for OCaml") (description "Pure OCaml regular expressions with: -- cgit v1.2.3 From 426e629e0c5829b0ac8987660c38eeb121f55675 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Mon, 19 Nov 2018 23:28:20 +0100 Subject: gnu: ocaml-camomile: Use dune-build-system. * gnu/packages/ocaml.scm (ocaml-camomile): Use dune-build-system. --- gnu/packages/ocaml.scm | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index a776266dff..927c1ed8ff 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -4403,23 +4403,11 @@ the plugins facilitate extensibility, and the frontends serve as entry points.") (sha256 (base32 "01ssjrqz41jvrqh27jxnh9cx7ywi9b5sgsykd00i7z9nrcwhlfy2")))) - (build-system ocaml-build-system) + (build-system dune-build-system) (native-inputs - `(("camlp4" ,camlp4) - ("dune" ,dune))) + `(("camlp4" ,camlp4))) (arguments - `(#:phases - (modify-phases %standard-phases - (delete 'configure) - (replace 'build - (lambda _ - (invoke "dune" "build" "@install" "--profile" "release") - #t)) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (invoke "dune" "install" - "--prefix" (assoc-ref outputs "out")) - #t))) + `(#:build-flags (list "--profile" "realease") #:tests? #f)) (synopsis "Comprehensive Unicode library") (description "Camomile is a Unicode library for OCaml. Camomile provides -- cgit v1.2.3 From 34d5314e9c826b1f602f9aaa8d707ca594736aaf Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Mon, 19 Nov 2018 23:28:21 +0100 Subject: gnu: ocaml-lambda-term: Use dune-build-system. * gnu/packages/ocaml.scm (ocaml-lambda-term): Use dune-build-system. --- gnu/packages/ocaml.scm | 17 ++--------------- 1 file changed, 2 insertions(+), 15 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 927c1ed8ff..3b1ddcb5b6 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -4508,23 +4508,10 @@ connect an engine to your inputs and rendering functions to get an editor.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 "1hy5ryagqclgdm9lzh1qil5mrynlypv7mn6qm858hdcnmz9zzn0l")))) - (build-system ocaml-build-system) + (build-system dune-build-system) (arguments - `(#:phases - (modify-phases %standard-phases - (delete 'configure) - (replace 'build - (lambda _ - (invoke "dune" "build" "@install" "--profile" "release") - #t)) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (invoke "dune" "install" - "--prefix" (assoc-ref outputs "out")) - #t))) + `(#:build-flags (list "--profile" "release") #:tests? #f)) - (native-inputs - `(("dune" ,dune))) (propagated-inputs `(("lwt" ,ocaml-lwt) ("lwt-log" ,ocaml-lwt-log) -- cgit v1.2.3 From c7d67b894c35f9d93577cf65cb29487587a02eff Mon Sep 17 00:00:00 2001 From: Alex Kost Date: Tue, 18 Dec 2018 23:20:29 +0300 Subject: gnu: emacs-bui: Update to 1.2.1. * gnu/packages/emacs.scm (emacs-bui): Update to 1.2.1. --- gnu/packages/emacs.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index e9ba0f9174..f148b5a3d2 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -1721,7 +1721,7 @@ and stored in memory.") (define-public emacs-bui (package (name "emacs-bui") - (version "1.2.0") + (version "1.2.1") (source (origin (method git-fetch) (uri (git-reference @@ -1730,7 +1730,7 @@ and stored in memory.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "0ixia5s41f2nbal3wsixacbhbc0mk9yb75ir1amqakip30sq4apv")))) + "0sszdl4kvqbihdh8d7mybpp0d8yw2p3gyiipjcxz9xhvvmw3ww4x")))) (build-system emacs-build-system) (propagated-inputs `(("dash" ,emacs-dash))) -- cgit v1.2.3 From bc7743b99e72dc0ce9e54f2707cf8aaf4e691fdf Mon Sep 17 00:00:00 2001 From: Alex Kost Date: Tue, 18 Dec 2018 23:21:45 +0300 Subject: gnu: emacs-build-farm: Update to 0.2.2. * gnu/packages/emacs.scm (emacs-build-farm): Update to 0.2.2. --- gnu/packages/emacs.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index f148b5a3d2..52f4018c27 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -1820,7 +1820,7 @@ management tasks from Emacs. To begin with, run @code{M-x guix-about} or (define-public emacs-build-farm (package (name "emacs-build-farm") - (version "0.2.1") + (version "0.2.2") (source (origin (method git-fetch) (uri (git-reference @@ -1829,7 +1829,7 @@ management tasks from Emacs. To begin with, run @code{M-x guix-about} or (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "1a4ky0hca26p7f3i2c2s5517ygkyaaz52vs0vxy6f5q95rhlgdhd")))) + "0i0bwbav5861j2y15j9nd5m9rdqg9q97zgcbld8pivr9nyxy63lz")))) (build-system emacs-build-system) (propagated-inputs `(("bui" ,emacs-bui) -- cgit v1.2.3 From 439a4c7511e39bc93419f9fcc95d70c7f60125ea Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 18 Dec 2018 22:31:32 +0100 Subject: gnu: guix: Update to 5de5f81. * gnu/packages/package-management.scm (guix): Update to 5de5f81. --- gnu/packages/package-management.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 89c9f91dbf..47d6db97f1 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -102,8 +102,8 @@ ;; Note: the 'update-guix-package.scm' script expects this definition to ;; start precisely like this. (let ((version "0.16.0") - (commit "60b04024f8823192b74c1ed5b14f318049865ac7") - (revision 4)) + (commit "5de5f8184530fd7e0e88514ae35cb2e9305910c1") + (revision 5)) (package (name "guix") @@ -119,7 +119,7 @@ (commit commit))) (sha256 (base32 - "0s80w8wx5qi88bbils699wrlqr5czfvp6c64m801g5dlgkj71rpk")) + "1hxa1irb8jfjas2yajxilbhnn7rbg38zkbcyr71mwpxgcizg0bdj")) (file-name (string-append "guix-" version "-checkout")))) (build-system gnu-build-system) (arguments -- cgit v1.2.3 From a934e9fc1c798258d344b49631feb23e195e48fa Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 19 Dec 2018 00:12:14 +0100 Subject: vm: Re-enable KVM on i386. The workaround is apparently no longer needed with Linux-libre 4.19.2 in the host. * gnu/build/vm.scm (load-in-linux-vm): Remove special case for "qemu-system-i386", thereby re-enabling KVM. --- gnu/build/vm.scm | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) (limited to 'gnu') diff --git a/gnu/build/vm.scm b/gnu/build/vm.scm index 83ad489cc7..0aef73d26d 100644 --- a/gnu/build/vm.scm +++ b/gnu/build/vm.scm @@ -105,13 +105,7 @@ the #:references-graphs parameter of 'derivation'." ;; hardware virtualization to still use these commands. KVM support is ;; still buggy on some ARM32 boards. Do not use it even if available. ,@(if (and (file-exists? "/dev/kvm") - (not target-arm32?) - - ;; XXX: 32-bit 'qemu-system-i386 -enable-kvm' segfaults on - ;; x86_64 hosts running Linux-libre 4.17: - ;; and - ;; . - (not (string-suffix? "-i386" qemu))) + (not target-arm32?)) '("-enable-kvm") '()) -- cgit v1.2.3 From 38abef124bc18d3834eb12352a974b6143f62e97 Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Tue, 18 Dec 2018 10:36:25 +0800 Subject: gnu: sqlite: Replace with 3.26.0 [security fixes]. Fixes . Reported by Marius Bakke . * gnu/packages/databases.scm (sqlite-3.26.0): New public variable. (sqlite)[replacement]: Use it. (sqlite-with-fts5): Use 'package/inherit'. (sqlite-with-column-metadata): Likewise. Modified-by: Mark H Weaver --- gnu/packages/databases.scm | 27 ++++++++++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 0fa6d451ed..07c6006c3b 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -24,7 +24,7 @@ ;;; Copyright © 2017 Adriano Peluso ;;; Copyright © 2017 Arun Isaac ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice -;;; Copyright © 2017 Alex Vong +;;; Copyright © 2017, 2018 Alex Vong ;;; Copyright © 2017, 2018 Ben Woodcroft ;;; Copyright © 2017 Rutger Helling ;;; Copyright © 2017, 2018 Pierre Langlois @@ -1183,6 +1183,7 @@ changes.") (define-public sqlite (package (name "sqlite") + (replacement sqlite-3.26.0) (version "3.24.0") (source (origin (method url-fetch) @@ -1219,9 +1220,29 @@ widely deployed SQL database engine in the world. The source code for SQLite is in the public domain.") (license license:public-domain))) +(define-public sqlite-3.26.0 + (package (inherit sqlite) + (version "3.26.0") + (source (origin + (method url-fetch) + (uri (let ((numeric-version + (match (string-split version #\.) + ((first-digit other-digits ...) + (string-append first-digit + (string-pad-right + (string-concatenate + (map (cut string-pad <> 2 #\0) + other-digits)) + 6 #\0)))))) + (string-append "https://sqlite.org/2018/sqlite-autoconf-" + numeric-version ".tar.gz"))) + (sha256 + (base32 + "0pdzszb4sp73hl36siiv3p300jvfvbcdxi2rrmkwgs6inwznmajx")))))) + ;; This is used by Tracker. (define-public sqlite-with-fts5 - (package (inherit sqlite) + (package/inherit sqlite (name "sqlite-with-fts5") (arguments (substitute-keyword-arguments (package-arguments sqlite) @@ -1230,7 +1251,7 @@ is in the public domain.") ;; This is used by Qt. (define-public sqlite-with-column-metadata - (package (inherit sqlite) + (package/inherit sqlite (name "sqlite-with-column-metadata") (arguments (substitute-keyword-arguments (package-arguments sqlite) -- cgit v1.2.3 From dba83d7d14f8649932ed9e9900fbc8421ed39858 Mon Sep 17 00:00:00 2001 From: Pierre Langlois Date: Tue, 18 Dec 2018 21:17:16 +0000 Subject: gnu: stumpwm: Fix gnew command. The new release of StumpWM broken the interactive 'gnew' command. It was fixed upstream [0] and will be part of the next release. 0: https://github.com/stumpwm/stumpwm/pull/538 * gnu/packages/patches/stumpwm-fix-broken-read-one-line.patch: New file. * gnu/packages/lisp.scm (stumpwm)[source]: Use it. * gnu/local.mk (dist_patch_DATA): Register it. --- gnu/local.mk | 1 + gnu/packages/lisp.scm | 4 +- .../patches/stumpwm-fix-broken-read-one-line.patch | 45 ++++++++++++++++++++++ 3 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/stumpwm-fix-broken-read-one-line.patch (limited to 'gnu') diff --git a/gnu/local.mk b/gnu/local.mk index 0d60e9b75e..8e1ce88bcf 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1174,6 +1174,7 @@ dist_patch_DATA = \ %D%/packages/patches/swish-e-search.patch \ %D%/packages/patches/swish-e-format-security.patch \ %D%/packages/patches/synfigstudio-fix-ui-with-gtk3.patch \ + %D%/packages/patches/stumpwm-fix-broken-read-one-line.patch \ %D%/packages/patches/t1lib-CVE-2010-2642.patch \ %D%/packages/patches/t1lib-CVE-2011-0764.patch \ %D%/packages/patches/t1lib-CVE-2011-1552+.patch \ diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index d8da2951df..e4669e34f4 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -976,7 +976,9 @@ from other CLXes around the net.") version ".tar.gz")) (sha256 (base32 "177gxfk4c127i9crghx6fmkipznhgylvzgnjb2pna38g21gg6s39")) - (file-name (string-append "stumpwm-" version ".tar.gz")))) + (file-name (string-append "stumpwm-" version ".tar.gz")) + (patches + (search-patches "stumpwm-fix-broken-read-one-line.patch")))) (build-system asdf-build-system/sbcl) (native-inputs `(("fiasco" ,sbcl-fiasco))) (inputs `(("cl-ppcre" ,sbcl-cl-ppcre) diff --git a/gnu/packages/patches/stumpwm-fix-broken-read-one-line.patch b/gnu/packages/patches/stumpwm-fix-broken-read-one-line.patch new file mode 100644 index 0000000000..f8dac61307 --- /dev/null +++ b/gnu/packages/patches/stumpwm-fix-broken-read-one-line.patch @@ -0,0 +1,45 @@ +From a13db62a4da06426cf2eb2376d1a3723b5ee52d5 Mon Sep 17 00:00:00 2001 +From: Vasily Postnicov +Date: Fri, 14 Dec 2018 20:01:53 +0300 +Subject: [PATCH] READ-ONE-LINE: Turn COMPLETIONS into a keyword argument + +This keeps READ-ONE-line backwards compatible to changes prior +dae0422811771d179077b9336618f2b19be85b7b. Currently both +ARGUMENT-POP-OR-READ and ARGUMENT-POP-REST-OR-READ are still being +called with the previous lambda list. Update the calls to the +READ-ONE-LINE that used the 'new' lambda list, COMPLETING-READ and +YES-OR-NO-P. + +Closes #538 +--- + input.lisp | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +diff --git a/input.lisp b/input.lisp +index b698a368..7904b35f 100644 +--- a/input.lisp ++++ b/input.lisp +@@ -307,10 +307,13 @@ passed the substring to complete on and is expected to return a list + of matches. If require-match argument is non-nil then the input must + match with an element of the completions." + (check-type completions (or list function symbol)) +- (let ((line (read-one-line screen prompt completions :initial-input initial-input :require-match require-match))) ++ (let ((line (read-one-line screen prompt ++ :completions completions ++ :initial-input initial-input ++ :require-match require-match))) + (when line (string-trim " " line)))) + +-(defun read-one-line (screen prompt completions &key (initial-input "") require-match password) ++(defun read-one-line (screen prompt &key completions (initial-input "") require-match password) + "Read a line of input through stumpwm and return it. Returns nil if the user aborted." + (let ((*input-last-command* nil) + (*input-completions* completions) +@@ -842,6 +845,7 @@ user presses 'y'" + user presses 'yes'" + (loop for line = (read-one-line (current-screen) + (format nil "~a(yes or no) " message) ++ :completions + '("yes" "no")) + until (find line '("yes" "no") :test 'string-equal) + do (message "Please answer yes or no") -- cgit v1.2.3 From af8c90e86230e1bae93b5ba9b6f77a76f302e203 Mon Sep 17 00:00:00 2001 From: Christopher Lemmer Webber Date: Wed, 19 Dec 2018 09:47:52 -0500 Subject: stumpwm: Add comment saying patch can be removed in next release. * gnu/packages/lisp.scm (stumpwm): Add comment saying patch can be removed in next release. --- gnu/packages/lisp.scm | 2 ++ 1 file changed, 2 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index e4669e34f4..0419a558d1 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -978,6 +978,8 @@ from other CLXes around the net.") (base32 "177gxfk4c127i9crghx6fmkipznhgylvzgnjb2pna38g21gg6s39")) (file-name (string-append "stumpwm-" version ".tar.gz")) (patches + ;; This patch is included in the post-18.11 git master tree + ;; and can be removed when we move to the next release. (search-patches "stumpwm-fix-broken-read-one-line.patch")))) (build-system asdf-build-system/sbcl) (native-inputs `(("fiasco" ,sbcl-fiasco))) -- cgit v1.2.3 From 9a50cedc6bd0332339fda9a20327d5ac5383bc15 Mon Sep 17 00:00:00 2001 From: Hartmut Goebel Date: Wed, 19 Dec 2018 18:04:08 +0100 Subject: gnu: plasma-framework: Fix build. * gnu/packages/plasma-framework.scm (plasma-framework)[inputs]: Add qtquickcontrols2. --- gnu/packages/kde-frameworks.scm | 1 + 1 file changed, 1 insertion(+) (limited to 'gnu') diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm index 5295a356a2..2b72afc008 100644 --- a/gnu/packages/kde-frameworks.scm +++ b/gnu/packages/kde-frameworks.scm @@ -3274,6 +3274,7 @@ setUrl, setUserAgent and call.") ("phonon" ,phonon) ("qtbase" ,qtbase) ("qtdeclarative" ,qtdeclarative) + ("qtquickcontrols2" ,qtquickcontrols2) ("qtsvg" ,qtsvg) ("qtx11extras" ,qtx11extras) ("solid" ,solid))) -- cgit v1.2.3 From 0485717ee94e7f161d072f017edce5d35df49c81 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Wed, 19 Dec 2018 20:47:15 +0300 Subject: services: zabbix-front-end: Improve hint and error messages. * gnu/services/monitoring.scm (zabbix-front-end-config): Improve hint and error messages. --- gnu/services/monitoring.scm | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'gnu') diff --git a/gnu/services/monitoring.scm b/gnu/services/monitoring.scm index 18413096e4..4c7a717a9d 100644 --- a/gnu/services/monitoring.scm +++ b/gnu/services/monitoring.scm @@ -29,9 +29,11 @@ #:use-module (guix gexp) #:use-module (guix packages) #:use-module (guix records) + #:use-module ((guix ui) #:select (display-hint)) #:use-module (ice-9 match) #:use-module (ice-9 rdelim) #:use-module (srfi srfi-26) + #:use-module (srfi srfi-35) #:export (darkstat-configuration prometheus-node-exporter-configuration darkstat-service-type @@ -525,16 +527,16 @@ $DB['DATABASE'] = '" db-name "'; $DB['USER'] = '" db-user "'; $DB['PASSWORD'] = '" (if (string-null? db-password) (if (string-null? db-secret-file) - (display "Provide a `db-secret-file' \ -or `db-password' field. -" - (current-error-port)) + (raise (condition + (&message + (message "\ +You must provide either 'db-secret-file' or 'db-password'.")))) (string-trim-both (with-input-from-file db-secret-file read-string))) (begin - (display " -Hint: Consider use `db-secret-file' instead of `db-password' and unset + (display-hint " +Consider use `db-secret-file' instead of `db-password' and unset `db-password' for security in `zabbix-front-end-configuration'. ") db-password)) "'; -- cgit v1.2.3 From 4b3d6b899fe93d78ec8d4063e526d17b28ab3496 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Wed, 19 Dec 2018 23:48:13 +0100 Subject: gnu: python-duniterpy: Update to 0.51.0. * gnu/packages/finance.scm (python-duniterpy): Update to 0.51.0. --- gnu/packages/finance.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index 26cc1895a1..b644f2fa95 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -847,7 +847,7 @@ Luhn and family of ISO/IEC 7064 check digit algorithms. ") (define-public python-duniterpy (package (name "python-duniterpy") - (version "0.50.0") + (version "0.51.0") (source (origin (method git-fetch) @@ -858,7 +858,7 @@ Luhn and family of ISO/IEC 7064 check digit algorithms. ") (file-name (git-file-name name version)) (sha256 (base32 - "0f24ihglmzphy30pgc49w0rxmsjc76mgcggg078cfsz7xrrk13gf")))) + "074mh2kh3s00ib0h99050ss3j4c51v57py6dzm7crida6l0iydbv")))) (build-system python-build-system) (arguments ;; Tests fail with "AttributeError: module 'attr' has no attribute 's'". -- cgit v1.2.3 From 42a57df874aa37ff6a54d952abc996a6138b3b06 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Wed, 19 Dec 2018 23:49:15 +0100 Subject: gnu: python-duniterpy: Build documentation. * gnu/packages/finance.scm (python-duniterpy)[arguments]: Build and install documentation. --- gnu/packages/finance.scm | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index b644f2fa95..a87d24fccf 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -862,7 +862,22 @@ Luhn and family of ISO/IEC 7064 check digit algorithms. ") (build-system python-build-system) (arguments ;; Tests fail with "AttributeError: module 'attr' has no attribute 's'". - `(#:tests? #f)) + `(#:tests? #f + #:phases + (modify-phases %standard-phases + (add-after 'build 'build-documentation + (lambda _ + (invoke "make" "docs"))) + (add-after 'build-documentation 'install-documentation + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (doc (string-append out "/share/doc/" ,name))) + (mkdir-p doc) + (copy-recursively "docs/_build/html" doc)) + #t))))) + (native-inputs + `(("python-sphinx" ,python-sphinx) + ("python-sphinx-rtd-theme" ,python-sphinx-rtd-theme))) (propagated-inputs `(("python-aiohttp" ,python-aiohttp) ("python-attr" ,python-attr) -- cgit v1.2.3 From 207a79b2fee516abb138b8e144f17927fc41070b Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Wed, 19 Dec 2018 23:49:46 +0100 Subject: gnu: python-duniterpy: Improve description. * gnu/packages/finance.scm (python-duniterpy)[description]: Expound features to match list in homepage. --- gnu/packages/finance.scm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index a87d24fccf..bd18df91be 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -889,12 +889,15 @@ Luhn and family of ISO/IEC 7064 check digit algorithms. ") (home-page "https://git.duniter.org/clients/python/duniterpy") (synopsis "Python implementation of Duniter API") (description "@code{duniterpy} is an implementation of -@uref{https://github.com/duniter/duniter/, duniter} API. Its +@uref{https://github.com/duniter/duniter/, duniter} API. Its main features are: @itemize -@item Supports Duniter's Basic Merkle API and protocol -@item Asynchronous +@item Support Duniter's Basic Merkle API and protocol +@item Asynchronous/synchronous without threads +@item Support HTTP, HTTPS and Web Socket transport for Basic Merkle API +@item Support Elasticsearch Duniter4j API @item Duniter signing key +@item Sign/verify and encrypt/decrypt messages with the Duniter credentials @end itemize") (license license:gpl3+))) -- cgit v1.2.3 From 9012d226fa46229a84e49a42c9b6d287105dfddf Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Thu, 20 Dec 2018 00:04:50 +0100 Subject: services: zabbix-front-end: Tweak error and hint messages. * gnu/services/monitoring.scm (zabbix-front-end-config): Adjust error and hint mssages. --- gnu/services/monitoring.scm | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/services/monitoring.scm b/gnu/services/monitoring.scm index 4c7a717a9d..685641f110 100644 --- a/gnu/services/monitoring.scm +++ b/gnu/services/monitoring.scm @@ -530,15 +530,14 @@ $DB['PASSWORD'] = '" (if (string-null? db-password) (raise (condition (&message (message "\ -You must provide either 'db-secret-file' or 'db-password'.")))) +you must provide either 'db-secret-file' or 'db-password'")))) (string-trim-both (with-input-from-file db-secret-file read-string))) (begin - (display-hint " -Consider use `db-secret-file' instead of `db-password' and unset -`db-password' for security in `zabbix-front-end-configuration'. -") + (display-hint "\ +Consider using @code{db-secret-file} instead of @code{db-password} and unset +@code{db-password} for security in @code{zabbix-front-end-configuration}.") db-password)) "'; // Schema name. Used for IBM DB2 and PostgreSQL. -- cgit v1.2.3