Merge branch 'master' into staging

This commit is contained in:
Marius Bakke 2019-07-04 16:16:41 +02:00
commit 42dcfca4cc
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
25 changed files with 489 additions and 320 deletions

View File

@ -321,7 +321,7 @@ engineers, musicians, soundtrack editors and composers.")
(define-public audacity (define-public audacity
(package (package
(name "audacity") (name "audacity")
(version "2.2.2") (version "2.3.2")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -331,7 +331,7 @@ engineers, musicians, soundtrack editors and composers.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"10maxmjxbmjybj7n4m7a9bbm7g8xxw8f8vbsf7c9ih5j2gr15ihs")) "08w96124vv8k4myd4vifq73ningq6404x889wvg2sk016kc4dfv1"))
(patches (search-patches "audacity-build-with-system-portaudio.patch")) (patches (search-patches "audacity-build-with-system-portaudio.patch"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
@ -3383,14 +3383,14 @@ on the ALSA software PCM plugin.")
(define-public snd (define-public snd
(package (package
(name "snd") (name "snd")
(version "19.3") (version "19.5")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "ftp://ccrma-ftp.stanford.edu/pub/Lisp/" (uri (string-append "ftp://ccrma-ftp.stanford.edu/pub/Lisp/"
"snd-" version ".tar.gz")) "snd-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"16j3fqyw361wdsr1076f0p3va2y7wdzq1lvr4ijz1ajmbxdlc723")))) "0sk6iyykwi2mm3f1g4r0iqbsrwk3zmyagp6jjqkh8njbq42cjr1y"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
`(#:tests? #f ; no tests `(#:tests? #f ; no tests

View File

@ -12550,7 +12550,7 @@ once. This package provides tools to perform Drop-seq analyses.")
(define-public pigx-rnaseq (define-public pigx-rnaseq
(package (package
(name "pigx-rnaseq") (name "pigx-rnaseq")
(version "0.0.7") (version "0.0.8")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/BIMSBbioinfo/pigx_rnaseq/" (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")) "/pigx_rnaseq-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"013inbh22bjvwg2w0kx5i42k66w1zl4310ldip2ax6msgprs2ydj")))) "19nhflzs6k5c7yhi7gkwggq237cjdd1s4b4qkj5x5fkwg0rhn33i"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:parallel-tests? #f ; not supported `(#:parallel-tests? #f ; not supported

View File

@ -3,7 +3,7 @@
;;; Copyright © 2015, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017, 2018, 2019 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016, 2017, 2018, 2019 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox> ;;; 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 ng0 <ng0@n0.is>
;;; Copyright © 2016, 2017, 2019 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2016, 2017, 2019 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com> ;;; 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 (define-public tomb
(package (package
(name "tomb") (name "tomb")
(version "2.5") (version "2.6")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://files.dyne.org/tomb/" (uri (string-append "https://files.dyne.org/tomb/"
"Tomb-" version ".tar.gz")) "Tomb-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"12c6qldngaw520gvb02inzkhnxbl4k0dwmddrgnaf7xashy6j0wc")))) "1sr3jcn96mciyn8xd0amd1jzamxxzpybakf8an7laf26gjim1dh2"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs `(("sudo" ,sudo))) ;presence needed for 'check' phase (native-inputs `(("sudo" ,sudo))) ;presence needed for 'check' phase
(inputs (inputs

View File

@ -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.") process, passing on the arguments as command line arguments.")
(license license:gpl3+))) (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 (define-public emacs-treepy
(package (package
(name "emacs-treepy") (name "emacs-treepy")

View File

@ -11,6 +11,7 @@
;;; Copyright © 2018 Adriano Peluso <catonano@gmail.com> ;;; Copyright © 2018 Adriano Peluso <catonano@gmail.com>
;;; Copyright © 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -39,6 +40,7 @@
#:use-module (gnu packages base) #:use-module (gnu packages base)
#:use-module (gnu packages boost) #:use-module (gnu packages boost)
#:use-module (gnu packages check) #:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages crypto) #:use-module (gnu packages crypto)
#:use-module (gnu packages databases) #:use-module (gnu packages databases)
#:use-module (gnu packages documentation) #:use-module (gnu packages documentation)
@ -68,6 +70,7 @@
#:use-module (gnu packages textutils) #:use-module (gnu packages textutils)
#:use-module (gnu packages tls) #:use-module (gnu packages tls)
#:use-module (gnu packages upnp) #:use-module (gnu packages upnp)
#:use-module (gnu packages version-control)
#:use-module (gnu packages web) #:use-module (gnu packages web)
#:use-module (gnu packages xml) #:use-module (gnu packages xml)
#:use-module (gnu packages gnuzilla)) #:use-module (gnu packages gnuzilla))
@ -428,49 +431,59 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
(define-public monero (define-public monero
;; This package bundles easylogging++ and lmdb. ;; 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 devs deem the lmdb driver too critical a consenus component, to use
;; the system's dynamically linked library. ;; the system's dynamically linked library.
(package (package
(name "monero") (name "monero")
(version "0.12.3.0") (version "0.14.1.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
(url "https://github.com/monero-project/monero") (url "https://github.com/monero-project/monero.git")
(commit (string-append "v" version)))) (commit (string-append "v" version))
(recursive? #t)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(patches (search-patches "monero-use-system-miniupnpc.patch")) (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 (sha256
(base32 (base32
"14db9kgjm2ha93c2x5fjdw01xaqshn756qr3x2cnzyyjh7caz5qd")))) "1asa197fad81jfv12qgaa7y7pdr1r1pda96m9pvivkh4v30cx0nh"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(native-inputs (native-inputs
`(("doxygen" ,doxygen) `(("doxygen" ,doxygen)
("googletest" ,googletest) ("git" ,git)
("graphviz" ,graphviz) ("graphviz" ,graphviz)
("pkg-config" ,pkg-config))) ("pkg-config" ,pkg-config)
("qttools" ,qttools)))
(inputs (inputs
`(("bind" ,isc-bind) `(("boost" ,boost)
("boost" ,boost)
("zeromq" ,zeromq)
("cppzmq" ,cppzmq) ("cppzmq" ,cppzmq)
("expat" ,expat) ("expat" ,expat)
("libsodium" ,libsodium) ("hidapi" ,hidapi)
("libunwind" ,libunwind) ("libunwind" ,libunwind)
("lmdb" ,lmdb) ("libsodium" ,libsodium)
("miniupnpc" ,monero-miniupnpc) ("miniupnpc" ,miniupnpc)
("openssl" ,openssl) ("openssl" ,openssl)
("rapidjson" ,rapidjson) ("rapidjson" ,rapidjson)
("unbound" ,unbound))) ("readline" ,readline)
("unbound" ,unbound)
("xz" ,xz)
("zeromq" ,zeromq)))
(arguments (arguments
`(#:out-of-source? #t `(#:out-of-source? #t
#:build-type "release" #:configure-flags '("-DARCH=default"
#:configure-flags '("-DBUILD_TESTS=ON" "-DBUILD_TESTS=ON"
,@(if (string=? "aarch64-linux" (%current-system))
'("-DARCH=armv8-a")
'())
"-DBUILD_GUI_DEPS=ON") "-DBUILD_GUI_DEPS=ON")
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
@ -479,24 +492,18 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
(lambda _ (lambda _
(setenv "HOME" (getcwd)) (setenv "HOME" (getcwd))
#t)) #t))
(add-after 'set-home 'fix-wallet-path-for-unit-tests (add-after 'set-home 'change-log-path
(lambda _
(substitute* "tests/unit_tests/serialization.cpp"
(("\\.\\./\\.\\./\\.\\./\\.\\./") "../../"))
#t))
(add-after 'fix-wallet-path-for-unit-tests 'change-log-path
(lambda _ (lambda _
(substitute* "contrib/epee/src/mlog.cpp" (substitute* "contrib/epee/src/mlog.cpp"
(("epee::string_tools::get_current_module_folder\\(\\)") (("epee::string_tools::get_current_module_folder\\(\\)")
"\".bitmonero\"")) "\".bitmonero\"")
(substitute* "contrib/epee/src/mlog.cpp" (("return \\(")
(("return \\(") "return ((std::string(getenv(\"HOME\"))) / ")) "return ((std::string(getenv(\"HOME\"))) / "))
#t)) #t))
;; Only try tests that don't need access to network or system
(replace 'check (replace 'check
(lambda _ (lambda _
(invoke "make" "ARGS=-E 'unit_tests|libwallet_api_tests'" (invoke "make" "ARGS=-R 'hash|core_tests'" "test")))
"test")))
;; The excluded unit tests need network access
(add-after 'check 'unit-tests (add-after 'check 'unit-tests
(lambda _ (lambda _
(let ((excluded-unit-tests (let ((excluded-unit-tests
@ -506,58 +513,69 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
"DNSResolver.IPv4Success" "DNSResolver.IPv4Success"
"DNSResolver.DNSSECSuccess" "DNSResolver.DNSSECSuccess"
"DNSResolver.DNSSECFailure" "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" (invoke "tests/unit_tests/unit_tests"
(string-append "--gtest_filter=-" (string-append "--gtest_filter=-"
excluded-unit-tests))))) 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)))))))
(home-page "https://getmonero.org/") (home-page "https://getmonero.org/")
(synopsis "Command-line interface to the Monero currency") (synopsis "Command-line interface to the Monero currency")
(description (description
"Monero is a secure, private, untraceable currency. This package provides the "Monero is a secure, private, untraceable currency. This package provides
Monero command line client and daemon.") the Monero command line client and daemon.")
(license license:bsd-3))) (license license:bsd-3)))
(define-public monero-gui (define-public monero-gui
(package (package
(name "monero-gui") (name "monero-gui")
(version "0.12.2.0") (version "0.14.1.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (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)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1cnrkwh7kp64lnzz1xfmkf1mhsgm5gls292gpqai3jr8jydpkahl")))) "0ilx47771faygf97wilm64xnqxgxa3b43q0g9v014npk0qj8pc31"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("doxygen" ,doxygen) `(("pkg-config" ,pkg-config)
("graphviz" ,graphviz)
("pkg-config" ,pkg-config)
("qttools" ,qttools))) ("qttools" ,qttools)))
(inputs (inputs
`(("boost" ,boost) `(("boost" ,boost)
("hidapi" ,hidapi)
("libunwind" ,libunwind) ("libunwind" ,libunwind)
("libsodium" ,libsodium)
("openssl" ,openssl) ("openssl" ,openssl)
("qtbase" ,qtbase) ("qtbase" ,qtbase)
("qtdeclarative" ,qtdeclarative) ("qtdeclarative" ,qtdeclarative)
("qtgraphicaleffects" ,qtgraphicaleffects) ("qtgraphicaleffects" ,qtgraphicaleffects)
("qtlocation" ,qtlocation)
("qtmultimedia" ,qtmultimedia)
("qtquickcontrols" ,qtquickcontrols) ("qtquickcontrols" ,qtquickcontrols)
("readline" ,readline) ("qtquickcontrols2",qtquickcontrols2)
("qtsvg" ,qtsvg)
("qtwebchannel" ,qtwebchannel)
("qtx11extras" ,qtx11extras)
("qtxmlpatterns" ,qtxmlpatterns)
("unbound" ,unbound))) ("unbound" ,unbound)))
(propagated-inputs (propagated-inputs
`(("monero" ,monero))) `(("monero" ,monero)))
(arguments (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 (modify-phases %standard-phases
(delete 'configure) (delete 'configure)
(delete 'check) (delete 'check)
@ -569,15 +587,12 @@ Monero command line client and daemon.")
(add-after 'fix-makefile-vars 'fix-library-paths (add-after 'fix-makefile-vars 'fix-library-paths
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(substitute* "monero-wallet-gui.pro" (substitute* "monero-wallet-gui.pro"
(("-L/usr/local/lib") "") (("-L/usr/local/lib")
"")
(("-L/usr/local/opt/openssl/lib") (("-L/usr/local/opt/openssl/lib")
(string-append "-L" (string-append "-L" (assoc-ref inputs "openssl") "/lib"))
(assoc-ref inputs "openssl")
"/lib"))
(("-L/usr/local/opt/boost/lib") (("-L/usr/local/opt/boost/lib")
(string-append "-L" (string-append "-L" (assoc-ref inputs "boost") "/lib")))
(assoc-ref inputs "boost")
"/lib")))
#t)) #t))
(add-after 'fix-library-paths 'fix-monerod-path (add-after 'fix-library-paths 'fix-monerod-path
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
@ -588,13 +603,29 @@ Monero command line client and daemon.")
#t)) #t))
(add-after 'fix-monerod-path 'fix-qt-paths (add-after 'fix-monerod-path 'fix-qt-paths
(lambda* (#:key inputs #:allow-other-keys) (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" (substitute* "monero-wallet-gui.pro"
(("\\$\\$\\[QT_INSTALL_BINS\\]/lrelease") lrelease) (("\\$\\$\\[QT_INSTALL_BINS\\]/lrelease")
(("\\$\\$\\[QT_INSTALL_BINS\\]/lupdate") lupdate)) (string-append (assoc-ref inputs "qttools") "/bin/lrelease"))
#t))) (("\\$\\$\\[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 (replace 'build
(lambda _ (lambda _
(invoke "./build.sh"))) (invoke "./build.sh")))
@ -606,28 +637,18 @@ Monero command line client and daemon.")
#t)) #t))
(add-before 'install 'change-dir (add-before 'install 'change-dir
(lambda _ (lambda _
(chdir "build"))) (chdir "build")
(add-after 'install 'wrap-executable #t))
(lambda* (#:key inputs outputs #:allow-other-keys) (add-after 'install 'wrap-program
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))) (let ((out (assoc-ref outputs "out")))
(wrap-program (string-append out "/bin/monero-wallet-gui") (wrap-qt-program out "monero-wallet-gui"))
`("QT_PLUGIN_PATH" ":" prefix #t)))))
,(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))))))
(home-page "https://getmonero.org/") (home-page "https://getmonero.org/")
(synopsis "Graphical user interface for the Monero currency") (synopsis "Graphical user interface for the Monero currency")
(description (description
"Monero is a secure, private, untraceable currency. This package provides the "Monero is a secure, private, untraceable currency. This package provides
Monero GUI client.") the Monero GUI client.")
(license license:bsd-3))) (license license:bsd-3)))
(define-public monero-core (define-public monero-core

View File

@ -110,17 +110,22 @@ actions.")
"See 'COPYING' in the distribution.")))) "See 'COPYING' in the distribution."))))
(define-public geeqie (define-public geeqie
;; 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 (package
(name "geeqie") (name "geeqie")
(version "1.4") (version (git-version "1.4" revision commit))
(source (origin (source (origin
(method url-fetch) (method git-fetch)
(uri (string-append "https://github.com/BestImageViewer/geeqie/" (uri (git-reference
"releases/download/v" version "/geeqie-" (url "https://github.com/BestImageViewer/geeqie")
version ".tar.xz")) (commit commit)))
(sha256 (sha256
(base32 (base32
"0ciygvcxb78pqg59r6p061mkbpvkgv2rv3r79j3kgv3kalb3ln2w")))) "07424nzrnwbksgalgg1a6ig2snd986w79kca1cfnv1q9kc7x2h3x"))
(file-name (git-file-name name version))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`( ;; Enable support for a "map" pane using GPS data. `( ;; Enable support for a "map" pane using GPS data.
@ -139,6 +144,15 @@ actions.")
(call-with-output-file "ChangeLog.html" (call-with-output-file "ChangeLog.html"
write-dummy-changelog) write-dummy-changelog)
(setenv "NOCONFIGURE" "true") (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))))) #t)))))
(inputs (inputs
`(("clutter" ,clutter) `(("clutter" ,clutter)
@ -162,7 +176,7 @@ interoperability; easy integration with other software; geeqie works on files
and directories, there is no need to import images; fast preview for many raw and directories, there is no need to import images; fast preview for many raw
image formats; tools for image comparison, sorting and managing photo image formats; tools for image comparison, sorting and managing photo
collection. Geeqie was initially based on GQview.") collection. Geeqie was initially based on GQview.")
(license license:gpl2+))) (license license:gpl2+))))
(define-public gpicview (define-public gpicview
(package (package

View File

@ -170,7 +170,7 @@ script.")
(define-public graphicsmagick (define-public graphicsmagick
(package (package
(name "graphicsmagick") (name "graphicsmagick")
(version "1.3.31") (version "1.3.32")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -182,7 +182,8 @@ script.")
"GraphicsMagick/" (version-major+minor version) "GraphicsMagick/" (version-major+minor version)
"/GraphicsMagick-" version ".tar.xz"))) "/GraphicsMagick-" version ".tar.xz")))
(sha256 (sha256
(base32 "0y22740f25qxsqqqg26xqlfp920dm57b7hrgaqmx7azksrcvnsq9")))) (base32
"1qclp9i31idpcbbqswmnq2q11lmv0a7cvdb1y72xcky8sshaahmq"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags

View File

@ -127,7 +127,7 @@ irssi, but graphical.")
(define-public irssi (define-public irssi
(package (package
(name "irssi") (name "irssi")
(version "1.1.2") (version "1.1.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/irssi/irssi/" (uri (string-append "https://github.com/irssi/irssi/"
@ -135,7 +135,7 @@ irssi, but graphical.")
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0clppwqhllrmqjg1dd47v9v1qiqx7cf9afm81bm1pscllf4jpk2w")))) "0jq8zjdhdjxkjbfl4g4nfr1ninyfxffa27lm8vcyrihhhkrn65yf"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases

View File

@ -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.") It has been modified to remove all non-free binary blobs.")
(license license:gpl2))) (license license:gpl2)))
(define %linux-libre-version "5.1.15") (define %linux-libre-version "5.1.16")
(define %linux-libre-hash "1f0hhyjsm4bl7k7w88aifvhmqmjkvkvlpd2b69y7s6csr22fk6v4") (define %linux-libre-hash "055vs2g6z6wx34qvi0aw952x9q3drbj7z27s7g7pks6w730xkga8")
(define %linux-libre-5.1-patches (define %linux-libre-5.1-patches
(list %boot-logo-patch (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 (make-linux-libre-headers %linux-libre-version
%linux-libre-hash)) %linux-libre-hash))
(define %linux-libre-4.19-version "4.19.56") (define %linux-libre-4.19-version "4.19.57")
(define %linux-libre-4.19-hash "1zqiic55viy065lhnkmhn33sz3bbbr2ykbm5f92yzd8lpc9zl7yx") (define %linux-libre-4.19-hash "0p9b27hfbzppxgad9q2g7nvfzv0phzdsk16sqy87q3dglc8wqrqq")
(define %linux-libre-4.19-patches (define %linux-libre-4.19-patches
(list %boot-logo-patch (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 (make-linux-libre-headers %linux-libre-4.19-version
%linux-libre-4.19-hash)) %linux-libre-4.19-hash))
(define %linux-libre-4.14-version "4.14.131") (define %linux-libre-4.14-version "4.14.132")
(define %linux-libre-4.14-hash "1qcf4cg83zpjirkj8l09y07x4zzskypngampvfw7zyazynwwgs1i") (define %linux-libre-4.14-hash "0mvp4izw21f8w5kkk8qm8m8b7qjxbp8hshgffdlh1aik41zvcnyq")
(define-public linux-libre-4.14 (define-public linux-libre-4.14
(make-linux-libre %linux-libre-4.14-version (make-linux-libre %linux-libre-4.14-version

View File

@ -6035,3 +6035,60 @@ cookie headers, cookie creation, cookie jar creation and more.")
(description "cl-cookie is a Common Lisp library featuring parsing of (description "cl-cookie is a Common Lisp library featuring parsing of
cookie headers, cookie creation, cookie jar creation and more.") cookie headers, cookie creation, cookie jar creation and more.")
(license license:bsd-2)))) (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))))

View File

@ -2526,20 +2526,23 @@ operators and scripters.")
(define-public alpine (define-public alpine
(package (package
(name "alpine") (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 (source
(origin (origin
(method url-fetch) (method git-fetch)
;; There are two versions: the plain continuation of Alpine without extra ;; There are two versions: the plain continuation of Alpine without extra
;; patches and the version which adds extra fixes. Every distro uses ;; patches and the version which adds extra fixes. Every distro uses
;; the patched version, and so do we to not break expectations. ;; the patched version, and so do we to not break expectations.
;; http://alpine.freeiz.com/alpine/readme/README.patches ;; http://alpine.freeiz.com/alpine/readme/README.patches
(uri (string-append "http://repo.or.cz/alpine.git/snapshot/" (uri (git-reference
"d3e6f3932f2af9deca8eed09e30a55e9bd524362.tar.gz")) (url "http://repo.or.cz/alpine.git")
(file-name (string-append name "-" version ".tar.gz")) (commit "abeb2c25935ef8c75f1e5deef0f81276754dc975")))
(file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32 "0rqgbw08a5lj41dkp82aq480lqkc4bnxagna7wpqffi821n8gkwz"))))
"0w4qyybfdxi29r2z3giq0by6aa6v6nrgibh1xgv4d1vwwq4hw35w"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:make-flags (list "CC=gcc") `(#:make-flags (list "CC=gcc")
@ -2555,7 +2558,8 @@ operators and scripters.")
"/lib") "/lib")
(string-append "--with-interactive-spellcheck=" (string-append "--with-interactive-spellcheck="
(assoc-ref %build-inputs "aspell") (assoc-ref %build-inputs "aspell")
"/bin/aspell")) "/bin/aspell")
"--with-date-stamp=Thu 1 Jan 01:00:01 CET 1970")
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'make-reproducible (add-after 'unpack 'make-reproducible
@ -2563,9 +2567,6 @@ operators and scripters.")
;; This removes time-dependent code to make alpine reproducible. ;; This removes time-dependent code to make alpine reproducible.
(substitute* "pico/blddate.c" (substitute* "pico/blddate.c"
(("%02d-%s-%d") "1970-01-01")) (("%02d-%s-%d") "1970-01-01"))
(substitute* (list "alpine/Makefile.in"
"web/src/alpined.d/Makefile.in")
(("`date`") "1970-01-01"))
#t))))) #t)))))
(inputs (inputs
`(("ncurses" ,ncurses) `(("ncurses" ,ncurses)
@ -2577,7 +2578,7 @@ operators and scripters.")
("aspell" ,aspell) ("aspell" ,aspell)
("tcl" ,tcl) ("tcl" ,tcl)
("linux-pam" ,linux-pam))) ("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") (synopsis "Alternatively Licensed Program for Internet News and Email")
(description (description
"Alpine is a text-based mail and news client. Alpine includes several "Alpine is a text-based mail and news client. Alpine includes several

View File

@ -91,7 +91,7 @@ interfacing MPD in the C, C++ & Objective C languages.")
(define-public mpd (define-public mpd
(package (package
(name "mpd") (name "mpd")
(version "0.21.10") (version "0.21.11")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (uri
@ -100,7 +100,7 @@ interfacing MPD in the C, C++ & Objective C languages.")
"/mpd-" version ".tar.xz")) "/mpd-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0fx9n6qmyb4ls17j7kl58i1ivg9wfx9zm9wyfnwzw7lcwdl56sqk")))) "1gbcg8icm0pp918jw1lx1j066m39zg9wyqjla328ic848j5zhbnk"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:configure-flags '("-Ddocumentation=true") ; the default is 'false'... `(#:configure-flags '("-Ddocumentation=true") ; the default is 'false'...

View File

@ -4450,7 +4450,7 @@ discard bad quality ones.
(define-public lpd8editor (define-public lpd8editor
(package (package
(name "lpd8editor") (name "lpd8editor")
(version "0.0.12") (version "0.0.13")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -4459,7 +4459,7 @@ discard bad quality ones.
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1v3fz8h1zs7kkl80faah79pp6yqwz0j7bkv3dbmh2hp42zbfiz1q")))) "0lsz3v493ilq2zr016m7kvymrplxd0n3pqv1pjglpq1h7sjw9764"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases '(#:phases

View File

@ -22,6 +22,7 @@
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net> ;;; Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
;;; Copyright © 2018 Tim Gesthuizen <tim.gesthuizen@yahoo.de> ;;; Copyright © 2018 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
;;; Copyright © 2019 Jens Mølgaard <jens@zete.tk>
;;; ;;;
;;; This file is part of GNU Guix. ;;; 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.") key URIs using the standard otpauth:// scheme.")
(license license:gpl3+))) (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 (define-public argon2
(package (package
(name "argon2") (name "argon2")

View File

@ -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 diff --git a/external/CMakeLists.txt b/external/CMakeLists.txt
index 1fc4d64c..b4f712ee 100644 index 7553f87e..8e865c6c 100644
--- a/external/CMakeLists.txt --- a/external/CMakeLists.txt
+++ b/external/CMakeLists.txt +++ b/external/CMakeLists.txt
@@ -34,21 +34,42 @@ @@ -37,19 +37,7 @@
# 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()
-find_package(Miniupnpc REQUIRED) 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()
-message(STATUS "Using in-tree miniupnpc") -message(STATUS "Using in-tree miniupnpc")
+if(USE_SHARED_MINIUPNPC)
+ message(STATUS "Using shared miniupnpc found at ${MINIUPNP_INCLUDE_DIR}")
-add_subdirectory(miniupnp/miniupnpc) -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") -set_property(TARGET libminiupnpc-static PROPERTY FOLDER "external")
-if(MSVC) -if(MSVC)
- set_property(TARGET libminiupnpc-static APPEND_STRING PROPERTY COMPILE_FLAGS " -wd4244 -wd4267") - set_property(TARGET libminiupnpc-static APPEND_STRING PROPERTY COMPILE_FLAGS " -wd4244 -wd4267")
-elseif(NOT MSVC) -elseif(NOT MSVC)
- set_property(TARGET libminiupnpc-static APPEND_STRING PROPERTY COMPILE_FLAGS " -Wno-undef -Wno-unused-result -Wno-unused-value") - set_property(TARGET libminiupnpc-static APPEND_STRING PROPERTY COMPILE_FLAGS " -Wno-undef -Wno-unused-result -Wno-unused-value")
-endif() -endif()
+ add_subdirectory(miniupnp/miniupnpc) -if(CMAKE_SYSTEM_NAME MATCHES "NetBSD")
+ - set_property(TARGET libminiupnpc-static APPEND_STRING PROPERTY COMPILE_FLAGS " -D_NETBSD_SOURCE")
+ set_property(TARGET libminiupnpc-static PROPERTY FOLDER "external") -endif()
+ 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()
-set(UPNP_LIBRARIES "libminiupnpc-static" PARENT_SCOPE) -set(UPNP_LIBRARIES "libminiupnpc-static" PARENT_SCOPE)
+ set(UPNP_STATIC true PARENT_SCOPE) +set(UPNP_LIBRARIES "miniupnpc" PARENT_SCOPE)
+ set(UPNP_LIBRARIES "libminiupnpc-static" PARENT_SCOPE)
+endif()
find_package(Unbound) find_package(Unbound)
diff --git a/src/p2p/net_node.inl b/src/p2p/net_node.inl 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 --- a/src/p2p/net_node.inl
+++ b/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 "storages/levin_abstract_invoke2.h"
#include "cryptonote_core/cryptonote_core.h" #include "cryptonote_core/cryptonote_core.h"
-#include <miniupnp/miniupnpc/miniupnpc.h> -#include <miniupnp/miniupnpc/miniupnpc.h>
-#include <miniupnp/miniupnpc/upnpcommands.h> -#include <miniupnp/miniupnpc/upnpcommands.h>
-#include <miniupnp/miniupnpc/upnperrors.h> -#include <miniupnp/miniupnpc/upnperrors.h>
+// We have to look for miniupnpc headers in different places, dependent on if its compiled or external +#include <miniupnpc/miniupnpc.h>
+#ifdef UPNP_STATIC +#include <miniupnpc/upnpcommands.h>
+ #include <miniupnp/miniupnpc/miniupnpc.h> +#include <miniupnpc/upnperrors.h>
+ #include <miniupnp/miniupnpc/upnpcommands.h>
+ #include <miniupnp/miniupnpc/upnperrors.h>
+#else
+ #include "miniupnpc.h"
+ #include "upnpcommands.h"
+ #include "upnperrors.h"
+#endif
#undef MONERO_DEFAULT_LOG_CATEGORY #undef MONERO_DEFAULT_LOG_CATEGORY
#define MONERO_DEFAULT_LOG_CATEGORY "net.p2p" #define MONERO_DEFAULT_LOG_CATEGORY "net.p2p"
--
2.16.2

View File

@ -3593,13 +3593,13 @@ color scales, and color space conversion easy. It has support for:
(define-public python-pygit2 (define-public python-pygit2
(package (package
(name "python-pygit2") (name "python-pygit2")
(version "0.28.0") (version "0.28.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "pygit2" version)) (uri (pypi-uri "pygit2" version))
(sha256 (sha256
(base32 "0lngsaz029d4fjcwhl17pr59nh9gwl6hwfin36nph60fgsmfdg3d")))) (base32 "11kzj5mjkspvplnpdb6bj8dcj6rgmkk986k8hjcklyg5yaxkz32d"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
'(#:tests? #f)) ; tests don't run correctly in our environment '(#:tests? #f)) ; tests don't run correctly in our environment

View File

@ -14,6 +14,7 @@
;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com> ;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com>
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2019 Mikhail Kirillov <w96k.ru@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -1081,24 +1082,6 @@ code in Merb and Rails.")
(home-page "https://github.com/jnunemaker/crack") (home-page "https://github.com/jnunemaker/crack")
(license license:expat))) (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 (define-public ruby-cliver
(package (package
(name "ruby-cliver") (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.") then check out http://127.0.0.1:1080 to see the mail.")
(home-page "https://mailcatcher.me") (home-page "https://mailcatcher.me")
(license license:expat))) (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)))

View File

@ -1549,7 +1549,27 @@ YouTube.com and many more sites.")
(string-append "os.path.join('" (string-append "os.path.join('"
(assoc-ref %outputs "out") (assoc-ref %outputs "out")
"', 'share'"))) "', '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 (inputs
`(("python2-wxpython" ,python2-wxpython) `(("python2-wxpython" ,python2-wxpython)
("youtube-dl" ,youtube-dl))) ("youtube-dl" ,youtube-dl)))

View File

@ -399,14 +399,14 @@ manage system or application containers.")
(define-public libvirt (define-public libvirt
(package (package
(name "libvirt") (name "libvirt")
(version "5.4.0") (version "5.5.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://libvirt.org/sources/libvirt-" (uri (string-append "https://libvirt.org/sources/libvirt-"
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0ywf8m9yz2hxnic7fylzlmgy4m353r4vv5zsvp89zq5yh4h81yhw")))) "1s1mzw4cmkcfivs1kphpgy4lpddx0w1qnjysr4ggk5558w4yy1i3"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags
@ -536,13 +536,15 @@ three libraries:
(define-public python-libvirt (define-public python-libvirt
(package (package
(name "python-libvirt") (name "python-libvirt")
(version "5.3.0") (version "5.5.0")
(source (origin (source
(origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "libvirt-python" version)) ;; 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 (sha256
(base32 (base32 "00x6idyw9xrrr21vrnsyw37q2sd8yh4n6pwh0l28hh9yp3nsy72n"))))
"1zrhkz68ka4f08wwm36y3zzwfn1r65h4nw1nm9qgg8jmrfazj4sj"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:phases `(#:phases

View File

@ -456,14 +456,14 @@ The peer-to-peer VPN implements a Layer 2 (Ethernet) network between the peers
(define-public wireguard (define-public wireguard
(package (package
(name "wireguard") (name "wireguard")
(version "0.0.20190601") (version "0.0.20190702")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://git.zx2c4.com/WireGuard/snapshot/" (uri (string-append "https://git.zx2c4.com/WireGuard/snapshot/"
"WireGuard-" version ".tar.xz")) "WireGuard-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0s2mys78whsr0yw045a132iqx6nfy3c6hppiskbln5x04hc4ca3m")))) "1b5s1ncwqxdgb0c6cd07x4ynnj6cpbiqp4bxqir7mm5bf6y124qs"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(outputs '("out" ; The WireGuard userspace tools (outputs '("out" ; The WireGuard userspace tools
"kernel-patch")) ; A patch to build Linux with WireGuard support "kernel-patch")) ; A patch to build Linux with WireGuard support

View File

@ -716,7 +716,7 @@ shows it again when the mouse cursor moves or a mouse button is pressed.")
(define-public xlockmore (define-public xlockmore
(package (package
(name "xlockmore") (name "xlockmore")
(version "5.56") (version "5.57")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (list (string-append "http://sillycycle.com/xlock/" (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"))) name "-" version ".tar.xz")))
(sha256 (sha256
(base32 (base32
"1dg1n79rnswhxqz36mxnl5lp8p37i9fbibnzzyrqknmvf2s8xpd0")))) "18r8rh8fzdn9miicbpc3qbdd4mm2g1jpsbcvj29sr66pxydzkb7r"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:configure-flags (list (string-append "--enable-appdefaultdir=" '(#:configure-flags (list (string-append "--enable-appdefaultdir="

View File

@ -220,7 +220,7 @@ development.")
(define-public garcon (define-public garcon
(package (package
(name "garcon") (name "garcon")
(version "0.6.2") (version "0.6.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/" (uri (string-append "https://archive.xfce.org/src/xfce/"
@ -228,7 +228,7 @@ development.")
"garcon-" version ".tar.bz2")) "garcon-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"0z64g6f2vwfjzqsrsn05nbcbs8l6y4cfdgxk4k2la3giixj0jzx8")))) "00c4g4gmbr8710k0yv1zybnm9s2gkc1rj63zfrg9qgin66jzxcbn"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
@ -250,7 +250,7 @@ merging features essential for loading menus modified with menu editors.")
(define-public tumbler (define-public tumbler
(package (package
(name "tumbler") (name "tumbler")
(version "0.2.4") (version "0.2.5")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://archive.xfce.org/src/xfce/" (uri (string-append "https://archive.xfce.org/src/xfce/"
@ -258,7 +258,7 @@ merging features essential for loading menus modified with menu editors.")
"tumbler-" version ".tar.bz2")) "tumbler-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"19mnwmcxdhqfqkd9433z8h2y8w49vlc7jw5p5h8j54wz7zhrgx0g")))) "0nfld1lvrdpsjfvm08y5487km45pm1mdr928hgqm8j0shrx6jiv4"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
@ -596,7 +596,7 @@ like appearance, display, keyboard and mouse settings.")
(define-public thunar (define-public thunar
(package (package
(name "thunar") (name "thunar")
(version "1.8.6") (version "1.8.7")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "http://archive.xfce.org/src/xfce/" (uri (string-append "http://archive.xfce.org/src/xfce/"
@ -604,7 +604,7 @@ like appearance, display, keyboard and mouse settings.")
"Thunar-" version ".tar.bz2")) "Thunar-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"0apg70dwkh8q89ybzhj4q2gp4yxiybwxfzpbvx0nj0rxis1gprf0")))) "0afkp528mwwa2m18m39mvw53qgaijyynrw9wwwiyxgjiczq3l0ry"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
@ -628,14 +628,15 @@ fast.")
(define-public thunar-volman (define-public thunar-volman
(package (package
(name "thunar-volman") (name "thunar-volman")
(version "0.8.1") (version "0.9.3")
(source (origin (source
(origin
(method url-fetch) (method url-fetch)
(uri (string-append "http://archive.xfce.org/xfce/4.12/src/" (uri (string-append "https://archive.xfce.org/src/xfce/thunar-volman/"
name "-" version ".tar.bz2")) (version-major+minor version) "/"
"thunar-volman-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32 "1sfmz40164rg77hclrkrgnbk8cb7f325qqi7lz2hh3wbvf8r0c19"))))
"1gf259n1v3y23n1zlkhyr6r0i8j59rnl1cmxvxj6la9cwdfbn22s"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)

View File

@ -320,8 +320,7 @@ substituter many times."
;; info is not already in cache. ;; info is not already in cache.
;; Also, skip derivations marked as non-substitutable. ;; Also, skip derivations marked as non-substitutable.
(append-map (lambda (input) (append-map (lambda (input)
(let ((drv (read-derivation-from-file (let ((drv (derivation-input-derivation input)))
(derivation-input-path input))))
(if (substitutable-derivation? drv) (if (substitutable-derivation? drv)
(derivation-input-output-paths input) (derivation-input-output-paths input)
'()))) '())))
@ -652,12 +651,10 @@ list of name/path pairs of its outputs."
;;; Derivation primitive. ;;; Derivation primitive.
;;; ;;;
(define derivation-path->base16-hash (define derivation-base16-hash
(mlambda (file) (mlambdaq (drv)
"Return a string containing the base16 representation of the hash of the "Return a string containing the base16 representation of the hash of DRV."
derivation at FILE." (bytevector->base16-string (derivation-hash drv))))
(bytevector->base16-string
(derivation-hash (read-derivation-from-file file)))))
(define (derivation/masked-inputs drv) (define (derivation/masked-inputs drv)
"Assuming DRV is a regular derivation (not fixed-output), replace the file "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 (($ <derivation> outputs inputs sources
system builder args env-vars) system builder args env-vars)
(let ((inputs (map (match-lambda (let ((inputs (map (match-lambda
(($ <derivation-input> (= derivation-file-name path) (($ <derivation-input> drv sub-drvs)
sub-drvs) (let ((hash (derivation-base16-hash drv)))
(let ((hash (derivation-path->base16-hash path)))
(make-derivation-input hash sub-drvs)))) (make-derivation-input hash sub-drvs))))
inputs))) inputs)))
(make-derivation outputs (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 ;; Typically this is meant to be used by Cuirass and Hydra, which can clear
;; caches when they start evaluating packages for another architecture. ;; caches when they start evaluating packages for another architecture.
(invalidate-memoization! derivation->bytevector) (invalidate-memoization! derivation->bytevector)
(invalidate-memoization! derivation-path->base16-hash) (invalidate-memoization! derivation-base16-hash)
(hash-clear! %derivation-cache))
;; FIXME: Comment out to work around <https://bugs.gnu.org/36487>.
;; (hash-clear! %derivation-cache)
)
(define derivation-properties (define derivation-properties
(mlambdaq (drv) (mlambdaq (drv)
@ -945,16 +944,14 @@ recursively."
;; in the format used in 'derivation' calls. ;; in the format used in 'derivation' calls.
(mlambda (input loop) (mlambda (input loop)
(match input (match input
(($ <derivation-input> (= derivation-file-name path) (($ <derivation-input> drv (sub-drvs ...))
(sub-drvs ...)) (match (vhash-assoc (derivation-file-name drv) mapping)
(match (vhash-assoc path mapping)
((_ . (? derivation? replacement)) ((_ . (? derivation? replacement))
(cons replacement sub-drvs)) (cons replacement sub-drvs))
((_ . replacement) ((_ . replacement)
(list replacement)) (list replacement))
(#f (#f
(let* ((drv (loop (read-derivation-from-file path)))) (cons (loop drv) sub-drvs)))))))
(cons drv sub-drvs))))))))
(let loop ((drv drv)) (let loop ((drv drv))
(let* ((inputs (map (cut rewritten-input <> loop) (let* ((inputs (map (cut rewritten-input <> loop)

View File

@ -8,6 +8,7 @@
;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com> ;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2017 Huang Ying <huang.ying.caritas@gmail.com> ;;; Copyright © 2017 Huang Ying <huang.ying.caritas@gmail.com>
;;; Copyright © 2017 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2017 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2019 Kyle Meyer <kyle@kyleam.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -337,7 +338,7 @@ denoting a specific output of a package."
(manifest (manifest
(map (match-lambda (map (match-lambda
((package output) (((? package? package) output)
(package->manifest-entry package output)) (package->manifest-entry package output))
((? package? package) ((? package? package)
(package->manifest-entry package)) (package->manifest-entry package))

View File

@ -1783,6 +1783,9 @@ the store."
;; when using 'gexp->derivation' and co. ;; when using 'gexp->derivation' and co.
(make-parameter #f)) (make-parameter #f))
(define set-store-connection-object-cache!
(record-modifier <store-connection> 'object-cache))
(define* (run-with-store store mval (define* (run-with-store store mval
#:key #:key
(guile-for-build (%guile-for-build)) (guile-for-build (%guile-for-build))
@ -1798,9 +1801,12 @@ connection, and return the result."
(%current-target-system target)) (%current-target-system target))
(call-with-values (lambda () (call-with-values (lambda ()
(run-with-state mval store)) (run-with-state mval store))
(lambda (result store) (lambda (result new-store)
;; Discard the state. ;; Copy the object cache from NEW-STORE so we don't fully discard the
result)))) ;; state.
(let ((cache (store-connection-object-cache new-store)))
(set-store-connection-object-cache! store cache)
result)))))
;;; ;;;