From 5021f9d34042e4929e27ffc126198ed43f32fcb7 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sat, 12 Dec 2015 22:52:48 +0200 Subject: gnu: owncloud-client: Update to 2.1.0. * gnu/packages/owncloud.scm (owncloud-client): Update to 2.1.0. --- gnu/packages/owncloud.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/owncloud.scm b/gnu/packages/owncloud.scm index 58c2a51ba8..084a0a2863 100644 --- a/gnu/packages/owncloud.scm +++ b/gnu/packages/owncloud.scm @@ -34,14 +34,14 @@ (define-module (gnu packages owncloud) (define-public owncloud-client (package (name "owncloud-client") - (version "2.0.2") + (version "2.1.0") (source (origin (method url-fetch) (uri (string-append "https://download.owncloud.com/desktop/stable/" "owncloudclient-" version ".tar.xz")) (sha256 - (base32 "0a42nqx0gn10n7ikhxwif0lqddmb6gbvr45bqbbl30an9gixq598")))) + (base32 "0gyhll4yfxcpyc5m73zar5f33qgnmpwiggw2adxdiqy55hc3ymbk")))) (build-system cmake-build-system) (arguments `(#:phases @@ -50,9 +50,9 @@ (define-public owncloud-client (lambda _ (substitute* '("src/libsync/CMakeLists.txt" "csync/src/CMakeLists.txt") - ;; We store the libs in out/lib and not /usr/lib/appname, so we + ;; We store the libs in out/lib and not /usr/lib/appname, so we ;; need the executable to point to the libraries in /lib and not - ;; in /lib/appname. + ;; in /lib/appname. (("\\/\\$\\{APPLICATION_EXECUTABLE\\}") "")) (substitute* '("src/cmd/CMakeLists.txt" "src/crashreporter/CMakeLists.txt" -- cgit v1.2.3 From f0b0a5de871a074b5879224dc1faee64cd834c43 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sat, 12 Dec 2015 23:22:03 +0200 Subject: gnu: clutter-gtk: Update to 1.6.6. * gnu/packages/gnome.scm (clutter-gtk): Update to 1.6.6. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index c17dd19802..13f45722b0 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2740,7 +2740,7 @@ (define-public clutter (define-public clutter-gtk (package (name "clutter-gtk") - (version "1.6.0") + (version "1.6.6") (source (origin (method url-fetch) @@ -2749,7 +2749,7 @@ (define-public clutter-gtk name "-" version ".tar.xz")) (sha256 (base32 - "0k93hbf5d1970hs7vjddr3nnngygc7mxqbj474r3cdm0fjsm0dc8")))) + "0a2a8ci6in82l43zak3zj3cyms23i5rq6lzk1bz013gm023ach4l")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) -- cgit v1.2.3 From b6b53a874d97dda6795576bca32e88479b87720e Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 06:58:50 +0200 Subject: gnu: libchamplain: Update to 0.12.12. * gnu/packages/gnome.scm (libchamplain): Update to 0.12.12. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 13f45722b0..4b0c9afad1 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2799,7 +2799,7 @@ (define-public clutter-gst (define-public libchamplain (package (name "libchamplain") - (version "0.12.10") + (version "0.12.12") (source (origin (method url-fetch) (uri (string-append @@ -2807,7 +2807,7 @@ (define-public libchamplain version ".tar.xz")) (sha256 (base32 - "019b8scnx7d3wdylmpk9ihzh06w25b63x9cn8nhj6kjx82rcwlxz")))) + "19jlhbgfn9c9g40b3fa2x373s6rfcwx5i9lbpl3vl7d901r7kpp7")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) (propagated-inputs -- cgit v1.2.3 From c79595178ce4ff37d3f8d5b2a5803d6d8db03c00 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 07:21:03 +0200 Subject: gnu: clutter-gst: Update to 3.0.14. * gnu/packages/gnome.scm (clutter-gst): Update to 3.0.14. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 4b0c9afad1..86539e6a96 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2768,7 +2768,7 @@ (define-public clutter-gtk (define-public clutter-gst (package (name "clutter-gst") - (version "3.0.6") + (version "3.0.14") (source (origin (method url-fetch) @@ -2777,7 +2777,7 @@ (define-public clutter-gst name "-" version ".tar.xz")) (sha256 (base32 - "0xnzfdzawl1kdx715gp31nwjp7a1kib094s7xvg7bhbwwlx4kmfn")))) + "1qidm0q28q6w8gjd0gpqnk8fzqxv39dcp0vlzzawlncp8zfagj7p")))) (build-system gnu-build-system) (native-inputs `(("glib:bin" ,glib "bin") ; for glib-mkenums -- cgit v1.2.3 From c725dc4da1d1fa1e052d769355581278b9fe4e2c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 07:37:21 +0200 Subject: gnu: grilo: Update to 0.2.14. * gnu/packages/gnome.scm (grilo): Update to 0.2.14. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 86539e6a96..abb595b982 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2894,7 +2894,7 @@ (define-public gnome-klotski (define-public grilo (package (name "grilo") - (version "0.2.12") + (version "0.2.14") (source (origin (method url-fetch) @@ -2903,7 +2903,7 @@ (define-public grilo name "-" version ".tar.xz")) (sha256 (base32 - "11bvc7rsrjjwz8hp67p3fn8zmywrpawrcbi3vgw8b0dwa0sndd2m")))) + "1k8wj8f7xfaw5hxypnmwd34li3fq8h76dacach547rvsfjhjxj3r")))) (build-system gnu-build-system) (native-inputs `(("glib:bin" ,glib "bin") ; for glib-mkenums and glib-genmarshal -- cgit v1.2.3 From 47b7d7bf98c8fec8b763c091cd8ca6cb19076095 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 08:06:42 +0200 Subject: gnu: grilo-plugins: Update to 0.2.16. * gnu/packages/gnome.scm (grilo-plugins): Update to 0.2.16. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index abb595b982..5a47afb65a 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2945,7 +2945,7 @@ (define-public grilo (define-public grilo-plugins (package (name "grilo-plugins") - (version "0.2.14") + (version "0.2.16") (source (origin (method url-fetch) @@ -2954,7 +2954,7 @@ (define-public grilo-plugins name "-" version ".tar.xz")) (sha256 (base32 - "1aykhc679pwn2qxsg19g8nh9hffpsqkgxcbqq7lcfn2hcwb83wfh")))) + "00sjmkzxc8w4qn4lp5yj65c4y83mwhp0zlvk11ghvpxnklgmgd40")))) (build-system gnu-build-system) (native-inputs `(("glib:bin" ,glib "bin") ; for glib-mkenums and glib-genmarshal -- cgit v1.2.3 From c0925c7a290729b731c4c352db3e71bdfc4d1a1c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 10:10:10 +0200 Subject: gnu: totem: Update to 3.18.1. * gnu/packages/gnome.scm (totem): Update to 3.18.1. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 5a47afb65a..70a076b361 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2997,7 +2997,7 @@ (define-public grilo-plugins (define-public totem (package (name "totem") - (version "3.16.1") + (version "3.18.1") (source (origin (method url-fetch) @@ -3006,7 +3006,7 @@ (define-public totem name "-" version ".tar.xz")) (sha256 (base32 - "1nkm2i271ivq40hryrl6px39gbbvhmlx4vmvwvw4h3z8xh3013f9")))) + "18h784c77m4h359j3xnlwqlfvnhbw7m052ahzm26r106jsp6x0fp")))) (build-system glib-or-gtk-build-system) (native-inputs `(("pkg-config" ,pkg-config) -- cgit v1.2.3 From f05c809f8fd9cf9f0f26d768b55167928744456c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 10:24:16 +0200 Subject: gnu: dconf: Update to 0.24.0. * gnu/packages/gnome.scm (dconf): Update to 0.24.0. --- gnu/packages/gnome.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 70a076b361..a2a6aa1971 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -1765,7 +1765,7 @@ (define-public vte/gtk+-2 (define-public dconf (package (name "dconf") - (version "0.22.0") + (version "0.24.0") (source (origin (method url-fetch) (uri (string-append @@ -1773,7 +1773,8 @@ (define-public dconf (version-major+minor version) "/" name "-" version ".tar.xz")) (sha256 - (base32 "13jb49504bir814v8n8vjip5sazwfwsrnniw87cpg7phqfq7q9qa")))) + (base32 + "1hpy6336f0pbkyranywm4872i5in0xn7jf40a66xdmzls77f0ws3")))) (build-system glib-or-gtk-build-system) (inputs `(("gtk+" ,gtk+) -- cgit v1.2.3 From 6d320ca693c7e4e18225bdab227fb632e88b86a6 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 10:38:34 +0200 Subject: gnu: geocode-glib: Update to 3.18.0. * gnu/packages/gnome.scm (geocode-glib): Update to 3.18.0. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index a2a6aa1971..ce5763bbfc 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2331,7 +2331,7 @@ (define-public geoclue (define-public geocode-glib (package (name "geocode-glib") - (version "3.16.0") + (version "3.18.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/geocode-glib/" @@ -2339,7 +2339,7 @@ (define-public geocode-glib name "-" version ".tar.xz")) (sha256 (base32 - "1cbfv0kds6b6k0cl7q47xpj3x1scwcd7m68zl1rf7i4hmhw4hpqj")))) + "0pa9cgndycynipc6z8wzbvn2fi89ndf2gpqzm9m6krp3d7az1dwg")))) (build-system gnu-build-system) (arguments `(;; The tests want to write to $HOME/.cache/geocode-glib, which doesn't -- cgit v1.2.3 From d45d35288ee6feba1285d3806e091cf00a2abbd9 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 10:58:35 +0200 Subject: gnu: gnome-settings-daemon: Update to 3.18.2. * gnu/packages/gnome.scm (gnome-settings-daemon): Update to 3.18.2. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index ce5763bbfc..72b1111087 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2467,7 +2467,7 @@ (define-public libgweather (define-public gnome-settings-daemon (package (name "gnome-settings-daemon") - (version "3.16.0") + (version "3.18.2") (source (origin (method url-fetch) @@ -2476,7 +2476,7 @@ (define-public gnome-settings-daemon name "-" version ".tar.xz")) (sha256 (base32 - "1w29x2izq59125ga5ncmmaklc8kw7x7rdn6swn26bs23mah1r1g3")))) + "0vzwf875csyqx04fnra6zicmzcjc3s13bxxpcizlys12iwjwfw9h")))) (build-system glib-or-gtk-build-system) (arguments `(;; Network manager not yet packaged. -- cgit v1.2.3 From 9bffc630cfcf615bff73d2a7c1e49178155c64a3 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 12:03:03 +0200 Subject: gnu: file-roller: Update to 3.16.4. * gnu/packages/gnome.scm (file-roller): Update to 3.16.4. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 72b1111087..7ff425fdc5 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3697,7 +3697,7 @@ (define-public shotwell (define-public file-roller (package (name "file-roller") - (version "3.10.0") + (version "3.16.4") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -3705,7 +3705,7 @@ (define-public file-roller name "-" version ".tar.xz")) (sha256 (base32 - "04sg4yzz4c3hzgxhbgx2dc36lq5hjrnrmal2q0amfvhl0jcvp2fq")))) + "11a1g8f2700n2mz998wf40dz1rxjgap60mfns9iv0zlw5h5rhmal")))) (build-system glib-or-gtk-build-system) (native-inputs `(("intltool" ,intltool) -- cgit v1.2.3 From ccdb0181c1967795c1d39560c3d0125620408442 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 12:12:46 +0200 Subject: gnu: yelp-xsl: Update to 3.18.1. * gnu/packages/gnome.scm (yelp-xsl): Update to 3.18.1. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 7ff425fdc5..47056e9187 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3485,7 +3485,7 @@ (define-public d-feet (define-public yelp-xsl (package (name "yelp-xsl") - (version "3.16.1") + (version "3.18.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -3493,7 +3493,7 @@ (define-public yelp-xsl name "-" version ".tar.xz")) (sha256 (base32 - "0jhpni4mmfvj3xf57rjm61nc8d0x66hz9gd1ywws5lh39g6fx59j")))) + "0qmsq7qkc06gmnkvbs84qj3jjzlihriy3z45nfbpgg51b6z0z1q0")))) (build-system gnu-build-system) (native-inputs `(("intltool" ,intltool) -- cgit v1.2.3 From 506959552ff77870b5a73069fa3577ffe1a9bcfc Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 12:16:38 +0200 Subject: gnu: yelp-tools: Update to 3.18.0. * gnu/packages/gnome.scm (yelp-tools): Update to 3.18.0. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 47056e9187..ab8accdd89 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3544,7 +3544,7 @@ (define-public yelp (define-public yelp-tools (package (name "yelp-tools") - (version "3.16.1") + (version "3.18.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -3552,7 +3552,7 @@ (define-public yelp-tools name "-" version ".tar.xz")) (sha256 (base32 - "177qzvj5w019isdp41qxqcys2kc4sq2x6dqhqn6l9ipib8a6rxml")))) + "0ck9f78c1xka8a823bd7w1k0gdn4k19zvaj7viy2d5r3h1gxdhf6")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) -- cgit v1.2.3 From af83490d7e156e8e34335e429803c670143411e7 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 12:21:15 +0200 Subject: gnu: gnome-common: Update to 3.18.0. * gnu/packages/gnome.scm (gnome-common): Update to 3.18.0. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index ab8accdd89..47c62f1d02 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -152,7 +152,7 @@ (define-public brasero (define-public gnome-common (package (name "gnome-common") - (version "3.14.0") + (version "3.18.0") (source (origin (method url-fetch) @@ -161,7 +161,7 @@ (define-public gnome-common name "-" version ".tar.xz")) (sha256 (base32 - "0b1676g4q44ah73c5gwl1kg88pc93pnq1pa9kwl43d0vg0pj802c")))) + "1kzqi8qvh5p1zncj8msazlmvcwsczjz2hqxp4x2y0mg718vrwmi2")))) (build-system gnu-build-system) (home-page "https://www.gnome.org/") (synopsis "Bootstrap GNOME modules built from Git") -- cgit v1.2.3 From e0b6e264031eef3269a591bf82148a9747245e2a Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 12:24:47 +0200 Subject: gnu: gnome-klotski: Update to 3.18.2. * gnu/packages/gnome.scm (gnome-klotski): Update to 3.18.2. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 47c62f1d02..935ceac384 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2864,7 +2864,7 @@ (define-public gom (define-public gnome-klotski (package (name "gnome-klotski") - (version "3.16.1") + (version "3.18.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -2872,7 +2872,7 @@ (define-public gnome-klotski name "-" version ".tar.xz")) (sha256 (base32 - "0a64935c7pp51jhaf29q9zlx3lamj7zrhyff7clvv0w8v1w6gpax")))) + "14l1fji0860yam41x2cy72nd9bljph385ynfm6k1lsv4qhv72az2")))) (build-system glib-or-gtk-build-system) (native-inputs `(("desktop-file-utils" ,desktop-file-utils) -- cgit v1.2.3 From 1a0b2d8241dbd9ae1773d73b5442b03acf8a2f19 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 12:34:29 +0200 Subject: gnu: gnome-keyring: Update to 3.18.3. * gnu/packages/gnome.scm (gnome-keyring): Update to 3.18.3. [inputs]: Add linux-pam. --- gnu/packages/gnome.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 935ceac384..e27d80bcd5 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -328,7 +328,7 @@ (define-public libgnome-keyring (define-public gnome-keyring (package (name "gnome-keyring") - (version "3.16.0") + (version "3.18.3") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -336,7 +336,7 @@ (define-public gnome-keyring name "-" version ".tar.xz")) (sha256 (base32 - "1xg1xha3x3hzlmvdq2zm90hc61pj7pnf9yxxvgq4ynl5af6bp8qm")))) + "167dq1yvm080g5s38hqjl0xx5cgpkcl1xqy9p5sxmgc92zb0srrz")))) (build-system gnu-build-system) (arguments `(#:tests? #f ;48 of 603 tests fail because /var/lib/dbus/machine-id does @@ -368,6 +368,7 @@ (define-public gnome-keyring "/xml/dtd/docbook/catalog.xml"))))))) (inputs `(("libgcrypt" ,libgcrypt) + ("linux-pam" ,linux-pam) ("dbus" ,dbus) ("gcr" ,gcr))) (native-inputs -- cgit v1.2.3 From 2e221beed51c1c24d4522a1bc83d71a1c9edc0ae Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 12:40:04 +0200 Subject: gnu: gnome-terminal: Update to 3.18.2. * gnu/packages/gnome.scm (gnome-terminal): Update to 3.18.2. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index e27d80bcd5..682ba267a7 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2173,7 +2173,7 @@ (define-public gnome-mines (define-public gnome-terminal (package (name "gnome-terminal") - (version "3.16.0") + (version "3.18.2") (source (origin (method url-fetch) @@ -2182,7 +2182,7 @@ (define-public gnome-terminal name "-" version ".tar.xz")) (sha256 (base32 - "1s3zwqxs4crlqmh6l7s7n87pbmh2nnjdvhxlkalh58pbl0bk0qrd")))) + "1ylyv0mla2ypms7iyxndbdjvha0q9jzglb4mhfmqn9cm2gxc0day")))) (build-system glib-or-gtk-build-system) (arguments '(#:configure-flags -- cgit v1.2.3 From 017d779c2256804c5ea6c96ce123cecd2c6af8e9 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 13:00:08 +0200 Subject: gnu: seahorse: Update to 3.18.0. * gnu/packages/gnome.scm (seahorse): Update to 3.18.0. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 682ba267a7..f943dc0adb 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -1616,7 +1616,7 @@ (define-public gnome-themes-standard (define-public seahorse (package (name "seahorse") - (version "3.16.0") + (version "3.18.0") (source (origin (method url-fetch) @@ -1625,7 +1625,7 @@ (define-public seahorse version ".tar.xz")) (sha256 (base32 - "0cg1grgpwbfkiny5148n17rzpc8kswyr5yff0kpm8l3lp01my2kp")))) + "0rxnq47xcagmpqb63g49ay3lfiyjjnmmiay9yifx5jn406d8h32k")))) (build-system glib-or-gtk-build-system) (inputs `(("gtk+" ,gtk+) -- cgit v1.2.3 From 34b979b903cb15b54a5b3f1fb6f15b8d327031ff Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 13:02:14 +0200 Subject: gnu: seahorse: Add support for keyservers, gnupg2 and ldap. * gnu/packages/gnome.scm (seahorse): Do it. [inputs]: Remove gnupg-1, add gnupg, openldap, libsoup. --- gnu/packages/gnome.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index f943dc0adb..51f2341d62 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -58,6 +58,7 @@ (define-module (gnu packages gnome) #:use-module (gnu packages gtk) #:use-module (gnu packages gperf) #:use-module (gnu packages guile) + #:use-module (gnu packages openldap) #:use-module (gnu packages pdf) #:use-module (gnu packages polkit) #:use-module (gnu packages popt) @@ -1630,10 +1631,12 @@ (define-public seahorse (inputs `(("gtk+" ,gtk+) ("gcr" ,gcr) - ("gnupg" ,gnupg-1) + ("gnupg" ,gnupg) ("gpgme" ,gpgme) + ("openldap" ,openldap) ("openssh" ,openssh) - ("libsecret" ,libsecret))) + ("libsecret" ,libsecret) + ("libsoup" ,libsoup))) (native-inputs `(("intltool" ,intltool) ("glib:bin" ,glib "bin") -- cgit v1.2.3 From daee4191e1101257f743969fda60df678dd6c33d Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 13:18:57 +0200 Subject: gnu: gnome-mines: Update to 3.18.2. * gnu/packages/gnome.scm (gnome-mines): Update to 3.18.2. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 51f2341d62..a3d53502a1 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2130,7 +2130,7 @@ (define-public libsecret (define-public gnome-mines (package (name "gnome-mines") - (version "3.16.0") + (version "3.18.2") (source (origin (method url-fetch) @@ -2139,7 +2139,7 @@ (define-public gnome-mines name "-" version ".tar.xz")) (sha256 (base32 - "0wfvqyryc1093l4dr75zv9h0jyn28z6wirdq03lm5w24qf9lvjjx")))) + "0izkcf81rji4dj9k0k93ij4lp5iza2bh6jwlcdhbjfv2xdw0f7ky")))) (build-system glib-or-gtk-build-system) (arguments '(#:phases -- cgit v1.2.3 From bcff53e03f564d2a6b0dfb9fe1434458fa76d351 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 13:35:11 +0200 Subject: gnu: aisleriot: Update to 3.18.2. * gnu/packages/gnome.scm (aisleriot): Update to 3.18.2. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index a3d53502a1..ea7e13be08 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2562,7 +2562,7 @@ (define-public totem-pl-parser (define-public aisleriot (package (name "aisleriot") - (version "3.16.1") + (version "3.18.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -2570,7 +2570,7 @@ (define-public aisleriot name "-" version ".tar.xz")) (sha256 (base32 - "19k483x9dkq8vjbq8f333pk9qil64clpsfg20q8xk9bgmk38aj8h")))) + "1qrgcj30hl0fgssspkwrad10lqy1bbsp7lfwxmxlwzp33jhqpb0b")))) (build-system glib-or-gtk-build-system) (arguments '(#:configure-flags -- cgit v1.2.3 From 3acae17019fdb1d4c7327acbcecebfc94c0f5d6a Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 13:40:30 +0200 Subject: gnu: devhelp: Update to 3.18.1. * gnu/packages/gnome.scm (devhelp): Update to 3.18.1. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index ea7e13be08..6e33fa9950 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2598,7 +2598,7 @@ (define-public aisleriot (define-public devhelp (package (name "devhelp") - (version "3.16.1") + (version "3.18.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -2606,7 +2606,7 @@ (define-public devhelp name "-" version ".tar.xz")) (sha256 (base32 - "0i8kyh86hzwxs8dm047ivghl2b92vigdxa3x4pk4ha0whpk38g37")))) + "1vqsqpc51cir5qf801ibh6ljlpfw0qd513l9hjcnzp4ls8m1cfih")))) (build-system glib-or-gtk-build-system) (native-inputs `(("intltool" ,intltool) -- cgit v1.2.3 From 5d73ac06881beae181f6bd6f2abe5a14166dee36 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 13:51:13 +0200 Subject: gnu: eog: Update to 3.18.1. * gnu/packages/gnome.scm (eog): Update to 3.18.1. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 6e33fa9950..fd3fe9a283 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3168,7 +3168,7 @@ (define-public rhythmbox (define-public eog (package (name "eog") - (version "3.16.2") + (version "3.18.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -3176,7 +3176,7 @@ (define-public eog name "-" version ".tar.xz")) (sha256 (base32 - "0frw1b5jix9pffznav5s7ajjx91a8rv5lf4sjvjv3fw65mbnhbw0")))) + "19wkawrcwjjcvlmizkj57qycnbgizhr8ck3j5qg70605d1xb8yvv")))) (build-system glib-or-gtk-build-system) (arguments `(#:phases -- cgit v1.2.3 From b1b9ca8e011575801bc2555c52a4b032ca8f1230 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 13 Dec 2015 14:19:06 +0200 Subject: gnu: adwaita-icon-theme: Update to 3.18.0. * gnu/packages/gnome.scm (adwaita-icon-theme): Update to 3.18.0. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index fd3fe9a283..dee911fc0e 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -586,7 +586,7 @@ (define-public gnome-icon-theme (define-public adwaita-icon-theme (package (inherit gnome-icon-theme) (name "adwaita-icon-theme") - (version "3.16.2") + (version "3.18.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -594,7 +594,7 @@ (define-public adwaita-icon-theme name "-" version ".tar.xz")) (sha256 (base32 - "1hmlw7kvhr7c2asc5y77adpymi9ka17gaf76zz835nwwffnn4rlw")))))) + "0n0fqlg55krw8pgn4z2vxnxh65lyvcydqkrr7klqxp8z00kfg72y")))))) (define-public shared-mime-info (package -- cgit v1.2.3 From 5568151f5b571346e8c1760a1e0be9d7fd01b665 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sun, 13 Dec 2015 15:14:06 +0100 Subject: gnu: wireless-regdb: Build sequentially. Fixes . Reported by Mark H Weaver . * gnu/packages/linux.scm (wireless-regdb)[source]: Add 'snippet'. [arguments]: Add #:parallel-build?. --- gnu/packages/linux.scm | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 503f9c3368..ad3bd51554 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -1759,11 +1759,21 @@ (define-public wireless-regdb "wireless-regdb-" version ".tar.xz")) (sha256 (base32 - "0czi83k311fp27z42hxjm8vi88fsbc23mhavv96lkb4pmari0jjc")))) + "0czi83k311fp27z42hxjm8vi88fsbc23mhavv96lkb4pmari0jjc")) + + ;; We're building 'regulatory.bin' by ourselves. + (snippet '(delete-file "regulatory.bin")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases (delete 'configure)) + + ;; The 'all' target of the makefile depends on $(REGDB_CHANGED), which + ;; is computed and can be equal to 'maintainer-clean'; when that + ;; happens, we can end up deleting the 'regulatory.bin' file that we + ;; just built. Thus, build things sequentially. + #:parallel-build? #f + #:tests? #f ;no tests #:make-flags (let ((out (assoc-ref %outputs "out"))) (list (string-append "PREFIX=" out) -- cgit v1.2.3 From dec1e2b3520d00a910189425303aab1a7d2bd1c1 Mon Sep 17 00:00:00 2001 From: Amirouche BOUBEKKI Date: Fri, 11 Dec 2015 17:04:06 +0100 Subject: gnu: Add g-wrap. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/guile.scm (g-wrap): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/guile.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index a4203f0f3b..4be237cd65 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -841,4 +841,32 @@ (define-public guile-sly (home-page "http://dthompson.us/pages/software/sly.html") (license gpl3+))) +(define-public g-wrap + (package + (name "g-wrap") + (version "1.9.15") + (source (origin + (method url-fetch) + (uri (string-append "mirror://savannah/g-wrap/g-wrap-" + version ".tar.gz")) + (sha256 + (base32 + "0ak0bha37dfpj9kmyw1r8fj8nva639aw5xr66wr5gd3l1rqf5xhg")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (propagated-inputs + `(("guile" ,guile-2.0) + ("guile-lib" ,guile-lib))) + (inputs + `(("libffi" ,libffi))) + (synopsis "Generate C bindings for Guile") + (description "G-Wrap is a tool and Guile library for generating function +wrappers for inter-language calls. It currently only supports generating Guile +wrappers for C functions. Given a definition of the types and prototypes for +a given C interface, G-Wrap will automatically generate the C code that +provides access to that interface and its types from the Scheme level.") + (home-page "http://www.nongnu.org/g-wrap/index.html") + (license lgpl2.1+))) + ;;; guile.scm ends here -- cgit v1.2.3 From df12f04a0ce7658fe13ca8ab104d094947b61280 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Sun, 13 Dec 2015 12:08:04 +0800 Subject: gnu: Add gdm. * gnu/packages/gnome.scm (gdm): New variable. --- gnu/packages/gnome.scm | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index dee911fc0e..0a02d08ae3 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -42,6 +42,7 @@ (define-module (gnu packages gnome) #:use-module (gnu packages base) #:use-module (gnu packages bison) #:use-module (gnu packages calendar) + #:use-module (gnu packages check) #:use-module (gnu packages cups) #:use-module (gnu packages curl) #:use-module (gnu packages databases) @@ -4264,3 +4265,63 @@ (define-public libxml++ "This package provides a C++ wrapper for the XML parser library libxml2.") (license license:lgpl2.1+))) + +(define-public gdm + (package + (name "gdm") + (version "3.18.2") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "08pqhslwd487nh9w0jp4d0s4s2imm4ds0jjsbl6lzmqifqj3b4jl")))) + (build-system gnu-build-system) + (arguments + '(#:configure-flags + '("--without-plymouth") + #:phases + (modify-phases %standard-phases + (add-before + 'configure 'pre-configure + (lambda _ + ;; We don't have . + (substitute* '("common/gdm-log.c" + "daemon/gdm-server.c" + "daemon/gdm-session-worker.c" + "daemon/gdm-session-worker-job.c") + (("#include ") "")) + ;; Use elogind for sd-login. + (substitute* '("common/gdm-common.c" + "daemon/gdm-manager.c" + "libgdm/gdm-user-switching.c") + (("#include ") + "#include ")) + ;; Avoid checking SYSTEMD using pkg-config. + (setenv "SYSTEMD_CFLAGS" " ") + (setenv "SYSTEMD_LIBS" "-lelogind") + #t))))) + (native-inputs + `(("dconf" ,dconf) + ("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc. + ("gobject-introspection" ,gobject-introspection) + ("intltool" ,intltool) + ("itstool" ,itstool) + ("pkg-config" ,pkg-config) + ("xmllint" ,libxml2))) + (inputs + `(("accountsservice" ,accountsservice) + ("check" ,check) ; for testing + ("elogind" ,elogind) + ("gtk+" ,gtk+) + ("iso-codes" ,iso-codes) + ("libcanberra" ,libcanberra) + ("linux-pam" ,linux-pam))) + (synopsis "Display manager for GNOME") + (home-page "http://wiki.gnome.org/Projects/GDM/") + (description + "GNOME Display Manager is a system service that is responsible for +providing graphical log-ins and managing local and remote displays.") + (license license:gpl2+))) -- cgit v1.2.3 From f3ad149057f1cb840566379838c99b1e420a3d3e Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Sun, 13 Dec 2015 22:35:12 +0800 Subject: gnu: Add libmbim. * gnu/packages/freedesktop.scm (libmbim): New variable. --- gnu/packages/freedesktop.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 3db7ff7835..e5c9e2df99 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -427,3 +427,34 @@ (define-public accountsservice and manipulating user account information and an implementation of these interfaces, based on the useradd, usermod and userdel commands.") (license license:gpl3+))) + +(define-public libmbim + (package + (name "libmbim") + (version "1.12.2") + (source (origin + (method url-fetch) + (uri (string-append + "http://www.freedesktop.org/software/" name "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "0abv0h9c3kbw4bq1b9270sg189jcjj3x3wa91bj836ynwg9m34wl")))) + (build-system gnu-build-system) + (native-inputs + `(("glib:bin" ,glib "bin") ; for glib-mkenums + ("pkg-config" ,pkg-config) + ("python" ,python-wrapper))) + (propagated-inputs + `(("glib" ,glib))) ; required by mbim-glib.pc + (inputs + `(("libgudev" ,libgudev))) + (synopsis "Library to communicate with MBIM-powered modems") + (home-page "http://www.freedesktop.org/wiki/Software/libmbim/") + (description + "Libmbim is a GLib-based library for talking to WWAN modems and devices +which speak the Mobile Interface Broadband Model (MBIM) protocol.") + (license + ;; The libmbim-glib library is released under the LGPLv2+ license. + ;; The mbimcli tool is released under the GPLv2+ license. + (list license:lgpl2.0+ license:gpl2+)))) -- cgit v1.2.3 From 5302c5ffd100e7b58fe41d698eb9a36f328ef8bb Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Sun, 13 Dec 2015 22:35:54 +0800 Subject: gnu: Add libqmi. * gnu/packages/freedesktop.scm (libqmi): New variable. --- gnu/packages/freedesktop.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index e5c9e2df99..060a955e21 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -458,3 +458,32 @@ (define-public libmbim ;; The libmbim-glib library is released under the LGPLv2+ license. ;; The mbimcli tool is released under the GPLv2+ license. (list license:lgpl2.0+ license:gpl2+)))) + +(define-public libqmi + (package + (name "libqmi") + (version "1.12.6") + (source (origin + (method url-fetch) + (uri (string-append + "http://www.freedesktop.org/software/" name "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "101ppan2q1h4pyp2zbn9b8sdwy2c7fk9rp91yykxz3afrvzbymq8")))) + (build-system gnu-build-system) + (native-inputs + `(("glib:bin" ,glib "bin") ; for glib-mkenums + ("pkg-config" ,pkg-config) + ("python" ,python-wrapper))) + (propagated-inputs + `(("glib" ,glib))) ; required by qmi-glib.pc + (synopsis "Library to communicate with QMI-powered modems") + (home-page "http://www.freedesktop.org/wiki/Software/libqmi/") + (description + "Libqmi is a GLib-based library for talking to WWAN modems and devices +which speak the Qualcomm MSM Interface (QMI) protocol.") + (license + ;; The libqmi-glib library is released under the LGPLv2+ license. + ;; The qmicli tool is released under the GPLv2+ license. + (list license:lgpl2.0+ license:gpl2+)))) -- cgit v1.2.3 From 1509a1dc82839814828bb5883803c6f58df732c4 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Sun, 13 Dec 2015 22:36:30 +0800 Subject: gnu: Add modem-manager. * gnu/packages/freedesktop.scm (modem-manager): New variable. --- gnu/packages/freedesktop.scm | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 060a955e21..b4e7164bfa 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -487,3 +487,44 @@ (define-public libqmi ;; The libqmi-glib library is released under the LGPLv2+ license. ;; The qmicli tool is released under the GPLv2+ license. (list license:lgpl2.0+ license:gpl2+)))) + +(define-public modem-manager + (package + (name "modem-manager") + (version "1.4.12") + (source (origin + (method url-fetch) + (uri (string-append + "http://www.freedesktop.org/software/ModemManager/" + "ModemManager-" version ".tar.xz")) + (sha256 + (base32 + "1cvhpkbdch9a77sdir0wcks45m2zlvq1sna2ly2v4lx9fm9h7xby")))) + (build-system gnu-build-system) + (arguments + '(#:configure-flags + `(,(string-append "--with-udev-base-dir=" %output "/lib/udev")))) + (native-inputs + `(("glib:bin" ,glib "bin") ; for glib-mkenums + ("gobject-introspection" ,gobject-introspection) + ("intltool" ,intltool) + ("pkg-config" ,pkg-config) + ("vala" ,vala) + ;; For testing. + ("dbus" ,dbus))) + (propagated-inputs + `(("glib" ,glib))) ; required by mm-glib.pc + (inputs + `(("libgudev" ,libgudev) + ("libmbim" ,libmbim) + ("libqmi" ,libqmi) + ("polkit" ,polkit))) + (synopsis "Mobile broadband modems manager") + (home-page "http://www.freedesktop.org/wiki/Software/ModemManager/") + (description + "ModemManager is a DBus-activated daemon which controls mobile +broadband (2G/3G/4G) devices and connections. Whether built-in devices, USB +dongles, bluetooth-paired telephones, or professional RS232/USB devices with +external power supplies, ModemManager is able to prepare and configure the +modems and setup connections with them.") + (license license:gpl2+))) -- cgit v1.2.3 From 6645753b463ffc45e7161c33801fd8e80c9a209b Mon Sep 17 00:00:00 2001 From: Florian Paul Schmidt Date: Thu, 10 Dec 2015 08:57:57 +0100 Subject: gnu: Add redshift. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/xdisorg.scm (redshift): New variable. Co-authored-by: Ludovic Courtès --- gnu/packages/xdisorg.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 4b5308c665..efe858615d 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -8,6 +8,7 @@ ;;; Copyright © 2015 Alexander I.Grafov ;;; Copyright © 2015 Andy Wingo ;;; Copyright © 2015 xd1le +;;; Copyright © 2015 Florian Paul Schmidt ;;; ;;; This file is part of GNU Guix. ;;; @@ -655,3 +656,37 @@ (define-public xf86-input-wacom "The xf86-input-wacom driver is the wacom-specific X11 input driver for the X.Org X Server version 1.7 and later (X11R7.5 or later).") (license license:x11))) + +(define-public redshift + (package + (name "redshift") + (version "1.10") + (source + (origin + (method url-fetch) + (uri + (string-append "https://github.com/jonls/redshift/" + "releases/download/v" version + "/redshift-" version ".tar.xz")) + (sha256 + (base32 + "19pfk9il5x2g2ivqix4a555psz8mj3m0cvjwnjpjvx0llh5fghjv")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config) + ("intltool" ,intltool))) + (inputs + `(("libdrm" ,libdrm) + ("libx11" ,libx11) + ("libxcb" ,libxcb) + ("libxxf86vm", libxxf86vm) + ("glib" ,glib))) ;for Geoclue2 support + (home-page "https://github.com/jonls/redshift") + (synopsis "Adjust the color temperature of your screen") + (description + "Redshift adjusts the color temperature according to the position of the +sun. A different color temperature is set during night and daytime. During +twilight and early morning, the color temperature transitions smoothly from +night to daytime temperature to allow your eyes to slowly adapt. At night the +color temperature should be set to match the lamps in your room.") + (license license:gpl3+))) -- cgit v1.2.3 From b431e3a08dd2dd98cd985b83481dd44ffe24d7d5 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 14 Dec 2015 07:26:36 +0200 Subject: gnu: gcc-5: Update to 5.3.0. * gnu/packages/gcc.scm (gcc-5): Update to 5.3.0. --- gnu/packages/gcc.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index 8465859c24..2848e4343a 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2014, 2015 Mark H Weaver ;;; Copyright © 2014, 2015 Ricardo Wurmus ;;; Copyright © 2015 Andreas Enge +;;; Copyright © 2015 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -334,14 +335,14 @@ (define-public gcc-4.9 (define-public gcc-5 (package (inherit gcc-4.9) - (version "5.2.0") + (version "5.3.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/gcc/gcc-" version "/gcc-" version ".tar.bz2")) (sha256 (base32 - "1bccp8a106xwz3wkixn65ngxif112vn90qf95m6lzpgpnl25p0sz")) + "1ny4smkp5bzs3cp8ss7pl6lk8yss0d9m4av1mvdp72r1x695akxq")) (patches (list (search-patch "gcc-5.0-libvtv-runpath.patch"))))))) (define-public gcc gcc-4.9) -- cgit v1.2.3 From 03f964a511b1c2c0129a580e51ca72bf18a70d3a Mon Sep 17 00:00:00 2001 From: Chris Marusich Date: Mon, 7 Dec 2015 21:07:40 -0800 Subject: gnu: Add python-contextlib2. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/python.scm (python-contextlib2, python2-contextlib2): New variables. Signed-off-by: Ludovic Courtès --- gnu/packages/python.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 5880cac099..b94dc1dbcc 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -16,6 +16,7 @@ ;;; Copyright © 2015 Erik Edrosa ;;; Copyright © 2015 Efraim Flashner ;;; Copyright © 2015 Kyle Meyer +;;; Copyright © 2015 Chris Marusich ;;; ;;; This file is part of GNU Guix. ;;; @@ -6616,3 +6617,34 @@ (define-public python2-ndg-httpsclient (arguments `(#:python ,python-2)) (propagated-inputs `(("python2-pyopenssl" ,python2-pyopenssl))))) + +(define-public python-contextlib2 + (package + (name "python-contextlib2") + (version "0.4.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "contextlib2" version)) + (sha256 + (base32 + "0cmp131dlh0d0zvw0aza1zd13glvngzk8lb4avks0hm7yxwdr9am")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ (zero? + (system* + "python" "test_contextlib2.py", "-v"))))))) + (home-page "http://contextlib2.readthedocs.org/") + (synopsis "Tools for decorators and context managers") + (description "This module is primarily a backport of the Python +3.2 contextlib to earlier Python versions. Like contextlib, it +provides utilities for common tasks involving decorators and context +managers. It also contains additional features that are not part of +the standard library.") + (license psfl))) + +(define-public python2-contextlib2 + (package-with-python2 python-contextlib2)) -- cgit v1.2.3 From ebacb0de4ce62d2c5fff3d3c769d46d2f46dbfc1 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 14 Dec 2015 10:29:18 +0200 Subject: gnu: powertop: Update to 2.8. * gnu/packages/linux.scm (powertop): Update to 2.8. --- gnu/packages/linux.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index ad3bd51554..3d17e9de44 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2014, 2015 Mark H Weaver ;;; Copyright © 2015 Federico Beffa ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer +;;; Copyright © 2015 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -1164,7 +1165,7 @@ (define-public iw (define-public powertop (package (name "powertop") - (version "2.7") + (version "2.8") (source (origin (method url-fetch) @@ -1173,7 +1174,7 @@ (define-public powertop version ".tar.gz")) (sha256 (base32 - "1jkqqr3l1x98m7rgin1dgfzxqwj4vciw9lyyq1kl9bdswa818jwd")))) + "0nlwazxbnn0k6q5f5b09wdhw0f194lpzkp3l7vxansqhfczmcyx8")))) (build-system gnu-build-system) (inputs `(("zlib" ,zlib) @@ -1181,7 +1182,7 @@ (define-public powertop ("ncurses" ,ncurses) ("libnl" ,libnl))) (native-inputs - `(("pkg-config" ,pkg-config))) + `(("pkg-config" ,pkg-config))) (home-page "https://01.org/powertop/") (synopsis "Analyze power consumption on Intel-based laptops") (description -- cgit v1.2.3 From 9c1c2a7f8d11fd90df6c7176bc38684e7ebe0e4f Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 14 Dec 2015 10:50:55 +0200 Subject: gnu: bluez: Update to 5.36. * gnu/packages/linux.scm (bluez): Update to 5.36. [source]: Remove patch. * gnu/packages/patches/bluez-tests.patch: Remove file. * gnu-system.am (dist_patch_DATA): Remove it. --- gnu-system.am | 1 - gnu/packages/linux.scm | 6 ++---- gnu/packages/patches/bluez-tests.patch | 25 ------------------------- 3 files changed, 2 insertions(+), 30 deletions(-) delete mode 100644 gnu/packages/patches/bluez-tests.patch (limited to 'gnu') diff --git a/gnu-system.am b/gnu-system.am index 8ffc671142..77a8b2e1c5 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -420,7 +420,6 @@ dist_patch_DATA = \ gnu/packages/patches/binutils-ld-new-dtags.patch \ gnu/packages/patches/binutils-loongson-workaround.patch \ gnu/packages/patches/bitlbee-configure-doc-fix.patch \ - gnu/packages/patches/bluez-tests.patch \ gnu/packages/patches/boost-mips-avoid-m32.patch \ gnu/packages/patches/byobu-writable-status.patch \ gnu/packages/patches/calibre-drop-unrar.patch \ diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 3d17e9de44..4319ed93af 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -2309,7 +2309,7 @@ (define-public libaio (define-public bluez (package (name "bluez") - (version "5.35") + (version "5.36") (source (origin (method url-fetch) (uri (string-append @@ -2317,9 +2317,7 @@ (define-public bluez version ".tar.xz")) (sha256 (base32 - "1qphz25hganfnd5ipfscbj7s70anv5favmwqmi9ig2saciaf1zhs")) - (patches - (list (search-patch "bluez-tests.patch"))))) + "1wkqwmi5krr37mxcqqlp5m2xnw7vw70v3ww7j09vvlskxcdflhx3")))) (build-system gnu-build-system) (arguments '(#:configure-flags diff --git a/gnu/packages/patches/bluez-tests.patch b/gnu/packages/patches/bluez-tests.patch deleted file mode 100644 index 608ded9be2..0000000000 --- a/gnu/packages/patches/bluez-tests.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 484ad8c9263bb524051a999ce19a994960e69572 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= -Date: Fri, 23 Oct 2015 20:48:57 +0800 -Subject: [PATCH] unit/test-gobex-header: Fix duplicate test names - ---- - unit/test-gobex-header.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/unit/test-gobex-header.c b/unit/test-gobex-header.c -index 6f49312..8705892 100644 ---- a/unit/test-gobex-header.c -+++ b/unit/test-gobex-header.c -@@ -554,7 +554,7 @@ int main(int argc, char *argv[]) - test_header_encode_name_umlaut); - g_test_add_func("/gobex/test_header_encode_body", - test_header_encode_body); -- g_test_add_func("/gobex/test_header_encode_connid", -+ g_test_add_func("/gobex/test_header_encode_actionid", - test_header_encode_actionid); - g_test_add_func("/gobex/test_header_encode_apparam", - test_header_encode_apparam); --- -2.5.0 - -- cgit v1.2.3 From 1db6e09fa9e43b64a3b3306199c5e10088fe47f1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 15:29:37 +0100 Subject: gnu: Add ruby-minitest-4. * gnu/packages/ruby.scm (ruby-minitest-4): New variable. --- gnu/packages/ruby.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index c51a5f08e2..e4880ca42d 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1432,6 +1432,25 @@ (define-public ruby-minitest (home-page "https://github.com/seattlerb/minitest") (license license:expat))) +;; This is the last release of Minitest 4, which is used by some packages. +(define-public ruby-minitest-4 + (package (inherit ruby-minitest) + (version "4.7.5") + (source (origin + (method url-fetch) + (uri (rubygems-uri "minitest" version)) + (sha256 + (base32 + "03p6iban9gcpcflzp4z901s1hgj9369p6515h967ny6hlqhcf2iy")))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'remove-unsupported-method + (lambda _ + (substitute* "Rakefile" + (("self\\.rubyforge_name = .*") "")) + #t))))))) + (define-public ruby-minitest-sprint (package (name "ruby-minitest-sprint") -- cgit v1.2.3 From bc8277e458fddbb32f4e33f2f6c895a12560d112 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 15:30:40 +0100 Subject: gnu: Add ruby-gem-hadar. * gnu/packages/ruby.scm (ruby-gem-hadar): New variable. --- gnu/packages/ruby.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index e4880ca42d..58478e5d24 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1911,6 +1911,39 @@ (define-public ruby-tins (home-page "https://github.com/flori/tins") (license license:expat))) +(define-public ruby-gem-hadar + (package + (name "ruby-gem-hadar") + (version "1.3.1") + (source (origin + (method url-fetch) + (uri (rubygems-uri "gem_hadar" version)) + (sha256 + (base32 + "1j8qri4m9wf8nbfv0kakrgsv2x8vg10914xgm6f69nw8zi3i39ws")))) + (build-system ruby-build-system) + ;; This gem needs itself at development time. We disable rebuilding of the + ;; gemspec to avoid this loop. + (arguments + `(#:tests? #f ; there are no tests + #:phases + (modify-phases %standard-phases + (replace 'build + (lambda _ + (zero? (system* "gem" "build" "gem_hadar.gemspec"))))))) + (propagated-inputs + `(("git" ,git) + ("ruby-tins" ,ruby-tins) + ("ruby-sdoc" ,ruby-sdoc))) + (native-inputs + `(("bundler" ,bundler))) + (synopsis "Library for the development of Ruby gems") + (description + "This library contains some useful functionality to support the +development of Ruby gems.") + (home-page "https://github.com/flori/gem_hadar") + (license license:expat))) + (define-public ruby-json (package (name "ruby-json") -- cgit v1.2.3 From d8cafe29dfc33b7a114a820f782dd5fbb7ea0e32 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 15:31:09 +0100 Subject: gnu: Add ruby-minitest-tu-shim. * gnu/packages/ruby.scm (ruby-minitest-tu-shim): New variable. --- gnu/packages/ruby.scm | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 58478e5d24..d3b3d39137 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1944,6 +1944,51 @@ (define-public ruby-gem-hadar (home-page "https://github.com/flori/gem_hadar") (license license:expat))) +(define-public ruby-minitest-tu-shim + (package + (name "ruby-minitest-tu-shim") + (version "1.3.3") + (source (origin + (method url-fetch) + (uri (rubygems-uri "minitest_tu_shim" version)) + (sha256 + (base32 + "0xlyh94iirvssix157ng2akr9nqhdygdd0c6094hhv7dqcfrn9fn")))) + (build-system ruby-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-test-include-path + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "Rakefile" + (("Hoe\\.add_include_dirs .*") + (string-append "Hoe.add_include_dirs \"" + (assoc-ref inputs "ruby-minitest-4") + "/lib/ruby/gems/2.2.0/gems/minitest-" + ,(package-version ruby-minitest-4) + "/lib" "\""))))) + (add-before 'check 'fix-test-assumptions + (lambda _ + ;; The test output includes the file name, so a couple of tests + ;; fail. Changing the regular expressions slightly fixes this + ;; problem. + (substitute* "test/test_mini_test.rb" + (("output.sub!\\(.*, 'FILE:LINE'\\)") + "output.sub!(/\\/.+-[\\w\\/\\.]+:\\d+/, 'FILE:LINE')") + (("gsub\\(/.*, 'FILE:LINE'\\)") + "gsub(/\\/.+-[\\w\\/\\.]+:\\d+/, 'FILE:LINE')")) + #t))))) + (propagated-inputs + `(("ruby-minitest-4" ,ruby-minitest-4))) + (native-inputs + `(("ruby-hoe" ,ruby-hoe))) + (synopsis "Adapter library between minitest and test/unit") + (description + "This library bridges the gap between the small and fast minitest and +Ruby's large and slower test/unit.") + (home-page "https://rubygems.org/gems/minitest_tu_shim") + (license license:expat))) + (define-public ruby-json (package (name "ruby-json") -- cgit v1.2.3 From fd83a212bc9e18a0321b21e25a8e8c6fdbafb08f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 15:34:09 +0100 Subject: gnu: Add ruby-term-ansicolor. * gnu/packages/ruby.scm (ruby-term-ansicolor): New variable. --- gnu/packages/ruby.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index d3b3d39137..dec3e1ed47 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1989,6 +1989,38 @@ (define-public ruby-minitest-tu-shim (home-page "https://rubygems.org/gems/minitest_tu_shim") (license license:expat))) +(define-public ruby-term-ansicolor + (package + (name "ruby-term-ansicolor") + (version "1.3.2") + (source (origin + (method url-fetch) + (uri (rubygems-uri "term-ansicolor" version)) + (sha256 + (base32 + "0ydbbyjmk5p7fsi55ffnkq79jnfqx65c3nj8d9rpgl6sw85ahyys")))) + (build-system ruby-build-system) + ;; Rebuilding the gemspec seems to require git, even though this is not a + ;; git repository, so we just build the gem from the existing gemspec. + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'build + (lambda _ + (zero? (system* "gem" "build" "term-ansicolor.gemspec"))))))) + (propagated-inputs + `(("ruby-tins" ,ruby-tins))) + (native-inputs + `(("ruby-gem-hadar" ,ruby-gem-hadar) + ("ruby-minitest-tu-shim" ,ruby-minitest-tu-shim))) + (synopsis "Ruby library to control the attributes of terminal output") + (description + "This Ruby library uses ANSI escape sequences to control the attributes +of terminal output.") + (home-page "http://flori.github.io/term-ansicolor/") + ;; There is no mention of the "or later" clause. + (license license:gpl2))) + (define-public ruby-json (package (name "ruby-json") -- cgit v1.2.3 From 6e376ca46ac6e97bfe6b5db7f54f717edf3cecb6 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 15:34:33 +0100 Subject: gnu: Add ruby-pstree. * gnu/packages/ruby.scm (ruby-pstree): New variable. --- gnu/packages/ruby.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index dec3e1ed47..0e4d1aaf64 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2021,6 +2021,28 @@ (define-public ruby-term-ansicolor ;; There is no mention of the "or later" clause. (license license:gpl2))) +(define-public ruby-pstree + (package + (name "ruby-pstree") + (version "0.1.0") + (source (origin + (method url-fetch) + (uri (rubygems-uri "pstree" version)) + (sha256 + (base32 + "1mig1sv5qx1cdyhjaipy8jlh9j8pnja04vprrzihyfr54x0215p1")))) + (build-system ruby-build-system) + (native-inputs + `(("ruby-gem-hadar" ,ruby-gem-hadar) + ("bundler" ,bundler))) + (synopsis "Create a process tree data structure") + (description + "This library uses the output of the @code{ps} command to create a +process tree data structure for the current host.") + (home-page "http://flori.github.com/pstree") + ;; There is no mention of the "or later" clause. + (license license:gpl2))) + (define-public ruby-json (package (name "ruby-json") -- cgit v1.2.3 From 53239b5f9649b5b27945eafd550c6b296b4140d1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 15:34:58 +0100 Subject: gnu: Add ruby-utils. * gnu/packages/ruby.scm (ruby-utils): New variable. --- gnu/packages/ruby.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 0e4d1aaf64..2f3e9f3a09 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2043,6 +2043,33 @@ (define-public ruby-pstree ;; There is no mention of the "or later" clause. (license license:gpl2))) +(define-public ruby-utils + (package + (name "ruby-utils") + (version "0.2.4") + (source (origin + (method url-fetch) + (uri (rubygems-uri "utils" version)) + (sha256 + (base32 + "0vycgscxf3s1xn4yyfsq54zlh082581ga8azybmqgc4pij6iz2cd")))) + (build-system ruby-build-system) + (propagated-inputs + `(("ruby-tins" ,ruby-tins) + ("ruby-term-ansicolor" ,ruby-term-ansicolor) + ("ruby-pstree" ,ruby-pstree) + ("ruby-pry-editline" ,ruby-pry-editline))) + (native-inputs + `(("ruby-gem-hadar" ,ruby-gem-hadar) + ("bundler" ,bundler))) + (synopsis "Command line tools for working with Ruby") + (description + "This package provides assorted command line tools that may be useful +when working with Ruby code.") + (home-page "https://github.com/flori/utils") + ;; There is no mention of the "or later" clause. + (license license:gpl2))) + (define-public ruby-json (package (name "ruby-json") -- cgit v1.2.3 From 763624f56616eae6c974e8d6c1acc257020154dd Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 15:36:24 +0100 Subject: gnu: Add ruby-json-pure. * gnu/packages/ruby.scm (ruby-json-pure): New variable. --- gnu/packages/ruby.scm | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 2f3e9f3a09..eb6abbf3d2 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -30,6 +30,7 @@ (define-module (gnu packages ruby) #:use-module (gnu packages autotools) #:use-module (gnu packages java) #:use-module (gnu packages libffi) + #:use-module (gnu packages ragel) #:use-module (gnu packages tls) #:use-module (gnu packages version-control) #:use-module (guix packages) @@ -2089,6 +2090,53 @@ (define-public ruby-json (home-page "http://json-jruby.rubyforge.org/") (license (list license:ruby license:gpl2)))) ; GPL2 only +(define-public ruby-json-pure + (package + (name "ruby-json-pure") + (version "1.8.3") + (source (origin + (method url-fetch) + (uri (rubygems-uri "json_pure" version)) + (sha256 + (base32 + "025aykr360x6dr1jmg8pmsrx7gr30pws4p1q686vnb48zyw1sc94")))) + (build-system ruby-build-system) + (arguments + `(#:modules ((srfi srfi-1) + (ice-9 regex) + (rnrs io ports) + (guix build ruby-build-system) + (guix build utils)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'replace-git-ls-files + (lambda _ + ;; The existing gemspec file already contains a nice list of + ;; files that belong to the gem. We extract the list from the + ;; gemspec file and then replace the file list in the Rakefile to + ;; get rid of the call to "git ls-files". + (let* ((contents (call-with-input-file "json.gemspec" get-string-all)) + ;; Guile is unhappy about the #\nul characters in comments. + (filtered (string-filter (lambda (char) + (not (equal? #\nul char))) + contents)) + (files (match:substring + (string-match " s\\.files = ([^]]+\\])" filtered) 1))) + (substitute* "Rakefile" + (("FileList\\[`git ls-files`\\.split\\(/\\\\n/\\)\\]") + (string-append "FileList" files)))) + #t))))) + (native-inputs + `(("ruby-permutation" ,ruby-permutation) + ("ruby-utils" ,ruby-utils) + ("ragel" ,ragel) + ("bundler" ,bundler))) + (synopsis "JSON implementation in pure Ruby") + (description + "This package provides a JSON implementation written in pure Ruby.") + (home-page "http://flori.github.com/json") + (license license:ruby))) + (define-public ruby-listen (package (name "ruby-listen") -- cgit v1.2.3 From b004fb6a8a28d220ad61128bc4e6040bb29df7ea Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 15:36:58 +0100 Subject: gnu: Add ruby-saikuro-treemap. * gnu/packages/ruby.scm (ruby-saikuro-treemap): New variable. --- gnu/packages/ruby.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index eb6abbf3d2..06eca79019 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -572,6 +572,32 @@ (define-public ruby-ci-reporter (home-page "https://github.com/nicksieger/ci_reporter") (license license:expat))) +(define-public ruby-saikuro-treemap + (package + (name "ruby-saikuro-treemap") + (version "0.2.0") + (source (origin + (method url-fetch) + (uri (rubygems-uri "saikuro_treemap" version)) + (sha256 + (base32 + "0w70nmh43mwfbpq20iindl61siqqr8acmf7p3m7n5ipd61c24950")))) + (build-system ruby-build-system) + ;; Some of the tests fail because the generated JSON has keys in a + ;; different order. This is a problem with the test suite rather than any + ;; of the involved libraries. + (arguments `(#:tests? #f)) + (propagated-inputs + `(("ruby-json-pure" ,ruby-json-pure) + ("ruby-atoulme-saikuro" ,ruby-atoulme-saikuro))) + (synopsis "Generate complexity treemap based on saikuro analysis") + (description + "This gem generates a treemap showing the complexity of Ruby code on +which it is run. It uses Saikuro under the covers to analyze Ruby code +complexity.") + (home-page "http://github.com/ThoughtWorksStudios/saikuro_treemap") + (license license:expat))) + (define-public ruby-orderedhash (package (name "ruby-orderedhash") -- cgit v1.2.3 From 16b324cdf4fc265f7b3f9662ff995bcefa932474 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 15:38:33 +0100 Subject: gnu: Add ruby-rb-fsevent. * gnu/packages/ruby.scm (ruby-rb-fsevent): New variable. --- gnu/packages/ruby.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 06eca79019..77d52bd983 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2163,6 +2163,28 @@ (define-public ruby-json-pure (home-page "http://flori.github.com/json") (license license:ruby))) +;; Even though this package only provides bindings for a Mac OSX API it is +;; required by "ruby-listen" at runtime. +(define-public ruby-rb-fsevent + (package + (name "ruby-rb-fsevent") + (version "0.9.6") + (source (origin + (method url-fetch) + (uri (rubygems-uri "rb-fsevent" version)) + (sha256 + (base32 + "1hq57by28iv0ijz8pk9ynih0xdg7vnl1010xjcijfklrcv89a1j2")))) + (build-system ruby-build-system) + ;; Tests need "guard-rspec", which needs "guard". However, "guard" needs + ;; "listen", which needs "rb-fsevent" at runtime. + (arguments `(#:tests? #f)) + (synopsis "FSEvents API with signals catching") + (description + "This library provides Ruby bindings for the Mac OSX FSEvents API.") + (home-page "https://rubygems.org/gems/rb-fsevent") + (license license:expat))) + (define-public ruby-listen (package (name "ruby-listen") -- cgit v1.2.3 From cf1a01f48c10d20f80554f825ec375cc21d7a690 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 15:38:51 +0100 Subject: gnu: ruby-listen: Add rb-fsevent to inputs. * gnu/packages/ruby.scm (ruby-listen)[propagated-inputs]: Add "ruby-rb-fsevent". --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 77d52bd983..a660b3e4ca 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2199,8 +2199,8 @@ (define-public ruby-listen (build-system ruby-build-system) (arguments '(#:tests? #f)) ; no tests (propagated-inputs - ;; FIXME: omitting "ruby-rb-fsevent" which is only for MacOS. - `(("ruby-rb-inotify" ,ruby-rb-inotify))) + `(("ruby-rb-inotify" ,ruby-rb-inotify) + ("ruby-rb-fsevent" ,ruby-rb-fsevent))) (synopsis "Listen to file modifications") (description "The Listen gem listens to file modifications and notifies you about the changes.") -- cgit v1.2.3 From 051deeb79d1737477e298a322de35ddb962911f4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 15:40:13 +0100 Subject: gnu: Add ruby-guard. * gnu/packages/ruby.scm (ruby-guard): New variable. --- gnu/packages/ruby.scm | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index a660b3e4ca..5c8d684cde 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1782,6 +1782,54 @@ (define-public ruby-pry (home-page "http://pryrepl.org") (license license:expat))) +(define-public ruby-guard + (package + (name "ruby-guard") + (version "2.13.0") + (source (origin + (method url-fetch) + ;; The gem does not include a Rakefile, nor does it contain a + ;; gemspec file, nor does it come with the tests. This is why + ;; we fetch the tarball from Github. + (uri (string-append "https://github.com/guard/guard/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1hwj0yi17k6f5axrm0k2bb7fq71dlp0zfywmd7pij9iimbppcca0")))) + (build-system ruby-build-system) + (arguments + `(#:tests? #f ; tests require cucumber + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'remove-git-ls-files + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "guard.gemspec" + (("git ls-files -z") "find . -type f -print0")) + #t)) + (replace 'build + (lambda _ + (zero? (system* "gem" "build" "guard.gemspec"))))))) + (propagated-inputs + `(("ruby-formatador" ,ruby-formatador) + ("ruby-listen" ,ruby-listen) + ("ruby-lumberjack" ,ruby-lumberjack) + ("ruby-nenv" ,ruby-nenv) + ("ruby-notiffany" ,ruby-notiffany) + ("ruby-pry" ,ruby-pry) + ("ruby-shellany" ,ruby-shellany) + ("ruby-thor" ,ruby-thor))) + (native-inputs + `(("bundler" ,bundler) + ("ruby-rspec" ,ruby-rspec))) + (synopsis "Tool to handle events on file system modifications") + (description + "Guard is a command line tool to easily handle events on file system +modifications. Guard automates various tasks by running custom rules whenever +file or directories are modified.") + (home-page "http://guardgem.org/") + (license license:expat))) + (define-public ruby-thread-safe (package (name "ruby-thread-safe") -- cgit v1.2.3 From 5799bc2b1f9bfbbf3fb2acc3a3adab9acfcdf66b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 15:43:10 +0100 Subject: gnu: Add ruby-netrc. * gnu/packages/ruby.scm (ruby-netrc): New variable. --- gnu/packages/ruby.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 5c8d684cde..2454148bc2 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2354,6 +2354,36 @@ (define-public ruby-byebug (home-page "http://github.com/deivid-rodriguez/byebug") (license license:bsd-2))) +(define-public ruby-netrc + (package + (name "ruby-netrc") + (version "0.11.0") + (source (origin + (method url-fetch) + (uri (rubygems-uri "netrc" version)) + (sha256 + (base32 + "0gzfmcywp1da8nzfqsql2zqi648mfnx6qwkig3cv36n9m0yy676y")))) + (build-system ruby-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + ;; There is no Rakefile and minitest can only run one file at once, + ;; so we have to iterate over all test files. + (lambda _ + (and (map (lambda (file) + (zero? (system* "ruby" "-Itest" file))) + (find-files "./test" "test_.*\\.rb")))))))) + (native-inputs + `(("ruby-minitest" ,ruby-minitest))) + (synopsis "Library to read and update netrc files") + (description + "This library can read and update netrc files, preserving formatting +including comments and whitespace.") + (home-page "https://github.com/geemus/netrc") + (license license:expat))) + (define-public ruby-rack (package (name "ruby-rack") -- cgit v1.2.3 From 3a6989ce3ad69215fa182e8037f02c108889be9d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 15:43:41 +0100 Subject: gnu: Add ruby-unf-ext. * gnu/packages/ruby.scm (ruby-unf-ext): New variable. --- gnu/packages/ruby.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 2454148bc2..bdcb7ced79 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2384,6 +2384,27 @@ (define-public ruby-netrc (home-page "https://github.com/geemus/netrc") (license license:expat))) +(define-public ruby-unf-ext + (package + (name "ruby-unf-ext") + (version "0.0.7.1") + (source (origin + (method url-fetch) + (uri (rubygems-uri "unf_ext" version)) + (sha256 + (base32 + "0ly2ms6c3irmbr1575ldyh52bz2v0lzzr2gagf0p526k12ld2n5b")))) + (build-system ruby-build-system) + (native-inputs + `(("bundler" ,bundler) + ("ruby-rake-compiler" ,ruby-rake-compiler) + ("ruby-test-unit" ,ruby-test-unit))) + (synopsis "Unicode normalization form support library") + (description + "This package provides unicode normalization form support for Ruby.") + (home-page "https://github.com/knu/ruby-unf_ext") + (license license:expat))) + (define-public ruby-rack (package (name "ruby-rack") -- cgit v1.2.3 From 2632a0671283fb1dabb02f98acce2777c3d67309 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 15:44:17 +0100 Subject: gnu: Add ruby-tdiff. * gnu/packages/ruby.scm (ruby-tdiff): New variable. --- gnu/packages/ruby.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index bdcb7ced79..9ac859bf61 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2405,6 +2405,28 @@ (define-public ruby-unf-ext (home-page "https://github.com/knu/ruby-unf_ext") (license license:expat))) +(define-public ruby-tdiff + (package + (name "ruby-tdiff") + (version "0.3.3") + (source (origin + (method url-fetch) + (uri (rubygems-uri "tdiff" version)) + (sha256 + (base32 + "0k41jbvn8qq4mgrixnhlk742b971d136i8wpbcv2cczvi22xpc86")))) + (build-system ruby-build-system) + (native-inputs + `(("ruby-rspec-2" ,ruby-rspec-2) + ("ruby-yard" ,ruby-yard) + ("ruby-rubygems-tasks" ,ruby-rubygems-tasks))) + (synopsis "Calculate the differences between two tree-like structures") + (description + "This library provides functions to calculate the differences between two +tree-like structures. It is similar to Ruby's built-in @code{TSort} module.") + (home-page "https://github.com/postmodern/tdiff") + (license license:expat))) + (define-public ruby-rack (package (name "ruby-rack") -- cgit v1.2.3 From f60f5002225a9cc6c397a8da88631fd7bbe40312 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 15:44:35 +0100 Subject: gnu: Add ruby-nokogiri-diff. * gnu/packages/ruby.scm (ruby-nokogiri-diff): New variable. --- gnu/packages/ruby.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 9ac859bf61..dfacb8ceb0 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2427,6 +2427,31 @@ (define-public ruby-tdiff (home-page "https://github.com/postmodern/tdiff") (license license:expat))) +(define-public ruby-nokogiri-diff + (package + (name "ruby-nokogiri-diff") + (version "0.2.0") + (source (origin + (method url-fetch) + (uri (rubygems-uri "nokogiri-diff" version)) + (sha256 + (base32 + "0njr1s42war0bj1axb2psjvk49l74a8wzr799wckqqdcb6n51lc1")))) + (build-system ruby-build-system) + (propagated-inputs + `(("ruby-tdiff" ,ruby-tdiff) + ("ruby-nokogiri" ,ruby-nokogiri))) + (native-inputs + `(("ruby-rspec-2" ,ruby-rspec-2) + ("ruby-yard" ,ruby-yard) + ("ruby-rubygems-tasks" ,ruby-rubygems-tasks))) + (synopsis "Calculate the differences between two XML/HTML documents") + (description + "@code{Nokogiri::Diff} adds the ability to calculate the +differences (added or removed nodes) between two XML/HTML documents.") + (home-page "https://github.com/postmodern/nokogiri-diff") + (license license:expat))) + (define-public ruby-rack (package (name "ruby-rack") -- cgit v1.2.3 From 3996f0aadc675a19db74503563fb98ee18734297 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 15:45:15 +0100 Subject: gnu: Add ruby-crass. * gnu/packages/ruby.scm (ruby-crass): New variable. --- gnu/packages/ruby.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index dfacb8ceb0..f4c9c0afcc 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2282,6 +2282,26 @@ (define-public ruby-activesupport (home-page "http://www.rubyonrails.org") (license license:expat))) +(define-public ruby-crass + (package + (name "ruby-crass") + (version "1.0.2") + (source (origin + (method url-fetch) + (uri (rubygems-uri "crass" version)) + (sha256 + (base32 + "1c377r8g7m58y22803iyjgqkkvnnii0pymskda1pardxrzaighj9")))) + (build-system ruby-build-system) + (native-inputs + `(("bundler" ,bundler) + ("ruby-minitest" ,ruby-minitest))) + (synopsis "Pure Ruby CSS parser") + (description + "Crass is a pure Ruby CSS parser based on the CSS Syntax Level 3 spec.") + (home-page "https://github.com/rgrove/crass/") + (license license:expat))) + (define-public ruby-ox (package (name "ruby-ox") -- cgit v1.2.3 From e1c63590efef7cf383994253b07e81d3e27f3a54 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 15:56:56 +0100 Subject: gnu: Add Gumbo Parser. * gnu/packages/web.scm (gumbo-parser): New variable. --- gnu/packages/web.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 6c3329ffb6..e6659ec148 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3003,3 +3003,34 @@ (define-public r-curl where data can be processed either in memory, on disk, or streaming via the callback or connection interfaces.") (license l:expat))) + +(define-public gumbo-parser + (package + (name "gumbo-parser") + (version "0.10.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/google/" + "gumbo-parser/archive/v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1bgg2kbj311pqdzw2v33za7k66g1rv44kkvvnz2gnpaasi9k0ii8")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; tests require bundling googletest sources + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'bootstrap + (lambda _ (zero? (system* "sh" "autogen.sh"))))))) + ;; The release tarball lacks the generated files. + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool))) + (home-page "https://github.com/google/gumbo-parser") + (synopsis "HTML5 parsing library") + (description + "Gumbo is an implementation of the HTML5 parsing algorithm implemented as +a pure C99 library.") + (license l:asl2.0))) -- cgit v1.2.3 From c2c4e5b2ee7d3e9412822e87bd5aaedbfa40f9bd Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 15:57:37 +0100 Subject: gnu: Add ruby-nokogumbo. * gnu/packages/ruby.scm (ruby-nokogumbo): New variable. --- gnu/packages/ruby.scm | 64 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index f4c9c0afcc..d10dc04a4d 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -39,6 +39,7 @@ (define-module (gnu packages ruby) #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (gnu packages xml) + #:use-module (gnu packages web) #:use-module (guix build-system ruby)) (define-public ruby @@ -2302,6 +2303,69 @@ (define-public ruby-crass (home-page "https://github.com/rgrove/crass/") (license license:expat))) +(define-public ruby-nokogumbo + (package + (name "ruby-nokogumbo") + (version "1.4.6") + (source (origin + ;; We use the git reference, because there's no Rakefile in the + ;; published gem and the tarball on Github is outdated. + (method git-fetch) + (uri (git-reference + (url "https://github.com/rubys/nokogumbo.git") + (commit "d56f954d20a"))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0bnppjy96xiadrsrc9dp8y6wvdwnkfa930n7acrp0mqm4qywl2wl")))) + (build-system ruby-build-system) + (arguments + `(#:modules ((guix build ruby-build-system) + (guix build utils) + (ice-9 rdelim)) + #:phases + (modify-phases %standard-phases + (add-before 'build 'build-gemspec + (lambda _ + (substitute* "Rakefile" + ;; Build Makefile even without a copy of gumbo-parser sources + (("'gumbo-parser/src',") "") + ;; We don't bundle gumbo-parser sources + (("'gumbo-parser/src/\\*',") "") + (("'gumbo-parser/visualc/include/\\*',") "") + ;; The definition of SOURCES will be cut in gemspec, and + ;; "FileList" will be undefined. + (("SOURCES \\+ FileList\\[") + "['ext/nokogumboc/extconf.rb', 'ext/nokogumboc/nokogumbo.c', ")) + + ;; Copy the Rakefile and cut out the gemspec. + (copy-file "Rakefile" ".gemspec") + (with-atomic-file-replacement ".gemspec" + (lambda (in out) + (let loop ((line (read-line in 'concat)) + (skipping? #t)) + (if (eof-object? line) + #t + (let ((skip-next? (if skipping? + (not (string-prefix? "SPEC =" line)) + (string-prefix? "end" line)))) + (when (or (not skipping?) + (and skipping? (not skip-next?))) + (format #t "~a" line) + (display line out)) + (loop (read-line in 'concat) skip-next?)))))) + #t))))) + (inputs + `(("gumbo-parser" ,gumbo-parser))) + (propagated-inputs + `(("ruby-nokogiri" ,ruby-nokogiri))) + (synopsis "Ruby bindings to the Gumbo HTML5 parser") + (description + "Nokogumbo allows a Ruby program to invoke the Gumbo HTML5 parser and +access the result as a Nokogiri parsed document.") + (home-page "https://github.com/rubys/nokogumbo/") + (license license:asl2.0))) + (define-public ruby-ox (package (name "ruby-ox") -- cgit v1.2.3 From ad686ef3fc4cb5581e409e647541ce3e248fa111 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 16:58:26 +0100 Subject: gnu: Add ruby-clap. * gnu/packages/ruby.scm (ruby-clap): New variable. --- gnu/packages/ruby.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index d10dc04a4d..1c0e3ae728 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2704,6 +2704,26 @@ (define-public ruby-yard (home-page "http://yardoc.org") (license license:expat))) +(define-public ruby-clap + (package + (name "ruby-clap") + (version "1.0.0") + (source (origin + (method url-fetch) + (uri (rubygems-uri "clap" version)) + (sha256 + (base32 + "190m05k3pca72c1h8k0fnvby15m303zi0lpb9c478ad19wqawa5q")))) + (build-system ruby-build-system) + ;; Clap needs cutest for running tests, but cutest needs clap. + (arguments `(#:tests? #f)) + (synopsis "Command line argument parsing for simple applications") + (description + "Clap provides command line argument parsing features. It covers the +simple case of executing code based on the flags or parameters passed.") + (home-page "https://github.com/djanowski/cutest") + (license license:expat))) + (define-public ruby-eventmachine (package (name "ruby-eventmachine") -- cgit v1.2.3 From 0c80451e81ba5662d9b3f410dbd3996d2c371b87 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 16:58:41 +0100 Subject: gnu: Add ruby-cutest. * gnu/packages/ruby.scm (ruby-cutest): New variable. --- gnu/packages/ruby.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 1c0e3ae728..e5489819f5 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2724,6 +2724,25 @@ (define-public ruby-clap (home-page "https://github.com/djanowski/cutest") (license license:expat))) +(define-public ruby-cutest + (package + (name "ruby-cutest") + (version "1.2.2") + (source (origin + (method url-fetch) + (uri (rubygems-uri "cutest" version)) + (sha256 + (base32 + "1mldhjn62g53vx4gq2qdqg2lgjvyrqxa8d0khf8347bbfgi16d32")))) + (build-system ruby-build-system) + (propagated-inputs + `(("ruby-clap" ,ruby-clap))) + (synopsis "Run tests in separate processes") + (description + "Cutest runs tests in separate processes to avoid shared state.") + (home-page "https://github.com/djanowski/cutest") + (license license:expat))) + (define-public ruby-eventmachine (package (name "ruby-eventmachine") -- cgit v1.2.3 From ac09beba841cb6b3323c80d28fcbae8aa2d9b87a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 16:59:05 +0100 Subject: gnu: Add ruby-pygmentize. * gnu/packages/ruby.scm (ruby-pygmentize): New variable. --- gnu/packages/ruby.scm | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index e5489819f5..cb813403a0 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -30,6 +30,7 @@ (define-module (gnu packages ruby) #:use-module (gnu packages autotools) #:use-module (gnu packages java) #:use-module (gnu packages libffi) + #:use-module (gnu packages python) #:use-module (gnu packages ragel) #:use-module (gnu packages tls) #:use-module (gnu packages version-control) @@ -2743,6 +2744,46 @@ (define-public ruby-cutest (home-page "https://github.com/djanowski/cutest") (license license:expat))) +(define-public ruby-pygmentize + (package + (name "ruby-pygmentize") + (version "0.0.3") + (source (origin + (method url-fetch) + (uri (rubygems-uri "pygmentize" version)) + (sha256 + (base32 + "1pxryhkiwvsz6xzda3bvqwz5z8ggzl1cdglf8qbcf4bb7akirdpb")))) + (build-system ruby-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-pygmentize-path + (lambda _ + (substitute* "lib/pygmentize.rb" + (("\"/usr/bin/env python.*") + (string-append "\"" (which "pygmentize") "\"\n"))) + #t)) + (add-after 'build 'do-not-use-vendor-directory + (lambda _ + ;; Remove bundled pygments sources + ;; FIXME: ruby-build-system does not support snippets. + (delete-file-recursively "vendor") + (substitute* "pygmentize.gemspec" + (("\"vendor/\\*\\*/\\*\",") "")) + #t))))) + (inputs + `(("pygments" ,python-pygments))) + (native-inputs + `(("ruby-cutest" ,ruby-cutest) + ("ruby-nokogiri" ,ruby-nokogiri))) + (synopsis "Thin Ruby wrapper around pygmentize") + (description + "Pygmentize provides a simple way to call pygmentize from within a Ruby +application.") + (home-page "https://github.com/djanowski/pygmentize") + (license license:expat))) + (define-public ruby-eventmachine (package (name "ruby-eventmachine") -- cgit v1.2.3 From d56ff88b6c63bb4f3e7877986b313ed944d6f341 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 17:11:14 +0100 Subject: gnu: Add ruby-sanitize. * gnu/packages/ruby.scm (ruby-sanitize): New variable. --- gnu/packages/ruby.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index cb813403a0..846e358554 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2367,6 +2367,38 @@ (define-public ruby-nokogumbo (home-page "https://github.com/rubys/nokogumbo/") (license license:asl2.0))) +(define-public ruby-sanitize + (package + (name "ruby-sanitize") + (version "4.0.0") + (source (origin + (method url-fetch) + ;; The gem does not include the Rakefile, so we download the + ;; release tarball from Github. + (uri (string-append "https://github.com/rgrove/" + "sanitize/archive/v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "055xnj38l60gxnnng76kpy2l2jbrp0byjdyq17jw79w7l4b40znr")))) + (build-system ruby-build-system) + (propagated-inputs + `(("ruby-crass" ,ruby-crass) + ("ruby-nokogiri" ,ruby-nokogiri) + ("ruby-nokogumbo" ,ruby-nokogumbo))) + (native-inputs + `(("bundler" ,bundler) + ("ruby-minitest" ,ruby-minitest) + ("ruby-redcarpet" ,ruby-redcarpet) + ("ruby-yard" ,ruby-yard))) + (synopsis "Whitelist-based HTML and CSS sanitizer") + (description + "Sanitize is a whitelist-based HTML and CSS sanitizer. Given a list of +acceptable elements, attributes, and CSS properties, Sanitize will remove all +unacceptable HTML and/or CSS from a string.") + (home-page "https://github.com/rgrove/sanitize/") + (license license:expat))) + (define-public ruby-ox (package (name "ruby-ox") -- cgit v1.2.3 From 0c4e762570dfb46d554b30ef14b27cd808ffcff6 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 25 Nov 2015 17:25:22 +0100 Subject: gnu: Add ruby-redcloth. * gnu/packages/ruby.scm (ruby-redcloth): New variable. --- gnu/packages/ruby.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 846e358554..1bd3fe2c9a 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2422,6 +2422,45 @@ (define-public ruby-ox (home-page "http://www.ohler.com/ox") (license license:expat))) +(define-public ruby-redcloth + (package + (name "ruby-redcloth") + (version "4.2.9") + (source (origin + (method url-fetch) + (uri (rubygems-uri "RedCloth" version)) + (sha256 + (base32 + "06pahxyrckhgb7alsxwhhlx1ib2xsx33793finj01jk8i054bkxl")))) + (build-system ruby-build-system) + (arguments + `(#:tests? #f ; no tests + #:phases + (modify-phases %standard-phases + ;; Redcloth has complicated rake tasks to build various versions for + ;; multiple targets using RVM. We don't want this so we just use the + ;; existing gemspec. + (replace 'build + (lambda _ + (zero? (system* "gem" "build" "redcloth.gemspec")))) + ;; Make sure that the "redcloth" executable finds required Ruby + ;; libraries. + (add-after 'install 'wrap-bin-redcloth + (lambda* (#:key outputs #:allow-other-keys) + (wrap-program (string-append (assoc-ref outputs "out") + "/bin/redcloth") + `("GEM_HOME" ":" prefix (,(getenv "GEM_HOME")))) + #t))))) + (native-inputs + `(("bundler" ,bundler) + ("ruby-diff-lcs" ,ruby-diff-lcs) + ("ruby-rspec-2" ,ruby-rspec-2))) + (synopsis "Textile markup language parser for Ruby") + (description + "RedCloth is a Ruby parser for the Textile markup language.") + (home-page "http://redcloth.org") + (license license:expat))) + (define-public ruby-pg (package (name "ruby-pg") -- cgit v1.2.3 From a036e59da77a66029786e9a64251484cfe541490 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 12 Dec 2015 17:37:16 -0500 Subject: gnu: tmux: Update to 2.1. * gnu/packages/tmux.scm (tmux): Update to 2.1. --- gnu/packages/tmux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/tmux.scm b/gnu/packages/tmux.scm index 69757a3162..48d50ccafc 100644 --- a/gnu/packages/tmux.scm +++ b/gnu/packages/tmux.scm @@ -28,7 +28,7 @@ (define-module (gnu packages tmux) (define-public tmux (package (name "tmux") - (version "2.0") + (version "2.1") (source (origin (method url-fetch) (uri (string-append @@ -36,7 +36,7 @@ (define-public tmux version "/tmux-" version ".tar.gz")) (sha256 (base32 - "0qnkda8kb747vmbldjpb23ksv9pq3s65xhh1ja5rdsmh8r24npvr")))) + "0xk1mylsb08sf0w597mdgj9s6hxxjvjvjd6bngpjvvxwyixlwmii")))) (build-system gnu-build-system) (inputs `(("libevent" ,libevent) -- cgit v1.2.3 From 75f52fca95536b543a39dbee775c16aff0a67ef0 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 15 Dec 2015 11:45:44 +0200 Subject: gnu: enlightenment: Update to 0.20.1. * gnu/packages/enlightenment.scm (enlightenment): Update to 0.20.1. --- gnu/packages/enlightenment.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index 6224a2a527..3b882d6d28 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -271,7 +271,7 @@ (define-public rage (define-public enlightenment (package (name "enlightenment") - (version "0.20.0") + (version "0.20.1") (source (origin (method url-fetch) (uri @@ -279,7 +279,7 @@ (define-public enlightenment name "/" name "-" version ".tar.xz")) (sha256 (base32 - "0mwiim0nv640v3af7qxc5ajfk702qkl5c1cnqlhz6rqzr5yjapxv")))) + "1vplq5i34shn4q3jzmxr0gw916k7q3prfgcp26h8bmgc7nmi82w2")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--enable-mount-eeze"))) -- cgit v1.2.3 From 2ad9515c50fbb44bfd829682078acfcf6d0d2d19 Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Mon, 14 Dec 2015 20:20:55 +0800 Subject: gnu: youtube-dl: Install man pages and completion files. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/video.scm (youtube-dl) [arguments]: Add fix-the-data-directories phase. Co-authored-by: Ludovic Courtès --- gnu/packages/video.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 76374e2ac6..4f6ef6d7e5 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2015 Efraim Flashner ;;; Copyright © 2015 Andy Patterson ;;; Copyright © 2015 Ricardo Wurmus +;;; Copyright © 2015 Alex Vong ;;; ;;; This file is part of GNU Guix. ;;; @@ -822,6 +823,27 @@ (define-public youtube-dl (build-system python-build-system) (native-inputs `(("python-setuptools" ,python-setuptools))) (home-page "http://youtube-dl.org") + (arguments + ;; The problem here is that the directory for the man page and completion + ;; files is relative, and for some reason, setup.py uses the + ;; auto-detected sys.prefix instead of the user-defined "--prefix=FOO". + ;; So, we need pass the prefix directly. In addition, make sure the Bash + ;; completion file is called 'youtube-dl' rather than + ;; 'youtube-dl.bash-completion'. + `(#:phases (modify-phases %standard-phases + (add-before 'install 'fix-the-data-directories + (lambda* (#:key outputs #:allow-other-keys) + (let ((prefix (assoc-ref outputs "out"))) + (mkdir "bash-completion") + (rename-file "youtube-dl.bash-completion" + "bash-completion/youtube-dl") + (substitute* "setup.py" + (("youtube-dl\\.bash-completion") + "bash-completion/youtube-dl") + (("'etc/") + (string-append "'" prefix "/etc/")) + (("'share/") + (string-append "'" prefix "/share/"))))))))) (synopsis "Download videos from YouTube.com and other sites") (description "Youtube-dl is a small command-line program to download videos from -- cgit v1.2.3 From ca473fc21d9abe774fd94efee06bc48a8587b0c5 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Mon, 14 Dec 2015 12:13:56 +0800 Subject: gnu: tdb: Update to 1.3.8. * gnu/packages/databases.scm (tdb): Update to 1.3.8. [source]: Switch to https URI. --- gnu/packages/databases.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 1eccad59fc..5cac48d081 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -386,14 +386,14 @@ (define-public sqlite (define-public tdb (package (name "tdb") - (version "1.3.0") + (version "1.3.8") (source (origin (method url-fetch) - (uri (string-append "http://samba.org/ftp/tdb/tdb-" + (uri (string-append "https://www.samba.org/ftp/tdb/tdb-" version ".tar.gz")) (sha256 (base32 - "085sd2kii72fr0c4pdc7c7m0xk34nc66wnjp21c83dss826y9gh4")))) + "1cg6gmpgn36dd4bsp3j9k3hyrm87d8hdigqyyqxw5jga4w2aq186")))) (build-system gnu-build-system) (arguments '(#:phases (alist-replace -- cgit v1.2.3 From 9a3a8b8edd95e2f566373ed53d3f6deac4635f0f Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Tue, 15 Dec 2015 19:33:52 +0800 Subject: gnu: clutter-gtk: Propagate inputs. * gnu/packages/gnome.scm (clutter-gtk): Move clutter and gtk+ to 'propagated-inputs'. --- gnu/packages/gnome.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 0a02d08ae3..25cd08faf2 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2760,7 +2760,8 @@ (define-public clutter-gtk (native-inputs `(("pkg-config" ,pkg-config) ("gobject-introspection" ,gobject-introspection))) - (inputs + (propagated-inputs + ;; clutter-gtk.pc refers to all these. `(("clutter" ,clutter) ("gtk+" ,gtk+))) (home-page "http://www.clutter-project.org") -- cgit v1.2.3 From ba3cb5ab5c64076881880a26126daa2c57447bf9 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Tue, 15 Dec 2015 19:39:31 +0800 Subject: gnu: gnome-session: Add input gsettings-desktop-schemas. * gnu/packages/gnome.scm (gnome-session)[build-system]: Switch to GLIB-OR-GTK-BUILD-SYSTEM. [inputs]: Add gsettings-desktop-schemas. --- gnu/packages/gnome.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 25cd08faf2..1ace5943e5 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3745,7 +3745,7 @@ (define-public gnome-session (sha256 (base32 "0icajbzqf5llvp5s8nafwkhwz6a6jmwn4hhs81bk0bpzawyq4zdk")))) - (build-system gnu-build-system) + (build-system glib-or-gtk-build-system) (native-inputs `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc. ("pkg-config" ,pkg-config) @@ -3753,6 +3753,7 @@ (define-public gnome-session ("xsltproc" ,libxslt))) (inputs `(("gnome-desktop" ,gnome-desktop) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) ("gtk+" ,gtk+) ("json-glib" ,json-glib) ("libsm" ,libsm) -- cgit v1.2.3 From 664e6c3a95521b3642160645f96aa0a0867ba918 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 15 Dec 2015 13:05:20 +0200 Subject: gnu: python-keyring: Update to 5.7.1. * gnu/packages/python.scm (python-keyring): Update to 5.7.1. [source]: Change to pypi syntax. [native-inputs]: Add python-setuptools-scm. [arguments]: Remove argument to replace unpack with unzip. --- gnu/packages/python.scm | 23 ++++++----------------- 1 file changed, 6 insertions(+), 17 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index b94dc1dbcc..fd8c4fc5c7 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -838,34 +838,23 @@ (define-public python2-pycrypto (define-public python-keyring (package (name "python-keyring") - (version "3.8") + (version "5.7.1") (source (origin (method url-fetch) - (uri (string-append "https://pypi.python.org/packages/source/k/" - "keyring/keyring-" version ".zip")) + (uri (pypi-uri "keyring" version)) (sha256 (base32 - "1vxazfbcwggyfyramh55shkxs08skhpqrkm6lrrjnygnm8c1l2zg")))) + "1h7a1r9ick7wdd0xb5p63413nvjadna2xawrsvmklsl5ddhm5wrx")))) (build-system python-build-system) (native-inputs - `(("unzip" ,unzip) - ("python-setuptools" ,python-setuptools) + `(("python-setuptools" ,python-setuptools) + ("python-setuptools-scm" ,python-setuptools-scm) ("python-mock" ,python-mock))) (inputs `(("python-pycrypto" ,python-pycrypto))) (arguments - `(#:tests? #f ;TODO: tests require pytest - #:phases - (alist-replace - 'unpack - (lambda _ - (let ((unzip (string-append (assoc-ref %build-inputs "unzip") - "/bin/unzip")) - (source (assoc-ref %build-inputs "source"))) - (and (zero? (system* unzip source)) - (chdir (string-append "keyring-" ,version))))) - %standard-phases))) + `(#:tests? #f)) ;TODO: tests require pytest (home-page "http://bitbucket.org/kang/python-keyring-lib") (synopsis "Store and access your passwords safely") (description -- cgit v1.2.3 From 5bd88cf1e3ebca19dccd68129258e8f365b2ae3c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 15 Dec 2015 13:10:34 +0200 Subject: gnu: python-click: Update to 6.2. * gnu/packages/python.scm (python-click): Update to 6.2. [source]: Change to pypi syntax. --- gnu/packages/python.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index fd8c4fc5c7..6a051014f9 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -2127,15 +2127,13 @@ (define-public python2-certifi (define-public python-click (package (name "python-click") - (version "4.0") + (version "6.2") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/c/click/click-" - version ".tar.gz")) + (uri (pypi-uri "click" version)) (sha256 - (base32 "0294x9g28w6zgswl0rsygkwi0wf6n480gf7fiiw5f9az3xhh77pl")))) + (base32 "10kavbisnk9m93jl2wi34pw7ryr2qbxshh2cysxwxd7bymqgz87v")))) (build-system python-build-system) (native-inputs `(("python-setuptools" ,python-setuptools))) -- cgit v1.2.3 From fceac8803966dd7988b56e1e26b909c7fede0e05 Mon Sep 17 00:00:00 2001 From: Federico Beffa Date: Tue, 15 Dec 2015 17:59:15 +0100 Subject: gnu: python-ipython: Patch 'ctypes' bug. * gnu/packages/patches/python-ipython-inputhook-ctype.patch: New patch. * gnu/packages/python.scm (python-ipython): Use it. * gnu-system.am (dist_patch_DATA): Add it. --- gnu-system.am | 1 + .../patches/python-ipython-inputhook-ctype.patch | 41 ++++++++++++++++++++++ gnu/packages/python.scm | 11 +++--- 3 files changed, 48 insertions(+), 5 deletions(-) create mode 100644 gnu/packages/patches/python-ipython-inputhook-ctype.patch (limited to 'gnu') diff --git a/gnu-system.am b/gnu-system.am index 77a8b2e1c5..0039246e4d 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -640,6 +640,7 @@ dist_patch_DATA = \ gnu/packages/patches/python-3-search-paths.patch \ gnu/packages/patches/python-disable-ssl-test.patch \ gnu/packages/patches/python-fix-tests.patch \ + gnu/packages/patches/python-ipython-inputhook-ctype.patch \ gnu/packages/patches/python2-rdflib-drop-sparqlwrapper.patch \ gnu/packages/patches/python-configobj-setuptools.patch \ gnu/packages/patches/python2-pygobject-2-gi-info-type-error-domain.patch \ diff --git a/gnu/packages/patches/python-ipython-inputhook-ctype.patch b/gnu/packages/patches/python-ipython-inputhook-ctype.patch new file mode 100644 index 0000000000..c77e310542 --- /dev/null +++ b/gnu/packages/patches/python-ipython-inputhook-ctype.patch @@ -0,0 +1,41 @@ +From 04c5d358c7ab74d3ddab4f7662e539393d8604c6 Mon Sep 17 00:00:00 2001 +From: Lucretiel +Date: Wed, 13 May 2015 13:12:43 -0400 +Subject: [PATCH] register now checks for missing ctypes + +If ctypes is None, then no input hooks may be registered; `InputHookManager.register` skips registration of input hook classes. Also updated `__init__` to no longer skip creating the instance attributes, to prevent AttributeError exceptions at load time. +--- + IPython/lib/inputhook.py | 13 +++++++------ + 1 file changed, 7 insertions(+), 6 deletions(-) + +diff --git a/IPython/lib/inputhook.py b/IPython/lib/inputhook.py +index 4ae2cb3..6578365 100644 +--- a/IPython/lib/inputhook.py ++++ b/IPython/lib/inputhook.py +@@ -107,8 +107,8 @@ class InputHookManager(object): + def __init__(self): + if ctypes is None: + warn("IPython GUI event loop requires ctypes, %gui will not be available") +- return +- self.PYFUNC = ctypes.PYFUNCTYPE(ctypes.c_int) ++ else: ++ self.PYFUNC = ctypes.PYFUNCTYPE(ctypes.c_int) + self.guihooks = {} + self.aliases = {} + self.apps = {} +@@ -197,10 +197,11 @@ def enable(self, app=None): + ... + """ + def decorator(cls): +- inst = cls(self) +- self.guihooks[toolkitname] = inst +- for a in aliases: +- self.aliases[a] = toolkitname ++ if ctypes is not None: ++ inst = cls(self) ++ self.guihooks[toolkitname] = inst ++ for a in aliases: ++ self.aliases[a] = toolkitname + return cls + return decorator + diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 6a051014f9..95c24a6a43 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -4194,11 +4194,12 @@ (define-public python-ipython (version "3.2.1") (source (origin - (method url-fetch) - (uri (string-append "https://pypi.python.org/packages/source/i/" - "ipython/ipython-" version ".tar.gz")) - (sha256 - (base32 "0xwin0sa9n0cabx4cq1ibf5ldsiw5dyimibla82kicz5gbpas4y9")))) + (method url-fetch) + (patches (list (search-patch "python-ipython-inputhook-ctype.patch"))) + (uri (string-append "https://pypi.python.org/packages/source/i/" + "ipython/ipython-" version ".tar.gz")) + (sha256 + (base32 "0xwin0sa9n0cabx4cq1ibf5ldsiw5dyimibla82kicz5gbpas4y9")))) (build-system python-build-system) (outputs '("out" "doc")) (propagated-inputs -- cgit v1.2.3 From 8ae95578a7a88554afe9b3bfa03881ee3206485b Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Wed, 16 Dec 2015 10:34:41 -0500 Subject: gnu: linux-libre: Update to 4.3.3. * gnu/packages/linux.scm (linux-libre): Update to 4.3.3. --- 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 4319ed93af..e17e493099 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -212,7 +212,7 @@ (define (lookup file) #f))) (define-public linux-libre - (let* ((version "4.3.2") + (let* ((version "4.3.3") (build-phase '(lambda* (#:key system inputs #:allow-other-keys #:rest args) ;; Apply the neat patch. @@ -286,7 +286,7 @@ (define-public linux-libre (uri (linux-libre-urls version)) (sha256 (base32 - "0d87jbmplv36kxq40k44zh3sj82qp79lf8n4by7jb2wvyk06rvfg")))) + "1z43kzs1pzwq5mkyh7zk8nq38sxlswp65824v54dzwngyc252a18")))) (build-system gnu-build-system) (supported-systems '("x86_64-linux" "i686-linux")) (native-inputs `(("perl" ,perl) -- cgit v1.2.3 From 44157e9f3c238c8ffcc18c64a8bc95dbd20b70b4 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Tue, 15 Dec 2015 02:00:08 -0600 Subject: gnu: Add cpulimit. * gnu/packages/admin.scm (cpulimit): New variable. --- gnu/packages/admin.scm | 43 ++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 42 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 5b9f5d1650..ee275f7251 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès ;;; Copyright © 2013 Cyril Roelandt ;;; Copyright © 2014, 2015 Mark H Weaver -;;; Copyright © 2014 Eric Bavier +;;; Copyright © 2014, 2015 Eric Bavier ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer ;;; Copyright © 2015 Alex Sassmannshausen ;;; Copyright © 2015 Eric Dvorsak @@ -1233,3 +1233,44 @@ (define-public ansible ad-hoc task-execution, and multinode orchestration - including trivializing things like zero downtime rolling updates with load balancers.") (license license:gpl3+))) + +(define-public cpulimit + (package + (name "cpulimit") + (version "0.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/opsengine/cpulimit/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1nn2w849xd5bw4y5sqnll29nxdwl5h0cv4smc7dwmpb9qnd2ycb4")))) + (build-system gnu-build-system) + (arguments + `(#:phases (modify-phases %standard-phases + (delete 'configure) + (replace + 'build + (lambda _ + (zero? (system* "make" "CC=gcc" "-Csrc")))) + (replace + 'check + (lambda _ + (zero? (system* "make" "CC=gcc" "-Ctests")))) + (replace + 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (install-file "src/cpulimit" bin))))))) + (home-page "https://github.com/opsengine/cpulimit") + (synopsis "Limit CPU usage") + (description + "Cpulimit limits the CPU usage of a process. It does not change the nice +value or other scheduling priority settings, but the real CPU usage, and is +able to adapt itself dynamically to the overall system load. Children +processes and threads of the specified process may optionally share the same +limits.") + (license license:gpl2+))) -- cgit v1.2.3 From b809cc9addf27a2233e1e8888637122397b48eaa Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 17 Dec 2015 14:20:46 +0100 Subject: gnu: ruby-unf-ext: Build extension. * gnu/packages/ruby.scm (ruby-unf-ext)[arguments]: Add phase "build-ext" to build "unf_ext.so". --- gnu/packages/ruby.scm | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 1bd3fe2c9a..a3eafb1f58 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -2551,6 +2551,11 @@ (define-public ruby-unf-ext (base32 "0ly2ms6c3irmbr1575ldyh52bz2v0lzzr2gagf0p526k12ld2n5b")))) (build-system ruby-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'build 'build-ext + (lambda _ (zero? (system* "rake" "compile:unf_ext"))))))) (native-inputs `(("bundler" ,bundler) ("ruby-rake-compiler" ,ruby-rake-compiler) -- cgit v1.2.3 From cbbe1a1c2c7ca86e348656ae3b7197d53c2527f2 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 17 Dec 2015 11:24:44 -0500 Subject: gnu: subversion: Update to 1.8.15 [fixes CVE-2015-5343]. * gnu/packages/version-control.scm (subversion): Update to 1.8.15. --- gnu/packages/version-control.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 6861e35bec..171faab784 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -570,14 +570,14 @@ (define-public neon (define-public subversion (package (name "subversion") - (version "1.8.14") + (version "1.8.15") (source (origin (method url-fetch) (uri (string-append "http://archive.apache.org/dist/subversion/" "subversion-" version ".tar.bz2")) (sha256 (base32 - "07ws4bspdgi4r5hbxvk86a15c669iqz6wkfrdph78hddzk6q6f3z")))) + "0b68rjy1sjd66nqcswrm1bhda3vk2ngkgs6drcanmzbcd3vs366g")))) (build-system gnu-build-system) (arguments '(#:phases (alist-cons-after -- cgit v1.2.3 From 3faf214a0b58c10e9838fcbf59f139172fe4a871 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 17 Dec 2015 12:07:13 -0500 Subject: gnu: icecat: Add fixes for several security flaws. * gnu/packages/patches/icecat-CVE-2015-7201-pt1.patch, gnu/packages/patches/icecat-CVE-2015-7201-pt2.patch, gnu/packages/patches/icecat-CVE-2015-7201-pt3.patch, gnu/packages/patches/icecat-CVE-2015-7205.patch, gnu/packages/patches/icecat-CVE-2015-7210.patch, gnu/packages/patches/icecat-CVE-2015-7212.patch, gnu/packages/patches/icecat-CVE-2015-7213-pt1.patch, gnu/packages/patches/icecat-CVE-2015-7213-pt2.patch, gnu/packages/patches/icecat-CVE-2015-7214.patch, gnu/packages/patches/icecat-CVE-2015-7222-pt1.patch, gnu/packages/patches/icecat-CVE-2015-7222-pt2.patch, gnu/packages/patches/icecat-CVE-2015-7222-pt3.patch: New files. * gnu-system.am (dist_patch_DATA): Add them. * gnu/packages/gnuzilla.scm (icecat)[source]: Add patches. --- gnu-system.am | 12 + gnu/packages/gnuzilla.scm | 14 +- .../patches/icecat-CVE-2015-7201-pt1.patch | 123 +++++++ .../patches/icecat-CVE-2015-7201-pt2.patch | 29 ++ .../patches/icecat-CVE-2015-7201-pt3.patch | 35 ++ gnu/packages/patches/icecat-CVE-2015-7205.patch | 84 +++++ gnu/packages/patches/icecat-CVE-2015-7210.patch | 47 +++ gnu/packages/patches/icecat-CVE-2015-7212.patch | 364 +++++++++++++++++++++ .../patches/icecat-CVE-2015-7213-pt1.patch | 32 ++ .../patches/icecat-CVE-2015-7213-pt2.patch | 27 ++ gnu/packages/patches/icecat-CVE-2015-7214.patch | 47 +++ .../patches/icecat-CVE-2015-7222-pt1.patch | 112 +++++++ .../patches/icecat-CVE-2015-7222-pt2.patch | 34 ++ .../patches/icecat-CVE-2015-7222-pt3.patch | 37 +++ 14 files changed, 996 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/icecat-CVE-2015-7201-pt1.patch create mode 100644 gnu/packages/patches/icecat-CVE-2015-7201-pt2.patch create mode 100644 gnu/packages/patches/icecat-CVE-2015-7201-pt3.patch create mode 100644 gnu/packages/patches/icecat-CVE-2015-7205.patch create mode 100644 gnu/packages/patches/icecat-CVE-2015-7210.patch create mode 100644 gnu/packages/patches/icecat-CVE-2015-7212.patch create mode 100644 gnu/packages/patches/icecat-CVE-2015-7213-pt1.patch create mode 100644 gnu/packages/patches/icecat-CVE-2015-7213-pt2.patch create mode 100644 gnu/packages/patches/icecat-CVE-2015-7214.patch create mode 100644 gnu/packages/patches/icecat-CVE-2015-7222-pt1.patch create mode 100644 gnu/packages/patches/icecat-CVE-2015-7222-pt2.patch create mode 100644 gnu/packages/patches/icecat-CVE-2015-7222-pt3.patch (limited to 'gnu') diff --git a/gnu-system.am b/gnu-system.am index 0039246e4d..09525da28f 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -510,6 +510,18 @@ dist_patch_DATA = \ gnu/packages/patches/hop-linker-flags.patch \ gnu/packages/patches/hydra-automake-1.15.patch \ gnu/packages/patches/hydra-disable-darcs-test.patch \ + gnu/packages/patches/icecat-CVE-2015-7201-pt1.patch \ + gnu/packages/patches/icecat-CVE-2015-7201-pt2.patch \ + gnu/packages/patches/icecat-CVE-2015-7201-pt3.patch \ + gnu/packages/patches/icecat-CVE-2015-7205.patch \ + gnu/packages/patches/icecat-CVE-2015-7210.patch \ + gnu/packages/patches/icecat-CVE-2015-7212.patch \ + gnu/packages/patches/icecat-CVE-2015-7213-pt1.patch \ + gnu/packages/patches/icecat-CVE-2015-7213-pt2.patch \ + gnu/packages/patches/icecat-CVE-2015-7214.patch \ + gnu/packages/patches/icecat-CVE-2015-7222-pt1.patch \ + gnu/packages/patches/icecat-CVE-2015-7222-pt2.patch \ + gnu/packages/patches/icecat-CVE-2015-7222-pt3.patch \ gnu/packages/patches/icecat-avoid-bundled-includes.patch \ gnu/packages/patches/icecat-freetype-2.6.patch \ gnu/packages/patches/icu4c-CVE-2014-6585.patch \ diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 6d134a89c7..8125a262aa 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -276,7 +276,19 @@ (define-public icecat (sha256 (base32 "0rcaa19rfgclwd2qvcz8798m57jjzra6kaxg5dniysajvx7qndfp")) - (patches (map search-patch '("icecat-avoid-bundled-includes.patch" + (patches (map search-patch '("icecat-CVE-2015-7210.patch" + "icecat-CVE-2015-7205.patch" + "icecat-CVE-2015-7201-pt1.patch" + "icecat-CVE-2015-7201-pt2.patch" + "icecat-CVE-2015-7212.patch" + "icecat-CVE-2015-7213-pt1.patch" + "icecat-CVE-2015-7213-pt2.patch" + "icecat-CVE-2015-7222-pt1.patch" + "icecat-CVE-2015-7222-pt2.patch" + "icecat-CVE-2015-7222-pt3.patch" + "icecat-CVE-2015-7214.patch" + "icecat-CVE-2015-7201-pt3.patch" + "icecat-avoid-bundled-includes.patch" "icecat-freetype-2.6.patch"))) (modules '((guix build utils))) (snippet diff --git a/gnu/packages/patches/icecat-CVE-2015-7201-pt1.patch b/gnu/packages/patches/icecat-CVE-2015-7201-pt1.patch new file mode 100644 index 0000000000..0fcfe9b409 --- /dev/null +++ b/gnu/packages/patches/icecat-CVE-2015-7201-pt1.patch @@ -0,0 +1,123 @@ +From e2bbd632e220be7626efd34acb9a517430d36004 Mon Sep 17 00:00:00 2001 +From: Andrew Comminos +Date: Fri, 23 Oct 2015 21:35:16 -0700 +Subject: [PATCH] Bug 1203135 - Terminate linking if maximum vertex attribute + count is exceeded on Mesa. r=jgilbert, a=ritu + +--HG-- +extra : source : 8021382da9722db0ad97ebd93698b69a74f0d9b0 +extra : intermediate-source : 90eff805d2810e9d9ea88f6869335b0500b1a536 +--- + dom/canvas/WebGLProgram.cpp | 28 ++++++++++++++++++---------- + dom/canvas/WebGLShader.cpp | 10 ++++++++++ + dom/canvas/WebGLShader.h | 1 + + dom/canvas/WebGLShaderValidator.cpp | 6 ++++++ + dom/canvas/WebGLShaderValidator.h | 1 + + 5 files changed, 36 insertions(+), 10 deletions(-) + +diff --git a/dom/canvas/WebGLProgram.cpp b/dom/canvas/WebGLProgram.cpp +index 78f7413..0e056e8 100644 +--- a/dom/canvas/WebGLProgram.cpp ++++ b/dom/canvas/WebGLProgram.cpp +@@ -569,18 +569,26 @@ WebGLProgram::LinkProgram() + gl::GLContext* gl = mContext->gl; + gl->MakeCurrent(); + +- // Bug 777028: Mesa can't handle more than 16 samplers per program, +- // counting each array entry. +- size_t numSamplerUniforms_upperBound = mVertShader->CalcNumSamplerUniforms() + +- mFragShader->CalcNumSamplerUniforms(); + if (gl->WorkAroundDriverBugs() && +- mContext->mIsMesa && +- numSamplerUniforms_upperBound > 16) ++ mContext->mIsMesa) + { +- mLinkLog.AssignLiteral("Programs with more than 16 samplers are disallowed on" +- " Mesa drivers to avoid crashing."); +- mContext->GenerateWarning("linkProgram: %s", mLinkLog.BeginReading()); +- return false; ++ // Bug 777028: Mesa can't handle more than 16 samplers per program, ++ // counting each array entry. ++ size_t numSamplerUniforms_upperBound = mVertShader->CalcNumSamplerUniforms() + ++ mFragShader->CalcNumSamplerUniforms(); ++ if (numSamplerUniforms_upperBound > 16) { ++ mLinkLog.AssignLiteral("Programs with more than 16 samplers are disallowed on" ++ " Mesa drivers to avoid crashing."); ++ mContext->GenerateWarning("linkProgram: %s", mLinkLog.BeginReading()); ++ return false; ++ } ++ ++ // Bug 1203135: Mesa crashes internally if we exceed the reported maximum attribute count. ++ if (mVertShader->NumAttributes() > mContext->MaxVertexAttribs()) { ++ mLinkLog.AssignLiteral("Number of attributes exceeds Mesa's reported max attribute count."); ++ mContext->GenerateWarning("linkProgram: %s", mLinkLog.BeginReading()); ++ return false; ++ } + } + + // Bind the attrib locations. +diff --git a/dom/canvas/WebGLShader.cpp b/dom/canvas/WebGLShader.cpp +index 85a3809..bab4157 100644 +--- a/dom/canvas/WebGLShader.cpp ++++ b/dom/canvas/WebGLShader.cpp +@@ -299,6 +299,16 @@ WebGLShader::CalcNumSamplerUniforms() const + return 0; + } + ++size_t ++WebGLShader::NumAttributes() const ++{ ++ if (mValidator) ++ return mValidator->NumAttributes(); ++ ++ // TODO ++ return 0; ++} ++ + void + WebGLShader::BindAttribLocation(GLuint prog, const nsCString& userName, + GLuint index) const +diff --git a/dom/canvas/WebGLShader.h b/dom/canvas/WebGLShader.h +index 698e30c..2c80b16a 100644 +--- a/dom/canvas/WebGLShader.h ++++ b/dom/canvas/WebGLShader.h +@@ -45,6 +45,7 @@ public: + // Util funcs + bool CanLinkTo(const WebGLShader* prev, nsCString* const out_log) const; + size_t CalcNumSamplerUniforms() const; ++ size_t NumAttributes() const; + void BindAttribLocation(GLuint prog, const nsCString& userName, GLuint index) const; + bool FindAttribUserNameByMappedName(const nsACString& mappedName, + nsDependentCString* const out_userName) const; +diff --git a/dom/canvas/WebGLShaderValidator.cpp b/dom/canvas/WebGLShaderValidator.cpp +index 80005e2..8bedf88 100644 +--- a/dom/canvas/WebGLShaderValidator.cpp ++++ b/dom/canvas/WebGLShaderValidator.cpp +@@ -274,6 +274,12 @@ ShaderValidator::CalcNumSamplerUniforms() const + return accum; + } + ++size_t ++ShaderValidator::NumAttributes() const ++{ ++ return ShGetAttributes(mHandle)->size(); ++} ++ + // Attribs cannot be structs or arrays, and neither can vertex inputs in ES3. + // Therefore, attrib names are always simple. + bool +diff --git a/dom/canvas/WebGLShaderValidator.h b/dom/canvas/WebGLShaderValidator.h +index 35db2f1..1f794bf0 100644 +--- a/dom/canvas/WebGLShaderValidator.h ++++ b/dom/canvas/WebGLShaderValidator.h +@@ -41,6 +41,7 @@ public: + void GetOutput(nsACString* out) const; + bool CanLinkTo(const ShaderValidator* prev, nsCString* const out_log) const; + size_t CalcNumSamplerUniforms() const; ++ size_t NumAttributes() const; + + bool FindAttribUserNameByMappedName(const std::string& mappedName, + const std::string** const out_userName) const; +-- +2.6.3 + diff --git a/gnu/packages/patches/icecat-CVE-2015-7201-pt2.patch b/gnu/packages/patches/icecat-CVE-2015-7201-pt2.patch new file mode 100644 index 0000000000..3764371a11 --- /dev/null +++ b/gnu/packages/patches/icecat-CVE-2015-7201-pt2.patch @@ -0,0 +1,29 @@ +From f02e3252391f5fa79916e4c8f30b3d8340d06cc7 Mon Sep 17 00:00:00 2001 +From: "Carsten \"Tomcat\" Book" +Date: Tue, 8 Dec 2015 12:38:15 +0100 +Subject: [PATCH] Bug 1225250 - fix stride on SourceSurfaceSkia when + initialized from GPU texture. r=jmuizelaar, a=lizzard + +--- + gfx/2d/SourceSurfaceSkia.cpp | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/gfx/2d/SourceSurfaceSkia.cpp b/gfx/2d/SourceSurfaceSkia.cpp +index 4b95bc2..d7e0714 100644 +--- a/gfx/2d/SourceSurfaceSkia.cpp ++++ b/gfx/2d/SourceSurfaceSkia.cpp +@@ -110,8 +110,10 @@ SourceSurfaceSkia::InitFromTexture(DrawTargetSkia* aOwner, + GrTexture *skiaTexture = aOwner->mGrContext->wrapBackendTexture(skiaTexGlue); + SkImageInfo imgInfo = SkImageInfo::Make(aSize.width, aSize.height, GfxFormatToSkiaColorType(aFormat), kOpaque_SkAlphaType); + SkGrPixelRef *texRef = new SkGrPixelRef(imgInfo, skiaTexture, false); +- mBitmap.setInfo(imgInfo, aSize.width*aSize.height*4); ++ mBitmap.setInfo(imgInfo); + mBitmap.setPixelRef(texRef); ++ mFormat = aFormat; ++ mStride = mBitmap.rowBytes(); + + mDrawTarget = aOwner; + return true; +-- +2.6.3 + diff --git a/gnu/packages/patches/icecat-CVE-2015-7201-pt3.patch b/gnu/packages/patches/icecat-CVE-2015-7201-pt3.patch new file mode 100644 index 0000000000..022ab5cc16 --- /dev/null +++ b/gnu/packages/patches/icecat-CVE-2015-7201-pt3.patch @@ -0,0 +1,35 @@ +From 567a97b6347ac8c2b93ec788c437b7e9bb23ef75 Mon Sep 17 00:00:00 2001 +From: Edwin Flores +Date: Wed, 2 Dec 2015 16:15:29 +0100 +Subject: [PATCH] Bug 1224100 - Initialize padding to 0 in Downscaler. r=seth, + a=sledru + +--- + image/src/Downscaler.cpp | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/image/src/Downscaler.cpp b/image/src/Downscaler.cpp +index 24ecfda..2a7acfd 100644 +--- a/image/src/Downscaler.cpp ++++ b/image/src/Downscaler.cpp +@@ -86,11 +86,16 @@ Downscaler::BeginFrame(const nsIntSize& aOriginalSize, + mTargetSize.height, mYFilter.get()); + + // Allocate the buffer, which contains scanlines of the original image. +- mRowBuffer = MakeUnique(mOriginalSize.width * sizeof(uint32_t)); ++ size_t bufferLen = mOriginalSize.width * sizeof(uint32_t); ++ mRowBuffer = MakeUnique(bufferLen); + if (MOZ_UNLIKELY(!mRowBuffer)) { + return NS_ERROR_OUT_OF_MEMORY; + } + ++ // Zero buffer to keep valgrind happy. ++ memset(mRowBuffer.get(), 0, bufferLen); ++ ++ + // Allocate the window, which contains horizontally downscaled scanlines. (We + // can store scanlines which are already downscale because our downscaling + // filter is separable.) +-- +2.6.3 + diff --git a/gnu/packages/patches/icecat-CVE-2015-7205.patch b/gnu/packages/patches/icecat-CVE-2015-7205.patch new file mode 100644 index 0000000000..620fa0d6bd --- /dev/null +++ b/gnu/packages/patches/icecat-CVE-2015-7205.patch @@ -0,0 +1,84 @@ +From 20df7b0b3f3e7dd201c9811bbb1e6515da8da359 Mon Sep 17 00:00:00 2001 +From: Randell Jesup +Date: Thu, 5 Nov 2015 10:17:29 -0500 +Subject: [PATCH] Bug 1220493 - validate RTP packets against underflows. + r=pkerr a=sylvestre + +--HG-- +extra : source : 575d3aa376b1c8e7507d94833f7b74bf963127cb +extra : intermediate-source : 2c1b396ef5c3e2424fb9af56d86ebf6f6551a997 +--- + .../webrtc/modules/rtp_rtcp/source/rtp_utility.cc | 26 ++++++++++++---------- + 1 file changed, 14 insertions(+), 12 deletions(-) + +diff --git a/media/webrtc/trunk/webrtc/modules/rtp_rtcp/source/rtp_utility.cc b/media/webrtc/trunk/webrtc/modules/rtp_rtcp/source/rtp_utility.cc +index 9334b23..80cf55a 100644 +--- a/media/webrtc/trunk/webrtc/modules/rtp_rtcp/source/rtp_utility.cc ++++ b/media/webrtc/trunk/webrtc/modules/rtp_rtcp/source/rtp_utility.cc +@@ -338,12 +338,6 @@ bool RtpHeaderParser::Parse(RTPHeader& header, + return false; + } + +- const uint8_t CSRCocts = CC * 4; +- +- if ((ptr + CSRCocts) > _ptrRTPDataEnd) { +- return false; +- } +- + header.markerBit = M; + header.payloadType = PT; + header.sequenceNumber = sequenceNumber; +@@ -352,6 +346,14 @@ bool RtpHeaderParser::Parse(RTPHeader& header, + header.numCSRCs = CC; + header.paddingLength = P ? *(_ptrRTPDataEnd - 1) : 0; + ++ // 12 == sizeof(RFC rtp header) == kRtpMinParseLength, each CSRC=4 bytes ++ header.headerLength = 12 + (CC * 4); ++ // not a full validation, just safety against underflow. Padding must ++ // start after the header. We can have 0 payload bytes left, note. ++ if (header.paddingLength + header.headerLength > length) { ++ return false; ++ } ++ + for (unsigned int i = 0; i < CC; ++i) { + uint32_t CSRC = *ptr++ << 24; + CSRC += *ptr++ << 16; +@@ -359,8 +361,7 @@ bool RtpHeaderParser::Parse(RTPHeader& header, + CSRC += *ptr++; + header.arrOfCSRCs[i] = CSRC; + } +- +- header.headerLength = 12 + CSRCocts; ++ assert((ptr - _ptrRTPDataBegin) == header.headerLength); + + // If in effect, MAY be omitted for those packets for which the offset + // is zero. +@@ -385,8 +386,9 @@ bool RtpHeaderParser::Parse(RTPHeader& header, + | header extension | + | .... | + */ +- const ptrdiff_t remain = _ptrRTPDataEnd - ptr; +- if (remain < 4) { ++ // earlier test ensures we have at least paddingLength bytes left ++ const ptrdiff_t remain = (_ptrRTPDataEnd - ptr) - header.paddingLength; ++ if (remain < 4) { // minimum header extension length = 32 bits + return false; + } + +@@ -395,11 +397,11 @@ bool RtpHeaderParser::Parse(RTPHeader& header, + uint16_t definedByProfile = *ptr++ << 8; + definedByProfile += *ptr++; + +- uint16_t XLen = *ptr++ << 8; ++ size_t XLen = *ptr++ << 8; + XLen += *ptr++; // in 32 bit words + XLen *= 4; // in octs + +- if (remain < (4 + XLen)) { ++ if (remain < (4 + XLen)) { // we already accounted for padding + return false; + } + if (definedByProfile == kRtpOneByteHeaderExtensionId) { +-- +2.6.3 + diff --git a/gnu/packages/patches/icecat-CVE-2015-7210.patch b/gnu/packages/patches/icecat-CVE-2015-7210.patch new file mode 100644 index 0000000000..eab57021db --- /dev/null +++ b/gnu/packages/patches/icecat-CVE-2015-7210.patch @@ -0,0 +1,47 @@ +From 4e0cd9ba4924869f91be0e7c8cf666182bb75f90 Mon Sep 17 00:00:00 2001 +From: "Byron Campen [:bwc]" +Date: Wed, 28 Oct 2015 12:48:17 -0500 +Subject: [PATCH] Bug 1218326 - Prevent datachannel operations on closed + PeerConnections. r=jesup a=sylvestre + +--HG-- +extra : source : a7637b62d9b5ab73f58e5aa3c663d7d35b624826 +extra : intermediate-source : d8f0412f38f75040064157d8d2b0140df21600e6 +--- + media/webrtc/signaling/src/peerconnection/PeerConnectionImpl.cpp | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/media/webrtc/signaling/src/peerconnection/PeerConnectionImpl.cpp b/media/webrtc/signaling/src/peerconnection/PeerConnectionImpl.cpp +index c3d8d26..fe86ff7 100644 +--- a/media/webrtc/signaling/src/peerconnection/PeerConnectionImpl.cpp ++++ b/media/webrtc/signaling/src/peerconnection/PeerConnectionImpl.cpp +@@ -1004,7 +1004,7 @@ PeerConnectionImpl::GetIdentity() const + NS_IMETHODIMP + PeerConnectionImpl::EnsureDataConnection(uint16_t aNumstreams) + { +- PC_AUTO_ENTER_API_CALL_NO_CHECK(); ++ PC_AUTO_ENTER_API_CALL(false); + + #ifdef MOZILLA_INTERNAL_API + if (mDataConnection) { +@@ -1102,7 +1102,7 @@ PeerConnectionImpl::GetDatachannelParameters( + nsresult + PeerConnectionImpl::InitializeDataChannel() + { +- PC_AUTO_ENTER_API_CALL_NO_CHECK(); ++ PC_AUTO_ENTER_API_CALL(false); + CSFLogDebug(logTag, "%s", __FUNCTION__); + + const JsepApplicationCodecDescription* codec; +@@ -1184,7 +1184,7 @@ PeerConnectionImpl::CreateDataChannel(const nsAString& aLabel, + uint16_t aStream, + nsDOMDataChannel** aRetval) + { +- PC_AUTO_ENTER_API_CALL_NO_CHECK(); ++ PC_AUTO_ENTER_API_CALL(false); + MOZ_ASSERT(aRetval); + + #ifdef MOZILLA_INTERNAL_API +-- +2.6.3 + diff --git a/gnu/packages/patches/icecat-CVE-2015-7212.patch b/gnu/packages/patches/icecat-CVE-2015-7212.patch new file mode 100644 index 0000000000..7bda486ff7 --- /dev/null +++ b/gnu/packages/patches/icecat-CVE-2015-7212.patch @@ -0,0 +1,364 @@ +From 595e3a152ff2912a950defd0ef4b5f659135b03a Mon Sep 17 00:00:00 2001 +From: Nicolas Silva +Date: Wed, 18 Nov 2015 16:59:11 +0100 +Subject: [PATCH] Bug 1222809 - Don't try to allocate unreasonably large + textures. r=Bas, a=sylvestre + +--- + gfx/2d/2D.h | 25 ++++++++++-- + gfx/2d/Factory.cpp | 67 ++++++++++++++++++++++++++++----- + gfx/layers/ImageDataSerializer.cpp | 21 ++++++----- + gfx/layers/YCbCrImageDataSerializer.cpp | 7 ++++ + gfx/layers/client/TextureClient.cpp | 12 ++++++ + gfx/thebes/gfxPlatform.cpp | 15 ++++++-- + gfx/thebes/gfxPrefs.h | 3 ++ + 7 files changed, 124 insertions(+), 26 deletions(-) + +diff --git a/gfx/2d/2D.h b/gfx/2d/2D.h +index cf35bb2..b1e0e3e 100644 +--- a/gfx/2d/2D.h ++++ b/gfx/2d/2D.h +@@ -1082,22 +1082,41 @@ struct TileSet + size_t mTileCount; + }; + ++struct Config { ++ LogForwarder* mLogForwarder; ++ int32_t mMaxTextureSize; ++ int32_t mMaxAllocSize; ++ ++ Config() ++ : mLogForwarder(nullptr) ++ , mMaxTextureSize(8192) ++ , mMaxAllocSize(52000000) ++ {} ++}; ++ + class GFX2D_API Factory + { + public: ++ static void Init(const Config& aConfig); ++ static void ShutDown(); ++ + static bool HasSSE2(); + + /** Make sure that the given dimensions don't overflow a 32-bit signed int + * using 4 bytes per pixel; optionally, make sure that either dimension + * doesn't exceed the given limit. + */ +- static bool CheckSurfaceSize(const IntSize &sz, int32_t limit = 0); ++ static bool CheckSurfaceSize(const IntSize &sz, ++ int32_t limit = 0, ++ int32_t allocLimit = 0); + + /** Make sure the given dimension satisfies the CheckSurfaceSize and is + * within 8k limit. The 8k value is chosen a bit randomly. + */ + static bool ReasonableSurfaceSize(const IntSize &aSize); + ++ static bool AllowedSurfaceSize(const IntSize &aSize); ++ + static TemporaryRef CreateDrawTargetForCairoSurface(cairo_surface_t* aSurface, const IntSize& aSize, SurfaceFormat* aFormat = nullptr); + + static TemporaryRef +@@ -1171,10 +1190,10 @@ public: + + static uint32_t GetMaxSurfaceSize(BackendType aType); + +- static LogForwarder* GetLogForwarder() { return mLogForwarder; } ++ static LogForwarder* GetLogForwarder() { return sConfig ? sConfig->mLogForwarder : nullptr; } + + private: +- static LogForwarder* mLogForwarder; ++ static Config* sConfig; + public: + + #ifdef USE_SKIA_GPU +diff --git a/gfx/2d/Factory.cpp b/gfx/2d/Factory.cpp +index 948d3c3..6750c28 100644 +--- a/gfx/2d/Factory.cpp ++++ b/gfx/2d/Factory.cpp +@@ -188,6 +188,35 @@ ID2D1Device *Factory::mD2D1Device; + + DrawEventRecorder *Factory::mRecorder; + ++mozilla::gfx::Config* Factory::sConfig = nullptr; ++ ++void ++Factory::Init(const Config& aConfig) ++{ ++ MOZ_ASSERT(!sConfig); ++ sConfig = new Config(aConfig); ++ ++ // Make sure we don't completely break rendering because of a typo in the ++ // pref or whatnot. ++ const int32_t kMinAllocPref = 10000000; ++ const int32_t kMinSizePref = 2048; ++ if (sConfig->mMaxAllocSize < kMinAllocPref) { ++ sConfig->mMaxAllocSize = kMinAllocPref; ++ } ++ if (sConfig->mMaxTextureSize < kMinSizePref) { ++ sConfig->mMaxTextureSize = kMinSizePref; ++ } ++} ++ ++void ++Factory::ShutDown() ++{ ++ if (sConfig) { ++ delete sConfig; ++ sConfig = nullptr; ++ } ++} ++ + bool + Factory::HasSSE2() + { +@@ -222,11 +251,25 @@ inline int LoggerOptionsBasedOnSize(const IntSize& aSize) + bool + Factory::ReasonableSurfaceSize(const IntSize &aSize) + { +- return Factory::CheckSurfaceSize(aSize,8192); ++ return Factory::CheckSurfaceSize(aSize, 8192); ++} ++ ++bool ++Factory::AllowedSurfaceSize(const IntSize &aSize) ++{ ++ if (sConfig) { ++ return Factory::CheckSurfaceSize(aSize, ++ sConfig->mMaxTextureSize, ++ sConfig->mMaxAllocSize); ++ } ++ ++ return CheckSurfaceSize(aSize); + } + + bool +-Factory::CheckSurfaceSize(const IntSize &sz, int32_t limit) ++Factory::CheckSurfaceSize(const IntSize &sz, ++ int32_t extentLimit, ++ int32_t allocLimit) + { + if (sz.width <= 0 || sz.height <= 0) { + gfxDebug() << "Surface width or height <= 0!"; +@@ -234,8 +277,8 @@ Factory::CheckSurfaceSize(const IntSize &sz, int32_t limit) + } + + // reject images with sides bigger than limit +- if (limit && (sz.width > limit || sz.height > limit)) { +- gfxDebug() << "Surface size too large (exceeds caller's limit)!"; ++ if (extentLimit && (sz.width > extentLimit || sz.height > extentLimit)) { ++ gfxDebug() << "Surface size too large (exceeds extent limit)!"; + return false; + } + +@@ -267,13 +310,18 @@ Factory::CheckSurfaceSize(const IntSize &sz, int32_t limit) + return false; + } + ++ if (allocLimit && allocLimit < numBytes.value()) { ++ gfxDebug() << "Surface size too large (exceeds allocation limit)!"; ++ return false; ++ } ++ + return true; + } + + TemporaryRef + Factory::CreateDrawTarget(BackendType aBackend, const IntSize &aSize, SurfaceFormat aFormat) + { +- if (!CheckSurfaceSize(aSize)) { ++ if (!AllowedSurfaceSize(aSize)) { + gfxCriticalError(LoggerOptionsBasedOnSize(aSize)) << "Failed to allocate a surface due to invalid size " << aSize; + return nullptr; + } +@@ -364,7 +412,7 @@ Factory::CreateDrawTargetForData(BackendType aBackend, + SurfaceFormat aFormat) + { + MOZ_ASSERT(aData); +- if (!CheckSurfaceSize(aSize)) { ++ if (!AllowedSurfaceSize(aSize)) { + gfxCriticalError(LoggerOptionsBasedOnSize(aSize)) << "Failed to allocate a surface due to invalid size " << aSize; + return nullptr; + } +@@ -835,7 +883,7 @@ Factory::CreateDataSourceSurface(const IntSize &aSize, + SurfaceFormat aFormat, + bool aZero) + { +- if (!CheckSurfaceSize(aSize)) { ++ if (!AllowedSurfaceSize(aSize)) { + gfxCriticalError(LoggerOptionsBasedOnSize(aSize)) << "Failed to allocate a surface due to invalid size " << aSize; + return nullptr; + } +@@ -881,14 +929,13 @@ Factory::SetGlobalEventRecorder(DrawEventRecorder *aRecorder) + mRecorder = aRecorder; + } + +-LogForwarder* Factory::mLogForwarder = nullptr; +- + // static + void + Factory::SetLogForwarder(LogForwarder* aLogFwd) { +- mLogForwarder = aLogFwd; ++ sConfig->mLogForwarder = aLogFwd; + } + ++ + // static + void + CriticalLogger::OutputMessage(const std::string &aString, +diff --git a/gfx/layers/ImageDataSerializer.cpp b/gfx/layers/ImageDataSerializer.cpp +index 5dd6aca..331dd04 100644 +--- a/gfx/layers/ImageDataSerializer.cpp ++++ b/gfx/layers/ImageDataSerializer.cpp +@@ -84,21 +84,23 @@ ImageDataSerializerBase::ComputeMinBufferSize(IntSize aSize, + SurfaceFormat aFormat) + { + MOZ_ASSERT(aSize.height >= 0 && aSize.width >= 0); +- if (aSize.height <= 0 || aSize.width <= 0) { +- gfxDebug() << "Non-positive image buffer size request " << aSize.width << "x" << aSize.height; ++ ++ // This takes care of checking whether there could be overflow ++ // with enough margin for the metadata. ++ if (!gfx::Factory::AllowedSurfaceSize(aSize)) { + return 0; + } + +- CheckedInt bufsize = ComputeStride(aFormat, aSize.width); +- bufsize *= aSize.height; ++ int32_t bufsize = GetAlignedStride<16>(ComputeStride(aFormat, aSize.width) ++ * aSize.height) ++ + SurfaceBufferInfo::GetOffset(); + +- if (!bufsize.isValid() || bufsize.value() <= 0) { +- gfxDebug() << "Buffer size overflow " << aSize.width << "x" << aSize.height; ++ if (bufsize < 0) { ++ // This should not be possible thanks to Factory::AllowedSurfaceSize + return 0; + } + +- return SurfaceBufferInfo::GetOffset() +- + GetAlignedStride<16>(bufsize.value()); ++ return bufsize; + } + + void +@@ -114,7 +116,8 @@ ImageDataSerializerBase::Validate() + } + size_t requiredSize = + ComputeMinBufferSize(IntSize(info->width, info->height), info->format); +- mIsValid = requiredSize <= mDataSize; ++ ++ mIsValid = !!requiredSize && requiredSize <= mDataSize; + } + + uint8_t* +diff --git a/gfx/layers/YCbCrImageDataSerializer.cpp b/gfx/layers/YCbCrImageDataSerializer.cpp +index c8e148d..05f5ab2 100644 +--- a/gfx/layers/YCbCrImageDataSerializer.cpp ++++ b/gfx/layers/YCbCrImageDataSerializer.cpp +@@ -150,6 +150,13 @@ YCbCrImageDataDeserializerBase::ComputeMinBufferSize(const gfx::IntSize& aYSize, + gfxDebug() << "Non-positive YCbCr buffer size request " << aYSize.height << "x" << aYSize.width << ", " << aCbCrSize.height << "x" << aCbCrSize.width; + return 0; + } ++ ++ if (!gfx::Factory::AllowedSurfaceSize(aYSize) || ++ aCbCrSize.width > aYSize.width || ++ aCbCrSize.height > aYSize.height) { ++ return 0; ++ } ++ + return ComputeOffset(aYSize.height, aYStride) + + 2 * ComputeOffset(aCbCrSize.height, aCbCrStride) + + MOZ_ALIGN_WORD(sizeof(YCbCrBufferInfo)); +diff --git a/gfx/layers/client/TextureClient.cpp b/gfx/layers/client/TextureClient.cpp +index 9b45ca0..6ae7cbf 100644 +--- a/gfx/layers/client/TextureClient.cpp ++++ b/gfx/layers/client/TextureClient.cpp +@@ -315,6 +315,10 @@ TextureClient::CreateForDrawing(ISurfaceAllocator* aAllocator, + aMoz2DBackend = gfxPlatform::GetPlatform()->GetContentBackend(); + } + ++ if (!gfx::Factory::AllowedSurfaceSize(aSize)) { ++ return nullptr; ++ } ++ + RefPtr texture; + + #if defined(MOZ_WIDGET_GONK) || defined(XP_WIN) +@@ -415,6 +419,10 @@ TextureClient::CreateForRawBufferAccess(ISurfaceAllocator* aAllocator, + TextureFlags aTextureFlags, + TextureAllocationFlags aAllocFlags) + { ++ if (!gfx::Factory::AllowedSurfaceSize(aSize)) { ++ return nullptr; ++ } ++ + RefPtr texture = + CreateBufferTextureClient(aAllocator, aFormat, + aTextureFlags, aMoz2DBackend); +@@ -434,6 +442,10 @@ TextureClient::CreateForYCbCr(ISurfaceAllocator* aAllocator, + StereoMode aStereoMode, + TextureFlags aTextureFlags) + { ++ if (!gfx::Factory::AllowedSurfaceSize(aYSize)) { ++ return nullptr; ++ } ++ + RefPtr texture; + if (aAllocator->IsSameProcess()) { + texture = new MemoryTextureClient(aAllocator, gfx::SurfaceFormat::YUV, +diff --git a/gfx/thebes/gfxPlatform.cpp b/gfx/thebes/gfxPlatform.cpp +index 41e4b0c..209a0a8 100644 +--- a/gfx/thebes/gfxPlatform.cpp ++++ b/gfx/thebes/gfxPlatform.cpp +@@ -458,13 +458,18 @@ gfxPlatform::Init() + } + gEverInitialized = true; + +- CrashStatsLogForwarder* logForwarder = new CrashStatsLogForwarder("GraphicsCriticalError"); +- mozilla::gfx::Factory::SetLogForwarder(logForwarder); +- + // Initialize the preferences by creating the singleton. + gfxPrefs::GetSingleton(); + +- logForwarder->SetCircularBufferSize(gfxPrefs::GfxLoggingCrashLength()); ++ auto fwd = new CrashStatsLogForwarder("GraphicsCriticalError"); ++ fwd->SetCircularBufferSize(gfxPrefs::GfxLoggingCrashLength()); ++ ++ mozilla::gfx::Config cfg; ++ cfg.mLogForwarder = fwd; ++ cfg.mMaxTextureSize = gfxPrefs::MaxTextureSize(); ++ cfg.mMaxAllocSize = gfxPrefs::MaxAllocSize(); ++ ++ gfx::Factory::Init(cfg); + + gGfxPlatformPrefsLock = new Mutex("gfxPlatform::gGfxPlatformPrefsLock"); + +@@ -641,6 +646,8 @@ gfxPlatform::Shutdown() + delete mozilla::gfx::Factory::GetLogForwarder(); + mozilla::gfx::Factory::SetLogForwarder(nullptr); + ++ gfx::Factory::ShutDown(); ++ + delete gGfxPlatformPrefsLock; + + gfxPrefs::DestroySingleton(); +diff --git a/gfx/thebes/gfxPrefs.h b/gfx/thebes/gfxPrefs.h +index b7a5fb9..038e1ff 100644 +--- a/gfx/thebes/gfxPrefs.h ++++ b/gfx/thebes/gfxPrefs.h +@@ -209,6 +209,9 @@ private: + DECL_GFX_PREF(Live, "gfx.layerscope.port", LayerScopePort, int32_t, 23456); + // Note that "gfx.logging.level" is defined in Logging.h + DECL_GFX_PREF(Once, "gfx.logging.crash.length", GfxLoggingCrashLength, uint32_t, 6); ++ // The maximums here are quite conservative, we can tighten them if problems show up. ++ DECL_GFX_PREF(Once, "gfx.max-alloc-size", MaxAllocSize, int32_t, (int32_t)500000000); ++ DECL_GFX_PREF(Once, "gfx.max-texture-size", MaxTextureSize, int32_t, (int32_t)32767); + DECL_GFX_PREF(Live, "gfx.perf-warnings.enabled", PerfWarnings, bool, false); + DECL_GFX_PREF(Once, "gfx.work-around-driver-bugs", WorkAroundDriverBugs, bool, true); + +-- +2.6.3 + diff --git a/gnu/packages/patches/icecat-CVE-2015-7213-pt1.patch b/gnu/packages/patches/icecat-CVE-2015-7213-pt1.patch new file mode 100644 index 0000000000..854c91b8aa --- /dev/null +++ b/gnu/packages/patches/icecat-CVE-2015-7213-pt1.patch @@ -0,0 +1,32 @@ +From 3f31bf9e243fb3de26e36d6be0bb0153f51c5b2a Mon Sep 17 00:00:00 2001 +From: Jean-Yves Avenard +Date: Wed, 9 Dec 2015 09:54:58 +0100 +Subject: [PATCH] Bug 1206211 - P1. Ensure operation can't overflow. + r=kentuckyfriedtakahe, a=sylvestre + +--- + .../frameworks/av/media/libstagefright/MPEG4Extractor.cpp | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp b/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp +index 22163fa..318152a 100644 +--- a/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp ++++ b/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp +@@ -508,10 +508,13 @@ status_t MPEG4Extractor::readMetaData() { + CHECK_NE(err, (status_t)NO_INIT); + + // copy pssh data into file metadata +- int psshsize = 0; ++ uint64_t psshsize = 0; + for (size_t i = 0; i < mPssh.size(); i++) { + psshsize += 20 + mPssh[i].datalen; + } ++ if (psshsize > kMAX_ALLOCATION) { ++ return ERROR_MALFORMED; ++ } + if (psshsize) { + char *buf = (char*)malloc(psshsize); + char *ptr = buf; +-- +2.6.3 + diff --git a/gnu/packages/patches/icecat-CVE-2015-7213-pt2.patch b/gnu/packages/patches/icecat-CVE-2015-7213-pt2.patch new file mode 100644 index 0000000000..20bbd36281 --- /dev/null +++ b/gnu/packages/patches/icecat-CVE-2015-7213-pt2.patch @@ -0,0 +1,27 @@ +From bb6870bd6dc3acb183f44360c7cc6488656f47ea Mon Sep 17 00:00:00 2001 +From: Jean-Yves Avenard +Date: Wed, 9 Dec 2015 09:55:16 +0100 +Subject: [PATCH] Bug 1206211 - P2. Abort on OOM. r=kentuckyfriedtakahe, + a=sylvestre + +--- + .../frameworks/av/media/libstagefright/MPEG4Extractor.cpp | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp b/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp +index 318152a..c6aaf1d 100644 +--- a/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp ++++ b/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp +@@ -517,6 +517,9 @@ status_t MPEG4Extractor::readMetaData() { + } + if (psshsize) { + char *buf = (char*)malloc(psshsize); ++ if (!buf) { ++ return ERROR_MALFORMED; ++ } + char *ptr = buf; + for (size_t i = 0; i < mPssh.size(); i++) { + memcpy(ptr, mPssh[i].uuid, 20); // uuid + length +-- +2.6.3 + diff --git a/gnu/packages/patches/icecat-CVE-2015-7214.patch b/gnu/packages/patches/icecat-CVE-2015-7214.patch new file mode 100644 index 0000000000..3a56d3d2cd --- /dev/null +++ b/gnu/packages/patches/icecat-CVE-2015-7214.patch @@ -0,0 +1,47 @@ +From 487799700b0b676c2c6b95ad33c8afb8dbd329d8 Mon Sep 17 00:00:00 2001 +From: Bobby Holley +Date: Mon, 14 Dec 2015 15:36:20 -0500 +Subject: [PATCH] Bug 1228950 - Disallow scheme sets on nsHostObjectURI. r=bz, + a=lizzard + +--- + dom/base/nsHostObjectURI.cpp | 9 +++++++++ + dom/base/nsHostObjectURI.h | 2 ++ + 2 files changed, 11 insertions(+) + +diff --git a/dom/base/nsHostObjectURI.cpp b/dom/base/nsHostObjectURI.cpp +index 94b02ff..57b0209 100644 +--- a/dom/base/nsHostObjectURI.cpp ++++ b/dom/base/nsHostObjectURI.cpp +@@ -81,6 +81,15 @@ nsHostObjectURI::Write(nsIObjectOutputStream* aStream) + true); + } + ++NS_IMETHODIMP ++nsHostObjectURI::SetScheme(const nsACString& aScheme) ++{ ++ // Disallow setting the scheme, since that could cause us to be associated ++ // with a different protocol handler that doesn't expect us to be carrying ++ // around a principal with nsIURIWithPrincipal. ++ return NS_ERROR_FAILURE; ++} ++ + // nsIURI methods: + nsresult + nsHostObjectURI::CloneInternal(nsSimpleURI::RefHandlingEnum aRefHandlingMode, +diff --git a/dom/base/nsHostObjectURI.h b/dom/base/nsHostObjectURI.h +index b468d5d..23ff7ab 100644 +--- a/dom/base/nsHostObjectURI.h ++++ b/dom/base/nsHostObjectURI.h +@@ -34,6 +34,8 @@ public: + NS_DECL_NSISERIALIZABLE + NS_DECL_NSICLASSINFO + ++ NS_IMETHOD SetScheme(const nsACString &aProtocol) override; ++ + // Override CloneInternal() and EqualsInternal() + virtual nsresult CloneInternal(RefHandlingEnum aRefHandlingMode, + nsIURI** aClone) override; +-- +2.6.3 + diff --git a/gnu/packages/patches/icecat-CVE-2015-7222-pt1.patch b/gnu/packages/patches/icecat-CVE-2015-7222-pt1.patch new file mode 100644 index 0000000000..c5d0e4ad60 --- /dev/null +++ b/gnu/packages/patches/icecat-CVE-2015-7222-pt1.patch @@ -0,0 +1,112 @@ +From 76e6db3e514350fd146cb04425e669d63b59f889 Mon Sep 17 00:00:00 2001 +From: Gerald Squelart +Date: Wed, 9 Dec 2015 09:59:37 +0100 +Subject: [PATCH] Bug 1216748 - p2. Handle failed malloc in Metadata storage - + r=rillian, a=sylvestre + +--- + .../av/include/media/stagefright/MetaData.h | 2 +- + .../av/media/libstagefright/MetaData.cpp | 35 ++++++++++++++-------- + 2 files changed, 24 insertions(+), 13 deletions(-) + +diff --git a/media/libstagefright/frameworks/av/include/media/stagefright/MetaData.h b/media/libstagefright/frameworks/av/include/media/stagefright/MetaData.h +index 30d969d..0a8ff77 100644 +--- a/media/libstagefright/frameworks/av/include/media/stagefright/MetaData.h ++++ b/media/libstagefright/frameworks/av/include/media/stagefright/MetaData.h +@@ -248,7 +248,7 @@ private: + return mSize <= sizeof(u.reservoir); + } + +- void allocateStorage(size_t size); ++ bool allocateStorage(size_t size); + void freeStorage(); + + void *storage() { +diff --git a/media/libstagefright/frameworks/av/media/libstagefright/MetaData.cpp b/media/libstagefright/frameworks/av/media/libstagefright/MetaData.cpp +index c832c96..cba324d 100644 +--- a/media/libstagefright/frameworks/av/media/libstagefright/MetaData.cpp ++++ b/media/libstagefright/frameworks/av/media/libstagefright/MetaData.cpp +@@ -220,7 +220,7 @@ bool MetaData::findData(uint32_t key, uint32_t *type, + } + + MetaData::typed_data::typed_data() +- : mType(0), ++ : mType(TYPE_NONE), + mSize(0) { + } + +@@ -231,17 +231,19 @@ MetaData::typed_data::~typed_data() { + MetaData::typed_data::typed_data(const typed_data &from) + : mType(from.mType), + mSize(0) { +- allocateStorage(from.mSize); +- memcpy(storage(), from.storage(), mSize); ++ if (allocateStorage(from.mSize)) { ++ memcpy(storage(), from.storage(), mSize); ++ } + } + + MetaData::typed_data &MetaData::typed_data::operator=( + const MetaData::typed_data &from) { + if (this != &from) { + clear(); +- mType = from.mType; +- allocateStorage(from.mSize); +- memcpy(storage(), from.storage(), mSize); ++ if (allocateStorage(from.mSize)) { ++ mType = from.mType; ++ memcpy(storage(), from.storage(), mSize); ++ } + } + + return *this; +@@ -250,16 +252,17 @@ MetaData::typed_data &MetaData::typed_data::operator=( + void MetaData::typed_data::clear() { + freeStorage(); + +- mType = 0; ++ mType = TYPE_NONE; + } + + void MetaData::typed_data::setData( + uint32_t type, const void *data, size_t size) { + clear(); + +- mType = type; +- allocateStorage(size); +- memcpy(storage(), data, size); ++ if (allocateStorage(size)) { ++ mType = type; ++ memcpy(storage(), data, size); ++ } + } + + void MetaData::typed_data::getData( +@@ -269,14 +272,22 @@ void MetaData::typed_data::getData( + *data = storage(); + } + +-void MetaData::typed_data::allocateStorage(size_t size) { ++bool MetaData::typed_data::allocateStorage(size_t size) { ++ // Update mSize now, as it is needed by usesReservoir() below. ++ // (mSize will be reset if the allocation fails further below.) + mSize = size; + + if (usesReservoir()) { +- return; ++ return true; + } + + u.ext_data = malloc(mSize); ++ if (!u.ext_data) { ++ mType = TYPE_NONE; ++ mSize = 0; ++ return false; ++ } ++ return true; + } + + void MetaData::typed_data::freeStorage() { +-- +2.6.3 + diff --git a/gnu/packages/patches/icecat-CVE-2015-7222-pt2.patch b/gnu/packages/patches/icecat-CVE-2015-7222-pt2.patch new file mode 100644 index 0000000000..688d7f903f --- /dev/null +++ b/gnu/packages/patches/icecat-CVE-2015-7222-pt2.patch @@ -0,0 +1,34 @@ +From 63c353cf8ec6b787936f602532026bd9923a16e4 Mon Sep 17 00:00:00 2001 +From: Gerald Squelart +Date: Wed, 9 Dec 2015 10:00:13 +0100 +Subject: [PATCH] Bug 1216748 - p3. Ensure 'covr' data size cannot create + underflow - r=rillian, a=sylvestre + +--- + .../frameworks/av/media/libstagefright/MPEG4Extractor.cpp | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp b/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp +index c6aaf1d..a69fc14 100644 +--- a/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp ++++ b/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp +@@ -1889,12 +1889,15 @@ status_t MPEG4Extractor::parseChunk(off64_t *offset, int depth) { + if (mFileMetaData != NULL) { + ALOGV("chunk_data_size = %lld and data_offset = %lld", + chunk_data_size, data_offset); ++ const int kSkipBytesOfDataBox = 16; ++ if (chunk_data_size <= kSkipBytesOfDataBox) { ++ return ERROR_MALFORMED; ++ } + sp buffer = new ABuffer(chunk_data_size + 1); + if (mDataSource->readAt( + data_offset, buffer->data(), chunk_data_size) != (ssize_t)chunk_data_size) { + return ERROR_IO; + } +- const int kSkipBytesOfDataBox = 16; + mFileMetaData->setData( + kKeyAlbumArt, MetaData::TYPE_NONE, + buffer->data() + kSkipBytesOfDataBox, chunk_data_size - kSkipBytesOfDataBox); +-- +2.6.3 + diff --git a/gnu/packages/patches/icecat-CVE-2015-7222-pt3.patch b/gnu/packages/patches/icecat-CVE-2015-7222-pt3.patch new file mode 100644 index 0000000000..2f3c95623d --- /dev/null +++ b/gnu/packages/patches/icecat-CVE-2015-7222-pt3.patch @@ -0,0 +1,37 @@ +From 0221ef0c389bff196ff59fa18232467d3648b926 Mon Sep 17 00:00:00 2001 +From: Gerald Squelart +Date: Wed, 9 Dec 2015 10:00:32 +0100 +Subject: [PATCH] Bug 1216748 - p4. Check other Metadata::setData uses - + r=rillian, a=sylvestre + +Found only one other use that needed better checks: the size of the pssh +data was only checked after all items were added up; so it would be +possible to create a set of big items such that they create an overflow, +but the final sum looks reasonable. +Instead each item size should be checked, and the sum should also be +checked at each step. +--- + .../frameworks/av/media/libstagefright/MPEG4Extractor.cpp | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp b/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp +index a69fc14..413a495 100644 +--- a/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp ++++ b/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp +@@ -511,9 +511,10 @@ status_t MPEG4Extractor::readMetaData() { + uint64_t psshsize = 0; + for (size_t i = 0; i < mPssh.size(); i++) { + psshsize += 20 + mPssh[i].datalen; +- } +- if (psshsize > kMAX_ALLOCATION) { +- return ERROR_MALFORMED; ++ if (mPssh[i].datalen > kMAX_ALLOCATION - 20 || ++ psshsize > kMAX_ALLOCATION) { ++ return ERROR_MALFORMED; ++ } + } + if (psshsize) { + char *buf = (char*)malloc(psshsize); +-- +2.6.3 + -- cgit v1.2.3 From f464016d603ba151491b529b6bcc91d087816b9d Mon Sep 17 00:00:00 2001 From: David Thompson Date: Thu, 17 Dec 2015 13:36:42 -0500 Subject: gnu: Add obs. * gnu/packages/video.scm (obs): New variable. --- gnu/packages/video.scm | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 4f6ef6d7e5..5d118ca32d 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -42,6 +42,7 @@ (define-module (gnu packages video) #:use-module (gnu packages base) #:use-module (gnu packages cdrom) #:use-module (gnu packages compression) + #:use-module (gnu packages curl) #:use-module (gnu packages databases) #:use-module (gnu packages doxygen) #:use-module (gnu packages elf) @@ -1270,3 +1271,40 @@ (define-public mlt functionality of the system is provided via an assortment of ready to use tools, XML authoring components, and an extensible plug-in based API.") (license license:lgpl2.1+))) + +(define-public obs + (package + (name "obs") + (version "0.12.4") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/jp9000/obs-studio" + "/archive/" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0b1xb5vd3g4h7m1hsjzsq3bbbnqb2n6mpmq6ix4yyy72g087rjk1")))) + (build-system cmake-build-system) + (arguments '(#:tests? #f)) ; no tests + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("curl" ,curl) + ("eudev" ,eudev) + ("ffmpeg" ,ffmpeg) + ("freetype" ,freetype) + ("jack" ,jack-1) + ("jansson" ,jansson) + ("libx264" ,libx264) + ("libxcomposite" ,libxcomposite) + ("mesa" ,mesa) + ("pulseaudio" ,pulseaudio) + ("qt" ,qt) + ("zlib" ,zlib))) + (synopsis "Live streaming software") + (description "Open Broadcaster Software provides a graphical interface for +video recording and live streaming. OBS supports capturing audio and video +from many input sources such as webcams, X11 (for screencasting), PulseAudio, +and JACK.") + (home-page "https://obsproject.com") + (license license:gpl2+))) -- cgit v1.2.3 From 72029c8bf1b5730c01bd2d3d6d84eec038a3e8fe Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Tue, 15 Dec 2015 11:38:46 +0800 Subject: gnu: Add cracklib. * gnu/packages/password-utils.scm (cracklib): New variable. --- gnu/packages/password-utils.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm index 1ca327b5c8..0cb3750d6a 100644 --- a/gnu/packages/password-utils.scm +++ b/gnu/packages/password-utils.scm @@ -135,3 +135,24 @@ (define-public yapet and vice versa.") (home-page "http://www.guengel.ch/myapps/yapet/") (license license:gpl3+))) + +(define-public cracklib + (package + (name "cracklib") + (version "2.9.6") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/cracklib/cracklib/" + "releases/download/" name "-" version "/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "0hrkb0prf7n92w6rxgq0ilzkk6rkhpys2cfqkrbzswp27na7dkqp")))) + (build-system gnu-build-system) + (synopsis "Password checking library") + (home-page "https://github.com/cracklib/cracklib") + (description + "CrackLib is a library containing a C function which may be used in a +passwd like program. The idea is simple: try to prevent users from choosing +passwords that could be guessed by crack by filtering them out, at source.") + (license license:lgpl2.1))) -- cgit v1.2.3 From c2fb20761a000b9be743ffe378b38409d5a4a556 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Tue, 15 Dec 2015 11:39:25 +0800 Subject: gnu: Add libpwquality. * gnu/packages/password-utils.scm (libpwquality): New variable. --- gnu/packages/password-utils.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm index 0cb3750d6a..7c390e908d 100644 --- a/gnu/packages/password-utils.scm +++ b/gnu/packages/password-utils.scm @@ -156,3 +156,31 @@ (define-public cracklib passwd like program. The idea is simple: try to prevent users from choosing passwords that could be guessed by crack by filtering them out, at source.") (license license:lgpl2.1))) + +(define-public libpwquality + (package + (name "libpwquality") + (version "1.3.0") + (source (origin + (method url-fetch) + (uri (list + (string-append "https://fedorahosted.org/releases/l/i/" + name "/" name "-" version ".tar.bz2") + (string-append "https://launchpad.net/libpwquality/trunk/" + version "/+download/" + name "-" version ".tar.bz2"))) + (sha256 + (base32 + "0aidriag6h0syfm33nzdfdsqgrnsgihwjv3a5lgkqch3w68fmlkl")))) + (build-system gnu-build-system) + (arguments + ;; XXX: have RUNPATH issue. + '(#:configure-flags '("--disable-python-bindings"))) + (inputs + `(("cracklib" ,cracklib))) + (synopsis "Password quality checker") + (home-page "https://fedorahosted.org/libpwquality/") + (description + "Libpwquality is a library for password quality checking and generation of +random passwords that pass the checks.") + (license license:gpl2+))) -- cgit v1.2.3 From 960ae0cde4d05c33547b16fe97f17f82a9c562e1 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Tue, 15 Dec 2015 12:09:19 +0800 Subject: gnu: talloc: Use 'modify-phases' syntax. * gnu/packages/samba.scm (talloc)[arguments]: Use 'modify-phases' syntax. --- gnu/packages/samba.scm | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index 484eafb647..0873a00267 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -179,16 +179,16 @@ (define-public talloc "13c365f7y8idjf2v1jxdjpkc3lxdmsxxfxjx1ymianm7zjiph393")))) (build-system gnu-build-system) (arguments - '(#:phases (alist-replace - 'configure - (lambda* (#:key outputs #:allow-other-keys) - ;; talloc uses a custom configuration script that runs a - ;; python script called 'waf'. - (setenv "CONFIG_SHELL" (which "sh")) - (let ((out (assoc-ref outputs "out"))) - (zero? (system* "./configure" - (string-append "--prefix=" out))))) - %standard-phases))) + '(#:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + ;; talloc uses a custom configuration script that runs a + ;; python script called 'waf'. + (setenv "CONFIG_SHELL" (which "sh")) + (let ((out (assoc-ref outputs "out"))) + (zero? (system* "./configure" + (string-append "--prefix=" out))))))))) (inputs `(("python" ,python-2))) (home-page "http://talloc.samba.org") -- cgit v1.2.3 From 095da0234299372c9793d1ccd7ee05e5abf0ff04 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Fri, 18 Dec 2015 10:08:33 +0800 Subject: gnu: talloc: Update to 2.1.5. * gnu/packages/samba.scm (talloc): Update to 2.1.5. [arguments]: Modify wscript to skip the 'magic_differs' test. --- gnu/packages/samba.scm | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index 0873a00267..743784c02e 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -169,20 +169,25 @@ (define-public samba (define-public talloc (package (name "talloc") - (version "2.1.2") + (version "2.1.5") (source (origin (method url-fetch) (uri (string-append "https://www.samba.org/ftp/talloc/talloc-" version ".tar.gz")) (sha256 (base32 - "13c365f7y8idjf2v1jxdjpkc3lxdmsxxfxjx1ymianm7zjiph393")))) + "1pfx3kmj973hpacfw46fzfnjd7ms1j03ifkc30wk930brx8ffcrq")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases (replace 'configure (lambda* (#:key outputs #:allow-other-keys) + ;; test_magic_differs.sh has syntax error, and is not in the right + ;; place where wscript expected. + ;; Skip the test. + (substitute* "wscript" + (("magic_ret = .*") "magic_ret = 0\n")) ;; talloc uses a custom configuration script that runs a ;; python script called 'waf'. (setenv "CONFIG_SHELL" (which "sh")) -- cgit v1.2.3 From 0674b3c96d3aa93b63cdafbf99abe87815aec55c Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Tue, 15 Dec 2015 12:17:07 +0800 Subject: gnu: Add tevent. * gnu/packages/samba.scm (tevent): New variable. --- gnu/packages/samba.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index 743784c02e..137e04df18 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -25,6 +25,7 @@ (define-module (gnu packages samba) #:use-module (gnu packages acl) #:use-module (gnu packages admin) #:use-module (gnu packages popt) + #:use-module (gnu packages pkg-config) #:use-module (gnu packages openldap) #:use-module (gnu packages readline) #:use-module (gnu packages libunwind) @@ -203,6 +204,41 @@ (define-public talloc destructors. It is the core memory allocator used in Samba.") (license gpl3+))) ;; The bundled "replace" library uses LGPL3. +(define-public tevent + (package + (name "tevent") + (version "0.9.26") + (source (origin + (method url-fetch) + (uri (string-append "https://www.samba.org/ftp/tevent/tevent-" + version ".tar.gz")) + (sha256 + (base32 + "1gbh6d2m49j1v2hkaiyrh8bj02i5wxd4hqayzk2g44yyivbi8b16")))) + (build-system gnu-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (replace 'configure + ;; tevent uses a custom configuration script that runs waf. + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (zero? (system* "./configure" + (string-append "--prefix=" out) + "--bundled-libraries=NONE")))))))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("python" ,python-2))) + (propagated-inputs + `(("talloc" ,talloc))) ; required by tevent.pc + (synopsis "Event system library") + (home-page "https://tevent.samba.org/") + (description + "Tevent is an event system based on the talloc memory management library. +It is the core event system used in Samba. The low level tevent has support for +many event types, including timers, signals, and the classic file descriptor events.") + (license lgpl3+))) + (define-public ppp (package (name "ppp") -- cgit v1.2.3 From 52513595ad4665ecf53577e124ed43098726eea1 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Tue, 15 Dec 2015 12:19:26 +0800 Subject: gnu: Add ldb. * gnu/packages/samba.scm (ldb): New variable. --- gnu/packages/samba.scm | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index 137e04df18..ecf8ada8c9 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -24,6 +24,7 @@ (define-module (gnu packages samba) #:use-module (guix licenses) #:use-module (gnu packages acl) #:use-module (gnu packages admin) + #:use-module (gnu packages databases) #:use-module (gnu packages popt) #:use-module (gnu packages pkg-config) #:use-module (gnu packages openldap) @@ -239,6 +240,49 @@ (define-public tevent many event types, including timers, signals, and the classic file descriptor events.") (license lgpl3+))) +(define-public ldb + (package + (name "ldb") + (version "1.1.23") + (source (origin + (method url-fetch) + (uri (string-append "https://www.samba.org/ftp/ldb/ldb-" + version ".tar.gz")) + (sha256 + (base32 + "0ncmwgga6q9v7maiywgw21w6rb3149m1w2ca11yq8k5j0izjz2wg")))) + (build-system gnu-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (replace 'configure + ;; ldb use a custom configuration script that runs waf. + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (zero? (system* "./configure" + (string-append "--prefix=" out) + (string-append "--with-modulesdir=" out + "/lib/ldb/modules") + "--bundled-libraries=NONE")))))))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("python" ,python-2))) + (propagated-inputs + ;; ldb.pc refers to all these. + `(("talloc" ,talloc) + ("tdb" ,tdb))) + (inputs + `(("popt" ,popt) + ("tevent" ,tevent))) + (synopsis "LDAP-like embedded database") + (home-page "https://ldb.samba.org/") + (description + "Ldb is a LDAP-like embedded database built on top of TDB. What ldb does +is provide a fast database with an LDAP-like API designed to be used within an +application. In some ways it can be seen as a intermediate solution between +key-value pair databases and a real LDAP database.") + (license lgpl3+))) + (define-public ppp (package (name "ppp") -- cgit v1.2.3 From 710964d1790e6e583a9564f398ac57d635225cb2 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Tue, 15 Dec 2015 12:20:26 +0800 Subject: gnu: samba: Update to 4.3.2. * gnu/packages/samba.scm (samba): Update to 4.3.2. Add more inputs. [arguments]: Remove #:modules and #:imported-modules. Remove 'chdir' and 'add-lib-to-runpath' from #:phases. Use 'modify-phases' syntax. --- gnu/packages/samba.scm | 75 +++++++++++++++++++++++--------------------------- 1 file changed, 34 insertions(+), 41 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index ecf8ada8c9..ac3a17d512 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -24,14 +24,14 @@ (define-module (gnu packages samba) #:use-module (guix licenses) #:use-module (gnu packages acl) #:use-module (gnu packages admin) + #:use-module (gnu packages cups) #:use-module (gnu packages databases) + #:use-module (gnu packages tls) #:use-module (gnu packages popt) #:use-module (gnu packages pkg-config) #:use-module (gnu packages openldap) #:use-module (gnu packages readline) - #:use-module (gnu packages libunwind) #:use-module (gnu packages linux) - #:use-module (gnu packages elf) #:use-module (gnu packages perl) #:use-module (gnu packages python)) @@ -98,64 +98,57 @@ (define (copy dir) (define-public samba (package (name "samba") - (version "3.6.25") + (version "4.3.2") (source (origin (method url-fetch) (uri (string-append "https://www.samba.org/samba/ftp/stable/samba-" version ".tar.gz")) (sha256 (base32 - "0l9pz2m67vf398q3c2dwn8jwdxsjb20igncf4byhv6yq5dzqlb4g")))) + "0xcs2bcim421mlk6l9rcrkx4cq9y41gfssyfa7xzdw5draar3631")))) (build-system gnu-build-system) (arguments - `(#:phases (alist-cons-before - 'configure 'chdir - (lambda _ - (chdir "source3")) - (alist-cons-after - 'strip 'add-lib-to-runpath - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (lib (string-append out "/lib"))) - ;; Add LIB to the RUNPATH of all the executables and - ;; dynamic libraries. - (with-directory-excursion out - (for-each (cut augment-rpath <> lib) - (append (find-files "bin" ".*") - (find-files "sbin" ".*") - (find-files "lib" ".*")))))) - %standard-phases)) - - #:modules ((guix build gnu-build-system) - (guix build utils) - (guix build rpath) - (srfi srfi-26)) - #:imported-modules (,@%gnu-build-system-modules - (guix build rpath)) - - ;; This flag is required to allow for "make test". - #:configure-flags '("--enable-socket-wrapper") - - #:test-target "test" + '(#:phases + (modify-phases %standard-phases + (replace 'configure + ;; samba uses a custom configuration script that runs waf. + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (libdir (string-append out "/lib"))) + (zero? (system* + "./configure" + "--enable-fhs" + ;; XXX: heimdal not packaged. + "--bundled-libraries=com_err" + (string-append "--prefix=" out) + ;; Install public and private libraries into + ;; a single directory to avoid RPATH issues. + (string-append "--libdir=" libdir) + (string-append "--with-privatelibdir=" libdir))))))) ;; XXX: The test infrastructure attempts to set password with ;; smbpasswd, which fails with "smbpasswd -L can only be used by root." ;; So disable tests until there's a workaround. #:tests? #f)) (inputs ; TODO: Add missing dependencies - `(;; ("cups" ,cups) - ("acl" ,acl) + `(("acl" ,acl) + ("cups" ,cups) ;; ("gamin" ,gamin) - ("libunwind" ,libunwind) + ("gnutls" ,gnutls) ("iniparser" ,iniparser) - ("popt" ,popt) - ("openldap" ,openldap) + ("libaio" ,libaio) + ("ldb" ,ldb) ("linux-pam" ,linux-pam) + ("openldap" ,openldap) + ("popt" ,popt) ("readline" ,readline) - ("patchelf" ,patchelf))) ; for (guix build rpath) - (native-inputs ; for the test suite + ("talloc" ,talloc) + ("tevent" ,tevent) + ("tdb" ,tdb))) + (native-inputs `(("perl" ,perl) - ("python" ,python-wrapper))) + ("pkg-config" ,pkg-config) + ("python" ,python-2))) ; incompatible with Python 3 (home-page "http://www.samba.org/") (synopsis "The standard Windows interoperability suite of programs for GNU and Unix") -- cgit v1.2.3 From 6813f70a5c02eec999850603bd99b6df4fd41bec Mon Sep 17 00:00:00 2001 From: David Thompson Date: Tue, 15 Dec 2015 13:30:11 -0500 Subject: gnu: Add sdl2-image. * gnu/packages/sdl.scm (propagated-inputs-with-sdl2): New procedure. (sdl2-image): New variable. --- gnu/packages/sdl.scm | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/sdl.scm b/gnu/packages/sdl.scm index 1b64be024d..63c1037fcb 100644 --- a/gnu/packages/sdl.scm +++ b/gnu/packages/sdl.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013 David Thompson +;;; Copyright © 2013, 2015 David Thompson ;;; Copyright © 2014 Mark H Weaver ;;; Copyright © 2015 Sou Bunnbu ;;; Copyright © 2015 Alex Kost @@ -20,6 +20,7 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu packages sdl) + #:use-module (ice-9 match) #:use-module (gnu packages) #:use-module ((guix licenses) #:hide (freetype)) #:use-module (guix packages) @@ -299,6 +300,29 @@ (define* (sdl-union #:optional (packages (list sdl sdl-gfx sdl-net sdl-ttf (home-page (package-home-page sdl)) (license (package-license sdl)))) +(define (propagated-inputs-with-sdl2 package) + "Replace the \"sdl\" propagated input of PACKAGE with SDL2." + (map (match-lambda + (("sdl" _) + `("sdl2" ,sdl2)) + (other other)) + (package-propagated-inputs package))) + +(define-public sdl2-image + (package (inherit sdl-image) + (name "sdl2-image") + (version "2.0.0") + (source (origin + (method url-fetch) + (uri + (string-append "http://www.libsdl.org/projects/SDL_image/release/SDL2_image-" + version ".tar.gz")) + (sha256 + (base32 + "0d3jlhkmr0j5a2dd5h6y29jfcsj7mkl16wghm6n3nqqp7g3ib65j")))) + (propagated-inputs + (propagated-inputs-with-sdl2 sdl-image)))) + (define-public guile-sdl (package (name "guile-sdl") -- cgit v1.2.3 From 855e2939819c967d42d34b4c90f9c1abd9fd3c87 Mon Sep 17 00:00:00 2001 From: David Thompson Date: Tue, 15 Dec 2015 13:30:56 -0500 Subject: gnu: Add sdl2-mixer. * gnu/packages/sdl.scm (sdl2-mixer): New variable. --- gnu/packages/sdl.scm | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/sdl.scm b/gnu/packages/sdl.scm index 63c1037fcb..2d019665ba 100644 --- a/gnu/packages/sdl.scm +++ b/gnu/packages/sdl.scm @@ -323,6 +323,21 @@ (define-public sdl2-image (propagated-inputs (propagated-inputs-with-sdl2 sdl-image)))) +(define-public sdl2-mixer + (package (inherit sdl-mixer) + (name "sdl2-mixer") + (version "2.0.0") + (source (origin + (method url-fetch) + (uri + (string-append "http://www.libsdl.org/projects/SDL_mixer/release/SDL2_mixer-" + version ".tar.gz")) + (sha256 + (base32 + "0nvjdxjchrajrn0jag877hdx9zb788hsd315zzg1lyck2wb0xkm8")))) + (propagated-inputs + (propagated-inputs-with-sdl2 sdl-mixer)))) + (define-public guile-sdl (package (name "guile-sdl") -- cgit v1.2.3 From d3f6a1defb3d3b7824ae54aaf756b196ff451a25 Mon Sep 17 00:00:00 2001 From: David Thompson Date: Tue, 15 Dec 2015 13:31:32 -0500 Subject: gnu: Add sdl2-ttf. * gnu/packages/sdl.scm (sdl2-ttf): New variable. --- gnu/packages/sdl.scm | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/sdl.scm b/gnu/packages/sdl.scm index 2d019665ba..2fdddcc17e 100644 --- a/gnu/packages/sdl.scm +++ b/gnu/packages/sdl.scm @@ -338,6 +338,21 @@ (define-public sdl2-mixer (propagated-inputs (propagated-inputs-with-sdl2 sdl-mixer)))) +(define-public sdl2-ttf + (package (inherit sdl-ttf) + (name "sdl2-ttf") + (version "2.0.12") + (source (origin + (method url-fetch) + (uri + (string-append "http://www.libsdl.org/projects/SDL_ttf/release/SDL2_ttf-" + version ".tar.gz")) + (sha256 + (base32 + "0vkg6lyj278mdpd52map3rfi65fbq16w67ahmmfcl77a8da60a47")))) + (propagated-inputs + (propagated-inputs-with-sdl2 sdl-ttf)))) + (define-public guile-sdl (package (name "guile-sdl") -- cgit v1.2.3 From 6a51e95b6690cf7b8b5bd14794fdb126b0d6b1e6 Mon Sep 17 00:00:00 2001 From: David Thompson Date: Thu, 17 Dec 2015 22:32:05 -0500 Subject: gnu: sdl-image: Add libwebp input. * gnu/packages/sdl.scm (sdl-image)[propagated-inputs]: Add libwebp. --- gnu/packages/sdl.scm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/sdl.scm b/gnu/packages/sdl.scm index 2fdddcc17e..825e7db5d9 100644 --- a/gnu/packages/sdl.scm +++ b/gnu/packages/sdl.scm @@ -174,8 +174,6 @@ (define sdl-image "--disable-tif-shared" "--disable-webp-shared"))) (native-inputs `(("pkg-config" ,pkg-config))) - ;; FIXME: Add webp - ;; ;; libjpeg, libpng, and libtiff are propagated inputs because the ;; SDL_image headers include the headers of these libraries. SDL is a ;; propagated input because the pkg-config file refers to SDL's pkg-config @@ -183,7 +181,8 @@ (define sdl-image (propagated-inputs `(("sdl" ,sdl) ("libjpeg" ,libjpeg) ("libpng" ,libpng) - ("libtiff" ,libtiff))) + ("libtiff" ,libtiff) + ("libwebp" ,libwebp))) (synopsis "SDL image loading library") (description "SDL_image is an image file loading library for SDL that supports the following formats: BMP, GIF, JPEG, LBM, PCX, PNG, PNM, TGA, TIFF, -- cgit v1.2.3 From fd5c70f867175155263f8bc04095a0fd1e51a764 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Mon, 14 Dec 2015 14:10:07 +0100 Subject: gnu: dovecot: Add linux-pam to inputs. * gnu/packages/mail.scm (dovecot): Add linux-pam to inputs, enabling the PAM auth driver. --- gnu/packages/mail.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index bf28ec674e..38cab27494 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -696,7 +696,8 @@ (define-public dovecot `(("openssl" ,openssl) ("zlib" ,zlib) ("bzip2" ,bzip2) - ("sqlite" ,sqlite))) + ("sqlite" ,sqlite) + ("linux-pam" ,linux-pam))) (arguments `(#:configure-flags '("--sysconfdir=/etc" "--localstatedir=/var") -- cgit v1.2.3 From d8c18af834c492a2066e882fed95062a5c33fbc7 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Mon, 14 Dec 2015 14:10:46 +0100 Subject: gnu: Add dovecot service * gnu/services/mail.scm: New file. (&dovecot-configuration-error, dovecot-configuration-error?) (dovecot-service, dovecot-configuration, dict-configuration) (passdb-configuration, userdb-configuration) (unix-listener-configuration, fifo-listener-configuration) (inet-listener-configuration, service-configuration) (protocol-configuration, plugin-configuration, mailbox-configuration) (namespace-configuration, opaque-dovecot-configuration): New public variables. * gnu-system.am (GNU_SYSTEM_MODULES): Add (gnu services mail). * doc/guix.texi (Mail Services): New node. --- doc/guix.texi | 1371 +++++++++++++++++++++++++++++++++++++++ gnu-system.am | 1 + gnu/services/mail.scm | 1692 +++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 3064 insertions(+) create mode 100644 gnu/services/mail.scm (limited to 'gnu') diff --git a/doc/guix.texi b/doc/guix.texi index f63e3669fa..06d70ba8a4 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -181,6 +181,7 @@ Services * X Window:: Graphical display. * Desktop Services:: D-Bus and desktop services. * Database Services:: SQL databases. +* Mail Services:: IMAP, POP3, SMTP, and all that. * Web Services:: Web servers. * Various Services:: Other services. @@ -6377,6 +6378,7 @@ declaration. * X Window:: Graphical display. * Desktop Services:: D-Bus and desktop services. * Database Services:: SQL databases. +* Mail Services:: IMAP, POP3, SMTP, and all that. * Web Services:: Web servers. * Various Services:: Other services. @end menu @@ -7100,6 +7102,1375 @@ The PostgreSQL daemon loads its runtime configuration from @var{data-directory}. @end deffn +@node Mail Services +@subsubsection Mail Services + +The @code{(gnu services mail)} module provides Guix service definitions +for mail services. Currently the only implemented service is Dovecot, +an IMAP, POP3, and LMTP server. + +Guix does not yet have a mail transfer agent (MTA), although for some +lightweight purposes the @code{esmtp} relay-only MTA may suffice. Help +is needed to properly integrate a full MTA, such as Postfix. Patches +welcome! + +To add an IMAP/POP3 server to a GuixSD system, add a +@code{dovecot-service} to the operating system definition: + +@deffn {Scheme Procedure} dovecot-service [#:config (dovecot-configuration)] +Return a service that runs the Dovecot IMAP/POP3/LMTP mail server. +@end deffn + +By default, Dovecot doesn't need much configuration; the default +configuration object created by @code{(dovecot-configuration)} will +suffice if your mail is delivered to @code{~/Maildir}. A self-signed +certificate will be generated for TLS-protected connections, though +Dovecot will also listen on cleartext ports by default. There are a +number of options though which mail administrators might need to change, +and as is the case with other services, Guix allows the system +administrator to specify these parameters via a uniform Scheme interface. + +For example, to specify that mail is located at @code{maildir~/.mail}, +one would instantiate the Dovecot service like this: + +@example +(dovecot-service #:config + (dovecot-configuration + (mail-location "maildir:~/.mail"))) +@end example + +The available configuration parameters follow. Each parameter +definition is preceded by its type; for example, @samp{string-list foo} +indicates that the @code{foo} parameter should be specified as a list of +strings. There is also a way to specify the configuration as a string, +if you have an old @code{dovecot.conf} file that you want to port over +from some other system; see the end for more details. + +@c The following documentation was initially generated by +@c (generate-documentation) in (gnu services mail). Manually maintained +@c documentation is better, so we shouldn't hesitate to edit below as +@c needed. However if the change you want to make to this documentation +@c can be done in an automated way, it's probably easier to change +@c (generate-documentation) than to make it below and have to deal with +@c the churn as dovecot updates. + +Available @code{dovecot-configuration} fields are: + +@deftypevr {@code{dovecot-configuration} parameter} package dovecot +The dovecot package. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} comma-separated-string-list listen +A list of IPs or hosts where to listen in for connections. @samp{*} +listens in all IPv4 interfaces, @samp{::} listens in all IPv6 +interfaces. If you want to specify non-default ports or anything more +complex, customize the address and port fields of the +@samp{inet-listener} of the specific services you are interested in. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} protocol-configuration-list protocols +List of protocols we want to serve. Available protocols include +@samp{imap}, @samp{pop3}, and @samp{lmtp}. + +Available @code{protocol-configuration} fields are: + +@deftypevr {@code{protocol-configuration} parameter} string name +The name of the protocol. +@end deftypevr + +@deftypevr {@code{protocol-configuration} parameter} string auth-socket-path +UNIX socket path to master authentication server to find users. +This is used by imap (for shared users) and lda. +Defaults to @samp{"/var/run/dovecot/auth-userdb"}. +@end deftypevr + +@deftypevr {@code{protocol-configuration} parameter} space-separated-string-list mail-plugins +Space separated list of plugins to load. +@end deftypevr + +@deftypevr {@code{protocol-configuration} parameter} non-negative-integer mail-max-userip-connections +Maximum number of IMAP connections allowed for a user from each IP +address. NOTE: The username is compared case-sensitively. +Defaults to @samp{10}. +@end deftypevr + +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} service-configuration-list services +List of services to enable. Available services include @samp{imap}, +@samp{imap-login}, @samp{pop3}, @samp{pop3-login}, @samp{auth}, and +@samp{lmtp}. + +Available @code{service-configuration} fields are: + +@deftypevr {@code{service-configuration} parameter} string kind +The service kind. Valid values include @code{director}, +@code{imap-login}, @code{pop3-login}, @code{lmtp}, @code{imap}, +@code{pop3}, @code{auth}, @code{auth-worker}, @code{dict}, +@code{tcpwrap}, @code{quota-warning}, or anything else. +@end deftypevr + +@deftypevr {@code{service-configuration} parameter} listener-configuration-list listeners +Listeners for the service. A listener is either an +@code{unix-listener-configuration}, a @code{fifo-listener-configuration}, or +an @code{inet-listener-configuration}. +Defaults to @samp{()}. + +Available @code{unix-listener-configuration} fields are: + +@deftypevr {@code{unix-listener-configuration} parameter} file-name path +The file name on which to listen. +@end deftypevr + +@deftypevr {@code{unix-listener-configuration} parameter} string mode +The access mode for the socket. +Defaults to @samp{"0600"}. +@end deftypevr + +@deftypevr {@code{unix-listener-configuration} parameter} string user +The user to own the the socket. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{unix-listener-configuration} parameter} string group +The group to own the socket. +Defaults to @samp{""}. +@end deftypevr + + +Available @code{fifo-listener-configuration} fields are: + +@deftypevr {@code{fifo-listener-configuration} parameter} file-name path +The file name on which to listen. +@end deftypevr + +@deftypevr {@code{fifo-listener-configuration} parameter} string mode +The access mode for the socket. +Defaults to @samp{"0600"}. +@end deftypevr + +@deftypevr {@code{fifo-listener-configuration} parameter} string user +The user to own the the socket. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{fifo-listener-configuration} parameter} string group +The group to own the socket. +Defaults to @samp{""}. +@end deftypevr + + +Available @code{inet-listener-configuration} fields are: + +@deftypevr {@code{inet-listener-configuration} parameter} string protocol +The protocol to listen for. +@end deftypevr + +@deftypevr {@code{inet-listener-configuration} parameter} string address +The address on which to listen, or empty for all addresses. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{inet-listener-configuration} parameter} non-negative-integer port +The port on which to listen. +@end deftypevr + +@deftypevr {@code{inet-listener-configuration} parameter} boolean ssl? +Whether to use SSL for this service; @samp{yes}, @samp{no}, or +@samp{required}. +Defaults to @samp{#t}. +@end deftypevr + +@end deftypevr + +@deftypevr {@code{service-configuration} parameter} non-negative-integer service-count +Number of connections to handle before starting a new process. +Typically the only useful values are 0 (unlimited) or 1. 1 is more +secure, but 0 is faster. . +Defaults to @samp{1}. +@end deftypevr + +@deftypevr {@code{service-configuration} parameter} non-negative-integer process-min-avail +Number of processes to always keep waiting for more connections. +Defaults to @samp{0}. +@end deftypevr + +@deftypevr {@code{service-configuration} parameter} non-negative-integer vsz-limit +If you set @samp{service-count 0}, you probably need to grow +this. +Defaults to @samp{256000000}. +@end deftypevr + +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} dict-configuration dict +Dict configuration, as created by the @code{dict-configuration} +constructor. + +Available @code{dict-configuration} fields are: + +@deftypevr {@code{dict-configuration} parameter} free-form-fields entries +A list of key-value pairs that this dict should hold. +Defaults to @samp{()}. +@end deftypevr + +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} passdb-configuration-list passdbs +List of passdb configurations, each one created by the +@code{passdb-configuration} constructor. + +Available @code{passdb-configuration} fields are: + +@deftypevr {@code{passdb-configuration} parameter} string driver +The driver that the passdb should use. Valid values include +@samp{pam}, @samp{passwd}, @samp{shadow}, @samp{bsdauth}, and +@samp{static}. +Defaults to @samp{"pam"}. +@end deftypevr + +@deftypevr {@code{passdb-configuration} parameter} free-form-args args +A list of key-value args to the passdb driver. +Defaults to @samp{()}. +@end deftypevr + +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} userdb-configuration-list userdbs +List of userdb configurations, each one created by the +@code{userdb-configuration} constructor. + +Available @code{userdb-configuration} fields are: + +@deftypevr {@code{userdb-configuration} parameter} string driver +The driver that the userdb should use. Valid values include +@samp{passwd} and @samp{static}. +Defaults to @samp{"passwd"}. +@end deftypevr + +@deftypevr {@code{userdb-configuration} parameter} free-form-args args +A list of key-value args to the userdb driver. +Defaults to @samp{()}. +@end deftypevr + +@deftypevr {@code{userdb-configuration} parameter} free-form-args override-fields +Override fields from passwd. +Defaults to @samp{()}. +@end deftypevr + +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} plugin-configuration plugin-configuration +Plug-in configuration, created by the @code{plugin-configuration} +constructor. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} list-of-namespace-configuration namespaces +List of namespaces. Each item in the list is created by the +@code{namespace-configuration} constructor. + +Available @code{namespace-configuration} fields are: + +@deftypevr {@code{namespace-configuration} parameter} string name +Name for this namespace. +@end deftypevr + +@deftypevr {@code{namespace-configuration} parameter} string type +Namespace type: @samp{private}, @samp{shared} or @samp{public}. +Defaults to @samp{"private"}. +@end deftypevr + +@deftypevr {@code{namespace-configuration} parameter} string separator +Hierarchy separator to use. You should use the same separator for +all namespaces or some clients get confused. @samp{/} is usually a good +one. The default however depends on the underlying mail storage +format. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{namespace-configuration} parameter} string prefix +Prefix required to access this namespace. This needs to be +different for all namespaces. For example @samp{Public/}. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{namespace-configuration} parameter} string location +Physical location of the mailbox. This is in same format as +mail_location, which is also the default for it. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{namespace-configuration} parameter} boolean inbox? +There can be only one INBOX, and this setting defines which +namespace has it. +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{namespace-configuration} parameter} boolean hidden? +If namespace is hidden, it's not advertised to clients via NAMESPACE +extension. You'll most likely also want to set @samp{list? #f}. This is mostly +useful when converting from another server with different namespaces +which you want to deprecate but still keep working. For example you can +create hidden namespaces with prefixes @samp{~/mail/}, @samp{~%u/mail/} +and @samp{mail/}. +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{namespace-configuration} parameter} boolean list? +Show the mailboxes under this namespace with LIST command. This +makes the namespace visible for clients that don't support NAMESPACE +extension. The special @code{children} value lists child mailboxes, but +hides the namespace prefix. +Defaults to @samp{#t}. +@end deftypevr + +@deftypevr {@code{namespace-configuration} parameter} boolean subscriptions? +Namespace handles its own subscriptions. If set to @code{#f}, the +parent namespace handles them. The empty prefix should always have this +as @code{#t}.) +Defaults to @samp{#t}. +@end deftypevr + +@deftypevr {@code{namespace-configuration} parameter} mailbox-configuration-list mailboxes +List of predefined mailboxes in this namespace. +Defaults to @samp{()}. + +Available @code{mailbox-configuration} fields are: + +@deftypevr {@code{mailbox-configuration} parameter} string name +Name for this mailbox. +@end deftypevr + +@deftypevr {@code{mailbox-configuration} parameter} string auto +@samp{create} will automatically create this mailbox. +@samp{subscribe} will both create and subscribe to the mailbox. +Defaults to @samp{"no"}. +@end deftypevr + +@deftypevr {@code{mailbox-configuration} parameter} space-separated-string-list special-use +List of IMAP @code{SPECIAL-USE} attributes as specified by RFC 6154. +Valid values are @code{\All}, @code{\Archive}, @code{\Drafts}, +@code{\Flagged}, @code{\Junk}, @code{\Sent}, and @code{\Trash}. +Defaults to @samp{()}. +@end deftypevr + +@end deftypevr + +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} file-name base-dir +Base directory where to store runtime data. +Defaults to @samp{"/var/run/dovecot/"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string login-greeting +Greeting message for clients. +Defaults to @samp{"Dovecot ready."}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} space-separated-string-list login-trusted-networks +List of trusted network ranges. Connections from these IPs are +allowed to override their IP addresses and ports (for logging and for +authentication checks). @samp{disable-plaintext-auth} is also ignored +for these networks. Typically you'd specify your IMAP proxy servers +here. +Defaults to @samp{()}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} space-separated-string-list login-access-sockets +List of login access check sockets (e.g. tcpwrap). +Defaults to @samp{()}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean verbose-proctitle? +Show more verbose process titles (in ps). Currently shows user name +and IP address. Useful for seeing who are actually using the IMAP +processes (e.g. shared mailboxes or if same uid is used for multiple +accounts). +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean shutdown-clients? +Should all processes be killed when Dovecot master process shuts down. +Setting this to @code{#f} means that Dovecot can be upgraded without +forcing existing client connections to close (although that could also +be a problem if the upgrade is e.g. because of a security fix). +Defaults to @samp{#t}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} non-negative-integer doveadm-worker-count +If non-zero, run mail commands via this many connections to doveadm +server, instead of running them directly in the same process. +Defaults to @samp{0}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string doveadm-socket-path +UNIX socket or host:port used for connecting to doveadm server. +Defaults to @samp{"doveadm-server"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} space-separated-string-list import-environment +List of environment variables that are preserved on Dovecot startup +and passed down to all of its child processes. You can also give +key=value pairs to always set specific settings. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean disable-plaintext-auth? +Disable LOGIN command and all other plaintext authentications unless +SSL/TLS is used (LOGINDISABLED capability). Note that if the remote IP +matches the local IP (i.e. you're connecting from the same computer), +the connection is considered secure and plaintext authentication is +allowed. See also ssl=required setting. +Defaults to @samp{#t}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} non-negative-integer auth-cache-size +Authentication cache size (e.g. @samp{#e10e6}). 0 means it's disabled. +Note that bsdauth, PAM and vpopmail require @samp{cache-key} to be set +for caching to be used. +Defaults to @samp{0}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string auth-cache-ttl +Time to live for cached data. After TTL expires the cached record +is no longer used, *except* if the main database lookup returns internal +failure. We also try to handle password changes automatically: If +user's previous authentication was successful, but this one wasn't, the +cache isn't used. For now this works only with plaintext +authentication. +Defaults to @samp{"1 hour"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string auth-cache-negative-ttl +TTL for negative hits (user not found, password mismatch). +0 disables caching them completely. +Defaults to @samp{"1 hour"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} space-separated-string-list auth-realms +List of realms for SASL authentication mechanisms that need them. +You can leave it empty if you don't want to support multiple realms. +Many clients simply use the first one listed here, so keep the default +realm first. +Defaults to @samp{()}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string auth-default-realm +Default realm/domain to use if none was specified. This is used for +both SASL realms and appending @@domain to username in plaintext +logins. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string auth-username-chars +List of allowed characters in username. If the user-given username +contains a character not listed in here, the login automatically fails. +This is just an extra check to make sure user can't exploit any +potential quote escaping vulnerabilities with SQL/LDAP databases. If +you want to allow all characters, set this value to empty. +Defaults to @samp{"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890.-_@@"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string auth-username-translation +Username character translations before it's looked up from +databases. The value contains series of from -> to characters. For +example @samp{#@@/@@} means that @samp{#} and @samp{/} characters are +translated to @samp{@@}. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string auth-username-format +Username formatting before it's looked up from databases. You can +use the standard variables here, e.g. %Lu would lowercase the username, +%n would drop away the domain if it was given, or @samp{%n-AT-%d} would +change the @samp{@@} into @samp{-AT-}. This translation is done after +@samp{auth-username-translation} changes. +Defaults to @samp{"%Lu"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string auth-master-user-separator +If you want to allow master users to log in by specifying the master +username within the normal username string (i.e. not using SASL +mechanism's support for it), you can specify the separator character +here. The format is then . +UW-IMAP uses @samp{*} as the separator, so that could be a good +choice. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string auth-anonymous-username +Username to use for users logging in with ANONYMOUS SASL +mechanism. +Defaults to @samp{"anonymous"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} non-negative-integer auth-worker-max-count +Maximum number of dovecot-auth worker processes. They're used to +execute blocking passdb and userdb queries (e.g. MySQL and PAM). +They're automatically created and destroyed as needed. +Defaults to @samp{30}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string auth-gssapi-hostname +Host name to use in GSSAPI principal names. The default is to use +the name returned by gethostname(). Use @samp{$ALL} (with quotes) to +allow all keytab entries. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string auth-krb5-keytab +Kerberos keytab to use for the GSSAPI mechanism. Will use the +system default (usually /etc/krb5.keytab) if not specified. You may +need to change the auth service to run as root to be able to read this +file. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean auth-use-winbind? +Do NTLM and GSS-SPNEGO authentication using Samba's winbind daemon +and @samp{ntlm-auth} helper. +. +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} file-name auth-winbind-helper-path +Path for Samba's @samp{ntlm-auth} helper binary. +Defaults to @samp{"/usr/bin/ntlm_auth"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string auth-failure-delay +Time to delay before replying to failed authentications. +Defaults to @samp{"2 secs"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean auth-ssl-require-client-cert? +Require a valid SSL client certificate or the authentication +fails. +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean auth-ssl-username-from-cert? +Take the username from client's SSL certificate, using +@code{X509_NAME_get_text_by_NID()} which returns the subject's DN's +CommonName. +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} space-separated-string-list auth-mechanisms +List of wanted authentication mechanisms. Supported mechanisms are: +@samp{plain}, @samp{login}, @samp{digest-md5}, @samp{cram-md5}, +@samp{ntlm}, @samp{rpa}, @samp{apop}, @samp{anonymous}, @samp{gssapi}, +@samp{otp}, @samp{skey}, and @samp{gss-spnego}. NOTE: See also +@samp{disable-plaintext-auth} setting. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} space-separated-string-list director-servers +List of IPs or hostnames to all director servers, including ourself. +Ports can be specified as ip:port. The default port is the same as what +director service's @samp{inet-listener} is using. +Defaults to @samp{()}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} space-separated-string-list director-mail-servers +List of IPs or hostnames to all backend mail servers. Ranges are +allowed too, like 10.0.0.10-10.0.0.30. +Defaults to @samp{()}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string director-user-expire +How long to redirect users to a specific server after it no longer +has any connections. +Defaults to @samp{"15 min"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} non-negative-integer director-doveadm-port +TCP/IP port that accepts doveadm connections (instead of director +connections) If you enable this, you'll also need to add +@samp{inet-listener} for the port. +Defaults to @samp{0}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string director-username-hash +How the username is translated before being hashed. Useful values +include %Ln if user can log in with or without @@domain, %Ld if mailboxes +are shared within domain. +Defaults to @samp{"%Lu"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string log-path +Log file to use for error messages. @samp{syslog} logs to syslog, +@samp{/dev/stderr} logs to stderr. +Defaults to @samp{"syslog"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string info-log-path +Log file to use for informational messages. Defaults to +@samp{log-path}. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string debug-log-path +Log file to use for debug messages. Defaults to +@samp{info-log-path}. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string syslog-facility +Syslog facility to use if you're logging to syslog. Usually if you +don't want to use @samp{mail}, you'll use local0..local7. Also other +standard facilities are supported. +Defaults to @samp{"mail"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean auth-verbose? +Log unsuccessful authentication attempts and the reasons why they +failed. +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean auth-verbose-passwords? +In case of password mismatches, log the attempted password. Valid +values are no, plain and sha1. sha1 can be useful for detecting brute +force password attempts vs. user simply trying the same password over +and over again. You can also truncate the value to n chars by appending +":n" (e.g. sha1:6). +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean auth-debug? +Even more verbose logging for debugging purposes. Shows for example +SQL queries. +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean auth-debug-passwords? +In case of password mismatches, log the passwords and used scheme so +the problem can be debugged. Enabling this also enables +@samp{auth-debug}. +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean mail-debug? +Enable mail process debugging. This can help you figure out why +Dovecot isn't finding your mails. +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean verbose-ssl? +Show protocol level SSL errors. +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string log-timestamp +Prefix for each line written to log file. % codes are in +strftime(3) format. +Defaults to @samp{"\"%b %d %H:%M:%S \""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} space-separated-string-list login-log-format-elements +List of elements we want to log. The elements which have a +non-empty variable value are joined together to form a comma-separated +string. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string login-log-format +Login log format. %s contains @samp{login-log-format-elements} +string, %$ contains the data we want to log. +Defaults to @samp{"%$: %s"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string mail-log-prefix +Log prefix for mail processes. See doc/wiki/Variables.txt for list +of possible variables you can use. +Defaults to @samp{"\"%s(%u): \""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string deliver-log-format +Format to use for logging mail deliveries. You can use variables: +@table @code +@item %$ +Delivery status message (e.g. @samp{saved to INBOX}) +@item %m +Message-ID +@item %s +Subject +@item %f +From address +@item %p +Physical size +@item %w +Virtual size. +@end table +Defaults to @samp{"msgid=%m: %$"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string mail-location +Location for users' mailboxes. The default is empty, which means +that Dovecot tries to find the mailboxes automatically. This won't work +if the user doesn't yet have any mail, so you should explicitly tell +Dovecot the full location. + +If you're using mbox, giving a path to the INBOX +file (e.g. /var/mail/%u) isn't enough. You'll also need to tell Dovecot +where the other mailboxes are kept. This is called the "root mail +directory", and it must be the first path given in the +@samp{mail-location} setting. + +There are a few special variables you can use, eg.: + +@table @samp +@item %u +username +@item %n +user part in user@@domain, same as %u if there's no domain +@item %d +domain part in user@@domain, empty if there's no domain +@item %h +home director +@end table + +See doc/wiki/Variables.txt for full list. Some examples: +@table @samp +@item maildir:~/Maildir +@item mbox:~/mail:INBOX=/var/mail/%u +@item mbox:/var/mail/%d/%1n/%n:INDEX=/var/indexes/%d/%1n/% +@end table +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string mail-uid +System user and group used to access mails. If you use multiple, +userdb can override these by returning uid or gid fields. You can use +either numbers or names. . +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string mail-gid + +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string mail-privileged-group +Group to enable temporarily for privileged operations. Currently +this is used only with INBOX when either its initial creation or +dotlocking fails. Typically this is set to "mail" to give access to +/var/mail. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string mail-access-groups +Grant access to these supplementary groups for mail processes. +Typically these are used to set up access to shared mailboxes. Note +that it may be dangerous to set these if users can create +symlinks (e.g. if "mail" group is set here, ln -s /var/mail ~/mail/var +could allow a user to delete others' mailboxes, or ln -s +/secret/shared/box ~/mail/mybox would allow reading it). +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean mail-full-filesystem-access? +Allow full filesystem access to clients. There's no access checks +other than what the operating system does for the active UID/GID. It +works with both maildir and mboxes, allowing you to prefix mailboxes +names with e.g. /path/ or ~user/. +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean mmap-disable? +Don't use mmap() at all. This is required if you store indexes to +shared filesystems (NFS or clustered filesystem). +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean dotlock-use-excl? +Rely on @samp{O_EXCL} to work when creating dotlock files. NFS +supports @samp{O_EXCL} since version 3, so this should be safe to use +nowadays by default. +Defaults to @samp{#t}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string mail-fsync +When to use fsync() or fdatasync() calls: +@table @code +@item optimized +Whenever necessary to avoid losing important data +@item always +Useful with e.g. NFS when write()s are delayed +@item never +Never use it (best performance, but crashes can lose data). +@end table +Defaults to @samp{"optimized"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean mail-nfs-storage? +Mail storage exists in NFS. Set this to yes to make Dovecot flush +NFS caches whenever needed. If you're using only a single mail server +this isn't needed. +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean mail-nfs-index? +Mail index files also exist in NFS. Setting this to yes requires +@samp{mmap-disable? #t} and @samp{fsync-disable? #f}. +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string lock-method +Locking method for index files. Alternatives are fcntl, flock and +dotlock. Dotlocking uses some tricks which may create more disk I/O +than other locking methods. NFS users: flock doesn't work, remember to +change @samp{mmap-disable}. +Defaults to @samp{"fcntl"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} file-name mail-temp-dir +Directory in which LDA/LMTP temporarily stores incoming mails >128 +kB. +Defaults to @samp{"/tmp"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} non-negative-integer first-valid-uid +Valid UID range for users. This is mostly to make sure that users can't +log in as daemons or other system users. Note that denying root logins is +hardcoded to dovecot binary and can't be done even if @samp{first-valid-uid} +is set to 0. +Defaults to @samp{500}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} non-negative-integer last-valid-uid + +Defaults to @samp{0}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} non-negative-integer first-valid-gid +Valid GID range for users. Users having non-valid GID as primary group ID +aren't allowed to log in. If user belongs to supplementary groups with +non-valid GIDs, those groups are not set. +Defaults to @samp{1}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} non-negative-integer last-valid-gid + +Defaults to @samp{0}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} non-negative-integer mail-max-keyword-length +Maximum allowed length for mail keyword name. It's only forced when +trying to create new keywords. +Defaults to @samp{50}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} colon-separated-file-name-list valid-chroot-dirs +List of directories under which chrooting is allowed for mail +processes (i.e. /var/mail will allow chrooting to /var/mail/foo/bar +too). This setting doesn't affect @samp{login-chroot} +@samp{mail-chroot} or auth chroot settings. If this setting is empty, +"/./" in home dirs are ignored. WARNING: Never add directories here +which local users can modify, that may lead to root exploit. Usually +this should be done only if you don't allow shell access for users. +. +Defaults to @samp{()}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string mail-chroot +Default chroot directory for mail processes. This can be overridden +for specific users in user database by giving /./ in user's home +directory (e.g. /home/./user chroots into /home). Note that usually +there is no real need to do chrooting, Dovecot doesn't allow users to +access files outside their mail directory anyway. If your home +directories are prefixed with the chroot directory, append "/." to +@samp{mail-chroot}. . +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} file-name auth-socket-path +UNIX socket path to master authentication server to find users. +This is used by imap (for shared users) and lda. +Defaults to @samp{"/var/run/dovecot/auth-userdb"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} file-name mail-plugin-dir +Directory where to look up mail plugins. +Defaults to @samp{"/usr/lib/dovecot"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} space-separated-string-list mail-plugins +List of plugins to load for all services. Plugins specific to IMAP, +LDA, etc. are added to this list in their own .conf files. +Defaults to @samp{()}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} non-negative-integer mail-cache-min-mail-count +The minimum number of mails in a mailbox before updates are done to +cache file. This allows optimizing Dovecot's behavior to do less disk +writes at the cost of more disk reads. +Defaults to @samp{0}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string mailbox-idle-check-interval +When IDLE command is running, mailbox is checked once in a while to +see if there are any new mails or other changes. This setting defines +the minimum time to wait between those checks. Dovecot can also use +dnotify, inotify and kqueue to find out immediately when changes +occur. +Defaults to @samp{"30 secs"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean mail-save-crlf? +Save mails with CR+LF instead of plain LF. This makes sending those +mails take less CPU, especially with sendfile() syscall with Linux and +FreeBSD. But it also creates a bit more disk I/O which may just make it +slower. Also note that if other software reads the mboxes/maildirs, +they may handle the extra CRs wrong and cause problems. +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean maildir-stat-dirs? +By default LIST command returns all entries in maildir beginning +with a dot. Enabling this option makes Dovecot return only entries +which are directories. This is done by stat()ing each entry, so it +causes more disk I/O. + (For systems setting struct @samp{dirent->d_type} this check is free +and it's done always regardless of this setting). +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean maildir-copy-with-hardlinks? +When copying a message, do it with hard links whenever possible. +This makes the performance much better, and it's unlikely to have any +side effects. +Defaults to @samp{#t}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean maildir-very-dirty-syncs? +Assume Dovecot is the only MUA accessing Maildir: Scan cur/ +directory only when its mtime changes unexpectedly or when we can't find +the mail otherwise. +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} space-separated-string-list mbox-read-locks +Which locking methods to use for locking mbox. There are four +available: + +@table @code +@item dotlock +Create .lock file. This is the oldest and most NFS-safe +solution. If you want to use /var/mail/ like directory, the users will +need write access to that directory. +@item dotlock-try +Same as dotlock, but if it fails because of permissions or because there +isn't enough disk space, just skip it. +@item fcntl +Use this if possible. Works with NFS too if lockd is used. +@item flock +May not exist in all systems. Doesn't work with NFS. +@item lockf +May not exist in all systems. Doesn't work with NFS. +@end table + +You can use multiple locking methods; if you do the order they're declared +in is important to avoid deadlocks if other MTAs/MUAs are using multiple +locking methods as well. Some operating systems don't allow using some of +them simultaneously. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} space-separated-string-list mbox-write-locks + +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string mbox-lock-timeout +Maximum time to wait for lock (all of them) before aborting. +Defaults to @samp{"5 mins"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string mbox-dotlock-change-timeout +If dotlock exists but the mailbox isn't modified in any way, +override the lock file after this much time. +Defaults to @samp{"2 mins"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean mbox-dirty-syncs? +When mbox changes unexpectedly we have to fully read it to find out +what changed. If the mbox is large this can take a long time. Since +the change is usually just a newly appended mail, it'd be faster to +simply read the new mails. If this setting is enabled, Dovecot does +this but still safely fallbacks to re-reading the whole mbox file +whenever something in mbox isn't how it's expected to be. The only real +downside to this setting is that if some other MUA changes message +flags, Dovecot doesn't notice it immediately. Note that a full sync is +done with SELECT, EXAMINE, EXPUNGE and CHECK commands. +Defaults to @samp{#t}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean mbox-very-dirty-syncs? +Like @samp{mbox-dirty-syncs}, but don't do full syncs even with SELECT, +EXAMINE, EXPUNGE or CHECK commands. If this is set, +@samp{mbox-dirty-syncs} is ignored. +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean mbox-lazy-writes? +Delay writing mbox headers until doing a full write sync (EXPUNGE +and CHECK commands and when closing the mailbox). This is especially +useful for POP3 where clients often delete all mails. The downside is +that our changes aren't immediately visible to other MUAs. +Defaults to @samp{#t}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} non-negative-integer mbox-min-index-size +If mbox size is smaller than this (e.g. 100k), don't write index +files. If an index file already exists it's still read, just not +updated. +Defaults to @samp{0}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} non-negative-integer mdbox-rotate-size +Maximum dbox file size until it's rotated. +Defaults to @samp{2000000}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string mdbox-rotate-interval +Maximum dbox file age until it's rotated. Typically in days. Day +begins from midnight, so 1d = today, 2d = yesterday, etc. 0 = check +disabled. +Defaults to @samp{"1d"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean mdbox-preallocate-space? +When creating new mdbox files, immediately preallocate their size to +@samp{mdbox-rotate-size}. This setting currently works only in Linux +with some filesystems (ext4, xfs). +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string mail-attachment-dir +sdbox and mdbox support saving mail attachments to external files, +which also allows single instance storage for them. Other backends +don't support this for now. + +WARNING: This feature hasn't been tested much yet. Use at your own risk. + +Directory root where to store mail attachments. Disabled, if empty. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} non-negative-integer mail-attachment-min-size +Attachments smaller than this aren't saved externally. It's also +possible to write a plugin to disable saving specific attachments +externally. +Defaults to @samp{128000}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string mail-attachment-fs +Filesystem backend to use for saving attachments: +@table @code +@item posix +No SiS done by Dovecot (but this might help FS's own deduplication) +@item sis posix +SiS with immediate byte-by-byte comparison during saving +@item sis-queue posix +SiS with delayed comparison and deduplication. +@end table +Defaults to @samp{"sis posix"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string mail-attachment-hash +Hash format to use in attachment filenames. You can add any text and +variables: @code{%@{md4@}}, @code{%@{md5@}}, @code{%@{sha1@}}, +@code{%@{sha256@}}, @code{%@{sha512@}}, @code{%@{size@}}. Variables can be +truncated, e.g. @code{%@{sha256:80@}} returns only first 80 bits. +Defaults to @samp{"%@{sha1@}"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} non-negative-integer default-process-limit + +Defaults to @samp{100}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} non-negative-integer default-client-limit + +Defaults to @samp{1000}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} non-negative-integer default-vsz-limit +Default VSZ (virtual memory size) limit for service processes. +This is mainly intended to catch and kill processes that leak memory +before they eat up everything. +Defaults to @samp{256000000}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string default-login-user +Login user is internally used by login processes. This is the most +untrusted user in Dovecot system. It shouldn't have access to anything +at all. +Defaults to @samp{"dovenull"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string default-internal-user +Internal user is used by unprivileged processes. It should be +separate from login user, so that login processes can't disturb other +processes. +Defaults to @samp{"dovecot"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string ssl? +SSL/TLS support: yes, no, required. . +Defaults to @samp{"required"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string ssl-cert +PEM encoded X.509 SSL/TLS certificate (public key). +Defaults to @samp{". %d expands to recipient domain. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string hostname +Hostname to use in various parts of sent mails (e.g. in Message-Id) +and in LMTP replies. Default is the system's real hostname@@domain. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean quota-full-tempfail? +If user is over quota, return with temporary failure instead of +bouncing the mail. +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} file-name sendmail-path +Binary to use for sending mails. +Defaults to @samp{"/usr/sbin/sendmail"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string submission-host +If non-empty, send mails via this SMTP host[:port] instead of +sendmail. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string rejection-subject +Subject: header to use for rejection mails. You can use the same +variables as for @samp{rejection-reason} below. +Defaults to @samp{"Rejected: %s"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string rejection-reason +Human readable error message for rejection mails. You can use +variables: + +@table @code +@item %n +CRLF +@item %r +reason +@item %s +original subject +@item %t +recipient +@end table +Defaults to @samp{"Your message to <%t> was automatically rejected:%n%r"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string recipient-delimiter +Delimiter character between local-part and detail in email +address. +Defaults to @samp{"+"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string lda-original-recipient-header +Header where the original recipient address (SMTP's RCPT TO: +address) is taken from if not available elsewhere. With dovecot-lda -a +parameter overrides this. A commonly used header for this is +X-Original-To. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean lda-mailbox-autocreate? +Should saving a mail to a nonexistent mailbox automatically create +it?. +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} boolean lda-mailbox-autosubscribe? +Should automatically created mailboxes be also automatically +subscribed?. +Defaults to @samp{#f}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} non-negative-integer imap-max-line-length +Maximum IMAP command line length. Some clients generate very long +command lines with huge mailboxes, so you may need to raise this if you +get "Too long argument" or "IMAP command line too large" errors +often. +Defaults to @samp{64000}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string imap-logout-format +IMAP logout format string: +@table @code +@item %i +total number of bytes read from client +@item %o +total number of bytes sent to client. +@end table +Defaults to @samp{"in=%i out=%o"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string imap-capability +Override the IMAP CAPABILITY response. If the value begins with '+', +add the given capabilities on top of the defaults (e.g. +XFOO XBAR). +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string imap-idle-notify-interval +How long to wait between "OK Still here" notifications when client +is IDLEing. +Defaults to @samp{"2 mins"}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string imap-id-send +ID field names and values to send to clients. Using * as the value +makes Dovecot use the default value. The following fields have default +values currently: name, version, os, os-version, support-url, +support-email. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} string imap-id-log +ID fields sent by client to log. * means everything. +Defaults to @samp{""}. +@end deftypevr + +@deftypevr {@code{dovecot-configuration} parameter} space-separated-string-list imap-client-workarounds +Workarounds for various client bugs: + +@table @code +@item delay-newmail +Send EXISTS/RECENT new mail notifications only when replying to NOOP and +CHECK commands. Some clients ignore them otherwise, for example OSX +Mail ( +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . +;;; +;;; Some of the help text was taken from the default dovecot.conf files. + +(define-module (gnu services mail) + #:use-module (gnu services) + #:use-module (gnu services base) + #:use-module (gnu services dmd) + #:use-module (gnu system pam) + #:use-module (gnu system shadow) + #:use-module (gnu packages mail) + #:use-module (gnu packages admin) + #:use-module (gnu packages tls) + #:use-module (guix records) + #:use-module (guix packages) + #:use-module (guix gexp) + #:use-module (srfi srfi-34) + #:use-module (srfi srfi-35) + #:use-module (ice-9 match) + #:export (&dovecot-configuation-error + dovecot-configuration-error? + + dovecot-service + dovecot-configuration + opaque-dovecot-configuration + + dict-configuration + passdb-configuration + userdb-configuration + unix-listener-configuration + fifo-listener-configuration + inet-listener-configuration + service-configuration + protocol-configuration + plugin-configuration + mailbox-configuration + namespace-configuration)) + +;;; Commentary: +;;; +;;; This module provides service definitions for the Dovecot POP3 and IMAP +;;; mail server. +;;; +;;; Code: + +(define-condition-type &dovecot-configuration-error &error + dovecot-configuration-error?) + +(define (dovecot-error message) + (raise (condition (&message (message message)) + (&dovecot-configuration-error)))) +(define (dovecot-configuration-field-error field val) + (dovecot-error + (format #f "Invalid value for field ~a: ~s" field val))) +(define (dovecot-configuration-missing-field kind field) + (dovecot-error + (format #f "~a configuration missing required field ~a" kind field))) + +(define-record-type* + configuration-field make-configuration-field configuration-field? + (name configuration-field-name) + (type configuration-field-type) + (getter configuration-field-getter) + (predicate configuration-field-predicate) + (serializer configuration-field-serializer) + (default-value-thunk configuration-field-default-value-thunk) + (documentation configuration-field-documentation)) + +(define-syntax define-configuration + (lambda (stx) + (define (id ctx part . parts) + (let ((part (syntax->datum part))) + (datum->syntax + ctx + (match parts + (() part) + (parts (symbol-append part + (syntax->datum (apply id ctx parts)))))))) + (syntax-case stx () + ((_ stem (field (field-type def) doc) ...) + (with-syntax (((field-getter ...) + (map (lambda (field) + (id #'stem #'stem #'- field)) + #'(field ...))) + ((field-predicate ...) + (map (lambda (type) + (id #'stem type #'?)) + #'(field-type ...))) + ((field-serializer ...) + (map (lambda (type) + (id #'stem #'serialize- type)) + #'(field-type ...)))) + #`(begin + (define-record-type* #,(id #'stem #'< #'stem #'>) + stem #,(id #'stem #'make- #'stem) #,(id #'stem #'stem #'?) + (field field-getter (default def)) + ...) + (define #,(id #'stem #'stem #'-fields) + (list (configuration-field + (name 'field) + (type 'field-type) + (getter field-getter) + (predicate field-predicate) + (serializer field-serializer) + (default-value-thunk (lambda () def)) + (documentation doc)) + ...)))))))) + +(define (serialize-configuration config fields) + (for-each (lambda (field) + ((configuration-field-serializer field) + (configuration-field-name field) + ((configuration-field-getter field) config))) + fields)) + +(define (validate-configuration config fields) + (for-each (lambda (field) + (let ((val ((configuration-field-getter field) config))) + (unless ((configuration-field-predicate field) val) + (dovecot-configuration-field-error + (configuration-field-name field) val)))) + fields)) + +(define (validate-package field-name package) + (unless (package? package) + (dovecot-configuration-field-error field-name package))) + +(define (uglify-field-name field-name) + (let ((str (symbol->string field-name))) + (string-join (string-split (if (string-suffix? "?" str) + (substring str 0 (1- (string-length str))) + str) + #\-) + "_"))) + +(define (serialize-package field-name val) + #f) + +(define (serialize-field field-name val) + (format #t "~a=~a\n" (uglify-field-name field-name) val)) + +(define (serialize-string field-name val) + (serialize-field field-name val)) + +(define (space-separated-string-list? val) + (and (list? val) + (and-map (lambda (x) + (and (string? x) (not (string-index x #\space)))) + val))) +(define (serialize-space-separated-string-list field-name val) + (serialize-field field-name (string-join val " "))) + +(define (comma-separated-string-list? val) + (and (list? val) + (and-map (lambda (x) + (and (string? x) (not (string-index x #\,)))) + val))) +(define (serialize-comma-separated-string-list field-name val) + (serialize-field field-name (string-join val ","))) + +(define (file-name? val) + (and (string? val) + (string-prefix? "/" val))) +(define (serialize-file-name field-name val) + (serialize-string field-name val)) + +(define (colon-separated-file-name-list? val) + (and (list? val) + ;; Trailing slashes not needed and not + (and-map file-name? val))) +(define (serialize-colon-separated-file-name-list field-name val) + (serialize-field field-name (string-join val ":"))) + +(define (serialize-boolean field-name val) + (serialize-string field-name (if val "yes" "no"))) + +(define (non-negative-integer? val) + (and (exact-integer? val) (not (negative? val)))) +(define (serialize-non-negative-integer field-name val) + (serialize-field field-name val)) + +(define (hours? val) (non-negative-integer? val)) +(define (serialize-hours field-name val) + (serialize-field field-name (format #f "~a hours" val))) + +(define (free-form-fields? val) + (match val + (() #t) + ((((? symbol?) . (? string)) . val) (free-form-fields? val)) + (_ #f))) +(define (serialize-free-form-fields field-name val) + (for-each (match-lambda ((k . v) (serialize-field k v))) val)) + +(define (free-form-args? val) + (match val + (() #t) + ((((? symbol?) . (? string)) . val) (free-form-args? val)) + (_ #f))) +(define (serialize-free-form-args field-name val) + (serialize-field field-name + (string-join + (map (match-lambda ((k . v) (format #t "~a=~a" k v))) val) + " "))) + +(define-configuration dict-configuration + (entries + (free-form-fields '()) + "A list of key-value pairs that this dict should hold.")) + +(define (serialize-dict-configuration field-name val) + (format #t "dict {\n") + (serialize-configuration val dict-configuration-fields) + (format #t "}\n")) + +(define-configuration passdb-configuration + (driver + (string "pam") + "The driver that the passdb should use. Valid values include +@samp{pam}, @samp{passwd}, @samp{shadow}, @samp{bsdauth}, and +@samp{static}.") + (args + (free-form-args '()) + "A list of key-value args to the passdb driver.")) + +(define (serialize-passdb-configuration field-name val) + (format #t "passdb {\n") + (serialize-configuration val passdb-configuration-fields) + (format #t "}\n")) +(define (passdb-configuration-list? val) + (and (list? val) (and-map passdb-configuration? val))) +(define (serialize-passdb-configuration-list field-name val) + (for-each (lambda (val) (serialize-passdb-configuration field-name val)) val)) + +(define-configuration userdb-configuration + (driver + (string "passwd") + "The driver that the userdb should use. Valid values include +@samp{passwd} and @samp{static}.") + (args + (free-form-args '()) + "A list of key-value args to the userdb driver.") + (override-fields + (free-form-args '()) + "Override fields from passwd.")) + +(define (serialize-userdb-configuration field-name val) + (format #t "userdb {\n") + (serialize-configuration val userdb-configuration-fields) + (format #t "}\n")) +(define (userdb-configuration-list? val) + (and (list? val) (and-map userdb-configuration? val))) +(define (serialize-userdb-configuration-list field-name val) + (for-each (lambda (val) (serialize-userdb-configuration field-name val)) val)) + +(define-configuration unix-listener-configuration + (path + (file-name (dovecot-configuration-missing-field 'unix-listener 'path)) + "The file name on which to listen.") + (mode + (string "0600") + "The access mode for the socket.") + (user + (string "") + "The user to own the the socket.") + (group + (string "") + "The group to own the socket.")) + +(define (serialize-unix-listener-configuration field-name val) + (format #t "unix_listener ~a {\n" (unix-listener-configuration-path val)) + (serialize-configuration val (cdr unix-listener-configuration-fields)) + (format #t "}\n")) + +(define-configuration fifo-listener-configuration + (path + (file-name (dovecot-configuration-missing-field 'fifo-listener 'path)) + "The file name on which to listen.") + (mode + (string "0600") + "The access mode for the socket.") + (user + (string "") + "The user to own the the socket.") + (group + (string "") + "The group to own the socket.")) + +(define (serialize-fifo-listener-configuration field-name val) + (format #t "fifo_listener ~a {\n" (fifo-listener-configuration-path val)) + (serialize-configuration val (cdr fifo-listener-configuration-fields)) + (format #t "}\n")) + +(define-configuration inet-listener-configuration + (protocol + (string (dovecot-configuration-missing-field 'inet-listener 'protocol)) + "The protocol to listen for.") + (address + (string "") + "The address on which to listen, or empty for all addresses.") + (port + (non-negative-integer + (dovecot-configuration-missing-field 'inet-listener 'port)) + "The port on which to listen.") + (ssl? + (boolean #t) + "Whether to use SSL for this service; @samp{yes}, @samp{no}, or +@samp{required}.")) + +(define (serialize-inet-listener-configuration field-name val) + (format #t "inet_listener ~a {\n" (inet-listener-configuration-protocol val)) + (serialize-configuration val (cdr inet-listener-configuration-fields)) + (format #t "}\n")) + +(define (listener-configuration? val) + (or (unix-listener-configuration? val) + (fifo-listener-configuration? val) + (inet-listener-configuration? val))) +(define (serialize-listener-configuration field-name val) + (cond + ((unix-listener-configuration? val) + (serialize-unix-listener-configuration field-name val)) + ((fifo-listener-configuration? val) + (serialize-fifo-listener-configuration field-name val)) + ((inet-listener-configuration? val) + (serialize-inet-listener-configuration field-name val)) + (else (dovecot-configuration-field-error field-name val)))) +(define (listener-configuration-list? val) + (and (list? val) (and-map listener-configuration? val))) +(define (serialize-listener-configuration-list field-name val) + (for-each (lambda (val) + (serialize-listener-configuration field-name val)) + val)) + +(define-configuration service-configuration + (kind + (string (dovecot-configuration-missing-field 'service 'kind)) + "The service kind. Valid values include @code{director}, +@code{imap-login}, @code{pop3-login}, @code{lmtp}, @code{imap}, +@code{pop3}, @code{auth}, @code{auth-worker}, @code{dict}, +@code{tcpwrap}, @code{quota-warning}, or anything else.") + (listeners + (listener-configuration-list '()) + "Listeners for the service. A listener is either an +@code{unix-listener-configuration}, a @code{fifo-listener-configuration}, or +an @code{inet-listener-configuration}.") + (service-count + (non-negative-integer 1) + "Number of connections to handle before starting a new process. +Typically the only useful values are 0 (unlimited) or 1. 1 is more +secure, but 0 is faster. .") + (process-min-avail + (non-negative-integer 0) + "Number of processes to always keep waiting for more connections.") + ;; FIXME: Need to be able to take the default for this value from other + ;; parts of the config. + (vsz-limit + (non-negative-integer #e256e6) + "If you set @samp{service-count 0}, you probably need to grow +this.")) + +(define (serialize-service-configuration field-name val) + (format #t "service ~a {\n" (service-configuration-kind val)) + (serialize-configuration val (cdr service-configuration-fields)) + (format #t "}\n")) +(define (service-configuration-list? val) + (and (list? val) (and-map service-configuration? val))) +(define (serialize-service-configuration-list field-name val) + (for-each (lambda (val) + (serialize-service-configuration field-name val)) + val)) + +(define-configuration protocol-configuration + (name + (string (dovecot-configuration-missing-field 'protocol 'name)) + "The name of the protocol.") + (auth-socket-path + (string "/var/run/dovecot/auth-userdb") + "UNIX socket path to master authentication server to find users. +This is used by imap (for shared users) and lda.") + (mail-plugins + (space-separated-string-list '("$mail_plugins")) + "Space separated list of plugins to load.") + (mail-max-userip-connections + (non-negative-integer 10) + "Maximum number of IMAP connections allowed for a user from each IP +address. NOTE: The username is compared case-sensitively.")) + +(define (serialize-protocol-configuration field-name val) + (format #t "protocol ~a {\n" (protocol-configuration-name val)) + (serialize-configuration val (cdr protocol-configuration-fields)) + (format #t "}\n")) +(define (protocol-configuration-list? val) + (and (list? val) (and-map protocol-configuration? val))) +(define (serialize-protocol-configuration-list field-name val) + (serialize-field 'protocols + (string-join (map protocol-configuration-name val) " ")) + (for-each (lambda (val) + (serialize-protocol-configuration field-name val)) + val)) + +(define-configuration plugin-configuration + (entries + (free-form-fields '()) + "A list of key-value pairs that this dict should hold.")) + +(define (serialize-plugin-configuration field-name val) + (format #t "plugin {\n") + (serialize-configuration val plugin-configuration-fields) + (format #t "}\n")) + +(define-configuration mailbox-configuration + (name + (string (error "mailbox name is required")) + "Name for this mailbox.") + + (auto + (string "no") + "@samp{create} will automatically create this mailbox. +@samp{subscribe} will both create and subscribe to the mailbox.") + + (special-use + (space-separated-string-list '()) + "List of IMAP @code{SPECIAL-USE} attributes as specified by RFC 6154. +Valid values are @code{\\All}, @code{\\Archive}, @code{\\Drafts}, +@code{\\Flagged}, @code{\\Junk}, @code{\\Sent}, and @code{\\Trash}.")) + +(define (serialize-mailbox-configuration field-name val) + (format #t "mailbox \"~a\" {\n" (mailbox-configuration-name val)) + (serialize-configuration val (cdr mailbox-configuration-fields)) + (format #t "}\n")) +(define (mailbox-configuration-list? val) + (and (list? val) (and-map mailbox-configuration? val))) +(define (serialize-mailbox-configuration-list field-name val) + (for-each (lambda (val) + (serialize-mailbox-configuration field-name val)) + val)) + +(define-configuration namespace-configuration + (name + (string (error "namespace name is required")) + "Name for this namespace.") + + (type + (string "private") + "Namespace type: @samp{private}, @samp{shared} or @samp{public}.") + + (separator + (string "") + "Hierarchy separator to use. You should use the same separator for +all namespaces or some clients get confused. @samp{/} is usually a good +one. The default however depends on the underlying mail storage +format.") + + (prefix + (string "") + "Prefix required to access this namespace. This needs to be +different for all namespaces. For example @samp{Public/}.") + + (location + (string "") + "Physical location of the mailbox. This is in same format as +mail_location, which is also the default for it.") + + (inbox? + (boolean #f) + "There can be only one INBOX, and this setting defines which +namespace has it.") + + (hidden? + (boolean #f) + "If namespace is hidden, it's not advertised to clients via NAMESPACE +extension. You'll most likely also want to set @samp{list? #f}. This is mostly +useful when converting from another server with different namespaces +which you want to deprecate but still keep working. For example you can +create hidden namespaces with prefixes @samp{~/mail/}, @samp{~%u/mail/} +and @samp{mail/}.") + + (list? + (boolean #t) + "Show the mailboxes under this namespace with LIST command. This +makes the namespace visible for clients that don't support NAMESPACE +extension. The special @code{children} value lists child mailboxes, but +hides the namespace prefix.") + + (subscriptions? + (boolean #t) + "Namespace handles its own subscriptions. If set to @code{#f}, the +parent namespace handles them. The empty prefix should always have this +as @code{#t}.)") + + (mailboxes + (mailbox-configuration-list '()) + "List of predefined mailboxes in this namespace.")) + +(define (serialize-namespace-configuration field-name val) + (format #t "namespace ~a {\n" (namespace-configuration-name val)) + (serialize-configuration val (cdr namespace-configuration-fields)) + (format #t "}\n")) +(define (list-of-namespace-configuration? val) + (and (list? val) (and-map namespace-configuration? val))) +(define (serialize-list-of-namespace-configuration field-name val) + (for-each (lambda (val) + (serialize-namespace-configuration field-name val)) + val)) + +(define-configuration dovecot-configuration + (dovecot + (package dovecot) + "The dovecot package.") + + (listen + (comma-separated-string-list '("*" "::")) + "A list of IPs or hosts where to listen in for connections. @samp{*} +listens in all IPv4 interfaces, @samp{::} listens in all IPv6 +interfaces. If you want to specify non-default ports or anything more +complex, customize the address and port fields of the +@samp{inet-listener} of the specific services you are interested in.") + + (protocols + (protocol-configuration-list + (list (protocol-configuration + (name "imap")))) + "List of protocols we want to serve. Available protocols include +@samp{imap}, @samp{pop3}, and @samp{lmtp}.") + + (services + (service-configuration-list + (list + (service-configuration + (kind "imap-login") + (listeners + (list + (inet-listener-configuration (protocol "imap") (port 143) (ssl? #f)) + (inet-listener-configuration (protocol "imaps") (port 993) (ssl? #t))))) + (service-configuration + (kind "pop3-login") + (listeners + (list + (inet-listener-configuration (protocol "pop3") (port 110) (ssl? #f)) + (inet-listener-configuration (protocol "pop3s") (port 995) (ssl? #t))))) + (service-configuration + (kind "lmtp") + (listeners + (list (unix-listener-configuration (path "lmtp") (mode "0666"))))) + (service-configuration (kind "imap")) + (service-configuration (kind "pop3")) + (service-configuration (kind "auth") + ;; In what could be taken to be a bug, the default value of 1 for + ;; service-count makes it so that a PAM auth worker can't fork off + ;; subprocesses for making blocking queries. The result is that nobody + ;; can log in -- very secure, but not very useful! If we simply omit + ;; the service-count, it will default to the value of + ;; auth-worker-max-count, which is 30, instead of defaulting to 1, which + ;; is the default for all other services. As a hack, bump this value to + ;; 30. + (service-count 30) + (listeners + (list (unix-listener-configuration (path "auth-userdb"))))) + (service-configuration (kind "auth-worker")) + (service-configuration (kind "dict") + (listeners (list (unix-listener-configuration (path "dict"))))))) + "List of services to enable. Available services include @samp{imap}, +@samp{imap-login}, @samp{pop3}, @samp{pop3-login}, @samp{auth}, and +@samp{lmtp}.") + + (dict + (dict-configuration (dict-configuration)) + "Dict configuration, as created by the @code{dict-configuration} +constructor.") + + (passdbs + (passdb-configuration-list (list (passdb-configuration (driver "pam")))) + "List of passdb configurations, each one created by the +@code{passdb-configuration} constructor.") + + (userdbs + (userdb-configuration-list (list (userdb-configuration (driver "passwd")))) + "List of userdb configurations, each one created by the +@code{userdb-configuration} constructor.") + + (plugin-configuration + (plugin-configuration (plugin-configuration)) + "Plug-in configuration, created by the @code{plugin-configuration} +constructor.") + + (namespaces + (list-of-namespace-configuration + (list + (namespace-configuration + (name "inbox") + (prefix "") + (inbox? #t) + (mailboxes + (list + (mailbox-configuration (name "Drafts") (special-use '("\\Drafts"))) + (mailbox-configuration (name "Junk") (special-use '("\\Junk"))) + (mailbox-configuration (name "Trash") (special-use '("\\Trash"))) + (mailbox-configuration (name "Sent") (special-use '("\\Sent"))) + (mailbox-configuration (name "Sent Messages") (special-use '("\\Sent"))) + (mailbox-configuration (name "Drafts") (special-use '("\\Drafts")))))))) + "List of namespaces. Each item in the list is created by the +@code{namespace-configuration} constructor.") + + (base-dir + (file-name "/var/run/dovecot/") + "Base directory where to store runtime data.") + + (login-greeting + (string "Dovecot ready.") + "Greeting message for clients.") + + (login-trusted-networks + (space-separated-string-list '()) + "List of trusted network ranges. Connections from these IPs are +allowed to override their IP addresses and ports (for logging and for +authentication checks). @samp{disable-plaintext-auth} is also ignored +for these networks. Typically you'd specify your IMAP proxy servers +here.") + + (login-access-sockets + (space-separated-string-list '()) + "List of login access check sockets (e.g. tcpwrap).") + + (verbose-proctitle? + (boolean #f) + "Show more verbose process titles (in ps). Currently shows user name +and IP address. Useful for seeing who are actually using the IMAP +processes (e.g. shared mailboxes or if same uid is used for multiple +accounts).") + + (shutdown-clients? + (boolean #t) + "Should all processes be killed when Dovecot master process shuts down. +Setting this to @code{#f} means that Dovecot can be upgraded without +forcing existing client connections to close (although that could also +be a problem if the upgrade is e.g. because of a security fix).") + + (doveadm-worker-count + (non-negative-integer 0) + "If non-zero, run mail commands via this many connections to doveadm +server, instead of running them directly in the same process.") + + (doveadm-socket-path + (string "doveadm-server") + "UNIX socket or host:port used for connecting to doveadm server.") + + (import-environment + (space-separated-string-list '("TZ")) + "List of environment variables that are preserved on Dovecot startup +and passed down to all of its child processes. You can also give +key=value pairs to always set specific settings.") + +;;; Authentication processes + + (disable-plaintext-auth? + (boolean #t) + "Disable LOGIN command and all other plaintext authentications unless +SSL/TLS is used (LOGINDISABLED capability). Note that if the remote IP +matches the local IP (i.e. you're connecting from the same computer), +the connection is considered secure and plaintext authentication is +allowed. See also ssl=required setting.") + + (auth-cache-size + (non-negative-integer 0) + "Authentication cache size (e.g. @samp{#e10e6}). 0 means it's disabled. +Note that bsdauth, PAM and vpopmail require @samp{cache-key} to be set +for caching to be used.") + + (auth-cache-ttl + (string "1 hour") + "Time to live for cached data. After TTL expires the cached record +is no longer used, *except* if the main database lookup returns internal +failure. We also try to handle password changes automatically: If +user's previous authentication was successful, but this one wasn't, the +cache isn't used. For now this works only with plaintext +authentication.") + + (auth-cache-negative-ttl + (string "1 hour") + "TTL for negative hits (user not found, password mismatch). +0 disables caching them completely.") + + (auth-realms + (space-separated-string-list '()) + "List of realms for SASL authentication mechanisms that need them. +You can leave it empty if you don't want to support multiple realms. +Many clients simply use the first one listed here, so keep the default +realm first.") + + (auth-default-realm + (string "") + "Default realm/domain to use if none was specified. This is used for +both SASL realms and appending @@domain to username in plaintext +logins.") + + (auth-username-chars + (string + "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890.-_@") + "List of allowed characters in username. If the user-given username +contains a character not listed in here, the login automatically fails. +This is just an extra check to make sure user can't exploit any +potential quote escaping vulnerabilities with SQL/LDAP databases. If +you want to allow all characters, set this value to empty.") + + (auth-username-translation + (string "") + "Username character translations before it's looked up from +databases. The value contains series of from -> to characters. For +example @samp{#@@/@@} means that @samp{#} and @samp{/} characters are +translated to @samp{@@}.") + + (auth-username-format + (string "%Lu") + "Username formatting before it's looked up from databases. You can +use the standard variables here, e.g. %Lu would lowercase the username, +%n would drop away the domain if it was given, or @samp{%n-AT-%d} would +change the @samp{@@} into @samp{-AT-}. This translation is done after +@samp{auth-username-translation} changes.") + + (auth-master-user-separator + (string "") + "If you want to allow master users to log in by specifying the master +username within the normal username string (i.e. not using SASL +mechanism's support for it), you can specify the separator character +here. The format is then . +UW-IMAP uses @samp{*} as the separator, so that could be a good +choice.") + + (auth-anonymous-username + (string "anonymous") + "Username to use for users logging in with ANONYMOUS SASL +mechanism.") + + (auth-worker-max-count + (non-negative-integer 30) + "Maximum number of dovecot-auth worker processes. They're used to +execute blocking passdb and userdb queries (e.g. MySQL and PAM). +They're automatically created and destroyed as needed.") + + (auth-gssapi-hostname + (string "") + "Host name to use in GSSAPI principal names. The default is to use +the name returned by gethostname(). Use @samp{$ALL} (with quotes) to +allow all keytab entries.") + + (auth-krb5-keytab + (string "") + "Kerberos keytab to use for the GSSAPI mechanism. Will use the +system default (usually /etc/krb5.keytab) if not specified. You may +need to change the auth service to run as root to be able to read this +file.") + + (auth-use-winbind? + (boolean #f) + "Do NTLM and GSS-SPNEGO authentication using Samba's winbind daemon +and @samp{ntlm-auth} helper. +.") + + (auth-winbind-helper-path + (file-name "/usr/bin/ntlm_auth") + "Path for Samba's @samp{ntlm-auth} helper binary.") + + (auth-failure-delay + (string "2 secs") + "Time to delay before replying to failed authentications.") + + (auth-ssl-require-client-cert? + (boolean #f) + "Require a valid SSL client certificate or the authentication +fails.") + + (auth-ssl-username-from-cert? + (boolean #f) + "Take the username from client's SSL certificate, using +@code{X509_NAME_get_text_by_NID()} which returns the subject's DN's +CommonName.") + + (auth-mechanisms + (space-separated-string-list '("plain")) + "List of wanted authentication mechanisms. Supported mechanisms are: +@samp{plain}, @samp{login}, @samp{digest-md5}, @samp{cram-md5}, +@samp{ntlm}, @samp{rpa}, @samp{apop}, @samp{anonymous}, @samp{gssapi}, +@samp{otp}, @samp{skey}, and @samp{gss-spnego}. NOTE: See also +@samp{disable-plaintext-auth} setting.") + + (director-servers + (space-separated-string-list '()) + "List of IPs or hostnames to all director servers, including ourself. +Ports can be specified as ip:port. The default port is the same as what +director service's @samp{inet-listener} is using.") + + (director-mail-servers + (space-separated-string-list '()) + "List of IPs or hostnames to all backend mail servers. Ranges are +allowed too, like 10.0.0.10-10.0.0.30.") + + (director-user-expire + (string "15 min") + "How long to redirect users to a specific server after it no longer +has any connections.") + + (director-doveadm-port + (non-negative-integer 0) + "TCP/IP port that accepts doveadm connections (instead of director +connections) If you enable this, you'll also need to add +@samp{inet-listener} for the port.") + + (director-username-hash + (string "%Lu") + "How the username is translated before being hashed. Useful values +include %Ln if user can log in with or without @@domain, %Ld if mailboxes +are shared within domain.") + +;;; Log destination. + + (log-path + (string "syslog") + "Log file to use for error messages. @samp{syslog} logs to syslog, +@samp{/dev/stderr} logs to stderr.") + + (info-log-path + (string "") + "Log file to use for informational messages. Defaults to +@samp{log-path}.") + + (debug-log-path + (string "") + "Log file to use for debug messages. Defaults to +@samp{info-log-path}.") + + (syslog-facility + (string "mail") + "Syslog facility to use if you're logging to syslog. Usually if you +don't want to use @samp{mail}, you'll use local0..local7. Also other +standard facilities are supported.") + + (auth-verbose? + (boolean #f) + "Log unsuccessful authentication attempts and the reasons why they +failed.") + + (auth-verbose-passwords? + (boolean #f) + "In case of password mismatches, log the attempted password. Valid +values are no, plain and sha1. sha1 can be useful for detecting brute +force password attempts vs. user simply trying the same password over +and over again. You can also truncate the value to n chars by appending +\":n\" (e.g. sha1:6).") + + (auth-debug? + (boolean #f) + "Even more verbose logging for debugging purposes. Shows for example +SQL queries.") + + (auth-debug-passwords? + (boolean #f) + "In case of password mismatches, log the passwords and used scheme so +the problem can be debugged. Enabling this also enables +@samp{auth-debug}.") + + (mail-debug? + (boolean #f) + "Enable mail process debugging. This can help you figure out why +Dovecot isn't finding your mails.") + + (verbose-ssl? + (boolean #f) + "Show protocol level SSL errors.") + + (log-timestamp + (string "\"%b %d %H:%M:%S \"") + "Prefix for each line written to log file. % codes are in +strftime(3) format.") + + (login-log-format-elements + (space-separated-string-list + '("user=<%u>" "method=%m" "rip=%r" "lip=%l" "mpid=%e" "%c")) + "List of elements we want to log. The elements which have a +non-empty variable value are joined together to form a comma-separated +string.") + + (login-log-format + (string "%$: %s") + "Login log format. %s contains @samp{login-log-format-elements} +string, %$ contains the data we want to log.") + + (mail-log-prefix + (string "\"%s(%u): \"") + "Log prefix for mail processes. See doc/wiki/Variables.txt for list +of possible variables you can use.") + + (deliver-log-format + (string "msgid=%m: %$") + "Format to use for logging mail deliveries. You can use variables: +@table @code +@item %$ +Delivery status message (e.g. @samp{saved to INBOX}) +@item %m +Message-ID +@item %s +Subject +@item %f +From address +@item %p +Physical size +@item %w +Virtual size. +@end table") + +;;; Mailbox locations and namespaces + + (mail-location + (string "") + "Location for users' mailboxes. The default is empty, which means +that Dovecot tries to find the mailboxes automatically. This won't work +if the user doesn't yet have any mail, so you should explicitly tell +Dovecot the full location. + +If you're using mbox, giving a path to the INBOX +file (e.g. /var/mail/%u) isn't enough. You'll also need to tell Dovecot +where the other mailboxes are kept. This is called the \"root mail +directory\", and it must be the first path given in the +@samp{mail-location} setting. + +There are a few special variables you can use, eg.: + +@table @samp +@item %u +username +@item %n +user part in user@@domain, same as %u if there's no domain +@item %d +domain part in user@@domain, empty if there's no domain +@item %h +home director +@end table + +See doc/wiki/Variables.txt for full list. Some examples: +@table @samp +@item maildir:~/Maildir +@item mbox:~/mail:INBOX=/var/mail/%u +@item mbox:/var/mail/%d/%1n/%n:INDEX=/var/indexes/%d/%1n/% +@end table") + + (mail-uid + (string "") + "System user and group used to access mails. If you use multiple, +userdb can override these by returning uid or gid fields. You can use +either numbers or names. .") + + (mail-gid + (string "") + "") + + (mail-privileged-group + (string "") + "Group to enable temporarily for privileged operations. Currently +this is used only with INBOX when either its initial creation or +dotlocking fails. Typically this is set to \"mail\" to give access to +/var/mail.") + + (mail-access-groups + (string "") + "Grant access to these supplementary groups for mail processes. +Typically these are used to set up access to shared mailboxes. Note +that it may be dangerous to set these if users can create +symlinks (e.g. if \"mail\" group is set here, ln -s /var/mail ~/mail/var +could allow a user to delete others' mailboxes, or ln -s +/secret/shared/box ~/mail/mybox would allow reading it).") + + (mail-full-filesystem-access? + (boolean #f) + "Allow full filesystem access to clients. There's no access checks +other than what the operating system does for the active UID/GID. It +works with both maildir and mboxes, allowing you to prefix mailboxes +names with e.g. /path/ or ~user/.") + +;;; Mail processes + + (mmap-disable? + (boolean #f) + "Don't use mmap() at all. This is required if you store indexes to +shared filesystems (NFS or clustered filesystem).") + + (dotlock-use-excl? + (boolean #t) + "Rely on @samp{O_EXCL} to work when creating dotlock files. NFS +supports @samp{O_EXCL} since version 3, so this should be safe to use +nowadays by default.") + + (mail-fsync + (string "optimized") + "When to use fsync() or fdatasync() calls: +@table @code +@item optimized +Whenever necessary to avoid losing important data +@item always +Useful with e.g. NFS when write()s are delayed +@item never +Never use it (best performance, but crashes can lose data). +@end table") + + (mail-nfs-storage? + (boolean #f) + "Mail storage exists in NFS. Set this to yes to make Dovecot flush +NFS caches whenever needed. If you're using only a single mail server +this isn't needed.") + + (mail-nfs-index? + (boolean #f) + "Mail index files also exist in NFS. Setting this to yes requires +@samp{mmap-disable? #t} and @samp{fsync-disable? #f}.") + + (lock-method + (string "fcntl") + "Locking method for index files. Alternatives are fcntl, flock and +dotlock. Dotlocking uses some tricks which may create more disk I/O +than other locking methods. NFS users: flock doesn't work, remember to +change @samp{mmap-disable}.") + + (mail-temp-dir + (file-name "/tmp") + "Directory in which LDA/LMTP temporarily stores incoming mails >128 +kB.") + + (first-valid-uid + (non-negative-integer 500) + "Valid UID range for users. This is mostly to make sure that users can't +log in as daemons or other system users. Note that denying root logins is +hardcoded to dovecot binary and can't be done even if @samp{first-valid-uid} +is set to 0.") + + (last-valid-uid + (non-negative-integer 0) + "") + + (first-valid-gid + (non-negative-integer 1) + "Valid GID range for users. Users having non-valid GID as primary group ID +aren't allowed to log in. If user belongs to supplementary groups with +non-valid GIDs, those groups are not set.") + + (last-valid-gid + (non-negative-integer 0) + "") + + (mail-max-keyword-length + (non-negative-integer 50) + "Maximum allowed length for mail keyword name. It's only forced when +trying to create new keywords.") + + (valid-chroot-dirs + (colon-separated-file-name-list '()) + "List of directories under which chrooting is allowed for mail +processes (i.e. /var/mail will allow chrooting to /var/mail/foo/bar +too). This setting doesn't affect @samp{login-chroot} +@samp{mail-chroot} or auth chroot settings. If this setting is empty, +\"/./\" in home dirs are ignored. WARNING: Never add directories here +which local users can modify, that may lead to root exploit. Usually +this should be done only if you don't allow shell access for users. +.") + + (mail-chroot + (string "") + "Default chroot directory for mail processes. This can be overridden +for specific users in user database by giving /./ in user's home +directory (e.g. /home/./user chroots into /home). Note that usually +there is no real need to do chrooting, Dovecot doesn't allow users to +access files outside their mail directory anyway. If your home +directories are prefixed with the chroot directory, append \"/.\" to +@samp{mail-chroot}. .") + + (auth-socket-path + (file-name "/var/run/dovecot/auth-userdb") + "UNIX socket path to master authentication server to find users. +This is used by imap (for shared users) and lda.") + + (mail-plugin-dir + (file-name "/usr/lib/dovecot") + "Directory where to look up mail plugins.") + + (mail-plugins + (space-separated-string-list '()) + "List of plugins to load for all services. Plugins specific to IMAP, +LDA, etc. are added to this list in their own .conf files.") + + + (mail-cache-min-mail-count + (non-negative-integer 0) + "The minimum number of mails in a mailbox before updates are done to +cache file. This allows optimizing Dovecot's behavior to do less disk +writes at the cost of more disk reads.") + + (mailbox-idle-check-interval + (string "30 secs") + "When IDLE command is running, mailbox is checked once in a while to +see if there are any new mails or other changes. This setting defines +the minimum time to wait between those checks. Dovecot can also use +dnotify, inotify and kqueue to find out immediately when changes +occur.") + + (mail-save-crlf? + (boolean #f) + "Save mails with CR+LF instead of plain LF. This makes sending those +mails take less CPU, especially with sendfile() syscall with Linux and +FreeBSD. But it also creates a bit more disk I/O which may just make it +slower. Also note that if other software reads the mboxes/maildirs, +they may handle the extra CRs wrong and cause problems.") + + (maildir-stat-dirs? + (boolean #f) + "By default LIST command returns all entries in maildir beginning +with a dot. Enabling this option makes Dovecot return only entries +which are directories. This is done by stat()ing each entry, so it +causes more disk I/O. + (For systems setting struct @samp{dirent->d_type} this check is free +and it's done always regardless of this setting).") + + (maildir-copy-with-hardlinks? + (boolean #t) + "When copying a message, do it with hard links whenever possible. +This makes the performance much better, and it's unlikely to have any +side effects.") + + (maildir-very-dirty-syncs? + (boolean #f) + "Assume Dovecot is the only MUA accessing Maildir: Scan cur/ +directory only when its mtime changes unexpectedly or when we can't find +the mail otherwise.") + + (mbox-read-locks + (space-separated-string-list '("fcntl")) + "Which locking methods to use for locking mbox. There are four +available: + +@table @code +@item dotlock +Create .lock file. This is the oldest and most NFS-safe +solution. If you want to use /var/mail/ like directory, the users will +need write access to that directory. +@item dotlock-try +Same as dotlock, but if it fails because of permissions or because there +isn't enough disk space, just skip it. +@item fcntl +Use this if possible. Works with NFS too if lockd is used. +@item flock +May not exist in all systems. Doesn't work with NFS. +@item lockf +May not exist in all systems. Doesn't work with NFS. +@end table + +You can use multiple locking methods; if you do the order they're declared +in is important to avoid deadlocks if other MTAs/MUAs are using multiple +locking methods as well. Some operating systems don't allow using some of +them simultaneously.") + + (mbox-write-locks + (space-separated-string-list '("dotlock" "fcntl")) + "") + + (mbox-lock-timeout + (string "5 mins") + "Maximum time to wait for lock (all of them) before aborting.") + + (mbox-dotlock-change-timeout + (string "2 mins") + "If dotlock exists but the mailbox isn't modified in any way, +override the lock file after this much time.") + + (mbox-dirty-syncs? + (boolean #t) + "When mbox changes unexpectedly we have to fully read it to find out +what changed. If the mbox is large this can take a long time. Since +the change is usually just a newly appended mail, it'd be faster to +simply read the new mails. If this setting is enabled, Dovecot does +this but still safely fallbacks to re-reading the whole mbox file +whenever something in mbox isn't how it's expected to be. The only real +downside to this setting is that if some other MUA changes message +flags, Dovecot doesn't notice it immediately. Note that a full sync is +done with SELECT, EXAMINE, EXPUNGE and CHECK commands.") + + (mbox-very-dirty-syncs? + (boolean #f) + "Like @samp{mbox-dirty-syncs}, but don't do full syncs even with SELECT, +EXAMINE, EXPUNGE or CHECK commands. If this is set, +@samp{mbox-dirty-syncs} is ignored.") + + (mbox-lazy-writes? + (boolean #t) + "Delay writing mbox headers until doing a full write sync (EXPUNGE +and CHECK commands and when closing the mailbox). This is especially +useful for POP3 where clients often delete all mails. The downside is +that our changes aren't immediately visible to other MUAs.") + + (mbox-min-index-size + (non-negative-integer 0) + "If mbox size is smaller than this (e.g. 100k), don't write index +files. If an index file already exists it's still read, just not +updated.") + + (mdbox-rotate-size + (non-negative-integer #e2e6) + "Maximum dbox file size until it's rotated.") + + (mdbox-rotate-interval + (string "1d") + "Maximum dbox file age until it's rotated. Typically in days. Day +begins from midnight, so 1d = today, 2d = yesterday, etc. 0 = check +disabled.") + + (mdbox-preallocate-space? + (boolean #f) + "When creating new mdbox files, immediately preallocate their size to +@samp{mdbox-rotate-size}. This setting currently works only in Linux +with some filesystems (ext4, xfs).") + + (mail-attachment-dir + (string "") + "sdbox and mdbox support saving mail attachments to external files, +which also allows single instance storage for them. Other backends +don't support this for now. + +WARNING: This feature hasn't been tested much yet. Use at your own risk. + +Directory root where to store mail attachments. Disabled, if empty.") + + (mail-attachment-min-size + (non-negative-integer #e128e3) + "Attachments smaller than this aren't saved externally. It's also +possible to write a plugin to disable saving specific attachments +externally.") + + (mail-attachment-fs + (string "sis posix") + "Filesystem backend to use for saving attachments: +@table @code +@item posix +No SiS done by Dovecot (but this might help FS's own deduplication) +@item sis posix +SiS with immediate byte-by-byte comparison during saving +@item sis-queue posix +SiS with delayed comparison and deduplication. +@end table") + + (mail-attachment-hash + (string "%{sha1}") + "Hash format to use in attachment filenames. You can add any text and +variables: @code{%@{md4@}}, @code{%@{md5@}}, @code{%@{sha1@}}, +@code{%@{sha256@}}, @code{%@{sha512@}}, @code{%@{size@}}. Variables can be +truncated, e.g. @code{%@{sha256:80@}} returns only first 80 bits.") + + (default-process-limit + (non-negative-integer 100) + "") + + (default-client-limit + (non-negative-integer 1000) + "") + + (default-vsz-limit + (non-negative-integer #e256e6) + "Default VSZ (virtual memory size) limit for service processes. +This is mainly intended to catch and kill processes that leak memory +before they eat up everything.") + + (default-login-user + (string "dovenull") + "Login user is internally used by login processes. This is the most +untrusted user in Dovecot system. It shouldn't have access to anything +at all.") + + (default-internal-user + (string "dovecot") + "Internal user is used by unprivileged processes. It should be +separate from login user, so that login processes can't disturb other +processes.") + + (ssl? + (string "required") + "SSL/TLS support: yes, no, required. .") + + (ssl-cert + (string ". %d expands to recipient domain.") + + (hostname + (string "") + "Hostname to use in various parts of sent mails (e.g. in Message-Id) +and in LMTP replies. Default is the system's real hostname@@domain.") + + (quota-full-tempfail? + (boolean #f) + "If user is over quota, return with temporary failure instead of +bouncing the mail.") + + (sendmail-path + (file-name "/usr/sbin/sendmail") + "Binary to use for sending mails.") + + (submission-host + (string "") + "If non-empty, send mails via this SMTP host[:port] instead of +sendmail.") + + (rejection-subject + (string "Rejected: %s") + "Subject: header to use for rejection mails. You can use the same +variables as for @samp{rejection-reason} below.") + + (rejection-reason + (string "Your message to <%t> was automatically rejected:%n%r") + "Human readable error message for rejection mails. You can use +variables: + +@table @code +@item %n +CRLF +@item %r +reason +@item %s +original subject +@item %t +recipient +@end table") + + (recipient-delimiter + (string "+") + "Delimiter character between local-part and detail in email +address.") + + (lda-original-recipient-header + (string "") + "Header where the original recipient address (SMTP's RCPT TO: +address) is taken from if not available elsewhere. With dovecot-lda -a +parameter overrides this. A commonly used header for this is +X-Original-To.") + + (lda-mailbox-autocreate? + (boolean #f) + "Should saving a mail to a nonexistent mailbox automatically create +it?.") + + (lda-mailbox-autosubscribe? + (boolean #f) + "Should automatically created mailboxes be also automatically +subscribed?.") + + + (imap-max-line-length + (non-negative-integer #e64e3) + "Maximum IMAP command line length. Some clients generate very long +command lines with huge mailboxes, so you may need to raise this if you +get \"Too long argument\" or \"IMAP command line too large\" errors +often.") + + (imap-logout-format + (string "in=%i out=%o") + "IMAP logout format string: +@table @code +@item %i +total number of bytes read from client +@item %o +total number of bytes sent to client. +@end table") + + (imap-capability + (string "") + "Override the IMAP CAPABILITY response. If the value begins with '+', +add the given capabilities on top of the defaults (e.g. +XFOO XBAR).") + + (imap-idle-notify-interval + (string "2 mins") + "How long to wait between \"OK Still here\" notifications when client +is IDLEing.") + + (imap-id-send + (string "") + "ID field names and values to send to clients. Using * as the value +makes Dovecot use the default value. The following fields have default +values currently: name, version, os, os-version, support-url, +support-email.") + + (imap-id-log + (string "") + "ID fields sent by client to log. * means everything.") + + (imap-client-workarounds + (space-separated-string-list '()) + "Workarounds for various client bugs: + +@table @code +@item delay-newmail +Send EXISTS/RECENT new mail notifications only when replying to NOOP and +CHECK commands. Some clients ignore them otherwise, for example OSX +Mail ( for CONFIG." + (let* ((config-str + (cond + ((opaque-dovecot-configuration? config) + (opaque-dovecot-configuration-string config)) + (else + (with-output-to-string + (lambda () + (serialize-configuration config + dovecot-configuration-fields)))))) + (config-file (plain-file "dovecot.conf" config-str)) + (dovecot (if (opaque-dovecot-configuration? config) + (opaque-dovecot-configuration-dovecot config) + (dovecot-configuration-dovecot config)))) + (list (dmd-service + (documentation "Run the Dovecot POP3/IMAP mail server.") + (provision '(dovecot)) + (requirement '(networking)) + (start #~(make-forkexec-constructor + (list (string-append #$dovecot "/sbin/dovecot") + "-F" "-c" #$config-file))) + (stop #~(make-forkexec-constructor + (list (string-append #$dovecot "/sbin/dovecot") + "-c" #$config-file "stop"))))))) + +(define %dovecot-pam-services + (list (unix-pam-service "dovecot"))) + +(define dovecot-service-type + (service-type (name 'dovecot) + (extensions + (list (service-extension dmd-root-service-type + dovecot-dmd-service) + (service-extension account-service-type + (const %dovecot-accounts)) + (service-extension pam-root-service-type + (const %dovecot-pam-services)) + (service-extension activation-service-type + (const %dovecot-activation)))))) + +(define* (dovecot-service #:key (config (dovecot-configuration))) + "Return a service that runs @command{dovecot}, a mail server that can run +POP3, IMAP, and LMTP. @var{config} should be a configuration object created +by @code{dovecot-configuration}. @var{config} may also be created by +@code{opaque-dovecot-configuration}, which allows specification of the +@code{dovecot.conf} as a string." + (validate-configuration config + (if (opaque-dovecot-configuration? config) + opaque-dovecot-configuration-fields + dovecot-configuration-fields)) + (service dovecot-service-type config)) + +;; A little helper to make it easier to document all those fields. +(define (generate-documentation) + (define documentation + `((dovecot-configuration + ,dovecot-configuration-fields + (dict dict-configuration) + (namespaces namespace-configuration) + (plugin plugin-configuration) + (passdbs passdb-configuration) + (userdbs userdb-configuration) + (services service-configuration) + (protocols protocol-configuration)) + (dict-configuration ,dict-configuration-fields) + (plugin-configuration ,plugin-configuration-fields) + (passdb-configuration ,passdb-configuration-fields) + (userdb-configuration ,userdb-configuration-fields) + (unix-listener-configuration ,unix-listener-configuration-fields) + (fifo-listener-configuration ,fifo-listener-configuration-fields) + (inet-listener-configuration ,inet-listener-configuration-fields) + (namespace-configuration + ,namespace-configuration-fields + (mailboxes mailbox-configuration)) + (mailbox-configuration ,mailbox-configuration-fields) + (service-configuration + ,service-configuration-fields + (listeners unix-listener-configuration fifo-listener-configuration + inet-listener-configuration)) + (protocol-configuration ,protocol-configuration-fields))) + (define (generate configuration-name) + (match (assq-ref documentation configuration-name) + ((fields . sub-documentation) + (format #t "\nAvailable @code{~a} fields are:\n\n" configuration-name) + (for-each + (lambda (f) + (let ((field-name (configuration-field-name f)) + (field-type (configuration-field-type f)) + (field-docs (string-trim-both + (configuration-field-documentation f))) + (default (catch #t + (configuration-field-default-value-thunk f) + (lambda _ 'nope)))) + (define (escape-chars str chars escape) + (with-output-to-string + (lambda () + (string-for-each (lambda (c) + (when (char-set-contains? chars c) + (display escape)) + (display c)) + str)))) + (define (show-default? val) + (or (string? default) (number? default) (boolean? default) + (and (list? val) (and-map show-default? val)))) + (format #t "@deftypevr {@code{~a} parameter} ~a ~a\n~a\n" + configuration-name field-type field-name field-docs) + (when (show-default? default) + (format #t "Defaults to @samp{~a}.\n" + (escape-chars (format #f "~s" default) + (char-set #\@ #\{ #\}) + #\@))) + (for-each generate (or (assq-ref sub-documentation field-name) '())) + (format #t "@end deftypevr\n\n"))) + fields)))) + (generate 'dovecot-configuration)) -- cgit v1.2.3 From 72a06d3e32700dbf30409e1ace8f3989680dd680 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 18 Dec 2015 10:30:08 +0100 Subject: gnu: goffice: Add "doc" output. * gnu/packages/gnome.scm (goffice)[outputs, arguments]: New fields. (goffice-0.8)[arguments]: Append arguments from GOFFICE. --- gnu/packages/gnome.scm | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 1ace5943e5..59e43dcc96 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -1470,6 +1470,12 @@ (define-public goffice (sha256 (base32 "0nmghi26dpjcw7knkviq031crhm0zjy4k650pv1jj3hb1fmhx9yd")))) (build-system gnu-build-system) + (outputs '("out" + "doc")) ;4.1 MiB of gtk-doc + (arguments + '(#:configure-flags (list (string-append "--with-html-dir=" + (assoc-ref %outputs "doc") + "/share/gtk-doc/html")))) (inputs `(("gtk+" ,gtk+) ("libgsf" ,libgsf) @@ -1507,7 +1513,9 @@ (define-public goffice-0.8 ;; https://bugzilla.gnome.org/show_bug.cgi?id=670316 (substitute* "configure" (("glib/gregex\\.h") "glib.h")) #t) - %standard-phases))) + %standard-phases) + + ,@(package-arguments goffice))) (propagated-inputs ;; libgoffice-0.8.pc mentions libgsf-1 `(("libgsf" ,libgsf))) -- cgit v1.2.3 From be4fbbe01b76da5e9b3b0156ace8f174efe5df3e Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 18 Dec 2015 10:46:55 +0100 Subject: gnu: gimp: Add "doc" output. * gnu/packages/gimp.scm (gimp)[outputs, arguments]: New fields. --- gnu/packages/gimp.scm | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/gimp.scm b/gnu/packages/gimp.scm index ebf66d478e..00c429ae56 100644 --- a/gnu/packages/gimp.scm +++ b/gnu/packages/gimp.scm @@ -128,6 +128,12 @@ (define-public gimp (base32 "0bdj0l7a94jqhjnj40m9rqaf622wj905iximivb55iy98639aanq")))) (build-system gnu-build-system) + (outputs '("out" + "doc")) ;8 MiB of gtk-doc HTML + (arguments + '(#:configure-flags (list (string-append "--with-html-dir=" + (assoc-ref %outputs "doc") + "/share/gtk-doc/html")))) (inputs `(("babl" ,babl) ("glib" ,glib) -- cgit v1.2.3 From ae115bc75a4a70f473608a60720c048d771f1885 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 18 Dec 2015 10:57:53 +0100 Subject: gnu: python2-pygtk: Use 'modify-phases'. * gnu/packages/gtk.scm (python2-pygtk)[arguments]: Use 'modify-phases'. --- gnu/packages/gtk.scm | 45 ++++++++++++++++++++++----------------------- 1 file changed, 22 insertions(+), 23 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index c0c0794f4a..ccd9ad57cf 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -1005,29 +1005,28 @@ (define-public python2-pygtk ("gtk+" ,gtk+-2))) (arguments `(#:tests? #f - #:phases (alist-cons-after - 'configure 'fix-codegen - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "pygtk-codegen-2.0" - (("^prefix=.*$") - (string-append - "prefix=" - (assoc-ref inputs "python-pygobject") "\n")))) - (alist-cons-after - 'install 'install-pth - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; pygtk's modules are stored in a subdirectory of python's - ;; site-packages directory. Add a .pth file so that python - ;; will add that subdirectory to its module search path. - (let* ((out (assoc-ref outputs "out")) - (site (string-append out "/lib/python" - ,(version-major+minor - (package-version python-2)) - "/site-packages"))) - (call-with-output-file (string-append site "/pygtk.pth") - (lambda (port) - (format port "gtk-2.0~%"))))) - %standard-phases)))) + #:phases (modify-phases %standard-phases + (add-after 'configure 'fix-codegen + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "pygtk-codegen-2.0" + (("^prefix=.*$") + (string-append + "prefix=" + (assoc-ref inputs "python-pygobject") "\n"))))) + (add-after 'install 'install-pth + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; pygtk's modules are stored in a subdirectory of + ;; python's site-packages directory. Add a .pth file so + ;; that python will add that subdirectory to its module + ;; search path. + (let* ((out (assoc-ref outputs "out")) + (site (string-append out "/lib/python" + ,(version-major+minor + (package-version python-2)) + "/site-packages"))) + (call-with-output-file (string-append site "/pygtk.pth") + (lambda (port) + (format port "gtk-2.0~%"))))))))) (home-page "http://www.pygtk.org/") (synopsis "Python bindings for GTK+") (description -- cgit v1.2.3 From 594e7b479a676dc74693b158522af93f5daa088f Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 18 Dec 2015 11:01:33 +0100 Subject: gnu: python2-pygtk: Add "doc" output. * gnu/packages/gtk.scm (python2-pygtk)[outputs]: New field. [arguments]: Add 'set-gtk-doc-directory' phase. --- gnu/packages/gtk.scm | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index ccd9ad57cf..279c06294e 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -994,6 +994,8 @@ (define-public python2-pygtk (base32 "04k942gn8vl95kwf0qskkv6npclfm31d78ljkrkgyqxxcni1w76d")))) (build-system gnu-build-system) + (outputs '("out" + "doc")) ;13 MiB of gtk-doc HTML (native-inputs `(("pkg-config" ,pkg-config))) (inputs @@ -1006,6 +1008,13 @@ (define-public python2-pygtk (arguments `(#:tests? #f #:phases (modify-phases %standard-phases + (add-before 'configure 'set-gtk-doc-directory + (lambda* (#:key outputs #:allow-other-keys) + ;; Install documentation to "doc". + (let ((doc (assoc-ref outputs "doc"))) + (substitute* "docs/Makefile.in" + (("TARGET_DIR = \\$\\(datadir\\)") + (string-append "TARGET_DIR = " doc)))))) (add-after 'configure 'fix-codegen (lambda* (#:key inputs #:allow-other-keys) (substitute* "pygtk-codegen-2.0" -- cgit v1.2.3 From bf46f74160739a6810d27815213819786d4d7bfc Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 18 Dec 2015 11:03:28 +0100 Subject: gnu: key-mon: Remove unnecessary propagated inputs. * gnu/packages/key-mon.scm (key-mon)[propagated-inputs]: Rename to... [inputs]: ... this. Propagated was unnecessary since the 'key-mon' program is wrapped. --- gnu/packages/key-mon.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/key-mon.scm b/gnu/packages/key-mon.scm index c890f85f8d..dbfee050a9 100644 --- a/gnu/packages/key-mon.scm +++ b/gnu/packages/key-mon.scm @@ -56,7 +56,7 @@ (define-public key-mon #:tests? #f)) ;no tests (native-inputs `(("python2-setuptools" ,python2-setuptools))) - (propagated-inputs + (inputs `(("python2-xlib" ,python2-xlib) ("python2-pygtk" ,python2-pygtk) ("librsvg" ,librsvg) -- cgit v1.2.3 From 793bcc1933b7ba35fe5b2771305a682ceb4f933e Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sat, 19 Dec 2015 00:22:42 +0100 Subject: gnu: Do not #:select from (gnu packages …) modules. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This is to avoid . * gnu/packages/bittorrent.scm: Do not #:select from (gnu packages compression). * gnu/packages/dictionaries.scm: Likewise. * gnu/packages/disk.scm: Likewise. * gnu/packages/gimp.scm: Likewise. * gnu/packages/haskell.scm: Likewise. --- gnu/packages/bittorrent.scm | 5 ++--- gnu/packages/dictionaries.scm | 5 ++--- gnu/packages/disk.scm | 3 +-- gnu/packages/gimp.scm | 3 +-- gnu/packages/haskell.scm | 2 +- 5 files changed, 7 insertions(+), 11 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/bittorrent.scm b/gnu/packages/bittorrent.scm index 2410647818..967580d158 100644 --- a/gnu/packages/bittorrent.scm +++ b/gnu/packages/bittorrent.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 Taylan Ulrich Bayirli/Kammer -;;; Copyright © 2014 Ludovic Courtès +;;; Copyright © 2014, 2015 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -28,8 +28,7 @@ (define-module (gnu packages bittorrent) #:use-module (gnu packages pkg-config) #:use-module (gnu packages file) #:use-module (gnu packages linux) - #:use-module ((gnu packages compression) - #:select (zlib)) + #:use-module (gnu packages compression) #:use-module (gnu packages glib) #:use-module (gnu packages gtk) #:use-module (gnu packages check) diff --git a/gnu/packages/dictionaries.scm b/gnu/packages/dictionaries.scm index 345d0a26c1..1ecfc3f674 100644 --- a/gnu/packages/dictionaries.scm +++ b/gnu/packages/dictionaries.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014 Ludovic Courtès +;;; Copyright © 2014, 2015 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -23,8 +23,7 @@ (define-module (gnu packages dictionaries) #:use-module (guix build-system trivial) #:use-module (gnu packages base) #:use-module (gnu packages texinfo) - #:use-module ((gnu packages compression) - #:select (gzip))) + #:use-module (gnu packages compression)) (define-public vera (package diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm index 9d3e2f9e32..d806e0c1cd 100644 --- a/gnu/packages/disk.scm +++ b/gnu/packages/disk.scm @@ -29,8 +29,7 @@ (define-module (gnu packages disk) #:use-module (gnu packages python) #:use-module (gnu packages readline) #:use-module (gnu packages guile) - #:use-module ((gnu packages compression) - #:select (lzip))) + #:use-module (gnu packages compression)) (define-public parted (package diff --git a/gnu/packages/gimp.scm b/gnu/packages/gimp.scm index 00c429ae56..00feb1c131 100644 --- a/gnu/packages/gimp.scm +++ b/gnu/packages/gimp.scm @@ -27,8 +27,7 @@ (define-module (gnu packages gimp) #:use-module (gnu packages gtk) #:use-module (gnu packages gnome) #:use-module (gnu packages image) - #:use-module ((gnu packages ghostscript) - #:select (lcms)) + #:use-module (gnu packages ghostscript) #:use-module (gnu packages compression) #:use-module (gnu packages xml) #:use-module (gnu packages photo) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 277bdebed0..a193e96bf0 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -47,7 +47,7 @@ (define-module (gnu packages haskell) #:use-module (gnu packages ncurses) #:use-module (gnu packages python) #:use-module (gnu packages pcre) - #:use-module ((gnu packages xml) #:select (libxml2)) + #:use-module (gnu packages xml) #:use-module (gnu packages xorg)) (define ghc-bootstrap-x86_64-7.8.4 -- cgit v1.2.3 From 3ac732715dbd37f99c8f7de4bf1b5699fa34d109 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sat, 19 Dec 2015 00:30:33 +0100 Subject: gnu: Use #:prefix when importing (guix licenses). This works around a problem with #:hide, whereby Guile would report 'zlib', 'openssl', and/or 'expat as colliding bindings at run time despite the #:hide. * gnu/packages/linux.scm: Use #:prefix license for (guix licenses). * gnu/packages/haskell.scm: Likewise. --- gnu/packages/haskell.scm | 445 +++++++++++++++++++++++------------------------ gnu/packages/linux.scm | 123 +++++++------ 2 files changed, 282 insertions(+), 286 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index a193e96bf0..843a428dc6 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -21,10 +21,7 @@ (define-module (gnu packages haskell) #:use-module (ice-9 regex) - #:use-module ((guix licenses) #:select (bsd-3 - lgpl2.1 lgpl2.1+ gpl2+ gpl3+ - public-domain - expat)) + #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix utils) @@ -251,7 +248,7 @@ (define-public ghc (description "The Glasgow Haskell Compiler (GHC) is a state-of-the-art compiler and interactive environment for the functional language Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-hostname (package @@ -270,7 +267,7 @@ (define-public ghc-hostname (synopsis "Hostname in Haskell") (description "Network.HostName is a simple package providing a means to determine the hostname.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-libxml (package @@ -297,7 +294,7 @@ (define-public ghc-libxml (synopsis "Haskell bindings to libxml2") (description "This library provides minimal Haskell binding to libxml2.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-prelude-extras (package @@ -319,7 +316,7 @@ (define-public ghc-prelude-extras (description "This library provides higher order versions of @code{Prelude} classes to ease programming with polymorphic recursion and reduce @code{UndecidableInstances}.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-data-default (package @@ -352,7 +349,7 @@ (define-public ghc-data-default "This package defines a class for types with a default value, and provides instances for types from the base, containers, dlist and old-locale packages.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-data-default-class (package @@ -371,7 +368,7 @@ (define-public ghc-data-default-class (synopsis "Types with default values") (description "This package defines a class for types with default values.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-data-default-instances-base (package @@ -394,7 +391,7 @@ (define-public ghc-data-default-instances-base (description "This package provides default instances for types from the base package.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-data-default-instances-containers (package @@ -416,7 +413,7 @@ (define-public ghc-data-default-instances-containers (synopsis "Default instances for types in containers") (description "Provides default instances for types from the containers package.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-data-default-instances-dlist (package @@ -439,7 +436,7 @@ (define-public ghc-data-default-instances-dlist (synopsis "Default instances for types in dlist") (description "Provides default instances for types from the dlist package.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-haddock-library (package @@ -469,7 +466,7 @@ (define-public ghc-haddock-library Please note that the API is likely to change so specify upper bounds in your project if you can't release often. For interacting with Haddock itself, see the ‘haddock’ package.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-haddock-api (package @@ -493,7 +490,7 @@ (define-public ghc-haddock-api (synopsis "API for documentation-generation tool Haddock") (description "This package provides an API to Haddock, the documentation-generation tool for Haskell libraries.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-haddock (package @@ -519,7 +516,7 @@ (define-public ghc-haddock "Documentation-generation tool for Haskell libraries") (description "Haddock is a documentation-generation tool for Haskell libraries.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-simple-reflect (package @@ -546,7 +543,7 @@ (define-public ghc-simple-reflect string. The primary aim of this package is teaching and understanding; there are no options for manipulating the reflected expressions beyond showing them.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-multipart (package @@ -570,7 +567,7 @@ (define-public ghc-multipart "HTTP multipart library") (description "HTTP multipart split out of the cgi package, for Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-html (package @@ -593,7 +590,7 @@ (define-public ghc-html (description "This package contains a combinator library for constructing HTML documents.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-xhtml (package @@ -615,7 +612,7 @@ (define-public ghc-xhtml (description "This package provides combinators for producing XHTML 1.0, including the Strict, Transitional and Frameset variants.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-haskell-src (package @@ -644,7 +641,7 @@ (define-public ghc-haskell-src source code. The package provides a lexer, parser and pretty-printer, and a definition of a Haskell abstract syntax tree (AST). Common uses of this package are to parse or generate Haskell 98 code.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-alex (package @@ -673,7 +670,7 @@ (define-public ghc-alex description of tokens based on regular expressions and generates a Haskell module containing code for scanning text efficiently. It is similar to the tool lex or flex for C/C++.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-cgi (package @@ -704,7 +701,7 @@ (define-public ghc-cgi (synopsis "Library for writing CGI programs") (description "This is a Haskell library for writing CGI programs.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-cmdargs (package @@ -726,7 +723,7 @@ (define-public ghc-cmdargs (synopsis "Command line argument processing") (description "This library provides an easy way to define command line parsers.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-happy (package @@ -752,7 +749,7 @@ (define-public ghc-happy (description "Happy is a parser generator for Haskell. Given a grammar specification in BNF, Happy generates Haskell code to parse the grammar. Happy works in a similar way to the yacc tool for C.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-haskell-src-exts (package @@ -786,7 +783,7 @@ (define-public ghc-haskell-src-exts registered syntactic extensions to Haskell. All extensions implemented in GHC are supported. Apart from these standard extensions, it also handles regular patterns as per the HaRP extension as well as HSX-style embedded XML syntax.") - (license bsd-3))) + (license license:bsd-3))) (define-public hlint (package @@ -815,7 +812,7 @@ (define-public hlint (description "HLint reads Haskell programs and suggests changes that hopefully make them easier to read. HLint also makes it easy to disable unwanted suggestions, and to add your own custom suggestions.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-resourcet (package @@ -846,7 +843,7 @@ (define-public ghc-resourcet (synopsis "Deterministic allocation and freeing of scarce resources") (description "ResourceT is a monad transformer which creates a region of code where you can safely allocate resources.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-xss-sanitize (package @@ -878,7 +875,7 @@ (define-public ghc-xss-sanitize (description "This library provides @code{sanitizeXSS}. Run untrusted HTML through @code{Text.HTML.SanitizeXSS.sanitizeXSS} to prevent XSS attacks.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-objectname (package @@ -901,7 +898,7 @@ (define-public ghc-objectname corresponds to the general notion of explicitly handled identifiers for API objects, e.g. a texture object name in OpenGL or a buffer object name in OpenAL.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-sdl (package @@ -927,7 +924,7 @@ (define-public ghc-sdl mouse, joystick, 3D hardware via OpenGL, and 2D video framebuffer. It is used by MPEG playback software, emulators, and many popular games, including the award winning Linux port of \"Civilization: Call To Power.\"") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-sdl-mixer (package @@ -959,7 +956,7 @@ (define-public ghc-sdl-mixer supports any number of simultaneously playing channels of 16 bit stereo audio, plus a single channel of music, mixed by the popular MikMod MOD, Timidity MIDI, Ogg Vorbis, and SMPEG MP3 libraries.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-sdl-image (package @@ -990,7 +987,7 @@ (define-public ghc-sdl-image (description "SDL_image is an image file loading library. It loads images as SDL surfaces, and supports the following formats: BMP, GIF, JPEG, LBM, PCX, PNG, PNM, TGA, TIFF, XCF, XPM, XV.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-half (package @@ -1011,7 +1008,7 @@ (define-public ghc-half (synopsis "Half-precision floating-point computations") (description "This library provides a half-precision floating-point computation library for Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-openglraw (package @@ -1043,7 +1040,7 @@ (define-public ghc-openglraw right module to import. All API entries are loaded dynamically, so no special C header files are needed for building this package. If an API entry is not found at runtime, a userError is thrown.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-glut (package @@ -1071,7 +1068,7 @@ (define-public ghc-glut (description "This library provides Haskell bindings for the OpenGL Utility Toolkit, a window system-independent toolkit for writing OpenGL programs.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-gluraw (package @@ -1095,7 +1092,7 @@ (define-public ghc-gluraw (description "GLURaw is a raw Haskell binding for the GLU 1.3 OpenGL utility library. It is basically a 1:1 mapping of GLU's C API, intended as a basis for a nicer interface.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-opengl (package @@ -1123,7 +1120,7 @@ (define-public ghc-opengl (description "This package provides Haskell bindings for the OpenGL graphics system (GL, version 4.5) and its accompanying utility library (GLU, version 1.3).") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-streaming-commons (package @@ -1156,7 +1153,7 @@ (define-public ghc-streaming-commons (description "Provides low-dependency functionality commonly needed by various Haskell streaming data libraries, such as @code{conduit} and @code{pipe}s.") - (license bsd-3))) + (license license:bsd-3))) (define-public cpphs (package @@ -1184,7 +1181,7 @@ (define-public cpphs pretty-much feature-complete and compatible with traditional (K&R) pre-processors. Additional features include: a plain-text mode; an option to unlit literate code files; and an option to turn off macro-expansion.") - (license (list lgpl2.1+ gpl3+)))) + (license (list license:lgpl2.1+ license:gpl3+)))) (define-public ghc-reflection (package @@ -1209,7 +1206,7 @@ (define-public ghc-reflection propogating configurations that are available at run-time, allowing multiple configurations to coexist without resorting to mutable global variables or @code{System.IO.Unsafe.unsafePerformIO}.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-old-locale (package @@ -1230,7 +1227,7 @@ (define-public ghc-old-locale (description "This package provides the ability to adapt to locale conventions such as date and time formats.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-old-time (package @@ -1254,7 +1251,7 @@ (define-public ghc-old-time (description "Old-time is a package for backwards compatibility with the old @code{time} library. For new projects, the newer @uref{http://hackage.haskell.org/package/time, time library} is recommended.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-data-default-instances-old-locale (package @@ -1278,7 +1275,7 @@ (define-public ghc-data-default-instances-old-locale (synopsis "Default instances for types in old-locale") (description "Provides Default instances for types from the old-locale package.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-dlist (package @@ -1302,7 +1299,7 @@ (define-public ghc-dlist "Difference lists are a list-like type supporting O(1) append. This is particularly useful for efficient logging and pretty printing (e.g. with the Writer monad), where list append quickly becomes too expensive.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-extensible-exceptions (package @@ -1322,7 +1319,7 @@ (define-public ghc-extensible-exceptions (description "This package provides extensible exceptions for both new and old versions of GHC (i.e., < 6.10).") - (license bsd-3))) + (license license:bsd-3))) (define-public cabal-install (package @@ -1353,7 +1350,7 @@ (define-public cabal-install "The cabal command-line program simplifies the process of managing Haskell software by automating the fetching, configuration, compilation and installation of Haskell libraries and programs.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-mtl (package @@ -1379,7 +1376,7 @@ (define-public ghc-mtl with Overloading and Higher-Order Polymorphism', by Mark P Jones, in 'Advanced School of Functional Programming', 1995. See @uref{http://web.cecs.pdx.edu/~mpj/pubs/springschool.html, the paper}.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-paths (package @@ -1402,7 +1399,7 @@ (define-public ghc-paths "Knowledge of GHC's installation directories") (description "Knowledge of GHC's installation directories.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-utf8-string (package @@ -1424,7 +1421,7 @@ (define-public ghc-utf8-string "A UTF8 layer for Strings. The utf8-string package provides operations for encoding UTF8 strings to Word8 lists and back, and for reading and writing UTF8 without truncation.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-setenv (package @@ -1445,7 +1442,7 @@ (define-public ghc-setenv (synopsis "Library for setting environment variables") (description "This package provides a Haskell library for setting environment variables.") - (license expat))) + (license license:expat))) (define-public ghc-x11 (package @@ -1471,7 +1468,7 @@ (define-public ghc-x11 (description "This package provides Haskell bindings to the X11 graphics library. The bindings are a direct translation of the C bindings.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-x11-xft (package @@ -1499,7 +1496,7 @@ (define-public ghc-x11-xft (description "Bindings to the Xft, X Free Type interface library, and some Xrender parts.") - (license lgpl2.1))) + (license license:lgpl2.1))) (define-public ghc-stringbuilder (package @@ -1522,7 +1519,7 @@ (define-public ghc-stringbuilder (synopsis "Writer monad for multi-line string literals") (description "This package provides a writer monad for multi-line string literals.") - (license expat))) + (license license:expat))) (define-public ghc-zlib (package @@ -1551,7 +1548,7 @@ (define-public ghc-zlib compression formats. It provides a convenient high level API suitable for most tasks and for the few cases where more control is needed it provides access to the full zlib feature set.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-stm (package @@ -1573,7 +1570,7 @@ (define-public ghc-stm (synopsis "Software Transactional Memory") (description "A modular composable concurrency abstraction.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-parallel (package @@ -1595,7 +1592,7 @@ (define-public ghc-parallel (synopsis "Parallel programming library") (description "This package provides a library for parallel programming.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-text (package @@ -1625,7 +1622,7 @@ (define-public ghc-text space-efficient manner. This package provides text processing capabilities that are optimized for performance critical use, both in terms of large data quantities and high speed.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-hashable (package @@ -1656,7 +1653,7 @@ (define-public ghc-hashable converted to a hash value. This class exists for the benefit of hashing-based data structures. The package provides instances for basic types and a way to combine hash values.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-hunit (package @@ -1679,7 +1676,7 @@ (define-public ghc-hunit (description "HUnit is a unit testing framework for Haskell, inspired by the JUnit tool for Java.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-random (package @@ -1700,7 +1697,7 @@ (define-public ghc-random (synopsis "Random number library") (description "This package provides a basic random number generation library, including the ability to split random number generators.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-primitive (package @@ -1723,7 +1720,7 @@ (define-public ghc-primitive (synopsis "Primitive memory-related operations") (description "This package provides various primitive memory-related operations.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-test-framework (package @@ -1758,7 +1755,7 @@ (define-public ghc-test-framework deterministic order, to aid diff interpretation) and filtered and controlled by command line options. All of this comes with colored test output, progress reporting and test statistics output.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-test-framework-hunit (package @@ -1782,7 +1779,7 @@ (define-public ghc-test-framework-hunit (synopsis "HUnit support for test-framework") (description "This package provides HUnit support for the test-framework package.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-test-framework-quickcheck2 (package @@ -1815,7 +1812,7 @@ (define-public ghc-test-framework-quickcheck2 (description "This packages provides QuickCheck2 support for the test-framework package.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-tf-random (package @@ -1843,7 +1840,7 @@ (define-public ghc-tf-random cryptographic hash function built on top of the ThreeFish block cipher. See the paper \"Splittable Pseudorandom Number Generators Using Cryptographic Hashing\" by Claessen, Pałka for details and the rationale of the design.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-transformers-base (package @@ -1872,7 +1869,7 @@ (define-public ghc-transformers-base "Backported versions of types that were added to transformers in transformers 0.3 and 0.4 for users who need strict transformers 0.2 or 0.3 compatibility to run on old versions of the platform.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-transformers-compat (package @@ -1894,7 +1891,7 @@ (define-public ghc-transformers-compat added to transformers in transformers 0.3 and 0.4 for users who need strict transformers 0.2 or 0.3 compatibility to run on old versions of the platform, but also need those types.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-unix-time (package @@ -1921,7 +1918,7 @@ (define-public ghc-unix-time (synopsis "Unix time parser/formatter and utilities") (description "This library provides fast parsing and formatting utilities for Unix time in Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-unix-compat (package @@ -1945,7 +1942,7 @@ (define-public ghc-unix-compat "This package provides portable implementations of parts of the unix package. This package re-exports the unix package when available. When it isn't available, portable implementations are used.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-http-types (package @@ -1974,7 +1971,7 @@ (define-public ghc-http-types (synopsis "Generic HTTP types for Haskell") (description "This package provides generic HTTP types for Haskell (for both client and server code).") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-iproute (package @@ -2004,7 +2001,7 @@ (define-public ghc-iproute (description "IP Routing Table is a tree of IP ranges to search one of them on the longest match base. It is a kind of TRIE with one way branching removed. Both IPv4 and IPv6 are supported.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-regex-base (package @@ -2028,7 +2025,7 @@ (define-public ghc-regex-base (synopsis "Replaces/Enhances Text.Regex") (description "@code{Text.Regex.Base} provides the interface API for regex-posix, regex-pcre, regex-parsec, regex-tdfa, regex-dfa.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-regex-posix (package @@ -2051,7 +2048,7 @@ (define-public ghc-regex-posix (synopsis "POSIX regular expressions for Haskell") (description "This library provides the POSIX regex backend used by the Haskell library @code{regex-base}.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-regex-compat (package @@ -2075,7 +2072,7 @@ (define-public ghc-regex-compat (synopsis "Replaces/Enhances Text.Regex") (description "This library provides one module layer over @code{regex-posix} to replace @code{Text.Regex}.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-regex-tdfa-rc (package @@ -2102,7 +2099,7 @@ (define-public ghc-regex-tdfa-rc (synopsis "Tagged DFA regex engine for Haskell") (description "A new all-Haskell \"tagged\" DFA regex engine, inspired by @code{libtre} (fork by Roman Cheplyaka).") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-parsers (package @@ -2137,7 +2134,7 @@ (define-public ghc-parsers you get access to a large number of canned definitions. Instances exist for the parsers provided by @code{parsec}, @code{attoparsec} and @code{base}'s @code{Text.Read}.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-trifecta (package @@ -2179,7 +2176,7 @@ (define-public ghc-trifecta (synopsis "Parser combinator library with convenient diagnostics") (description "Trifecta is a modern parser combinator library for Haskell, with slicing and Clang-style colored diagnostics.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-attoparsec (package @@ -2210,7 +2207,7 @@ (define-public ghc-attoparsec (description "This library provides a fast parser combinator library, aimed particularly at dealing efficiently with network protocols and complicated text/binary file formats.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-css-text (package @@ -2236,7 +2233,7 @@ (define-public ghc-css-text (synopsis "CSS parser and renderer") (description "This package provides a CSS parser and renderer for Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-zip-archive (package @@ -2266,7 +2263,7 @@ (define-public ghc-zip-archive (synopsis "Zip archive library for Haskell") (description "The zip-archive library provides functions for creating, modifying, and extracting files from zip archives in Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-distributive (package @@ -2292,7 +2289,7 @@ (define-public ghc-distributive (synopsis "Distributive functors for Haskell") (description "This package provides distributive functors for Haskell. Dual to @code{Traversable}.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-cereal (package @@ -2314,7 +2311,7 @@ (define-public ghc-cereal (description "This package provides a binary serialization library, similar to @code{binary}, that introduces an @code{isolate} primitive for parser isolation, and labeled blocks for better error messages.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-comonad (package @@ -2344,7 +2341,7 @@ (define-public ghc-comonad (home-page "http://github.com/ekmett/comonad/") (synopsis "Comonads for Haskell") (description "This library provides @code{Comonad}s for Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public hscolour (package @@ -2368,7 +2365,7 @@ (define-public hscolour XTerm-256colour codes), HTML 3.2 with font tags, HTML 4.01 with CSS, HTML 4.01 with CSS and mouseover annotations, XHTML 1.0 with inline CSS styling, LaTeX, and mIRC chat codes.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-polyparse (package @@ -2398,7 +2395,7 @@ (define-public ghc-polyparse parsing, and so on. Finally, Text.Parse is a proposed replacement for the standard Read class, for better deserialisation of Haskell values from Strings.") - (license lgpl2.1))) + (license license:lgpl2.1))) (define-public ghc-extra (package @@ -2422,7 +2419,7 @@ (define-public ghc-extra Haskell libraries. Most functions are simple additions, filling out missing functionality. A few functions are available in later versions of GHC, but this package makes them available back to GHC 7.2.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-profunctors (package @@ -2447,7 +2444,7 @@ (define-public ghc-profunctors (home-page "http://github.com/ekmett/profunctors/") (synopsis "Profunctors for Haskell") (description "This library provides profunctors for Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-reducers (package @@ -2476,7 +2473,7 @@ (define-public ghc-reducers (synopsis "Semigroups, specialized containers and a general map/reduce framework") (description "This library provides various semigroups, specialized containers and a general map/reduce framework for Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-appar (package @@ -2498,7 +2495,7 @@ (define-public ghc-appar (synopsis "Simple applicative parser") (description "This package provides a simple applicative parser in Parsec style.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-safe (package @@ -2520,7 +2517,7 @@ (define-public ghc-safe (description "This library provides wrappers around @code{Prelude} and @code{Data.List} functions, such as @code{head} and @code{!!}, that can throw exceptions.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-generic-deriving (package @@ -2541,7 +2538,7 @@ (define-public ghc-generic-deriving (synopsis "Generalise the deriving mechanism to arbitrary classes") (description "This package provides functionality for generalising the deriving mechanism in Haskell to arbitrary classes.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-pcre-light (package @@ -2566,7 +2563,7 @@ (define-public ghc-pcre-light library for Perl 5 compatible regular expressions. The PCRE library is a set of functions that implement regular expression pattern matching using the same syntax and semantics as Perl 5.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-logict (package @@ -2591,7 +2588,7 @@ (define-public ghc-logict found in the paper \"Backtracking, Interleaving, and Terminating Monad Transformers\" available @uref{http://okmij.org/ftp/papers/LogicT.pdf, online}.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-xml (package @@ -2613,7 +2610,7 @@ (define-public ghc-xml (home-page "http://code.galois.com") (synopsis "Simple XML library for Haskell") (description "This package provides a simple XML library for Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-exceptions (package @@ -2639,7 +2636,7 @@ (define-public ghc-exceptions (synopsis "Extensible optionally-pure exceptions") (description "This library provides extensible optionally-pure exceptions for Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-temporary (package @@ -2664,7 +2661,7 @@ (define-public ghc-temporary the Cabal implementations of its own temporary file and folder functions so that you can use them without linking against Cabal or depending on it being installed.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-temporary-rc (package @@ -2693,7 +2690,7 @@ (define-public ghc-temporary-rc implementations of its own temporary file and folder functions so that you can use them without linking against Cabal or depending on it being installed. This is a better maintained fork of the \"temporary\" package.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-smallcheck (package @@ -2720,7 +2717,7 @@ (define-public ghc-smallcheck (description "SmallCheck is a testing library that allows to verify properties for all test cases up to some depth. The test cases are generated automatically by SmallCheck.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-tasty-ant-xml (package @@ -2753,7 +2750,7 @@ (define-public ghc-tasty-ant-xml "A tasty ingredient to output test results in XML, using the Ant schema. This XML can be consumed by the Jenkins continuous integration framework.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-tasty-smallcheck (package @@ -2779,7 +2776,7 @@ (define-public ghc-tasty-smallcheck (synopsis "SmallCheck support for the Tasty test framework") (description "This package provides SmallCheck support for the Tasty Haskell test framework.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-silently (package @@ -2803,7 +2800,7 @@ (define-public ghc-silently (synopsis "Prevent writing to stdout") (description "This package provides functions to prevent or capture writing to stdout and other handles.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-quickcheck-instances (package @@ -2832,7 +2829,7 @@ (define-public ghc-quickcheck-instances (synopsis "Common quickcheck instances") (description "This package provides QuickCheck instances for types provided by the Haskell Platform.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-quickcheck-unicode (package @@ -2855,7 +2852,7 @@ (define-public ghc-quickcheck-unicode (synopsis "Generator functions Unicode-related tests") (description "This package provides generator and shrink functions for testing Unicode-related software.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-quickcheck-io (package @@ -2880,7 +2877,7 @@ (define-public ghc-quickcheck-io (synopsis "Use HUnit assertions as QuickCheck properties") (description "This package provides an orphan instance that allows you to use HUnit assertions as QuickCheck properties.") - (license expat))) + (license license:expat))) (define-public ghc-quickcheck (package @@ -2910,7 +2907,7 @@ (define-public ghc-quickcheck "Automatic testing of Haskell programs") (description "QuickCheck is a library for random testing of program properties.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-case-insensitive (package @@ -2944,7 +2941,7 @@ (define-public ghc-case-insensitive which can be parameterised by a string-like type like: 'String', 'ByteString', 'Text', etc.. Comparisons of values of the resulting type will be insensitive to cases.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-syb (package @@ -2974,7 +2971,7 @@ (define-public ghc-syb defines the 'Data' class of types permitting folding and unfolding of constructor applications, instances of this class for primitive types, and a variety of traversals.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-fgl (package @@ -3000,7 +2997,7 @@ (define-public ghc-fgl and function definitions to address graph problems. The basis of the library is an inductive definition of graphs in the style of algebraic data types that encourages inductive, recursive definitions of graph algorithms.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-chasingbottoms (package @@ -3038,7 +3035,7 @@ (define-public ghc-chasingbottoms @uref{http://www.cse.chalmers.se/~nad/publications/danielsson-jansson-mpc2004.html, \"Chasing Bottoms A Case Study in Program Verification in the Presence of Partial and Infinite Values\"}.") - (license expat))) + (license license:expat))) (define-public ghc-unordered-containers (package @@ -3072,7 +3069,7 @@ (define-public ghc-unordered-containers "Efficient hashing-based container types. The containers have been optimized for performance critical use, both in terms of large data quantities and high speed.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-uniplate (package @@ -3098,7 +3095,7 @@ (define-public ghc-uniplate (description "Uniplate is a library for writing simple and concise generic operations. Uniplate has similar goals to the original Scrap Your Boilerplate work, but is substantially simpler and faster.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-base64-bytestring (package @@ -3120,7 +3117,7 @@ (define-public ghc-base64-bytestring (synopsis "Base64 encoding and decoding for ByteStrings") (description "This library provides fast base64 encoding and decoding for Haskell @code{ByteString}s.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-annotated-wl-pprint (package @@ -3145,7 +3142,7 @@ (define-public ghc-annotated-wl-pprint Wadler's paper \"A Prettier Printer\". This version allows the library user to annotate the text with semantic information, which can later be rendered in a variety of ways.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-ansi-wl-pprint (package @@ -3169,7 +3166,7 @@ (define-public ghc-ansi-wl-pprint (description "This is a pretty printing library based on Wadler's paper \"A Prettier Printer\". It has been enhanced with support for ANSI terminal colored output using the ansi-terminal package.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-split (package @@ -3201,7 +3198,7 @@ (define-public ghc-split (description "This package provides a collection of Haskell functions for splitting lists into parts, akin to the @code{split} function found in several mainstream languages.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-parsec (package @@ -3233,7 +3230,7 @@ (define-public ghc-parsec documented, has extensive libraries, good error messages, and is fast. It is defined as a monad transformer that can be stacked on arbitrary monads, and it is also parametric in the input stream type.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-vector (package @@ -3263,7 +3260,7 @@ (define-public ghc-vector (description "This library provides an efficient implementation of Int-indexed arrays (both mutable and immutable), with a powerful loop optimisation framework.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-vector-binary-instances (package @@ -3291,7 +3288,7 @@ (define-public ghc-vector-binary-instances vectors to and from disk. We use the generic interface to vectors, so all vector types are supported. Specific instances are provided for unboxed, boxed and storable vectors.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-network (package @@ -3317,7 +3314,7 @@ (define-public ghc-network (synopsis "Low-level networking interface") (description "This package provides a low-level networking interface.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-network-uri (package @@ -3348,7 +3345,7 @@ (define-public ghc-network-uri (description "This package provides an URI manipulation interface. In 'network-2.6' the 'Network.URI' module was split off from the 'network' package into this package.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-ansi-terminal (package @@ -3370,7 +3367,7 @@ (define-public ghc-ansi-terminal (description "This package provides ANSI terminal support for Haskell. It allows cursor movement, screen clearing, color output showing or hiding the cursor, and changing the title.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-http (package @@ -3404,7 +3401,7 @@ (define-public ghc-http "The HTTP package supports client-side web programming in Haskell. It lets you set up HTTP connections, transmitting requests and processing the responses coming back.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-hspec (package @@ -3434,7 +3431,7 @@ (define-public ghc-hspec (synopsis "Testing Framework for Haskell") (description "This library provides the Hspec testing framework for Haskell, inspired by the Ruby library RSpec.") - (license expat))) + (license license:expat))) (define-public ghc-hspec-contrib (package @@ -3458,7 +3455,7 @@ (define-public ghc-hspec-contrib (synopsis "Contributed functionality for Hspec") (description "This package provides contributed Hspec extensions.") - (license expat))) + (license license:expat))) (define-public ghc-hspec-expectations (package @@ -3480,7 +3477,7 @@ (define-public ghc-hspec-expectations (synopsis "Catchy combinators for HUnit") (description "This library provides catchy combinators for HUnit, see @uref{https://github.com/sol/hspec-expectations#readme, the README}.") - (license expat))) + (license license:expat))) (define-public hspec-discover (package @@ -3504,7 +3501,7 @@ (define-public hspec-discover (synopsis "Automatically discover and run Hspec tests") (description "hspec-discover is a tool which automatically discovers and runs Hspec tests.") - (license expat))) + (license license:expat))) (define-public ghc-hspec-core (package @@ -3536,7 +3533,7 @@ (define-public ghc-hspec-core (synopsis "Testing framework for Haskell") (description "This library exposes internal types and functions that can be used to extend Hspec's functionality.") - (license expat))) + (license license:expat))) (define-public ghc-hspec-meta (package @@ -3566,7 +3563,7 @@ (define-public ghc-hspec-meta (synopsis "Version of Hspec to test Hspec itself") (description "This library provides a stable version of Hspec which is used to test the in-development version of Hspec.") - (license expat))) + (license license:expat))) (define-public ghc-vault (package @@ -3595,7 +3592,7 @@ (define-public ghc-vault analogous to a bank vault, where you can access different bank boxes with different keys; hence the name. Also provided is a @code{locker} type, representing a store for a single element.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-mmorph (package @@ -3618,7 +3615,7 @@ (define-public ghc-mmorph (description "This library provides monad morphism utilities, most commonly used for manipulating monad transformer stacks.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-monad-control (package @@ -3644,7 +3641,7 @@ (define-public ghc-monad-control (description "This package defines the type class @code{MonadBaseControl}, a subset of @code{MonadBase} into which generic control operations such as @code{catch} can be lifted from @code{IO} or any other base monad.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-byteorder (package @@ -3668,7 +3665,7 @@ (define-public ghc-byteorder (description "This package is for working with the native byte-ordering of the system.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-base-compat (package @@ -3693,7 +3690,7 @@ (define-public ghc-base-compat (description "This library provides functions available in later versions of base to a wider range of compilers, without requiring the use of CPP pragmas in your code.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-blaze-builder (package @@ -3721,7 +3718,7 @@ (define-public ghc-blaze-builder @code{bytestring-0.10.4.0}. This implementation is mostly intended as a bridge to the new builder, so that code that uses the old interface can interoperate with code that uses the new implementation.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-blaze-markup (package @@ -3746,7 +3743,7 @@ (define-public ghc-blaze-markup (synopsis "Fast markup combinator library for Haskell") (description "This library provides core modules of a markup combinator library for Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-blaze-html (package @@ -3771,7 +3768,7 @@ (define-public ghc-blaze-html (home-page "http://jaspervdj.be/blaze") (synopsis "Fast HTML combinator library") (description "This library provides HTML combinators for Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-easy-file (package @@ -3792,7 +3789,7 @@ (define-public ghc-easy-file "http://github.com/kazu-yamamoto/easy-file") (synopsis "File handling library for Haskell") (description "This library provides file handling utilities for Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-async (package @@ -3821,7 +3818,7 @@ (define-public ghc-async asynchronously, and wait for their results. It is a higher-level interface over threads in Haskell, in which @code{Async a} is a concurrent thread that will eventually deliver a value of type @code{a}.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-fingertree (package @@ -3846,7 +3843,7 @@ (define-public ghc-fingertree implementations of various collection types. It includes examples, as described in section 4 of Ralf Hinze and Ross Paterson, \"Finger trees: a simple general-purpose data structure\".") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-optparse-applicative (package @@ -3869,7 +3866,7 @@ (define-public ghc-optparse-applicative (synopsis "Utilities and combinators for parsing command line options") (description "This package provides utilities and combinators for parsing command line options in Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-base-orphans (package @@ -3893,7 +3890,7 @@ (define-public ghc-base-orphans (synopsis "Orphan instances for backwards compatibility") (description "This package defines orphan instances that mimic instances available in later versions of base to a wider (older) range of compilers.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-auto-update (package @@ -3914,7 +3911,7 @@ (define-public ghc-auto-update (synopsis "Efficiently run periodic, on-demand actions") (description "This library provides mechanisms to efficiently run periodic, on-demand actions in Haskell.") - (license expat))) + (license license:expat))) (define-public ghc-tagged (package @@ -3935,7 +3932,7 @@ (define-public ghc-tagged (synopsis "Haskell phantom types to avoid passing dummy arguments") (description "This library provides phantom types for Haskell 98, to avoid having to unsafely pass dummy arguments.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-unbounded-delays (package @@ -3958,7 +3955,7 @@ (define-public ghc-unbounded-delays Haskell base library use the bounded @code{Int} type for specifying the delay or timeout period. This package provides alternative functions which use the unbounded @code{Integer} type.") - (license bsd-3))) + (license license:bsd-3))) ;; This package builds `clock` without tests, since the tests rely on tasty ;; and tasty-quickcheck, which in turn require clock to build. When tasty and @@ -3983,7 +3980,7 @@ (define ghc-clock-bootstrap (synopsis "High-resolution clock for Haskell") (description "A package for convenient access to high-resolution clock and timer functions of different operating systems via a unified API.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-clock (package @@ -4006,7 +4003,7 @@ (define-public ghc-clock (synopsis "High-resolution clock for Haskell") (description "A package for convenient access to high-resolution clock and timer functions of different operating systems via a unified API.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-charset (package @@ -4031,7 +4028,7 @@ (define-public ghc-charset (synopsis "Fast unicode character sets for Haskell") (description "This package provides fast unicode character sets for Haskell, based on complemented PATRICIA tries.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-bytestring-builder (package @@ -4053,7 +4050,7 @@ (define-public ghc-bytestring-builder (description "This package provides the bytestring builder that is debuting in bytestring-0.10.4.0, which should be shipping with GHC 7.8. Compatibility package for older packages.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-nats (package @@ -4076,7 +4073,7 @@ (define-public ghc-nats (home-page "https://hackage.haskell.org/package/nats") (synopsis "Natural numbers") (description "This library provides the natural numbers for Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-void (package @@ -4103,7 +4100,7 @@ (define-public ghc-void (description "A Haskell 98 logically uninhabited data type, used to indicate that a given term should not exist.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-kan-extensions (package @@ -4134,7 +4131,7 @@ (define-public ghc-kan-extensions (synopsis "Kan extensions library") (description "This library provides Kan extensions, Kan lifts, various forms of the Yoneda lemma, and (co)density (co)monads for Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-statevar (package @@ -4157,7 +4154,7 @@ (define-public ghc-statevar (synopsis "State variables for Haskell") (description "This package provides state variables, which are references in the @code{IO} monad, like @code{IORef}s or parts of the OpenGL state.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-lens (package @@ -4208,7 +4205,7 @@ (define-public ghc-lens in @code{Control.Lens} provide a highly generic toolbox for composing families of getters, folds, isomorphisms, traversals, setters and lenses and their indexed variants.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-tagsoup (package @@ -4237,7 +4234,7 @@ (define-public ghc-tagsoup unstructured and malformed HTML from the web. The library also provides useful functions to extract information from an HTML document, making it ideal for screen-scraping.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-digest (package @@ -4264,7 +4261,7 @@ (define-public ghc-digest "This package provides efficient cryptographic hash implementations for strict and lazy bytestrings. For now, CRC32 and Adler32 are supported; they are implemented as FFI bindings to efficient code from zlib.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-cheapskate (package @@ -4301,7 +4298,7 @@ (define-public ghc-cheapskate possible way. It is designed to deal with any input, including garbage, with linear performance. Output is sanitized by default for protection against XSS attacks.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-bifunctors (package @@ -4324,7 +4321,7 @@ (define-public ghc-bifunctors (home-page "http://github.com/ekmett/bifunctors/") (synopsis "Bifunctors for Haskell") (description "This package provides bifunctors for Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-semigroupoids (package @@ -4362,7 +4359,7 @@ (define-public ghc-semigroupoids containers that can provide stronger guarantees about their contents, so versions of @code{Traversable} and @code{Foldable} that can be folded with just a @code{Semigroup} are added.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-contravariant (package @@ -4389,7 +4386,7 @@ (define-public ghc-contravariant "http://github.com/ekmett/contravariant/") (synopsis "Contravariant functors") (description "Contravariant functors for Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-semigroups (package @@ -4422,7 +4419,7 @@ (define-public ghc-semigroups also (originally) generalized a group (a monoid with all inverses) to a type where every element did not have to have an inverse, thus the name semigroup.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-free (package @@ -4459,7 +4456,7 @@ (define-public ghc-free is used in the sense of \"unrestricted\" rather than \"zero-cost\": @code{Free f} makes no constraining assumptions beyond those given by @code{f} and the definition of @code{Monad}.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-adjunctions (package @@ -4492,7 +4489,7 @@ (define-public ghc-adjunctions (synopsis "Adjunctions and representable functors") (description "This library provides adjunctions and representable functors for Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-fast-logger (package @@ -4518,7 +4515,7 @@ (define-public ghc-fast-logger (home-page "https://hackage.haskell.org/package/fast-logger") (synopsis "Fast logging system") (description "This library provides a fast logging system for Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-doctest (package @@ -4553,7 +4550,7 @@ (define-public ghc-doctest (description "The doctest program checks examples in source code comments. It is modeled after doctest for Python, see @uref{http://docs.python.org/library/doctest.html, the Doctest website}.") - (license expat))) + (license license:expat))) (define-public ghc-lifted-base (package @@ -4584,7 +4581,7 @@ (define-public ghc-lifted-base Note that not all modules from @code{base} are converted yet. The package includes a copy of the @code{monad-peel} test suite written by Anders Kaseorg.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-word8 (package @@ -4606,7 +4603,7 @@ (define-public ghc-word8 (home-page "http://hackage.haskell.org/package/word8") (synopsis "Word8 library for Haskell") (description "Word8 library to be used with @code{Data.ByteString}.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-stringsearch (package @@ -4629,7 +4626,7 @@ (define-public ghc-stringsearch for substrings in strict or lazy @code{ByteStrings}. It also provides functions for breaking or splitting on substrings and replacing all occurrences of a substring (the first in case of overlaps) with another.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-tasty-quickcheck (package @@ -4658,7 +4655,7 @@ (define-public ghc-tasty-quickcheck (synopsis "QuickCheck support for the Tasty test framework") (description "This package provides QuickCheck support for the Tasty Haskell test framework.") - (license expat))) + (license license:expat))) (define-public ghc-tasty-golden (package @@ -4693,7 +4690,7 @@ (define-public ghc-tasty-golden IO action that writes its result to a file. To pass the test, this output file should be identical to the corresponding 'golden' file, which contains the correct result for the test.") - (license expat))) + (license license:expat))) (define-public ghc-tasty (package @@ -4725,7 +4722,7 @@ (define-public ghc-tasty (description "Tasty is a modern testing framework for Haskell. It lets you combine your unit tests, golden tests, QuickCheck/SmallCheck properties, and any other types of tests into a single test suite.") - (license expat))) + (license license:expat))) (define-public ghc-tasty-hunit (package @@ -4748,7 +4745,7 @@ (define-public ghc-tasty-hunit (synopsis "HUnit support for the Tasty test framework") (description "This package provides HUnit support for the Tasty Haskell test framework.") - (license expat))) + (license license:expat))) (define-public ghc-cookie (package @@ -4779,7 +4776,7 @@ (define-public ghc-cookie (home-page "http://github.com/snoyberg/cookie") (synopsis "HTTP cookie parsing and rendering") (description "HTTP cookie parsing and rendering library for Haskell.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-scientific (package @@ -4815,7 +4812,7 @@ (define-public ghc-scientific and space efficient. They are represented using @uref{http://en.wikipedia.org/wiki/Scientific_notation, scientific notation}.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-aeson (package @@ -4851,7 +4848,7 @@ (define-public ghc-aeson (description "This package provides a JSON parsing and encoding library for Haskell, optimized for ease of use and high performance. (A note on naming: in Greek mythology, Aeson was the father of Jason.)") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-wai (package @@ -4885,7 +4882,7 @@ (define-public ghc-wai (description "This package provides a Web Application Interface (WAI) library for the Haskell language. It defines a common protocol for communication between web applications and web servers.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-wai-logger (package @@ -4919,7 +4916,7 @@ (define-public ghc-wai-logger (home-page "http://hackage.haskell.org/package/wai-logger") (synopsis "Logging system for WAI") (description "This package provides the logging system for WAI.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-wai-extra (package @@ -4967,7 +4964,7 @@ (define-public ghc-wai-extra (synopsis "Some basic WAI handlers and middleware") (description "This library provides basic WAI handlers and middleware functionality.") - (license expat))) + (license license:expat))) (define-public ghc-deepseq-generics (package @@ -5000,7 +4997,7 @@ (define-public ghc-deepseq-generics "This package provides a @code{GHC.Generics}-based @code{Control.DeepSeq.Generics.genericRnf} function which can be used for providing an 'rnf' implementation.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-pandoc-types (package @@ -5025,7 +5022,7 @@ (define-public ghc-pandoc-types "This module defines the @code{Pandoc} data structure, which is used by pandoc to represent structured documents. It also provides functions for building up, manipulating and serialising @code{Pandoc} structures.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-texmath (package @@ -5058,7 +5055,7 @@ (define-public ghc-texmath native format (allowing conversion, via pandoc, to a variety of different markup formats). The TeX reader supports basic LaTeX and AMS extensions, and it can parse and apply LaTeX macros.") - (license gpl2+))) + (license license:gpl2+))) (define-public ghc-regex-pcre-builtin (package @@ -5081,7 +5078,7 @@ (define-public ghc-regex-pcre-builtin "This package is an enhancement of the @code{Text.Regex} library, providing the PCRE backend to accompany regex-base, with bundled code from @url{http://www.pcre.org}.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-diff (package @@ -5100,7 +5097,7 @@ (define-public ghc-diff (description "This package provides an implementation of the standard diff algorithm, and utilities for pretty printing.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-highlighting-kate (package @@ -5132,7 +5129,7 @@ (define-public ghc-highlighting-kate supported by Kate can be added. An (optional) command-line program is provided, along with a utility for generating new parsers from Kate XML syntax descriptions.") - (license gpl2+))) + (license license:gpl2+))) (define-public ghc-cmark (package @@ -5157,7 +5154,7 @@ (define-public ghc-cmark @uref{https://github.com/jgm/cmark, libcmark}, the reference parser for CommonMark, a fully specified variant of Markdown. It includes sources for libcmark (0.21.0) and does not require prior installation of the C library.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-executable-path (package @@ -5179,7 +5176,7 @@ (define-public ghc-executable-path \"However, this is hard-to-impossible to implement on some non-Unix OSes, so instead, for maximum portability, we just return the leafname of the program as invoked.\" This library tries to provide the missing path.") - (license public-domain))) + (license license:public-domain))) (define-public ghc-enclosed-exceptions (package @@ -5208,7 +5205,7 @@ (define-public ghc-enclosed-exceptions "This library implements a technique to catch all exceptions raised within an enclosed computation, while remaining responsive to (external) asynchronous exceptions.") - (license expat))) + (license license:expat))) (define-public ghc-packedstring (package @@ -5237,7 +5234,7 @@ (define-public ghc-packedstring (synopsis "Library for packed strings") (description "This deprecated library provides an implementation of packed strings.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-th-lift (package @@ -5258,7 +5255,7 @@ (define-public ghc-th-lift (description "This is a Haskell library to derive Template Haskell's Lift class for datatypes.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-th-expand-syns (package @@ -5280,7 +5277,7 @@ (define-public ghc-th-expand-syns (description "This package enables users to expand type synonyms in Template Haskell @dfn{abstract syntax trees} (ASTs).") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-th-reify-many (package @@ -5306,7 +5303,7 @@ (define-public ghc-th-reify-many declarations. The main intended use case is for enumerating the names of datatypes reachable from an initial datatype, and passing these names to some function which generates instances.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-th-orphans (package @@ -5334,7 +5331,7 @@ (define-public ghc-th-orphans instances for @code{Ord} and @code{Lift}, as well as a few missing @code{Show} and @code{Eq} instances. These instances used to live in the haskell-src-meta package, and that's where the version number started.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-haskell-src-meta (package @@ -5358,7 +5355,7 @@ (define-public ghc-haskell-src-meta (description "This package provides tools to parse Haskell sources to the template-haskell abstract syntax.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-aeson-qq (package @@ -5389,7 +5386,7 @@ (define-public ghc-aeson-qq "aeson-qq provides a JSON quasiquoter for Haskell. This package exposes the function @code{aesonQQ} that compile-time converts a string representation of a JSON value into a @code{Data.Aeson.Value}.") - (license expat))) + (license license:expat))) (define-public ghc-conduit (package @@ -5423,7 +5420,7 @@ (define-public ghc-conduit memory. It is an alternative to lazy I/O which guarantees deterministic resource handling, and fits in the same general solution space as enumerator/iteratee and pipes." ) - (license expat))) + (license license:expat))) (define-public ghc-logging-facade (package @@ -5445,7 +5442,7 @@ (define-public ghc-logging-facade (description "This package provides a simple logging abstraction that allows multiple back-ends.") - (license expat))) + (license license:expat))) (define-public ghc-mockery (package @@ -5468,7 +5465,7 @@ (define-public ghc-mockery (synopsis "Support functions for automated testing") (description "The mockery package provides support functions for automated testing.") - (license expat))) + (license license:expat))) (define-public ghc-yaml (package @@ -5502,7 +5499,7 @@ (define-public ghc-yaml (synopsis "Parsing and rendering YAML documents") (description "This package provides a library to parse and render YAML documents.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-filemanip (package @@ -5525,7 +5522,7 @@ (define-public ghc-filemanip "This package provides a Haskell library for working with files and directories. It includes code for pattern matching, finding files, modifying file contents, and more.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-mmap (package @@ -5546,7 +5543,7 @@ (define-public ghc-mmap devices to be lazily loaded into memory as strict or lazy @code{ByteStrings}, @code{ForeignPtrs} or plain @code{Ptrs}, using the virtual memory subsystem to do on-demand loading.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-juicypixels (package @@ -5572,7 +5569,7 @@ (define-public ghc-juicypixels (description "This library can load and store images in PNG, Bitmap, JPEG, Radiance, TIFF and GIF formats.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-sha (package @@ -5599,7 +5596,7 @@ (define-public ghc-sha NIST and RFC test vectors for the various functions. While some attention has been paid to performance, these do not presently reach the speed of well-tuned libraries, like OpenSSL.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-hslua (package @@ -5630,7 +5627,7 @@ (define-public ghc-hslua (description "The Scripting.Lua module is a wrapper of the Lua language interpreter as described in @url{http://www.lua.org/}.") - (license expat))) + (license license:expat))) (define-public ghc-mime-types (package @@ -5651,7 +5648,7 @@ (define-public ghc-mime-types (synopsis "Basic MIME type handling types and functions") (description "This library provides basic MIME type handling types and functions.") - (license expat))) + (license license:expat))) (define-public ghc-http-client (package @@ -5692,7 +5689,7 @@ (define-public ghc-http-client (description "This package provides an HTTP client engine, intended as a base layer for more user-friendly packages.") - (license expat))) + (license license:expat))) (define-public ghc-byteable (package @@ -5712,7 +5709,7 @@ (define-public ghc-byteable "This package provides an abstract class to manipulate sequence of bytes. The use case of this class is abstracting manipulation of types that are just wrapping a bytestring with stronger and more meaniful name.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-hourglass (package @@ -5741,7 +5738,7 @@ (define-public ghc-hourglass @code{Time} type classes. Each @code{Timeable} instances can be converted to a type that has a @code{Time} instances, and thus are different representations of current time.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-pem (package @@ -5769,7 +5766,7 @@ (define-public ghc-pem (description "This library provides readers and writers for the @dfn{Privacy Enhanced Mail} (PEM) format.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-asn1-types (package @@ -5792,7 +5789,7 @@ (define-public ghc-asn1-types (description "The package provides the standard types for dealing with the ASN.1 format.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-asn1-encoding (package @@ -5820,7 +5817,7 @@ (define-public ghc-asn1-encoding (description "This package provides a reader and writer for ASN1 data in raw form with supports for high level forms of ASN1 (BER, and DER).") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-asn1-parse (package @@ -5843,7 +5840,7 @@ (define-public ghc-asn1-parse (description "This package provides a simple monadic parser for ASN1 stream types, when ASN1 pattern matching is not convenient.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-tasty-kat (package @@ -5867,7 +5864,7 @@ (define-public ghc-tasty-kat (description "This package provides a @dfn{Known Answer Tests} (KAT) framework for tasty.") - (license expat))) + (license license:expat))) (define-public ghc-cryptonite (package @@ -5897,7 +5894,7 @@ (define-public ghc-cryptonite It supports a wide range of symmetric ciphers, cryptographic hash functions, public key algorithms, key derivation numbers, cryptographic random number generators, and more.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-memory (package @@ -5923,7 +5920,7 @@ (define-public ghc-memory polymorphic byte array abstraction and functions similar to strict ByteString, different type of byte array abstraction, raw memory IO operations (memory set, memory copy, ..) and more") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-x509 (package @@ -5953,7 +5950,7 @@ (define-public ghc-x509 (synopsis "X509 reader and writer") (description "This library provides functions to read and write X509 certificates.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-x509-store (package @@ -5980,7 +5977,7 @@ (define-public ghc-x509-store (description "This package provides functions for accessing and storing X.509 collections, certificates, revocation lists, and exception lists.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-x509-validation (package @@ -6012,7 +6009,7 @@ (define-public ghc-x509-validation (description "This package provides functions for X.509 certificate and revocation list validation.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-x509-system (package @@ -6037,7 +6034,7 @@ (define-public ghc-x509-system (description "This package provides a library to handle system accessors and storage for X.509 certificates.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-tls (package @@ -6080,7 +6077,7 @@ (define-public ghc-tls implement the SSL3.0, TLS1.0, TLS1.1 and TLS1.2 protocol, and support RSA and Ephemeral (Elliptic curve and regular) Diffie Hellman key exchanges, and many extensions.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-socks (package @@ -6101,7 +6098,7 @@ (define-public ghc-socks (synopsis "SOCKS proxy (version 5) implementation.") (description "This library provides a SOCKS proxy (version 5) implementation.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-connection (package @@ -6132,7 +6129,7 @@ (define-public ghc-connection "This package provides a simple network library for all your connection needs. It provides a very simple API to create sockets to a destination with the choice of SSL/TLS, and SOCKS.") - (license bsd-3))) + (license license:bsd-3))) (define-public ghc-http-client-tls (package @@ -6164,7 +6161,7 @@ (define-public ghc-http-client-tls "This package provides a backend for the http-client package using the connection and TLS libraries. It is intended for use by higher-level libraries, such as http-conduit.") - (license expat))) + (license license:expat))) (define-public ghc-pandoc (package @@ -6237,7 +6234,7 @@ (define-public ghc-pandoc Pandoc extends standard Markdown syntax with footnotes, embedded LaTeX, definition lists, tables, and other features. A compatibility mode is provided for those who need a drop-in replacement for Markdown.pl.") - (license gpl2+))) + (license license:gpl2+))) (define-public idris (package @@ -6298,6 +6295,6 @@ (define-public idris be predicated on values, meaning that some aspects of a program's behaviour can be specified precisely in the type. The language is closely related to Epigram and Agda.") - (license bsd-3))) + (license license:bsd-3))) ;;; haskell.scm ends here diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index e17e493099..535bd84aa1 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -23,8 +23,7 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu packages linux) - #:use-module ((guix licenses) - #:hide (zlib openssl)) + #:use-module ((guix licenses) #:prefix license:) #:use-module (gnu packages) #:use-module (gnu packages compression) #:use-module (gnu packages gcc) @@ -150,7 +149,7 @@ (define-public linux-libre-headers #:tests? #f)) (synopsis "GNU Linux-Libre kernel headers") (description "Headers of the Linux-Libre kernel.") - (license gpl2) + (license license:gpl2) (home-page "http://www.gnu.org/software/linux-libre/")))) (define-public module-init-tools @@ -184,7 +183,7 @@ (define-public module-init-tools (description "Tools for loading and managing Linux kernel modules, such as `modprobe', `insmod', `lsmod', and more.") - (license gpl2+))) + (license license:gpl2+))) (define %boot-logo-patch ;; Linux-Libre boot logo featuring Freedo and a gnu. @@ -315,7 +314,7 @@ (define-public linux-libre (description "GNU Linux-Libre is a free (as in freedom) variant of the Linux kernel. It has been modified to remove all non-free binary blobs.") - (license gpl2) + (license license:gpl2) (home-page "http://www.gnu.org/software/linux-libre/")))) @@ -362,7 +361,7 @@ (define-public linux-pam Pluggable authentication modules are small shared object files that can be used through the PAM API to perform tasks, like authenticating a user at login. Local and dynamic reconfiguration are its key features.") - (license bsd-3))) + (license license:bsd-3))) ;;; @@ -390,7 +389,7 @@ (define-public psmisc "This PSmisc package is a set of some small useful utilities that use the proc filesystem. We're not about changing the world, but providing the system administrator with some help in common tasks.") - (license gpl2+))) + (license license:gpl2+))) (define-public util-linux (package @@ -457,8 +456,8 @@ (define-public util-linux ;; Note that util-linux doesn't use the same license for all the ;; code. GPLv2+ is the default license for a code without an ;; explicitly defined license. - (license (list gpl3+ gpl2+ gpl2 lgpl2.0+ - bsd-4 public-domain)))) + (license (list license:gpl3+ license:gpl2+ license:gpl2 license:lgpl2.0+ + license:bsd-4 license:public-domain)))) (define-public procps (package @@ -525,7 +524,7 @@ (define-public procps that give information about processes using the Linux /proc file system. The package includes the programs ps, top, vmstat, w, kill, free, slabtop, and skill.") - (license gpl2))) + (license license:gpl2))) (define-public usbutils (package @@ -549,7 +548,7 @@ (define-public usbutils "Tools for working with USB devices, such as lsusb") (description "Tools for working with USB devices, such as lsusb.") - (license gpl2+))) + (license license:gpl2+))) (define-public e2fsprogs (package @@ -625,9 +624,9 @@ (define-public e2fsprogs (synopsis "Creating and checking ext2/ext3/ext4 file systems") (description "This package provides tools for manipulating ext2/ext3/ext4 file systems.") - (license (list gpl2 ; programs - lgpl2.0 ; libext2fs - x11)))) ; libuuid + (license (list license:gpl2 ;programs + license:lgpl2.0 ;libext2fs + license:x11)))) ;libuuid (define e2fsprogs/static (static-package @@ -691,7 +690,7 @@ (define-public extundelete (description "Extundelete is a set of tools that can recover deleted files from an ext3 or ext4 partition.") - (license gpl2))) + (license license:gpl2))) (define-public zerofree (package @@ -726,7 +725,7 @@ (define-public zerofree "The zerofree command scans the free blocks in an ext2 file system and fills any non-zero blocks with zeroes. This is a useful way to make disk images more compressible.") - (license gpl2))) + (license license:gpl2))) (define-public strace (package @@ -746,7 +745,7 @@ (define-public strace (description "strace is a system call tracer, i.e. a debugging tool which prints out a trace of all the system calls made by a another process/program.") - (license bsd-3))) + (license license:bsd-3))) (define-public ltrace (package @@ -770,7 +769,7 @@ (define-public ltrace "ltrace intercepts and records dynamic library calls which are called by an executed process and the signals received by that process. It can also intercept and print the system calls executed by the program.") - (license gpl2+))) + (license license:gpl2+))) (define-public alsa-lib (package @@ -791,7 +790,7 @@ (define-public alsa-lib (description "The Advanced Linux Sound Architecture (ALSA) provides audio and MIDI functionality to the Linux-based operating system.") - (license lgpl2.1+))) + (license license:lgpl2.1+))) (define-public alsa-utils (package @@ -836,7 +835,7 @@ (define-public alsa-utils ;; This is mostly GPLv2+ but a few files such as 'alsactl.c' are ;; GPLv2-only. - (license gpl2))) + (license license:gpl2))) (define-public iptables (package @@ -864,7 +863,7 @@ (define-public iptables from the packet filter ruleset, iptables is used for this, too. The iptables package also includes ip6tables. ip6tables is used for configuring the IPv6 packet filter.") - (license gpl2+))) + (license license:gpl2+))) (define-public iproute (package @@ -925,7 +924,7 @@ (define-public iproute controls IPv4 and IPv6 configuration and tc stands for traffic control. Both tools print detailed usage messages and are accompanied by a set of manpages.") - (license gpl2+))) + (license license:gpl2+))) (define-public net-tools ;; XXX: This package is basically unmaintained, but it provides a few @@ -1023,7 +1022,7 @@ (define (apply-patch file) netstat, rarp and route. Additionally, this package contains utilities relating to particular network hardware types (plipconfig, slattach) and advanced aspects of IP configuration (iptunnel, ipmaddr).") - (license gpl2+))) + (license license:gpl2+))) (define-public libcap (package @@ -1061,7 +1060,7 @@ (define-public libcap Linux-based operating systems.") ;; License is BSD-3 or GPLv2, at the user's choice. - (license gpl2))) + (license license:gpl2))) (define-public bridge-utils (package @@ -1107,7 +1106,7 @@ (define-public bridge-utils Packets are forwarded based on Ethernet address, rather than IP address (like a router). Since forwarding is done at Layer 2, all protocols can go transparently through a bridge.") - (license gpl2+))) + (license license:gpl2+))) (define-public libnl (package @@ -1134,7 +1133,7 @@ (define-public libnl ;; Most files are LGPLv2.1-only, but some are GPLv2-only (like ;; 'nl-addr-add.c'), so the result is GPLv2-only. - (license gpl2))) + (license license:gpl2))) (define-public iw (package @@ -1160,7 +1159,7 @@ (define-public iw (description "iw is a new nl80211 based CLI configuration utility for wireless devices. It replaces 'iwconfig', which is deprecated.") - (license isc))) + (license license:isc))) (define-public powertop (package @@ -1191,7 +1190,7 @@ (define-public powertop an interactive mode where the user can experiment various power management settings for cases where the operating system has not enabled these settings.") - (license gpl2))) + (license license:gpl2))) (define-public aumix (package @@ -1212,7 +1211,7 @@ (define-public aumix (description "Aumix adjusts an audio mixer from X, the console, a terminal, the command line or a script.") - (license gpl2+))) + (license license:gpl2+))) (define-public iotop (package @@ -1238,7 +1237,7 @@ (define-public iotop (description "Iotop is a Python program with a top like user interface to show the processes currently causing I/O.") - (license gpl2+))) + (license license:gpl2+))) (define-public fuse (package @@ -1296,8 +1295,8 @@ (define-public fuse user space\", is a kernel module and user-space library that tries to address part of this problem by allowing users to run file system implementations as user-space processes.") - (license (list lgpl2.1 ; library - gpl2+)))) ; command-line utilities + (license (list license:lgpl2.1 ;library + license:gpl2+)))) ;command-line utilities (define-public unionfs-fuse (package @@ -1321,7 +1320,7 @@ (define-public unionfs-fuse space, using the FUSE library. Mounting a union file system allows you to \"aggregate\" the contents of several directories into a single mount point. UnionFS-FUSE additionally supports copy-on-write.") - (license bsd-3))) + (license license:bsd-3))) (define fuse-static (package (inherit fuse) @@ -1390,7 +1389,7 @@ (define-public sshfs-fuse Since most SSH servers already support this protocol it is very easy to set up: on the server side there's nothing to do; on the client side mounting the file system is as easy as logging into the server with an SSH client.") - (license gpl2+))) + (license license:gpl2+))) (define-public numactl (package @@ -1423,8 +1422,8 @@ (define-public numactl The package contains other commands, such as numademo, numastat and memhog. The numademo command provides a quick overview of NUMA performance on your system.") - (license (list gpl2 ; programs - lgpl2.1)))) ; library + (license (list license:gpl2 ;programs + license:lgpl2.1)))) ;library (define-public kbd (package @@ -1482,7 +1481,7 @@ (define-public kbd "This package contains keytable files and keyboard utilities compatible for systems using the Linux kernel. This includes commands such as 'loadkeys', 'setfont', 'kbdinfo', and 'chvt'.") - (license gpl2+))) + (license license:gpl2+))) (define-public inotify-tools (package @@ -1502,7 +1501,7 @@ (define-public inotify-tools (description "The inotify-tools packages provides a C library and command-line tools to use Linux' inotify mechanism, which allows file accesses to be monitored.") - (license gpl2+))) + (license license:gpl2+))) (define-public kmod (package @@ -1546,7 +1545,7 @@ (define-public kmod These tools are designed on top of libkmod, a library that is shipped with kmod. The aim is to be compatible with tools, configurations and indices from the module-init-tools project.") - (license gpl2+))) ; library under lgpl2.1+ + (license license:gpl2+))) ; library under lgpl2.1+ (define-public eudev ;; The post-systemd fork, maintained by Gentoo. @@ -1574,7 +1573,7 @@ (define-public eudev (description "Udev is a daemon which dynamically creates and removes device nodes from /dev/, handles hotplug events and loads drivers at boot time.") - (license gpl2+))) + (license license:gpl2+))) (define-public lvm2 (package @@ -1639,7 +1638,7 @@ (define-public lvm2 ;; Libraries (liblvm2, libdevmapper) are LGPLv2.1. ;; Command-line tools are GPLv2. - (license (list gpl2 lgpl2.1)))) + (license (list license:gpl2 license:lgpl2.1)))) (define-public wireless-tools (package @@ -1678,7 +1677,7 @@ (define-public wireless-tools (home-page "http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html") ;; wireless.21.h and wireless.22.h are distributed under lgpl2.1+, the ;; other files are distributed under gpl2. - (license (list gpl2 lgpl2.1+)))) + (license (list license:gpl2 license:lgpl2.1+)))) (define-public crda (package @@ -1747,7 +1746,7 @@ (define-public crda "The Central Regulatory Domain Agent (CRDA) acts as the udev helper for communication between the kernel Linux and user space for regulatory compliance.") - (license copyleft-next))) + (license license:copyleft-next))) (define-public wireless-regdb (package @@ -1795,7 +1794,7 @@ (define-public wireless-regdb "This package contains the wireless regulatory database Central Regulatory Database Agent (CRDA) daemon. The database contains information on country-specific regulations for the wireless spectrum.") - (license isc))) + (license license:isc))) (define-public lm-sensors (package @@ -1868,7 +1867,7 @@ (define-public lm-sensors "Lm-sensors is a hardware health monitoring package for Linux. It allows you to access information from temperature, voltage, and fan speed sensors. It works with most newer systems.") - (license gpl2+))) + (license license:gpl2+))) (define-public i2c-tools (package @@ -1898,7 +1897,7 @@ (define-public i2c-tools Linux: a bus probing tool, a chip dumper, register-level SMBus access helpers, EEPROM decoding scripts, EEPROM programming tools, and a python module for SMBus access.") - (license gpl2+))) + (license license:gpl2+))) (define-public xsensors (package @@ -1935,7 +1934,7 @@ (define-public xsensors "Xsensors reads data from the libsensors library regarding hardware health such as temperature, voltage and fan speed and displays the information in a digital read-out.") - (license gpl2+))) + (license license:gpl2+))) (define-public perf (package @@ -2011,7 +2010,7 @@ (define-public pflask an isolated container, created with the help of Linux namespaces. It is similar in functionality to chroot, although pflask provides better isolation thanks to the use of namespaces.") - (license bsd-2))) + (license license:bsd-2))) (define-public hdparm (package @@ -2037,7 +2036,7 @@ (define-public hdparm (description "Get/set device parameters for Linux SATA/IDE drives. It's primary use is for enabling irq-unmasking and IDE multiple-mode.") - (license (non-copyleft "file://LICENSE.TXT")))) + (license (license:non-copyleft "file://LICENSE.TXT")))) (define-public rfkill (package @@ -2063,8 +2062,8 @@ (define-public rfkill "rfkill is a simple tool for accessing the rfkill device interface, which is used to enable and disable wireless networking devices, typically WLAN, Bluetooth and mobile broadband.") - (license (non-copyleft "file://COPYING" - "See COPYING in the distribution.")))) + (license (license:non-copyleft "file://COPYING" + "See COPYING in the distribution.")))) (define-public acpid (package @@ -2086,7 +2085,7 @@ (define-public acpid during the system boot, and will run as a background process. When an ACPI event is received from the kernel, acpid will examine the list of rules specified in /etc/acpi/events and execute the rules that match the event.") - (license gpl2+))) + (license license:gpl2+))) (define-public sysfsutils (package @@ -2110,7 +2109,7 @@ (define-public sysfsutils also contains the libsysfs library.") ;; The library is under lgpl2.1+ (all files say "or any later version"). ;; The rest is mostly gpl2, with a few files indicating gpl2+. - (license (list gpl2 gpl2+ lgpl2.1+)))) + (license (list license:gpl2 license:gpl2+ license:lgpl2.1+)))) (define-public sysfsutils-1 (package @@ -2162,7 +2161,7 @@ (define-public cpufrequtils "The cpufrequtils suite contains utilities to retrieve CPU frequency information, and set the CPU frequency if supported, using the cpufreq capabilities of the Linux kernel.") - (license gpl2))) + (license license:gpl2))) (define-public libraw1394 (package @@ -2185,7 +2184,7 @@ (define-public libraw1394 1394 buses to user space. Through libraw1394/raw1394, applications can directly send to and receive from other nodes without requiring a kernel driver for the protocol in question.") - (license lgpl2.1+))) + (license license:lgpl2.1+))) (define-public libavc1394 (package @@ -2208,7 +2207,7 @@ (define-public libavc1394 (description "Libavc1394 is a programming interface to the AV/C specification from the 1394 Trade Association. AV/C stands for Audio/Video Control.") - (license lgpl2.1+))) + (license license:lgpl2.1+))) (define-public libiec61883 (package @@ -2232,7 +2231,7 @@ (define-public libiec61883 (description "The libiec61883 library provides a higher level API for streaming DV, MPEG-2 and audio over Linux IEEE 1394.") - (license lgpl2.1+))) + (license license:lgpl2.1+))) (define-public mdadm (package @@ -2275,7 +2274,7 @@ (define-public mdadm "mdadm is a tool for managing Linux Software RAID arrays. It can create, assemble, report on, and monitor arrays. It can also move spares between raid arrays when needed.") - (license gpl2+))) + (license license:gpl2+))) (define-public libaio (package @@ -2304,7 +2303,7 @@ (define-public libaio "This library enables userspace to use Linux kernel asynchronous I/O system calls, important for the performance of databases and other advanced applications.") - (license lgpl2.1+))) + (license license:lgpl2.1+))) (define-public bluez (package @@ -2341,7 +2340,7 @@ (define-public bluez (description "BlueZ provides support for the core Bluetooth layers and protocols. It is flexible, efficient and uses a modular implementation.") - (license gpl2+))) + (license license:gpl2+))) (define-public fuse-exfat (package @@ -2399,7 +2398,7 @@ (define-public fuse-exfat (description "This package provides a FUSE-based file system that provides read and write access to exFAT devices.") - (license gpl2+))) + (license license:gpl2+))) (define-public gpm (package @@ -2442,4 +2441,4 @@ (define-public gpm "The GPM (general-purpose mouse) daemon is a mouse server for applications running on the Linux console. It allows users to select items and copy/paste text in the console and in xterm.") - (license gpl2+))) + (license license:gpl2+))) -- cgit v1.2.3 From 7db0799dc97a3b6f268bb7fa410137c1321af3d4 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sat, 19 Dec 2015 00:42:10 +0100 Subject: gnu: agg: Update URLs. * gnu/packages/graphics.scm (agg)[source, home-page]: Add up-to-date URLs. --- gnu/packages/graphics.scm | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index 02e65d3276..4e15b814c8 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -271,8 +271,16 @@ (define-public agg (version "2.5") (source (origin (method url-fetch) - (uri (string-append "http://www.antigrain.com/agg-" - version ".tar.gz")) + (uri (list (string-append + "ftp://ftp.fau.de/gentoo/distfiles/agg-" + version ".tar.gz") + (string-append + "ftp://ftp.ula.ve/gentoo/distfiles/agg-" + version ".tar.gz") + + ;; Site was discontinued. + (string-append "http://www.antigrain.com/agg-" + version ".tar.gz"))) (sha256 (base32 "07wii4i824vy9qsvjsgqxppgqmfdxq0xa87i5yk53fijriadq7mb")) (patches (list (search-patch "agg-am_c_prototype.patch"))))) @@ -301,7 +309,9 @@ (define-public agg `(("libx11" ,libx11) ("freetype" ,freetype) ("sdl" ,sdl))) - (home-page "http://antigrain.com") + + ;; Antigrain.com was discontinued. + (home-page "http://agg.sourceforge.net/antigrain.com/index.html") (synopsis "High-quality 2D graphics rendering engine for C++") (description "Anti-Grain Geometry is a high quality rendering engine written in C++. -- cgit v1.2.3 From 599fd84227066d64095f7ec2c2bc942cda763f2b Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Sat, 19 Dec 2015 12:15:59 +0800 Subject: gnu: mpv: Fix build by using pkg-config for smbclient. This is a followup to commit 710964d. * gnu/packages/video.scm (mpv)[arguments]: Remove 'patch-wscript' phase. --- gnu/packages/video.scm | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 5d118ca32d..dcefd4ee0d 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -755,14 +755,7 @@ (define-public mpv 'configure 'setup-waf (lambda* (#:key inputs #:allow-other-keys) (copy-file (assoc-ref inputs "waf") "waf") - (setenv "CC" "gcc"))) - (add-before - 'configure 'patch-wscript - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "wscript" - ;; XXX Remove this when our Samba package provides a .pc file. - (("check_pkg_config\\('smbclient'\\)") - "check_cc(lib='smbclient')"))))) + (setenv "CC" "gcc")))) ;; No check function defined. #:tests? #f)) (home-page "http://mpv.io/") -- cgit v1.2.3 From 04dc6c99922a00cdf3fa34f99a73119d6550ae34 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Sat, 19 Dec 2015 12:21:59 +0800 Subject: gnu: mpv: Update to 0.14.0. * gnu/packages/video.scm (mpv): Update to 0.14.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 dcefd4ee0d..85b7414737 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -693,7 +693,7 @@ (define-public mplayer (define-public mpv (package (name "mpv") - (version "0.13.0") + (version "0.14.0") (source (origin (method url-fetch) (uri (string-append @@ -701,7 +701,7 @@ (define-public mpv ".tar.gz")) (sha256 (base32 - "1nqjd64p4pj1lks9n9s8y4zf4dp5bz8pyd0gsvviww7mv17p0whk")) + "0cqjwl0xyg0sv1jflipfkvqjg32y0kqfh4gc3lyhqgv0hgs3fa84")) (file-name (string-append name "-" version ".tar.gz")))) (build-system waf-build-system) (native-inputs -- cgit v1.2.3 From 604d20a2519431cb2d5bf1e062998b5f6fe794e9 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sat, 19 Dec 2015 23:14:45 +0100 Subject: gnu: Add tlsdate. * gnu/packages/ntp.scm (tlsdate): New variable. --- gnu/packages/ntp.scm | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ntp.scm b/gnu/packages/ntp.scm index 9e6db67e3e..4ed2e3cc11 100644 --- a/gnu/packages/ntp.scm +++ b/gnu/packages/ntp.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2014 John Darrington ;;; Copyright © 2014, 2015 Mark H Weaver ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer +;;; Copyright © 2015 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -22,6 +23,7 @@ (define-module (gnu packages ntp) #:use-module (gnu packages) #:use-module (gnu packages base) #:use-module (gnu packages linux) + #:use-module (gnu packages autotools) #:use-module (gnu packages pkg-config) #:use-module (gnu packages tls) #:use-module (gnu packages libevent) @@ -29,6 +31,7 @@ (define-module (gnu packages ntp) #:use-module (guix packages) #:use-module (guix utils) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix build-system gnu) #:use-module (srfi srfi-1)) @@ -108,3 +111,43 @@ (define-public openntpd minimalist than ntpd.") ;; A few of the source files are under bsd-3. (license (list l:isc l:bsd-3)))) + +(define-public tlsdate + (package + (name "tlsdate") + (version "0.0.13") + (home-page "https://github.com/ioerror/tlsdate") + (source (origin + (method git-fetch) + (uri (git-reference + (commit (string-append "tlsdate-" version)) + (url home-page))) + (sha256 + (base32 + "0w3v63qmbhpqlxjsvf4k3zp90k6mdzi8cdpgshan9iphy1f44xgl")) + (file-name (string-append name "-" version "-checkout")))) + (build-system gnu-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (add-after 'unpack 'autogen + (lambda _ + ;; The ancestor of 'SOURCE_DATE_EPOCH'; it contains the + ;; date that is recorded in binaries. It must be a + ;; "recent date" since it is used to detect bogus dates + ;; received from servers. + (setenv "COMPILE_DATE" (number->string 1450563040)) + (zero? (system* "sh" "autogen.sh"))))))) + (inputs `(("openssl" ,openssl) + ("libevent" ,libevent))) + (native-inputs `(("pkg-config" ,pkg-config) + ("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool))) + (synopsis "Extract remote time from TLS handshakes") + (description + "@command{tlsdate} sets the local clock by securely connecting with TLS +to remote servers and extracting the remote time out of the secure handshake. +Unlike ntpdate, @command{tlsdate} uses TCP, for instance connecting to a +remote HTTPS or TLS enabled service, and provides some protection against +adversaries that try to feed you malicious time information.") + (license l:bsd-3))) -- cgit v1.2.3 From ff80b96378a3fffc23a16a68031420de07d2c1a0 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 20 Dec 2015 09:40:56 +0200 Subject: gnu: tilda: Update to 1.3.1. * gnu/packages/terminals.scm (tilda): Update to 1.3.1. --- gnu/packages/terminals.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm index 153c51a346..1a83eda3c0 100644 --- a/gnu/packages/terminals.scm +++ b/gnu/packages/terminals.scm @@ -33,14 +33,14 @@ (define-module (gnu packages terminals) (define-public tilda (package (name "tilda") - (version "1.3.0") + (version "1.3.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/lanoxx/tilda/archive/" "tilda-" version ".tar.gz")) (sha256 (base32 - "1bbn2fflngx0g18ssvnzgzprvn1w6wc2y03sqzjwvxds488lhndx")))) + "1nh0kw8f6srriglj55gmir1hvakcwrak1wcydz3vpnmwipgy6jib")))) (build-system gnu-build-system) (arguments `(#:phases (modify-phases %standard-phases -- cgit v1.2.3 From 6976e7d2fff3833568c1a8f3def8d3c64214177f Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Tue, 15 Dec 2015 19:28:51 +0800 Subject: gnu: Add telepathy-logger. * gnu/packages/freedesktop.scm (telepathy-logger): New variable. --- gnu/packages/freedesktop.scm | 42 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index b4e7164bfa..474cf24af0 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -47,7 +47,8 @@ (define-module (gnu packages freedesktop) #:use-module (gnu packages libffi) #:use-module (gnu packages acl) #:use-module (gnu packages admin) - #:use-module (gnu packages polkit)) + #:use-module (gnu packages polkit) + #:use-module (gnu packages databases)) (define-public xdg-utils (package @@ -528,3 +529,42 @@ (define-public modem-manager external power supplies, ModemManager is able to prepare and configure the modems and setup connections with them.") (license license:gpl2+))) + +(define-public telepathy-logger + (package + (name "telepathy-logger") + (version "0.8.2") + (source (origin + (method url-fetch) + (uri (string-append "http://telepathy.freedesktop.org/releases/" + name "/" name "-" version ".tar.bz2")) + (sha256 + (base32 + "1bjx85k7jyfi5pvl765fzc7q2iz9va51anrc2djv7caksqsdbjlg")))) + (build-system gnu-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-before 'check 'pre-check + (lambda _ + (setenv "HOME" (getenv "TMPDIR")) + #t))))) + (native-inputs + `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc. + ("gobject-introspection" ,gobject-introspection) + ("intltool" ,intltool) + ("pkg-config" ,pkg-config) + ("python" ,python-2) + ("xsltproc" ,libxslt))) + (propagated-inputs + ;; telepathy-logger-0.2.pc refers to all these. + `(("libxml2" ,libxml2) + ("sqlite" ,sqlite) + ("telepathy-glib" ,telepathy-glib))) + (synopsis "Telepathy logger library") + (home-page "http://telepathy.freedesktop.org/") + (description + "Telepathy logger is a headless observer client that logs information +received by the Telepathy framework. It features pluggable backends to log +different sorts of messages in different formats.") + (license license:lgpl2.1+))) -- cgit v1.2.3 From e68232797656813ceb139fa01d465290eed84a66 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Tue, 15 Dec 2015 19:32:50 +0800 Subject: gnu: Add colord-gtk. * gnu/packages/freedesktop.scm (colord-gtk): New variable. --- gnu/packages/freedesktop.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 474cf24af0..b8eb75eddd 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -35,6 +35,7 @@ (define-module (gnu packages freedesktop) #:use-module (gnu packages autotools) #:use-module (gnu packages gettext) #:use-module (gnu packages gperf) + #:use-module (gnu packages gtk) #:use-module (gnu packages xml) #:use-module (gnu packages docbook) #:use-module (gnu packages glib) ;intltool @@ -568,3 +569,33 @@ (define-public telepathy-logger received by the Telepathy framework. It features pluggable backends to log different sorts of messages in different formats.") (license license:lgpl2.1+))) + +(define-public colord-gtk + (package + (name "colord-gtk") + (version "0.1.26") + (source (origin + (method url-fetch) + (uri (string-append "http://www.freedesktop.org/software/colord" + "/releases/" name "-" version ".tar.xz")) + (sha256 + (base32 + "0i9y3bb5apj6a0f8cx36l6mjzs7xc0k7nf0magmf58vy2mzhpl18")))) + (build-system gnu-build-system) + (arguments '(#:tests? #f)) ; require the colord system service + (native-inputs + `(("gobject-introspection" ,gobject-introspection) + ("intltool" ,intltool) + ("pkg-config" ,pkg-config) + ("vala" ,vala))) + (propagated-inputs + ;; colord-gtk.pc refers to all these. + `(("colord" ,colord) + ("gtk+" ,gtk+))) + (synopsis "GTK integration for libcolord") + (home-page "http://www.freedesktop.org/software/colord/") + (description + "This is a GTK+ convenience library for interacting with colord. It is +useful for both applications which need colour management and applications that +wish to perform colour calibration.") + (license license:lgpl2.1+))) -- cgit v1.2.3 From 8e1dd04f450aeef8ebdf7e3030ea3961f3beba75 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Tue, 15 Dec 2015 19:43:33 +0800 Subject: gnu: Add libgtop. * gnu/packages/gnome.scm (libgtop): New variable. --- gnu/packages/gnome.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 59e43dcc96..d45a240532 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4335,3 +4335,30 @@ (define-public gdm "GNOME Display Manager is a system service that is responsible for providing graphical log-ins and managing local and remote displays.") (license license:gpl2+))) + +(define-public libgtop + (package + (name "libgtop") + (version "2.32.0") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "13hpml2vfm23816qggr5fvxj75ndb1dq4rgmi7ik6azj69ij8hw4")))) + (build-system gnu-build-system) + (native-inputs + `(("gobject-introspection" ,gobject-introspection) + ("intltool" ,intltool) + ("perl" ,perl) + ("pkg-config" ,pkg-config))) + (propagated-inputs + `(("glib" ,glib))) ; required by libgtop-2.0.pc + (synopsis "Portable system access library") + (home-page "https://www.gnome.org/") + (description + "LibGTop is a library to get system specific data such as CPU and memory +usage and information about running processes.") + (license license:gpl2+))) -- cgit v1.2.3 From b96c42605ba68377cac5463822a0a8abecd0acf7 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Tue, 15 Dec 2015 19:45:24 +0800 Subject: gnu: Add gnome-bluetooth. * gnu/packages/gnome.scm (gnome-bluetooth): New variable. --- gnu/packages/gnome.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index d45a240532..729dd37e9f 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4362,3 +4362,36 @@ (define-public libgtop "LibGTop is a library to get system specific data such as CPU and memory usage and information about running processes.") (license license:gpl2+))) + +(define-public gnome-bluetooth + (package + (name "gnome-bluetooth") + (version "3.18.1") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "0jaa9nbygdvcqp9k4p4iy2g8x3684s4x9k5nbcmmm11jdn4mn7f5")))) + (build-system glib-or-gtk-build-system) + (native-inputs + `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc. + ("gobject-introspection" ,gobject-introspection) + ("intltool" ,intltool) + ("pkg-config" ,pkg-config) + ("xmllint" ,libxml2))) + (propagated-inputs + ;; gnome-bluetooth-1.0.pc refers to all these. + `(("gtk+" ,gtk+) + ("udev" ,eudev))) + (inputs + `(("libcanberra" ,libcanberra) + ("libnotify" ,libnotify))) + (synopsis "GNOME Bluetooth subsystem") + (home-page "https://wiki.gnome.org/Projects/GnomeBluetooth") + (description + "This package contains tools for managing and manipulating Bluetooth +devices using the GNOME desktop.") + (license license:lgpl2.1+))) -- cgit v1.2.3 From b645146f00b154a541388e7f227bc18a0c1e8899 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Tue, 15 Dec 2015 19:53:33 +0800 Subject: gnu: Add gnome-control-center. * gnu/packages/gnome.scm (gnome-control-center): New variable. --- gnu/packages/gnome.scm | 73 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 729dd37e9f..e28aaff5e7 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -64,6 +64,7 @@ (define-module (gnu packages gnome) #:use-module (gnu packages polkit) #:use-module (gnu packages popt) #:use-module (gnu packages ghostscript) + #:use-module (gnu packages ibus) #:use-module (gnu packages iso-codes) #:use-module (gnu packages libcanberra) #:use-module (gnu packages linux) @@ -73,6 +74,7 @@ (define-module (gnu packages gnome) #:use-module (gnu packages m4) #:use-module (gnu packages image) #:use-module (gnu packages networking) + #:use-module (gnu packages password-utils) #:use-module (gnu packages perl) #:use-module (gnu packages photo) #:use-module (gnu packages pkg-config) @@ -93,6 +95,7 @@ (define-module (gnu packages gnome) #:use-module (gnu packages xdisorg) #:use-module (gnu packages freedesktop) #:use-module (gnu packages mail) + #:use-module (gnu packages mit-krb5) #:use-module (gnu packages backup) #:use-module (gnu packages nettle) #:use-module (gnu packages ncurses) @@ -4395,3 +4398,73 @@ (define-public gnome-bluetooth "This package contains tools for managing and manipulating Bluetooth devices using the GNOME desktop.") (license license:lgpl2.1+))) + +(define-public gnome-control-center + (package + (name "gnome-control-center") + (version "3.18.2") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1bgqg1sl3cp2azrwrjgwx3jzk9n3w76xpcyvk257qavx4ibn3zin")))) + (build-system glib-or-gtk-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-paths + (lambda* (#:key inputs #:allow-other-keys) + (let ((libc (assoc-ref inputs "libc")) + (tzdata (assoc-ref inputs "tzdata"))) + (substitute* "panels/datetime/tz.h" + (("/usr/share/zoneinfo/zone.tab") + (string-append tzdata "/share/zoneinfo/zone.tab"))) + (substitute* "panels/datetime/test-endianess.c" + (("/usr/share/locale") + (string-append libc "/share/locale"))) + #t)))))) + (native-inputs + `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc. + ("intltool" ,intltool) + ("pkg-config" ,pkg-config) + ("xsltproc" ,libxslt))) + (inputs + `(("accountsservice" ,accountsservice) + ("clutter-gtk" ,clutter-gtk) + ("colord-gtk" ,colord-gtk) + ("cups" ,cups) + ("dconf" ,dconf) + ("docbook-xsl" ,docbook-xsl) + ("gnome-bluetooth" ,gnome-bluetooth) + ("gnome-desktop" ,gnome-desktop) + ("gnome-online-accounts" ,gnome-online-accounts) + ("gnome-settings-daemon" ,gnome-settings-daemon) + ("grilo" ,grilo) + ("ibus" ,ibus) + ("libcanberra" ,libcanberra) + ("libgudev" ,libgudev) + ("libgtop" ,libgtop) + ("libpwquality" ,libpwquality) + ("libsoup" ,libsoup) + ("libxml2" ,libxml2) + ("libwacom" ,libwacom) + ("mesa" ,mesa) + ("mit-krb5" ,mit-krb5) + ("modem-manager" ,modem-manager) + ("network-manager-applet" ,network-manager-applet) + ("polkit" ,polkit) + ("pulseaudio" ,pulseaudio) + ("smbclient" ,samba) + ("tzdata" ,tzdata) + ("upower" ,upower))) + (synopsis "Utilities to configure the GNOME desktop") + (home-page "https://www.gnome.org/") + (description + "This package contains configuration applets for the GNOME desktop, +allowing to set accessibility configuration, desktop fonts, keyboard and mouse +properties, sound setup, desktop theme and background, user interface +properties, screen resolution, and other GNOME parameters.") + (license license:gpl2+))) -- cgit v1.2.3 From a4df575631e8212d82af59f0178ba42150e2cb1f Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Tue, 15 Dec 2015 21:14:57 +0800 Subject: gnu: Add gnome-shell. * gnu/packages/gnome.scm (gnome-shell): New variable. --- gnu/packages/gnome.scm | 82 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index e28aaff5e7..8f886fd84f 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4468,3 +4468,85 @@ (define-public gnome-control-center properties, sound setup, desktop theme and background, user interface properties, screen resolution, and other GNOME parameters.") (license license:gpl2+))) + +(define-public gnome-shell + (package + (name "gnome-shell") + (version "3.18.3") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "16sicxdp08yfaj4hiyzvbspb5jk3fpmi291272zhx5vgc3wbl5w5")))) + (build-system glib-or-gtk-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (keysdir (string-append + out "/share/gnome-control-center/keybindings"))) + (zero? (system* "make" + (string-append "keysdir=" keysdir) + "install"))))) + (add-after + 'install 'wrap-programs + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (gi-typelib-path (getenv "GI_TYPELIB_PATH")) + (python-path (getenv "PYTHONPATH"))) + (wrap-program (string-append out "/bin/gnome-shell") + `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))) + (for-each + (lambda (prog) + (wrap-program (string-append out "/bin/" prog) + `("PYTHONPATH" ":" prefix (,python-path)) + `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)))) + '("gnome-shell-extension-tool" "gnome-shell-perf-tool")) + #t)))))) + (native-inputs + `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc. + ("gobject-introspection" ,gobject-introspection) + ("intltool" ,intltool) + ("pkg-config" ,pkg-config) + ("python" ,python) + ("xsltproc" ,libxslt))) + (inputs + `(("accountsservice" ,accountsservice) + ("caribou" ,caribou) + ("docbook-xsl" ,docbook-xsl) + ("evolution-data-server" ,evolution-data-server) + ("gcr" ,gcr) + ("gdm" ,gdm) + ("gjs" ,gjs) + ("gnome-bluetooth" ,gnome-bluetooth) + ("gnome-control-center" ,gnome-control-center) + ("gnome-desktop" ,gnome-desktop) + ("gnome-settings-daemon" ,gnome-settings-daemon) + ("gst-plugins-base" ,gst-plugins-base) + ("ibus" ,ibus) + ("libcanberra" ,libcanberra) + ("libcroco" ,libcroco) + ("libgweather" ,libgweather) + ("libsoup" ,libsoup) + ("mesa-headers" ,mesa-headers) + ("mutter" ,mutter) + ("network-manager-applet" ,network-manager-applet) + ("polkit" ,polkit) + ("pulseaudio" ,pulseaudio) + ("python-pygobject" ,python-pygobject) + ("startup-notification" ,startup-notification) + ("telepathy-logger" ,telepathy-logger) + ("upower" ,upower) + ;; XXX: required by libgjs.la. + ("readline" ,readline))) + (synopsis "Desktop shell for GNOME") + (home-page "https://wiki.gnome.org/Projects/GnomeShell") + (description + "GNOME Shell provides core user interface functions for the GNOME desktop, +like switching to windows and launching applications.") + (license license:gpl2+))) -- cgit v1.2.3 From b5d47a5a53ec6c5ab56e8409e837cb80a6c5b56a Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 20 Dec 2015 20:07:31 +0200 Subject: gnu: gnupg: Update to 1.4.20. * gnu/packages/gnupg.scm (gnupg-1): Update to 1.4.20. --- gnu/packages/gnupg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index af01749545..aeee440b7e 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -273,14 +273,14 @@ (define-public gnupg-2.0 (define-public gnupg-1 (package (inherit gnupg) - (version "1.4.19") + (version "1.4.20") (source (origin (method url-fetch) (uri (string-append "mirror://gnupg/gnupg/gnupg-" version ".tar.bz2")) (sha256 (base32 - "11pxx26sfilh0vswylh9mhiifw5yffw7nn733zknw3sb0jfk22bz")))) + "1k7d6zi0zznqsmcjic0yrgfhqklqz3qgd3yac7wxsa7s6088p604")))) (native-inputs '()) (inputs `(("zlib" ,zlib) -- cgit v1.2.3 From 54b7f63a72f79797c4dd587c9c28706d7ca89dc7 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 20 Dec 2015 21:39:18 +0200 Subject: gnu: offlineimap: Update to 6.6.0. * gnu/packages/mail.scm (offlineimap): Update to 6.6.0. --- 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 38cab27494..7b85c9dd68 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -285,7 +285,7 @@ (define-public bogofilter (define-public offlineimap (package (name "offlineimap") - (version "6.5.7") + (version "6.6.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/OfflineIMAP/offlineimap/" @@ -293,7 +293,7 @@ (define-public offlineimap (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "18whwc4f8nk8gi3mjw9153c9cvwd3i9i7njmpdbhcplrv33m5pmp")))) + "1x33zxjm3y2p54lbcsgflrs6v2zq785y2k0xi6xia6akrvjmh4n4")))) (build-system python-build-system) (native-inputs `(("python" ,python-2))) (arguments -- cgit v1.2.3 From 724a7d9c7416b53da5ab3d522bf6d7d3ffa3cc5e Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sun, 20 Dec 2015 19:54:35 +0100 Subject: packages: Remove now redundant graph procedures. These procedures are now redundant with those in (guix graph) and are no longer used since commit a51cbecb. * gnu/packages.scm (vhash-refq, package-dependencies) (package-direct-dependents, package-transitive-dependents) (package-covering-dependents): Remove. --- gnu/packages.scm | 61 -------------------------------------------------------- 1 file changed, 61 deletions(-) (limited to 'gnu') diff --git a/gnu/packages.scm b/gnu/packages.scm index fb277389c7..b309a7806d 100644 --- a/gnu/packages.scm +++ b/gnu/packages.scm @@ -46,10 +46,6 @@ (define-module (gnu packages) find-best-packages-by-name find-newest-available-packages - package-direct-dependents - package-transitive-dependents - package-covering-dependents - check-package-freshness specification->package @@ -262,63 +258,6 @@ (define (find-best-packages-by-name name version) ((_ version pkgs ...) pkgs) (#f '())))) - -(define* (vhash-refq vhash key #:optional (dflt #f)) - "Look up KEY in the vhash VHASH, and return the value (if any) associated -with it. If KEY is not found, return DFLT (or `#f' if no DFLT argument is -supplied). Uses `eq?' for equality testing." - (or (and=> (vhash-assq key vhash) cdr) - dflt)) - -(define package-dependencies - (memoize - (lambda () - "Return a vhash keyed by package, and with associated values that are a -list of packages that depend on that package." - (fold-packages - (lambda (package dag) - (fold - (lambda (in d) - ;; Insert a graph edge from each of package's inputs to package. - (vhash-consq in - (cons package (vhash-refq d in '())) - (vhash-delq in d))) - dag - (match (package-direct-inputs package) - (((labels packages . _) ...) - packages) ))) - vlist-null)))) - -(define (package-direct-dependents packages) - "Return a list of packages from the distribution that directly depend on the -packages in PACKAGES." - (delete-duplicates - (concatenate - (map (lambda (p) - (vhash-refq (package-dependencies) p '())) - packages)))) - -(define (package-transitive-dependents packages) - "Return the transitive dependent packages of the distribution packages in -PACKAGES---i.e. the dependents of those packages, plus their dependents, -recursively." - (let ((dependency-dag (package-dependencies))) - (fold-tree - cons '() - (lambda (node) (vhash-refq dependency-dag node)) - ;; Start with the dependents to avoid including PACKAGES in the result. - (package-direct-dependents packages)))) - -(define (package-covering-dependents packages) - "Return a minimal list of packages from the distribution whose dependencies -include all of PACKAGES and all packages that depend on PACKAGES." - (let ((dependency-dag (package-dependencies))) - (fold-tree-leaves - cons '() - (lambda (node) (vhash-refq dependency-dag node)) - ;; Start with the dependents to avoid including PACKAGES in the result. - (package-direct-dependents packages)))) - (define %sigint-prompt ;; The prompt to jump to upon SIGINT. -- cgit v1.2.3 From e99711af2231ad41098c4bfcb031e59e8aa6e68d Mon Sep 17 00:00:00 2001 From: David Thompson Date: Thu, 17 Dec 2015 21:43:56 -0500 Subject: gnu: ruby: Update to 2.2.4. This version fixes CVE-2015-7551. * gnu/packages/ruby.scm (ruby): Update to 2.2.4. --- gnu/packages/ruby.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index a3eafb1f58..131666f038 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -46,7 +46,7 @@ (define-module (gnu packages ruby) (define-public ruby (package (name "ruby") - (version "2.2.3") + (version "2.2.4") (source (origin (method url-fetch) @@ -55,7 +55,7 @@ (define-public ruby "/ruby-" version ".tar.xz")) (sha256 (base32 - "19x8gs67klgc3ag815jpin83jn2nv1akgjcgayd6v3h1xplr1v66")))) + "0g3ps4q3iz7wj9m45n8xyxzw8nh29ljdqb87b0f6i0p3853gz2yj")))) (build-system gnu-build-system) (arguments `(#:test-target "test" -- cgit v1.2.3 From 56918e26cf5e999c7d4545c7c82bfde0667f96f0 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 21 Dec 2015 05:09:35 +0200 Subject: gnu: python-cython: Update to 0.23.4. * gnu/packages/python.scm (python-cython): Update to 0.23.4. --- gnu/packages/python.scm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 95c24a6a43..74a7a84452 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -2899,15 +2899,14 @@ (define-public python2-rq (define-public python-cython (package (name "python-cython") - (version "0.21.1") + (version "0.23.4") (source (origin (method url-fetch) - (uri (string-append "http://cython.org/release/Cython-" - version ".tar.gz")) + (uri (pypi-uri "Cython" version)) (sha256 (base32 - "0ddz2l2dvcy5hdkxx4xlfiwpccvwia7ixgcy4h0pdv46a4i4vxj3")))) + "13hdffhd37mx3gjby018xl179jaj957fy7kzi01crmimxvn2zi7y")))) (build-system python-build-system) ;; we need the full python package and not just the python-wrapper ;; because we need libpython3.3m.so -- cgit v1.2.3 From ec92806ae54ea0f7525d7be1b9c8408c4dc0de67 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 21 Dec 2015 09:17:47 +0200 Subject: gnu: claws-mail: Update to 3.13.1. * gnu/packages/mail.scm (claws-mail): Update to 3.13.1. --- gnu/packages/mail.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 7b85c9dd68..cf5b84a131 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -518,14 +518,15 @@ (define-public libetpan (define-public claws-mail (package (name "claws-mail") - (version "3.13.0") + (version "3.13.1") (source (origin (method url-fetch) (uri (string-append "http://www.claws-mail.org/releases/" name "-" version ".tar.xz")) (sha256 - (base32 "0fpr9gdgrs5yggm61a6135ca06x0cflddsh8dwfqmpb3dj07cl1n")))) + (base32 + "049av7r0xhjjjm1p93l2ns3xisvn125v3ncqar23cqjzgcichg5d")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("bogofilter" ,bogofilter) -- cgit v1.2.3 From 72d8b5baf414215e8b115364a2d4fd188053f78b Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 21 Dec 2015 09:36:15 +0200 Subject: gnu: msmtp: Update to 1.6.3. * gnu/packages/mail.scm (msmtp): Update to 1.6.3. [inputs]: Add libsecret. --- gnu/packages/mail.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index cf5b84a131..89bcef7ff3 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -564,17 +564,18 @@ (define-public claws-mail (define-public msmtp (package (name "msmtp") - (version "1.6.2") + (version "1.6.3") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/msmtp/msmtp-" version ".tar.xz")) (sha256 (base32 - "12c7ljahb06pgn8yvvw526xvr11vnr6d4nr0apylixddpxycsvig")))) + "0mbkflxv2swjz4185inis83v6pxcblpmapwjhgpc6wh7kh3bx0pr")))) (build-system gnu-build-system) (inputs `(("libidn" ,libidn) + ("libsecret" ,libsecret) ("gnutls" ,gnutls) ("zlib" ,zlib) ("gsasl" ,gsasl))) -- cgit v1.2.3 From 1ef3f91a702e19b01aff2e85b7ea2abe1f7579a1 Mon Sep 17 00:00:00 2001 From: Mathieu Lirzin Date: Sun, 6 Dec 2015 21:58:03 +0100 Subject: gnu: rxvt-unicode: Install the terminal capability data. This provides the necessary terminal capability data, which are required by ncurses-based applications. * gnu/packages/xdisorg.scm (rxvt-unicode)[native-inputs]: Add ncurses. [arguments]: Set the destination of the terminfo files. [native-search-path]: New field. Make them automatically available to the user. --- gnu/packages/xdisorg.scm | 35 +++++++++++++++++++++++------------ 1 file changed, 23 insertions(+), 12 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index efe858615d..0b1eb20238 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -41,6 +41,7 @@ (define-module (gnu packages xdisorg) #:use-module (gnu packages gettext) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) ;for libgudev + #:use-module (gnu packages ncurses) #:use-module (gnu packages perl) #:use-module (gnu packages python) #:use-module (gnu packages linux) @@ -530,24 +531,34 @@ (define-public rxvt-unicode (package (name "rxvt-unicode") (version "9.21") - (source - (origin - (method url-fetch) - (uri (string-append - "http://dist.schmorp.de/rxvt-unicode/" - name "-" - version - ".tar.bz2")) - (sha256 - (base32 - "0swmi308v5yxsddrdhvi4cch88k2bbs2nffpl5j5m2f55gbhw9vm")))) + (source (origin + (method url-fetch) + (uri (string-append "http://dist.schmorp.de/rxvt-unicode/" + name "-" version ".tar.bz2")) + (sha256 + (base32 + "0swmi308v5yxsddrdhvi4cch88k2bbs2nffpl5j5m2f55gbhw9vm")))) (build-system gnu-build-system) + (arguments + ;; This sets the destination when installing the necessary terminal + ;; capability data, which are not provided by 'ncurses'. See + ;; https://lists.gnu.org/archive/html/bug-ncurses/2009-10/msg00031.html + '(#:make-flags (list (string-append "TERMINFO=" + (assoc-ref %outputs "out") + "/share/terminfo")))) (inputs `(("libXft" ,libxft) ("libX11" ,libx11))) (native-inputs - `(("perl" ,perl) + `(("ncurses" ,ncurses) ;trigger the installation of terminfo data + ("perl" ,perl) ("pkg-config" ,pkg-config))) + ;; FIXME: This should only be located in 'ncurses'. Nonetheless it is + ;; provided for usability reasons. See . + (native-search-paths + (list (search-path-specification + (variable "TERMINFO_DIRS") + (files '("share/terminfo"))))) (home-page "http://software.schmorp.de/pkg/rxvt-unicode.html") (synopsis "Rxvt clone with XFT and unicode support") (description "Rxvt-unicode (urxvt) is a colour vt102 terminal emulator -- cgit v1.2.3 From 02f35bb5a755984c9c419101d53f59f6274a0b8a Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Tue, 15 Dec 2015 20:34:52 +1000 Subject: gnu: mafft: Update to 7.267. * gnu/packages/bioinformatics.scm (mafft): Update to 7.267. [arguments]: Don't include mafft-homologs manpage. [inputs]: Add gawk and grep. [propagated-inputs]: Add coreutils. --- gnu/packages/bioinformatics.scm | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 7c573e1626..21b85db903 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -40,6 +40,7 @@ (define-module (gnu packages bioinformatics) #:use-module (gnu packages compression) #:use-module (gnu packages cpio) #:use-module (gnu packages file) + #:use-module (gnu packages gawk) #:use-module (gnu packages java) #:use-module (gnu packages linux) #:use-module (gnu packages machine-learning) @@ -1690,7 +1691,7 @@ (define-public macs (define-public mafft (package (name "mafft") - (version "7.221") + (version "7.267") (source (origin (method url-fetch) (uri (string-append @@ -1699,7 +1700,7 @@ (define-public mafft (file-name (string-append name "-" version ".tgz")) (sha256 (base32 - "0xi7klbsgi049vsrk6jiwh9wfj3b770gz3c8c7zwij448v0dr73d")))) + "1xl6xq1rfxkws0svrlhyqxhhwbv6r77jwblsdpcyiwzsscw6wlk0")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no automated tests, though there are tests in the read me @@ -1720,6 +1721,9 @@ (define-public mafft ;; remove mafft-homologs.rb from SCRIPTS (("^SCRIPTS = mafft mafft-homologs.rb") "SCRIPTS = mafft") + ;; remove mafft-homologs from MANPAGES + (("^MANPAGES = mafft.1 mafft-homologs.1") + "MANPAGES = mafft.1") ;; remove mafft-distance from PROGS (("^PROGS = dvtditr dndfast7 dndblast sextet5 mafft-distance") "PROGS = dvtditr dndfast7 dndblast sextet5") @@ -1732,9 +1736,22 @@ (define-public mafft (("^\t\\$\\(INSTALL\\) -m 644 \\$\\(MANPAGES\\) \ \\$\\(DESTDIR\\)\\$\\(LIBDIR\\)") "#")) #t)) + (add-after 'enter-dir 'patch-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* '("pairash.c" + "mafft.tmpl") + (("perl") (which "perl")) + (("([\"`| ])awk" _ prefix) + (string-append prefix (which "awk"))) + (("grep") (which "grep"))) + #t)) (delete 'configure)))) (inputs - `(("perl" ,perl))) + `(("perl" ,perl) + ("gawk" ,gawk) + ("grep" ,grep))) + (propagated-inputs + `(("coreutils" ,coreutils))) (home-page "http://mafft.cbrc.jp/alignment/software/") (synopsis "Multiple sequence alignment program") (description -- cgit v1.2.3 From 086e498bcfc82e7ed1572179282d25fcd7058d8d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 17 Dec 2015 16:20:05 +0100 Subject: gnu: Add libgit2. * gnu/packages/version-control.scm (libgit2): New variable. --- gnu/packages/version-control.scm | 45 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 171faab784..c24c4683c7 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -8,6 +8,7 @@ ;;; Copyright © 2014 Eric Bavier ;;; Copyright © 2015 Efraim Flashner ;;; Copyright © 2015 Kyle Meyer +;;; Copyright © 2015 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -32,6 +33,7 @@ (define-module (gnu packages version-control) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) + #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system python) #:use-module (guix build-system trivial) @@ -311,6 +313,49 @@ (define-public git-manpages This is the documentation displayed when using the '--help' option of a 'git' command."))) +(define-public libgit2 + (package + (name "libgit2") + (version "0.23.3") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/libgit2/libgit2/" + "archive/v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1bhyzw9b7xr1vj24hgbwbfjw2wiaigiklccsdvd8r4kmcr180p1d")))) + (build-system cmake-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-hardcoded-paths + (lambda _ + (substitute* "tests/repo/init.c" + (("#!/bin/sh") (string-append "#!" (which "sh")))) + (substitute* "tests/clar/fs.h" + (("/bin/cp") (which "cp")) + (("/bin/rm") (which "rm"))) + #t)) + ;; Run checks more verbosely. + (replace 'check + (lambda _ (zero? (system* "./libgit2_clar" "-v" "-Q"))))))) + (inputs + `(("libssh2" ,libssh2) + ("libcurl" ,curl) + ("python" ,python) + ("openssl" ,openssl))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "http://libgit2.github.com/") + (synopsis "Library providing Git core methods") + (description + "Libgit2 is a portable, pure C implementation of the Git core methods +provided as a re-entrant linkable library with a solid API, allowing you to +write native speed custom Git applications in any language with bindings.") + ;; GPLv2 with linking exception + (license gpl2))) + (define-public shflags (package (name "shflags") -- cgit v1.2.3 From b15e47f9e6dd069ae237ee337207a636fffb407e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 21 Dec 2015 12:37:23 +0100 Subject: gnu: Add armadillo. * gnu/packages/maths.scm (armadillo): New variable. --- gnu/packages/maths.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 0c0f013ca4..0d66b9fc69 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1422,6 +1422,35 @@ (define-public wxmaxima full text searching.") (license license:gpl2+))) +(define-public armadillo + (package + (name "armadillo") + (version "6.400.3") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/arma/armadillo-" + version ".tar.gz")) + (sha256 + (base32 + "0bsgrmldlx77w5x26n3axj1hg6iw6csyw0dwl1flrbdwl51f9701")))) + (build-system cmake-build-system) + (arguments `(#:tests? #f)) ;no test target + (inputs + `(("openblas" ,openblas) + ("lapack" ,lapack) + ("arpack" ,arpack-ng))) + (home-page "http://arma.sourceforge.net/") + (synopsis "C++ linear algebra library") + (description + "Armadillo is a C++ linear algebra library, aiming towards a good balance +between speed and ease of use. It is useful for algorithm development +directly in C++, or quick conversion of research code into production +environments. It can be used for machine learning, pattern recognition, +signal processing, bioinformatics, statistics, econometrics, etc. The library +provides efficient classes for vectors, matrices and cubes, as well as 150+ +associated functions (eg. contiguous and non-contiguous submatrix views).") + (license license:mpl2.0))) + (define-public muparser (package (name "muparser") -- cgit v1.2.3 From e22d4ca4c4489c8e9b12e8b6ea3f17999eed4ece Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 17 Dec 2015 16:27:32 +0100 Subject: gnu: Add r-rcpparmadillo. * gnu/packages/maths.scm (armadillo-for-rcpparmadillo): New variable. * gnu/packages/statistics.scm (r-rcpparmadillo): New variable. --- gnu/packages/maths.scm | 11 +++++++++++ gnu/packages/statistics.scm | 43 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 54 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 0d66b9fc69..e7a7b7c4b9 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1451,6 +1451,17 @@ (define-public armadillo associated functions (eg. contiguous and non-contiguous submatrix views).") (license license:mpl2.0))) +(define-public armadillo-for-rcpparmadillo + (package (inherit armadillo) + (version "6.200.2") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/arma/armadillo-" + version ".tar.gz")) + (sha256 + (base32 + "1f69rlqhnf2wv8khyn2a8vi6gx1i72qgfy8b9b760ssk85dcl763")))))) + (define-public muparser (package (name "muparser") diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 0ffd4955bb..64ea551ffb 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1342,3 +1342,46 @@ (define-public r-lattice multivariate data. Lattice is sufficient for typical graphics needs, and is also flexible enough to handle most nonstandard requirements.") (license license:gpl2+))) + +(define-public r-rcpparmadillo + (package + (name "r-rcpparmadillo") + (version "0.6.200.2.0") + (source (origin + (method url-fetch) + (uri (cran-uri "RcppArmadillo" version)) + (sha256 + (base32 + "137wqqga776yj6synx5awhrzgkz7mmqnvgmggh9l4k6d99vwp9gj")) + (modules '((guix build utils))) + ;; Remove bundled armadillo sources + (snippet + '(begin + (delete-file-recursively "inst/include/armadillo_bits") + (delete-file "inst/include/armadillo"))))) + (properties `((upstream-name . "RcppArmadillo"))) + (build-system r-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'link-against-armadillo + (lambda _ + (substitute* "src/Makevars" + (("PKG_LIBS=" prefix) + (string-append prefix "-larmadillo")))))))) + (propagated-inputs + `(("r-rcpp" ,r-rcpp) + ("armadillo" ,armadillo-for-rcpparmadillo))) + (home-page "https://github.com/RcppCore/RcppArmadillo") + (synopsis "Rcpp integration for the Armadillo linear algebra library") + (description + "Armadillo is a templated C++ linear algebra library that aims towards a +good balance between speed and ease of use. Integer, floating point and +complex numbers are supported, as well as a subset of trigonometric and +statistics functions. Various matrix decompositions are provided through +optional integration with LAPACK and ATLAS libraries. This package includes +the header files from the templated Armadillo library.") + ;; Armadillo is licensed under the MPL 2.0, while RcppArmadillo (the Rcpp + ;; bindings to Armadillo) is licensed under the GNU GPL version 2 or + ;; later, as is the rest of 'Rcpp'. + (license license:gpl2+))) -- cgit v1.2.3 From 8406138b726f53bf1a79f83dc98f0f6511a5f9f5 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 17 Dec 2015 16:28:25 +0100 Subject: gnu: Add AdaptiveSparsity. * gnu/packages/machine-learning.scm (r-adaptivesparsity): New variable. --- gnu/packages/machine-learning.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index bfa88ac964..4bc37ad86d 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -23,6 +23,7 @@ (define-module (gnu packages machine-learning) #:use-module (guix download) #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) + #:use-module (guix build-system r) #:use-module (gnu packages) #:use-module (gnu packages boost) #:use-module (gnu packages compression) @@ -290,3 +291,35 @@ (define (delete-ifdefs file) tools. This enables both rapid prototyping of data pipelines and extensibility in terms of new algorithms.") (license license:gpl3+))) + +(define-public r-adaptivesparsity + (package + (name "r-adaptivesparsity") + (version "1.4") + (source (origin + (method url-fetch) + (uri (cran-uri "AdaptiveSparsity" version)) + (sha256 + (base32 + "1az7isvalf3kmdiycrfl6s9k9xqk22k1mc6rh8v0jmcz402qyq8z")))) + (properties + `((upstream-name . "AdaptiveSparsity"))) + (build-system r-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'link-against-armadillo + (lambda _ + (substitute* "src/Makevars" + (("PKG_LIBS=" prefix) + (string-append prefix "-larmadillo")))))))) + (propagated-inputs + `(("r-rcpp" ,r-rcpp) + ("r-rcpparmadillo" ,r-rcpparmadillo))) + (home-page "http://cran.r-project.org/web/packages/AdaptiveSparsity") + (synopsis "Adaptive sparsity models") + (description + "This package implements the Figueiredo machine learning algorithm for +adaptive sparsity and the Wong algorithm for adaptively sparse gaussian +geometric models.") + (license license:lgpl3+))) -- cgit v1.2.3 From bb6d2dadf72f8d6ac47acf74f5d796eddb4c15fd Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 15 Dec 2015 12:11:02 +0100 Subject: gnu: Add r-bitops. * gnu/packages/statistics.scm (r-bitops): New variable. --- gnu/packages/statistics.scm | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 64ea551ffb..2878afb873 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1385,3 +1385,21 @@ (define-public r-rcpparmadillo ;; bindings to Armadillo) is licensed under the GNU GPL version 2 or ;; later, as is the rest of 'Rcpp'. (license license:gpl2+))) + +(define-public r-bitops + (package + (name "r-bitops") + (version "1.0-6") + (source (origin + (method url-fetch) + (uri (cran-uri "bitops" version)) + (sha256 + (base32 + "176nr5wpnkavn5z0yy9f7d47l37ndnn2w3gv854xav8nnybi6wwv")))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/bitops") + (synopsis "Bitwise operations") + (description + "This package provides functions for bitwise operations on integer +vectors.") + (license license:gpl2+))) -- cgit v1.2.3 From 4c1f2705b561578384f057ae2da36bbd7d546419 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 15 Dec 2015 12:11:39 +0100 Subject: gnu: Add r-catools. * gnu/packages/statistics.scm (r-catools): New variable. --- gnu/packages/statistics.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 2878afb873..0afa99912e 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1403,3 +1403,26 @@ (define-public r-bitops "This package provides functions for bitwise operations on integer vectors.") (license license:gpl2+))) + +(define-public r-catools + (package + (name "r-catools") + (version "1.17.1") + (source (origin + (method url-fetch) + (uri (cran-uri "caTools" version)) + (sha256 + (base32 + "1x4szsn2qmbzpyjfdaiz2q7jwhap2gky9wq0riah74q0pzz76ank")))) + (properties `((upstream-name . "caTools"))) + (build-system r-build-system) + (propagated-inputs + `(("r-bitops" ,r-bitops))) + (home-page "http://cran.r-project.org/web/packages/caTools") + (synopsis "Various tools including functions for moving window statistics") + (description + "This package contains several basic utility functions including: +moving (rolling, running) window statistic functions, read/write for GIF and +ENVI binary files, fast calculation of AUC, LogitBoost classifier, base64 +encoder/decoder, round-off-error-free sum and cumsum, etc.") + (license license:gpl3+))) -- cgit v1.2.3 From 77bdb276e9d8412fc303f1a7bf48bb24ff119c27 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 15 Dec 2015 12:14:01 +0100 Subject: gnu: Add r-rmarkdown. * gnu/packages/statistics.scm (r-rmarkdown): New variable. * gnu/packages/haskell.scm: Do not select libxml2 from the xml module to prevent circular package module imports. --- gnu/packages/statistics.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 0afa99912e..fe963c7dc9 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -29,6 +29,7 @@ (define-module (gnu packages statistics) #:use-module (gnu packages compression) #:use-module (gnu packages gcc) #:use-module (gnu packages gtk) + #:use-module (gnu packages haskell) #:use-module (gnu packages icu4c) #:use-module (gnu packages image) #:use-module (gnu packages java) @@ -1426,3 +1427,29 @@ (define-public r-catools ENVI binary files, fast calculation of AUC, LogitBoost classifier, base64 encoder/decoder, round-off-error-free sum and cumsum, etc.") (license license:gpl3+))) + +(define-public r-rmarkdown + (package + (name "r-rmarkdown") + (version "0.8.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "rmarkdown" version)) + (sha256 + (base32 + "07q5g9dvac5j3vnf4sjc60mnkij1k6y7vnzjz6anf499rwdwbxza")))) + (properties `((upstream-name . "rmarkdown"))) + (build-system r-build-system) + (propagated-inputs + `(("r-catools" ,r-catools) + ("r-htmltools" ,r-htmltools) + ("r-knitr" ,r-knitr) + ("r-yaml" ,r-yaml) + ("ghc-pandoc" ,ghc-pandoc))) + (home-page "http://rmarkdown.rstudio.com") + (synopsis "Convert R Markdown documents into a variety of formats") + (description + "This package provides tools to convert R Markdown documents into a +variety of formats.") + (license license:gpl3+))) -- cgit v1.2.3 From b73751c8ff0a1f39afda9fff6d9116f787335574 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 17 Dec 2015 16:50:03 +0100 Subject: gnu: Add r-gtable. * gnu/packages/statistics.scm (r-gtable): New variable. --- gnu/packages/statistics.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index fe963c7dc9..1a373ef9c4 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1453,3 +1453,22 @@ (define-public r-rmarkdown "This package provides tools to convert R Markdown documents into a variety of formats.") (license license:gpl3+))) + +(define-public r-gtable + (package + (name "r-gtable") + (version "0.1.2") + (source (origin + (method url-fetch) + (uri (cran-uri "gtable" version)) + (sha256 + (base32 + "0k9hfj6r5y238gqh92s3cbdn34biczx3zfh79ix5xq0c5vkai2xh")))) + (properties `((upstream-name . "gtable"))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/gtable") + (synopsis "Arrange grobs in tables") + (description + "This package provides tools to make it easier to work with tables of +grobs.") + (license license:gpl2+))) -- cgit v1.2.3 From 9e47f30b08c261e1b5b30640cf227a50ab14dca1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 17 Dec 2015 16:50:47 +0100 Subject: gnu: Add r-gridextra. * gnu/packages/statistics.scm (r-gridextra): New variable. --- gnu/packages/statistics.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 1a373ef9c4..81258d38f5 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1472,3 +1472,28 @@ (define-public r-gtable "This package provides tools to make it easier to work with tables of grobs.") (license license:gpl2+))) + +(define-public r-gridextra + (package + (name "r-gridextra") + (version "2.0.0") + (source (origin + (method url-fetch) + (uri (cran-uri "gridExtra" version)) + (sha256 + (base32 + "19yyrfd37c5hxlavb9lca9l26wjhc80rlqhgmfj9k3xhbvvpdp17")))) + (properties `((upstream-name . "gridExtra"))) + (build-system r-build-system) + (propagated-inputs + `(("r-gtable" ,r-gtable))) + (native-inputs + `(("r-knitr" ,r-knitr))) ;for building vignettes + (home-page "https://github.com/baptiste/gridextra") + (synopsis "Miscellaneous functions for \"Grid\" graphics") + (description + "This package provides a number of user-level functions to work with +@code{grid} graphics, notably to arrange multiple grid-based plots on a page, +and draw tables.") + (license license:gpl2+))) + -- cgit v1.2.3 From 9fba89e8298303a94e098489d6a6806dbf25533b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 17 Dec 2015 16:51:28 +0100 Subject: gnu: Add r-acsnminer. * gnu/packages/bioinformatics.scm (r-acsnminer): New variable. --- gnu/packages/bioinformatics.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 21b85db903..25630211d5 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -3140,6 +3140,32 @@ (define-public bioruby ;; (LGPLv2.1+) and scripts in samples (which have GPL2 and GPL2+) (license (list license:ruby license:lgpl2.1+ license:gpl2+ )))) +(define-public r-acsnminer + (package + (name "r-acsnminer") + (version "0.15.11") + (source (origin + (method url-fetch) + (uri (cran-uri "ACSNMineR" version)) + (sha256 + (base32 + "1dl4drhjyazwm9wxlm8yfppwvvj4h6jxwmz8kfw5bxpb3jdnsqvy")))) + (properties `((upstream-name . "ACSNMineR"))) + (build-system r-build-system) + (propagated-inputs + `(("r-ggplot2" ,r-ggplot2) + ("r-gridextra" ,r-gridextra))) + (home-page "http://cran.r-project.org/web/packages/ACSNMineR") + (synopsis "Gene enrichment analysis") + (description + "This package provides tools to compute and represent gene set enrichment +or depletion from your data based on pre-saved maps from the @dfn{Atlas of +Cancer Signalling Networks} (ACSN) or user imported maps. The gene set +enrichment can be run with hypergeometric test or Fisher exact test, and can +use multiple corrections. Visualization of data can be done either by +barplots or heatmaps.") + (license license:gpl2+))) + (define-public r-qtl (package (name "r-qtl") -- cgit v1.2.3 From d29b25c49056e9b78a8ee98d4e42c3c7dd421c9d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 18 Dec 2015 12:06:55 +0100 Subject: gnu: Add BiocGenerics. * gnu/packages/bioinformatics.scm (r-biocgenerics): New variable. --- gnu/packages/bioinformatics.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 25630211d5..ac25d30761 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -3166,6 +3166,27 @@ (define-public r-acsnminer barplots or heatmaps.") (license license:gpl2+))) +(define-public r-biocgenerics + (package + (name "r-biocgenerics") + (version "0.16.1") + (source (origin + (method url-fetch) + (uri (bioconductor-uri "BiocGenerics" version)) + (sha256 + (base32 + "0f16ryy5f012hvksrwlmm33bcl7lw97i2jvhbnwfwl03j4w7nhc1")))) + (properties + `((upstream-name . "BiocGenerics") + (r-repository . bioconductor))) + (build-system r-build-system) + (home-page "http://bioconductor.org/packages/BiocGenerics") + (synopsis "S4 generic functions for Bioconductor") + (description + "This package provides S4 generic functions needed by many Bioconductor +packages.") + (license license:artistic2.0))) + (define-public r-qtl (package (name "r-qtl") -- cgit v1.2.3 From 7485129e4f01af93dc5aa53991d86e38c191407d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 18 Dec 2015 12:07:18 +0100 Subject: gnu: Add S4Vectors. * gnu/packages/bioinformatics.scm (r-s4vectors): New variable. --- gnu/packages/bioinformatics.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index ac25d30761..0f10ee9a47 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -3187,6 +3187,34 @@ (define-public r-biocgenerics packages.") (license license:artistic2.0))) +(define-public r-s4vectors + (package + (name "r-s4vectors") + (version "0.8.5") + (source (origin + (method url-fetch) + (uri (bioconductor-uri "S4Vectors" version)) + (sha256 + (base32 + "10f4jxwlwsiy7zhb3kgp6anid0d7wkvrrljl80r3nhx38yr24l5k")))) + (properties + `((upstream-name . "S4Vectors") + (r-repository . bioconductor))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics))) + (home-page "http://bioconductor.org/packages/S4Vectors") + (synopsis "S4 implementation of vectors and lists") + (description + "The S4Vectors package defines the @code{Vector} and @code{List} virtual +classes and a set of generic functions that extend the semantic of ordinary +vectors and lists in R. Package developers can easily implement vector-like +or list-like objects as concrete subclasses of @code{Vector} or @code{List}. +In addition, a few low-level concrete subclasses of general interest (e.g. +@code{DataFrame}, @code{Rle}, and @code{Hits}) are implemented in the +S4Vectors package itself.") + (license license:artistic2.0))) + (define-public r-qtl (package (name "r-qtl") -- cgit v1.2.3 From 78addcb0ebce8a387be6ec43192cce7490cba794 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 18 Dec 2015 12:07:39 +0100 Subject: gnu: Add IRanges. * gnu/packages/bioinformatics.scm (r-iranges): New variable. --- gnu/packages/bioinformatics.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 0f10ee9a47..cbc83dd391 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -3215,6 +3215,36 @@ (define-public r-s4vectors S4Vectors package itself.") (license license:artistic2.0))) +(define-public r-iranges + (package + (name "r-iranges") + (version "2.4.6") + (source (origin + (method url-fetch) + (uri (bioconductor-uri "IRanges" version)) + (sha256 + (base32 + "00x0266sys1fc5ipa639y84p6m6mgspk2xb099vcwmd3w4hypj9d")))) + (properties + `((upstream-name . "IRanges") + (r-repository . bioconductor))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-s4vectors" ,r-s4vectors))) + (home-page "http://bioconductor.org/packages/IRanges") + (synopsis "Infrastructure for manipulating intervals on sequences") + (description + "This package provides efficient low-level and highly reusable S4 classes +for storing ranges of integers, RLE vectors (Run-Length Encoding), and, more +generally, data that can be organized sequentially (formally defined as +@code{Vector} objects), as well as views on these @code{Vector} objects. +Efficient list-like classes are also provided for storing big collections of +instances of the basic classes. All classes in the package use consistent +naming and share the same rich and consistent \"Vector API\" as much as +possible.") + (license license:artistic2.0))) + (define-public r-qtl (package (name "r-qtl") -- cgit v1.2.3 From bf7764b74f6052bbb977b869efdcfbb8b6e9e588 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 18 Dec 2015 12:07:56 +0100 Subject: gnu: Add GenomeInfoDb. * gnu/packages/bioinformatics.scm (r-genomeinfodb): New variable. --- gnu/packages/bioinformatics.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index cbc83dd391..f4679cf9d4 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -3245,6 +3245,33 @@ (define-public r-iranges possible.") (license license:artistic2.0))) +(define-public r-genomeinfodb + (package + (name "r-genomeinfodb") + (version "1.6.1") + (source (origin + (method url-fetch) + (uri (bioconductor-uri "GenomeInfoDb" version)) + (sha256 + (base32 + "1j2n1v1mrw1fxn7cyffz112pm76wd6gy9q9qwlsfv3brbsqbvdbf")))) + (properties + `((upstream-name . "GenomeInfoDb") + (r-repository . bioconductor))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-iranges" ,r-iranges) + ("r-s4vectors" ,r-s4vectors))) + (home-page "http://bioconductor.org/packages/GenomeInfoDb") + (synopsis "Utilities for manipulating chromosome identifiers") + (description + "This package contains data and functions that define and allow +translation between different chromosome sequence naming conventions (e.g., +\"chr1\" versus \"1\"), including a function that attempts to place sequence +names in their natural, rather than lexicographic, order.") + (license license:artistic2.0))) + (define-public r-qtl (package (name "r-qtl") -- cgit v1.2.3 From 0e7d5560decaa9c474a8fbf001b270dcc5bf5a6b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 18 Dec 2015 12:08:22 +0100 Subject: gnu: Add XVector. * gnu/packages/bioinformatics.scm (r-xvector): New variable. --- gnu/packages/bioinformatics.scm | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index f4679cf9d4..7a05d639fb 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -3272,6 +3272,43 @@ (define-public r-genomeinfodb names in their natural, rather than lexicographic, order.") (license license:artistic2.0))) +(define-public r-xvector + (package + (name "r-xvector") + (version "0.10.0") + (source (origin + (method url-fetch) + (uri (bioconductor-uri "XVector" version)) + (sha256 + (base32 + "0havwyr6xqk7w0rmbwfj9jq1djz7wzdz7w39adhklwzwz9l4ih3a")))) + (properties + `((upstream-name . "XVector") + (r-repository . bioconductor))) + (build-system r-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'use-system-zlib + (lambda _ + (substitute* "DESCRIPTION" + (("zlibbioc, ") "")) + (substitute* "NAMESPACE" + (("import\\(zlibbioc\\)") "")) + #t))))) + (inputs + `(("zlib" ,zlib))) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-iranges" ,r-iranges) + ("r-s4vectors" ,r-s4vectors))) + (home-page "http://bioconductor.org/packages/XVector") + (synopsis "Representation and manpulation of external sequences") + (description + "This package provides memory efficient S4 classes for storing sequences +\"externally\" (behind an R external pointer, or on disk).") + (license license:artistic2.0))) + (define-public r-qtl (package (name "r-qtl") -- cgit v1.2.3 From e2cd1d0fb918b55a1ab16271fac758b260057030 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 18 Dec 2015 12:08:41 +0100 Subject: gnu: Add GenomicRanges. * gnu/packages/bioinformatics.scm (r-genomicranges): New variable. --- gnu/packages/bioinformatics.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 7a05d639fb..f6bc544a63 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -3309,6 +3309,34 @@ (define-public r-xvector \"externally\" (behind an R external pointer, or on disk).") (license license:artistic2.0))) +(define-public r-genomicranges + (package + (name "r-genomicranges") + (version "1.22.2") + (source (origin + (method url-fetch) + (uri (bioconductor-uri "GenomicRanges" version)) + (sha256 + (base32 + "1jffvcs0jsi7q4l3pvjj6r73vll80csgkljvhqp0g2ixc43jjng9")))) + (properties + `((upstream-name . "GenomicRanges") + (r-repository . bioconductor))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-xvector" ,r-xvector))) + (home-page "http://bioconductor.org/packages/GenomicRanges") + (synopsis "Representation and manipulation of genomic intervals") + (description + "This package provides tools to efficiently represent and manipulate +genomic annotations and alignments is playing a central role when it comes to +analyzing high-throughput sequencing data (a.k.a. NGS data). The +GenomicRanges package defines general purpose containers for storing and +manipulating genomic intervals and variables defined along a genome.") + (license license:artistic2.0))) + (define-public r-qtl (package (name "r-qtl") -- cgit v1.2.3 From f0150f8724f09fa650a0cbb66d3ef5a8a99804c4 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 19 Dec 2015 18:18:43 -0500 Subject: gnu: grub: Add fix for CVE-2015-8730. * gnu/packages/patches/grub-CVE-2015-8370.patch: New file. * gnu-system.am (dist_patch_DATA): Register patch. * gnu/packages/grub.scm: Apply patch. --- gnu-system.am | 1 + gnu/packages/grub.scm | 4 ++- gnu/packages/patches/grub-CVE-2015-8370.patch | 45 +++++++++++++++++++++++++++ 3 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/grub-CVE-2015-8370.patch (limited to 'gnu') diff --git a/gnu-system.am b/gnu-system.am index 3c8f402fa6..df177b62d5 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -497,6 +497,7 @@ dist_patch_DATA = \ gnu/packages/patches/gobject-introspection-cc.patch \ gnu/packages/patches/gobject-introspection-girepository.patch \ gnu/packages/patches/grep-CVE-2015-1345.patch \ + gnu/packages/patches/grub-CVE-2015-8370.patch \ gnu/packages/patches/grub-gets-undeclared.patch \ gnu/packages/patches/grub-freetype.patch \ gnu/packages/patches/guile-1.8-cpp-4.5.patch \ diff --git a/gnu/packages/grub.scm b/gnu/packages/grub.scm index 79fc2f0aca..96d284c108 100644 --- a/gnu/packages/grub.scm +++ b/gnu/packages/grub.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014, 2015 Ludovic Courtès ;;; Copyright © 2015 Mark H Weaver +;;; Copyright © 2015 Leo Famulari ;;; ;;; This file is part of GNU Guix. ;;; @@ -83,7 +84,8 @@ (define-public grub (base32 "0n64hpmsccvicagvr0c6v0kgp2yw0kgnd3jvsyd26cnwgs7c6kkq")) (patches (list (search-patch "grub-gets-undeclared.patch") - (search-patch "grub-freetype.patch"))))) + (search-patch "grub-freetype.patch") + (search-patch "grub-CVE-2015-8370.patch"))))) (build-system gnu-build-system) (arguments '(#:configure-flags '("--disable-werror") diff --git a/gnu/packages/patches/grub-CVE-2015-8370.patch b/gnu/packages/patches/grub-CVE-2015-8370.patch new file mode 100644 index 0000000000..5701b54759 --- /dev/null +++ b/gnu/packages/patches/grub-CVE-2015-8370.patch @@ -0,0 +1,45 @@ +From 88c9657960a6c5d3673a25c266781e876c181add Mon Sep 17 00:00:00 2001 +From: Hector Marco-Gisbert +Date: Fri, 13 Nov 2015 16:21:09 +0100 +Subject: [PATCH] Fix security issue when reading username and password + + This patch fixes two integer underflows at: + * grub-core/lib/crypto.c + * grub-core/normal/auth.c + +Signed-off-by: Hector Marco-Gisbert +Signed-off-by: Ismael Ripoll-Ripoll +--- + grub-core/lib/crypto.c | 2 +- + grub-core/normal/auth.c | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/grub-core/lib/crypto.c b/grub-core/lib/crypto.c +index 010e550..524a3d8 100644 +--- a/grub-core/lib/crypto.c ++++ b/grub-core/lib/crypto.c +@@ -468,7 +468,7 @@ grub_password_get (char buf[], unsigned buf_size) + break; + } + +- if (key == '\b') ++ if (key == '\b' && cur_len) + { + cur_len--; + continue; +diff --git a/grub-core/normal/auth.c b/grub-core/normal/auth.c +index c6bd96e..5782ec5 100644 +--- a/grub-core/normal/auth.c ++++ b/grub-core/normal/auth.c +@@ -172,7 +172,7 @@ grub_username_get (char buf[], unsigned buf_size) + break; + } + +- if (key == '\b') ++ if (key == '\b' && cur_len) + { + cur_len--; + grub_printf ("\b"); +-- +1.9.1 + -- cgit v1.2.3 From d12717cba0716ecbc320708f8d491eedd73806a2 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 20 Dec 2015 23:09:22 -0500 Subject: doc: Be more explicit in example of file-systems configuration. * gnu/system/examples/bare-bones.tmpl (file-systems): Change device label. * gnu/system/examples/desktop.tmpl (file-systems): Likewise. --- gnu/system/examples/bare-bones.tmpl | 4 ++-- gnu/system/examples/desktop.tmpl | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/system/examples/bare-bones.tmpl b/gnu/system/examples/bare-bones.tmpl index dc5cfc81a4..87e8d1e93c 100644 --- a/gnu/system/examples/bare-bones.tmpl +++ b/gnu/system/examples/bare-bones.tmpl @@ -10,11 +10,11 @@ (timezone "Europe/Berlin") (locale "en_US.UTF-8") - ;; Assuming /dev/sdX is the target hard disk, and "root" is + ;; Assuming /dev/sdX is the target hard disk, and "my-root" is ;; the label of the target root file system. (bootloader (grub-configuration (device "/dev/sdX"))) (file-systems (cons (file-system - (device "root") + (device "my-root") (title 'label) (mount-point "/") (type "ext4")) diff --git a/gnu/system/examples/desktop.tmpl b/gnu/system/examples/desktop.tmpl index ee660e0589..07183a533b 100644 --- a/gnu/system/examples/desktop.tmpl +++ b/gnu/system/examples/desktop.tmpl @@ -10,11 +10,11 @@ (timezone "Europe/Paris") (locale "en_US.UTF-8") - ;; Assuming /dev/sdX is the target hard disk, and "root" is - ;; the label of the target root file system. + ;; Assuming /dev/sdX is the target hard disk, and "my-root" + ;; is the label of the target root file system. (bootloader (grub-configuration (device "/dev/sdX"))) (file-systems (cons (file-system - (device "root") + (device "my-root") (title 'label) (mount-point "/") (type "ext4")) -- cgit v1.2.3 From 704989660f6590476c0a5566bc99718d91938083 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 21 Dec 2015 16:51:04 +0200 Subject: gnu: ffmpeg: Update to 2.8.4. * gnu/packages/video.scm (ffmpeg): Update to 2.8.4. --- 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 85b7414737..da1dcc7df8 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -375,14 +375,14 @@ (define-public libva (define-public ffmpeg (package (name "ffmpeg") - (version "2.8.3") + (version "2.8.4") (source (origin (method url-fetch) (uri (string-append "https://ffmpeg.org/releases/ffmpeg-" version ".tar.xz")) (sha256 (base32 - "0jkhyv68aa7h3hf905ganwqbrflams3hs74in7ygxdfkcqw2xqhq")))) + "07wmvp05zanmg3rm539dd0j7h1fi2fk0mcvmv01hjbpy92kq0qwb")))) (build-system gnu-build-system) (inputs `(("fontconfig" ,fontconfig) -- cgit v1.2.3 From ef9006451fb03c38167b929e2012c8201be89022 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 21 Dec 2015 02:06:04 -0500 Subject: gnu: letsencrypt and acme: Update to 0.1.1. These packages should be updated together. * gnu/packages/tls.scm (letsencrypt): Update to 0.1.1. [source]: Use pypi-uri. * gnu/packages/tls.scm (acme): Update to 0.1.1. [source]: Use pypi-uri. --- gnu/packages/tls.scm | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index e539686199..578953403e 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -351,14 +351,13 @@ (define-public libressl (define-public acme (package (name "acme") - (version "0.1.0") + (version "0.1.1") (source (origin (method url-fetch) - (uri (string-append "https://pypi.python.org/packages/source/a/acme/acme-" - version ".tar.gz")) + (uri (pypi-uri "acme" version)) (sha256 (base32 - "0fj0m04zzdxx23vazl00ilqyl3jxqq9c9p4x61pfz1zps7nbzsy3")))) + "1yv0gy8akaqp5p2wjpfj8r5i0da04a9qdmlh06rczdkrmk6q680w")))) (build-system python-build-system) (arguments `(#:python ,python-2)) @@ -384,14 +383,13 @@ (define-public acme (define-public letsencrypt (package (name "letsencrypt") - (version "0.1.0") + (version "0.1.1") (source (origin (method url-fetch) - (uri (string-append "https://pypi.python.org/packages/source/l/" - "letsencrypt/letsencrypt-" version ".tar.gz")) + (uri (pypi-uri "letsencrypt" version)) (sha256 (base32 - "1zb96xz32k6ai41h5m1l22qi47y71dq69dcmbz7vfm6jfrhjgxl1")))) + "1kia3wk66lxyi2fghp9sd7cqgr5qiwdfayz153hi4wpa3q1q8rwf")))) (build-system python-build-system) (arguments `(#:python ,python-2)) -- cgit v1.2.3 From bf76d7802c40501af4eb05b6121d2d25a9db3968 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 20 Dec 2015 21:54:56 +0100 Subject: gnu: Add drumstick. * gnu/packages/music.scm (drumstick): New variable. --- gnu/packages/music.scm | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index a217a89a19..66f77dfda8 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -39,6 +39,7 @@ (define-module (gnu packages music) #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages docbook) + #:use-module (gnu packages doxygen) #:use-module (gnu packages flex) #:use-module (gnu packages fltk) #:use-module (gnu packages fonts) @@ -771,6 +772,52 @@ (define-public frescobaldi browser.") (license license:gpl2+))) +(define-public drumstick + (package + (name "drumstick") + (version "1.0.1") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/drumstick/" + version "/drumstick-" version ".tar.bz2")) + (sha256 + (base32 + "0mxgix85b2qqs859z91cxik5x0s60dykqiflbj62px9akvf91qdv")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ; no test target + #:configure-flags '("-DLIB_SUFFIX=") + #:phases + (modify-phases %standard-phases + (add-before 'configure 'fix-docbook + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "cmake_admin/CreateManpages.cmake" + (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl") + (string-append (assoc-ref inputs "docbook-xsl") + "/xml/xsl/docbook-xsl-" + ,(package-version docbook-xsl) + "/manpages/docbook.xsl"))) + #t))))) + (inputs + `(("qt" ,qt) + ("alsa-lib" ,alsa-lib) + ("fluidsynth" ,fluidsynth))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("libxslt" ,libxslt) ;for xsltproc + ("docbook-xsl" ,docbook-xsl) + ("doxygen" ,doxygen))) + (home-page "http://drumstick.sourceforge.net/") + (synopsis "C++ MIDI library") + (description + "Drumstick is a set of MIDI libraries using C++/Qt5 idioms and style. It +includes a C++ wrapper around the ALSA library sequencer interface. A +complementary library provides classes for processing SMF (Standard MIDI +files: .MID/.KAR), Cakewalk (.WRK), and Overture (.OVE) file formats. A +multiplatform realtime MIDI I/O library is also provided with various output +backends, including ALSA, OSS, Network and FluidSynth.") + (license license:gpl2+))) + (define-public zynaddsubfx (package (name "zynaddsubfx") -- cgit v1.2.3 From 8e92cfb101f65c21445439913c4cc6e41ff6ccb7 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 21 Dec 2015 09:57:56 +0100 Subject: gnu: Add vmpk. * gnu/packages/music.scm (vmpk): New variable. --- gnu/packages/music.scm | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 66f77dfda8..67a29dc1cf 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -818,6 +818,49 @@ (define-public drumstick backends, including ALSA, OSS, Network and FluidSynth.") (license license:gpl2+))) +(define-public vmpk + (package + (name "vmpk") + (version "0.6.1") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/vmpk/vmpk/" + version "/vmpk-" version ".tar.bz2")) + (sha256 + (base32 + "0ranldd033bd31m9d2vkbkn9zp1k46xbaysllai2i95rf1nhirqc")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ; no test target + #:phases + (modify-phases %standard-phases + (add-before 'configure 'fix-docbook + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "cmake_admin/CreateManpages.cmake" + (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl") + (string-append (assoc-ref inputs "docbook-xsl") + "/xml/xsl/docbook-xsl-" + ,(package-version docbook-xsl) + "/manpages/docbook.xsl"))) + #t))))) + (inputs + `(("drumstick" ,drumstick) + ("qt" ,qt))) + (native-inputs + `(("libxslt" ,libxslt) ;for xsltproc + ("docbook-xsl" ,docbook-xsl) + ("pkg-config" ,pkg-config))) + (home-page "http://vmpk.sourceforge.net") + (synopsis "Virtual MIDI piano keyboard") + (description + "Virtual MIDI Piano Keyboard is a MIDI events generator and receiver. It +doesn't produce any sound by itself, but can be used to drive a MIDI +synthesizer (either hardware or software, internal or external). You can use +the computer's keyboard to play MIDI notes, and also the mouse. You can use +the Virtual MIDI Piano Keyboard to display the played MIDI notes from another +instrument or MIDI file player.") + (license license:gpl3+))) + (define-public zynaddsubfx (package (name "zynaddsubfx") -- cgit v1.2.3 From e43e84ba7a566abf3f6d552e494b34b483820a5b Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 22 Dec 2015 00:04:36 +0100 Subject: services: Add 'fstab-service-type'. * gnu/services/base.scm (file-system->fstab-entry) (file-systems->fstab): New procedures. (fstab-service-type): New variable. * gnu/services/base.scm (file-system-dmd-service): New procedure, taken from... (file-system-service-type): ... here. * gnu/system.scm (essential-services): Add FSTAB-SERVICE-TYPE instance. --- gnu/services/base.scm | 173 ++++++++++++++++++++++++++++++++------------------ gnu/system.scm | 1 + 2 files changed, 112 insertions(+), 62 deletions(-) (limited to 'gnu') diff --git a/gnu/services/base.scm b/gnu/services/base.scm index a86e8e04c7..67eeecdf17 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -43,7 +43,8 @@ (define-module (gnu services base) #:use-module (srfi srfi-26) #:use-module (ice-9 match) #:use-module (ice-9 format) - #:export (root-file-system-service + #:export (fstab-service-type + root-file-system-service file-system-service user-unmount-service device-mapping-service @@ -105,6 +106,48 @@ (define-module (gnu services base) ;;; File systems. ;;; +(define (file-system->fstab-entry file-system) + "Return a @file{/etc/fstab} entry for @var{file-system}." + (string-append (case (file-system-title file-system) + ((label) + (string-append "LABEL=" (file-system-device file-system))) + ((uuid) + (string-append + "UUID=" + (uuid->string (file-system-device file-system)))) + (else + (file-system-device file-system))) + "\t" + (file-system-mount-point file-system) "\t" + (file-system-type file-system) "\t" + (or (file-system-options file-system) "defaults") "\t" + + ;; XXX: Omit the 'fs_freq' and 'fs_passno' fields because we + ;; don't have anything sensible to put in there. + )) + +(define (file-systems->fstab file-systems) + "Return a @file{/etc} entry for an @file{fstab} describing +@var{file-systems}." + `(("fstab" ,(plain-file "fstab" + (string-append + "\ +# This file was generated from your GuixSD configuration. Any changes +# will be lost upon reboot or reconfiguration.\n\n" + (string-join (map file-system->fstab-entry + file-systems) + "\n") + "\n"))))) + +(define fstab-service-type + ;; The /etc/fstab service. + (service-type (name 'fstab) + (extensions + (list (service-extension etc-service-type + file-systems->fstab))) + (compose identity) + (extend append))) + (define %root-file-system-dmd-service (dmd-service (documentation "Take care of the root file system.") @@ -170,70 +213,76 @@ (define dependency->dmd-service-name ((? file-system? fs) (file-system->dmd-service-name fs)))) +(define (file-system-dmd-service file-system) + "Return a list containing the dmd service for @var{file-system}." + (let ((target (file-system-mount-point file-system)) + (device (file-system-device file-system)) + (type (file-system-type file-system)) + (title (file-system-title file-system)) + (check? (file-system-check? file-system)) + (create? (file-system-create-mount-point? file-system)) + (dependencies (file-system-dependencies file-system))) + (list (dmd-service + (provision (list (file-system->dmd-service-name file-system))) + (requirement `(root-file-system + ,@(map dependency->dmd-service-name dependencies))) + (documentation "Check, mount, and unmount the given file system.") + (start #~(lambda args + ;; FIXME: Use or factorize with 'mount-file-system'. + (let ((device (canonicalize-device-spec #$device '#$title)) + (flags #$(mount-flags->bit-mask + (file-system-flags file-system)))) + #$(if create? + #~(mkdir-p #$target) + #~#t) + #$(if check? + #~(begin + ;; Make sure fsck.ext2 & co. can be found. + (setenv "PATH" + (string-append + #$e2fsprogs "/sbin:" + "/run/current-system/profile/sbin:" + (getenv "PATH"))) + (check-file-system device #$type)) + #~#t) + + (mount device #$target #$type flags + #$(file-system-options file-system)) + + ;; For read-only bind mounts, an extra remount is needed, + ;; as per , which still + ;; applies to Linux 4.0. + (when (and (= MS_BIND (logand flags MS_BIND)) + (= MS_RDONLY (logand flags MS_RDONLY))) + (mount device #$target #$type + (logior MS_BIND MS_REMOUNT MS_RDONLY)))) + #t)) + (stop #~(lambda args + ;; Normally there are no processes left at this point, so + ;; TARGET can be safely unmounted. + + ;; Make sure PID 1 doesn't keep TARGET busy. + (chdir "/") + + (umount #$target) + #f)) + + ;; We need an additional module. + (modules `(((gnu build file-systems) + #:select (check-file-system canonicalize-device-spec)) + ,@%default-modules)) + (imported-modules `((gnu build file-systems) + ,@%default-imported-modules)))))) + (define file-system-service-type ;; TODO(?): Make this an extensible service that takes objects ;; and returns a list of . - (dmd-service-type - 'file-system - (lambda (file-system) - (let ((target (file-system-mount-point file-system)) - (device (file-system-device file-system)) - (type (file-system-type file-system)) - (title (file-system-title file-system)) - (check? (file-system-check? file-system)) - (create? (file-system-create-mount-point? file-system)) - (dependencies (file-system-dependencies file-system))) - (dmd-service - (provision (list (file-system->dmd-service-name file-system))) - (requirement `(root-file-system - ,@(map dependency->dmd-service-name dependencies))) - (documentation "Check, mount, and unmount the given file system.") - (start #~(lambda args - ;; FIXME: Use or factorize with 'mount-file-system'. - (let ((device (canonicalize-device-spec #$device '#$title)) - (flags #$(mount-flags->bit-mask - (file-system-flags file-system)))) - #$(if create? - #~(mkdir-p #$target) - #~#t) - #$(if check? - #~(begin - ;; Make sure fsck.ext2 & co. can be found. - (setenv "PATH" - (string-append - #$e2fsprogs "/sbin:" - "/run/current-system/profile/sbin:" - (getenv "PATH"))) - (check-file-system device #$type)) - #~#t) - - (mount device #$target #$type flags - #$(file-system-options file-system)) - - ;; For read-only bind mounts, an extra remount is needed, - ;; as per , which still - ;; applies to Linux 4.0. - (when (and (= MS_BIND (logand flags MS_BIND)) - (= MS_RDONLY (logand flags MS_RDONLY))) - (mount device #$target #$type - (logior MS_BIND MS_REMOUNT MS_RDONLY)))) - #t)) - (stop #~(lambda args - ;; Normally there are no processes left at this point, so - ;; TARGET can be safely unmounted. - - ;; Make sure PID 1 doesn't keep TARGET busy. - (chdir "/") - - (umount #$target) - #f)) - - ;; We need an additional module. - (modules `(((gnu build file-systems) - #:select (check-file-system canonicalize-device-spec)) - ,@%default-modules)) - (imported-modules `((gnu build file-systems) - ,@%default-imported-modules))))))) + (service-type (name 'file-system) + (extensions + (list (service-extension dmd-root-service-type + file-system-dmd-service) + (service-extension fstab-service-type + identity))))) (define* (file-system-service file-system) "Return a service that mounts @var{file-system}, a @code{} diff --git a/gnu/system.scm b/gnu/system.scm index ff981d95a2..2b8821443a 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -299,6 +299,7 @@ (define known-fs (operating-system-groups os)) (operating-system-skeletons os)) (operating-system-etc-service os) + (service fstab-service-type '()) (session-environment-service (operating-system-environment-variables os)) host-name procs root-fs unmount -- cgit v1.2.3 From be21979d85304fedd5c0fb970ffc337d220eda7a Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 22 Dec 2015 00:25:40 +0100 Subject: file-systems: Add a 'mount?' field. Fixes . Reported by Florian Paul Schmidt . * gnu/system/file-systems.scm ()[mount?]: New field. (file-system->spec): Adjust accordingly. * gnu/services/base.scm (file-system-dmd-service): Return the empty list when FILE-SYSTEM has 'mount?' set to false. (user-processes-service): Select the subset of FILE-SYSTEMS that matches 'file-system-mount?'. * doc/guix.texi (File Systems): Document it. --- doc/guix.texi | 6 +++ gnu/services/base.scm | 107 +++++++++++++++++++++++--------------------- gnu/system/file-systems.scm | 5 ++- 3 files changed, 65 insertions(+), 53 deletions(-) (limited to 'gnu') diff --git a/doc/guix.texi b/doc/guix.texi index a70fbe86ed..7665ec9610 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -5936,6 +5936,12 @@ bits), and @code{no-exec} (disallow program execution.) @item @code{options} (default: @code{#f}) This is either @code{#f}, or a string denoting mount options. +@item @code{mount?} (default: @code{#t}) +This value indicates whether to automatically mount the file system when +the system is brought up. When set to @code{#f}, the file system gets +an entry in @file{/etc/fstab} (read by the @command{mount} command) but +is not automatically mounted. + @item @code{needed-for-boot?} (default: @code{#f}) This Boolean value indicates whether the file system is needed when booting. If that is true, then the file system is mounted when the diff --git a/gnu/services/base.scm b/gnu/services/base.scm index 67eeecdf17..25143c80a6 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -222,57 +222,60 @@ (define (file-system-dmd-service file-system) (check? (file-system-check? file-system)) (create? (file-system-create-mount-point? file-system)) (dependencies (file-system-dependencies file-system))) - (list (dmd-service - (provision (list (file-system->dmd-service-name file-system))) - (requirement `(root-file-system - ,@(map dependency->dmd-service-name dependencies))) - (documentation "Check, mount, and unmount the given file system.") - (start #~(lambda args - ;; FIXME: Use or factorize with 'mount-file-system'. - (let ((device (canonicalize-device-spec #$device '#$title)) - (flags #$(mount-flags->bit-mask - (file-system-flags file-system)))) - #$(if create? - #~(mkdir-p #$target) - #~#t) - #$(if check? - #~(begin - ;; Make sure fsck.ext2 & co. can be found. - (setenv "PATH" - (string-append - #$e2fsprogs "/sbin:" - "/run/current-system/profile/sbin:" - (getenv "PATH"))) - (check-file-system device #$type)) - #~#t) - - (mount device #$target #$type flags - #$(file-system-options file-system)) - - ;; For read-only bind mounts, an extra remount is needed, - ;; as per , which still - ;; applies to Linux 4.0. - (when (and (= MS_BIND (logand flags MS_BIND)) - (= MS_RDONLY (logand flags MS_RDONLY))) - (mount device #$target #$type - (logior MS_BIND MS_REMOUNT MS_RDONLY)))) - #t)) - (stop #~(lambda args - ;; Normally there are no processes left at this point, so - ;; TARGET can be safely unmounted. - - ;; Make sure PID 1 doesn't keep TARGET busy. - (chdir "/") - - (umount #$target) - #f)) - - ;; We need an additional module. - (modules `(((gnu build file-systems) - #:select (check-file-system canonicalize-device-spec)) - ,@%default-modules)) - (imported-modules `((gnu build file-systems) - ,@%default-imported-modules)))))) + (if (file-system-mount? file-system) + (list + (dmd-service + (provision (list (file-system->dmd-service-name file-system))) + (requirement `(root-file-system + ,@(map dependency->dmd-service-name dependencies))) + (documentation "Check, mount, and unmount the given file system.") + (start #~(lambda args + ;; FIXME: Use or factorize with 'mount-file-system'. + (let ((device (canonicalize-device-spec #$device '#$title)) + (flags #$(mount-flags->bit-mask + (file-system-flags file-system)))) + #$(if create? + #~(mkdir-p #$target) + #~#t) + #$(if check? + #~(begin + ;; Make sure fsck.ext2 & co. can be found. + (setenv "PATH" + (string-append + #$e2fsprogs "/sbin:" + "/run/current-system/profile/sbin:" + (getenv "PATH"))) + (check-file-system device #$type)) + #~#t) + + (mount device #$target #$type flags + #$(file-system-options file-system)) + + ;; For read-only bind mounts, an extra remount is + ;; needed, as per , + ;; which still applies to Linux 4.0. + (when (and (= MS_BIND (logand flags MS_BIND)) + (= MS_RDONLY (logand flags MS_RDONLY))) + (mount device #$target #$type + (logior MS_BIND MS_REMOUNT MS_RDONLY)))) + #t)) + (stop #~(lambda args + ;; Normally there are no processes left at this point, so + ;; TARGET can be safely unmounted. + + ;; Make sure PID 1 doesn't keep TARGET busy. + (chdir "/") + + (umount #$target) + #f)) + + ;; We need an additional module. + (modules `(((gnu build file-systems) + #:select (check-file-system canonicalize-device-spec)) + ,@%default-modules)) + (imported-modules `((gnu build file-systems) + ,@%default-imported-modules)))) + '()))) (define file-system-service-type ;; TODO(?): Make this an extensible service that takes objects @@ -416,7 +419,7 @@ (define* (user-processes-service file-systems #:key (grace-delay 4)) All the services that spawn processes must depend on this one so that they are stopped before 'kill' is called." (service user-processes-service-type - (list file-systems grace-delay))) + (list (filter file-system-mount? file-systems) grace-delay))) ;;; diff --git a/gnu/system/file-systems.scm b/gnu/system/file-systems.scm index 0a4b385fe3..47a3dbc1e8 100644 --- a/gnu/system/file-systems.scm +++ b/gnu/system/file-systems.scm @@ -35,6 +35,7 @@ (define-module (gnu system file-systems) file-system-needed-for-boot? file-system-flags file-system-options + file-system-mount? file-system-check? file-system-create-mount-point? file-system-dependencies @@ -93,6 +94,8 @@ (define-record-type* file-system (default '())) (options file-system-options ; string or #f (default #f)) + (mount? file-system-mount? ; Boolean + (default #t)) (needed-for-boot? %file-system-needed-for-boot? ; Boolean (default #f)) (check? file-system-check? ; Boolean @@ -112,7 +115,7 @@ (define (file-system->spec fs) "Return a list corresponding to file-system FS that can be passed to the initrd code." (match fs - (($ device title mount-point type flags options _ check?) + (($ device title mount-point type flags options _ _ check?) (list device title mount-point type flags options check?)))) (define %uuid-rx -- cgit v1.2.3 From ab64483f648756570f6e9d4027c3b4854e43921c Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 22 Dec 2015 00:29:43 +0100 Subject: file-systems: The 'device' field can be a UUID (bytevector). Previously a wrong-type-arg error would be raised when a file system with a UUID (bytevector) field was encountered. * gnu/system.scm (other-file-system-services)[device-mappings]: Check whether FS's device is a string. --- gnu/system.scm | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/system.scm b/gnu/system.scm index 2b8821443a..6f7500f93a 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -192,11 +192,14 @@ (define file-systems (operating-system-file-systems os))) (define (device-mappings fs) - (filter (lambda (md) - (string=? (string-append "/dev/mapper/" - (mapped-device-target md)) - (file-system-device fs))) - (operating-system-mapped-devices os))) + (let ((device (file-system-device fs))) + (if (string? device) + (filter (lambda (md) + (string=? (string-append "/dev/mapper/" + (mapped-device-target md)) + device)) + (operating-system-mapped-devices os)) + '()))) (define (add-dependencies fs) ;; Add the dependencies due to device mappings to FS. -- cgit v1.2.3 From f9a5b1889714cbfbc7ca84b22e4290d2cd4b084c Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 21 Dec 2015 19:09:34 -0500 Subject: gnu: bind-utils: Update to 9.10.3-P2. * gnu/packages/dns.scm (bind-utils): Update to 9.10.3-P2. [source]: Use HTTP URI instead of FTP. --- gnu/packages/dns.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index 7d28617f42..8357dad21e 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -63,14 +63,14 @@ (define-public dnsmasq (define-public bind-utils (package (name "bind-utils") - (version "9.10.2-P2") + (version "9.10.3-P2") (source (origin (method url-fetch) - (uri (string-append "ftp://ftp.isc.org/isc/bind9/" version + (uri (string-append "http://ftp.isc.org/isc/bind9/" version "/bind-" version ".tar.gz")) (sha256 (base32 - "0pvcnwd4rzfk3l35ys72p14ly9k857wbn1lxzd4ayjk3i2pz1rmi")))) + "1kbfzml37sx4r2xi4gq48ji8w5kckd1f6gdn6pk6njqdmh8ijv2a")))) (build-system gnu-build-system) (inputs ;; it would be nice to add GeoIP and gssapi once there is package -- cgit v1.2.3 From 6548b1e122c75532f5bebd9ce105f66f38d170de Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 21 Dec 2015 19:42:23 -0500 Subject: gnu: isc-dhcp: Update to 4.3.3; update bundled bind to 9.9.8-P2. Fixes CVE-2015-8000 and CVE-2015-8461. * gnu/packages/admin.scm (isc-dhcp): Update to 4.3.3. [inputs]: Add 'bind-source-tarball'. [arguments]: Use modify-phases. Add 'replace-bundled-bind' phase. In 'post-configure' phase, avoid hard-coding version numbers of bundled bind. --- gnu/packages/admin.scm | 224 +++++++++++++++++++++++++++++-------------------- 1 file changed, 133 insertions(+), 91 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index ee275f7251..a574c84a61 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -388,99 +388,141 @@ (define-public alive (license license:gpl3+))) (define-public isc-dhcp - (package - (name "isc-dhcp") - (version "4.3.1") - (source (origin - (method url-fetch) - (uri (string-append "http://ftp.isc.org/isc/dhcp/" - version "/dhcp-" version ".tar.gz")) - (sha256 - (base32 - "1w4s7sni1m9223ya8m2a64lr62845c6xlraprjf8zfx6lylbqv16")))) - (build-system gnu-build-system) - (arguments - '(#:phases (alist-cons-after - 'configure 'post-configure - (lambda* (#:key outputs #:allow-other-keys) - ;; Point to the right client script, which will be - ;; installed in a later phase. - (substitute* "includes/dhcpd.h" - (("#define[[:blank:]]+_PATH_DHCLIENT_SCRIPT.*") - (let ((out (assoc-ref outputs "out"))) - (string-append "#define _PATH_DHCLIENT_SCRIPT \"" - out "/libexec/dhclient-script" - "\"\n")))) - - ;; During the 'build' phase, 'bind.tar.gz' is extracted, so - ;; we must patch shebangs in there and make sure the right - ;; shell is used. - (with-directory-excursion "bind" - (substitute* "Makefile" - (("\\./configure") - (let ((sh (which "sh"))) - (string-append "./configure CONFIG_SHELL=" - sh " SHELL=" sh)))) - - (system* "tar" "xf" "bind.tar.gz") - (for-each patch-shebang - (find-files "bind-9.9.5-P1" ".*")) - (zero? (system* "tar" "cf" "bind.tar.gz" - "bind-9.9.5-P1" - ;; avoid non-determinism in the archive - "--sort=name" - "--mtime=@0" - "--owner=root:0" - "--group=root:0")))) - (alist-cons-after - 'install 'post-install - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; Install the dhclient script for GNU/Linux and make sure - ;; if finds all the programs it needs. - (let* ((out (assoc-ref outputs "out")) - (libexec (string-append out "/libexec")) - (coreutils (assoc-ref inputs "coreutils")) - (inetutils (assoc-ref inputs "inetutils")) - (net-tools (assoc-ref inputs "net-tools")) - (sed (assoc-ref inputs "sed"))) - (substitute* "client/scripts/linux" - (("/sbin/ip") - (string-append (assoc-ref inputs "iproute") - "/sbin/ip"))) - - (mkdir-p libexec) - (copy-file "client/scripts/linux" - (string-append libexec "/dhclient-script")) - - (wrap-program - (string-append libexec "/dhclient-script") - `("PATH" ":" prefix - ,(map (lambda (dir) - (string-append dir "/bin:" - dir "/sbin")) - (list inetutils net-tools coreutils sed)))))) - %standard-phases)))) - - (native-inputs `(("perl" ,perl))) - - (inputs `(("inetutils" ,inetutils) - ("net-tools" ,net-tools) - ("iproute" ,iproute) - - ;; When cross-compiling, we need the cross Coreutils and sed. - ;; Otherwise just use those from %FINAL-INPUTS. - ,@(if (%current-target-system) - `(("coreutils" ,coreutils) - ("sed" ,sed)) - '()))) - - (home-page "http://www.isc.org/products/DHCP/") - (synopsis "Dynamic Host Configuration Protocol (DHCP) tools") - (description - "ISC's Dynamic Host Configuration Protocol (DHCP) distribution provides a + (let* ((bind-major-version "9") + (bind-minor-version "9") + (bind-patch-version "8") + (bind-release-type "-P") + (bind-release-version "2") + (bind-version (string-append bind-major-version + "." + bind-minor-version + "." + bind-patch-version + bind-release-type + bind-release-version))) + (package + (name "isc-dhcp") + (version "4.3.3") + (source (origin + (method url-fetch) + (uri (string-append "http://ftp.isc.org/isc/dhcp/" + version "/dhcp-" version ".tar.gz")) + (sha256 + (base32 + "1pjy4lylx7dww1fp2mk5ikya5vxaf97z70279j81n74vn12ljg2m")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'replace-bundled-bind + (lambda* (#:key inputs #:allow-other-keys) + (delete-file "bind/bind.tar.gz") + (copy-file (assoc-ref inputs "bind-source-tarball") + "bind/bind.tar.gz") + (chmod "bind/bind.tar.gz" #o644) + (substitute* "bind/version.tmp" + (("^MAJORVER=.*") + (format #f "MAJORVER=~a\n" ,bind-major-version)) + (("^MINORVER=.*") + (format #f "MINORVER=~a\n" ,bind-minor-version)) + (("^PATCHVER=.*") + (format #f "PATCHVER=~a\n" ,bind-patch-version)) + (("^RELEASETYPE=.*") + (format #f "RELEASETYPE=~a\n" ,bind-release-type)) + (("^RELEASEVER=.*") + (format #f "RELEASEVER=~a\n" ,bind-release-version))) + #t)) + (add-after 'configure 'post-configure + (lambda* (#:key outputs #:allow-other-keys) + ;; Point to the right client script, which will be + ;; installed in a later phase. + (substitute* "includes/dhcpd.h" + (("#define[[:blank:]]+_PATH_DHCLIENT_SCRIPT.*") + (let ((out (assoc-ref outputs "out"))) + (string-append "#define _PATH_DHCLIENT_SCRIPT \"" + out "/libexec/dhclient-script" + "\"\n")))) + + ;; During the 'build' phase, 'bind.tar.gz' is extracted, so + ;; we must patch shebangs in there and make sure the right + ;; shell is used. + (with-directory-excursion "bind" + (substitute* "Makefile" + (("\\./configure") + (let ((sh (which "sh"))) + (string-append "./configure CONFIG_SHELL=" + sh " SHELL=" sh)))) + + (let ((bind-directory (string-append "bind-" ,bind-version))) + (system* "tar" "xf" "bind.tar.gz") + (for-each patch-shebang + (find-files bind-directory ".*")) + (zero? (system* "tar" "cf" "bind.tar.gz" + bind-directory + ;; avoid non-determinism in the archive + "--sort=name" + "--mtime=@0" + "--owner=root:0" + "--group=root:0")))))) + (add-after 'install 'post-install + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Install the dhclient script for GNU/Linux and make sure + ;; if finds all the programs it needs. + (let* ((out (assoc-ref outputs "out")) + (libexec (string-append out "/libexec")) + (coreutils (assoc-ref inputs "coreutils")) + (inetutils (assoc-ref inputs "inetutils")) + (net-tools (assoc-ref inputs "net-tools")) + (sed (assoc-ref inputs "sed"))) + (substitute* "client/scripts/linux" + (("/sbin/ip") + (string-append (assoc-ref inputs "iproute") + "/sbin/ip"))) + + (mkdir-p libexec) + (copy-file "client/scripts/linux" + (string-append libexec "/dhclient-script")) + + (wrap-program + (string-append libexec "/dhclient-script") + `("PATH" ":" prefix + ,(map (lambda (dir) + (string-append dir "/bin:" + dir "/sbin")) + (list inetutils net-tools coreutils sed)))))))))) + + (native-inputs `(("perl" ,perl))) + + (inputs `(("inetutils" ,inetutils) + ("net-tools" ,net-tools) + ("iproute" ,iproute) + + ;; XXX isc-dhcp bundles a copy of bind that has security + ;; flaws, so we use a newer version. + ("bind-source-tarball" + ,(origin + (method url-fetch) + (uri (string-append "http://ftp.isc.org/isc/bind9/" + bind-version + "/bind-" bind-version ".tar.gz")) + (sha256 + (base32 + "0agkpmpna7s67la13krn4xlhwhdjpazmljxlq0zbjdwnw4k1k17m")))) + + ;; When cross-compiling, we need the cross Coreutils and sed. + ;; Otherwise just use those from %FINAL-INPUTS. + ,@(if (%current-target-system) + `(("coreutils" ,coreutils) + ("sed" ,sed)) + '()))) + + (home-page "http://www.isc.org/products/DHCP/") + (synopsis "Dynamic Host Configuration Protocol (DHCP) tools") + (description + "ISC's Dynamic Host Configuration Protocol (DHCP) distribution provides a reference implementation of all aspects of DHCP, through a suite of DHCP tools: server, client, and relay agent.") - (license license:isc))) + (license license:isc)))) (define-public libpcap (package -- cgit v1.2.3 From e54465ff85c4222f7462d03dba0b3a722bc6c34d Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Tue, 22 Dec 2015 10:44:15 -0500 Subject: gnu: isc-dhcp: Disable parallel build. * gnu/packages/admin.scm (isc-dhcp)[arguments]: Disable parallel build. --- gnu/packages/admin.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index a574c84a61..4f335a27d4 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -412,7 +412,8 @@ (define-public isc-dhcp "1pjy4lylx7dww1fp2mk5ikya5vxaf97z70279j81n74vn12ljg2m")))) (build-system gnu-build-system) (arguments - `(#:phases + `(#:parallel-build? #f + #:phases (modify-phases %standard-phases (add-after 'unpack 'replace-bundled-bind (lambda* (#:key inputs #:allow-other-keys) -- cgit v1.2.3 From 99e6f9c828a22ef6c3c994926f3be8e948080f76 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 22 Dec 2015 22:39:48 +0200 Subject: gnu: ucommon: Update to 7.0.0. * gnu/packages/telephony.scm (ucommon): Update to 7.0.0. [inputs]: Add gnutls. --- gnu/packages/telephony.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm index 5c61604191..0bc0b0f40e 100644 --- a/gnu/packages/telephony.scm +++ b/gnu/packages/telephony.scm @@ -24,6 +24,7 @@ (define-module (gnu packages telephony) #:use-module (gnu packages gnupg) #:use-module (gnu packages linux) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages tls) #:use-module (guix licenses) #:use-module (guix packages) #:use-module (guix download) @@ -60,14 +61,15 @@ (define-public commoncpp (define-public ucommon (package (name "ucommon") - (version "6.6.2") + (version "7.0.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/commoncpp/" name "-" version ".tar.gz")) (sha256 (base32 - "16haqzq97axiyhgpca95rhr5y5s7fl8b65if5vil7v4lcqxp3hqn")))) + "1mv080rvrhyxyhgqiqr8r9jdqhg3xhfawjvfj5zgj47h59nggjba")))) (build-system gnu-build-system) + (inputs `(("gnutls" ,gnutls))) (synopsis "Common C++ framework for threaded applications") (description "GNU uCommon C++ is meant as a very light-weight C++ library to facilitate using C++ design patterns even for very deeply embedded -- cgit v1.2.3 From 419fa59b17fce0306af998eb23192032ef3239f9 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 22 Dec 2015 22:45:41 +0200 Subject: gnu: sipwitch: Update to 1.9.15. * gnu/packages/telephony.scm (sipwitch): Update to 1.9.15. --- gnu/packages/telephony.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm index 0bc0b0f40e..3f4ab56091 100644 --- a/gnu/packages/telephony.scm +++ b/gnu/packages/telephony.scm @@ -148,13 +148,13 @@ (define-public exosip (define-public sipwitch (package (name "sipwitch") - (version "1.9.14") + (version "1.9.15") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/sipwitch/sipwitch-" version ".tar.gz")) (sha256 (base32 - "1mrzl5nakiz613v3ch27k5dj2ykm88dlcr22lqny6dnjyfa9n2ki")))) + "10lli9c703d7qbarzc0lgmz963ppncvnrklwrnri0s1zcmmahyia")))) (build-system gnu-build-system) ;; The configure.ac uses pkg-config but in a kludgy way which breaks when ;; cross-compiling. Among other issues there the program name "pkg-config" -- cgit v1.2.3 From 0877ef4342f894f7526e71b197725e43524732f4 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 22 Dec 2015 22:47:44 +0200 Subject: gnu: parallel: Update to 20151222. * gnu/packages/parallel.scm (parallel): Update to 20151222. --- gnu/packages/parallel.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm index 25e77d8023..8f63bda25c 100644 --- a/gnu/packages/parallel.scm +++ b/gnu/packages/parallel.scm @@ -29,7 +29,7 @@ (define-module (gnu packages parallel) (define-public parallel (package (name "parallel") - (version "20151122") + (version "20151222") (source (origin (method url-fetch) @@ -37,7 +37,7 @@ (define-public parallel version ".tar.bz2")) (sha256 (base32 - "0phn9dlkqlq3cq468ypxbbn78bsjcin743pyvf8ip4qg6jz662jm")))) + "03czpnsj77xxzqxzzr1b39ym9acn94hknzbilbh28v5q1wk7r4mf")))) (build-system gnu-build-system) (inputs `(("perl" ,perl))) (home-page "http://www.gnu.org/software/parallel/") -- cgit v1.2.3 From a9257a873f787f797191d90a7c5b6b236d7d0b66 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 22 Dec 2015 22:50:58 +0200 Subject: gnu: libmicrohttpd: Update to 0.9.48. * gnu/packages/gnunet.scm (libmicrohttpd): Update to 0.9.48. --- gnu/packages/gnunet.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm index 2a4c5cfeed..11e5aa8733 100644 --- a/gnu/packages/gnunet.scm +++ b/gnu/packages/gnunet.scm @@ -114,14 +114,14 @@ (define-public libextractor (define-public libmicrohttpd (package (name "libmicrohttpd") - (version "0.9.47") + (version "0.9.48") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/libmicrohttpd/libmicrohttpd-" version ".tar.gz")) (sha256 (base32 - "1335kznai5ih3kmavl1707sr4sakk0cc0srl5aax77x0a91spgcn")))) + "1952z36lf31jy0x19r4y389d9188wgzmdqh2l28wdy1biwapwrl7")))) (build-system gnu-build-system) (inputs `(("curl" ,curl) -- cgit v1.2.3 From e7173df87aedc5d7300b06585c47d813015a0fd8 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 23 Dec 2015 12:45:35 +0100 Subject: gnu: icedtea6: Update to 1.13.9. * gnu/packages/java.scm (icedtea6): Update to 1.13.9. --- gnu/packages/java.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index f00a3d720c..ca7e64dc68 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -187,7 +187,7 @@ (define-public ant (define-public icedtea6 (package (name "icedtea6") - (version "1.13.8") + (version "1.13.9") (source (origin (method url-fetch) (uri (string-append @@ -195,7 +195,7 @@ (define-public icedtea6 version ".tar.xz")) (sha256 (base32 - "1nqaq2xjz88rfzm94l28c0cc48gdiwl8ijw9c46s14z3awwn5g7w")) + "0rf95gsyr849b0nxhc7i0k5pr2iz8a922kg288x7jbgws0pgpq31")) (modules '((guix build utils))) (snippet '(substitute* "Makefile.in" @@ -557,10 +557,10 @@ (define-public icedtea6 ("openjdk6-src" ,(origin (method url-fetch) - (uri "https://java.net/downloads/openjdk6/openjdk-6-src-b36-22_jul_2015.tar.gz") + (uri "https://java.net/downloads/openjdk6/openjdk-6-src-b37-11_nov_2015.tar.gz") (sha256 (base32 - "0mdckpazjijf6ggxzah2nq99lgsi0jk9pjbxhfq39b9lawvb45ln")))) + "0iqzvx1zmrfhxrp3z9h7bh95c2rmclrhiszmsqwkjb2gngbs29j5")))) ("lcms" ,lcms) ("zlib" ,zlib) ("gtk" ,gtk+-2) -- cgit v1.2.3 From 4de7aede50efccaff4b68301a96b2d2082290976 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 23 Dec 2015 12:46:05 +0100 Subject: gnu: icedtea7: Update to 2.6.3. * gnu/packages/java.scm (icedtea7): Update to 2.6.3. --- gnu/packages/java.scm | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index ca7e64dc68..60439d1534 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -576,7 +576,7 @@ (define-public icedtea6 (license license:gpl2+))) (define-public icedtea7 - (let* ((version "2.6.2") + (let* ((version "2.6.3") (drop (lambda (name hash) (origin (method url-fetch) @@ -594,7 +594,7 @@ (define-public icedtea7 version ".tar.xz")) (sha256 (base32 - "0xi0w8gpxx3r68hyi7fb991hxb3rqfp7895nfsl4wj3sa1f5ds5y")) + "04n6ac7rca98q68ifja1nmf3icigqgs75k4x12p3n3yknh8alf6z")) (modules '((guix build utils))) (snippet '(substitute* "Makefile.in" @@ -728,24 +728,24 @@ (define-public icedtea7 (native-inputs `(("openjdk-drop" ,(drop "openjdk" - "0jabxc8iw7ciz6f2qshcpla66qniy686vnxnfx3h2yw7syvas4a9")) + "0vflz0hhq4arykvvmsv3yas4yk9i0jm57287iqvs3a4832xjcpcy")) ("corba-drop" ,(drop "corba" - "1bw22djg8mfqqn8kp8mpbj9vi4pl8dk67qwwrny67d0fvirixylj")) + "1ijy8gkvnvzjnk7x7fypggfapdswd0ha7b8q90vs72lhf0yawlhh")) ("jaxp-drop" ,(drop "jaxp" - "1h3g2dwbj8ihicl73qbr4cvvc3i5bs5ckrpja1nx6g5b56xa7kcl")) + "0sw0a49xmzqrffvlg7mvvlicn2yz5r4swv3l19b0269p0yy7isd0")) ("jaxws-drop" ,(drop "jaxws" - "1m1h7455qn4pdhb5yamdl9965iz9260lzwl3njcs35vi14v7fihl")) + "07nwmpji734fnvb4n3g2cj1fl4mskmg26ksdw3rpvb38wf97v2am")) ("jdk-drop" ,(drop "jdk" - "1wcaxf2chnlpk34q04c23im6z32dy8fr6f9giz3ih65nyvah3n3s")) + "1x89l6rj20rzkalizpy74q4nlnskrvr39nvl2i95isajkda9hf2q")) ("langtools-drop" ,(drop "langtools" - "0da3cmm8nwz7dk2sqnywvidaa0kjnyzzi33p2lkdi4415f8yhgx5")) + "0zpjkpl294aw4nai35fh4lcxyv3vx0q0hnxchjcb2iz0hkgicizi")) ("hotspot-drop" ,(drop "hotspot" - "0fn3cjhqsgbkfzychkvvw6whxil2n9dr6q0196ywxzkinny1hjcq")) + "03pggsrhkzpjnj939vhr3b7mcrhfp22b7yg3hkx52kcv8dqkg3yx")) ,@(fold alist-delete (package-native-inputs icedtea6) '("openjdk6-src"))))))) -- cgit v1.2.3 From d000fc92b17fdc31f150ef015c687f326e0d8127 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Tue, 22 Dec 2015 21:51:43 +1000 Subject: gnu: Add ruby-mini-portile-2. * gnu/packages/ruby.scm (ruby-mini-portile-2): New variable. --- gnu/packages/ruby.scm | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 131666f038..9d8f80e7eb 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1683,6 +1683,16 @@ (define-public ruby-mini-portile (home-page "http://github.com/flavorjones/mini_portile") (license license:expat))) +(define-public ruby-mini-portile-2 + (package (inherit ruby-mini-portile) + (version "2.0.0") + (source (origin + (method url-fetch) + (uri (rubygems-uri "mini_portile2" version)) + (sha256 + (base32 + "056drbn5m4khdxly1asmiik14nyllswr6sh3wallvsywwdiryz8l")))))) + (define-public ruby-nokogiri (package (name "ruby-nokogiri") -- cgit v1.2.3 From 1b9d4e2e204877f152e595283dc3220208e8c8a0 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Tue, 22 Dec 2015 21:48:01 +1000 Subject: gnu: ruby-nokogiri: Upgrade to 1.6.7.1. * gnu/packages/ruby.scm (ruby-nokogiri): Upgrade to 1.6.7.1. --- gnu/packages/ruby.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 9d8f80e7eb..47ac392aa6 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -1696,13 +1696,13 @@ (define-public ruby-mini-portile-2 (define-public ruby-nokogiri (package (name "ruby-nokogiri") - (version "1.6.6.2") + (version "1.6.7.1") (source (origin (method url-fetch) (uri (rubygems-uri "nokogiri" version)) (sha256 (base32 - "1j4qv32qjh67dcrc1yy1h8sqjnny8siyy4s44awla8d6jk361h30")))) + "12nwv3lad5k2k73aa1d1xy4x577c143ixks6rs70yp78sinbglk2")))) (build-system ruby-build-system) (arguments ;; Tests fail because Nokogiri can only test with an installed extension, @@ -1720,7 +1720,7 @@ (define-public ruby-nokogiri ("libxml2" ,libxml2) ("libxslt" ,libxslt))) (propagated-inputs - `(("ruby-mini-portile" ,ruby-mini-portile))) + `(("ruby-mini-portile" ,ruby-mini-portile-2))) (synopsis "HTML, XML, SAX, and Reader parser for Ruby") (description "Nokogiri (鋸) parses and searches XML/HTML, and features both CSS3 selector and XPath 1.0 support.") -- cgit v1.2.3 From bba5de0e43e9820fae1442c4ce893c10cb945674 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Wed, 23 Dec 2015 10:41:50 -0500 Subject: gnu: nss: Update to 3.20.2. * gnu/packages/gnuzilla.scm (nss): Update to 3.20.2. --- gnu/packages/gnuzilla.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 8125a262aa..3172bc8c45 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -167,7 +167,7 @@ (define-public nspr (define-public nss (package (name "nss") - (version "3.20.1") + (version "3.20.2") (source (origin (method url-fetch) (uri (let ((version-with-underscores @@ -178,7 +178,7 @@ (define-public nss "nss-" version ".tar.gz"))) (sha256 (base32 - "15wcbqd2b911hxafbjfn63zd1gf2yxg0s5560hnhqmyrvw8qyg5d")) + "11pjjcp0mvcyx0ildyz20s9jlqzxsb6a9jlvcq5x1g3zsmckl6hl")) ;; Create nss.pc and nss-config. (patches (list (search-patch "nss-pkgconfig.patch"))))) (build-system gnu-build-system) -- cgit v1.2.3 From 097190417f7eadbb02370970acfe8b05da4a619d Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Wed, 23 Dec 2015 10:46:23 -0500 Subject: gnu: icecat: Update to 38.5.0-gnu1. * gnu/packages/patches/icecat-CVE-2015-7201-pt1.patch, gnu/packages/patches/icecat-CVE-2015-7201-pt2.patch, gnu/packages/patches/icecat-CVE-2015-7201-pt3.patch, gnu/packages/patches/icecat-CVE-2015-7205.patch, gnu/packages/patches/icecat-CVE-2015-7210.patch, gnu/packages/patches/icecat-CVE-2015-7212.patch, gnu/packages/patches/icecat-CVE-2015-7213-pt1.patch, gnu/packages/patches/icecat-CVE-2015-7213-pt2.patch, gnu/packages/patches/icecat-CVE-2015-7214.patch, gnu/packages/patches/icecat-CVE-2015-7222-pt1.patch, gnu/packages/patches/icecat-CVE-2015-7222-pt2.patch, gnu/packages/patches/icecat-CVE-2015-7222-pt3.patch, gnu/packages/patches/icecat-freetype-2.6.patch: Delete files. * gnu-system.am (dist_patch_DATA): Remove them. * gnu/packages/gnuzilla.scm (icecat): Update to 38.5.0-gnu1. [source]: Remove patches. --- gnu-system.am | 13 - gnu/packages/gnuzilla.scm | 19 +- .../patches/icecat-CVE-2015-7201-pt1.patch | 123 ------- .../patches/icecat-CVE-2015-7201-pt2.patch | 29 -- .../patches/icecat-CVE-2015-7201-pt3.patch | 35 -- gnu/packages/patches/icecat-CVE-2015-7205.patch | 84 ----- gnu/packages/patches/icecat-CVE-2015-7210.patch | 47 --- gnu/packages/patches/icecat-CVE-2015-7212.patch | 364 --------------------- .../patches/icecat-CVE-2015-7213-pt1.patch | 32 -- .../patches/icecat-CVE-2015-7213-pt2.patch | 27 -- gnu/packages/patches/icecat-CVE-2015-7214.patch | 47 --- .../patches/icecat-CVE-2015-7222-pt1.patch | 112 ------- .../patches/icecat-CVE-2015-7222-pt2.patch | 34 -- .../patches/icecat-CVE-2015-7222-pt3.patch | 37 --- gnu/packages/patches/icecat-freetype-2.6.patch | 14 - 15 files changed, 3 insertions(+), 1014 deletions(-) delete mode 100644 gnu/packages/patches/icecat-CVE-2015-7201-pt1.patch delete mode 100644 gnu/packages/patches/icecat-CVE-2015-7201-pt2.patch delete mode 100644 gnu/packages/patches/icecat-CVE-2015-7201-pt3.patch delete mode 100644 gnu/packages/patches/icecat-CVE-2015-7205.patch delete mode 100644 gnu/packages/patches/icecat-CVE-2015-7210.patch delete mode 100644 gnu/packages/patches/icecat-CVE-2015-7212.patch delete mode 100644 gnu/packages/patches/icecat-CVE-2015-7213-pt1.patch delete mode 100644 gnu/packages/patches/icecat-CVE-2015-7213-pt2.patch delete mode 100644 gnu/packages/patches/icecat-CVE-2015-7214.patch delete mode 100644 gnu/packages/patches/icecat-CVE-2015-7222-pt1.patch delete mode 100644 gnu/packages/patches/icecat-CVE-2015-7222-pt2.patch delete mode 100644 gnu/packages/patches/icecat-CVE-2015-7222-pt3.patch delete mode 100644 gnu/packages/patches/icecat-freetype-2.6.patch (limited to 'gnu') diff --git a/gnu-system.am b/gnu-system.am index df177b62d5..e1874fa6c1 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -512,20 +512,7 @@ dist_patch_DATA = \ gnu/packages/patches/hop-linker-flags.patch \ gnu/packages/patches/hydra-automake-1.15.patch \ gnu/packages/patches/hydra-disable-darcs-test.patch \ - gnu/packages/patches/icecat-CVE-2015-7201-pt1.patch \ - gnu/packages/patches/icecat-CVE-2015-7201-pt2.patch \ - gnu/packages/patches/icecat-CVE-2015-7201-pt3.patch \ - gnu/packages/patches/icecat-CVE-2015-7205.patch \ - gnu/packages/patches/icecat-CVE-2015-7210.patch \ - gnu/packages/patches/icecat-CVE-2015-7212.patch \ - gnu/packages/patches/icecat-CVE-2015-7213-pt1.patch \ - gnu/packages/patches/icecat-CVE-2015-7213-pt2.patch \ - gnu/packages/patches/icecat-CVE-2015-7214.patch \ - gnu/packages/patches/icecat-CVE-2015-7222-pt1.patch \ - gnu/packages/patches/icecat-CVE-2015-7222-pt2.patch \ - gnu/packages/patches/icecat-CVE-2015-7222-pt3.patch \ gnu/packages/patches/icecat-avoid-bundled-includes.patch \ - gnu/packages/patches/icecat-freetype-2.6.patch \ gnu/packages/patches/icu4c-CVE-2014-6585.patch \ gnu/packages/patches/icu4c-CVE-2015-1270.patch \ gnu/packages/patches/icu4c-CVE-2015-4760.patch \ diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 3172bc8c45..40a13e7939 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -266,7 +266,7 @@ (define-public nss (define-public icecat (package (name "icecat") - (version "38.4.0-gnu1") + (version "38.5.0-gnu1") (source (origin (method url-fetch) @@ -275,21 +275,8 @@ (define-public icecat name "-" version ".tar.bz2")) (sha256 (base32 - "0rcaa19rfgclwd2qvcz8798m57jjzra6kaxg5dniysajvx7qndfp")) - (patches (map search-patch '("icecat-CVE-2015-7210.patch" - "icecat-CVE-2015-7205.patch" - "icecat-CVE-2015-7201-pt1.patch" - "icecat-CVE-2015-7201-pt2.patch" - "icecat-CVE-2015-7212.patch" - "icecat-CVE-2015-7213-pt1.patch" - "icecat-CVE-2015-7213-pt2.patch" - "icecat-CVE-2015-7222-pt1.patch" - "icecat-CVE-2015-7222-pt2.patch" - "icecat-CVE-2015-7222-pt3.patch" - "icecat-CVE-2015-7214.patch" - "icecat-CVE-2015-7201-pt3.patch" - "icecat-avoid-bundled-includes.patch" - "icecat-freetype-2.6.patch"))) + "1bf20mpvx84jsa0dan2hhfc49f30v0wasikv7sh3cg8mwp62faj6")) + (patches (map search-patch '("icecat-avoid-bundled-includes.patch"))) (modules '((guix build utils))) (snippet '(begin diff --git a/gnu/packages/patches/icecat-CVE-2015-7201-pt1.patch b/gnu/packages/patches/icecat-CVE-2015-7201-pt1.patch deleted file mode 100644 index 0fcfe9b409..0000000000 --- a/gnu/packages/patches/icecat-CVE-2015-7201-pt1.patch +++ /dev/null @@ -1,123 +0,0 @@ -From e2bbd632e220be7626efd34acb9a517430d36004 Mon Sep 17 00:00:00 2001 -From: Andrew Comminos -Date: Fri, 23 Oct 2015 21:35:16 -0700 -Subject: [PATCH] Bug 1203135 - Terminate linking if maximum vertex attribute - count is exceeded on Mesa. r=jgilbert, a=ritu - ---HG-- -extra : source : 8021382da9722db0ad97ebd93698b69a74f0d9b0 -extra : intermediate-source : 90eff805d2810e9d9ea88f6869335b0500b1a536 ---- - dom/canvas/WebGLProgram.cpp | 28 ++++++++++++++++++---------- - dom/canvas/WebGLShader.cpp | 10 ++++++++++ - dom/canvas/WebGLShader.h | 1 + - dom/canvas/WebGLShaderValidator.cpp | 6 ++++++ - dom/canvas/WebGLShaderValidator.h | 1 + - 5 files changed, 36 insertions(+), 10 deletions(-) - -diff --git a/dom/canvas/WebGLProgram.cpp b/dom/canvas/WebGLProgram.cpp -index 78f7413..0e056e8 100644 ---- a/dom/canvas/WebGLProgram.cpp -+++ b/dom/canvas/WebGLProgram.cpp -@@ -569,18 +569,26 @@ WebGLProgram::LinkProgram() - gl::GLContext* gl = mContext->gl; - gl->MakeCurrent(); - -- // Bug 777028: Mesa can't handle more than 16 samplers per program, -- // counting each array entry. -- size_t numSamplerUniforms_upperBound = mVertShader->CalcNumSamplerUniforms() + -- mFragShader->CalcNumSamplerUniforms(); - if (gl->WorkAroundDriverBugs() && -- mContext->mIsMesa && -- numSamplerUniforms_upperBound > 16) -+ mContext->mIsMesa) - { -- mLinkLog.AssignLiteral("Programs with more than 16 samplers are disallowed on" -- " Mesa drivers to avoid crashing."); -- mContext->GenerateWarning("linkProgram: %s", mLinkLog.BeginReading()); -- return false; -+ // Bug 777028: Mesa can't handle more than 16 samplers per program, -+ // counting each array entry. -+ size_t numSamplerUniforms_upperBound = mVertShader->CalcNumSamplerUniforms() + -+ mFragShader->CalcNumSamplerUniforms(); -+ if (numSamplerUniforms_upperBound > 16) { -+ mLinkLog.AssignLiteral("Programs with more than 16 samplers are disallowed on" -+ " Mesa drivers to avoid crashing."); -+ mContext->GenerateWarning("linkProgram: %s", mLinkLog.BeginReading()); -+ return false; -+ } -+ -+ // Bug 1203135: Mesa crashes internally if we exceed the reported maximum attribute count. -+ if (mVertShader->NumAttributes() > mContext->MaxVertexAttribs()) { -+ mLinkLog.AssignLiteral("Number of attributes exceeds Mesa's reported max attribute count."); -+ mContext->GenerateWarning("linkProgram: %s", mLinkLog.BeginReading()); -+ return false; -+ } - } - - // Bind the attrib locations. -diff --git a/dom/canvas/WebGLShader.cpp b/dom/canvas/WebGLShader.cpp -index 85a3809..bab4157 100644 ---- a/dom/canvas/WebGLShader.cpp -+++ b/dom/canvas/WebGLShader.cpp -@@ -299,6 +299,16 @@ WebGLShader::CalcNumSamplerUniforms() const - return 0; - } - -+size_t -+WebGLShader::NumAttributes() const -+{ -+ if (mValidator) -+ return mValidator->NumAttributes(); -+ -+ // TODO -+ return 0; -+} -+ - void - WebGLShader::BindAttribLocation(GLuint prog, const nsCString& userName, - GLuint index) const -diff --git a/dom/canvas/WebGLShader.h b/dom/canvas/WebGLShader.h -index 698e30c..2c80b16a 100644 ---- a/dom/canvas/WebGLShader.h -+++ b/dom/canvas/WebGLShader.h -@@ -45,6 +45,7 @@ public: - // Util funcs - bool CanLinkTo(const WebGLShader* prev, nsCString* const out_log) const; - size_t CalcNumSamplerUniforms() const; -+ size_t NumAttributes() const; - void BindAttribLocation(GLuint prog, const nsCString& userName, GLuint index) const; - bool FindAttribUserNameByMappedName(const nsACString& mappedName, - nsDependentCString* const out_userName) const; -diff --git a/dom/canvas/WebGLShaderValidator.cpp b/dom/canvas/WebGLShaderValidator.cpp -index 80005e2..8bedf88 100644 ---- a/dom/canvas/WebGLShaderValidator.cpp -+++ b/dom/canvas/WebGLShaderValidator.cpp -@@ -274,6 +274,12 @@ ShaderValidator::CalcNumSamplerUniforms() const - return accum; - } - -+size_t -+ShaderValidator::NumAttributes() const -+{ -+ return ShGetAttributes(mHandle)->size(); -+} -+ - // Attribs cannot be structs or arrays, and neither can vertex inputs in ES3. - // Therefore, attrib names are always simple. - bool -diff --git a/dom/canvas/WebGLShaderValidator.h b/dom/canvas/WebGLShaderValidator.h -index 35db2f1..1f794bf0 100644 ---- a/dom/canvas/WebGLShaderValidator.h -+++ b/dom/canvas/WebGLShaderValidator.h -@@ -41,6 +41,7 @@ public: - void GetOutput(nsACString* out) const; - bool CanLinkTo(const ShaderValidator* prev, nsCString* const out_log) const; - size_t CalcNumSamplerUniforms() const; -+ size_t NumAttributes() const; - - bool FindAttribUserNameByMappedName(const std::string& mappedName, - const std::string** const out_userName) const; --- -2.6.3 - diff --git a/gnu/packages/patches/icecat-CVE-2015-7201-pt2.patch b/gnu/packages/patches/icecat-CVE-2015-7201-pt2.patch deleted file mode 100644 index 3764371a11..0000000000 --- a/gnu/packages/patches/icecat-CVE-2015-7201-pt2.patch +++ /dev/null @@ -1,29 +0,0 @@ -From f02e3252391f5fa79916e4c8f30b3d8340d06cc7 Mon Sep 17 00:00:00 2001 -From: "Carsten \"Tomcat\" Book" -Date: Tue, 8 Dec 2015 12:38:15 +0100 -Subject: [PATCH] Bug 1225250 - fix stride on SourceSurfaceSkia when - initialized from GPU texture. r=jmuizelaar, a=lizzard - ---- - gfx/2d/SourceSurfaceSkia.cpp | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/gfx/2d/SourceSurfaceSkia.cpp b/gfx/2d/SourceSurfaceSkia.cpp -index 4b95bc2..d7e0714 100644 ---- a/gfx/2d/SourceSurfaceSkia.cpp -+++ b/gfx/2d/SourceSurfaceSkia.cpp -@@ -110,8 +110,10 @@ SourceSurfaceSkia::InitFromTexture(DrawTargetSkia* aOwner, - GrTexture *skiaTexture = aOwner->mGrContext->wrapBackendTexture(skiaTexGlue); - SkImageInfo imgInfo = SkImageInfo::Make(aSize.width, aSize.height, GfxFormatToSkiaColorType(aFormat), kOpaque_SkAlphaType); - SkGrPixelRef *texRef = new SkGrPixelRef(imgInfo, skiaTexture, false); -- mBitmap.setInfo(imgInfo, aSize.width*aSize.height*4); -+ mBitmap.setInfo(imgInfo); - mBitmap.setPixelRef(texRef); -+ mFormat = aFormat; -+ mStride = mBitmap.rowBytes(); - - mDrawTarget = aOwner; - return true; --- -2.6.3 - diff --git a/gnu/packages/patches/icecat-CVE-2015-7201-pt3.patch b/gnu/packages/patches/icecat-CVE-2015-7201-pt3.patch deleted file mode 100644 index 022ab5cc16..0000000000 --- a/gnu/packages/patches/icecat-CVE-2015-7201-pt3.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 567a97b6347ac8c2b93ec788c437b7e9bb23ef75 Mon Sep 17 00:00:00 2001 -From: Edwin Flores -Date: Wed, 2 Dec 2015 16:15:29 +0100 -Subject: [PATCH] Bug 1224100 - Initialize padding to 0 in Downscaler. r=seth, - a=sledru - ---- - image/src/Downscaler.cpp | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -diff --git a/image/src/Downscaler.cpp b/image/src/Downscaler.cpp -index 24ecfda..2a7acfd 100644 ---- a/image/src/Downscaler.cpp -+++ b/image/src/Downscaler.cpp -@@ -86,11 +86,16 @@ Downscaler::BeginFrame(const nsIntSize& aOriginalSize, - mTargetSize.height, mYFilter.get()); - - // Allocate the buffer, which contains scanlines of the original image. -- mRowBuffer = MakeUnique(mOriginalSize.width * sizeof(uint32_t)); -+ size_t bufferLen = mOriginalSize.width * sizeof(uint32_t); -+ mRowBuffer = MakeUnique(bufferLen); - if (MOZ_UNLIKELY(!mRowBuffer)) { - return NS_ERROR_OUT_OF_MEMORY; - } - -+ // Zero buffer to keep valgrind happy. -+ memset(mRowBuffer.get(), 0, bufferLen); -+ -+ - // Allocate the window, which contains horizontally downscaled scanlines. (We - // can store scanlines which are already downscale because our downscaling - // filter is separable.) --- -2.6.3 - diff --git a/gnu/packages/patches/icecat-CVE-2015-7205.patch b/gnu/packages/patches/icecat-CVE-2015-7205.patch deleted file mode 100644 index 620fa0d6bd..0000000000 --- a/gnu/packages/patches/icecat-CVE-2015-7205.patch +++ /dev/null @@ -1,84 +0,0 @@ -From 20df7b0b3f3e7dd201c9811bbb1e6515da8da359 Mon Sep 17 00:00:00 2001 -From: Randell Jesup -Date: Thu, 5 Nov 2015 10:17:29 -0500 -Subject: [PATCH] Bug 1220493 - validate RTP packets against underflows. - r=pkerr a=sylvestre - ---HG-- -extra : source : 575d3aa376b1c8e7507d94833f7b74bf963127cb -extra : intermediate-source : 2c1b396ef5c3e2424fb9af56d86ebf6f6551a997 ---- - .../webrtc/modules/rtp_rtcp/source/rtp_utility.cc | 26 ++++++++++++---------- - 1 file changed, 14 insertions(+), 12 deletions(-) - -diff --git a/media/webrtc/trunk/webrtc/modules/rtp_rtcp/source/rtp_utility.cc b/media/webrtc/trunk/webrtc/modules/rtp_rtcp/source/rtp_utility.cc -index 9334b23..80cf55a 100644 ---- a/media/webrtc/trunk/webrtc/modules/rtp_rtcp/source/rtp_utility.cc -+++ b/media/webrtc/trunk/webrtc/modules/rtp_rtcp/source/rtp_utility.cc -@@ -338,12 +338,6 @@ bool RtpHeaderParser::Parse(RTPHeader& header, - return false; - } - -- const uint8_t CSRCocts = CC * 4; -- -- if ((ptr + CSRCocts) > _ptrRTPDataEnd) { -- return false; -- } -- - header.markerBit = M; - header.payloadType = PT; - header.sequenceNumber = sequenceNumber; -@@ -352,6 +346,14 @@ bool RtpHeaderParser::Parse(RTPHeader& header, - header.numCSRCs = CC; - header.paddingLength = P ? *(_ptrRTPDataEnd - 1) : 0; - -+ // 12 == sizeof(RFC rtp header) == kRtpMinParseLength, each CSRC=4 bytes -+ header.headerLength = 12 + (CC * 4); -+ // not a full validation, just safety against underflow. Padding must -+ // start after the header. We can have 0 payload bytes left, note. -+ if (header.paddingLength + header.headerLength > length) { -+ return false; -+ } -+ - for (unsigned int i = 0; i < CC; ++i) { - uint32_t CSRC = *ptr++ << 24; - CSRC += *ptr++ << 16; -@@ -359,8 +361,7 @@ bool RtpHeaderParser::Parse(RTPHeader& header, - CSRC += *ptr++; - header.arrOfCSRCs[i] = CSRC; - } -- -- header.headerLength = 12 + CSRCocts; -+ assert((ptr - _ptrRTPDataBegin) == header.headerLength); - - // If in effect, MAY be omitted for those packets for which the offset - // is zero. -@@ -385,8 +386,9 @@ bool RtpHeaderParser::Parse(RTPHeader& header, - | header extension | - | .... | - */ -- const ptrdiff_t remain = _ptrRTPDataEnd - ptr; -- if (remain < 4) { -+ // earlier test ensures we have at least paddingLength bytes left -+ const ptrdiff_t remain = (_ptrRTPDataEnd - ptr) - header.paddingLength; -+ if (remain < 4) { // minimum header extension length = 32 bits - return false; - } - -@@ -395,11 +397,11 @@ bool RtpHeaderParser::Parse(RTPHeader& header, - uint16_t definedByProfile = *ptr++ << 8; - definedByProfile += *ptr++; - -- uint16_t XLen = *ptr++ << 8; -+ size_t XLen = *ptr++ << 8; - XLen += *ptr++; // in 32 bit words - XLen *= 4; // in octs - -- if (remain < (4 + XLen)) { -+ if (remain < (4 + XLen)) { // we already accounted for padding - return false; - } - if (definedByProfile == kRtpOneByteHeaderExtensionId) { --- -2.6.3 - diff --git a/gnu/packages/patches/icecat-CVE-2015-7210.patch b/gnu/packages/patches/icecat-CVE-2015-7210.patch deleted file mode 100644 index eab57021db..0000000000 --- a/gnu/packages/patches/icecat-CVE-2015-7210.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 4e0cd9ba4924869f91be0e7c8cf666182bb75f90 Mon Sep 17 00:00:00 2001 -From: "Byron Campen [:bwc]" -Date: Wed, 28 Oct 2015 12:48:17 -0500 -Subject: [PATCH] Bug 1218326 - Prevent datachannel operations on closed - PeerConnections. r=jesup a=sylvestre - ---HG-- -extra : source : a7637b62d9b5ab73f58e5aa3c663d7d35b624826 -extra : intermediate-source : d8f0412f38f75040064157d8d2b0140df21600e6 ---- - media/webrtc/signaling/src/peerconnection/PeerConnectionImpl.cpp | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/media/webrtc/signaling/src/peerconnection/PeerConnectionImpl.cpp b/media/webrtc/signaling/src/peerconnection/PeerConnectionImpl.cpp -index c3d8d26..fe86ff7 100644 ---- a/media/webrtc/signaling/src/peerconnection/PeerConnectionImpl.cpp -+++ b/media/webrtc/signaling/src/peerconnection/PeerConnectionImpl.cpp -@@ -1004,7 +1004,7 @@ PeerConnectionImpl::GetIdentity() const - NS_IMETHODIMP - PeerConnectionImpl::EnsureDataConnection(uint16_t aNumstreams) - { -- PC_AUTO_ENTER_API_CALL_NO_CHECK(); -+ PC_AUTO_ENTER_API_CALL(false); - - #ifdef MOZILLA_INTERNAL_API - if (mDataConnection) { -@@ -1102,7 +1102,7 @@ PeerConnectionImpl::GetDatachannelParameters( - nsresult - PeerConnectionImpl::InitializeDataChannel() - { -- PC_AUTO_ENTER_API_CALL_NO_CHECK(); -+ PC_AUTO_ENTER_API_CALL(false); - CSFLogDebug(logTag, "%s", __FUNCTION__); - - const JsepApplicationCodecDescription* codec; -@@ -1184,7 +1184,7 @@ PeerConnectionImpl::CreateDataChannel(const nsAString& aLabel, - uint16_t aStream, - nsDOMDataChannel** aRetval) - { -- PC_AUTO_ENTER_API_CALL_NO_CHECK(); -+ PC_AUTO_ENTER_API_CALL(false); - MOZ_ASSERT(aRetval); - - #ifdef MOZILLA_INTERNAL_API --- -2.6.3 - diff --git a/gnu/packages/patches/icecat-CVE-2015-7212.patch b/gnu/packages/patches/icecat-CVE-2015-7212.patch deleted file mode 100644 index 7bda486ff7..0000000000 --- a/gnu/packages/patches/icecat-CVE-2015-7212.patch +++ /dev/null @@ -1,364 +0,0 @@ -From 595e3a152ff2912a950defd0ef4b5f659135b03a Mon Sep 17 00:00:00 2001 -From: Nicolas Silva -Date: Wed, 18 Nov 2015 16:59:11 +0100 -Subject: [PATCH] Bug 1222809 - Don't try to allocate unreasonably large - textures. r=Bas, a=sylvestre - ---- - gfx/2d/2D.h | 25 ++++++++++-- - gfx/2d/Factory.cpp | 67 ++++++++++++++++++++++++++++----- - gfx/layers/ImageDataSerializer.cpp | 21 ++++++----- - gfx/layers/YCbCrImageDataSerializer.cpp | 7 ++++ - gfx/layers/client/TextureClient.cpp | 12 ++++++ - gfx/thebes/gfxPlatform.cpp | 15 ++++++-- - gfx/thebes/gfxPrefs.h | 3 ++ - 7 files changed, 124 insertions(+), 26 deletions(-) - -diff --git a/gfx/2d/2D.h b/gfx/2d/2D.h -index cf35bb2..b1e0e3e 100644 ---- a/gfx/2d/2D.h -+++ b/gfx/2d/2D.h -@@ -1082,22 +1082,41 @@ struct TileSet - size_t mTileCount; - }; - -+struct Config { -+ LogForwarder* mLogForwarder; -+ int32_t mMaxTextureSize; -+ int32_t mMaxAllocSize; -+ -+ Config() -+ : mLogForwarder(nullptr) -+ , mMaxTextureSize(8192) -+ , mMaxAllocSize(52000000) -+ {} -+}; -+ - class GFX2D_API Factory - { - public: -+ static void Init(const Config& aConfig); -+ static void ShutDown(); -+ - static bool HasSSE2(); - - /** Make sure that the given dimensions don't overflow a 32-bit signed int - * using 4 bytes per pixel; optionally, make sure that either dimension - * doesn't exceed the given limit. - */ -- static bool CheckSurfaceSize(const IntSize &sz, int32_t limit = 0); -+ static bool CheckSurfaceSize(const IntSize &sz, -+ int32_t limit = 0, -+ int32_t allocLimit = 0); - - /** Make sure the given dimension satisfies the CheckSurfaceSize and is - * within 8k limit. The 8k value is chosen a bit randomly. - */ - static bool ReasonableSurfaceSize(const IntSize &aSize); - -+ static bool AllowedSurfaceSize(const IntSize &aSize); -+ - static TemporaryRef CreateDrawTargetForCairoSurface(cairo_surface_t* aSurface, const IntSize& aSize, SurfaceFormat* aFormat = nullptr); - - static TemporaryRef -@@ -1171,10 +1190,10 @@ public: - - static uint32_t GetMaxSurfaceSize(BackendType aType); - -- static LogForwarder* GetLogForwarder() { return mLogForwarder; } -+ static LogForwarder* GetLogForwarder() { return sConfig ? sConfig->mLogForwarder : nullptr; } - - private: -- static LogForwarder* mLogForwarder; -+ static Config* sConfig; - public: - - #ifdef USE_SKIA_GPU -diff --git a/gfx/2d/Factory.cpp b/gfx/2d/Factory.cpp -index 948d3c3..6750c28 100644 ---- a/gfx/2d/Factory.cpp -+++ b/gfx/2d/Factory.cpp -@@ -188,6 +188,35 @@ ID2D1Device *Factory::mD2D1Device; - - DrawEventRecorder *Factory::mRecorder; - -+mozilla::gfx::Config* Factory::sConfig = nullptr; -+ -+void -+Factory::Init(const Config& aConfig) -+{ -+ MOZ_ASSERT(!sConfig); -+ sConfig = new Config(aConfig); -+ -+ // Make sure we don't completely break rendering because of a typo in the -+ // pref or whatnot. -+ const int32_t kMinAllocPref = 10000000; -+ const int32_t kMinSizePref = 2048; -+ if (sConfig->mMaxAllocSize < kMinAllocPref) { -+ sConfig->mMaxAllocSize = kMinAllocPref; -+ } -+ if (sConfig->mMaxTextureSize < kMinSizePref) { -+ sConfig->mMaxTextureSize = kMinSizePref; -+ } -+} -+ -+void -+Factory::ShutDown() -+{ -+ if (sConfig) { -+ delete sConfig; -+ sConfig = nullptr; -+ } -+} -+ - bool - Factory::HasSSE2() - { -@@ -222,11 +251,25 @@ inline int LoggerOptionsBasedOnSize(const IntSize& aSize) - bool - Factory::ReasonableSurfaceSize(const IntSize &aSize) - { -- return Factory::CheckSurfaceSize(aSize,8192); -+ return Factory::CheckSurfaceSize(aSize, 8192); -+} -+ -+bool -+Factory::AllowedSurfaceSize(const IntSize &aSize) -+{ -+ if (sConfig) { -+ return Factory::CheckSurfaceSize(aSize, -+ sConfig->mMaxTextureSize, -+ sConfig->mMaxAllocSize); -+ } -+ -+ return CheckSurfaceSize(aSize); - } - - bool --Factory::CheckSurfaceSize(const IntSize &sz, int32_t limit) -+Factory::CheckSurfaceSize(const IntSize &sz, -+ int32_t extentLimit, -+ int32_t allocLimit) - { - if (sz.width <= 0 || sz.height <= 0) { - gfxDebug() << "Surface width or height <= 0!"; -@@ -234,8 +277,8 @@ Factory::CheckSurfaceSize(const IntSize &sz, int32_t limit) - } - - // reject images with sides bigger than limit -- if (limit && (sz.width > limit || sz.height > limit)) { -- gfxDebug() << "Surface size too large (exceeds caller's limit)!"; -+ if (extentLimit && (sz.width > extentLimit || sz.height > extentLimit)) { -+ gfxDebug() << "Surface size too large (exceeds extent limit)!"; - return false; - } - -@@ -267,13 +310,18 @@ Factory::CheckSurfaceSize(const IntSize &sz, int32_t limit) - return false; - } - -+ if (allocLimit && allocLimit < numBytes.value()) { -+ gfxDebug() << "Surface size too large (exceeds allocation limit)!"; -+ return false; -+ } -+ - return true; - } - - TemporaryRef - Factory::CreateDrawTarget(BackendType aBackend, const IntSize &aSize, SurfaceFormat aFormat) - { -- if (!CheckSurfaceSize(aSize)) { -+ if (!AllowedSurfaceSize(aSize)) { - gfxCriticalError(LoggerOptionsBasedOnSize(aSize)) << "Failed to allocate a surface due to invalid size " << aSize; - return nullptr; - } -@@ -364,7 +412,7 @@ Factory::CreateDrawTargetForData(BackendType aBackend, - SurfaceFormat aFormat) - { - MOZ_ASSERT(aData); -- if (!CheckSurfaceSize(aSize)) { -+ if (!AllowedSurfaceSize(aSize)) { - gfxCriticalError(LoggerOptionsBasedOnSize(aSize)) << "Failed to allocate a surface due to invalid size " << aSize; - return nullptr; - } -@@ -835,7 +883,7 @@ Factory::CreateDataSourceSurface(const IntSize &aSize, - SurfaceFormat aFormat, - bool aZero) - { -- if (!CheckSurfaceSize(aSize)) { -+ if (!AllowedSurfaceSize(aSize)) { - gfxCriticalError(LoggerOptionsBasedOnSize(aSize)) << "Failed to allocate a surface due to invalid size " << aSize; - return nullptr; - } -@@ -881,14 +929,13 @@ Factory::SetGlobalEventRecorder(DrawEventRecorder *aRecorder) - mRecorder = aRecorder; - } - --LogForwarder* Factory::mLogForwarder = nullptr; -- - // static - void - Factory::SetLogForwarder(LogForwarder* aLogFwd) { -- mLogForwarder = aLogFwd; -+ sConfig->mLogForwarder = aLogFwd; - } - -+ - // static - void - CriticalLogger::OutputMessage(const std::string &aString, -diff --git a/gfx/layers/ImageDataSerializer.cpp b/gfx/layers/ImageDataSerializer.cpp -index 5dd6aca..331dd04 100644 ---- a/gfx/layers/ImageDataSerializer.cpp -+++ b/gfx/layers/ImageDataSerializer.cpp -@@ -84,21 +84,23 @@ ImageDataSerializerBase::ComputeMinBufferSize(IntSize aSize, - SurfaceFormat aFormat) - { - MOZ_ASSERT(aSize.height >= 0 && aSize.width >= 0); -- if (aSize.height <= 0 || aSize.width <= 0) { -- gfxDebug() << "Non-positive image buffer size request " << aSize.width << "x" << aSize.height; -+ -+ // This takes care of checking whether there could be overflow -+ // with enough margin for the metadata. -+ if (!gfx::Factory::AllowedSurfaceSize(aSize)) { - return 0; - } - -- CheckedInt bufsize = ComputeStride(aFormat, aSize.width); -- bufsize *= aSize.height; -+ int32_t bufsize = GetAlignedStride<16>(ComputeStride(aFormat, aSize.width) -+ * aSize.height) -+ + SurfaceBufferInfo::GetOffset(); - -- if (!bufsize.isValid() || bufsize.value() <= 0) { -- gfxDebug() << "Buffer size overflow " << aSize.width << "x" << aSize.height; -+ if (bufsize < 0) { -+ // This should not be possible thanks to Factory::AllowedSurfaceSize - return 0; - } - -- return SurfaceBufferInfo::GetOffset() -- + GetAlignedStride<16>(bufsize.value()); -+ return bufsize; - } - - void -@@ -114,7 +116,8 @@ ImageDataSerializerBase::Validate() - } - size_t requiredSize = - ComputeMinBufferSize(IntSize(info->width, info->height), info->format); -- mIsValid = requiredSize <= mDataSize; -+ -+ mIsValid = !!requiredSize && requiredSize <= mDataSize; - } - - uint8_t* -diff --git a/gfx/layers/YCbCrImageDataSerializer.cpp b/gfx/layers/YCbCrImageDataSerializer.cpp -index c8e148d..05f5ab2 100644 ---- a/gfx/layers/YCbCrImageDataSerializer.cpp -+++ b/gfx/layers/YCbCrImageDataSerializer.cpp -@@ -150,6 +150,13 @@ YCbCrImageDataDeserializerBase::ComputeMinBufferSize(const gfx::IntSize& aYSize, - gfxDebug() << "Non-positive YCbCr buffer size request " << aYSize.height << "x" << aYSize.width << ", " << aCbCrSize.height << "x" << aCbCrSize.width; - return 0; - } -+ -+ if (!gfx::Factory::AllowedSurfaceSize(aYSize) || -+ aCbCrSize.width > aYSize.width || -+ aCbCrSize.height > aYSize.height) { -+ return 0; -+ } -+ - return ComputeOffset(aYSize.height, aYStride) - + 2 * ComputeOffset(aCbCrSize.height, aCbCrStride) - + MOZ_ALIGN_WORD(sizeof(YCbCrBufferInfo)); -diff --git a/gfx/layers/client/TextureClient.cpp b/gfx/layers/client/TextureClient.cpp -index 9b45ca0..6ae7cbf 100644 ---- a/gfx/layers/client/TextureClient.cpp -+++ b/gfx/layers/client/TextureClient.cpp -@@ -315,6 +315,10 @@ TextureClient::CreateForDrawing(ISurfaceAllocator* aAllocator, - aMoz2DBackend = gfxPlatform::GetPlatform()->GetContentBackend(); - } - -+ if (!gfx::Factory::AllowedSurfaceSize(aSize)) { -+ return nullptr; -+ } -+ - RefPtr texture; - - #if defined(MOZ_WIDGET_GONK) || defined(XP_WIN) -@@ -415,6 +419,10 @@ TextureClient::CreateForRawBufferAccess(ISurfaceAllocator* aAllocator, - TextureFlags aTextureFlags, - TextureAllocationFlags aAllocFlags) - { -+ if (!gfx::Factory::AllowedSurfaceSize(aSize)) { -+ return nullptr; -+ } -+ - RefPtr texture = - CreateBufferTextureClient(aAllocator, aFormat, - aTextureFlags, aMoz2DBackend); -@@ -434,6 +442,10 @@ TextureClient::CreateForYCbCr(ISurfaceAllocator* aAllocator, - StereoMode aStereoMode, - TextureFlags aTextureFlags) - { -+ if (!gfx::Factory::AllowedSurfaceSize(aYSize)) { -+ return nullptr; -+ } -+ - RefPtr texture; - if (aAllocator->IsSameProcess()) { - texture = new MemoryTextureClient(aAllocator, gfx::SurfaceFormat::YUV, -diff --git a/gfx/thebes/gfxPlatform.cpp b/gfx/thebes/gfxPlatform.cpp -index 41e4b0c..209a0a8 100644 ---- a/gfx/thebes/gfxPlatform.cpp -+++ b/gfx/thebes/gfxPlatform.cpp -@@ -458,13 +458,18 @@ gfxPlatform::Init() - } - gEverInitialized = true; - -- CrashStatsLogForwarder* logForwarder = new CrashStatsLogForwarder("GraphicsCriticalError"); -- mozilla::gfx::Factory::SetLogForwarder(logForwarder); -- - // Initialize the preferences by creating the singleton. - gfxPrefs::GetSingleton(); - -- logForwarder->SetCircularBufferSize(gfxPrefs::GfxLoggingCrashLength()); -+ auto fwd = new CrashStatsLogForwarder("GraphicsCriticalError"); -+ fwd->SetCircularBufferSize(gfxPrefs::GfxLoggingCrashLength()); -+ -+ mozilla::gfx::Config cfg; -+ cfg.mLogForwarder = fwd; -+ cfg.mMaxTextureSize = gfxPrefs::MaxTextureSize(); -+ cfg.mMaxAllocSize = gfxPrefs::MaxAllocSize(); -+ -+ gfx::Factory::Init(cfg); - - gGfxPlatformPrefsLock = new Mutex("gfxPlatform::gGfxPlatformPrefsLock"); - -@@ -641,6 +646,8 @@ gfxPlatform::Shutdown() - delete mozilla::gfx::Factory::GetLogForwarder(); - mozilla::gfx::Factory::SetLogForwarder(nullptr); - -+ gfx::Factory::ShutDown(); -+ - delete gGfxPlatformPrefsLock; - - gfxPrefs::DestroySingleton(); -diff --git a/gfx/thebes/gfxPrefs.h b/gfx/thebes/gfxPrefs.h -index b7a5fb9..038e1ff 100644 ---- a/gfx/thebes/gfxPrefs.h -+++ b/gfx/thebes/gfxPrefs.h -@@ -209,6 +209,9 @@ private: - DECL_GFX_PREF(Live, "gfx.layerscope.port", LayerScopePort, int32_t, 23456); - // Note that "gfx.logging.level" is defined in Logging.h - DECL_GFX_PREF(Once, "gfx.logging.crash.length", GfxLoggingCrashLength, uint32_t, 6); -+ // The maximums here are quite conservative, we can tighten them if problems show up. -+ DECL_GFX_PREF(Once, "gfx.max-alloc-size", MaxAllocSize, int32_t, (int32_t)500000000); -+ DECL_GFX_PREF(Once, "gfx.max-texture-size", MaxTextureSize, int32_t, (int32_t)32767); - DECL_GFX_PREF(Live, "gfx.perf-warnings.enabled", PerfWarnings, bool, false); - DECL_GFX_PREF(Once, "gfx.work-around-driver-bugs", WorkAroundDriverBugs, bool, true); - --- -2.6.3 - diff --git a/gnu/packages/patches/icecat-CVE-2015-7213-pt1.patch b/gnu/packages/patches/icecat-CVE-2015-7213-pt1.patch deleted file mode 100644 index 854c91b8aa..0000000000 --- a/gnu/packages/patches/icecat-CVE-2015-7213-pt1.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 3f31bf9e243fb3de26e36d6be0bb0153f51c5b2a Mon Sep 17 00:00:00 2001 -From: Jean-Yves Avenard -Date: Wed, 9 Dec 2015 09:54:58 +0100 -Subject: [PATCH] Bug 1206211 - P1. Ensure operation can't overflow. - r=kentuckyfriedtakahe, a=sylvestre - ---- - .../frameworks/av/media/libstagefright/MPEG4Extractor.cpp | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp b/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp -index 22163fa..318152a 100644 ---- a/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp -+++ b/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp -@@ -508,10 +508,13 @@ status_t MPEG4Extractor::readMetaData() { - CHECK_NE(err, (status_t)NO_INIT); - - // copy pssh data into file metadata -- int psshsize = 0; -+ uint64_t psshsize = 0; - for (size_t i = 0; i < mPssh.size(); i++) { - psshsize += 20 + mPssh[i].datalen; - } -+ if (psshsize > kMAX_ALLOCATION) { -+ return ERROR_MALFORMED; -+ } - if (psshsize) { - char *buf = (char*)malloc(psshsize); - char *ptr = buf; --- -2.6.3 - diff --git a/gnu/packages/patches/icecat-CVE-2015-7213-pt2.patch b/gnu/packages/patches/icecat-CVE-2015-7213-pt2.patch deleted file mode 100644 index 20bbd36281..0000000000 --- a/gnu/packages/patches/icecat-CVE-2015-7213-pt2.patch +++ /dev/null @@ -1,27 +0,0 @@ -From bb6870bd6dc3acb183f44360c7cc6488656f47ea Mon Sep 17 00:00:00 2001 -From: Jean-Yves Avenard -Date: Wed, 9 Dec 2015 09:55:16 +0100 -Subject: [PATCH] Bug 1206211 - P2. Abort on OOM. r=kentuckyfriedtakahe, - a=sylvestre - ---- - .../frameworks/av/media/libstagefright/MPEG4Extractor.cpp | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp b/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp -index 318152a..c6aaf1d 100644 ---- a/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp -+++ b/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp -@@ -517,6 +517,9 @@ status_t MPEG4Extractor::readMetaData() { - } - if (psshsize) { - char *buf = (char*)malloc(psshsize); -+ if (!buf) { -+ return ERROR_MALFORMED; -+ } - char *ptr = buf; - for (size_t i = 0; i < mPssh.size(); i++) { - memcpy(ptr, mPssh[i].uuid, 20); // uuid + length --- -2.6.3 - diff --git a/gnu/packages/patches/icecat-CVE-2015-7214.patch b/gnu/packages/patches/icecat-CVE-2015-7214.patch deleted file mode 100644 index 3a56d3d2cd..0000000000 --- a/gnu/packages/patches/icecat-CVE-2015-7214.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 487799700b0b676c2c6b95ad33c8afb8dbd329d8 Mon Sep 17 00:00:00 2001 -From: Bobby Holley -Date: Mon, 14 Dec 2015 15:36:20 -0500 -Subject: [PATCH] Bug 1228950 - Disallow scheme sets on nsHostObjectURI. r=bz, - a=lizzard - ---- - dom/base/nsHostObjectURI.cpp | 9 +++++++++ - dom/base/nsHostObjectURI.h | 2 ++ - 2 files changed, 11 insertions(+) - -diff --git a/dom/base/nsHostObjectURI.cpp b/dom/base/nsHostObjectURI.cpp -index 94b02ff..57b0209 100644 ---- a/dom/base/nsHostObjectURI.cpp -+++ b/dom/base/nsHostObjectURI.cpp -@@ -81,6 +81,15 @@ nsHostObjectURI::Write(nsIObjectOutputStream* aStream) - true); - } - -+NS_IMETHODIMP -+nsHostObjectURI::SetScheme(const nsACString& aScheme) -+{ -+ // Disallow setting the scheme, since that could cause us to be associated -+ // with a different protocol handler that doesn't expect us to be carrying -+ // around a principal with nsIURIWithPrincipal. -+ return NS_ERROR_FAILURE; -+} -+ - // nsIURI methods: - nsresult - nsHostObjectURI::CloneInternal(nsSimpleURI::RefHandlingEnum aRefHandlingMode, -diff --git a/dom/base/nsHostObjectURI.h b/dom/base/nsHostObjectURI.h -index b468d5d..23ff7ab 100644 ---- a/dom/base/nsHostObjectURI.h -+++ b/dom/base/nsHostObjectURI.h -@@ -34,6 +34,8 @@ public: - NS_DECL_NSISERIALIZABLE - NS_DECL_NSICLASSINFO - -+ NS_IMETHOD SetScheme(const nsACString &aProtocol) override; -+ - // Override CloneInternal() and EqualsInternal() - virtual nsresult CloneInternal(RefHandlingEnum aRefHandlingMode, - nsIURI** aClone) override; --- -2.6.3 - diff --git a/gnu/packages/patches/icecat-CVE-2015-7222-pt1.patch b/gnu/packages/patches/icecat-CVE-2015-7222-pt1.patch deleted file mode 100644 index c5d0e4ad60..0000000000 --- a/gnu/packages/patches/icecat-CVE-2015-7222-pt1.patch +++ /dev/null @@ -1,112 +0,0 @@ -From 76e6db3e514350fd146cb04425e669d63b59f889 Mon Sep 17 00:00:00 2001 -From: Gerald Squelart -Date: Wed, 9 Dec 2015 09:59:37 +0100 -Subject: [PATCH] Bug 1216748 - p2. Handle failed malloc in Metadata storage - - r=rillian, a=sylvestre - ---- - .../av/include/media/stagefright/MetaData.h | 2 +- - .../av/media/libstagefright/MetaData.cpp | 35 ++++++++++++++-------- - 2 files changed, 24 insertions(+), 13 deletions(-) - -diff --git a/media/libstagefright/frameworks/av/include/media/stagefright/MetaData.h b/media/libstagefright/frameworks/av/include/media/stagefright/MetaData.h -index 30d969d..0a8ff77 100644 ---- a/media/libstagefright/frameworks/av/include/media/stagefright/MetaData.h -+++ b/media/libstagefright/frameworks/av/include/media/stagefright/MetaData.h -@@ -248,7 +248,7 @@ private: - return mSize <= sizeof(u.reservoir); - } - -- void allocateStorage(size_t size); -+ bool allocateStorage(size_t size); - void freeStorage(); - - void *storage() { -diff --git a/media/libstagefright/frameworks/av/media/libstagefright/MetaData.cpp b/media/libstagefright/frameworks/av/media/libstagefright/MetaData.cpp -index c832c96..cba324d 100644 ---- a/media/libstagefright/frameworks/av/media/libstagefright/MetaData.cpp -+++ b/media/libstagefright/frameworks/av/media/libstagefright/MetaData.cpp -@@ -220,7 +220,7 @@ bool MetaData::findData(uint32_t key, uint32_t *type, - } - - MetaData::typed_data::typed_data() -- : mType(0), -+ : mType(TYPE_NONE), - mSize(0) { - } - -@@ -231,17 +231,19 @@ MetaData::typed_data::~typed_data() { - MetaData::typed_data::typed_data(const typed_data &from) - : mType(from.mType), - mSize(0) { -- allocateStorage(from.mSize); -- memcpy(storage(), from.storage(), mSize); -+ if (allocateStorage(from.mSize)) { -+ memcpy(storage(), from.storage(), mSize); -+ } - } - - MetaData::typed_data &MetaData::typed_data::operator=( - const MetaData::typed_data &from) { - if (this != &from) { - clear(); -- mType = from.mType; -- allocateStorage(from.mSize); -- memcpy(storage(), from.storage(), mSize); -+ if (allocateStorage(from.mSize)) { -+ mType = from.mType; -+ memcpy(storage(), from.storage(), mSize); -+ } - } - - return *this; -@@ -250,16 +252,17 @@ MetaData::typed_data &MetaData::typed_data::operator=( - void MetaData::typed_data::clear() { - freeStorage(); - -- mType = 0; -+ mType = TYPE_NONE; - } - - void MetaData::typed_data::setData( - uint32_t type, const void *data, size_t size) { - clear(); - -- mType = type; -- allocateStorage(size); -- memcpy(storage(), data, size); -+ if (allocateStorage(size)) { -+ mType = type; -+ memcpy(storage(), data, size); -+ } - } - - void MetaData::typed_data::getData( -@@ -269,14 +272,22 @@ void MetaData::typed_data::getData( - *data = storage(); - } - --void MetaData::typed_data::allocateStorage(size_t size) { -+bool MetaData::typed_data::allocateStorage(size_t size) { -+ // Update mSize now, as it is needed by usesReservoir() below. -+ // (mSize will be reset if the allocation fails further below.) - mSize = size; - - if (usesReservoir()) { -- return; -+ return true; - } - - u.ext_data = malloc(mSize); -+ if (!u.ext_data) { -+ mType = TYPE_NONE; -+ mSize = 0; -+ return false; -+ } -+ return true; - } - - void MetaData::typed_data::freeStorage() { --- -2.6.3 - diff --git a/gnu/packages/patches/icecat-CVE-2015-7222-pt2.patch b/gnu/packages/patches/icecat-CVE-2015-7222-pt2.patch deleted file mode 100644 index 688d7f903f..0000000000 --- a/gnu/packages/patches/icecat-CVE-2015-7222-pt2.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 63c353cf8ec6b787936f602532026bd9923a16e4 Mon Sep 17 00:00:00 2001 -From: Gerald Squelart -Date: Wed, 9 Dec 2015 10:00:13 +0100 -Subject: [PATCH] Bug 1216748 - p3. Ensure 'covr' data size cannot create - underflow - r=rillian, a=sylvestre - ---- - .../frameworks/av/media/libstagefright/MPEG4Extractor.cpp | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp b/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp -index c6aaf1d..a69fc14 100644 ---- a/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp -+++ b/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp -@@ -1889,12 +1889,15 @@ status_t MPEG4Extractor::parseChunk(off64_t *offset, int depth) { - if (mFileMetaData != NULL) { - ALOGV("chunk_data_size = %lld and data_offset = %lld", - chunk_data_size, data_offset); -+ const int kSkipBytesOfDataBox = 16; -+ if (chunk_data_size <= kSkipBytesOfDataBox) { -+ return ERROR_MALFORMED; -+ } - sp buffer = new ABuffer(chunk_data_size + 1); - if (mDataSource->readAt( - data_offset, buffer->data(), chunk_data_size) != (ssize_t)chunk_data_size) { - return ERROR_IO; - } -- const int kSkipBytesOfDataBox = 16; - mFileMetaData->setData( - kKeyAlbumArt, MetaData::TYPE_NONE, - buffer->data() + kSkipBytesOfDataBox, chunk_data_size - kSkipBytesOfDataBox); --- -2.6.3 - diff --git a/gnu/packages/patches/icecat-CVE-2015-7222-pt3.patch b/gnu/packages/patches/icecat-CVE-2015-7222-pt3.patch deleted file mode 100644 index 2f3c95623d..0000000000 --- a/gnu/packages/patches/icecat-CVE-2015-7222-pt3.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 0221ef0c389bff196ff59fa18232467d3648b926 Mon Sep 17 00:00:00 2001 -From: Gerald Squelart -Date: Wed, 9 Dec 2015 10:00:32 +0100 -Subject: [PATCH] Bug 1216748 - p4. Check other Metadata::setData uses - - r=rillian, a=sylvestre - -Found only one other use that needed better checks: the size of the pssh -data was only checked after all items were added up; so it would be -possible to create a set of big items such that they create an overflow, -but the final sum looks reasonable. -Instead each item size should be checked, and the sum should also be -checked at each step. ---- - .../frameworks/av/media/libstagefright/MPEG4Extractor.cpp | 7 ++++--- - 1 file changed, 4 insertions(+), 3 deletions(-) - -diff --git a/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp b/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp -index a69fc14..413a495 100644 ---- a/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp -+++ b/media/libstagefright/frameworks/av/media/libstagefright/MPEG4Extractor.cpp -@@ -511,9 +511,10 @@ status_t MPEG4Extractor::readMetaData() { - uint64_t psshsize = 0; - for (size_t i = 0; i < mPssh.size(); i++) { - psshsize += 20 + mPssh[i].datalen; -- } -- if (psshsize > kMAX_ALLOCATION) { -- return ERROR_MALFORMED; -+ if (mPssh[i].datalen > kMAX_ALLOCATION - 20 || -+ psshsize > kMAX_ALLOCATION) { -+ return ERROR_MALFORMED; -+ } - } - if (psshsize) { - char *buf = (char*)malloc(psshsize); --- -2.6.3 - diff --git a/gnu/packages/patches/icecat-freetype-2.6.patch b/gnu/packages/patches/icecat-freetype-2.6.patch deleted file mode 100644 index ef69f2f715..0000000000 --- a/gnu/packages/patches/icecat-freetype-2.6.patch +++ /dev/null @@ -1,14 +0,0 @@ -Adapt to freetype 2.6. This patch copied from upstream, see: -https://bugzilla.mozilla.org/show_bug.cgi?id=1143411 -https://hg.mozilla.org/mozilla-central/rev/afd840d66e6a - ---- a/config/system-headers -+++ b/config/system-headers -@@ -415,6 +415,7 @@ freetype/ftbitmap.h - freetype/ftxf86.h - freetype.h - ftcache.h -+ftfntfmt.h - ftglyph.h - ftsynth.h - ftoutln.h -- cgit v1.2.3 From 8f1640ed8f0fa8d917116cd4b85c47be34b121d4 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 24 Dec 2015 02:16:57 -0500 Subject: gnu: gusb: Update home-page. * gnu/packages/gnome.scm (gusb)[home-page]: Update home-page. --- gnu/packages/gnome.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 8f886fd84f..aa9fb6fded 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3345,7 +3345,7 @@ (define-public gusb (lambda _ (and (zero? (system* "gtkdocize")) (zero? (system* "autoreconf" "-vif")))))))) - (home-page "https://github/hughsie/libgusb") + (home-page "https://github.com/hughsie/libgusb") (synopsis "GLib binding for libusb1") (description "GUsb is a GObject wrapper for libusb1 that makes it easy to do -- cgit v1.2.3 From 55932aeee13827b2df0d0729ee857e422e990a98 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 22 Dec 2015 14:08:41 +0100 Subject: gnu: Add MIME::Charset. * gnu/packages/perl.scm (perl-mime-charset): New variable. --- gnu/packages/perl.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 95aa596cf5..4abd9972fe 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -2839,6 +2839,25 @@ (define-public perl-memoize-expirelru the argument to the CACHESIZE parameter, will be cached.") (license (package-license perl)))) +(define-public perl-mime-charset + (package + (name "perl-mime-charset") + (version "1.012") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/N/NE/NEZUMI/" + "MIME-Charset-" version ".tar.gz")) + (sha256 + (base32 + "1kfc5p4g1x9c0ffhg125wvhravcviny3alwrgnhnrm2a33ad3rff")))) + (build-system perl-build-system) + (home-page "http://search.cpan.org/dist/MIME-Charset") + (synopsis "Charset information for MIME messages") + (description + "@code{MIME::Charset} provides information about character sets used for +MIME messages on Internet.") + (license (package-license perl)))) + (define-public perl-mime-types (package (name "perl-mime-types") -- cgit v1.2.3 From e92468d80386ad862950423ddefc0d9c3bbf6022 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 22 Dec 2015 14:09:20 +0100 Subject: gnu: Add Unicode::LineBreak. * gnu/packages/perl.scm (perl-unicode-linebreak): New variable. --- gnu/packages/perl.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 4abd9972fe..c1ea466e53 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -5838,6 +5838,28 @@ (define-public perl-types-serialiser common serialisation formats such as JSON or CBOR.") (license (package-license perl)))) +(define-public perl-unicode-linebreak + (package + (name "perl-unicode-linebreak") + (version "2015.12") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/N/NE/NEZUMI/" + "Unicode-LineBreak-" version ".tar.gz")) + (sha256 + (base32 + "1d0nnc97irfpab4d3b2lvq22hac118k7zbfrj0lnxkbfwx7122cm")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-mime-charset" ,perl-mime-charset))) + (home-page "http://search.cpan.org/dist/Unicode-LineBreak") + (synopsis "Unicode line breaking algorithm") + (description + "@code{Unicode::LineBreak} implements the line breaking algorithm +described in Unicode Standard Annex #14. The @code{East_Asian_Width} property +defined by Annex #11 is used to determine breaking positions.") + (license (package-license perl)))) + (define-public perl-universal-can (package (name "perl-universal-can") -- cgit v1.2.3 From c47b85de0c76fffd5ff6bff0914a371b4679f04a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 22 Dec 2015 14:12:49 +0100 Subject: gnu: Add String::Print. * gnu/packages/perl.scm (perl-string-print): New variable. --- gnu/packages/perl.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index c1ea466e53..2f63630b94 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -4365,6 +4365,28 @@ (define-public perl-string-rewriteprefix known prefixes.") (license (package-license perl)))) +(define-public perl-string-print + (package + (name "perl-string-print") + (version "0.15") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/M/MA/MARKOV/" + "String-Print-" version ".tar.gz")) + (sha256 + (base32 + "1n9lc5dr66sg89hym47764fyfms7vrxrhwvdps2x8x8gxly7rsdl")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-unicode-linebreak" ,perl-unicode-linebreak))) + (home-page "http://search.cpan.org/dist/String-Print") + (synopsis "String printing alternatives to printf") + (description + "This module inserts values into (translated) strings. It provides +@code{printf} and @code{sprintf} alternatives via both an object-oriented and +a functional interface.") + (license (package-license perl)))) + (define-public perl-sub-exporter (package (name "perl-sub-exporter") -- cgit v1.2.3 From fc2448bf89c98cd42ee6b5c71d7513568000977b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 22 Dec 2015 14:30:27 +0100 Subject: gnu: Add Log::Report::Optional. * gnu/packages/perl.scm (perl-log-report-optional): New variable. --- gnu/packages/perl.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 2f63630b94..a5175ece35 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -2770,6 +2770,31 @@ (define-public perl-json-xs versa.") (license (package-license perl)))) +(define-public perl-log-report-optional + (package + (name "perl-log-report-optional") + (version "1.01") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/M/MA/MARKOV/" + "Log-Report-Optional-" version ".tar.gz")) + (sha256 + (base32 + "1f4yi4dgzqjc79vrh4f2phdj57xxgk8hd2psx77214i4m5av408f")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-string-print" ,perl-string-print))) + (home-page "http://search.cpan.org/dist/Log-Report-Optional") + (synopsis "Log::Report in the lightest form") + (description + "This module allows libraries to have a dependency to a small module +instead of the full Log-Report distribution. The full power of +@code{Log::Report} is only released when the main program uses that module. +In that case, the module using the 'Optional' will also use the full +@code{Log::Report}, otherwise the dressed-down @code{Log::Report::Minimal} +version.") + (license (package-license perl)))) + (define-public perl-list-allutils (package (name "perl-list-allutils") -- cgit v1.2.3 From dd686c0838c9685bc1307d74e61e8f2c3c5fc60a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 22 Dec 2015 14:30:52 +0100 Subject: gnu: Add Log::Report. * gnu/packages/perl.scm (perl-log-report): New variable. --- gnu/packages/perl.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index a5175ece35..bac20ef8b4 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -2795,6 +2795,29 @@ (define-public perl-log-report-optional version.") (license (package-license perl)))) +(define-public perl-log-report + (package + (name "perl-log-report") + (version "1.10") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/M/MA/MARKOV/" + "Log-Report-" version ".tar.gz")) + (sha256 + (base32 + "1jjx1ari3a7ixsyan91b6n7lmjq6dy5223k3x2ah18qbxvw4caap")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-devel-globaldestruction" ,perl-devel-globaldestruction) + ("perl-log-report-optional" ,perl-log-report-optional) + ("perl-string-print" ,perl-string-print))) + (home-page "http://search.cpan.org/dist/Log-Report") + (synopsis "Get messages to users and logs") + (description + "@code{Log::Report} combines three tasks which are closely related in +one: logging, exceptions, and translations.") + (license (package-license perl)))) + (define-public perl-list-allutils (package (name "perl-list-allutils") -- cgit v1.2.3 From 649e1676bc2369c43bae12b5c5dd74abe6234720 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 22 Dec 2015 14:53:15 +0100 Subject: gnu: Add XML::Compile::Tester. * gnu/packages/xml.scm (perl-xml-compile-tester): New variable. --- gnu/packages/xml.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 4e76cbc3c8..ecf079db4d 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -374,6 +374,29 @@ (define-public perl-xml-dom that conforms to the API of the Document Object Model.") (home-page "http://search.cpan.org/~tjmather/XML-DOM-1.44/lib/XML/DOM.pm"))) +(define-public perl-xml-compile-tester + (package + (name "perl-xml-compile-tester") + (version "0.90") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/M/MA/MARKOV/" + "XML-Compile-Tester-" version ".tar.gz")) + (sha256 + (base32 + "1bcl8x8cyacqv9yjp97aq9qq85sy8wv78kd8c16yd9yw3by4cpp1")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-log-report" ,perl-log-report) + ("perl-test-deep" ,perl-test-deep))) + (home-page "http://search.cpan.org/dist/XML-Compile-Tester") + (synopsis "XML::Compile related regression testing") + (description + "The @code{XML::Compile} module suite has extensive regression testing. +This module provide functions which simplify writing tests for +@code{XML::Compile} related distributions.") + (license (package-license perl)))) + (define-public pugixml (package (name "pugixml") -- cgit v1.2.3 From b494a5f1bd63fe302cd20a0af01c3ad93fa42b9f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 22 Dec 2015 14:53:43 +0100 Subject: gnu: Add XML::Compile. * gnu/packages/xml.scm (perl-xml-compile): New variable. --- gnu/packages/xml.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index ecf079db4d..78ce821883 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -397,6 +397,31 @@ (define-public perl-xml-compile-tester @code{XML::Compile} related distributions.") (license (package-license perl)))) +(define-public perl-xml-compile + (package + (name "perl-xml-compile") + (version "1.51") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/M/MA/MARKOV/" + "XML-Compile-" version ".tar.gz")) + (sha256 + (base32 + "06fj4zf0yh4kf3kx4bhwrmrjr6al40nasasbgfhn8f1zxwkmm8f2")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-log-report" ,perl-log-report) + ("perl-xml-compile-tester" ,perl-xml-compile-tester) + ("perl-xml-libxml" ,perl-xml-libxml) + ("perl-test-deep" ,perl-test-deep))) + (home-page "http://search.cpan.org/dist/XML-Compile") + (synopsis "Compilation-based XML processing") + (description + "@code{XML::Compile} can be used to translate a Perl data-structure into +XML or XML into a Perl data-structure, both directions under rigid control by +a schema.") + (license (package-license perl)))) + (define-public pugixml (package (name "pugixml") -- cgit v1.2.3 From a05996e00094caecd87fea4f59fb07cd9b2cc656 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 22 Dec 2015 16:04:16 +0100 Subject: gnu: Add HTML::Template. * gnu/packages/web.scm (perl-html-template): New variable. --- gnu/packages/web.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index e6659ec148..593fe3b857 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -1894,6 +1894,30 @@ (define-public perl-html-tagset kinds of HTML parsing operations.") (home-page "http://search.cpan.org/dist/HTML-Tagset/"))) +(define-public perl-html-template + (package + (name "perl-html-template") + (version "2.95") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/W/WO/WONKO/" + "HTML-Template-" version ".tar.gz")) + (sha256 + (base32 + "07ahpfgidxsw2yb7y8i7bbr8s64aq6qgq832h9jswmksxbd0l43q")))) + (build-system perl-build-system) + (home-page "http://search.cpan.org/dist/HTML-Template") + (synopsis "HTML-like templates") + (description + "This module attempts to make using HTML templates simple and natural. +It extends standard HTML with a few new HTML-esque tags: @code{}, +@code{}, @code{}, @code{}, +@code{} and @code{}. The file written with HTML and +these new tags is called a template. Using this module you fill in the values +for the variables, loops and branches declared in the template. This allows +you to separate design from the data.") + (license (package-license perl)))) + (define-public perl-http-body (package (name "perl-http-body") -- cgit v1.2.3 From 8aad646637566d8468ae1154407539f8f83a91d6 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 22 Dec 2015 16:04:50 +0100 Subject: gnu: Add File::Slurp::Tiny. * gnu/packages/perl.scm (perl-file-slurp-tiny): New variable. --- gnu/packages/perl.scm | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index bac20ef8b4..6c0b4d2f6c 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -2344,6 +2344,24 @@ (define-public perl-file-slurp file names in a directory.") (license (package-license perl)))) +(define-public perl-file-slurp-tiny + (package + (name "perl-file-slurp-tiny") + (version "0.004") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/L/LE/LEONT/" + "File-Slurp-Tiny-" version ".tar.gz")) + (sha256 + (base32 + "07kzfmibl43dq4c803f022g2rcfv4nkjgipxclz943mzxaz9aaa5")))) + (build-system perl-build-system) + (home-page "http://search.cpan.org/dist/File-Slurp-Tiny") + (synopsis "Simple file reader and writer") + (description + "This module provides functions for fast reading and writing of files.") + (license (package-license perl)))) + (define-public perl-file-temp (package (name "perl-file-temp") -- cgit v1.2.3 From f7c4dc2f55ff2b984577dde17d1c08c7cbcad113 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 22 Dec 2015 16:13:21 +0100 Subject: gnu: Add XML::LibXML::Simple. * gnu/packages/xml.scm (perl-xml-libxml-simple): New variable. --- gnu/packages/xml.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 78ce821883..c46f4d465b 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -223,6 +223,28 @@ (define-public perl-xml-libxml XML parser and the high performance DOM implementation.") (license (package-license perl)))) +(define-public perl-xml-libxml-simple + (package + (name "perl-xml-libxml-simple") + (version "0.95") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/M/MA/MARKOV/" + "XML-LibXML-Simple-" version ".tar.gz")) + (sha256 + (base32 + "0qqfqj5bgqmh1j4iv8dwl3g00nsmcvf2b7w1d09k9d77rrb249xi")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-file-slurp-tiny" ,perl-file-slurp-tiny) + ("perl-xml-libxml" ,perl-xml-libxml))) + (home-page "http://search.cpan.org/dist/XML-LibXML-Simple") + (synopsis "XML::LibXML based XML::Simple clone") + (description + "This package provides the same API as @code{XML::Simple} but is based on +@code{XML::LibXML}.") + (license (package-license perl)))) + (define-public perl-xml-namespacesupport (package (name "perl-xml-namespacesupport") -- cgit v1.2.3 From c1d41b5df33a164b0bbfd0dbb9bdb897ee473660 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 22 Dec 2015 16:14:07 +0100 Subject: gnu: Add XML::Compile::Cache. * gnu/packages/xml.scm (perl-xml-compile-cache): New variable. --- gnu/packages/xml.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index c46f4d465b..7eada2bcbb 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -444,6 +444,29 @@ (define-public perl-xml-compile a schema.") (license (package-license perl)))) +(define-public perl-xml-compile-cache + (package + (name "perl-xml-compile-cache") + (version "1.04") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/M/MA/MARKOV/" + "XML-Compile-Cache-" version ".tar.gz")) + (sha256 + (base32 + "1689dm54n7wb0n0cl9n77vk0kvg0mcckn2hz9ahigjhvazah8740")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-log-report" ,perl-log-report) + ("perl-xml-compile" ,perl-xml-compile) + ("perl-xml-compile-tester" ,perl-xml-compile-tester) + ("perl-xml-libxml-simple" ,perl-xml-libxml-simple))) + (home-page "http://search.cpan.org/dist/XML-Compile-Cache") + (synopsis "Cache compiled XML translators") + (description + "This package provides methods to cache compiled XML translators.") + (license (package-license perl)))) + (define-public pugixml (package (name "pugixml") -- cgit v1.2.3 From baeab9b8b960105e91d8b8ef5a0851dc9f4e99bd Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 22 Dec 2015 22:15:09 +0100 Subject: gnu: Add XML::Compile::SOAP. * gnu/packages/xml.scm (perl-xml-compile-soap): New variable. --- gnu/packages/xml.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 7eada2bcbb..c534de44e6 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -467,6 +467,34 @@ (define-public perl-xml-compile-cache "This package provides methods to cache compiled XML translators.") (license (package-license perl)))) +(define-public perl-xml-compile-soap + (package + (name "perl-xml-compile-soap") + (version "3.13") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/M/MA/MARKOV/" + "XML-Compile-SOAP-" version ".tar.gz")) + (sha256 + (base32 + "08qw63l78040nh37xzapbqp43g6s5l67bvskf3dyyizlarjx5mi4")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-file-slurp-tiny" ,perl-file-slurp-tiny) + ("perl-libwww" ,perl-libwww) + ("perl-log-report" ,perl-log-report) + ("perl-xml-compile" ,perl-xml-compile) + ("perl-xml-compile-cache" ,perl-xml-compile-cache) + ("perl-xml-compile-tester" ,perl-xml-compile-tester))) + (home-page "http://search.cpan.org/dist/XML-Compile-SOAP") + (synopsis "Base-class for SOAP implementations") + (description + "This module provides a class to handle the SOAP protocol. The first +implementation is @url{SOAP1.1, +http://www.w3.org/TR/2000/NOTE-SOAP-20000508/}, which is still most often +used.") + (license (package-license perl)))) + (define-public pugixml (package (name "pugixml") -- cgit v1.2.3 From 6a9149489860785869cdded60d1cf31278c23098 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 22 Dec 2015 22:15:38 +0100 Subject: gnu: Add XML::Compile::WSDL11. * gnu/packages/xml.scm (perl-xml-compile-wsdl11): New variable. --- gnu/packages/xml.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index c534de44e6..8288869a9f 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -495,6 +495,32 @@ (define-public perl-xml-compile-soap used.") (license (package-license perl)))) +(define-public perl-xml-compile-wsdl11 + (package + (name "perl-xml-compile-wsdl11") + (version "3.04") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/M/MA/MARKOV/" + "XML-Compile-WSDL11-" version ".tar.gz")) + (sha256 + (base32 + "0pyikwnfwpangvnkf5dbdagy4z93ag9824f1ax5qaibc3ghca8kv")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-log-report" ,perl-log-report) + ("perl-xml-compile" ,perl-xml-compile) + ("perl-xml-compile-cache" ,perl-xml-compile-cache) + ("perl-xml-compile-soap" ,perl-xml-compile-soap))) + (home-page "http://search.cpan.org/dist/XML-Compile-WSDL11") + (synopsis "Create SOAP messages defined by WSDL 1.1") + (description + "This module understands WSDL version 1.1. A WSDL file defines a set of +messages to be send and received over SOAP connections. This involves +encoding of the message to be send into XML, sending the message to the +server, collect the answer, and finally decoding the XML to Perl.") + (license (package-license perl)))) + (define-public pugixml (package (name "pugixml") -- cgit v1.2.3 From c493679f9a1000049f81d74b9220aac566ba11ac Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 23 Dec 2015 08:45:56 +0100 Subject: gnu: Add Yoshimi. * gnu/packages/music.scm (yoshimi): New variable. --- gnu/packages/music.scm | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 67a29dc1cf..14590f4e22 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -67,6 +67,7 @@ (define-module (gnu packages music) #:use-module (gnu packages python) #:use-module (gnu packages qt) #:use-module (gnu packages rdf) + #:use-module (gnu packages readline) #:use-module (gnu packages rsync) #:use-module (gnu packages tcl) #:use-module (gnu packages texinfo) @@ -905,3 +906,60 @@ (define-public zynaddsubfx three synthesizer engines, multitimbral and polyphonic synths, microtonal capabilities, custom envelopes, effects, etc.") (license license:gpl2))) + +(define-public yoshimi + (package + (name "yoshimi") + (version "1.3.7.1") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/yoshimi/" + (version-major+minor version) + "/yoshimi-" version ".tar.bz2")) + (sha256 + (base32 + "13xc1x8jrr2rn26jx4dini692ww3771d5j5xf7f56ixqr7mmdhvz")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ; there are no tests + #:configure-flags + (list (string-append "-DCMAKE_INSTALL_DATAROOTDIR=" + (assoc-ref %outputs "out") "/share")) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'enter-dir + (lambda _ (chdir "src") #t)) + ;; Move SSE compiler optimization flags from generic target to + ;; athlon64 and core2 targets, because otherwise the build would fail + ;; on non-Intel machines. + (add-after 'unpack 'remove-sse-flags-from-generic-target + (lambda _ + (substitute* "src/CMakeLists.txt" + (("-msse -msse2 -mfpmath=sse") "") + (("-march=(athlon64|core2)" flag) + (string-append flag " -msse -msse2 -mfpmath=sse"))) + #t))))) + (inputs + `(("boost" ,boost) + ("fftwf" ,fftwf) + ("alsa-lib" ,alsa-lib) + ("jack" ,jack-1) + ("fontconfig" ,fontconfig) + ("minixml" ,minixml) + ("mesa" ,mesa) + ("fltk" ,fltk) + ("lv2" ,lv2) + ("readline" ,readline) + ("ncurses" ,ncurses) + ("cairo" ,cairo) + ("zlib" ,zlib))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "http://yoshimi.sourceforge.net/") + (synopsis "Multi-paradigm software synthesizer") + (description + "Yoshimi is a fork of ZynAddSubFX, a feature heavy realtime software +synthesizer. It offers three synthesizer engines, multitimbral and polyphonic +synths, microtonal capabilities, custom envelopes, effects, etc. Yoshimi +improves on support for JACK features, such as JACK MIDI.") + (license license:gpl2))) -- cgit v1.2.3 From 409be57b091e6cb8cb19e668eac09832caa780de Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 24 Dec 2015 09:53:07 +0100 Subject: gnu: lilypond: Build info pages with images. * gnu/packages/music.scm (lilypond)[arguments]: Set "conf" and "out" to "www"; rename phase "hardcode-path-to-gs" to "fix-path-references"; fix reference to "/bin/sh"; add phase "install-info". --- gnu/packages/music.scm | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 14590f4e22..8ae9bc0aa8 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -268,27 +268,34 @@ (define-public lilypond (arguments `(#:tests? #f ; out-test/collated-files.html fails #:out-of-source? #t + #:make-flags '("conf=www") ;to generate images for info manuals #:configure-flags - (list (string-append "--with-texgyre-dir=" + (list "CONFIGURATION=www" + (string-append "--with-texgyre-dir=" (assoc-ref %build-inputs "font-tex-gyre") "/share/fonts/opentype/")) #:phases (modify-phases %standard-phases - (add-after 'unpack 'hardcode-path-to-gs - (lambda* (#:key inputs #:allow-other-keys) + (add-after 'unpack 'fix-path-references + (lambda _ (substitute* "scm/backend-library.scm" (("\\(search-executable '\\(\"gs\"\\)\\)") - (string-append "\"" - (assoc-ref inputs "ghostscript") - "/bin/gs" - "\"" ))) + (string-append "\"" (which "gs") "\"")) + (("\"/bin/sh\"") + (string-append "\"" (which "sh") "\""))) #t)) (add-before 'configure 'prepare-configuration (lambda _ (substitute* "configure" (("SHELL=/bin/sh") "SHELL=sh")) - (setenv "out" "") - #t))))) + (setenv "out" "www") + (setenv "conf" "www") + #t)) + (add-after 'install 'install-info + (lambda _ + (zero? (system* "make" + "-j" (number->string (parallel-job-count)) + "conf=www" "install-info"))))))) (inputs `(("guile" ,guile-1.8) ("font-dejavu" ,font-dejavu) -- cgit v1.2.3 From 398abcf81a9cede6d073bde01a1cfe9171e06167 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 24 Dec 2015 09:56:21 +0100 Subject: gnu: lilypond: Update to 2.19.33. * gnu/packages/music.scm (lilypond): Update to 2.19.33. --- gnu/packages/music.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 8ae9bc0aa8..7d243f579e 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -254,7 +254,7 @@ (define-public klick (define-public lilypond (package (name "lilypond") - (version "2.19.27") + (version "2.19.33") (source (origin (method url-fetch) (uri (string-append @@ -263,7 +263,7 @@ (define-public lilypond name "-" version ".tar.gz")) (sha256 (base32 - "11v4jr4qj1jpqvjw1ww7riv8pxfyasif8mf16l447f1xq1ifhkhs")))) + "0s4vbbfy4xwq4da4kmlnndalmcyx2jaz7y8praah2146qbnr90xh")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; out-test/collated-files.html fails -- cgit v1.2.3 From 96250294012c2f1520b67f12ea80bfd6b98075a2 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 24 Dec 2015 13:43:32 +0100 Subject: gnu: Add Bristol. * gnu/packages/music.scm (bristol): New variable. --- gnu/packages/music.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 7d243f579e..3787576aea 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -645,6 +645,38 @@ (define-public setbfree Laurens Hammond and Don Leslie.") (license license:gpl2+))) +(define-public bristol + (package + (name "bristol") + (version "0.60.11") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/bristol/bristol/" + (version-major+minor version) + "/bristol-" version ".tar.gz")) + (sha256 + (base32 + "1fi2m4gmvxdi260821y09lxsimq82yv4k5bbgk3kyc3x1nyhn7vx")))) + (build-system gnu-build-system) + (inputs + `(("alsa-lib" ,alsa-lib) + ("jack" ,jack-1) + ("liblo" ,liblo) + ("libx11" ,libx11))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "http://bristol.sourceforge.net/") + (synopsis "Synthesizer emulator") + (description + "Bristol is an emulation package for a number of different 'classic' +synthesizers including additive and subtractive and a few organs. The +application consists of the engine, which is called bristol, and its own GUI +library called brighton that represents all the emulations. There are +currently more than twenty different emulations; each does sound different +although the author maintains that the quality and accuracy of each emulation +is subjective.") + (license license:gpl3+))) + (define-public tuxguitar (package (name "tuxguitar") -- cgit v1.2.3 From e1921a384c3a1699ab3436e0c5f443da8e2238ad Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 24 Dec 2015 01:38:53 -0500 Subject: gnu: eudev: Update home-page URL. * gnu/packages/linux.scm (eudev)[home-page]: Add up-to-date URL. --- gnu/packages/linux.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 535bd84aa1..1fc3c4e45f 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -1568,7 +1568,7 @@ (define-public eudev ("gperf" ,gperf))) (inputs `(("kmod" ,kmod))) - (home-page "http://www.gentoo.org/proj/en/eudev/") + (home-page "https://wiki.gentoo.org/wiki/Project:Eudev") (synopsis "Userspace device management") (description "Udev is a daemon which dynamically creates and removes device nodes from /dev/, handles hotplug events and loads drivers at boot -- cgit v1.2.3 From fc6fdc05cb73b34600cf4d4cebc6b02cf0c1cd65 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 24 Dec 2015 01:55:50 -0500 Subject: gnu: exim: Add alternate URL. * gnu/packages/mail.scm (exim)[source]: Add alternate URL. --- gnu/packages/mail.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 89bcef7ff3..7dcfb702bc 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -601,8 +601,10 @@ (define-public exim (source (origin (method url-fetch) - (uri (string-append - "ftp://ftp.exim.org/pub/exim/exim4/exim-" version ".tar.bz2")) + (uri (list (string-append "ftp://ftp.exim.org/pub/exim/exim4/exim-" + version ".tar.bz2") + (string-append "ftp://ftp.exim.org/pub/exim/exim4/old/exim-" + version ".tar.bz2"))) (sha256 (base32 "195a3ll5ck9viazf9pvgcyc0sziln5g0ggmlm6ax002lphmiy88k")))) (build-system gnu-build-system) -- cgit v1.2.3 From 513f8ab4f3d6c080c48eee86333bf89bc896b9ab Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 24 Dec 2015 01:56:54 -0500 Subject: gnu: exim: Update to 4.86. * gnu/packages/mail.scm (exim): Update to 4.86. --- gnu/packages/mail.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 7dcfb702bc..9826b0de5a 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -597,7 +597,7 @@ (define-public msmtp (define-public exim (package (name "exim") - (version "4.85") + (version "4.86") (source (origin (method url-fetch) @@ -606,7 +606,8 @@ (define-public exim (string-append "ftp://ftp.exim.org/pub/exim/exim4/old/exim-" version ".tar.bz2"))) (sha256 - (base32 "195a3ll5ck9viazf9pvgcyc0sziln5g0ggmlm6ax002lphmiy88k")))) + (base32 + "0mn4bxih9slrmll5262ayhf41ji43pjf1rv0y6xpy6x55v7g5k7i")))) (build-system gnu-build-system) (inputs `(("bdb" ,bdb) -- cgit v1.2.3 From 8f26f23926181b75fd8c12d251ad022952523a73 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 24 Dec 2015 12:13:05 -0500 Subject: gnu: hevea: Update URL. * gnu/packages/ocaml.scm (hevea)[source]: Update URL. --- 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 7f80fc8a32..5531867964 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -285,7 +285,7 @@ (define-public hevea (version "2.23") (source (origin (method url-fetch) - (uri (string-append "http://hevea.inria.fr/distri/" + (uri (string-append "http://hevea.inria.fr/old/" name "-" version ".tar.gz")) (sha256 (base32 -- cgit v1.2.3 From 8fa16f63e75c968e55274abffbc15d3184c66a15 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 24 Dec 2015 12:38:23 -0500 Subject: gnu: libev: Update source URL. * gnu/packages/libevent.scm (libev)[source]: Update URL. --- gnu/packages/libevent.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/libevent.scm b/gnu/packages/libevent.scm index a193959e60..752963077b 100644 --- a/gnu/packages/libevent.scm +++ b/gnu/packages/libevent.scm @@ -68,7 +68,7 @@ (define-public libev (version "4.20") (source (origin (method url-fetch) - (uri (string-append "http://dist.schmorp.de/libev/libev-" + (uri (string-append "http://dist.schmorp.de/libev/Attic/libev-" version ".tar.gz")) (sha256 -- cgit v1.2.3 From 4150ac88bc27dd0c27255b13f8b537a6028918a6 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 24 Dec 2015 12:46:24 -0500 Subject: gnu: libsodium: Add alternate URL. * gnu/packages/crypto.scm (libsodium)[source]: Add alternate URL. --- gnu/packages/crypto.scm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index d4742ca0e4..a8d675be4c 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -30,9 +30,12 @@ (define-public libsodium (version "1.0.0") (source (origin (method url-fetch) - (uri (string-append - "http://download.libsodium.org/libsodium/releases/libsodium-" - version ".tar.gz")) + (uri (list (string-append + "http://download.libsodium.org/libsodium/" + "releases/libsodium-" version ".tar.gz") + (string-append + "https://download.libsodium.org/libsodium/" + "releases/old/libsodium-" version ".tar.gz"))) (sha256 (base32 "19f9vf0shfp4rc4l791r6xjg06z4i8psj1zkjkm3z5b640yzxlff")))) -- cgit v1.2.3 From d4ec43392bae00e1167c282d60c2f9e7e8c24c78 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 24 Dec 2015 13:02:17 -0500 Subject: gnu: lynx: Update source URL. * gnu/packages/lynx.scm (lynx)[source]: Update URL. --- gnu/packages/lynx.scm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/lynx.scm b/gnu/packages/lynx.scm index 713f5d5625..3182b3e3f9 100644 --- a/gnu/packages/lynx.scm +++ b/gnu/packages/lynx.scm @@ -37,8 +37,7 @@ (define-public lynx (source (origin (method url-fetch) (uri (string-append - "http://lynx.isc.org/lynx" - (substring version 0 (string-index version char-set:letter)) + "http://invisible-mirror.net/archives/lynx/tarballs" "/lynx" version ".tar.bz2")) (sha256 (base32 "1rxysl08acqll5b87368f04kckl8sggy1qhnq59gsxyny1ffg039")))) -- cgit v1.2.3 From 5b0bcecdd17188cef6977bd17583ff2b5f7886e5 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 24 Dec 2015 16:09:19 -0500 Subject: gnu: moreutils: Update to 0.57. * gnu/packages/moreutils.scm (moreutils): Update to 0.57. --- gnu/packages/moreutils.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/moreutils.scm b/gnu/packages/moreutils.scm index 4ea6df3dcc..eebb20790d 100644 --- a/gnu/packages/moreutils.scm +++ b/gnu/packages/moreutils.scm @@ -28,7 +28,7 @@ (define-module (gnu packages moreutils) (define-public moreutils (package (name "moreutils") - (version "0.55") + (version "0.57") (source (origin (method url-fetch) (uri (string-append @@ -36,7 +36,7 @@ (define-public moreutils version ".orig.tar.gz")) (sha256 (base32 - "1dcah2jx8dbznn8966xl7sf1jrld2qfh6l6xcmx9dsnf8p8mr7fs")))) + "078dpkwwwrv8hxnylbc901kib2d1rr3hsja37j6dlpjfcfq58z9s")))) (build-system gnu-build-system) (inputs `(("perl" ,perl) ("libxml2" ,libxml2) -- cgit v1.2.3 From 97a79b19d1f1ab1b82da66b345ecbfe84651e82c Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 24 Dec 2015 16:17:59 -0500 Subject: gnu: opus-tools: Update source URL. * gnu/packages/xiph.sch (opus-tools)[source]: Update URL. --- gnu/packages/xiph.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/xiph.scm b/gnu/packages/xiph.scm index 3e4d6687ea..bc2294e58c 100644 --- a/gnu/packages/xiph.scm +++ b/gnu/packages/xiph.scm @@ -320,7 +320,7 @@ (define opus-tools (source (origin (method url-fetch) (uri (string-append - "ftp://ftp.mozilla.org/pub/mozilla.org/opus/opus-tools-" + "http://downloads.xiph.org/releases/opus/opus-tools-" version ".tar.gz")) (sha256 (base32 -- cgit v1.2.3 From 8d479d27ca74f86a69b48d385f3d9537adf5392b Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 24 Dec 2015 01:03:53 -0500 Subject: gnu: colordiff: Update source URL. * gnu/packages/patchutils.scm (colordiff)[source]: Update URL. --- gnu/packages/patchutils.scm | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/patchutils.scm b/gnu/packages/patchutils.scm index 319ccb21c2..ff31891207 100644 --- a/gnu/packages/patchutils.scm +++ b/gnu/packages/patchutils.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 Eric Bavier +;;; Copyright © 2015 Leo Famulari ;;; ;;; This file is part of GNU Guix. ;;; @@ -151,12 +152,13 @@ (define-public colordiff (name "colordiff") (version "1.0.13") (source - (origin - (method url-fetch) - (uri (string-append "http://www.colordiff.org/colordiff-" - version ".tar.gz")) + (origin + (method url-fetch) + (uri (list (string-append "http://www.colordiff.org/archive/colordiff-" + version ".tar.gz"))) (sha256 - (base32 "0akcz1p3klsjnhwcqdfq4grs6paljc5c0jzr3mqla5f862hhaa6f")))) + (base32 + "0akcz1p3klsjnhwcqdfq4grs6paljc5c0jzr3mqla5f862hhaa6f")))) (build-system gnu-build-system) (arguments `(#:tests? #f -- cgit v1.2.3 From 3759bfad329df4e9e0dd97ce93807990f39059f3 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 24 Dec 2015 01:05:58 -0500 Subject: gnu: colordiff: Update to 1.0.16. * gnu/packages/patchutils.scm (colordiff): Update to 1.0.16. --- gnu/packages/patchutils.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/patchutils.scm b/gnu/packages/patchutils.scm index ff31891207..31a735fd5d 100644 --- a/gnu/packages/patchutils.scm +++ b/gnu/packages/patchutils.scm @@ -150,7 +150,7 @@ (define-public quilt (define-public colordiff (package (name "colordiff") - (version "1.0.13") + (version "1.0.16") (source (origin (method url-fetch) @@ -158,7 +158,7 @@ (define-public colordiff version ".tar.gz"))) (sha256 (base32 - "0akcz1p3klsjnhwcqdfq4grs6paljc5c0jzr3mqla5f862hhaa6f")))) + "12qkkw13261dra8pg7mzx4r8p9pb0ajb090bib9j1s6hgphwzwga")))) (build-system gnu-build-system) (arguments `(#:tests? #f -- cgit v1.2.3 From d642053386bb39651dc9697d5fdfe36a6c8f2f3e Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 26 Dec 2015 01:55:14 -0500 Subject: gnu: wmctrl: Update source URL. * gnu/packages/xdisorg.scm (wmctrl)[source]: Update URL. --- gnu/packages/xdisorg.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 0b1eb20238..c426a01df8 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -290,7 +290,7 @@ (define-public wmctrl (source (origin (method url-fetch) (uri (string-append - "http://tomas.styblo.name/wmctrl/dist/wmctrl-" + "https://sites.google.com/site/tstyblo/wmctrl/wmctrl-" version ".tar.gz")) (sha256 (base32 -- cgit v1.2.3 From 20c043587a105866754a08737bf22e761ecb2a20 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 26 Dec 2015 02:17:46 -0500 Subject: gnu: xlockmore: Add alternate URL. * gnu/packages/xdisorg.scm (xlockmore)[source]: Add alternate URL. --- gnu/packages/xdisorg.scm | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index c426a01df8..18fbe1db1f 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -411,8 +411,13 @@ (define-public xlockmore (version "5.45") (source (origin (method url-fetch) - (uri (string-append "http://www.tux.org/~bagleyd/xlock/xlockmore-" - version "/xlockmore-" version ".tar.bz2")) + (uri (list (string-append + "http://www.tux.org/~bagleyd/xlock/xlockmore-" + version ".tar.xz") + (string-append + "http://www.tux.org/~bagleyd/xlock/xlockmore-old" + "/xlockmore-" version + "/xlockmore-" version ".tar.bz2"))) (sha256 (base32 "1xqm61bbfn5q056w57vp16gvai8nqpcw570ysxlm5h46nh6ai0bz")))) -- cgit v1.2.3 From 75bae747cc92478626a4284241b16136a3afa2ee Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 26 Dec 2015 02:22:20 -0500 Subject: gnu: xlockmore: Update to 5.46. * gnu/packages/xdisorg.scm (xlockmore): Update to 5.46. --- gnu/packages/xdisorg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 18fbe1db1f..dc01637e4f 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -408,7 +408,7 @@ (define-public unclutter (define-public xlockmore (package (name "xlockmore") - (version "5.45") + (version "5.46") (source (origin (method url-fetch) (uri (list (string-append @@ -420,7 +420,7 @@ (define-public xlockmore "/xlockmore-" version ".tar.bz2"))) (sha256 (base32 - "1xqm61bbfn5q056w57vp16gvai8nqpcw570ysxlm5h46nh6ai0bz")))) + "1ps0dmnh912x8mwns94y2607xk90rjxrjn5s1pkmmpjg5h9bxcrj")))) (build-system gnu-build-system) (arguments '(#:configure-flags (list (string-append "--enable-appdefaultdir=" -- cgit v1.2.3 From 4d6b8da717ae30164809605215ebf812a4a39936 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 15 Dec 2015 22:20:32 +0200 Subject: gnu: cups-filters: Update to 1.4.0. (fixes CVE-2015-8560) * gnu/packages/cups.scm (cups-filters): Update to 1.4.0. --- gnu/packages/cups.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm index 9dcb75ad91..ff3d1528c6 100644 --- a/gnu/packages/cups.scm +++ b/gnu/packages/cups.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Ricardo Wurmus ;;; Copyright © 2015 Ludovic Courtès +;;; Copyright © 2015 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -37,7 +38,7 @@ (define-module (gnu packages cups) (define-public cups-filters (package (name "cups-filters") - (version "1.0.75") + (version "1.4.0") (source (origin (method url-fetch) (uri @@ -45,7 +46,7 @@ (define-public cups-filters "cups-filters-" version ".tar.xz")) (sha256 (base32 - "0wrh9jmd2rm4z8c8nb50llb10shj1hik9vwqnr0djcvf63mfqsbw")) + "16jpqqlixlv2dxqv8gak5qg4qnsnw4p745xr6rhw9dgylf13z9ha")) (modules '((guix build utils))) (snippet ;; install backends, banners and filters to cups-filters output -- cgit v1.2.3 From fe08b6e1eb9efbf993016945d47e8a0427c385be Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 17 Dec 2015 16:52:46 +0200 Subject: gnu: gdk-pixbuf: Update to 2.32.3. (fixes CVE-2015-4491) * gnu/packages/gtk.scm (gdk-pixbuf): Update to 2.32.3. --- gnu/packages/gtk.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 279c06294e..f85ea1970a 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -385,7 +385,7 @@ (define-public gtksourceview (define-public gdk-pixbuf (package (name "gdk-pixbuf") - (version "2.32.1") + (version "2.32.3") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -393,7 +393,7 @@ (define-public gdk-pixbuf name "-" version ".tar.xz")) (sha256 (base32 - "1g7kjxv67jcdasi14n7jan4icrnnppd1m99wrdmpv32k4m7vfcj4")))) + "0cfh87aqyqbfcwpbv1ihgmgfcn66il5q2n8yjyl8gxkjmkqp2rrb")))) (build-system gnu-build-system) (arguments '(#:configure-flags '("--with-x11") @@ -403,9 +403,9 @@ (define-public gdk-pixbuf 'unpack 'disable-failing-tests (lambda _ (substitute* "tests/Makefile.in" - ;; XXX FIXME: This test fails on some machines with: - ;; GLib-FATAL-ERROR: gmem.c:103: failed to allocate - ;; 6039798016 bytes + ;; XXX FIXME: This test fails on armhf machines with: + ;; SKIP Not enough memory to load bitmap image + ;; ERROR: cve-2015-4491 - too few tests run (expected 4, got 2) (("cve-2015-4491\\$\\(EXEEXT\\) ") "") ;; XXX FIXME: This test fails with: ;; ERROR:pixbuf-jpeg.c:74:test_type9_rotation_exif_tag: -- cgit v1.2.3 From ce755b609df5d10afb0cb5e82ae1135efa8be266 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Tue, 22 Dec 2015 00:55:43 -0500 Subject: gnu: libpng: Update to 1.5.26 [fixes CVE-2015-8472 and CVE-2015-8540]. * gnu/packages/image.scm (libpng): Update to 1.5.26. --- gnu/packages/image.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index f3f89f6be6..d3ed92fde8 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -50,7 +50,7 @@ (define-module (gnu packages image) (define-public libpng (package (name "libpng") - (version "1.5.24") + (version "1.5.26") (source (origin (method url-fetch) @@ -61,7 +61,7 @@ (define-public libpng "ftp://ftp.simplesystems.org/pub/libpng/png/src" "/libpng15/libpng-" version ".tar.xz"))) (sha256 - (base32 "1qhvfk1ypsaf6q6xkspyqqzmghpbahhq54ms8fa5ssqkyds38bmr")))) + (base32 "0kbissyd7d4ahwdpm968nnzl7q15p6hadg44i9x0vrkrzdgdi93v")))) (build-system gnu-build-system) ;; libpng.la says "-lz", so propagate it. -- cgit v1.2.3 From eb2371bcdd6eae024127007dd8d114c4e33b94be Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 26 Dec 2015 02:32:32 -0500 Subject: gnu: znc: Update source URL. * gnu/packages/messaging.scm (znc)[source]: Update URL. --- gnu/packages/messaging.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 140108987b..64cc3c93ef 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -368,7 +368,7 @@ (define-public znc (version "1.6.1") (source (origin (method url-fetch) - (uri (string-append "http://znc.in/releases/znc-" + (uri (string-append "http://znc.in/releases/archive/znc-" version ".tar.gz")) (sha256 (base32 -- cgit v1.2.3 From 7b10135386cf163f407055c83c2b626fc229381d Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 26 Dec 2015 02:37:32 -0500 Subject: gnu: znc: Update to 1.6.2. * gnu/packages/messaging.scm (znc): Update to 1.6.2. --- gnu/packages/messaging.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 64cc3c93ef..956045d420 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -365,14 +365,14 @@ (define-public pidgin-otr (define-public znc (package (name "znc") - (version "1.6.1") + (version "1.6.2") (source (origin (method url-fetch) (uri (string-append "http://znc.in/releases/archive/znc-" version ".tar.gz")) (sha256 (base32 - "0h61nv5kx9k8prmhsffxhlprf7gjcq8vqhjjmqr6v3glcirkjjds")))) + "14q5dyr5zg99hm6j6g1gilcn1zf7dskhxfpz3bnkyhy6q0kpgwgf")))) (build-system gnu-build-system) (arguments '(#:tests? #f ; tries to download GoogleTest with wget -- cgit v1.2.3 From 4beb9f3a3baceb172affb9cf0ba6e27e4c953d57 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 26 Dec 2015 02:44:03 -0500 Subject: gnu: zsh: Add alternate source URL. * gnu/packages/zsh.scm (zsh)[source]: Add alternate URL. --- gnu/packages/zsh.scm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/zsh.scm b/gnu/packages/zsh.scm index c2f09226bd..6d25fd4671 100644 --- a/gnu/packages/zsh.scm +++ b/gnu/packages/zsh.scm @@ -32,8 +32,12 @@ (define-public zsh (version "5.1.1") (source (origin (method url-fetch) - (uri (string-append "http://www.zsh.org/pub/zsh-" version - ".tar.gz")) + (uri (list (string-append + "http://www.zsh.org/pub/zsh-" version + ".tar.gz") + (string-append + "http://www.zsh.org/pub/old/zsh-" version + ".tar.gz"))) (sha256 (base32 "11shllzhq53fg8ngy3bgbmpf09fn2czifg7hsb41nxi3410mpvcl")))) -- cgit v1.2.3 From b8ae816b0e0412984592e86cacb7239ddb9c4c9d Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 26 Dec 2015 11:47:07 -0500 Subject: gnu: tinyproxy: Update source URL. * gnu/packages/web.scm (tinyproxy)[source]: Update URL. --- gnu/packages/web.scm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 593fe3b857..52c5740388 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -30,6 +30,7 @@ (define-module (gnu packages web) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix cvs-download) + #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system perl) #:use-module (guix build-system cmake) @@ -435,11 +436,12 @@ (define-public tinyproxy (source (origin (method url-fetch) (uri (string-append - "http://www.samba.org/~obnox/" name "/download/" - name "-" version ".tar.bz2")) + "https://download.banu.com/tinyproxy/" + (version-major+minor version) + "/tinyproxy-" version ".tar.gz")) (sha256 (base32 - "0vl9igw7vm924rs6d6bkib7zfclxnlf9s8rmml1sfwj7xda9nmdy")))) + "05y0y2q9j10x72y1fipya6bmc8hjcdf3kfw7dh8ahczpy341c938")))) (build-system gnu-build-system) (arguments `(#:configure-flags -- cgit v1.2.3 From 71c8a804b9d50a63055f89f6195f5d74d6f6e073 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 25 Dec 2015 10:24:29 +0200 Subject: gnu: python-py: Update to 1.4.31. * gnu/packages/python.scm (python-py): Update to 1.4.31. --- gnu/packages/python.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 74a7a84452..8cbdd034e0 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -1564,16 +1564,14 @@ (define-public python2-unittest2 (define-public python-py (package (name "python-py") - (version "1.4.23") + (version "1.4.31") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/p/py/py-" - version ".tar.gz")) + (uri (pypi-uri "py" version)) (sha256 (base32 - "1jkhffpai419v5rickm2vz86p9bkg3b3kcm2k4bi5wfajhw2m3xs")))) + "0561gz2w3i825gyl42mcq14y3dcgkapfiv5zv9a2bz15qxiijl56")))) (build-system python-build-system) (inputs `(("python-setuptools" ,python-setuptools))) -- cgit v1.2.3 From 2d3a437c79ac3c1dafbd958f94b1d2994f573b7c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 25 Dec 2015 13:42:32 +0200 Subject: gnu: python-cffi: Update to 1.4.2. * gnu/packages/python.scm (python-cffi): Update to 1.4.2. --- gnu/packages/python.scm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 8cbdd034e0..a7922bbc85 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -3753,14 +3753,13 @@ (define-public python2-pycparser (define-public python-cffi (package (name "python-cffi") - (version "1.2.1") + (version "1.4.2") (source (origin (method url-fetch) - (uri (string-append "https://pypi.python.org/packages/source/c/" - "cffi/cffi-" version ".tar.gz")) + (uri (pypi-uri "cffi" version)) (sha256 - (base32 "0g8yfzinry1vsj6d1jlnd19338bh92lhhk207ksy4lm1n3g73dga")))) + (base32 "161rj52rzi3880lij17d6i9kvgkiwjilrqjs8405k8sf6ryif7cg")))) (build-system python-build-system) (outputs '("out" "doc")) (inputs -- cgit v1.2.3 From 9f442285128ae6ae234339843ba142cde588e2d4 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 25 Dec 2015 13:44:07 +0200 Subject: gnu: python-pygments: Update to 2.0.2. * gnu/packages/python.scm (python-pygments): Update to 2.0.2. --- gnu/packages/python.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index a7922bbc85..77c7bf3147 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -2540,16 +2540,14 @@ (define-public python2-docutils (define-public python-pygments (package (name "python-pygments") - (version "1.6") + (version "2.0.2") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/P/Pygments/Pygments-" - version ".tar.gz")) + (uri (pypi-uri "Pygments" version)) (sha256 (base32 - "1h11r6ss8waih51vcksfvzghfxiav2f8svc0812fa5kmyz5d97kr")))) + "0lagrwifsgn0s8bzqahpr87p7gd38xja8f06akscinp6hj89283k")))) (build-system python-build-system) (inputs `(("python-setuptools" ,python-setuptools))) -- cgit v1.2.3 From 82a3c582a38b761d78b78a438d69eef2aa234c36 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 25 Dec 2015 14:39:42 +0200 Subject: gnu: python-coverage: Update to 4.0.3. * gnu/packages/python.scm (python-coverage): Update to 4.0.3. --- gnu/packages/python.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 77c7bf3147..ae575c6819 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -1963,16 +1963,14 @@ (define-public python2-testrepository (define-public python-coverage (package (name "python-coverage") - (version "3.7.1") + (version "4.0.3") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/c/coverage/coverage-" - version ".tar.gz")) + (uri (pypi-uri "coverage" version)) (sha256 (base32 - "0knlbq79g2ww6xzsyknj9rirrgrgc983dpa2d9nkdf31mb2a3bni")))) + "0qjlja8ny4gcfp8abqfwdrvr8qw9kr69lkja0b4cqqbsdmdjgcc5")))) (build-system python-build-system) (inputs `(("python-setuptools" ,python-setuptools))) -- cgit v1.2.3 From 2a2d098195497e1837977b1f25d629c553033373 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 25 Dec 2015 14:42:51 +0200 Subject: gnu: python-exif-read: Update to 2.1.2. * gnu/packages/python.scm (python-exif-read): Update to 2.1.2. --- gnu/packages/python.scm | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index ae575c6819..e3397b1c4a 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -2046,16 +2046,13 @@ (define-public behave (define-public python-exif-read (package (name "python-exif-read") - (version "1.4.2") + (version "2.1.2") (source (origin (method url-fetch) - (uri - (string-append - "https://pypi.python.org/packages/source/E/ExifRead/ExifRead-" - version ".tar.gz")) + (uri (pypi-uri "ExifRead" version)) (sha256 (base32 - "17c627gcdmyc05hz4zk8qs4pjgw6rc68qzjzgz8gh1cmpsd7acf1")))) + "1b90jf6m9vxh9nanhpyvqdq7hmfx5iggw1l8kq10jrs6xgr49qkr")))) (build-system python-build-system) (inputs `(("python-setuptools" ,python-setuptools))) -- cgit v1.2.3 From e21338bec5baaf831521986e512afb8208d0a18f Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 25 Dec 2015 15:47:46 +0200 Subject: gnu: python-decorator: Update to 4.0.6. * gnu/packages/python.scm (python-decorator): Update to 4.0.6. --- gnu/packages/python.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index e3397b1c4a..164907ee75 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -3889,15 +3889,13 @@ (define-public python2-cairocffi (define-public python-decorator (package (name "python-decorator") - (version "3.4.2") + (version "4.0.6") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/d/decorator/decorator-" - version ".tar.gz")) + (uri (pypi-uri "decorator" version)) (sha256 - (base32 "0i2bnlkh0p9gs76hb28mafandcrig2fmv56w9ai6mshxwqn0083k")))) + (base32 "1710cwsbwr8fkiq59w2min7rwgdz7ly51yz8l8yh1zbpfxcm8qhw")))) (build-system python-build-system) (arguments '(#:tests? #f)) ; no test target (native-inputs -- cgit v1.2.3 From c1a064c96eb4670c54200464e3b1b98981eff766 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 27 Dec 2015 14:44:29 +0200 Subject: gnu: efl: Update to 1.16.1. * gnu/packages/enlightenment.scm (efl): Update to 1.16.1. --- gnu/packages/enlightenment.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index 3b882d6d28..9479bb053d 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -52,7 +52,7 @@ (define-module (gnu packages enlightenment) (define-public efl (package (name "efl") - (version "1.16.0") + (version "1.16.1") (source (origin (method url-fetch) (uri (string-append @@ -60,7 +60,7 @@ (define-public efl version ".tar.xz")) (sha256 (base32 - "08w3hrjyz1yjqjq77px86fljxxi5xz5yfy79qwssypafjvcvpzky")))) + "116s4lcfj5lrfhyvvka3np9glqyrh21cyl9rhw7al0wgb60vw0gg")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) -- cgit v1.2.3 From 85d42329b36d29b0945d4915b60c595369d5bc52 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 27 Dec 2015 15:33:20 +0200 Subject: gnu: elementary: Update to 1.16.1. * gnu/packages/enlightenment.scm (elementary): Update to 1.16.1. --- gnu/packages/enlightenment.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index 9479bb053d..549a9b6237 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -135,7 +135,7 @@ (define-public efl (define-public elementary (package (name "elementary") - (version "1.16.0") + (version "1.16.1") (source (origin (method url-fetch) (uri @@ -143,7 +143,7 @@ (define-public elementary "elementary/elementary-" version ".tar.xz")) (sha256 (base32 - "1546b7pdpw6nx1hjxy674zr8dgpzwl7lq3hvnv4axkpd4zwkqgs8")))) + "0q58imh7s35q6cq5hsa6gqj84rkckh8s61iass8zyvcw19j66f3y")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) -- cgit v1.2.3 From c1ff0f2fedfaa93a225d2060731c2354b839e545 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 27 Dec 2015 17:38:11 -0500 Subject: gnu: irssi: Update source URL. * gnu/packages/irssi.scm (irssi)[source]: Update URL. --- gnu/packages/irssi.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/irssi.scm b/gnu/packages/irssi.scm index 44bc6bd3a2..e5c72186e2 100644 --- a/gnu/packages/irssi.scm +++ b/gnu/packages/irssi.scm @@ -35,7 +35,8 @@ (define-public irssi (version "0.8.17") (source (origin (method url-fetch) - (uri (string-append "http://www.irssi.org/files/irssi-" + (uri (string-append "https://github.com/irssi-import/irssi/" + "releases/download/0.8.17/irssi-" version ".tar.bz2")) (sha256 (base32 -- cgit v1.2.3 From 5f1c94986668d413b63730036b2366b8f5127c77 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 29 Dec 2015 07:48:10 +0100 Subject: gnu: tuxguitar: Use "modify-phases" syntax. * gnu/packages/music.scm (tuxguitar)[arguments]: Use "modify-phases" syntax. --- gnu/packages/music.scm | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 3787576aea..dcda09a264 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -701,17 +701,17 @@ (define-public tuxguitar #:tests? #f ;no "check" target #:parallel-build? #f ;not supported #:phases - (alist-cons-before - 'build 'enter-dir-set-path-and-pass-ldflags - (lambda* (#:key inputs #:allow-other-keys) - (chdir "TuxGuitar") - (substitute* "GNUmakefile" - (("PROPERTIES\\?=") - (string-append "PROPERTIES?= -Dswt.library.path=" - (assoc-ref inputs "swt") "/lib")) - (("\\$\\(GCJ\\) -o") "$(GCJ) $(LDFLAGS) -o")) - #t) - (alist-delete 'configure %standard-phases)))) + (modify-phases %standard-phases + (delete 'configure) + (add-before 'build 'enter-dir-and-set-flags + (lambda* (#:key inputs #:allow-other-keys) + (chdir "TuxGuitar") + (substitute* "GNUmakefile" + (("PROPERTIES\\?=") + (string-append "PROPERTIES?= -Dswt.library.path=" + (assoc-ref inputs "swt") "/lib")) + (("\\$\\(GCJ\\) -o") "$(GCJ) $(LDFLAGS) -o")) + #t))))) (inputs `(("swt" ,swt))) (native-inputs -- cgit v1.2.3 From 6da2e99e2e3465f5853b65e564a286cb7c12964c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 29 Dec 2015 07:48:59 +0100 Subject: gnu: tuxguitar: Set missing GCJFLAGS. * gnu/packages/music.scm (tuxguitar)[arguments]: Set compiler flags "-fsource=1.4" and "-fPIC". --- gnu/packages/music.scm | 2 ++ 1 file changed, 2 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index dcda09a264..264fcd9d0f 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -707,6 +707,8 @@ (define-public tuxguitar (lambda* (#:key inputs #:allow-other-keys) (chdir "TuxGuitar") (substitute* "GNUmakefile" + (("GCJFLAGS\\+=(.*)" _ rest) + (string-append "GCJFLAGS=-fsource=1.4 -fPIC " rest)) (("PROPERTIES\\?=") (string-append "PROPERTIES?= -Dswt.library.path=" (assoc-ref inputs "swt") "/lib")) -- cgit v1.2.3 From c7d0bf0071306bc996b0584190a85b9859fdead9 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 29 Dec 2015 09:31:54 +0200 Subject: gnu: youtube-dl: Update to 2015.12.23. * gnu/packages/video.scm (youtube-dl): Update to 2015.12.23. --- 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 da1dcc7df8..384a81e7d5 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -805,7 +805,7 @@ (define-public libvpx (define-public youtube-dl (package (name "youtube-dl") - (version "2015.12.09") + (version "2015.12.23") (source (origin (method url-fetch) (uri (string-append "http://youtube-dl.org/downloads/" @@ -813,7 +813,7 @@ (define-public youtube-dl version ".tar.gz")) (sha256 (base32 - "11rzb30ik4all43r7bnsnm35mvs37y7xj3g9r7ig9jr7qlbhllwk")))) + "1fprzycz14w84ljxmpbwagfy20bahrvsa45i7l691svqkjbqhw7y")))) (build-system python-build-system) (native-inputs `(("python-setuptools" ,python-setuptools))) (home-page "http://youtube-dl.org") -- cgit v1.2.3 From b7e7d1b9d3121f057e71e17e1ead645d123ee335 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 26 Dec 2015 01:29:21 -0500 Subject: gnu: fuse: Update to 2.9.4. * gnu/packages/patches/fuse-CVE-2015-3202.patch: Delete file. * gnu-system.am (dist_patch_DATA): Remove it. * gnu/packages/linux.scm (fuse): Update to 2.9.4. [source]: Remove patch. --- gnu-system.am | 1 - gnu/packages/linux.scm | 13 +++--- gnu/packages/patches/fuse-CVE-2015-3202.patch | 65 --------------------------- 3 files changed, 8 insertions(+), 71 deletions(-) delete mode 100644 gnu/packages/patches/fuse-CVE-2015-3202.patch (limited to 'gnu') diff --git a/gnu-system.am b/gnu-system.am index e1874fa6c1..78669bd0d3 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -467,7 +467,6 @@ dist_patch_DATA = \ gnu/packages/patches/flint-ldconfig.patch \ gnu/packages/patches/fltk-shared-lib-defines.patch \ gnu/packages/patches/freeimage-CVE-2015-0852.patch \ - gnu/packages/patches/fuse-CVE-2015-3202.patch \ gnu/packages/patches/gawk-shell.patch \ gnu/packages/patches/gcc-arm-link-spec-fix.patch \ gnu/packages/patches/gcc-cross-environment-variables.patch \ diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 1fc3c4e45f..fcae17b609 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -1242,15 +1242,18 @@ (define-public iotop (define-public fuse (package (name "fuse") - (version "2.9.3") + (version "2.9.4") (source (origin (method url-fetch) - (uri (string-append "mirror://sourceforge/fuse/fuse-" - version ".tar.gz")) + (uri (let ((version-with-underscores + (string-join (string-split version #\.) "_"))) + (string-append + "https://github.com/libfuse/libfuse/" + "releases/download/" version-with-underscores + "/fuse-" version ".tar.gz"))) (sha256 (base32 - "071r6xjgssy8vwdn6m28qq1bqxsd2bphcd2mzhq0grf5ybm87sqb")) - (patches (list (search-patch "fuse-CVE-2015-3202.patch"))))) + "1qbwp63a2bp0bchabkwiyzszi9x5krlk2pwk2is6g35gyszw1sbb")))) (build-system gnu-build-system) (inputs `(("util-linux" ,util-linux))) (arguments diff --git a/gnu/packages/patches/fuse-CVE-2015-3202.patch b/gnu/packages/patches/fuse-CVE-2015-3202.patch deleted file mode 100644 index 7c64de7683..0000000000 --- a/gnu/packages/patches/fuse-CVE-2015-3202.patch +++ /dev/null @@ -1,65 +0,0 @@ -The following patch was copied from Debian. - -Description: Fix CVE-2015-3202 - Missing scrubbing of the environment before executing a mount or umount - of a filesystem. -Origin: upstream -Author: Miklos Szeredi -Last-Update: 2015-05-19 - ---- - lib/mount_util.c | 23 +++++++++++++++++------ - 1 file changed, 17 insertions(+), 6 deletions(-) - ---- a/lib/mount_util.c -+++ b/lib/mount_util.c -@@ -95,10 +95,12 @@ static int add_mount(const char *prognam - goto out_restore; - } - if (res == 0) { -+ char *env = NULL; -+ - sigprocmask(SIG_SETMASK, &oldmask, NULL); - setuid(geteuid()); -- execl("/bin/mount", "/bin/mount", "--no-canonicalize", "-i", -- "-f", "-t", type, "-o", opts, fsname, mnt, NULL); -+ execle("/bin/mount", "/bin/mount", "--no-canonicalize", "-i", -+ "-f", "-t", type, "-o", opts, fsname, mnt, NULL, &env); - fprintf(stderr, "%s: failed to execute /bin/mount: %s\n", - progname, strerror(errno)); - exit(1); -@@ -146,10 +148,17 @@ static int exec_umount(const char *progn - goto out_restore; - } - if (res == 0) { -+ char *env = NULL; -+ - sigprocmask(SIG_SETMASK, &oldmask, NULL); - setuid(geteuid()); -- execl("/bin/umount", "/bin/umount", "-i", rel_mnt, -- lazy ? "-l" : NULL, NULL); -+ if (lazy) { -+ execle("/bin/umount", "/bin/umount", "-i", rel_mnt, -+ "-l", NULL, &env); -+ } else { -+ execle("/bin/umount", "/bin/umount", "-i", rel_mnt, -+ NULL, &env); -+ } - fprintf(stderr, "%s: failed to execute /bin/umount: %s\n", - progname, strerror(errno)); - exit(1); -@@ -205,10 +214,12 @@ static int remove_mount(const char *prog - goto out_restore; - } - if (res == 0) { -+ char *env = NULL; -+ - sigprocmask(SIG_SETMASK, &oldmask, NULL); - setuid(geteuid()); -- execl("/bin/umount", "/bin/umount", "--no-canonicalize", "-i", -- "--fake", mnt, NULL); -+ execle("/bin/umount", "/bin/umount", "--no-canonicalize", "-i", -+ "--fake", mnt, NULL, &env); - fprintf(stderr, "%s: failed to execute /bin/umount: %s\n", - progname, strerror(errno)); - exit(1); -- cgit v1.2.3 From 6959a13271e09feeed1ba106af2d399fecc735ec Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 26 Dec 2015 01:33:28 -0500 Subject: gnu: sshfs-fuse: Update source URL. * gnu/packages/linux.scm (sshfs-fuse)[source]: Update URL. --- gnu/packages/linux.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index fcae17b609..efad70e5b6 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -1374,8 +1374,11 @@ (define-public sshfs-fuse (version "2.5") (source (origin (method url-fetch) - (uri (string-append "mirror://sourceforge/fuse/sshfs-fuse-" - version ".tar.gz")) + (uri (let ((version-with-underscores + (string-join (string-split version #\.) "_"))) + (string-append "https://github.com/libfuse/sshfs/releases/" + "download/sshfs_" version-with-underscores + "/sshfs-fuse-" version ".tar.gz"))) (sha256 (base32 "0gp6qr33l2p0964j0kds0dfmvyyf5lpgsn11daf0n5fhwm9185z9")))) -- cgit v1.2.3 From 11afbbc6511dfb68f8902b04c7140dfe7026e22c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 29 Dec 2015 22:48:49 +0200 Subject: gnu: enlightenment: Update to 0.20.2. * gnu/packages/enlightenment.scm (enlightenment): Update to 0.20.2. --- gnu/packages/enlightenment.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index 549a9b6237..9fdcd42a27 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -271,7 +271,7 @@ (define-public rage (define-public enlightenment (package (name "enlightenment") - (version "0.20.1") + (version "0.20.2") (source (origin (method url-fetch) (uri @@ -279,7 +279,7 @@ (define-public enlightenment name "/" name "-" version ".tar.xz")) (sha256 (base32 - "1vplq5i34shn4q3jzmxr0gw916k7q3prfgcp26h8bmgc7nmi82w2")))) + "0faxky7lqd133jjjkr4c40kwwjhqc51ww10l3yy63671rfjhj424")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--enable-mount-eeze"))) -- cgit v1.2.3 From 6da16993eb7c35d829e947d65e57508fa5d1a00f Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 28 Dec 2015 00:22:34 -0500 Subject: gnu: Add cuetools. * gnu/packages/audio.scm (cuetools): New variable. --- gnu/packages/audio.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 6a8347af05..652e229d9a 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -1953,3 +1953,36 @@ (define-public zita-alsa-pcmi open, initialise and use a hw: device in mmap mode, and providing floating point audio data.") (license license:gpl3+))) + +(define-public cuetools + (package + (name "cuetools") + (version "1.4.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/svend/cuetools/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "01xi3rvdmil9nawsha04iagjylqr1l9v9vlzk99scs8c207l58i4")))) + (build-system gnu-build-system) + ;; The source tarball is not bootstrapped. + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'bootstrap + (lambda _ (zero? (system* "autoreconf" "-vfi"))))))) + ;; Bootstrapping tools + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("flex" ,flex) + ("bison" ,bison))) + (synopsis "Cue and toc file parsers and utilities") + (description "Cuetools is a set of programs that are useful for manipulating +and using CUE sheet (cue) files and Table of Contents (toc) files. CUE and TOC +files are a way to represent the layout of a data or audio CD in a +machine-readable ASCII format.") + (home-page "https://github.com/svend/cuetools") + (license license:gpl2+))) -- cgit v1.2.3 From 6819a8ddd64566d4e3b18f941bdbf23bac02caf1 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 28 Dec 2015 00:22:54 -0500 Subject: gnu: Add shntool. * gnu/packages/audio.scm (shntool): New variable. --- gnu/packages/audio.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 652e229d9a..6af1144b7f 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -1986,3 +1986,23 @@ (define-public cuetools machine-readable ASCII format.") (home-page "https://github.com/svend/cuetools") (license license:gpl2+))) + +(define-public shntool + (package + (name "shntool") + (version "3.0.10") + (source (origin + (method url-fetch) + (uri (string-append "http://etree.org/shnutils/shntool/dist/src/" + "shntool-" version ".tar.gz")) + (sha256 + (base32 + "00i1rbjaaws3drkhiczaign3lnbhr161b7rbnjr8z83w8yn2wc3l")))) + (build-system gnu-build-system) + (synopsis "WAVE audio data processing tool") + (description "shntool is a multi-purpose WAVE data processing and reporting +utility. File formats are abstracted from its core, so it can process any file +that contains WAVE data, compressed or not---provided there exists a format +module to handle that particular file type.") + (home-page "http://etree.org/shnutils/shntool/") + (license license:gpl3+))) -- cgit v1.2.3 From 19f4554c949a503fcf3cf4d4f4e8b2d9e228166e Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Mon, 28 Dec 2015 07:53:27 +1000 Subject: gnu: Add fraggenescan. * gnu/packages/bioinformatics.scm (fraggenescan): New variable. --- gnu/packages/bioinformatics.scm | 81 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index f6bc544a63..76a1c17737 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1355,6 +1355,87 @@ (define-public flexbar Illumina, Roche 454, and the SOLiD platform.") (license license:gpl3))) +(define-public fraggenescan + (package + (name "fraggenescan") + (version "1.20") + (source + (origin + (method url-fetch) + (uri + (string-append "mirror://sourceforge/fraggenescan/" + "FragGeneScan" version ".tar.gz")) + (sha256 + (base32 "1zzigqmvqvjyqv4945kv6nc5ah2xxm1nxgrlsnbzav3f5c0n0pyj")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'configure) + (add-before 'build 'patch-paths + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (string-append (assoc-ref outputs "out"))) + (share (string-append out "/share/fraggenescan/"))) + (substitute* "run_FragGeneScan.pl" + (("system\\(\"rm") + (string-append "system(\"" (which "rm"))) + (("system\\(\"mv") + (string-append "system(\"" (which "mv"))) + ;; This script and other programs expect the training files + ;; to be in the non-standard location bin/train/XXX. Change + ;; this to be share/fraggenescan/train/XXX instead. + (("^\\$train.file = \\$dir.*") + (string-append "$train_file = \"" + share + "train/\".$FGS_train_file;"))) + (substitute* "run_hmm.c" + (("^ strcat\\(train_dir, \\\"train/\\\"\\);") + (string-append " strcpy(train_dir, \"" share "/train/\");"))) + (substitute* "post_process.pl" + (("^my \\$dir = substr.*") + (string-append "my $dir = \"" share "\";")))) + #t)) + (replace 'build + (lambda _ (and (zero? (system* "make" "clean")) + (zero? (system* "make" "fgs"))))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (string-append (assoc-ref outputs "out"))) + (bin (string-append out "/bin/")) + (share (string-append out "/share/fraggenescan/train"))) + (install-file "run_FragGeneScan.pl" bin) + (install-file "FragGeneScan" bin) + (install-file "FGS_gff.py" bin) + (install-file "post_process.pl" bin) + (copy-recursively "train" share)))) + (delete 'check) + (add-after 'install 'post-install-check + ;; In lieu of 'make check', run one of the examples and check the + ;; output files gets created. + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (string-append (assoc-ref outputs "out"))) + (bin (string-append out "/bin/"))) + (and (zero? (system* (string-append bin "run_FragGeneScan.pl") + "-genome=./example/NC_000913.fna" + "-out=./test2" + "-complete=1" + "-train=complete")) + (file-exists? "test2.faa") + (file-exists? "test2.ffn") + (file-exists? "test2.gff") + (file-exists? "test2.out")))))))) + (inputs + `(("perl" ,perl) + ("python" ,python-2))) ;not compatible with python 3. + (home-page "https://sourceforge.net/projects/fraggenescan/") + (synopsis "Finds potentially fragmented genes in short reads") + (description + "FragGeneScan is a program for predicting bacterial and archaeal genes in +short and error-prone DNA sequencing reads. It can also be applied to predict +genes in incomplete assemblies or complete genomes.") + ;; GPL3+ according to private correspondense with the authors. + (license license:gpl3+))) + (define-public grit (package (name "grit") -- cgit v1.2.3 From 826244f01ac4aa5e3cf6a38093cd1bde30876779 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Tue, 29 Dec 2015 22:24:20 -0500 Subject: gnu: fuse: Fix source URI. This is a followup to commit b7e7d1b9d3121f057e71e17e1ead645d123ee335. * gnu/packages/linux.scm (fuse)[source]: Fix source URI. --- gnu/packages/linux.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index efad70e5b6..3d14154cee 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -1249,7 +1249,7 @@ (define-public fuse (string-join (string-split version #\.) "_"))) (string-append "https://github.com/libfuse/libfuse/" - "releases/download/" version-with-underscores + "releases/download/fuse_" version-with-underscores "/fuse-" version ".tar.gz"))) (sha256 (base32 -- cgit v1.2.3 From f95dad899b9c2aeec22a7000ec693fe6dff3b3c5 Mon Sep 17 00:00:00 2001 From: Andreas Enge Date: Wed, 30 Dec 2015 11:24:26 +0100 Subject: gnu: texlive: Patch texmfcnf.lua. * gnu/packages/texlive.scm (texlive): Patch texmfcnf.lua to point to the absolute texlive-texmf tree. --- gnu/packages/texlive.scm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/texlive.scm b/gnu/packages/texlive.scm index 6480b2561e..b6c996edfa 100644 --- a/gnu/packages/texlive.scm +++ b/gnu/packages/texlive.scm @@ -191,7 +191,8 @@ (define-public texlive-texmf (alist-cons-after 'patch-source-shebangs 'texmf-config (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((share (string-append (assoc-ref outputs "out") "/share")) + (let* ((out (assoc-ref outputs "out")) + (share (string-append out "/share")) (texmfroot (string-append share "/texmf-dist/web2c")) (texmfcnf (string-append texmfroot "/texmf.cnf")) (texlive-bin (assoc-ref inputs "texlive-bin")) @@ -201,6 +202,10 @@ (define-public texlive-texmf (substitute* texmfcnf (("TEXMFROOT = \\$SELFAUTOPARENT") (string-append "TEXMFROOT = " share))) + ;; Register paths in texmfcnf.lua, needed for context. + (substitute* (string-append texmfroot "/texmfcnf.lua") + (("selfautodir:") out) + (("selfautoparent:") (string-append share "/"))) ;; Set path to TeXLive Perl modules (setenv "PERL5LIB" (string-append (getenv "PERL5LIB") ":" tlpkg)) -- cgit v1.2.3 From 0c1910ed036438adf7acaab0423cc85920eb66d9 Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Thu, 12 Nov 2015 01:19:44 +0800 Subject: gnu: ladspa: Update URLs. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/audio.scm (ladspa): Update source and home page url. Signed-off-by: Ludovic Courtès --- gnu/packages/audio.scm | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 6af1144b7f..df1f67bddd 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -817,15 +817,20 @@ (define-public ladspa (package (name "ladspa") (version "1.13") - (source (origin - (method url-fetch) - (uri (string-append - "http://www.ladspa.org/download/ladspa_sdk_" - version - ".tgz")) - (sha256 - (base32 - "0srh5n2l63354bc0srcrv58rzjkn4gv8qjqzg8dnq3rs4m7kzvdm")))) + (source + (origin + (method url-fetch) + ;; Since the official link is dead, + ;; we download the tarball from Debian or Internet Archive. + (uri (list (string-append "http://http.debian.net" + "/debian/pool/main/l/ladspa-sdk/ladspa-sdk_" + version ".orig.tar.gz") + (string-append "https://web.archive.org/web/20140717172251/" + "http://www.ladspa.org/download/ladspa_sdk_" + version ".tgz"))) + (sha256 + (base32 + "0srh5n2l63354bc0srcrv58rzjkn4gv8qjqzg8dnq3rs4m7kzvdm")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; the "test" target is a listening test only @@ -843,7 +848,9 @@ (define-public ladspa (("^CC.*") "CC = gcc\n") (("^CPP.*") "CPP = g++\n")))) (alist-delete 'build %standard-phases)))) - (home-page "http://ladspa.org") + ;; Since the home page is gone, we provide a link to the archived version. + (home-page + "https://web.archive.org/web/20140729190945/http://www.ladspa.org/") (synopsis "Linux Audio Developer's Simple Plugin API (LADSPA)") (description "LADSPA is a standard that allows software audio processors and effects -- cgit v1.2.3 From 0084aaf3d4a959c0ea33ed617784590ec3b45e9a Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 30 Dec 2015 19:14:04 +0100 Subject: gnu: Add lcov. * gnu/packages/code.scm (lcov): New variable. --- gnu/packages/code.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/code.scm b/gnu/packages/code.scm index 86b131a3e8..e8c936849a 100644 --- a/gnu/packages/code.scm +++ b/gnu/packages/code.scm @@ -280,3 +280,35 @@ (define-public withershins ;; Sources are released under Expat license, but since BFD is licensed ;; under the GPLv3+ the combined work is GPLv3+ as well. (license license:gpl3+))) + +(define-public lcov + (package + (name "lcov") + (version "1.10") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/ltp/lcov-" + version ".tar.gz")) + (sha256 + (base32 + "13xq2ln4jjasslqzzhr5g11q1c19gwpng1jphzbzmylmrjz62ila")))) + (build-system gnu-build-system) + (arguments + '(#:make-flags (let ((out (assoc-ref %outputs "out"))) + (list (string-append "PREFIX=" out) + (string-append "BIN_DIR=" out "/bin") + (string-append "MAN_DIR=" out "/share/man"))) + #:phases (modify-phases %standard-phases + (delete 'configure)) + #:tests? #f)) ;no 'check' target + (inputs `(("perl" ,perl))) + (home-page "http://ltp.sourceforge.net/coverage/lcov.php") + (synopsis "Code coverage tool that enhances GNU gcov") + (description + "LCOV is an extension of @command{gcov}, a tool part of the +GNU@tie{}Binutils, which provides information about what parts of a program +are actually executed (i.e., \"covered\") while running a particular test +case. The extension consists of a set of Perl scripts which build on the +textual @command{gcov} output to implement the following enhanced +functionality such as HTML output.") + (license license:gpl2+))) -- cgit v1.2.3 From 3d5fd24090331feefbdf4ab4093f848a0fe3188b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 26 Dec 2015 11:30:43 +0100 Subject: gnu: Add Fritzing. * gnu/packages/engineering.scm (fritzing): New variable. --- gnu/packages/engineering.scm | 51 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index 554399b049..ba11f528cb 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -376,6 +376,57 @@ (define-public fasthenry multipole-accelerated algorithm.") (license (license:non-copyleft #f "See induct.c.")))) +(define-public fritzing + (package + (name "fritzing") + (version "0.9.2b") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/fritzing/" + "fritzing-app/archive/" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0pvk57z2pxz89pcwwm61lkpvj4w9qxqz8mi0zkpj6pnaljabp7bf")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (and (zero? (system* "tar" + "-xvf" (assoc-ref inputs "fritzing-parts-db") + "-C" "parts")) + (zero? (system* "qmake" + (string-append "PREFIX=" + (assoc-ref outputs "out")) + "phoenix.pro")))))))) + (inputs + `(("qt" ,qt) + ("boost" ,boost) + ("zlib" ,zlib) + ("fritzing-parts-db" + ,(origin + (method url-fetch) + (uri (string-append "https://github.com/fritzing/" + "fritzing-parts/archive/" version ".tar.gz")) + (file-name (string-append "fritzing-parts-" version ".tar.gz")) + (sha256 + (base32 + "0jqr8yjg7177f3pk1fcns584r0qavwpr280nggsi2ff3pwk5wpsz")))))) + (home-page "http://fritzing.org") + (synopsis "Electronic circuit design") + (description + "The Fritzing application is @dfn{Electronic Design Automation} (EDA) +software with a low entry barrier, suited for the needs of makers and +hobbyists. It offers a unique real-life \"breadboard\" view, and a parts +library with many commonly used high-level components. Fritzing makes it very +easy to communicate about circuits, as well as to turn them into PCB layouts +ready for production.") + ;; Documentation and parts are released under CC-BY-SA 3.0; source code is + ;; released under GPLv3+. + (license (list license:gpl3+ license:cc-by-sa3.0)))) + (define-public gerbv (package (name "gerbv") -- cgit v1.2.3 From 31e98ca63f421332f511d006699270d60d2848f8 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 10:49:32 +0200 Subject: gnu: offlineimap: Update to 6.6.1. * gnu/packages/mail.scm (offlineimap): Update to 6.6.1. --- gnu/packages/mail.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 9826b0de5a..b2e57b1fc9 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -285,7 +285,7 @@ (define-public bogofilter (define-public offlineimap (package (name "offlineimap") - (version "6.6.0") + (version "6.6.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/OfflineIMAP/offlineimap/" @@ -293,7 +293,7 @@ (define-public offlineimap (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1x33zxjm3y2p54lbcsgflrs6v2zq785y2k0xi6xia6akrvjmh4n4")))) + "1c2b03856a78ripkpl9jjzj6yzyfb3rlrdnjx300s647l1xx8gxg")))) (build-system python-build-system) (native-inputs `(("python" ,python-2))) (arguments @@ -302,7 +302,7 @@ (define-public offlineimap ;; Tests require a modifiable IMAP account. #:tests? #f)) (home-page "http://www.offlineimap.org") - (synopsis "Synch emails between two repositories") + (synopsis "Sync emails between two repositories") (description "OfflineImap synchronizes emails between two repositories, so that you can read the same mailbox from multiple computers. It supports IMAP as REMOTE -- cgit v1.2.3 From 70e9d258c49f9a3fc9224bc01f5a22ab3cec6dc7 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 11:01:23 +0200 Subject: gnu: youtube-dl: Update to 2015.12.29. * gnu/packages/video.scm (youtube-dl): Update to 2015.12.29. --- 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 384a81e7d5..f1089f76ca 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -805,7 +805,7 @@ (define-public libvpx (define-public youtube-dl (package (name "youtube-dl") - (version "2015.12.23") + (version "2015.12.29") (source (origin (method url-fetch) (uri (string-append "http://youtube-dl.org/downloads/" @@ -813,7 +813,7 @@ (define-public youtube-dl version ".tar.gz")) (sha256 (base32 - "1fprzycz14w84ljxmpbwagfy20bahrvsa45i7l691svqkjbqhw7y")))) + "0232wiq8mjs5ngmlcvf0292icrhvzr9mkwy2km0g0djznsf7rxjg")))) (build-system python-build-system) (native-inputs `(("python-setuptools" ,python-setuptools))) (home-page "http://youtube-dl.org") -- cgit v1.2.3 From 866fade9e5b0f09d7866eae0056dc50d29ba88d5 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 11:26:15 +0200 Subject: gnu: notmuch: Update to 0.21. * gnu/packages/mail.scm (notmuch): Update to 0.21. --- gnu/packages/mail.scm | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index b2e57b1fc9..e8218b1ac6 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -372,17 +372,18 @@ (define-public mu (define-public notmuch (package (name "notmuch") - (version "0.20.2") + (version "0.21") (source (origin (method url-fetch) - (uri (string-append "http://notmuchmail.org/releases/notmuch-" + (uri (string-append "https://notmuchmail.org/releases/notmuch-" version ".tar.gz")) (sha256 (base32 - "1v5dcnlg4km5hfaq0i0qywq5fn66fi0rq4aaibyqkwxz8mis4hgp")))) + "1cr53rbpkcy3pvrmhbg2gq7sjpwb0c8xd7a4zhzxbiv8s7z8yvyh")))) (build-system gnu-build-system) (arguments - '(#:tests? #f ;; FIXME: 637 tests; 70 fail and 98 are skipped + '(#:tests? #f ;; FIXME: 662 tests; 168 fail and 99 are skipped + ;; with perl input: 50 fail and 99 are skipped #:phases (modify-phases %standard-phases (replace 'configure (lambda* (#:key outputs #:allow-other-keys) -- cgit v1.2.3 From aadf46253afc3d9b03d3daa7d1015b6f49c27c60 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 11:31:11 +0200 Subject: gnu: getmail: Update to 4.48.0. * gnu/packages/mail.scm (getmail): Update to 4.48.0. --- 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 e8218b1ac6..13c1959490 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -450,7 +450,7 @@ (define-public python2-notmuch (define-public getmail (package (name "getmail") - (version "4.46.0") + (version "4.48.0") (source (origin (method url-fetch) @@ -458,7 +458,7 @@ (define-public getmail name "-" version ".tar.gz")) (sha256 (base32 - "15rqmm25pq6ll8aaqh8h6pfdkpqs7y6yismb3h3w1bz8j292c8zl")))) + "0k5rm5kag14izng2ajcagvli9sns5mzvkyfa65ri4xymxs91wi29")))) (build-system python-build-system) (arguments `(#:tests? #f ; no tests -- cgit v1.2.3 From 2c3d13fe1b34cac42d98e804d3eeb045b011e4fe Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 11:45:48 +0200 Subject: gnu: isync: Update to 1.2.1. * gnu/packages/mail.scm (isync): Update to 1.2.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 13c1959490..f765728ae4 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -730,14 +730,14 @@ (define-public dovecot (define-public isync (package (name "isync") - (version "1.1.2") + (version "1.2.1") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/isync/isync/" version "/isync-" version ".tar.gz")) (sha256 (base32 - "1960ah3fmp75cakd06lcx50n5q0yvfsadjh3lffhyvjvj7ava9d2")))) + "1bij6nm06ghkg98n2pdyacam2fyg5y8f7ajw0d5653m0r4ldw5p7")))) (build-system gnu-build-system) (inputs `(("bdb" ,bdb) -- cgit v1.2.3 From c2a9c1c0bcd1f2e78026739d0c133371b1162364 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 12:41:59 +0200 Subject: gnu: python-dateutil: Update to 2.4.2. * gnu/packages/python.scm (python-dateutil): Update to 2.4.2. --- gnu/packages/python.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 164907ee75..f585790117 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -900,7 +900,7 @@ (define-public python2-six (define-public python-dateutil-2 (package (name "python-dateutil") - (version "2.2") + (version "2.4.2") (source (origin (method url-fetch) @@ -908,7 +908,7 @@ (define-public python-dateutil-2 name "/" name "-" version ".tar.gz")) (sha256 (base32 - "0s74ad6r789810s10dxgvaf48ni6adac2icrdad34zxygqq6bj7f")))) + "0ggbm2z72p0nwjqgvpw8s5bqzwayqiqv2iws0x2a605m3mf4959y")))) (build-system python-build-system) (inputs `(("python-setuptools" ,python-setuptools) -- cgit v1.2.3 From 7fb9ff4dea7e6aa413678b924f53d80260037f66 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 12:46:30 +0200 Subject: gnu: python-blinker: Update to 1.4. * gnu/packages/python.scm (python-blinker): Update to 1.4. --- gnu/packages/python.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index f585790117..6122b4f368 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -2658,16 +2658,14 @@ (define-public python2-feedgenerator (define-public python-blinker (package (name "python-blinker") - (version "1.3") + (version "1.4") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/b/blinker/blinker-" - version ".tar.gz")) + (uri (pypi-uri "blinker" version)) (sha256 (base32 - "0bvfxkmjx6bpa302pv7v2vw5rwr3dlzjzfdp3bj628i6144024b8")))) + "1dpq0vb01p36jjwbhhd08ylvrnyvcc82yxx3mwjx6awrycjyw6j7")))) (build-system python-build-system) (native-inputs `(("python-setuptools" ,python-setuptools))) -- cgit v1.2.3 From 8925d4f3453ce1c5465c67686dbe215d9dfe8e3c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 12:54:30 +0200 Subject: gnu: python-unidecode: Update to 0.04.18. * gnu/packages/python.scm (python-unidecode): Update to 0.04.18. --- gnu/packages/python.scm | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 6122b4f368..3bf5652d47 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -2225,16 +2225,13 @@ (define-public python2-jsonschema (define-public python-unidecode (package (name "python-unidecode") - (version "0.04.16") + (version "0.04.18") (source (origin (method url-fetch) - (uri - (string-append - "https://pypi.python.org/packages/source/U/Unidecode/Unidecode-" - version ".tar.gz")) + (uri (pypi-uri "Unidecode" version)) (sha256 (base32 - "0yv56vc49rvippyxgxvcyz7jklc07ky38rcspax7p00sgmriiljc")))) + "12hhblqy1ajvidm38im4171x4arg83pfmziyn53nizp29p3m14gi")))) (build-system python-build-system) (inputs `(("python-setuptools" ,python-setuptools))) -- cgit v1.2.3 From e98149b3a4f9c8e0681b29ed39f5e0cb66b9f2bf Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 13:00:13 +0200 Subject: gnu: python-jinja2: Update to 2.8. * gnu/packages/python.scm (python-jinja2): Update to 2.8. --- gnu/packages/python.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 3bf5652d47..f6bf0f8f23 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -2424,16 +2424,14 @@ (define-public python2-markupsafe (define-public python-jinja2 (package (name "python-jinja2") - (version "2.7.3") + (version "2.8") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/J/Jinja2/Jinja2-" - version ".tar.gz")) + (uri (pypi-uri "Jinja2" version)) (sha256 (base32 - "1nwg9yfqgy421lncnm63k1zf9xkd1klc0jm0fr4p3dad01fsq91f")))) + "1x0v41lp5m1pjix3l46zx02b7lqp2hflgpnxwkywxynvi3zz47xw")))) (build-system python-build-system) (inputs `(("python-setuptools" ,python-setuptools) -- cgit v1.2.3 From 11f97c27bcd2a50e63466bb050d970c4e197ad71 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 13:03:03 +0200 Subject: gnu: pelican: Update to 3.6.3. * gnu/packages/python.scm (pelican): Update to 3.6.3. --- gnu/packages/python.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index f6bf0f8f23..17722c2b25 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -2680,16 +2680,14 @@ (define-public python2-blinker (define-public pelican (package (name "pelican") - (version "3.6.0") + (version "3.6.3") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/p/pelican/pelican-" - version ".tar.gz")) + (uri (pypi-uri "pelican" version)) (sha256 (base32 - "0lbkk902mqxpp452pp76n6qcjv6f99lq2zl204xmqyzcan9zr3ps")))) + "1hn94rb4q3zmcq16in055xikal4dba5hfx3zznq7warllcgc9f8k")))) (build-system python-build-system) (native-inputs `(("python-setuptools" ,python-setuptools))) -- cgit v1.2.3 From ec3bcbc7e43fb1e1c4b5faaced4c6697fa0e2084 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 13:11:47 +0200 Subject: gnu: python-rpy2: Update to 2.7.6. * gnu/packages/python.scm (python-rpy2): Update to 2.7.6. --- gnu/packages/python.scm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 17722c2b25..78684e6d1d 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -3385,15 +3385,14 @@ (define-public python2-pysnptools (define-public python-rpy2 (package (name "python-rpy2") - (version "2.6.0") + (version "2.7.6") (source (origin (method url-fetch) - (uri (string-append "https://pypi.python.org/packages/source/r/rpy2" - "/rpy2-" version ".tar.gz")) + (uri (pypi-uri "rpy2" version)) (sha256 (base32 - "1dp4l8hpv0jpf4crz4wis6in3lvwk86cr5zvpw410y4a07rrbqjk")))) + "0nhan2qvrw7b7gg5zddwa22kybdv3x1g26vkd7q8lvnkgzrs4dga")))) (build-system python-build-system) (inputs `(("python-six" ,python-six) -- cgit v1.2.3 From f7cb984133b4855bec31af002efe4de88f1c27fb Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 13:17:40 +0200 Subject: gnu: python-nose: Update to 1.3.7. * gnu/packages/python.scm (python-nose): Update to 1.3.7. --- gnu/packages/python.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 78684e6d1d..a1b926dfdf 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -1495,16 +1495,14 @@ (define-public python2-mimeparse (define-public python-nose (package (name "python-nose") - (version "1.3.4") + (version "1.3.7") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/n/nose/nose-" - version ".tar.gz")) + (uri (pypi-uri "nose" version)) (sha256 (base32 - "00qymfgwg4iam4xi0w9bnv7lcb3fypq1hzfafzgs1rfmwaj67g3n")))) + "164a43k7k2wsqqk1s6vavcdamvss4mz0vd6pwzv2h9n8rgwzxgzi")))) (build-system python-build-system) (inputs `(("python-setuptools" ,python-setuptools))) -- cgit v1.2.3 From d9aa097b96c87c872be44764525cefdf6b37331e Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 14:34:44 +0200 Subject: gnu: python-pyrfc3339: Update to 1.0. * gnu/packages/python.scm (python-pyrfc3339): Update to 1.0. --- gnu/packages/python.scm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index a1b926dfdf..7941a22b49 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -6441,15 +6441,14 @@ (define-public python2-pythondialog (define-public python-pyrfc3339 (package (name "python-pyrfc3339") - (version "0.2") + (version "1.0") (source (origin (method url-fetch) - (uri (string-append "https://pypi.python.org/packages/source/p/" - "pyRFC3339/pyRFC3339-" version ".tar.gz")) + (uri (pypi-uri "pyRFC3339" version)) (sha256 (base32 - "1pp648xsjaw9h1xq2mgwzda5wis2ypjmzxlksc1a8grnrdmzy155")))) + "0dgm4l9y8jiax5cp6yxjd2i27cq8h33sh81n1wfbmnmqb32cdywd")))) (build-system python-build-system) (propagated-inputs `(("python-pytz" ,python-pytz))) -- cgit v1.2.3 From 38eb6919e1a4e43864d81c1cab28ddae52a415b8 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 15:05:40 +0200 Subject: gnu: python-pycparser: Update to 2.14. * gnu/packages/python.scm (python-pycparser): Update to 2.14. --- gnu/packages/python.scm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 7941a22b49..8bdde7f470 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -3686,15 +3686,14 @@ (define-public python2-pillow (define-public python-pycparser (package (name "python-pycparser") - (version "2.10") + (version "2.14") (source (origin (method url-fetch) - (uri (string-append "https://pypi.python.org/packages/source/p/" - "pycparser/pycparser-" version ".tar.gz")) + (uri (pypi-uri "pycparser" version)) (sha256 (base32 - "0v5qfq03yvd1pi0dwlgfai0p3dh9bq94pydn19c4pdn0c6v9hzcm")))) + "0wvzyb6rxsfj3xcnpa4ynbh9qc7rrbk2277d5wqpphmx9akv8nbr")))) (outputs '("out" "doc")) (build-system python-build-system) (native-inputs -- cgit v1.2.3 From f56777be0a15f238a047c093cc43d92a09475139 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 15:59:07 +0200 Subject: gnu: python-psutil: Update to 3.3.0. * gnu/packages/python.scm (python-psutil): Update to 3.3.0. --- gnu/packages/python.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 8bdde7f470..e717b2b1dc 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -341,16 +341,14 @@ (define-public python-minimal-wrapper (wrap-python3 python-minimal)) (define-public python-psutil (package (name "python-psutil") - (version "3.0.1") + (version "3.3.0") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/p/psutil/psutil-" - version ".tar.gz")) + (uri (pypi-uri "psutil" version)) (sha256 (base32 - "00c8h1mzqysih99z8pnbmdv117d2naldf11yjy50dhykxsf3n89z")))) + "11bd1555vf2ibjnmqf64im5cp55vcqfq45ccinm9ll3bs68na6s2")))) (build-system python-build-system) (native-inputs `(("python-setuptools" ,python-setuptools))) -- cgit v1.2.3 From 3655ee76a69408eb2b596ac0f003cfdc028f622d Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 16:23:01 +0200 Subject: gnu: python-pyzmq: Update to 15.1.0. * gnu/packages/python.scm (python-pyzmq): Update to 15.1.0. --- gnu/packages/python.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index e717b2b1dc..14c3106a16 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -4911,15 +4911,13 @@ (define-public python2-waf (define-public python-pyzmq (package (name "python-pyzmq") - (version "14.6.0") + (version "15.1.0") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/p/pyzmq/pyzmq-" - version ".tar.gz")) + (uri (pypi-uri "pyzmq" version)) (sha256 - (base32 "1frmbjykvhmdg64g7sn20c9fpamrsfxwci1nhhg8q7jgz5pq0ikp")))) + (base32 "13fhwnlvsvxv72kfhqbpn6qi7msh8mc8377mpabv32skk2cjfnxx")))) (build-system python-build-system) (arguments `(#:configure-flags -- cgit v1.2.3 From 2abc397225d685fbd28011d6602f0c8fad807736 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 16:26:02 +0200 Subject: gnu: python-pyflakes: Update to 1.0.0. * gnu/packages/python.scm (python-pyflakes): Update to 1.0.0. --- gnu/packages/python.scm | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 14c3106a16..acceb2ff87 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -4970,17 +4970,14 @@ (define-public python2-pep8 (define-public python-pyflakes (package (name "python-pyflakes") - (version "0.9.2") + (version "1.0.0") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/p/pyflakes/pyflakes-" - version - ".tar.gz")) + (uri (pypi-uri "pyflakes" version)) (sha256 (base32 - "0pvawddspdq0y22dbraq5gld9qr6rwa7zhmpfhl2b7v9rqiiqs82")))) + "0qs2sgqszq7wcplis8509wk2ygqcrwzbs1ghfj3svvivq2j377pk")))) (build-system python-build-system) (inputs `(("python-setuptools" ,python-setuptools))) -- cgit v1.2.3 From 1b995533176e205d7ef92354e7c04be24a52b913 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 16:29:19 +0200 Subject: gnu: python-flake8: Update to 2.5.1. * gnu/packages/python.scm (python-flake8): Update to 2.5.1. --- gnu/packages/python.scm | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index acceb2ff87..bd3846655e 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -5073,17 +5073,14 @@ (define-public python2-pyflakes-0.8.1 (define-public python-flake8 (package (name "python-flake8") - (version "2.4.1") + (version "2.5.1") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/f/flake8/flake8-" - version - ".tar.gz")) + (uri (pypi-uri "flake8" version)) (sha256 (base32 - "0dvmrpv7x98xkzffjz1z7lqr90sp5zdz16bdwckfd1cckpjvnzif")))) + "00sn2g5ydriv5anbipcrprpv797kh4q8rfa75w3fc7v7n14fv2j4")))) (build-system python-build-system) (inputs `(("python-setuptools" ,python-setuptools) -- cgit v1.2.3 From b8834c219eb155d5d8b65f5db6f4f62fd8f0a9fe Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 16:36:16 +0200 Subject: gnu: python-webob: Update to 1.5.1. * gnu/packages/python.scm (python-webob): Update to 1.5.1. --- gnu/packages/python.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index bd3846655e..857dc01123 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -5479,16 +5479,14 @@ (define-public python2-monotonic (define-public python-webob (package (name "python-webob") - (version "1.5.0b0") + (version "1.5.1") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/W/WebOb/WebOb-" - version ".tar.gz")) + (uri (pypi-uri "WebOb" version)) (sha256 (base32 - "140b3iczclk1j0405rvw5gxshqfkhcc8254fj520z3m23cwbql4a")))) + "02bhhzijfhv8hmi1i54d4b0v43liwhnywhflvxsv4x3zax9s3afq")))) (build-system python-build-system) (inputs `(("python-nose" ,python-nose) -- cgit v1.2.3 From 99b00dc796bbcbf6e98d83cfa161084aef7e511d Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 16:54:04 +0200 Subject: gnu: python-tlsh: Update to 3.4.4. * gnu/packages/python.scm (python-tlsh): Update to 3.4.4. --- gnu/packages/python.scm | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 857dc01123..8d5cbde4b9 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -5827,19 +5827,16 @@ (define-public python2-pip (define-public python-tlsh (package (name "python-tlsh") - (version "3.4.1") ;according to CMakeLists.txt + (version "3.4.4") (home-page "https://github.com/trendmicro/tlsh") (source (origin - (method git-fetch) - (uri (git-reference - (url home-page) - ;; This is a commit right after 3.4.1; see - ;; . - (commit "3ae3f1f"))) + (method url-fetch) + (uri (string-append "https://github.com/trendmicro/tlsh/archive/v" + version ".tar.gz")) (sha256 (base32 - "12cvnr5ndm5cg6i7lch93id90kgwgrigjgrj8f186nh3h4bf9chj")) - (file-name (string-append name "-" version "-checkout")))) + "00bhzjqrlh7v538kbkbn8lgx976j1138al3sdhklaizqjvpwyk4r")) + (file-name (string-append name "-" version ".tar.gz")))) (build-system cmake-build-system) (arguments '(#:out-of-source? #f -- cgit v1.2.3 From 03fd001cef723869b0a90d5f14867e34fec18449 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 16:57:40 +0200 Subject: gnu: python-libarchive-c: Update to 2.2. * gnu/packages/python.scm (python-libarchive-c): Update to 2.2. --- gnu/packages/python.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 8d5cbde4b9..ab017ed000 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -5872,15 +5872,13 @@ (define-public python2-tlsh (define-public python-libarchive-c (package (name "python-libarchive-c") - (version "2.1") + (version "2.2") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/l/libarchive-c/libarchive-c-" - version ".tar.gz")) + (uri (pypi-uri "libarchive-c" version)) (sha256 (base32 - "089lrz6xyrfnk55v35vis6jyqyyl77w093057djyspnd2744wi2n")))) + "0z4r7v3dhd6b3120mav05ff08srih176r2rg5k8kn7mjd9pslm2x")))) (build-system python-build-system) (arguments '(#:phases (modify-phases %standard-phases -- cgit v1.2.3 From 690e8c663787760edb30ba62eb449e2c91dcec1d Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 17:54:19 +0200 Subject: gnu: python-passlib: Update to 1.6.5. * gnu/packages/python.scm (python-passlib): Update to 1.6.5. --- gnu/packages/python.scm | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index ab017ed000..4a62a8515e 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -370,17 +370,14 @@ (define-public python2-psutil (define-public python-passlib (package (name "python-passlib") - (version "1.6.2") + (version "1.6.5") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/p/passlib/passlib-" - version - ".tar.gz")) + (uri (pypi-uri "passlib" version)) (sha256 (base32 - "0b9rd161b3mmiwd7nx1v599yh9sp07mlfwac65sjy9qn1l0gd1z9")))) + "1z27wdxs5rj5xhhqfzvzn3yg682irkxw6dcs5jj7mcf97psk8gd8")))) (build-system python-build-system) (native-inputs `(("python-nose" ,python-nose) -- cgit v1.2.3 From 622d21bba91117a19ef92719db40a7072c988e92 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 19:50:48 +0200 Subject: gnu: python-tempest-lib: Update to 0.12.0. * gnu/packages/openstack.scm (python-tempest-lib): Update to 0.12.0. --- gnu/packages/openstack.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm index 2578292fd0..8bb321d473 100644 --- a/gnu/packages/openstack.scm +++ b/gnu/packages/openstack.scm @@ -345,14 +345,14 @@ (define-public python2-stevedore (define-public python-tempest-lib (package (name "python-tempest-lib") - (version "0.11.0") + (version "0.12.0") (source (origin (method url-fetch) (uri (pypi-uri "tempest-lib" version)) (sha256 (base32 - "1q4wpqcg0yv99mr5gc43wsfirlqdjz90npyghy3mn5f6lby2yikg")))) + "0f15wxk394cb2kw34krpxq8mvy1rxw0lnl5wfiv14cq1s1fm9cjd")))) (build-system python-build-system) (arguments `(#:phases -- cgit v1.2.3 From 45f4c28d80a81b681f5e2a72a485e2efe05729df Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 20:05:39 +0200 Subject: gnu: python-stevedore: Update to 1.10.0. * gnu/packages/openstack.scm (python-stevedore): Update to 1.10.0. --- gnu/packages/openstack.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm index 8bb321d473..956a4deaec 100644 --- a/gnu/packages/openstack.scm +++ b/gnu/packages/openstack.scm @@ -307,14 +307,14 @@ (define-public python2-requests-mock (define-public python-stevedore (package (name "python-stevedore") - (version "1.9.0") + (version "1.10.0") (source (origin (method url-fetch) (uri (pypi-uri "stevedore" version)) (sha256 (base32 - "01pcrdqsb6ca7hmqwm11b3baj6ml8yz9pxawrgvxb3j9824906fc")))) + "17vpffcnk56sj86d2n3vz5bprcc9bswilgd0awnm7jp073pqkmpm")))) (build-system python-build-system) (propagated-inputs `(("python-six" ,python-six))) -- cgit v1.2.3 From 47689888871eb6623ef61d0c418bd129903de27c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 20:09:54 +0200 Subject: gnu: python-os-testr: Update to 0.5.0. * gnu/packages/openstack.scm (python-os-testr): Update to 0.5.0. --- gnu/packages/openstack.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm index 956a4deaec..accea95482 100644 --- a/gnu/packages/openstack.scm +++ b/gnu/packages/openstack.scm @@ -202,14 +202,14 @@ (define-public python2-mox3 (define-public python-os-testr (package (name "python-os-testr") - (version "0.4.2") + (version "0.5.0") (source (origin (method url-fetch) (uri (pypi-uri "os-testr" version)) (sha256 (base32 - "0474z0mxb7y3vfk4s097wf1mzji5d135vh27cvlh9q17rq3x9r3w")))) + "0bv03wnmvxhyi8y08hjh9clxrwqc2251529v4kh5khvca0fsbqdp")))) (build-system python-build-system) (arguments ;; os-testr uses itself to run the tests. It seems like pbr writes the -- cgit v1.2.3 From f66bb273de028c79f46322f656c8712ae326dae2 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 20:31:35 +0200 Subject: gnu: python-oslo.serialization: Update to 2.2.0. * gnu/packages/openstack.scm (python-oslo.serialization): Update to 2.2.0. --- gnu/packages/openstack.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm index accea95482..fb253d1115 100644 --- a/gnu/packages/openstack.scm +++ b/gnu/packages/openstack.scm @@ -532,14 +532,14 @@ (define-public python2-oslo.log (define-public python-oslo.serialization (package (name "python-oslo.serialization") - (version "2.0.0") + (version "2.2.0") (source (origin (method url-fetch) (uri (pypi-uri "oslo.serialization" version)) (sha256 (base32 - "1hnkc69sa4r1qhx6hdwlrk2ng7wypgwr063iq5r815a0bv0qr1ad")))) + "00s03krhf833gs76aw5ns32w9m1i4hx6x6d9g82m0j5wyqk0sci4")))) (build-system python-build-system) (propagated-inputs `(("python-iso8601" ,python-iso8601) -- cgit v1.2.3 From ec89a25cad174269e3536b23f92a06ac1cd20fb3 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 20:34:34 +0200 Subject: gnu: python-oslosphinx: Update to 4.2.0. * gnu/packages/openstack.scm (python-oslosphinx): Update to 4.2.0. --- gnu/packages/openstack.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm index fb253d1115..af12fe5196 100644 --- a/gnu/packages/openstack.scm +++ b/gnu/packages/openstack.scm @@ -569,14 +569,14 @@ (define-public python2-oslo.serialization (define-public python-oslosphinx (package (name "python-oslosphinx") - (version "3.1.0") + (version "4.2.0") (source (origin (method url-fetch) (uri (pypi-uri "oslosphinx" version)) (sha256 (base32 - "0zcshdc9s1f7hnvg0fm2ps5rak3dpnm8kqg4i21lknhmsvb7p5cb")))) + "178svff46pmynpsnw06gpxk0w13p1gwkqbsvyxphblxv9wl09ksz")))) (build-system python-build-system) (propagated-inputs `(("python-requests" ,python-requests))) -- cgit v1.2.3 From 1780424035b750e9c8bc33cec99dd27568854716 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 22:20:20 +0200 Subject: gnu: python-virtualenv: Update to 13.1.2. * gnu/packages/python.scm (python-virtualenv): Update to 13.1.2. [arguments]: Custom test command. [inputs]: Remove python-nose, add python-pytest. --- gnu/packages/python.scm | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 4a62a8515e..82243feff5 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -2364,21 +2364,24 @@ (define-public python2-pyyaml (define-public python-virtualenv (package (name "python-virtualenv") - (version "1.11.6") + (version "13.1.2") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/v/virtualenv/virtualenv-" - version ".tar.gz")) + (uri (pypi-uri "virtualenv" version)) (sha256 (base32 - "1xq4prmg25n9cz5zcvbqx68lmc3kl39by582vd8pzs9f3qalqyiy")))) + "1p732accxwqfjbdna39k8w8lp9gyw91vr4kzkhm8mgfxikqqxg5a")))) (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ (zero? (system* "py.test"))))))) (inputs `(("python-setuptools" ,python-setuptools) ("python-mock" ,python-mock) - ("python-nose" ,python-nose))) + ("python-pytest" ,python-pytest))) (home-page "https://virtualenv.pypa.io/") (synopsis "Virtual Python environment builder") (description -- cgit v1.2.3 From af1ab7731286fbbe5cdb318f32b13210716eb70d Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 22:25:22 +0200 Subject: gnu: python-pyld: Update to 0.6.8. * gnu/packages/python.scm (python-pyld): Update to 0.6.8. --- gnu/packages/python.scm | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 82243feff5..9eabc6570b 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -2063,16 +2063,13 @@ (define-public python2-exif-read (define-public python-pyld (package (name "python-pyld") - (version "0.6.0") + (version "0.6.8") (source (origin (method url-fetch) - (uri - (string-append - "https://pypi.python.org/packages/source/P/PyLD/PyLD-" - version ".tar.gz")) + (uri (pypi-uri "PyLD" version)) (sha256 (base32 - "1l9ymj85fsvayqplinzpk0kyiq6m74ps9xd3a9fhlxfn1rldf8x8")))) + "0k881ffazpf8q1z8862g4bb3pzwpnz9whrci2mf311mvn1qbyqad")))) (build-system python-build-system) (inputs `(("python-setuptools" ,python-setuptools))) -- cgit v1.2.3 From 13fcc6df37457d79a0d83336b11093bd836b82b4 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 22:30:59 +0200 Subject: gnu: python-fixtures: Update to 1.4.0. * gnu/packages/python.scm (python-fixtures): Update to 1.4.0. --- gnu/packages/python.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 9eabc6570b..b8afe3c667 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -1891,16 +1891,14 @@ (define-public python2-pbr-0.11 (define-public python-fixtures (package (name "python-fixtures") - (version "1.3.1") + (version "1.4.0") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/f/fixtures/fixtures-" - version ".tar.gz")) + (uri (pypi-uri "fixtures" version)) (sha256 (base32 - "1khpywdh91ijryhxjxiyyi5rmbimhl8hwbbf8lazhgzq6yxz6g5n")))) + "0djxvdwm8s60dbfn7bhf40x6g818p3b3mlwijm1c3bqg7msn271y")))) (build-system python-build-system) (propagated-inputs `(("python-six" ,python-six) -- cgit v1.2.3 From 34da7af4c150faee648206c3623babecccbf7814 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 30 Dec 2015 23:15:50 +0200 Subject: gnu: python-mox3: Update to 0.13.0. * gnu/packages/openstack.scm (python-mox3): Update to 0.13.0. --- gnu/packages/openstack.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm index af12fe5196..48a5c6b7e6 100644 --- a/gnu/packages/openstack.scm +++ b/gnu/packages/openstack.scm @@ -136,14 +136,14 @@ (define-public python2-hacking (define-public python-mox3 (package (name "python-mox3") - (version "0.12.0") + (version "0.13.0") (source (origin (method url-fetch) (uri (pypi-uri "mox3" version)) (sha256 (base32 - "1pwz98q098cb8xxf8yryq21nvklc7hla880bsrq4y3j6bprw3iaj")))) + "0hj57374r239cj1zbzpxw7mj0yfblz55jdfrc2p1h8j7xng0319j")))) (build-system python-build-system) (inputs `(("python-fixtures" ,python-fixtures) -- cgit v1.2.3 From 2ef8bbc3ae2c24ed89e482b7570197d44b35ed7f Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 30 Dec 2015 19:58:06 -0500 Subject: gnu: libcue: Update source URL. * gnu/packages/cdrom.scm (libcue)[source]: Update URL. --- gnu/packages/cdrom.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/cdrom.scm b/gnu/packages/cdrom.scm index fec1fc9632..f9a1b677b9 100644 --- a/gnu/packages/cdrom.scm +++ b/gnu/packages/cdrom.scm @@ -240,8 +240,9 @@ (define-public libcue (version "1.4.0") (source (origin (method url-fetch) - (uri (string-append "mirror://sourceforge/libcue/libcue-" - version ".tar.bz2")) + (uri (string-append "https://github.com/lipnitsk/libcue/releases" + "/download/v" version + "/libcue-" version ".tar.bz2")) (sha256 (base32 "17kjd7rjz1bvfn44n3n2bjb7a1ywd0yc0g4sqp5ihf9b5bn7cwlb")))) -- cgit v1.2.3 From 658212ebf74a28f5a4b035f9fe2100fbc5d89e47 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 28 Dec 2015 16:14:03 -0500 Subject: gnu: Move cursynth to (gnu packages music). * gnu/packages/cursynth.scm: Remove. * gnu/packages/music.scm (cursynth): New variable, from cursynth.scm. * gnu-system.am (GNU_SYSTEM_MODULES): Remove cursynth.scm. --- gnu-system.am | 1 - gnu/packages/cursynth.scm | 53 ----------------------------------------------- gnu/packages/music.scm | 27 ++++++++++++++++++++++++ 3 files changed, 27 insertions(+), 54 deletions(-) delete mode 100644 gnu/packages/cursynth.scm (limited to 'gnu') diff --git a/gnu-system.am b/gnu-system.am index 78669bd0d3..24f7516fcf 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -76,7 +76,6 @@ GNU_SYSTEM_MODULES = \ gnu/packages/cryptsetup.scm \ gnu/packages/cups.scm \ gnu/packages/curl.scm \ - gnu/packages/cursynth.scm \ gnu/packages/cyrus-sasl.scm \ gnu/packages/databases.scm \ gnu/packages/datamash.scm \ diff --git a/gnu/packages/cursynth.scm b/gnu/packages/cursynth.scm deleted file mode 100644 index 80f86da241..0000000000 --- a/gnu/packages/cursynth.scm +++ /dev/null @@ -1,53 +0,0 @@ -;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014 Eric Bavier -;;; -;;; This file is part of GNU Guix. -;;; -;;; GNU Guix is free software; you can redistribute it and/or modify it -;;; under the terms of the GNU General Public License as published by -;;; the Free Software Foundation; either version 3 of the License, or (at -;;; your option) any later version. -;;; -;;; GNU Guix is distributed in the hope that it will be useful, but -;;; WITHOUT ANY WARRANTY; without even the implied warranty of -;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;;; GNU General Public License for more details. -;;; -;;; You should have received a copy of the GNU General Public License -;;; along with GNU Guix. If not, see . - -(define-module (gnu packages cursynth) - #:use-module (guix packages) - #:use-module (guix licenses) - #:use-module (guix download) - #:use-module (guix build-system gnu) - #:use-module (gnu packages) - #:use-module (gnu packages pkg-config) - #:use-module (gnu packages ncurses) - #:use-module (gnu packages linux)) - -(define-public cursynth - (package - (name "cursynth") - (version "1.5") - (source - (origin - (method url-fetch) - (uri (string-append "mirror://gnu/cursynth/cursynth-" - version ".tar.gz")) - (sha256 - (base32 "1dhphsya41rv8z6yqcv9l6fwbslsds4zh1y56zizi39nd996d40v")) - (patches (list (search-patch "cursynth-wave-rand.patch"))))) - (build-system gnu-build-system) - (native-inputs `(("pkg-config" ,pkg-config))) - ;; TODO: See https://github.com/iyoko/cursynth/issues/4 which currently - ;; prevents us from using pulseaudio - (inputs `(("ncurses" ,ncurses) - ("alsa" ,alsa-lib))) - (home-page "http://www.gnu.org/software/cursynth") - (synopsis "Polyphonic and MIDI subtractive music synthesizer using curses") - (description "GNU cursynth is a polyphonic synthesizer that runs -graphically in the terminal. It is built on a full-featured subtractive -synthesis engine. Notes and parameter changes may be entered via MIDI or the -computer's keyboard.") - (license gpl3+))) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 264fcd9d0f..fd1751e95b 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -1,4 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2014 Eric Bavier ;;; Copyright © 2015 Ricardo Wurmus ;;; Copyright © 2015 Paul van der Walt ;;; @@ -1004,3 +1005,29 @@ (define-public yoshimi synths, microtonal capabilities, custom envelopes, effects, etc. Yoshimi improves on support for JACK features, such as JACK MIDI.") (license license:gpl2))) + +(define-public cursynth + (package + (name "cursynth") + (version "1.5") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://gnu/cursynth/cursynth-" + version ".tar.gz")) + (sha256 + (base32 "1dhphsya41rv8z6yqcv9l6fwbslsds4zh1y56zizi39nd996d40v")) + (patches (list (search-patch "cursynth-wave-rand.patch"))))) + (build-system gnu-build-system) + (native-inputs `(("pkg-config" ,pkg-config))) + ;; TODO: See https://github.com/iyoko/cursynth/issues/4 which currently + ;; prevents us from using pulseaudio + (inputs `(("ncurses" ,ncurses) + ("alsa" ,alsa-lib))) + (home-page "http://www.gnu.org/software/cursynth") + (synopsis "Polyphonic and MIDI subtractive music synthesizer using curses") + (description "GNU cursynth is a polyphonic synthesizer that runs +graphically in the terminal. It is built on a full-featured subtractive +synthesis engine. Notes and parameter changes may be entered via MIDI or the +computer's keyboard.") + (license license:gpl3+))) -- cgit v1.2.3 From 45147b0caa716a6a0c333fb1cc53990ff79d97d8 Mon Sep 17 00:00:00 2001 From: Fabian Harfert Date: Tue, 15 Dec 2015 21:00:38 +0100 Subject: gnu: Add xaos. * gnu/packages/maths.scm (xaos): New variable. Signed-off-by: Alex Kost --- gnu/packages/maths.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index e7a7b7c4b9..e2d5aa1ff4 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2015 Sou Bunnbu ;;; Copyright © 2015 Mark H Weaver ;;; Copyright © 2015 Efraim Flashner +;;; Copyright © 2015 Fabian Harfert ;;; ;;; This file is part of GNU Guix. ;;; @@ -53,6 +54,7 @@ (define-module (gnu packages maths) #:use-module (gnu packages ghostscript) #:use-module (gnu packages glib) #:use-module (gnu packages gtk) + #:use-module (gnu packages image) #:use-module (gnu packages less) #:use-module (gnu packages lisp) #:use-module (gnu packages gnome) @@ -2031,3 +2033,32 @@ (define-public wcalc conversions, embedded comments, and an expandable expression entry field. It evaluates expressions using the standard order of operations.") (license license:gpl2+))) + +(define-public xaos + (package + (name "xaos") + (version "3.6") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/xaos/xaos-" + version ".tar.gz")) + (sha256 + (base32 + "15cd1cx1dyygw6g2nhjqq3bsfdj8sj8m4va9n75i0f3ryww3x7wq")))) + (build-system gnu-build-system) + (native-inputs `(("gettext" ,gnu-gettext))) + (inputs `(("libx11" ,libx11) + ("zlib" ,zlib) + ("libpng" ,libpng) + ("gsl" ,gsl))) + (arguments + `(#:tests? #f ;no "check" target + #:make-flags '("LOCALEDIR=$DATAROOTDIR/locale"))) + (synopsis "Real-time fractal zoomer") + (description "GNU XaoS is a graphical program that generates fractal +patterns and allows you to zoom in and out of them infinitely in a fluid, +continuous manner. It also includes tutorials that help to explain how fractals +are built. It can generate many different fractal types such as the Mandelbrot +set.") + (home-page "http://www.gnu.org/software/xaos/") + (license license:gpl2+))) -- cgit v1.2.3 From 29824d80ec3b86bcf68afc1a9d903e2a3c479533 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 1 Jan 2016 22:29:33 +0100 Subject: system: Allow the root file system to have a UUID. This is a followup to ab64483. * gnu/system.scm (mapped-device-user): Check whether the title of FS is 'device before calling 'string=?'. * gnu/system/vm.scm (virtualized-operating-system)[user-file-systems]: Likewise. --- gnu/system.scm | 7 ++++--- gnu/system/vm.scm | 5 +++-- 2 files changed, 7 insertions(+), 5 deletions(-) (limited to 'gnu') diff --git a/gnu/system.scm b/gnu/system.scm index 6f7500f93a..acb7f15e4e 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015 Ludovic Courtès +;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès ;;; Copyright © 2015 Mark H Weaver ;;; Copyright © 2015 Alex Kost ;;; @@ -193,7 +193,7 @@ (define file-systems (define (device-mappings fs) (let ((device (file-system-device fs))) - (if (string? device) + (if (string? device) ;title is 'device (filter (lambda (md) (string=? (string-append "/dev/mapper/" (mapped-device-target md)) @@ -216,7 +216,8 @@ (define (mapped-device-user device file-systems) "Return a file system among FILE-SYSTEMS that uses DEVICE, or #f." (let ((target (string-append "/dev/mapper/" (mapped-device-target device)))) (find (lambda (fs) - (string=? (file-system-device fs) target)) + (and (eq? 'device (file-system-title fs)) + (string=? (file-system-device fs) target))) file-systems))) (define (operating-system-user-mapped-devices os) diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index 1492a0bb1c..3cba400a57 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015 Ludovic Courtès +;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -391,7 +391,8 @@ (define user-file-systems (source (file-system-device fs))) (or (string=? target (%store-prefix)) (string=? target "/") - (string-prefix? "/dev/" source)))) + (and (eq? 'device (file-system-title fs)) + (string-prefix? "/dev/" source))))) (operating-system-file-systems os))) (operating-system (inherit os) -- cgit v1.2.3 From f8865db6a002c9b968d39d0d91524edf55e0d873 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 1 Jan 2016 22:41:35 +0100 Subject: file-systems: Move 'string->uuid' to the build side. * gnu/system/file-systems.scm (%uuid-rx, string->uuid): Move to... * gnu/build/file-systems.scm (%uuid-rx, string->uuid): ... here. New variables. --- gnu/build/file-systems.scm | 46 ++++++++++++++++++++++++++++++++++++++++++++- gnu/system/file-systems.scm | 45 +++++--------------------------------------- 2 files changed, 50 insertions(+), 41 deletions(-) (limited to 'gnu') diff --git a/gnu/build/file-systems.scm b/gnu/build/file-systems.scm index 00af35d3df..d83a4f6015 100644 --- a/gnu/build/file-systems.scm +++ b/gnu/build/file-systems.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014, 2015 Ludovic Courtès +;;; Copyright © 2014, 2015, 2016 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -23,6 +23,7 @@ (define-module (gnu build file-systems) #:use-module (ice-9 match) #:use-module (ice-9 rdelim) #:use-module (ice-9 format) + #:use-module (ice-9 regex) #:use-module (system foreign) #:autoload (system repl repl) (start-repl) #:use-module (srfi srfi-1) @@ -34,6 +35,9 @@ (define-module (gnu build file-systems) find-partition-by-uuid canonicalize-device-spec + uuid->string + string->uuid + MS_RDONLY MS_NOSUID MS_NODEV @@ -213,6 +217,11 @@ (define (find-partition-by-uuid uuid) (disk-partitions)) (cut string-append "/dev/" <>))) + +;;; +;;; UUIDs. +;;; + (define-syntax %network-byte-order (identifier-syntax (endianness big))) @@ -228,6 +237,41 @@ (define (uuid->string uuid) (format #f "~8,'0x-~4,'0x-~4,'0x-~4,'0x-~12,'0x" time-low time-mid time-hi clock-seq node))) +(define %uuid-rx + ;; The regexp of a UUID. + (make-regexp "^([[:xdigit:]]{8})-([[:xdigit:]]{4})-([[:xdigit:]]{4})-([[:xdigit:]]{4})-([[:xdigit:]]{12})$")) + +(define (string->uuid str) + "Parse STR as a DCE UUID (see ) and +return its contents as a 16-byte bytevector. Return #f if STR is not a valid +UUID representation." + (and=> (regexp-exec %uuid-rx str) + (lambda (match) + (letrec-syntax ((hex->number + (syntax-rules () + ((_ index) + (string->number (match:substring match index) + 16)))) + (put! + (syntax-rules () + ((_ bv index (number len) rest ...) + (begin + (bytevector-uint-set! bv index number + (endianness big) len) + (put! bv (+ index len) rest ...))) + ((_ bv index) + bv)))) + (let ((time-low (hex->number 1)) + (time-mid (hex->number 2)) + (time-hi (hex->number 3)) + (clock-seq (hex->number 4)) + (node (hex->number 5)) + (uuid (make-bytevector 16))) + (put! uuid 0 + (time-low 4) (time-mid 2) (time-hi 2) + (clock-seq 2) (node 6))))))) + + (define* (canonicalize-device-spec spec #:optional (title 'any)) "Return the device name corresponding to SPEC. TITLE is a symbol, one of the following: diff --git a/gnu/system/file-systems.scm b/gnu/system/file-systems.scm index 47a3dbc1e8..d93044ce04 100644 --- a/gnu/system/file-systems.scm +++ b/gnu/system/file-systems.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015 Ludovic Courtès +;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -18,13 +18,13 @@ (define-module (gnu system file-systems) #:use-module (ice-9 match) - #:use-module (ice-9 regex) #:use-module (guix gexp) #:use-module (guix records) #:use-module (guix store) - #:use-module (rnrs bytevectors) - #:use-module ((gnu build file-systems) #:select (uuid->string)) - #:re-export (uuid->string) + #:use-module ((gnu build file-systems) + #:select (string->uuid uuid->string)) + #:re-export (string->uuid + uuid->string) #:export ( file-system file-system? @@ -41,7 +41,6 @@ (define-module (gnu system file-systems) file-system-dependencies file-system->spec - string->uuid uuid %fuse-control-file-system @@ -118,40 +117,6 @@ (define (file-system->spec fs) (($ device title mount-point type flags options _ _ check?) (list device title mount-point type flags options check?)))) -(define %uuid-rx - ;; The regexp of a UUID. - (make-regexp "^([[:xdigit:]]{8})-([[:xdigit:]]{4})-([[:xdigit:]]{4})-([[:xdigit:]]{4})-([[:xdigit:]]{12})$")) - -(define (string->uuid str) - "Parse STR as a DCE UUID (see ) and -return its contents as a 16-byte bytevector. Return #f if STR is not a valid -UUID representation." - (and=> (regexp-exec %uuid-rx str) - (lambda (match) - (letrec-syntax ((hex->number - (syntax-rules () - ((_ index) - (string->number (match:substring match index) - 16)))) - (put! - (syntax-rules () - ((_ bv index (number len) rest ...) - (begin - (bytevector-uint-set! bv index number - (endianness big) len) - (put! bv (+ index len) rest ...))) - ((_ bv index) - bv)))) - (let ((time-low (hex->number 1)) - (time-mid (hex->number 2)) - (time-hi (hex->number 3)) - (clock-seq (hex->number 4)) - (node (hex->number 5)) - (uuid (make-bytevector 16))) - (put! uuid 0 - (time-low 4) (time-mid 2) (time-hi 2) - (clock-seq 2) (node 6))))))) - (define-syntax uuid (lambda (s) "Return the bytevector corresponding to the given UUID representation." -- cgit v1.2.3 From f453f637d5410f4d1e0b3787caa8d34b9b72d7d8 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 1 Jan 2016 22:45:58 +0100 Subject: system: Allow the root file system to be named by UUID. * gnu/build/file-systems.scm (canonicalize-device-spec)[canonical-title]: Use 'string->uuid' to check whether SPEC is a UUID. When SPEC is a string and CANONICAL-TITLE is 'uuid, call 'string->uuid'. * gnu/system.scm (operating-system-grub.cfg): Add 'root-device' variable and use it for the "--root=" argument. --- gnu/build/file-systems.scm | 15 +++++++++++---- gnu/system.scm | 6 ++++-- 2 files changed, 15 insertions(+), 6 deletions(-) (limited to 'gnu') diff --git a/gnu/build/file-systems.scm b/gnu/build/file-systems.scm index d83a4f6015..f8b8697b46 100644 --- a/gnu/build/file-systems.scm +++ b/gnu/build/file-systems.scm @@ -295,9 +295,12 @@ (define canonical-title ;; The realm of canonicalization. (if (eq? title 'any) (if (string? spec) - (if (string-prefix? "/" spec) - 'device - 'label) + ;; The "--root=SPEC" kernel command-line option always provides a + ;; string, but the string can represent a device, a UUID, or a + ;; label. So check for all three. + (cond ((string-prefix? "/" spec) 'device) + ((string->uuid spec) 'uuid) + (else 'label)) 'uuid) title)) @@ -323,7 +326,11 @@ (define (resolve find-partition spec fmt) ;; Resolve the label. (resolve find-partition-by-label spec identity)) ((uuid) - (resolve find-partition-by-uuid spec uuid->string)) + (resolve find-partition-by-uuid + (if (string? spec) + (string->uuid spec) + spec) + uuid->string)) (else (error "unknown device title" title)))) diff --git a/gnu/system.scm b/gnu/system.scm index acb7f15e4e..6dfcc0fe3a 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -673,12 +673,14 @@ (define* (operating-system-grub.cfg os #:optional (old-entries '())) ((system (operating-system-derivation os)) (root-fs -> (operating-system-root-file-system os)) (kernel -> (operating-system-kernel os)) + (root-device -> (if (eq? 'uuid (file-system-title root-fs)) + (uuid->string (file-system-device root-fs)) + (file-system-device root-fs))) (entries -> (list (menu-entry (label (kernel->grub-label kernel)) (linux kernel) (linux-arguments - (cons* (string-append "--root=" - (file-system-device root-fs)) + (cons* (string-append "--root=" root-device) #~(string-append "--system=" #$system) #~(string-append "--load=" #$system "/boot") -- cgit v1.2.3 From 319007c507eebea3775b3b5101696d81a3bddefe Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 1 Jan 2016 22:59:20 +0100 Subject: gnu: guile-ssh: Update to 0.9.0. * gnu/packages/ssh.scm (guile-ssh): Update to 0.9.0. --- gnu/packages/ssh.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index cb8570a74b..76032f9b62 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -186,7 +186,7 @@ (define-public openssh (define-public guile-ssh (package (name "guile-ssh") - (version "0.8.0") + (version "0.9.0") (source (origin ;; ftp://memory-heap.org/software/guile-ssh/guile-ssh-VERSION.tar.gz ;; exists, but the server appears to be too slow and unreliable. @@ -197,7 +197,7 @@ (define-public guile-ssh (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "1ld2khzylaylhqfsfcvbxs95frvm8pkr7dq40ia1wwn9c349fcdv")))) + "04zs1cykwdyj51ag62ymrkgsja9dbhbaaglkvbfbac0bkxl2ir6d")))) (build-system gnu-build-system) (arguments '(#:phases (alist-cons-after -- cgit v1.2.3 From 05d48c5243c378222840e72941aefeea165d8402 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Sat, 2 Jan 2016 10:30:21 +0800 Subject: gnu: love: Update to 0.10.0. * gnu/packages/game-development.scm (love): Update to 0.10.0. --- gnu/packages/game-development.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 1e3854aab1..0274904197 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -266,14 +266,14 @@ (define-public physfs (define-public love (package (name "love") - (version "0.9.2") + (version "0.10.0") (source (origin (method url-fetch) (uri (string-append "https://bitbucket.org/rude/love/downloads/" "love-" version "-linux-src.tar.gz")) (sha256 (base32 - "0wn1npr5gal5b1idh4a5fwc3f5c36lsbjd4r4d699rqlviid15d9")))) + "1r2n1nrw3hcdvy14fjbwz3l9swcy65v3lqwpj2frnkkcwncdz94p")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -281,6 +281,7 @@ (define-public love `(("devil" ,devil) ("freetype" ,freetype) ("libmodplug" ,libmodplug) + ("libtheora" ,libtheora) ("libvorbis" ,libvorbis) ("luajit" ,luajit) ("mesa" ,mesa) -- cgit v1.2.3 From b98939088987b68fd41d85226e30650d6dd7e80e Mon Sep 17 00:00:00 2001 From: Erik Edrosa Date: Fri, 1 Jan 2016 15:28:46 -0500 Subject: gnu: Add python-markdown. * gnu/packages/python.scm (python-markdown, python2-markdown): New variables. Signed-off-by: Leo Famulari --- gnu/packages/python.scm | 35 ++++++++++++++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index b8afe3c667..4ab1eede6c 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -13,7 +13,7 @@ ;;; Copyright © 2015 David Thompson ;;; Copyright © 2015 Leo Famulari ;;; Copyright © 2015 Ben Woodcroft -;;; Copyright © 2015 Erik Edrosa +;;; Copyright © 2015, 2016 Erik Edrosa ;;; Copyright © 2015 Efraim Flashner ;;; Copyright © 2015 Kyle Meyer ;;; Copyright © 2015 Chris Marusich @@ -5145,6 +5145,39 @@ (define-public python-mistune (define-public python2-mistune (package-with-python2 python-mistune)) +(define-public python-markdown + (package + (name "python-markdown") + (version "2.6.5") + (source + (origin + (method url-fetch) + (uri (pypi-uri "Markdown" version)) + (sha256 + (base32 + "0q758a3fiiawr20b3hhjfs677cwj6xi284yb7xspcvv0fdicz54d")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + (zero? (system* "python" "run-tests.py"))))))) + (native-inputs + `(("python-nose" ,python-nose) + ("python-pyyaml" ,python-pyyaml))) + (home-page "https://pythonhosted.org/Markdown/") + (synopsis "Python implementation of Markdown") + (description + "This package provides a Python implementation of John Gruber's +Markdown. The library features international input, various Markdown +extensions, and several HTML output formats. A command line wrapper +markdown_py is also provided to convert Markdown files to HTML.") + (license bsd-3))) + +(define-public python2-markdown + (package-with-python2 python-markdown)) + (define-public python-ptyprocess (package (name "python-ptyprocess") -- cgit v1.2.3