aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/audio.scm8
-rw-r--r--gnu/packages/bioinformatics.scm4
-rw-r--r--gnu/packages/crypto.scm8
-rw-r--r--gnu/packages/emacs-xyz.scm32
-rw-r--r--gnu/packages/finance.scm185
-rw-r--r--gnu/packages/image-viewers.scm108
-rw-r--r--gnu/packages/imagemagick.scm5
-rw-r--r--gnu/packages/irc.scm4
-rw-r--r--gnu/packages/linux.scm12
-rw-r--r--gnu/packages/lisp.scm57
-rw-r--r--gnu/packages/mail.scm25
-rw-r--r--gnu/packages/mpd.scm4
-rw-r--r--gnu/packages/music.scm4
-rw-r--r--gnu/packages/password-utils.scm73
-rw-r--r--gnu/packages/patches/monero-use-system-miniupnpc.patch95
-rw-r--r--gnu/packages/python-xyz.scm4
-rw-r--r--gnu/packages/ruby.scm48
-rw-r--r--gnu/packages/video.scm22
-rw-r--r--gnu/packages/virtualization.scm20
-rw-r--r--gnu/packages/vpn.scm4
-rw-r--r--gnu/packages/xdisorg.scm4
-rw-r--r--gnu/packages/xfce.scm35
-rw-r--r--guix/derivations.scm33
-rw-r--r--guix/profiles.scm3
-rw-r--r--guix/store.scm12
25 files changed, 489 insertions, 320 deletions
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index eff4edeb59..3168a97414 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -321,7 +321,7 @@ engineers, musicians, soundtrack editors and composers.")
(define-public audacity
(package
(name "audacity")
- (version "2.2.2")
+ (version "2.3.2")
(source
(origin
(method git-fetch)
@@ -331,7 +331,7 @@ engineers, musicians, soundtrack editors and composers.")
(file-name (git-file-name name version))
(sha256
(base32
- "10maxmjxbmjybj7n4m7a9bbm7g8xxw8f8vbsf7c9ih5j2gr15ihs"))
+ "08w96124vv8k4myd4vifq73ningq6404x889wvg2sk016kc4dfv1"))
(patches (search-patches "audacity-build-with-system-portaudio.patch"))
(modules '((guix build utils)))
(snippet
@@ -3383,14 +3383,14 @@ on the ALSA software PCM plugin.")
(define-public snd
(package
(name "snd")
- (version "19.3")
+ (version "19.5")
(source (origin
(method url-fetch)
(uri (string-append "ftp://ccrma-ftp.stanford.edu/pub/Lisp/"
"snd-" version ".tar.gz"))
(sha256
(base32
- "16j3fqyw361wdsr1076f0p3va2y7wdzq1lvr4ijz1ajmbxdlc723"))))
+ "0sk6iyykwi2mm3f1g4r0iqbsrwk3zmyagp6jjqkh8njbq42cjr1y"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:tests? #f ; no tests
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 8c140a1d24..9a30a0eaff 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -12550,7 +12550,7 @@ once. This package provides tools to perform Drop-seq analyses.")
(define-public pigx-rnaseq
(package
(name "pigx-rnaseq")
- (version "0.0.7")
+ (version "0.0.8")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/BIMSBbioinfo/pigx_rnaseq/"
@@ -12558,7 +12558,7 @@ once. This package provides tools to perform Drop-seq analyses.")
"/pigx_rnaseq-" version ".tar.gz"))
(sha256
(base32
- "013inbh22bjvwg2w0kx5i42k66w1zl4310ldip2ax6msgprs2ydj"))))
+ "19nhflzs6k5c7yhi7gkwggq237cjdd1s4b4qkj5x5fkwg0rhn33i"))))
(build-system gnu-build-system)
(arguments
`(#:parallel-tests? #f ; not supported
diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm
index 53137e90e9..45e1d64cd2 100644
--- a/gnu/packages/crypto.scm
+++ b/gnu/packages/crypto.scm
@@ -3,7 +3,7 @@
;;; Copyright © 2015, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017, 2018, 2019 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox>
-;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2016, 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
;;; Copyright © 2016, 2017, 2019 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com>
@@ -330,14 +330,14 @@ no man page, refer to the home page for usage details.")
(define-public tomb
(package
(name "tomb")
- (version "2.5")
+ (version "2.6")
(source (origin
(method url-fetch)
(uri (string-append "https://files.dyne.org/tomb/"
"Tomb-" version ".tar.gz"))
(sha256
(base32
- "12c6qldngaw520gvb02inzkhnxbl4k0dwmddrgnaf7xashy6j0wc"))))
+ "1sr3jcn96mciyn8xd0amd1jzamxxzpybakf8an7laf26gjim1dh2"))))
(build-system gnu-build-system)
(native-inputs `(("sudo" ,sudo))) ;presence needed for 'check' phase
(inputs
@@ -356,7 +356,7 @@ no man page, refer to the home page for usage details.")
;; TODO: Build and install gtk and qt trays
#:phases
(modify-phases %standard-phases
- (delete 'configure) ;no configuration to be done
+ (delete 'configure) ;no configuration to be done
(add-after 'install 'i18n
(lambda* (#:key make-flags #:allow-other-keys)
(apply invoke "make" "-C" "extras/translations"
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index d337700914..b6051c0ac1 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -433,6 +433,38 @@ these arguments. The prototypical use is for the command to call an external
process, passing on the arguments as command line arguments.")
(license license:gpl3+)))
+(define-public emacs-minions
+ (package
+ (name "emacs-minions")
+ (version "0.3.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/tarsius/minions.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0q2y37zfxlbfvgdn70ikg3abp8vljna4ir9nyqlz1awmz5i1c43s"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-dash" ,emacs-dash)))
+ (home-page "https://github.com/tarsius/minions")
+ (synopsis "Minor-mode menu for the mode line")
+ (description
+ "This package implements a menu that lists enabled minor-modes, as well
+as commonly but not currently enabled minor-modes. It can be used to toggle
+local and global minor-modes, to access mode-specific menus, and to get help
+about modes.
+
+This menu is intended as a replacement for the incomplete yet wide list of
+enabled minor-modes that is displayed in the mode line by default. To use the
+menu like this, enable Minions mode.
+
+Alternatively the menu can be bound globally, for example:
+@code{(global-set-key [S-down-mouse-3] 'minions-minor-modes-menu)}.")
+ (license license:gpl3+)))
+
(define-public emacs-treepy
(package
(name "emacs-treepy")
diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index 03a8285fc1..550354b650 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -11,6 +11,7 @@
;;; Copyright © 2018 Adriano Peluso <catonano@gmail.com>
;;; Copyright © 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -39,6 +40,7 @@
#:use-module (gnu packages base)
#:use-module (gnu packages boost)
#:use-module (gnu packages check)
+ #:use-module (gnu packages compression)
#:use-module (gnu packages crypto)
#:use-module (gnu packages databases)
#:use-module (gnu packages documentation)
@@ -68,6 +70,7 @@
#:use-module (gnu packages textutils)
#:use-module (gnu packages tls)
#:use-module (gnu packages upnp)
+ #:use-module (gnu packages version-control)
#:use-module (gnu packages web)
#:use-module (gnu packages xml)
#:use-module (gnu packages gnuzilla))
@@ -428,49 +431,59 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
(define-public monero
;; This package bundles easylogging++ and lmdb.
- ;; The bundled easylogging++ is modified, and the changes will not be upstreamed.
+ ;; The bundled easylogging++ is modified, and the changes will not be
+ ;; upstreamed.
;; The devs deem the lmdb driver too critical a consenus component, to use
;; the system's dynamically linked library.
(package
(name "monero")
- (version "0.12.3.0")
+ (version "0.14.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/monero-project/monero")
- (commit (string-append "v" version))))
+ (url "https://github.com/monero-project/monero.git")
+ (commit (string-append "v" version))
+ (recursive? #t)))
(file-name (git-file-name name version))
(patches (search-patches "monero-use-system-miniupnpc.patch"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Delete bundled dependencies.
+ (for-each
+ delete-file-recursively
+ '("external/miniupnp" "external/rapidjson"
+ "external/unbound"))
+ #t))
(sha256
(base32
- "14db9kgjm2ha93c2x5fjdw01xaqshn756qr3x2cnzyyjh7caz5qd"))))
+ "1asa197fad81jfv12qgaa7y7pdr1r1pda96m9pvivkh4v30cx0nh"))))
(build-system cmake-build-system)
(native-inputs
`(("doxygen" ,doxygen)
- ("googletest" ,googletest)
+ ("git" ,git)
("graphviz" ,graphviz)
- ("pkg-config" ,pkg-config)))
+ ("pkg-config" ,pkg-config)
+ ("qttools" ,qttools)))
(inputs
- `(("bind" ,isc-bind)
- ("boost" ,boost)
- ("zeromq" ,zeromq)
+ `(("boost" ,boost)
("cppzmq" ,cppzmq)
("expat" ,expat)
- ("libsodium" ,libsodium)
+ ("hidapi" ,hidapi)
("libunwind" ,libunwind)
- ("lmdb" ,lmdb)
- ("miniupnpc" ,monero-miniupnpc)
+ ("libsodium" ,libsodium)
+ ("miniupnpc" ,miniupnpc)
("openssl" ,openssl)
("rapidjson" ,rapidjson)
- ("unbound" ,unbound)))
+ ("readline" ,readline)
+ ("unbound" ,unbound)
+ ("xz" ,xz)
+ ("zeromq" ,zeromq)))
(arguments
`(#:out-of-source? #t
- #:build-type "release"
- #:configure-flags '("-DBUILD_TESTS=ON"
- ,@(if (string=? "aarch64-linux" (%current-system))
- '("-DARCH=armv8-a")
- '())
+ #:configure-flags '("-DARCH=default"
+ "-DBUILD_TESTS=ON"
"-DBUILD_GUI_DEPS=ON")
#:phases
(modify-phases %standard-phases
@@ -479,24 +492,18 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
(lambda _
(setenv "HOME" (getcwd))
#t))
- (add-after 'set-home 'fix-wallet-path-for-unit-tests
- (lambda _
- (substitute* "tests/unit_tests/serialization.cpp"
- (("\\.\\./\\.\\./\\.\\./\\.\\./") "../../"))
- #t))
- (add-after 'fix-wallet-path-for-unit-tests 'change-log-path
+ (add-after 'set-home 'change-log-path
(lambda _
(substitute* "contrib/epee/src/mlog.cpp"
(("epee::string_tools::get_current_module_folder\\(\\)")
- "\".bitmonero\""))
- (substitute* "contrib/epee/src/mlog.cpp"
- (("return \\(") "return ((std::string(getenv(\"HOME\"))) / "))
+ "\".bitmonero\"")
+ (("return \\(")
+ "return ((std::string(getenv(\"HOME\"))) / "))
#t))
+ ;; Only try tests that don't need access to network or system
(replace 'check
(lambda _
- (invoke "make" "ARGS=-E 'unit_tests|libwallet_api_tests'"
- "test")))
- ;; The excluded unit tests need network access
+ (invoke "make" "ARGS=-R 'hash|core_tests'" "test")))
(add-after 'check 'unit-tests
(lambda _
(let ((excluded-unit-tests
@@ -506,58 +513,69 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
"DNSResolver.IPv4Success"
"DNSResolver.DNSSECSuccess"
"DNSResolver.DNSSECFailure"
- "DNSResolver.GetTXTRecord")
+ "DNSResolver.GetTXTRecord"
+ ;; TODO: Find why portability_wallet test fails
+ ;; Maybe the Boost version used to create the test
+ ;; wallet and the current Boost version are not
+ ;; completely compatible?
+ "Serialization.portability_wallet"
+ "is_hdd.linux_os_root")
":")))
(invoke "tests/unit_tests/unit_tests"
(string-append "--gtest_filter=-"
- excluded-unit-tests)))))
- (add-after 'install 'install-blockchain-import-export
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (bin (string-append out "/bin")))
- (install-file "bin/monero-blockchain-import" bin)
- (install-file "bin/monero-blockchain-export" bin)))))))
+ excluded-unit-tests))))))))
(home-page "https://getmonero.org/")
(synopsis "Command-line interface to the Monero currency")
(description
- "Monero is a secure, private, untraceable currency. This package provides the
-Monero command line client and daemon.")
+ "Monero is a secure, private, untraceable currency. This package provides
+the Monero command line client and daemon.")
(license license:bsd-3)))
(define-public monero-gui
(package
(name "monero-gui")
- (version "0.12.2.0")
+ (version "0.14.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/monero-project/monero-gui")
+ (url "https://github.com/monero-project/monero-gui.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
- "1cnrkwh7kp64lnzz1xfmkf1mhsgm5gls292gpqai3jr8jydpkahl"))))
+ "0ilx47771faygf97wilm64xnqxgxa3b43q0g9v014npk0qj8pc31"))))
(build-system gnu-build-system)
(native-inputs
- `(("doxygen" ,doxygen)
- ("graphviz" ,graphviz)
- ("pkg-config" ,pkg-config)
+ `(("pkg-config" ,pkg-config)
("qttools" ,qttools)))
(inputs
`(("boost" ,boost)
+ ("hidapi" ,hidapi)
("libunwind" ,libunwind)
+ ("libsodium" ,libsodium)
("openssl" ,openssl)
("qtbase" ,qtbase)
("qtdeclarative" ,qtdeclarative)
("qtgraphicaleffects" ,qtgraphicaleffects)
+ ("qtlocation" ,qtlocation)
+ ("qtmultimedia" ,qtmultimedia)
("qtquickcontrols" ,qtquickcontrols)
- ("readline" ,readline)
+ ("qtquickcontrols2",qtquickcontrols2)
+ ("qtsvg" ,qtsvg)
+ ("qtwebchannel" ,qtwebchannel)
+ ("qtx11extras" ,qtx11extras)
+ ("qtxmlpatterns" ,qtxmlpatterns)
("unbound" ,unbound)))
(propagated-inputs
`(("monero" ,monero)))
(arguments
- `(#:phases
+ `(#:modules ((guix build gnu-build-system)
+ (guix build qt-utils)
+ (guix build utils))
+ #:imported-modules (,@%gnu-build-system-modules
+ (guix build qt-utils))
+ #:phases
(modify-phases %standard-phases
(delete 'configure)
(delete 'check)
@@ -569,32 +587,45 @@ Monero command line client and daemon.")
(add-after 'fix-makefile-vars 'fix-library-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "monero-wallet-gui.pro"
- (("-L/usr/local/lib") "")
+ (("-L/usr/local/lib")
+ "")
(("-L/usr/local/opt/openssl/lib")
- (string-append "-L"
- (assoc-ref inputs "openssl")
- "/lib"))
+ (string-append "-L" (assoc-ref inputs "openssl") "/lib"))
(("-L/usr/local/opt/boost/lib")
- (string-append "-L"
- (assoc-ref inputs "boost")
- "/lib")))
+ (string-append "-L" (assoc-ref inputs "boost") "/lib")))
#t))
(add-after 'fix-library-paths 'fix-monerod-path
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/daemon/DaemonManager.cpp"
(("QApplication::applicationDirPath\\(\\) \\+ \"/monerod")
- (string-append "\""(assoc-ref inputs "monero")
+ (string-append "\"" (assoc-ref inputs "monero")
"/bin/monerod")))
#t))
(add-after 'fix-monerod-path 'fix-qt-paths
(lambda* (#:key inputs #:allow-other-keys)
- (let* ((qttools (assoc-ref inputs "qttools"))
- (lrelease (string-append qttools "/bin/lrelease"))
- (lupdate (string-append qttools "/bin/lupdate")))
- (substitute* "monero-wallet-gui.pro"
- (("\\$\\$\\[QT_INSTALL_BINS\\]/lrelease") lrelease)
- (("\\$\\$\\[QT_INSTALL_BINS\\]/lupdate") lupdate))
- #t)))
+ (substitute* "monero-wallet-gui.pro"
+ (("\\$\\$\\[QT_INSTALL_BINS\\]/lrelease")
+ (string-append (assoc-ref inputs "qttools") "/bin/lrelease"))
+ (("\\$\\$\\[QT_INSTALL_BINS\\]/lupdate")
+ (string-append (assoc-ref inputs "qttools") "/bin/lupdate")))
+ #t))
+ (add-after 'fix-qt-paths 'make-qt-deterministic
+ (lambda _
+ (setenv "QT_RCC_SOURCE_DATE_OVERRIDE" "1")
+ #t))
+ (add-after 'make-qt-deterministic 'fix-version
+ (lambda _
+ (substitute* "build.sh"
+ (("echo .*> version.js")
+ ""))
+ (with-output-to-file "version.js"
+ (lambda _
+ (format #t
+ "var GUI_VERSION = \"~a\"~@
+ var GUI_MONERO_VERSION = \"~a\"~%"
+ ,version
+ ,(package-version monero))))
+ #t))
(replace 'build
(lambda _
(invoke "./build.sh")))
@@ -606,28 +637,18 @@ Monero command line client and daemon.")
#t))
(add-before 'install 'change-dir
(lambda _
- (chdir "build")))
- (add-after 'install 'wrap-executable
- (lambda* (#:key inputs outputs #:allow-other-keys)
+ (chdir "build")
+ #t))
+ (add-after 'install 'wrap-program
+ (lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
- (wrap-program (string-append out "/bin/monero-wallet-gui")
- `("QT_PLUGIN_PATH" ":" prefix
- ,(map (lambda (label)
- (string-append (assoc-ref inputs label)
- "/lib/qt5/plugins"))
- '("qtbase" "qtdeclarative")))
- `("QML2_IMPORT_PATH" ":" prefix
- ,(map (lambda (label)
- (string-append (assoc-ref inputs label)
- "/lib/qt5/qml"))
- '("qtdeclarative" "qtgraphicaleffects"
- "qtquickcontrols"))))
- #t))))))
+ (wrap-qt-program out "monero-wallet-gui"))
+ #t)))))
(home-page "https://getmonero.org/")
(synopsis "Graphical user interface for the Monero currency")
(description
- "Monero is a secure, private, untraceable currency. This package provides the
-Monero GUI client.")
+ "Monero is a secure, private, untraceable currency. This package provides
+the Monero GUI client.")
(license license:bsd-3)))
(define-public monero-core
diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm
index 7d2ff9a677..6db52e0be0 100644
--- a/gnu/packages/image-viewers.scm
+++ b/gnu/packages/image-viewers.scm
@@ -110,59 +110,73 @@ actions.")
"See 'COPYING' in the distribution."))))
(define-public geeqie
- (package
- (name "geeqie")
- (version "1.4")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/BestImageViewer/geeqie/"
- "releases/download/v" version "/geeqie-"
- version ".tar.xz"))
- (sha256
- (base32
- "0ciygvcxb78pqg59r6p061mkbpvkgv2rv3r79j3kgv3kalb3ln2w"))))
- (build-system gnu-build-system)
- (arguments
- `(;; Enable support for a "map" pane using GPS data.
- #:configure-flags '("--enable-map")
+ ;; The latest release, 1.4, fails to build with Exiv2 0.27.1. The upstream
+ ;; repo has several fixes for that, so take a snapshot.
+ (let ((commit "c220ddefb1b6b11b54f7598f0d44dd0723325ed4")
+ (revision "1"))
+ (package
+ (name "geeqie")
+ (version (git-version "1.4" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/BestImageViewer/geeqie")
+ (commit commit)))
+ (sha256
+ (base32
+ "07424nzrnwbksgalgg1a6ig2snd986w79kca1cfnv1q9kc7x2h3x"))
+ (file-name (git-file-name name version))))
+ (build-system gnu-build-system)
+ (arguments
+ `( ;; Enable support for a "map" pane using GPS data.
+ #:configure-flags '("--enable-map")
- #:phases
- (modify-phases %standard-phases
- (add-before 'bootstrap 'pre-bootstrap
- (lambda _
- (define (write-dummy-changelog port)
- (display "See Git history for a change log.\n" port))
- ;; Create ChangeLog{,.html} to placate the makefile, which would
- ;; otherwise require access to the Git repo.
- (call-with-output-file "ChangeLog"
- write-dummy-changelog)
- (call-with-output-file "ChangeLog.html"
- write-dummy-changelog)
- (setenv "NOCONFIGURE" "true")
- #t)))))
- (inputs
- `(("clutter" ,clutter)
- ("libchamplain" ,libchamplain)
- ("lcms" ,lcms)
- ("exiv2" ,exiv2)
- ("libpng" ,libpng)
- ("gtk+" ,gtk+)))
- (native-inputs
- `(("autoconf" ,autoconf)
- ("automake" ,automake)
- ("glib" ,glib "bin") ; glib-gettextize
- ("intltool" ,intltool)
- ("pkg-config" ,pkg-config)))
- (home-page "http://www.geeqie.org/")
- (synopsis "Lightweight GTK+ based image viewer")
- (description
- "Geeqie is a lightweight GTK+ based image viewer for Unix like operating
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'bootstrap 'pre-bootstrap
+ (lambda _
+ (define (write-dummy-changelog port)
+ (display "See Git history for a change log.\n" port))
+ ;; Create ChangeLog{,.html} to placate the makefile, which would
+ ;; otherwise require access to the Git repo.
+ (call-with-output-file "ChangeLog"
+ write-dummy-changelog)
+ (call-with-output-file "ChangeLog.html"
+ write-dummy-changelog)
+ (setenv "NOCONFIGURE" "true")
+
+ ;; Don't try to run 'git' for the version number.
+ (substitute* "configure.ac"
+ (("m4_esyscmd_s\\([^)]+\\)")
+ (string-append "[" ,version "]")))
+
+ ;; Remove references to non-existent files.
+ (substitute* "po/POTFILES.in"
+ (("^plugins/import/.*") ""))
+ #t)))))
+ (inputs
+ `(("clutter" ,clutter)
+ ("libchamplain" ,libchamplain)
+ ("lcms" ,lcms)
+ ("exiv2" ,exiv2)
+ ("libpng" ,libpng)
+ ("gtk+" ,gtk+)))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("glib" ,glib "bin") ; glib-gettextize
+ ("intltool" ,intltool)
+ ("pkg-config" ,pkg-config)))
+ (home-page "http://www.geeqie.org/")
+ (synopsis "Lightweight GTK+ based image viewer")
+ (description
+ "Geeqie is a lightweight GTK+ based image viewer for Unix like operating
systems. It features: EXIF, IPTC and XMP metadata browsing and editing
interoperability; easy integration with other software; geeqie works on files
and directories, there is no need to import images; fast preview for many raw
image formats; tools for image comparison, sorting and managing photo
collection. Geeqie was initially based on GQview.")
- (license license:gpl2+)))
+ (license license:gpl2+))))
(define-public gpicview
(package
diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm
index 3cc9396d57..39fcf61a12 100644
--- a/gnu/packages/imagemagick.scm
+++ b/gnu/packages/imagemagick.scm
@@ -170,7 +170,7 @@ script.")
(define-public graphicsmagick
(package
(name "graphicsmagick")
- (version "1.3.31")
+ (version "1.3.32")
(source
(origin
(method url-fetch)
@@ -182,7 +182,8 @@ script.")
"GraphicsMagick/" (version-major+minor version)
"/GraphicsMagick-" version ".tar.xz")))
(sha256
- (base32 "0y22740f25qxsqqqg26xqlfp920dm57b7hrgaqmx7azksrcvnsq9"))))
+ (base32
+ "1qclp9i31idpcbbqswmnq2q11lmv0a7cvdb1y72xcky8sshaahmq"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm
index 851bea05bf..622f1253d8 100644
--- a/gnu/packages/irc.scm
+++ b/gnu/packages/irc.scm
@@ -127,7 +127,7 @@ irssi, but graphical.")
(define-public irssi
(package
(name "irssi")
- (version "1.1.2")
+ (version "1.1.3")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/irssi/irssi/"
@@ -135,7 +135,7 @@ irssi, but graphical.")
version ".tar.xz"))
(sha256
(base32
- "0clppwqhllrmqjg1dd47v9v1qiqx7cf9afm81bm1pscllf4jpk2w"))))
+ "0jq8zjdhdjxkjbfl4g4nfr1ninyfxffa27lm8vcyrihhhkrn65yf"))))
(build-system gnu-build-system)
(arguments
`(#:phases
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index b4407a5133..690fd1ad68 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -430,8 +430,8 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
It has been modified to remove all non-free binary blobs.")
(license license:gpl2)))
-(define %linux-libre-version "5.1.15")
-(define %linux-libre-hash "1f0hhyjsm4bl7k7w88aifvhmqmjkvkvlpd2b69y7s6csr22fk6v4")
+(define %linux-libre-version "5.1.16")
+(define %linux-libre-hash "055vs2g6z6wx34qvi0aw952x9q3drbj7z27s7g7pks6w730xkga8")
(define %linux-libre-5.1-patches
(list %boot-logo-patch
@@ -448,8 +448,8 @@ It has been modified to remove all non-free binary blobs.")
(make-linux-libre-headers %linux-libre-version
%linux-libre-hash))
-(define %linux-libre-4.19-version "4.19.56")
-(define %linux-libre-4.19-hash "1zqiic55viy065lhnkmhn33sz3bbbr2ykbm5f92yzd8lpc9zl7yx")
+(define %linux-libre-4.19-version "4.19.57")
+(define %linux-libre-4.19-hash "0p9b27hfbzppxgad9q2g7nvfzv0phzdsk16sqy87q3dglc8wqrqq")
(define %linux-libre-4.19-patches
(list %boot-logo-patch
@@ -466,8 +466,8 @@ It has been modified to remove all non-free binary blobs.")
(make-linux-libre-headers %linux-libre-4.19-version
%linux-libre-4.19-hash))
-(define %linux-libre-4.14-version "4.14.131")
-(define %linux-libre-4.14-hash "1qcf4cg83zpjirkj8l09y07x4zzskypngampvfw7zyazynwwgs1i")
+(define %linux-libre-4.14-version "4.14.132")
+(define %linux-libre-4.14-hash "0mvp4izw21f8w5kkk8qm8m8b7qjxbp8hshgffdlh1aik41zvcnyq")
(define-public linux-libre-4.14
(make-linux-libre %linux-libre-4.14-version
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 37e375d356..8250340467 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -6035,3 +6035,60 @@ cookie headers, cookie creation, cookie jar creation and more.")
(description "cl-cookie is a Common Lisp library featuring parsing of
cookie headers, cookie creation, cookie jar creation and more.")
(license license:bsd-2))))
+
+(define-public sbcl-dexador
+ (let ((commit "a2714d126cc94bc7a9a6e1e3c08de455b3a66378")
+ (revision "1"))
+ (package
+ (name "sbcl-dexador")
+ (build-system asdf-build-system/sbcl)
+ (version (git-version "0.9.10" revision commit))
+ (home-page "https://github.com/fukamachi/dexador")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0nbqgn4v3l2z6m1k1bdxfnqpfrk84nxdmz7csz11zzcfs4flkv79"))))
+ (inputs
+ `(("trivial-gray-streams" ,sbcl-trivial-gray-streams)
+ ("babel" ,sbcl-babel)
+ ("usocket" ,sbcl-usocket)
+ ("fast-http" ,sbcl-fast-http)
+ ("quri" ,sbcl-quri)
+ ("fast-io" ,sbcl-fast-io)
+ ("chunga" ,sbcl-chunga)
+ ("cl-ppcre" ,sbcl-cl-ppcre)
+ ("cl-cookie" ,sbcl-cl-cookie)
+ ("trivial-mimes" ,sbcl-trivial-mimes)
+ ("chipz" ,sbcl-chipz)
+ ("cl-base64" ,sbcl-cl-base64)
+ ("cl-reexport" ,sbcl-cl-reexport)
+ ("cl+ssl" ,sbcl-cl+ssl)
+ ("bordeaux-threads" ,sbcl-bordeaux-threads)
+ ("alexandria" ,sbcl-alexandria)))
+ (native-inputs
+ `(("prove" ,sbcl-prove)
+ ("prove-asdf" ,sbcl-prove-asdf)
+ ("lack-request" ,sbcl-lack-request)
+ ("clack" ,sbcl-clack)
+ ("babel" ,sbcl-babel)
+ ("alexandria" ,sbcl-alexandria)
+ ("quri" ,sbcl-quri)
+ ("cl-ppcre" ,sbcl-cl-ppcre)
+ ("local-time" ,sbcl-local-time)))
+ (arguments
+ ;; TODO: Circular dependency: tests depend on clack-test which depends on dexador.
+ `(#:tests? #f
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-permissions
+ (lambda _ (make-file-writable "t/data/test.gz") #t)))))
+ (synopsis "Yet another HTTP client for Common Lisp")
+ (description "Dexador is yet another HTTP client for Common Lisp with
+neat APIs and connection-pooling. It is meant to supersede Drakma.")
+ (license license:expat))))
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 1694b7c6b1..6ab0f9358e 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -2526,20 +2526,23 @@ operators and scripters.")
(define-public alpine
(package
(name "alpine")
- (version "2.21.9999")
+ ;; Upstream doesn't use git tags, but does ‘tag’ their releases in the
+ ;; commit message. Hence the lack of GIT-VERSIONing despite using a commit
+ ;; ID below. Don't forget to update it…
+ (version "2.21.99999")
(source
(origin
- (method url-fetch)
+ (method git-fetch)
;; There are two versions: the plain continuation of Alpine without extra
;; patches and the version which adds extra fixes. Every distro uses
;; the patched version, and so do we to not break expectations.
;; http://alpine.freeiz.com/alpine/readme/README.patches
- (uri (string-append "http://repo.or.cz/alpine.git/snapshot/"
- "d3e6f3932f2af9deca8eed09e30a55e9bd524362.tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
+ (uri (git-reference
+ (url "http://repo.or.cz/alpine.git")
+ (commit "abeb2c25935ef8c75f1e5deef0f81276754dc975")))
+ (file-name (git-file-name name version))
(sha256
- (base32
- "0w4qyybfdxi29r2z3giq0by6aa6v6nrgibh1xgv4d1vwwq4hw35w"))))
+ (base32 "0rqgbw08a5lj41dkp82aq480lqkc4bnxagna7wpqffi821n8gkwz"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags (list "CC=gcc")
@@ -2555,7 +2558,8 @@ operators and scripters.")
"/lib")
(string-append "--with-interactive-spellcheck="
(assoc-ref %build-inputs "aspell")
- "/bin/aspell"))
+ "/bin/aspell")
+ "--with-date-stamp=Thu 1 Jan 01:00:01 CET 1970")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'make-reproducible
@@ -2563,9 +2567,6 @@ operators and scripters.")
;; This removes time-dependent code to make alpine reproducible.
(substitute* "pico/blddate.c"
(("%02d-%s-%d") "1970-01-01"))
- (substitute* (list "alpine/Makefile.in"
- "web/src/alpined.d/Makefile.in")
- (("`date`") "1970-01-01"))
#t)))))
(inputs
`(("ncurses" ,ncurses)
@@ -2577,7 +2578,7 @@ operators and scripters.")
("aspell" ,aspell)
("tcl" ,tcl)
("linux-pam" ,linux-pam)))
- (home-page "http://repo.or.cz/alpine.git")
+ (home-page "https://repo.or.cz/alpine.git")
(synopsis "Alternatively Licensed Program for Internet News and Email")
(description
"Alpine is a text-based mail and news client. Alpine includes several
diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm
index 7d46870c55..51c674cb31 100644
--- a/gnu/packages/mpd.scm
+++ b/gnu/packages/mpd.scm
@@ -91,7 +91,7 @@ interfacing MPD in the C, C++ & Objective C languages.")
(define-public mpd
(package
(name "mpd")
- (version "0.21.10")
+ (version "0.21.11")
(source (origin
(method url-fetch)
(uri
@@ -100,7 +100,7 @@ interfacing MPD in the C, C++ & Objective C languages.")
"/mpd-" version ".tar.xz"))
(sha256
(base32
- "0fx9n6qmyb4ls17j7kl58i1ivg9wfx9zm9wyfnwzw7lcwdl56sqk"))))
+ "1gbcg8icm0pp918jw1lx1j066m39zg9wyqjla328ic848j5zhbnk"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags '("-Ddocumentation=true") ; the default is 'false'...
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 0a0677161a..982a0ce5a9 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -4450,7 +4450,7 @@ discard bad quality ones.
(define-public lpd8editor
(package
(name "lpd8editor")
- (version "0.0.12")
+ (version "0.0.13")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -4459,7 +4459,7 @@ discard bad quality ones.
(file-name (git-file-name name version))
(sha256
(base32
- "1v3fz8h1zs7kkl80faah79pp6yqwz0j7bkv3dbmh2hp42zbfiz1q"))))
+ "0lsz3v493ilq2zr016m7kvymrplxd0n3pqv1pjglpq1h7sjw9764"))))
(build-system gnu-build-system)
(arguments
'(#:phases
diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm
index 10d04b1dbc..49024b26c4 100644
--- a/gnu/packages/password-utils.scm
+++ b/gnu/packages/password-utils.scm
@@ -22,6 +22,7 @@
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
;;; Copyright © 2018 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
+;;; Copyright © 2019 Jens Mølgaard <jens@zete.tk>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -562,6 +563,78 @@ one-time-password (OTP) secrets, generating OTP codes, and displaying secret
key URIs using the standard otpauth:// scheme.")
(license license:gpl3+)))
+(define-public qtpass
+ (package
+ (name "qtpass")
+ (version "1.2.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/IJHack/QtPass.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1vfhfyccrxq9snyvayqfzm5rqik8ny2gysyv7nipc91kvhq3bhky"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ ;; lupdate/lrelease need to find qmake.
+ (setenv "QMAKE" "qmake")
+ ;; qmake needs to find lrelease/lupdate.
+ (invoke "qmake"
+ "QMAKE_LRELEASE=lrelease"
+ "QMAKE_LUPDATE=lupdate"
+ (string-append "PREFIX=" out)))))
+ (add-after 'configure 'reset-resource-timestamps
+ ;; Reset timestamps on localization files for a reproducible build.
+ (lambda _
+ (with-directory-excursion "localization"
+ (for-each (lambda (file)
+ (let* ((base (basename file ".qm"))
+ (src (string-append base ".ts"))
+ (st (stat src)))
+ (set-file-time file st)))
+ (find-files "." ".*\\.qm")))
+ #t))
+ (add-after 'install 'install-auxilliary
+ ;; Install man-page, icon and .desktop file.
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (applications (string-append out "/share/applications"))
+ (icons (string-append out "/share/icons/hicolor/scalable/apps"))
+ (man (string-append out "/share/man/man1")))
+ (install-file "qtpass.desktop" applications)
+ (install-file "artwork/icon.svg" icons)
+ (rename-file (string-append icons "/icon.svg")
+ (string-append icons "/qtpass-icon.svg"))
+ (install-file "qtpass.1" man)
+ #t)))
+ (add-before 'check 'check-setup
+ ;; Make Qt render "offscreen", required for tests.
+ (lambda _
+ (setenv "QT_QPA_PLATFORM" "offscreen")
+ #t)))))
+ (native-inputs
+ `(("qttools" ,qttools)))
+ (inputs
+ `(("qtbase" ,qtbase)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://qtpass.org")
+ (synopsis "GUI for password manager password-store")
+ (description
+ "Qt-based graphical user interface for the password manager
+password-store also known as pass. Can use either pass or gpg to interact
+with password-store files. Features configurable password generation,
+templates, clipboard handling, and per folder settings for multi-recipient
+encryption.")
+ (license license:gpl3+)))
+
(define-public argon2
(package
(name "argon2")
diff --git a/gnu/packages/patches/monero-use-system-miniupnpc.patch b/gnu/packages/patches/monero-use-system-miniupnpc.patch
index 6bc825d121..c5d376d793 100644
--- a/gnu/packages/patches/monero-use-system-miniupnpc.patch
+++ b/gnu/packages/patches/monero-use-system-miniupnpc.patch
@@ -1,111 +1,42 @@
-This reverts commit 1e20d705e7c64d2b17c031f345057d1e8850fafa, so that it's possible to use our own
-miniupnpc, instead of a git submodule.
----
- CMakeLists.txt | 8 ++++++++
- external/CMakeLists.txt | 41 +++++++++++++++++++++++++++++++----------
- src/p2p/net_node.inl | 13 ++++++++++---
- 3 files changed, 49 insertions(+), 13 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 3b93988e..ef948885 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -430,6 +430,14 @@ include_directories("${CMAKE_CURRENT_BINARY_DIR}/translations")
-
- add_subdirectory(external)
-
-+# Final setup for miniupnpc
-+if(UPNP_STATIC OR IOS)
-+ add_definitions("-DUPNP_STATIC")
-+else()
-+ add_definitions("-DUPNP_DYNAMIC")
-+ include_directories(${UPNP_INCLUDE})
-+endif()
-+
- # Final setup for libunbound
- include_directories(${UNBOUND_INCLUDE})
- link_directories(${UNBOUND_LIBRARY_DIRS})
diff --git a/external/CMakeLists.txt b/external/CMakeLists.txt
-index 1fc4d64c..b4f712ee 100644
+index 7553f87e..8e865c6c 100644
--- a/external/CMakeLists.txt
+++ b/external/CMakeLists.txt
-@@ -34,21 +34,42 @@
- # We always compile if we are building statically to reduce static dependency issues...
- # ...except for FreeBSD, because FreeBSD is a special case that doesn't play well with
- # others.
-+if(NOT IOS)
-+ find_package(Miniupnpc QUIET)
-+endif()
+@@ -37,19 +37,7 @@
--find_package(Miniupnpc REQUIRED)
-+# If we have the correct shared version and we're not building static, use it
-+if(STATIC OR IOS)
-+ set(USE_SHARED_MINIUPNPC false)
-+elseif(MINIUPNP_FOUND AND MINIUPNPC_VERSION_1_7_OR_HIGHER)
-+ set(USE_SHARED_MINIUPNPC true)
-+endif()
+ find_package(Miniupnpc REQUIRED)
-message(STATUS "Using in-tree miniupnpc")
-+if(USE_SHARED_MINIUPNPC)
-+ message(STATUS "Using shared miniupnpc found at ${MINIUPNP_INCLUDE_DIR}")
-
-add_subdirectory(miniupnp/miniupnpc)
-+ set(UPNP_STATIC false PARENT_SCOPE)
-+ set(UPNP_INCLUDE ${MINIUPNP_INCLUDE_DIR} PARENT_SCOPE)
-+ set(UPNP_LIBRARIES ${MINIUPNP_LIBRARY} PARENT_SCOPE)
-+else()
-+ if(STATIC)
-+ message(STATUS "Using miniupnpc from local source tree for static build")
-+ else()
-+ message(STATUS "Using miniupnpc from local source tree (/external/miniupnp/miniupnpc)")
-+ endif()
-
-set_property(TARGET libminiupnpc-static PROPERTY FOLDER "external")
-if(MSVC)
- set_property(TARGET libminiupnpc-static APPEND_STRING PROPERTY COMPILE_FLAGS " -wd4244 -wd4267")
-elseif(NOT MSVC)
- set_property(TARGET libminiupnpc-static APPEND_STRING PROPERTY COMPILE_FLAGS " -Wno-undef -Wno-unused-result -Wno-unused-value")
-endif()
-+ add_subdirectory(miniupnp/miniupnpc)
-+
-+ set_property(TARGET libminiupnpc-static PROPERTY FOLDER "external")
-+ if(MSVC)
-+ set_property(TARGET libminiupnpc-static APPEND_STRING PROPERTY COMPILE_FLAGS " -wd4244 -wd4267")
-+ elseif(NOT MSVC)
-+ set_property(TARGET libminiupnpc-static APPEND_STRING PROPERTY COMPILE_FLAGS " -Wno-undef -Wno-unused-result -Wno-unused-value")
-+ endif()
-
+-if(CMAKE_SYSTEM_NAME MATCHES "NetBSD")
+- set_property(TARGET libminiupnpc-static APPEND_STRING PROPERTY COMPILE_FLAGS " -D_NETBSD_SOURCE")
+-endif()
+-
-set(UPNP_LIBRARIES "libminiupnpc-static" PARENT_SCOPE)
-+ set(UPNP_STATIC true PARENT_SCOPE)
-+ set(UPNP_LIBRARIES "libminiupnpc-static" PARENT_SCOPE)
-+endif()
++set(UPNP_LIBRARIES "miniupnpc" PARENT_SCOPE)
find_package(Unbound)
diff --git a/src/p2p/net_node.inl b/src/p2p/net_node.inl
-index 9b21705e..76340a22 100644
+index 74924e4f..3554dd0d 100644
--- a/src/p2p/net_node.inl
+++ b/src/p2p/net_node.inl
-@@ -49,9 +49,16 @@
+@@ -49,9 +49,9 @@
#include "storages/levin_abstract_invoke2.h"
#include "cryptonote_core/cryptonote_core.h"
-#include <miniupnp/miniupnpc/miniupnpc.h>
-#include <miniupnp/miniupnpc/upnpcommands.h>
-#include <miniupnp/miniupnpc/upnperrors.h>
-+// We have to look for miniupnpc headers in different places, dependent on if its compiled or external
-+#ifdef UPNP_STATIC
-+ #include <miniupnp/miniupnpc/miniupnpc.h>
-+ #include <miniupnp/miniupnpc/upnpcommands.h>
-+ #include <miniupnp/miniupnpc/upnperrors.h>
-+#else
-+ #include "miniupnpc.h"
-+ #include "upnpcommands.h"
-+ #include "upnperrors.h"
-+#endif
++#include <miniupnpc/miniupnpc.h>
++#include <miniupnpc/upnpcommands.h>
++#include <miniupnpc/upnperrors.h>
#undef MONERO_DEFAULT_LOG_CATEGORY
#define MONERO_DEFAULT_LOG_CATEGORY "net.p2p"
---
-2.16.2
-
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 26b53b62ca..e9cf681cde 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -3593,13 +3593,13 @@ color scales, and color space conversion easy. It has support for:
(define-public python-pygit2
(package
(name "python-pygit2")
- (version "0.28.0")
+ (version "0.28.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pygit2" version))
(sha256
- (base32 "0lngsaz029d4fjcwhl17pr59nh9gwl6hwfin36nph60fgsmfdg3d"))))
+ (base32 "11kzj5mjkspvplnpdb6bj8dcj6rgmkk986k8hjcklyg5yaxkz32d"))))
(build-system python-build-system)
(arguments
'(#:tests? #f)) ; tests don't run correctly in our environment
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 49e0b9fe73..481495bba0 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -14,6 +14,7 @@
;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com>
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
+;;; Copyright © 2019 Mikhail Kirillov <w96k.ru@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1081,24 +1082,6 @@ code in Merb and Rails.")
(home-page "https://github.com/jnunemaker/crack")
(license license:expat)))
-(define-public ruby-crass
- (package
- (name "ruby-crass")
- (version "1.0.4")
- (source
- (origin
- (method url-fetch)
- (uri (rubygems-uri "crass" version))
- (sha256
- (base32
- "0bpxzy6gjw9ggjynlxschbfsgmx8lv3zw1azkjvnb8b9i895dqfi"))))
- (build-system ruby-build-system)
- (synopsis "Pure Ruby CSS parser based on CSS Syntax Level 3")
- (description
- "Crass is a pure Ruby CSS parser based on the CSS Syntax Level 3 spec.")
- (home-page "https://github.com/rgrove/crass/")
- (license license:expat)))
-
(define-public ruby-cliver
(package
(name "ruby-cliver")
@@ -8725,3 +8708,32 @@ app to deliver to smtp://127.0.0.1:1025 instead of your default SMTP server,
then check out http://127.0.0.1:1080 to see the mail.")
(home-page "https://mailcatcher.me")
(license license:expat)))
+
+(define-public ruby-backport
+ (package
+ (name "ruby-backport")
+ (version "1.1.1")
+ (source
+ (origin
+ ;; The gem does not include test code, so fetch from the Git repository
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/castwide/backport.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0ii3y1wx1n48nd2mhlv0v61b2m21h7dg30if9vc2idza7k4afyw8"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:test-target "spec"))
+ (native-inputs
+ `(("bundler" ,bundler)
+ ("ruby-rspec" ,ruby-rspec)))
+ (inputs
+ `(("ruby-simplecov" ,ruby-simplecov)))
+ (synopsis "Pure Ruby library for event-driven IO")
+ (description
+ "This package provides a pure Ruby library for event-driven IO.")
+ (home-page "https://github.com/castwide/backport")
+ (license license:expat)))
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index bd94279b7f..ef6d9cce82 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -1549,7 +1549,27 @@ YouTube.com and many more sites.")
(string-append "os.path.join('"
(assoc-ref %outputs "out")
"', 'share'")))
- #t)))))
+ #t))
+ (add-after 'install 'create-desktop-file
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (applications (string-append out "/share/applications")))
+ (mkdir-p applications)
+ (call-with-output-file
+ (string-append applications "/youtube-dl-gui.desktop")
+ (lambda (file)
+ (format
+ file
+ "[Desktop Entry]~@
+ Name=Youtube-dl GUI~@
+ Comment=Graphical interface to download video with youtube-dl~@
+ Exec=youtube-dl-gui~@
+ TryExec=youtube-dl-gui~@
+ Terminal=false~@
+ Icon=youtube-dl-gui~@
+ Type=Application~@
+ Categories=AudioVideo;Audio;Video;Network~%")))
+ #t))))))
(inputs
`(("python2-wxpython" ,python2-wxpython)
("youtube-dl" ,youtube-dl)))
diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index d60aaf3ac2..d5792b7ede 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -399,14 +399,14 @@ manage system or application containers.")
(define-public libvirt
(package
(name "libvirt")
- (version "5.4.0")
+ (version "5.5.0")
(source (origin
(method url-fetch)
(uri (string-append "https://libvirt.org/sources/libvirt-"
version ".tar.xz"))
(sha256
(base32
- "0ywf8m9yz2hxnic7fylzlmgy4m353r4vv5zsvp89zq5yh4h81yhw"))))
+ "1s1mzw4cmkcfivs1kphpgy4lpddx0w1qnjysr4ggk5558w4yy1i3"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@@ -536,13 +536,15 @@ three libraries:
(define-public python-libvirt
(package
(name "python-libvirt")
- (version "5.3.0")
- (source (origin
- (method url-fetch)
- (uri (pypi-uri "libvirt-python" version))
- (sha256
- (base32
- "1zrhkz68ka4f08wwm36y3zzwfn1r65h4nw1nm9qgg8jmrfazj4sj"))))
+ (version "5.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ ;; The latest version hosted on PyPI at 5.5.0 release time was 5.3.0.
+ (uri (string-append "https://libvirt.org/sources/python/libvirt-python-"
+ version ".tar.gz"))
+ (sha256
+ (base32 "00x6idyw9xrrr21vrnsyw37q2sd8yh4n6pwh0l28hh9yp3nsy72n"))))
(build-system python-build-system)
(arguments
`(#:phases
diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm
index fdcd4521e8..c7046b7f50 100644
--- a/gnu/packages/vpn.scm
+++ b/gnu/packages/vpn.scm
@@ -456,14 +456,14 @@ The peer-to-peer VPN implements a Layer 2 (Ethernet) network between the peers
(define-public wireguard
(package
(name "wireguard")
- (version "0.0.20190601")
+ (version "0.0.20190702")
(source (origin
(method url-fetch)
(uri (string-append "https://git.zx2c4.com/WireGuard/snapshot/"
"WireGuard-" version ".tar.xz"))
(sha256
(base32
- "0s2mys78whsr0yw045a132iqx6nfy3c6hppiskbln5x04hc4ca3m"))))
+ "1b5s1ncwqxdgb0c6cd07x4ynnj6cpbiqp4bxqir7mm5bf6y124qs"))))
(build-system gnu-build-system)
(outputs '("out" ; The WireGuard userspace tools
"kernel-patch")) ; A patch to build Linux with WireGuard support
diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
index c99e32c291..ff9e18c76f 100644
--- a/gnu/packages/xdisorg.scm
+++ b/gnu/packages/xdisorg.scm
@@ -716,7 +716,7 @@ shows it again when the mouse cursor moves or a mouse button is pressed.")
(define-public xlockmore
(package
(name "xlockmore")
- (version "5.56")
+ (version "5.57")
(source (origin
(method url-fetch)
(uri (list (string-append "http://sillycycle.com/xlock/"
@@ -727,7 +727,7 @@ shows it again when the mouse cursor moves or a mouse button is pressed.")
name "-" version ".tar.xz")))
(sha256
(base32
- "1dg1n79rnswhxqz36mxnl5lp8p37i9fbibnzzyrqknmvf2s8xpd0"))))
+ "18r8rh8fzdn9miicbpc3qbdd4mm2g1jpsbcvj29sr66pxydzkb7r"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags (list (string-append "--enable-appdefaultdir="
diff --git a/gnu/packages/xfce.scm b/gnu/packages/xfce.scm
index 2b4feb1c2d..93c36dac1e 100644
--- a/gnu/packages/xfce.scm
+++ b/gnu/packages/xfce.scm
@@ -220,7 +220,7 @@ development.")
(define-public garcon
(package
(name "garcon")
- (version "0.6.2")
+ (version "0.6.3")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@@ -228,7 +228,7 @@ development.")
"garcon-" version ".tar.bz2"))
(sha256
(base32
- "0z64g6f2vwfjzqsrsn05nbcbs8l6y4cfdgxk4k2la3giixj0jzx8"))))
+ "00c4g4gmbr8710k0yv1zybnm9s2gkc1rj63zfrg9qgin66jzxcbn"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
@@ -250,7 +250,7 @@ merging features essential for loading menus modified with menu editors.")
(define-public tumbler
(package
(name "tumbler")
- (version "0.2.4")
+ (version "0.2.5")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/"
@@ -258,15 +258,15 @@ merging features essential for loading menus modified with menu editors.")
"tumbler-" version ".tar.bz2"))
(sha256
(base32
- "19mnwmcxdhqfqkd9433z8h2y8w49vlc7jw5p5h8j54wz7zhrgx0g"))))
+ "0nfld1lvrdpsjfvm08y5487km45pm1mdr928hgqm8j0shrx6jiv4"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
("intltool" ,intltool)
- ("glib:bin" ,glib "bin") ; need glib-genmarshal
- ("dbus-glib" ,dbus-glib))) ; need dbus-binding-tool
+ ("glib:bin" ,glib "bin") ; need glib-genmarshal
+ ("dbus-glib" ,dbus-glib))) ; need dbus-binding-tool
(propagated-inputs
- `(("glib" ,glib))) ; required by tumbler-1.pc
+ `(("glib" ,glib))) ; required by tumbler-1.pc
(inputs
`(("dbus" ,dbus)
("gdk-pixbuf" ,gdk-pixbuf)
@@ -596,7 +596,7 @@ like appearance, display, keyboard and mouse settings.")
(define-public thunar
(package
(name "thunar")
- (version "1.8.6")
+ (version "1.8.7")
(source (origin
(method url-fetch)
(uri (string-append "http://archive.xfce.org/src/xfce/"
@@ -604,7 +604,7 @@ like appearance, display, keyboard and mouse settings.")
"Thunar-" version ".tar.bz2"))
(sha256
(base32
- "0apg70dwkh8q89ybzhj4q2gp4yxiybwxfzpbvx0nj0rxis1gprf0"))))
+ "0afkp528mwwa2m18m39mvw53qgaijyynrw9wwwiyxgjiczq3l0ry"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
@@ -628,14 +628,15 @@ fast.")
(define-public thunar-volman
(package
(name "thunar-volman")
- (version "0.8.1")
- (source (origin
- (method url-fetch)
- (uri (string-append "http://archive.xfce.org/xfce/4.12/src/"
- name "-" version ".tar.bz2"))
- (sha256
- (base32
- "1gf259n1v3y23n1zlkhyr6r0i8j59rnl1cmxvxj6la9cwdfbn22s"))))
+ (version "0.9.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://archive.xfce.org/src/xfce/thunar-volman/"
+ (version-major+minor version) "/"
+ "thunar-volman-" version ".tar.bz2"))
+ (sha256
+ (base32 "1sfmz40164rg77hclrkrgnbk8cb7f325qqi7lz2hh3wbvf8r0c19"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
diff --git a/guix/derivations.scm b/guix/derivations.scm
index ebeac31877..186d7a3f8f 100644
--- a/guix/derivations.scm
+++ b/guix/derivations.scm
@@ -320,8 +320,7 @@ substituter many times."
;; info is not already in cache.
;; Also, skip derivations marked as non-substitutable.
(append-map (lambda (input)
- (let ((drv (read-derivation-from-file
- (derivation-input-path input))))
+ (let ((drv (derivation-input-derivation input)))
(if (substitutable-derivation? drv)
(derivation-input-output-paths input)
'())))
@@ -652,12 +651,10 @@ list of name/path pairs of its outputs."
;;; Derivation primitive.
;;;
-(define derivation-path->base16-hash
- (mlambda (file)
- "Return a string containing the base16 representation of the hash of the
-derivation at FILE."
- (bytevector->base16-string
- (derivation-hash (read-derivation-from-file file)))))
+(define derivation-base16-hash
+ (mlambdaq (drv)
+ "Return a string containing the base16 representation of the hash of DRV."
+ (bytevector->base16-string (derivation-hash drv))))
(define (derivation/masked-inputs drv)
"Assuming DRV is a regular derivation (not fixed-output), replace the file
@@ -666,9 +663,8 @@ name of each input with that input's hash."
(($ <derivation> outputs inputs sources
system builder args env-vars)
(let ((inputs (map (match-lambda
- (($ <derivation-input> (= derivation-file-name path)
- sub-drvs)
- (let ((hash (derivation-path->base16-hash path)))
+ (($ <derivation-input> drv sub-drvs)
+ (let ((hash (derivation-base16-hash drv)))
(make-derivation-input hash sub-drvs))))
inputs)))
(make-derivation outputs
@@ -886,8 +882,11 @@ long-running processes that know what they're doing. Use with care!"
;; Typically this is meant to be used by Cuirass and Hydra, which can clear
;; caches when they start evaluating packages for another architecture.
(invalidate-memoization! derivation->bytevector)
- (invalidate-memoization! derivation-path->base16-hash)
- (hash-clear! %derivation-cache))
+ (invalidate-memoization! derivation-base16-hash)
+
+ ;; FIXME: Comment out to work around <https://bugs.gnu.org/36487>.
+ ;; (hash-clear! %derivation-cache)
+ )
(define derivation-properties
(mlambdaq (drv)
@@ -945,16 +944,14 @@ recursively."
;; in the format used in 'derivation' calls.
(mlambda (input loop)
(match input
- (($ <derivation-input> (= derivation-file-name path)
- (sub-drvs ...))
- (match (vhash-assoc path mapping)
+ (($ <derivation-input> drv (sub-drvs ...))
+ (match (vhash-assoc (derivation-file-name drv) mapping)
((_ . (? derivation? replacement))
(cons replacement sub-drvs))
((_ . replacement)
(list replacement))
(#f
- (let* ((drv (loop (read-derivation-from-file path))))
- (cons drv sub-drvs))))))))
+ (cons (loop drv) sub-drvs)))))))
(let loop ((drv drv))
(let* ((inputs (map (cut rewritten-input <> loop)
diff --git a/guix/profiles.scm b/guix/profiles.scm
index dfc9ba1ca0..f5c863945c 100644
--- a/guix/profiles.scm
+++ b/guix/profiles.scm
@@ -8,6 +8,7 @@
;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2017 Huang Ying <huang.ying.caritas@gmail.com>
;;; Copyright © 2017 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2019 Kyle Meyer <kyle@kyleam.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -337,7 +338,7 @@ denoting a specific output of a package."
(manifest
(map (match-lambda
- ((package output)
+ (((? package? package) output)
(package->manifest-entry package output))
((? package? package)
(package->manifest-entry package))
diff --git a/guix/store.scm b/guix/store.scm
index 8fa16499f8..52940ff751 100644
--- a/guix/store.scm
+++ b/guix/store.scm
@@ -1783,6 +1783,9 @@ the store."
;; when using 'gexp->derivation' and co.
(make-parameter #f))
+(define set-store-connection-object-cache!
+ (record-modifier <store-connection> 'object-cache))
+
(define* (run-with-store store mval
#:key
(guile-for-build (%guile-for-build))
@@ -1798,9 +1801,12 @@ connection, and return the result."
(%current-target-system target))
(call-with-values (lambda ()
(run-with-state mval store))
- (lambda (result store)
- ;; Discard the state.
- result))))
+ (lambda (result new-store)
+ ;; Copy the object cache from NEW-STORE so we don't fully discard the
+ ;; state.
+ (let ((cache (store-connection-object-cache new-store)))
+ (set-store-connection-object-cache! store cache)
+ result)))))
;;;