From 2170cc76d4b2c47ccb831a706e8f40669c156e60 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Wed, 12 Jul 2017 19:55:54 +0530 Subject: gnu: graphviz: Use modify-phases. * gnu/packages/graphviz.scm (graphviz): Re-indent. [arguments]: Use modify-phases instead of alist-cons-before and alist-cons-after. Return #t from move-guile-bindings phase. --- gnu/packages/graphviz.scm | 76 +++++++++++++++++++++++------------------------ 1 file changed, 37 insertions(+), 39 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/graphviz.scm b/gnu/packages/graphviz.scm index d47d45e527..d11160cbb1 100644 --- a/gnu/packages/graphviz.scm +++ b/gnu/packages/graphviz.scm @@ -46,49 +46,47 @@ (name "graphviz") (version "2.38.0") (source (origin - (method url-fetch) - (uri (string-append - "http://www.graphviz.org/pub/graphviz/ARCHIVE/graphviz-" - version ".tar.gz")) - (sha256 - (base32 - "17l5czpvv5ilmg17frg0w4qwf89jzh2aglm9fgx0l0aakn6j7al1")))) + (method url-fetch) + (uri (string-append + "http://www.graphviz.org/pub/graphviz/ARCHIVE/graphviz-" + version ".tar.gz")) + (sha256 + (base32 + "17l5czpvv5ilmg17frg0w4qwf89jzh2aglm9fgx0l0aakn6j7al1")))) (build-system gnu-build-system) (arguments ;; FIXME: rtest/rtest.sh is a ksh script (!). Add ksh as an input. '(#:tests? #f - - #:phases (alist-cons-before - 'build 'pre-build - (lambda _ - ;; Work around bogus makefile when using an external - ;; libltdl. Failing to do so, one hits this error: - ;; "No rule to make target `-lltdl', needed by `libgvc.la'." - (substitute* "lib/gvc/Makefile" - (("am__append_5 *=.*") - "am_append_5 =\n"))) - (alist-cons-after - 'install 'move-docs - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (doc (assoc-ref outputs "doc"))) - (mkdir-p (string-append doc "/share/graphviz")) - (rename-file (string-append out "/share/graphviz/doc") - (string-append doc "/share/graphviz/doc")) - #t)) - (alist-cons-after - 'move-docs 'move-guile-bindings - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (lib (string-append out "/lib")) - (extdir (string-append lib - "/guile/2.0/extensions"))) - (mkdir-p extdir) - (rename-file (string-append - lib "/graphviz/guile/libgv_guile.so") - (string-append extdir - "/libgv_guile.so")))) - %standard-phases))))) + #:phases + (modify-phases %standard-phases + (add-before 'build 'pre-build + (lambda _ + ;; Work around bogus makefile when using an external + ;; libltdl. Failing to do so, one hits this error: + ;; "No rule to make target `-lltdl', needed by `libgvc.la'." + (substitute* "lib/gvc/Makefile" + (("am__append_5 *=.*") + "am_append_5 =\n")))) + (add-after 'install 'move-docs + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (doc (assoc-ref outputs "doc"))) + (mkdir-p (string-append doc "/share/graphviz")) + (rename-file (string-append out "/share/graphviz/doc") + (string-append doc "/share/graphviz/doc")) + #t))) + (add-after 'move-docs 'move-guile-bindings + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (lib (string-append out "/lib")) + (extdir (string-append lib + "/guile/2.0/extensions"))) + (mkdir-p extdir) + (rename-file (string-append + lib "/graphviz/guile/libgv_guile.so") + (string-append extdir + "/libgv_guile.so")) + #t)))))) (inputs `(("libXrender" ,libxrender) ("libX11" ,libx11) -- cgit v1.2.3 From cca9c756613201baec6655b4d7376727179e9951 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Wed, 12 Jul 2017 19:55:55 +0530 Subject: gnu: graphviz: Update to 2.40.1. * gnu/packages/graphviz.scm (graphviz): Update to 2.40.1. [arguments]: Remove pre-build phase. --- gnu/packages/graphviz.scm | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/graphviz.scm b/gnu/packages/graphviz.scm index d11160cbb1..6724ba6d7d 100644 --- a/gnu/packages/graphviz.scm +++ b/gnu/packages/graphviz.scm @@ -44,7 +44,7 @@ (define-public graphviz (package (name "graphviz") - (version "2.38.0") + (version "2.40.1") (source (origin (method url-fetch) (uri (string-append @@ -52,21 +52,13 @@ version ".tar.gz")) (sha256 (base32 - "17l5czpvv5ilmg17frg0w4qwf89jzh2aglm9fgx0l0aakn6j7al1")))) + "08d4ygkxz2f553bxj6087da56a23kx1khv0j8ycxa102vvx1hlna")))) (build-system gnu-build-system) (arguments ;; FIXME: rtest/rtest.sh is a ksh script (!). Add ksh as an input. '(#:tests? #f #:phases (modify-phases %standard-phases - (add-before 'build 'pre-build - (lambda _ - ;; Work around bogus makefile when using an external - ;; libltdl. Failing to do so, one hits this error: - ;; "No rule to make target `-lltdl', needed by `libgvc.la'." - (substitute* "lib/gvc/Makefile" - (("am__append_5 *=.*") - "am_append_5 =\n")))) (add-after 'install 'move-docs (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out")) -- cgit v1.2.3 From 28a96f2aa1feb62ca8943f2b6e4cecb35021763f Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Wed, 12 Jul 2017 19:55:56 +0530 Subject: gnu: wayland: Add workaround for graphviz 2.40.1. * gnu/packages/freedesktop.scm (wayland)[arguments]: Add fix-graphviz phase. --- gnu/packages/freedesktop.scm | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'gnu/packages') diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index a9a7e08da1..d0d7604b1e 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -367,7 +367,17 @@ Python.") (base32 "0lgywr1m0d79vr4s8aimj8a307nss29hhy68gjpqj7m667055c39")))) (build-system gnu-build-system) - (arguments `(#:parallel-tests? #f)) + (arguments + `(#:parallel-tests? #f + #:phases + (modify-phases %standard-phases + ;; Remove record shapes to workaround graphviz 2.40.1 problems + ;; http://www.graphviz.org/content/i-havent-been-able-render-these-files-graphviz-226 + ;; This will likely be fixed upstream in the next release + (add-before 'build 'fix-graphviz + (lambda _ + (substitute* "doc/doxygen/dot/x-architecture.gv" + (("Mrecord") "none"))))))) (native-inputs `(("doxygen" ,doxygen) ("graphviz" ,graphviz) -- cgit v1.2.3 From d670267cbdceb4c234bac4467ac7bacc081b85dd Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Wed, 19 Jul 2017 14:46:30 +0530 Subject: gnu: wayland: Improve fix-graphviz phase. * gnu/packages/freedesktop.scm (wayland)[arguments]: Return #t from fix-graphviz phase. Add punctuation and upstream bug report link to comments. --- gnu/packages/freedesktop.scm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index d0d7604b1e..df2fe787fb 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -371,13 +371,15 @@ Python.") `(#:parallel-tests? #f #:phases (modify-phases %standard-phases - ;; Remove record shapes to workaround graphviz 2.40.1 problems + ;; Remove record shapes to workaround graphviz 2.40.1 problems. ;; http://www.graphviz.org/content/i-havent-been-able-render-these-files-graphviz-226 - ;; This will likely be fixed upstream in the next release + ;; This will likely be fixed upstream in the next release. + ;; https://lists.freedesktop.org/archives/wayland-devel/2017-June/034218.html (add-before 'build 'fix-graphviz (lambda _ (substitute* "doc/doxygen/dot/x-architecture.gv" - (("Mrecord") "none"))))))) + (("Mrecord") "none")) + #t))))) (native-inputs `(("doxygen" ,doxygen) ("graphviz" ,graphviz) -- cgit v1.2.3 From 0963e3e450e85e3cf59b92fd28c771e8cbaaee2a Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 23 Jul 2017 19:05:45 +0200 Subject: gnu: lzip: Update to 1.19. * gnu/packages/compression.scm (lzip): Update to 1.19. [description]: Fix minor typo. --- gnu/packages/compression.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index ede35f9f5b..f68bcc60f0 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -462,21 +462,21 @@ some compression ratio).") (define-public lzip (package (name "lzip") - (version "1.16") + (version "1.19") (source (origin (method url-fetch) (uri (string-append "mirror://savannah/lzip/lzip-" version ".tar.gz")) (sha256 (base32 - "0l9724rw1l3hg2ldr3n7ihqich4m9nc6y7l302bvdj4jmxdw530j")))) + "1abbch762gv8rjr579q3qyyk6c80plklbv2mw4x0vg71dgsw9bgz")))) (build-system gnu-build-system) (home-page "http://www.nongnu.org/lzip/lzip.html") (synopsis "Lossless data compressor based on the LZMA algorithm") (description "Lzip is a lossless data compressor with a user interface similar to the one of gzip or bzip2. Lzip decompresses almost as fast as gzip and compresses -more than bzip2, which makes it well suited for software distribution and data +more than bzip2, which makes it well-suited for software distribution and data archiving. Lzip is a clean implementation of the LZMA algorithm.") (license license:gpl3+))) -- cgit v1.2.3 From 911c42de40149013ec4d1d8cc3f4b49724195937 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 10 Aug 2017 17:24:21 +0200 Subject: gnu: cunit: Use ‘modify-phases’ syntax. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/check.scm (cunit)[arguments]: Use ‘modify-phases’. --- gnu/packages/check.scm | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 4b59ac567d..365cc5782e 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -74,11 +74,10 @@ source code editors and IDEs.") "057j82da9vv4li4z5ri3227ybd18nzyq81f6gsvhifs5z0vr3cpm")))) (build-system gnu-build-system) (arguments '(#:phases - (alist-cons-before - 'configure 'autoconf - (lambda _ - (zero? (system* "autoreconf" "-vfi"))) - %standard-phases))) + (modify-phases %standard-phases + (add-before 'configure 'autoconf + (lambda _ + (zero? (system* "autoreconf" "-vfi"))))))) (native-inputs `(("automake" ,automake) ("autoconf" ,autoconf) -- cgit v1.2.3 From 9d1cc6bc69d53bf8ad45ac94bc3c268125f86359 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 18 Aug 2017 15:09:19 +0200 Subject: gnu: bluez: Update to 5.46. * gnu/packages/linux.scm (bluez): Update to 5.46. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 1a9e9d709b..54cf800f0f 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -2889,7 +2889,7 @@ Bluetooth audio output devices like headphones or loudspeakers.") (define-public bluez (package (name "bluez") - (version "5.45") + (version "5.46") (source (origin (method url-fetch) (uri (string-append @@ -2897,7 +2897,7 @@ Bluetooth audio output devices like headphones or loudspeakers.") version ".tar.xz")) (sha256 (base32 - "1sb4aflgyrl7apricjipa8wx95qm69yja0lmn2f19g560c3v1b2c")))) + "0a4fj343bdqsfyv12hmj9nym0ilsf0bvm54a4apbiby16ww3vayx")))) (build-system gnu-build-system) (arguments '(#:configure-flags -- cgit v1.2.3 From 7035d2dd698a8a4af07894670bbc2f504089d2c7 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 29 Jul 2017 16:27:33 +0200 Subject: gnu: libva: Update to 1.8.3. GitHub is now the canonical distribution point of libva: * gnu/packages/video.scm (libva): Update to 1.8.3. [source](uri): Add new download location. --- gnu/packages/video.scm | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 4ce2a8f401..0ab6442d43 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -530,15 +530,19 @@ libebml is a C++ library to read and write EBML files.") (define-public libva (package (name "libva") - (version "1.8.2") + (version "1.8.3") (source (origin (method url-fetch) - (uri (string-append - "https://www.freedesktop.org/software/vaapi/releases/libva/libva-" - version".tar.bz2")) + (uri (list + ;; Newer releases are only available on GitHub. + (string-append "https://github.com/01org/libva/releases/download/" + version "/libva-" version ".tar.bz2") + ;; Keep the old URL around for compatibility. + (string-append "https://www.freedesktop.org/software/vaapi/releases/" + "libva/libva-" version "/libva-" version ".tar.bz2"))) (sha256 - (base32 "1pnfl3q7dzxs26l3jk9xi97gr0qwnaz6dhvf9ifp2yplr3fy7lwy")))) + (base32 "16xbk0awl7wp0vy0nyjvxk11spbw25mp8kwd9bmhd6x9xffi5vjn")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) -- cgit v1.2.3 From 9238a9c086cc4ebac078080c1e7201c570660031 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 29 Jul 2017 17:23:33 +0200 Subject: gnu: dbus: Update to 1.10.22. * gnu/packages/glib.scm (dbus): Update to 1.10.22. --- gnu/packages/glib.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index c5c48731fe..2caafd416d 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -67,7 +67,7 @@ (define dbus (package (name "dbus") - (version "1.10.18") + (version "1.10.22") (source (origin (method url-fetch) (uri (string-append @@ -75,7 +75,7 @@ version ".tar.gz")) (sha256 (base32 - "0jjirhw6xwz2ffmbg5kr79108l8i1bdaw7szc67n3qpkygaxsjb0")) + "15vv9gz5i4f5l7h0d045qz5iyvl89hjk2k83lb4vbizd7qg41cg2")) (patches (search-patches "dbus-helper-search-path.patch")))) (build-system gnu-build-system) (arguments -- cgit v1.2.3 From 66d4cd7978d41cfde5047f281dc17693bbd4610e Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 29 Jul 2017 18:34:15 +0200 Subject: gnu: util-linux: Update to 2.30.1. * gnu/packages/linux.scm (util-linux): Update to 2.30.1. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 304e0b7efa..82d8fe3e5f 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -501,7 +501,7 @@ providing the system administrator with some help in common tasks.") (define-public util-linux (package (name "util-linux") - (version "2.30") + (version "2.30.1") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/linux/utils/" @@ -509,7 +509,7 @@ providing the system administrator with some help in common tasks.") name "-" version ".tar.xz")) (sha256 (base32 - "13d0ax8bcapga8phj2nclx86w57ddqxbr98ajibpzjq6d7zs8262")) + "0hdq2fz405a89fyha4bgwg0rx8b65inxq17w8fg8qhmcj4x3dr0v")) (patches (search-patches "util-linux-tests.patch")) (modules '((guix build utils))) (snippet -- cgit v1.2.3 From 53e16a5a0f8840a4d03e8dd6a1eeedd63dedd279 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 2 Sep 2017 14:03:26 +0200 Subject: gnu: libdrm: Update to 2.4.83. * gnu/packages/xdisorg.scm (libdrm): Update to 2.4.83. [inputs]: Remove LIBPTHREAD-STUBS. [home-page]: Use HTTPS. --- gnu/packages/xdisorg.scm | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index edb70a37a8..abfa1aec74 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -287,7 +287,7 @@ rasterisation.") (define-public libdrm (package (name "libdrm") - (version "2.4.81") + (version "2.4.83") (source (origin (method url-fetch) @@ -297,15 +297,14 @@ rasterisation.") ".tar.bz2")) (sha256 (base32 - "1bhimr6za2ddisrvrv1qqd7c2a59s7jc954sjycq2w68b8cmrh4c")) + "1minzvsyz5hgm6ixpj8ysa6jsv7vm8qc8nx390jxdsk0v9ljd983")) (patches (search-patches "libdrm-symbol-check.patch")))) (build-system gnu-build-system) (inputs - `(("libpciaccess" ,libpciaccess) - ("libpthread-stubs" ,libpthread-stubs))) + `(("libpciaccess" ,libpciaccess))) (native-inputs - `(("pkg-config" ,pkg-config))) - (home-page "http://dri.freedesktop.org/wiki/") + `(("pkg-config" ,pkg-config))) + (home-page "https://dri.freedesktop.org/wiki/") (synopsis "Direct rendering userspace library") (description "The Direct Rendering Infrastructure, also known as the DRI, is a framework for allowing direct access to graphics hardware under the -- cgit v1.2.3 From 57cdc1fadacbe3376da96c5323cdfcecbf5267d8 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 2 Sep 2017 14:09:13 +0200 Subject: gnu: mesa: Update to 17.1.8. * gnu/packages/gl.scm (mesa): Update to 17.1.8. [source]: Add HTTPS download uri. --- gnu/packages/gl.scm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index d017e375c9..cc1dcf9edf 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -217,17 +217,19 @@ also known as DXTn or DXTC) for Mesa.") (define-public mesa (package (name "mesa") - (version "17.1.4") + (version "17.1.8") (source (origin (method url-fetch) - (uri (list (string-append "ftp://ftp.freedesktop.org/pub/mesa/" + (uri (list (string-append "https://mesa.freedesktop.org/archive/" + "mesa-" version ".tar.xz") + (string-append "ftp://ftp.freedesktop.org/pub/mesa/" "mesa-" version ".tar.xz") (string-append "ftp://ftp.freedesktop.org/pub/mesa/" version "/mesa-" version ".tar.xz"))) (sha256 (base32 - "1bcwxin7nmbnv92xav381b6qxscsx1zzc71ryfvj03cglbkb1wq6")) + "1nv9aaz7ay2bs4fc8j3rf6ky3qla8s346a8g2lvdbp96msp2xvbm")) (patches (search-patches "mesa-wayland-egl-symbols-check-mips.patch" "mesa-skip-disk-cache-test.patch")))) -- cgit v1.2.3 From 2ec339c25aada5bf220332aa25baeb9a3a1f2f6a Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 2 Sep 2017 15:46:11 +0200 Subject: Revert "gnu: lzip: Update to 1.19." This reverts commit 0963e3e450e85e3cf59b92fd28c771e8cbaaee2a. --- gnu/packages/compression.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index a543d17776..7cd9842f94 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -456,14 +456,14 @@ some compression ratio).") (define-public lzip (package (name "lzip") - (version "1.19") + (version "1.18") (source (origin (method url-fetch) (uri (string-append "mirror://savannah/lzip/lzip-" version ".tar.gz")) (sha256 (base32 - "1abbch762gv8rjr579q3qyyk6c80plklbv2mw4x0vg71dgsw9bgz")))) + "1p8lvc22sv3damld9ng8y6i8z2dvvpsbi9v7yhr5bc2a20m8iya7")))) (build-system gnu-build-system) (home-page "http://www.nongnu.org/lzip/lzip.html") (synopsis "Lossless data compressor based on the LZMA algorithm") -- cgit v1.2.3 From a4a3d93290e8ad35f6e7526e78878d2d3397bb27 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 2 Sep 2017 15:54:23 +0200 Subject: gnu: harfbuzz: Update to 1.5.0. * gnu/packages/gtk.scm (harfbuzz): Update to 1.5.0. --- gnu/packages/gtk.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index e942f51719..2d64e163f2 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -171,7 +171,7 @@ affine transformation (scale, rotation, shear, etc.).") (define-public harfbuzz (package (name "harfbuzz") - (version "1.4.6") + (version "1.5.0") (source (origin (method url-fetch) (uri (string-append "https://www.freedesktop.org/software/" @@ -179,7 +179,7 @@ affine transformation (scale, rotation, shear, etc.).") version ".tar.bz2")) (sha256 (base32 - "14yj514yfy373np3gxk930a443j1zgnwg6mm0kdzzjr0rn0qp9r1")))) + "1haansza0v2908xycv3xwrw2c42z5p96vdzy11vkzl787cvfr260")))) (build-system gnu-build-system) (outputs '("out" "bin")) ; 160K, only hb-view depend on cairo -- cgit v1.2.3 From d2ee294c0400ac8f2a10f10c3c9644da513a3712 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 2 Sep 2017 15:54:46 +0200 Subject: gnu: pango: Update to 1.40.11. * gnu/packages/gtk.scm (pango): Update to 1.40.11. --- gnu/packages/gtk.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 2d64e163f2..70ad9993b6 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -209,7 +209,7 @@ affine transformation (scale, rotation, shear, etc.).") (define-public pango (package (name "pango") - (version "1.40.6") + (version "1.40.11") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/pango/" @@ -217,7 +217,7 @@ affine transformation (scale, rotation, shear, etc.).") name "-" version ".tar.xz")) (sha256 (base32 - "0wz5b5knpw4gfvz3ny8l6h2ca3bpqqyh55mffkyzgsd1hdrjn5fa")))) + "0giqy0f6vxsxrly6mwrbw9chs5hnh5my1jji86g76cp6j02i84av")))) (build-system gnu-build-system) (propagated-inputs `(("cairo" ,cairo) -- cgit v1.2.3 From 1bb0545bb8bcf3a60efa940ef2442763d8abe975 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 2 Sep 2017 16:35:04 +0200 Subject: gnu: glib: Update to 2.52.3. * gnu/packages/glib.scm (glib): Update to 2.52.3. --- gnu/packages/glib.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index 2caafd416d..8408b54ea2 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -137,7 +137,7 @@ shared NFS home directories.") (define glib (package (name "glib") - (version "2.52.2") + (version "2.52.3") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" @@ -145,7 +145,7 @@ shared NFS home directories.") name "-" version ".tar.xz")) (sha256 (base32 - "1l65kab6jr9zlllgbjcbvrbgah3sdd577fpw4pdb2j195ag5s3ph")) + "0a71wkkhkvad84gm30w13micxxgqqw3sxhybj7nd9z60lwspdvi5")) (patches (search-patches "glib-tests-timer.patch")))) (build-system gnu-build-system) (outputs '("out" ; everything -- cgit v1.2.3 From 168c5f076c86889879887908c22608c14045b361 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 2 Sep 2017 16:44:46 +0200 Subject: gnu: librsvg: Update to 2.40.18. * gnu/packages/gnome.scm (librsvg): Update to 2.40.18. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 43547961bf..2a93b32a49 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -1163,7 +1163,7 @@ dealing with different structured file formats.") (define-public librsvg (package (name "librsvg") - (version "2.40.17") + (version "2.40.18") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -1171,7 +1171,7 @@ dealing with different structured file formats.") name "-" version ".tar.xz")) (sha256 (base32 - "1k39gyf7f5m9x0jvpcxvfcqswdb04xhm1lbwbjabn1f4xk5wbxp6")))) + "0k2nbd4g31qinkdfd8r5c5ih2ixl85fbkgkqqh9747lwr24c9j5z")))) (build-system gnu-build-system) (arguments `(#:phases -- cgit v1.2.3 From de02edbf11ffab652cc9def611358eefbc860147 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 2 Sep 2017 16:45:13 +0200 Subject: gnu: cairo: Update to 1.14.10. * gnu/packages/gtk.scm (cairo): Update to 1.14.10. --- gnu/packages/gtk.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index af27ae3253..4d3ecde3d2 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -105,14 +105,14 @@ tools have full access to view and control running applications.") (define-public cairo (package (name "cairo") - (version "1.14.8") + (version "1.14.10") (source (origin (method url-fetch) (uri (string-append "https://cairographics.org/releases/cairo-" version ".tar.xz")) (sha256 (base32 - "082ypjlh03ss5616amgjp9ap3xwwccyh2knyyrj1a4d4x65dkwni")) + "02banr0wxckq62nbhc3mqidfdh2q956i2r7w2hd9bjgjb238g1vy")) (patches (search-patches "cairo-CVE-2016-9082.patch")))) (build-system gnu-build-system) (propagated-inputs -- cgit v1.2.3 From d0cc3a98796cc81146f5e8b5a6d644c4e1ff89cc Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 2 Sep 2017 16:45:34 +0200 Subject: gnu: gtk+: Update to 3.22.19. * gnu/packages/gtk.scm (gtk+): Update to 3.22.19. --- gnu/packages/gtk.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 4d3ecde3d2..4b0c1a271e 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -654,7 +654,7 @@ application suites.") (name "gtk+") ;; NOTE: When updating the version of 'gtk+', the hash of 'mate-themes' in ;; mate.scm will also need to be updated. - (version "3.22.15") + (version "3.22.19") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -662,7 +662,7 @@ application suites.") name "-" version ".tar.xz")) (sha256 (base32 - "1nqgb71vx222g9fd2p017948hqybnyi69xs3n2d64clim7115868")) + "0v0nwpl6zp8bcjhdwivi1wfi83lha9yyhq76ihbb7ya4ab5d70wq")) (patches (search-patches "gtk3-respect-GUIX_GTK3_PATH.patch" "gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch")))) (outputs '("out" "bin" "doc")) -- cgit v1.2.3 From aa3542e844cb527d3d95e65de652fd664c77c5b3 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 2 Sep 2017 16:51:10 +0200 Subject: gnu: gdk-pixbuf: Update to 2.36.9. * gnu/packages/gtk.scm (gdk-pixbuf): Update to 2.36.9. [source]: Remove obsolete patch. * gnu/packages/patches/gdk-pixbuf-list-dir.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/gtk.scm | 5 ++-- gnu/packages/patches/gdk-pixbuf-list-dir.patch | 35 -------------------------- 3 files changed, 2 insertions(+), 39 deletions(-) delete mode 100644 gnu/packages/patches/gdk-pixbuf-list-dir.patch (limited to 'gnu/packages') diff --git a/gnu/local.mk b/gnu/local.mk index 8c683b8e42..22de2c8cfe 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -630,7 +630,6 @@ dist_patch_DATA = \ %D%/packages/patches/gcc-6-cross-environment-variables.patch \ %D%/packages/patches/gcr-disable-failing-tests.patch \ %D%/packages/patches/gcr-fix-collection-tests-to-work-with-gpg-21.patch \ - %D%/packages/patches/gdk-pixbuf-list-dir.patch \ %D%/packages/patches/gd-fix-gd2-read-test.patch \ %D%/packages/patches/gd-fix-tests-on-i686.patch \ %D%/packages/patches/gd-freetype-test-failure.patch \ diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 4b0c1a271e..3e8d87e91b 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -427,7 +427,7 @@ highlighting and other features typical of a source code editor.") (define-public gdk-pixbuf (package (name "gdk-pixbuf") - (version "2.36.6") + (version "2.36.9") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -435,8 +435,7 @@ highlighting and other features typical of a source code editor.") name "-" version ".tar.xz")) (sha256 (base32 - "034279k49ydawnagqd7b1rz741n20k4y3grybzwp26zd146bjpj5")) - (patches (search-patches "gdk-pixbuf-list-dir.patch")))) + "02klisz3ly0bvflj39x49lnl4mnldsgvkjdvnla1as8szxqv44w0")))) (build-system gnu-build-system) (arguments '(#:configure-flags '("--with-x11") diff --git a/gnu/packages/patches/gdk-pixbuf-list-dir.patch b/gnu/packages/patches/gdk-pixbuf-list-dir.patch deleted file mode 100644 index 137914a19c..0000000000 --- a/gnu/packages/patches/gdk-pixbuf-list-dir.patch +++ /dev/null @@ -1,35 +0,0 @@ -Sort directory entries so that the output of -‘gdk-pixbuf-query-loaders’ is deterministic. - -See: https://bugzilla.gnome.org/show_bug.cgi?id=777332 ---- gdk-pixbuf-2.34.0/gdk-pixbuf/queryloaders.c.orig 2017-01-11 00:17:32.865843062 +0100 -+++ gdk-pixbuf-2.34.0/gdk-pixbuf/queryloaders.c 2017-01-16 16:12:03.420667874 +0100 -@@ -354,16 +354,27 @@ - - dir = g_dir_open (path, 0, NULL); - if (dir) { -+ GList *entries = NULL; - const char *dent; - - while ((dent = g_dir_read_name (dir))) { - gint len = strlen (dent); - if (len > SOEXT_LEN && - strcmp (dent + len - SOEXT_LEN, SOEXT) == 0) { -- query_module (contents, path, dent); -+ entries = g_list_append (entries, g_strdup (dent)); - } - } - g_dir_close (dir); -+ /* Sort directory entries so that the output of -+ ‘gdk-pixbuf-query-loaders’ is deterministic. */ -+ entries = g_list_sort (entries, (GCompareFunc) strcmp); -+ GList *xentries; -+ for (xentries = entries; xentries; xentries = g_list_next (xentries)) { -+ dent = xentries->data; -+ query_module (contents, path, dent); -+ g_free (xentries->data); -+ } -+ g_list_free (entries); - } - #else - g_string_append_printf (contents, "# dynamic loading of modules not supported\n"); -- cgit v1.2.3 From 3b6f837393c54689d4cb06eb28bff0ea1b282e2a Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 4 Sep 2017 22:15:28 +0200 Subject: gnu: pango: Update to 1.40.12. * gnu/packages/gtk.scm (pango): Update to 1.40.12. --- gnu/packages/gtk.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 3e8d87e91b..b100f815d5 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -209,7 +209,7 @@ affine transformation (scale, rotation, shear, etc.).") (define-public pango (package (name "pango") - (version "1.40.11") + (version "1.40.12") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/pango/" @@ -217,7 +217,7 @@ affine transformation (scale, rotation, shear, etc.).") name "-" version ".tar.xz")) (sha256 (base32 - "0giqy0f6vxsxrly6mwrbw9chs5hnh5my1jji86g76cp6j02i84av")))) + "1z0w2vrx3qh3aryfkbfijkcxxr3yjbxc2l4b0yy8rcp2wjlakwbm")))) (build-system gnu-build-system) (propagated-inputs `(("cairo" ,cairo) -- cgit v1.2.3 From 1dc32c2961402c946c25e5a1aabe79a30cce3cff Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 4 Sep 2017 22:15:49 +0200 Subject: gnu: gtk+: Update to 3.22.20. * gnu/packages/gtk.scm (gtk+): Update to 3.22.20. --- gnu/packages/gtk.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index b100f815d5..0f28eb07db 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -653,7 +653,7 @@ application suites.") (name "gtk+") ;; NOTE: When updating the version of 'gtk+', the hash of 'mate-themes' in ;; mate.scm will also need to be updated. - (version "3.22.19") + (version "3.22.20") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -661,7 +661,7 @@ application suites.") name "-" version ".tar.xz")) (sha256 (base32 - "0v0nwpl6zp8bcjhdwivi1wfi83lha9yyhq76ihbb7ya4ab5d70wq")) + "1n82ki9sbdnaz6k5f5k3vgd7g4756j6acfbl1bf617w0lyc0kjbh")) (patches (search-patches "gtk3-respect-GUIX_GTK3_PATH.patch" "gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch")))) (outputs '("out" "bin" "doc")) -- cgit v1.2.3 From 1f42989eb01b43f8f371f4a7c1667cf3c8a8c66b Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 5 Sep 2017 20:34:54 +0300 Subject: gnu: libdrm: Enable more drivers for arm and aarch64. * gnu/packages/xdisorg.scm (libdrm)[arguments]: Add configure flags to enable experimental architecture-specific video drivers. --- gnu/packages/xdisorg.scm | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index abfa1aec74..ce3e7c81eb 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -11,7 +11,7 @@ ;;; Copyright © 2015 Florian Paul Schmidt ;;; Copyright © 2016 Christopher Allan Webber ;;; Copyright © 2016 Ricardo Wurmus -;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2016, 2017 Efraim Flashner ;;; Copyright © 2016 Leo Famulari ;;; Copyright © 2016 Alex Kost ;;; Copyright © 2016, 2017 Marius Bakke @@ -68,7 +68,8 @@ #:use-module (gnu packages xml) #:use-module (gnu packages gtk) #:use-module (gnu packages xorg) - #:use-module (gnu packages bison)) + #:use-module (gnu packages bison) + #:use-module (ice-9 match)) ;; packages outside the x.org system proper @@ -300,6 +301,19 @@ rasterisation.") "1minzvsyz5hgm6ixpj8ysa6jsv7vm8qc8nx390jxdsk0v9ljd983")) (patches (search-patches "libdrm-symbol-check.patch")))) (build-system gnu-build-system) + (arguments + `(#:configure-flags + '(,@(match (%current-system) + ("armhf-linux" + '("--enable-exynos-experimental-api" + "--enable-omap-experimental-api" + "--enable-etnaviv-experimental-api" + "--enable-tegra-experimental-api" + "--enable-freedreno-kgsl")) + ("aarch64-linux" + '("--enable-tegra-experimental-api" + "--enable-freedreno-kgsl")) + (_ '()))))) (inputs `(("libpciaccess" ,libpciaccess))) (native-inputs -- cgit v1.2.3 From 665c0958d86d5c95d55bdc0e40cdc94e87fd99f3 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 5 Sep 2017 20:38:22 +0300 Subject: gnu: mesa: Enable more drivers. * gnu/packages/gl.scm (mesa)[arguments]: Split armhf and aarch64 driver options, add more armhf specific drivers. Add offscreen platform. --- gnu/packages/gl.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index cc1dcf9edf..d8a69392b9 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -269,13 +269,15 @@ also known as DXTn or DXTC) for Mesa.") (arguments `(#:configure-flags '(,@(match (%current-system) - ((or "armhf-linux" "aarch64-linux") + ("armhf-linux" + '("--with-gallium-drivers=etnaviv,freedreno,imx,nouveau,r300,r600,svga,swrast,vc4,virgl")) + ("aarch64-linux" '("--with-gallium-drivers=freedreno,nouveau,r300,r600,svga,swrast,vc4,virgl")) (_ '("--with-gallium-drivers=i915,nouveau,r300,r600,svga,swrast,virgl"))) ;; Enable various optional features. TODO: opencl requires libclc, ;; omx requires libomxil-bellagio - "--with-egl-platforms=x11,drm,wayland" + "--with-platforms=x11,drm,wayland,surfaceless" "--enable-glx-tls" ;Thread Local Storage, improves performance ;; "--enable-opencl" ;; "--enable-omx" -- cgit v1.2.3 From 4c2aaa60568dc8778c55d5a06d67b8b6ba25526b Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 5 Sep 2017 21:35:18 +0300 Subject: gnu: mesa: Use exactly llvm@3.9.1. * gnu/packages/gl.scm (mesa)[inputs]: Use llvm@3.9.1. --- gnu/packages/gl.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gnu/packages') diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index d8a69392b9..fa9b501077 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -255,7 +255,7 @@ also known as DXTn or DXTC) for Mesa.") ("libxvmc" ,libxvmc) ,@(match (%current-system) ((or "x86_64-linux" "i686-linux") - `(("llvm" ,llvm))) + `(("llvm" ,llvm-3.9.1))) ; exactly 3.9.0 or 3.9.1 for swrast (_ `())) ("makedepend" ,makedepend) -- cgit v1.2.3 From ba74ef94d71017b828f623270d939366529075fb Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Thu, 7 Sep 2017 10:35:01 +0300 Subject: gnu: pulseaudio: Update to 11.0. From af245f3289d14a6f6cc6e5454e64a47241517cf1 Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Thu, 7 Sep 2017 08:23:43 +0300 Subject: [PATCH] gnu: pulseaudio: Update to 11.0. * gnu/packages/pulseaudio.scm (pulseaudio): Update to 11.0. --- gnu/packages/pulseaudio.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/pulseaudio.scm b/gnu/packages/pulseaudio.scm index 846c174fa7..c280c58e1a 100644 --- a/gnu/packages/pulseaudio.scm +++ b/gnu/packages/pulseaudio.scm @@ -119,7 +119,7 @@ rates.") (define-public pulseaudio (package (name "pulseaudio") - (version "10.0") + (version "11.0") (source (origin (method url-fetch) (uri (string-append @@ -127,7 +127,7 @@ rates.") name "-" version ".tar.xz")) (sha256 (base32 - "0mrg8qvpwm4ifarzphl3749p7p050kdx1l6mvsaj03czvqj6h653")) + "0sf92knqkvqmfhrbz4vlsagzqlps72wycpmln5dygicg07a0a8q7")) (modules '((guix build utils))) (snippet ;; Disable console-kit support by default since it's deprecated -- cgit v1.2.3 From 1728c411718e3b358c06561d6e80b47d7b331617 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 12 Sep 2017 23:07:41 +0200 Subject: gnu: cups-filters: Make sure filters find Ghostscript. * gnu/packages/cups.scm (cups-filters)[arguments]: Add 'patch-foomatic-hardcoded-file-names' and 'wrap-filters' phases. --- gnu/packages/cups.scm | 31 +++++++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm index aba8ce7eb1..879ec42a88 100644 --- a/gnu/packages/cups.scm +++ b/gnu/packages/cups.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Ricardo Wurmus -;;; Copyright © 2015, 2016 Ludovic Courtès +;;; Copyright © 2015, 2016, 2017 Ludovic Courtès ;;; Copyright © 2015, 2016, 2017 Efraim Flashner ;;; Copyright © 2016 Danny Milosavljevic ;;; Copyright © 2017 Leo Famulari @@ -99,7 +99,34 @@ (assoc-ref %build-inputs "bash") "/bin/bash") ,(string-append "--with-rcdir=" - (assoc-ref %outputs "out") "/etc/rc.d")))) + (assoc-ref %outputs "out") "/etc/rc.d")) + + #:phases (modify-phases %standard-phases + (add-after 'unpack 'patch-foomatic-hardcoded-file-names + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Foomatic has hardcoded file names we need to fix. + (let ((out (assoc-ref outputs "out")) + (gs (assoc-ref inputs "ghostscript"))) + (substitute* "filter/foomatic-rip/foomaticrip.c" + (("/usr/local/lib/cups/filter") + (string-append out "/lib/cups/filter"))) + #t))) + (add-after 'install 'wrap-filters + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Some filters expect to find 'gs' in $PATH. We cannot + ;; just hard-code its absolute file name in the source + ;; because foomatic-rip, for example, has tests like + ;; 'startswith(cmd, "gs")'. + (let ((out (assoc-ref outputs "out")) + (ghostscript (assoc-ref inputs "ghostscript"))) + (for-each (lambda (file) + (wrap-program file + `("PATH" ":" prefix + (,(string-append ghostscript + "/bin"))))) + (find-files (string-append + out "/lib/cups/filter"))) + #t)))))) (native-inputs `(("glib" ,glib "bin") ; for gdbus-codegen ("pkg-config" ,pkg-config))) -- cgit v1.2.3 From b263967018bd8d32578c4075d68c1d94664fc29a Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 12 Sep 2017 23:15:54 +0200 Subject: gnu: cups-filters: Pass "--localstatedir". * gnu/packages/cups.scm (cups-filters)[arguments]: Pass --localstatedir. --- gnu/packages/cups.scm | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'gnu/packages') diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm index 879ec42a88..0e7fcce749 100644 --- a/gnu/packages/cups.scm +++ b/gnu/packages/cups.scm @@ -89,6 +89,10 @@ #:configure-flags `("--disable-driverless" ; TODO: enable this "--disable-mutool" ; depends on yet another PDF library (mupdf) + + ;; Look for the "domain socket of CUPS" in /var/run/cups. + "--localstatedir=/var" + ,(string-append "--with-test-font-path=" (assoc-ref %build-inputs "font-dejavu") "/share/fonts/truetype/DejaVuSans.ttf") -- cgit v1.2.3 From f40aef6b3b56e1e5fb6e6ac29bd372000e13982f Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 12 Sep 2017 23:17:50 +0200 Subject: gnu: cups-filters: Remove reference to "acroread". * gnu/packages/cups.scm (cups-filters)[arguments]: Pass "--with-acroread-path". --- gnu/packages/cups.scm | 3 +++ 1 file changed, 3 insertions(+) (limited to 'gnu/packages') diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm index 0e7fcce749..0ecfd288c4 100644 --- a/gnu/packages/cups.scm +++ b/gnu/packages/cups.scm @@ -93,6 +93,9 @@ ;; Look for the "domain socket of CUPS" in /var/run/cups. "--localstatedir=/var" + ;; Free software for the win. + "--with-acroread-path=evince" + ,(string-append "--with-test-font-path=" (assoc-ref %build-inputs "font-dejavu") "/share/fonts/truetype/DejaVuSans.ttf") -- cgit v1.2.3 From 164fccea7eead86c6ebe389bc0255c72b161d109 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 20 Sep 2017 18:56:03 +0200 Subject: gnu: bluez: Update to 5.47. * gnu/packages/linux.scm (bluez): Update to 5.47. [replacement]: Remove field. (bluez/fixed): Remove variable. --- gnu/packages/linux.scm | 19 ++----------------- 1 file changed, 2 insertions(+), 17 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 4be6f5ed08..cd003c35fb 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -3022,8 +3022,7 @@ Bluetooth audio output devices like headphones or loudspeakers.") (define-public bluez (package (name "bluez") - (version "5.46") - (replacement bluez/fixed) + (version "5.47") (source (origin (method url-fetch) (uri (string-append @@ -3031,7 +3030,7 @@ Bluetooth audio output devices like headphones or loudspeakers.") version ".tar.xz")) (sha256 (base32 - "0a4fj343bdqsfyv12hmj9nym0ilsf0bvm54a4apbiby16ww3vayx")))) + "1j22hfjz0fp4pgclgz9mfcwjbr4wqgah3gd2qhfg4r6msmybyxfg")))) (build-system gnu-build-system) (arguments `(#:configure-flags @@ -3085,20 +3084,6 @@ Bluetooth audio output devices like headphones or loudspeakers.") is flexible, efficient and uses a modular implementation.") (license license:gpl2+))) -(define bluez/fixed - (package - (inherit bluez) - (version "5.46") - (source (origin - (method url-fetch) - (uri (string-append - "mirror://kernel.org/linux/bluetooth/bluez-" - version ".tar.xz")) - (sha256 - (base32 - "0a4fj343bdqsfyv12hmj9nym0ilsf0bvm54a4apbiby16ww3vayx")) - (patches (search-patches "bluez-CVE-2017-1000250.patch")))))) - (define-public fuse-exfat (package (name "fuse-exfat") -- cgit v1.2.3 From 171bcdf7ba1425072529bacb712792b2a6302544 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 20 Sep 2017 18:57:39 +0200 Subject: gnu: gdk-pixbuf: Remove graft for 2.36.10. * gnu/packages/gtk.scm (gdk-pixbuf): Update to 2.36.10. [replacement]: Remove field. (gdk-pixbuf+svg)[replacement]: Likewise. (gdk-pixbuf-2.36.10, gdk-pixbuf+svg-2.36.10): Remove variables. --- gnu/packages/gtk.scm | 26 ++------------------------ 1 file changed, 2 insertions(+), 24 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 0d3da63ca6..dd7739d5e7 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -427,8 +427,7 @@ highlighting and other features typical of a source code editor.") (define-public gdk-pixbuf (package (name "gdk-pixbuf") - (version "2.36.9") - (replacement gdk-pixbuf-2.36.10) + (version "2.36.10") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -436,7 +435,7 @@ highlighting and other features typical of a source code editor.") name "-" version ".tar.xz")) (sha256 (base32 - "02klisz3ly0bvflj39x49lnl4mnldsgvkjdvnla1as8szxqv44w0")))) + "1klsjkdbashd8yb8xjsc9ff3bz32n2id5s79nrrmqiw9df4zmxpq")))) (build-system gnu-build-system) (arguments '(#:configure-flags '("--with-x11") @@ -483,7 +482,6 @@ in the GNOME project.") (define-public gdk-pixbuf+svg (package (inherit gdk-pixbuf) (name "gdk-pixbuf+svg") - (replacement gdk-pixbuf+svg-2.36.10) (inputs `(("librsvg" ,librsvg) ,@(package-inputs gdk-pixbuf))) @@ -507,26 +505,6 @@ in the GNOME project.") (synopsis "GNOME image loading and manipulation library, with SVG support"))) -;; Graft replacement packages to fix these vulnerabilities. -;; https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-2862 -;; https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-2870 -;; https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-6311 -(define-public gdk-pixbuf-2.36.10 - (package (inherit gdk-pixbuf) - (version "2.36.A") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnome/sources/gdk-pixbuf/2.36/" - "gdk-pixbuf-2.36.10.tar.xz")) - (sha256 - (base32 - "1klsjkdbashd8yb8xjsc9ff3bz32n2id5s79nrrmqiw9df4zmxpq")))))) - -(define-public gdk-pixbuf+svg-2.36.10 - (package (inherit gdk-pixbuf+svg) - (version "2.36.A") - (source (origin (inherit (package-source gdk-pixbuf-2.36.10)))))) - (define-public at-spi2-core (package (name "at-spi2-core") -- cgit v1.2.3 From b093be236efa913748855879094e38cd983c7f00 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 20 Sep 2017 19:06:38 +0200 Subject: gnu: gd: Remove graft for 2.2.5. * gnu/packages/gd.scm (gd): Update to 2.2.5. [source]: Remove obsolete patches. [replacement]: Remove field. (gd-2.2.5): Remove variable. * gnu/packages/patches/gd-fix-gd2-read-test.patch, gnu/packages/patches/gd-php-73968-Fix-109-XBM-reading.patch: Delete files. * gnu/local.mk (dist_patch_DATA): Remove patches. * gnu/packages/php.scm (php)[inputs]: Replace GD-2.2.5 with GD. --- gnu/local.mk | 2 - gnu/packages/gd.scm | 27 +---- gnu/packages/patches/gd-fix-gd2-read-test.patch | 14 --- .../patches/gd-php-73968-Fix-109-XBM-reading.patch | 121 --------------------- gnu/packages/php.scm | 2 +- 5 files changed, 5 insertions(+), 161 deletions(-) delete mode 100644 gnu/packages/patches/gd-fix-gd2-read-test.patch delete mode 100644 gnu/packages/patches/gd-php-73968-Fix-109-XBM-reading.patch (limited to 'gnu/packages') diff --git a/gnu/local.mk b/gnu/local.mk index 3bdab4f886..24aaf9477e 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -638,10 +638,8 @@ dist_patch_DATA = \ %D%/packages/patches/gcc-6-cross-environment-variables.patch \ %D%/packages/patches/gcr-disable-failing-tests.patch \ %D%/packages/patches/gcr-fix-collection-tests-to-work-with-gpg-21.patch \ - %D%/packages/patches/gd-fix-gd2-read-test.patch \ %D%/packages/patches/gd-fix-tests-on-i686.patch \ %D%/packages/patches/gd-freetype-test-failure.patch \ - %D%/packages/patches/gd-php-73968-Fix-109-XBM-reading.patch \ %D%/packages/patches/gegl-CVE-2012-4433.patch \ %D%/packages/patches/gemma-intel-compat.patch \ %D%/packages/patches/geoclue-config.patch \ diff --git a/gnu/packages/gd.scm b/gnu/packages/gd.scm index 169f040ee4..f9864d7784 100644 --- a/gnu/packages/gd.scm +++ b/gnu/packages/gd.scm @@ -38,11 +38,10 @@ (define-public gd (package (name "gd") - (replacement gd-2.2.5) ;; Note: With libgd.org now pointing to github.com, genuine old ;; tarballs are no longer available. Notably, versions 2.0.x are ;; missing. - (version "2.2.4") + (version "2.2.5") (source (origin (method url-fetch) (uri (string-append @@ -50,11 +49,9 @@ version "/libgd-" version ".tar.xz")) (sha256 (base32 - "1rp4v7n1dq38b92kl7gkvpvqqkw7nvdfnz6d5kip5klkxfki6zqk")) - (patches (search-patches "gd-fix-gd2-read-test.patch" - "gd-fix-tests-on-i686.patch" - "gd-freetype-test-failure.patch" - "gd-php-73968-Fix-109-XBM-reading.patch")))) + "0lfy5f241sbv8s3splm2zqiaxv7lxrcshh875xryryk7yk5jqc4c")) + (patches (search-patches "gd-fix-tests-on-i686.patch" + "gd-freetype-test-failure.patch")))) (build-system gnu-build-system) (arguments ;; As recommended by github.com/libgd/libgd/issues/278 to fix rounding @@ -93,22 +90,6 @@ most common applications of GD involve website development.") "See COPYING file in the distribution.")) (properties '((cpe-name . "libgd"))))) -;; For CVE-2017-6362 and CVE-2017-7890. -(define-public gd-2.2.5 - (package - (inherit gd) - (version "2.2.5") - (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/libgd/libgd/releases/download/gd-" - version "/libgd-" version ".tar.xz")) - (patches (search-patches "gd-fix-tests-on-i686.patch" - "gd-freetype-test-failure.patch")) - (sha256 - (base32 - "0lfy5f241sbv8s3splm2zqiaxv7lxrcshh875xryryk7yk5jqc4c")))))) - (define-public perl-gd (package (name "perl-gd") diff --git a/gnu/packages/patches/gd-fix-gd2-read-test.patch b/gnu/packages/patches/gd-fix-gd2-read-test.patch deleted file mode 100644 index 65f39e4426..0000000000 --- a/gnu/packages/patches/gd-fix-gd2-read-test.patch +++ /dev/null @@ -1,14 +0,0 @@ -Fix a 'maybe-uninitialized' warning (turned error) -which occurs on non-Intel platforms. - ---- libgd-2.2.3/tests/gd2/gd2_read.c 2016-07-21 01:21:16.000000000 -0400 -+++ libgd-2.2.3/tests/gd2/gd2_read.c 2016-07-29 15:52:03.806405312 -0400 -@@ -5,7 +5,7 @@ - - int main(int argc, char *argv[]) - { -- int error, i = 0; -+ int error = 0, i = 0; - gdImagePtr im, exp; - FILE *fp; - char *path[] = { diff --git a/gnu/packages/patches/gd-php-73968-Fix-109-XBM-reading.patch b/gnu/packages/patches/gd-php-73968-Fix-109-XBM-reading.patch deleted file mode 100644 index a926c1455c..0000000000 --- a/gnu/packages/patches/gd-php-73968-Fix-109-XBM-reading.patch +++ /dev/null @@ -1,121 +0,0 @@ -This bug was first reported to php on https://bugs.php.net/bug.php?id=73968. -php then reported it to gd in https://github.com/libgd/libgd/issues/109. - -Patch adapted from upstream source repository: - -https://github.com/libgd/libgd/commit/082c5444838ea0d84f9fb6441aefdb44d78d9bba - -Binary diffs have been removed from the patch because our patch -procedure doesn't support them. - -From 082c5444838ea0d84f9fb6441aefdb44d78d9bba Mon Sep 17 00:00:00 2001 -From: "Christoph M. Becker" -Date: Fri, 20 Jan 2017 22:48:20 +0100 -Subject: [PATCH] Fix #109: XBM reading fails with printed error - -When calculating the number of required bytes of an XBM image, we have -to take the line padding into account. ---- - src/gd_xbm.c | 2 +- - tests/xbm/CMakeLists.txt | 1 + - tests/xbm/Makemodule.am | 5 ++++- - tests/xbm/github_bug_109.c | 35 +++++++++++++++++++++++++++++++++++ - tests/xbm/github_bug_109.xbm | 5 +++++ - 5 files changed, 47 insertions(+), 2 deletions(-) - create mode 100644 tests/xbm/github_bug_109.c - create mode 100644 tests/xbm/github_bug_109.xbm - create mode 100644 tests/xbm/github_bug_109_exp.png - -diff --git a/src/gd_xbm.c b/src/gd_xbm.c -index 5f09b56..c2ba2ad 100644 ---- a/src/gd_xbm.c -+++ b/src/gd_xbm.c -@@ -108,7 +108,7 @@ BGD_DECLARE(gdImagePtr) gdImageCreateFromXbm(FILE * fd) - max_bit = 32768; - } - if (max_bit) { -- bytes = (width * height / 8) + 1; -+ bytes = (width + 7) / 8 * height; - if (!bytes) { - return 0; - } -diff --git a/tests/xbm/CMakeLists.txt b/tests/xbm/CMakeLists.txt -index 183cf5e..08576e0 100644 ---- a/tests/xbm/CMakeLists.txt -+++ b/tests/xbm/CMakeLists.txt -@@ -1,4 +1,5 @@ - LIST(APPEND TESTS_FILES -+ github_bug_109 - github_bug_170 - ) - -diff --git a/tests/xbm/Makemodule.am b/tests/xbm/Makemodule.am -index ba1eabd..0f5beb6 100644 ---- a/tests/xbm/Makemodule.am -+++ b/tests/xbm/Makemodule.am -@@ -1,5 +1,8 @@ - libgd_test_programs += \ -+ xbm/github_bug_109 \ - xbm/github_bug_170 - - EXTRA_DIST += \ -- xbm/CMakeLists.txt -+ xbm/CMakeLists.txt \ -+ xbm/github_bug_109.xbm \ -+ xbm/github_bug_109_exp.png -diff --git a/tests/xbm/github_bug_109.c b/tests/xbm/github_bug_109.c -new file mode 100644 -index 0000000..1a020c6 ---- /dev/null -+++ b/tests/xbm/github_bug_109.c -@@ -0,0 +1,35 @@ -+/** -+ * Test reading of XBM images with a width that is not a multiple of 8 -+ * -+ * We're reading such an XBM image, and check that we got what we've expected, -+ * instead of an error message. -+ * -+ * See also . -+ */ -+ -+ -+#include "gd.h" -+#include "gdtest.h" -+ -+ -+int main() -+{ -+ gdImagePtr im; -+ FILE *fp; -+ char *path; -+ -+ fp = gdTestFileOpen2("xbm", "github_bug_109.xbm"); -+ im = gdImageCreateFromXbm(fp); -+ fclose(fp); -+ gdTestAssert(im != NULL); -+ gdTestAssert(gdImageGetTrueColorPixel(im, 0, 0) == 0); -+ gdTestAssert(gdImageGetTrueColorPixel(im, 0, 1) == 0xffffff); -+ -+ path = gdTestFilePath2("xbm", "github_bug_109_exp.png"); -+ gdAssertImageEqualsToFile(path, im); -+ gdFree(path); -+ -+ gdImageDestroy(im); -+ -+ return gdNumFailures(); -+} -diff --git a/tests/xbm/github_bug_109.xbm b/tests/xbm/github_bug_109.xbm -new file mode 100644 -index 0000000..f427d86 ---- /dev/null -+++ b/tests/xbm/github_bug_109.xbm -@@ -0,0 +1,5 @@ -+#define test_width 10 -+#define test_height 10 -+static unsigned char test_bits[] = { -+ 0xFF, 0x03, 0x00, 0x00, 0xFF, 0x03, 0x00, 0x00, 0xFF, 0x03, 0x00, 0x00, -+ 0xFF, 0x03, 0x00, 0x00, 0xFF, 0x03, 0x00, 0x00}; - --- -2.7.4 - diff --git a/gnu/packages/php.scm b/gnu/packages/php.scm index bcf1d00829..3e4b51d81a 100644 --- a/gnu/packages/php.scm +++ b/gnu/packages/php.scm @@ -282,7 +282,7 @@ ("curl" ,curl) ("cyrus-sasl" ,cyrus-sasl) ("freetype" ,freetype) - ("gd" ,gd-2.2.5) + ("gd" ,gd) ("gdbm" ,gdbm) ("glibc" ,glibc) ("gmp" ,gmp) -- cgit v1.2.3 From a87f425ca481391964767403498ee9d2a81ebe5f Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 20 Sep 2017 19:13:25 +0200 Subject: gnu: ruby: Remove graft for 2.4.2. * gnu/packages/ruby.scm (ruby): Update to 2.4.2. [replacement]: Remove field. (ruby-2.4.2): Remove variable. --- gnu/packages/ruby.scm | 25 ++----------------------- 1 file changed, 2 insertions(+), 23 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 80d3bffd84..42a0790522 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -49,8 +49,7 @@ (define-public ruby (package (name "ruby") - (replacement ruby-2.4.2) - (version "2.4.0") + (version "2.4.2") (source (origin (method url-fetch) @@ -59,7 +58,7 @@ "/ruby-" version ".tar.xz")) (sha256 (base32 - "141nnsdk2q83c23p5kl404id8gy1ap261gin48rbjj5sbksgx1rs")) + "0dgp4ypk3smrsbh2c249n5pl6nqhpd2igq9484dbsh81sf08k2kl")) (modules '((guix build utils))) (snippet `(begin ;; Remove bundled libffi @@ -103,26 +102,6 @@ a focus on simplicity and productivity.") (home-page "https://ruby-lang.org") (license license:ruby))) -(define-public ruby-2.4.2 - (package - (inherit ruby) - (name "ruby") - (version "2.4.2") - (source - (origin - (method url-fetch) - (uri (string-append "http://cache.ruby-lang.org/pub/ruby/" - (version-major+minor version) - "/ruby-" version ".tar.xz")) - (sha256 - (base32 - "0dgp4ypk3smrsbh2c249n5pl6nqhpd2igq9484dbsh81sf08k2kl")) - (modules '((guix build utils))) - (snippet `(begin - ;; Remove bundled libffi - (delete-file-recursively "ext/fiddle/libffi-3.2.1") - #t)))))) - (define-public ruby-2.3 (package (inherit ruby) -- cgit v1.2.3 From 6345cefa7f304f10fdec77ddb7fffb4866fd93db Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 20 Sep 2017 19:16:54 +0200 Subject: gnu: gtk+: Update to 3.22.21. * gnu/packages/gtk.scm (gtk+): Update to 3.22.21. --- gnu/packages/gtk.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index dd7739d5e7..857d570d23 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -653,7 +653,7 @@ application suites.") (name "gtk+") ;; NOTE: When updating the version of 'gtk+', the hash of 'mate-themes' in ;; mate.scm will also need to be updated. - (version "3.22.20") + (version "3.22.21") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -661,7 +661,7 @@ application suites.") name "-" version ".tar.xz")) (sha256 (base32 - "1n82ki9sbdnaz6k5f5k3vgd7g4756j6acfbl1bf617w0lyc0kjbh")) + "11vb1shgr4rlayfk0b858gz986jsn2mpjlxvr89b2kgvbjlc3lqv")) (patches (search-patches "gtk3-respect-GUIX_GTK3_PATH.patch" "gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch")))) (outputs '("out" "bin" "doc")) -- cgit v1.2.3 From 7c9b87600b9dc22bb0f5b74fb8b9a1fe7ba691c2 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 20 Sep 2017 19:26:45 +0200 Subject: gnu: harfbuzz: Update to 1.5.1. * gnu/packages/gtk.scm (harfbuzz): Update to 1.5.1. --- gnu/packages/gtk.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 857d570d23..0c717eafeb 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -171,7 +171,7 @@ affine transformation (scale, rotation, shear, etc.).") (define-public harfbuzz (package (name "harfbuzz") - (version "1.5.0") + (version "1.5.1") (source (origin (method url-fetch) (uri (string-append "https://www.freedesktop.org/software/" @@ -179,7 +179,7 @@ affine transformation (scale, rotation, shear, etc.).") version ".tar.bz2")) (sha256 (base32 - "1haansza0v2908xycv3xwrw2c42z5p96vdzy11vkzl787cvfr260")))) + "0lbwzif7ndvx1iqzp7wxv6j3ilal6di2vj33cy3bha97mpyqv0sn")))) (build-system gnu-build-system) (outputs '("out" "bin")) ; 160K, only hb-view depend on cairo -- cgit v1.2.3 From cb6392698af08c1774e8a9f05cb09dcf0409e718 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 20 Sep 2017 19:54:56 +0200 Subject: gnu: mesa: Update to 17.2.1. * gnu/packages/gl.scm (mesa): Update to 17.2.1. [inputs]: Add WAYLAND-PROTOCOLS. * gnu/packages/patches/mesa-skip-disk-cache-test.patch: Adjust context. --- gnu/packages/gl.scm | 7 ++++--- gnu/packages/patches/mesa-skip-disk-cache-test.patch | 6 +++--- 2 files changed, 7 insertions(+), 6 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index fa9b501077..9ce97dbcc2 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -217,7 +217,7 @@ also known as DXTn or DXTC) for Mesa.") (define-public mesa (package (name "mesa") - (version "17.1.8") + (version "17.2.1") (source (origin (method url-fetch) @@ -229,7 +229,7 @@ also known as DXTn or DXTC) for Mesa.") version "/mesa-" version ".tar.xz"))) (sha256 (base32 - "1nv9aaz7ay2bs4fc8j3rf6ky3qla8s346a8g2lvdbp96msp2xvbm")) + "07msr6xismw2jq87irwhz7vygvzj6hi38d71paij9zvwh8bmsf3p")) (patches (search-patches "mesa-wayland-egl-symbols-check-mips.patch" "mesa-skip-disk-cache-test.patch")))) @@ -261,7 +261,8 @@ also known as DXTn or DXTC) for Mesa.") ("makedepend" ,makedepend) ("presentproto" ,presentproto) ("s2tc" ,s2tc) - ("wayland" ,wayland))) + ("wayland" ,wayland) + ("wayland-protocols" ,wayland-protocols))) (native-inputs `(("pkg-config" ,pkg-config) ("python" ,python-2) diff --git a/gnu/packages/patches/mesa-skip-disk-cache-test.patch b/gnu/packages/patches/mesa-skip-disk-cache-test.patch index b3f9367fd5..190f6b6ee1 100644 --- a/gnu/packages/patches/mesa-skip-disk-cache-test.patch +++ b/gnu/packages/patches/mesa-skip-disk-cache-test.patch @@ -8,12 +8,12 @@ for now. @@ -170,11 +170,6 @@ unsetenv("MESA_GLSL_CACHE_DIR"); unsetenv("XDG_CACHE_HOME"); - -- cache = disk_cache_create("test", "make_check"); + +- cache = disk_cache_create("test", "make_check", 0); - expect_non_null(cache, "disk_cache_create with no environment variables"); - - disk_cache_destroy(cache); - /* Test with XDG_CACHE_HOME set */ setenv("XDG_CACHE_HOME", CACHE_TEST_TMP "/xdg-cache-home", 1); - cache = disk_cache_create("test", "make_check"); + cache = disk_cache_create("test", "make_check", 0); -- cgit v1.2.3 From df7effa299d877b468d43203f1a334eb84355346 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 20 Sep 2017 20:00:07 +0200 Subject: gnu: poppler: Update to 0.59.0. * gnu/packages/pdf.scm (poppler): Update to 0.59.0. --- gnu/packages/pdf.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index 5e52d87ca5..1ee4b819f9 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -76,14 +76,14 @@ (define-public poppler (package (name "poppler") - (version "0.56.0") + (version "0.59.0") (source (origin (method url-fetch) (uri (string-append "https://poppler.freedesktop.org/poppler-" version ".tar.xz")) (sha256 (base32 - "0wviayidfv2ix2ql0d4nl9r1ia6qi5kc1nybd9vjx27dk7gvm7c6")))) + "0hcnghliyr8pr887qza18qfgaclw5jr889g1cjcglkni9jr2dmm3")))) (build-system gnu-build-system) ;; FIXME: ;; use libcurl: no -- cgit v1.2.3 From 3d695e6ae4909d012ea18828945ef4f4d73b22e3 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 20 Sep 2017 20:20:19 +0200 Subject: gnu: cups-filters: Update to 1.17.7. * gnu/packages/cups.scm (cups-filters): Update to 1.17.7. --- gnu/packages/cups.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm index 452f670090..d629e38032 100644 --- a/gnu/packages/cups.scm +++ b/gnu/packages/cups.scm @@ -57,7 +57,7 @@ (define-public cups-filters (package (name "cups-filters") - (version "1.14.1") + (version "1.17.7") (source(origin (method url-fetch) (uri @@ -65,7 +65,7 @@ "cups-filters-" version ".tar.xz")) (sha256 (base32 - "0175jhqpsyn7bkh7w43ydhyws5zsdak05hr1fsadvzslvwqkffgi")) + "1mg397kgfx0rs9j852f8ppmvaz2al5l75ildbgiqg6j3gwq5jssw")) (modules '((guix build utils))) (snippet ;; install backends, banners and filters to cups-filters output -- cgit v1.2.3 From a9bd50e3527d1f16cf7e70c457dd165cafeb6372 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 20 Sep 2017 20:50:00 +0200 Subject: gnu: bluez: Remove leftover patch. This is a follow-up to commit 164fccea7eead86c6ebe389bc0255c72b161d109. * gnu/packages/patches/bluez-CVE-2017-1000250.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/patches/bluez-CVE-2017-1000250.patch | 42 ----------------------- 2 files changed, 43 deletions(-) delete mode 100644 gnu/packages/patches/bluez-CVE-2017-1000250.patch (limited to 'gnu/packages') diff --git a/gnu/local.mk b/gnu/local.mk index 24aaf9477e..8dfc1b71f2 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -538,7 +538,6 @@ dist_patch_DATA = \ %D%/packages/patches/binutils-ld-new-dtags.patch \ %D%/packages/patches/binutils-loongson-workaround.patch \ %D%/packages/patches/blast+-fix-makefile.patch \ - %D%/packages/patches/bluez-CVE-2017-1000250.patch \ %D%/packages/patches/byobu-writable-status.patch \ %D%/packages/patches/cairo-CVE-2016-9082.patch \ %D%/packages/patches/calibre-no-updates-dialog.patch \ diff --git a/gnu/packages/patches/bluez-CVE-2017-1000250.patch b/gnu/packages/patches/bluez-CVE-2017-1000250.patch deleted file mode 100644 index 81f209d7b2..0000000000 --- a/gnu/packages/patches/bluez-CVE-2017-1000250.patch +++ /dev/null @@ -1,42 +0,0 @@ -Description: CVE-2017-1000250: information disclosure vulnerability in service_search_attr_req -Origin: vendor -Bug-Debian: https://bugs.debian.org/875633 -Bug-RedHat: https://bugzilla.redhat.com/show_bug.cgi?id=1489446 -Bug-SuSE: https://bugzilla.suse.com/show_bug.cgi?id=1057342 -Forwarded: no -Author: Armis Security -Reviewed-by: Salvatore Bonaccorso -Last-Update: 2017-09-13 - ---- a/src/sdpd-request.c -+++ b/src/sdpd-request.c -@@ -918,15 +918,20 @@ static int service_search_attr_req(sdp_r - /* continuation State exists -> get from cache */ - sdp_buf_t *pCache = sdp_get_cached_rsp(cstate); - if (pCache) { -- uint16_t sent = MIN(max, pCache->data_size - cstate->cStateValue.maxBytesSent); -- pResponse = pCache->data; -- memcpy(buf->data, pResponse + cstate->cStateValue.maxBytesSent, sent); -- buf->data_size += sent; -- cstate->cStateValue.maxBytesSent += sent; -- if (cstate->cStateValue.maxBytesSent == pCache->data_size) -- cstate_size = sdp_set_cstate_pdu(buf, NULL); -- else -- cstate_size = sdp_set_cstate_pdu(buf, cstate); -+ if (cstate->cStateValue.maxBytesSent >= pCache->data_size) { -+ status = SDP_INVALID_CSTATE; -+ SDPDBG("Got bad cstate with invalid size"); -+ } else { -+ uint16_t sent = MIN(max, pCache->data_size - cstate->cStateValue.maxBytesSent); -+ pResponse = pCache->data; -+ memcpy(buf->data, pResponse + cstate->cStateValue.maxBytesSent, sent); -+ buf->data_size += sent; -+ cstate->cStateValue.maxBytesSent += sent; -+ if (cstate->cStateValue.maxBytesSent == pCache->data_size) -+ cstate_size = sdp_set_cstate_pdu(buf, NULL); -+ else -+ cstate_size = sdp_set_cstate_pdu(buf, cstate); -+ } - } else { - status = SDP_INVALID_CSTATE; - SDPDBG("Non-null continuation state, but null cache buffer"); -- cgit v1.2.3 From dc1d3cdef70f0e3c047c229c2a0e561d1f47bde8 Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Sat, 29 Jul 2017 11:28:42 -0400 Subject: gnu: Use 'modify-phases' syntax. * gnu/packages/admin.scm (mingetty, clusterssh, wpa-supplicant-minimal, wpa-supplicant, wakelan, acpica, tree, direvent, dstat)[arguments]: Use 'modify-phases' syntax. * gnu/packages/algebra.scm (arb)[arguments]: Likewise. * gnu/packages/apr.scm (apr-util)[arguments]: Likewise. * gnu/packages/audio.scm (clalsadrv, fluidsynth, faad2, lv2-mda-piano, lv2-mda-epiano, timidity++, vamp, soundtouch, portaudio, rsound, zita-convolver, zita-alsa-pcmi)[arguments]: Likewise. * gnu/packages/backup.scm (rdup, btar)[arguments]: Likewise. * gnu/packages/bioinformatics.scm (bedops, bwa, crossmap, express, flexbar, grit, hisat, ngs-sdk, subread)[arguments]: Likewise. * gnu/packages/bittorrent.scm (transmission)[arguments]: Likewise. * gnu/packages/cdrom.scm (cd-discid)[arguments]: Likewise. * gnu/packages/compression.scm (sharutils)[arguments]: Likewise. * gnu/packages/conky.scm (conky)[arguments]: Likewise. * gnu/packages/databases.scm (bdb, bdb-5.3)[arguments]: Likewise. * gnu/packages/debug.scm (delta, c-reduce)[arguments]: Likewise. * gnu/packages/display-managers.scm (slim)[arguments]: Likewise. * gnu/packages/dns.scm (dnsmasq)[arguments]: Likewise. * gnu/packages/emacs.scm (geiser, emacs-wget, bbdb)[arguments]: Likewise. * gnu/packages/engineering.scm (pcb)[arguments]: Likewise. * gnu/packages/firmware.scm (ath9k-htc-firmware)[arguments]: Likewise. * gnu/packages/flashing-tools.scm (flashrom)[arguments]: Likewise. * gnu/packages/fltk.scm (fltk)[arguments]: Likewise. * gnu/packages/freedesktop.scm (python-pyxdg)[arguments]: Likewise. * gnu/packages/gd.scm (perl-gd)[arguments]: Likewise. * gnu/packages/gkrellm.scm (gkrellm)[arguments]: Likewise. * gnu/packages/glib.scm (glibmm)[arguments]: Likewise. * gnu/packages/gl.scm (glew)[arguments]: Likewise. * gnu/packages/gnome.scm (icon-naming-utils, orbit2, libbonobo, gnome-vfs, libgnome, libbonoboui, goffice-0.8, dconf)[arguments]: Likewise. * gnu/packages/gprolog.scm (gprolog)[arguments]: Likewise. * gnu/packages/gps.scm (gpscorrelate)[arguments]: Likewise. * gnu/packages/graphics.scm (agg)[arguments]: Likewise. * gnu/packages/gtk.scm (ganv, girara, gtksourceview-2, guile-present, python2-pycairo)[arguments]: Likewise. * gnu/packages/guile.scm (guile-1.8)[arguments]: Likewise. * gnu/packages/guile-wm.scm (guile-wm)[arguments]: Likewise. * gnu/packages/hugs.scm (hugs)[arguments]: Likewise. * gnu/packages/hurd.scm (gnumach-headers, hurd-headers, hurd-minimal) [arguments]: Likewise. * gnu/packages/image-viewers.scm (feh, sxiv)[arguments]: Likewise. * gnu/packages/libcanberra.scm (libcanberra)[arguments]: Likewise. * gnu/packages/linux.scm (bridge-utils, iw, fuse, unionfs-fuse/static, lm-sensors, i2c-tools, xsensors, perf, mdadm, libaio, module-init-tools) [arguments]: Likewise. * gnu/packages/lisp.scm (ccl)[arguments]: Likewise. * gnu/packages/lout.scm (lout)[arguments]: Likewise. * gnu/packages/lua.scm (luajit)[arguments]: Likewise. * gnu/packages/machine-learning.scm (shogun)[arguments]: Likewise. * gnu/packages/mail.scm (exim)[arguments]: Likewise. * gnu/packages/man.scm (man-pages, txt2man)[arguments]: Likewise. * gnu/packages/maths.scm (lapack, superlu-dist, openlibm, openspecfun) [arguments]: Likewise. * gnu/packages/messaging.scm (bitlbee)[arguments]: Likewise. * gnu/packages/mp3.scm (libmad, id3lib, mp3info)[arguments]: Likewise. * gnu/packages/music.scm (solfege)[arguments]: Likewise. * gnu/packages/noweb.scm (noweb)[arguments]: Likewise. * gnu/packages/patchutils.scm (patchutils, quilt, colordiff)[arguments]: Likewise. * gnu/packages/pdf.scm (xpdf, zathura-cb, zathura-ps, zathura-djvu, zathura-pdf-poppler, zathura, podofo, fbida)[arguments]: Likewise. * gnu/packages/perl.scm (perl-file-list, perl-test-harness)[arguments]: Likewise. * gnu/packages/photo.scm (gphoto2)[arguments]: Likewise. * gnu/packages/popt.scm (popt)[arguments]: Likewise. * gnu/packages/pretty-print.scm (source-highlight, astyle)[arguments]: Likewise. * gnu/packages/pumpio.scm (pumpa)[arguments]: Likewise. * gnu/packages/python.scm (python-passlib, python-pycrypto, python2-empy, python-sqlalchemy, python-docopt)[arguments]: Likewise. * gnu/packages/rdf.scm (lrdf)[arguments]: Likewise. * gnu/packages/regex.scm (tre)[arguments]: Likewise. * gnu/packages/rrdtool.scm (rrdtool)[arguments]: Likewise. * gnu/packages/ruby.scm (ruby-2.1, ruby-1.8)[arguments]: Likewise. * gnu/packages/sawfish.scm (sawfish)[arguments]: Likewise. * gnu/packages/scheme.scm (racket)[arguments]: Likewise. * gnu/packages/sdl.scm (guile-sdl)[arguments]: Likewise. * gnu/packages/serveez.scm (serveez)[arguments]: Likewise. * gnu/packages/skribilo.scm (skribilo)[arguments]: Likewise. * gnu/packages/smalltalk.scm (smalltalk)[arguments]: Likewise. * gnu/packages/suckless.scm (dmenu, slock)[arguments]: Likewise. * gnu/packages/tcl.scm (expect)[arguments]: Likewise. * gnu/packages/telephony.scm (commoncpp)[arguments]: Likewise. * gnu/packages/textutils.scm (recode, libgtextutils)[arguments]: Likewise. * gnu/packages/time.scm (time)[arguments]: Likewise. * gnu/packages/tor.scm (privoxy)[arguments]: Likewise. * gnu/packages/uucp.scm (uucp)[arguments]: Likewise. * gnu/packages/video.scm (libdvdnav-4)[arguments]: Likewise. * gnu/packages/web-browsers.scm (lynx)[arguments]: Likewise. * gnu/packages/web.scm (tinyproxy)[arguments]: Likewise. * gnu/packages/wicd.scm (wicd)[arguments]: Likewise. * gnu/packages/wm.scm (bspwm)[arguments]: Likewise. * gnu/packages/xdisorg.scm (sxhkd, xcape)[arguments]: Likewise. * gnu/packages/xfce.scm (xfconf)[arguments]: Likewise. * gnu/packages/xfig.scm (transfig)[arguments]: Likewise. * gnu/packages/xorg.scm (imake)[arguments]: Likewise. --- gnu/packages/admin.scm | 244 +++++++++++++++++----------------- gnu/packages/algebra.scm | 31 +++-- gnu/packages/apr.scm | 25 ++-- gnu/packages/audio.scm | 195 +++++++++++++-------------- gnu/packages/backup.scm | 34 ++--- gnu/packages/bioinformatics.scm | 258 ++++++++++++++++++------------------ gnu/packages/bittorrent.scm | 33 ++--- gnu/packages/cdrom.scm | 2 +- gnu/packages/compression.scm | 16 +-- gnu/packages/conky.scm | 31 +++-- gnu/packages/databases.scm | 102 +++++++-------- gnu/packages/debug.scm | 70 +++++----- gnu/packages/display-managers.scm | 23 ++-- gnu/packages/dns.scm | 2 +- gnu/packages/emacs.scm | 74 ++++++----- gnu/packages/engineering.scm | 43 +++--- gnu/packages/firmware.scm | 48 +++---- gnu/packages/flashing-tools.scm | 21 ++- gnu/packages/fltk.scm | 42 +++--- gnu/packages/freedesktop.scm | 31 +++-- gnu/packages/gd.scm | 19 +-- gnu/packages/gkrellm.scm | 5 +- gnu/packages/gl.scm | 2 +- gnu/packages/glib.scm | 33 ++--- gnu/packages/gnome.scm | 145 ++++++++++----------- gnu/packages/gprolog.scm | 17 +-- gnu/packages/gps.scm | 19 +-- gnu/packages/graphics.scm | 13 +- gnu/packages/gtk.scm | 80 ++++++------ gnu/packages/guile-wm.scm | 81 ++++++------ gnu/packages/guile.scm | 36 ++--- gnu/packages/hugs.scm | 61 ++++----- gnu/packages/hurd.scm | 60 +++++---- gnu/packages/image-viewers.scm | 13 +- gnu/packages/libcanberra.scm | 18 +-- gnu/packages/linux.scm | 268 +++++++++++++++++++------------------- gnu/packages/lisp.scm | 61 +++++---- gnu/packages/lout.scm | 119 +++++++++-------- gnu/packages/lua.scm | 2 +- gnu/packages/machine-learning.scm | 88 ++++++------- gnu/packages/mail.scm | 90 ++++++------- gnu/packages/man.scm | 4 +- gnu/packages/maths.scm | 100 +++++++------- gnu/packages/messaging.scm | 27 ++-- gnu/packages/mp3.scm | 88 +++++++------ gnu/packages/music.scm | 102 +++++++-------- gnu/packages/noweb.scm | 79 ++++++----- gnu/packages/patchutils.scm | 120 ++++++++--------- gnu/packages/pdf.scm | 61 ++++----- gnu/packages/perl.scm | 29 ++--- gnu/packages/photo.scm | 15 ++- gnu/packages/popt.scm | 17 +-- gnu/packages/pretty-print.scm | 65 ++++----- gnu/packages/pumpio.scm | 33 ++--- gnu/packages/python.scm | 45 +++---- gnu/packages/rdf.scm | 40 +++--- gnu/packages/regex.scm | 20 +-- gnu/packages/rrdtool.scm | 19 +-- gnu/packages/ruby.scm | 40 +++--- gnu/packages/sawfish.scm | 50 +++---- gnu/packages/scheme.scm | 134 +++++++++---------- gnu/packages/sdl.scm | 46 +++---- gnu/packages/serveez.scm | 15 ++- gnu/packages/skribilo.scm | 29 +++-- gnu/packages/smalltalk.scm | 17 +-- gnu/packages/suckless.scm | 4 +- gnu/packages/tcl.scm | 15 ++- gnu/packages/telephony.scm | 12 +- gnu/packages/textutils.scm | 25 ++-- gnu/packages/time.scm | 20 +-- gnu/packages/tor.scm | 14 +- gnu/packages/uucp.scm | 24 ++-- gnu/packages/video.scm | 9 +- gnu/packages/web-browsers.scm | 10 +- gnu/packages/web.scm | 15 +-- gnu/packages/wicd.scm | 214 +++++++++++++++--------------- gnu/packages/wm.scm | 2 +- gnu/packages/xdisorg.scm | 5 +- gnu/packages/xfce.scm | 22 ++-- gnu/packages/xfig.scm | 74 +++++------ gnu/packages/xorg.scm | 39 +++--- 81 files changed, 2114 insertions(+), 2140 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 8e98174f47..612e4a7fff 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -361,32 +361,31 @@ login, passwd, su, groupadd, and useradd.") "05yxrp44ky2kg6qknk1ih0kvwkgbn9fbz77r3vci7agslh5wjm8g")))) (build-system gnu-build-system) (arguments - `(#:phases (alist-replace 'configure - (lambda* (#:key inputs outputs - #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (man8 (string-append - out "/share/man/man8")) - (sbin (string-append out "/sbin")) - (shadow (assoc-ref inputs "shadow")) - (login (string-append shadow - "/bin/login"))) - (substitute* "Makefile" - (("^SBINDIR.*") - (string-append "SBINDIR = " out - "/sbin\n")) - (("^MANDIR.*") - (string-append "MANDIR = " out - "/share/man/man8\n"))) - - ;; Pick the right 'login' by default. - (substitute* "mingetty.c" - (("\"/bin/login\"") - (string-append "\"" login "\""))) - - (mkdir-p sbin) - (mkdir-p man8))) - %standard-phases) + `(#:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (man8 (string-append out "/share/man/man8")) + (sbin (string-append out "/sbin")) + (shadow (assoc-ref inputs "shadow")) + (login (string-append shadow "/bin/login"))) + (substitute* "Makefile" + (("^SBINDIR.*") + (string-append "SBINDIR = " out + "/sbin\n")) + (("^MANDIR.*") + (string-append "MANDIR = " out + "/share/man/man8\n"))) + + ;; Pick the right 'login' by default. + (substitute* "mingetty.c" + (("\"/bin/login\"") + (string-append "\"" login "\""))) + + (mkdir-p sbin) + (mkdir-p man8)) + #t))) #:tests? #f)) ; no tests (inputs `(("shadow" ,shadow))) @@ -725,25 +724,25 @@ by bandwidth they use.") ("perl-x11-protocol" ,perl-x11-protocol))) (arguments `(#:phases - (alist-cons-after - 'install 'set-load-paths - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; Put the perl-tk and perl-x11-protocol modules in the perl inc - ;; path for PROG - (let* ((out (assoc-ref outputs "out")) - (prog (string-append out "/bin/cssh")) - (perl-ver ,(package-version perl)) - (x11-inc (string-append - (assoc-ref inputs "perl-x11-protocol") - "/lib/perl5/site_perl/" perl-ver)) - (tk-inc (string-append - (assoc-ref inputs "perl-tk") - "/lib/perl5/site_perl/" perl-ver - "/x86_64-linux"))) - (wrap-program - prog - `("PERL5LIB" ":" prefix (,x11-inc ,tk-inc))))) - %standard-phases))) + (modify-phases %standard-phases + (add-after 'install 'set-load-paths + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Put the perl-tk and perl-x11-protocol modules in the perl inc + ;; path for PROG + (let* ((out (assoc-ref outputs "out")) + (prog (string-append out "/bin/cssh")) + (perl-ver ,(package-version perl)) + (x11-inc (string-append + (assoc-ref inputs "perl-x11-protocol") + "/lib/perl5/site_perl/" perl-ver)) + (tk-inc (string-append + (assoc-ref inputs "perl-tk") + "/lib/perl5/site_perl/" perl-ver + "/x86_64-linux"))) + (wrap-program + prog + `("PERL5LIB" ":" prefix (,x11-inc ,tk-inc)))) + #t))))) ;; The clusterssh.sourceforge.net address requires login to view (home-page "https://sourceforge.net/projects/clusterssh/") (synopsis "Secure concurrent multi-server terminal control") @@ -908,13 +907,14 @@ commands and their arguments.") "0l0l5gz3d5j9bqjsbjlfcv4w4jwndllp9fmyai4x9kg6qhs6v4xl")))) (build-system gnu-build-system) (arguments - '(#:phases (alist-replace - 'configure - (lambda* (#:key outputs #:allow-other-keys) - (chdir "wpa_supplicant") - (copy-file "defconfig" ".config") - (let ((port (open-file ".config" "al"))) - (display " + '(#:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (chdir "wpa_supplicant") + (copy-file "defconfig" ".config") + (let ((port (open-file ".config" "al"))) + (display " CONFIG_DEBUG_SYSLOG=y # Choose GnuTLS (the default is OpenSSL.) @@ -924,26 +924,23 @@ commands and their arguments.") CFLAGS += $(shell pkg-config libnl-3.0 --cflags) CONFIG_LIBNL32=y CONFIG_READLINE=y\n" port) - (close-port port))) - - (alist-cons-after - 'install 'install-man-pages - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (man (string-append out "/share/man")) - (man5 (string-append man "/man5")) - (man8 (string-append man "/man8"))) - (define (copy-man-page target) - (lambda (file) - (install-file file target))) - - (mkdir-p man5) (mkdir man8) - (for-each (copy-man-page man5) - (find-files "doc/docbook" "\\.5")) - (for-each (copy-man-page man8) - (find-files "doc/docbook" "\\.8")) - #t)) - %standard-phases)) + (close-port port)))) + (add-after 'install 'install-man-pages + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (man (string-append out "/share/man")) + (man5 (string-append man "/man5")) + (man8 (string-append man "/man8"))) + (define (copy-man-page target) + (lambda (file) + (install-file file target))) + + (mkdir-p man5) (mkdir man8) + (for-each (copy-man-page man5) + (find-files "doc/docbook" "\\.5")) + (for-each (copy-man-page man8) + (find-files "doc/docbook" "\\.8")) + #t)))) #:make-flags (list "CC=gcc" (string-append "BINDIR=" (assoc-ref %outputs "out") @@ -980,25 +977,24 @@ This package provides the 'wpa_supplicant' daemon and the 'wpa_cli' command.") (arguments (substitute-keyword-arguments (package-arguments wpa-supplicant-minimal) ((#:phases phases) - `(alist-cons-after - 'configure 'configure-for-dbus - (lambda _ - (let ((port (open-file ".config" "al"))) - (display " + `(modify-phases ,phases + (add-after 'configure 'configure-for-dbus + (lambda _ + (let ((port (open-file ".config" "al"))) + (display " CONFIG_CTRL_IFACE_DBUS=y CONFIG_CTRL_IFACE_DBUS_NEW=y CONFIG_CTRL_IFACE_DBUS_INTRO=y\n" port) - (close-port port)) - #t) - (alist-cons-after - 'install-man-pages 'install-dbus-conf - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (dir (string-append out "/etc/dbus-1/system.d"))) - (mkdir-p dir) - (copy-file "dbus/dbus-wpa_supplicant.conf" - (string-append dir "/wpa_supplicant.conf")))) - ,phases))))))) + (close-port port)) + #t)) + (add-after 'install-man-pages 'install-dbus-conf + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (dir (string-append out "/etc/dbus-1/system.d"))) + (mkdir-p dir) + (copy-file "dbus/dbus-wpa_supplicant.conf" + (string-append dir "/wpa_supplicant.conf"))) + #t)))))))) (define-public wakelan (package @@ -1014,22 +1010,22 @@ This package provides the 'wpa_supplicant' daemon and the 'wpa_cli' command.") "0vydqpf44146ir6k87gmqaq6xy66xhc1gkr3nsd7jj3nhy7ypx9x")))) (build-system gnu-build-system) (arguments - '(#:phases (alist-replace - 'configure - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (mkdir-p (string-append out "/bin")) - (mkdir-p (string-append out "/share/man/man1")) - - ;; It's an old configure script that doesn't understand - ;; the extra options we pass. - (setenv "CONFIG_SHELL" (which "bash")) - (zero? - (system* "./configure" - (string-append "--prefix=" out) - (string-append "--mandir=" out - "/share/man"))))) - %standard-phases) + '(#:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (mkdir-p (string-append out "/bin")) + (mkdir-p (string-append out "/share/man/man1")) + + ;; It's an old configure script that doesn't understand + ;; the extra options we pass. + (setenv "CONFIG_SHELL" (which "bash")) + (zero? + (system* "./configure" + (string-append "--prefix=" out) + (string-append "--mandir=" out + "/share/man"))))))) #:tests? #f)) (home-page "http://kernel.org") ; really, no home page (synopsis "Send a wake-on-LAN packet") @@ -1088,7 +1084,7 @@ module slots, and the list of I/O ports (e.g. serial, parallel, USB).") "HOST=_LINUX" "OPT_CFLAGS=-Wall -fno-strict-aliasing") #:tests? #f ; no 'check' target. - #:phases (alist-delete 'configure %standard-phases))) + #:phases (modify-phases %standard-phases (delete 'configure)))) (home-page "http://acpica.org/") (synopsis "Tools for the development and debug of ACPI tables") (description @@ -1198,7 +1194,7 @@ recover lost partitions and/or make non-booting disks bootable again.") (base32 "04kviw799qxly08zb8n5mgxfd96gyis6x69q2qiw86jnh87c4mv9")))) (build-system gnu-build-system) (arguments - '(#:phases (alist-delete 'configure %standard-phases) + '(#:phases (modify-phases %standard-phases (delete 'configure)) #:tests? #f ; no check target #:make-flags (let ((out (assoc-ref %outputs "out"))) (list (string-append "prefix=" out))))) @@ -1227,23 +1223,23 @@ environment variable is set and output is to tty.") "#!$SHELL"))))) (build-system gnu-build-system) (arguments - '(#:phases (alist-cons-before - 'build 'patch-/bin/sh - (lambda* (#:key inputs #:allow-other-keys) - ;; Use the right shell when executing the watcher and - ;; user-provided shell commands. - (let ((bash (assoc-ref inputs "bash"))) - (substitute* '("src/direvent.c" "src/progman.c") - (("\"/bin/sh\"") - (string-append "\"" bash "/bin/sh\""))) - - ;; Adjust the 'shell.at' test accordingly. - (substitute* "tests/testsuite" - (("SHELL=/bin/sh") - (string-append "SHELL=" bash "/bin/sh"))) - - #t)) - %standard-phases))) + '(#:phases + (modify-phases %standard-phases + (add-before 'build 'patch-/bin/sh + (lambda* (#:key inputs #:allow-other-keys) + ;; Use the right shell when executing the watcher and + ;; user-provided shell commands. + (let ((bash (assoc-ref inputs "bash"))) + (substitute* '("src/direvent.c" "src/progman.c") + (("\"/bin/sh\"") + (string-append "\"" bash "/bin/sh\""))) + + ;; Adjust the 'shell.at' test accordingly. + (substitute* "tests/testsuite" + (("SHELL=/bin/sh") + (string-append "SHELL=" bash "/bin/sh"))) + + #t)))))) (home-page "https://www.gnu.org/software/direvent/") (synopsis "Daemon to monitor directories for events such as file removal") (description @@ -1700,7 +1696,7 @@ results (ndiff), and a packet generation and response analysis tool (nping).") (list (string-append "DESTDIR=" out) "prefix=/")) ;; no configure script - #:phases (alist-delete 'configure %standard-phases))) + #:phases (modify-phases %standard-phases (delete 'configure)))) (inputs `(("python-2" ,python-2))) (synopsis "Versatile resource statistics tool") (description "Dstat is a versatile replacement for @command{vmstat}, diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm index e4f30a5791..08940e4f90 100644 --- a/gnu/packages/algebra.scm +++ b/gnu/packages/algebra.scm @@ -334,22 +334,21 @@ fast arithmetic.") ("mpfr" ,mpfr))) (arguments `(#:phases - (alist-replace - 'configure - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (flint (assoc-ref inputs "flint")) - (gmp (assoc-ref inputs "gmp")) - (mpfr (assoc-ref inputs "mpfr"))) - ;; do not pass "--enable-fast-install", which makes the - ;; homebrew configure process fail - (zero? (system* - "./configure" - (string-append "--prefix=" out) - (string-append "--with-flint=" flint) - (string-append "--with-gmp=" gmp) - (string-append "--with-mpfr=" mpfr))))) - %standard-phases))) + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (flint (assoc-ref inputs "flint")) + (gmp (assoc-ref inputs "gmp")) + (mpfr (assoc-ref inputs "mpfr"))) + ;; do not pass "--enable-fast-install", which makes the + ;; homebrew configure process fail + (zero? (system* + "./configure" + (string-append "--prefix=" out) + (string-append "--with-flint=" flint) + (string-append "--with-gmp=" gmp) + (string-append "--with-mpfr=" mpfr))))))))) (synopsis "Arbitrary precision floating-point ball arithmetic") (description "Arb is a C library for arbitrary-precision floating-point ball diff --git a/gnu/packages/apr.scm b/gnu/packages/apr.scm index 17945c0390..baadb41b60 100644 --- a/gnu/packages/apr.scm +++ b/gnu/packages/apr.scm @@ -80,19 +80,18 @@ around or take advantage of platform-specific deficiencies or features.") `(("expat" ,expat))) (arguments '(#:phases - (alist-replace - 'configure - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (apr (assoc-ref inputs "apr")) - (expat (assoc-ref inputs "expat"))) - (setenv "CONFIG_SHELL" (which "bash")) - (zero? - (system* "./configure" - (string-append "--prefix=" out) - (string-append "--with-apr=" apr) - (string-append "--with-expat=" expat))))) - %standard-phases) + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (apr (assoc-ref inputs "apr")) + (expat (assoc-ref inputs "expat"))) + (setenv "CONFIG_SHELL" (which "bash")) + (zero? + (system* "./configure" + (string-append "--prefix=" out) + (string-append "--with-apr=" apr) + (string-append "--with-expat=" expat))))))) ;; There are race conditions during 'make check'. Typically, the ;; 'testall' executable is not built yet by the time 'make check' tries diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 1b7950cf00..e33f5e33b7 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -617,23 +617,21 @@ language and software synthesizer.") `(#:tests? #f ; no "check" target #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))) #:phases - (alist-cons-after - 'unpack 'patch-makefile-and-enter-directory - (lambda _ - (substitute* "libs/Makefile" - (("/sbin/ldconfig") "true") - (("^LIBDIR =.*") "LIBDIR = lib\n")) - (chdir "libs") - #t) - (alist-cons-after - 'install - 'install-symlink - (lambda _ - (symlink "libclalsadrv.so" - (string-append (assoc-ref %outputs "out") - "/lib/libclalsadrv.so.2"))) - ;; no configure script - (alist-delete 'configure %standard-phases))))) + (modify-phases %standard-phases + (add-after 'unpack 'patch-makefile-and-enter-directory + (lambda _ + (substitute* "libs/Makefile" + (("/sbin/ldconfig") "true") + (("^LIBDIR =.*") "LIBDIR = lib\n")) + (chdir "libs") + #t)) + (add-after 'install 'install-symlink + (lambda _ + (symlink "libclalsadrv.so" + (string-append (assoc-ref %outputs "out") + "/lib/libclalsadrv.so.2"))) + ;; no configure script + (modify-phases %standard-phases (delete 'configure)))))) (inputs `(("alsa-lib" ,alsa-lib) ("fftw" ,fftw))) @@ -972,11 +970,9 @@ follower.") (build-system gnu-build-system) (arguments `(#:phases - (alist-cons-after - 'unpack - 'remove-broken-symlinks - (lambda _ (delete-file-recursively "m4") #t) - %standard-phases))) + (modify-phases %standard-phases + (add-after 'unpack 'remove-broken-symlinks + (lambda _ (delete-file-recursively "m4") #t))))) (inputs `(("libsndfile" ,libsndfile) ("alsa-lib" ,alsa-lib) @@ -1015,12 +1011,11 @@ also play midifiles using a Soundfont.") ("unzip" ,unzip))) (arguments '(#:phases - (alist-cons-after - 'unpack 'bootstrap - (lambda _ - (substitute* "bootstrap" (("\r\n") "\n")) - (zero? (system* "sh" "bootstrap"))) - %standard-phases))) + (modify-phases %standard-phases + (add-after 'unpack 'bootstrap + (lambda _ + (substitute* "bootstrap" (("\r\n") "\n")) + (zero? (system* "sh" "bootstrap"))))))) (home-page "http://www.audiocoding.com/faad2.html") (synopsis "MPEG-4 and MPEG-2 AAC decoder") (description @@ -1674,7 +1669,7 @@ software.") "TYPE=mdaPiano" (string-append "PREFIX=" (assoc-ref %outputs "out"))) #:tests? #f ; no check target - #:phases (alist-delete 'configure %standard-phases))) + #:phases (modify-phases %standard-phases (delete 'configure)))) (inputs `(("lv2" ,lv2) ("lvtk" ,lvtk))) @@ -1697,7 +1692,7 @@ software.") "TYPE=mdaEPiano" (string-append "PREFIX=" (assoc-ref %outputs "out"))) #:tests? #f ; no check target - #:phases (alist-delete 'configure %standard-phases))) + #:phases (modify-phases %standard-phases (delete 'configure)))) (home-page "http://elephly.net/lv2/mdaepiano.html") (synopsis "LV2 port of the mda EPiano plugin") (description "An LV2 port of the mda EPiano VSTi."))) @@ -2090,19 +2085,19 @@ Suil currently supports every combination of Gtk 2, Qt 4, and X11.") (string-append "--with-default-path=" (assoc-ref %outputs "out") "/etc/timidity")) #:phases - (alist-cons-after - 'install 'install-config - (lambda _ - (let ((out (string-append (assoc-ref %outputs "out") - "/etc/timidity"))) - (mkdir-p out) - (call-with-output-file - (string-append out "/timidity.cfg") - (lambda (port) - (format port (string-append "source " - (assoc-ref %build-inputs "freepats") - "/share/freepats/freepats.cfg")))))) - %standard-phases))) + (modify-phases %standard-phases + (add-after 'install 'install-config + (lambda _ + (let ((out (string-append (assoc-ref %outputs "out") + "/etc/timidity"))) + (mkdir-p out) + (call-with-output-file + (string-append out "/timidity.cfg") + (lambda (port) + (format port (string-append "source " + (assoc-ref %build-inputs "freepats") + "/share/freepats/freepats.cfg"))))) + #t))))) (inputs `(("alsa-lib" ,alsa-lib) ("ao" ,ao) @@ -2141,16 +2136,15 @@ disks as various audio file formats.") (arguments `(#:tests? #f ; no check target #:phases - (alist-cons-after - 'install 'remove-libvamp-hostsdk.la - (lambda* (#:key outputs #:allow-other-keys) - ;; https://bugs.launchpad.net/ubuntu/+source/vamp-plugin-sdk/+bug/1253656 - (for-each delete-file - (let ((out (assoc-ref outputs "out"))) - (list (string-append out "/lib/libvamp-sdk.la") - (string-append out "/lib/libvamp-hostsdk.la")))) - #t) - %standard-phases))) + (modify-phases %standard-phases + (add-after 'install 'remove-libvamp-hostsdk.la + (lambda* (#:key outputs #:allow-other-keys) + ;; https://bugs.launchpad.net/ubuntu/+source/vamp-plugin-sdk/+bug/1253656 + (for-each delete-file + (let ((out (assoc-ref outputs "out"))) + (list (string-append out "/lib/libvamp-sdk.la") + (string-append out "/lib/libvamp-hostsdk.la")))) + #t)s)))) (inputs `(("libsndfile" ,libsndfile))) (native-inputs @@ -2312,11 +2306,10 @@ Tracker 3 S3M and Impulse Tracker IT files.") ("file" ,file))) (arguments '(#:phases - (alist-cons-after - 'unpack 'bootstrap - (lambda _ - (zero? (system* "sh" "bootstrap"))) - %standard-phases))) + (modify-phases %standard-phases + (add-after 'unpack 'bootstrap + (lambda _ + (zero? (system* "sh" "bootstrap"))))))) (home-page "http://www.surina.net/soundtouch/") (synopsis "Audio processing library for changing tempo, pitch and playback rate") @@ -2450,11 +2443,10 @@ portions of LAME.") '(#:phases ;; Autoreconf is necessary because the audacity-compat patch modifies ;; .in files. - (alist-cons-after - 'unpack 'autoreconf - (lambda _ - (zero? (system* "autoreconf" "-vif"))) - %standard-phases) + (modify-phases %standard-phases + (add-after 'unpack 'autoreconf + (lambda _ + (zero? (system* "autoreconf" "-vif"))))) #:tests? #f)) ;no 'check' target (home-page "http://www.portaudio.com/") (synopsis "Audio I/O library") @@ -2518,14 +2510,13 @@ synthesizer written in C++.") ("pulseaudio" ,pulseaudio))) (arguments '(#:phases - (alist-replace - 'configure - (lambda* (#:key outputs #:allow-other-keys) - (setenv "CC" "gcc") - (zero? - (system* "./configure" - (string-append "--prefix=" (assoc-ref outputs "out"))))) - %standard-phases) + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (setenv "CC" "gcc") + (zero? + (system* "./configure" + (string-append "--prefix=" (assoc-ref outputs "out"))))))) ;; No 'check' target. #:tests? #f)) (home-page "http://themaister.net/rsound.html") @@ -2592,22 +2583,20 @@ result.") `(#:tests? #f ; no "check" target #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))) #:phases - (alist-cons-after - 'unpack 'patch-makefile-and-enter-directory - (lambda _ - (substitute* "libs/Makefile" - (("ldconfig") "true") - (("^LIBDIR =.*") "LIBDIR = lib\n")) - (chdir "libs") #t) - (alist-cons-after - 'install - 'install-symlink - (lambda _ - (symlink "libzita-convolver.so" - (string-append (assoc-ref %outputs "out") - "/lib/libzita-convolver.so.3"))) - ;; no configure script - (alist-delete 'configure %standard-phases))))) + (modify-phases %standard-phases + (add-after 'unpack 'patch-makefile-and-enter-directory + (lambda _ + (substitute* "libs/Makefile" + (("ldconfig") "true") + (("^LIBDIR =.*") "LIBDIR = lib\n")) + (chdir "libs") #t) + (add-after 'install 'install-symlink + (lambda _ + (symlink "libzita-convolver.so" + (string-append (assoc-ref %outputs "out") + "/lib/libzita-convolver.so.3")))) + ;; no configure script + (delete 'configure))))) (inputs `(("fftwf" ,fftwf))) (home-page "http://kokkinizita.linuxaudio.org") (synopsis "Fast, partitioned convolution engine library") @@ -2682,23 +2671,21 @@ provide high-quality sample rate conversion.") `(#:tests? #f ; no "check" target #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))) #:phases - (alist-cons-after - 'unpack 'patch-makefile-and-enter-directory - (lambda _ - (substitute* "libs/Makefile" - (("ldconfig") "true") - (("^LIBDIR =.*") "LIBDIR = lib\n")) - (chdir "libs") - #t) - (alist-cons-after - 'install - 'install-symlink - (lambda _ - (symlink "libzita-alsa-pcmi.so" - (string-append (assoc-ref %outputs "out") - "/lib/libzita-alsa-pcmi.so.0"))) - ;; no configure script - (alist-delete 'configure %standard-phases))))) + (modify-phases %standard-phases + (add-after 'unpack 'patch-makefile-and-enter-directory + (lambda _ + (substitute* "libs/Makefile" + (("ldconfig") "true") + (("^LIBDIR =.*") "LIBDIR = lib\n")) + (chdir "libs") + #t)) + (add-after 'install 'install-symlink + (lambda _ + (symlink "libzita-alsa-pcmi.so" + (string-append (assoc-ref %outputs "out") + "/lib/libzita-alsa-pcmi.so.0")))) + ;; no configure script + (delete 'configure)))) (inputs `(("alsa-lib" ,alsa-lib) ("fftw" ,fftw))) diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index 006d00ef0c..9f7921ad76 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -293,20 +293,20 @@ random access nor for in-place modification.") ("nettle" ,nettle))) (arguments `(#:parallel-build? #f ;race conditions - #:phases (alist-cons-before - 'build 'remove-Werror - ;; rdup uses a deprecated function from libarchive - (lambda _ - (substitute* "GNUmakefile" - (("^(CFLAGS=.*)-Werror" _ front) front))) - (alist-cons-before - 'check 'pre-check - (lambda _ - (setenv "HOME" (getcwd)) - (substitute* "testsuite/rdup/rdup.rdup-up-t-with-file.exp" - (("/bin/cat") (which "cat")))) - - %standard-phases)))) + #:phases + (modify-phases %standard-phases + (add-before 'build 'remove-Werror + ;; rdup uses a deprecated function from libarchive + (lambda _ + (substitute* "GNUmakefile" + (("^(CFLAGS=.*)-Werror" _ front) front)) + #t)) + (add-before 'check 'pre-check + (lambda _ + (setenv "HOME" (getcwd)) + (substitute* "testsuite/rdup/rdup.rdup-up-t-with-file.exp" + (("/bin/cat") (which "cat"))) + #t))))) (home-page "http://archive.miek.nl/projects/rdup/index.html") (synopsis "Provide a list of files to backup") (description @@ -336,9 +336,9 @@ list and implement the backup strategy.") "CC=gcc") #:tests? #f ;test input not distributed #:phases - (alist-delete - 'configure ;no configure phase - %standard-phases))) + ;; no configure phase + (modify-phases %standard-phases + (delete 'configure)))) (home-page "http://viric.name/cgi-bin/btar/doc/trunk/doc/home.wiki") (synopsis "Tar-compatible archiver") (description diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 33b58f44bc..d94b297723 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -369,32 +369,33 @@ transparently with both VCFs and BCFs, both uncompressed and BGZF-compressed.") '(#:tests? #f #:make-flags (list (string-append "BINDIR=" %output "/bin")) #:phases - (alist-cons-after - 'unpack 'unpack-tarballs - (lambda _ - ;; FIXME: Bedops includes tarballs of minimally patched upstream - ;; libraries jansson, zlib, and bzip2. We cannot just use stock - ;; libraries because at least one of the libraries (zlib) is - ;; patched to add a C++ function definition (deflateInit2cpp). - ;; Until the Bedops developers offer a way to link against system - ;; libraries we have to build the in-tree copies of these three - ;; libraries. - - ;; See upstream discussion: - ;; https://github.com/bedops/bedops/issues/124 - - ;; Unpack the tarballs to benefit from shebang patching. - (with-directory-excursion "third-party" - (and (zero? (system* "tar" "xvf" "jansson-2.6.tar.bz2")) - (zero? (system* "tar" "xvf" "zlib-1.2.7.tar.bz2")) - (zero? (system* "tar" "xvf" "bzip2-1.0.6.tar.bz2")))) - ;; Disable unpacking of tarballs in Makefile. - (substitute* "system.mk/Makefile.linux" - (("^\tbzcat .*") "\t@echo \"not unpacking\"\n") - (("\\./configure") "CONFIG_SHELL=bash ./configure")) - (substitute* "third-party/zlib-1.2.7/Makefile.in" - (("^SHELL=.*$") "SHELL=bash\n"))) - (alist-delete 'configure %standard-phases)))) + (modify-phases %standard-phases + (add-after 'unpack 'unpack-tarballs + (lambda _ + ;; FIXME: Bedops includes tarballs of minimally patched upstream + ;; libraries jansson, zlib, and bzip2. We cannot just use stock + ;; libraries because at least one of the libraries (zlib) is + ;; patched to add a C++ function definition (deflateInit2cpp). + ;; Until the Bedops developers offer a way to link against system + ;; libraries we have to build the in-tree copies of these three + ;; libraries. + + ;; See upstream discussion: + ;; https://github.com/bedops/bedops/issues/124 + + ;; Unpack the tarballs to benefit from shebang patching. + (with-directory-excursion "third-party" + (and (zero? (system* "tar" "xvf" "jansson-2.6.tar.bz2")) + (zero? (system* "tar" "xvf" "zlib-1.2.7.tar.bz2")) + (zero? (system* "tar" "xvf" "bzip2-1.0.6.tar.bz2")))) + ;; Disable unpacking of tarballs in Makefile. + (substitute* "system.mk/Makefile.linux" + (("^\tbzcat .*") "\t@echo \"not unpacking\"\n") + (("\\./configure") "CONFIG_SHELL=bash ./configure")) + (substitute* "third-party/zlib-1.2.7/Makefile.in" + (("^SHELL=.*$") "SHELL=bash\n")) + #t)) + (delete 'configure)))) (home-page "https://github.com/bedops/bedops") (synopsis "Tools for high-performance genomic feature operations") (description @@ -1325,20 +1326,21 @@ splice junctions between exons.") (arguments '(#:tests? #f ;no "check" target #:phases - (alist-replace - 'install - (lambda* (#:key outputs #:allow-other-keys) - (let ((bin (string-append - (assoc-ref outputs "out") "/bin")) - (doc (string-append - (assoc-ref outputs "out") "/share/doc/bwa")) - (man (string-append - (assoc-ref outputs "out") "/share/man/man1"))) - (install-file "bwa" bin) - (install-file "README.md" doc) - (install-file "bwa.1" man))) - ;; no "configure" script - (alist-delete 'configure %standard-phases)))) + (modify-phases %standard-phases + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((bin (string-append + (assoc-ref outputs "out") "/bin")) + (doc (string-append + (assoc-ref outputs "out") "/share/doc/bwa")) + (man (string-append + (assoc-ref outputs "out") "/share/man/man1"))) + (install-file "bwa" bin) + (install-file "README.md" doc) + (install-file "bwa.1" man)) + #t)) + ;; no "configure" script + (delete 'configure)))) (inputs `(("zlib" ,zlib))) ;; Non-portable SSE instructions are used so building fails on platforms ;; other than x86_64. @@ -1815,10 +1817,9 @@ time.") (arguments `(#:python ,python-2 #:phases - (alist-cons-after - 'unpack 'set-env - (lambda _ (setenv "CROSSMAP_USE_SYSTEM_PYSAM" "1")) - %standard-phases))) + (modify-phases %standard-phases + (add-after 'unpack 'set-env + (lambda _ (setenv "CROSSMAP_USE_SYSTEM_PYSAM" "1") #t))))) (inputs `(("python-numpy" ,python2-numpy) ("python-pysam" ,python2-pysam) @@ -2365,19 +2366,18 @@ dynamic programming or a variety of heuristics.") (arguments `(#:tests? #f ;no "check" target #:phases - (alist-cons-after - 'unpack 'use-shared-boost-libs-and-set-bamtools-paths - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "CMakeLists.txt" - (("set\\(Boost_USE_STATIC_LIBS ON\\)") - "set(Boost_USE_STATIC_LIBS OFF)") - (("\\$\\{CMAKE_CURRENT_SOURCE_DIR\\}/bamtools/include") - (string-append (assoc-ref inputs "bamtools") "/include/bamtools"))) - (substitute* "src/CMakeLists.txt" - (("\\$\\{CMAKE_CURRENT_SOURCE_DIR\\}/\\.\\./bamtools/lib") - (string-append (assoc-ref inputs "bamtools") "/lib/bamtools"))) - #t) - %standard-phases))) + (modify-phases %standard-phases + (add-after 'unpack 'use-shared-boost-libs-and-set-bamtools-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "CMakeLists.txt" + (("set\\(Boost_USE_STATIC_LIBS ON\\)") + "set(Boost_USE_STATIC_LIBS OFF)") + (("\\$\\{CMAKE_CURRENT_SOURCE_DIR\\}/bamtools/include") + (string-append (assoc-ref inputs "bamtools") "/include/bamtools"))) + (substitute* "src/CMakeLists.txt" + (("\\$\\{CMAKE_CURRENT_SOURCE_DIR\\}/\\.\\./bamtools/lib") + (string-append (assoc-ref inputs "bamtools") "/lib/bamtools"))) + #t))))) (inputs `(("boost" ,boost) ("bamtools" ,bamtools) @@ -2544,15 +2544,15 @@ results. The FASTX-Toolkit tools perform some of these preprocessing tasks.") (assoc-ref %outputs "out") "/bin/")) #:phases - (alist-replace - 'check - (lambda* (#:key outputs #:allow-other-keys) - (setenv "PATH" (string-append - (assoc-ref outputs "out") "/bin:" - (getenv "PATH"))) - (chdir "../flexbar_v2.5_src/test") - (zero? (system* "bash" "flexbar_validate.sh"))) - (alist-delete 'install %standard-phases)))) + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key outputs #:allow-other-keys) + (setenv "PATH" (string-append + (assoc-ref outputs "out") "/bin:" + (getenv "PATH"))) + (chdir "../flexbar_v2.5_src/test") + (zero? (system* "bash" "flexbar_validate.sh")))) + (delete 'install)))) (inputs `(("tbb" ,tbb) ("zlib" ,zlib))) @@ -2788,21 +2788,21 @@ association studies (GWAS).") (arguments `(#:python ,python-2 #:phases - (alist-cons-after - 'unpack 'generate-from-cython-sources - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; Delete these C files to force fresh generation from pyx sources. - (delete-file "grit/sparsify_support_fns.c") - (delete-file "grit/call_peaks_support_fns.c") - (substitute* "setup.py" - (("Cython.Setup") "Cython.Build") - ;; Add numpy include path to fix compilation - (("pyx\", \\]") - (string-append "pyx\", ], include_dirs = ['" - (assoc-ref inputs "python-numpy") - "/lib/python2.7/site-packages/numpy/core/include/" - "']"))) #t) - %standard-phases))) + (modify-phases %standard-phases + (add-after 'unpack 'generate-from-cython-sources + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Delete these C files to force fresh generation from pyx sources. + (delete-file "grit/sparsify_support_fns.c") + (delete-file "grit/call_peaks_support_fns.c") + (substitute* "setup.py" + (("Cython.Setup") "Cython.Build") + ;; Add numpy include path to fix compilation + (("pyx\", \\]") + (string-append "pyx\", ], include_dirs = ['" + (assoc-ref inputs "python-numpy") + "/lib/python2.7/site-packages/numpy/core/include/" + "']"))) + #t))))) (inputs `(("python-scipy" ,python2-scipy) ("python-numpy" ,python2-numpy) @@ -2845,28 +2845,29 @@ estimates transcript expression.") '() '("POPCNT_CAPABILITY=0"))) #:phases - (alist-cons-after - 'unpack 'patch-sources - (lambda _ - ;; XXX Cannot use snippet because zip files are not supported - (substitute* "Makefile" - (("^CC = .*$") "CC = gcc") - (("^CPP = .*$") "CPP = g++") - ;; replace BUILD_HOST and BUILD_TIME for deterministic build - (("-DBUILD_HOST=.*") "-DBUILD_HOST=\"\\\"guix\\\"\"") - (("-DBUILD_TIME=.*") "-DBUILD_TIME=\"\\\"0\\\"\"")) - (substitute* '("hisat-build" "hisat-inspect") - (("/usr/bin/env") (which "env")))) - (alist-replace - 'install - (lambda* (#:key outputs #:allow-other-keys) - (let ((bin (string-append (assoc-ref outputs "out") "/bin/"))) - (for-each (lambda (file) - (install-file file bin)) - (find-files - "." - "hisat(-(build|align|inspect)(-(s|l)(-debug)*)*)*$")))) - (alist-delete 'configure %standard-phases))))) + (modify-phases %standard-phases + (add-after 'unpack 'patch-sources + (lambda _ + ;; XXX Cannot use snippet because zip files are not supported + (substitute* "Makefile" + (("^CC = .*$") "CC = gcc") + (("^CPP = .*$") "CPP = g++") + ;; replace BUILD_HOST and BUILD_TIME for deterministic build + (("-DBUILD_HOST=.*") "-DBUILD_HOST=\"\\\"guix\\\"\"") + (("-DBUILD_TIME=.*") "-DBUILD_TIME=\"\\\"0\\\"\"")) + (substitute* '("hisat-build" "hisat-inspect") + (("/usr/bin/env") (which "env"))) + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((bin (string-append (assoc-ref outputs "out") "/bin/"))) + (for-each (lambda (file) + (install-file file bin)) + (find-files + "." + "hisat(-(build|align|inspect)(-(s|l)(-debug)*)*)*$"))) + #t)) + (delete 'configure)))) (native-inputs `(("unzip" ,unzip))) (inputs @@ -4680,23 +4681,21 @@ Roche 454, Ion Torrent and Pacific BioSciences SMRT.") `(#:parallel-build? #f ; not supported #:tests? #f ; no "check" target #:phases - (alist-replace - 'configure - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - ;; Allow 'konfigure.perl' to find 'package.prl'. - (setenv "PERL5LIB" - (string-append ".:" (getenv "PERL5LIB"))) - - ;; The 'configure' script doesn't recognize things like - ;; '--enable-fast-install'. - (zero? (system* "./configure" - (string-append "--build-prefix=" (getcwd) "/build") - (string-append "--prefix=" out))))) - (alist-cons-after - 'unpack 'enter-dir - (lambda _ (chdir "ngs-sdk") #t) - %standard-phases)))) + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + ;; Allow 'konfigure.perl' to find 'package.prl'. + (setenv "PERL5LIB" + (string-append ".:" (getenv "PERL5LIB"))) + + ;; The 'configure' script doesn't recognize things like + ;; '--enable-fast-install'. + (zero? (system* "./configure" + (string-append "--build-prefix=" (getcwd) "/build") + (string-append "--prefix=" out)))))) + (add-after 'unpack 'enter-dir + (lambda _ (chdir "ngs-sdk") #t))))) (native-inputs `(("perl" ,perl))) ;; According to the test ;; unless ($MARCH =~ /x86_64/i || $MARCH =~ /i?86/i) @@ -5460,17 +5459,16 @@ sequences.") "-f" "Makefile.Linux" "CC=gcc ${CCFLAGS}") #:phases - (alist-cons-after - 'unpack 'enter-dir - (lambda _ (chdir "src") #t) - (alist-replace - 'install - (lambda* (#:key outputs #:allow-other-keys) - (let ((bin (string-append (assoc-ref outputs "out") "/bin/"))) - (mkdir-p bin) - (copy-recursively "../bin" bin))) + (modify-phases %standard-phases + (add-after 'unpack 'enter-dir + (lambda _ (chdir "src") #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((bin (string-append (assoc-ref outputs "out") "/bin/"))) + (mkdir-p bin) + (copy-recursively "../bin" bin)))) ;; no "configure" script - (alist-delete 'configure %standard-phases))))) + (delete 'configure)))) (inputs `(("zlib" ,zlib))) (home-page "http://bioinf.wehi.edu.au/subread-package/") (synopsis "Tool kit for processing next-gen sequencing data") diff --git a/gnu/packages/bittorrent.scm b/gnu/packages/bittorrent.scm index 79a87dc8bf..9bd89d9085 100644 --- a/gnu/packages/bittorrent.scm +++ b/gnu/packages/bittorrent.scm @@ -74,23 +74,24 @@ "gui")) ; graphical user interface (arguments '(#:glib-or-gtk-wrap-excluded-outputs '("out") - #:phases (alist-cons-after - 'install 'move-gui - (lambda* (#:key outputs #:allow-other-keys) - ;; Move the GUI to its own output, so that "out" doesn't - ;; depend on GTK+. - (let ((out (assoc-ref outputs "out")) - (gui (assoc-ref outputs "gui"))) - (mkdir-p (string-append gui "/bin")) - (rename-file (string-append out "/bin/transmission-gtk") - (string-append gui - "/bin/transmission-gtk")) + #:phases + (modify-phases %standard-phases + (add-after 'install 'move-gui + (lambda* (#:key outputs #:allow-other-keys) + ;; Move the GUI to its own output, so that "out" doesn't + ;; depend on GTK+. + (let ((out (assoc-ref outputs "out")) + (gui (assoc-ref outputs "gui"))) + (mkdir-p (string-append gui "/bin")) + (rename-file (string-append out "/bin/transmission-gtk") + (string-append gui + "/bin/transmission-gtk")) - ;; Move the '.desktop' file as well. - (mkdir (string-append gui "/share")) - (rename-file (string-append out "/share/applications") - (string-append gui "/share/applications")))) - %standard-phases))) + ;; Move the '.desktop' file as well. + (mkdir (string-append gui "/share")) + (rename-file (string-append out "/share/applications") + (string-append gui "/share/applications"))) + #t))))) (inputs `(("inotify-tools" ,inotify-tools) ("libevent" ,libevent) diff --git a/gnu/packages/cdrom.scm b/gnu/packages/cdrom.scm index 2f708f0c0b..ddc035c1b0 100644 --- a/gnu/packages/cdrom.scm +++ b/gnu/packages/cdrom.scm @@ -454,7 +454,7 @@ the data.") (build-system gnu-build-system) (arguments '(#:tests? #f - #:phases (alist-delete 'configure %standard-phases) + #:phases (modify-phases %standard-phases (delete 'configure)) #:make-flags (list "CC=gcc" (string-append "PREFIX=" (assoc-ref %outputs "out"))))) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index c96c51a346..fb1b489ded 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -521,14 +521,14 @@ decompressors when faced with corrupted input.") `(("which" ,which))) (arguments `(#:phases - (alist-cons-after - 'patch-source-shebangs 'unpatch-source-shebang - ;; revert the patch-shebang phase on a script which is - ;; in fact test data - (lambda _ - (substitute* "tests/shar-1.ok" - (((which "sh")) "/bin/sh"))) - %standard-phases))) + (modify-phases %standard-phases + (add-after 'patch-source-shebangs 'unpatch-source-shebang + ;; revert the patch-shebang phase on a script which is + ;; in fact test data + (lambda _ + (substitute* "tests/shar-1.ok" + (((which "sh")) "/bin/sh")) + #t))))) (home-page "https://www.gnu.org/software/sharutils/") (synopsis "Archives in shell scripts, uuencode/uudecode") (description diff --git a/gnu/packages/conky.scm b/gnu/packages/conky.scm index 1f5b38eef4..f0f19c5a0e 100644 --- a/gnu/packages/conky.scm +++ b/gnu/packages/conky.scm @@ -50,22 +50,21 @@ ;; TODO: add 'ncurses.pc' to the ncurses package. "-DBUILD_NCURSES=false") #:phases - (alist-cons-after - 'unpack 'add-freetype-to-search-path - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "cmake/ConkyPlatformChecks.cmake" - (("set\\(INCLUDE_SEARCH_PATH") - (string-append - "set(INCLUDE_SEARCH_PATH " - (assoc-ref inputs "freetype") "/include/freetype2 "))) - #t) - (alist-replace - 'install - (lambda* (#:key outputs #:allow-other-keys) - (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) - (mkdir-p bin) - (install-file "src/conky" bin))) - %standard-phases)))) + (modify-phases %standard-phases + (add-after 'unpack 'add-freetype-to-search-path + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "cmake/ConkyPlatformChecks.cmake" + (("set\\(INCLUDE_SEARCH_PATH") + (string-append + "set(INCLUDE_SEARCH_PATH " + (assoc-ref inputs "freetype") "/include/freetype2 "))) + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) + (mkdir-p bin) + (install-file "src/conky" bin)) + #t))))) (inputs `(("freetype" ,freetype) ("ncurses" ,ncurses) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 6ce58985ea..dc1f5ecac3 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -167,34 +167,33 @@ and provides interfaces to the traditional file format.") '(#:tests? #f ; no check target available #:disallowed-references ("doc") #:phases - (alist-replace - 'configure - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (doc (assoc-ref outputs "doc"))) - ;; '--docdir' is not honored, so we need to patch. - (substitute* "dist/Makefile.in" - (("docdir[[:blank:]]*=.*") - (string-append "docdir = " doc "/share/doc/bdb"))) + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (doc (assoc-ref outputs "doc"))) + ;; '--docdir' is not honored, so we need to patch. + (substitute* "dist/Makefile.in" + (("docdir[[:blank:]]*=.*") + (string-append "docdir = " doc "/share/doc/bdb"))) - (zero? - (system* "./dist/configure" - (string-append "--prefix=" out) - (string-append "CONFIG_SHELL=" (which "bash")) - (string-append "SHELL=" (which "bash")) + (zero? + (system* "./dist/configure" + (string-append "--prefix=" out) + (string-append "CONFIG_SHELL=" (which "bash")) + (string-append "SHELL=" (which "bash")) - ;; Remove 7 MiB of .a files. - "--disable-static" + ;; Remove 7 MiB of .a files. + "--disable-static" - ;; The compatibility mode is needed by some packages, - ;; notably iproute2. - "--enable-compat185" + ;; The compatibility mode is needed by some packages, + ;; notably iproute2. + "--enable-compat185" - ;; The following flag is needed so that the inclusion - ;; of db_cxx.h into C++ files works; it leads to - ;; HAVE_CXX_STDHEADERS being defined in db_cxx.h. - "--enable-cxx")))) - %standard-phases))) + ;; The following flag is needed so that the inclusion + ;; of db_cxx.h into C++ files works; it leads to + ;; HAVE_CXX_STDHEADERS being defined in db_cxx.h. + "--enable-cxx")))))))) (synopsis "Berkeley database") (description "Berkeley DB is an embeddable database allowing developers the choice of @@ -222,39 +221,38 @@ SQL, Key/Value, XML/XQuery or Java Object storage for their data model.") `(#:tests? #f ; no check target available #:disallowed-references ("doc") #:phases - (alist-replace - 'configure - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (doc (assoc-ref outputs "doc"))) - ;; '--docdir' is not honored, so we need to patch. - (substitute* "dist/Makefile.in" - (("docdir[[:blank:]]*=.*") - (string-append "docdir = " doc "/share/doc/bdb"))) + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (doc (assoc-ref outputs "doc"))) + ;; '--docdir' is not honored, so we need to patch. + (substitute* "dist/Makefile.in" + (("docdir[[:blank:]]*=.*") + (string-append "docdir = " doc "/share/doc/bdb"))) - (zero? - (system* "./dist/configure" - (string-append "--prefix=" out) - (string-append "CONFIG_SHELL=" (which "bash")) - (string-append "SHELL=" (which "bash")) + (zero? + (system* "./dist/configure" + (string-append "--prefix=" out) + (string-append "CONFIG_SHELL=" (which "bash")) + (string-append "SHELL=" (which "bash")) - ;; Bdb doesn't recognize aarch64 as an architecture. - ,@(if (string=? "aarch64-linux" (%current-system)) - '("--build=aarch64-unknown-linux-gnu") - '()) + ;; Bdb doesn't recognize aarch64 as an architecture. + ,@(if (string=? "aarch64-linux" (%current-system)) + '("--build=aarch64-unknown-linux-gnu") + '()) - ;; Remove 7 MiB of .a files. - "--disable-static" + ;; Remove 7 MiB of .a files. + "--disable-static" - ;; The compatibility mode is needed by some packages, - ;; notably iproute2. - "--enable-compat185" + ;; The compatibility mode is needed by some packages, + ;; notably iproute2. + "--enable-compat185" - ;; The following flag is needed so that the inclusion - ;; of db_cxx.h into C++ files works; it leads to - ;; HAVE_CXX_STDHEADERS being defined in db_cxx.h. - "--enable-cxx")))) - %standard-phases))))) + ;; The following flag is needed so that the inclusion + ;; of db_cxx.h into C++ files works; it leads to + ;; HAVE_CXX_STDHEADERS being defined in db_cxx.h. + "--enable-cxx")))))))))) (define-public leveldb (package diff --git a/gnu/packages/debug.scm b/gnu/packages/debug.scm index 43bfd9e514..83346a4eb3 100644 --- a/gnu/packages/debug.scm +++ b/gnu/packages/debug.scm @@ -58,23 +58,24 @@ `(("perl" ,perl))) (arguments `(#:phases - (alist-replace - 'install - (lambda* (#:key outputs #:allow-other-keys) - ;; Makefile contains no install target - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin")) - (doc (string-append out "/share/doc/delta-" ,version))) - (begin - (mkdir-p bin) - (mkdir-p doc) - (for-each (lambda (h) - (install-file h doc)) - `("License.txt" ,@(find-files "www" ".*\\.html"))) - (for-each (lambda (b) - (install-file b bin)) - `("delta" "multidelta" "topformflat"))))) - (alist-delete 'configure %standard-phases)))) + (modify-phases %standard-phases + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + ;; Makefile contains no install target + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (doc (string-append out "/share/doc/delta-" ,version))) + (begin + (mkdir-p bin) + (mkdir-p doc) + (for-each (lambda (h) + (install-file h doc)) + `("License.txt" ,@(find-files "www" ".*\\.html"))) + (for-each (lambda (b) + (install-file b bin)) + `("delta" "multidelta" "topformflat")))) + #t)) + (delete 'configure)))) (home-page "http://delta.tigris.org/") (synopsis "Heuristical file minimizer") (description @@ -114,23 +115,24 @@ program to exhibit a bug.") ("sys-cpu" ,perl-sys-cpu) ("term-readkey" ,perl-term-readkey))) (arguments - `(#:phases (alist-cons-after - 'install 'set-load-paths - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; Tell creduce where to find the perl modules it needs. - (let* ((out (assoc-ref outputs "out")) - (prog (string-append out "/bin/creduce"))) - (wrap-program - prog - `("PERL5LIB" ":" prefix - ,(map (lambda (p) - (string-append (assoc-ref inputs p) - "/lib/perl5/site_perl/" - ,(package-version perl))) - '("term-readkey" "exporter-lite" - "file-which" "getopt-tabular" - "regex-common" "sys-cpu")))))) - %standard-phases))) + `(#:phases + (modify-phases %standard-phases + (add-after 'install 'set-load-paths + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Tell creduce where to find the perl modules it needs. + (let* ((out (assoc-ref outputs "out")) + (prog (string-append out "/bin/creduce"))) + (wrap-program + prog + `("PERL5LIB" ":" prefix + ,(map (lambda (p) + (string-append (assoc-ref inputs p) + "/lib/perl5/site_perl/" + ,(package-version perl))) + '("term-readkey" "exporter-lite" + "file-which" "getopt-tabular" + "regex-common" "sys-cpu"))))) + #t))))) (home-page "http://embed.cs.utah.edu/creduce") (synopsis "Reducer for interesting code") (description diff --git a/gnu/packages/display-managers.scm b/gnu/packages/display-managers.scm index 9f8d7b8250..3537acdead 100644 --- a/gnu/packages/display-managers.scm +++ b/gnu/packages/display-managers.scm @@ -337,17 +337,18 @@ GTK+, lets you select a desktop session and log in to it.") (native-inputs `(("pkg-config" ,pkg-config))) (arguments - '(#:phases (alist-cons-before - 'configure 'set-new-etc-location - (lambda _ - (substitute* "CMakeLists.txt" - (("/etc") - (string-append (assoc-ref %outputs "out") "/etc")) - (("install.*systemd.*") - ;; The build system's logic here is: if "Linux", then - ;; "systemd". Strip that. - ""))) - %standard-phases) + '(#:phases + (modify-phases %standard-phases + (add-before 'configure 'set-new-etc-location + (lambda _ + (substitute* "CMakeLists.txt" + (("/etc") + (string-append (assoc-ref %outputs "out") "/etc")) + (("install.*systemd.*") + ;; The build system's logic here is: if "Linux", then + ;; "systemd". Strip that. + "")) + #t))) #:configure-flags '("-DUSE_PAM=yes" "-DUSE_CONSOLEKIT=no") #:tests? #f)) diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index 1716ca748c..4096a0a827 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -75,7 +75,7 @@ `(("dbus" ,dbus))) (arguments `(#:phases - (alist-delete 'configure %standard-phases) + (modify-phases %standard-phases (delete 'configure)) #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")) "CC=gcc" "COPTS=\"-DHAVE_DBUS\"") diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 91c6c8c41c..6faa01548b 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -305,14 +305,15 @@ editor (without an X toolkit)" ) "0phz9d8wjk4p13vqannv0003fwh8qqrp0gfzcs2hgq1mrmv1srss")))) (build-system gnu-build-system) (arguments - '(#:phases (alist-cons-after - 'install 'post-install - (lambda* (#:key outputs #:allow-other-keys) - (symlink "geiser-install.el" - (string-append (assoc-ref outputs "out") - "/share/emacs/site-lisp/" - "geiser-autoloads.el"))) - %standard-phases))) + '(#:phases + (modify-phases %standard-phases + (add-after 'install 'post-install + (lambda* (#:key outputs #:allow-other-keys) + (symlink "geiser-install.el" + (string-append (assoc-ref outputs "out") + "/share/emacs/site-lisp/" + "geiser-autoloads.el")) + #t))))) (inputs `(("guile" ,guile-2.0))) (native-inputs `(("emacs" ,emacs-minimal))) (home-page "http://nongnu.org/geiser/") @@ -771,25 +772,25 @@ provides an optional IDE-like error list.") (guix build emacs-utils)) #:tests? #f ; no check target #:phases - (alist-replace - 'configure - (lambda* (#:key outputs #:allow-other-keys) - (substitute* "Makefile" - (("/usr/local") (assoc-ref outputs "out")) - (("/site-lisp/emacs-wget") "/site-lisp"))) - (alist-cons-before - 'build 'patch-exec-paths - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((wget (assoc-ref inputs "wget"))) - (emacs-substitute-variables "wget.el" - ("wget-command" (string-append wget "/bin/wget"))))) - (alist-cons-after - 'install 'post-install - (lambda* (#:key outputs #:allow-other-keys) - (emacs-generate-autoloads - "wget" (string-append (assoc-ref outputs "out") - "/share/emacs/site-lisp/"))) - %standard-phases))))) + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "Makefile" + (("/usr/local") (assoc-ref outputs "out")) + (("/site-lisp/emacs-wget") "/site-lisp")) + #t)) + (add-before 'build 'patch-exec-paths + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((wget (assoc-ref inputs "wget"))) + (emacs-substitute-variables "wget.el" + ("wget-command" (string-append wget "/bin/wget")))) + #t)) + (add-after 'install 'post-install + (lambda* (#:key outputs #:allow-other-keys) + (emacs-generate-autoloads + "wget" (string-append (assoc-ref outputs "out") + "/share/emacs/site-lisp/")) + #t))))) (home-page "http://www.emacswiki.org/emacs/EmacsWget") (synopsis "Simple file downloader for Emacs based on wget") (description @@ -993,15 +994,16 @@ within a specified width. It is useful for displaying long track titles.") "doc_DATA =\n"))))) (build-system gnu-build-system) (arguments - '(#:phases (alist-cons-after - 'install 'post-install - (lambda* (#:key outputs #:allow-other-keys) - ;; Add an autoloads file with the right name for guix.el. - (let* ((out (assoc-ref outputs "out")) - (site (string-append out "/share/emacs/site-lisp"))) - (with-directory-excursion site - (symlink "bbdb-loaddefs.el" "bbdb-autoloads.el")))) - %standard-phases))) + '(#:phases + (modify-phases %standard-phases + (add-after 'install 'post-install + (lambda* (#:key outputs #:allow-other-keys) + ;; Add an autoloads file with the right name for guix.el. + (let* ((out (assoc-ref outputs "out")) + (site (string-append out "/share/emacs/site-lisp"))) + (with-directory-excursion site + (symlink "bbdb-loaddefs.el" "bbdb-autoloads.el"))) + #t))))) (native-inputs `(("emacs" ,emacs-minimal))) (home-page "http://savannah.nongnu.org/projects/bbdb/") (synopsis "Contact management utility for Emacs") diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index 0955bb4ae3..af1ea3328a 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -191,28 +191,27 @@ utilities.") (build-system gnu-build-system) (arguments `(#:phases - (alist-cons-after - 'unpack 'use-wish8.6 - (lambda _ - (substitute* "configure" - (("wish85") "wish8.6"))) - (alist-cons-after - 'install 'wrap - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; FIXME: Mesa tries to dlopen libudev.so.0 and fails. Pending a - ;; fix of the mesa package we wrap the pcb executable such that - ;; Mesa can find libudev.so.0 through LD_LIBRARY_PATH. - (let* ((out (assoc-ref outputs "out")) - (path (string-append (assoc-ref inputs "udev") "/lib"))) - (wrap-program (string-append out "/bin/pcb") - `("LD_LIBRARY_PATH" ":" prefix (,path))))) - (alist-cons-before - 'check 'pre-check - (lambda _ - (system "Xvfb :1 &") - (setenv "DISPLAY" ":1") - #t) - %standard-phases))))) + (modify-phases %standard-phases + (add-after 'unpack 'use-wish8.6 + (lambda _ + (substitute* "configure" + (("wish85") "wish8.6")) + #t)) + (add-after 'install 'wrap + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; FIXME: Mesa tries to dlopen libudev.so.0 and fails. Pending a + ;; fix of the mesa package we wrap the pcb executable such that + ;; Mesa can find libudev.so.0 through LD_LIBRARY_PATH. + (let* ((out (assoc-ref outputs "out")) + (path (string-append (assoc-ref inputs "udev") "/lib"))) + (wrap-program (string-append out "/bin/pcb") + `("LD_LIBRARY_PATH" ":" prefix (,path)))) + #t)) + (add-before 'check 'pre-check + (lambda _ + (system "Xvfb :1 &") + (setenv "DISPLAY" ":1") + #t))))) (inputs `(("dbus" ,dbus) ("mesa" ,mesa) diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index 8d0b824784..7a57300b41 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -52,31 +52,31 @@ (patches (search-patches "ath9k-htc-firmware-objcopy.patch")))) (build-system gnu-build-system) (arguments - '(#:phases (alist-cons-before - 'configure 'pre-configure - (lambda* (#:key inputs #:allow-other-keys) - (chdir "target_firmware") + '(#:phases + (modify-phases %standard-phases + (add-before 'configure 'pre-configure + (lambda* (#:key inputs #:allow-other-keys) + (chdir "target_firmware") - ;; 'configure' is a simple script that runs 'cmake' with - ;; the right flags. - (substitute* "configure" - (("^TOOLCHAIN=.*$") - (string-append "TOOLCHAIN=" - (assoc-ref inputs "cross-gcc") - "\n")))) - (alist-replace - 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (fw-dir (string-append out "/lib/firmware"))) - (mkdir-p fw-dir) - (for-each (lambda (file) - (copy-file file - (string-append fw-dir "/" - (basename file)))) - (find-files "." "\\.fw$")) - #t)) - %standard-phases)) + ;; 'configure' is a simple script that runs 'cmake' with + ;; the right flags. + (substitute* "configure" + (("^TOOLCHAIN=.*$") + (string-append "TOOLCHAIN=" + (assoc-ref inputs "cross-gcc") + "\n"))) + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (fw-dir (string-append out "/lib/firmware"))) + (mkdir-p fw-dir) + (for-each (lambda (file) + (copy-file file + (string-append fw-dir "/" + (basename file)))) + (find-files "." "\\.fw$")) + #t)))) #:tests? #f)) ;; The firmware is cross-compiled using a "bare bones" compiler (no libc.) diff --git a/gnu/packages/flashing-tools.scm b/gnu/packages/flashing-tools.scm index 127fc795a3..e76865798d 100644 --- a/gnu/packages/flashing-tools.scm +++ b/gnu/packages/flashing-tools.scm @@ -62,17 +62,16 @@ "CONFIG_ENABLE_LIBUSB0_PROGRAMMERS=no") #:tests? #f ; no 'check' target #:phases - (alist-delete - 'configure - (alist-cons-before - 'build 'patch-exec-paths - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "dmi.c" - (("\"dmidecode\"") - (format #f "~S" - (string-append (assoc-ref inputs "dmidecode") - "/sbin/dmidecode"))))) - %standard-phases)))) + (modify-phases %standard-phases + (delete 'configure) + (add-before 'build 'patch-exec-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "dmi.c" + (("\"dmidecode\"") + (format #f "~S" + (string-append (assoc-ref inputs "dmidecode") + "/sbin/dmidecode")))) + #t))))) (home-page "http://flashrom.org/") (synopsis "Identify, read, write, erase, and verify ROM/flash chips") (description diff --git a/gnu/packages/fltk.scm b/gnu/packages/fltk.scm index 0ca77cfa40..1c257abbec 100644 --- a/gnu/packages/fltk.scm +++ b/gnu/packages/fltk.scm @@ -63,27 +63,27 @@ (list "--enable-shared" (string-append "DSOFLAGS=-Wl,-rpath=" %output "/lib")) #:phases - (alist-cons-before - 'configure 'patch-makeinclude - (lambda _ - (substitute* "makeinclude.in" - (("/bin/sh") (which "sh")))) - (alist-cons-after - 'install 'patch-config - ;; Provide -L flags for image libraries when querying fltk-config to - ;; avoid propagating inputs. - (lambda* (#:key inputs outputs #:allow-other-keys) - (use-modules (srfi srfi-26)) - (let* ((conf (string-append (assoc-ref outputs "out") - "/bin/fltk-config")) - (jpeg (assoc-ref inputs "libjpeg")) - (png (assoc-ref inputs "libpng")) - (zlib (assoc-ref inputs "zlib"))) - (substitute* conf - (("-ljpeg") (string-append "-L" jpeg "/lib -ljpeg")) - (("-lpng") (string-append "-L" png "/lib -lpng")) - (("-lz") (string-append "-L" zlib "/lib -lz"))))) - %standard-phases)))) + (modify-phases %standard-phases + (add-before 'configure 'patch-makeinclude + (lambda _ + (substitute* "makeinclude.in" + (("/bin/sh") (which "sh"))) + #t)) + (add-after 'install 'patch-config + ;; Provide -L flags for image libraries when querying fltk-config to + ;; avoid propagating inputs. + (lambda* (#:key inputs outputs #:allow-other-keys) + (use-modules (srfi srfi-26)) + (let* ((conf (string-append (assoc-ref outputs "out") + "/bin/fltk-config")) + (jpeg (assoc-ref inputs "libjpeg")) + (png (assoc-ref inputs "libpng")) + (zlib (assoc-ref inputs "zlib"))) + (substitute* conf + (("-ljpeg") (string-append "-L" jpeg "/lib -ljpeg")) + (("-lpng") (string-append "-L" png "/lib -lpng")) + (("-lz") (string-append "-L" zlib "/lib -lz")))) + #t))))) (home-page "http://www.fltk.org") (synopsis "3D C++ GUI library") (description "FLTK is a C++ GUI toolkit providing modern GUI functionality diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 84fa104038..b9a2b4e895 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -357,23 +357,22 @@ manager for the current system.") (build-system python-build-system) (arguments '(#:phases - (alist-replace - 'check - (lambda* (#:key inputs #:allow-other-keys) - (setenv "XDG_DATA_DIRS" - (string-append (assoc-ref inputs "shared-mime-info") - "/share/")) - (substitute* "test/test-icon.py" - (("/usr/share/icons/hicolor/index.theme") - (string-append (assoc-ref inputs "hicolor-icon-theme") - "/share/icons/hicolor/index.theme"))) + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key inputs #:allow-other-keys) + (setenv "XDG_DATA_DIRS" + (string-append (assoc-ref inputs "shared-mime-info") + "/share/")) + (substitute* "test/test-icon.py" + (("/usr/share/icons/hicolor/index.theme") + (string-append (assoc-ref inputs "hicolor-icon-theme") + "/share/icons/hicolor/index.theme"))) - ;; One test fails with: - ;; AssertionError: 'x-apple-ios-png' != 'png' - (substitute* "test/test-mime.py" - (("self.check_mimetype\\(imgpng, 'image', 'png'\\)") "#")) - (zero? (system* "nosetests" "-v"))) - %standard-phases))) + ;; One test fails with: + ;; AssertionError: 'x-apple-ios-png' != 'png' + (substitute* "test/test-mime.py" + (("self.check_mimetype\\(imgpng, 'image', 'png'\\)") "#")) + (zero? (system* "nosetests" "-v"))))))) (native-inputs `(("shared-mime-info" ,shared-mime-info) ;for tests ("hicolor-icon-theme" ,hicolor-icon-theme) ;for tests diff --git a/gnu/packages/gd.scm b/gnu/packages/gd.scm index f9864d7784..3b1def55e1 100644 --- a/gnu/packages/gd.scm +++ b/gnu/packages/gd.scm @@ -122,15 +122,16 @@ most common applications of GD involve website development.") (assoc-ref %build-inputs i))) '("zlib" "png" "ft" "jpeg" "fontconfig")) #:tests? #f ;; Failed 1/2 test programs. 1/12 subtests failed. - #:phases (alist-cons-after - 'configure 'clear-autogenerated-files - (lambda _ - ;; This file is autogenerated by its .PLS script at build - ;; time, but file creation fails because that file already - ;; exists in the distribution with non-writable - ;; permissions, so delete it first. - (delete-file "bdf_scripts/bdf2gdfont.pl")) - %standard-phases))) + #:phases + (modify-phases %standard-phases + (add-after 'configure 'clear-autogenerated-files + (lambda _ + ;; This file is autogenerated by its .PLS script at build + ;; time, but file creation fails because that file already + ;; exists in the distribution with non-writable + ;; permissions, so delete it first. + (delete-file "bdf_scripts/bdf2gdfont.pl") + #t))))) (home-page "http://search.cpan.org/dist/GD") (synopsis "Perl interface to the GD graphics library") (description "GD.pm is an autoloadable interface module for libgd, a diff --git a/gnu/packages/gkrellm.scm b/gnu/packages/gkrellm.scm index 68853eb8fc..6ad4fe6ff3 100644 --- a/gnu/packages/gkrellm.scm +++ b/gnu/packages/gkrellm.scm @@ -49,10 +49,7 @@ `(("pkg-config" ,pkg-config))) (arguments `(#:tests? #f ; there is no check target - #:phases - (alist-delete - 'configure - %standard-phases) + #:phases (modify-phases %standard-phases (delete 'configure)) #:make-flags (let ((out (assoc-ref %outputs "out"))) (list (string-append "INSTALLROOT=" out) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index 9ce97dbcc2..9b18d06491 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -427,7 +427,7 @@ glxgears, glxheads, and glxinfo.") (("/lib64") "/lib"))))) (build-system gnu-build-system) (arguments - '(#:phases (alist-delete 'configure %standard-phases) + '(#:phases (modify-phases %standard-phases (delete 'configure)) #:make-flags (list (string-append "GLEW_PREFIX=" (assoc-ref %outputs "out")) (string-append "GLEW_DEST=" diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index 8408b54ea2..bacc63270a 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -504,22 +504,23 @@ has an ease of use unmatched by other C++ callback libraries.") "1926b3adx903hzvdp8glblsgjyadzqnwgkj8hg605d4wv98m1n0z")))) (build-system gnu-build-system) (arguments - `(#:phases (alist-cons-before - 'build 'pre-build - (lambda _ - ;; This test uses /etc/fstab as an example file to read - ;; from; choose a better example. - (substitute* "tests/giomm_simple/main.cc" - (("/etc/fstab") - (string-append (getcwd) - "/tests/giomm_simple/main.cc"))) - - ;; This test does a DNS lookup, and then expects to be able - ;; to open a TLS session; just skip it. - (substitute* "tests/giomm_tls_client/main.cc" - (("Gio::init.*$") - "return 77;\n"))) - %standard-phases))) + `(#:phases + (modify-phases %standard-phases + (add-before 'build 'pre-build + (lambda _ + ;; This test uses /etc/fstab as an example file to read + ;; from; choose a better example. + (substitute* "tests/giomm_simple/main.cc" + (("/etc/fstab") + (string-append (getcwd) + "/tests/giomm_simple/main.cc"))) + + ;; This test does a DNS lookup, and then expects to be able + ;; to open a TLS session; just skip it. + (substitute* "tests/giomm_tls_client/main.cc" + (("Gio::init.*$") + "return 77;\n")) + #t))))) (native-inputs `(("pkg-config" ,pkg-config) ("glib" ,glib "bin"))) (propagated-inputs diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 252cf670d2..b3624d6dca 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -809,16 +809,16 @@ for settings shared by various components of the GNOME desktop.") ("perl-xml-simple" ,perl-xml-simple))) (arguments '(#:phases - (alist-cons-after - 'install 'set-load-paths - ;; Tell 'icon-name-mapping' where XML::Simple is. - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (prog (string-append out "/libexec/icon-name-mapping"))) - (wrap-program - prog - `("PERL5LIB" = ,(list (getenv "PERL5LIB")))))) - %standard-phases))) + (modify-phases %standard-phases + (add-after 'install 'set-load-paths + ;; Tell 'icon-name-mapping' where XML::Simple is. + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (prog (string-append out "/libexec/icon-name-mapping"))) + (wrap-program + prog + `("PERL5LIB" = ,(list (getenv "PERL5LIB"))))) + #t))))) (home-page "http://tango.freedesktop.org/Standard_Icon_Naming_Specification") (synopsis "Utility to implement the Freedesktop Icon Naming Specification") @@ -1260,12 +1260,12 @@ functionality was designed to be as reusable and portable as possible.") '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS") ;; ... which they then completly ignore !! #:phases - (alist-cons-before - 'configure 'ignore-deprecations - (lambda _ - (substitute* "linc2/src/Makefile.in" - (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))) - %standard-phases))) + (modify-phases %standard-phases + (add-before 'configure 'ignore-deprecations + (lambda _ + (substitute* "linc2/src/Makefile.in" + (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")) + #t))))) (inputs `(("glib" ,glib) ("libidl" ,libidl))) (native-inputs @@ -1300,12 +1300,12 @@ featuring mature C, C++ and Python bindings.") '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS") ;; ... which they then completly ignore !! #:phases - (alist-cons-before - 'configure 'ignore-deprecations - (lambda _ - (substitute* "activation-server/Makefile.in" - (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))) - %standard-phases))) + (modify-phases %standard-phases + (add-before 'configure 'ignore-deprecations + (lambda _ + (substitute* "activation-server/Makefile.in" + (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")) + #t))))) (inputs `(("popt" ,popt) ("libxml2" ,libxml2))) ;; The following are Required by the .pc file @@ -1408,19 +1408,18 @@ designed to be accessed through the MIME functions in GnomeVFS.") (build-system gnu-build-system) (arguments `(#:phases - (alist-cons-before - 'configure 'ignore-deprecations - (lambda _ - (substitute* '("libgnomevfs/Makefile.in" - "daemon/Makefile.in") - (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")) - #t) - (alist-cons-before - 'configure 'patch-test-async-cancel-to-never-fail - (lambda _ - (substitute* "test/test-async-cancel.c" - (("EXIT_FAILURE") "77"))) - %standard-phases)))) + (modify-phases %standard-phases + (add-before 'configure 'ignore-deprecations + (lambda _ + (substitute* '("libgnomevfs/Makefile.in" + "daemon/Makefile.in") + (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")) + #t)) + (add-before 'configure 'patch-test-async-cancel-to-never-fail + (lambda _ + (substitute* "test/test-async-cancel.c" + (("EXIT_FAILURE") "77")) + #t))))) (inputs `(("libxml2" ,libxml2) ("dbus-glib" ,dbus-glib) ("gconf" ,gconf) @@ -1455,12 +1454,12 @@ to access local and remote files with a single consistent API.") (build-system gnu-build-system) (arguments `(#:phases - (alist-cons-before - 'configure 'enable-deprecated - (lambda _ - (substitute* "libgnome/Makefile.in" - (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))) - %standard-phases))) + (modify-phases %standard-phases + (add-before 'configure 'enable-deprecated + (lambda _ + (substitute* "libgnome/Makefile.in" + (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")) + #t))))) (inputs `(("libxml2" ,libxml2))) (native-inputs `(("glib" ,glib "bin") ; for glib-mkenums, etc. @@ -1695,18 +1694,17 @@ since ca. 2006, when GTK+ itself incorporated printing support.") (build-system gnu-build-system) (arguments `(#:phases - (alist-cons-before - 'check 'start-xserver - (lambda* (#:key inputs #:allow-other-keys) - (let ((xorg-server (assoc-ref inputs "xorg-server")) - (disp ":1")) - - (setenv "HOME" (getcwd)) - (setenv "DISPLAY" disp) - ;; There must be a running X server and make check doesn't start one. - ;; Therefore we must do it. - (zero? (system (format #f "~a/bin/Xvfb ~a &" xorg-server disp))))) - %standard-phases))) + (modify-phases %standard-phases + (add-before 'check 'start-xserver + (lambda* (#:key inputs #:allow-other-keys) + (let ((xorg-server (assoc-ref inputs "xorg-server")) + (disp ":1")) + + (setenv "HOME" (getcwd)) + (setenv "DISPLAY" disp) + ;; There must be a running X server and make check doesn't start one. + ;; Therefore we must do it. + (zero? (system (format #f "~a/bin/Xvfb ~a &" xorg-server disp))))))))) ;; Mentioned as Required by the .pc file (propagated-inputs `(("libxml2" ,libxml2))) (inputs @@ -1820,14 +1818,13 @@ Hints specification (EWMH).") (base32 "05fvzbs5bin05bbsr4dp79aiva3lnq0a3a40zq55i13vnsz70l0n")))) (arguments `(#:phases - (alist-cons-after - 'unpack 'fix-pcre-check - (lambda _ - ;; Only glib.h can be included directly. See - ;; https://bugzilla.gnome.org/show_bug.cgi?id=670316 - (substitute* "configure" - (("glib/gregex\\.h") "glib.h")) #t) - %standard-phases) + (modify-phases %standard-phases + (add-after 'unpack 'fix-pcre-check + (lambda _ + ;; Only glib.h can be included directly. See + ;; https://bugzilla.gnome.org/show_bug.cgi?id=670316 + (substitute* "configure" + (("glib/gregex\\.h") "glib.h")) #t))) ,@(package-arguments goffice))) (propagated-inputs @@ -2200,19 +2197,19 @@ and RDP protocols.") (assoc-ref %outputs "out") "/lib") "--disable-gtk-doc-html") ; FIXME: requires gtk-doc #:phases - (alist-cons-before - 'configure 'fix-docbook - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "docs/Makefile.in" - (("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"))) - (setenv "XML_CATALOG_FILES" - (string-append (assoc-ref inputs "docbook-xml") - "/xml/dtd/docbook/catalog.xml"))) - %standard-phases))) + (modify-phases %standard-phases + (add-before 'configure 'fix-docbook + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "docs/Makefile.in" + (("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"))) + (setenv "XML_CATALOG_FILES" + (string-append (assoc-ref inputs "docbook-xml") + "/xml/dtd/docbook/catalog.xml")) + #t))))) (home-page "https://developer.gnome.org/dconf") (synopsis "Low-level GNOME configuration system") (description "Dconf is a low-level configuration system. Its main purpose diff --git a/gnu/packages/gprolog.scm b/gnu/packages/gprolog.scm index 87c833e947..b27b080ca7 100644 --- a/gnu/packages/gprolog.scm +++ b/gnu/packages/gprolog.scm @@ -41,14 +41,15 @@ `(#:configure-flags (list (string-append "--with-install-dir=" %output "/share/gprolog")) - #:phases (alist-cons-before - 'configure 'change-dir-n-fix-shells - (lambda _ - (chdir "src") - (substitute* "configure" - (("-/bin/sh") (string-append "-" (which "sh"))) - (("= /bin/sh") (string-append "= " (which "sh"))))) - %standard-phases))) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'change-dir-n-fix-shells + (lambda _ + (chdir "src") + (substitute* "configure" + (("-/bin/sh") (string-append "-" (which "sh"))) + (("= /bin/sh") (string-append "= " (which "sh")))) + #t))))) (home-page "https://www.gnu.org/software/gprolog/") (synopsis "Prolog compiler") (description diff --git a/gnu/packages/gps.scm b/gnu/packages/gps.scm index 0a9038b7a4..10592c23ec 100644 --- a/gnu/packages/gps.scm +++ b/gnu/packages/gps.scm @@ -102,15 +102,16 @@ manipulate maps.") "006a6l8p38a4h7y2959sqrmjjn29d8pd50zj9nypcp5ph18nybjb")))) (build-system gnu-build-system) (arguments - `(#:phases (alist-replace - 'configure - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; This is a rudimentary build system. - (substitute* "Makefile" - (("prefix[[:blank:]]*=.*$") - (string-append "prefix = " (assoc-ref outputs "out") - "\n")))) - %standard-phases) + `(#:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; This is a rudimentary build system. + (substitute* "Makefile" + (("prefix[[:blank:]]*=.*$") + (string-append "prefix = " (assoc-ref outputs "out") + "\n"))) + #t))) #:tests? #f)) (inputs `(("gtk+" ,gtk+-2) diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index 2a52c4c697..8e3c5563f6 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -630,13 +630,12 @@ and understanding different BRDFs (and other component functions).") (string-append "--x-libraries=" (assoc-ref %build-inputs "libx11") "/lib")) #:phases - (alist-cons-after - 'unpack 'autoreconf - (lambda _ - ;; let's call configure from configure phase and not now - (substitute* "autogen.sh" (("./configure") "# ./configure")) - (zero? (system* "sh" "autogen.sh"))) - %standard-phases))) + (modify-phases %standard-phases + (add-after 'unpack 'autoreconf + (lambda _ + ;; let's call configure from configure phase and not now + (substitute* "autogen.sh" (("./configure") "# ./configure")) + (zero? (system* "sh" "autogen.sh"))))))) (native-inputs `(("pkg-config" ,pkg-config) ("libtool" ,libtool) diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 0c717eafeb..ff8509fd93 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -279,16 +279,17 @@ functions which were removed.") "0g7s5mp14qgbfjdql0k1s8464r21g47ssn5dws6jazsnw6njhl0l")))) (build-system waf-build-system) (arguments - `(#:phases (alist-cons-before - 'configure 'set-flags - (lambda* (#:key outputs #:allow-other-keys) - ;; Compile with C++11, required by gtkmm. - (setenv "CXXFLAGS" "-std=c++11") - ;; Allow 'bin/ganv_bench' to find libganv-1.so. - (setenv "LDFLAGS" - (string-append "-Wl,-rpath=" - (assoc-ref outputs "out") "/lib"))) - %standard-phases) + `(#:phases + (modify-phases %standard-phases + (add-before 'configure 'set-flags + (lambda* (#:key outputs #:allow-other-keys) + ;; Compile with C++11, required by gtkmm. + (setenv "CXXFLAGS" "-std=c++11") + ;; Allow 'bin/ganv_bench' to find libganv-1.so. + (setenv "LDFLAGS" + (string-append "-Wl,-rpath=" + (assoc-ref outputs "out") "/lib")) + #t))) #:tests? #f)) ; no check target (inputs `(("gtk" ,gtk+-2) @@ -349,24 +350,24 @@ diagrams.") `(#:phases ;; Unfortunately, some of the tests in "make check" are highly dependent ;; on the environment therefore, some black magic is required. - (alist-cons-before - 'check 'start-xserver - (lambda* (#:key inputs #:allow-other-keys) - (let ((xorg-server (assoc-ref inputs "xorg-server")) - (mime (assoc-ref inputs "shared-mime-info"))) + (modify-phases %standard-phases + (add-before 'check 'start-xserver + (lambda* (#:key inputs #:allow-other-keys) + (let ((xorg-server (assoc-ref inputs "xorg-server")) + (mime (assoc-ref inputs "shared-mime-info"))) - ;; There must be a running X server and make check doesn't start one. - ;; Therefore we must do it. - (system (format #f "~a/bin/Xvfb :1 &" xorg-server)) - (setenv "DISPLAY" ":1") + ;; There must be a running X server and make check doesn't start one. + ;; Therefore we must do it. + (system (format #f "~a/bin/Xvfb :1 &" xorg-server)) + (setenv "DISPLAY" ":1") - ;; The .lang files must be found in $XDG_DATA_HOME/gtksourceview-2.0 - (system "ln -s gtksourceview gtksourceview-2.0") - (setenv "XDG_DATA_HOME" (getcwd)) + ;; The .lang files must be found in $XDG_DATA_HOME/gtksourceview-2.0 + (system "ln -s gtksourceview gtksourceview-2.0") + (setenv "XDG_DATA_HOME" (getcwd)) - ;; Finally, the mimetypes must be available. - (setenv "XDG_DATA_DIRS" (string-append mime "/share/")) )) - %standard-phases))) + ;; Finally, the mimetypes must be available. + (setenv "XDG_DATA_DIRS" (string-append mime "/share/"))) + #t))))) (synopsis "Widget that extends the standard GTK+ 2.x 'GtkTextView' widget") (description "GtkSourceView is a portable C library that extends the standard GTK+ @@ -875,18 +876,19 @@ images onto Cairo surfaces.") "godir = $(moddir)\n"))))) (build-system gnu-build-system) (arguments - '(#:phases (alist-cons-after - 'install 'post-install - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin")) - (guile (assoc-ref inputs "guile"))) - (substitute* (find-files bin ".*") - (("guile") - (string-append guile "/bin/guile -L " - out "/share/guile/site/2.0 -C " - out "/share/guile/site/2.0 "))))) - %standard-phases))) + '(#:phases + (modify-phases %standard-phases + (add-after 'install 'post-install + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (guile (assoc-ref inputs "guile"))) + (substitute* (find-files bin ".*") + (("guile") + (string-append guile "/bin/guile -L " + out "/share/guile/site/2.0 -C " + out "/share/guile/site/2.0 ")))) + #t))))) (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("guile" ,guile-2.2))) (propagated-inputs @@ -1160,7 +1162,7 @@ extensive documentation, including API reference and a tutorial.") `(#:python ,python-2 ,@(substitute-keyword-arguments (package-arguments python-pycairo) ((#:phases phases) - `(alist-delete 'patch-waf ,phases)) + `(modify-phases ,phases (delete 'patch-waf))) ((#:native-inputs native-inputs) `(alist-delete "python-waf" ,native-inputs))))) ;; Dual-licensed under LGPL 2.1 or Mozilla Public License 1.1 @@ -1254,7 +1256,7 @@ write GNOME applications.") #:test-target "test" #:tests? #f ; Tests fail with "Gtk cannot open display:" #:phases - (alist-delete 'configure %standard-phases))) + (modify-phases %standard-phases (delete 'configure)))) (build-system gnu-build-system) (home-page "https://pwmt.org/projects/girara/") (synopsis "Library for minimalistic gtk+3 user interfaces") diff --git a/gnu/packages/guile-wm.scm b/gnu/packages/guile-wm.scm index 4a484b9de4..c28c4753cc 100644 --- a/gnu/packages/guile-wm.scm +++ b/gnu/packages/guile-wm.scm @@ -83,50 +83,51 @@ dependencies.") #:configure-flags (list (string-append "--datadir=" (assoc-ref %outputs "out") "/share/guile/site/2.0")) - #:phases (alist-cons-before - 'configure 'set-go-directory - (lambda* (#:key outputs #:allow-other-keys) - ;; Install .go files to $out/share/guile/site/2.0. - (let ((out (assoc-ref outputs "out"))) - (substitute* "module/Makefile.in" - (("^wmdir = .*$") - (string-append "wmdir = " out - "/share/guile/site/2.0\n"))))) - (alist-cons-after - 'install 'set-load-path - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; Put Guile-XCB's and Guile-WM's modules in the - ;; search path of PROG. - (let* ((out (assoc-ref outputs "out")) - (prog (string-append out "/bin/guile-wm")) - (mods (string-append - out "/share/guile/site/2.0")) - (xcb (string-append - (assoc-ref inputs "guile-xcb") - "/share/guile/site/2.0"))) - (wrap-program - prog - `("GUILE_LOAD_PATH" ":" prefix (,mods ,xcb)) - `("GUILE_LOAD_COMPILED_PATH" ":" prefix - (,mods ,xcb))))) - (alist-cons-after - 'install 'install-xsession - (lambda* (#:key outputs #:allow-other-keys) - ;; add a .desktop file to xsessions - (let ((xsessions (string-append - %output "/share/xsessions"))) - (mkdir-p xsessions) - (call-with-output-file (string-append - xsessions "/guile-wm.desktop") - (lambda (port) - (format port - "[Desktop Entry]~@ + #:phases + (modify-phases %standard-phases + (add-before 'configure 'set-go-directory + (lambda* (#:key outputs #:allow-other-keys) + ;; Install .go files to $out/share/guile/site/2.0. + (let ((out (assoc-ref outputs "out"))) + (substitute* "module/Makefile.in" + (("^wmdir = .*$") + (string-append "wmdir = " out + "/share/guile/site/2.0\n")))) + #t)) + (add-after 'install 'set-load-path + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Put Guile-XCB's and Guile-WM's modules in the + ;; search path of PROG. + (let* ((out (assoc-ref outputs "out")) + (prog (string-append out "/bin/guile-wm")) + (mods (string-append + out "/share/guile/site/2.0")) + (xcb (string-append + (assoc-ref inputs "guile-xcb") + "/share/guile/site/2.0"))) + (wrap-program + prog + `("GUILE_LOAD_PATH" ":" prefix (,mods ,xcb)) + `("GUILE_LOAD_COMPILED_PATH" ":" prefix + (,mods ,xcb)))) + #t)) + (add-after 'install 'install-xsession + (lambda* (#:key outputs #:allow-other-keys) + ;; add a .desktop file to xsessions + (let ((xsessions (string-append + %output "/share/xsessions"))) + (mkdir-p xsessions) + (call-with-output-file (string-append + xsessions "/guile-wm.desktop") + (lambda (port) + (format port + "[Desktop Entry]~@ Name=~a~@ Comment=~a~@ Exec=~a/bin/guile-wm~@ Type=Application~%" - ,name ,synopsis %output))))) - %standard-phases))))) + ,name ,synopsis %output)))) + #t))))) (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("guile" ,guile-2.0) ("guile-xcb" ,guile-xcb))) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 0bcc524ed7..4f024258cb 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -94,24 +94,24 @@ (arguments '(#:configure-flags '("--disable-error-on-warning") ;; Insert a phase before `configure' to patch things up. - #:phases (alist-cons-before - 'configure - 'patch-stuff - (lambda* (#:key outputs #:allow-other-keys) - ;; Add a call to `lt_dladdsearchdir' so that - ;; `libguile-readline.so' & co. are in the - ;; loader's search path. - (substitute* "libguile/dynl.c" - (("lt_dlinit.*$" match) - (format #f - " ~a~% lt_dladdsearchdir(\"~a/lib\");~%" - match - (assoc-ref outputs "out")))) - - ;; The usual /bin/sh... - (substitute* "ice-9/popen.scm" - (("/bin/sh") (which "sh")))) - %standard-phases))) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-stuff + (lambda* (#:key outputs #:allow-other-keys) + ;; Add a call to `lt_dladdsearchdir' so that + ;; `libguile-readline.so' & co. are in the + ;; loader's search path. + (substitute* "libguile/dynl.c" + (("lt_dlinit.*$" match) + (format #f + " ~a~% lt_dladdsearchdir(\"~a/lib\");~%" + match + (assoc-ref outputs "out")))) + + ;; The usual /bin/sh... + (substitute* "ice-9/popen.scm" + (("/bin/sh") (which "sh"))) + #t))))) (inputs `(("gawk" ,gawk) ("readline" ,readline))) diff --git a/gnu/packages/hugs.scm b/gnu/packages/hugs.scm index 2367d5bc6d..a14b8a8583 100644 --- a/gnu/packages/hugs.scm +++ b/gnu/packages/hugs.scm @@ -39,36 +39,37 @@ "1mdy4aq4campgmnpc2qwq7bsbfhaxfsqdghbyyz2wms4lnfcmyma")))) (build-system gnu-build-system) (arguments - `(#:phases (alist-cons-before - 'configure 'fix-sh-n-cp - (lambda _ - (substitute* - '("configure" - "libraries/configure" - "packages/time/configure" - "packages/base/configure" - "packages/X11/configure" - "packages/HGL/configure" - "packages/OpenAL/configure" - "packages/OpenGL/configure" - "packages/network/configure" - "packages/unix/configure" - "packages/Cabal/tests/HSQL/configure" - "packages/ALUT/configure" - "packages/GLUT/configure" - "packages/base/cbits/execvpe.c" - "packages/base/System/Process/Internals.hs" - "packages/Cabal/Distribution/attic" - "packages/Cabal/Distribution/Simple/Register.hs" - "packages/Cabal/Distribution/Simple/Hugs.hs" - "tools/hugs-hc" - "src/machdep.c" - "libraries/Makefile.in") - (("/bin/sh") (which "sh"))) - (substitute* '("demos/Makefile.in" - "libraries/Makefile.in") - (("/bin/cp") (which "cp")))) - %standard-phases) + `(#:phases + (modify-phases %standard-phases + (add-before 'configure 'fix-sh-n-cp + (lambda _ + (substitute* + '("configure" + "libraries/configure" + "packages/time/configure" + "packages/base/configure" + "packages/X11/configure" + "packages/HGL/configure" + "packages/OpenAL/configure" + "packages/OpenGL/configure" + "packages/network/configure" + "packages/unix/configure" + "packages/Cabal/tests/HSQL/configure" + "packages/ALUT/configure" + "packages/GLUT/configure" + "packages/base/cbits/execvpe.c" + "packages/base/System/Process/Internals.hs" + "packages/Cabal/Distribution/attic" + "packages/Cabal/Distribution/Simple/Register.hs" + "packages/Cabal/Distribution/Simple/Hugs.hs" + "tools/hugs-hc" + "src/machdep.c" + "libraries/Makefile.in") + (("/bin/sh") (which "sh"))) + (substitute* '("demos/Makefile.in" + "libraries/Makefile.in") + (("/bin/cp") (which "cp"))) + #t))) #:tests? #f)) ; no test target ;; FIXME: Fails to build with GCC 5. (native-inputs `(("gcc" ,gcc-4.9))) diff --git a/gnu/packages/hurd.scm b/gnu/packages/hurd.scm index bd1eb4b085..a29e5bafd2 100644 --- a/gnu/packages/hurd.scm +++ b/gnu/packages/hurd.scm @@ -56,14 +56,13 @@ "02hygsfpd2dljl5lg1vjjg9pizi9jyxd4aiiqzjshz6jax62jm9f")))) (build-system gnu-build-system) (arguments - `(#:phases (alist-replace - 'install - (lambda _ - (zero? - (system* "make" "install-data"))) - (alist-delete - 'build - %standard-phases)) + `(#:phases + (modify-phases %standard-phases + (replace 'install + (lambda _ + (zero? + (system* "make" "install-data")))) + (delete 'build)) ;; GNU Mach supports only IA32 currently, so cheat so that we can at ;; least install its headers. @@ -125,11 +124,12 @@ communication.") (native-inputs `(("mig" ,mig))) (arguments - `(#:phases (alist-replace - 'install - (lambda _ - (zero? (system* "make" "install-headers" "no_deps=t"))) - (alist-delete 'build %standard-phases)) + `(#:phases + (modify-phases %standard-phases + (replace 'install + (lambda _ + (zero? (system* "make" "install-headers" "no_deps=t")))) + (delete 'build)) #:configure-flags '(;; Pretend we're on GNU/Hurd; 'configure' wants ;; that. @@ -164,24 +164,22 @@ Library and other user programs.") (arguments (substitute-keyword-arguments (package-arguments hurd-headers) ((#:phases _) - '(alist-replace - 'install - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - ;; We need to copy libihash.a to the output directory manually, - ;; since there is no target for that in the makefile. - (mkdir-p (string-append out "/include")) - (copy-file "libihash/ihash.h" - (string-append out "/include/ihash.h")) - (mkdir-p (string-append out "/lib")) - (copy-file "libihash/libihash.a" - (string-append out "/lib/libihash.a")) - #t)) - (alist-replace - 'build - (lambda _ - (zero? (system* "make" "-Clibihash" "libihash.a"))) - %standard-phases))))) + '(modify-phases %standard-phases + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + ;; We need to copy libihash.a to the output directory manually, + ;; since there is no target for that in the makefile. + (mkdir-p (string-append out "/include")) + (copy-file "libihash/ihash.h" + (string-append out "/include/ihash.h")) + (mkdir-p (string-append out "/lib")) + (copy-file "libihash/libihash.a" + (string-append out "/lib/libihash.a")) + #t))) + (replace 'build + (lambda _ + (zero? (system* "make" "-Clibihash" "libihash.a")))))))) (home-page "https://www.gnu.org/software/hurd/hurd.html") (synopsis "GNU Hurd libraries") (description diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm index dfb68488ee..9d705939e3 100644 --- a/gnu/packages/image-viewers.scm +++ b/gnu/packages/image-viewers.scm @@ -65,10 +65,10 @@ "02vhdv16nf4kjna4inpbfy4k3p40bhl7xpc4kh4xvily14146l2b")))) (build-system gnu-build-system) (arguments - '(#:phases (alist-delete 'configure %standard-phases) - #:tests? #f ;FIXME: Requires 'perl-test-command'. - #:make-flags - (list "CC=gcc" (string-append "PREFIX=" (assoc-ref %outputs "out"))))) + '(#:phases (modify-phases %standard-phases (delete 'configure)) + #:tests? #f ;FIXME: Requires 'perl-test-command'. + #:make-flags + (list "CC=gcc" (string-append "PREFIX=" (assoc-ref %outputs "out"))))) (inputs `(("imlib2" ,imlib2) ("curl" ,curl) ("libpng" ,libpng) @@ -178,9 +178,8 @@ It is the default image viewer on LXDE desktop environment.") '(#:tests? #f ; no check target #:make-flags (list (string-append "PREFIX=" %output) "CC=gcc") - #:phases (alist-delete - 'configure ; no configure phase - %standard-phases))) + ;; no configure phase + #:phases (modify-phases %standard-phases (delete 'configure)))) (inputs `(("libx11" ,libx11) ("imlib2" ,imlib2) diff --git a/gnu/packages/libcanberra.scm b/gnu/packages/libcanberra.scm index 6bac0bcd5b..941d3dcc45 100644 --- a/gnu/packages/libcanberra.scm +++ b/gnu/packages/libcanberra.scm @@ -79,15 +79,15 @@ `(("pkg-config" ,pkg-config))) (arguments `(#:phases - (alist-cons-before - 'build 'patch-default-sounds-directory - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "src/sound-theme-spec.c" - (("@SOUND_THEME_DIRECTORY@") - (string-append - (assoc-ref inputs "sound-theme-freedesktop") - "/share")))) - %standard-phases))) + (modify-phases %standard-phases + (add-before 'build 'patch-default-sounds-directory + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "src/sound-theme-spec.c" + (("@SOUND_THEME_DIRECTORY@") + (string-append + (assoc-ref inputs "sound-theme-freedesktop") + "/share"))) + #t))))) (home-page "http://0pointer.de/lennart/projects/libcanberra/") (synopsis "Implementation of the XDG Sound Theme and Name Specifications") diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index cd003c35fb..e860e40f56 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -1435,22 +1435,22 @@ Linux-based operating systems.") (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake))) (arguments - '(#:phases (alist-cons-after - 'unpack 'bootstrap - (lambda _ - ;; Fix "field ‘ip6’ has incomplete type" errors. - (substitute* "libbridge/libbridge.h" - (("#include ") - "#include \n#include ")) - - ;; Ensure that the entire build fails if one of the - ;; sub-Makefiles fails. - (substitute* "Makefile.in" - (("\\$\\(MAKE\\) \\$\\(MFLAGS\\) -C \\$\\$x ;") - "$(MAKE) $(MFLAGS) -C $$x || exit 1;")) - - (zero? (system* "autoreconf" "-vf"))) - %standard-phases) + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'bootstrap + (lambda _ + ;; Fix "field ‘ip6’ has incomplete type" errors. + (substitute* "libbridge/libbridge.h" + (("#include ") + "#include \n#include ")) + + ;; Ensure that the entire build fails if one of the + ;; sub-Makefiles fails. + (substitute* "Makefile.in" + (("\\$\\(MAKE\\) \\$\\(MFLAGS\\) -C \\$\\$x ;") + "$(MAKE) $(MFLAGS) -C $$x || exit 1;")) + + (zero? (system* "autoreconf" "-vf"))))) #:tests? #f)) ; no 'check' target (home-page @@ -1555,7 +1555,7 @@ configuration and monitoring interfaces.") (arguments `(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")) "CC=gcc") - #:phases (alist-delete 'configure %standard-phases))) + #:phases (modify-phases %standard-phases (delete 'configure)))) (home-page "https://wireless.wiki.kernel.org/") (synopsis "Tool for configuring wireless devices") (description @@ -1688,27 +1688,28 @@ processes currently causing I/O.") (string-append "UDEV_RULES_PATH=" (assoc-ref %outputs "out") "/lib/udev/rules.d")) - #:phases (alist-cons-before - 'build 'set-file-names - (lambda* (#:key inputs #:allow-other-keys) - ;; libfuse calls out to mount(8) and umount(8). Make sure - ;; it refers to the right ones. - (substitute* '("lib/mount_util.c" "util/mount_util.c") - (("/bin/(u?)mount" _ maybe-u) - (string-append (assoc-ref inputs "util-linux") - "/bin/" maybe-u "mount"))) - (substitute* '("util/mount.fuse.c") - (("/bin/sh") - (which "sh"))) - - ;; This hack leads libfuse to search for 'fusermount' in - ;; $PATH, where it may find a setuid-root binary, instead of - ;; trying solely $out/sbin/fusermount and failing because - ;; it's not setuid. - (substitute* "lib/Makefile" - (("-DFUSERMOUNT_DIR=[[:graph:]]+") - "-DFUSERMOUNT_DIR=\\\"/var/empty\\\""))) - %standard-phases))) + #:phases + (modify-phases %standard-phases + (add-before 'build 'set-file-names + (lambda* (#:key inputs #:allow-other-keys) + ;; libfuse calls out to mount(8) and umount(8). Make sure + ;; it refers to the right ones. + (substitute* '("lib/mount_util.c" "util/mount_util.c") + (("/bin/(u?)mount" _ maybe-u) + (string-append (assoc-ref inputs "util-linux") + "/bin/" maybe-u "mount"))) + (substitute* '("util/mount.fuse.c") + (("/bin/sh") + (which "sh"))) + + ;; This hack leads libfuse to search for 'fusermount' in + ;; $PATH, where it may find a setuid-root binary, instead of + ;; trying solely $out/sbin/fusermount and failing because + ;; it's not setuid. + (substitute* "lib/Makefile" + (("-DFUSERMOUNT_DIR=[[:graph:]]+") + "-DFUSERMOUNT_DIR=\\\"/var/empty\\\"")) + #t))))) (home-page "https://github.com/libfuse/libfuse") (synopsis "Support file systems implemented in user space") (description @@ -1786,20 +1787,20 @@ UnionFS-FUSE additionally supports copy-on-write.") (arguments '(#:tests? #f #:configure-flags '("-DCMAKE_EXE_LINKER_FLAGS=-static") - #:phases (alist-cons-after - 'install 'post-install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (exe (string-append out "/bin/unionfs"))) - ;; By default, 'unionfs' keeps references to - ;; $glibc/share/locale and similar stuff. Remove them. - (remove-store-references exe) - - ;; 'unionfsctl' has references to glibc as well. Since - ;; we don't need it, remove it. - (delete-file (string-append out "/bin/unionfsctl")) - #t)) - %standard-phases))) + #:phases + (modify-phases %standard-phases + (add-after 'install 'post-install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (exe (string-append out "/bin/unionfs"))) + ;; By default, 'unionfs' keeps references to + ;; $glibc/share/locale and similar stuff. Remove them. + (remove-store-references exe) + + ;; 'unionfsctl' has references to glibc as well. Since + ;; we don't need it, remove it. + (delete-file (string-append out "/bin/unionfsctl")) + #t)))))) (inputs `(("fuse" ,fuse-static))))) (define-public sshfs-fuse @@ -2374,43 +2375,42 @@ country-specific regulations for the wireless spectrum.") (string-append "ETCDIR=" %output "/etc") (string-append "MANDIR=" %output "/share/man")) #:phases - (alist-delete - 'configure - (alist-cons-before - 'build 'patch-exec-paths - (lambda* (#:key inputs outputs #:allow-other-keys) - (substitute* "prog/detect/sensors-detect" - (("`uname") - (string-append "`" (assoc-ref inputs "coreutils") - "/bin/uname")) - (("(`|\")modprobe" all open-quote) - (string-append open-quote - (assoc-ref inputs "kmod") - "/bin/modprobe"))) - (substitute* '("prog/pwm/pwmconfig" - "prog/pwm/fancontrol") - (("gnuplot") - (string-append (assoc-ref inputs "gnuplot") - "/bin/gnuplot")) - (("cat ") - (string-append (assoc-ref inputs "coreutils") - "/bin/cat ")) - (("egrep ") - (string-append (assoc-ref inputs "grep") - "/bin/egrep ")) - (("sed -e") - (string-append (assoc-ref inputs "sed") - "/bin/sed -e")) - (("cut -d") - (string-append (assoc-ref inputs "coreutils") - "/bin/cut -d")) - (("sleep ") - (string-append (assoc-ref inputs "coreutils") - "/bin/sleep ")) - (("readlink -f") - (string-append (assoc-ref inputs "coreutils") - "/bin/readlink -f")))) - %standard-phases)))) + (modify-phases %standard-phases + (delete 'configure) + (add-before 'build 'patch-exec-paths + (lambda* (#:key inputs outputs #:allow-other-keys) + (substitute* "prog/detect/sensors-detect" + (("`uname") + (string-append "`" (assoc-ref inputs "coreutils") + "/bin/uname")) + (("(`|\")modprobe" all open-quote) + (string-append open-quote + (assoc-ref inputs "kmod") + "/bin/modprobe"))) + (substitute* '("prog/pwm/pwmconfig" + "prog/pwm/fancontrol") + (("gnuplot") + (string-append (assoc-ref inputs "gnuplot") + "/bin/gnuplot")) + (("cat ") + (string-append (assoc-ref inputs "coreutils") + "/bin/cat ")) + (("egrep ") + (string-append (assoc-ref inputs "grep") + "/bin/egrep ")) + (("sed -e") + (string-append (assoc-ref inputs "sed") + "/bin/sed -e")) + (("cut -d") + (string-append (assoc-ref inputs "coreutils") + "/bin/cut -d")) + (("sleep ") + (string-append (assoc-ref inputs "coreutils") + "/bin/sleep ")) + (("readlink -f") + (string-append (assoc-ref inputs "coreutils") + "/bin/readlink -f"))) + #t))))) (home-page "http://jdelvare.nerim.net/devel.html#lmsensors") (synopsis "Utilities to read temperature/voltage/fan sensors") (description @@ -2437,7 +2437,7 @@ It works with most newer systems.") #:make-flags (list (string-append "prefix=" %output) "CC=gcc") ;; no configure script - #:phases (alist-delete 'configure %standard-phases))) + #:phases (modify-phases %standard-phases (delete 'configure)))) (inputs `(("perl" ,perl))) (home-page "http://jdelvare.nerim.net/devel.html#i2ctools") @@ -2466,18 +2466,19 @@ SMBus access.") ("gtk" ,gtk+-2))) (native-inputs `(("pkg-config" ,pkg-config))) (arguments - `(#:phases (alist-cons-before - 'configure 'enable-deprecated - (lambda _ - (substitute* "src/Makefile.in" - (("-DGDK_DISABLE_DEPRECATED") "") - (("-DGTK_DISABLE_DEPRECATED") ""))) - (alist-cons-before - 'configure 'remove-Werror - (lambda _ - (substitute* '("configure" "src/Makefile.in") - (("-Werror") ""))) - %standard-phases)))) + `(#:phases + (modify-phases %standard-phases + (add-before 'configure 'enable-deprecated + (lambda _ + (substitute* "src/Makefile.in" + (("-DGDK_DISABLE_DEPRECATED") "") + (("-DGTK_DISABLE_DEPRECATED") "")) + #t)) + (add-before 'configure 'remove-Werror + (lambda _ + (substitute* '("configure" "src/Makefile.in") + (("-Werror") "")) + #t))))) (home-page "http://www.linuxhardware.org/xsensors/") (synopsis "Hardware health information viewer") (description @@ -2493,12 +2494,13 @@ in a digital read-out.") (source (package-source linux-libre)) (build-system gnu-build-system) (arguments - '(#:phases (alist-replace - 'configure - (lambda* (#:key inputs #:allow-other-keys) - (setenv "SHELL_PATH" (which "bash")) - (chdir "tools/perf")) - %standard-phases) + '(#:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs #:allow-other-keys) + (setenv "SHELL_PATH" (which "bash")) + (chdir "tools/perf") + #t))) #:make-flags (list (string-append "DESTDIR=" (assoc-ref %outputs "out")) "WERROR=0" @@ -2837,22 +2839,23 @@ MPEG-2 and audio over Linux IEEE 1394.") (string-append "BINDIR=" out "/sbin") (string-append "MANDIR=" out "/share/man") (string-append "UDEVDIR=" out "/lib/udev"))) - #:phases (alist-cons-before - 'build 'patch-program-paths - (lambda* (#:key inputs #:allow-other-keys) - (let ((coreutils (assoc-ref inputs "coreutils"))) - (substitute* "udev-md-raid-arrays.rules" - (("/usr/bin/(readlink|basename)" all program) - (string-append coreutils "/bin/" program))))) - (alist-cons-before - 'build 'remove-W-error - (lambda _ - ;; We cannot build with -Werror on i686 due to a - ;; 'sign-compare' warning in util.c. - (substitute* "Makefile" - (("-Werror") "")) - #t) - (alist-delete 'configure %standard-phases))) + #:phases + (modify-phases %standard-phases + (add-before 'build 'patch-program-paths + (lambda* (#:key inputs #:allow-other-keys) + (let ((coreutils (assoc-ref inputs "coreutils"))) + (substitute* "udev-md-raid-arrays.rules" + (("/usr/bin/(readlink|basename)" all program) + (string-append coreutils "/bin/" program)))) + #t)) + (add-before 'build 'remove-W-error + (lambda _ + ;; We cannot build with -Werror on i686 due to a + ;; 'sign-compare' warning in util.c. + (substitute* "Makefile" + (("-Werror") "")) + #t)) + (delete 'configure)) ;;tests must be done as root #:tests? #f)) (home-page "http://neil.brown.name/blog/mdadm") @@ -2987,7 +2990,7 @@ Linux Device Mapper multipathing driver: (list "CC=gcc" (string-append "prefix=" %output)) #:test-target "partcheck" ; need root for a full 'check' #:phases - (alist-delete 'configure %standard-phases))) ; no configure script + (modify-phases %standard-phases (delete 'configure)))) ; no configure script (home-page "http://lse.sourceforge.net/io/aio.html") (synopsis "Linux-native asynchronous I/O access library") (description @@ -3642,13 +3645,14 @@ the default @code{nsswitch} and the experimental @code{umich_ldap}.") ;; FIXME: The upstream tarball lacks man pages, and building them would ;; require DocBook & co. We used to use Gentoo's pre-built man pages, ;; but they vanished. In the meantime, fake it. - '(#:phases (alist-cons-before - 'configure 'fake-docbook - (lambda _ - (substitute* "Makefile.in" - (("^DOCBOOKTOMAN.*$") - "DOCBOOKTOMAN = true\n"))) - %standard-phases))) + '(#:phases + (modify-phases %standard-phases + (add-before 'configure 'fake-docbook + (lambda _ + (substitute* "Makefile.in" + (("^DOCBOOKTOMAN.*$") + "DOCBOOKTOMAN = true\n")) + #t))))) (home-page "http://www.kernel.org/pub/linux/utils/kernel/module-init-tools/") (synopsis "Tools for loading and managing Linux kernel modules") (description diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index 224cea56f6..59e095cd89 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -445,36 +445,33 @@ statistical profiler, a code coverage tool, and many other extensions.") (guix build utils) (guix build gnu-build-system)) #:phases - (alist-replace - 'unpack - (lambda* (#:key inputs #:allow-other-keys) - (and (zero? (system* "tar" "xzvf" (assoc-ref inputs "ccl"))) - (begin (chdir "ccl") #t))) - (alist-delete - 'configure - (alist-cons-before - 'build 'pre-build - ;; Enter the source directory for the current platform's lisp - ;; kernel, and run 'make clean' to remove the precompiled one. - (lambda _ - (chdir (string-append - "lisp-kernel/" - ,(match (or (%current-target-system) (%current-system)) - ("i686-linux" "linuxx8632") - ("x86_64-linux" "linuxx8664") - ("armhf-linux" "linuxarm") - ;; Prevent errors when querying this package - ;; on unsupported platforms, e.g. when running - ;; "guix package --search=" - (_ "UNSUPPORTED")))) - (substitute* '("Makefile") - (("/bin/rm") "rm")) - (setenv "CC" "gcc") - (zero? (system* "make" "clean"))) - ;; XXX Do we need to recompile the heap image as well for Guix? - ;; For now just use the one we already got in the tarball. - (alist-replace - 'install + (modify-phases %standard-phases + (replace 'unpack + (lambda* (#:key inputs #:allow-other-keys) + (and (zero? (system* "tar" "xzvf" (assoc-ref inputs "ccl"))) + (begin (chdir "ccl") #t)))) + (delete 'configure) + (add-before 'build 'pre-build + ;; Enter the source directory for the current platform's lisp + ;; kernel, and run 'make clean' to remove the precompiled one. + (lambda _ + (chdir (string-append + "lisp-kernel/" + ,(match (or (%current-target-system) (%current-system)) + ("i686-linux" "linuxx8632") + ("x86_64-linux" "linuxx8664") + ("armhf-linux" "linuxarm") + ;; Prevent errors when querying this package + ;; on unsupported platforms, e.g. when running + ;; "guix package --search=" + (_ "UNSUPPORTED")))) + (substitute* '("Makefile") + (("/bin/rm") "rm")) + (setenv "CC" "gcc") + (zero? (system* "make" "clean")))) + ;; XXX Do we need to recompile the heap image as well for Guix? + ;; For now just use the one we already got in the tarball. + (replace 'install (lambda* (#:key outputs inputs #:allow-other-keys) ;; The lisp kernel built by running 'make' in lisp-kernel/$system ;; is put back into the original directory, so go back. The heap @@ -513,8 +510,8 @@ statistical profiler, a code coverage tool, and many other extensions.") "CCL_DEFAULT_DIRECTORY=" libdir "\n" "export CCL_DEFAULT_DIRECTORY\n" "exec " libdir kernel "\n")))) - (chmod wrapper #o755))) - %standard-phases)))))) + (chmod wrapper #o755)) + #t))))) (supported-systems '("i686-linux" "x86_64-linux" "armhf-linux")) (home-page "http://ccl.clozure.com/") (synopsis "Common Lisp implementation") diff --git a/gnu/packages/lout.scm b/gnu/packages/lout.scm index f2c724ae07..b71abd83fe 100644 --- a/gnu/packages/lout.scm +++ b/gnu/packages/lout.scm @@ -28,53 +28,11 @@ ;; rules. Instead, it has a makefile that has to be patched to set the ;; prefix, etc., and it has no makefile rules to build its doc. (let ((configure-phase - '(lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (doc (assoc-ref outputs "doc"))) - (substitute* "makefile" - (("^PREFIX[[:blank:]]*=.*$") - (string-append "PREFIX = " out "\n")) - (("^LOUTLIBDIR[[:blank:]]*=.*$") - (string-append "LOUTLIBDIR = " out "/lib/lout\n")) - (("^LOUTDOCDIR[[:blank:]]*=.*$") - (string-append "LOUTDOCDIR = " doc "/share/doc/lout\n")) - (("^MANDIR[[:blank:]]*=.*$") - (string-append "MANDIR = " out "/man\n"))) - (mkdir out) - (mkdir (string-append out "/bin")) - (mkdir (string-append out "/lib")) - (mkdir (string-append out "/man")) - (mkdir-p (string-append doc "/share/doc/lout"))))) + ') (install-man-phase - '(lambda* (#:key outputs #:allow-other-keys) - (zero? (system* "make" "installman")))) + ') (doc-phase - '(lambda* (#:key outputs #:allow-other-keys) - (define out - (assoc-ref outputs "doc")) - - (setenv "PATH" - (string-append (assoc-ref outputs "out") - "/bin:" (getenv "PATH"))) - (chdir "doc") - (every (lambda (doc) - (format #t "doc: building `~a'...~%" doc) - (with-directory-excursion doc - (let ((file (string-append out "/share/doc/lout/" - doc ".ps"))) - (and (or (file-exists? "outfile.ps") - (zero? (system* "lout" "-r4" "-o" - "outfile.ps" "all"))) - (begin - (copy-file "outfile.ps" file) - #t) - (zero? (system* "ps2pdf" - "-dPDFSETTINGS=/prepress" - "-sPAPERSIZE=a4" - file - (string-append out "/share/doc/lout/" - doc ".pdf"))))))) - '("design" "expert" "slides" "user"))))) + ')) (package (name "lout") (version "3.40") @@ -89,23 +47,64 @@ (outputs '("out" "doc")) (native-inputs `(("ghostscript" ,ghostscript))) - (arguments `(#:modules ((guix build utils) - (guix build gnu-build-system) - (srfi srfi-1)) ; we need SRFI-1 - #:tests? #f ; no "check" target - - ;; Customize the build phases. - #:phases (alist-replace - 'configure ,configure-phase + (arguments + `(#:modules ((guix build utils) + (guix build gnu-build-system) + (srfi srfi-1)) ; we need SRFI-1 + #:tests? #f ; no "check" target - (alist-cons-after - 'install 'install-man-pages - ,install-man-phase + ;; Customize the build phases. + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (doc (assoc-ref outputs "doc"))) + (substitute* "makefile" + (("^PREFIX[[:blank:]]*=.*$") + (string-append "PREFIX = " out "\n")) + (("^LOUTLIBDIR[[:blank:]]*=.*$") + (string-append "LOUTLIBDIR = " out "/lib/lout\n")) + (("^LOUTDOCDIR[[:blank:]]*=.*$") + (string-append "LOUTDOCDIR = " doc "/share/doc/lout\n")) + (("^MANDIR[[:blank:]]*=.*$") + (string-append "MANDIR = " out "/man\n"))) + (mkdir out) + (mkdir (string-append out "/bin")) + (mkdir (string-append out "/lib")) + (mkdir (string-append out "/man")) + (mkdir-p (string-append doc "/share/doc/lout"))) + #t)) + (add-after 'install 'install-man-pages + (lambda* (#:key outputs #:allow-other-keys) + (zero? (system* "make" "installman")))) + (add-after 'install 'install-doc + (lambda* (#:key outputs #:allow-other-keys) + (define out + (assoc-ref outputs "doc")) - (alist-cons-after - 'install 'install-doc - ,doc-phase - %standard-phases))))) + (setenv "PATH" + (string-append (assoc-ref outputs "out") + "/bin:" (getenv "PATH"))) + (chdir "doc") + (every (lambda (doc) + (format #t "doc: building `~a'...~%" doc) + (with-directory-excursion doc + (let ((file (string-append out "/share/doc/lout/" + doc ".ps"))) + (and (or (file-exists? "outfile.ps") + (zero? (system* "lout" "-r4" "-o" + "outfile.ps" "all"))) + (begin + (copy-file "outfile.ps" file) + #t) + (zero? (system* "ps2pdf" + "-dPDFSETTINGS=/prepress" + "-sPAPERSIZE=a4" + file + (string-append out "/share/doc/lout/" + doc ".pdf"))))))) + '("design" "expert" "slides" "user"))))))) (synopsis "Document layout system") (description "The Lout document formatting system reads a high-level description of diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm index c3cb700be2..c8bc4ef85e 100644 --- a/gnu/packages/lua.scm +++ b/gnu/packages/lua.scm @@ -124,7 +124,7 @@ for configuration, scripting, and rapid prototyping.") (build-system gnu-build-system) (arguments '(#:tests? #f ;luajit is distributed without tests - #:phases (alist-delete 'configure %standard-phases) + #:phases (modify-phases %standard-phases (delete 'configure)) #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))))) (home-page "http://www.luajit.org/") (synopsis "Just in time compiler for Lua programming language version 5.1") diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index 58b47dacd1..291146bab4 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -376,54 +376,50 @@ sample proximities between pairs of cases.") (arguments '(#:tests? #f ;no check target #:phases - (alist-cons-after - 'unpack 'delete-broken-symlinks - (lambda _ - (for-each delete-file '("applications/arts/data" - "applications/asp/data" - "applications/easysvm/data" - "applications/msplicer/data" - "applications/ocr/data" - "examples/documented/data" - "examples/documented/matlab_static" - "examples/documented/octave_static" - "examples/undocumented/data" - "examples/undocumented/matlab_static" - "examples/undocumented/octave_static" - "tests/integration/data" - "tests/integration/matlab_static" - "tests/integration/octave_static" - "tests/integration/python_modular/tests")) - #t) - (alist-cons-after - 'unpack 'change-R-target-path - (lambda* (#:key outputs #:allow-other-keys) - (substitute* '("src/interfaces/r_modular/CMakeLists.txt" - "src/interfaces/r_static/CMakeLists.txt" - "examples/undocumented/r_modular/CMakeLists.txt") - (("\\$\\{R_COMPONENT_LIB_PATH\\}") - (string-append (assoc-ref outputs "out") - "/lib/R/library/"))) - #t) - (alist-cons-after - 'unpack 'fix-octave-modules - (lambda* (#:key outputs #:allow-other-keys) - (substitute* '("src/interfaces/octave_modular/CMakeLists.txt" - "src/interfaces/octave_static/CMakeLists.txt") - (("^include_directories\\(\\$\\{OCTAVE_INCLUDE_DIRS\\}") - "include_directories(${OCTAVE_INCLUDE_DIRS} ${OCTAVE_INCLUDE_DIRS}/octave")) + (modify-phases %standard-phases + (add-after 'unpack 'delete-broken-symlinks + (lambda _ + (for-each delete-file '("applications/arts/data" + "applications/asp/data" + "applications/easysvm/data" + "applications/msplicer/data" + "applications/ocr/data" + "examples/documented/data" + "examples/documented/matlab_static" + "examples/documented/octave_static" + "examples/undocumented/data" + "examples/undocumented/matlab_static" + "examples/undocumented/octave_static" + "tests/integration/data" + "tests/integration/matlab_static" + "tests/integration/octave_static" + "tests/integration/python_modular/tests")) + #t)) + (add-after 'unpack 'change-R-target-path + (lambda* (#:key outputs #:allow-other-keys) + (substitute* '("src/interfaces/r_modular/CMakeLists.txt" + "src/interfaces/r_static/CMakeLists.txt" + "examples/undocumented/r_modular/CMakeLists.txt") + (("\\$\\{R_COMPONENT_LIB_PATH\\}") + (string-append (assoc-ref outputs "out") + "/lib/R/library/"))) + #t)) + (add-after 'unpack 'fix-octave-modules + (lambda* (#:key outputs #:allow-other-keys) + (substitute* '("src/interfaces/octave_modular/CMakeLists.txt" + "src/interfaces/octave_static/CMakeLists.txt") + (("^include_directories\\(\\$\\{OCTAVE_INCLUDE_DIRS\\}") + "include_directories(${OCTAVE_INCLUDE_DIRS} ${OCTAVE_INCLUDE_DIRS}/octave")) - ;; change target directory - (substitute* "src/interfaces/octave_modular/CMakeLists.txt" - (("\\$\\{OCTAVE_OCT_LOCAL_API_FILE_DIR\\}") - (string-append (assoc-ref outputs "out") - "/share/octave/packages"))) - #t) - (alist-cons-before - 'build 'set-HOME + ;; change target directory + (substitute* "src/interfaces/octave_modular/CMakeLists.txt" + (("\\$\\{OCTAVE_OCT_LOCAL_API_FILE_DIR\\}") + (string-append (assoc-ref outputs "out") + "/share/octave/packages"))) + #t)) + (add-before 'build 'set-HOME ;; $HOME needs to be set at some point during the build phase - (lambda _ (setenv "HOME" "/tmp") #t) - %standard-phases)))) + (lambda _ (setenv "HOME" "/tmp") #t))) #:configure-flags (list "-DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE" "-DUSE_SVMLIGHT=OFF" ;disable proprietary SVMLIGHT diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 8c376b1e45..72e1bb179c 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -1034,51 +1034,51 @@ delivery.") ("perl" ,perl))) (arguments '(#:phases - (alist-replace - 'configure - ;; We'd use #:make-flags but the top-level Makefile calls others - ;; recursively, so just set all variables this way. - (lambda* (#:key outputs inputs #:allow-other-keys) - (substitute* '("Makefile" "OS/Makefile-Default") - (("(RM_COMMAND=).*" all var) - (string-append var "rm\n"))) - (copy-file "src/EDITME" "Local/Makefile") - (copy-file "exim_monitor/EDITME" "Local/eximon.conf") - (let ((out (assoc-ref outputs "out")) - (gzip (assoc-ref inputs "gzip")) - (bzip2 (assoc-ref inputs "bzip2")) - (xz (assoc-ref inputs "xz"))) - (substitute* '("Local/Makefile") - (("(BIN_DIRECTORY=).*" all var) - (string-append var out "/bin\n")) - (("(CONFIGURE_FILE=).*" all var) - (string-append var out "/etc/exim.conf\n")) - (("(EXIM_USER=).*" all var) - (string-append var "nobody\n")) - (("(FIXED_NEVER_USERS=).*" all var) - (string-append var "\n")) ;XXX no root in build environment - (("(COMPRESS_COMMAND=).*" all var) - (string-append var gzip "/bin/gzip\n")) - (("(ZCAT_COMMAND=).*" all var) - (string-append var gzip "/bin/zcat\n"))) - ;; This file has hardcoded names for tools despite the zcat - ;; configuration above. - (substitute* '("src/exigrep.src") - (("'zcat'") (string-append "'" gzip "/bin/zcat'")) - (("'bzcat'") (string-append "'" bzip2 "/bin/bzcat'")) - (("'xzcat'") (string-append "'" xz "/bin/xzcat'")) - (("'lzma'") (string-append "'" xz "/bin/lzma'"))))) - (alist-cons-before - 'build 'fix-sh-paths - (lambda* (#:key inputs #:allow-other-keys) - (substitute* '("scripts/lookups-Makefile" "scripts/reversion") - (("SHELL=/bin/sh") "SHELL=sh")) - (substitute* '("scripts/Configure-config.h") - (("\\| /bin/sh") "| sh")) - (let ((bash (assoc-ref inputs "bash"))) - (substitute* '("scripts/Configure-eximon") - (("#!/bin/sh") (string-append "#!" bash "/bin/sh"))))) - %standard-phases)) + (modify-phases %standard-phases + (replace 'configure + ;; We'd use #:make-flags but the top-level Makefile calls others + ;; recursively, so just set all variables this way. + (lambda* (#:key outputs inputs #:allow-other-keys) + (substitute* '("Makefile" "OS/Makefile-Default") + (("(RM_COMMAND=).*" all var) + (string-append var "rm\n"))) + (copy-file "src/EDITME" "Local/Makefile") + (copy-file "exim_monitor/EDITME" "Local/eximon.conf") + (let ((out (assoc-ref outputs "out")) + (gzip (assoc-ref inputs "gzip")) + (bzip2 (assoc-ref inputs "bzip2")) + (xz (assoc-ref inputs "xz"))) + (substitute* '("Local/Makefile") + (("(BIN_DIRECTORY=).*" all var) + (string-append var out "/bin\n")) + (("(CONFIGURE_FILE=).*" all var) + (string-append var out "/etc/exim.conf\n")) + (("(EXIM_USER=).*" all var) + (string-append var "nobody\n")) + (("(FIXED_NEVER_USERS=).*" all var) + (string-append var "\n")) ;XXX no root in build environment + (("(COMPRESS_COMMAND=).*" all var) + (string-append var gzip "/bin/gzip\n")) + (("(ZCAT_COMMAND=).*" all var) + (string-append var gzip "/bin/zcat\n"))) + ;; This file has hardcoded names for tools despite the zcat + ;; configuration above. + (substitute* '("src/exigrep.src") + (("'zcat'") (string-append "'" gzip "/bin/zcat'")) + (("'bzcat'") (string-append "'" bzip2 "/bin/bzcat'")) + (("'xzcat'") (string-append "'" xz "/bin/xzcat'")) + (("'lzma'") (string-append "'" xz "/bin/lzma'")))) + #t)) + (add-before 'build 'fix-sh-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* '("scripts/lookups-Makefile" "scripts/reversion") + (("SHELL=/bin/sh") "SHELL=sh")) + (substitute* '("scripts/Configure-config.h") + (("\\| /bin/sh") "| sh")) + (let ((bash (assoc-ref inputs "bash"))) + (substitute* '("scripts/Configure-eximon") + (("#!/bin/sh") (string-append "#!" bash "/bin/sh")))) + #t))) #:make-flags '("INSTALL_ARG=-no_chown") ;; No 'check' target. #:tests? #f)) diff --git a/gnu/packages/man.scm b/gnu/packages/man.scm index 60076f0f1a..fed7d08aee 100644 --- a/gnu/packages/man.scm +++ b/gnu/packages/man.scm @@ -154,7 +154,7 @@ the traditional flat-text whatis databases.") "1gri0rm9i3a6w5dvsmwawhwzywl5x80dwq05d2v8l92knv2hbh6m")))) (build-system gnu-build-system) (arguments - '(#:phases (alist-delete 'configure %standard-phases) + '(#:phases (modify-phases %standard-phases (delete 'configure)) ;; The 'all' target depends on three targets that directly populate ;; $(MANDIR) based on its current contents. Doing that in parallel @@ -220,7 +220,7 @@ automatically.") (arguments `(#:tests? #f ; no "check" target #:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out"))) - #:phases (alist-delete 'configure %standard-phases))) + #:phases (modify-phases %standard-phases (delete 'configure)))) (inputs `(("gawk" ,gawk))) (home-page "https://github.com/mvertes/txt2man") diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index f326f6af72..488c42b28d 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -456,13 +456,14 @@ large scale eigenvalue problems.") ;; Build the 'LAPACKE_clatms' functions. "-DLAPACKE_WITH_TMG=ON") - #:phases (alist-cons-before - 'check 'patch-python - (lambda* (#:key inputs #:allow-other-keys) - (let ((python (assoc-ref inputs "python"))) - (substitute* "lapack_testing.py" - (("/usr/bin/env python") python)))) - %standard-phases))) + #:phases + (modify-phases %standard-phases + (add-before 'check 'patch-python + (lambda* (#:key inputs #:allow-other-keys) + (let ((python (assoc-ref inputs "python"))) + (substitute* "lapack_testing.py" + (("/usr/bin/env python") python))) + #t))))) (synopsis "Library for numerical linear algebra") (description "LAPACK is a Fortran 90 library for solving the most commonly occurring @@ -1866,12 +1867,12 @@ void mc64ad_ (int *a, int *b, int *c, int *d, int *e, double *f, int *g, (arguments `(#:parallel-build? #f ;race conditions using ar #:phases - (alist-replace - 'configure - (lambda* (#:key inputs outputs #:allow-other-keys) - (call-with-output-file "make.inc" - (lambda (port) - (format port " + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (call-with-output-file "make.inc" + (lambda (port) + (format port " PLAT = DSuperLUroot = ~a DSUPERLULIB = ~a/lib/libsuperlu_dist.a @@ -1894,47 +1895,46 @@ FORTRAN = mpifort FFLAGS = -O2 -g $(PIC) LOADER = $(CC) CDEFS = -DAdd_" - (getcwd) - (assoc-ref outputs "out") - (assoc-ref inputs "lapack") - (assoc-ref inputs "pt-scotch"))))) - (alist-cons-after - 'unpack 'remove-broken-symlinks - (lambda _ - (for-each delete-file - (find-files "MAKE_INC" "\\.#make\\..*"))) - (alist-cons-before - 'build 'create-install-directories - (lambda* (#:key outputs #:allow-other-keys) - (for-each - (lambda (dir) - (mkdir-p (string-append (assoc-ref outputs "out") - "/" dir))) - '("lib" "include"))) - (alist-replace - 'check + (getcwd) + (assoc-ref outputs "out") + (assoc-ref inputs "lapack") + (assoc-ref inputs "pt-scotch")))) + #t)) + (add-after 'unpack 'remove-broken-symlinks + (lambda _ + (for-each delete-file + (find-files "MAKE_INC" "\\.#make\\..*")) + #t)) + (add-before 'build 'create-install-directories + (lambda* (#:key outputs #:allow-other-keys) + (for-each + (lambda (dir) + (mkdir-p (string-append (assoc-ref outputs "out") + "/" dir))) + '("lib" "include")) + #t)) + (replace 'check (lambda _ (with-directory-excursion "EXAMPLE" (and (zero? (system* "mpirun" "-n" "2" "./pddrive" "-r" "1" "-c" "2" "g20.rua")) (zero? (system* "mpirun" "-n" "2" - "./pzdrive" "-r" "1" "-c" "2" "cg20.cua"))))) - (alist-replace - 'install - (lambda* (#:key outputs #:allow-other-keys) - ;; Library is placed in lib during the build phase. Copy over - ;; headers to include. - (let* ((out (assoc-ref outputs "out")) - (incdir (string-append out "/include"))) - (for-each (lambda (file) - (let ((base (basename file))) - (format #t "installing `~a' to `~a'~%" - base incdir) - (copy-file file - (string-append incdir "/" base)))) - (find-files "SRC" ".*\\.h$")))) - %standard-phases))))))) + "./pzdrive" "-r" "1" "-c" "2" "cg20.cua")))))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + ;; Library is placed in lib during the build phase. Copy over + ;; headers to include. + (let* ((out (assoc-ref outputs "out")) + (incdir (string-append out "/include"))) + (for-each (lambda (file) + (let ((base (basename file))) + (format #t "installing `~a' to `~a'~%" + base incdir) + (copy-file file + (string-append incdir "/" base)))) + (find-files "SRC" ".*\\.h$"))) + #t))))) (home-page (package-home-page superlu)) (synopsis "Parallel supernodal direct solver") (description @@ -2621,7 +2621,7 @@ access to BLIS implementations via traditional BLAS routine calls.") (list (string-append "prefix=" (assoc-ref %outputs "out"))) #:phases ;; no configure script - (alist-delete 'configure %standard-phases) + (modify-phases %standard-phases (delete 'configure)) #:tests? #f)) ;the tests are part of the default target (home-page "http://openlibm.org/") (synopsis "Portable C mathematical library (libm)") @@ -2660,7 +2660,7 @@ environments.") #:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out"))) ;; no configure script - #:phases (alist-delete 'configure %standard-phases))) + #:phases (modify-phases %standard-phases (delete 'configure)))) (inputs `(("fortran" ,gfortran))) (home-page "https://github.com/JuliaLang/openspecfun") diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 52ca4bef79..f984f8ffbb 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -142,20 +142,19 @@ keys, no previous conversation is compromised.") ("python" ,python-2) ("perl" ,perl))) (arguments - `(#:phases (alist-cons-after - 'install 'install-etc - (lambda* (#:key (make-flags '()) #:allow-other-keys) - (zero? (apply system* "make" "install-etc" make-flags))) - (alist-replace - 'configure - ;; bitlbee's configure script does not tolerate many of the - ;; variable settings that Guix would pass to it. - (lambda* (#:key outputs #:allow-other-keys) - (zero? (system* "./configure" - (string-append "--prefix=" - (assoc-ref outputs "out")) - "--otr=1"))) - %standard-phases)))) + `(#:phases + (modify-phases %standard-phases + (add-after 'install 'install-etc + (lambda* (#:key (make-flags '()) #:allow-other-keys) + (zero? (apply system* "make" "install-etc" make-flags)))) + (replace 'configure + ;; bitlbee's configure script does not tolerate many of the + ;; variable settings that Guix would pass to it. + (lambda* (#:key outputs #:allow-other-keys) + (zero? (system* "./configure" + (string-append "--prefix=" + (assoc-ref outputs "out")) + "--otr=1"))))))) (synopsis "IRC to instant messaging gateway") (description "BitlBee brings IM (instant messaging) to IRC clients, for people who have an IRC client running all the time and don't want to run an diff --git a/gnu/packages/mp3.scm b/gnu/packages/mp3.scm index f030e5b18e..6412dce16d 100644 --- a/gnu/packages/mp3.scm +++ b/gnu/packages/mp3.scm @@ -66,12 +66,13 @@ (build-system gnu-build-system) (arguments `(#:phases - (alist-cons-before - 'configure 'remove-unsupported-gcc-flags - (lambda _ - ;; remove option that is not supported by gcc any more - (substitute* "configure" ((" -fforce-mem") ""))) - %standard-phases))) + (modify-phases %standard-phases + (add-before 'configure 'remove-unsupported-gcc-flags + (lambda _ + ;; remove option that is not supported by gcc any more + (substitute* "configure" ((" -fforce-mem") "")) + #t) + %standard-phases)))) (synopsis "MPEG audio decoder") (description "MAD (MPEG Audio Decoder) supports MPEG-1 and the MPEG-2 extension to @@ -123,20 +124,20 @@ versions of ID3v2.") (inputs `(("zlib" ,zlib))) (arguments `(#:phases - (alist-cons-before - 'configure 'apply-patches - ;; TODO: create a patch for origin instead? - (lambda _ - (substitute* "configure" - (("iomanip.h") "")) ; drop check for unused header - ;; see http://www.linuxfromscratch.org/patches/downloads/id3lib/ - (substitute* "include/id3/id3lib_strings.h" - (("include ") "include \n#include ")) - (substitute* "include/id3/writers.h" - (("//\\#include ") "#include ")) - (substitute* "examples/test_io.cpp" - (("dami;") "dami;\nusing namespace std;"))) - %standard-phases))) + (modify-phases %standard-phases + (add-before 'configure 'apply-patches + ;; TODO: create a patch for origin instead? + (lambda _ + (substitute* "configure" + (("iomanip.h") "")) ; drop check for unused header + ;; see http://www.linuxfromscratch.org/patches/downloads/id3lib/ + (substitute* "include/id3/id3lib_strings.h" + (("include ") "include \n#include ")) + (substitute* "include/id3/writers.h" + (("//\\#include ") "#include ")) + (substitute* "examples/test_io.cpp" + (("dami;") "dami;\nusing namespace std;")) + #t))))) (synopsis "Library for reading, writing, and manipulating ID3v1 and ID3v2 tags") (description "Id3lib is a cross-platform software development library for reading, @@ -194,29 +195,30 @@ Speex, WavPack TrueAudio, WAV, AIFF, MP4 and ASF files.") (build-system gnu-build-system) (outputs '("out" "gui")) ;GTK+ interface in "gui" (arguments - '(#:phases (alist-replace - 'configure - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (substitute* "Makefile" - (("prefix=.*") - (string-append "prefix := " out "\n"))))) - (alist-cons-before - 'install 'pre-install - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (mkdir-p (string-append out "/bin")) - (mkdir-p (string-append out "/share/man/man1")))) - (alist-cons-after - 'install 'post-install - (lambda* (#:key outputs #:allow-other-keys) - ;; Move the GTK+ interface to "gui". - (let ((out (assoc-ref outputs "out")) - (gui (assoc-ref outputs "gui"))) - (mkdir-p (string-append gui "/bin")) - (rename-file (string-append out "/bin/gmp3info") - (string-append gui "/bin/gmp3info")))) - %standard-phases))) + '(#:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (substitute* "Makefile" + (("prefix=.*") + (string-append "prefix := " out "\n")))) + #t)) + (add-before 'install 'pre-install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (mkdir-p (string-append out "/bin")) + (mkdir-p (string-append out "/share/man/man1"))) + #t)) + (add-after 'install 'post-install + (lambda* (#:key outputs #:allow-other-keys) + ;; Move the GTK+ interface to "gui". + (let ((out (assoc-ref outputs "out")) + (gui (assoc-ref outputs "gui"))) + (mkdir-p (string-append gui "/bin")) + (rename-file (string-append out "/bin/gmp3info") + (string-append gui "/bin/gmp3info"))) + #t))) #:tests? #f)) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 1c3ac71c26..b11121722c 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -869,60 +869,60 @@ complete studio.") `(#:tests? #f ; xmllint attempts to download DTD #:test-target "test" #:phases - (alist-cons-after - 'unpack 'fix-configuration - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "default.config" - (("csound=csound") - (string-append "csound=" - (assoc-ref inputs "csound") - "/bin/csound")) - (("/usr/bin/aplay") - (string-append (assoc-ref inputs "aplay") - "/bin/aplay")) - (("/usr/bin/timidity") - (string-append (assoc-ref inputs "timidity") - "/bin/timidity")) - (("/usr/bin/mpg123") - (string-append (assoc-ref inputs "mpg123") - "/bin/mpg123")) - (("/usr/bin/ogg123") - (string-append (assoc-ref inputs "ogg123") - "/bin/ogg123")))) - (alist-cons-before - 'build 'patch-python-shebangs - (lambda _ - ;; Two python scripts begin with a Unicode BOM, so patch-shebang - ;; has no effect. - (substitute* '("solfege/parsetree.py" - "solfege/presetup.py") - (("#!/usr/bin/python") (string-append "#!" (which "python"))))) - (alist-cons-before - 'build 'add-sitedirs - ;; .pth files are not automatically interpreted unless the - ;; directories containing them are added as "sites". The directories - ;; are then added to those in the PYTHONPATH. This is required for - ;; the operation of pygtk and pygobject. - (lambda _ - (substitute* "run-solfege.py" - (("import os") - "import os, site -for path in [path for path in sys.path if 'site-packages' in path]: site.addsitedir(path)"))) - (alist-cons-before - 'build 'adjust-config-file-prefix + (modify-phases %standard-phases + (add-after 'unpack 'fix-configuration + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "default.config" + (("csound=csound") + (string-append "csound=" + (assoc-ref inputs "csound") + "/bin/csound")) + (("/usr/bin/aplay") + (string-append (assoc-ref inputs "aplay") + "/bin/aplay")) + (("/usr/bin/timidity") + (string-append (assoc-ref inputs "timidity") + "/bin/timidity")) + (("/usr/bin/mpg123") + (string-append (assoc-ref inputs "mpg123") + "/bin/mpg123")) + (("/usr/bin/ogg123") + (string-append (assoc-ref inputs "ogg123") + "/bin/ogg123"))) + #t)) + (add-before 'build 'patch-python-shebangs + (lambda _ + ;; Two python scripts begin with a Unicode BOM, so patch-shebang + ;; has no effect. + (substitute* '("solfege/parsetree.py" + "solfege/presetup.py") + (("#!/usr/bin/python") (string-append "#!" (which "python")))) + #t)) + (add-before 'build 'add-sitedirs + ;; .pth files are not automatically interpreted unless the + ;; directories containing them are added as "sites". The directories + ;; are then added to those in the PYTHONPATH. This is required for + ;; the operation of pygtk and pygobject. + (lambda _ + (substitute* "run-solfege.py" + (("import os") + "import os, site +for path in [path for path in sys.path if 'site-packages' in path]: site.addsitedir(path)")) + #t)) + (add-before 'build 'adjust-config-file-prefix (lambda* (#:key outputs #:allow-other-keys) (substitute* "run-solfege.py" (("prefix = os.path.*$") - (string-append "prefix = " (assoc-ref outputs "out"))))) - (alist-cons-after - 'install 'wrap-program - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; Make sure 'solfege' runs with the correct PYTHONPATH. - (let* ((out (assoc-ref outputs "out")) - (path (getenv "PYTHONPATH"))) - (wrap-program (string-append out "/bin/solfege") - `("PYTHONPATH" ":" prefix (,path))))) - %standard-phases))))))) + (string-append "prefix = " (assoc-ref outputs "out")))) + #t)) + (add-after 'install 'wrap-program + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Make sure 'solfege' runs with the correct PYTHONPATH. + (let* ((out (assoc-ref outputs "out")) + (path (getenv "PYTHONPATH"))) + (wrap-program (string-append out "/bin/solfege") + `("PYTHONPATH" ":" prefix (,path)))) + #t))))) (inputs `(("python" ,python-2) ("pygtk" ,python2-pygtk) diff --git a/gnu/packages/noweb.scm b/gnu/packages/noweb.scm index be90e2dc64..0954e79952 100644 --- a/gnu/packages/noweb.scm +++ b/gnu/packages/noweb.scm @@ -35,47 +35,46 @@ "10hdd6mrk26kyh4bnng4ah5h1pnanhsrhqa7qwqy6dyv3rng44y9")))) (build-system gnu-build-system) (arguments - '(#:phases (alist-cons-before - 'install 'pre-install - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (mkdir-p (string-append out "/share/texmf/tex/latex")) - #t)) - (alist-cons-after - 'install 'post-install - (lambda* (#:key outputs inputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (cu (assoc-ref inputs "coreutils")) - (du (assoc-ref inputs "diffutils"))) - (with-directory-excursion out - (for-each (lambda (prog) - (substitute* prog - (("nawk") (which "awk")))) - (append (map (lambda (x) - (string-append "bin/" x)) - '("noweb" "nountangle" - "noroots" "noroff" - "noindex")) - (map (lambda (x) - (string-append "lib/" x)) - '("btdefn" "emptydefn" "noidx" - "pipedocs" "toascii" "tohtml" - "toroff" "totex" "unmarkup")))) - (substitute* "bin/cpif" - (("^PATH=.*$") - (string-append "PATH=" cu "/bin:" du "/bin\n")))) - #t)) - (alist-replace - 'configure - (lambda _ - ;; Jump in the source. - (chdir "src") + '(#:phases + (modify-phases %standard-phases + (add-before 'install 'pre-install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (mkdir-p (string-append out "/share/texmf/tex/latex")) + #t))) + (add-after 'install 'post-install + (lambda* (#:key outputs inputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (cu (assoc-ref inputs "coreutils")) + (du (assoc-ref inputs "diffutils"))) + (with-directory-excursion out + (for-each (lambda (prog) + (substitute* prog + (("nawk") (which "awk")))) + (append (map (lambda (x) + (string-append "bin/" x)) + '("noweb" "nountangle" + "noroots" "noroff" + "noindex")) + (map (lambda (x) + (string-append "lib/" x)) + '("btdefn" "emptydefn" "noidx" + "pipedocs" "toascii" "tohtml" + "toroff" "totex" "unmarkup")))) + (substitute* "bin/cpif" + (("^PATH=.*$") + (string-append "PATH=" cu "/bin:" du "/bin\n")))) + #t))) + (replace 'configure + (lambda _ + ;; Jump in the source. + (chdir "src") - ;; The makefile reads "source: FAQ", but FAQ isn't - ;; available. - (substitute* "Makefile" - (("FAQ") ""))) - %standard-phases))) + ;; The makefile reads "source: FAQ", but FAQ isn't + ;; available. + (substitute* "Makefile" + (("FAQ") "")) + #t))) #:make-flags (let ((out (assoc-ref %outputs "out"))) (list (string-append "BIN=" out "/bin") (string-append "LIB=" out "/lib") diff --git a/gnu/packages/patchutils.scm b/gnu/packages/patchutils.scm index 42da56194c..f527231aa8 100644 --- a/gnu/packages/patchutils.scm +++ b/gnu/packages/patchutils.scm @@ -53,30 +53,31 @@ (inputs `(("perl" ,perl))) (arguments '(#:parallel-tests? #f - #:phases (alist-cons-before - 'check 'patch-test-scripts - (lambda _ - (let ((echo (which "echo"))) - (substitute* - (find-files "tests" "^run-test$") - (("/bin/echo") echo)))) - (alist-cons-after - 'install 'wrap-program - ;; Point installed scripts to the utilities they need. - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (diffutils (assoc-ref inputs "diffutils")) - (sed (assoc-ref inputs "sed")) - (gawk (assoc-ref inputs "gawk"))) - (for-each - (lambda (prog) - (wrap-program (string-append out "/bin/" prog) - `("PATH" ":" prefix - ,(map (lambda (dir) - (string-append dir "/bin")) - (list diffutils sed gawk))))) - '("dehtmldiff" "editdiff" "espdiff")))) - %standard-phases)))) + #:phases + (modify-phases %standard-phases + (add-before 'check 'patch-test-scripts + (lambda _ + (let ((echo (which "echo"))) + (substitute* + (find-files "tests" "^run-test$") + (("/bin/echo") echo))) + #t)) + (add-after 'install 'wrap-program + ;; Point installed scripts to the utilities they need. + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (diffutils (assoc-ref inputs "diffutils")) + (sed (assoc-ref inputs "sed")) + (gawk (assoc-ref inputs "gawk"))) + (for-each + (lambda (prog) + (wrap-program (string-append out "/bin/" prog) + `("PATH" ":" prefix + ,(map (lambda (dir) + (string-append dir "/bin")) + (list diffutils sed gawk))))) + '("dehtmldiff" "editdiff" "espdiff"))) + #t))))) (home-page "http://cyberelk.net/tim/software/patchutils") (synopsis "Collection of tools for manipulating patch files") (description @@ -105,39 +106,39 @@ listing the files modified by a patch.") ("ed" ,ed))) (arguments '(#:parallel-tests? #f - #:phases - (alist-cons-before - 'check 'patch-tests - (lambda _ - (substitute* - '("test/run" - "test/edit.test") - (("/bin/sh") (which "sh"))) - ;; TODO: Run the mail tests once the mail feature can be supported. - (delete-file "test/mail.test")) - (alist-cons-after - 'install 'wrap-program - ;; quilt's configure checks for the absolute path to the utilities it - ;; needs, but uses only the name when invoking them, so we need to - ;; make sure the quilt script can find those utilities when run. - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (coreutils (assoc-ref inputs "coreutils")) - (diffutils (assoc-ref inputs "diffutils")) - (findutils (assoc-ref inputs "findutils")) - (less (assoc-ref inputs "less")) - (file (assoc-ref inputs "file")) - (ed (assoc-ref inputs "ed")) - (sed (assoc-ref inputs "sed")) - (bash (assoc-ref inputs "bash")) - (grep (assoc-ref inputs "grep"))) - (wrap-program (string-append out "/bin/quilt") - `("PATH" ":" prefix - ,(map (lambda (dir) - (string-append dir "/bin")) - (list coreutils diffutils findutils - less file ed sed bash grep)))))) - %standard-phases)))) + #:phases + (modify-phases %standard-phases + (add-before 'check 'patch-tests + (lambda _ + (substitute* + '("test/run" + "test/edit.test") + (("/bin/sh") (which "sh"))) + ;; TODO: Run the mail tests once the mail feature can be supported. + (delete-file "test/mail.test") + #t)) + (add-after 'install 'wrap-program + ;; quilt's configure checks for the absolute path to the utilities it + ;; needs, but uses only the name when invoking them, so we need to + ;; make sure the quilt script can find those utilities when run. + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (coreutils (assoc-ref inputs "coreutils")) + (diffutils (assoc-ref inputs "diffutils")) + (findutils (assoc-ref inputs "findutils")) + (less (assoc-ref inputs "less")) + (file (assoc-ref inputs "file")) + (ed (assoc-ref inputs "ed")) + (sed (assoc-ref inputs "sed")) + (bash (assoc-ref inputs "bash")) + (grep (assoc-ref inputs "grep"))) + (wrap-program (string-append out "/bin/quilt") + `("PATH" ":" prefix + ,(map (lambda (dir) + (string-append dir "/bin")) + (list coreutils diffutils findutils + less file ed sed bash grep))))) + #t))))) (home-page "https://savannah.nongnu.org/projects/quilt/") (synopsis "Script for managing patches to software") (description @@ -164,8 +165,9 @@ refreshed, and more.") #:make-flags (list (string-append "DESTDIR=" (assoc-ref %outputs "out")) "INSTALL_DIR=/bin" "MAN_DIR=/share/man/man1") #:phases - (alist-delete 'configure - (alist-delete 'build %standard-phases)))) + (modify-phases %standard-phases + (delete 'configure) + (delete 'build)))) (inputs `(("perl" ,perl) ("xmlto" ,xmlto))) diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index 1ee4b819f9..98df90e2d4 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -300,19 +300,19 @@ reading and editing of existing PDF files.") (assoc-ref %build-inputs "freetype") "/include/freetype2")) #:phases - (alist-replace - 'install - (lambda* (#:key outputs inputs #:allow-other-keys #:rest args) - (let* ((install (assoc-ref %standard-phases 'install)) - (out (assoc-ref outputs "out")) - (xpdfrc (string-append out "/etc/xpdfrc")) - (gs-fonts (assoc-ref inputs "gs-fonts"))) - (apply install args) - (substitute* xpdfrc + (modify-phases %standard-phases + (replace 'install + (lambda* (#:key outputs inputs #:allow-other-keys #:rest args) + (let* ((install (assoc-ref %standard-phases 'install)) + (out (assoc-ref outputs "out")) + (xpdfrc (string-append out "/etc/xpdfrc")) + (gs-fonts (assoc-ref inputs "gs-fonts"))) + (apply install args) + (substitute* xpdfrc (("/usr/local/share/ghostscript/fonts") (string-append gs-fonts "/share/fonts/type1/ghostscript")) - (("#fontFile") "fontFile")))) - %standard-phases))) + (("#fontFile") "fontFile"))) + #t))))) (synopsis "Viewer for PDF files based on the Motif toolkit") (description "Xpdf is a viewer for Portable Document Format (PDF) files.") @@ -343,7 +343,7 @@ reading and editing of existing PDF files.") "CC=gcc") #:tests? #f ; Package does not contain tests. #:phases - (alist-delete 'configure %standard-phases))) + (modify-phases %standard-phases (delete 'configure)))) (home-page "https://pwmt.org/projects/zathura-cb/") (synopsis "Comic book support for zathura (libarchive backend)") (description "The zathura-cb plugin adds comic book support to zathura @@ -374,7 +374,7 @@ using libarchive.") "CC=gcc") #:tests? #f ; Package does not contain tests. #:phases - (alist-delete 'configure %standard-phases))) + (modify-phases %standard-phases (delete 'configure)))) (home-page "https://pwmt.org/projects/zathura-ps/") (synopsis "PS support for zathura (libspectre backend)") (description "The zathura-ps plugin adds PS support to zathura @@ -406,7 +406,7 @@ using libspectre.") "CC=gcc") #:tests? #f ; Package does not contain tests. #:phases - (alist-delete 'configure %standard-phases))) + (modify-phases %standard-phases (delete 'configure)))) (home-page "https://pwmt.org/projects/zathura-djvu/") (synopsis "DjVu support for zathura (DjVuLibre backend)") (description "The zathura-djvu plugin adds DjVu support to zathura @@ -439,7 +439,7 @@ using the DjVuLibre library.") "CC=gcc") #:tests? #f ; Package does not include tests. #:phases - (alist-delete 'configure %standard-phases))) + (modify-phases %standard-phases (delete 'configure)))) (home-page "https://pwmt.org/projects/zathura-pdf-poppler/") (synopsis "PDF support for zathura (poppler backend)") (description "The zathura-pdf-poppler plugin adds PDF support to zathura @@ -477,7 +477,7 @@ by using the poppler rendering engine.") #:tests? #f ; Tests fail: "Gtk cannot open display". #:test-target "test" #:phases - (alist-delete 'configure %standard-phases))) + (modify-phases %standard-phases (delete 'configure)))) (home-page "https://pwmt.org/projects/zathura/") (synopsis "Lightweight keyboard-driven PDF viewer") (description "Zathura is a customizable document viewer. It provides a @@ -510,14 +510,14 @@ interaction.") `(#:configure-flags '("-DPODOFO_BUILD_SHARED=ON" "-DPODOFO_BUILD_STATIC=ON") #:phases - (alist-cons-before - 'configure 'patch - (lambda* (#:key inputs #:allow-other-keys) - (let ((freetype (assoc-ref inputs "freetype"))) - ;; Look for freetype include files in the correct place. - (substitute* "cmake/modules/FindFREETYPE.cmake" - (("/usr/local") freetype)))) - %standard-phases))) + (modify-phases %standard-phases + (add-before 'configure 'patch + (lambda* (#:key inputs #:allow-other-keys) + (let ((freetype (assoc-ref inputs "freetype"))) + ;; Look for freetype include files in the correct place. + (substitute* "cmake/modules/FindFREETYPE.cmake" + (("/usr/local") freetype))) + #t))))) (home-page "http://podofo.sourceforge.net") (synopsis "Tools to work with the PDF file format") (description @@ -763,12 +763,13 @@ the PDF pages.") "0bw224vb7jh0lrqaf4jgxk48xglvxs674qcpj5y0axyfbh896cfk")))) (build-system gnu-build-system) (arguments - '(#:phases (alist-cons-after - 'unpack 'patch-ldconfig - (lambda _ - (substitute* "mk/Autoconf.mk" - (("/sbin/ldconfig -p") "echo lib")) #t) - (alist-delete 'configure %standard-phases)) + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-ldconfig + (lambda _ + (substitute* "mk/Autoconf.mk" + (("/sbin/ldconfig -p") "echo lib")) #t)) + (delete 'configure)) #:tests? #f #:make-flags (list "CC=gcc" (string-append "prefix=" (assoc-ref %outputs "out"))))) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 09d6798177..e8e6d64cd3 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -3166,11 +3166,9 @@ at the end of the scope.") (build-system perl-build-system) (arguments `(#:phases - (alist-cons-after - 'unpack 'cd - (lambda* _ - (chdir "List")) - %standard-phases))) + (modify-phases %standard-phases + (add-after 'unpack 'cd + (lambda _ (chdir "List") #t))))) (license (package-license perl)) (synopsis "Perl extension for crawling directory trees and compiling lists of files") @@ -7342,16 +7340,17 @@ contents of a file is equal to a particular string.") "0chiqnzmna2mglm37nzxvn9qhq2j31iwz3i9isqjs7bf3k449gb9")))) (build-system perl-build-system) (arguments - `(#:phases (alist-cons-before - 'check 'patch-test - (lambda* (#:key inputs #:allow-other-keys) - ;; This test looks for "#!/usr/bin/perl" in some source. - ;; Patch what the test looks for. - (substitute* "t/source.t" - (("#!/usr/bin/perl") - (string-append "#!" (assoc-ref inputs "perl") - "/bin/perl")))) - %standard-phases))) + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'patch-test + (lambda* (#:key inputs #:allow-other-keys) + ;; This test looks for "#!/usr/bin/perl" in some source. + ;; Patch what the test looks for. + (substitute* "t/source.t" + (("#!/usr/bin/perl") + (string-append "#!" (assoc-ref inputs "perl") + "/bin/perl"))) + #t))))) (home-page "http://search.cpan.org/dist/Test-Harness") (synopsis "Run Perl standard test scripts with statistics") (description "Simple test harness which allows tests to be run and results diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm index f5e43af4f4..c1b196f438 100644 --- a/gnu/packages/photo.scm +++ b/gnu/packages/photo.scm @@ -152,13 +152,14 @@ from digital cameras.") ("libexif" ,libexif) ("libgphoto2" ,libgphoto2))) (arguments - '(#:phases (alist-cons-before - 'check 'pre-check - (lambda* (#:key inputs #:allow-other-keys) - (substitute* (find-files "tests/data" "\\.param$") - (("/usr/bin/env") - (which "env")))) - %standard-phases) + '(#:phases + (modify-phases %standard-phases + (add-before 'check 'pre-check + (lambda* (#:key inputs #:allow-other-keys) + (substitute* (find-files "tests/data" "\\.param$") + (("/usr/bin/env") + (which "env"))) + #t))) ;; FIXME: There are 2 test failures, most likely related to the build ;; environment. diff --git a/gnu/packages/popt.scm b/gnu/packages/popt.scm index 4978ea7290..9c125dcc4f 100644 --- a/gnu/packages/popt.scm +++ b/gnu/packages/popt.scm @@ -66,14 +66,15 @@ line syntax.") "1j2c61nn2n351nhj4d25mnf3vpiddcykq005w2h6kw79dwlysa77")))) (build-system gnu-build-system) (arguments - '(#:phases (alist-cons-before - 'configure 'patch-test - (lambda _ - (substitute* "test-poptrc.in" - (("/bin/echo") (which "echo"))) - (substitute* "testit.sh" ; don't expect old libtool names - (("lt-test1") "test1"))) - %standard-phases))) + '(#:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-test + (lambda _ + (substitute* "test-poptrc.in" + (("/bin/echo") (which "echo"))) + (substitute* "testit.sh" ; don't expect old libtool names + (("lt-test1") "test1")) + #t))))) (home-page "http://rpm5.org/files/popt/") (synopsis "Command line option parsing library") (description diff --git a/gnu/packages/pretty-print.scm b/gnu/packages/pretty-print.scm index 9de2819749..e971930035 100644 --- a/gnu/packages/pretty-print.scm +++ b/gnu/packages/pretty-print.scm @@ -205,22 +205,23 @@ to @code{IOStreams}.") (list (string-append "--with-boost=" (assoc-ref %build-inputs "boost"))) #:parallel-tests? #f ;There appear to be race conditions - #:phases (alist-cons-before - 'check 'patch-test-files - (lambda _ - ;; Unpatch shebangs in test input so that source-highlight - ;; is still able to infer input language - (substitute* '("tests/test.sh" - "tests/test2.sh" - "tests/test.tcl") - (((string-append "#! *" (which "sh"))) "#!/bin/sh")) - ;; Initial patching unrecoverably removes whitespace, so - ;; remove it also in the comparison output. - (substitute* '("tests/test.sh.html" - "tests/test2.sh.html" - "tests/test.tcl.html") - (("#! */bin/sh") "#!/bin/sh"))) - %standard-phases))) + #:phases + (modify-phases %standard-phases + (add-before 'check 'patch-test-files + (lambda _ + ;; Unpatch shebangs in test input so that source-highlight + ;; is still able to infer input language + (substitute* '("tests/test.sh" + "tests/test2.sh" + "tests/test.tcl") + (((string-append "#! *" (which "sh"))) "#!/bin/sh")) + ;; Initial patching unrecoverably removes whitespace, so + ;; remove it also in the comparison output. + (substitute* '("tests/test.sh.html" + "tests/test2.sh.html" + "tests/test.tcl.html") + (("#! */bin/sh") "#!/bin/sh")) + #t))))) (home-page "https://www.gnu.org/software/src-highlite/") (synopsis "Produce a document with syntax highlighting from a source file") (description @@ -292,22 +293,22 @@ highlighting. Language definitions and color themes are customizable.") #:make-flags (list (string-append "prefix=" %output) "INSTALL=install" "all") - #:phases (alist-replace - 'configure - (lambda _ (chdir "build/gcc")) - (alist-cons-after - 'install 'install-libs - (lambda* (#:key outputs #:allow-other-keys) - ;; Libraries are not installed by default - (let* ((output (assoc-ref outputs "out")) - (libdir (string-append output "/lib"))) - (begin - (mkdir-p libdir) - (for-each (lambda (l) - (copy-file - l (string-append libdir "/" (basename l)))) - (find-files "bin" "lib*"))))) - %standard-phases)))) + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda _ (chdir "build/gcc") #t)) + (add-after 'install 'install-libs + (lambda* (#:key outputs #:allow-other-keys) + ;; Libraries are not installed by default + (let* ((output (assoc-ref outputs "out")) + (libdir (string-append output "/lib"))) + (begin + (mkdir-p libdir) + (for-each (lambda (l) + (copy-file + l (string-append libdir "/" (basename l)))) + (find-files "bin" "lib*")))) + #t))))) (home-page "http://astyle.sourceforge.net/") (synopsis "Source code indenter, formatter, and beautifier") (description diff --git a/gnu/packages/pumpio.scm b/gnu/packages/pumpio.scm index a74d474368..e89418b6b1 100644 --- a/gnu/packages/pumpio.scm +++ b/gnu/packages/pumpio.scm @@ -42,22 +42,23 @@ (file-name (string-append name "-" version "-checkout")))) (build-system gnu-build-system) (arguments - '(#:phases (alist-replace - 'configure - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; Fix dependency tests. - (substitute* "pumpa.pro" - (("/usr/include/tidy\\.h") - (string-append (assoc-ref inputs "tidy") - "/include/tidy.h")) - (("/usr/include/aspell.h") - (string-append (assoc-ref inputs "aspell") - "/include/aspell.h"))) - ;; Run qmake with proper installation prefix. - (let ((prefix (string-append "PREFIX=" - (assoc-ref outputs "out")))) - (zero? (system* "qmake" prefix)))) - %standard-phases))) + '(#:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Fix dependency tests. + (substitute* "pumpa.pro" + (("/usr/include/tidy\\.h") + (string-append (assoc-ref inputs "tidy") + "/include/tidy.h")) + (("/usr/include/aspell.h") + (string-append (assoc-ref inputs "aspell") + "/include/aspell.h"))) + ;; Run qmake with proper installation prefix. + (let ((prefix (string-append "PREFIX=" + (assoc-ref outputs "out")))) + (zero? (system* "qmake" prefix))) + #t))))) (inputs `(("aspell" ,aspell) ("qtbase" ,qtbase) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 223a308fb4..86fd00d4fa 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -485,11 +485,10 @@ pidof, tty, taskset, pmap.") `(("python-py-bcrypt" ,python-py-bcrypt))) (arguments `(#:phases - (alist-cons-before - 'check 'set-PYTHON_EGG_CACHE - ;; some tests require access to "$HOME/.cython" - (lambda* _ (setenv "PYTHON_EGG_CACHE" "/tmp")) - %standard-phases))) + (modify-phases %standard-phases + (add-before 'check 'set-PYTHON_EGG_CACHE + ;; some tests require access to "$HOME/.cython" + (lambda* _ (setenv "PYTHON_EGG_CACHE" "/tmp") #t))))) (home-page "https://bitbucket.org/ecollins/passlib") (synopsis "Comprehensive password hashing framework") @@ -1079,12 +1078,10 @@ multiple Unicode code points, e.g. \"G\" + acute-accent) ("gmp" ,gmp))) (arguments `(#:phases - (alist-cons-before - 'build 'set-build-env - ;; pycrypto runs an autoconf configure script behind the scenes - (lambda _ - (setenv "CONFIG_SHELL" (which "bash"))) - %standard-phases))) + (modify-phases %standard-phases + (add-before 'build 'set-build-env + ;; pycrypto runs an autoconf configure script behind the scenes + (lambda _ (setenv "CONFIG_SHELL" (which "bash")) #t))))) (home-page "http://www.pycrypto.org/") (synopsis "Cryptographic modules for Python") (description @@ -1496,11 +1493,11 @@ other Python program.") (build-system python-build-system) (arguments `(#:python ,python-2 - #:phases (alist-replace - 'check - (lambda _ - (zero? (system* "./test.sh"))) - %standard-phases))) + #:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + (zero? (system* "./test.sh"))))))) (home-page "http://www.alcyone.com/software/empy/") (synopsis "Templating system for Python") (description @@ -4665,10 +4662,10 @@ as the original project seems to have been abandoned circa 2007.") ("python-pytest" ,python-pytest) ("python-mock" ,python-mock))) ;for tests (arguments - `(#:phases (alist-replace - 'check - (lambda _ (zero? (system* "py.test"))) - %standard-phases))) + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ (zero? (system* "py.test"))))))) (home-page "http://www.sqlalchemy.org") (synopsis "Database abstraction library") (description @@ -8581,10 +8578,10 @@ automatically detect a wide range of file encodings.") (native-inputs `(("python-pytest" ,python-pytest))) (arguments - `(#:phases (alist-replace - 'check - (lambda _ (zero? (system* "py.test"))) - %standard-phases))) + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ (zero? (system* "py.test"))))))) (home-page "http://docopt.org") (synopsis "Command-line interface description language for Python") (description "This library allows the user to define a command-line diff --git a/gnu/packages/rdf.scm b/gnu/packages/rdf.scm index 6b5cfb013c..fbd8a45ba0 100644 --- a/gnu/packages/rdf.scm +++ b/gnu/packages/rdf.scm @@ -127,26 +127,26 @@ Java Lucene text search engine API to C++.") "18p2flb2sv2hq6w2qkd29z9c7knnwqr3f12i2srshlzx6vwkm05s")))) (build-system gnu-build-system) (arguments - '(#:phases (alist-cons-after - 'remove-out-of-tree-references 'autoreconf - (lambda _ - (zero? (system* "autoreconf" "-vfi"))) - (alist-cons-after - 'unpack 'remove-out-of-tree-references - (lambda _ - ;; remove symlinks to files in /usr/ - (delete-file-recursively "m4") - (for-each delete-file '("config.guess" - "config.sub" - "depcomp" - "install-sh" - "ltmain.sh" - "missing")) - ;; remove_test depends on an out-of-tree RDF file - (substitute* "examples/Makefile.am" - (("instances_test remove_test") "instances_test") - (("\\$\\(TESTS\\) remove_test") "$(TESTS)"))) - %standard-phases)))) + '(#:phases + (modify-phases %standard-phases + (add-after 'remove-out-of-tree-references 'autoreconf + (lambda _ + (zero? (system* "autoreconf" "-vfi")))) + (add-after 'unpack 'remove-out-of-tree-references + (lambda _ + ;; remove symlinks to files in /usr/ + (delete-file-recursively "m4") + (for-each delete-file '("config.guess" + "config.sub" + "depcomp" + "install-sh" + "ltmain.sh" + "missing")) + ;; remove_test depends on an out-of-tree RDF file + (substitute* "examples/Makefile.am" + (("instances_test remove_test") "instances_test") + (("\\$\\(TESTS\\) remove_test") "$(TESTS)")) + #t))))) (inputs `(("raptor" ,raptor2) ("cyrus-sasl" ,cyrus-sasl) diff --git a/gnu/packages/regex.scm b/gnu/packages/regex.scm index f35d3e63aa..a49fd89bf2 100644 --- a/gnu/packages/regex.scm +++ b/gnu/packages/regex.scm @@ -85,16 +85,16 @@ Python. It is a C++ library.") "0n36cgqys59r2gmb7jzbqiwsy790v8nbxk82d2n2saz0rp145ild")))) (build-system gnu-build-system) (arguments - `(#:phases (alist-cons-before - 'check 'install-locales - (lambda _ - ;; The tests require the availability of the - ;; 'en_US.ISO-8859-1' locale. - (setenv "LOCPATH" (getcwd)) - (zero? (system* "localedef" "--no-archive" - "--prefix" (getcwd) "-i" "en_US" - "-f" "ISO-8859-1" "./en_US.ISO-8859-1"))) - %standard-phases))) + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'install-locales + (lambda _ + ;; The tests require the availability of the + ;; 'en_US.ISO-8859-1' locale. + (setenv "LOCPATH" (getcwd)) + (zero? (system* "localedef" "--no-archive" + "--prefix" (getcwd) "-i" "en_US" + "-f" "ISO-8859-1" "./en_US.ISO-8859-1"))))))) (synopsis "Approximate regex matching library and agrep utility") (description "Superset of the POSIX regex API, enabling approximate matching. Also ships a version of the agrep utility which behaves similar to diff --git a/gnu/packages/rrdtool.scm b/gnu/packages/rrdtool.scm index a07d705373..fbb6a3403b 100644 --- a/gnu/packages/rrdtool.scm +++ b/gnu/packages/rrdtool.scm @@ -53,15 +53,16 @@ (native-inputs `(("pkg-config" ,pkg-config) ("groff" ,groff))) (arguments - '(#:phases (alist-cons-before - 'configure 'pre-configure - (lambda _ - (substitute* "libtool" - (("/bin/sed") (which "sed"))) - (substitute* "src/Makefile.in" - (("^rrdcached_LDADD = librrd_th.la") - "rrdcached_LDADD = librrd_th.la -lglib-2.0"))) - %standard-phases))) + '(#:phases + (modify-phases %standard-phases + (add-before 'configure 'pre-configure + (lambda _ + (substitute* "libtool" + (("/bin/sed") (which "sed"))) + (substitute* "src/Makefile.in" + (("^rrdcached_LDADD = librrd_th.la") + "rrdcached_LDADD = librrd_th.la -lglib-2.0")) + #t))))) (home-page "http://oss.oetiker.ch/rrdtool/") (synopsis "Time-series data storage and display system") (description diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 42a0790522..58549e877d 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -150,16 +150,16 @@ a focus on simplicity and productivity.") `(#:test-target "test" #:parallel-tests? #f #:phases - (alist-cons-before - 'configure 'replace-bin-sh - (lambda _ - (substitute* '("Makefile.in" - "ext/pty/pty.c" - "io.c" - "lib/mkmf.rb" - "process.c") - (("/bin/sh") (which "sh")))) - %standard-phases))) + (modify-phases %standard-phases + (add-before 'configure 'replace-bin-sh + (lambda _ + (substitute* '("Makefile.in" + "ext/pty/pty.c" + "io.c" + "lib/mkmf.rb" + "process.c") + (("/bin/sh") (which "sh"))) + #t))))) (native-search-paths (list (search-path-specification (variable "GEM_PATH") @@ -184,16 +184,16 @@ a focus on simplicity and productivity.") `(#:test-target "test" #:parallel-tests? #f #:phases - (alist-cons-before - 'configure 'replace-bin-sh - (lambda _ - (substitute* '("Makefile.in" - "ext/pty/pty.c" - "io.c" - "lib/mkmf.rb" - "process.c") - (("/bin/sh") (which "sh")))) - %standard-phases))))) + (modify-phases %standard-phases + (add-before 'configure 'replace-bin-sh + (lambda _ + (substitute* '("Makefile.in" + "ext/pty/pty.c" + "io.c" + "lib/mkmf.rb" + "process.c") + (("/bin/sh") (which "sh"))) + #t))))))) (define-public ruby-hoe (package diff --git a/gnu/packages/sawfish.scm b/gnu/packages/sawfish.scm index 535dd8eb06..ebb8c5e1f0 100644 --- a/gnu/packages/sawfish.scm +++ b/gnu/packages/sawfish.scm @@ -138,31 +138,31 @@ backend of Sawfish.") (arguments '(#:tests? #f ; no tests #:phases - (alist-cons-before - 'configure 'patch-exec-rep - (lambda _ - (substitute* '("lisp/sawfish/cfg/main.jl.in" - "scripts/sawfish-about.jl.in" - "scripts/sawfish-client.jl" - "scripts/sawfish-menu.jl") - (("exec rep") (string-append "exec " (which "rep"))))) - (alist-cons-after - 'install 'wrap-scripts - ;; Wrap scripts with REP_DL_LOAD_PATH for finding rep-gtk - ;; and sawfish.client. - (lambda* (#:key outputs #:allow-other-keys) - (define (wrap-script script) - (let ((out (assoc-ref outputs "out"))) - (wrap-program (string-append out script) - `("REP_DL_LOAD_PATH" = - ,(list (getenv "REP_DL_LOAD_PATH") - (string-append out "/lib/rep")))))) - (for-each wrap-script - (list "/bin/sawfish-about" - "/bin/sawfish-client" - "/bin/sawfish-config" - "/lib/sawfish/sawfish-menu"))) - %standard-phases)))) + (modify-phases %standard-phases + (add-before 'configure 'patch-exec-rep + (lambda _ + (substitute* '("lisp/sawfish/cfg/main.jl.in" + "scripts/sawfish-about.jl.in" + "scripts/sawfish-client.jl" + "scripts/sawfish-menu.jl") + (("exec rep") (string-append "exec " (which "rep")))) + #t)) + (add-after 'install 'wrap-scripts + ;; Wrap scripts with REP_DL_LOAD_PATH for finding rep-gtk + ;; and sawfish.client. + (lambda* (#:key outputs #:allow-other-keys) + (define (wrap-script script) + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out script) + `("REP_DL_LOAD_PATH" = + ,(list (getenv "REP_DL_LOAD_PATH") + (string-append out "/lib/rep")))))) + (for-each wrap-script + (list "/bin/sawfish-about" + "/bin/sawfish-client" + "/bin/sawfish-config" + "/lib/sawfish/sawfish-menu")) + #t))))) (native-inputs `(("gettext" ,gettext-minimal) ("makeinfo" ,texinfo) diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm index 161138285e..bafc3da332 100644 --- a/gnu/packages/scheme.scm +++ b/gnu/packages/scheme.scm @@ -417,73 +417,73 @@ implementation techniques and as an expository tool.") (build-system gnu-build-system) (arguments '(#:phases - (alist-cons-before - 'configure 'pre-configure - (lambda* (#:key inputs #:allow-other-keys) - ;; Patch dynamically loaded libraries with their absolute paths. - (let* ((library-path (search-path-as-string->list - (getenv "LIBRARY_PATH"))) - (find-so (lambda (soname) - (search-path - library-path - (format #f "~a.so" soname)))) - (patch-ffi-libs (lambda (file libs) - (for-each - (lambda (lib) - (substitute* file - (((format #f "\"~a\"" lib)) - (format #f "\"~a\"" (find-so lib))))) - libs)))) - (substitute* "collects/db/private/sqlite3/ffi.rkt" - (("ffi-lib sqlite-so") - (format #f "ffi-lib \"~a\"" (find-so "libsqlite3")))) - (substitute* "collects/openssl/libssl.rkt" - (("ffi-lib libssl-so") - (format #f "ffi-lib \"~a\"" (find-so "libssl")))) - (substitute* "collects/openssl/libcrypto.rkt" - (("ffi-lib libcrypto-so") - (format #f "ffi-lib \"~a\"" (find-so "libcrypto")))) - (substitute* "share/pkgs/math-lib/math/private/bigfloat/gmp.rkt" - (("ffi-lib libgmp-so") - (format #f "ffi-lib \"~a\"" (find-so "libgmp")))) - (substitute* "share/pkgs/math-lib/math/private/bigfloat/mpfr.rkt" - (("ffi-lib libmpfr-so") - (format #f "ffi-lib \"~a\"" (find-so "libmpfr")))) - (for-each - (lambda (x) (apply patch-ffi-libs x)) - '(("share/pkgs/draw-lib/racket/draw/unsafe/cairo-lib.rkt" - ("libfontconfig" "libcairo")) - ("share/pkgs/draw-lib/racket/draw/unsafe/glib.rkt" - ("libglib-2.0" "libgmodule-2.0" "libgobject-2.0")) - ("share/pkgs/draw-lib/racket/draw/unsafe/jpeg.rkt" - ("libjpeg")) - ("share/pkgs/draw-lib/racket/draw/unsafe/pango.rkt" - ("libpango-1.0" "libpangocairo-1.0")) - ("share/pkgs/draw-lib/racket/draw/unsafe/png.rkt" - ("libpng")) - ("share/pkgs/db-lib/db/private/odbc/ffi.rkt" - ("libodbc")) - ("share/pkgs/gui-lib/mred/private/wx/gtk/x11.rkt" - ("libX11")) - ("share/pkgs/gui-lib/mred/private/wx/gtk/gsettings.rkt" - ("libgio-2.0")) - ("share/pkgs/gui-lib/mred/private/wx/gtk/gtk3.rkt" - ("libgdk-3" "libgtk-3")) - ("share/pkgs/gui-lib/mred/private/wx/gtk/unique.rkt" - ("libunique-1.0")) - ("share/pkgs/gui-lib/mred/private/wx/gtk/utils.rkt" - ("libgdk-x11-2.0" "libgdk_pixbuf-2.0" "libgtk-x11-2.0")) - ("share/pkgs/gui-lib/mred/private/wx/gtk/gl-context.rkt" - ("libGL")) - ("share/pkgs/sgl/gl.rkt" - ("libGL" "libGLU"))))) - (chdir "src")) - (alist-cons-after - 'unpack 'patch-/bin/sh - (lambda _ - (substitute* "collects/racket/system.rkt" - (("/bin/sh") (which "sh")))) - %standard-phases)) + (modify-phases %standard-phases + (add-before 'configure 'pre-configure + (lambda* (#:key inputs #:allow-other-keys) + ;; Patch dynamically loaded libraries with their absolute paths. + (let* ((library-path (search-path-as-string->list + (getenv "LIBRARY_PATH"))) + (find-so (lambda (soname) + (search-path + library-path + (format #f "~a.so" soname)))) + (patch-ffi-libs (lambda (file libs) + (for-each + (lambda (lib) + (substitute* file + (((format #f "\"~a\"" lib)) + (format #f "\"~a\"" (find-so lib))))) + libs)))) + (substitute* "collects/db/private/sqlite3/ffi.rkt" + (("ffi-lib sqlite-so") + (format #f "ffi-lib \"~a\"" (find-so "libsqlite3")))) + (substitute* "collects/openssl/libssl.rkt" + (("ffi-lib libssl-so") + (format #f "ffi-lib \"~a\"" (find-so "libssl")))) + (substitute* "collects/openssl/libcrypto.rkt" + (("ffi-lib libcrypto-so") + (format #f "ffi-lib \"~a\"" (find-so "libcrypto")))) + (substitute* "share/pkgs/math-lib/math/private/bigfloat/gmp.rkt" + (("ffi-lib libgmp-so") + (format #f "ffi-lib \"~a\"" (find-so "libgmp")))) + (substitute* "share/pkgs/math-lib/math/private/bigfloat/mpfr.rkt" + (("ffi-lib libmpfr-so") + (format #f "ffi-lib \"~a\"" (find-so "libmpfr")))) + (for-each + (lambda (x) (apply patch-ffi-libs x)) + '(("share/pkgs/draw-lib/racket/draw/unsafe/cairo-lib.rkt" + ("libfontconfig" "libcairo")) + ("share/pkgs/draw-lib/racket/draw/unsafe/glib.rkt" + ("libglib-2.0" "libgmodule-2.0" "libgobject-2.0")) + ("share/pkgs/draw-lib/racket/draw/unsafe/jpeg.rkt" + ("libjpeg")) + ("share/pkgs/draw-lib/racket/draw/unsafe/pango.rkt" + ("libpango-1.0" "libpangocairo-1.0")) + ("share/pkgs/draw-lib/racket/draw/unsafe/png.rkt" + ("libpng")) + ("share/pkgs/db-lib/db/private/odbc/ffi.rkt" + ("libodbc")) + ("share/pkgs/gui-lib/mred/private/wx/gtk/x11.rkt" + ("libX11")) + ("share/pkgs/gui-lib/mred/private/wx/gtk/gsettings.rkt" + ("libgio-2.0")) + ("share/pkgs/gui-lib/mred/private/wx/gtk/gtk3.rkt" + ("libgdk-3" "libgtk-3")) + ("share/pkgs/gui-lib/mred/private/wx/gtk/unique.rkt" + ("libunique-1.0")) + ("share/pkgs/gui-lib/mred/private/wx/gtk/utils.rkt" + ("libgdk-x11-2.0" "libgdk_pixbuf-2.0" "libgtk-x11-2.0")) + ("share/pkgs/gui-lib/mred/private/wx/gtk/gl-context.rkt" + ("libGL")) + ("share/pkgs/sgl/gl.rkt" + ("libGL" "libGLU"))))) + (chdir "src") + #t)) + (add-after 'unpack 'patch-/bin/sh + (lambda _ + (substitute* "collects/racket/system.rkt" + (("/bin/sh") (which "sh"))) + #t))) #:tests? #f ; XXX: how to run them? )) (inputs diff --git a/gnu/packages/sdl.scm b/gnu/packages/sdl.scm index af598ecb46..ca996e9844 100644 --- a/gnu/packages/sdl.scm +++ b/gnu/packages/sdl.scm @@ -405,30 +405,30 @@ directory.") (assoc-ref %build-inputs "sdl-union"))) #:parallel-build? #f ; parallel build fails #:phases - (alist-cons-before - 'configure 'fix-env-and-patch - (lambda* (#:key inputs #:allow-other-keys) - (setenv "GUILE_AUTO_COMPILE" "0") - ;; SDL_image needs to dlopen libjpeg in the test suite. - (setenv "LD_LIBRARY_PATH" - (string-append (assoc-ref inputs "libjpeg") "/lib")) - ;; Change the site directory /site/2.0 like Guile expects. - (substitute* "build-aux/guile-baux/re-prefixed-site-dirs" - (("\"/site\"") "\"/site/2.0\"")) + (modify-phases %standard-phases + (add-before 'configure 'fix-env-and-patch + (lambda* (#:key inputs #:allow-other-keys) + (setenv "GUILE_AUTO_COMPILE" "0") + ;; SDL_image needs to dlopen libjpeg in the test suite. + (setenv "LD_LIBRARY_PATH" + (string-append (assoc-ref inputs "libjpeg") "/lib")) + ;; Change the site directory /site/2.0 like Guile expects. + (substitute* "build-aux/guile-baux/re-prefixed-site-dirs" + (("\"/site\"") "\"/site/2.0\"")) - ;; Skip tests that rely on sound support, which is unavailable in - ;; the build environment. - (substitute* "test/Makefile.in" - (("HAVE_MIXER = .*$") - "HAVE_MIXER = 0\n"))) - (alist-cons-before - 'check 'start-xorg-server - (lambda* (#:key inputs #:allow-other-keys) - ;; The test suite requires a running X server. - (system (format #f "~a/bin/Xvfb :1 &" - (assoc-ref inputs "xorg-server"))) - (setenv "DISPLAY" ":1")) - %standard-phases)))) + ;; Skip tests that rely on sound support, which is unavailable in + ;; the build environment. + (substitute* "test/Makefile.in" + (("HAVE_MIXER = .*$") + "HAVE_MIXER = 0\n")) + #t)) + (add-before 'check 'start-xorg-server + (lambda* (#:key inputs #:allow-other-keys) + ;; The test suite requires a running X server. + (system (format #f "~a/bin/Xvfb :1 &" + (assoc-ref inputs "xorg-server"))) + (setenv "DISPLAY" ":1") + #t))))) (synopsis "Guile interface for SDL (Simple DirectMedia Layer)") (description "Guile-SDL is a set of bindings to the Simple DirectMedia Layer (SDL). With them, Guile programmers can have easy access to graphics, diff --git a/gnu/packages/serveez.scm b/gnu/packages/serveez.scm index 974db86115..871fb00d3b 100644 --- a/gnu/packages/serveez.scm +++ b/gnu/packages/serveez.scm @@ -40,13 +40,14 @@ (inputs `(("guile" ,guile-2.0))) (arguments `(#:configure-flags '("--enable-libserveez-install") - #:phases (alist-cons-before - 'patch-source-shebangs 'patch-test-source - (lambda _ - (substitute* - (find-files "test" "^t[0-9]{3}$") - (("/bin/sh") (which "sh")))) - %standard-phases))) + #:phases + (modify-phases %standard-phases + (add-before 'patch-source-shebangs 'patch-test-source + (lambda _ + (substitute* + (find-files "test" "^t[0-9]{3}$") + (("/bin/sh") (which "sh"))) + #t))))) (home-page "https://www.gnu.org/software/serveez/") (synopsis "Framework for implementing IP-based servers") (description diff --git a/gnu/packages/skribilo.scm b/gnu/packages/skribilo.scm index 458d91e569..87dc3558de 100644 --- a/gnu/packages/skribilo.scm +++ b/gnu/packages/skribilo.scm @@ -46,20 +46,21 @@ (assoc-ref %outputs "out") "/share/guile/site/2.0")) - #:phases (alist-cons-before - 'configure 'pre-configure - (lambda* (#:key inputs #:allow-other-keys) - ;; Make sure the 'skribilo' command gets to see - ;; Guile-Reader, even if Guile-Reader is not in the search - ;; path. - (let ((reader (assoc-ref inputs "guile-reader"))) - (substitute* "src/skribilo.in" - (("^exec (.*) -c" _ things) - (string-append "exec " things - " -L " reader "/share/guile/site/2.0" - " -C " reader "/share/guile/site/2.0" - " -c"))))) - %standard-phases) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'pre-configure + (lambda* (#:key inputs #:allow-other-keys) + ;; Make sure the 'skribilo' command gets to see + ;; Guile-Reader, even if Guile-Reader is not in the search + ;; path. + (let ((reader (assoc-ref inputs "guile-reader"))) + (substitute* "src/skribilo.in" + (("^exec (.*) -c" _ things) + (string-append "exec " things + " -L " reader "/share/guile/site/2.0" + " -C " reader "/share/guile/site/2.0" + " -c")))) + #t))) #:parallel-build? #f)) diff --git a/gnu/packages/smalltalk.scm b/gnu/packages/smalltalk.scm index f4a50ded22..a0d6c86dff 100644 --- a/gnu/packages/smalltalk.scm +++ b/gnu/packages/smalltalk.scm @@ -60,14 +60,15 @@ (inputs `(("zip" ,zip))) (arguments - `(#:phases (alist-cons-before - 'configure 'fix-libc - (lambda _ - (let ((libc (assoc-ref %build-inputs "libc"))) - (substitute* "libc.la.in" - (("@LIBC_SO_NAME@") "libc.so") - (("@LIBC_SO_DIR@") (string-append libc "/lib"))))) - %standard-phases))) + `(#:phases + (modify-phases %standard-phases + (add-before 'configure 'fix-libc + (lambda _ + (let ((libc (assoc-ref %build-inputs "libc"))) + (substitute* "libc.la.in" + (("@LIBC_SO_NAME@") "libc.so") + (("@LIBC_SO_DIR@") (string-append libc "/lib")))) + #t))))) (home-page "http://smalltalk.gnu.org/") (synopsis "Smalltalk environment") (description diff --git a/gnu/packages/suckless.scm b/gnu/packages/suckless.scm index 1d3d1d367f..15f4755103 100644 --- a/gnu/packages/suckless.scm +++ b/gnu/packages/suckless.scm @@ -154,7 +154,7 @@ optimising the environment for the application in use and the task performed.") (assoc-ref %build-inputs "freetype") "/include/freetype2")) #:phases - (alist-delete 'configure %standard-phases))) + (modify-phases %standard-phases (delete 'configure)))) (inputs `(("freetype" ,freetype) ("libxft" ,libxft) @@ -211,7 +211,7 @@ numbers of user-defined menu items efficiently.") '(#:tests? #f ; no tests #:make-flags (list "CC=gcc" (string-append "PREFIX=" %output)) - #:phases (alist-delete 'configure %standard-phases))) + #:phases (modify-phases %standard-phases (delete 'configure)))) (inputs `(("libx11" ,libx11) ("libxext" ,libxext) diff --git a/gnu/packages/tcl.scm b/gnu/packages/tcl.scm index e0ce6df421..a4129e0899 100644 --- a/gnu/packages/tcl.scm +++ b/gnu/packages/tcl.scm @@ -114,13 +114,14 @@ (string-append "--exec-prefix=" out) (string-append "--mandir=" out "/share/man"))) - #:phases (alist-cons-before - 'configure 'set-path-to-stty - (lambda _ - (substitute* "configure" - (("STTY_BIN=/bin/stty") - (string-append "STTY_BIN=" (which "stty"))))) - %standard-phases) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'set-path-to-stty + (lambda _ + (substitute* "configure" + (("STTY_BIN=/bin/stty") + (string-append "STTY_BIN=" (which "stty")))) + #t))) #:test-target "test")) (home-page "http://expect.nist.gov/") diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm index 5751015260..5df5e9e4ab 100644 --- a/gnu/packages/telephony.scm +++ b/gnu/packages/telephony.scm @@ -56,12 +56,12 @@ "0kmgr5w3b1qwzxnsnw94q6rqs0hr8nbv9clf07ca2a2fyypx9kjk")))) (arguments `(#:phases - (alist-cons-before - 'configure 'pre-configure - (lambda _ - (substitute* "src/applog.cpp" - (("^// TODO sc.*") "#include \n#include \n"))) - %standard-phases))) + (modify-phases %standard-phases + (add-before 'configure 'pre-configure + (lambda _ + (substitute* "src/applog.cpp" + (("^// TODO sc.*") "#include \n#include \n")) + #t))))) (build-system gnu-build-system) (synopsis "(u)Common C++ framework for threaded applications") (description "GNU Common C++ is an portable, optimized class framework for diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm index 3359ab4845..2007a25d93 100644 --- a/gnu/packages/textutils.scm +++ b/gnu/packages/textutils.scm @@ -97,15 +97,15 @@ to DOS format and vice versa.") (native-inputs `(("python" ,python-2))) (arguments '(#:phases - (alist-cons-before - 'check 'pre-check - (lambda _ - (substitute* "tests/setup.py" - (("([[:space:]]*)include_dirs=.*" all space) - (string-append all space "library_dirs=['../src/.libs'],\n"))) - ;; The test extension 'Recode.so' lacks RUNPATH for 'librecode.so'. - (setenv "LD_LIBRARY_PATH" (string-append (getcwd) "/src/.libs"))) - %standard-phases))) + (modify-phases %standard-phases + (add-before 'check 'pre-check + (lambda _ + (substitute* "tests/setup.py" + (("([[:space:]]*)include_dirs=.*" all space) + (string-append all space "library_dirs=['../src/.libs'],\n"))) + ;; The test extension 'Recode.so' lacks RUNPATH for 'librecode.so'. + (setenv "LD_LIBRARY_PATH" (string-append (getcwd) "/src/.libs")) + #t))))) (home-page "https://github.com/pinard/Recode") (synopsis "Text encoding converter") (description "The Recode library converts files between character sets and @@ -208,10 +208,9 @@ encoding, supporting Unicode version 9.0.0.") (build-system gnu-build-system) (arguments '(#:phases - (alist-cons-after - 'unpack 'autoreconf - (lambda _ (zero? (system* "autoreconf" "-vif"))) - %standard-phases))) + (modify-phases %standard-phases + (add-after 'unpack 'autoreconf + (lambda _ (zero? (system* "autoreconf" "-vif"))))))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) diff --git a/gnu/packages/time.scm b/gnu/packages/time.scm index 4d3da87174..58055cd13e 100644 --- a/gnu/packages/time.scm +++ b/gnu/packages/time.scm @@ -41,16 +41,16 @@ (build-system gnu-build-system) (arguments '(#:phases - (alist-replace 'configure - (lambda* (#:key outputs #:allow-other-keys) - ;; This old `configure' script doesn't support - ;; variables passed as arguments. - (let ((out (assoc-ref outputs "out"))) - (setenv "CONFIG_SHELL" (which "bash")) - (zero? - (system* "./configure" - (string-append "--prefix=" out))))) - %standard-phases))) + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + ;; This old `configure' script doesn't support + ;; variables passed as arguments. + (let ((out (assoc-ref outputs "out"))) + (setenv "CONFIG_SHELL" (which "bash")) + (zero? + (system* "./configure" + (string-append "--prefix=" out))))))))) (home-page "https://www.gnu.org/software/time/") (synopsis "Run a command, then display its resource usage") (description diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm index e2123557c1..fee9753673 100644 --- a/gnu/packages/tor.scm +++ b/gnu/packages/tor.scm @@ -134,13 +134,13 @@ rejects UDP traffic from the application you're using.") #:configure-flags (list (string-append "--sysconfdir=" (assoc-ref %outputs "out") "/etc/privoxy")) - #:phases (alist-cons-after - 'unpack 'autoconf - (lambda _ - ;; Unfortunately, this is not a tarball produced by - ;; "make dist". - (zero? (system* "autoreconf" "-vfi"))) - %standard-phases) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'autoconf + (lambda _ + ;; Unfortunately, this is not a tarball produced by + ;; "make dist". + (zero? (system* "autoreconf" "-vfi"))))) #:tests? #f)) (inputs `(("w3m" ,w3m) diff --git a/gnu/packages/uucp.scm b/gnu/packages/uucp.scm index 7bfe76365f..f5d9c70052 100644 --- a/gnu/packages/uucp.scm +++ b/gnu/packages/uucp.scm @@ -35,18 +35,18 @@ "0b5nhl9vvif1w3wdipjsk8ckw49jj1w85xw1mmqi3zbcpazia306")))) (build-system gnu-build-system) (arguments - '(#:phases (alist-replace - 'configure - (lambda* (#:key outputs #:allow-other-keys) - ;; The old 'configure' script doesn't support the arguments - ;; that we pass by default. - (setenv "CONFIG_SHELL" (which "sh")) - (let ((out (assoc-ref outputs "out"))) - (zero? (system* "./configure" - (string-append "--prefix=" out) - (string-append "--infodir=" out - "/share/info"))))) - %standard-phases))) + '(#:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + ;; The old 'configure' script doesn't support the arguments + ;; that we pass by default. + (setenv "CONFIG_SHELL" (which "sh")) + (let ((out (assoc-ref outputs "out"))) + (zero? (system* "./configure" + (string-append "--prefix=" out) + (string-append "--infodir=" out + "/share/info"))))))))) (home-page "https://www.gnu.org/software/uucp/uucp.html") (synopsis "UUCP protocol implementation") (description diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index f58d9b9eca..48aac3813c 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1399,11 +1399,10 @@ encapsulated.") ("libtool" ,libtool))) (arguments '(#:phases - (alist-cons-after - 'unpack 'autoreconf - (lambda _ - (zero? (system* "autoreconf" "-vif"))) - %standard-phases))))) + (modify-phases %standard-phases + (add-after 'unpack 'autoreconf + (lambda _ + (zero? (system* "autoreconf" "-vif"))))))))) (define-public libdvdcss (package diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm index 3e91b4e89b..d401ce31c8 100644 --- a/gnu/packages/web-browsers.scm +++ b/gnu/packages/web-browsers.scm @@ -165,11 +165,11 @@ features including, tables, builtin image display, bookmarks, SSL and more.") "--enable-nls" "--enable-ipv6")) #:tests? #f ; no check target - #:phases (alist-replace - 'install - (lambda* (#:key (make-flags '()) #:allow-other-keys) - (zero? (apply system* "make" "install-full" make-flags))) - %standard-phases))) + #:phases + (modify-phases %standard-phases + (replace 'install + (lambda* (#:key (make-flags '()) #:allow-other-keys) + (zero? (apply system* "make" "install-full" make-flags))))))) (synopsis "Text Web Browser") (description "Lynx is a fully-featured World Wide Web (WWW) client for users running diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 6c9316a401..c008d8f323 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -677,14 +677,13 @@ used to validate and fix HTML data.") ;; For the log file, etc. "--localstatedir=/var") #:phases - (alist-cons-before - 'build 'pre-build - (lambda* (#:key inputs #:allow-other-keys #:rest args) - ;; Uncommenting the next two lines may assist in debugging - ;; (substitute* "docs/man5/Makefile" (("a2x") "a2x -v")) - ;; (setenv "XML_DEBUG_CATALOG" "1") - #t) - %standard-phases))) + (modify-phases %standard-phases + (add-before 'build 'pre-build + (lambda* (#:key inputs #:allow-other-keys #:rest args) + ;; Uncommenting the next two lines may assist in debugging + ;; (substitute* "docs/man5/Makefile" (("a2x") "a2x -v")) + ;; (setenv "XML_DEBUG_CATALOG" "1") + #t))))) ;; All of the below are used to generate the documentation ;; (Should they be propagated inputs of asciidoc ??) (native-inputs `(("asciidoc" ,asciidoc))) diff --git a/gnu/packages/wicd.scm b/gnu/packages/wicd.scm index 9de956c6ff..4b03c07bc4 100644 --- a/gnu/packages/wicd.scm +++ b/gnu/packages/wicd.scm @@ -71,123 +71,121 @@ ;; we can't easily make setup.py use setuptools. #:use-setuptools? #f #:phases - (alist-cons-before - 'build 'configure - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (python (assoc-ref inputs "python"))) - (define (which* cmd) - (cond ((string=? cmd "ping") - "/run/setuid-programs/ping") - ((which cmd) - => identity) - (else - (format (current-error-port) - "WARNING: Unable to find absolute path for ~s~%" - cmd) - #f))) - (substitute* "setup.py" - ;; The handling of unrecognized distros in setup.py is - ;; broken. Work around the problem. - (("\\('init=', " all) - (string-append "#" all)) - ;; Inhibit attempts to install in /var or /etc. - (("\\(wpath\\.(log|etc|networks|.*scripts), " all) - (string-append "#" all))) + (modify-phases %standard-phases + (add-before 'build 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (python (assoc-ref inputs "python"))) + (define (which* cmd) + (cond ((string=? cmd "ping") + "/run/setuid-programs/ping") + ((which cmd) + => identity) + (else + (format (current-error-port) + "WARNING: Unable to find absolute path for ~s~%" + cmd) + #f))) + (substitute* "setup.py" + ;; The handling of unrecognized distros in setup.py is + ;; broken. Work around the problem. + (("\\('init=', " all) + (string-append "#" all)) + ;; Inhibit attempts to install in /var or /etc. + (("\\(wpath\\.(log|etc|networks|.*scripts), " all) + (string-append "#" all))) - ;; Patch references to subprograms with absolute pathnames. - (substitute* "wicd/wnettools.py" - (("(misc\\.Run\\(\\[?[\"'])([^\"' ]*)" all pre cmd) - (string-append pre (which* cmd))) - (("(self\\._find_program_path|misc\\.find_path)\\([\"']([^\"']*)[\"']\\)" - all dummy cmd) - (let ((pathname (which* cmd))) - (if pathname - (string-append "'" pathname "'") - "None"))) - (("([\"'])(ifconfig|route|wpa_cli|wpa_supplicant|iwconfig|iwpriv|iwlist|ping)" - all open-quote cmd) - (string-append open-quote (which* cmd)))) + ;; Patch references to subprograms with absolute pathnames. + (substitute* "wicd/wnettools.py" + (("(misc\\.Run\\(\\[?[\"'])([^\"' ]*)" all pre cmd) + (string-append pre (which* cmd))) + (("(self\\._find_program_path|misc\\.find_path)\\([\"']([^\"']*)[\"']\\)" + all dummy cmd) + (let ((pathname (which* cmd))) + (if pathname + (string-append "'" pathname "'") + "None"))) + (("([\"'])(ifconfig|route|wpa_cli|wpa_supplicant|iwconfig|iwpriv|iwlist|ping)" + all open-quote cmd) + (string-append open-quote (which* cmd)))) - ;; setup.py cannot cope without LANG - (setenv "LANG" "C") + ;; setup.py cannot cope without LANG + (setenv "LANG" "C") - (let ((params - (list - (string-append "--python=" python "/bin/python") - "--no-install-init" - "--no-install-docs" - "--no-install-acpi" - "--no-install-pmutils" - "--no-install-kde" - "--no-install-gnome-shell-extensions" + (let ((params + (list + (string-append "--python=" python "/bin/python") + "--no-install-init" + "--no-install-docs" + "--no-install-acpi" + "--no-install-pmutils" + "--no-install-kde" + "--no-install-gnome-shell-extensions" - "--distro=guixsd" - "--wicdgroup=netdev" - "--loggroup=root" - "--logperms=0640" + "--distro=guixsd" + "--wicdgroup=netdev" + "--loggroup=root" + "--logperms=0640" - ;; XXX setup.py configure asks us to pass --init=, - ;; but if we do it says "no such option 'init'". - ;; (string-append "--init=" out "/etc/init.d") + ;; XXX setup.py configure asks us to pass --init=, + ;; but if we do it says "no such option 'init'". + ;; (string-append "--init=" out "/etc/init.d") - (string-append "--initfile=" out "/etc/init.d/wicd") - (string-append "--lib=" out "/lib/wicd") - (string-append "--share=" out "/share/wicd") + (string-append "--initfile=" out "/etc/init.d/wicd") + (string-append "--lib=" out "/lib/wicd") + (string-append "--share=" out "/share/wicd") - "--etc=/etc/wicd" - "--scripts=/etc/wicd/scripts" - "--pmutils=/etc/pm-utils/sleep.d" + "--etc=/etc/wicd" + "--scripts=/etc/wicd/scripts" + "--pmutils=/etc/pm-utils/sleep.d" - (string-append "--encryption=" - out "/etc/encryption/templates") - (string-append "--bin=" out "/bin") - (string-append "--sbin=" out "/sbin") - (string-append "--daemon=" out "/share/wicd/daemon") - (string-append "--backends=" out "/share/wicd/backends") - (string-append "--curses=" out "/share/wicd/curses") - (string-append "--gtk=" out "/share/wicd/gtk") - (string-append "--cli=" out "/share/wicd/cli") - (string-append "--gnome-shell-extensions=" - out "/share/gnome-shell-extensions") - (string-append "--icons=" out "/share/icons/hicolor") - (string-append "--pixmaps=" out "/share/pixmaps") - (string-append "--images=" out "/share/icons") - (string-append "--dbus=" out "/etc/dbus-1/system.d") - (string-append "--dbus-service=" - out "/share/dbus-1/system-services") - (string-append "--systemd=" out "/lib/systemd/system") - (string-append "--logrotate=" out "/etc/logrotate.d") - (string-append "--desktop=" out "/share/applications") - (string-append "--translations=" out "/share/locale") - (string-append "--autostart=" out "/etc/xdg/autostart") - (string-append "--docdir=" out "/share/doc/wicd") - (string-append "--mandir=" out "/share/man") - (string-append "--kdedir=" out "/share/autostart")))) - (format #t - "running ~s with command ~s and parameters ~s~%" - "python setup.py" "configure" params) - (zero? (apply system* "python" "setup.py" "configure" params))))) - (alist-cons-after - 'install 'post-install - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - ;; wicd's installer tries to put dhclient.conf.template.default - ;; in /etc/wicd/other, which is not available in the build - ;; environment, so here we install it manually in the output - ;; directory. - (let ((dest-dir (string-append out "/etc/wicd")) - (name "dhclient.conf.template.default")) - (install-file (string-append "other/" name) dest-dir)) + (string-append "--encryption=" + out "/etc/encryption/templates") + (string-append "--bin=" out "/bin") + (string-append "--sbin=" out "/sbin") + (string-append "--daemon=" out "/share/wicd/daemon") + (string-append "--backends=" out "/share/wicd/backends") + (string-append "--curses=" out "/share/wicd/curses") + (string-append "--gtk=" out "/share/wicd/gtk") + (string-append "--cli=" out "/share/wicd/cli") + (string-append "--gnome-shell-extensions=" + out "/share/gnome-shell-extensions") + (string-append "--icons=" out "/share/icons/hicolor") + (string-append "--pixmaps=" out "/share/pixmaps") + (string-append "--images=" out "/share/icons") + (string-append "--dbus=" out "/etc/dbus-1/system.d") + (string-append "--dbus-service=" + out "/share/dbus-1/system-services") + (string-append "--systemd=" out "/lib/systemd/system") + (string-append "--logrotate=" out "/etc/logrotate.d") + (string-append "--desktop=" out "/share/applications") + (string-append "--translations=" out "/share/locale") + (string-append "--autostart=" out "/etc/xdg/autostart") + (string-append "--docdir=" out "/share/doc/wicd") + (string-append "--mandir=" out "/share/man") + (string-append "--kdedir=" out "/share/autostart")))) + (format #t + "running ~s with command ~s and parameters ~s~%" + "python setup.py" "configure" params) + (zero? (apply system* "python" "setup.py" "configure" params)))))) + (add-after 'install 'post-install + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + ;; wicd's installer tries to put dhclient.conf.template.default + ;; in /etc/wicd/other, which is not available in the build + ;; environment, so here we install it manually in the output + ;; directory. + (let ((dest-dir (string-append out "/etc/wicd")) + (name "dhclient.conf.template.default")) + (install-file (string-append "other/" name) dest-dir)) - ;; Copy index.theme from hicolor-icon-theme. This is needed to - ;; allow wicd-gtk to find its icons. - (let ((hicolor (assoc-ref inputs "hicolor-icon-theme")) - (name "/share/icons/hicolor/index.theme")) - (install-file (string-append hicolor name) - (string-append out "/share/icons/hicolor"))) - #t)) - %standard-phases)))) + ;; Copy index.theme from hicolor-icon-theme. This is needed to + ;; allow wicd-gtk to find its icons. + (let ((hicolor (assoc-ref inputs "hicolor-icon-theme")) + (name "/share/icons/hicolor/index.theme")) + (install-file (string-append hicolor name) + (string-append out "/share/icons/hicolor"))) + #t)))))) (synopsis "Network connection manager") (description "Wicd is a network manager that aims to simplify wired and wireless networking.") diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index ea35a2873d..8b7e1bda53 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -115,7 +115,7 @@ nested include statements).") ("xcb-util-keysyms" ,xcb-util-keysyms) ("xcb-util-wm" ,xcb-util-wm))) (arguments - '(#:phases (alist-delete 'configure %standard-phases) + '(#:phases (modify-phases %standard-phases (delete 'configure)) #:tests? #f ; no check target #:make-flags (list "CC=gcc" (string-append "PREFIX=" %output)))) diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index ce3e7c81eb..5cf7596c00 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -689,7 +689,7 @@ Guile will work for XBindKeys.") ("xcb-util-keysyms" ,xcb-util-keysyms) ("xcb-util-wm" ,xcb-util-wm))) (arguments - '(#:phases (alist-delete 'configure %standard-phases) + '(#:phases (modify-phases %standard-phases (delete 'configure)) #:tests? #f ; no check target #:make-flags (list "CC=gcc" (string-append "PREFIX=" %output)))) @@ -796,7 +796,8 @@ within a single process.") (build-system gnu-build-system) (arguments `(#:tests? #f ; no check target - #:phases (alist-delete 'configure %standard-phases) ; no configure script + ;; no configure script + #:phases (modify-phases %standard-phases (delete 'configure)) #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")) "MANDIR=/share/man/man1" "CC=gcc"))) diff --git a/gnu/packages/xfce.scm b/gnu/packages/xfce.scm index b936dc45d9..7668a1d380 100644 --- a/gnu/packages/xfce.scm +++ b/gnu/packages/xfce.scm @@ -114,17 +114,17 @@ Xfce Desktop Environment.") (arguments '(#:phases ;; Run check after install phase to test dbus activation. - (alist-cons-after - 'install 'check - (lambda _ - (setenv "HOME" (getenv "TMPDIR")) ; xfconfd requires a writable HOME - ;; Run test-suite under a dbus session. - (setenv "XDG_DATA_DIRS" ; for finding org.xfce.Xfconf.service - (string-append %output "/share")) - ;; For the missing '/etc/machine-id'. - (setenv "DBUS_FATAL_WARNINGS" "0"); - (zero? (system* "dbus-launch" "make" "check"))) - (alist-delete 'check %standard-phases)))) + (modify-phases %standard-phases + (add-after 'install 'check + (lambda _ + (setenv "HOME" (getenv "TMPDIR")) ; xfconfd requires a writable HOME + ;; Run test-suite under a dbus session. + (setenv "XDG_DATA_DIRS" ; for finding org.xfce.Xfconf.service + (string-append %output "/share")) + ;; For the missing '/etc/machine-id'. + (setenv "DBUS_FATAL_WARNINGS" "0"); + (zero? (system* "dbus-launch" "make" "check")))) + (delete 'check)))) (native-inputs `(("pkg-config" ,pkg-config) ("intltool" ,intltool))) diff --git a/gnu/packages/xfig.scm b/gnu/packages/xfig.scm index 2e65000eb7..64ca57028f 100644 --- a/gnu/packages/xfig.scm +++ b/gnu/packages/xfig.scm @@ -159,44 +159,42 @@ selected in various ways. For text, 35 fonts are available.") (arguments `(#:tests? #f #:phases - (alist-replace - 'configure - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((imake (assoc-ref inputs "imake")) - (out (assoc-ref outputs "out"))) - (substitute* '("fig2dev/Imakefile" - "transfig/Imakefile") - (("XCOMM (BINDIR = )[[:graph:]]*" _ front) - (string-append front out "/bin")) - (("XCOMM USEINLINE") "USEINLINE") - ;; The variable name is deceptive. The directory is used as an - ;; installation path for bitmaps. - (("(XFIGLIBDIR =[[:blank:]]*)[[:graph:]]*" _ front) - (string-append front out "/lib")) - (("(XPMLIBDIR = )[[:graph:]]*" _ front) - (string-append front (assoc-ref inputs "libxpm") "/lib")) - (("(XPMINC = -I)[[:graph:]]*" _ front) - (string-append front (assoc-ref inputs "libxpm") "/include/X11")) - (("/usr/local/lib/fig2dev") (string-append out "/lib"))) - ;; The -a argument is required in order to pick up the correct paths - ;; to several X header files. - (zero? (system* "xmkmf" "-a")) - (substitute* '("Makefile" - "fig2dev/Makefile" - "transfig/Makefile") - ;; These imake variables somehow remain undefined - (("DefaultGcc2[[:graph:]]*Opt") "-O2") - ;; Reset a few variable defaults that are set in imake templates - ((imake) out) - (("(MANPATH = )[[:graph:]]*" _ front) - (string-append front out "/share/man")) - (("(CONFDIR = )([[:graph:]]*)" _ front default) - (string-append front out default))))) - (alist-cons-after - 'install 'install/doc - (lambda _ - (zero? (system* "make" "install.man"))) - %standard-phases)))) + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((imake (assoc-ref inputs "imake")) + (out (assoc-ref outputs "out"))) + (substitute* '("fig2dev/Imakefile" + "transfig/Imakefile") + (("XCOMM (BINDIR = )[[:graph:]]*" _ front) + (string-append front out "/bin")) + (("XCOMM USEINLINE") "USEINLINE") + ;; The variable name is deceptive. The directory is used as an + ;; installation path for bitmaps. + (("(XFIGLIBDIR =[[:blank:]]*)[[:graph:]]*" _ front) + (string-append front out "/lib")) + (("(XPMLIBDIR = )[[:graph:]]*" _ front) + (string-append front (assoc-ref inputs "libxpm") "/lib")) + (("(XPMINC = -I)[[:graph:]]*" _ front) + (string-append front (assoc-ref inputs "libxpm") "/include/X11")) + (("/usr/local/lib/fig2dev") (string-append out "/lib"))) + ;; The -a argument is required in order to pick up the correct paths + ;; to several X header files. + (zero? (system* "xmkmf" "-a")) + (substitute* '("Makefile" + "fig2dev/Makefile" + "transfig/Makefile") + ;; These imake variables somehow remain undefined + (("DefaultGcc2[[:graph:]]*Opt") "-O2") + ;; Reset a few variable defaults that are set in imake templates + ((imake) out) + (("(MANPATH = )[[:graph:]]*" _ front) + (string-append front out "/share/man")) + (("(CONFDIR = )([[:graph:]]*)" _ front default) + (string-append front out default)))))) + (add-after 'install 'install/doc + (lambda _ + (zero? (system* "make" "install.man"))))))) (home-page "http://www.xfig.org/") (synopsis "Create portable LaTeX figures") (description diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 57ba8a2db0..8554060315 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -114,26 +114,25 @@ ("xproto" ,xproto))) (arguments `(#:phases - (alist-cons-after - 'install 'install-data - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((cf-files (assoc-ref inputs "xorg-cf-files")) - (out (assoc-ref outputs "out")) - (unpack (assoc-ref %standard-phases 'unpack)) - (patch-source-shebangs - (assoc-ref %standard-phases 'patch-source-shebangs))) - (mkdir "xorg-cf-files") - (with-directory-excursion "xorg-cf-files" - (apply unpack (list #:source cf-files)) - (apply patch-source-shebangs (list #:source cf-files)) - (substitute* '("mingw.cf" "Imake.tmpl" "nto.cf" "os2.cf" - "linux.cf" "Amoeba.cf" "cygwin.cf") - (("/bin/sh") (which "bash"))) - (and (zero? (system* "./configure" - (string-append "SHELL=" (which "bash")) - (string-append "--prefix=" out))) - (zero? (system* "make" "install")))))) - %standard-phases))) + (modify-phases %standard-phases + (add-after 'install 'install-data + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((cf-files (assoc-ref inputs "xorg-cf-files")) + (out (assoc-ref outputs "out")) + (unpack (assoc-ref %standard-phases 'unpack)) + (patch-source-shebangs + (assoc-ref %standard-phases 'patch-source-shebangs))) + (mkdir "xorg-cf-files") + (with-directory-excursion "xorg-cf-files" + (apply unpack (list #:source cf-files)) + (apply patch-source-shebangs (list #:source cf-files)) + (substitute* '("mingw.cf" "Imake.tmpl" "nto.cf" "os2.cf" + "linux.cf" "Amoeba.cf" "cygwin.cf") + (("/bin/sh") (which "bash"))) + (and (zero? (system* "./configure" + (string-append "SHELL=" (which "bash")) + (string-append "--prefix=" out))) + (zero? (system* "make" "install")))))))))) (home-page "http://www.x.org") (synopsis "Source code configuration and build system") (description -- cgit v1.2.3 From dfe0bac420d97824a0f880344894b5a79600f31f Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 21 Sep 2017 20:26:23 +0200 Subject: gnu: lout: Revert changes from dc1d3cdef70f0e3c047c22. This caused `make` to error out like this: ERROR: In procedure primitive-load-path: ERROR: In procedure read_inner_expression: gnu/packages/lout.scm:31:12: unexpected ")" * gnu/packages/lout.scm (lout)[arguments]: Don't use 'modify-phases'. --- gnu/packages/lout.scm | 119 +++++++++++++++++++++++++------------------------- 1 file changed, 60 insertions(+), 59 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/lout.scm b/gnu/packages/lout.scm index b71abd83fe..f2c724ae07 100644 --- a/gnu/packages/lout.scm +++ b/gnu/packages/lout.scm @@ -28,11 +28,53 @@ ;; rules. Instead, it has a makefile that has to be patched to set the ;; prefix, etc., and it has no makefile rules to build its doc. (let ((configure-phase - ') + '(lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (doc (assoc-ref outputs "doc"))) + (substitute* "makefile" + (("^PREFIX[[:blank:]]*=.*$") + (string-append "PREFIX = " out "\n")) + (("^LOUTLIBDIR[[:blank:]]*=.*$") + (string-append "LOUTLIBDIR = " out "/lib/lout\n")) + (("^LOUTDOCDIR[[:blank:]]*=.*$") + (string-append "LOUTDOCDIR = " doc "/share/doc/lout\n")) + (("^MANDIR[[:blank:]]*=.*$") + (string-append "MANDIR = " out "/man\n"))) + (mkdir out) + (mkdir (string-append out "/bin")) + (mkdir (string-append out "/lib")) + (mkdir (string-append out "/man")) + (mkdir-p (string-append doc "/share/doc/lout"))))) (install-man-phase - ') + '(lambda* (#:key outputs #:allow-other-keys) + (zero? (system* "make" "installman")))) (doc-phase - ')) + '(lambda* (#:key outputs #:allow-other-keys) + (define out + (assoc-ref outputs "doc")) + + (setenv "PATH" + (string-append (assoc-ref outputs "out") + "/bin:" (getenv "PATH"))) + (chdir "doc") + (every (lambda (doc) + (format #t "doc: building `~a'...~%" doc) + (with-directory-excursion doc + (let ((file (string-append out "/share/doc/lout/" + doc ".ps"))) + (and (or (file-exists? "outfile.ps") + (zero? (system* "lout" "-r4" "-o" + "outfile.ps" "all"))) + (begin + (copy-file "outfile.ps" file) + #t) + (zero? (system* "ps2pdf" + "-dPDFSETTINGS=/prepress" + "-sPAPERSIZE=a4" + file + (string-append out "/share/doc/lout/" + doc ".pdf"))))))) + '("design" "expert" "slides" "user"))))) (package (name "lout") (version "3.40") @@ -47,64 +89,23 @@ (outputs '("out" "doc")) (native-inputs `(("ghostscript" ,ghostscript))) - (arguments - `(#:modules ((guix build utils) - (guix build gnu-build-system) - (srfi srfi-1)) ; we need SRFI-1 - #:tests? #f ; no "check" target + (arguments `(#:modules ((guix build utils) + (guix build gnu-build-system) + (srfi srfi-1)) ; we need SRFI-1 + #:tests? #f ; no "check" target + + ;; Customize the build phases. + #:phases (alist-replace + 'configure ,configure-phase - ;; Customize the build phases. - #:phases - (modify-phases %standard-phases - (replace 'configure - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (doc (assoc-ref outputs "doc"))) - (substitute* "makefile" - (("^PREFIX[[:blank:]]*=.*$") - (string-append "PREFIX = " out "\n")) - (("^LOUTLIBDIR[[:blank:]]*=.*$") - (string-append "LOUTLIBDIR = " out "/lib/lout\n")) - (("^LOUTDOCDIR[[:blank:]]*=.*$") - (string-append "LOUTDOCDIR = " doc "/share/doc/lout\n")) - (("^MANDIR[[:blank:]]*=.*$") - (string-append "MANDIR = " out "/man\n"))) - (mkdir out) - (mkdir (string-append out "/bin")) - (mkdir (string-append out "/lib")) - (mkdir (string-append out "/man")) - (mkdir-p (string-append doc "/share/doc/lout"))) - #t)) - (add-after 'install 'install-man-pages - (lambda* (#:key outputs #:allow-other-keys) - (zero? (system* "make" "installman")))) - (add-after 'install 'install-doc - (lambda* (#:key outputs #:allow-other-keys) - (define out - (assoc-ref outputs "doc")) + (alist-cons-after + 'install 'install-man-pages + ,install-man-phase - (setenv "PATH" - (string-append (assoc-ref outputs "out") - "/bin:" (getenv "PATH"))) - (chdir "doc") - (every (lambda (doc) - (format #t "doc: building `~a'...~%" doc) - (with-directory-excursion doc - (let ((file (string-append out "/share/doc/lout/" - doc ".ps"))) - (and (or (file-exists? "outfile.ps") - (zero? (system* "lout" "-r4" "-o" - "outfile.ps" "all"))) - (begin - (copy-file "outfile.ps" file) - #t) - (zero? (system* "ps2pdf" - "-dPDFSETTINGS=/prepress" - "-sPAPERSIZE=a4" - file - (string-append out "/share/doc/lout/" - doc ".pdf"))))))) - '("design" "expert" "slides" "user"))))))) + (alist-cons-after + 'install 'install-doc + ,doc-phase + %standard-phases))))) (synopsis "Document layout system") (description "The Lout document formatting system reads a high-level description of -- cgit v1.2.3 From 595dcd48a965462ad45f19e42864ae972f34183d Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 21 Sep 2017 20:05:12 +0200 Subject: gnu: bdb: Update to 6.2.32. * gnu/packages/databases.scm (bdb): Update to 6.2.32. --- gnu/packages/databases.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index dc1f5ecac3..5f01006872 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -152,14 +152,14 @@ and provides interfaces to the traditional file format.") (define-public bdb (package (name "bdb") - (version "6.2.23") + (version "6.2.32") (source (origin (method url-fetch) (uri (string-append "http://download.oracle.com/berkeley-db/db-" version ".tar.gz")) (sha256 (base32 - "1isxx4jfmnh913jzhp8hhfngbk6dsg46f4kjpvvc56maj64jqqa7")))) + "1yx8wzhch5wwh016nh0kfxvknjkafv6ybkqh6nh7lxx50jqf5id9")))) (build-system gnu-build-system) (outputs '("out" ; programs, libraries, headers "doc")) ; 94 MiB of HTML docs -- cgit v1.2.3 From e0afc09de484e7c6fdf111257e9c250bd608ee54 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 21 Sep 2017 20:53:15 +0200 Subject: gnu: curl: Update to 7.55.1. * gnu/packages/patches/curl-bounds-check.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. * gnu/packages/curl.scm (curl): Update to 7.55.1. [replacement]: Remove field. [source]: Use '.xz' tarball. (curl-7.55.0): Remove variable. --- gnu/local.mk | 1 - gnu/packages/curl.scm | 33 +++------------------------- gnu/packages/patches/curl-bounds-check.patch | 19 ---------------- 3 files changed, 3 insertions(+), 50 deletions(-) delete mode 100644 gnu/packages/patches/curl-bounds-check.patch (limited to 'gnu/packages') diff --git a/gnu/local.mk b/gnu/local.mk index 5731d1ee84..bfa55bfcc6 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -572,7 +572,6 @@ dist_patch_DATA = \ %D%/packages/patches/crda-optional-gcrypt.patch \ %D%/packages/patches/crossmap-allow-system-pysam.patch \ %D%/packages/patches/clucene-contribs-lib.patch \ - %D%/packages/patches/curl-bounds-check.patch \ %D%/packages/patches/cursynth-wave-rand.patch \ %D%/packages/patches/cvs-2017-12836.patch \ %D%/packages/patches/cyrus-sasl-CVE-2013-4122.patch \ diff --git a/gnu/packages/curl.scm b/gnu/packages/curl.scm index 23606b4810..9408af70cc 100644 --- a/gnu/packages/curl.scm +++ b/gnu/packages/curl.scm @@ -42,15 +42,14 @@ (define-public curl (package (name "curl") - (replacement curl-7.55.0) - (version "7.54.1") + (version "7.55.1") (source (origin (method url-fetch) (uri (string-append "https://curl.haxx.se/download/curl-" - version ".tar.lzma")) + version ".tar.xz")) (sha256 (base32 - "0vnv3cz0s1l5cjby86hm0x6pgzqijmdm97qa9q5px200956z6yib")))) + "1dvbcwcar3dv488h9378hy145ma3ws2fwpbr6mgszd7chipcmbry")))) (build-system gnu-build-system) (outputs '("out" "doc")) ;1.2 MiB of man3 pages @@ -122,29 +121,3 @@ tunneling, and so on.") (license (license:non-copyleft "file://COPYING" "See COPYING in the distribution.")) (home-page "https://curl.haxx.se/"))) - -(define-public curl-7.55.0 - (package - (inherit curl) - (version "7.55.0") - (source - (origin - (method url-fetch) - (uri (string-append "https://curl.haxx.se/download/curl-" - version ".tar.xz")) - (patches (search-patches "curl-bounds-check.patch")) - (sha256 - (base32 - "1785vxi0jamiv9d1wr1l45g0fm9ircxdfyfzf7ld8zv0z0i8bmfd")))) - (arguments - `(,@(substitute-keyword-arguments (package-arguments curl) - ((#:phases phases) - `(modify-phases ,phases - (add-before 'install 'fix-Makefile - ;; Fix a regression in 7.55.0 where docs are not installed. - ;; https://github.com/curl/curl/commit/a7bbbb7c368c6096802007f61f19a02e9d75285b - (lambda _ - (substitute* "Makefile" - (("install-data-hook:\n") - "install-data-hook:\n\tcd docs/libcurl && $(MAKE) install\n")) - #t))))))))) diff --git a/gnu/packages/patches/curl-bounds-check.patch b/gnu/packages/patches/curl-bounds-check.patch deleted file mode 100644 index 4b8ff65304..0000000000 --- a/gnu/packages/patches/curl-bounds-check.patch +++ /dev/null @@ -1,19 +0,0 @@ -Fix test failure on some 32-bit platforms. - -Patch copied from upstream source repository: - -https://github.com/curl/curl/commit/45a560390c4356bcb81d933bbbb229c8ea2acb63 - -diff --git a/src/tool_paramhlp.c b/src/tool_paramhlp.c -index b9dedc989e..85c5e79a7e 100644 ---- a/src/tool_paramhlp.c -+++ b/src/tool_paramhlp.c -@@ -218,7 +218,7 @@ static ParameterError str2double(double *val, const char *str, long max) - num = strtod(str, &endptr); - if(errno == ERANGE) - return PARAM_NUMBER_TOO_LARGE; -- if((long)num > max) { -+ if(num > max) { - /* too large */ - return PARAM_NUMBER_TOO_LARGE; - } -- cgit v1.2.3 From 9b0215deb9de6a2830d5e5c37c0d647efa963be0 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 21 Sep 2017 21:10:28 +0200 Subject: gnu: libuv: Update to 1.14.1. * gnu/packages/libevent.scm (libuv): Update to 1.14.1. [source]: Download from dist.libuv.org. --- gnu/packages/libevent.scm | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/libevent.scm b/gnu/packages/libevent.scm index 4f6064e939..55f39f2a6d 100644 --- a/gnu/packages/libevent.scm +++ b/gnu/packages/libevent.scm @@ -121,15 +121,14 @@ programs.") (define-public libuv (package (name "libuv") - (version "1.12.0") + (version "1.14.1") (source (origin (method url-fetch) - (uri (string-append "https://github.com/libuv/libuv/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (uri (string-append "https://dist.libuv.org/dist/v" version + "/libuv-v" version ".tar.gz")) (sha256 (base32 - "0l0jrb5q3i8br10c8skc6xdwlxkmlpn3n0kngaqd68fsi1593kj1")))) + "08kx4mzjsdv90n9pivqxqjxlxk5vaf9p33zzvx661dwfmp9468pk")))) (build-system gnu-build-system) (arguments '(#:phases (alist-cons-after -- cgit v1.2.3 From 6baf1b72057ccda6e491596ad3715c4f555e6a69 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Fri, 22 Sep 2017 21:16:42 +0200 Subject: gnu: teckit: Update to 2.5.7. * gnu/packages/fontutils.scm (teckit): Update to 2.5.7. Signed-off-by: Roel Janssen --- gnu/packages/fontutils.scm | 27 +++++++++------------------ 1 file changed, 9 insertions(+), 18 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm index bd74c4d6aa..de75bd8beb 100644 --- a/gnu/packages/fontutils.scm +++ b/gnu/packages/fontutils.scm @@ -325,33 +325,24 @@ X11-system or any other graphical user interface.") (define-public teckit (package (name "teckit") - (version "2.5.4") + (version "2.5.7") (source (origin - ;; Downloaded tarballs vary with each download, so we use an - ;; svn snapshot. The 2.5.4 release seems to be made in r128, - ;; but r132 updates additional files to contain the correct - ;; version number (r129 to r131 do not concern TRUNK). - (method svn-fetch) - (uri (svn-reference - (url "https://scripts.sil.org/svn-public/teckit/TRUNK") - (revision 132))) - (file-name (string-append name "-" version)) + (method url-fetch) + (uri (string-append + "https://github.com/silnrsi/teckit/releases/download/v" + version "/teckit-" version ".tar.gz")) (sha256 (base32 - "1xqkqgw30pb24snh46srmjs2j4zhz2dfi5pf7znia0k34mrpwivz")))) + "1pbp97vcpj6x4yixx6ww0vsi1rrr99fksxdjafs6gdargzd24cj4")))) (build-system gnu-build-system) - (inputs `(("zlib" ,zlib))) + (inputs + `(("zlib" ,zlib) + ("expat" ,expat))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) ("libtool" ,libtool) ("perl" ,perl))) ; for the tests - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'autogen - (lambda _ - (zero? (system* "sh" "autogen.sh"))))))) (synopsis "Toolkit for encoding conversions") (description "TECkit is a low-level toolkit intended to be used by other applications -- cgit v1.2.3 From 4f27a3337160da33c5fbc24e97c2428d31a50c90 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 24 Sep 2017 19:26:34 +0200 Subject: gnu: Fix syntax errors introduced by dc1d3cdef70f0e3c047c229c2a0e56. * gnu/packages/mp3.scm (libmad)[arguments]: Adjust syntax and indentation. * gnu/packages/rdf.scm (lrdf)[arguments]: Adjust phase order. * gnu/packages/audio.scm (vamp)[arguments]: Remove stray character. (zita-convolver)[arguments]: Adjust parsens and indentation. (clalsadrv)[arguments]: Remove stray 'modify-phases'. --- gnu/packages/audio.scm | 24 ++++++++++++------------ gnu/packages/mp3.scm | 9 ++++----- gnu/packages/rdf.scm | 8 ++++---- 3 files changed, 20 insertions(+), 21 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index c295e41450..e06c62a0e8 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -629,9 +629,9 @@ language and software synthesizer.") (lambda _ (symlink "libclalsadrv.so" (string-append (assoc-ref %outputs "out") - "/lib/libclalsadrv.so.2"))) - ;; no configure script - (modify-phases %standard-phases (delete 'configure)))))) + "/lib/libclalsadrv.so.2")))) + ;; no configure script + (delete 'configure)))) (inputs `(("alsa-lib" ,alsa-lib) ("fftw" ,fftw))) @@ -2144,7 +2144,7 @@ disks as various audio file formats.") (let ((out (assoc-ref outputs "out"))) (list (string-append out "/lib/libvamp-sdk.la") (string-append out "/lib/libvamp-hostsdk.la")))) - #t)s)))) + #t))))) (inputs `(("libsndfile" ,libsndfile))) (native-inputs @@ -2589,14 +2589,14 @@ result.") (substitute* "libs/Makefile" (("ldconfig") "true") (("^LIBDIR =.*") "LIBDIR = lib\n")) - (chdir "libs") #t) - (add-after 'install 'install-symlink - (lambda _ - (symlink "libzita-convolver.so" - (string-append (assoc-ref %outputs "out") - "/lib/libzita-convolver.so.3")))) - ;; no configure script - (delete 'configure))))) + (chdir "libs") #t)) + (add-after 'install 'install-symlink + (lambda _ + (symlink "libzita-convolver.so" + (string-append (assoc-ref %outputs "out") + "/lib/libzita-convolver.so.3")))) + ;; no configure script + (delete 'configure)))) (inputs `(("fftwf" ,fftwf))) (home-page "http://kokkinizita.linuxaudio.org") (synopsis "Fast, partitioned convolution engine library") diff --git a/gnu/packages/mp3.scm b/gnu/packages/mp3.scm index 6412dce16d..7c8f32175d 100644 --- a/gnu/packages/mp3.scm +++ b/gnu/packages/mp3.scm @@ -68,11 +68,10 @@ `(#:phases (modify-phases %standard-phases (add-before 'configure 'remove-unsupported-gcc-flags - (lambda _ - ;; remove option that is not supported by gcc any more - (substitute* "configure" ((" -fforce-mem") "")) - #t) - %standard-phases)))) + (lambda _ + ;; remove option that is not supported by gcc any more + (substitute* "configure" ((" -fforce-mem") "")) + #t))))) (synopsis "MPEG audio decoder") (description "MAD (MPEG Audio Decoder) supports MPEG-1 and the MPEG-2 extension to diff --git a/gnu/packages/rdf.scm b/gnu/packages/rdf.scm index fbd8a45ba0..2ccfc2cec4 100644 --- a/gnu/packages/rdf.scm +++ b/gnu/packages/rdf.scm @@ -129,9 +129,6 @@ Java Lucene text search engine API to C++.") (arguments '(#:phases (modify-phases %standard-phases - (add-after 'remove-out-of-tree-references 'autoreconf - (lambda _ - (zero? (system* "autoreconf" "-vfi")))) (add-after 'unpack 'remove-out-of-tree-references (lambda _ ;; remove symlinks to files in /usr/ @@ -146,7 +143,10 @@ Java Lucene text search engine API to C++.") (substitute* "examples/Makefile.am" (("instances_test remove_test") "instances_test") (("\\$\\(TESTS\\) remove_test") "$(TESTS)")) - #t))))) + #t)) + (add-after 'remove-out-of-tree-references 'autoreconf + (lambda _ + (zero? (system* "autoreconf" "-vfi"))))))) (inputs `(("raptor" ,raptor2) ("cyrus-sasl" ,cyrus-sasl) -- cgit v1.2.3 From 859620e51db0b7ffb666cd47146eca4fd4d6ba63 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 24 Sep 2017 20:10:57 +0200 Subject: gnu: ruby: Fix build failures after updating to 2.4.2. * gnu/packages/ruby.scm (gem-directory): New procedure. (ruby-ansi, ruby-ae)[arguments]: Use it to determine gem install directory instead of relying on the ruby (patch) version. --- gnu/packages/ruby.scm | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 58549e877d..ab8e572175 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -195,6 +195,11 @@ a focus on simplicity and productivity.") (("/bin/sh") (which "sh"))) #t))))))) +(define (gem-directory ruby-version) + "Return the relative gem install directory for RUBY-VERSION." + (string-append "/lib/ruby/gems/" (version-major+minor ruby-version) + ".0/gems")) + (define-public ruby-hoe (package (name "ruby-hoe") @@ -3585,10 +3590,9 @@ It has built-in support for the legacy @code{cookies.txt} and (add-before 'validate-runpath 'replace-broken-symlink (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) - (file (string-append out "/lib/ruby/gems/" - ,(package-version ruby) - "/gems/ansi-" ,version - "/lib/ansi.yml"))) + (file (string-append out + ,(gem-directory (package-version ruby)) + "/ansi-" ,version "/lib/ansi.yml"))) ;; XXX: This symlink is broken since ruby 2.4. ;; https://lists.gnu.org/archive/html/guix-devel/2017-06/msg00034.html (delete-file file) @@ -3786,10 +3790,9 @@ requirement specifications systems like Cucumber.") (add-before 'validate-runpath 'replace-broken-symlink (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) - (file (string-append out "/lib/ruby/gems/" - ,(package-version ruby) - "/gems/ae-" ,version - "/lib/ae.yml"))) + (file (string-append out + ,(gem-directory (package-version ruby)) + "/ae-" ,version "/lib/ae.yml"))) ;; XXX: This symlink is broken since ruby 2.4. ;; https://lists.gnu.org/archive/html/guix-devel/2017-06/msg00034.html (delete-file file) -- cgit v1.2.3 From c651cbad1e38f18f98984463d7d50254b019576b Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Fri, 22 Sep 2017 23:24:23 -0400 Subject: gnu: eudev: Update to 3.2.4 and generate manpages. * gnu/packages/linux.scm (eudev)[version]: Bump to 3.2.4. [uri]: Download the release from Github, which contains the script to generate the manpages from source. [file-name]: Add a file-name field to the origin record, per linter recommendation. [sha256]: Adjust accordingly. [phases]: Add a bootstrap phase to regenerate the manpages. [configure-flags]: Add the "--enable-manpages" option, required to install the manpages. [native-inputs]: Add autoconf, automake and libtool for the bootstrap phase. Add python-wrapper to run a test script that was previously skipped. Add docbook-xml, docbook-xsl, libxml2 and libxslt for manpage generation. --- gnu/packages/linux.scm | 50 +++++++++++++++++++++++++++++++++++--------------- 1 file changed, 35 insertions(+), 15 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 46434b35c8..dd46b5e506 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -2055,30 +2055,50 @@ from the module-init-tools project.") ;; The post-systemd fork, maintained by Gentoo. (package (name "eudev") - (version "3.2.2") + (version "3.2.4") (source (origin (method url-fetch) - (uri (string-append - "http://dev.gentoo.org/~blueness/eudev/eudev-" - version ".tar.gz")) + (uri (string-append "https://github.com/gentoo/eudev/archive/v" + version ".zip")) + (file-name (string-append name "-" version ".zip")) (sha256 (base32 - "0qqgbgpm5wdllk0s04pf80nwc8pr93xazwri1bylm1f15zn5ck1y")) + "1r1ag0snarygrj5qqxi2xdq9w6g3sfjd5jx1b0fl7zmqlsz3vvxx")) (patches (search-patches "eudev-rules-directory.patch")))) (build-system gnu-build-system) (arguments - '(#:phases (modify-phases %standard-phases - (add-after 'install 'build-hwdb - (lambda* (#:key outputs #:allow-other-keys) - ;; Build OUT/etc/udev/hwdb.bin. This allows 'lsusb' and - ;; similar tools to display product names. - (let ((out (assoc-ref outputs "out"))) - (zero? (system* (string-append out "/bin/udevadm") - "hwdb" "--update")))))))) + '(#:phases + (modify-phases %standard-phases + (add-before 'configure 'bootstrap + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "man/make.sh" + (("/usr/bin/xsltproc") + (string-append (assoc-ref inputs "xsltproc") + "/bin/xsltproc"))) + ;; Manual pages are regenerated here. + (zero? (system* "./autogen.sh")))) + (add-after 'install 'build-hwdb + (lambda* (#:key outputs #:allow-other-keys) + ;; Build OUT/etc/udev/hwdb.bin. This allows 'lsusb' and + ;; similar tools to display product names. + (let ((out (assoc-ref outputs "out"))) + (zero? (system* (string-append out "/bin/udevadm") + "hwdb" "--update")))))) + #:configure-flags (list "--enable-manpages"))) (native-inputs - `(("pkg-config" ,pkg-config) + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("gperf" ,gperf) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config) + ;; For tests. ("perl" ,perl) - ("gperf" ,gperf))) + ("python" ,python-wrapper) + ;; For documentation. + ("docbook-xml" ,docbook-xml-4.2) + ("docbook-xsl" ,docbook-xsl) + ("libxml2" ,libxml2) ;for $XML_CATALOG_FILES + ("xsltproc", libxslt))) (inputs ;; When linked against libblkid, eudev can populate /dev/disk/by-label ;; and similar; it also installs the '60-persistent-storage.rules' file, -- cgit v1.2.3 From 86edcc53382c66be06165c62a3934d60ae7aabd8 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 4 Oct 2017 01:15:06 +0200 Subject: Revert "gnu: eudev: Update to 3.2.4 and generate manpages." This reverts commit c651cbad1e38f18f98984463d7d50254b019576b. --- gnu/packages/linux.scm | 50 +++++++++++++++----------------------------------- 1 file changed, 15 insertions(+), 35 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index dd46b5e506..46434b35c8 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -2055,50 +2055,30 @@ from the module-init-tools project.") ;; The post-systemd fork, maintained by Gentoo. (package (name "eudev") - (version "3.2.4") + (version "3.2.2") (source (origin (method url-fetch) - (uri (string-append "https://github.com/gentoo/eudev/archive/v" - version ".zip")) - (file-name (string-append name "-" version ".zip")) + (uri (string-append + "http://dev.gentoo.org/~blueness/eudev/eudev-" + version ".tar.gz")) (sha256 (base32 - "1r1ag0snarygrj5qqxi2xdq9w6g3sfjd5jx1b0fl7zmqlsz3vvxx")) + "0qqgbgpm5wdllk0s04pf80nwc8pr93xazwri1bylm1f15zn5ck1y")) (patches (search-patches "eudev-rules-directory.patch")))) (build-system gnu-build-system) (arguments - '(#:phases - (modify-phases %standard-phases - (add-before 'configure 'bootstrap - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "man/make.sh" - (("/usr/bin/xsltproc") - (string-append (assoc-ref inputs "xsltproc") - "/bin/xsltproc"))) - ;; Manual pages are regenerated here. - (zero? (system* "./autogen.sh")))) - (add-after 'install 'build-hwdb - (lambda* (#:key outputs #:allow-other-keys) - ;; Build OUT/etc/udev/hwdb.bin. This allows 'lsusb' and - ;; similar tools to display product names. - (let ((out (assoc-ref outputs "out"))) - (zero? (system* (string-append out "/bin/udevadm") - "hwdb" "--update")))))) - #:configure-flags (list "--enable-manpages"))) + '(#:phases (modify-phases %standard-phases + (add-after 'install 'build-hwdb + (lambda* (#:key outputs #:allow-other-keys) + ;; Build OUT/etc/udev/hwdb.bin. This allows 'lsusb' and + ;; similar tools to display product names. + (let ((out (assoc-ref outputs "out"))) + (zero? (system* (string-append out "/bin/udevadm") + "hwdb" "--update")))))))) (native-inputs - `(("autoconf" ,autoconf) - ("automake" ,automake) - ("gperf" ,gperf) - ("libtool" ,libtool) - ("pkg-config" ,pkg-config) - ;; For tests. + `(("pkg-config" ,pkg-config) ("perl" ,perl) - ("python" ,python-wrapper) - ;; For documentation. - ("docbook-xml" ,docbook-xml-4.2) - ("docbook-xsl" ,docbook-xsl) - ("libxml2" ,libxml2) ;for $XML_CATALOG_FILES - ("xsltproc", libxslt))) + ("gperf" ,gperf))) (inputs ;; When linked against libblkid, eudev can populate /dev/disk/by-label ;; and similar; it also installs the '60-persistent-storage.rules' file, -- cgit v1.2.3 From c4787c78311c40aab8d8e25352f6190ca0177130 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 5 Oct 2017 22:32:23 +0200 Subject: gnu: inkscape: Fix FTBFS with Poppler >= 0.58. * gnu/packages/inkscape.scm (inkscape)[source]: Add upstream patch. --- gnu/packages/inkscape.scm | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'gnu/packages') diff --git a/gnu/packages/inkscape.scm b/gnu/packages/inkscape.scm index 0f28e640ab..4c68af0088 100644 --- a/gnu/packages/inkscape.scm +++ b/gnu/packages/inkscape.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2014 John Darrington ;;; Copyright © 2014, 2016 Mark H Weaver ;;; Copyright © 2016 Ricardo Wurmus +;;; Copyright © 2017 Marius Bakke ;;; ;;; This file is part of GNU Guix. ;;; @@ -50,6 +51,16 @@ (uri (string-append "https://media.inkscape.org/dl/" "resources/file/" "inkscape-" version ".tar.bz2")) + (patches + (list + ;; Fix compatibility with poppler >= 0.58. + (origin + (method url-fetch) + (uri (string-append "https://gitlab.com/inkscape/inkscape/commit/" + "9418824967eb4c53371ef8588243fed4cab496e0.patch")) + (sha256 + (base32 + "0wwyhkqb1qyazz5f6wqrc223l6k8qnmadiw28q8gihlgvh38rvll"))))) (sha256 (base32 "01chr3vh728dkg7l7lilwgmh5nrp784khdhjgpqjbq9dh2zhax15")))) -- cgit v1.2.3 From 594156ec6f0132c81c734dd3b790989623ef7632 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 6 Oct 2017 00:49:50 +0200 Subject: gnu: texlive-bin: Fix FTBFS with Poppler >= 0.58. * gnu/packages/tex.scm (texlive-bin)[source](patches): Add patch from Arch Linux. [arguments]<#:configure-flags>: Add CXXFLAGS=-std=gnu++11. --- gnu/packages/tex.scm | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'gnu/packages') diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index a38b2afc0c..fef81c6931 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -8,6 +8,7 @@ ;;; Copyright © 2016 Thomas Danckaert ;;; Copyright © 2016, 2017 Ricardo Wurmus ;;; Copyright © 2017 Leo Famulari +;;; Copyright © 2017 Marius Bakke ;;; ;;; This file is part of GNU Guix. ;;; @@ -87,6 +88,20 @@ (method url-fetch) (uri (string-append "ftp://tug.org/historic/systems/texlive/2017/" "texlive-" version "-source.tar.xz")) + (patches + (list + ;; This is required for compatibility with Poppler >= 0.58. + ;; See + ;; and for some discussion. + (origin + (method url-fetch) + (uri (string-append "https://git.archlinux.org/svntogit/packages.git/plain" + "/trunk/texlive-poppler-0.59.patch?h=packages/texlive-bin" + "&id=ba2de374e2b21ecc4b85cc9777f2f15c4d356c61")) + (file-name "texlive-poppler-compat.patch") + (sha256 + (base32 + "1c4ikq4kxw48bi3i33bzpabrjvbk01fwjr2lz20gkc9kv8l0bg3n"))))) (sha256 (base32 "1amjrxyasplv4alfwcxwnw4nrx7dz2ydmddkq16k6hg90i9njq81")))) (build-system gnu-build-system) @@ -123,6 +138,9 @@ `(#:out-of-source? #t #:configure-flags `("--disable-native-texlive-build" + ;; XXX: This is needed because recent Poppler requires C++11 or later. + ;; Remove after switch to GCC >= 6. + "CXXFLAGS=-std=gnu++11" "--with-system-cairo" "--with-system-freetype2" "--with-system-gd" -- cgit v1.2.3 From 68932812b8f6581dda4bf1896235492f687b7cc9 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 6 Oct 2017 11:00:52 +0200 Subject: gnu: libdrm: Disable etnaviv driver. * gnu/packages/xdisorg.scm (libdrm)<#:configure-flags>: On armhf-linux, don't build etnaviv driver. --- gnu/packages/xdisorg.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'gnu/packages') diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index ed682263c4..918b994615 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -307,7 +307,10 @@ rasterisation.") ("armhf-linux" '("--enable-exynos-experimental-api" "--enable-omap-experimental-api" - "--enable-etnaviv-experimental-api" + ;; XXX: This fails a symbol check on a build machine: + ;; + ;; TODO: Update the list of symbols. + ;;"--enable-etnaviv-experimental-api" "--enable-tegra-experimental-api" "--enable-freedreno-kgsl")) ("aarch64-linux" -- cgit v1.2.3 From fa12a41030472427fcc43de2190c9670353a42e8 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 8 Oct 2017 20:02:29 +0200 Subject: gnu: mesa: Disable etnaviv driver. * gnu/packages/gl.scm (mesa)<#:configure-flags>: On armhf-linux, disable etnaviv driver. --- gnu/packages/gl.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'gnu/packages') diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index 9b18d06491..7df62aceac 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -271,7 +271,8 @@ also known as DXTn or DXTC) for Mesa.") `(#:configure-flags '(,@(match (%current-system) ("armhf-linux" - '("--with-gallium-drivers=etnaviv,freedreno,imx,nouveau,r300,r600,svga,swrast,vc4,virgl")) + ;; TODO: Add etnaviv when enabled in libdrm. + '("--with-gallium-drivers=freedreno,imx,nouveau,r300,r600,svga,swrast,vc4,virgl")) ("aarch64-linux" '("--with-gallium-drivers=freedreno,nouveau,r300,r600,svga,swrast,vc4,virgl")) (_ -- cgit v1.2.3 From ffb4da7ad5c0e9cc969e0e47a3b8f4d2eba4d6f3 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 10 Oct 2017 16:20:18 +0300 Subject: gnu: mesa: Disable svga driver on aarch64. * gnu/packages/gl.scm (mesa)[arguments]: Remove svga from aarch64's gallium drivers. --- gnu/packages/gl.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'gnu/packages') diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index 7df62aceac..039400851e 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -274,7 +274,8 @@ also known as DXTn or DXTC) for Mesa.") ;; TODO: Add etnaviv when enabled in libdrm. '("--with-gallium-drivers=freedreno,imx,nouveau,r300,r600,svga,swrast,vc4,virgl")) ("aarch64-linux" - '("--with-gallium-drivers=freedreno,nouveau,r300,r600,svga,swrast,vc4,virgl")) + ;; TODO: Fix svga driver for aarch64. + '("--with-gallium-drivers=freedreno,nouveau,r300,r600,swrast,vc4,virgl")) (_ '("--with-gallium-drivers=i915,nouveau,r300,r600,svga,swrast,virgl"))) ;; Enable various optional features. TODO: opencl requires libclc, -- cgit v1.2.3