aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLeo Famulari <leo@famulari.name>2017-06-29 18:02:17 -0400
committerLeo Famulari <leo@famulari.name>2017-06-29 18:02:17 -0400
commit1024c8119c71ba3ec0122238e8d8254b08d29187 (patch)
treead12a1aac7f828791154a1786d4f245db71b46e9
parent92cb946bd9d78cb8f6aa8418d505f52da6894ab4 (diff)
parent95bbaa02aa63bc5eae36f686f1ed9915663aa4cf (diff)
downloadgnu-guix-1024c8119c71ba3ec0122238e8d8254b08d29187.tar
gnu-guix-1024c8119c71ba3ec0122238e8d8254b08d29187.tar.gz
Merge branch 'master' into core-updates
-rw-r--r--gnu/local.mk4
-rw-r--r--gnu/packages/admin.scm6
-rw-r--r--gnu/packages/astronomy.scm14
-rw-r--r--gnu/packages/bittorrent.scm4
-rw-r--r--gnu/packages/dictionaries.scm4
-rw-r--r--gnu/packages/emacs.scm53
-rw-r--r--gnu/packages/firmware.scm23
-rw-r--r--gnu/packages/game-development.scm2
-rw-r--r--gnu/packages/gnome.scm8
-rw-r--r--gnu/packages/gnupg.scm15
-rw-r--r--gnu/packages/gnuzilla.scm11
-rw-r--r--gnu/packages/hexedit.scm27
-rw-r--r--gnu/packages/java.scm4
-rw-r--r--gnu/packages/kde-frameworks.scm389
-rw-r--r--gnu/packages/linux.scm88
-rw-r--r--gnu/packages/lirc.scm7
-rw-r--r--gnu/packages/mail.scm4
-rw-r--r--gnu/packages/maths.scm19
-rw-r--r--gnu/packages/mes.scm56
-rw-r--r--gnu/packages/moe.scm6
-rw-r--r--gnu/packages/mp3.scm4
-rw-r--r--gnu/packages/networking.scm79
-rw-r--r--gnu/packages/node.scm14
-rw-r--r--gnu/packages/patches/ansible-wrap-program-hack.patch22
-rw-r--r--gnu/packages/patches/quagga-reproducible-build.patch22
-rw-r--r--gnu/packages/patches/screen-fix-info-syntax-error.patch47
-rw-r--r--gnu/packages/pdf.scm17
-rw-r--r--gnu/packages/photo.scm2
-rw-r--r--gnu/packages/python.scm14
-rw-r--r--gnu/packages/scheme.scm4
-rw-r--r--gnu/packages/screen.scm7
-rw-r--r--gnu/packages/statistics.scm27
-rw-r--r--gnu/packages/tex.scm147
-rw-r--r--gnu/packages/video.scm3
-rw-r--r--gnu/packages/wdiff.scm23
-rw-r--r--gnu/packages/wine.scm7
-rw-r--r--gnu/packages/xfce.scm24
-rw-r--r--gnu/packages/xorg.scm5
-rw-r--r--gnu/system.scm1
-rw-r--r--guix/import/cran.scm2
-rw-r--r--guix/profiles.scm7
-rw-r--r--guix/scripts/package.scm16
-rw-r--r--tests/guix-package.sh19
-rw-r--r--tests/profiles.scm7
44 files changed, 1033 insertions, 231 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 54c099b5e3..1d49c1a17f 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -14,6 +14,7 @@
# Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
# Copyright © 2017 Clément Lassieur <clement@lassieur.org>
# Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
+# Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
#
# This file is part of GNU Guix.
#
@@ -501,6 +502,7 @@ dist_patch_DATA = \
%D%/packages/patches/aegis-test-fixup-1.patch \
%D%/packages/patches/aegis-test-fixup-2.patch \
%D%/packages/patches/agg-am_c_prototype.patch \
+ %D%/packages/patches/ansible-wrap-program-hack.patch \
%D%/packages/patches/antiword-CVE-2014-8123.patch \
%D%/packages/patches/apr-skip-getservbyname-test.patch \
%D%/packages/patches/aspell-default-dict-dir.patch \
@@ -935,6 +937,7 @@ dist_patch_DATA = \
%D%/packages/patches/qemu-CVE-2017-9524.patch \
%D%/packages/patches/qt4-ldflags.patch \
%D%/packages/patches/qtscript-disable-tests.patch \
+ %D%/packages/patches/quagga-reproducible-build.patch \
%D%/packages/patches/quickswitch-fix-dmenu-check.patch \
%D%/packages/patches/rapicorn-isnan.patch \
%D%/packages/patches/raptor2-heap-overflow.patch \
@@ -956,7 +959,6 @@ dist_patch_DATA = \
%D%/packages/patches/rxvt-unicode-escape-sequences.patch \
%D%/packages/patches/scheme48-tests.patch \
%D%/packages/patches/scotch-test-threading.patch \
- %D%/packages/patches/screen-fix-info-syntax-error.patch \
%D%/packages/patches/sdl-libx11-1.6.patch \
%D%/packages/patches/seq24-rename-mutex.patch \
%D%/packages/patches/slim-session.patch \
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index b9d68fc244..b1f0e6093e 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -1366,7 +1366,8 @@ of supported upstream metrics systems simultaneously.")
(uri (pypi-uri "ansible" version))
(sha256
(base32
- "1xdr82fy8gahxh3586wm5k1bxksys7yl1f2n24shrk8gf99qyjyd"))))
+ "1xdr82fy8gahxh3586wm5k1bxksys7yl1f2n24shrk8gf99qyjyd"))
+ (patches (search-patches "ansible-wrap-program-hack.patch"))))
(build-system python-build-system)
(native-inputs
`(("python2-pycrypto" ,python2-pycrypto)
@@ -2223,6 +2224,7 @@ make it a perfect utility on modern distros.")
(method url-fetch)
(uri (string-append "https://github.com/01org/thermal_daemon/archive/v"
version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
(sha256 (base32
"14klz9fnvi9jdlaqwrp61xa5nh051n8ykrs1fh1wxd7j66qf2fn6"))))
(build-system gnu-build-system)
@@ -2262,4 +2264,6 @@ make it a perfect utility on modern distros.")
(synopsis "CPU scaling for thermal management")
(description "The Linux Thermal Daemon helps monitor and control temperature
on systems running the Linux kernel.")
+ ;; arm and aarch64 don't have cpuid.h
+ (supported-systems '("i686-linux" "x86_64-linux"))
(license license:gpl2+)))
diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm
index f5509dab10..132013b57a 100644
--- a/gnu/packages/astronomy.scm
+++ b/gnu/packages/astronomy.scm
@@ -121,7 +121,7 @@ programs for the manipulation and analysis of astronomical data.")
(define-public stellarium
(package
(name "stellarium")
- (version "0.15.2")
+ (version "0.16.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/stellarium/"
@@ -129,10 +129,11 @@ programs for the manipulation and analysis of astronomical data.")
version "/stellarium-" version ".tar.gz"))
(sha256
(base32
- "19nxj482g1hh9qicgskpcgy61pri254jgxnkd10icxbnza4c0hv9"))))
+ "1krxj51lix096xbz64lys166a8zdwhill5vvs7dlxdn14amc8d98"))))
(build-system cmake-build-system)
(inputs
`(("qtbase" ,qtbase)
+ ("qtlocation" ,qtlocation)
("qtmultimedia" ,qtmultimedia)
("qtscript" ,qtscript)
("qtserialport" ,qtserialport)
@@ -145,13 +146,10 @@ programs for the manipulation and analysis of astronomical data.")
(arguments
`(#:test-target "tests"
#:phases (modify-phases %standard-phases
- (add-after 'unpack 'patch-version-check
+ (add-after 'unpack 'patch-tests
(lambda _
- ;; Previously-deprecated cmake variable vanished in
- ;; Qt 5.9.
- ;; See <https://bugreports.qt.io/browse/QTBUG-60936>.
- (substitute* "CMakeLists.txt"
- (("Qt5Core_VERSION_STRING") "Qt5Core_VERSION"))
+ (substitute* "src/tests/testStelSphereGeometry.cpp"
+ (("Vec3d v[(]0[)]") "Vec3d v(0.0)"))
#t))
(add-before 'check 'set-offscreen-display
(lambda _
diff --git a/gnu/packages/bittorrent.scm b/gnu/packages/bittorrent.scm
index a0474002b7..79a87dc8bf 100644
--- a/gnu/packages/bittorrent.scm
+++ b/gnu/packages/bittorrent.scm
@@ -264,7 +264,7 @@ maintained upstream.")
(define-public aria2
(package
(name "aria2")
- (version "1.31.0")
+ (version "1.32.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/tatsuhiro-t/aria2/"
@@ -272,7 +272,7 @@ maintained upstream.")
name "-" version ".tar.xz"))
(sha256
(base32
- "131zh75fqw9a1j0igl8gx3lwmhhbicdmp2p387r0cd5j928631bv"))))
+ "0l6whbbcw1qijlczlfqi3mhba3zki0ybjb2prrgncp8km6a92vjl"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list "--enable-libaria2"
diff --git a/gnu/packages/dictionaries.scm b/gnu/packages/dictionaries.scm
index df12bf8a32..062c29b66d 100644
--- a/gnu/packages/dictionaries.scm
+++ b/gnu/packages/dictionaries.scm
@@ -209,7 +209,7 @@ It comes with a German-English dictionary with approximately 270,000 entries.")
(define-public translate-shell
(package
(name "translate-shell")
- (version "0.9.6.3")
+ (version "0.9.6.4")
(source
(origin
(method url-fetch)
@@ -217,7 +217,7 @@ It comes with a German-English dictionary with approximately 270,000 entries.")
version ".tar.gz"))
(sha256
(base32
- "13rjq9v3ykk5c0i5daybpnqnyg09cbcgjzykx49h2h5hvspixvi5"))
+ "1fg6nf1plvgimc57fsdr9rcjbf7jvmk5jrlj5ya509vpdcdgvj2s"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system gnu-build-system)
(arguments
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index ecb6fed6aa..cfebe772f2 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -27,6 +27,7 @@
;;; Copyright © 2017 Feng Shu <tumashu@163.com>
;;; Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com>
+;;; Copyright © 2017 Mekeor Melire <mekeor.melire@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1139,6 +1140,30 @@ writing input files for TeX, LaTeX, ConTeXt, Texinfo, and docTeX using Emacs
or XEmacs.")
(license license:gpl3+)))
+(define-public emacs-autothemer
+ (package
+ (name "emacs-autothemer")
+ (version "0.2.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/sebastiansturm/autothemer/archive/"
+ version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0rd28r9wfrbll212am4ih9hrvypx785aff76va2cbfxdwm9kixsa"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-dash" ,emacs-dash)))
+ (home-page "https://github.com/sebastiansturm/autothemer")
+ (synopsis "Conveniently create Emacs themes")
+ (description
+ "Autothemer provides a thin layer on top of @code{deftheme} and
+@code{custom-theme-set-faces} that creates a new custom color theme, based on
+a set of simplified face specifications and a user-supplied color palette")
+ (license license:gpl3+)))
+
(define-public emacs-calfw
(package
(name "emacs-calfw")
@@ -1157,8 +1182,8 @@ or XEmacs.")
(home-page "https://github.com/kiwanami/emacs-calfw/")
(synopsis "Calendar framework for Emacs")
(description
- "This package displays a calendar view with various shedule data in
-the Emacs buffer.")
+ "This package displays a calendar view with various schedule data in the
+Emacs buffer.")
(license license:gpl3+)))
(define-public emacs-direnv
@@ -3059,14 +3084,21 @@ E-Prime forbids the use of the \"to be\" form to strengthen your writing.")
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "Makeconf"
(("SHELL = /bin/sh")
- (string-append "SHELL = " (which "sh")))))))))
+ (string-append "SHELL = " (which "sh"))))))
+ ;; FIXME: the texlive-union insists on regenerating fonts. It stores
+ ;; them in HOME, so it needs to be writeable.
+ (add-before 'build 'set-HOME
+ (lambda _ (setenv "HOME" "/tmp") #t)))))
(inputs
`(("emacs" ,emacs-minimal)
("r-minimal" ,r-minimal)))
(native-inputs
`(("perl" ,perl)
("texinfo" ,texinfo)
- ("texlive" ,texlive)))
+ ("texlive" ,(texlive-union (list texlive-latex-natbib
+ texlive-latex-seminar
+ texlive-latex-hyperref
+ texlive-tex-texinfo)))))
(home-page "http://ess.r-project.org/")
(synopsis "Emacs mode for statistical analysis programs")
(description "Emacs Speaks Statistics (ESS) is an add-on package for GNU
@@ -4965,10 +4997,11 @@ displays results pretty-printed in XML or JSON with @code{restclient-mode}")
"-f" "ert-run-tests-batch-and-exit")))))))
(home-page "https://github.com/justbur/emacs-which-key")
(synopsis "Display available key bindings in popup")
- (description "@code{emacs-which-key} is a minor mode for Emacs that
-displays the key bindings following your currently entered incomplete command
-(a prefix) in a popup. For example, after enabling the minor mode if you
-enter C-x and wait for the default of 1 second, the minibuffer will expand
-with all of the available key bindings that follow C-x (or as many as space
-allows given your settings).")
+ (description
+ "@code{emacs-which-key} is a minor mode for Emacs that displays the key
+bindings following your currently entered incomplete command (a prefix) in a
+popup. For example, after enabling the minor mode if you enter C-x and wait
+for the default of 1 second, the minibuffer will expand with all of the
+available key bindings that follow C-x (or as many as space allows given your
+settings).")
(license license:gpl3+)))
diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm
index 9106eec4ab..1da248001e 100644
--- a/gnu/packages/firmware.scm
+++ b/gnu/packages/firmware.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2017 David Craven <david@craven.ch>
+;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -275,13 +276,15 @@ use of coreboot.")
(("^ACTIVE_PLATFORM[ ]*=.*$")
"ACTIVE_PLATFORM = OvmfPkg/OvmfPkgIa32.dsc\n"))
(zero? (system* "build"))))
- (add-after 'build 'build-x64
- (lambda _
- (substitute* "Conf/target.txt"
- (("^TARGET_ARCH[ ]*=.*$") "TARGET_ARCH = X64\n")
- (("^ACTIVE_PLATFORM[ ]*=.*$")
- "ACTIVE_PLATFORM = OvmfPkg/OvmfPkgX64.dsc\n"))
- (zero? (system* "build"))))
+ ,@(if (string=? "x86_64-linux" (%current-system))
+ '(add-after 'build 'build-x64
+ (lambda _
+ (substitute* "Conf/target.txt"
+ (("^TARGET_ARCH[ ]*=.*$") "TARGET_ARCH = X64\n")
+ (("^ACTIVE_PLATFORM[ ]*=.*$")
+ "ACTIVE_PLATFORM = OvmfPkg/OvmfPkgX64.dsc\n"))
+ (zero? (system* "build"))))
+ '())
(delete 'build)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
@@ -290,8 +293,10 @@ use of coreboot.")
(mkdir-p fmw)
(copy-file "Build/OvmfIa32/RELEASE_GCC49/FV/OVMF.fd"
(string-append fmw "/ovmf_ia32.bin"))
- (copy-file "Build/OvmfX64/RELEASE_GCC49/FV/OVMF.fd"
- (string-append fmw "/ovmf_x64.bin")))
+ ,@(if (string=? "x86_64-linux" (%current-system))
+ '((copy-file "Build/OvmfX64/RELEASE_GCC49/FV/OVMF.fd"
+ (string-append fmw "/ovmf_x64.bin")))
+ '()))
#t)))))
(supported-systems '("x86_64-linux" "i686-linux"))
(home-page "http://www.tianocore.org")
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index b8b110c9aa..67f6c55017 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -342,7 +342,7 @@ levels.")
(version "2017.06.09")
(source (origin
(method url-fetch)
- (uri (string-append "mirror://savannah/xsge/xsge-"
+ (uri (string-append "mirror://savannah/xsge/xsge/xsge-"
version ".tar.gz"))
(sha256
(base32
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 322611858d..0442a98bf7 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4589,7 +4589,7 @@ Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.")
(define-public evolution-data-server
(package
(name "evolution-data-server")
- (version "3.24.2")
+ (version "3.24.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@@ -4597,7 +4597,7 @@ Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.")
name "-" version ".tar.xz"))
(sha256
(base32
- "1ywqy939n27v3kchlnyxs6ikhjxmlasv6f08ap4bldgr121vkfx9"))))
+ "1jj1q81bl3r0c8rnsfqi83igqlprzdcjim1fvygbyfy7b8gigqqk"))))
(build-system cmake-build-system)
(arguments
'(;; XXX FIXME: 11/85 tests are failing.
@@ -5708,7 +5708,7 @@ existing databases over the internet.")
(define-public gnome-tweak-tool
(package
(name "gnome-tweak-tool")
- (version "3.24.0")
+ (version "3.24.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/gnome-tweak-tool/"
@@ -5718,7 +5718,7 @@ existing databases over the internet.")
(search-patch "gnome-tweak-tool-search-paths.patch")))
(sha256
(base32
- "000ygz9wgnv8pimb6rwbjfm12vbx4138pwkq36ci0k6v827282wk"))))
+ "0rgmm7n6jwc5hz64sprm4jxnky62hw839a7r18rn1mj884vnn8hr"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:configure-flags '("--localstatedir=/tmp"
diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm
index d4d52ee6d0..8b6069ec63 100644
--- a/gnu/packages/gnupg.scm
+++ b/gnu/packages/gnupg.scm
@@ -82,6 +82,7 @@ Daemon and possibly more in the future.")
(define-public libgcrypt
(package
(name "libgcrypt")
+ (replacement libgcrypt-1.7.8)
(version "1.7.7")
(source (origin
(method url-fetch)
@@ -115,8 +116,22 @@ generation.")
(properties '((ftp-server . "ftp.gnupg.org")
(ftp-directory . "/gcrypt/libgcrypt")))))
+(define libgcrypt-1.7.8
+ (package
+ (inherit libgcrypt)
+ (replacement #f)
+ (version "1.7.8")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnupg/libgcrypt/libgcrypt-"
+ version ".tar.bz2"))
+ (sha256
+ (base32
+ "16f1rsv4y4w2pk1il2jbcqggsb6mrlfva5vayd205fp68zm7d0ll"))))))
+
(define-public libgcrypt-1.5
(package (inherit libgcrypt)
+ (replacement #f)
(version "1.5.6")
(source
(origin
diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm
index 37adc3bbd6..db32b988ed 100644
--- a/gnu/packages/gnuzilla.scm
+++ b/gnu/packages/gnuzilla.scm
@@ -505,7 +505,16 @@ standards.")
(mozilla-patch "icecat-bug-1339826-pt2.patch" "44b2fe592a90" "1v8mz3b40dp6l5qrgha4yibmrnx80pxsvdll6ky1k937yhbzjk4a")
(mozilla-patch "icecat-CVE-2017-5470-pt19.patch" "f68e0d98a22a" "063z4a7gyhzy85fc2j2yr7kmk2zf7v875hjw4485civazydysw4j")
(mozilla-patch "icecat-bug-1353625.patch" "c41f37d913e2" "1s997c1hj4ywnlfbhvi1y96vd6bxl74wcrb0nly611h51h8xnyxm")
- (mozilla-patch "icecat-CVE-2017-5470-pt20.patch" "38273203b827" "12p9r4spdp09d6ic9sqspvdr50lmc1p86ydz2fxdifb1f95njhx0")))
+ (mozilla-patch "icecat-CVE-2017-5470-pt20.patch" "38273203b827" "12p9r4spdp09d6ic9sqspvdr50lmc1p86ydz2fxdifb1f95njhx0")
+ (mozilla-patch "icecat-bug-1357022.patch" "5bd51bc3f587" "0z5drxpfjvb7s43qgcr404h8ckchgakwwwi4nxpx2i653w22a743")
+ (mozilla-patch "icecat-bug-1318845.patch" "512efd480dac" "13cmqap795ayh6gh3b5bc6002pz0wp92qngs7fh5qqklc7a0gkzv")
+ (mozilla-patch "icecat-bug-1371586.patch" "d0c92199b9ed" "0qmsm7d4h6ysx3an247kpx9qpksfms7hrjgpdrghdbxla1hc4nc9")
+ (mozilla-patch "icecat-bug-1364513.patch" "88e9c2137640" "1mh4l745q1wlabn9sz47n0vy3h7c66fcay2b9dwa16iqwvh3lpiw")
+ (mozilla-patch "icecat-bug-1366203.patch" "08dd87b6bb8f" "15bfwfwwd978mlcpk1d6m7506k8c2y402md7wzf6piabxl5kk6cf")
+ (mozilla-patch "icecat-bug-1368576.patch" "5a51a9ef8149" "0j0f9j0pryv3ik4bizhv8s6rr4dl1mjm01c23msayr0vbnpcagcs")
+ (mozilla-patch "icecat-bug-1369913.patch" "f47eaebc0c5c" "1b52xm3awpigasaz0hk5b13l7v4ry9vrawf571lzy2wwhphs4nxx")
+ (mozilla-patch "icecat-bug-1371424.patch" "40ce248a8c15" "1b722fiifr999ga0991cg5mlhidcnvf3zx2aiq5zjaabqn0f4dzk")
+ (mozilla-patch "icecat-bug-1372112.patch" "0c8359ac6718" "1w0v2p5jnhzvcsx8h1bglwjhp5y5bg1g8pzpvjw7pg1wlq2frccr")))
(modules '((guix build utils)))
(snippet
'(begin
diff --git a/gnu/packages/hexedit.scm b/gnu/packages/hexedit.scm
index d2aaec306b..8ddc0ffd4f 100644
--- a/gnu/packages/hexedit.scm
+++ b/gnu/packages/hexedit.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Kei Kebreau <kei@openmailbox.org>
+;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -20,6 +21,7 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (gnu packages)
+ #:use-module (gnu packages compression)
#:use-module (gnu packages ncurses)
#:use-module (guix download)
#:use-module (guix build-system gnu))
@@ -44,3 +46,28 @@ file can be a device as the file is read a piece at a time. You can modify
the file and search through it.")
(home-page "http://rigaux.org/hexedit.html")
(license license:gpl2+)))
+
+(define-public ht
+ (package
+ (name "ht")
+ (version "2.1.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://sourceforge.net/projects/hte/files/ht-source/"
+ name "-" version ".tar.bz2"))
+ (sha256
+ (base32
+ "0w2xnw3z9ws9qrdpb80q55h6ynhh3aziixcfn45x91bzrbifix9i"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("lzo" ,lzo)
+ ("ncurses" ,ncurses)))
+ (synopsis "Viewer, editor, and analyzer for executable binaries")
+ (description
+ "ht is a terminal-based program to view, edit, and analyze any file, but
+with a special focus on executable binaries. Its goal is to combine the
+low-level functionality of a debugger with the usability of an @dfn{Integrated
+Development Environment} (IDE).")
+ (home-page "http://hte.sourceforge.net/")
+ (license license:gpl2)))
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index e81ee40d38..e074dab46d 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -1839,8 +1839,8 @@ IcedTea build harness.")
"10baak8v0hnwz2hr33bavshm7y49mmn9zsyyms1dwjz45p5ymhy0"))
("tools-reader-src"
,(submodule "tools.reader/archive/tools.reader-"
- "0.10.0"
- "09i3lzbhr608h76mhdjm3932gg9xi8sflscla3c5f0v1nkc28cnr"))))
+ "1.0.0"
+ "1lafblmmj4hkg0aqrf19qkdw9wdcsh3qxmn6cbkmnzbhffpyv2lv"))))
(home-page "https://clojure.org/")
(synopsis "Lisp dialect running on the JVM")
(description "Clojure is a dynamic, general-purpose programming language,
diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 8fe71d5b5d..a25de39ed8 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -30,6 +30,7 @@
#:use-module (gnu packages acl)
#:use-module (gnu packages admin)
#:use-module (gnu packages attr)
+ #:use-module (gnu packages base)
#:use-module (gnu packages boost)
#:use-module (gnu packages bison)
#:use-module (gnu packages boost)
@@ -51,12 +52,14 @@
#:use-module (gnu packages linux)
#:use-module (gnu packages mp3)
#:use-module (gnu packages pdf)
+ #:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages polkit)
#:use-module (gnu packages python)
#:use-module (gnu packages qt)
#:use-module (gnu packages textutils)
+ #:use-module (gnu packages tls)
#:use-module (gnu packages version-control)
#:use-module (gnu packages video)
#:use-module (gnu packages web)
@@ -3027,3 +3030,389 @@ script engines.")
(define kinit-bootstrap
((package-input-rewriting `((,kdbusaddons . ,kdbusaddons-bootstrap))) kinit))
+
+
+;; Tier 4
+;;
+;; Tier 4 frameworks can be mostly ignored by application programmers; this
+;; tier consists of plugins acting behind the scenes to provide additional
+;; functionality or platform integration to existing frameworks (including
+;; Qt).
+
+(define-public kde-frameworkintegration
+ (package
+ (name "kde-frameworkintegration")
+ (version "5.34.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://kde/stable/frameworks/"
+ (version-major+minor version) "/"
+ "frameworkintegration-" version ".tar.xz"))
+ (sha256
+ (base32
+ "0hq1r2znjzy0wzm3nsclqmih1aia5300bsf87a2l4919q0ildb20"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("pkg-config" ,pkg-config)))
+ ;; TODO: Optional packages not yet in Guix: packagekitqt5, AppStreamQt
+ (inputs
+ `(("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("ki18n" ,ki18n)
+ ("kiconthemes" ,kiconthemes)
+ ("kitemviews" ,kitemviews)
+ ("knewstuff" ,knewstuff)
+ ("knotificantions" ,knotifications)
+ ("kpackage" ,kpackage)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("qtbase" ,qtbase)
+ ("qtx11extras" ,qtx11extras)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'check-setup
+ (lambda _
+ (setenv "HOME" (getcwd))
+ ;; Make Qt render "offscreen", required for tests
+ (setenv "QT_QPA_PLATFORM" "offscreen")
+ #t)))))
+ (home-page "https://community.kde.org/Frameworks")
+ (synopsis "KDE Frameworks 5 workspace and cross-framework integration plugins")
+ (description "Framework Integration is a set of plugins responsible for
+better integration of Qt applications when running on a KDE Plasma
+workspace.")
+ ;; This package is distributed under either LGPL2 or LGPL3, but some
+ ;; files are explicitly LGPL2+.
+ (license (list license:lgpl2.0 license:lgpl3 license:lgpl2.0+))
+ (properties `((upstream-name . "frameworkintegration")))))
+
+
+;; Porting Aids
+;;
+;; Porting Aids frameworks provide code and utilities to ease the transition
+;; from kdelibs 4 to KDE Frameworks 5. Code should aim to port away from this
+;; framework, new projects should avoid using these libraries.
+
+(define-public kdelibs4support
+ (package
+ (name "kdelibs4support")
+ (version "5.34.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://kde/stable/frameworks/"
+ (version-major+minor version) "/portingAids/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32 "0q9jjsjcvc43va4yvfay2xi40vb95lnqhgzavpqcndzjihixwmi0"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("dbus" ,dbus)
+ ("docbook-xml" ,docbook-xml-4.4) ; optional
+ ("extra-cmake-modules" ,extra-cmake-modules)
+ ("perl", perl)
+ ("perl-uri" ,perl-uri)
+ ("pkg-config" ,pkg-config)
+ ("shared-mime-info" ,shared-mime-info)
+ ("kjobwidgets" ,kjobwidgets) ;; required for running the tests
+ ("strace" ,strace)
+ ("tzdata" ,tzdata)))
+ (propagated-inputs
+ ;; These are required to be installed along with this package, see
+ ;; lib64/cmake/KF5KDELibs4Support/KF5KDELibs4SupportConfig.cmake
+ `(("karchive" ,karchive)
+ ("kauth" ,kauth)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kcrash" ,kcrash)
+ ("kdbusaddons" ,kdbusaddons)
+ ("kdesignerplugin" ,kdesignerplugin)
+ ("kdoctools" ,kdoctools)
+ ("kemoticons" ,kemoticons)
+ ("kguiaddons" ,kguiaddons)
+ ("kiconthemes" ,kiconthemes)
+ ("kinit" ,kinit)
+ ("kitemmodels" ,kitemmodels)
+ ("knotifications" ,knotifications)
+ ("kparts" ,kparts)
+ ("ktextwidgets" ,ktextwidgets)
+ ("kunitconversion", kunitconversion)
+ ("kwindowsystem" ,kwindowsystem)
+ ("qtbase" ,qtbase)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kconfig" ,kconfig)
+ ("kconfigwidgets" ,kconfigwidgets)
+ ("kded" ,kded)
+ ("kdesignerplugin" ,kdesignerplugin)
+ ("kdoctools" ,kdoctools)
+ ("kglobalaccel" ,kglobalaccel)
+ ("kguiaddons" ,kguiaddons)
+ ("ki18n" ,ki18n)
+ ("kio" ,kio)
+ ("kservice" ,kservice)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("libsm", libsm)
+ ("networkmanager-qt", networkmanager-qt)
+ ("openssl", openssl)
+ ("qtsvg" ,qtsvg)
+ ("qttools" ,qttools)
+ ("qtx11extras" ,qtx11extras)))
+ ;; FIXME: Use GuixSD ca-bundle.crt in etc/xdg/ksslcalist and
+ ;; share/kf5/kssl/ca-bundle.crt
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'make-cmake-to-find-docbook
+ (lambda _
+ (substitute* "cmake/FindDocBookXML4.cmake"
+ (("^.*xml/docbook/schema/dtd.*$")
+ "xml/dtd/docbook\n"))
+ #t))
+ (delete 'check)
+ (add-after 'install 'check-post-install
+ (lambda* (#:key inputs tests? #:allow-other-keys)
+ (setenv "HOME" (getcwd))
+ (setenv "TZDIR" ; KDateTimeTestsome needs TZDIR
+ (string-append (assoc-ref inputs "tzdata")
+ "/share/zoneinfo"))
+ ;; Make Qt render "offscreen", required for tests
+ (setenv "QT_QPA_PLATFORM" "offscreen")
+ ;; enable debug output
+ (setenv "CTEST_OUTPUT_ON_FAILURE" "1") ; enable debug output
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ ;; TODO: Make this tests pass (also see
+ ;; https://bugs.kde.org/381098)
+ (zero? (system* "dbus-launch" "ctest" "."
+ "-E" "kmimetypetest|kstandarddirstest")))))))
+ (home-page "https://community.kde.org/Frameworks")
+ (synopsis "KDE Frameworks 5 porting aid from KDELibs4")
+ (description "This framework provides code and utilities to ease the
+transition from kdelibs 4 to KDE Frameworks 5. This includes CMake macros and
+C++ classes whose functionality has been replaced by code in CMake, Qt and
+other frameworks.
+
+Code should aim to port away from this framework eventually. The API
+documentation of the classes in this framework and the notes at
+http://community.kde.org/Frameworks/Porting_Notes should help with this.")
+ ;; Most files are distributed under LGPL2+, but the package includes code
+ ;; under a variety of licenses.
+ (license (list license:lgpl2.1+ license:lgpl2.0 license:lgpl2.0+
+ license:gpl2 license:gpl2+
+ license:expat license:bsd-2 license:bsd-3
+ license:public-domain))))
+
+(define-public khtml
+ (package
+ (name "khtml")
+ (version "5.34.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://kde/stable/frameworks/"
+ (version-major+minor version) "/portingAids/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32 "0j490jfnz8pbfl1i11wj514nw0skpnxr2fvi9pqpfql9lfhsanxv"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("perl", perl)))
+ (inputs
+ `(("giflib" ,giflib)
+ ("karchive" ,karchive)
+ ("kcodecs" ,kcodecs)
+ ("kglobalaccel" ,kglobalaccel)
+ ("ki18n" ,ki18n)
+ ("kiconthemes" ,kiconthemes)
+ ("kio" ,kio)
+ ("kjs" ,kjs)
+ ("knotifications" ,knotifications)
+ ("kparts" ,kparts)
+ ("ktextwidgets" ,ktextwidgets)
+ ("kwallet", kwallet)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kwindowsystem" ,kwindowsystem)
+ ("kxmlgui" ,kxmlgui)
+ ("libjpeg", libjpeg)
+ ("libpng", libpng)
+ ("openssl", openssl)
+ ("phonon", phonon)
+ ("qtbase" ,qtbase)
+ ("qtx11extras" ,qtx11extras)
+ ("sonnet" ,sonnet)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'check-setup
+ (lambda _
+ ;; Make Qt render "offscreen", required for tests
+ (setenv "QT_QPA_PLATFORM" "offscreen")
+ #t)))))
+ (home-page "https://community.kde.org/Frameworks")
+ (synopsis "KDE Frameworks 5 HTML widget and component")
+ (description "KHTML is a web rendering engine, based on the KParts
+technology and using KJS for JavaScript support.")
+ ;; Most files are distributed under LGPL2+, but the package includes code
+ ;; under a variety of licenses.
+ (license (list license:lgpl2.0+ license:lgpl2.1+
+ license:gpl2 license:gpl3+
+ license:expat license:bsd-2 license:bsd-3))))
+
+(define-public kjs
+ (package
+ (name "kjs")
+ (version "5.34.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://kde/stable/frameworks/"
+ (version-major+minor version) "/portingAids/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32 "18b7k1hi73iqn06c1ryy9lcmvscr9d08q7n1wwkrn0l2xmy05xsq"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)
+ ("perl" ,perl)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("pcre" ,pcre)
+ ("qtbase" ,qtbase)))
+ (home-page "https://community.kde.org/Frameworks")
+ (synopsis "KDE Frameworks 5 support for Javascript scripting in Qt
+applications")
+ (description "Add-on library to Qt which adds JavaScript scripting
+support.")
+ ;; Most files are distributed under LGPL2+, but the package also includes
+ ;; code under a variety of licenses.
+ (license (list license:lgpl2.1+
+ license:bsd-2 license:bsd-3
+ (license:non-copyleft "file://src/kjs/dtoa.cpp")))))
+
+(define-public kjsembed
+ (package
+ (name "kjsembed")
+ (version "5.34.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://kde/stable/frameworks/"
+ (version-major+minor version) "/portingAids/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32 "17w8i370pqks1fj3pcziz7j014chnc6yi7md7w2p4xprw54pbmbk"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)
+ ("qttools" ,qttools)))
+ (inputs
+ `(("ki18n" ,ki18n)
+ ("kjs" ,kjs)
+ ("qtbase" ,qtbase)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://community.kde.org/Frameworks")
+ (synopsis "KDE Frameworks 5 embedded Javascript engine for Qt")
+ (description "KJSEmbed provides a method of binding Javascript objects to
+QObjects, so you can script your applications.")
+ (license license:lgpl2.1+)))
+
+(define-public kmediaplayer
+ (package
+ (name "kmediaplayer")
+ (version "5.34.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://kde/stable/frameworks/"
+ (version-major+minor version) "/portingAids/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32 "1mq87qf86sdvwhas4w7rspd221qp4x9kds4nd0lpldiay4483k86"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)
+ ("qttools" ,qttools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kcoreaddons" ,kcoreaddons)
+ ("ki18n" ,ki18n)
+ ("kiconthemes" ,kiconthemes)
+ ("kio" ,kio)
+ ("kparts" ,kparts)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("qtbase" ,qtbase)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'check-setup
+ (lambda _
+ ;; Make Qt render "offscreen", required for tests
+ (setenv "QT_QPA_PLATFORM" "offscreen")
+ #t)))))
+ (home-page "https://community.kde.org/Frameworks")
+ (synopsis "KDE Frameworks 5 plugin interface for media player features")
+ (description "KMediaPlayer builds on the KParts framework to provide a
+common interface for KParts that can play media files.
+
+This framework is a porting aid. It is not recommended for new projects, and
+existing projects that use it are advised to port away from it, and use plain
+KParts instead.")
+ (license license:expat)))
+
+(define-public kross
+ (package
+ (name "kross")
+ (version "5.34.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://kde/stable/frameworks/"
+ (version-major+minor version) "/portingAids/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32 "092qz8vyiialv9fvk4wvn8mrfhz5i5hnbq0xnz6nvi1pk3db6bxq"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("kdoctools" ,kdoctools)
+ ("qttools" ,qttools)))
+ (inputs
+ `(("kcompletion" ,kcompletion)
+ ("kcoreaddons" ,kcoreaddons)
+ ("ki18n" ,ki18n)
+ ("kiconthemes" ,kiconthemes)
+ ("kparts" ,kparts)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("kxmlgui" ,kxmlgui)
+ ("qtbase" ,qtbase)
+ ("qtscript" ,qtscript)))
+ (home-page "https://community.kde.org/Frameworks")
+ (synopsis "KDE Frameworks 5 solution for application scripting")
+ (description "Kross is a scripting bridge for the KDE Development Platform
+used to embed scripting functionality into an application. It supports
+QtScript as a scripting interpreter backend.
+
+Kross provides an abstract API to provide scripting functionality in a
+interpreter-independent way. The application that uses Kross should not need
+to know anything about the scripting language being used. The core of Kross
+provides the framework to deal transparently with interpreter-backends and
+offers abstract functionality to deal with scripts.")
+ ;; Most files are distributed under LGPL2+, but the package includes code
+ ;; under a variety of licenses.
+ (license (list license:lgpl2.0+ license:lgpl2.1+
+ license:lgpl2.0 license:gpl3+))))
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 73e376fdd3..9031d727ef 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -26,6 +26,7 @@
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2017 nee <nee-git@hidamari.blue>
+;;; Copyright © 2017 Dave Love <fx@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -98,6 +99,8 @@
#:use-module (gnu packages xml)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xorg)
+ #:use-module (gnu packages groff)
+ #:use-module (gnu packages selinux)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
@@ -360,56 +363,26 @@ It has been modified to remove all non-free binary blobs.")
(define %intel-compatible-systems '("x86_64-linux" "i686-linux"))
-(define %linux-libre-version "4.11.6")
-(define %linux-libre-hash "0xay0m2a4la8aqc8ai8zqfh1c1i6sjgh0dywm7nis0g1gqirwrds")
+(define %linux-libre-version "4.11.7")
+(define %linux-libre-hash "0kliwdz4qqjz13pywhavxg19cy1mf6d1f52f6kgapc331309vad9")
(define-public linux-libre
(make-linux-libre %linux-libre-version
%linux-libre-hash
%intel-compatible-systems
- #:configuration-file kernel-config
- #:patches
- (list %boot-logo-patch
- (origin
- (method url-fetch)
- (uri "\
-https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git/patch/?id=167ec8235f978d7af78c73e9490dae1af3fee67f")
- (file-name "linux-libre-4.11-CVE-2017-1000364.patch")
- (sha256
- (base32
- "0hv3lxjgpssvsldkydg5q7znnzxv5ncpzrk6g11q01k3gkl0q689"))))))
+ #:configuration-file kernel-config))
(define-public linux-libre-4.9
- (make-linux-libre "4.9.33"
- "1dam6vqymhlx1vsl0lzxphamiifgyf97snxg18b2czqq402nz094"
+ (make-linux-libre "4.9.34"
+ "00jm3338kvhfj850lg3mvk680fmfw34mvwaq41lvxgb1z2xqqlz1"
%intel-compatible-systems
- #:configuration-file kernel-config
- #:patches
- (list %boot-logo-patch
- (origin
- (method url-fetch)
- (uri "\
-https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git/patch/?id=37c40b6777f0bc8a63f616479c469b371097f333")
- (file-name "linux-libre-4.9-CVE-2017-1000364.patch")
- (sha256
- (base32
- "0zhnh8ysiqldxlnd50bjrxagzx29kc8nlajdrikii2x2ibkbfb4i"))))))
+ #:configuration-file kernel-config))
(define-public linux-libre-4.4
- (make-linux-libre "4.4.73"
- "144ssqw1dr86z4cgl797pq5rggfibsxqk7wmfbl6j92l1cj6yjrz"
+ (make-linux-libre "4.4.74"
+ "04x2ki3s2jsjkkk6bld0rd9rsk8qqvrfsxawxzfa26mkq6pv87r2"
%intel-compatible-systems
- #:configuration-file kernel-config
- #:patches
- (list %boot-logo-patch
- (origin
- (method url-fetch)
- (uri "\
-https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git/patch/?id=87422f5b9b4f43efef4eaf37d7d040aed96500cb")
- (file-name "linux-libre-4.4-CVE-2017-1000364.patch")
- (sha256
- (base32
- "137p1cpiwlbvw4x12w1l23iy593xmdry60kd7j9kk690r9arfagw"))))))
+ #:configuration-file kernel-config))
(define-public linux-libre-4.1
(make-linux-libre "4.1.41"
@@ -422,17 +395,7 @@ https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git/patch
%linux-libre-hash
'("armhf-linux")
#:defconfig "multi_v7_defconfig"
- #:extra-version "arm-generic"
- #:patches
- (list %boot-logo-patch
- (origin
- (method url-fetch)
- (uri "\
-https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git/patch/?id=167ec8235f978d7af78c73e9490dae1af3fee67f")
- (file-name "linux-libre-4.11-CVE-2017-1000364.patch")
- (sha256
- (base32
- "0hv3lxjgpssvsldkydg5q7znnzxv5ncpzrk6g11q01k3gkl0q689"))))))
+ #:extra-version "arm-generic"))
;;;
@@ -4176,3 +4139,28 @@ NexGen, Rise, and SiS CPUs.")
to data over the Media Transfer Protocol (MTP). Unprivileged users can mount
the MTP device as a filesystem.")
(license license:gpl3)))
+
+(define-public procenv
+ (package
+ (name "procenv")
+ (version "0.49")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/jamesodhunt/procenv/archive/"
+ version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0brzf6185hb76imw107cl21c8lzwiywkxi3jknihrk86bvvicd0d"))))
+ (build-system gnu-build-system)
+ (arguments `(#:configure-flags '("--disable-silent-rules")))
+ (inputs `(("expat" ,expat) ("libcap" ,libcap) ("check" ,check)
+ ("groff" ,groff) ; for tests
+ ("libselinux" ,libselinux)))
+ (synopsis "Utility to show process environment")
+ (description "Procenv is a command-line tool that displays as much detail about
+itself and its environment as possible. It can be used as a test
+tool, to understand the type of environment a process runs in, and for
+comparing system environments.")
+ (home-page "http://github.com/jamesodhunt/procenv/")
+ (license license:gpl3+)))
diff --git a/gnu/packages/lirc.scm b/gnu/packages/lirc.scm
index d4c2d18ccc..cd9e06d394 100644
--- a/gnu/packages/lirc.scm
+++ b/gnu/packages/lirc.scm
@@ -48,6 +48,13 @@
'(#:configure-flags '("--localstatedir=/var")
#:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'disable-kernel-sniffing
+ (lambda _
+ ;; Correct the faulty assumption that systemd support should be
+ ;; hard-wired when a build host's /proc/version contains "Ubuntu".
+ (substitute* "configure"
+ (("kernelversion=.*") "kernelversion=irrelevant\n"))
+ #t))
(add-after 'unpack 'patch-lirc-make-devinput
(lambda* (#:key inputs #:allow-other-keys)
;; 'lirc-make-devinput' script assumes that linux headers
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 019b556c9c..7ab9829196 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -1085,7 +1085,7 @@ facilities for checking incoming mail.")
(define-public dovecot
(package
(name "dovecot")
- (version "2.2.30.2")
+ (version "2.2.31")
(source
(origin
(method url-fetch)
@@ -1093,7 +1093,7 @@ facilities for checking incoming mail.")
(version-major+minor version) "/"
name "-" version ".tar.gz"))
(sha256 (base32
- "17hqhzfqlk08d20x9rwi0lyvy13pc0x8sr1zcg89vapf3jfagnzk"))))
+ "18bnwgn6hshbmr79g21sngkrmydji6bzb948a3b2i0bl0w4y8jq3"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index e7205655c3..20eef00123 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -428,7 +428,7 @@ large scale eigenvalue problems.")
(define-public lapack
(package
(name "lapack")
- (version "3.5.0")
+ (version "3.7.1")
(source
(origin
(method url-fetch)
@@ -436,14 +436,24 @@ large scale eigenvalue problems.")
version ".tgz"))
(sha256
(base32
- "0lk3f97i9imqascnlf6wr5mjpyxqcdj73pgj97dj2mgvyg9z1n4s"))))
+ "0yavf6m9l78pwlnk5g61cg8x28mr30j0g8gkai0jrdqfjjmf3whs"))))
(build-system cmake-build-system)
(home-page "http://www.netlib.org/lapack/")
(inputs `(("fortran" ,gfortran)
("python" ,python-2)))
(arguments
- `(#:configure-flags '("-DBUILD_SHARED_LIBS:BOOL=YES"
- "-DLAPACKE=ON")
+ `(#:configure-flags (list
+ ;; Install to PREFIX/lib (the default is
+ ;; PREFIX/lib64).
+ (string-append "-DCMAKE_INSTALL_LIBDIR="
+ (assoc-ref %outputs "out")
+ "/lib")
+
+ "-DBUILD_SHARED_LIBS:BOOL=YES"
+ "-DLAPACKE=ON"
+
+ ;; Build the 'LAPACKE_clatms' functions.
+ "-DLAPACKE_WITH_TMG=ON")
#:phases (alist-cons-before
'check 'patch-python
(lambda* (#:key inputs #:allow-other-keys)
@@ -1872,6 +1882,7 @@ YACC = bison -pscotchyy -y -b y
'("COMMON_FILE_COMPRESS_GZ"
"COMMON_PTHREAD"
"COMMON_RANDOM_FIXED_SEED"
+ "INTSIZE64" ;use 'long' instead of 'int'
;; Prevents symbolc clashes with libesmumps
"SCOTCH_RENAME"
;; XXX: Causes invalid frees in superlu-dist tests
diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm
index e711148c7c..3fcf5f0fa4 100644
--- a/gnu/packages/mes.scm
+++ b/gnu/packages/mes.scm
@@ -34,14 +34,14 @@
(define-public nyacc
(package
(name "nyacc")
- (version "0.79.4")
+ (version "0.80.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://savannah/nyacc/"
name "-" version ".tar.gz"))
(sha256
(base32
- "14rhr9nv1022r7m94agb3299y0k093aq1ps22zgii3aa7cf9h1w4"))))
+ "0sdvkahnz6k9i4kf1i1ljl20220n3wk3gy6zmz0ggbbdgg4mfka0"))))
(build-system gnu-build-system)
(native-inputs
`(("guile" ,guile-2.2)))
@@ -54,25 +54,24 @@ extensive examples, including parsers for the Javascript and C99 languages.")
(license (list gpl3+ lgpl3+))))
(define-public mes
- (let ((commit "7fdca75d2188b28df806b34ec92627d57aafa9ae")
- (revision "0")
- (triplet "i686-unknown-linux-gnu")
- (version "0.7"))
+ (let ((triplet "i686-unknown-linux-gnu"))
(package
(name "mes")
- (version (string-append version "-" revision "." (string-take commit 7)))
+ (version "0.8")
(source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://gitlab.com/janneke/mes")
- (commit commit)))
- (file-name (string-append name "-" version))
+ (method url-fetch)
+ (uri (string-append "https://gitlab.com/janneke/mes"
+ "/repository/archive.tar.gz?ref=v"
+ version))
+ (file-name (string-append name "-" version ".tar.gz"))
(sha256
- (base32 "0fvzr1ai2rmi46zdi5b2bdjb6s8ip78mkmsk02yxl46rajmp2pb1"))))
+ (base32
+ "1igmrks20ci6l5c0jx2bn4swf0w8jy5inhg61cwld9d7hwanmdnj"))))
(build-system gnu-build-system)
(supported-systems '("i686-linux" "x86_64-linux"))
(propagated-inputs
- `(("nyacc" ,nyacc)))
+ `(("mescc-tools" ,mescc-tools)
+ ("nyacc" ,nyacc)))
(native-inputs
`(("guile" ,guile-2.2)
,@(if (string-prefix? "x86_64-linux" (or (%current-target-system)
@@ -100,3 +99,32 @@ consists of a mutual self-hosting [close to Guile-] Scheme interpreter
prototype in C and a Nyacc-based C compiler in [Guile] Scheme.")
(home-page "https://gitlab.com/janneke/mes")
(license gpl3+))))
+
+(define-public mescc-tools
+ (package
+ (name "mescc-tools")
+ (version "0.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://github.com/oriansj/MESCC_Tools/archive/Release_"
+ version
+ ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1lzi9sqv41269isn7in70q2hhh087n4v97zr5i2qzz69j2lkr3xb"))))
+ (build-system gnu-build-system)
+ (supported-systems '("i686-linux" "x86_64-linux"))
+ (arguments
+ `(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
+ #:test-target "test"
+ #:phases (modify-phases %standard-phases
+ (delete 'configure))))
+ (synopsis "Tools for the full source bootstrapping process")
+ (description
+ "Mescc-tools is a collection of tools for use in a full source
+bootstrapping process. Currently consists of the M0 macro assembler and the
+hex2 linker.")
+ (home-page "https://github.com/oriansj/MESCC_Tools")
+ (license gpl3+)))
diff --git a/gnu/packages/moe.scm b/gnu/packages/moe.scm
index 12929b327a..67e5b02390 100644
--- a/gnu/packages/moe.scm
+++ b/gnu/packages/moe.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2014, 2015 Eric Bavier <bavier@member.fsf.org>
+;;; Copyright © 2014, 2015, 2017 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
@@ -28,7 +28,7 @@
(define-public moe
(package
(name "moe")
- (version "1.8")
+ (version "1.9")
(source
(origin
(method url-fetch)
@@ -36,7 +36,7 @@
version ".tar.lz"))
(sha256
(base32
- "0mv4pg38p0dq88xmxxv08rykn7vv4x7gskmdk7nfp3vx37r4xzvy"))))
+ "1wsfzy0iia0c89wnx1ilzw54wqcmlp2nz8mkpvc393z0zagrx48q"))))
(build-system gnu-build-system)
(native-inputs `(("lzip" ,lzip)))
(inputs `(("ncurses" ,ncurses)))
diff --git a/gnu/packages/mp3.scm b/gnu/packages/mp3.scm
index 78c2b2f73b..8a3a5809c7 100644
--- a/gnu/packages/mp3.scm
+++ b/gnu/packages/mp3.scm
@@ -290,14 +290,14 @@ This package contains the binary.")
(define-public mpg123
(package
(name "mpg123")
- (version "1.23.8")
+ (version "1.25.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/mpg123/mpg123/" version
"/mpg123-" version ".tar.bz2"))
(sha256
(base32
- "13ngfzk84k4ks7ymanmq8f6707yrybra5h0mk3ir6mdnxk4068yy"))))
+ "0j2fyb984cwvhn8kicf87y39bhjsg43p14aj893hzq25n0fkwbjm"))))
(build-system gnu-build-system)
(arguments '(#:configure-flags '("--with-default-audio=pulse")))
(native-inputs `(("pkg-config" ,pkg-config)))
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 06a2c8be6e..d4b9a3d129 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -16,6 +16,7 @@
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
+;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -51,6 +52,7 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
#:use-module (gnu packages databases)
+ #:use-module (gnu packages dejagnu)
#:use-module (gnu packages flex)
#:use-module (gnu packages gettext)
#:use-module (gnu packages gnupg)
@@ -64,6 +66,7 @@
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
+ #:use-module (gnu packages readline)
#:use-module (gnu packages textutils)
#:use-module (gnu packages tls)
#:use-module (gnu packages valgrind)
@@ -1308,3 +1311,79 @@ transparently have a connection established to another address (e.g., a UNIX
socket on a different system). This is similar to 'ssh -L' functionality, but
does not use SSH and requires a pre-shared symmetric key.")
(license license:bsd-2)))
+
+(define-public quagga
+ (package
+ (name "quagga")
+ (version "1.2.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://savannah/quagga/quagga-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1kgvcr9cfgys5asvb5lh5h95silkr624apqm5x68xva19xfvmpda"))
+ (patches
+ (search-patches "quagga-reproducible-build.patch"))))
+ (build-system gnu-build-system)
+ (native-inputs `(("pkg-config",pkg-config)
+ ("perl",perl)
+ ("dejagnu",dejagnu)))
+ (inputs `(("readline",readline)
+ ("c-ares",c-ares)))
+ (synopsis "Routing Software Suite")
+ (description "Quagga is a routing software suite, providing implementations
+of OSPFv2, OSPFv3, RIP v1 and v2, RIPng and BGP-4 for Unix platforms.
+
+The Quagga architecture consists of a core daemon, @command{zebra}, which
+acts as an abstraction layer to the underlying Unix kernel and presents the
+Zserv API over a Unix or TCP stream to Quagga clients. It is these Zserv
+clients which typically implement a routing protocol and communicate routing
+updates to the zebra daemon.")
+ (home-page "http://www.nongnu.org/quagga/")
+ (license license:gpl2+)))
+
+(define-public thc-ipv6
+ (package
+ (name "thc-ipv6")
+ (version "3.2")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/vanhauser-thc/thc-ipv6/"
+ "archive/" version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0yh2lpsazmm0pgbmh0dx023w6fss1kdfyr4cq7yw0fac8vkw32d3"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
+ #:tests? #f ; No test suite.
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure) ; No ./configure script.
+ (add-before 'build 'patch-paths
+ (lambda _
+ (substitute* "Makefile"
+ (("/bin/echo") "echo"))
+ #t))
+ (add-after 'install 'install-more-docs
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (doc (string-append out "/share/thc-ipv6/doc")))
+ (install-file "README" doc)
+ (install-file "HOWTO-INJECT" doc)
+ #t))))))
+ ;; TODO Add libnetfilter-queue once packaged.
+ (inputs
+ `(("libpcap" ,libpcap)
+ ("openssl" ,openssl)
+ ("perl" ,perl)))
+ (home-page "https://github.com/vanhauser-thc/thc-ipv6")
+ (synopsis "IPv6 security research toolkit")
+ (description "The THC IPv6 Toolkit provides command-line tools and a library
+for researching IPv6 implementations and deployments. It requires Linux 2.6 or
+newer and only works on Ethernet network interfaces.")
+ ;; AGPL 3 with exception for linking with OpenSSL. See the 'LICENSE' file in
+ ;; the source distribution for more information.
+ (license license:agpl3)))
diff --git a/gnu/packages/node.scm b/gnu/packages/node.scm
index 69bd928833..d4415fc501 100644
--- a/gnu/packages/node.scm
+++ b/gnu/packages/node.scm
@@ -40,14 +40,14 @@
(define-public node
(package
(name "node")
- (version "7.10.0")
+ (version "8.1.2")
(source (origin
(method url-fetch)
(uri (string-append "http://nodejs.org/dist/v" version
"/node-v" version ".tar.gz"))
(sha256
(base32
- "00vdmb0z8b2sd547bkksgy9dfq5gi5xfd9b3f0rc4ngvpzl3z164"))
+ "0l92gar1pivzaiwffiiiz2f2m5k39sl5fphlfnvy0ml9hrjb65yp"))
;; https://github.com/nodejs/node/pull/9077
(patches (search-patches "node-9077.patch"))))
(build-system gnu-build-system)
@@ -83,10 +83,18 @@
((" \\$\\(MAKE\\) jslint") "")
((" \\$\\(MAKE\\) cpplint\n") ""))
+ ;; FIXME: This test seems to depends on files that are not
+ ;; available in the bundled v8. See
+ ;; https://github.com/nodejs/node/issues/13344
+ (for-each delete-file
+ '("test/addons-napi/test_general/testInstanceOf.js"))
;; FIXME: These tests fail in the build container, but they don't
;; seem to be indicative of real problems in practice.
(for-each delete-file
- '("test/parallel/test-dgram-membership.js"
+ '("test/async-hooks/test-ttywrap.readstream.js"
+ "test/parallel/test-util-inspect.js"
+ "test/parallel/test-v8-serdes.js"
+ "test/parallel/test-dgram-membership.js"
"test/parallel/test-cluster-master-error.js"
"test/parallel/test-cluster-master-kill.js"
"test/parallel/test-npm-install.js"
diff --git a/gnu/packages/patches/ansible-wrap-program-hack.patch b/gnu/packages/patches/ansible-wrap-program-hack.patch
new file mode 100644
index 0000000000..c2e1028392
--- /dev/null
+++ b/gnu/packages/patches/ansible-wrap-program-hack.patch
@@ -0,0 +1,22 @@
+Ansible changes its behaviour depending on the name of the script that it is
+called as. Make it deal with guix' .real wrapper scripts.
+
+FIXME: Remove once wrapping ansible works properly.
+See http://lists.gnu.org/archive/html/bug-guix/2017-05/msg00015.html.
+--- ansible-2.3.0.0/bin/ansible 2017-04-12 16:08:05.000000000 +0200
++++ ansible-2.3.0.0-fixed/bin/ansible 2017-05-21 20:11:18.720872385 +0200
+@@ -75,7 +75,13 @@
+ # sometimes add that
+ target = target[:-1]
+
+- if len(target) > 1:
++ if target[-1] == "real" and target[0].startswith('.'):
++ target = target[:-1]
++ target[0] = target[0][1:]
++ if len(target) > 1 and target[1] != "real" :
++ sub = target[1]
++ myclass = "%sCLI" % sub.capitalize()
++ elif len(target) > 2 and target[2] == "real" :
+ sub = target[1]
+ myclass = "%sCLI" % sub.capitalize()
+ elif target[0] == 'ansible':
diff --git a/gnu/packages/patches/quagga-reproducible-build.patch b/gnu/packages/patches/quagga-reproducible-build.patch
new file mode 100644
index 0000000000..80efe4bf62
--- /dev/null
+++ b/gnu/packages/patches/quagga-reproducible-build.patch
@@ -0,0 +1,22 @@
+Make sure, that vtysh_cmd.c is deterministically generated.
+
+--- a/vtysh/extract.pl.in 2017-03-10 13:55:06.000000000 +0100
++++ b/vtysh/extract.pl.in 2017-06-24 00:51:56.460000000 +0200
+@@ -214,7 +214,7 @@
+ }
+
+ # Output DEFSH
+-foreach (keys %live) {
++foreach (sort keys %live) {
+ my ($proto);
+ my ($key);
+ $key = $live{$_};
+@@ -229,7 +229,7 @@
+ {
+ EOF
+
+-foreach (keys %odefun) {
++foreach (sort keys %odefun) {
+ my ($node, $str) = (split (/,/));
+ $cmd = $ocmd{$_};
+ $cmd =~ s/_cmd/_cmd_vtysh/;
diff --git a/gnu/packages/patches/screen-fix-info-syntax-error.patch b/gnu/packages/patches/screen-fix-info-syntax-error.patch
deleted file mode 100644
index 6ee9091daa..0000000000
--- a/gnu/packages/patches/screen-fix-info-syntax-error.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-Fix errors when building the info manual:
-
-[...]
-./screen.texinfo:5799: unknown command `suse'
-./screen.texinfo:5800: unknown command `deuxchevaux'
-make[2]: *** [Makefile:31: screen.info] Error 1
-[...]
-
-Patch copied from upstream source repository:
-
-http://git.savannah.gnu.org/cgit/screen.git/commit/?id=a7d2f9e6ecfa794dd0bd3dbeaf6780c88a6f3152
-
-From a7d2f9e6ecfa794dd0bd3dbeaf6780c88a6f3152 Mon Sep 17 00:00:00 2001
-From: Andreas Stieger <astieger@suse.com>
-Date: Tue, 28 Feb 2017 19:23:01 +0100
-Subject: [PATCH] fix texinfo syntax errors
-
-thanks to Andreas Stieger <astieger@suse.com>
----
- src/doc/screen.texinfo | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/doc/screen.texinfo b/src/doc/screen.texinfo
-index bc4cbae..aadad33 100644
---- a/doc/screen.texinfo
-+++ b/doc/screen.texinfo
-@@ -5795,7 +5795,7 @@ and Alexander Naumov <alexander_naumov@@opensuse.org>.
- Contributors @*
- ============
-
--@example
-+@verbatim
- Thomas Renninger <treen@suse.com>,
- Axel Beckert <abe@deuxchevaux.org>,
- Ken Beal <kbeal@@amber.ssd.csd.harris.com>,
-@@ -5826,7 +5826,7 @@ Contributors @*
- Jason Merrill <jason@@jarthur.Claremont.EDU>,
- Johannes Zellner <johannes@@zellner.org>,
- Pablo Averbuj <pablo@@averbuj.com>.
--@end example
-+@end verbatim
-
- @noindent
- Version @*
---
-cgit v1.0-41-gc330
-
diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm
index 5ccaa38eea..dce02a7b57 100644
--- a/gnu/packages/pdf.scm
+++ b/gnu/packages/pdf.scm
@@ -76,6 +76,7 @@
(define-public poppler
(package
(name "poppler")
+ (replacement poppler-0.56.0)
(version "0.52.0")
(source (origin
(method url-fetch)
@@ -129,15 +130,27 @@
(license license:gpl2+)
(home-page "https://poppler.freedesktop.org/")))
-(define-public poppler-qt4
+(define poppler-0.56.0
(package (inherit poppler)
+ (version "0.56.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://poppler.freedesktop.org/poppler-"
+ version ".tar.xz"))
+ (sha256
+ (base32
+ "0wviayidfv2ix2ql0d4nl9r1ia6qi5kc1nybd9vjx27dk7gvm7c6"))))))
+
+(define-public poppler-qt4
+ (package/inherit poppler
(name "poppler-qt4")
(inputs `(("qt-4" ,qt-4)
,@(package-inputs poppler)))
(synopsis "Qt4 frontend for the Poppler PDF rendering library")))
(define-public poppler-qt5
- (package (inherit poppler)
+ (package/inherit poppler
(name "poppler-qt5")
(inputs `(("qtbase" ,qtbase)
,@(package-inputs poppler)))
diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm
index 3effc181d3..1811e8ad3e 100644
--- a/gnu/packages/photo.scm
+++ b/gnu/packages/photo.scm
@@ -386,6 +386,8 @@ photographic equipment.")
developer. It manages your digital negatives in a database, lets you view
them through a zoomable lighttable and enables you to develop raw images
and enhance them.")
+ ;; see src/is_supported_platform.h for supported platforms
+ (supported-systems '("i686-linux" "x86_64-linux" "aarch64-linux"))
(license license:gpl3+)))
(define-public hugin
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index ef7b92bd48..34cab7a041 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -6036,7 +6036,19 @@ of the structure, dynamics, and functions of complex networks.")
(build-system python-build-system)
(arguments
;; TODO: Package missing test dependencies.
- '(#:tests? #f))
+ '(#:tests? #f
+ #:phases
+ (modify-phases %standard-phases
+ ;; For cluster execution Snakemake will call Python. Since there is
+ ;; no suitable PYTHONPATH set, cluster execution will fail. We fix
+ ;; this by calling the snakemake wrapper instead.
+ (add-after 'unpack 'call-wrapper-not-wrapped-snakemake
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* "snakemake/executors.py"
+ (("\\{sys.executable\\} -m snakemake")
+ (string-append (assoc-ref outputs "out")
+ "/bin/snakemake")))
+ #t)))))
(propagated-inputs
`(("python-wrapt" ,python-wrapt)
("python-requests" ,python-requests)))
diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm
index bcb715327c..dae00732af 100644
--- a/gnu/packages/scheme.scm
+++ b/gnu/packages/scheme.scm
@@ -3,7 +3,7 @@
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2015, 2016 Federico Beffa <beffa@fbengineering.ch>
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net>
;;; Copyright © 2017 John Darrington <jmd@gnu.org>
@@ -181,7 +181,7 @@
"0w5ib5vsidihb4hb6fma3sp596ykr8izagm57axvgd6lqzwicsjg"))))))))
;; Fails to build on MIPS, see <http://bugs.gnu.org/18221>.
- (supported-systems (delete "mips64el-linux" %supported-systems))
+ (supported-systems '("x86_64-linux" "i686-linux" "armhf-linux"))
(home-page "https://www.gnu.org/software/mit-scheme/")
(synopsis "A Scheme implementation with integrated editor and debugger")
diff --git a/gnu/packages/screen.scm b/gnu/packages/screen.scm
index 49584662b1..af0079be20 100644
--- a/gnu/packages/screen.scm
+++ b/gnu/packages/screen.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
+;;; Copyright © 2015, 2017 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
@@ -37,14 +37,13 @@
(define-public screen
(package
(name "screen")
- (version "4.5.1")
+ (version "4.6.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/screen/screen-"
version ".tar.gz"))
- (patches (search-patches "screen-fix-info-syntax-error.patch"))
(sha256
- (base32 "0bbv16gpxrh64sn4bvjy3qjy7jsxjlqlilyysin02fwnvla23nwp"))))
+ (base32 "1m7yd2bs1i623kk27nfy3qa2mgjp5qjqxwj5qz21r51ycmmp0cwl"))))
(build-system gnu-build-system)
(native-inputs
`(("makeinfo" ,texinfo)))
diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm
index 832b8dc7c5..41c0668151 100644
--- a/gnu/packages/statistics.scm
+++ b/gnu/packages/statistics.scm
@@ -2,7 +2,7 @@
;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015 Vicente Vera Parra <vicentemvp@gmail.com>
;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
-;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
@@ -3768,37 +3768,26 @@ from within R.")
(define-public r-spams
(package
(name "r-spams")
- (version "2.5-svn2014-07-04")
+ (version "2.6-2017-03-22")
(source
(origin
(method url-fetch)
- (uri (string-append "https://gforge.inria.fr/frs/download.php/33815/"
+ (uri (string-append "https://gforge.inria.fr/frs/download.php/36615/"
"spams-R-v" version ".tar.gz"))
(sha256
(base32
- "1k459jg9a334slkw31w63l4d39xszjzsng7dv5j1mp78zifz7hvx"))))
+ "13z2293jixf1r9g8dyy856xrhvpjr2ln2n9smn6644126r9hmhkx"))))
(build-system r-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _ (chdir "spams") #t))
- ;; Since R 3.3.0 including R headers inside of an extern "C" block
- ;; causes C headers to be included, which results in a lot of
- ;; duplicate definitions. This can be avoided by defining
- ;; NO_C_HEADERS before including the R headers.
- (add-after 'chdir 'patch-use-of-R-headers
+ ;; Don't tune for the building machine
+ (add-after 'chdir 'no-mtune
(lambda _
- (substitute* "src/spams.cpp"
- (("#include <R.h>" line)
- (string-append "#define NO_C_HEADERS\n" line)))
- #t))
- ;; This looks like a syntax error.
- (add-after 'chdir 'patch-isnan
- (lambda _
- (substitute* '"src/spams/linalg/linalg.h"
- (("if isnan\\(lambda\\) \\{")
- "if (isnan(lambda)) {"))
+ (substitute* "src/Makevars"
+ (("-mtune=native") ""))
#t)))))
(propagated-inputs
`(("r-lattice" ,r-lattice)
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index eb69547a1c..f4b6596e9d 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -735,11 +735,14 @@ book).")
(and (zero? (system* "luatex" "-ini" "-interaction=batchmode"
"-output-directory=build"
"unpack.ins"))
- ;; LaTeX and XeTeX require e-TeX, which is enabled only in
- ;; extended mode (activated with a leading asterisk). We
- ;; should not use luatex here, because that would make the
- ;; generated format files incompatible with any other TeX
- ;; engine.
+ (zero? (system* "tex" "-ini" "-interaction=batchmode"
+ "-output-directory=web2c"
+ "tex.ini"))
+ ;; LaTeX, pdfetex/pdftex, and XeTeX require e-TeX, which
+ ;; is enabled only in extended mode (activated with a
+ ;; leading asterisk). We should not use luatex here,
+ ;; because that would make the generated format files
+ ;; incompatible with any other TeX engine.
;; FIXME: XeTeX fails to build because neither
;; \XeTeXuseglyphmetrics nor \XeTeXdashbreakstate are
@@ -751,7 +754,8 @@ book).")
"-translate-file=cp227.tcx"
(string-append "*" format ".ini"))))
'("latex" ;"xetex"
- ))
+ "pdflatex"
+ "pdfetex"))
(every
(lambda (format)
(zero? (system* "luatex" "-ini" "-interaction=batchmode"
@@ -772,6 +776,10 @@ book).")
(find-files "build" ".*"))
(for-each (cut install-file <> web2c)
(find-files "web2c" ".*"))
+ ;; pdftex is really just the same as pdfetex, but since it
+ ;; doesn't have its own format file, we need to copy it.
+ (copy-file "web2c/pdfetex.fmt"
+ (string-append web2c "/pdftex.fmt"))
#t))))))
(native-inputs
`(("texlive-bin" ,texlive-bin)
@@ -934,7 +942,7 @@ verbatim source).")
(revision %texlive-revision)))
(sha256
(base32
- "1q5l0x3jsy74v0zq4c9g0x0rb9jfzf7cbhdzkbchyydv49iav802"))))))
+ "0gi4qv6378nl84s8n1yx3hjqvv7r4lza7hpbymbl5rzwgw8qrnyb"))))))
(home-page "http://www.ctan.org/pkg/latex-graphics")
(synopsis "LaTeX standard graphics bundle")
(description
@@ -1446,6 +1454,131 @@ distribution.")
(description "This is a very limited subset of the TeX Live distribution.
It includes little more than the required set of LaTeX packages.")))
+(define-public texlive-latex-natbib
+ (package
+ (name "texlive-latex-natbib")
+ (version (number->string %texlive-revision))
+ (source (origin
+ (method svn-fetch)
+ (uri (texlive-ref "latex" "natbib"))
+ (sha256
+ (base32
+ "0aqliq0nwblxyrzhwhv77pnmk7qh2y3prgq7z7qhwcbgz5kisld7"))))
+ (build-system texlive-build-system)
+ (arguments '(#:tex-directory "latex/natbib"))
+ (home-page "http://www.ctan.org/pkg/natbib")
+ (synopsis "Flexible bibliography support")
+ (description
+ "This bundle provides a package that implements both author-year and
+numbered references, as well as much detailed of support for other
+bibliography use. Also provided are versions of the standard BibTeX styles
+that are compatible with @code{natbib}: @code{plainnat}, @code{unsrtnat},
+@code{abbrnat}. The bibliography styles produced by @code{custom-bib} are
+designed from the start to be compatible with @code{natbib}.")
+ (license license:lppl)))
+
+(define-public texlive-latex-seminar
+ (package
+ (name "texlive-latex-seminar")
+ (version (number->string %texlive-revision))
+ (source (origin
+ (method svn-fetch)
+ (uri (svn-reference
+ (url (string-append "svn://www.tug.org/texlive/tags/"
+ %texlive-tag "/Master/texmf-dist/"
+ "/tex/latex/seminar"))
+ (revision %texlive-revision)))
+ (sha256
+ (base32
+ "0y4i651b75y6006n03x8n86bsqvjsailvvz9bhzy51dzsznqidq0"))))
+ (build-system texlive-build-system)
+ (arguments '(#:tex-directory "latex/seminar"))
+ (home-page "http://www.ctan.org/pkg/seminar")
+ (synopsis "Make overhead slides")
+ ;; TODO: This package may need fancybox and xcomment at runtime.
+ (description
+ "This package provides a class that produces overhead
+slides (transparencies), with many facilities. Seminar is not nowadays
+reckoned a good basis for a presentation — users are advised to use more
+recent classes such as powerdot or beamer, both of which are tuned to
+21st-century presentation styles.")
+ (license license:lppl1.2+)))
+
+(define-public texlive-latex-hyperref
+ (package
+ (name "texlive-latex-hyperref")
+ (version (number->string %texlive-revision))
+ (source (origin
+ (method svn-fetch)
+ (uri (texlive-ref "latex" "hyperref"))
+ (sha256
+ (base32
+ "03arf3xvz1jsbvlpgc5qxbxbl9wmk8k09cn6b8gv9pzgpjy4vx4j"))))
+ (build-system texlive-build-system)
+ (arguments
+ '(#:tex-directory "latex/hyperref"
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'remove-hluatex.def
+ (lambda _
+ ;; This depends on hluatex.dtx, which does not exist and is
+ ;; nowhere to be found in the sources of the TeX Live
+ ;; distribution.
+ (substitute* "hyperref.ins"
+ (("\\\\file\\{hluatex.def\\}.*") ""))
+ #t)))))
+ ;; The package depends on the kvoptions, ltxcmds, and refcount packages,
+ ;; which are part of the oberdiek bundle.
+ (inputs
+ `(("texlive-latex-oberdiek" ,texlive-latex-oberdiek)))
+ (home-page "http://www.ctan.org/pkg/hyperref")
+ (synopsis "Extensive support for hypertext in LaTeX")
+ (description
+ "The @code{hyperref} package is used to handle cross-referencing commands
+in LaTeX to produce hypertext links in the document. The package provides
+backends for the @code{\\special} set defined for HyperTeX DVI processors; for
+embedded @code{pdfmark} commands for processing by Acrobat
+Distiller (@code{dvips} and Y&Y's @code{dvipsone}); for Y&Y's @code{dviwindo};
+for PDF control within pdfTeX and @code{dvipdfm}; for TeX4ht; and for VTeX's
+pdf and HTML backends. The package is distributed with the @code{backref} and
+@code{nameref} packages, which make use of the facilities of @code{hyperref}.")
+ (license license:lppl1.3+)))
+
+(define-public texlive-tex-texinfo
+ (package
+ (name "texlive-tex-texinfo")
+ (version (number->string %texlive-revision))
+ (source (origin
+ (method svn-fetch)
+ (uri (svn-reference
+ (url (string-append "svn://www.tug.org/texlive/tags/"
+ %texlive-tag "/Master/texmf-dist/"
+ "/tex/texinfo"))
+ (revision %texlive-revision)))
+ (sha256
+ (base32
+ "09zj2w3lx0y6i2syfjjgizahf86z301dw8p37ln6syfhqhzqdz46"))))
+ (build-system trivial-build-system)
+ (arguments
+ `(#:modules ((guix build utils))
+ #:builder
+ (begin
+ (use-modules (guix build utils))
+ (let ((target (string-append (assoc-ref %outputs "out")
+ "/share/texmf-dist/tex/texinfo")))
+ (mkdir-p target)
+ (copy-recursively (assoc-ref %build-inputs "source") target)
+ #t))))
+ (home-page "http://www.ctan.org/pkg/texinfo")
+ (synopsis "TeX macros to handle Texinfo files")
+ (description
+ "Texinfo is the preferred format for documentation in the GNU project;
+the format may be used to produce online or printed output from a single
+source. The Texinfo macros may be used to produce printable output using TeX;
+other programs in the distribution offer online interactive use (with
+hypertext linkages in some cases).")
+ (license license:gpl3+)))
+
(define texlive-texmf
(package
(name "texlive-texmf")
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 32f09db751..816fb9dbea 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -2001,7 +2001,8 @@ of modern, widely supported codecs.")
`(("nasm" ,nasm)
("python" ,python)))
(arguments
- '(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
+ '(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
+ "CC=gcc")
#:test-target "test"
#:phases (modify-phases %standard-phases
;; no configure script
diff --git a/gnu/packages/wdiff.scm b/gnu/packages/wdiff.scm
index 1dcdb8ba36..20fc0bc06f 100644
--- a/gnu/packages/wdiff.scm
+++ b/gnu/packages/wdiff.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
+;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -39,18 +40,16 @@
"0sxgg0ms5lhi4aqqvz1rj4s77yi9wymfm3l3gbjfd1qchy66kzrl"))))
(build-system gnu-build-system)
(arguments
- `(#:phases (alist-cons-before
- 'check 'fix-sh
- (lambda _
- (substitute* "tests/testsuite"
- (("#! /bin/sh")
- (string-append "#!" (which "sh")))))
- %standard-phases)))
- (inputs `(("screen" ,screen)
- ("which" ,which)
-
- ;; For some reason wdiff.info gets rebuilt.
- ("texinfo" ,texinfo)))
+ `(#:phases (modify-phases %standard-phases
+ (add-before 'check 'fix-sh
+ (lambda _
+ (substitute* "tests/testsuite"
+ (("#! /bin/sh")
+ (string-append "#!" (which "sh")))))))))
+ (native-inputs
+ `(("which" ,which)
+ ;; For some reason wdiff.info gets rebuilt.
+ ("texinfo" ,texinfo)))
(home-page "https://www.gnu.org/software/wdiff/")
(synopsis "Word difference finder")
(description
diff --git a/gnu/packages/wine.scm b/gnu/packages/wine.scm
index 63dba8a8bc..fa745a1711 100644
--- a/gnu/packages/wine.scm
+++ b/gnu/packages/wine.scm
@@ -55,14 +55,14 @@
(define-public wine
(package
(name "wine")
- (version "2.10")
+ (version "2.11")
(source (origin
(method url-fetch)
(uri (string-append "https://dl.winehq.org/wine/source/2.x"
"/wine-" version ".tar.xz"))
(sha256
(base32
- "0ygiaayi2mv6jl450d03i4x2gd2bg3mwk3s2pxas87g8sbzzg3a8"))))
+ "0g6cwjyqwc660w33453aklh3hpc0b8rrb88dryn23ah6wannvagg"))))
(build-system gnu-build-system)
(native-inputs `(("pkg-config" ,pkg-config)
("gettext" ,gettext-minimal)
@@ -104,8 +104,7 @@
("unixodbc" ,unixodbc)
("zlib" ,zlib)))
(arguments
- `(;; The 64-bit build of Wine is reportedly less useful or even usable,
- ;; so force a 32-bit build (under the assumption that this package is
+ `(;; Force a 32-bit build (under the assumption that this package is
;; being used on an IA32-compatible architecture.)
#:system "i686-linux"
diff --git a/gnu/packages/xfce.scm b/gnu/packages/xfce.scm
index d7d1372dd2..101909b1e4 100644
--- a/gnu/packages/xfce.scm
+++ b/gnu/packages/xfce.scm
@@ -159,13 +159,15 @@ storage system.")
`(("pkg-config" ,pkg-config)
("intltool" ,intltool)))
(propagated-inputs
- `(("gtk+-2" ,gtk+-2) ; required by libxfce4ui-1.pc
- ("gtk+-3" ,gtk+) ; required by libxfce4ui-2.pc
+ `(("gtk+-3" ,gtk+) ; required by libxfce4ui-2.pc
;; libxfce4kbd-private-2.pc refers to all these.
("libxfce4util" ,libxfce4util)
("xfconf" ,xfconf)))
(inputs `(("libsm" ,libsm)
("libice" ,libice)
+ ;; FIXME: required by libxfce4ui-1.pc, so should be propagated,
+ ;; but will lead to a conflict with gtk+.
+ ("gtk+-2" ,gtk+-2)
("startup-notification" ,startup-notification)))
(home-page "http://www.xfce.org/")
(synopsis "Widgets library for Xfce")
@@ -221,6 +223,8 @@ development.")
`(("pkg-config" ,pkg-config)
("intltool" ,intltool)
("glib:bin" ,glib "bin")))
+ (inputs
+ `(("gtk+" ,gtk+-2)))
(propagated-inputs
`(("libxfce4ui" ,libxfce4ui))) ; required by garcon-gtk2-1.pc
(home-page "http://www.xfce.org/")
@@ -452,6 +456,7 @@ per window.")
("intltool" ,intltool)))
(inputs
`(("garcon" ,garcon)
+ ("gtk+" ,gtk+-2)
("libxfce4ui" ,libxfce4ui)))
(home-page "http://www.xfce.org/")
(synopsis "Xfce application finder")
@@ -698,8 +703,17 @@ on your desktop.")
(version (package-version xfce4-session))
(source #f)
(build-system trivial-build-system)
- (arguments '(#:builder (mkdir %output)))
- (propagated-inputs
+ (arguments
+ '(#:modules ((guix build union))
+ #:builder
+ (begin
+ (use-modules (ice-9 match)
+ (guix build union))
+ (match %build-inputs
+ (((names . directories) ...)
+ (union-build (assoc-ref %outputs "out")
+ directories))))))
+ (inputs
`(("exo" ,exo)
("garcon" ,garcon)
("gnome-icon-theme" ,gnome-icon-theme)
@@ -750,6 +764,7 @@ system resources, while still being visually appealing and user friendly.")
("intltool" ,intltool)))
(inputs
`(("lbxrandr" ,libxrandr)
+ ("gtk+" ,gtk+-2)
("upower" ,upower)
("libnotify" ,libnotify)
("libxfce4ui" ,libxfce4ui)))
@@ -783,6 +798,7 @@ inhibit interface which allows applications to prevent automatic sleep.")
("pkg-config" ,pkg-config)))
(inputs
`(("desktop-file-utils" ,desktop-file-utils)
+ ("gtk+" ,gtk+-2)
("libexif" ,libexif)
("libxfce4ui" ,libxfce4ui)
("librsvg" ,librsvg)
diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm
index 910857d121..278410f4ce 100644
--- a/gnu/packages/xorg.scm
+++ b/gnu/packages/xorg.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
-;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2014, 2015, 2017 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2015 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
@@ -2849,7 +2849,8 @@ X server.")
(string-prefix? "x86_64-" system)))
%supported-systems))
(arguments
- '(#:phases (modify-phases %standard-phases
+ '(#:configure-flags '("--with-default-accel=uxa")
+ #:phases (modify-phases %standard-phases
(add-after 'unpack 'bootstrap
(lambda _
(zero? (system* "autoreconf" "-vfi")))))))
diff --git a/gnu/system.scm b/gnu/system.scm
index 580159a946..31f9320023 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -490,6 +490,7 @@ explicitly appear in OS."
lsof ;for Guix's 'list-runtime-roots'
pciutils usbutils
util-linux inetutils isc-dhcp
+ shadow ;for 'passwd'
;; wireless-tools is deprecated in favor of iw, but it's still what
;; many people are familiar with, so keep it around.
diff --git a/guix/import/cran.scm b/guix/import/cran.scm
index 8d963a7475..056a7dcc7c 100644
--- a/guix/import/cran.scm
+++ b/guix/import/cran.scm
@@ -69,7 +69,7 @@
("BSD_2_clause + file LICENSE" 'bsd-2)
("BSD_3_clause" 'bsd-3)
("BSD_3_clause + file LICENSE" 'bsd-3)
- ("GPL" (list 'gpl2+ 'gpl3+))
+ ("GPL" '(list gpl2+ gpl3+))
("GPL (>= 2)" 'gpl2+)
("GPL (>= 3)" 'gpl3+)
("GPL-2" 'gpl2)
diff --git a/guix/profiles.scm b/guix/profiles.scm
index dcb5186c7a..056406e303 100644
--- a/guix/profiles.scm
+++ b/guix/profiles.scm
@@ -96,6 +96,7 @@
manifest-transaction-install-entry
manifest-transaction-remove-pattern
manifest-transaction-null?
+ manifest-transaction-removal-candidate?
manifest-perform-transaction
manifest-transaction-effects
@@ -564,6 +565,12 @@ remove software."
(($ <manifest-transaction> () ()) #t)
(($ <manifest-transaction> _ _) #f)))
+(define (manifest-transaction-removal-candidate? entry transaction)
+ "Return true if ENTRY is a candidate for removal in TRANSACTION."
+ (any (lambda (pattern)
+ ((entry-predicate pattern) entry))
+ (manifest-transaction-remove transaction)))
+
(define (manifest-transaction-effects manifest transaction)
"Compute the effect of applying TRANSACTION to MANIFEST. Return 4 values:
the list of packages that would be removed, installed, upgraded, or downgraded
diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm
index 1f835ca5a5..58da3113a0 100644
--- a/guix/scripts/package.scm
+++ b/guix/scripts/package.scm
@@ -294,7 +294,11 @@ of relevance scores."
(output (manifest-entry-output old)))
transaction)))
- (match entry
+ (match (if (manifest-transaction-removal-candidate? entry transaction)
+ 'dismiss
+ entry)
+ ('dismiss
+ transaction)
(($ <manifest-entry> name version output (? string? path))
(match (vhash-assoc name (find-newest-available-packages))
((_ candidate-version pkg . rest)
@@ -492,7 +496,7 @@ Install, remove, or upgrade packages in a single transaction.\n"))
(alist-cons 'do-not-upgrade arg result)
result)
arg-handler))))
- (option '("roll-back") #f #f
+ (option '("roll-back" "rollback") #f #f
(lambda (opt name arg result arg-handler)
(values (alist-cons 'roll-back? #t result)
#f)))
@@ -875,11 +879,11 @@ processed, #f otherwise."
#:dry-run? dry-run?)))))
opts)
- ;; Then, process normal package installation/removal/upgrade.
+ ;; Then, process normal package removal/installation/upgrade.
(let* ((manifest (profile-manifest profile))
- (step1 (options->installable opts manifest
- (manifest-transaction)))
- (step2 (options->removable opts manifest step1))
+ (step1 (options->removable opts manifest
+ (manifest-transaction)))
+ (step2 (options->installable opts manifest step1))
(step3 (manifest-transaction
(inherit step2)
(install (map transform-entry
diff --git a/tests/guix-package.sh b/tests/guix-package.sh
index 5ecb33193f..99952f130c 100644
--- a/tests/guix-package.sh
+++ b/tests/guix-package.sh
@@ -279,8 +279,27 @@ guix package --bootstrap --install-from-file="$module_dir/package.scm"
test "`guix package -A super-non-portable-emacs`" = ""
test "`guix package -s super-non-portable-emacs | grep ^systems:`" = "systems: "
+# Don't upgrade packages marked for removal: <http://bugs.gnu.org/27262>.
+guix package --bootstrap -p "$profile" -i guile-bootstrap
+
+cat > "$module_dir/foo.scm"<<EOF
+(define-module (foo)
+ #:use-module (guix)
+ #:use-module (gnu packages bootstrap))
+
+(define-public x
+ (package (inherit %bootstrap-guile) (version "42")))
+EOF
+
+guix package --bootstrap -p "$profile" -r guile-bootstrap -u guile
+test ! -f "$profile/bin/guile"
+guix package --bootstrap -p "$profile" --roll-back
+test -f "$profile/bin/guile"
+rm "$profile-2-link"
+
unset GUIX_PACKAGE_PATH
+
# Using 'GUIX_BUILD_OPTIONS'.
available="`guix package -A | sort`"
GUIX_BUILD_OPTIONS="--dry-run --no-grafts"
diff --git a/tests/profiles.scm b/tests/profiles.scm
index f731807e8c..469dde2652 100644
--- a/tests/profiles.scm
+++ b/tests/profiles.scm
@@ -197,6 +197,13 @@
(test-assert "manifest-transaction-null?"
(manifest-transaction-null? (manifest-transaction)))
+(test-assert "manifest-transaction-removal-candidate?"
+ (let ((m (manifest (list guile-2.0.9)))
+ (t (manifest-transaction
+ (remove (list (manifest-pattern (name "guile")))))))
+ (and (manifest-transaction-removal-candidate? guile-2.0.9 t)
+ (not (manifest-transaction-removal-candidate? glibc t)))))
+
(test-assertm "profile-derivation"
(mlet* %store-monad
((entry -> (package->manifest-entry %bootstrap-guile))