Merge branch 'master' into core-updates
This commit is contained in:
commit
12bd588346
|
@ -235,6 +235,7 @@ Services
|
||||||
* X Window:: Graphical display.
|
* X Window:: Graphical display.
|
||||||
* Printing Services:: Local and remote printer support.
|
* Printing Services:: Local and remote printer support.
|
||||||
* Desktop Services:: D-Bus and desktop services.
|
* Desktop Services:: D-Bus and desktop services.
|
||||||
|
* Sound Services:: ALSA and Pulseaudio services.
|
||||||
* Database Services:: SQL databases, key-value stores, etc.
|
* Database Services:: SQL databases, key-value stores, etc.
|
||||||
* Mail Services:: IMAP, POP3, SMTP, and all that.
|
* Mail Services:: IMAP, POP3, SMTP, and all that.
|
||||||
* Messaging Services:: Messaging services.
|
* Messaging Services:: Messaging services.
|
||||||
|
@ -9697,6 +9698,7 @@ declaration.
|
||||||
* X Window:: Graphical display.
|
* X Window:: Graphical display.
|
||||||
* Printing Services:: Local and remote printer support.
|
* Printing Services:: Local and remote printer support.
|
||||||
* Desktop Services:: D-Bus and desktop services.
|
* Desktop Services:: D-Bus and desktop services.
|
||||||
|
* Sound Services:: ALSA and Pulseaudio services.
|
||||||
* Database Services:: SQL databases, key-value stores, etc.
|
* Database Services:: SQL databases, key-value stores, etc.
|
||||||
* Mail Services:: IMAP, POP3, SMTP, and all that.
|
* Mail Services:: IMAP, POP3, SMTP, and all that.
|
||||||
* Messaging Services:: Messaging services.
|
* Messaging Services:: Messaging services.
|
||||||
|
@ -12842,6 +12844,48 @@ bluetooth keyboard or mouse.
|
||||||
Users need to be in the @code{lp} group to access the D-Bus service.
|
Users need to be in the @code{lp} group to access the D-Bus service.
|
||||||
@end deffn
|
@end deffn
|
||||||
|
|
||||||
|
@node Sound Services
|
||||||
|
@subsubsection Sound Services
|
||||||
|
|
||||||
|
@cindex sound support
|
||||||
|
@cindex ALSA
|
||||||
|
@cindex PulseAudio, sound support
|
||||||
|
|
||||||
|
The @code{(gnu services sound)} module provides an
|
||||||
|
@code{alsa-service-type} service to generate an ALSA
|
||||||
|
@file{/etc/asound.conf} configuration file. This configuration file is
|
||||||
|
what allows applications that produce sound using ALSA to be correctly
|
||||||
|
handled.
|
||||||
|
|
||||||
|
@deffn {Scheme Variable} alsa-service-type
|
||||||
|
This is the type for the @uref{https://alsa-project.org/, ALSA},
|
||||||
|
@command{alsa-configuration} record as in this example:
|
||||||
|
|
||||||
|
@example
|
||||||
|
(service alsa-service-type)
|
||||||
|
@end example
|
||||||
|
|
||||||
|
See below for details about @code{alsa-configuration}.
|
||||||
|
@end deffn
|
||||||
|
|
||||||
|
@deftp {Data Type} alsa-configuration
|
||||||
|
Data type representing the configuration for @code{alsa-service}.
|
||||||
|
|
||||||
|
@table @asis
|
||||||
|
@item @code{pulseaudio?} (default: @var{#t})
|
||||||
|
Whether ALSA applications should transparently be made to use the
|
||||||
|
@uref{http://www.pulseaudio.org/, PulseAudio} sound server.
|
||||||
|
|
||||||
|
Using PulseAudio allows you to run several sound-producing applications
|
||||||
|
at the same time and to individual control them @i{via}
|
||||||
|
@command{pavucontrol}, among other things.
|
||||||
|
|
||||||
|
@item @code{extra-options} (default: @var{""})
|
||||||
|
String to append to the @file{asound.conf} file.
|
||||||
|
|
||||||
|
@end table
|
||||||
|
@end deftp
|
||||||
|
|
||||||
@node Database Services
|
@node Database Services
|
||||||
@subsubsection Database Services
|
@subsubsection Database Services
|
||||||
|
|
||||||
|
|
10
gnu/local.mk
10
gnu/local.mk
|
@ -480,6 +480,7 @@ GNU_SYSTEM_MODULES = \
|
||||||
%D%/services/networking.scm \
|
%D%/services/networking.scm \
|
||||||
%D%/services/nfs.scm \
|
%D%/services/nfs.scm \
|
||||||
%D%/services/shepherd.scm \
|
%D%/services/shepherd.scm \
|
||||||
|
%D%/services/sound.scm \
|
||||||
%D%/services/herd.scm \
|
%D%/services/herd.scm \
|
||||||
%D%/services/pm.scm \
|
%D%/services/pm.scm \
|
||||||
%D%/services/rsync.scm \
|
%D%/services/rsync.scm \
|
||||||
|
@ -557,6 +558,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/aegis-test-fixup-1.patch \
|
%D%/packages/patches/aegis-test-fixup-1.patch \
|
||||||
%D%/packages/patches/aegis-test-fixup-2.patch \
|
%D%/packages/patches/aegis-test-fixup-2.patch \
|
||||||
%D%/packages/patches/agg-am_c_prototype.patch \
|
%D%/packages/patches/agg-am_c_prototype.patch \
|
||||||
|
%D%/packages/patches/amule-crypto-6.patch \
|
||||||
%D%/packages/patches/ansible-wrap-program-hack.patch \
|
%D%/packages/patches/ansible-wrap-program-hack.patch \
|
||||||
%D%/packages/patches/antiword-CVE-2014-8123.patch \
|
%D%/packages/patches/antiword-CVE-2014-8123.patch \
|
||||||
%D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch \
|
%D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch \
|
||||||
|
@ -697,7 +699,6 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/gd-CVE-2018-5711.patch \
|
%D%/packages/patches/gd-CVE-2018-5711.patch \
|
||||||
%D%/packages/patches/gd-fix-tests-on-i686.patch \
|
%D%/packages/patches/gd-fix-tests-on-i686.patch \
|
||||||
%D%/packages/patches/gd-freetype-test-failure.patch \
|
%D%/packages/patches/gd-freetype-test-failure.patch \
|
||||||
%D%/packages/patches/gegl-CVE-2012-4433.patch \
|
|
||||||
%D%/packages/patches/gemma-intel-compat.patch \
|
%D%/packages/patches/gemma-intel-compat.patch \
|
||||||
%D%/packages/patches/geoclue-config.patch \
|
%D%/packages/patches/geoclue-config.patch \
|
||||||
%D%/packages/patches/ghc-8.0-fall-back-to-madv_dontneed.patch \
|
%D%/packages/patches/ghc-8.0-fall-back-to-madv_dontneed.patch \
|
||||||
|
@ -707,11 +708,6 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
|
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
|
||||||
%D%/packages/patches/ghostscript-runpath.patch \
|
%D%/packages/patches/ghostscript-runpath.patch \
|
||||||
%D%/packages/patches/giflib-make-reallocarray-private.patch \
|
%D%/packages/patches/giflib-make-reallocarray-private.patch \
|
||||||
%D%/packages/patches/gimp-CVE-2017-17784.patch \
|
|
||||||
%D%/packages/patches/gimp-CVE-2017-17785.patch \
|
|
||||||
%D%/packages/patches/gimp-CVE-2017-17786.patch \
|
|
||||||
%D%/packages/patches/gimp-CVE-2017-17787.patch \
|
|
||||||
%D%/packages/patches/gimp-CVE-2017-17789.patch \
|
|
||||||
%D%/packages/patches/glib-networking-ssl-cert-file.patch \
|
%D%/packages/patches/glib-networking-ssl-cert-file.patch \
|
||||||
%D%/packages/patches/glib-tests-timer.patch \
|
%D%/packages/patches/glib-tests-timer.patch \
|
||||||
%D%/packages/patches/glibc-CVE-2015-5180.patch \
|
%D%/packages/patches/glibc-CVE-2015-5180.patch \
|
||||||
|
@ -857,7 +853,6 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/libffi-3.2.1-complex-alpha.patch \
|
%D%/packages/patches/libffi-3.2.1-complex-alpha.patch \
|
||||||
%D%/packages/patches/libjxr-fix-function-signature.patch \
|
%D%/packages/patches/libjxr-fix-function-signature.patch \
|
||||||
%D%/packages/patches/libjxr-fix-typos.patch \
|
%D%/packages/patches/libjxr-fix-typos.patch \
|
||||||
%D%/packages/patches/liboop-mips64-deplibs-fix.patch \
|
|
||||||
%D%/packages/patches/libotr-test-auth-fix.patch \
|
%D%/packages/patches/libotr-test-auth-fix.patch \
|
||||||
%D%/packages/patches/liblxqt-include.patch \
|
%D%/packages/patches/liblxqt-include.patch \
|
||||||
%D%/packages/patches/libmad-armv7-thumb-pt1.patch \
|
%D%/packages/patches/libmad-armv7-thumb-pt1.patch \
|
||||||
|
@ -1090,7 +1085,6 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/scotch-graph-induce-type-64.patch \
|
%D%/packages/patches/scotch-graph-induce-type-64.patch \
|
||||||
%D%/packages/patches/sdl-libx11-1.6.patch \
|
%D%/packages/patches/sdl-libx11-1.6.patch \
|
||||||
%D%/packages/patches/seq24-rename-mutex.patch \
|
%D%/packages/patches/seq24-rename-mutex.patch \
|
||||||
%D%/packages/patches/shadow-CVE-2018-7169.patch \
|
|
||||||
%D%/packages/patches/sharutils-CVE-2018-1000097.patch \
|
%D%/packages/patches/sharutils-CVE-2018-1000097.patch \
|
||||||
%D%/packages/patches/shishi-fix-libgcrypt-detection.patch \
|
%D%/packages/patches/shishi-fix-libgcrypt-detection.patch \
|
||||||
%D%/packages/patches/slim-session.patch \
|
%D%/packages/patches/slim-session.patch \
|
||||||
|
|
|
@ -358,16 +358,15 @@ hostname.")
|
||||||
(define-public shadow
|
(define-public shadow
|
||||||
(package
|
(package
|
||||||
(name "shadow")
|
(name "shadow")
|
||||||
(version "4.5")
|
(version "4.6")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
"https://github.com/shadow-maint/shadow/releases/"
|
"https://github.com/shadow-maint/shadow/releases/"
|
||||||
"download/" version "/shadow-" version ".tar.xz"))
|
"download/" version "/shadow-" version ".tar.xz"))
|
||||||
(patches (search-patches "shadow-CVE-2018-7169.patch"))
|
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0hdpai78n63l3v3fgr3kkiqzhd0awrpfnnzz4mf7lmxdh61qb37w"))))
|
"10smy01km2bqjjvsd2jz17zvrxbzj89qczyb1amk38j28bcci609"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(;; Assume System V `setpgrp (void)', which is the default on GNU
|
`(;; Assume System V `setpgrp (void)', which is the default on GNU
|
||||||
|
@ -959,7 +958,7 @@ system administrator.")
|
||||||
(define-public sudo
|
(define-public sudo
|
||||||
(package
|
(package
|
||||||
(name "sudo")
|
(name "sudo")
|
||||||
(version "1.8.22")
|
(version "1.8.23")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri
|
(uri
|
||||||
|
@ -969,7 +968,7 @@ system administrator.")
|
||||||
version ".tar.gz")))
|
version ".tar.gz")))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"00pxp74xkwdcmrjwy55j0k8p684jk1zx3nzdc11v30q8q8kwnmkj"))
|
"0yg62wq8rcrbr7qvh3wgfg2g4bwanbi50cr2lf2cfyy8dydx4qyq"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
'(begin
|
'(begin
|
||||||
|
|
|
@ -51,15 +51,15 @@ formats.")
|
||||||
(define-public qrencode
|
(define-public qrencode
|
||||||
(package
|
(package
|
||||||
(name "qrencode")
|
(name "qrencode")
|
||||||
(version "3.4.4")
|
(version "4.0.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
"https://fukuchi.org/works/qrencode/qrencode-" version
|
"https://fukuchi.org/works/qrencode/qrencode-" version
|
||||||
".tar.gz"))
|
".tar.bz2"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0wiagx7i8p9zal53smf5abrnh9lr31mv0p36wg017401jrmf5577"))))
|
"02vx69fl52jbcrmnydsaxcmy6nxqm9jyxzd7hr07s491d7hka069"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(inputs `(("libpng" ,libpng)))
|
(inputs `(("libpng" ,libpng)))
|
||||||
(native-inputs `(("pkg-config" ,pkg-config)))
|
(native-inputs `(("pkg-config" ,pkg-config)))
|
||||||
|
|
|
@ -211,7 +211,7 @@ GP2C, the GP to C compiler, translates GP scripts to PARI programs.")
|
||||||
(define-public giac-xcas
|
(define-public giac-xcas
|
||||||
(package
|
(package
|
||||||
(name "giac-xcas")
|
(name "giac-xcas")
|
||||||
(version "1.4.9-45")
|
(version "1.4.9-59")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
;; "~parisse/giac" is not used because the maintainer regularly
|
;; "~parisse/giac" is not used because the maintainer regularly
|
||||||
|
@ -223,7 +223,7 @@ GP2C, the GP to C compiler, translates GP scripts to PARI programs.")
|
||||||
"source/giac_" version ".tar.gz"))
|
"source/giac_" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"11za5rznr2dgy6598y4iwrcyi86w7f601ci9i794kl8k22pqhcd8"))))
|
"0dv5p5y6gkrsmz3xa7fw87rjyabwdwk09mqb09kb7gai9n9dgayk"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases
|
`(#:phases
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
|
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
|
||||||
;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
|
;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
|
||||||
;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org>
|
||||||
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com>
|
;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com>
|
||||||
;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
|
;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
|
||||||
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
|
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
|
||||||
|
@ -572,16 +572,7 @@ based on human speech recordings.")
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'remove-compiler-flags
|
(add-after 'unpack 'remove-compiler-flags
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* '("src/casynth/CMakeLists.txt"
|
(substitute* (find-files "." "CMakeLists.txt")
|
||||||
"src/cheapdist/CMakeLists.txt"
|
|
||||||
"src/duffer/CMakeLists.txt"
|
|
||||||
"src/envfollower/CMakeLists.txt"
|
|
||||||
"src/ewham/CMakeLists.txt"
|
|
||||||
"src/hip2b/CMakeLists.txt"
|
|
||||||
"src/lushlife/CMakeLists.txt"
|
|
||||||
"src/powercut/CMakeLists.txt"
|
|
||||||
"src/powerup/CMakeLists.txt"
|
|
||||||
"src/stuck/CMakeLists.txt")
|
|
||||||
(("-msse2 -mfpmath=sse") ""))
|
(("-msse2 -mfpmath=sse") ""))
|
||||||
#t)))))
|
#t)))))
|
||||||
(inputs
|
(inputs
|
||||||
|
|
|
@ -77,7 +77,7 @@ DNS-SD (for \"DNS-Based Service Discovery\") protocols.")
|
||||||
(define-public nss-mdns
|
(define-public nss-mdns
|
||||||
(package
|
(package
|
||||||
(name "nss-mdns")
|
(name "nss-mdns")
|
||||||
(version "0.12")
|
(version "0.14.1")
|
||||||
(home-page "https://github.com/lathiat/nss-mdns")
|
(home-page "https://github.com/lathiat/nss-mdns")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -85,32 +85,13 @@ DNS-SD (for \"DNS-Based Service Discovery\") protocols.")
|
||||||
name "-" version ".tar.gz"))
|
name "-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1p2vj9fz4kzrjrj81ipf4qwgnr2n7a8cbzw4bpk18xyqhdx8h775"))
|
"134wdr0n9cm5ab4g6dwq76lvzqns9dcylr470i2xxjimnw0l22d2"))))
|
||||||
(patches
|
|
||||||
(list (origin
|
|
||||||
;; See
|
|
||||||
;; <https://github.com/lathiat/nss-mdns/issues/26#issuecomment-364781799>.
|
|
||||||
(uri (string-append
|
|
||||||
home-page
|
|
||||||
"/commit/31ccbec3b4f054e590c7c880d8a8a50cfc97127d.patch"))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"0b1jmhnkpsczbph4ala7x3rafwxdg93277s30iaxh37jnvgjnhsd"))
|
|
||||||
(method url-fetch))))))
|
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:phases (modify-phases %standard-phases
|
;; The Avahi daemon socket is expected by 'configure.ac' to be at
|
||||||
(add-after 'unpack 'set-avahi-socket-name
|
;; "$(localstatedir)/run/avahi-daemon/socket", but nowadays it lives in
|
||||||
(lambda _
|
;; /run/avahi-daemon/socket. Remove the "$(localstatedir)" bit.
|
||||||
;; The Avahi daemon socket is expected by
|
'(#:configure-flags '("AVAHI_SOCKET=/run/avahi-daemon/socket")))
|
||||||
;; src/Makefile.am to be at
|
|
||||||
;; "$(localstatedir)/run/avahi-daemon/socket", but
|
|
||||||
;; nowadays it lives in /run/avahi-daemon/socket.
|
|
||||||
;; Remove the "$(localstatedir)" bit.
|
|
||||||
(substitute* "src/Makefile.in"
|
|
||||||
(("\\$\\(localstatedir)/run/avahi-daemon/socket")
|
|
||||||
"/run/avahi-daemon/socket"))
|
|
||||||
#t)))))
|
|
||||||
(synopsis "Multicast DNS Name Service Switch (@dfn{NSS}) plug-in")
|
(synopsis "Multicast DNS Name Service Switch (@dfn{NSS}) plug-in")
|
||||||
(description
|
(description
|
||||||
"Nss-mdns is a plug-in for the GNU C Library's Name Service Switch
|
"Nss-mdns is a plug-in for the GNU C Library's Name Service Switch
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;; Copyright © 2018 Roel Janssen <roel@gnu.org>
|
;;; Copyright © 2018 Roel Janssen <roel@gnu.org>
|
||||||
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -151,14 +152,14 @@ processing to visualization and annotation.")
|
||||||
(define-public r-multtest
|
(define-public r-multtest
|
||||||
(package
|
(package
|
||||||
(name "r-multtest")
|
(name "r-multtest")
|
||||||
(version "2.34.0")
|
(version "2.36.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (bioconductor-uri "multtest" version))
|
(uri (bioconductor-uri "multtest" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0n11rd49xl2vn3ldmfips7d3yb70l8npjcqsxyswr9ypjhgzkv9j"))))
|
"11949h2kglw13x8haaj4clg4jim1mwh5n98n9zxp9mmgn01z1lp0"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-survival" ,r-survival)
|
`(("r-survival" ,r-survival)
|
||||||
|
|
|
@ -11748,7 +11748,7 @@ accurate as existing quantification tools.")
|
||||||
code that is used in the Cufflinks codebase. The goal of this library is to
|
code that is used in the Cufflinks codebase. The goal of this library is to
|
||||||
provide this functionality without the necessity of drawing in a heavy-weight
|
provide this functionality without the necessity of drawing in a heavy-weight
|
||||||
dependency like SeqAn.")
|
dependency like SeqAn.")
|
||||||
(license (license:x11-style "http://www.boost.org/LICENSE_1_0.txt"))))
|
(license (license:x11-style "https://www.boost.org/LICENSE_1_0.txt"))))
|
||||||
|
|
||||||
(define-public libdivsufsort
|
(define-public libdivsufsort
|
||||||
(package
|
(package
|
||||||
|
|
|
@ -62,7 +62,7 @@
|
||||||
(define-public transmission
|
(define-public transmission
|
||||||
(package
|
(package
|
||||||
(name "transmission")
|
(name "transmission")
|
||||||
(version "2.93")
|
(version "2.94")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
|
@ -70,7 +70,7 @@
|
||||||
"master/transmission-" version ".tar.xz"))
|
"master/transmission-" version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"02xrp49gsv4jkbzp37qrwlnb9nlja08s92dyvgdbr6a4187945c8"))))
|
"0zbbj7rlm6m7vb64x68a64cwmijhsrwx9l63hbwqs7zr9742qi1m"))))
|
||||||
(build-system glib-or-gtk-build-system)
|
(build-system glib-or-gtk-build-system)
|
||||||
(outputs '("out" ; library and command-line interface
|
(outputs '("out" ; library and command-line interface
|
||||||
"gui")) ; graphical user interface
|
"gui")) ; graphical user interface
|
||||||
|
|
|
@ -111,12 +111,12 @@
|
||||||
(lambda* (#:key make-flags #:allow-other-keys)
|
(lambda* (#:key make-flags #:allow-other-keys)
|
||||||
(apply invoke "./b2" "install" make-flags))))))
|
(apply invoke "./b2" "install" make-flags))))))
|
||||||
|
|
||||||
(home-page "http://www.boost.org")
|
(home-page "https://www.boost.org")
|
||||||
(synopsis "Peer-reviewed portable C++ source libraries")
|
(synopsis "Peer-reviewed portable C++ source libraries")
|
||||||
(description
|
(description
|
||||||
"A collection of libraries intended to be widely useful, and usable
|
"A collection of libraries intended to be widely useful, and usable
|
||||||
across a broad spectrum of applications.")
|
across a broad spectrum of applications.")
|
||||||
(license (license:x11-style "http://www.boost.org/LICENSE_1_0.txt"
|
(license (license:x11-style "https://www.boost.org/LICENSE_1_0.txt"
|
||||||
"Some components have other similar licences."))))
|
"Some components have other similar licences."))))
|
||||||
|
|
||||||
(define-public boost-sync
|
(define-public boost-sync
|
||||||
|
@ -149,7 +149,7 @@ across a broad spectrum of applications.")
|
||||||
(description "The Boost.Sync library provides mutexes, semaphores, locks
|
(description "The Boost.Sync library provides mutexes, semaphores, locks
|
||||||
and events and other thread related facilities. Boost.Sync originated from
|
and events and other thread related facilities. Boost.Sync originated from
|
||||||
Boost.Thread.")
|
Boost.Thread.")
|
||||||
(license (license:x11-style "http://www.boost.org/LICENSE_1_0.txt")))))
|
(license (license:x11-style "https://www.boost.org/LICENSE_1_0.txt")))))
|
||||||
|
|
||||||
(define-public mdds
|
(define-public mdds
|
||||||
(package
|
(package
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2016, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;;
|
;;;
|
||||||
|
@ -83,7 +83,7 @@ standard.")
|
||||||
(build-system trivial-build-system)
|
(build-system trivial-build-system)
|
||||||
(native-inputs '())
|
(native-inputs '())
|
||||||
(inputs `(("tcc" ,tcc)
|
(inputs `(("tcc" ,tcc)
|
||||||
("guile" ,guile-2.0)))
|
("guile" ,guile-2.2)))
|
||||||
|
|
||||||
;; By default TCC does not honor any search path environment variable.
|
;; By default TCC does not honor any search path environment variable.
|
||||||
;; This wrapper adds them.
|
;; This wrapper adds them.
|
||||||
|
|
|
@ -396,6 +396,8 @@ test coverage and has a web user interface that will refresh automatically.")
|
||||||
(home-page "https://github.com/smartystreets/goconvey")
|
(home-page "https://github.com/smartystreets/goconvey")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
|
;; XXX When updating, check whether ZNC's GOOGLETEST-SOURCES can be
|
||||||
|
;; switched back to simply using (PACKAGE-SOURCE ...).
|
||||||
(define-public googletest
|
(define-public googletest
|
||||||
(package
|
(package
|
||||||
(name "googletest")
|
(name "googletest")
|
||||||
|
|
|
@ -653,14 +653,14 @@ rows, dropping names) to see if the modified versions are identical.")
|
||||||
(define-public r-dendextend
|
(define-public r-dendextend
|
||||||
(package
|
(package
|
||||||
(name "r-dendextend")
|
(name "r-dendextend")
|
||||||
(version "1.7.0")
|
(version "1.8.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "dendextend" version))
|
(uri (cran-uri "dendextend" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1krvqadnnh53xx5ql7bwzxaif6a317jzbs1m00gnc6jnj03rfl5d"))))
|
"1virn3c232xwcq3d0hhkgjh5gpzl01s39iwii5gxcm9mnsxjzdrh"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-fpc" ,r-fpc)
|
`(("r-fpc" ,r-fpc)
|
||||||
|
@ -1537,14 +1537,14 @@ Delaunay triangulation and convex hull computation.")
|
||||||
(define-public r-ddalpha
|
(define-public r-ddalpha
|
||||||
(package
|
(package
|
||||||
(name "r-ddalpha")
|
(name "r-ddalpha")
|
||||||
(version "1.3.2")
|
(version "1.3.3")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "ddalpha" version))
|
(uri (cran-uri "ddalpha" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1i2zcz20zy9xd42kdz09njbkq07mj2pp6f07z6dnwi5hrmvhbh9r"))))
|
"0g4iqhrz2gym05q40ih6srilyajw2l2mv46pchn65bc7hw4vkgrk"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-bh" ,r-bh)
|
`(("r-bh" ,r-bh)
|
||||||
|
@ -2370,14 +2370,14 @@ timeout. It can also poll several processes at once.")
|
||||||
(define-public r-tsp
|
(define-public r-tsp
|
||||||
(package
|
(package
|
||||||
(name "r-tsp")
|
(name "r-tsp")
|
||||||
(version "1.1-5")
|
(version "1.1-6")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "TSP" version))
|
(uri (cran-uri "TSP" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"03xxfr5kk4zhzpb1q1pwncdp0dhchm9b48wzhvvxn2dxf3mnby2w"))))
|
"1ym97xl2icjpfkrici0wig29w06bb704hp51v7h5liygjlwpkhlc"))))
|
||||||
(properties `((upstream-name . "TSP")))
|
(properties `((upstream-name . "TSP")))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs `(("r-foreach" ,r-foreach)))
|
(propagated-inputs `(("r-foreach" ,r-foreach)))
|
||||||
|
@ -3125,18 +3125,19 @@ creation and manipulation of WAVE audio files.")
|
||||||
(define-public r-np
|
(define-public r-np
|
||||||
(package
|
(package
|
||||||
(name "r-np")
|
(name "r-np")
|
||||||
(version "0.60-6")
|
(version "0.60-7")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "np" version))
|
(uri (cran-uri "np" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1y72x5j9j9mcgcy2xizk31gl843hfkngxdn8s4qw7yhw2qj79hsr"))))
|
"02h62n5xclr01fx88ayp7y1s9gcnb11zb1vqshvdcq31v18h7kf2"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-boot" ,r-boot)
|
`(("r-boot" ,r-boot)
|
||||||
("r-cubature" ,r-cubature)
|
("r-cubature" ,r-cubature)
|
||||||
|
("r-quadprog" ,r-quadprog)
|
||||||
("r-quantreg" ,r-quantreg)))
|
("r-quantreg" ,r-quantreg)))
|
||||||
(home-page "https://github.com/JeffreyRacine/R-Package-np")
|
(home-page "https://github.com/JeffreyRacine/R-Package-np")
|
||||||
(synopsis "Non-parametric kernel smoothing methods for mixed data types")
|
(synopsis "Non-parametric kernel smoothing methods for mixed data types")
|
||||||
|
@ -3853,14 +3854,14 @@ exchanging spatial objects with other R packages.")
|
||||||
(define-public r-later
|
(define-public r-later
|
||||||
(package
|
(package
|
||||||
(name "r-later")
|
(name "r-later")
|
||||||
(version "0.7.1")
|
(version "0.7.2")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "later" version))
|
(uri (cran-uri "later" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0z9jymmclkq9zcg1fd8p6gsnm5z1sn3n9pfz3bs03qjrkbizgrvz"))))
|
"0l5ln7sjyi2rj7bx8iamxykqlfarv05zb9882ikizppb1cr1hgyw"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-bh" ,r-bh)
|
`(("r-bh" ,r-bh)
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1046,7 +1046,7 @@ emulation community. It provides highly accurate emulation.")
|
||||||
(define-public retroarch
|
(define-public retroarch
|
||||||
(package
|
(package
|
||||||
(name "retroarch")
|
(name "retroarch")
|
||||||
(version "1.7.2")
|
(version "1.7.3")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -1054,7 +1054,7 @@ emulation community. It provides highly accurate emulation.")
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(file-name (string-append name "-" version ".tar.gz"))
|
(file-name (string-append name "-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "1y9fakr41h6xpddpkj12mcw1kgldvy76nzvxm5jk5v7iyiks4c6k"))))
|
(base32 "1si78dbwbsq4i0r42q94nmlpaxdyqch113nxavdprf4vc1224356"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:tests? #f ; no tests
|
'(#:tests? #f ; no tests
|
||||||
|
@ -1088,6 +1088,7 @@ emulation community. It provides highly accurate emulation.")
|
||||||
("openal" ,openal)
|
("openal" ,openal)
|
||||||
("pulseaudio" ,pulseaudio)
|
("pulseaudio" ,pulseaudio)
|
||||||
("python" ,python)
|
("python" ,python)
|
||||||
|
("qtbase" ,qtbase)
|
||||||
("sdl" ,sdl2)
|
("sdl" ,sdl2)
|
||||||
("udev" ,eudev)
|
("udev" ,eudev)
|
||||||
("vulkan-icd-loader" ,vulkan-icd-loader)
|
("vulkan-icd-loader" ,vulkan-icd-loader)
|
||||||
|
|
|
@ -1082,14 +1082,14 @@ bindings for Python, Java, OCaml and more.")
|
||||||
(define-public radare2
|
(define-public radare2
|
||||||
(package
|
(package
|
||||||
(name "radare2")
|
(name "radare2")
|
||||||
(version "1.6.0")
|
(version "2.5.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "http://radare.mikelloc.com/get/" version "/"
|
(uri (string-append "http://radare.mikelloc.com/get/" version "/"
|
||||||
name "-" version ".tar.gz"))
|
name "-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"16ggsk40zz6hyvclvqj1r4bh4hb78jf0d6ppry1jk4r0j30wm7cm"))
|
"17h4ba5qqahfi8mi4x2dcvq87cqpir5v2dlaqbvmay6vby4zh4v7"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
'(begin
|
'(begin
|
||||||
|
|
|
@ -262,8 +262,7 @@ Libraries with some extra bells and whistles.")
|
||||||
"16zydv7z94aw3rywmb9gr8ya85k7b75h22wng95lfx1x0y1yb0ad"))))
|
"16zydv7z94aw3rywmb9gr8ya85k7b75h22wng95lfx1x0y1yb0ad"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:configure-flags '("--enable-mount-eeze")
|
`(#:phases
|
||||||
#:phases
|
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-before 'configure 'set-system-actions
|
(add-before 'configure 'set-system-actions
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
@ -275,6 +274,8 @@ Libraries with some extra bells and whistles.")
|
||||||
(("/usr/share/X11/xkb/rules/xorg.lst")
|
(("/usr/share/X11/xkb/rules/xorg.lst")
|
||||||
(string-append xkeyboard
|
(string-append xkeyboard
|
||||||
"/share/X11/xkb/rules/base.lst")))
|
"/share/X11/xkb/rules/base.lst")))
|
||||||
|
(substitute* "src/modules/everything/evry_plug_apps.c"
|
||||||
|
(("/usr/bin/") ""))
|
||||||
(substitute* "configure"
|
(substitute* "configure"
|
||||||
(("/bin/mount") (string-append utils "/bin/mount"))
|
(("/bin/mount") (string-append utils "/bin/mount"))
|
||||||
(("/bin/umount") (string-append utils "/bin/umount"))
|
(("/bin/umount") (string-append utils "/bin/umount"))
|
||||||
|
|
|
@ -27,14 +27,14 @@
|
||||||
(define-public freeipmi
|
(define-public freeipmi
|
||||||
(package
|
(package
|
||||||
(name "freeipmi")
|
(name "freeipmi")
|
||||||
(version "1.6.1")
|
(version "1.6.2")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://gnu/freeipmi/freeipmi-"
|
(uri (string-append "mirror://gnu/freeipmi/freeipmi-"
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0jdm1nwsnkj0nzjmcqprmjk25449mhjj25khwzpq3mpjw440wmd2"))))
|
"0jhjf21gn1m9lhjsc1ard9zymq25mk7rxcyygjfxgy0vb4j36l9i"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(inputs
|
(inputs
|
||||||
`(("libgcrypt" ,libgcrypt)))
|
`(("libgcrypt" ,libgcrypt)))
|
||||||
|
|
|
@ -233,10 +233,19 @@ PCM data.")
|
||||||
(base32
|
(base32
|
||||||
"13j1m92zhxwkaaja3lg5x0h0b28mrrawdzk9d3hd19031akfxwb3"))))
|
"13j1m92zhxwkaaja3lg5x0h0b28mrrawdzk9d3hd19031akfxwb3"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
|
(arguments
|
||||||
|
'(#:phases (modify-phases %standard-phases
|
||||||
|
(add-before 'build 'no-Werror
|
||||||
|
(lambda _
|
||||||
|
;; Don't abort builds due to things like GLib
|
||||||
|
;; deprecation warnings.
|
||||||
|
(substitute* (find-files "." "^Makefile\\.in$")
|
||||||
|
(("-Werror") ""))
|
||||||
|
#t)))))
|
||||||
(native-inputs `(("pkgconfig" ,pkg-config)))
|
(native-inputs `(("pkgconfig" ,pkg-config)))
|
||||||
(inputs `(("bdb" ,bdb)
|
(inputs `(("bdb" ,bdb)
|
||||||
("glib" ,glib)
|
("glib" ,glib)
|
||||||
("guile" ,guile-2.0)
|
("guile" ,guile-2.2)
|
||||||
("libmicrohttpd" ,libmicrohttpd)
|
("libmicrohttpd" ,libmicrohttpd)
|
||||||
("ncurses" ,ncurses)
|
("ncurses" ,ncurses)
|
||||||
("sdl" ,sdl)
|
("sdl" ,sdl)
|
||||||
|
@ -541,22 +550,15 @@ archive on a per-file basis.")
|
||||||
(define-public love
|
(define-public love
|
||||||
(package
|
(package
|
||||||
(name "love")
|
(name "love")
|
||||||
(version "0.10.2")
|
(version "11.1")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://bitbucket.org/rude/love/downloads/"
|
(uri (string-append "https://bitbucket.org/rude/love/downloads/"
|
||||||
"love-" version "-linux-src.tar.gz"))
|
"love-" version "-linux-src.tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"11x346pw0gqad8nmkmywzx4xpcbfc3dslbrdw5x94n1i25mk0sxj"))
|
"1pkwiszmjs0xrwk0wqbc5cp9108b1y8gwsid0gqk1s0x09q9lpmw"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))))
|
||||||
(snippet
|
|
||||||
'(begin
|
|
||||||
;; Build with luajit 2.1.0-beta3. Fixed in love 0.11.
|
|
||||||
;; See <https://bitbucket.org/rude/love/issues/1277>.
|
|
||||||
(substitute* "src/libraries/luasocket/libluasocket/lua.h"
|
|
||||||
(("> 501") ">= 501"))
|
|
||||||
#t))))
|
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("pkg-config" ,pkg-config)))
|
`(("pkg-config" ,pkg-config)))
|
||||||
|
|
|
@ -777,90 +777,110 @@ utilizing the art assets from the @code{SuperTux} project.")
|
||||||
license:gpl3+))))
|
license:gpl3+))))
|
||||||
|
|
||||||
(define-public roguebox-adventures
|
(define-public roguebox-adventures
|
||||||
(let ((commit "19a2c340b34d5b4e7cc89118c7aedc058babbd93")
|
(package
|
||||||
(revision "1"))
|
(name "roguebox-adventures")
|
||||||
(package
|
(version "2.2.1")
|
||||||
(name "roguebox-adventures")
|
(source
|
||||||
(version (git-version "2.1.2" revision commit))
|
(origin
|
||||||
(source
|
(method url-fetch)
|
||||||
(origin
|
(uri (string-append
|
||||||
(method git-fetch)
|
"http://download.tuxfamily.org/rba/RogueBoxAdventures_v"
|
||||||
(uri
|
(string-join (string-split version #\.) "_") "_Source.zip"))
|
||||||
(git-reference
|
(file-name (string-append name "-" version ".zip"))
|
||||||
(url "https://git.postactiv.com/themightyglider/RogueBoxAdventures.git")
|
(sha256
|
||||||
(commit commit)))
|
(base32
|
||||||
(file-name (git-file-name name version))
|
"0kmzdgnik8fsf3bg55546l77p3mfxn2awkzfzzdn20n82rd2babw"))))
|
||||||
(sha256
|
(build-system python-build-system)
|
||||||
(base32
|
(arguments
|
||||||
"0afmg8fjdcs3sqdp5rc7irgr7riil8jwysfjn1imfxslf1wcx5ah"))))
|
`(#:tests? #f ; no check target
|
||||||
(build-system python-build-system)
|
#:phases
|
||||||
(arguments
|
(modify-phases %standard-phases
|
||||||
'(#:tests? #f ; no check target
|
(replace 'unpack
|
||||||
#:phases
|
(lambda* (#:key source #:allow-other-keys)
|
||||||
(modify-phases %standard-phases
|
(and (invoke "unzip" source)
|
||||||
;; no setup.py script
|
;; The actual source is buried a few directories deep.
|
||||||
(replace 'build
|
(chdir (string-append "RogueBoxAdventures_v"
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(string-join
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(string-split ,version #\.) "_")
|
||||||
(data (string-append
|
"_Source")))))
|
||||||
out "/share/games/roguebox-adventures")))
|
;; no setup.py script
|
||||||
;; Use the correct data directory.
|
(replace 'build
|
||||||
(substitute* '("main.py" "LIB/getch.py" "LIB/getch_gcwz.py")
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(("basic_path + os\\.sep + 'DATA'")
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
(string-append "'" data "'"))
|
(data (string-append
|
||||||
(("^basic_path.*$")
|
out "/share/games/roguebox-adventures")))
|
||||||
(string-append "basic_path ='" data "'\n")))
|
;; Use the correct data directory.
|
||||||
(substitute* "LIB/gra_files.py"
|
(substitute* '("main.py" "LIB/getch.py" "LIB/getch_gcwz.py")
|
||||||
(("basic_path = b_path\\.replace\\('/LIB',''\\)")
|
(("basic_path + os\\.sep + 'DATA'")
|
||||||
(string-append "basic_path ='" data "'\n")))
|
(string-append "'" data "'"))
|
||||||
|
(("^basic_path.*$")
|
||||||
|
(string-append "basic_path ='" data "'\n")))
|
||||||
|
(substitute* "LIB/gra_files.py"
|
||||||
|
(("basic_path = b_path\\.replace\\('/LIB',''\\)")
|
||||||
|
(string-append "basic_path ='" data "'\n")))
|
||||||
|
|
||||||
;; The game must save in the user's home directory because
|
;; The game must save in the user's home directory because
|
||||||
;; the store is read-only.
|
;; the store is read-only.
|
||||||
(substitute* "main.py"
|
(substitute* "main.py"
|
||||||
(("home_save = False") "home_save = True")
|
(("home_save = False") "home_save = True")
|
||||||
(("'icon_small.png'")
|
(("'icon_small.png'")
|
||||||
(string-append "'" data "/icon_small.png'"))))
|
(string-append "'" data "/icon_small.png'"))))
|
||||||
#t))
|
#t))
|
||||||
(replace 'install
|
(replace 'install
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
(bin (string-append out "/bin"))
|
(bin (string-append out "/bin"))
|
||||||
(data (string-append
|
(roguebox-adventures
|
||||||
out "/share/games/roguebox-adventures"))
|
(string-append bin "/roguebox-adventures"))
|
||||||
(doc (string-append
|
(data (string-append
|
||||||
out "/share/doc/roguebox-adventures")))
|
out "/share/games/roguebox-adventures"))
|
||||||
(mkdir-p bin)
|
(lib (string-append data "/LIB"))
|
||||||
(mkdir-p doc)
|
(doc (string-append
|
||||||
(copy-file "main.py"
|
out "/share/doc/roguebox-adventures")))
|
||||||
(string-append bin "/roguebox-adventures"))
|
(mkdir-p bin)
|
||||||
(chmod (string-append bin "/roguebox-adventures") #o555)
|
(mkdir-p doc)
|
||||||
|
|
||||||
(for-each (lambda (file)
|
(for-each (lambda (file)
|
||||||
(copy-recursively file
|
(copy-recursively file
|
||||||
(string-append data "/" file)))
|
(string-append data "/" file)))
|
||||||
'("AUDIO" "FONT" "GRAPHIC" "LIB" "LICENSE"
|
'("AUDIO" "FONT" "GRAPHIC" "LIB" "LICENSE"
|
||||||
"icon_big.png" "icon_small.png"))
|
"icon_big.png" "icon_small.png"))
|
||||||
|
(for-each (lambda (file)
|
||||||
|
(chmod file #o555)
|
||||||
|
(install-file file lib))
|
||||||
|
'("main.py" "run.py"))
|
||||||
|
|
||||||
(copy-recursively "DOC" doc)
|
(copy-recursively "DOC" doc)
|
||||||
|
|
||||||
(wrap-program (string-append bin "/roguebox-adventures")
|
(call-with-output-file
|
||||||
`("PYTHONPATH" ":" prefix (,(string-append data "/LIB")))))
|
roguebox-adventures
|
||||||
#t)))))
|
(lambda (p)
|
||||||
(inputs
|
(format p "\
|
||||||
`(("python-pygame" ,python-pygame)
|
#!~a
|
||||||
("python-tmx" ,python-tmx)))
|
export PYTHONPATH=~a/LIB:~a
|
||||||
(home-page "https://rogueboxadventures.tuxfamily.org")
|
exec -a \"~a\" ~a \"$@\"\n"
|
||||||
(synopsis "A classical roguelike/sandbox game")
|
(which "bash") data (getenv "PYTHONPATH")
|
||||||
(description
|
(which "python3")
|
||||||
"RogueBox Adventures is a graphical roguelike with strong influences
|
(string-append lib "/main.py"))))
|
||||||
|
(chmod roguebox-adventures #o555))
|
||||||
|
#t)))))
|
||||||
|
(native-inputs
|
||||||
|
`(("unzip" ,unzip)))
|
||||||
|
(inputs
|
||||||
|
`(("python-pygame" ,python-pygame)
|
||||||
|
("python-tmx" ,python-tmx)))
|
||||||
|
(home-page "https://rogueboxadventures.tuxfamily.org")
|
||||||
|
(synopsis "A classical roguelike/sandbox game")
|
||||||
|
(description
|
||||||
|
"RogueBox Adventures is a graphical roguelike with strong influences
|
||||||
from sandbox games like Minecraft or Terraria. The main idea of RogueBox
|
from sandbox games like Minecraft or Terraria. The main idea of RogueBox
|
||||||
Adventures is to offer the player a kind of roguelike toy-world. This world
|
Adventures is to offer the player a kind of roguelike toy-world. This world
|
||||||
can be explored and changed freely.")
|
can be explored and changed freely.")
|
||||||
;; The GPL3+ is for code, the rest are for art.
|
;; The GPL3+ is for code, the rest are for art.
|
||||||
(license (list license:cc0
|
(license (list license:cc0
|
||||||
license:cc-by3.0
|
license:cc-by3.0
|
||||||
license:gpl3+
|
license:gpl3+
|
||||||
license:silofl1.1)))))
|
license:silofl1.1))))
|
||||||
|
|
||||||
(define-public xshogi
|
(define-public xshogi
|
||||||
(package
|
(package
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
|
;;; Copyright © 2018 Leo Famulari <leo@famulari.name>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -28,6 +29,7 @@
|
||||||
#:use-module (guix build-system glib-or-gtk)
|
#:use-module (guix build-system glib-or-gtk)
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
#:use-module (gnu packages algebra)
|
#:use-module (gnu packages algebra)
|
||||||
|
#:use-module (gnu packages autotools)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages glib)
|
#:use-module (gnu packages glib)
|
||||||
#:use-module (gnu packages gtk)
|
#:use-module (gnu packages gtk)
|
||||||
|
@ -39,12 +41,13 @@
|
||||||
#:use-module (gnu packages pdf)
|
#:use-module (gnu packages pdf)
|
||||||
#:use-module (gnu packages photo)
|
#:use-module (gnu packages photo)
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
|
#:use-module (gnu packages web)
|
||||||
#:use-module (gnu packages xorg))
|
#:use-module (gnu packages xorg))
|
||||||
|
|
||||||
(define-public babl
|
(define-public babl
|
||||||
(package
|
(package
|
||||||
(name "babl")
|
(name "babl")
|
||||||
(version "0.1.40")
|
(version "0.1.46")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (list (string-append "https://download.gimp.org/pub/babl/"
|
(uri (list (string-append "https://download.gimp.org/pub/babl/"
|
||||||
|
@ -58,7 +61,7 @@
|
||||||
"/babl-" version ".tar.bz2")))
|
"/babl-" version ".tar.bz2")))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"08cdl6rcfvkhqsnhb214xzr0wbrv0956xzlrzqxcb1k1madgjanh"))))
|
"0nwyhvfca6m35wjcccvwca7fcihzgdfyc012qi703y5d3cxl1hmv"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(home-page "http://gegl.org/babl/")
|
(home-page "http://gegl.org/babl/")
|
||||||
(synopsis "Image pixel format conversion library")
|
(synopsis "Image pixel format conversion library")
|
||||||
|
@ -75,43 +78,25 @@ provided, as well as a framework to add new color models and data types.")
|
||||||
(define-public gegl
|
(define-public gegl
|
||||||
(package
|
(package
|
||||||
(name "gegl")
|
(name "gegl")
|
||||||
(version "0.2.0")
|
(version "0.4.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (list (string-append "http://download.gimp.org/pub/gegl/"
|
(uri (list (string-append "https://download.gimp.org/pub/gegl/"
|
||||||
(string-take version 3)
|
(string-take version 3)
|
||||||
"/" name "-" version ".tar.bz2")))
|
"/" name "-" version ".tar.bz2")))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"09nlv06li9nrn74ifpm7223mxpg0s7cii702z72cpbwrjh6nlbnz"))
|
"1ighk4z8nlqrzyj8w97s140hzj59564l3xv6fpzbr97m1zx2nkfh"))))
|
||||||
(patches (search-patches "gegl-CVE-2012-4433.patch"))))
|
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(;; More than just the one test disabled below now fails; disable them
|
'(#:configure-flags '("LDFLAGS=-lm")))
|
||||||
;; all according to the rationale given below.
|
;; These are propagated to satisfy 'gegl-0.4.pc'.
|
||||||
#:tests? #f
|
(propagated-inputs
|
||||||
#:configure-flags '("LDFLAGS=-lm")
|
|
||||||
#:phases
|
|
||||||
(modify-phases %standard-phases
|
|
||||||
(add-before 'build 'pre-build
|
|
||||||
(lambda _
|
|
||||||
;; This test program seems to crash on exit. Specifically, whilst
|
|
||||||
;; g_object_unreffing bufferA and bufferB - This seems to be a bug
|
|
||||||
;; in the destructor. This is just a test program so will not have
|
|
||||||
;; any wider effect, although might be hiding another problem.
|
|
||||||
;; According to advice received on irc.gimp.org#gegl although 0.2.0
|
|
||||||
;; is the latest released version, any bug reports against it will
|
|
||||||
;; be ignored. So we are on our own.
|
|
||||||
(substitute* "tools/img_cmp.c"
|
|
||||||
(("g_object_unref \\(buffer.\\);") ""))
|
|
||||||
|
|
||||||
(substitute* "tests/compositions/Makefile"
|
|
||||||
(("/bin/sh") (which "sh")))
|
|
||||||
#t)))))
|
|
||||||
(inputs
|
|
||||||
`(("babl" ,babl)
|
`(("babl" ,babl)
|
||||||
("glib" ,glib)
|
("glib" ,glib)
|
||||||
("cairo" ,cairo)
|
("json-glib" ,json-glib)))
|
||||||
|
(inputs
|
||||||
|
`(("cairo" ,cairo)
|
||||||
("pango" ,pango)
|
("pango" ,pango)
|
||||||
("libpng" ,libpng)
|
("libpng" ,libpng)
|
||||||
("libjpeg" ,libjpeg-8)))
|
("libjpeg" ,libjpeg-8)))
|
||||||
|
@ -131,23 +116,18 @@ buffers.")
|
||||||
(define-public gimp
|
(define-public gimp
|
||||||
(package
|
(package
|
||||||
(name "gimp")
|
(name "gimp")
|
||||||
(version "2.8.22")
|
(version "2.10.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "http://download.gimp.org/pub/gimp/v"
|
(uri (string-append "https://download.gimp.org/pub/gimp/v"
|
||||||
(version-major+minor version)
|
(version-major+minor version)
|
||||||
"/gimp-" version ".tar.bz2"))
|
"/gimp-" version ".tar.bz2"))
|
||||||
(patches (search-patches "gimp-CVE-2017-17784.patch"
|
|
||||||
"gimp-CVE-2017-17785.patch"
|
|
||||||
"gimp-CVE-2017-17786.patch"
|
|
||||||
"gimp-CVE-2017-17787.patch"
|
|
||||||
"gimp-CVE-2017-17789.patch"))
|
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"12k3lp938qdc9cqj29scg55f3bb8iav2fysd29w0s49bqmfa71wi"))))
|
"1qkxaigbfkx26xym5nzrgfrmn97cbnhn63v1saaha2nbi3xrdk3z"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(outputs '("out"
|
(outputs '("out"
|
||||||
"doc")) ;5 MiB of gtk-doc HTML
|
"doc")) ;9 MiB of gtk-doc HTML
|
||||||
(arguments
|
(arguments
|
||||||
'(#:configure-flags (list (string-append "--with-html-dir="
|
'(#:configure-flags (list (string-append "--with-html-dir="
|
||||||
(assoc-ref %outputs "doc")
|
(assoc-ref %outputs "doc")
|
||||||
|
@ -171,21 +151,27 @@ buffers.")
|
||||||
(inputs
|
(inputs
|
||||||
`(("babl" ,babl)
|
`(("babl" ,babl)
|
||||||
("glib" ,glib)
|
("glib" ,glib)
|
||||||
|
("glib-networking" ,glib-networking)
|
||||||
("libtiff" ,libtiff)
|
("libtiff" ,libtiff)
|
||||||
("libjpeg" ,libjpeg-8)
|
("libjpeg" ,libjpeg-8)
|
||||||
("atk" ,atk)
|
("atk" ,atk)
|
||||||
|
("gexiv2" ,gexiv2)
|
||||||
("gtk+" ,gtk+-2)
|
("gtk+" ,gtk+-2)
|
||||||
|
("libmypaint" ,libmypaint)
|
||||||
|
("mypaint-brushes" ,mypaint-brushes)
|
||||||
("exif" ,libexif) ; optional, EXIF + XMP support
|
("exif" ,libexif) ; optional, EXIF + XMP support
|
||||||
("lcms" ,lcms) ; optional, color management
|
("lcms" ,lcms) ; optional, color management
|
||||||
("librsvg" ,librsvg) ; optional, SVG support
|
("librsvg" ,librsvg) ; optional, SVG support
|
||||||
("poppler" ,poppler) ; optional, PDF support
|
("poppler" ,poppler) ; optional, PDF support
|
||||||
|
("poppler-data" ,poppler-data)
|
||||||
("python" ,python-2) ; optional, Python support
|
("python" ,python-2) ; optional, Python support
|
||||||
("python2-pygtk" ,python2-pygtk) ; optional, Python support
|
("python2-pygtk" ,python2-pygtk) ; optional, Python support
|
||||||
("gegl" ,gegl)))
|
("gegl" ,gegl)))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("pkg-config" ,pkg-config)
|
`(("glib:bin" ,glib "bin") ; for glib-compile-resources and gdbus-codegen
|
||||||
|
("pkg-config" ,pkg-config)
|
||||||
("intltool" ,intltool)))
|
("intltool" ,intltool)))
|
||||||
(home-page "http://gimp.org")
|
(home-page "https://www.gimp.org")
|
||||||
(synopsis "GNU Image Manipulation Program")
|
(synopsis "GNU Image Manipulation Program")
|
||||||
(description
|
(description
|
||||||
"GIMP is an application for image manipulation tasks such as photo
|
"GIMP is an application for image manipulation tasks such as photo
|
||||||
|
@ -243,3 +229,58 @@ an image, allowing you to work with the transformed image inside GIMP. You
|
||||||
can draw or apply filters in fourier space and get the modified image with an
|
can draw or apply filters in fourier space and get the modified image with an
|
||||||
inverse fourier transform.")
|
inverse fourier transform.")
|
||||||
(license license:gpl3+)))
|
(license license:gpl3+)))
|
||||||
|
|
||||||
|
(define-public libmypaint
|
||||||
|
(package
|
||||||
|
(name "libmypaint")
|
||||||
|
(version "1.3.0")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "https://github.com/mypaint/libmypaint/"
|
||||||
|
"releases/download/v" version "/libmypaint-"
|
||||||
|
version ".tar.xz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0wd6jk69vmhsq1mdw96v0fh7b28n3glkr5ca466zcq7agzaxj1va"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(native-inputs
|
||||||
|
`(("intltool" ,intltool)
|
||||||
|
("pkg-config" ,pkg-config)))
|
||||||
|
;; As needed by 'libmypaint.pc'.
|
||||||
|
(propagated-inputs
|
||||||
|
`(("json-c" ,json-c)
|
||||||
|
("gobject-introspection" ,gobject-introspection)))
|
||||||
|
(inputs
|
||||||
|
`(("glib" ,glib)))
|
||||||
|
(synopsis "Artistic brushes library")
|
||||||
|
(description "Libmypaint, also called \"brushlib\", is a library for making
|
||||||
|
brushstrokes which is used by MyPaint and GIMP.")
|
||||||
|
(home-page "http://mypaint.org")
|
||||||
|
(license license:isc)))
|
||||||
|
|
||||||
|
(define-public mypaint-brushes
|
||||||
|
(package
|
||||||
|
(name "mypaint-brushes")
|
||||||
|
(version "1.3.0")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "https://github.com/Jehan/mypaint-brushes/"
|
||||||
|
"archive/v" version ".tar.gz"))
|
||||||
|
(file-name (string-append name "-" version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"055j2rgkav2024zl6y5hxb2ra0vbx58607d6sz7ml2351r1bcjvh"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(arguments
|
||||||
|
'(#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'bootstrap
|
||||||
|
(lambda _ (invoke "sh" "./autogen.sh"))))))
|
||||||
|
(native-inputs
|
||||||
|
`(("autoconf" ,autoconf)
|
||||||
|
("automake" ,automake)))
|
||||||
|
(synopsis "Default brushes for MyPaint")
|
||||||
|
(description "This package provides the default set of brushes for
|
||||||
|
MyPaint.")
|
||||||
|
(home-page "https://github.com/Jehan/mypaint-brushes")
|
||||||
|
(license license:cc0)))
|
||||||
|
|
|
@ -55,7 +55,8 @@
|
||||||
#:use-module ((guix licenses) #:prefix license:)
|
#:use-module ((guix licenses) #:prefix license:)
|
||||||
#:use-module (guix packages)
|
#:use-module (guix packages)
|
||||||
#:use-module (guix utils)
|
#:use-module (guix utils)
|
||||||
#:use-module (ice-9 match))
|
#:use-module (ice-9 match)
|
||||||
|
#:use-module ((srfi srfi-1) #:hide (zip)))
|
||||||
|
|
||||||
(define-public glu
|
(define-public glu
|
||||||
(package
|
(package
|
||||||
|
@ -211,7 +212,8 @@ also known as DXTn or DXTC) for Mesa.")
|
||||||
(package
|
(package
|
||||||
(inherit libva)
|
(inherit libva)
|
||||||
(name "libva-without-mesa")
|
(name "libva-without-mesa")
|
||||||
(inputs (alist-delete "mesa" (package-inputs libva)))
|
(inputs `(,@(fold alist-delete (package-inputs libva)
|
||||||
|
'("mesa" "wayland"))))
|
||||||
(arguments
|
(arguments
|
||||||
(strip-keyword-arguments
|
(strip-keyword-arguments
|
||||||
'(#:make-flags)
|
'(#:make-flags)
|
||||||
|
|
|
@ -29,6 +29,7 @@
|
||||||
;;; Copyright © 2017 Mohammed Sadiq <sadiq@sadiqpk.org>
|
;;; Copyright © 2017 Mohammed Sadiq <sadiq@sadiqpk.org>
|
||||||
;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org>
|
;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org>
|
||||||
;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
|
;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
|
||||||
|
;;; Copyright © 2018 Jovany Leandro G.C <bit4bit@riseup.net>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -146,6 +147,7 @@
|
||||||
#:use-module (gnu packages virtualization)
|
#:use-module (gnu packages virtualization)
|
||||||
#:use-module (gnu packages vpn)
|
#:use-module (gnu packages vpn)
|
||||||
#:use-module (gnu packages xorg)
|
#:use-module (gnu packages xorg)
|
||||||
|
#:use-module (ice-9 match)
|
||||||
#:use-module (srfi srfi-1))
|
#:use-module (srfi srfi-1))
|
||||||
|
|
||||||
(define-public brasero
|
(define-public brasero
|
||||||
|
@ -5815,7 +5817,7 @@ files.")
|
||||||
(define-public baobab
|
(define-public baobab
|
||||||
(package
|
(package
|
||||||
(name "baobab")
|
(name "baobab")
|
||||||
(version "3.26.1")
|
(version "3.28.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
|
@ -5824,11 +5826,15 @@ files.")
|
||||||
name "-" version ".tar.xz"))
|
name "-" version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0zkqxyqyxd6j270jf5hbcrb3yh4k31ddh40v4cjhgngm8mcsnnbs"))))
|
"0qsx7vx5c3n4yxlxbr11sppw7qwcv9z3g45b5xb9y7wxw5lv42sk"))))
|
||||||
(build-system glib-or-gtk-build-system)
|
(build-system meson-build-system)
|
||||||
|
(arguments
|
||||||
|
'(#:glib-or-gtk? #t))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("intltool" ,intltool)
|
`(("intltool" ,intltool)
|
||||||
("pkg-config" ,pkg-config)
|
("pkg-config" ,pkg-config)
|
||||||
|
("desktop-file-utils" ,desktop-file-utils) ; for update-desktop-database
|
||||||
|
("gtk+-bin" ,gtk+ "bin") ; for gtk-update-icon-cache
|
||||||
("itstool" ,itstool)
|
("itstool" ,itstool)
|
||||||
("xmllint" ,libxml2)
|
("xmllint" ,libxml2)
|
||||||
("glib" ,glib "bin")
|
("glib" ,glib "bin")
|
||||||
|
@ -7192,3 +7198,86 @@ into audio files that a personal computer or digital audio player can play.
|
||||||
It supports ripping to any audio codec supported by a GStreamer plugin, such as
|
It supports ripping to any audio codec supported by a GStreamer plugin, such as
|
||||||
mp3, Ogg Vorbis and FLAC")
|
mp3, Ogg Vorbis and FLAC")
|
||||||
(license license:gpl2+)))
|
(license license:gpl2+)))
|
||||||
|
|
||||||
|
(define-public workrave
|
||||||
|
(let ((commit "v1_10_20"))
|
||||||
|
(package
|
||||||
|
(name "workrave")
|
||||||
|
(version (string-map (match-lambda
|
||||||
|
(#\_ #\.)
|
||||||
|
(chr chr))
|
||||||
|
(string-drop commit 1)))
|
||||||
|
(source (origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://github.com/rcaelers/workrave.git")
|
||||||
|
(commit commit)))
|
||||||
|
(file-name (string-append name "-" version "-checkout"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"099a87zkrkmsgfz9isrfm89dh545x52891jh6qxmn19h6wwsi941"))))
|
||||||
|
(build-system glib-or-gtk-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'autogen
|
||||||
|
(lambda _
|
||||||
|
(invoke "sh" "autogen.sh")
|
||||||
|
#t)))))
|
||||||
|
(propagated-inputs `(("glib" ,glib)
|
||||||
|
("gtk+" ,gtk+)
|
||||||
|
("gdk-pixbuf" ,gdk-pixbuf)
|
||||||
|
("gtkmm" ,gtkmm)
|
||||||
|
("glibmm" ,glibmm)
|
||||||
|
("libx11" ,libx11)
|
||||||
|
("libxtst" ,libxtst)
|
||||||
|
("dconf" ,dconf)
|
||||||
|
("libice" ,libice)))
|
||||||
|
(inputs `(("libsm", libsm)
|
||||||
|
("python-cheetah" ,python2-cheetah)))
|
||||||
|
(native-inputs `(("glib" ,glib "bin")
|
||||||
|
("pkg-config" ,pkg-config)
|
||||||
|
("gettext" ,gnu-gettext)
|
||||||
|
("autoconf" ,autoconf)
|
||||||
|
("autoconf-archive" , autoconf-archive)
|
||||||
|
("automake" ,automake)
|
||||||
|
("libtool" ,libtool)
|
||||||
|
("intltool" ,intltool)
|
||||||
|
("libxscrnsaver" ,libxscrnsaver)
|
||||||
|
("gobject-introspection" ,gobject-introspection)
|
||||||
|
("python2" ,python-2)))
|
||||||
|
(synopsis "Tool to help prevent repetitive strain injury (RSI)")
|
||||||
|
(description "Workrave is a program that assists in the recovery and
|
||||||
|
prevention of repetitive strain injury (RSI). The program frequently alerts
|
||||||
|
you to take micro-pauses, rest breaks and restricts you to your daily limit")
|
||||||
|
(home-page "http://www.workrave.org")
|
||||||
|
(license license:gpl3+))))
|
||||||
|
|
||||||
|
(define-public ghex
|
||||||
|
(package
|
||||||
|
(name "ghex")
|
||||||
|
(version "3.18.3")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||||
|
(version-major+minor version) "/"
|
||||||
|
name "-" version ".tar.xz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1lq8920ad2chi9ibmyq0x9hg9yk63b0kdbzid03w42cwdzw50x66"))))
|
||||||
|
(build-system glib-or-gtk-build-system)
|
||||||
|
(native-inputs
|
||||||
|
`(("pkg-config" ,pkg-config)
|
||||||
|
("gnome-common" ,gnome-common)
|
||||||
|
("which" ,which)
|
||||||
|
("intltool" ,intltool)
|
||||||
|
("yelp-tools" ,yelp-tools)
|
||||||
|
("desktop-file-utils" ,desktop-file-utils))) ;for 'desktop-file-validate'
|
||||||
|
(inputs
|
||||||
|
`(("atk" ,atk)
|
||||||
|
("gtk" ,gtk+)))
|
||||||
|
(synopsis "GNOME hexadecimal editor")
|
||||||
|
(description "The GHex program can view and edit files in two ways:
|
||||||
|
hexadecimal or ASCII. It is useful for editing binary files in general.")
|
||||||
|
(home-page "https://wiki.gnome.org/Apps/Ghex")
|
||||||
|
(license license:gpl2)))
|
||||||
|
|
|
@ -14,6 +14,7 @@
|
||||||
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
|
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
|
||||||
;;; Copyright © 2017 Petter <petter@mykolab.ch>
|
;;; Copyright © 2017 Petter <petter@mykolab.ch>
|
||||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
|
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -91,6 +92,20 @@ Daemon and possibly more in the future.")
|
||||||
(properties '((ftp-server . "ftp.gnupg.org")
|
(properties '((ftp-server . "ftp.gnupg.org")
|
||||||
(ftp-directory . "/gcrypt/libgpg-error")))))
|
(ftp-directory . "/gcrypt/libgpg-error")))))
|
||||||
|
|
||||||
|
;; Some packages (e.g. GPGME) require a newer libgpg-error to deal with
|
||||||
|
;; error codes from recent GnuPG. Remove this in the next rebuild cycle.
|
||||||
|
(define-public libgpg-error-1.31
|
||||||
|
(package
|
||||||
|
(inherit libgpg-error)
|
||||||
|
(version "1.31")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "mirror://gnupg/libgpg-error/libgpg-error-"
|
||||||
|
version ".tar.bz2"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1vx4nw6rxh2biy3h8n96fyr86q29h8gjl6837437i51jr4isil20"))))))
|
||||||
|
|
||||||
(define-public libgcrypt
|
(define-public libgcrypt
|
||||||
(package
|
(package
|
||||||
(name "libgcrypt")
|
(name "libgcrypt")
|
||||||
|
@ -216,14 +231,14 @@ compatible to GNU Pth.")
|
||||||
(define-public gnupg
|
(define-public gnupg
|
||||||
(package
|
(package
|
||||||
(name "gnupg")
|
(name "gnupg")
|
||||||
(version "2.2.6")
|
(version "2.2.7")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://gnupg/gnupg/gnupg-" version
|
(uri (string-append "mirror://gnupg/gnupg/gnupg-" version
|
||||||
".tar.bz2"))
|
".tar.bz2"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"110rf476l3cgn52gh9ia5y0y06y2ialq9dqc12jkhnfhl9gqqkg6"))))
|
"0vlpis0q7gvq9mhdc43hkyn3cdriz4mwgj20my3gyzpgwqg3cnyr"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("pkg-config" ,pkg-config)))
|
`(("pkg-config" ,pkg-config)))
|
||||||
|
@ -361,7 +376,7 @@ libskba (working with X.509 certificates and CMS data).")
|
||||||
(define-public gpgme
|
(define-public gpgme
|
||||||
(package
|
(package
|
||||||
(name "gpgme")
|
(name "gpgme")
|
||||||
(version "1.10.0")
|
(version "1.11.1")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -369,13 +384,13 @@ libskba (working with X.509 certificates and CMS data).")
|
||||||
".tar.bz2"))
|
".tar.bz2"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"14q619lxbk64vz7lih5gjb928qm28jrnn1h3yhsrrff3jw8yv3qs"))))
|
"0vxx5xaag3rhp4g2arp5qm77gvz4kj0m3hnpvhkdvqyjfhbi26rd"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("gnupg" ,gnupg)))
|
`(("gnupg" ,gnupg)))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
;; Needs to be propagated because gpgme.h includes gpg-error.h.
|
;; Needs to be propagated because gpgme.h includes gpg-error.h.
|
||||||
`(("libgpg-error" ,libgpg-error)))
|
`(("libgpg-error" ,libgpg-error-1.31)))
|
||||||
(inputs
|
(inputs
|
||||||
`(("libassuan" ,libassuan)))
|
`(("libassuan" ,libassuan)))
|
||||||
(home-page "https://www.gnupg.org/related_software/gpgme/")
|
(home-page "https://www.gnupg.org/related_software/gpgme/")
|
||||||
|
|
|
@ -551,7 +551,7 @@ security standards.")
|
||||||
("libxcomposite" ,libxcomposite)
|
("libxcomposite" ,libxcomposite)
|
||||||
("libxt" ,libxt)
|
("libxt" ,libxt)
|
||||||
("libffi" ,libffi)
|
("libffi" ,libffi)
|
||||||
("ffmpeg" ,ffmpeg)
|
("ffmpeg" ,ffmpeg-3.4)
|
||||||
("libvpx" ,libvpx)
|
("libvpx" ,libvpx)
|
||||||
("icu4c" ,icu4c)
|
("icu4c" ,icu4c)
|
||||||
("pixman" ,pixman)
|
("pixman" ,pixman)
|
||||||
|
|
|
@ -101,7 +101,7 @@ is usually the formatter of \"man\" documentation pages.")
|
||||||
;; Keep only the programs that man-db needs at run time,
|
;; Keep only the programs that man-db needs at run time,
|
||||||
;; and make sure we don't pull in Perl.
|
;; and make sure we don't pull in Perl.
|
||||||
(let ((out (assoc-ref outputs "out"))
|
(let ((out (assoc-ref outputs "out"))
|
||||||
(kept '("eqn" "neqn" "pic" "tbl" "refer"
|
(kept '("eqn" "neqn" "pic" "tbl" "refer" "preconv"
|
||||||
"nroff" "groff" "troff" "grotty")))
|
"nroff" "groff" "troff" "grotty")))
|
||||||
(for-each (lambda (file)
|
(for-each (lambda (file)
|
||||||
(unless (member (basename file) kept)
|
(unless (member (basename file) kept)
|
||||||
|
|
|
@ -723,16 +723,16 @@ format is also supported.")
|
||||||
(define-public guile-ics
|
(define-public guile-ics
|
||||||
(package
|
(package
|
||||||
(name "guile-ics")
|
(name "guile-ics")
|
||||||
(version "0.1.1")
|
(version "0.2.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
(url "https://github.com/artyom-poptsov/guile-ics")
|
(url "https://github.com/artyom-poptsov/guile-ics")
|
||||||
(commit "v0.1.1")))
|
(commit (string-append "v" version))))
|
||||||
(file-name (string-append name "-" version "-checkout"))
|
(file-name (string-append name "-" version "-checkout"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1pvg6j48inpbq47hq00yh5hhl2qd2srvrx5yjl7w7ky1jsjadp86"))))
|
"0qjjvadr7gibdq9jvwkmlkb4afsw9n2shfj9phpiadinxk3p4m2g"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:phases (modify-phases %standard-phases
|
'(#:phases (modify-phases %standard-phases
|
||||||
|
@ -749,8 +749,8 @@ format is also supported.")
|
||||||
;; Gettext brings 'AC_LIB_LINKFLAGS_FROM_LIBS'.
|
;; Gettext brings 'AC_LIB_LINKFLAGS_FROM_LIBS'.
|
||||||
("gettext" ,gettext-minimal)
|
("gettext" ,gettext-minimal)
|
||||||
("pkg-config" ,pkg-config)))
|
("pkg-config" ,pkg-config)))
|
||||||
(inputs `(("guile" ,guile-2.0) ("which" ,which)))
|
(inputs `(("guile" ,guile-2.2) ("which" ,which)))
|
||||||
(propagated-inputs `(("guile-lib" ,guile2.0-lib)))
|
(propagated-inputs `(("guile-lib" ,guile-lib)))
|
||||||
(home-page "https://github.com/artyom-poptsov/guile-ics")
|
(home-page "https://github.com/artyom-poptsov/guile-ics")
|
||||||
(synopsis "Guile parser library for the iCalendar format")
|
(synopsis "Guile parser library for the iCalendar format")
|
||||||
(description
|
(description
|
||||||
|
@ -919,7 +919,7 @@ specification. These are the main features:
|
||||||
|
|
||||||
#t))))
|
#t))))
|
||||||
(inputs
|
(inputs
|
||||||
`(("guile" ,guile-2.0)))
|
`(("guile" ,guile-2.2)))
|
||||||
(home-page "https://github.com/ijp/minikanren")
|
(home-page "https://github.com/ijp/minikanren")
|
||||||
(synopsis "MiniKanren declarative logic system, packaged for Guile")
|
(synopsis "MiniKanren declarative logic system, packaged for Guile")
|
||||||
(description
|
(description
|
||||||
|
@ -934,8 +934,11 @@ slightly from miniKanren mainline.
|
||||||
See http://minikanren.org/ for more on miniKanren generally.")
|
See http://minikanren.org/ for more on miniKanren generally.")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
|
(define-public guile2.0-minikanren
|
||||||
|
(package-for-guile-2.0 guile-minikanren))
|
||||||
|
|
||||||
(define-public guile2.2-minikanren
|
(define-public guile2.2-minikanren
|
||||||
(package-for-guile-2.2 guile-minikanren))
|
(deprecated-package "guile2.2-minikanren" guile-minikanren))
|
||||||
|
|
||||||
(define-public guile-miniadapton
|
(define-public guile-miniadapton
|
||||||
(let ((commit "1b5749422304567c96ac5367f2221dda9eff5880")
|
(let ((commit "1b5749422304567c96ac5367f2221dda9eff5880")
|
||||||
|
@ -1076,7 +1079,7 @@ understand, extend, and port to host languages other than Scheme.")
|
||||||
(install-file "irregex.html" doc)
|
(install-file "irregex.html" doc)
|
||||||
#t))))))
|
#t))))))
|
||||||
(inputs
|
(inputs
|
||||||
`(("guile" ,guile-2.0)))
|
`(("guile" ,guile-2.2)))
|
||||||
(home-page "http://synthcode.com/scheme/irregex")
|
(home-page "http://synthcode.com/scheme/irregex")
|
||||||
(synopsis "S-expression based regular expressions")
|
(synopsis "S-expression based regular expressions")
|
||||||
(description
|
(description
|
||||||
|
@ -1085,8 +1088,11 @@ string-based regular expressions. It implements SRFI 115 and is deeply
|
||||||
inspired by the SCSH regular expression system.")
|
inspired by the SCSH regular expression system.")
|
||||||
(license license:bsd-3)))
|
(license license:bsd-3)))
|
||||||
|
|
||||||
|
(define-public guile2.0-irregex
|
||||||
|
(package-for-guile-2.0 guile-irregex))
|
||||||
|
|
||||||
(define-public guile2.2-irregex
|
(define-public guile2.2-irregex
|
||||||
(package-for-guile-2.2 guile-irregex))
|
(deprecated-package "guile2.2-irregex" guile-irregex))
|
||||||
|
|
||||||
;; There are two guile-gdbm packages, one using the FFI and one with
|
;; There are two guile-gdbm packages, one using the FFI and one with
|
||||||
;; direct C bindings, hence the verbose name.
|
;; direct C bindings, hence the verbose name.
|
||||||
|
@ -1368,15 +1374,18 @@ above command-line parameters.")
|
||||||
#t))))
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("guile" ,guile-2.0)))
|
`(("guile" ,guile-2.2)))
|
||||||
(home-page "https://savannah.nongnu.org/projects/guile-redis/")
|
(home-page "https://savannah.nongnu.org/projects/guile-redis/")
|
||||||
(synopsis "Redis client library for Guile")
|
(synopsis "Redis client library for Guile")
|
||||||
(description "Guile-redis provides a Scheme interface to the Redis
|
(description "Guile-redis provides a Scheme interface to the Redis
|
||||||
key-value cache and store.")
|
key-value cache and store.")
|
||||||
(license license:lgpl3+)))
|
(license license:lgpl3+)))
|
||||||
|
|
||||||
|
(define-public guile2.0-redis
|
||||||
|
(package-for-guile-2.0 guile-redis))
|
||||||
|
|
||||||
(define-public guile2.2-redis
|
(define-public guile2.2-redis
|
||||||
(package-for-guile-2.2 guile-redis))
|
(deprecated-package "guile2.2-redis" guile-redis))
|
||||||
|
|
||||||
(define-public guile-wisp
|
(define-public guile-wisp
|
||||||
(package
|
(package
|
||||||
|
@ -1559,19 +1568,19 @@ provides access to that interface and its types from the Scheme level.")
|
||||||
(arguments
|
(arguments
|
||||||
'(#:configure-flags
|
'(#:configure-flags
|
||||||
(list (string-append
|
(list (string-append
|
||||||
"--with-guile-site-dir=" %output "/share/guile/site/2.0"))
|
"--with-guile-site-dir=" %output "/share/guile/site/2.2"))
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'install 'patch-extension-path
|
(add-after 'install 'patch-extension-path
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
(dbi.scm (string-append
|
(dbi.scm (string-append
|
||||||
out "/share/guile/site/2.0/dbi/dbi.scm"))
|
out "/share/guile/site/2.2/dbi/dbi.scm"))
|
||||||
(ext (string-append out "/lib/libguile-dbi")))
|
(ext (string-append out "/lib/libguile-dbi")))
|
||||||
(substitute* dbi.scm (("libguile-dbi") ext))
|
(substitute* dbi.scm (("libguile-dbi") ext))
|
||||||
#t))))))
|
#t))))))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("guile" ,guile-2.0)))
|
`(("guile" ,guile-2.2)))
|
||||||
(synopsis "Guile database abstraction layer")
|
(synopsis "Guile database abstraction layer")
|
||||||
(home-page "http://home.gna.org/guile-dbi/guile-dbi.html")
|
(home-page "http://home.gna.org/guile-dbi/guile-dbi.html")
|
||||||
(description
|
(description
|
||||||
|
|
|
@ -392,8 +392,8 @@ It has been modified to remove all non-free binary blobs.")
|
||||||
;; supports qemu "virt" machine and possibly a large number of ARM boards.
|
;; supports qemu "virt" machine and possibly a large number of ARM boards.
|
||||||
;; See : https://wiki.debian.org/DebianKernel/ARMMP.
|
;; See : https://wiki.debian.org/DebianKernel/ARMMP.
|
||||||
|
|
||||||
(define %linux-libre-version "4.16.6")
|
(define %linux-libre-version "4.16.7")
|
||||||
(define %linux-libre-hash "069bxqx27xib1gz4aayy8ar2hfp68cpdi8h51g6453k0w14pkchn")
|
(define %linux-libre-hash "145hv7paw5zd6bnkk0agxyg2a37066xhrxszbq3d03mjvi8ap117")
|
||||||
|
|
||||||
(define-public linux-libre
|
(define-public linux-libre
|
||||||
(make-linux-libre %linux-libre-version
|
(make-linux-libre %linux-libre-version
|
||||||
|
@ -401,8 +401,8 @@ It has been modified to remove all non-free binary blobs.")
|
||||||
%linux-compatible-systems
|
%linux-compatible-systems
|
||||||
#:configuration-file kernel-config))
|
#:configuration-file kernel-config))
|
||||||
|
|
||||||
(define %linux-libre-4.14-version "4.14.38")
|
(define %linux-libre-4.14-version "4.14.39")
|
||||||
(define %linux-libre-4.14-hash "09lmz8zbd3c1qf8z3d2lkhcqcwawajh76s85zdhgqdmd2idpwach")
|
(define %linux-libre-4.14-hash "0r6fydsgspnskh5n1hfrkyrlrmql635zqr44ajafmqimldc0bplz")
|
||||||
|
|
||||||
(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
|
||||||
|
@ -411,14 +411,14 @@ It has been modified to remove all non-free binary blobs.")
|
||||||
#:configuration-file kernel-config))
|
#:configuration-file kernel-config))
|
||||||
|
|
||||||
(define-public linux-libre-4.9
|
(define-public linux-libre-4.9
|
||||||
(make-linux-libre "4.9.97"
|
(make-linux-libre "4.9.98"
|
||||||
"1xc3mj1qi51n1kr5bxmdf1rlpyj78x9imhfc7gihn8qjc6zsf1sp"
|
"14mqg2hvxg4zwajwly18akyaca821sp4iz5w3xmikwndn2j8y1lw"
|
||||||
%intel-compatible-systems
|
%intel-compatible-systems
|
||||||
#:configuration-file kernel-config))
|
#:configuration-file kernel-config))
|
||||||
|
|
||||||
(define-public linux-libre-4.4
|
(define-public linux-libre-4.4
|
||||||
(make-linux-libre "4.4.130"
|
(make-linux-libre "4.4.131"
|
||||||
"15cayafj7d9y5fs9flg115kzrcrjycbvax9hgfzz6yym94v9k8lk"
|
"1phah297rxjwy22wfaqlzpbk71ddp3drma5dx3i8xv6g8vijd08x"
|
||||||
%intel-compatible-systems
|
%intel-compatible-systems
|
||||||
#:configuration-file kernel-config))
|
#:configuration-file kernel-config))
|
||||||
|
|
||||||
|
@ -1937,17 +1937,27 @@ for systems using the Linux kernel. This includes commands such as
|
||||||
(define-public inotify-tools
|
(define-public inotify-tools
|
||||||
(package
|
(package
|
||||||
(name "inotify-tools")
|
(name "inotify-tools")
|
||||||
(version "3.13")
|
(version "3.20.1")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
"mirror://sourceforge/inotify-tools/inotify-tools/"
|
"https://github.com/rvoicilas/inotify-tools/archive/"
|
||||||
version "/inotify-tools-" version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
|
(file-name (string-append name "-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0icl4bx041axd5dvhg89kilfkysjj86hjakc7bk8n49cxjn4cha6"))))
|
"1b22c8x4pjnz3abx4dikpbj43zprjw79pdkd4xw111dsxlfwqcx4"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(home-page "http://inotify-tools.sourceforge.net/")
|
(arguments
|
||||||
|
`(#:phases (modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'bootstrap
|
||||||
|
(lambda _
|
||||||
|
(invoke "autoreconf" "-vif"))))))
|
||||||
|
(native-inputs
|
||||||
|
`(("autoconf" ,autoconf)
|
||||||
|
("automake" ,automake)
|
||||||
|
("libtool" ,libtool)))
|
||||||
|
(home-page "https://github.com/rvoicilas/inotify-tools/wiki")
|
||||||
(synopsis "Monitor file accesses")
|
(synopsis "Monitor file accesses")
|
||||||
(description
|
(description
|
||||||
"The inotify-tools packages provides a C library and command-line tools
|
"The inotify-tools packages provides a C library and command-line tools
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org>
|
;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org>
|
||||||
;;; Copyright © 2016, 2017, 2018 Arun Isaac <arunisaac@systemreboot.net>
|
;;; Copyright © 2016, 2017, 2018 Arun Isaac <arunisaac@systemreboot.net>
|
||||||
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
|
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
|
||||||
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
|
;;; Copyright © 2016, 2018 Marius Bakke <mbakke@fastmail.com>
|
||||||
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
|
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
|
||||||
;;; Copyright © 2017 Kyle Meyer <kyle@kyleam.com>
|
;;; Copyright © 2017 Kyle Meyer <kyle@kyleam.com>
|
||||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
|
@ -397,7 +397,7 @@ It adds a large amount of new and improved features to mutt.")
|
||||||
(define-public gmime
|
(define-public gmime
|
||||||
(package
|
(package
|
||||||
(name "gmime")
|
(name "gmime")
|
||||||
(version "2.6.23")
|
(version "3.2.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://gnome/sources/gmime/"
|
(uri (string-append "mirror://gnome/sources/gmime/"
|
||||||
|
@ -405,7 +405,7 @@ It adds a large amount of new and improved features to mutt.")
|
||||||
"/gmime-" version ".tar.xz"))
|
"/gmime-" version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0slzlzcr3h8jikpz5a5amqd0csqh2m40gdk910ws2hnaf5m6hjbi"))))
|
"1q6palbpf6lh6bvy9ly26q5apl5k0z0r4mvl6zzqh90rz4rn1v3m"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("pkg-config" ,pkg-config)
|
`(("pkg-config" ,pkg-config)
|
||||||
|
@ -429,8 +429,8 @@ It adds a large amount of new and improved features to mutt.")
|
||||||
(let* ((base (basename prog-path))
|
(let* ((base (basename prog-path))
|
||||||
(prog (which base)))
|
(prog (which base)))
|
||||||
(string-append pre
|
(string-append pre
|
||||||
(or prog (error "not found: " base))))))
|
(or prog (error "not found: " base)))))))
|
||||||
#t))))))
|
#t)))))
|
||||||
(home-page "http://spruce.sourceforge.net/gmime/")
|
(home-page "http://spruce.sourceforge.net/gmime/")
|
||||||
(synopsis "MIME message parser and creator library")
|
(synopsis "MIME message parser and creator library")
|
||||||
(description
|
(description
|
||||||
|
@ -439,6 +439,20 @@ the creation and parsing of messages using the Multipurpose Internet Mail
|
||||||
Extension (MIME).")
|
Extension (MIME).")
|
||||||
(license (list lgpl2.1+ gpl2+ gpl3+))))
|
(license (list lgpl2.1+ gpl2+ gpl3+))))
|
||||||
|
|
||||||
|
;; Some packages are not ready for GMime 3 yet.
|
||||||
|
(define-public gmime-2.6
|
||||||
|
(package
|
||||||
|
(inherit gmime)
|
||||||
|
(version "2.6.23")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "mirror://gnome/sources/gmime/"
|
||||||
|
(version-major+minor version)
|
||||||
|
"/gmime-" version ".tar.xz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0slzlzcr3h8jikpz5a5amqd0csqh2m40gdk910ws2hnaf5m6hjbi"))))))
|
||||||
|
|
||||||
(define-public bogofilter
|
(define-public bogofilter
|
||||||
(package
|
(package
|
||||||
(name "bogofilter")
|
(name "bogofilter")
|
||||||
|
@ -598,7 +612,7 @@ security functionality including PGP, S/MIME, SSH, and SSL.")
|
||||||
`(("xapian" ,xapian)
|
`(("xapian" ,xapian)
|
||||||
("guile" ,guile-2.2)
|
("guile" ,guile-2.2)
|
||||||
("glib" ,glib)
|
("glib" ,glib)
|
||||||
("gmime" ,gmime)))
|
("gmime" ,gmime-2.6)))
|
||||||
(arguments
|
(arguments
|
||||||
`(#:modules ((guix build gnu-build-system)
|
`(#:modules ((guix build gnu-build-system)
|
||||||
(guix build utils)
|
(guix build utils)
|
||||||
|
@ -2429,7 +2443,7 @@ tools and applications:
|
||||||
`(("cyrus-sasl" ,cyrus-sasl)
|
`(("cyrus-sasl" ,cyrus-sasl)
|
||||||
("enchant" ,enchant)
|
("enchant" ,enchant)
|
||||||
("gdk-pixbuf" ,gdk-pixbuf)
|
("gdk-pixbuf" ,gdk-pixbuf)
|
||||||
("gmime" ,gmime)
|
("gmime" ,gmime-2.6)
|
||||||
("gnutls" ,gnutls)
|
("gnutls" ,gnutls)
|
||||||
("gpgme" ,gpgme)
|
("gpgme" ,gpgme)
|
||||||
("gtk+" ,gtk+)
|
("gtk+" ,gtk+)
|
||||||
|
@ -2506,7 +2520,7 @@ killed threads.")
|
||||||
"/bin/gpg\"")))
|
"/bin/gpg\"")))
|
||||||
#t)))))
|
#t)))))
|
||||||
(inputs
|
(inputs
|
||||||
`(("gmime" ,gmime)
|
`(("gmime" ,gmime-2.6)
|
||||||
("gnupg" ,gnupg)
|
("gnupg" ,gnupg)
|
||||||
("gnutls" ,gnutls)
|
("gnutls" ,gnutls)
|
||||||
("gtk+" ,gtk+)
|
("gtk+" ,gtk+)
|
||||||
|
|
|
@ -5,6 +5,7 @@
|
||||||
;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
|
;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
|
||||||
;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
|
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -81,11 +82,19 @@ a flexible and convenient way.")
|
||||||
(remove file-is-directory?
|
(remove file-is-directory?
|
||||||
(find-files "src/tests" ".*")))
|
(find-files "src/tests" ".*")))
|
||||||
#t)))
|
#t)))
|
||||||
(add-after 'unpack 'patch-iconv-path
|
(add-after 'unpack 'patch-absolute-paths
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
(substitute* "src/man.c"
|
(substitute* "src/man.c"
|
||||||
(("\"iconv\"")
|
(("\"iconv\"")
|
||||||
(string-append "\"" (which "iconv") "\"")))
|
(string-append "\"" (which "iconv") "\"")))
|
||||||
|
;; Embed an absolute reference to "preconv", otherwise it
|
||||||
|
;; falls back to searching in PATH and ultimately fails
|
||||||
|
;; to render unicode data (see <https://bugs.gnu.org/30785>).
|
||||||
|
(substitute* "lib/encodings.c"
|
||||||
|
(("groff_preconv = NULL")
|
||||||
|
(string-append "groff_preconv = \""
|
||||||
|
(assoc-ref inputs "groff-minimal")
|
||||||
|
"/bin/preconv\"")))
|
||||||
#t)))
|
#t)))
|
||||||
#:configure-flags
|
#:configure-flags
|
||||||
(let ((groff (assoc-ref %build-inputs "groff"))
|
(let ((groff (assoc-ref %build-inputs "groff"))
|
||||||
|
@ -151,7 +160,7 @@ the traditional flat-text whatis databases.")
|
||||||
(define-public man-pages
|
(define-public man-pages
|
||||||
(package
|
(package
|
||||||
(name "man-pages")
|
(name "man-pages")
|
||||||
(version "4.15")
|
(version "4.16")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri
|
(uri
|
||||||
|
@ -164,7 +173,7 @@ the traditional flat-text whatis databases.")
|
||||||
"man-pages-" version ".tar.xz")))
|
"man-pages-" version ".tar.xz")))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"01n1rq1kvambax85xamriawbga94mh63s5mgjmjljjgf50m7yw6f"))))
|
"1d2d6llazg3inwjiz22cn46mbm5ydpbyh9qb55z4j3nm4w6wrzs7"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:phases (modify-phases %standard-phases (delete 'configure))
|
'(#:phases (modify-phases %standard-phases (delete 'configure))
|
||||||
|
|
|
@ -25,6 +25,8 @@
|
||||||
;;; Copyright © 2018 Jan Nieuwenhuizen <janneke@gnu.org>
|
;;; Copyright © 2018 Jan Nieuwenhuizen <janneke@gnu.org>
|
||||||
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
|
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
|
||||||
;;; Copyright © 2018 Nadya Voronova <voronovank@gmail.com>
|
;;; Copyright © 2018 Nadya Voronova <voronovank@gmail.com>
|
||||||
|
;;; Copyright © 2018 Adam Massmann <massmannak@gmail.com>
|
||||||
|
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -53,6 +55,7 @@
|
||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix build-system ocaml)
|
#:use-module (guix build-system ocaml)
|
||||||
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix build-system r)
|
#:use-module (guix build-system r)
|
||||||
#:use-module (guix build-system ruby)
|
#:use-module (guix build-system ruby)
|
||||||
#:use-module (gnu packages algebra)
|
#:use-module (gnu packages algebra)
|
||||||
|
@ -564,7 +567,7 @@ singular value problems.")
|
||||||
(define-public gnuplot
|
(define-public gnuplot
|
||||||
(package
|
(package
|
||||||
(name "gnuplot")
|
(name "gnuplot")
|
||||||
(version "5.0.6")
|
(version "5.2.2")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://sourceforge/gnuplot/gnuplot/"
|
(uri (string-append "mirror://sourceforge/gnuplot/gnuplot/"
|
||||||
|
@ -572,7 +575,7 @@ singular value problems.")
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0q5lr6nala3ln6f3yp6g17ziymb9r9gx9zylnw1y3hjmwl9lggjv"))))
|
"18diyy7aib9mn098x07g25c7jij1x7wbfpicz0z8gwxx08px45m4"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(inputs `(("readline" ,readline)
|
(inputs `(("readline" ,readline)
|
||||||
("cairo" ,cairo)
|
("cairo" ,cairo)
|
||||||
|
@ -582,6 +585,9 @@ singular value problems.")
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("pkg-config" ,pkg-config)
|
`(("pkg-config" ,pkg-config)
|
||||||
("texlive" ,texlive-tiny)))
|
("texlive" ,texlive-tiny)))
|
||||||
|
(arguments `(#:configure-flags (list (string-append
|
||||||
|
"--with-texdir=" %output
|
||||||
|
"/texmf-local/tex/latex/gnuplot"))))
|
||||||
(home-page "http://www.gnuplot.info")
|
(home-page "http://www.gnuplot.info")
|
||||||
(synopsis "Command-line driven graphing utility")
|
(synopsis "Command-line driven graphing utility")
|
||||||
(description "Gnuplot is a portable command-line driven graphing
|
(description "Gnuplot is a portable command-line driven graphing
|
||||||
|
@ -1677,6 +1683,31 @@ scientific applications modeled by partial differential equations.")
|
||||||
,@(delete "--with-mpi=0" ,cf)))))
|
,@(delete "--with-mpi=0" ,cf)))))
|
||||||
(synopsis "Library to solve PDEs (with complex scalars and MPI support)")))
|
(synopsis "Library to solve PDEs (with complex scalars and MPI support)")))
|
||||||
|
|
||||||
|
|
||||||
|
(define-public python-kiwisolver
|
||||||
|
(package
|
||||||
|
(name "python-kiwisolver")
|
||||||
|
(version "1.0.1")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (pypi-uri "kiwisolver" version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0y22ci86znwwwfhbmvbgdfnbi6lv5gv2xkdlxvjw7lml43ayafyf"))))
|
||||||
|
(build-system python-build-system)
|
||||||
|
(home-page "https://github.com/nucleic/kiwi")
|
||||||
|
(synopsis "Fast implementation of the Cassowary constraint solver")
|
||||||
|
(description
|
||||||
|
"Kiwi is an efficient C++ implementation of the Cassowary constraint
|
||||||
|
solving algorithm. Kiwi has been designed from the ground up to be
|
||||||
|
lightweight and fast. Kiwi ranges from 10x to 500x faster than the original
|
||||||
|
Cassowary solver with typical use cases gaining a 40x improvement. Memory
|
||||||
|
savings are consistently > 5x.")
|
||||||
|
(license license:bsd-3)))
|
||||||
|
|
||||||
|
(define-public python2-kiwisolver
|
||||||
|
(package-with-python2 python-kiwisolver))
|
||||||
|
|
||||||
(define-public slepc
|
(define-public slepc
|
||||||
(package
|
(package
|
||||||
(name "slepc")
|
(name "slepc")
|
||||||
|
|
|
@ -440,32 +440,48 @@ compromised.")
|
||||||
(define-public znc
|
(define-public znc
|
||||||
(package
|
(package
|
||||||
(name "znc")
|
(name "znc")
|
||||||
(version "1.6.6")
|
(version "1.7.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "http://znc.in/releases/archive/znc-"
|
(uri (string-append "http://znc.in/releases/archive/znc-"
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"09cmsnxvi7jg9a0dicf60fxnxdff4aprw7h8vjqlj5ywf6y43f3z"))))
|
"0vxra50418bsjfdpf8vl70fijv8syvasjqdxfyjliff6k91k2zn0"))))
|
||||||
|
;; TODO: autotools support has been deprecated, and new features like i18n
|
||||||
|
;; are only supported when building with cmake.
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases
|
`(#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'unpack-googletest
|
(add-after 'unpack 'unpack-googletest
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
(zero? (system* "tar" "xf"
|
(mkdir-p "googletest")
|
||||||
(assoc-ref inputs "googletest-source"))))))
|
(copy-recursively (assoc-ref inputs "googletest-source")
|
||||||
|
"googletest")
|
||||||
|
#t)))
|
||||||
#:configure-flags '("--enable-python"
|
#:configure-flags '("--enable-python"
|
||||||
"--enable-perl"
|
"--enable-perl"
|
||||||
"--enable-cyrus"
|
"--enable-cyrus"
|
||||||
,(string-append "--with-gtest="
|
"--with-gmock=googletest/googlemock"
|
||||||
"googletest-release-"
|
"--with-gtest=googletest/googletest")
|
||||||
(package-version googletest)
|
|
||||||
"/googletest"))
|
|
||||||
#:test-target "test"))
|
#:test-target "test"))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("googletest-source" ,(package-source googletest))
|
`(("googletest-source"
|
||||||
|
;; ZNC 1.7 needs a newer, unreleased googletest (a release is planned
|
||||||
|
;; <https://github.com/google/googletest/issues/1583>, so don't update
|
||||||
|
;; the public GOOGLETEST to an unstable version). The commit is taken
|
||||||
|
;; from ‘third_party/googletest’ in the ZNC git repository.
|
||||||
|
,(let ((commit "9737e63c69e94ac5777caa0bc77c77d5206467f3"))
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url "https://github.com/google/googletest")
|
||||||
|
(commit commit)))
|
||||||
|
(file-name (git-file-name "googletest-for-znc" commit))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0ya36n8d62zbxk6p22yffgx43mqhx2fz41gqqwbpdshjryf3wvxj")))))
|
||||||
("pkg-config" ,pkg-config)
|
("pkg-config" ,pkg-config)
|
||||||
("perl" ,perl)
|
("perl" ,perl)
|
||||||
("python" ,python)))
|
("python" ,python)))
|
||||||
|
@ -476,9 +492,9 @@ compromised.")
|
||||||
("cyrus-sasl" ,cyrus-sasl)))
|
("cyrus-sasl" ,cyrus-sasl)))
|
||||||
(home-page "https://znc.in")
|
(home-page "https://znc.in")
|
||||||
(synopsis "IRC network bouncer")
|
(synopsis "IRC network bouncer")
|
||||||
(description "ZNC is an IRC network bouncer or BNC. It can detach the
|
(description "ZNC is an @dfn{IRC network bouncer} or @dfn{BNC}. It can
|
||||||
client from the actual IRC server, and also from selected channels. Multiple
|
detach the client from the actual IRC server, and also from selected channels.
|
||||||
clients from different locations can connect to a single ZNC account
|
Multiple clients from different locations can connect to a single ZNC account
|
||||||
simultaneously and therefore appear under the same nickname on IRC.")
|
simultaneously and therefore appear under the same nickname on IRC.")
|
||||||
(license license:asl2.0)))
|
(license license:asl2.0)))
|
||||||
|
|
||||||
|
|
|
@ -30,7 +30,7 @@
|
||||||
(define-public nano
|
(define-public nano
|
||||||
(package
|
(package
|
||||||
(name "nano")
|
(name "nano")
|
||||||
(version "2.9.5")
|
(version "2.9.6")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -38,7 +38,7 @@
|
||||||
version ".tar.xz"))
|
version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"06af9dzhgab53drpyq430fv5kf5sdba9mfw0lf3glhkznlf1i3bv"))))
|
"1inl8ljkc711969ncwy7irf0464psasikg1g42l0g4sfpdz50wx3"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(inputs
|
(inputs
|
||||||
`(("gettext" ,gettext-minimal)
|
`(("gettext" ,gettext-minimal)
|
||||||
|
|
|
@ -19,6 +19,7 @@
|
||||||
;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
|
;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
|
||||||
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
|
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
|
||||||
;;; Copyright © 2018 Adam Van Ymeren <adam@vany.ca>
|
;;; Copyright © 2018 Adam Van Ymeren <adam@vany.ca>
|
||||||
|
;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -56,6 +57,7 @@
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
#:use-module (gnu packages code)
|
#:use-module (gnu packages code)
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
|
#:use-module (gnu packages crypto)
|
||||||
#:use-module (gnu packages curl)
|
#:use-module (gnu packages curl)
|
||||||
#:use-module (gnu packages databases)
|
#:use-module (gnu packages databases)
|
||||||
#:use-module (gnu packages dejagnu)
|
#:use-module (gnu packages dejagnu)
|
||||||
|
@ -66,6 +68,7 @@
|
||||||
#:use-module (gnu packages gnome)
|
#:use-module (gnu packages gnome)
|
||||||
#:use-module (gnu packages gnupg)
|
#:use-module (gnu packages gnupg)
|
||||||
#:use-module (gnu packages gtk)
|
#:use-module (gnu packages gtk)
|
||||||
|
#:use-module (gnu packages image)
|
||||||
#:use-module (gnu packages libidn)
|
#:use-module (gnu packages libidn)
|
||||||
#:use-module (gnu packages linux)
|
#:use-module (gnu packages linux)
|
||||||
#:use-module (gnu packages lua)
|
#:use-module (gnu packages lua)
|
||||||
|
@ -84,6 +87,7 @@
|
||||||
#:use-module (gnu packages tls)
|
#:use-module (gnu packages tls)
|
||||||
#:use-module (gnu packages valgrind)
|
#:use-module (gnu packages valgrind)
|
||||||
#:use-module (gnu packages wm)
|
#:use-module (gnu packages wm)
|
||||||
|
#:use-module (gnu packages wxwidgets)
|
||||||
#:use-module (gnu packages xml)
|
#:use-module (gnu packages xml)
|
||||||
#:use-module (ice-9 match))
|
#:use-module (ice-9 match))
|
||||||
|
|
||||||
|
@ -1702,3 +1706,62 @@ file for more details.")
|
||||||
;; src/libstrongswan/plugins/blowfish/blowfish_crypter.c
|
;; src/libstrongswan/plugins/blowfish/blowfish_crypter.c
|
||||||
;; src/libstrongswan/plugins/des/des_crypter.c
|
;; src/libstrongswan/plugins/des/des_crypter.c
|
||||||
license:bsd-4))))
|
license:bsd-4))))
|
||||||
|
|
||||||
|
(define-public amule
|
||||||
|
(package
|
||||||
|
(name "amule")
|
||||||
|
(version "2.3.2")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append
|
||||||
|
"https://github.com/amule-project/amule/archive/"
|
||||||
|
version ".tar.gz"))
|
||||||
|
(file-name (string-append name "-" version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1wvcj0n9xz03xz5c2xwp6dwfp7sqjhhwbki3m0lwikskpn9lkzk2"))
|
||||||
|
;; Patch for adopting crypto++ >= 6.0.
|
||||||
|
(patches (search-patches "amule-crypto-6.patch"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'patch-source-shebangs 'autogen
|
||||||
|
(lambda _
|
||||||
|
(invoke "sh" "autogen.sh")
|
||||||
|
#t)))
|
||||||
|
#:configure-flags
|
||||||
|
'("--disable-rpath"
|
||||||
|
"--enable-wxcas"
|
||||||
|
"--enable-cas"
|
||||||
|
"--enable-alc"
|
||||||
|
"--enable-alcc"
|
||||||
|
"--enable-xas"
|
||||||
|
"--enable-amulecmd"
|
||||||
|
"--enable-geoip"
|
||||||
|
"--enable-ccache"
|
||||||
|
"--enable-nls"
|
||||||
|
"--enable-optimize"
|
||||||
|
"--enable-amule-gui"
|
||||||
|
"--enable-amule-daemon"
|
||||||
|
"--enable-webserver"
|
||||||
|
"--with-denoise-level=0")))
|
||||||
|
(native-inputs
|
||||||
|
`(("autoconf" ,autoconf)
|
||||||
|
("automake" ,automake)
|
||||||
|
("gettext-minimal" ,gettext-minimal)
|
||||||
|
("perl" ,perl)))
|
||||||
|
(inputs
|
||||||
|
`(("zlib" ,zlib)
|
||||||
|
("crypto++" ,crypto++)
|
||||||
|
("libpng" ,libpng)
|
||||||
|
("wxwidgets-gtk2", wxwidgets-gtk2)))
|
||||||
|
(home-page "http://amule.org/")
|
||||||
|
(synopsis "Peer-to-peer client for the eD2K and Kademlia networks")
|
||||||
|
(description
|
||||||
|
"aMule is an eMule-like client for the eD2k and Kademlia peer-to-peer
|
||||||
|
file sharing networks. It includes a graphical user interface (GUI), a daemon
|
||||||
|
allowing you to run a client with no graphical interface, and a Web GUI for
|
||||||
|
remote access. The @command{amulecmd} command allows you to control aMule
|
||||||
|
remotely.")
|
||||||
|
(license license:gpl2+)))
|
||||||
|
|
|
@ -456,14 +456,15 @@ written in Objective Caml.")
|
||||||
(define-public coq
|
(define-public coq
|
||||||
(package
|
(package
|
||||||
(name "coq")
|
(name "coq")
|
||||||
(version "8.7.0")
|
(version "8.8.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://coq.inria.fr/distrib/V" version
|
(uri (string-append "https://github.com/coq/coq/archive/V"
|
||||||
"/files/" name "-" version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
|
(file-name (string-append name "-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"15wjngjd5pyfqdl5yw92rvdxvy15xcjlpx0rqlkzvcsis1z20xpk"))))
|
"0g96k2x6lbddlmkmdaczvcpb2gwqi1ydbq9bv4gf9q38kv9w3xya"))))
|
||||||
(native-search-paths
|
(native-search-paths
|
||||||
(list (search-path-specification
|
(list (search-path-specification
|
||||||
(variable "COQPATH")
|
(variable "COQPATH")
|
||||||
|
@ -3874,15 +3875,15 @@ cross-platform SDL C library.")
|
||||||
(define-public coq-flocq
|
(define-public coq-flocq
|
||||||
(package
|
(package
|
||||||
(name "coq-flocq")
|
(name "coq-flocq")
|
||||||
(version "2.6.0")
|
(version "2.6.1")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
;; Use the ‘Latest version’ link for a stable URI across releases.
|
;; Use the ‘Latest version’ link for a stable URI across releases.
|
||||||
(uri (string-append "https://gforge.inria.fr/frs/download.php/"
|
(uri (string-append "https://gforge.inria.fr/frs/download.php/"
|
||||||
"latestfile/2228/flocq-" version ".tar.gz"))
|
"file/37454/flocq-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"13fv150dcwnjrk00d7zj2c5x9jwmxgrq0ay440gkr730l8mvk3l3"))))
|
"06msp1fwpqv6p98a3i1nnkj7ch9rcq3rm916yxq8dxf51lkghrin"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("ocaml" ,ocaml)
|
`(("ocaml" ,ocaml)
|
||||||
|
@ -3924,14 +3925,14 @@ inside Coq.")
|
||||||
(define-public coq-gappa
|
(define-public coq-gappa
|
||||||
(package
|
(package
|
||||||
(name "coq-gappa")
|
(name "coq-gappa")
|
||||||
(version "1.3.1")
|
(version "1.3.2")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://gforge.inria.fr/frs/download.php/file/36351/gappa-"
|
(uri (string-append "https://gforge.inria.fr/frs/download.php/file/36397/gappa-"
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0924jr6f15fx22qfsvim5vc0qxqg30ivg9zxj34lf6slbgdl3j39"))))
|
"19kg2zldaqs4smy7bv9hp650sqg46xbx1ss7jnyagpxdscwn9apd"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("ocaml" ,ocaml)
|
`(("ocaml" ,ocaml)
|
||||||
|
@ -3976,14 +3977,14 @@ assistant.")
|
||||||
(define-public coq-mathcomp
|
(define-public coq-mathcomp
|
||||||
(package
|
(package
|
||||||
(name "coq-mathcomp")
|
(name "coq-mathcomp")
|
||||||
(version "1.6.2")
|
(version "1.7.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://github.com/math-comp/math-comp/archive/mathcomp-"
|
(uri (string-append "https://github.com/math-comp/math-comp/archive/mathcomp-"
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0lg5ncr7p4y8qqq6pfw6brqc6a9xzlfa0drprwfdn0rnyaq5nca6"))))
|
"05zgyi4wmasi1rcyn5jq42w0bi9713q9m8dl1fdgl66nmacixh39"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("ocaml" ,ocaml)
|
`(("ocaml" ,ocaml)
|
||||||
|
@ -4039,6 +4040,12 @@ part of the distribution.")
|
||||||
"/lib/coq/user-contrib/Coquelicot"))
|
"/lib/coq/user-contrib/Coquelicot"))
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
|
(add-before 'configure 'fix-coq8.8
|
||||||
|
(lambda _
|
||||||
|
; appcontext has been removed from coq 8.8
|
||||||
|
(substitute* "theories/AutoDerive.v"
|
||||||
|
(("appcontext") "context"))
|
||||||
|
#t))
|
||||||
(add-before 'configure 'fix-remake
|
(add-before 'configure 'fix-remake
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "remake.cpp"
|
(substitute* "remake.cpp"
|
||||||
|
@ -4068,7 +4075,7 @@ theorems between the two libraries.")
|
||||||
(define-public coq-bignums
|
(define-public coq-bignums
|
||||||
(package
|
(package
|
||||||
(name "coq-bignums")
|
(name "coq-bignums")
|
||||||
(version "8.7.0")
|
(version "8.8.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://github.com/coq/bignums/archive/V"
|
(uri (string-append "https://github.com/coq/bignums/archive/V"
|
||||||
|
@ -4076,7 +4083,7 @@ theorems between the two libraries.")
|
||||||
(file-name (string-append name "-" version ".tar.gz"))
|
(file-name (string-append name "-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"03iw9jiwq9jx45gsvp315y3lxr8m9ksppmcjvxs5c23qnky6zqjx"))))
|
"08m1cmq4hkaf4sb0vy978c11rgzvds71cphyadmr2iirpr5815r0"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("ocaml" ,ocaml)
|
`(("ocaml" ,ocaml)
|
||||||
|
|
|
@ -295,6 +295,15 @@ the Nix package manager.")
|
||||||
(inherit guix)
|
(inherit guix)
|
||||||
(properties `((hidden? . #t)))
|
(properties `((hidden? . #t)))
|
||||||
(name "guix-register")
|
(name "guix-register")
|
||||||
|
|
||||||
|
;; Use a minimum set of dependencies.
|
||||||
|
(native-inputs
|
||||||
|
(fold alist-delete (package-native-inputs guix)
|
||||||
|
'("po4a" "graphviz" "help2man")))
|
||||||
|
(propagated-inputs
|
||||||
|
`(("gnutls" ,gnutls)
|
||||||
|
("guile-git" ,guile-git)))
|
||||||
|
|
||||||
(arguments
|
(arguments
|
||||||
(substitute-keyword-arguments (package-arguments guix)
|
(substitute-keyword-arguments (package-arguments guix)
|
||||||
((#:tests? #f #f)
|
((#:tests? #f #f)
|
||||||
|
|
|
@ -0,0 +1,45 @@
|
||||||
|
From d1d1368c7909ffd8423730afaa811ce7b6a3a8aa Mon Sep 17 00:00:00 2001
|
||||||
|
From: Tommy Jerry Mairo <tommy.mairo@gmail.com>
|
||||||
|
Date: Sun, 4 Feb 2018 12:42:00 -0800
|
||||||
|
Subject: [PATCH 1/2] Bugfix: API mismatch with crypto++ 6.0.0
|
||||||
|
|
||||||
|
---
|
||||||
|
src/ClientCreditsList.cpp | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/ClientCreditsList.cpp b/src/ClientCreditsList.cpp
|
||||||
|
index 3bea9fe2d..a7ae1e34c 100644
|
||||||
|
--- a/src/ClientCreditsList.cpp
|
||||||
|
+++ b/src/ClientCreditsList.cpp
|
||||||
|
@@ -312,7 +312,7 @@ void CClientCreditsList::InitalizeCrypting()
|
||||||
|
// calculate and store public key
|
||||||
|
CryptoPP::RSASSA_PKCS1v15_SHA_Verifier pubkey(*static_cast<CryptoPP::RSASSA_PKCS1v15_SHA_Signer *>(m_pSignkey));
|
||||||
|
CryptoPP::ArraySink asink(m_abyMyPublicKey, 80);
|
||||||
|
- pubkey.DEREncode(asink);
|
||||||
|
+ pubkey.AccessMaterial().Save(asink);
|
||||||
|
m_nMyPublicKeyLen = asink.TotalPutLength();
|
||||||
|
asink.MessageEnd();
|
||||||
|
} catch (const CryptoPP::Exception& e) {
|
||||||
|
|
||||||
|
From 88ba0ac952b78382445f2fff73c6792c0474dc62 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Tommy Jerry Mairo <tommy.mairo@gmail.com>
|
||||||
|
Date: Wed, 21 Mar 2018 11:56:28 -0700
|
||||||
|
Subject: [PATCH 2/2] Update: Change AccessMaterial to GetMaterial
|
||||||
|
|
||||||
|
---
|
||||||
|
src/ClientCreditsList.cpp | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/ClientCreditsList.cpp b/src/ClientCreditsList.cpp
|
||||||
|
index a7ae1e34c..69e881fd8 100644
|
||||||
|
--- a/src/ClientCreditsList.cpp
|
||||||
|
+++ b/src/ClientCreditsList.cpp
|
||||||
|
@@ -312,7 +312,7 @@ void CClientCreditsList::InitalizeCrypting()
|
||||||
|
// calculate and store public key
|
||||||
|
CryptoPP::RSASSA_PKCS1v15_SHA_Verifier pubkey(*static_cast<CryptoPP::RSASSA_PKCS1v15_SHA_Signer *>(m_pSignkey));
|
||||||
|
CryptoPP::ArraySink asink(m_abyMyPublicKey, 80);
|
||||||
|
- pubkey.AccessMaterial().Save(asink);
|
||||||
|
+ pubkey.GetMaterial().Save(asink);
|
||||||
|
m_nMyPublicKeyLen = asink.TotalPutLength();
|
||||||
|
asink.MessageEnd();
|
||||||
|
} catch (const CryptoPP::Exception& e) {
|
|
@ -1,117 +0,0 @@
|
||||||
From: Michael Gilbert <mgilbert@debian.org>
|
|
||||||
Date: Mon, 9 Sep 2013 17:34:32 +0200
|
|
||||||
Subject: Fix_CVE-2012-4433
|
|
||||||
|
|
||||||
Multiple buffer overflow issues.
|
|
||||||
|
|
||||||
Closes: #692435
|
|
||||||
---
|
|
||||||
operations/external/ppm-load.c | 62 ++++++++++++++++++++++++++++++++++++------
|
|
||||||
1 file changed, 53 insertions(+), 9 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/operations/external/ppm-load.c b/operations/external/ppm-load.c
|
|
||||||
index efe6d56..465096d 100644
|
|
||||||
--- a/operations/external/ppm-load.c
|
|
||||||
+++ b/operations/external/ppm-load.c
|
|
||||||
@@ -36,6 +36,7 @@ gegl_chant_file_path (path, _("File"), "", _("Path of file to load."))
|
|
||||||
#include "gegl-chant.h"
|
|
||||||
#include <stdio.h>
|
|
||||||
#include <stdlib.h>
|
|
||||||
+#include <errno.h>
|
|
||||||
|
|
||||||
typedef enum {
|
|
||||||
PIXMAP_ASCII = 51,
|
|
||||||
@@ -44,8 +45,8 @@ typedef enum {
|
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
map_type type;
|
|
||||||
- gint width;
|
|
||||||
- gint height;
|
|
||||||
+ glong width;
|
|
||||||
+ glong height;
|
|
||||||
gsize numsamples; /* width * height * channels */
|
|
||||||
gsize bpc; /* bytes per channel */
|
|
||||||
guchar *data;
|
|
||||||
@@ -82,12 +83,33 @@ ppm_load_read_header(FILE *fp,
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Get Width and Height */
|
|
||||||
- img->width = strtol (header,&ptr,0);
|
|
||||||
- img->height = atoi (ptr);
|
|
||||||
- img->numsamples = img->width * img->height * CHANNEL_COUNT;
|
|
||||||
+ errno = 0;
|
|
||||||
+ img->width = strtol (header,&ptr,10);
|
|
||||||
+ if (errno)
|
|
||||||
+ {
|
|
||||||
+ g_warning ("Error reading width: %s", strerror(errno));
|
|
||||||
+ return FALSE;
|
|
||||||
+ }
|
|
||||||
+ else if (img->width < 0)
|
|
||||||
+ {
|
|
||||||
+ g_warning ("Error: width is negative");
|
|
||||||
+ return FALSE;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ img->height = strtol (ptr,&ptr,10);
|
|
||||||
+ if (errno)
|
|
||||||
+ {
|
|
||||||
+ g_warning ("Error reading height: %s", strerror(errno));
|
|
||||||
+ return FALSE;
|
|
||||||
+ }
|
|
||||||
+ else if (img->width < 0)
|
|
||||||
+ {
|
|
||||||
+ g_warning ("Error: height is negative");
|
|
||||||
+ return FALSE;
|
|
||||||
+ }
|
|
||||||
|
|
||||||
fgets (header,MAX_CHARS_IN_ROW,fp);
|
|
||||||
- maxval = strtol (header,&ptr,0);
|
|
||||||
+ maxval = strtol (header,&ptr,10);
|
|
||||||
|
|
||||||
if ((maxval != 255) && (maxval != 65535))
|
|
||||||
{
|
|
||||||
@@ -109,6 +131,16 @@ ppm_load_read_header(FILE *fp,
|
|
||||||
g_warning ("%s: Programmer stupidity error", G_STRLOC);
|
|
||||||
}
|
|
||||||
|
|
||||||
+ /* Later on, img->numsamples is multiplied with img->bpc to allocate
|
|
||||||
+ * memory. Ensure it doesn't overflow. */
|
|
||||||
+ if (!img->width || !img->height ||
|
|
||||||
+ G_MAXSIZE / img->width / img->height / CHANNEL_COUNT < img->bpc)
|
|
||||||
+ {
|
|
||||||
+ g_warning ("Illegal width/height: %ld/%ld", img->width, img->height);
|
|
||||||
+ return FALSE;
|
|
||||||
+ }
|
|
||||||
+ img->numsamples = img->width * img->height * CHANNEL_COUNT;
|
|
||||||
+
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -229,12 +261,24 @@ process (GeglOperation *operation,
|
|
||||||
if (!ppm_load_read_header (fp, &img))
|
|
||||||
goto out;
|
|
||||||
|
|
||||||
- rect.height = img.height;
|
|
||||||
- rect.width = img.width;
|
|
||||||
-
|
|
||||||
/* Allocating Array Size */
|
|
||||||
+
|
|
||||||
+ /* Should use g_try_malloc(), but this causes crashes elsewhere because the
|
|
||||||
+ * error signalled by returning FALSE isn't properly acted upon. Therefore
|
|
||||||
+ * g_malloc() is used here which aborts if the requested memory size can't be
|
|
||||||
+ * allocated causing a controlled crash. */
|
|
||||||
img.data = (guchar*) g_malloc (img.numsamples * img.bpc);
|
|
||||||
|
|
||||||
+ /* No-op without g_try_malloc(), see above. */
|
|
||||||
+ if (! img.data)
|
|
||||||
+ {
|
|
||||||
+ g_warning ("Couldn't allocate %" G_GSIZE_FORMAT " bytes, giving up.", ((gsize)img.numsamples * img.bpc));
|
|
||||||
+ goto out;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ rect.height = img.height;
|
|
||||||
+ rect.width = img.width;
|
|
||||||
+
|
|
||||||
switch (img.bpc)
|
|
||||||
{
|
|
||||||
case 1:
|
|
|
@ -1,41 +0,0 @@
|
||||||
Fix CVE-2017-17784:
|
|
||||||
|
|
||||||
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17784
|
|
||||||
https://bugzilla.gnome.org/show_bug.cgi?id=790784
|
|
||||||
|
|
||||||
Patch copied from upstream source repository:
|
|
||||||
|
|
||||||
https://git.gnome.org/browse/gimp/commit/?id=c57f9dcf1934a9ab0cd67650f2dea18cb0902270
|
|
||||||
|
|
||||||
From c57f9dcf1934a9ab0cd67650f2dea18cb0902270 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jehan <jehan@girinstud.io>
|
|
||||||
Date: Thu, 21 Dec 2017 12:25:32 +0100
|
|
||||||
Subject: [PATCH] Bug 790784 - (CVE-2017-17784) heap overread in gbr parser /
|
|
||||||
load_image.
|
|
||||||
|
|
||||||
We were assuming the input name was well formed, hence was
|
|
||||||
nul-terminated. As any data coming from external input, this has to be
|
|
||||||
thorougly checked.
|
|
||||||
Similar to commit 06d24a79af94837d615d0024916bb95a01bf3c59 but adapted
|
|
||||||
to older gimp-2-8 code.
|
|
||||||
---
|
|
||||||
plug-ins/common/file-gbr.c | 3 ++-
|
|
||||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/plug-ins/common/file-gbr.c b/plug-ins/common/file-gbr.c
|
|
||||||
index b028100bef..d3f01d9c56 100644
|
|
||||||
--- a/plug-ins/common/file-gbr.c
|
|
||||||
+++ b/plug-ins/common/file-gbr.c
|
|
||||||
@@ -443,7 +443,8 @@ load_image (const gchar *filename,
|
|
||||||
{
|
|
||||||
gchar *temp = g_new (gchar, bn_size);
|
|
||||||
|
|
||||||
- if ((read (fd, temp, bn_size)) < bn_size)
|
|
||||||
+ if ((read (fd, temp, bn_size)) < bn_size ||
|
|
||||||
+ temp[bn_size - 1] != '\0')
|
|
||||||
{
|
|
||||||
g_set_error (error, G_FILE_ERROR, G_FILE_ERROR_FAILED,
|
|
||||||
_("Error in GIMP brush file '%s'"),
|
|
||||||
--
|
|
||||||
2.15.1
|
|
||||||
|
|
|
@ -1,171 +0,0 @@
|
||||||
Fix CVE-2017-17785:
|
|
||||||
|
|
||||||
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17785
|
|
||||||
https://bugzilla.gnome.org/show_bug.cgi?id=739133
|
|
||||||
|
|
||||||
Patch copied from upstream source repository:
|
|
||||||
|
|
||||||
https://git.gnome.org/browse/gimp/commit/?id=1882bac996a20ab5c15c42b0c5e8f49033a1af54
|
|
||||||
|
|
||||||
From 1882bac996a20ab5c15c42b0c5e8f49033a1af54 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Tobias Stoeckmann <tobias@stoeckmann.org>
|
|
||||||
Date: Sun, 29 Oct 2017 15:19:41 +0100
|
|
||||||
Subject: [PATCH] Bug 739133 - (CVE-2017-17785) Heap overflow while parsing FLI
|
|
||||||
files.
|
|
||||||
|
|
||||||
It is possible to trigger a heap overflow while parsing FLI files. The
|
|
||||||
RLE decoder is vulnerable to out of boundary writes due to lack of
|
|
||||||
boundary checks.
|
|
||||||
|
|
||||||
The variable "framebuf" points to a memory area which was allocated
|
|
||||||
with fli_header->width * fli_header->height bytes. The RLE decoder
|
|
||||||
therefore must never write beyond that limit.
|
|
||||||
|
|
||||||
If an illegal frame is detected, the parser won't stop, which means
|
|
||||||
that the next valid sequence is properly parsed again. This should
|
|
||||||
allow GIMP to parse FLI files as good as possible even if they are
|
|
||||||
broken by an attacker or by accident.
|
|
||||||
|
|
||||||
While at it, I changed the variable xc to be of type size_t, because
|
|
||||||
the multiplication of width and height could overflow a 16 bit type.
|
|
||||||
|
|
||||||
Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>
|
|
||||||
(cherry picked from commit edb251a7ef1602d20a5afcbf23f24afb163de63b)
|
|
||||||
---
|
|
||||||
plug-ins/file-fli/fli.c | 50 ++++++++++++++++++++++++++++++++++---------------
|
|
||||||
1 file changed, 35 insertions(+), 15 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/plug-ins/file-fli/fli.c b/plug-ins/file-fli/fli.c
|
|
||||||
index 313efeb977..ffb651e2af 100644
|
|
||||||
--- a/plug-ins/file-fli/fli.c
|
|
||||||
+++ b/plug-ins/file-fli/fli.c
|
|
||||||
@@ -25,6 +25,8 @@
|
|
||||||
|
|
||||||
#include "config.h"
|
|
||||||
|
|
||||||
+#include <glib/gstdio.h>
|
|
||||||
+
|
|
||||||
#include <string.h>
|
|
||||||
#include <stdio.h>
|
|
||||||
|
|
||||||
@@ -461,23 +463,27 @@ void fli_read_brun(FILE *f, s_fli_header *fli_header, unsigned char *framebuf)
|
|
||||||
unsigned short yc;
|
|
||||||
unsigned char *pos;
|
|
||||||
for (yc=0; yc < fli_header->height; yc++) {
|
|
||||||
- unsigned short xc, pc, pcnt;
|
|
||||||
+ unsigned short pc, pcnt;
|
|
||||||
+ size_t n, xc;
|
|
||||||
pc=fli_read_char(f);
|
|
||||||
xc=0;
|
|
||||||
pos=framebuf+(fli_header->width * yc);
|
|
||||||
+ n=(size_t)fli_header->width * (fli_header->height-yc);
|
|
||||||
for (pcnt=pc; pcnt>0; pcnt--) {
|
|
||||||
unsigned short ps;
|
|
||||||
ps=fli_read_char(f);
|
|
||||||
if (ps & 0x80) {
|
|
||||||
unsigned short len;
|
|
||||||
- for (len=-(signed char)ps; len>0; len--) {
|
|
||||||
+ for (len=-(signed char)ps; len>0 && xc<n; len--) {
|
|
||||||
pos[xc++]=fli_read_char(f);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
unsigned char val;
|
|
||||||
+ size_t len;
|
|
||||||
+ len=MIN(n-xc,ps);
|
|
||||||
val=fli_read_char(f);
|
|
||||||
- memset(&(pos[xc]), val, ps);
|
|
||||||
- xc+=ps;
|
|
||||||
+ memset(&(pos[xc]), val, len);
|
|
||||||
+ xc+=len;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -564,25 +570,34 @@ void fli_read_lc(FILE *f, s_fli_header *fli_header, unsigned char *old_framebuf,
|
|
||||||
memcpy(framebuf, old_framebuf, fli_header->width * fli_header->height);
|
|
||||||
firstline = fli_read_short(f);
|
|
||||||
numline = fli_read_short(f);
|
|
||||||
+ if (numline > fli_header->height || fli_header->height-numline < firstline)
|
|
||||||
+ return;
|
|
||||||
+
|
|
||||||
for (yc=0; yc < numline; yc++) {
|
|
||||||
- unsigned short xc, pc, pcnt;
|
|
||||||
+ unsigned short pc, pcnt;
|
|
||||||
+ size_t n, xc;
|
|
||||||
pc=fli_read_char(f);
|
|
||||||
xc=0;
|
|
||||||
pos=framebuf+(fli_header->width * (firstline+yc));
|
|
||||||
+ n=(size_t)fli_header->width * (fli_header->height-firstline-yc);
|
|
||||||
for (pcnt=pc; pcnt>0; pcnt--) {
|
|
||||||
unsigned short ps,skip;
|
|
||||||
skip=fli_read_char(f);
|
|
||||||
ps=fli_read_char(f);
|
|
||||||
- xc+=skip;
|
|
||||||
+ xc+=MIN(n-xc,skip);
|
|
||||||
if (ps & 0x80) {
|
|
||||||
unsigned char val;
|
|
||||||
+ size_t len;
|
|
||||||
ps=-(signed char)ps;
|
|
||||||
val=fli_read_char(f);
|
|
||||||
- memset(&(pos[xc]), val, ps);
|
|
||||||
- xc+=ps;
|
|
||||||
+ len=MIN(n-xc,ps);
|
|
||||||
+ memset(&(pos[xc]), val, len);
|
|
||||||
+ xc+=len;
|
|
||||||
} else {
|
|
||||||
- fread(&(pos[xc]), ps, 1, f);
|
|
||||||
- xc+=ps;
|
|
||||||
+ size_t len;
|
|
||||||
+ len=MIN(n-xc,ps);
|
|
||||||
+ fread(&(pos[xc]), len, 1, f);
|
|
||||||
+ xc+=len;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -689,7 +704,8 @@ void fli_read_lc_2(FILE *f, s_fli_header *fli_header, unsigned char *old_framebu
|
|
||||||
yc=0;
|
|
||||||
numline = fli_read_short(f);
|
|
||||||
for (lc=0; lc < numline; lc++) {
|
|
||||||
- unsigned short xc, pc, pcnt, lpf, lpn;
|
|
||||||
+ unsigned short pc, pcnt, lpf, lpn;
|
|
||||||
+ size_t n, xc;
|
|
||||||
pc=fli_read_short(f);
|
|
||||||
lpf=0; lpn=0;
|
|
||||||
while (pc & 0x8000) {
|
|
||||||
@@ -700,26 +716,30 @@ void fli_read_lc_2(FILE *f, s_fli_header *fli_header, unsigned char *old_framebu
|
|
||||||
}
|
|
||||||
pc=fli_read_short(f);
|
|
||||||
}
|
|
||||||
+ yc=MIN(yc, fli_header->height);
|
|
||||||
xc=0;
|
|
||||||
pos=framebuf+(fli_header->width * yc);
|
|
||||||
+ n=(size_t)fli_header->width * (fli_header->height-yc);
|
|
||||||
for (pcnt=pc; pcnt>0; pcnt--) {
|
|
||||||
unsigned short ps,skip;
|
|
||||||
skip=fli_read_char(f);
|
|
||||||
ps=fli_read_char(f);
|
|
||||||
- xc+=skip;
|
|
||||||
+ xc+=MIN(n-xc,skip);
|
|
||||||
if (ps & 0x80) {
|
|
||||||
unsigned char v1,v2;
|
|
||||||
ps=-(signed char)ps;
|
|
||||||
v1=fli_read_char(f);
|
|
||||||
v2=fli_read_char(f);
|
|
||||||
- while (ps>0) {
|
|
||||||
+ while (ps>0 && xc+1<n) {
|
|
||||||
pos[xc++]=v1;
|
|
||||||
pos[xc++]=v2;
|
|
||||||
ps--;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
- fread(&(pos[xc]), ps, 2, f);
|
|
||||||
- xc+=ps << 1;
|
|
||||||
+ size_t len;
|
|
||||||
+ len=MIN((n-xc)/2,ps);
|
|
||||||
+ fread(&(pos[xc]), len, 2, f);
|
|
||||||
+ xc+=len << 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (lpf) pos[xc]=lpn;
|
|
||||||
--
|
|
||||||
2.15.1
|
|
||||||
|
|
|
@ -1,94 +0,0 @@
|
||||||
Fix CVE-2017-17786:
|
|
||||||
|
|
||||||
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17786
|
|
||||||
https://bugzilla.gnome.org/show_bug.cgi?id=739134
|
|
||||||
|
|
||||||
Both patches copied from upstream source repository:
|
|
||||||
|
|
||||||
https://git.gnome.org/browse/gimp/commit/?id=ef9c821fff8b637a2178eab1c78cae6764c50e12
|
|
||||||
https://git.gnome.org/browse/gimp/commit/?id=22e2571c25425f225abdb11a566cc281fca6f366
|
|
||||||
|
|
||||||
From ef9c821fff8b637a2178eab1c78cae6764c50e12 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jehan <jehan@girinstud.io>
|
|
||||||
Date: Wed, 20 Dec 2017 13:02:38 +0100
|
|
||||||
Subject: [PATCH] Bug 739134 - (CVE-2017-17786) Out of bounds read / heap
|
|
||||||
overflow in...
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
... TGA importer.
|
|
||||||
|
|
||||||
Be more thorough on valid TGA RGB and RGBA images.
|
|
||||||
In particular current TGA plug-in can import RGBA as 32 bits (8 bits per
|
|
||||||
channel) and 16 bits (5 bits per color channel and 1 bit for alpha), and
|
|
||||||
RGB as 15 and 24 bits.
|
|
||||||
Maybe there exist more variants, but if they do exist, we simply don't
|
|
||||||
support them yet.
|
|
||||||
|
|
||||||
Thanks to Hanno Böck for the report and a first patch attempt.
|
|
||||||
|
|
||||||
(cherry picked from commit 674b62ad45b6579ec6d7923dc3cb1ef4e8b5498b)
|
|
||||||
---
|
|
||||||
plug-ins/common/file-tga.c | 12 ++++++++----
|
|
||||||
1 file changed, 8 insertions(+), 4 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/plug-ins/common/file-tga.c b/plug-ins/common/file-tga.c
|
|
||||||
index aef98702d4..426acc2925 100644
|
|
||||||
--- a/plug-ins/common/file-tga.c
|
|
||||||
+++ b/plug-ins/common/file-tga.c
|
|
||||||
@@ -564,12 +564,16 @@ load_image (const gchar *filename,
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case TGA_TYPE_COLOR:
|
|
||||||
- if (info.bpp != 15 && info.bpp != 16 &&
|
|
||||||
- info.bpp != 24 && info.bpp != 32)
|
|
||||||
+ if ((info.bpp != 15 && info.bpp != 16 &&
|
|
||||||
+ info.bpp != 24 && info.bpp != 32) ||
|
|
||||||
+ ((info.bpp == 15 || info.bpp == 24) &&
|
|
||||||
+ info.alphaBits != 0) ||
|
|
||||||
+ (info.bpp == 16 && info.alphaBits != 1) ||
|
|
||||||
+ (info.bpp == 32 && info.alphaBits != 8))
|
|
||||||
{
|
|
||||||
- g_message ("Unhandled sub-format in '%s' (type = %u, bpp = %u)",
|
|
||||||
+ g_message ("Unhandled sub-format in '%s' (type = %u, bpp = %u, alpha = %u)",
|
|
||||||
gimp_filename_to_utf8 (filename),
|
|
||||||
- info.imageType, info.bpp);
|
|
||||||
+ info.imageType, info.bpp, info.alphaBits);
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
--
|
|
||||||
2.15.1
|
|
||||||
|
|
||||||
From 22e2571c25425f225abdb11a566cc281fca6f366 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jehan <jehan@girinstud.io>
|
|
||||||
Date: Wed, 20 Dec 2017 13:26:26 +0100
|
|
||||||
Subject: [PATCH] plug-ins: TGA 16-bit RGB (without alpha bit) is also valid.
|
|
||||||
|
|
||||||
According to some spec on the web, 16-bit RGB is also valid. In this
|
|
||||||
case, the last bit is simply ignored (at least that's how it is
|
|
||||||
implemented right now).
|
|
||||||
|
|
||||||
(cherry picked from commit 8ea316667c8a3296bce2832b3986b58d0fdfc077)
|
|
||||||
---
|
|
||||||
plug-ins/common/file-tga.c | 3 ++-
|
|
||||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/plug-ins/common/file-tga.c b/plug-ins/common/file-tga.c
|
|
||||||
index 426acc2925..eb14a1dadc 100644
|
|
||||||
--- a/plug-ins/common/file-tga.c
|
|
||||||
+++ b/plug-ins/common/file-tga.c
|
|
||||||
@@ -568,7 +568,8 @@ load_image (const gchar *filename,
|
|
||||||
info.bpp != 24 && info.bpp != 32) ||
|
|
||||||
((info.bpp == 15 || info.bpp == 24) &&
|
|
||||||
info.alphaBits != 0) ||
|
|
||||||
- (info.bpp == 16 && info.alphaBits != 1) ||
|
|
||||||
+ (info.bpp == 16 && info.alphaBits != 1 &&
|
|
||||||
+ info.alphaBits != 0) ||
|
|
||||||
(info.bpp == 32 && info.alphaBits != 8))
|
|
||||||
{
|
|
||||||
g_message ("Unhandled sub-format in '%s' (type = %u, bpp = %u, alpha = %u)",
|
|
||||||
--
|
|
||||||
2.15.1
|
|
||||||
|
|
|
@ -1,42 +0,0 @@
|
||||||
Fix CVE-2017-17787:
|
|
||||||
|
|
||||||
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17787
|
|
||||||
https://bugzilla.gnome.org/show_bug.cgi?id=790853
|
|
||||||
|
|
||||||
Patch copied from upstream source repository:
|
|
||||||
|
|
||||||
https://git.gnome.org/browse/gimp/commit/?id=87ba505fff85989af795f4ab6a047713f4d9381d
|
|
||||||
|
|
||||||
From 87ba505fff85989af795f4ab6a047713f4d9381d Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jehan <jehan@girinstud.io>
|
|
||||||
Date: Thu, 21 Dec 2017 12:49:41 +0100
|
|
||||||
Subject: [PATCH] Bug 790853 - (CVE-2017-17787) heap overread in psp importer.
|
|
||||||
|
|
||||||
As any external data, we have to check that strings being read at fixed
|
|
||||||
length are properly nul-terminated.
|
|
||||||
|
|
||||||
(cherry picked from commit eb2980683e6472aff35a3117587c4f814515c74d)
|
|
||||||
---
|
|
||||||
plug-ins/common/file-psp.c | 6 ++++++
|
|
||||||
1 file changed, 6 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/plug-ins/common/file-psp.c b/plug-ins/common/file-psp.c
|
|
||||||
index 4cbafe37b1..e350e4d88d 100644
|
|
||||||
--- a/plug-ins/common/file-psp.c
|
|
||||||
+++ b/plug-ins/common/file-psp.c
|
|
||||||
@@ -890,6 +890,12 @@ read_creator_block (FILE *f,
|
|
||||||
g_free (string);
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
+ if (string[length - 1] != '\0')
|
|
||||||
+ {
|
|
||||||
+ g_message ("Creator keyword data not nul-terminated");
|
|
||||||
+ g_free (string);
|
|
||||||
+ return -1;
|
|
||||||
+ }
|
|
||||||
switch (keyword)
|
|
||||||
{
|
|
||||||
case PSP_CRTR_FLD_TITLE:
|
|
||||||
--
|
|
||||||
2.15.1
|
|
||||||
|
|
|
@ -1,48 +0,0 @@
|
||||||
Fix CVE-2017-17789:
|
|
||||||
|
|
||||||
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17789
|
|
||||||
https://bugzilla.gnome.org/show_bug.cgi?id=790849
|
|
||||||
|
|
||||||
Patch copied from upstream source repository:
|
|
||||||
|
|
||||||
https://git.gnome.org/browse/gimp/commit/?id=01898f10f87a094665a7fdcf7153990f4e511d3f
|
|
||||||
|
|
||||||
From 01898f10f87a094665a7fdcf7153990f4e511d3f Mon Sep 17 00:00:00 2001
|
|
||||||
From: Jehan <jehan@girinstud.io>
|
|
||||||
Date: Wed, 20 Dec 2017 16:44:20 +0100
|
|
||||||
Subject: [PATCH] Bug 790849 - (CVE-2017-17789) CVE-2017-17789 Heap buffer
|
|
||||||
overflow...
|
|
||||||
|
|
||||||
... in PSP importer.
|
|
||||||
Check if declared block length is valid (i.e. within the actual file)
|
|
||||||
before going further.
|
|
||||||
Consider the file as broken otherwise and fail loading it.
|
|
||||||
|
|
||||||
(cherry picked from commit 28e95fbeb5720e6005a088fa811f5bf3c1af48b8)
|
|
||||||
---
|
|
||||||
plug-ins/common/file-psp.c | 9 +++++++++
|
|
||||||
1 file changed, 9 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/plug-ins/common/file-psp.c b/plug-ins/common/file-psp.c
|
|
||||||
index ac0fff78f0..4cbafe37b1 100644
|
|
||||||
--- a/plug-ins/common/file-psp.c
|
|
||||||
+++ b/plug-ins/common/file-psp.c
|
|
||||||
@@ -1771,6 +1771,15 @@ load_image (const gchar *filename,
|
|
||||||
{
|
|
||||||
block_start = ftell (f);
|
|
||||||
|
|
||||||
+ if (block_start + block_total_len > st.st_size)
|
|
||||||
+ {
|
|
||||||
+ g_set_error (error, G_FILE_ERROR, G_FILE_ERROR_FAILED,
|
|
||||||
+ _("Could not open '%s' for reading: %s"),
|
|
||||||
+ gimp_filename_to_utf8 (filename),
|
|
||||||
+ _("invalid block size"));
|
|
||||||
+ goto error;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if (id == PSP_IMAGE_BLOCK)
|
|
||||||
{
|
|
||||||
if (block_number != 0)
|
|
||||||
--
|
|
||||||
2.15.1
|
|
||||||
|
|
|
@ -1,17 +0,0 @@
|
||||||
Patch configure script to choose pass_all deplibs check method for
|
|
||||||
linux-gnu* systems on mips64. This is a temporary hack until liboop
|
|
||||||
bootstraps their build system with a newer libtool.
|
|
||||||
|
|
||||||
Patch by Mark H Weaver <mhw@netris.org>.
|
|
||||||
|
|
||||||
--- liboop/configure.orig 2003-10-26 11:41:19.000000000 -0500
|
|
||||||
+++ liboop/configure 2013-11-02 18:09:11.079995796 -0400
|
|
||||||
@@ -3395,7 +3395,7 @@
|
|
||||||
# This must be Linux ELF.
|
|
||||||
linux*)
|
|
||||||
case $host_cpu in
|
|
||||||
- alpha* | hppa* | i*86 | ia64* | m68* | mips | mipsel | powerpc* | sparc* | s390* | sh*)
|
|
||||||
+ alpha* | hppa* | i*86 | ia64* | m68* | mips | mipsel | mips64 | mips64el | powerpc* | sparc* | s390* | sh*)
|
|
||||||
lt_cv_deplibs_check_method=pass_all ;;
|
|
||||||
*)
|
|
||||||
# glibc up to 2.1.1 does not perform some relocations on ARM
|
|
|
@ -1,191 +0,0 @@
|
||||||
Fix CVE-2018-7169:
|
|
||||||
|
|
||||||
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-7169
|
|
||||||
|
|
||||||
Patch copied from upstream source repository:
|
|
||||||
|
|
||||||
https://github.com/shadow-maint/shadow/commit/fb28c99b8a66ff2605c5cb96abc0a4d975f92de0
|
|
||||||
|
|
||||||
From fb28c99b8a66ff2605c5cb96abc0a4d975f92de0 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Aleksa Sarai <asarai@suse.de>
|
|
||||||
Date: Thu, 15 Feb 2018 23:49:40 +1100
|
|
||||||
Subject: [PATCH] newgidmap: enforce setgroups=deny if self-mapping a group
|
|
||||||
|
|
||||||
This is necessary to match the kernel-side policy of "self-mapping in a
|
|
||||||
user namespace is fine, but you cannot drop groups" -- a policy that was
|
|
||||||
created in order to stop user namespaces from allowing trivial privilege
|
|
||||||
escalation by dropping supplementary groups that were "blacklisted" from
|
|
||||||
certain paths.
|
|
||||||
|
|
||||||
This is the simplest fix for the underlying issue, and effectively makes
|
|
||||||
it so that unless a user has a valid mapping set in /etc/subgid (which
|
|
||||||
only administrators can modify) -- and they are currently trying to use
|
|
||||||
that mapping -- then /proc/$pid/setgroups will be set to deny. This
|
|
||||||
workaround is only partial, because ideally it should be possible to set
|
|
||||||
an "allow_setgroups" or "deny_setgroups" flag in /etc/subgid to allow
|
|
||||||
administrators to further restrict newgidmap(1).
|
|
||||||
|
|
||||||
We also don't write anything in the "allow" case because "allow" is the
|
|
||||||
default, and users may have already written "deny" even if they
|
|
||||||
technically are allowed to use setgroups. And we don't write anything if
|
|
||||||
the setgroups policy is already "deny".
|
|
||||||
|
|
||||||
Ref: https://bugs.launchpad.net/ubuntu/+source/shadow/+bug/1729357
|
|
||||||
Fixes: CVE-2018-7169
|
|
||||||
Reported-by: Craig Furman <craig.furman89@gmail.com>
|
|
||||||
Signed-off-by: Aleksa Sarai <asarai@suse.de>
|
|
||||||
---
|
|
||||||
src/newgidmap.c | 89 +++++++++++++++++++++++++++++++++++++++++++++++++++------
|
|
||||||
1 file changed, 80 insertions(+), 9 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/newgidmap.c b/src/newgidmap.c
|
|
||||||
index b1e33513..59a2e75c 100644
|
|
||||||
--- a/src/newgidmap.c
|
|
||||||
+++ b/src/newgidmap.c
|
|
||||||
@@ -46,32 +46,37 @@
|
|
||||||
*/
|
|
||||||
const char *Prog;
|
|
||||||
|
|
||||||
-static bool verify_range(struct passwd *pw, struct map_range *range)
|
|
||||||
+
|
|
||||||
+static bool verify_range(struct passwd *pw, struct map_range *range, bool *allow_setgroups)
|
|
||||||
{
|
|
||||||
/* An empty range is invalid */
|
|
||||||
if (range->count == 0)
|
|
||||||
return false;
|
|
||||||
|
|
||||||
- /* Test /etc/subgid */
|
|
||||||
- if (have_sub_gids(pw->pw_name, range->lower, range->count))
|
|
||||||
+ /* Test /etc/subgid. If the mapping is valid then we allow setgroups. */
|
|
||||||
+ if (have_sub_gids(pw->pw_name, range->lower, range->count)) {
|
|
||||||
+ *allow_setgroups = true;
|
|
||||||
return true;
|
|
||||||
+ }
|
|
||||||
|
|
||||||
- /* Allow a process to map its own gid */
|
|
||||||
- if ((range->count == 1) && (pw->pw_gid == range->lower))
|
|
||||||
+ /* Allow a process to map its own gid. */
|
|
||||||
+ if ((range->count == 1) && (pw->pw_gid == range->lower)) {
|
|
||||||
+ /* noop -- if setgroups is enabled already we won't disable it. */
|
|
||||||
return true;
|
|
||||||
+ }
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void verify_ranges(struct passwd *pw, int ranges,
|
|
||||||
- struct map_range *mappings)
|
|
||||||
+ struct map_range *mappings, bool *allow_setgroups)
|
|
||||||
{
|
|
||||||
struct map_range *mapping;
|
|
||||||
int idx;
|
|
||||||
|
|
||||||
mapping = mappings;
|
|
||||||
for (idx = 0; idx < ranges; idx++, mapping++) {
|
|
||||||
- if (!verify_range(pw, mapping)) {
|
|
||||||
+ if (!verify_range(pw, mapping, allow_setgroups)) {
|
|
||||||
fprintf(stderr, _( "%s: gid range [%lu-%lu) -> [%lu-%lu) not allowed\n"),
|
|
||||||
Prog,
|
|
||||||
mapping->upper,
|
|
||||||
@@ -89,6 +94,70 @@ static void usage(void)
|
|
||||||
exit(EXIT_FAILURE);
|
|
||||||
}
|
|
||||||
|
|
||||||
+void write_setgroups(int proc_dir_fd, bool allow_setgroups)
|
|
||||||
+{
|
|
||||||
+ int setgroups_fd;
|
|
||||||
+ char *policy, policy_buffer[4096];
|
|
||||||
+
|
|
||||||
+ /*
|
|
||||||
+ * Default is "deny", and any "allow" will out-rank a "deny". We don't
|
|
||||||
+ * forcefully write an "allow" here because the process we are writing
|
|
||||||
+ * mappings for may have already set themselves to "deny" (and "allow"
|
|
||||||
+ * is the default anyway). So allow_setgroups == true is a noop.
|
|
||||||
+ */
|
|
||||||
+ policy = "deny\n";
|
|
||||||
+ if (allow_setgroups)
|
|
||||||
+ return;
|
|
||||||
+
|
|
||||||
+ setgroups_fd = openat(proc_dir_fd, "setgroups", O_RDWR|O_CLOEXEC);
|
|
||||||
+ if (setgroups_fd < 0) {
|
|
||||||
+ /*
|
|
||||||
+ * If it's an ENOENT then we are on too old a kernel for the setgroups
|
|
||||||
+ * code to exist. Emit a warning and bail on this.
|
|
||||||
+ */
|
|
||||||
+ if (ENOENT == errno) {
|
|
||||||
+ fprintf(stderr, _("%s: kernel doesn't support setgroups restrictions\n"), Prog);
|
|
||||||
+ goto out;
|
|
||||||
+ }
|
|
||||||
+ fprintf(stderr, _("%s: couldn't open process setgroups: %s\n"),
|
|
||||||
+ Prog,
|
|
||||||
+ strerror(errno));
|
|
||||||
+ exit(EXIT_FAILURE);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ /*
|
|
||||||
+ * Check whether the policy is already what we want. /proc/self/setgroups
|
|
||||||
+ * is write-once, so attempting to write after it's already written to will
|
|
||||||
+ * fail.
|
|
||||||
+ */
|
|
||||||
+ if (read(setgroups_fd, policy_buffer, sizeof(policy_buffer)) < 0) {
|
|
||||||
+ fprintf(stderr, _("%s: failed to read setgroups: %s\n"),
|
|
||||||
+ Prog,
|
|
||||||
+ strerror(errno));
|
|
||||||
+ exit(EXIT_FAILURE);
|
|
||||||
+ }
|
|
||||||
+ if (!strncmp(policy_buffer, policy, strlen(policy)))
|
|
||||||
+ goto out;
|
|
||||||
+
|
|
||||||
+ /* Write the policy. */
|
|
||||||
+ if (lseek(setgroups_fd, 0, SEEK_SET) < 0) {
|
|
||||||
+ fprintf(stderr, _("%s: failed to seek setgroups: %s\n"),
|
|
||||||
+ Prog,
|
|
||||||
+ strerror(errno));
|
|
||||||
+ exit(EXIT_FAILURE);
|
|
||||||
+ }
|
|
||||||
+ if (dprintf(setgroups_fd, "%s", policy) < 0) {
|
|
||||||
+ fprintf(stderr, _("%s: failed to setgroups %s policy: %s\n"),
|
|
||||||
+ Prog,
|
|
||||||
+ policy,
|
|
||||||
+ strerror(errno));
|
|
||||||
+ exit(EXIT_FAILURE);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+out:
|
|
||||||
+ close(setgroups_fd);
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
/*
|
|
||||||
* newgidmap - Set the gid_map for the specified process
|
|
||||||
*/
|
|
||||||
@@ -103,6 +172,7 @@ int main(int argc, char **argv)
|
|
||||||
struct stat st;
|
|
||||||
struct passwd *pw;
|
|
||||||
int written;
|
|
||||||
+ bool allow_setgroups = false;
|
|
||||||
|
|
||||||
Prog = Basename (argv[0]);
|
|
||||||
|
|
||||||
@@ -145,7 +215,7 @@ int main(int argc, char **argv)
|
|
||||||
(unsigned long) getuid ()));
|
|
||||||
return EXIT_FAILURE;
|
|
||||||
}
|
|
||||||
-
|
|
||||||
+
|
|
||||||
/* Get the effective uid and effective gid of the target process */
|
|
||||||
if (fstat(proc_dir_fd, &st) < 0) {
|
|
||||||
fprintf(stderr, _("%s: Could not stat directory for target %u\n"),
|
|
||||||
@@ -177,8 +247,9 @@ int main(int argc, char **argv)
|
|
||||||
if (!mappings)
|
|
||||||
usage();
|
|
||||||
|
|
||||||
- verify_ranges(pw, ranges, mappings);
|
|
||||||
+ verify_ranges(pw, ranges, mappings, &allow_setgroups);
|
|
||||||
|
|
||||||
+ write_setgroups(proc_dir_fd, allow_setgroups);
|
|
||||||
write_mapping(proc_dir_fd, ranges, mappings, "gid_map");
|
|
||||||
sub_gid_close();
|
|
||||||
|
|
||||||
--
|
|
||||||
2.16.2
|
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2016 Julien Lepiller <julien@lepiller.eu>
|
;;; Copyright © 2016 Julien Lepiller <julien@lepiller.eu>
|
||||||
;;; Copyright © 2016 Arun Isaac <arunisaac@systemreboot.net>
|
;;; Copyright © 2016 Arun Isaac <arunisaac@systemreboot.net>
|
||||||
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
|
;;; Copyright © 2017, 2018 Leo Famulari <leo@famulari.name>
|
||||||
;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com>
|
;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com>
|
||||||
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
|
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
|
||||||
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
|
@ -124,6 +124,36 @@
|
||||||
(license license:gpl2+)
|
(license license:gpl2+)
|
||||||
(home-page "https://poppler.freedesktop.org/")))
|
(home-page "https://poppler.freedesktop.org/")))
|
||||||
|
|
||||||
|
(define-public poppler-data
|
||||||
|
(package
|
||||||
|
(name "poppler-data")
|
||||||
|
(version "0.4.9")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "https://poppler.freedesktop.org/poppler-data"
|
||||||
|
"-" version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"04i0wgdkn5lhda8cyxd1ll4a2p41pwqrwd47n9mdpl7cx5ypx70z"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(arguments
|
||||||
|
'(#:tests? #f ; no test suite
|
||||||
|
#:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out")))
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
;; The package only provides some data files, so there is nothing to
|
||||||
|
;; build.
|
||||||
|
(delete 'configure)
|
||||||
|
(delete 'build))))
|
||||||
|
(synopsis "Poppler encoding files for rendering of CJK and Cyrillic text")
|
||||||
|
(description "This package provides optional encoding files for Poppler.
|
||||||
|
When present, Poppler is able to correctly render CJK and Cyrillic text.")
|
||||||
|
(home-page (package-home-page poppler))
|
||||||
|
;; See COPYING in the source distribution for more information about
|
||||||
|
;; the licensing.
|
||||||
|
(license (list license:bsd-3
|
||||||
|
license:gpl2))))
|
||||||
|
|
||||||
(define-public poppler-qt4
|
(define-public poppler-qt4
|
||||||
(package (inherit poppler)
|
(package (inherit poppler)
|
||||||
(name "poppler-qt4")
|
(name "poppler-qt4")
|
||||||
|
|
|
@ -6003,7 +6003,7 @@ building is done in @code{MooX::ConfigFromFile::Role}---using
|
||||||
(define-public perl-moox-file-configdir
|
(define-public perl-moox-file-configdir
|
||||||
(package
|
(package
|
||||||
(name "perl-moox-file-configdir")
|
(name "perl-moox-file-configdir")
|
||||||
(version "0.006")
|
(version "0.007")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -6011,7 +6011,7 @@ building is done in @code{MooX::ConfigFromFile::Role}---using
|
||||||
"MooX-File-ConfigDir-" version ".tar.gz"))
|
"MooX-File-ConfigDir-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0f808sq3627ymgf63zwgh705vv0nhwclxp89clhx8yl6hybcv7kx"))))
|
"074v150wrbddhy1n0qc8s80zrb71l3c4is968cnr06ac5l9kmshz"))))
|
||||||
(build-system perl-build-system)
|
(build-system perl-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("perl-file-configdir" ,perl-file-configdir)
|
`(("perl-file-configdir" ,perl-file-configdir)
|
||||||
|
|
|
@ -69,14 +69,14 @@
|
||||||
(define-public libraw
|
(define-public libraw
|
||||||
(package
|
(package
|
||||||
(name "libraw")
|
(name "libraw")
|
||||||
(version "0.18.9")
|
(version "0.18.10")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://www.libraw.org/data/LibRaw-"
|
(uri (string-append "https://www.libraw.org/data/LibRaw-"
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0kmjfdr409k9q9n17k9ywims5z4kqc16s81ba7y09n7669q1gvyj"))))
|
"0klrzg1cn8ksxqbhx52dldi5bbmad190npnhhgkyr2jzpgrbpj88"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(home-page "https://www.libraw.org")
|
(home-page "https://www.libraw.org")
|
||||||
(synopsis "Raw image decoder")
|
(synopsis "Raw image decoder")
|
||||||
|
|
|
@ -179,14 +179,14 @@ colors, styles, options and details.")
|
||||||
(define-public asymptote
|
(define-public asymptote
|
||||||
(package
|
(package
|
||||||
(name "asymptote")
|
(name "asymptote")
|
||||||
(version "2.42")
|
(version "2.44")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://sourceforge/asymptote/"
|
(uri (string-append "mirror://sourceforge/asymptote/"
|
||||||
version "/asymptote-" version ".src.tgz"))
|
version "/asymptote-" version ".src.tgz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0dprc4shzdpvp87kc97ggh5ay2zmskjjaciay7mnblx63rhk1d95"))))
|
"1rs9v95g19ri6ra2m921jf2yr9avqnzfybrqxilsld98xpqx56vg"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
;; Note: The 'asy' binary retains a reference to docdir for use with its
|
;; Note: The 'asy' binary retains a reference to docdir for use with its
|
||||||
;; "help" command in interactive mode, so adding a "doc" output is not
|
;; "help" command in interactive mode, so adding a "doc" output is not
|
||||||
|
|
|
@ -2588,6 +2588,36 @@ sources.")
|
||||||
(propagated-inputs `(("python2-pytz" ,python2-pytz)
|
(propagated-inputs `(("python2-pytz" ,python2-pytz)
|
||||||
,@(package-propagated-inputs base))))))
|
,@(package-propagated-inputs base))))))
|
||||||
|
|
||||||
|
(define-public python-sphinx-gallery
|
||||||
|
(package
|
||||||
|
(name "python-sphinx-gallery")
|
||||||
|
(version "0.1.13")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "https://github.com/sphinx-gallery/sphinx-gallery"
|
||||||
|
"/archive/v" version ".tar.gz"))
|
||||||
|
(file-name (string-append name "-" version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"03fs99mcb1r7qp0xixqv07vcz98sk21yq19ffdysi0infdcpzfkd"))))
|
||||||
|
(build-system python-build-system)
|
||||||
|
(arguments
|
||||||
|
;; FIXME: Tests attempt to download <https://docs.python.org/3/objects.inv>,
|
||||||
|
;; <https://docs.scipy.org/doc/numpy/objects.inv>, and
|
||||||
|
;; <https://matplotlib.org/objects.inv>.
|
||||||
|
`(#:tests? #f))
|
||||||
|
(native-inputs
|
||||||
|
`(("python-pytest-runner" ,python-pytest-runner)))
|
||||||
|
(home-page "https://sphinx-gallery.github.io/")
|
||||||
|
(synopsis "Generate an examples gallery automatically")
|
||||||
|
(description
|
||||||
|
"@code{sphinx_gallery} is a Sphinx extension that builds an HTML version
|
||||||
|
from any set of Python scripts and puts it into an examples gallery.")
|
||||||
|
(license license:bsd-3)))
|
||||||
|
|
||||||
|
(define-public python2-sphinx-gallery
|
||||||
|
(package-with-python2 python-sphinx-gallery))
|
||||||
|
|
||||||
(define-public python-sphinx-rtd-theme
|
(define-public python-sphinx-rtd-theme
|
||||||
(package
|
(package
|
||||||
(name "python-sphinx-rtd-theme")
|
(name "python-sphinx-rtd-theme")
|
||||||
|
@ -2869,7 +2899,7 @@ between language specification and implementation aspects.")
|
||||||
(define-public python-numpy
|
(define-public python-numpy
|
||||||
(package
|
(package
|
||||||
(name "python-numpy")
|
(name "python-numpy")
|
||||||
(version "1.14.0")
|
(version "1.14.3")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -2878,7 +2908,7 @@ between language specification and implementation aspects.")
|
||||||
version "/numpy-" version ".tar.gz"))
|
version "/numpy-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1kh7y2ay21s9mcc11mq59g2f1yc75v152z2k2vlh0xmh9c9rjpf4"))))
|
"1yim2bxlycn4dhxmfxid6slplpmcb4ynhp411b37ahmsm2lwgkyg"))))
|
||||||
(build-system python-build-system)
|
(build-system python-build-system)
|
||||||
(inputs
|
(inputs
|
||||||
`(("openblas" ,openblas)
|
`(("openblas" ,openblas)
|
||||||
|
@ -3430,17 +3460,18 @@ convert between colorspaces like sRGB, XYZ, CIEL*a*b*, CIECAM02, CAM02-UCS, etc.
|
||||||
(define-public python-matplotlib
|
(define-public python-matplotlib
|
||||||
(package
|
(package
|
||||||
(name "python-matplotlib")
|
(name "python-matplotlib")
|
||||||
(version "2.0.2")
|
(version "2.2.2")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (pypi-uri "matplotlib" version))
|
(uri (pypi-uri "matplotlib" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1w8z2a1l7s72p1byfz7g03wqhygqxi8w82619dqb3a1lm97w9yqg"))))
|
"1s6dv225w3k4fv52h8lfjc7qq5y56i9755ayx0mz48ddi99fzisd"))))
|
||||||
(build-system python-build-system)
|
(build-system python-build-system)
|
||||||
(propagated-inputs ; the following packages are all needed at run time
|
(propagated-inputs ; the following packages are all needed at run time
|
||||||
`(("python-cycler" ,python-cycler)
|
`(("python-cycler" ,python-cycler)
|
||||||
|
("python-kiwisolver" ,python-kiwisolver)
|
||||||
("python-pyparsing" ,python-pyparsing)
|
("python-pyparsing" ,python-pyparsing)
|
||||||
("python-pygobject" ,python-pygobject)
|
("python-pygobject" ,python-pygobject)
|
||||||
("gobject-introspection" ,gobject-introspection)
|
("gobject-introspection" ,gobject-introspection)
|
||||||
|
@ -3520,6 +3551,8 @@ toolkits.")
|
||||||
;; of those automatically rewritten by package-with-python2.
|
;; of those automatically rewritten by package-with-python2.
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("python2-pycairo" ,python2-pycairo)
|
`(("python2-pycairo" ,python2-pycairo)
|
||||||
|
("python2-backports-functools-lru-cache"
|
||||||
|
,python2-backports-functools-lru-cache)
|
||||||
("python2-functools32" ,python2-functools32)
|
("python2-functools32" ,python2-functools32)
|
||||||
("python2-pygobject-2" ,python2-pygobject-2)
|
("python2-pygobject-2" ,python2-pygobject-2)
|
||||||
("python2-subprocess32" ,python2-subprocess32)
|
("python2-subprocess32" ,python2-subprocess32)
|
||||||
|
@ -3536,7 +3569,8 @@ toolkits.")
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("python-matplotlib" ,python-matplotlib)
|
`(("python-matplotlib" ,python-matplotlib)
|
||||||
("python-colorspacious" ,python-colorspacious)
|
("python-colorspacious" ,python-colorspacious)
|
||||||
("python-sphinx" ,python-sphinx)
|
("python-sphinx" ,python-sphinx-1.6)
|
||||||
|
("python-sphinx-gallery" ,python-sphinx-gallery)
|
||||||
("python-numpydoc" ,python-numpydoc)
|
("python-numpydoc" ,python-numpydoc)
|
||||||
("python-ipython" ,python-ipython)
|
("python-ipython" ,python-ipython)
|
||||||
("python-mock" ,python-mock)
|
("python-mock" ,python-mock)
|
||||||
|
@ -3559,7 +3593,7 @@ toolkits.")
|
||||||
(("latex_elements\\['pointsize'\\] = '11pt'" match)
|
(("latex_elements\\['pointsize'\\] = '11pt'" match)
|
||||||
;; insert at a point where latex_elements{} is defined:
|
;; insert at a point where latex_elements{} is defined:
|
||||||
(string-append match "\nlatex_elements['papersize'] = 'a4paper'")))
|
(string-append match "\nlatex_elements['papersize'] = 'a4paper'")))
|
||||||
(zero? (system* "python" "make.py" "html" "latex" "texinfo"))))
|
(invoke "make" "SPHINXBUILD=sphinx-build" "html" "latex" "texinfo")))
|
||||||
(replace 'install
|
(replace 'install
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
(let* ((data (string-append (assoc-ref outputs "out") "/share"))
|
(let* ((data (string-append (assoc-ref outputs "out") "/share"))
|
||||||
|
@ -3693,14 +3727,14 @@ functions.")
|
||||||
(define-public python-scipy
|
(define-public python-scipy
|
||||||
(package
|
(package
|
||||||
(name "python-scipy")
|
(name "python-scipy")
|
||||||
(version "1.0.0")
|
(version "1.0.1")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (pypi-uri "scipy" version))
|
(uri (pypi-uri "scipy" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"043djb3vyk6qripmyw30jhl0g8qza0fmar6wck10iv79l08izsl7"))))
|
"1fj0r7bg0cfk5clvl57ga06y9bfh05iwlv1dqqs1r6pd89wccfc7"))))
|
||||||
(build-system python-build-system)
|
(build-system python-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("python-numpy" ,python-numpy)
|
`(("python-numpy" ,python-numpy)
|
||||||
|
@ -10503,6 +10537,10 @@ a file-like object from which an arbitrarly-sized key can be read.")
|
||||||
`(("python-lxml" ,python-lxml) ; for SVG output
|
`(("python-lxml" ,python-lxml) ; for SVG output
|
||||||
("python-pillow" ,python-pillow) ; for PNG output
|
("python-pillow" ,python-pillow) ; for PNG output
|
||||||
("python-six" ,python-six)))
|
("python-six" ,python-six)))
|
||||||
|
(inputs
|
||||||
|
`(;; The setup.cfg file needs to be used, and support for this requires
|
||||||
|
;; at least version 30.3.0 of setuptools
|
||||||
|
("python-setuptools" ,python-setuptools)))
|
||||||
(home-page "https://github.com/lincolnloop/python-qrcode")
|
(home-page "https://github.com/lincolnloop/python-qrcode")
|
||||||
(synopsis "QR Code image generator")
|
(synopsis "QR Code image generator")
|
||||||
(description "This package provides a pure Python QR Code generator
|
(description "This package provides a pure Python QR Code generator
|
||||||
|
|
|
@ -1712,7 +1712,7 @@ contain over 620 classes.")
|
||||||
(define-public qscintilla
|
(define-public qscintilla
|
||||||
(package
|
(package
|
||||||
(name "qscintilla")
|
(name "qscintilla")
|
||||||
(version "2.10.2")
|
(version "2.10.3")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://sourceforge/pyqt/QScintilla2/"
|
(uri (string-append "mirror://sourceforge/pyqt/QScintilla2/"
|
||||||
|
@ -1720,7 +1720,7 @@ contain over 620 classes.")
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1l2ylsv6s3wfhyx7qr5cxgkwwwhvbrpd2k7akgm9bvbyf4h1vcql"))))
|
"1rw1nlwnyzj5pb86cc5kk56qhrvwvrjvjzgrkwh3g7b9wxl7lrfj"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases
|
`(#:phases
|
||||||
|
|
|
@ -1005,13 +1005,13 @@ interfaces.")
|
||||||
(define-public ruby-lumberjack
|
(define-public ruby-lumberjack
|
||||||
(package
|
(package
|
||||||
(name "ruby-lumberjack")
|
(name "ruby-lumberjack")
|
||||||
(version "1.0.12")
|
(version "1.0.13")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (rubygems-uri "lumberjack" version))
|
(uri (rubygems-uri "lumberjack" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0yz26k9mi0djx1qvlmvdw1xw2yf7a2rkfmnb2j0d28kms33xpibp"))))
|
"06im7gcg42x77yhz2w5da2ly9xz0n0c36y5ks7xs53v0l9g0vf5n"))))
|
||||||
(build-system ruby-build-system)
|
(build-system ruby-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("ruby-rspec" ,ruby-rspec)
|
`(("ruby-rspec" ,ruby-rspec)
|
||||||
|
@ -2068,14 +2068,14 @@ instance, it provides @code{assert_true}, @code{assert_false} and
|
||||||
(define-public ruby-minitest-hooks
|
(define-public ruby-minitest-hooks
|
||||||
(package
|
(package
|
||||||
(name "ruby-minitest-hooks")
|
(name "ruby-minitest-hooks")
|
||||||
(version "1.4.1")
|
(version "1.4.2")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (rubygems-uri "minitest-hooks" version))
|
(uri (rubygems-uri "minitest-hooks" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"05bngfyxwq1cflk568nhddgfrmws5ff6kiqax4skklsjnh71ykbi"))))
|
"0lnpvzijbjrvxjc43d155jnbk2mkfshrz22an711wh004scavlzc"))))
|
||||||
(build-system ruby-build-system)
|
(build-system ruby-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:test-target "spec"))
|
'(#:test-target "spec"))
|
||||||
|
@ -2924,13 +2924,13 @@ a native C extension.")
|
||||||
(define-public ruby-rb-fsevent
|
(define-public ruby-rb-fsevent
|
||||||
(package
|
(package
|
||||||
(name "ruby-rb-fsevent")
|
(name "ruby-rb-fsevent")
|
||||||
(version "0.10.2")
|
(version "0.10.3")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (rubygems-uri "rb-fsevent" version))
|
(uri (rubygems-uri "rb-fsevent" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1fbpmjypwxkb8r7y1kmhmyp6gawa4byw0yb3jc3dn9ly4ld9lizf"))))
|
"1lm1k7wpz69jx7jrc92w3ggczkjyjbfziq5mg62vjnxmzs383xx8"))))
|
||||||
(build-system ruby-build-system)
|
(build-system ruby-build-system)
|
||||||
;; Tests need "guard-rspec", which needs "guard". However, "guard" needs
|
;; Tests need "guard-rspec", which needs "guard". However, "guard" needs
|
||||||
;; "listen", which needs "rb-fsevent" at runtime.
|
;; "listen", which needs "rb-fsevent" at runtime.
|
||||||
|
@ -3694,17 +3694,17 @@ application.")
|
||||||
(define-public ruby-eventmachine
|
(define-public ruby-eventmachine
|
||||||
(package
|
(package
|
||||||
(name "ruby-eventmachine")
|
(name "ruby-eventmachine")
|
||||||
(version "1.2.5")
|
(version "1.2.6")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (rubygems-uri "eventmachine" version))
|
(uri (rubygems-uri "eventmachine" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"075hdw0fgzldgss3xaqm2dk545736khcvv1fmzbf1sgdlkyh1v8z"))))
|
"08477hl609rmmngwfy8dmsqz5zvsg8xrsrrk6xi70jf48majwli0"))))
|
||||||
(build-system ruby-build-system)
|
(build-system ruby-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:tests? #f)) ; test suite tries to connect to google.com
|
'(#:tests? #f)) ; test suite tries to connect to google.com
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("ruby-rake-compiler" ,ruby-rake-compiler)))
|
`(("ruby-rake-compiler" ,ruby-rake-compiler)))
|
||||||
(synopsis "Single-threaded network event framework for Ruby")
|
(synopsis "Single-threaded network event framework for Ruby")
|
||||||
|
@ -3882,14 +3882,14 @@ definitions.")
|
||||||
(define-public ruby-fivemat
|
(define-public ruby-fivemat
|
||||||
(package
|
(package
|
||||||
(name "ruby-fivemat")
|
(name "ruby-fivemat")
|
||||||
(version "1.3.5")
|
(version "1.3.6")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (rubygems-uri "fivemat" version))
|
(uri (rubygems-uri "fivemat" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0ij7n250gk5c1g34rsbwjnpcv64gk4vsas8lkz8fac4wbygvk6z1"))))
|
"006n7b09vviv5bs5hv2ccmjxw9iw3brcsm3xh3dhzfncsknz4jp7"))))
|
||||||
(build-system ruby-build-system)
|
(build-system ruby-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:tests? #f)) ; no tests
|
`(#:tests? #f)) ; no tests
|
||||||
|
|
|
@ -150,14 +150,14 @@ anywhere.")
|
||||||
(define-public samba
|
(define-public samba
|
||||||
(package
|
(package
|
||||||
(name "samba")
|
(name "samba")
|
||||||
(version "4.7.7")
|
(version "4.8.1")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://download.samba.org/pub/samba/stable/"
|
(uri (string-append "https://download.samba.org/pub/samba/stable/"
|
||||||
"samba-" version ".tar.gz"))
|
"samba-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0c81x2ncnvz3mi6fjj81clm1mh049d3ip3fj031l44qclxpx3yi9"))))
|
"17bqgxyv34hjnb4hfamag75gwhqipp6mpvba5xg7lszi0xskdxwf"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases
|
`(#:phases
|
||||||
|
@ -192,8 +192,8 @@ anywhere.")
|
||||||
(add-before 'install 'disable-etc-samba-directory-creation
|
(add-before 'install 'disable-etc-samba-directory-creation
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "dynconfig/wscript"
|
(substitute* "dynconfig/wscript"
|
||||||
(("bld\\.INSTALL_DIRS\\(\"\",[[:blank:]]{1,}\"\\$\\{CONFIGDIR\\}[[:blank:]]{1,}")
|
(("bld\\.INSTALL_DIR\\(\"\\$\\{CONFIGDIR\\}\"\\)")
|
||||||
"bld.INSTALL_DIRS(\"\", \""))
|
""))
|
||||||
#t)))
|
#t)))
|
||||||
;; XXX: The test infrastructure attempts to set password with
|
;; XXX: The test infrastructure attempts to set password with
|
||||||
;; smbpasswd, which fails with "smbpasswd -L can only be used by root."
|
;; smbpasswd, which fails with "smbpasswd -L can only be used by root."
|
||||||
|
@ -206,14 +206,16 @@ anywhere.")
|
||||||
("gnutls" ,gnutls)
|
("gnutls" ,gnutls)
|
||||||
("iniparser" ,iniparser)
|
("iniparser" ,iniparser)
|
||||||
("libaio" ,libaio)
|
("libaio" ,libaio)
|
||||||
("ldb" ,ldb)
|
|
||||||
("linux-pam" ,linux-pam)
|
("linux-pam" ,linux-pam)
|
||||||
("openldap" ,openldap)
|
("openldap" ,openldap)
|
||||||
("popt" ,popt)
|
("popt" ,popt)
|
||||||
("readline" ,readline)
|
("readline" ,readline)
|
||||||
("talloc" ,talloc)
|
|
||||||
("tevent" ,tevent)
|
|
||||||
("tdb" ,tdb)))
|
("tdb" ,tdb)))
|
||||||
|
(propagated-inputs
|
||||||
|
;; In Requires or Requires.private of pkg-config files.
|
||||||
|
`(("ldb" ,ldb)
|
||||||
|
("talloc" ,talloc)
|
||||||
|
("tevent" ,tevent)))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("docbook-xsl" ,docbook-xsl) ;for generating manpages
|
`(("docbook-xsl" ,docbook-xsl) ;for generating manpages
|
||||||
("xsltproc" ,libxslt) ;ditto
|
("xsltproc" ,libxslt) ;ditto
|
||||||
|
@ -340,14 +342,14 @@ many event types, including timers, signals, and the classic file descriptor eve
|
||||||
(define-public ldb
|
(define-public ldb
|
||||||
(package
|
(package
|
||||||
(name "ldb")
|
(name "ldb")
|
||||||
(version "1.3.2")
|
(version "1.3.3")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://www.samba.org/ftp/ldb/ldb-"
|
(uri (string-append "https://www.samba.org/ftp/ldb/ldb-"
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1avn4fl393kc80krbc47phbp0argdkys62ycs8vm934a6nvz0gnf"))))
|
"14gsrm7dvyjpbpnc60z75j6fz2p187abm2h353lq95kx2bv70c1b"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:phases
|
'(#:phases
|
||||||
|
|
|
@ -6,6 +6,7 @@
|
||||||
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
|
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
|
||||||
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||||
|
;;; Copyright © 2018 Chris Marusich <cmmarusich@gmail.com>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -31,14 +32,20 @@
|
||||||
#:use-module (guix build-system glib-or-gtk)
|
#:use-module (guix build-system glib-or-gtk)
|
||||||
#:use-module (gnu packages autotools)
|
#:use-module (gnu packages autotools)
|
||||||
#:use-module (gnu packages curl)
|
#:use-module (gnu packages curl)
|
||||||
|
#:use-module (gnu packages check)
|
||||||
|
#:use-module (gnu packages docbook)
|
||||||
|
#:use-module (gnu packages documentation)
|
||||||
#:use-module (gnu packages gettext)
|
#:use-module (gnu packages gettext)
|
||||||
|
#:use-module (gnu packages graphviz)
|
||||||
#:use-module (gnu packages gtk)
|
#:use-module (gnu packages gtk)
|
||||||
#:use-module (gnu packages libusb)
|
#:use-module (gnu packages libusb)
|
||||||
#:use-module (gnu packages linux)
|
#:use-module (gnu packages linux)
|
||||||
#:use-module (gnu packages man)
|
#:use-module (gnu packages man)
|
||||||
#:use-module (gnu packages networking)
|
#:use-module (gnu packages networking)
|
||||||
#:use-module (gnu packages cyrus-sasl)
|
#:use-module (gnu packages cyrus-sasl)
|
||||||
|
#:use-module (gnu packages readline)
|
||||||
#:use-module (gnu packages tls)
|
#:use-module (gnu packages tls)
|
||||||
|
#:use-module (gnu packages tex)
|
||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages xml))
|
#:use-module (gnu packages xml))
|
||||||
|
@ -202,3 +209,86 @@ one-time-password (OTP) YubiKey against Yubico’s servers. See the Yubico
|
||||||
website for more information about Yubico and the YubiKey.")
|
website for more information about Yubico and the YubiKey.")
|
||||||
(home-page "https://developers.yubico.com/yubico-c-client/")
|
(home-page "https://developers.yubico.com/yubico-c-client/")
|
||||||
(license license:bsd-2)))
|
(license license:bsd-2)))
|
||||||
|
|
||||||
|
(define-public opensc
|
||||||
|
(package
|
||||||
|
(name "opensc")
|
||||||
|
(version "0.17.0")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append
|
||||||
|
"https://github.com/OpenSC/OpenSC/releases/download/"
|
||||||
|
version "/opensc-" version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0043jh5g7q2lyd5vnb0akwb5y349isx7vbm9wqhlgav7d20wcwxy"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
;; By setting an absolute path here, we arrange for OpenSC to
|
||||||
|
;; successfully dlopen libpcsclite.so.1 by default. The user can
|
||||||
|
;; still override this if they want to, by specifying a custom OpenSC
|
||||||
|
;; configuration file at runtime.
|
||||||
|
(add-after 'unpack 'set-default-libpcsclite.so.1-path
|
||||||
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
(let ((libpcsclite (string-append (assoc-ref inputs "pcsc-lite")
|
||||||
|
"/lib/libpcsclite.so.1")))
|
||||||
|
(substitute* "configure"
|
||||||
|
(("DEFAULT_PCSC_PROVIDER=\"libpcsclite\\.so\\.1\"")
|
||||||
|
(string-append
|
||||||
|
"DEFAULT_PCSC_PROVIDER=\"" libpcsclite "\"")))
|
||||||
|
#t))))))
|
||||||
|
(inputs
|
||||||
|
`(("readline" ,readline)
|
||||||
|
("openssl" ,openssl)
|
||||||
|
("pcsc-lite" ,pcsc-lite)
|
||||||
|
("ccid" ,ccid)))
|
||||||
|
(native-inputs
|
||||||
|
`(("libxslt" ,libxslt)
|
||||||
|
("docbook-xsl" ,docbook-xsl)
|
||||||
|
("pkg-config" ,pkg-config)))
|
||||||
|
(home-page "https://github.com/OpenSC/OpenSC/wiki")
|
||||||
|
(synopsis "Tools and libraries related to smart cards")
|
||||||
|
(description
|
||||||
|
"OpenSC is a set of software tools and libraries to work with smart
|
||||||
|
cards, with the focus on smart cards with cryptographic capabilities. OpenSC
|
||||||
|
facilitate the use of smart cards in security applications such as
|
||||||
|
authentication, encryption and digital signatures. OpenSC implements the PKCS
|
||||||
|
#15 standard and the PKCS #11 API.")
|
||||||
|
(license license:lgpl2.1+)))
|
||||||
|
|
||||||
|
(define-public yubico-piv-tool
|
||||||
|
(package
|
||||||
|
(name "yubico-piv-tool")
|
||||||
|
(version "1.5.0")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append
|
||||||
|
"https://developers.yubico.com/yubico-piv-tool/Releases/"
|
||||||
|
name "-" version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1axa0lnky5gsc8yack6mpfbjh49z0czr1cv52gbgjnx2kcbpb0y1"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(inputs
|
||||||
|
`(("perl" ,perl)
|
||||||
|
("pcsc-lite" ,pcsc-lite)
|
||||||
|
("openssl" ,openssl)))
|
||||||
|
(native-inputs
|
||||||
|
`(("doxygen" ,doxygen)
|
||||||
|
("graphviz" ,graphviz)
|
||||||
|
("check" ,check)
|
||||||
|
("texlive-bin" ,texlive-bin)
|
||||||
|
("pkg-config" ,pkg-config)))
|
||||||
|
(home-page "https://developers.yubico.com/yubico-piv-tool/")
|
||||||
|
(synopsis "Interact with the PIV application on a YubiKey")
|
||||||
|
(description
|
||||||
|
"The Yubico PIV tool is used for interacting with the Privilege and
|
||||||
|
Identification Card (PIV) application on a YubiKey. With it you may generate
|
||||||
|
keys on the device, import keys and certificates, create certificate requests,
|
||||||
|
and other operations. It includes a library and a command-line tool.")
|
||||||
|
;; The file ykcs11/pkcs11.h also declares an additional, very short free
|
||||||
|
;; license for that one file. Please see it for details. The vast
|
||||||
|
;; majority of files are licensed under bsd-2.
|
||||||
|
(license license:bsd-2)))
|
||||||
|
|
|
@ -248,7 +248,7 @@ that implements both the msgpack and msgpack-rpc specifications.")
|
||||||
(define-public yaml-cpp
|
(define-public yaml-cpp
|
||||||
(package
|
(package
|
||||||
(name "yaml-cpp")
|
(name "yaml-cpp")
|
||||||
(version "0.6.1")
|
(version "0.6.2")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
|
@ -256,12 +256,10 @@ that implements both the msgpack and msgpack-rpc specifications.")
|
||||||
"yaml-cpp-" version ".tar.gz"))
|
"yaml-cpp-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"038ddf771d1zrdfiwqzq2lsjdis1fxbaasbdja2w9f1av3k3gv15"))))
|
"01gxn7kc8pzyh4aadjxxzq8cignmbwmm9rfrsmgqfg9w2q75dn74"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:configure-flags '("-DBUILD_SHARED_LIBS=ON")))
|
'(#:configure-flags '("-DBUILD_SHARED_LIBS=ON")))
|
||||||
(inputs
|
|
||||||
`(("boost" ,boost)))
|
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("python" ,python)))
|
`(("python" ,python)))
|
||||||
(home-page "https://github.com/jbeder/yaml-cpp")
|
(home-page "https://github.com/jbeder/yaml-cpp")
|
||||||
|
|
|
@ -356,14 +356,14 @@ ksh, and tcsh.")
|
||||||
(define-public xonsh
|
(define-public xonsh
|
||||||
(package
|
(package
|
||||||
(name "xonsh")
|
(name "xonsh")
|
||||||
(version "0.6.1")
|
(version "0.6.2")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (pypi-uri "xonsh" version))
|
(uri (pypi-uri "xonsh" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"09rrfcwpirbxmjjqnsbyn7lwm1wyn41z5zhkbnv57i5hcgs72kx6"))
|
"0c2bbmdg0n10q54vq9k1z5n53l0mh1hb1q5xprfhilvrbr6hlcwr"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
`(begin
|
`(begin
|
||||||
|
|
|
@ -444,16 +444,15 @@ particularly useful for embedded systems, such as wireless routers.")
|
||||||
(define-public liboop
|
(define-public liboop
|
||||||
(package
|
(package
|
||||||
(name "liboop")
|
(name "liboop")
|
||||||
(version "1.0")
|
(version "1.0.1")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "http://download.ofb.net/liboop/liboop-"
|
(uri (string-append "http://ftp.lysator.liu.se/pub/liboop/"
|
||||||
version ".tar.gz"))
|
name "-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0z6rlalhvfca64jpvksppc9bdhs7jwhiw4y35g5ibvh91xp3rn1l"))
|
"1q0p1l72pq9k3bi7a366j2rishv7dzzkg3i6r2npsfg7cnnidbsn"))))
|
||||||
(patches (search-patches "liboop-mips64-deplibs-fix.patch"))))
|
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(home-page "http://www.lysator.liu.se/liboop/")
|
(home-page "http://www.lysator.liu.se/liboop/")
|
||||||
(synopsis "Event loop library")
|
(synopsis "Event loop library")
|
||||||
|
|
|
@ -318,14 +318,14 @@ D.V. Hinkley (1997, CUP), originally written by Angelo Canty for S.")
|
||||||
(define-public r-mass
|
(define-public r-mass
|
||||||
(package
|
(package
|
||||||
(name "r-mass")
|
(name "r-mass")
|
||||||
(version "7.3-49")
|
(version "7.3-50")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "MASS" version))
|
(uri (cran-uri "MASS" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1yjbnj1p4z0vw84wga8q5fyqiw4n6r7pc6rdwam7vsbiamyzfcqs"))))
|
"16hasv9k4n773jsyzvh8s3gbga49hwdj8n5hxij6zqisy4i0kxq6"))))
|
||||||
(properties `((upstream-name . "MASS")))
|
(properties `((upstream-name . "MASS")))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(home-page "http://www.stats.ox.ac.uk/pub/MASS4/")
|
(home-page "http://www.stats.ox.ac.uk/pub/MASS4/")
|
||||||
|
@ -939,14 +939,14 @@ solution for sending email, including attachments, from within R.")
|
||||||
(define-public r-stringi
|
(define-public r-stringi
|
||||||
(package
|
(package
|
||||||
(name "r-stringi")
|
(name "r-stringi")
|
||||||
(version "1.1.7")
|
(version "1.2.2")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "stringi" version))
|
(uri (cran-uri "stringi" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0nck1s2iglmkrn15ay2chrrwsy5lngcylz2sc87fxy5skxaahxdl"))))
|
"1z8yqnh3alq0xriz77vifgl27msf3av6maz07fld78m90ajb6y8r"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(inputs `(("icu4c" ,icu4c)))
|
(inputs `(("icu4c" ,icu4c)))
|
||||||
(native-inputs `(("pkg-config" ,pkg-config)))
|
(native-inputs `(("pkg-config" ,pkg-config)))
|
||||||
|
@ -1188,13 +1188,13 @@ evaluation (NSE) in R.")
|
||||||
(define-public r-dbi
|
(define-public r-dbi
|
||||||
(package
|
(package
|
||||||
(name "r-dbi")
|
(name "r-dbi")
|
||||||
(version "0.8")
|
(version "1.0.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "DBI" version))
|
(uri (cran-uri "DBI" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"16nf8flxr5vdz8yrpprfbzydy3ajixkp9hc8ibd9n7r9nc29waym"))))
|
"1x8wy2vg2gcgd9bww04qmf0dsn3kp0rfjd8q8j1r2x9zxccg25pz"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(home-page "https://github.com/rstats-db/DBI")
|
(home-page "https://github.com/rstats-db/DBI")
|
||||||
(synopsis "R database interface")
|
(synopsis "R database interface")
|
||||||
|
@ -1331,13 +1331,13 @@ syntax that can be converted to XHTML or other formats.")
|
||||||
(define-public r-yaml
|
(define-public r-yaml
|
||||||
(package
|
(package
|
||||||
(name "r-yaml")
|
(name "r-yaml")
|
||||||
(version "2.1.18")
|
(version "2.1.19")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "yaml" version))
|
(uri (cran-uri "yaml" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"15m4q5krfqg0avvqg9i2g6ns4757lk6zbyrwbx5c5bgh51glvd8v"))))
|
"04bzrnfgbpk0rhkvzwp3k3ip7jpq26bjxz71bx5mwxmcjdb07nz5"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(home-page "https://cran.r-project.org/web/packages/yaml/")
|
(home-page "https://cran.r-project.org/web/packages/yaml/")
|
||||||
(synopsis "Methods to convert R data to YAML and back")
|
(synopsis "Methods to convert R data to YAML and back")
|
||||||
|
@ -1681,14 +1681,14 @@ transformations.")
|
||||||
(define-public r-formula
|
(define-public r-formula
|
||||||
(package
|
(package
|
||||||
(name "r-formula")
|
(name "r-formula")
|
||||||
(version "1.2-2")
|
(version "1.2-3")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "Formula" version))
|
(uri (cran-uri "Formula" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0ad49bzip1zqmpj1d8jajwl4bd81fm3k6dq8p26x6mvlzc04dvwd"))))
|
"0wiqh8rr9d5ciy80wj8f5fnmiiw0ywanvvnhkwd622dx42dk848l"))))
|
||||||
(properties `((upstream-name . "Formula")))
|
(properties `((upstream-name . "Formula")))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(home-page "https://cran.r-project.org/web/packages/Formula")
|
(home-page "https://cran.r-project.org/web/packages/Formula")
|
||||||
|
@ -1742,13 +1742,13 @@ times.")
|
||||||
(define-public r-data-table
|
(define-public r-data-table
|
||||||
(package
|
(package
|
||||||
(name "r-data-table")
|
(name "r-data-table")
|
||||||
(version "1.10.4-3")
|
(version "1.11.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "data.table" version))
|
(uri (cran-uri "data.table" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"12caklgr19vy9wprdks6zh825vr1iw1cajgwcnbpyvmijqdlz2xs"))))
|
"0n1p35c9sni2272ykxsfbsy7xma62br7v668a5bvc37g75xf10df"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(home-page "https://github.com/Rdatatable/data.table/wiki")
|
(home-page "https://github.com/Rdatatable/data.table/wiki")
|
||||||
(synopsis "Enhanced version of data.frame R object")
|
(synopsis "Enhanced version of data.frame R object")
|
||||||
|
@ -2157,14 +2157,14 @@ module, Java Server Pages, and Python's psp module.")
|
||||||
(define-public r-desc
|
(define-public r-desc
|
||||||
(package
|
(package
|
||||||
(name "r-desc")
|
(name "r-desc")
|
||||||
(version "1.1.1")
|
(version "1.2.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "desc" version))
|
(uri (cran-uri "desc" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0k07qighac1xzmm8k988zi7i88a0yfvia3gk5hbz0fyvb2v9kzrj"))))
|
"1s6s13fk6sxwcj8wzkwxl9vr33153xx11p5wi9avqx3rzkabavz6"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("r-assertthat" ,r-assertthat)
|
`(("r-assertthat" ,r-assertthat)
|
||||||
|
@ -2182,14 +2182,14 @@ other packages.")
|
||||||
(define-public r-commonmark
|
(define-public r-commonmark
|
||||||
(package
|
(package
|
||||||
(name "r-commonmark")
|
(name "r-commonmark")
|
||||||
(version "1.4")
|
(version "1.5")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "commonmark" version))
|
(uri (cran-uri "commonmark" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1vb8r9khpvcf0q7acv8rsplfjjwcll302bg5kp596cvn6aacypl6"))))
|
"1jwx5rgm0ypd9a3v4jd9za4a644rdzhk1n4dvmgkj9hdpwsida3z"))))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(home-page "https://cran.r-project.org/web/packages/commonmark")
|
(home-page "https://cran.r-project.org/web/packages/commonmark")
|
||||||
(synopsis "CommonMark and Github Markdown Rendering in R")
|
(synopsis "CommonMark and Github Markdown Rendering in R")
|
||||||
|
@ -2482,13 +2482,13 @@ well as additional utilities such as panel and axis annotation functions.")
|
||||||
(define-public r-rcpparmadillo
|
(define-public r-rcpparmadillo
|
||||||
(package
|
(package
|
||||||
(name "r-rcpparmadillo")
|
(name "r-rcpparmadillo")
|
||||||
(version "0.8.400.0.0")
|
(version "0.8.500.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (cran-uri "RcppArmadillo" version))
|
(uri (cran-uri "RcppArmadillo" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"11y2ksf46zw6fcz0kk70szyfn7qqxwwd33xylrxvnyb7ldmbc5yr"))))
|
"1sh36dx6inmb56m40nigy94gxlgjva816qnlmjwg7y2bdvqj8vsi"))))
|
||||||
(properties `((upstream-name . "RcppArmadillo")))
|
(properties `((upstream-name . "RcppArmadillo")))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
|
@ -3986,14 +3986,14 @@ hierarchical clustering dendrograms.")
|
||||||
(define-public r-preprocesscore
|
(define-public r-preprocesscore
|
||||||
(package
|
(package
|
||||||
(name "r-preprocesscore")
|
(name "r-preprocesscore")
|
||||||
(version "1.40.0")
|
(version "1.42.0")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (bioconductor-uri "preprocessCore" version))
|
(uri (bioconductor-uri "preprocessCore" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0mrdgbkb9dcfr9gsqyxfpshnxx60mq97pl98b8yl00l2gfwz48ph"))))
|
"1afar1z7959v7mbzsqa77vqfh0yc7y3nv5ayx71485a8scwsfwbk"))))
|
||||||
(properties
|
(properties
|
||||||
`((upstream-name . "preprocessCore")))
|
`((upstream-name . "preprocessCore")))
|
||||||
(build-system r-build-system)
|
(build-system r-build-system)
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
(define-public syncthing
|
(define-public syncthing
|
||||||
(package
|
(package
|
||||||
(name "syncthing")
|
(name "syncthing")
|
||||||
(version "0.14.46")
|
(version "0.14.47")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://github.com/syncthing/syncthing"
|
(uri (string-append "https://github.com/syncthing/syncthing"
|
||||||
|
@ -37,7 +37,7 @@
|
||||||
"/syncthing-source-v" version ".tar.gz"))
|
"/syncthing-source-v" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0h5b2mp0li0qzrz3wggzavdfqfaz9b79hx6wds84ya2i9maw80cl"))
|
"1wz6cwq3la5676z1c20sh4fykmjwhs410xzcnb2jfyzaldf57cwj"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
;; Delete bundled ("vendored") free software source code.
|
;; Delete bundled ("vendored") free software source code.
|
||||||
(snippet '(begin
|
(snippet '(begin
|
||||||
|
@ -145,7 +145,7 @@
|
||||||
("go-golang-org-x-net-union" ,(go-golang-org-x-net-union))
|
("go-golang-org-x-net-union" ,(go-golang-org-x-net-union))
|
||||||
("go-golang-org-x-text" ,(go-golang-org-x-text-union))
|
("go-golang-org-x-text" ,(go-golang-org-x-text-union))
|
||||||
("go-golang-org-x-time-rate" ,go-golang-org-x-time-rate)
|
("go-golang-org-x-time-rate" ,go-golang-org-x-time-rate)
|
||||||
("go-github-com-zillode-notify" ,go-github-com-zillode-notify)
|
("go-github-com-syncthing-notify" ,go-github-com-syncthing-notify)
|
||||||
;; For tests
|
;; For tests
|
||||||
("go-github-com-d4l3k-messagediff" ,go-github-com-d4l3k-messagediff)))
|
("go-github-com-d4l3k-messagediff" ,go-github-com-d4l3k-messagediff)))
|
||||||
(synopsis "Decentralized continuous file system synchronization")
|
(synopsis "Decentralized continuous file system synchronization")
|
||||||
|
@ -507,7 +507,10 @@ address of the default LAN gateway.")
|
||||||
"056dkgxrqjj5r18bnc3knlpgdz5p3yvp12y4y978hnsfhwaqvbjz"))))
|
"056dkgxrqjj5r18bnc3knlpgdz5p3yvp12y4y978hnsfhwaqvbjz"))))
|
||||||
(build-system go-build-system)
|
(build-system go-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:import-path "github.com/kardianos/osext"))
|
`(#:import-path "github.com/kardianos/osext"
|
||||||
|
;; The tests are flaky:
|
||||||
|
;; <https://github.com/kardianos/osext/issues/21>
|
||||||
|
#:tests? #f))
|
||||||
(synopsis "Find the running executable")
|
(synopsis "Find the running executable")
|
||||||
(description "Osext provides a method for finding the current executable
|
(description "Osext provides a method for finding the current executable
|
||||||
file that is running. This can be used for upgrading the current executable or
|
file that is running. This can be used for upgrading the current executable or
|
||||||
|
@ -910,7 +913,6 @@ libraries are in the same directory.")
|
||||||
(define* (go-golang-org-x-net-union #:optional
|
(define* (go-golang-org-x-net-union #:optional
|
||||||
(packages (list go-golang-org-x-net-ipv4
|
(packages (list go-golang-org-x-net-ipv4
|
||||||
go-golang-org-x-net-bpf
|
go-golang-org-x-net-bpf
|
||||||
go-golang-org-x-net-context
|
|
||||||
go-golang-org-x-net-ipv6
|
go-golang-org-x-net-ipv6
|
||||||
go-golang-org-x-net-proxy
|
go-golang-org-x-net-proxy
|
||||||
go-golang-org-x-net-internal-iana)))
|
go-golang-org-x-net-internal-iana)))
|
||||||
|
@ -1111,30 +1113,30 @@ using sh's word-splitting rules.")
|
||||||
(home-page "https://github.com/kballard/go-shellquote")
|
(home-page "https://github.com/kballard/go-shellquote")
|
||||||
(license expat))))
|
(license expat))))
|
||||||
|
|
||||||
(define-public go-github-com-zillode-notify
|
(define-public go-github-com-syncthing-notify
|
||||||
(let ((commit "53dd6873a851fc377c87d82f994b1fecdf25aadb")
|
(let ((commit "b9ceffc925039c77cd9e0d38f248279ccc4399e2")
|
||||||
(revision "3"))
|
(revision "0"))
|
||||||
(package
|
(package
|
||||||
(name "go-github-com-zillode-notify")
|
(name "go-github-com-syncthing-notify")
|
||||||
(version (git-version "0.0.0" revision commit))
|
(version (git-version "0.0.0" revision commit))
|
||||||
(source (origin
|
(source (origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
(url "https://github.com/calmh/notify")
|
(url "https://github.com/syncthing/notify")
|
||||||
(commit commit)))
|
(commit commit)))
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0ar6mj6s91y7hc5gdp88lz3i7xi29cqkx9f090xj899ir21a8djn"))))
|
"1scha9b2r35bvqzqx86sarzjxf72ywvj3g6n9pm3xq4i4xzpylxf"))))
|
||||||
(build-system go-build-system)
|
(build-system go-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:import-path "github.com/Zillode/notify"))
|
'(#:import-path "github.com/syncthing/notify"))
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
|
`(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
|
||||||
(synopsis "File system event notification library")
|
(synopsis "File system event notification library")
|
||||||
(description "This package provides @code{notify}, a file system event
|
(description "This package provides @code{notify}, a file system event
|
||||||
notification library in Go.")
|
notification library in Go.")
|
||||||
(home-page "https://github.com/zillode/notify")
|
(home-page "https://github.com/syncthing/notify")
|
||||||
(license expat))))
|
(license expat))))
|
||||||
|
|
||||||
(define-public go-github-com-beorn7-perks-quantile
|
(define-public go-github-com-beorn7-perks-quantile
|
||||||
|
|
|
@ -493,13 +493,13 @@ netcat implementation that supports TLS.")
|
||||||
(package
|
(package
|
||||||
(name "python-acme")
|
(name "python-acme")
|
||||||
;; Remember to update the hash of certbot when updating python-acme.
|
;; Remember to update the hash of certbot when updating python-acme.
|
||||||
(version "0.23.0")
|
(version "0.24.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (pypi-uri "acme" version))
|
(uri (pypi-uri "acme" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0l257dq1i2gka6ynldidpwaz1aa726643crqqckga1w5awsndh88"))))
|
"1jq1nlly5146k08dw31fc1pw78plya5jswznnd512c08giif0mfn"))))
|
||||||
(build-system python-build-system)
|
(build-system python-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases
|
`(#:phases
|
||||||
|
@ -548,7 +548,7 @@ netcat implementation that supports TLS.")
|
||||||
(uri (pypi-uri name version))
|
(uri (pypi-uri name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0gh5fr61c3mj5vdkn68k17wcvri9rdj506cmmz6631i2l5flrzvc"))))
|
"0w3dbz74rpabjnc3l3ybnzjdypbr65lsjqf9yn243b5kid9d8wm0"))))
|
||||||
(build-system python-build-system)
|
(build-system python-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(,@(substitute-keyword-arguments (package-arguments python-acme)
|
`(,@(substitute-keyword-arguments (package-arguments python-acme)
|
||||||
|
@ -634,18 +634,20 @@ servers or clients for more complicated applications.")
|
||||||
(define-public perl-crypt-openssl-rsa
|
(define-public perl-crypt-openssl-rsa
|
||||||
(package
|
(package
|
||||||
(name "perl-crypt-openssl-rsa")
|
(name "perl-crypt-openssl-rsa")
|
||||||
(version "0.28")
|
(version "0.30")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
"mirror://cpan/authors/id/P/PE/PERLER/Crypt-OpenSSL-RSA-"
|
"mirror://cpan/authors/id/T/TO/TODDR/Crypt-OpenSSL-RSA-"
|
||||||
version
|
version
|
||||||
".tar.gz"))
|
".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1gnpvv09b2gpifwdzc5jnhama3d1a4c39lzj9hcaicsb8rvzjmsk"))))
|
"1b19kaaw4wda8dy6kjiwqa2prpbs2dqcyjyj9zdh5wbs74qkbq93"))))
|
||||||
(build-system perl-build-system)
|
(build-system perl-build-system)
|
||||||
|
(native-inputs
|
||||||
|
`(("perl-crypt-openssl-guess" ,perl-crypt-openssl-guess)))
|
||||||
(inputs
|
(inputs
|
||||||
`(("perl-crypt-openssl-bignum" ,perl-crypt-openssl-bignum)
|
`(("perl-crypt-openssl-bignum" ,perl-crypt-openssl-bignum)
|
||||||
("perl-crypt-openssl-random" ,perl-crypt-openssl-random)
|
("perl-crypt-openssl-random" ,perl-crypt-openssl-random)
|
||||||
|
@ -793,7 +795,7 @@ then ported to the GNU / Linux environment.")
|
||||||
(define-public mbedtls-apache
|
(define-public mbedtls-apache
|
||||||
(package
|
(package
|
||||||
(name "mbedtls-apache")
|
(name "mbedtls-apache")
|
||||||
(version "2.7.2")
|
(version "2.7.3")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -803,7 +805,7 @@ then ported to the GNU / Linux environment.")
|
||||||
version "-apache.tgz"))
|
version "-apache.tgz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1mvkqlxxvl6yp1g5g9dk4l7h3wl6149p3pfwgwzgs7xybyxw4f7x"))))
|
"0rfpcc4i01qsl66iy1z9vaw00s34h4qgx3r41i1v5vazv7vjla05"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:configure-flags
|
`(#:configure-flags
|
||||||
|
|
|
@ -29,14 +29,14 @@
|
||||||
(define-public miniupnpc
|
(define-public miniupnpc
|
||||||
(package
|
(package
|
||||||
(name "miniupnpc")
|
(name "miniupnpc")
|
||||||
(version "2.0.20180410")
|
(version "2.0.20180503")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://miniupnp.tuxfamily.org/files/"
|
(uri (string-append "https://miniupnp.tuxfamily.org/files/"
|
||||||
name "-" version ".tar.gz"))
|
name "-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "08vs9012bahdwid4nsf3mi2kawcq1hvz7lzpdmiynxcbpip6sk0f"))))
|
(base32 "0dv906ibjdrv4wfrccj36z3lvpvgmcg0dwakhi66fqg6y5l97a5k"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("python" ,python-2)))
|
`(("python" ,python-2)))
|
||||||
|
|
|
@ -564,7 +564,8 @@ libebml is a C++ library to read and write EBML files.")
|
||||||
("libx11" ,libx11)
|
("libx11" ,libx11)
|
||||||
("libxext" ,libxext)
|
("libxext" ,libxext)
|
||||||
("libxfixes" ,libxfixes)
|
("libxfixes" ,libxfixes)
|
||||||
("mesa" ,mesa)))
|
("mesa" ,mesa)
|
||||||
|
("wayland" ,wayland)))
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases
|
`(#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
|
|
|
@ -383,14 +383,14 @@ manage system or application containers.")
|
||||||
(define-public libvirt
|
(define-public libvirt
|
||||||
(package
|
(package
|
||||||
(name "libvirt")
|
(name "libvirt")
|
||||||
(version "4.2.0")
|
(version "4.3.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
|
||||||
"0nq1iz5iic466qahp0i8dlvyd6li0b0pdrvvrz9286l12x2fm61s"))))
|
"1dy243dqaj174hcka0my7q781wf0dvyi7f9328nwnplqicnf4cd5"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(;; FAIL: virshtest
|
`(;; FAIL: virshtest
|
||||||
|
|
|
@ -519,7 +519,7 @@ data.")
|
||||||
(define-public json-c
|
(define-public json-c
|
||||||
(package
|
(package
|
||||||
(name "json-c")
|
(name "json-c")
|
||||||
(version "0.13")
|
(version "0.13.1")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
|
@ -527,7 +527,7 @@ data.")
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0kf2594kxcfga6x0mvwzj2qg8pgxhjkibc16ghnw85mdx45ph5h3"))
|
"0ws8dz9nk8q2c0gbf66kg2r6mrkl7kamd3gpdv9zsyrz9n6n0zmq"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet
|
(snippet
|
||||||
'(begin
|
'(begin
|
||||||
|
@ -536,14 +536,8 @@ data.")
|
||||||
;; run 'autoheader'.
|
;; run 'autoheader'.
|
||||||
(set-file-time "config.h.in"
|
(set-file-time "config.h.in"
|
||||||
(stat "aclocal.m4"))
|
(stat "aclocal.m4"))
|
||||||
|
|
||||||
;; Don't try to build with -Werror.
|
|
||||||
(substitute* (find-files "." "Makefile\\.in")
|
|
||||||
(("-Werror") ""))
|
|
||||||
#t))))
|
#t))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments '(#:parallel-build? #f
|
|
||||||
#:parallel-tests? #f))
|
|
||||||
(home-page "https://github.com/json-c/json-c/wiki")
|
(home-page "https://github.com/json-c/json-c/wiki")
|
||||||
(synopsis "JSON implementation in C")
|
(synopsis "JSON implementation in C")
|
||||||
(description
|
(description
|
||||||
|
@ -1818,15 +1812,15 @@ number, file name, and code context surrounding the line number.")
|
||||||
(define-public perl-catalyst-plugin-static-simple
|
(define-public perl-catalyst-plugin-static-simple
|
||||||
(package
|
(package
|
||||||
(name "perl-catalyst-plugin-static-simple")
|
(name "perl-catalyst-plugin-static-simple")
|
||||||
(version "0.33")
|
(version "0.36")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://cpan/authors/id/J/JJ/JJNAPIORK/"
|
(uri (string-append "mirror://cpan/authors/id/I/IL/ILMARI/"
|
||||||
"Catalyst-Plugin-Static-Simple-" version ".tar.gz"))
|
"Catalyst-Plugin-Static-Simple-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1h8f12bhzh0ssq9gs8r9g3hqn8zn2k0q944vc1vm8j81bns16msy"))))
|
"0m4l627p2fvzr4i6sgdxhdvsx4wpa6qmaibsbxlg5x5yjs7k7drn"))))
|
||||||
(build-system perl-build-system)
|
(build-system perl-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("perl-module-install" ,perl-module-install)))
|
`(("perl-module-install" ,perl-module-install)))
|
||||||
|
@ -2439,7 +2433,7 @@ composed of HTML::Element style components.")
|
||||||
(define-public perl-html-scrubber
|
(define-public perl-html-scrubber
|
||||||
(package
|
(package
|
||||||
(name "perl-html-scrubber")
|
(name "perl-html-scrubber")
|
||||||
(version "0.15")
|
(version "0.17")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -2449,11 +2443,12 @@ composed of HTML::Element style components.")
|
||||||
".tar.gz"))
|
".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1m1f8gm2jry42zxja05dxp2ck7y66m7i8vc38nj6hccnwlby6cvi"))))
|
"06p7w4zd42b2yh541mlzyqj40lwmvvn3fyqi8big4mf34la7m2jm"))))
|
||||||
(build-system perl-build-system)
|
(build-system perl-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("perl-module-build" ,perl-module-build)
|
`(("perl-module-build" ,perl-module-build)
|
||||||
("perl-test-cpan-meta" ,perl-test-cpan-meta)
|
("perl-test-cpan-meta" ,perl-test-cpan-meta)
|
||||||
|
("perl-test-differences" ,perl-test-differences)
|
||||||
("perl-test-eol" ,perl-test-eol)
|
("perl-test-eol" ,perl-test-eol)
|
||||||
("perl-test-memory-cycle" ,perl-test-memory-cycle)
|
("perl-test-memory-cycle" ,perl-test-memory-cycle)
|
||||||
("perl-test-notabs" ,perl-test-notabs)))
|
("perl-test-notabs" ,perl-test-notabs)))
|
||||||
|
@ -3412,7 +3407,7 @@ either mocked HTTP or a locally spawned server.")
|
||||||
(define-public perl-test-www-mechanize
|
(define-public perl-test-www-mechanize
|
||||||
(package
|
(package
|
||||||
(name "perl-test-www-mechanize")
|
(name "perl-test-www-mechanize")
|
||||||
(version "1.48")
|
(version "1.50")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -3420,17 +3415,12 @@ either mocked HTTP or a locally spawned server.")
|
||||||
"Test-WWW-Mechanize-" version ".tar.gz"))
|
"Test-WWW-Mechanize-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1d11fx9155d5v17d5w7q3kj37b01l8yj2yb0g6b0z1vh938rrlcr"))))
|
"097pl87vdbxbb56vawzvs6ikrlb8nz3dx223kjjbdn3jlli3jjhg"))))
|
||||||
(build-system perl-build-system)
|
(build-system perl-build-system)
|
||||||
(native-inputs
|
|
||||||
`(("perl-test-exception" ,perl-test-exception)))
|
|
||||||
(native-inputs
|
|
||||||
`(("perl-module-install" ,perl-module-install)))
|
|
||||||
(propagated-inputs
|
(propagated-inputs
|
||||||
`(("perl-carp-assert-more" ,perl-carp-assert-more)
|
`(("perl-carp-assert-more" ,perl-carp-assert-more)
|
||||||
("perl-html-form" ,perl-html-form)
|
("perl-html-form" ,perl-html-form)
|
||||||
("perl-html-lint" ,perl-html-lint)
|
("perl-html-lint" ,perl-html-lint)
|
||||||
("perl-html-tree" ,perl-html-tree)
|
|
||||||
("perl-http-server-simple" ,perl-http-server-simple)
|
("perl-http-server-simple" ,perl-http-server-simple)
|
||||||
("perl-libwww" ,perl-libwww)
|
("perl-libwww" ,perl-libwww)
|
||||||
("perl-test-longstring" ,perl-test-longstring)
|
("perl-test-longstring" ,perl-test-longstring)
|
||||||
|
@ -3480,7 +3470,7 @@ testing of Catalyst applications without needing to start up a web server.")
|
||||||
(define-public perl-test-www-mechanize-psgi
|
(define-public perl-test-www-mechanize-psgi
|
||||||
(package
|
(package
|
||||||
(name "perl-test-www-mechanize-psgi")
|
(name "perl-test-www-mechanize-psgi")
|
||||||
(version "0.37")
|
(version "0.38")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -3488,7 +3478,7 @@ testing of Catalyst applications without needing to start up a web server.")
|
||||||
"Test-WWW-Mechanize-PSGI-" version ".tar.gz"))
|
"Test-WWW-Mechanize-PSGI-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0c9a9w0d2whadnrich7f09w37fgq5hws4gq04zgz4jsdjcvr3qv2"))))
|
"0fsh2i05kf1kfavv2r9kmnjl7qlyqrd11ikc0qcqzzxsqzzjkg9r"))))
|
||||||
(build-system perl-build-system)
|
(build-system perl-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("perl-test-pod" ,perl-test-pod)))
|
`(("perl-test-pod" ,perl-test-pod)))
|
||||||
|
|
|
@ -16,6 +16,7 @@
|
||||||
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
|
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
|
||||||
;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com>
|
;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com>
|
||||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||||
|
;;; Copyright © 2018 Pierre-Antoine Rouby <contact@parouby.fr>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -967,3 +968,47 @@ It is inspired by Xmonad and dwm. Its major features include:
|
||||||
(description "Cwm is a stacking window manager for X11. It is an OpenBSD
|
(description "Cwm is a stacking window manager for X11. It is an OpenBSD
|
||||||
project derived from the original Calm Window Manager.")
|
project derived from the original Calm Window Manager.")
|
||||||
(license license:isc)))
|
(license license:isc)))
|
||||||
|
|
||||||
|
(define-public nitrogen
|
||||||
|
(package
|
||||||
|
(name "nitrogen")
|
||||||
|
(version "1.6.1")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "http://github.com/l3ib/nitrogen/"
|
||||||
|
"releases/download/" version "/"
|
||||||
|
name "-" version ".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0zc3fl1mbhq0iyndy4ysmy8vv5c7xwf54rbgamzfhfvsgdq160pl"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(inputs
|
||||||
|
`(("gtk+" ,gtk+-2)
|
||||||
|
("gtkmm" ,gtkmm-2)
|
||||||
|
("glib" ,glib)
|
||||||
|
("glibmm" ,glibmm)))
|
||||||
|
(native-inputs
|
||||||
|
`(("pkg-config", pkg-config)))
|
||||||
|
(arguments
|
||||||
|
`(#:configure-flags (list
|
||||||
|
(string-append "--prefix=" %output)
|
||||||
|
"CXXFLAGS=-std=c++11")))
|
||||||
|
(home-page "http://projects.l3ib.org/nitrogen/")
|
||||||
|
(synopsis "Background browser and setter for X windows")
|
||||||
|
(description
|
||||||
|
"This package is a background browser and setter for X windows. It's
|
||||||
|
features are:
|
||||||
|
|
||||||
|
@itemize
|
||||||
|
@item Multihead and Xinerama aware
|
||||||
|
@item Recall mode to used via startup script
|
||||||
|
@item Uses freedesktop.org standard for thumbnails
|
||||||
|
@item Can set GNOME background
|
||||||
|
@item Command lie set modes for script use
|
||||||
|
@item Inotify monitoring of browse directory
|
||||||
|
@item Lazy loading of thumbnails - conserves memory
|
||||||
|
@item \"Automatic\" set mode - determines best mode to set an image based on
|
||||||
|
its size
|
||||||
|
@item Display preview images in a tiled icon layout
|
||||||
|
@end itemize")
|
||||||
|
(license license:gpl2+)))
|
||||||
|
|
|
@ -2908,12 +2908,11 @@ X server.")
|
||||||
|
|
||||||
|
|
||||||
(define-public xf86-video-intel
|
(define-public xf86-video-intel
|
||||||
(let ((commit "af6d8e9e8f546e5cba60e3a62765c2dbd0328e83")
|
(let ((commit "d7dfab62a9853b44bbcd67dac08391d8e5114c97")
|
||||||
(revision "9"))
|
(revision "10"))
|
||||||
(package
|
(package
|
||||||
(name "xf86-video-intel")
|
(name "xf86-video-intel")
|
||||||
(version (string-append "2.99.917-" revision "-"
|
(version (git-version "2.99.917" revision commit))
|
||||||
(string-take commit 7)))
|
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
;; there's no current tarball
|
;; there's no current tarball
|
||||||
|
@ -2923,8 +2922,8 @@ X server.")
|
||||||
(commit commit)))
|
(commit commit)))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0f6sbkgykvvdggy8z6y7blf7yharg9vmiixxy190643bjxlnpp2s"))
|
"1vcfal4xr9q6016p28lnlyg709da6d305dysyyrj3fjp9fj48sva"))
|
||||||
(file-name (string-append name "-" version))))
|
(file-name (git-file-name name version))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(inputs `(("mesa" ,mesa)
|
(inputs `(("mesa" ,mesa)
|
||||||
("udev" ,eudev)
|
("udev" ,eudev)
|
||||||
|
|
|
@ -691,7 +691,14 @@ See also @url{https://prosody.im/doc/modules/mod_muc}."
|
||||||
(service-extension account-service-type
|
(service-extension account-service-type
|
||||||
(const %prosody-accounts))
|
(const %prosody-accounts))
|
||||||
(service-extension activation-service-type
|
(service-extension activation-service-type
|
||||||
prosody-activation)))))
|
prosody-activation)))
|
||||||
|
(default-value (prosody-configuration
|
||||||
|
(virtualhosts
|
||||||
|
(list
|
||||||
|
(virtualhost-configuration
|
||||||
|
(domain "localhost"))))))
|
||||||
|
(description
|
||||||
|
"Run Prosody, a modern XMPP communication server.")))
|
||||||
|
|
||||||
;; A little helper to make it easier to document all those fields.
|
;; A little helper to make it easier to document all those fields.
|
||||||
(define (generate-documentation)
|
(define (generate-documentation)
|
||||||
|
|
|
@ -0,0 +1,86 @@
|
||||||
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
|
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
|
||||||
|
;;;
|
||||||
|
;;; This file is part of GNU Guix.
|
||||||
|
;;;
|
||||||
|
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||||
|
;;; under the terms of the GNU General Public License as published by
|
||||||
|
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||||
|
;;; your option) any later version.
|
||||||
|
;;;
|
||||||
|
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||||
|
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
;;; GNU General Public License for more details.
|
||||||
|
;;;
|
||||||
|
;;; You should have received a copy of the GNU General Public License
|
||||||
|
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
(define-module (gnu services sound)
|
||||||
|
#:use-module (gnu services base)
|
||||||
|
#:use-module (gnu services configuration)
|
||||||
|
#:use-module (gnu services shepherd)
|
||||||
|
#:use-module (gnu services)
|
||||||
|
#:use-module (gnu system shadow)
|
||||||
|
#:use-module (guix gexp)
|
||||||
|
#:use-module (guix packages)
|
||||||
|
#:use-module (guix records)
|
||||||
|
#:use-module (guix store)
|
||||||
|
#:use-module (gnu packages pulseaudio)
|
||||||
|
#:use-module (ice-9 match)
|
||||||
|
#:export (alsa-configuration
|
||||||
|
alsa-service-type))
|
||||||
|
|
||||||
|
;;; Commentary:
|
||||||
|
;;;
|
||||||
|
;;; Sound services.
|
||||||
|
;;;
|
||||||
|
;;; Code:
|
||||||
|
|
||||||
|
|
||||||
|
;;;
|
||||||
|
;;; ALSA
|
||||||
|
;;;
|
||||||
|
|
||||||
|
(define-record-type* <alsa-configuration>
|
||||||
|
alsa-configuration make-alsa-configuration alsa-configuration?
|
||||||
|
(pulseaudio? alsa-configuration-pulseaudio? ;boolean
|
||||||
|
(default #t))
|
||||||
|
(extra-options alsa-configuration-extra-options ;string
|
||||||
|
(default "")))
|
||||||
|
|
||||||
|
(define (alsa-config-file config)
|
||||||
|
"Return the ALSA configuration file corresponding to CONFIG."
|
||||||
|
(plain-file "asound.conf"
|
||||||
|
(string-append "# Generated by 'alsa-service'.\n\n"
|
||||||
|
(if (alsa-configuration-pulseaudio? config)
|
||||||
|
"# Use PulseAudio by default
|
||||||
|
pcm.!default {
|
||||||
|
type pulse
|
||||||
|
fallback \"sysdefault\"
|
||||||
|
hint {
|
||||||
|
show on
|
||||||
|
description \"Default ALSA Output (currently PulseAudio Sound Server)\"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ctl.!default {
|
||||||
|
type pulse
|
||||||
|
fallback \"sysdefault\"
|
||||||
|
}
|
||||||
|
"
|
||||||
|
"")
|
||||||
|
(alsa-configuration-extra-options config))))
|
||||||
|
|
||||||
|
(define (alsa-etc-service config)
|
||||||
|
(list `("asound.conf" ,(alsa-config-file config))))
|
||||||
|
|
||||||
|
(define alsa-service-type
|
||||||
|
(service-type
|
||||||
|
(name 'alsa)
|
||||||
|
(extensions
|
||||||
|
(list (service-extension etc-service-type alsa-etc-service)))
|
||||||
|
(default-value (alsa-configuration))
|
||||||
|
(description "Configure low-level Linux sound support, ALSA.")))
|
||||||
|
|
||||||
|
;;; sound.scm ends here
|
|
@ -1,5 +1,5 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2013, 2014, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2013, 2014, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
|
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
|
@ -120,6 +120,28 @@ front."
|
||||||
(lambda ()
|
(lambda ()
|
||||||
(set! path initial-value)))))
|
(set! path initial-value)))))
|
||||||
|
|
||||||
|
(define (call/exit-on-exception thunk)
|
||||||
|
"Evaluate THUNK and exit right away if an exception is thrown."
|
||||||
|
(catch #t
|
||||||
|
thunk
|
||||||
|
(const #f)
|
||||||
|
(lambda (key . args)
|
||||||
|
(false-if-exception
|
||||||
|
;; Duplicate stderr to avoid thread-safety issues.
|
||||||
|
(let* ((port (duplicate-port (current-error-port) "w0"))
|
||||||
|
(stack (make-stack #t))
|
||||||
|
(depth (stack-length stack))
|
||||||
|
(frame (and (> depth 1) (stack-ref stack 1))))
|
||||||
|
(false-if-exception (display-backtrace stack port))
|
||||||
|
(print-exception port frame key args)))
|
||||||
|
|
||||||
|
;; Don't go any further.
|
||||||
|
(primitive-exit 1))))
|
||||||
|
|
||||||
|
(define-syntax-rule (exit-on-exception exp ...)
|
||||||
|
"Evaluate EXP and exit if an exception is thrown."
|
||||||
|
(call/exit-on-exception (lambda () exp ...)))
|
||||||
|
|
||||||
(define* (compile-files source-directory build-directory files
|
(define* (compile-files source-directory build-directory files
|
||||||
#:key
|
#:key
|
||||||
(host %host-type)
|
(host %host-type)
|
||||||
|
@ -139,15 +161,18 @@ files are for HOST, a GNU triplet such as \"x86_64-linux-gnu\"."
|
||||||
(define (build file)
|
(define (build file)
|
||||||
(with-mutex progress-lock
|
(with-mutex progress-lock
|
||||||
(report-compilation file total completed))
|
(report-compilation file total completed))
|
||||||
(with-fluids ((*current-warning-prefix* ""))
|
|
||||||
(with-target host
|
;; Exit as soon as something goes wrong.
|
||||||
(lambda ()
|
(exit-on-exception
|
||||||
(let ((relative (relative-file source-directory file)))
|
(with-fluids ((*current-warning-prefix* ""))
|
||||||
(compile-file file
|
(with-target host
|
||||||
#:output-file (string-append build-directory "/"
|
(lambda ()
|
||||||
(scm->go relative))
|
(let ((relative (relative-file source-directory file)))
|
||||||
#:opts (append warning-options
|
(compile-file file
|
||||||
(optimization-options relative)))))))
|
#:output-file (string-append build-directory "/"
|
||||||
|
(scm->go relative))
|
||||||
|
#:opts (append warning-options
|
||||||
|
(optimization-options relative))))))))
|
||||||
(with-mutex progress-lock
|
(with-mutex progress-lock
|
||||||
(set! completed (+ 1 completed))))
|
(set! completed (+ 1 completed))))
|
||||||
|
|
||||||
|
|
|
@ -60,7 +60,9 @@
|
||||||
|
|
||||||
(define* (emacs-byte-compile-directory dir)
|
(define* (emacs-byte-compile-directory dir)
|
||||||
"Byte compile all files in DIR and its sub-directories."
|
"Byte compile all files in DIR and its sub-directories."
|
||||||
(let ((expr `(byte-recompile-directory (file-name-as-directory ,dir) 0)))
|
(let ((expr `(progn
|
||||||
|
(setq byte-compile-debug t) ; for proper exit status
|
||||||
|
(byte-recompile-directory (file-name-as-directory ,dir) 0 1))))
|
||||||
(emacs-batch-eval expr)))
|
(emacs-batch-eval expr)))
|
||||||
|
|
||||||
(define-syntax emacs-substitute-sexps
|
(define-syntax emacs-substitute-sexps
|
||||||
|
|
|
@ -661,43 +661,47 @@ build."
|
||||||
(define system (assoc-ref opts 'system))
|
(define system (assoc-ref opts 'system))
|
||||||
(define graft? (assoc-ref opts 'graft?))
|
(define graft? (assoc-ref opts 'graft?))
|
||||||
|
|
||||||
(parameterize ((%graft? graft?))
|
;; We may get 'unbound-variable' errors while evaluating the 'inputs' fields
|
||||||
(append-map (match-lambda
|
;; of user packages. Since 'guix build' is the primary tool for people
|
||||||
((? package? p)
|
;; testing new packages, report such errors gracefully.
|
||||||
(let ((p (or (and graft? (package-replacement p)) p)))
|
(with-unbound-variable-handling
|
||||||
(match src
|
(parameterize ((%graft? graft?))
|
||||||
(#f
|
(append-map (match-lambda
|
||||||
(list (package->derivation store p system)))
|
((? package? p)
|
||||||
(#t
|
(let ((p (or (and graft? (package-replacement p)) p)))
|
||||||
(match (package-source p)
|
(match src
|
||||||
(#f
|
(#f
|
||||||
(format (current-error-port)
|
(list (package->derivation store p system)))
|
||||||
(G_ "~a: warning: \
|
(#t
|
||||||
|
(match (package-source p)
|
||||||
|
(#f
|
||||||
|
(format (current-error-port)
|
||||||
|
(G_ "~a: warning: \
|
||||||
package '~a' has no source~%")
|
package '~a' has no source~%")
|
||||||
(location->string (package-location p))
|
(location->string (package-location p))
|
||||||
(package-name p))
|
(package-name p))
|
||||||
'())
|
'())
|
||||||
(s
|
(s
|
||||||
(list (package-source-derivation store s)))))
|
(list (package-source-derivation store s)))))
|
||||||
(proc
|
(proc
|
||||||
(map (cut package-source-derivation store <>)
|
(map (cut package-source-derivation store <>)
|
||||||
(proc p))))))
|
(proc p))))))
|
||||||
((? derivation? drv)
|
((? derivation? drv)
|
||||||
(list drv))
|
(list drv))
|
||||||
((? procedure? proc)
|
((? procedure? proc)
|
||||||
(list (run-with-store store
|
(list (run-with-store store
|
||||||
(mbegin %store-monad
|
(mbegin %store-monad
|
||||||
(set-guile-for-build (default-guile))
|
(set-guile-for-build (default-guile))
|
||||||
(proc))
|
(proc))
|
||||||
#:system system)))
|
#:system system)))
|
||||||
((? gexp? gexp)
|
((? gexp? gexp)
|
||||||
(list (run-with-store store
|
(list (run-with-store store
|
||||||
(mbegin %store-monad
|
(mbegin %store-monad
|
||||||
(set-guile-for-build (default-guile))
|
(set-guile-for-build (default-guile))
|
||||||
(gexp->derivation "gexp" gexp
|
(gexp->derivation "gexp" gexp
|
||||||
#:system system))))))
|
#:system system))))))
|
||||||
(map (cut transform store <>)
|
(map (cut transform store <>)
|
||||||
(options->things-to-build opts)))))
|
(options->things-to-build opts))))))
|
||||||
|
|
||||||
(define (show-build-log store file urls)
|
(define (show-build-log store file urls)
|
||||||
"Show the build log for FILE, falling back to remote logs from URLS if
|
"Show the build log for FILE, falling back to remote logs from URLS if
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
;;; GNU Guix --- Functional package management for GNU
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||||
|
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -59,10 +60,8 @@ provided TYPE has a default value."
|
||||||
|
|
||||||
(define (service-type-shepherd-names type)
|
(define (service-type-shepherd-names type)
|
||||||
"Return the default names of Shepherd services created for TYPE."
|
"Return the default names of Shepherd services created for TYPE."
|
||||||
(match (map shepherd-service-provision
|
(append-map shepherd-service-provision
|
||||||
(service-type-default-shepherd-services type))
|
(service-type-default-shepherd-services type)))
|
||||||
(((names . _) ...)
|
|
||||||
names)))
|
|
||||||
|
|
||||||
(define* (service-type->recutils type port
|
(define* (service-type->recutils type port
|
||||||
#:optional (width (%text-width))
|
#:optional (width (%text-width))
|
||||||
|
|
|
@ -208,10 +208,10 @@ unavailable)~%"))
|
||||||
0 queue)))
|
0 queue)))
|
||||||
(newline)
|
(newline)
|
||||||
(unless (null? missing)
|
(unless (null? missing)
|
||||||
(let ((missing (length missing)))
|
(match (queued-subset queue missing)
|
||||||
(match (queued-subset queue missing)
|
(#f #f)
|
||||||
(#f #f)
|
((= length queued)
|
||||||
((= length queued)
|
(let ((missing (length missing)))
|
||||||
(format #t (G_ " ~,1f% (~h out of ~h) of the missing items \
|
(format #t (G_ " ~,1f% (~h out of ~h) of the missing items \
|
||||||
are queued~%")
|
are queued~%")
|
||||||
(* 100. (/ queued missing))
|
(* 100. (/ queued missing))
|
||||||
|
|
73
guix/ui.scm
73
guix/ui.scm
|
@ -82,6 +82,7 @@
|
||||||
show-manifest-transaction
|
show-manifest-transaction
|
||||||
call-with-error-handling
|
call-with-error-handling
|
||||||
with-error-handling
|
with-error-handling
|
||||||
|
with-unbound-variable-handling
|
||||||
leave-on-EPIPE
|
leave-on-EPIPE
|
||||||
read/eval
|
read/eval
|
||||||
read/eval-package-expression
|
read/eval-package-expression
|
||||||
|
@ -164,7 +165,7 @@ messages."
|
||||||
((proc message (variable) _ ...)
|
((proc message (variable) _ ...)
|
||||||
;; We can always omit PROC because when it's useful (i.e., different from
|
;; We can always omit PROC because when it's useful (i.e., different from
|
||||||
;; "module-lookup"), it gets displayed before.
|
;; "module-lookup"), it gets displayed before.
|
||||||
(format port (G_ "~a: unbound variable") variable))
|
(format port (G_ "error: ~a: unbound variable") variable))
|
||||||
(_
|
(_
|
||||||
(default-printer))))
|
(default-printer))))
|
||||||
|
|
||||||
|
@ -179,9 +180,9 @@ messages."
|
||||||
modules)
|
modules)
|
||||||
module))
|
module))
|
||||||
|
|
||||||
(define* (load* file user-module
|
(define (last-frame-with-source stack)
|
||||||
#:key (on-error 'nothing-special))
|
"Walk stack upwards and return the last frame that has source location
|
||||||
"Load the user provided Scheme source code FILE."
|
information, or #f if it could not be found."
|
||||||
(define (frame-with-source frame)
|
(define (frame-with-source frame)
|
||||||
;; Walk from FRAME upwards until source location information is found.
|
;; Walk from FRAME upwards until source location information is found.
|
||||||
(let loop ((frame frame)
|
(let loop ((frame frame)
|
||||||
|
@ -192,6 +193,15 @@ messages."
|
||||||
frame
|
frame
|
||||||
(loop (frame-previous frame) frame)))))
|
(loop (frame-previous frame) frame)))))
|
||||||
|
|
||||||
|
(let* ((depth (stack-length stack))
|
||||||
|
(last (and (> depth 0) (stack-ref stack 0))))
|
||||||
|
(frame-with-source (if (> depth 1)
|
||||||
|
(stack-ref stack 1) ;skip the 'throw' frame
|
||||||
|
last))))
|
||||||
|
|
||||||
|
(define* (load* file user-module
|
||||||
|
#:key (on-error 'nothing-special))
|
||||||
|
"Load the user provided Scheme source code FILE."
|
||||||
(define (error-string frame args)
|
(define (error-string frame args)
|
||||||
(call-with-output-string
|
(call-with-output-string
|
||||||
(lambda (port)
|
(lambda (port)
|
||||||
|
@ -244,12 +254,7 @@ messages."
|
||||||
;; Capture the stack up to this procedure call, excluded, and pass
|
;; Capture the stack up to this procedure call, excluded, and pass
|
||||||
;; the faulty stack frame to 'report-load-error'.
|
;; the faulty stack frame to 'report-load-error'.
|
||||||
(let* ((stack (make-stack #t handle-error tag))
|
(let* ((stack (make-stack #t handle-error tag))
|
||||||
(depth (stack-length stack))
|
(frame (last-frame-with-source stack)))
|
||||||
(last (and (> depth 0) (stack-ref stack 0)))
|
|
||||||
(frame (frame-with-source
|
|
||||||
(if (> depth 1)
|
|
||||||
(stack-ref stack 1) ;skip the 'throw' frame
|
|
||||||
last))))
|
|
||||||
|
|
||||||
(report-load-error file args frame)
|
(report-load-error file args frame)
|
||||||
|
|
||||||
|
@ -311,6 +316,21 @@ PORT."
|
||||||
(- (terminal-columns) 5))))
|
(- (terminal-columns) 5))))
|
||||||
(texi->plain-text message))))
|
(texi->plain-text message))))
|
||||||
|
|
||||||
|
(define* (report-unbound-variable-error args #:key frame)
|
||||||
|
"Return the given unbound-variable error, where ARGS is the list of 'throw'
|
||||||
|
arguments."
|
||||||
|
(match args
|
||||||
|
((key . args)
|
||||||
|
(print-exception (current-error-port) frame key args)))
|
||||||
|
(match args
|
||||||
|
(('unbound-variable proc message (variable) _ ...)
|
||||||
|
(match (known-variable-definition variable)
|
||||||
|
(#f
|
||||||
|
(display-hint (G_ "Did you forget a @code{use-modules} form?")))
|
||||||
|
((? module? module)
|
||||||
|
(display-hint (format #f (G_ "Did you forget @code{(use-modules ~a)}?")
|
||||||
|
(module-name module))))))))
|
||||||
|
|
||||||
(define* (report-load-error file args #:optional frame)
|
(define* (report-load-error file args #:optional frame)
|
||||||
"Report the failure to load FILE, a user-provided Scheme file.
|
"Report the failure to load FILE, a user-provided Scheme file.
|
||||||
ARGS is the list of arguments received by the 'throw' handler."
|
ARGS is the list of arguments received by the 'throw' handler."
|
||||||
|
@ -331,16 +351,8 @@ ARGS is the list of arguments received by the 'throw' handler."
|
||||||
(let ((loc (source-properties->location properties)))
|
(let ((loc (source-properties->location properties)))
|
||||||
(format (current-error-port) (G_ "~a: error: ~a~%")
|
(format (current-error-port) (G_ "~a: error: ~a~%")
|
||||||
(location->string loc) message)))
|
(location->string loc) message)))
|
||||||
(('unbound-variable proc message (variable) _ ...)
|
(('unbound-variable _ ...)
|
||||||
(match args
|
(report-unbound-variable-error args #:frame frame))
|
||||||
((key . args)
|
|
||||||
(print-exception (current-error-port) frame key args)))
|
|
||||||
(match (known-variable-definition variable)
|
|
||||||
(#f
|
|
||||||
(display-hint (G_ "Did you forget a @code{use-modules} form?")))
|
|
||||||
(module
|
|
||||||
(display-hint (format #f (G_ "Did you forget @code{(use-modules ~a)}?")
|
|
||||||
(module-name module))))))
|
|
||||||
(('srfi-34 obj)
|
(('srfi-34 obj)
|
||||||
(if (message-condition? obj)
|
(if (message-condition? obj)
|
||||||
(if (error-location? obj)
|
(if (error-location? obj)
|
||||||
|
@ -381,6 +393,27 @@ exiting. ARGS is the list of arguments received by the 'throw' handler."
|
||||||
(warning (G_ "failed to load '~a':~%") file)
|
(warning (G_ "failed to load '~a':~%") file)
|
||||||
(apply display-error #f (current-error-port) args))))
|
(apply display-error #f (current-error-port) args))))
|
||||||
|
|
||||||
|
(define (call-with-unbound-variable-handling thunk)
|
||||||
|
(define tag
|
||||||
|
(make-prompt-tag "user-code"))
|
||||||
|
|
||||||
|
(catch 'unbound-variable
|
||||||
|
(lambda ()
|
||||||
|
(call-with-prompt tag
|
||||||
|
thunk
|
||||||
|
(const #f)))
|
||||||
|
(const #t)
|
||||||
|
(rec (handle-error . args)
|
||||||
|
(let* ((stack (make-stack #t handle-error tag))
|
||||||
|
(frame (and stack (last-frame-with-source stack))))
|
||||||
|
(report-unbound-variable-error args #:frame frame)
|
||||||
|
(exit 1)))))
|
||||||
|
|
||||||
|
(define-syntax-rule (with-unbound-variable-handling exp ...)
|
||||||
|
"Capture 'unbound-variable' exceptions in the dynamic extent of EXP... and
|
||||||
|
report them in a user-friendly way."
|
||||||
|
(call-with-unbound-variable-handling (lambda () exp ...)))
|
||||||
|
|
||||||
(define (install-locale)
|
(define (install-locale)
|
||||||
"Install the current locale settings."
|
"Install the current locale settings."
|
||||||
(catch 'system-error
|
(catch 'system-error
|
||||||
|
|
1121
po/guix/pt_BR.po
1121
po/guix/pt_BR.po
File diff suppressed because it is too large
Load Diff
|
@ -1,5 +1,5 @@
|
||||||
# GNU Guix --- Functional package management for GNU
|
# GNU Guix --- Functional package management for GNU
|
||||||
# Copyright © 2012, 2013, 2014, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
# Copyright © 2012, 2013, 2014, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||||
#
|
#
|
||||||
# This file is part of GNU Guix.
|
# This file is part of GNU Guix.
|
||||||
#
|
#
|
||||||
|
@ -138,6 +138,25 @@ test `guix build -d --sources=transitive foo \
|
||||||
| grep -e 'foo\.tar\.gz' -e 'bar\.tar\.gz' -e 'bar\.dat' \
|
| grep -e 'foo\.tar\.gz' -e 'bar\.tar\.gz' -e 'bar\.dat' \
|
||||||
| wc -l` -eq 3
|
| wc -l` -eq 3
|
||||||
|
|
||||||
|
|
||||||
|
# Unbound variables.
|
||||||
|
cat > "$module_dir/foo.scm"<<EOF
|
||||||
|
(define-module (foo)
|
||||||
|
#:use-module (guix tests)
|
||||||
|
#:use-module (guix build-system trivial))
|
||||||
|
|
||||||
|
(define-public foo
|
||||||
|
(dummy-package "package-with-something-wrong"
|
||||||
|
(build-system trivial-build-system)
|
||||||
|
(inputs (quasiquote (("sed" ,sed)))))) ;unbound variable
|
||||||
|
EOF
|
||||||
|
|
||||||
|
if guix build package-with-something-wrong -n; then false; else true; fi
|
||||||
|
guix build package-with-something-wrong -n 2> "$module_dir/err" || true
|
||||||
|
grep "unbound" "$module_dir/err" # actual error
|
||||||
|
grep "forget.*(gnu packages base)" "$module_dir/err" # hint
|
||||||
|
rm -f "$module_dir"/*
|
||||||
|
|
||||||
# Should all return valid log files.
|
# Should all return valid log files.
|
||||||
drv="`guix build -d -e '(@@ (gnu packages bootstrap) %bootstrap-guile)'`"
|
drv="`guix build -d -e '(@@ (gnu packages bootstrap) %bootstrap-guile)'`"
|
||||||
out="`guix build -e '(@@ (gnu packages bootstrap) %bootstrap-guile)'`"
|
out="`guix build -e '(@@ (gnu packages bootstrap) %bootstrap-guile)'`"
|
||||||
|
|
Loading…
Reference in New Issue