Merge branch 'master' into core-updates
commit
ffddb42d6c
|
@ -45,6 +45,7 @@
|
|||
(eval . (put 'manifest-pattern 'scheme-indent-function 0))
|
||||
(eval . (put 'substitute-keyword-arguments 'scheme-indent-function 1))
|
||||
(eval . (put 'with-store 'scheme-indent-function 1))
|
||||
(eval . (put 'with-external-store 'scheme-indent-function 1))
|
||||
(eval . (put 'with-error-handling 'scheme-indent-function 0))
|
||||
(eval . (put 'with-mutex 'scheme-indent-function 1))
|
||||
(eval . (put 'with-atomic-file-output 'scheme-indent-function 1))
|
||||
|
|
|
@ -11000,6 +11000,12 @@ Return a service that runs a syslog daemon according to @var{config}.
|
|||
information on the configuration file syntax.
|
||||
@end deffn
|
||||
|
||||
@defvr {Scheme Variable} guix-service-type
|
||||
This is the type of the service that runs the build daemon,
|
||||
@command{guix-daemon} (@pxref{Invoking guix-daemon}). Its value must be a
|
||||
@code{guix-configuration} record as described below.
|
||||
@end defvr
|
||||
|
||||
@anchor{guix-configuration-type}
|
||||
@deftp {Data Type} guix-configuration
|
||||
This data type represents the configuration of the Guix build daemon.
|
||||
|
@ -11060,11 +11066,6 @@ A directory path where the @command{guix-daemon} will perform builds.
|
|||
@end table
|
||||
@end deftp
|
||||
|
||||
@deffn {Scheme Procedure} guix-service @var{config}
|
||||
Return a service that runs the Guix build daemon according to
|
||||
@var{config}.
|
||||
@end deffn
|
||||
|
||||
@deffn {Scheme Procedure} udev-service [#:udev @var{eudev} #:rules @code{'()}]
|
||||
Run @var{udev}, which populates the @file{/dev} directory dynamically.
|
||||
udev rules can be provided as a list of files through the @var{rules}
|
||||
|
@ -11545,10 +11546,11 @@ The @code{(gnu services networking)} module provides services to configure
|
|||
the network interface.
|
||||
|
||||
@cindex DHCP, networking service
|
||||
@deffn {Scheme Procedure} dhcp-client-service [#:dhcp @var{isc-dhcp}]
|
||||
Return a service that runs @var{dhcp}, a Dynamic Host Configuration
|
||||
Protocol (DHCP) client, on all the non-loopback network interfaces.
|
||||
@end deffn
|
||||
@defvr {Scheme Variable} dhcp-client-service-type
|
||||
This is the type of services that run @var{dhcp}, a Dynamic Host Configuration
|
||||
Protocol (DHCP) client, on all the non-loopback network interfaces. Its value
|
||||
is the DHCP client package to use, @code{isc-dhcp} by default.
|
||||
@end defvr
|
||||
|
||||
@deffn {Scheme Procedure} dhcpd-service-type
|
||||
This type defines a service that runs a DHCP daemon. To create a
|
||||
|
@ -11815,20 +11817,37 @@ objects}).
|
|||
@end table
|
||||
@end deftp
|
||||
|
||||
@cindex NTP
|
||||
@cindex NTP (Network Time Protocol), service
|
||||
@cindex real time clock
|
||||
@deffn {Scheme Procedure} ntp-service [#:ntp @var{ntp}] @
|
||||
[#:servers @var{%ntp-servers}] @
|
||||
[#:allow-large-adjustment? #f]
|
||||
Return a service that runs the daemon from @var{ntp}, the
|
||||
@uref{http://www.ntp.org, Network Time Protocol package}. The daemon will
|
||||
keep the system clock synchronized with that of @var{servers}.
|
||||
@var{allow-large-adjustment?} determines whether @command{ntpd} is allowed to
|
||||
make an initial adjustment of more than 1,000 seconds.
|
||||
@end deffn
|
||||
@defvr {Scheme Variable} ntp-service-type
|
||||
This is the type of the service running the the @uref{http://www.ntp.org,
|
||||
Network Time Protocol (NTP)} daemon, @command{ntpd}. The daemon will keep the
|
||||
system clock synchronized with that of the specified NTP servers.
|
||||
|
||||
The value of this service is an @code{ntpd-configuration} object, as described
|
||||
below.
|
||||
@end defvr
|
||||
|
||||
@deftp {Data Type} ntp-configuration
|
||||
This is the data type for the NTP service configuration.
|
||||
|
||||
@table @asis
|
||||
@item @code{servers} (default: @code{%ntp-servers})
|
||||
This is the list of servers (host names) with which @command{ntpd} will be
|
||||
synchronized.
|
||||
|
||||
@item @code{allow-large-adjustment?} (default: @code{#f})
|
||||
This determines whether @command{ntpd} is allowed to make an initial
|
||||
adjustment of more than 1,000 seconds.
|
||||
|
||||
@item @code{ntp} (default: @code{ntp})
|
||||
The NTP package to use.
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@defvr {Scheme Variable} %ntp-servers
|
||||
List of host names used as the default NTP servers.
|
||||
List of host names used as the default NTP servers. These are servers of the
|
||||
@uref{https://www.ntppool.org/en/, NTP Pool Project}.
|
||||
@end defvr
|
||||
|
||||
@cindex OpenNTPD
|
||||
|
@ -17167,7 +17186,7 @@ A helper function to quickly add php to an @code{nginx-server-configuration}.
|
|||
|
||||
A simple services setup for nginx with php can look like this:
|
||||
@example
|
||||
(services (cons* (dhcp-client-service)
|
||||
(services (cons* (service dhcp-client-service-type)
|
||||
(service php-fpm-service-type)
|
||||
(service nginx-service-type
|
||||
(nginx-server-configuration
|
||||
|
|
|
@ -886,7 +886,6 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/libgdata-glib-duplicate-tests.patch \
|
||||
%D%/packages/patches/libgnome-encoding.patch \
|
||||
%D%/packages/patches/libgnomeui-utf8.patch \
|
||||
%D%/packages/patches/libgxps-CVE-2017-11590.patch \
|
||||
%D%/packages/patches/libffi-3.2.1-complex-alpha.patch \
|
||||
%D%/packages/patches/libjxr-fix-function-signature.patch \
|
||||
%D%/packages/patches/libjxr-fix-typos.patch \
|
||||
|
@ -1150,6 +1149,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/slim-login.patch \
|
||||
%D%/packages/patches/snappy-add-O2-flag-in-CmakeLists.txt.patch \
|
||||
%D%/packages/patches/sooperlooper-build-with-wx-30.patch \
|
||||
%D%/packages/patches/soundconverter-remove-gconf-dependency.patch \
|
||||
%D%/packages/patches/soundtouch-CVE-2018-14044-14045.patch \
|
||||
%D%/packages/patches/soundtouch-CVE-2018-1000223.patch \
|
||||
%D%/packages/patches/steghide-fixes.patch \
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
|
||||
;;; Copyright © 2018 Brett Gilio <brettg@posteo.net>
|
||||
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -1041,7 +1042,7 @@ follower.")
|
|||
(define-public fluidsynth
|
||||
(package
|
||||
(name "fluidsynth")
|
||||
(version "1.1.11")
|
||||
(version "2.0.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -1050,7 +1051,7 @@ follower.")
|
|||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"0n75jq3xgq46hfmjkaaxz3gic77shs4fzajq40c8gk043i84xbdh"))))
|
||||
"1mqyym5qkh8xd1rqj3yhfxbw5dxjcrljb6nkfqzvcarlv4h6rjn7"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; no check target
|
||||
|
@ -1082,6 +1083,22 @@ device. It is the software analogue of a MIDI synthesizer. FluidSynth can
|
|||
also play midifiles using a Soundfont.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
;; gzdoom@3.3.0 and lmms@1.1.3 requires this version. Remove once no longer
|
||||
;; needed.
|
||||
(define-public fluidsynth-1
|
||||
(package
|
||||
(inherit fluidsynth)
|
||||
(version "1.1.11")
|
||||
(source (origin
|
||||
(inherit (package-source fluidsynth))
|
||||
(uri (git-reference
|
||||
(url "https://github.com/FluidSynth/fluidsynth")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name "fluidsynth" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0n75jq3xgq46hfmjkaaxz3gic77shs4fzajq40c8gk043i84xbdh"))))))
|
||||
|
||||
(define-public faad2
|
||||
(package
|
||||
(name "faad2")
|
||||
|
@ -1912,7 +1929,7 @@ lv2-c++-tools.")
|
|||
(define-public openal
|
||||
(package
|
||||
(name "openal")
|
||||
(version "1.19.0")
|
||||
(version "1.19.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -1920,7 +1937,7 @@ lv2-c++-tools.")
|
|||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1mhf5bsb58s1xk6hvxl7ly7rd4rpl9z8h07xl1q94brywykg7bgi"))))
|
||||
"1sdjhkz2gd6lbnwphi1b6aw3br4wv2lik5vnqh6mxfc8a7zqfbsw"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; no check target
|
||||
|
@ -2761,7 +2778,7 @@ interface.")
|
|||
(define-public qsynth
|
||||
(package
|
||||
(name "qsynth")
|
||||
(version "0.5.2")
|
||||
(version "0.5.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -2769,7 +2786,7 @@ interface.")
|
|||
"/qsynth-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1rfkaxq1pyc4hv3l0i6wicianbcbm1wp53kh9i5d4jsljgisd1dv"))))
|
||||
"1jghczmmva7cyavg1q0j8nr3hmjpzzglzi5ckg92ax4ji8gpks9c"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; no "check" phase
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# Linux/arm64 4.18.0-gnu Kernel Configuration
|
||||
# Linux/arm64 4.18.14-gnu Kernel Configuration
|
||||
#
|
||||
CONFIG_ARM64=y
|
||||
CONFIG_64BIT=y
|
||||
|
@ -481,7 +481,7 @@ CONFIG_HOTPLUG_PCI=y
|
|||
CONFIG_HOTPLUG_PCI_ACPI=y
|
||||
CONFIG_HOTPLUG_PCI_ACPI_IBM=m
|
||||
CONFIG_HOTPLUG_PCI_CPCI=y
|
||||
# CONFIG_HOTPLUG_PCI_SHPC is not set
|
||||
CONFIG_HOTPLUG_PCI_SHPC=y
|
||||
|
||||
#
|
||||
# PCI controller drivers
|
||||
|
|
|
@ -136,24 +136,23 @@
|
|||
(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(replace 'build
|
||||
(lambda _
|
||||
(zero? (system* "gcc"
|
||||
"-O3"
|
||||
"-ffast-math"
|
||||
"-finline-functions"
|
||||
"-o"
|
||||
"aragorn"
|
||||
(string-append "aragorn" ,version ".c")))))
|
||||
(lambda _
|
||||
(invoke "gcc"
|
||||
"-O3"
|
||||
"-ffast-math"
|
||||
"-finline-functions"
|
||||
"-o"
|
||||
"aragorn"
|
||||
(string-append "aragorn" ,version ".c"))
|
||||
#t))
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(bin (string-append out "/bin"))
|
||||
(man (string-append out "/share/man/man1")))
|
||||
(mkdir-p bin)
|
||||
(install-file "aragorn" bin)
|
||||
(mkdir-p man)
|
||||
(install-file "aragorn.1" man))
|
||||
#t)))))
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(bin (string-append out "/bin"))
|
||||
(man (string-append out "/share/man/man1")))
|
||||
(install-file "aragorn" bin)
|
||||
(install-file "aragorn.1" man))
|
||||
#t)))))
|
||||
(home-page "http://mbio-serv2.mbioekol.lu.se/ARAGORN")
|
||||
(synopsis "Detect tRNA, mtRNA and tmRNA genes in nucleotide sequences")
|
||||
(description
|
||||
|
@ -168,15 +167,16 @@ structure of the predicted RNA.")
|
|||
(name "bamm")
|
||||
(version "1.7.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(method git-fetch)
|
||||
;; BamM is not available on pypi.
|
||||
(uri (string-append
|
||||
"https://github.com/Ecogenomics/BamM/archive/"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(uri (git-reference
|
||||
(url "https://github.com/Ecogenomics/BamM.git")
|
||||
(commit version)
|
||||
(recursive? #t)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1f35yxp4pc8aadsvbpg6r4kg2jh4fkjci0iby4iyljm6980sac0s"))
|
||||
"1p83ahi984ipslxlg4yqy1gdnya9rkn1v71z8djgxkm9d2chw4c5"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
`(begin
|
||||
|
@ -198,11 +198,12 @@ structure of the predicted RNA.")
|
|||
(lambda _
|
||||
(with-directory-excursion "c"
|
||||
(let ((sh (which "sh")))
|
||||
(for-each make-file-writable (find-files "." ".*"))
|
||||
;; Use autogen so that 'configure' works.
|
||||
(substitute* "autogen.sh" (("/bin/sh") sh))
|
||||
(setenv "CONFIG_SHELL" sh)
|
||||
(substitute* "configure" (("/bin/sh") sh))
|
||||
(zero? (system* "./autogen.sh"))))))
|
||||
(invoke "./autogen.sh")))
|
||||
#t))
|
||||
(delete 'build)
|
||||
;; Run tests after installation so compilation only happens once.
|
||||
(delete 'check)
|
||||
|
@ -230,7 +231,8 @@ structure of the predicted RNA.")
|
|||
;; There are 2 errors printed, but they are safe to ignore:
|
||||
;; 1) [E::hts_open_format] fail to open file ...
|
||||
;; 2) samtools view: failed to open ...
|
||||
(zero? (system* "nosetests")))))))
|
||||
(invoke "nosetests")
|
||||
#t)))))
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
|
@ -335,15 +337,16 @@ transparently with both VCFs and BCFs, both uncompressed and BGZF-compressed.")
|
|||
(define-public bedops
|
||||
(package
|
||||
(name "bedops")
|
||||
(version "2.4.33")
|
||||
(version "2.4.35")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/bedops/bedops/archive/v"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/bedops/bedops.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0kx4awrwby8f33wqyx8w7ms7v25xhf0d421csgf96a3hfzn2mb0m"))))
|
||||
"0mmgsgwz5r9w76hzgxkxc9s9lkdhhaf7vr6i02b09vbswvs1fyqx"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f
|
||||
|
@ -365,9 +368,9 @@ transparently with both VCFs and BCFs, both uncompressed and BGZF-compressed.")
|
|||
|
||||
;; Unpack the tarballs to benefit from shebang patching.
|
||||
(with-directory-excursion "third-party"
|
||||
(and (zero? (system* "tar" "xvf" "jansson-2.6.tar.bz2"))
|
||||
(zero? (system* "tar" "xvf" "zlib-1.2.7.tar.bz2"))
|
||||
(zero? (system* "tar" "xvf" "bzip2-1.0.6.tar.bz2"))))
|
||||
(invoke "tar" "xvf" "jansson-2.6.tar.bz2")
|
||||
(invoke "tar" "xvf" "zlib-1.2.7.tar.bz2")
|
||||
(invoke "tar" "xvf" "bzip2-1.0.6.tar.bz2"))
|
||||
;; Disable unpacking of tarballs in Makefile.
|
||||
(substitute* "system.mk/Makefile.linux"
|
||||
(("^\tbzcat .*") "\t@echo \"not unpacking\"\n")
|
||||
|
@ -453,6 +456,20 @@ BED, GFF/GTF, VCF.")
|
|||
(find-files "bin" ".*")))
|
||||
#t)))))))
|
||||
|
||||
;; Needed for pybedtools.
|
||||
(define-public bedtools-2.26
|
||||
(package (inherit bedtools)
|
||||
(name "bedtools")
|
||||
(version "2.26.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/arq5x/bedtools2/releases/"
|
||||
"download/v" version "/"
|
||||
"bedtools-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0jhavwifnf7lmkb11h9y7dynr8d699h0rd2l52j1pfgircr2zwv5"))))))
|
||||
|
||||
(define-public ribotaper
|
||||
(package
|
||||
(name "ribotaper")
|
||||
|
@ -582,29 +599,54 @@ input/output delimiter. When the new functionality is not used, bioawk is
|
|||
intended to behave exactly the same as the original BWK awk.")
|
||||
(license license:x11)))
|
||||
|
||||
(define-public python2-pybedtools
|
||||
(define-public python-pybedtools
|
||||
(package
|
||||
(name "python2-pybedtools")
|
||||
(version "0.6.9")
|
||||
(name "python-pybedtools")
|
||||
(version "0.7.10")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/p/pybedtools/pybedtools-"
|
||||
version ".tar.gz"))
|
||||
(uri (pypi-uri "pybedtools" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ldzdxw1p4y3g2ignmggsdypvqkcwqwzhdha4rbgpih048z5p4an"))))
|
||||
"0l2b2wrnj85azfqgr0zwr60f7j58vlla1hcgxvr9rwikpl8j72ji"))))
|
||||
(build-system python-build-system)
|
||||
(arguments `(#:python ,python-2)) ; no Python 3 support
|
||||
(inputs
|
||||
`(("python-matplotlib" ,python2-matplotlib)))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
;; See https://github.com/daler/pybedtools/issues/261
|
||||
(add-after 'unpack 'disable-broken-tests
|
||||
(lambda _
|
||||
;; This test (pybedtools.test.test_scripts.test_venn_mpl) needs a
|
||||
;; graphical environment.
|
||||
(substitute* "pybedtools/test/test_scripts.py"
|
||||
(("def test_venn_mpl")
|
||||
"def _do_not_test_venn_mpl"))
|
||||
;; Requires internet access.
|
||||
(substitute* "pybedtools/test/test_helpers.py"
|
||||
(("def test_chromsizes")
|
||||
"def _do_not_test_chromsizes"))
|
||||
;; FIXME: these two fail for no good reason.
|
||||
(substitute* "pybedtools/test/test1.py"
|
||||
(("def test_issue_157")
|
||||
"def _do_not_test_issue_157")
|
||||
(("def test_to_dataframe")
|
||||
"def _do_not_test_to_dataframe"))
|
||||
#t)))))
|
||||
(propagated-inputs
|
||||
`(("bedtools" ,bedtools)
|
||||
("samtools" ,samtools)))
|
||||
;; Tests don't pass with Bedtools 2.27.1.
|
||||
;; See https://github.com/daler/pybedtools/issues/260
|
||||
`(("bedtools" ,bedtools-2.26)
|
||||
("samtools" ,samtools)
|
||||
("python-matplotlib" ,python-matplotlib)
|
||||
("python-pysam" ,python-pysam)
|
||||
("python-pyyaml" ,python-pyyaml)))
|
||||
(native-inputs
|
||||
`(("python-cython" ,python2-cython)
|
||||
("python-pyyaml" ,python2-pyyaml)
|
||||
("python-nose" ,python2-nose)))
|
||||
`(("python-numpy" ,python-numpy)
|
||||
("python-pandas" ,python-pandas)
|
||||
("python-cython" ,python-cython)
|
||||
("python-nose" ,python-nose)
|
||||
("kentutils" ,kentutils) ; for bedGraphToBigWig
|
||||
("python-six" ,python-six)))
|
||||
(home-page "https://pythonhosted.org/pybedtools/")
|
||||
(synopsis "Python wrapper for BEDtools programs")
|
||||
(description
|
||||
|
@ -614,6 +656,36 @@ pybedtools extends BEDTools by offering feature-level manipulations from with
|
|||
Python.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public python2-pybedtools
|
||||
(let ((pkg (package-with-python2 python-pybedtools)))
|
||||
(package (inherit pkg)
|
||||
(arguments
|
||||
`(#:modules ((ice-9 ftw)
|
||||
(srfi srfi-1)
|
||||
(srfi srfi-26)
|
||||
(guix build utils)
|
||||
(guix build python-build-system))
|
||||
;; See https://github.com/daler/pybedtools/issues/192
|
||||
,@(substitute-keyword-arguments (package-arguments pkg)
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(let ((cwd (getcwd)))
|
||||
(setenv "PYTHONPATH"
|
||||
(string-append cwd "/build/"
|
||||
(find (cut string-prefix? "lib" <>)
|
||||
(scandir (string-append cwd "/build")))
|
||||
":" (getenv "PYTHONPATH"))))
|
||||
;; The tests need to be run from elsewhere...
|
||||
(mkdir-p "/tmp/test")
|
||||
(copy-recursively "pybedtools/test" "/tmp/test")
|
||||
(with-directory-excursion "/tmp/test"
|
||||
(invoke "nosetests"
|
||||
;; This test fails for unknown reasons
|
||||
"--exclude=.*test_getting_example_beds"))
|
||||
#t))))))))))
|
||||
|
||||
(define-public python-biom-format
|
||||
(package
|
||||
(name "python-biom-format")
|
||||
|
@ -999,15 +1071,12 @@ package provides command line tools using the Bio++ library.")
|
|||
#:parallel-build? #f ; not supported
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before
|
||||
'configure 'set-HOME
|
||||
(add-before 'configure 'set-HOME
|
||||
;; $HOME needs to be set at some point during the configure phase
|
||||
(lambda _ (setenv "HOME" "/tmp") #t))
|
||||
(add-after
|
||||
'unpack 'enter-dir
|
||||
(add-after 'unpack 'enter-dir
|
||||
(lambda _ (chdir "c++") #t))
|
||||
(add-after
|
||||
'enter-dir 'fix-build-system
|
||||
(add-after 'enter-dir 'fix-build-system
|
||||
(lambda _
|
||||
(define (which* cmd)
|
||||
(cond ((string=? cmd "date")
|
||||
|
@ -1055,31 +1124,31 @@ package provides command line tools using the Bio++ library.")
|
|||
(("action=/bin/") "action=")
|
||||
(("export PATH") ":"))
|
||||
#t))
|
||||
(replace
|
||||
'configure
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(lib (string-append (assoc-ref outputs "lib") "/lib"))
|
||||
(include (string-append (assoc-ref outputs "include")
|
||||
"/include/ncbi-tools++")))
|
||||
;; The 'configure' script doesn't recognize things like
|
||||
;; '--enable-fast-install'.
|
||||
(zero? (system* "./configure.orig"
|
||||
(string-append "--with-build-root=" (getcwd) "/build")
|
||||
(string-append "--prefix=" out)
|
||||
(string-append "--libdir=" lib)
|
||||
(string-append "--includedir=" include)
|
||||
(string-append "--with-bz2="
|
||||
(assoc-ref inputs "bzip2"))
|
||||
(string-append "--with-z="
|
||||
(assoc-ref inputs "zlib"))
|
||||
(string-append "--with-pcre="
|
||||
(assoc-ref inputs "pcre"))
|
||||
;; Each library is built twice by default, once
|
||||
;; with "-static" in its name, and again
|
||||
;; without.
|
||||
"--without-static"
|
||||
"--with-dll"))))))))
|
||||
(replace 'configure
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(lib (string-append (assoc-ref outputs "lib") "/lib"))
|
||||
(include (string-append (assoc-ref outputs "include")
|
||||
"/include/ncbi-tools++")))
|
||||
;; The 'configure' script doesn't recognize things like
|
||||
;; '--enable-fast-install'.
|
||||
(invoke "./configure.orig"
|
||||
(string-append "--with-build-root=" (getcwd) "/build")
|
||||
(string-append "--prefix=" out)
|
||||
(string-append "--libdir=" lib)
|
||||
(string-append "--includedir=" include)
|
||||
(string-append "--with-bz2="
|
||||
(assoc-ref inputs "bzip2"))
|
||||
(string-append "--with-z="
|
||||
(assoc-ref inputs "zlib"))
|
||||
(string-append "--with-pcre="
|
||||
(assoc-ref inputs "pcre"))
|
||||
;; Each library is built twice by default, once
|
||||
;; with "-static" in its name, and again
|
||||
;; without.
|
||||
"--without-static"
|
||||
"--with-dll")
|
||||
#t))))))
|
||||
(outputs '("out" ; 21 MB
|
||||
"lib" ; 226 MB
|
||||
"include")) ; 33 MB
|
||||
|
@ -1204,15 +1273,16 @@ errors at the end of reads.")
|
|||
(define-public bowtie
|
||||
(package
|
||||
(name "bowtie")
|
||||
(version "2.3.2")
|
||||
(version "2.3.4.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/BenLangmead/bowtie2/archive/v"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/BenLangmead/bowtie2.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0hwa5r9qbglppb7sz5z79rlmmddr3n51n468jb3wh8rwjgn3yr90"))
|
||||
"1zl3cf327y2p7p03cavymbh7b00djc7lncfaqih33n96iy9q8ibp"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
|
@ -1222,14 +1292,6 @@ errors at the end of reads.")
|
|||
(("-DBUILD_TIME=.*") "-DBUILD_TIME=\"\\\"0\\\"\""))
|
||||
#t))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("perl" ,perl)
|
||||
("perl-clone" ,perl-clone)
|
||||
("perl-test-deep" ,perl-test-deep)
|
||||
("perl-test-simple" ,perl-test-simple)
|
||||
("python" ,python-2)
|
||||
("tbb" ,tbb)
|
||||
("zlib" ,zlib)))
|
||||
(arguments
|
||||
'(#:make-flags
|
||||
(list "allall"
|
||||
|
@ -1239,11 +1301,21 @@ errors at the end of reads.")
|
|||
(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(replace 'check
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(zero? (system* "perl"
|
||||
"scripts/test/simple_tests.pl"
|
||||
"--bowtie2=./bowtie2"
|
||||
"--bowtie2-build=./bowtie2-build")))))))
|
||||
(lambda _
|
||||
(invoke "perl"
|
||||
"scripts/test/simple_tests.pl"
|
||||
"--bowtie2=./bowtie2"
|
||||
"--bowtie2-build=./bowtie2-build")
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("tbb" ,tbb)
|
||||
("zlib" ,zlib)
|
||||
("python" ,python-wrapper)))
|
||||
(native-inputs
|
||||
`(("perl" ,perl)
|
||||
("perl-clone" ,perl-clone)
|
||||
("perl-test-deep" ,perl-test-deep)
|
||||
("perl-test-simple" ,perl-test-simple)))
|
||||
(home-page "http://bowtie-bio.sourceforge.net/bowtie2/index.shtml")
|
||||
(synopsis "Fast and sensitive nucleotide sequence read aligner")
|
||||
(description
|
||||
|
@ -1638,29 +1710,35 @@ databases.")
|
|||
(define-public clipper
|
||||
(package
|
||||
(name "clipper")
|
||||
(version "1.1")
|
||||
(version "1.2.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/YeoLab/clipper/archive/"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/YeoLab/clipper.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0pflmsvhbf8izbgwhbhj1i7349sw1f55qpqj8ljmapp16hb0p0qi"))
|
||||
"0fja1rj84wp9vpj8rxpj3n8zqzcqq454m904yp9as1w4phccirjb"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
;; remove unnecessary setup dependency
|
||||
(substitute* "setup.py"
|
||||
(("setup_requires = .*") ""))
|
||||
(for-each delete-file
|
||||
'("clipper/src/peaks.so"
|
||||
"clipper/src/readsToWiggle.so"))
|
||||
(delete-file-recursively "dist/")
|
||||
#t))))
|
||||
(build-system python-build-system)
|
||||
(arguments `(#:python ,python-2)) ; only Python 2 is supported
|
||||
(arguments
|
||||
`(#:python ,python-2 ; only Python 2 is supported
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
;; This is fixed in upstream commit
|
||||
;; f6c2990198f906bf97730d95695b4bd5a6d01ddb.
|
||||
(add-after 'unpack 'fix-typo
|
||||
(lambda _
|
||||
(substitute* "clipper/src/readsToWiggle.pyx"
|
||||
(("^sc.*") ""))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("htseq" ,python2-htseq)
|
||||
("python-pybedtools" ,python2-pybedtools)
|
||||
|
@ -1985,7 +2063,21 @@ trees (phylogenies) and characters.")
|
|||
(license license:bsd-3)))
|
||||
|
||||
(define-public python2-dendropy
|
||||
(package-with-python2 python-dendropy))
|
||||
(let ((base (package-with-python2 python-dendropy)))
|
||||
(package
|
||||
(inherit base)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'remove-failing-test
|
||||
(lambda _
|
||||
;; This test fails when the full test suite is run, as documented
|
||||
;; at https://github.com/jeetsukumaran/DendroPy/issues/74
|
||||
(substitute* "tests/test_dataio_nexml_reader_tree_list.py"
|
||||
(("test_collection_comments_and_annotations")
|
||||
"do_not_test_collection_comments_and_annotations"))
|
||||
#t)))
|
||||
,@(package-arguments base))))))
|
||||
|
||||
(define-public python-py2bit
|
||||
(package
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||
;;; Copyright © 2018 Nicolò Balzarotti <nicolo@nixo.xyz>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -854,3 +855,36 @@ public-key cryptography. Asignify is designed to be portable and self-contained
|
|||
with zero external dependencies. Asignify can verify OpenBSD signatures, but it
|
||||
cannot sign messages in OpenBSD format yet.")
|
||||
(license license:bsd-2))))
|
||||
|
||||
(define-public enchive
|
||||
(package
|
||||
(name "enchive")
|
||||
(version "3.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/skeeto/" name "/archive/"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"17hrxpp4cpn10bk48sfvfjc8hghky34agsnypam1v9f36kbalqfk"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; no check target '
|
||||
#:make-flags (list "CC=gcc" "PREFIX=$(out)")
|
||||
#:phases (modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(add-after 'install 'post-install
|
||||
(lambda _
|
||||
(let* ((out (assoc-ref %outputs "out"))
|
||||
(lisp (string-append out "/share/emacs/site-lisp")))
|
||||
(install-file "enchive-mode.el" lisp)
|
||||
#t))))))
|
||||
(synopsis "Encrypted personal archives")
|
||||
(description
|
||||
"Enchive is a tool to encrypt files to yourself for long-term
|
||||
archival. It's a focused, simple alternative to more complex solutions such as
|
||||
GnuPG or encrypted filesystems. Enchive has no external dependencies and is
|
||||
trivial to build for local use. Portability is emphasized over performance.")
|
||||
(home-page "https://github.com/skeeto/enchive")
|
||||
(license license:unlicense)))
|
||||
|
|
|
@ -1783,19 +1783,32 @@ trees (LSM), for sustained throughput under random insert workloads.")
|
|||
;; configure.ac: WiredTiger requires a 64-bit build.
|
||||
(supported-systems '("x86_64-linux" "mips64el-linux" "aarch64-linux"))))
|
||||
|
||||
(define-public wiredtiger-3
|
||||
(package
|
||||
(inherit wiredtiger)
|
||||
(name "wiredtiger")
|
||||
(version "3.1.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://source.wiredtiger.com/releases/wiredtiger-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"014awypv579ascg4jbx4pndj2wld337m79yyzrzyr7hxrff139jx"))))))
|
||||
|
||||
(define-public guile-wiredtiger
|
||||
(package
|
||||
(name "guile-wiredtiger")
|
||||
(version "0.6.3")
|
||||
(version "0.7.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://framagit.org/a-guile-mind/guile-wiredtiger.git")
|
||||
(commit "070ed68139d99c279f058a6c293f00292d35dbd7")))
|
||||
(commit "340ad4bc2ff4dcc6216a2f5c6f9172ca320ac66b")))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"14rna97wsylajzxfif95wnblq85csgcfc666gh5dl0ssgd7x8llh"))))
|
||||
"15j36bvxxzil7qpwlmh1rffqpva3ynvrcpqhhqbj2c9208ayz595"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:parallel-tests? #f ;; tests can't be run in parallel, yet.
|
||||
|
@ -1803,21 +1816,19 @@ trees (LSM), for sustained throughput under random insert workloads.")
|
|||
(list (string-append "--with-libwiredtiger-prefix="
|
||||
(assoc-ref %build-inputs "wiredtiger")))
|
||||
#:make-flags '("GUILE_AUTO_COMPILE=0")))
|
||||
;; TODO: Remove microkanren.scm when we have a separate package
|
||||
;; for it.
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("wiredtiger" ,wiredtiger)
|
||||
`(("wiredtiger" ,wiredtiger-3)
|
||||
("guile" ,guile-2.2)))
|
||||
(propagated-inputs
|
||||
`(("guile-lib" ,guile-lib))) ;for (htmlprag)
|
||||
`(("guile-bytestructures" ,guile-bytestructures)))
|
||||
(synopsis "WiredTiger bindings for GNU Guile")
|
||||
(description
|
||||
"This package provides Guile bindings to the WiredTiger ``NoSQL''
|
||||
database. Various higher level database abstractions.")
|
||||
database.")
|
||||
(home-page "https://framagit.org/a-guile-mind/guile-wiredtiger")
|
||||
(license license:gpl3+)))
|
||||
|
||||
|
|
|
@ -1376,7 +1376,7 @@ environment set through Direnv.")
|
|||
(define-public emacs-ggtags
|
||||
(package
|
||||
(name "emacs-ggtags")
|
||||
(version "0.8.12")
|
||||
(version "0.8.13")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -1384,7 +1384,7 @@ environment set through Direnv.")
|
|||
version ".el"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ny3llk021g6r0s75xdm4hzpbxv393ddm2r6f2xdk8kqnq4gnirp"))))
|
||||
"1qa7lcrcmf76sf6dy8sxbg4adq7rg59fm0n5848w3qxgsr0h45fg"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://github.com/leoliu/ggtags")
|
||||
(synopsis "Frontend to the GNU Global source code tagging system")
|
||||
|
@ -2162,7 +2162,7 @@ keep pressing the key until it selects what you want. There's also
|
|||
(define-public emacs-fill-column-indicator
|
||||
(package
|
||||
(name "emacs-fill-column-indicator")
|
||||
(version "1.81")
|
||||
(version "1.89")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -2171,7 +2171,7 @@ keep pressing the key until it selects what you want. There's also
|
|||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1xwyqbjbbicmvhlb85vg4j5snwy1vd7rfk89ws4viws5ljkhhyg8"))))
|
||||
"09ab01np14bdcsr38xf95kpnvxzqr46mdjmphg3pigwnx39a3jvg"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://www.emacswiki.org/emacs/FillColumnIndicator")
|
||||
(synopsis "Graphically indicate the fill column")
|
||||
|
@ -2512,7 +2512,7 @@ snippets for yasnippet.")
|
|||
(define-public emacs-smart-mode-line
|
||||
(package
|
||||
(name "emacs-smart-mode-line")
|
||||
(version "2.10.1")
|
||||
(version "2.12.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -2521,7 +2521,7 @@ snippets for yasnippet.")
|
|||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0i9wajabrrsjzwd842q0m2611kf0q31p9hg1pdj81177gynkw8l8"))))
|
||||
"1hn8s6laijmg7w1bgwdfrki6h9vxkbgr8rmmssvd5yqyad5w2sba"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-rich-minority" ,emacs-rich-minority)))
|
||||
|
@ -3091,7 +3091,7 @@ an Emacs minor mode that complements the standard @command{lisp-mode}.
|
|||
While lisp-mode supports editing Lisp source files, @command{slime-mode}
|
||||
adds support for interacting with a running Common Lisp process
|
||||
for compilation, debugging, documentation lookup, and so on.")
|
||||
(license license:gpl2+)))
|
||||
(license (list license:gpl2+ license:public-domain))))
|
||||
|
||||
(define-public emacs-popup
|
||||
(package
|
||||
|
@ -4757,14 +4757,14 @@ of its name.")
|
|||
(define-public emacs-rainbow-mode
|
||||
(package
|
||||
(name "emacs-rainbow-mode")
|
||||
(version "0.13")
|
||||
(version "1.0.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://elpa.gnu.org/packages/rainbow-mode-" version ".el"))
|
||||
(sha256
|
||||
(base32
|
||||
"1d3aamx6qgqqpqijwsr02ggwrh67gfink1bir0692alfkm3zdddl"))))
|
||||
"0cpga4ax635rfpj7y2vmh7ank0yw00dcy20gjg1mj74r97by8csf"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "http://elpa.gnu.org/packages/rainbow-mode.html")
|
||||
(synopsis "Colorize color names in buffers")
|
||||
|
@ -5599,7 +5599,7 @@ This package contains the library runtime.")
|
|||
(define-public emacs-nginx-mode
|
||||
(package
|
||||
(name "emacs-nginx-mode")
|
||||
(version "1.1.4")
|
||||
(version "1.1.9")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -5609,7 +5609,7 @@ This package contains the library runtime.")
|
|||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1lvkj07kq0jkskr2f61vqb5rlrbnaz9a76ikq40w6925i2r970rr"))))
|
||||
"0bzyrj6zz1hm67bkhw23bam7qc869s3zg7m1rb1c3aa4n0aw90cq"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://github.com/ajc/nginx-mode")
|
||||
(synopsis "Emacs major mode for editing nginx config files")
|
||||
|
@ -5814,7 +5814,7 @@ mode-line.")
|
|||
(define-public emacs-yasnippet
|
||||
(package
|
||||
(name "emacs-yasnippet")
|
||||
(version "0.12.2")
|
||||
(version "0.13.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/joaotavora/yasnippet/"
|
||||
|
@ -5822,7 +5822,7 @@ mode-line.")
|
|||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"01jabaz0g67bsziayrxgv74px55fx4nlrcl0csl8f1by2102pwc5"))
|
||||
"12ls2x17agzbrj1xynjbmfa11igqxia4hj4fv6fpr66yci2r1plc"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
|
@ -7243,7 +7243,7 @@ or @code{treemacs}, but leveraging @code{Dired} to do the job of display.")
|
|||
(define-public emacs-which-key
|
||||
(package
|
||||
(name "emacs-which-key")
|
||||
(version "3.0.2")
|
||||
(version "3.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -7252,7 +7252,7 @@ or @code{treemacs}, but leveraging @code{Dired} to do the job of display.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1xvd70cwq9n31f28viyjxmr3nn8l153gsy6scpszvgvjxkiikv24"))
|
||||
"1lsj314111cp2hjjwnv3f46ws1za6bm39rgy3l19044xf6a68j5w"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
|
@ -7421,7 +7421,7 @@ created by @code{git format-patch}, from @code{magit}, @code{dired} and
|
|||
(define-public emacs-erc-hl-nicks
|
||||
(package
|
||||
(name "emacs-erc-hl-nicks")
|
||||
(version "1.3.2")
|
||||
(version "1.3.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -7430,7 +7430,7 @@ created by @code{git format-patch}, from @code{magit}, @code{dired} and
|
|||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"01svpl9bps5kx4y1wnymakxya2cznqmlynvqv2r500wpnbxczrbs"))))
|
||||
"1a1r2kc3688g8c2ybkpwh88kgmnqhg3h3032g2yn4zr9m0n3vpkr"))))
|
||||
(build-system emacs-build-system)
|
||||
(synopsis "Nickname highlighting for Emacs ERC")
|
||||
(description "@code{erc-hl-nicks} highlights nicknames in ERC, an IRC
|
||||
|
@ -9736,7 +9736,7 @@ documentation.")
|
|||
(define-public emacs-hy-mode
|
||||
(package
|
||||
(name "emacs-hy-mode")
|
||||
(version "1.0.2")
|
||||
(version "1.0.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -9745,7 +9745,7 @@ documentation.")
|
|||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0sbga36zkyhzrzcczsyjzll7b9qsa215pnlw51m4li2irm23jh17"))))
|
||||
"0b4pvbr2hf77bq2vsyfsv653q0dab7qzq85wc7kdziw7687jdf2z"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-dash" ,emacs-dash)
|
||||
|
|
|
@ -246,8 +246,8 @@ canyons and wait for the long I-shaped block to clear four rows at a time.")
|
|||
(license license:gpl3+)))
|
||||
|
||||
(define-public cataclysm-dda
|
||||
(let ((commit "ad3b0c3d521292d119f97a83390e7acfe9e9e7f7")
|
||||
(revision "1"))
|
||||
(let ((commit "0b2c194e5c6a06f4fbf14a0ec1260e0f3cf2567c")
|
||||
(revision "2"))
|
||||
(package
|
||||
(name "cataclysm-dda")
|
||||
;; This denotes the version released after the 0.C release.
|
||||
|
@ -260,7 +260,7 @@ canyons and wait for the long I-shaped block to clear four rows at a time.")
|
|||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"1kdgbl8zqd53f5yilm2c9nyq3w6585yxl5jvgxy65dlpzxcqqj7y"))
|
||||
"1yzsn0y2g27bvbxjvivjyjhkmf2w5na1qqw5qfkswcfqqwym2y33"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
|
@ -1000,7 +1000,7 @@ Every puzzle has a complete solution, although there may be more than one.")
|
|||
(define-public retux
|
||||
(package
|
||||
(name "retux")
|
||||
(version "1.3.5")
|
||||
(version "1.3.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://savannah/retux/"
|
||||
|
@ -1008,7 +1008,7 @@ Every puzzle has a complete solution, although there may be more than one.")
|
|||
version "-src.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1pcrh3z16fl412r3k7xccrgika19ahb1xh90jihgl8yy7zza2i6p"))))
|
||||
"01bidh4zisjp3nc436x0g85v60dvwb3ig37i7y01sa71j8fm4fmb"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; no check target
|
||||
|
@ -2137,7 +2137,7 @@ falling, themeable graphics and sounds, and replays.")
|
|||
(define-public wesnoth
|
||||
(package
|
||||
(name "wesnoth")
|
||||
(version "1.14.4")
|
||||
(version "1.14.5")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/wesnoth/wesnoth-"
|
||||
|
@ -2146,7 +2146,7 @@ falling, themeable graphics and sounds, and replays.")
|
|||
name "-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1hw1ap8xxpdwyx1sf8fm1g75p6724y3hwb4kpvyqbsq7bwfwsb9i"))))
|
||||
"1kgpj2f22nnx4mwd1zis3s5ny2983aasgqsmz7wnqaq7n6a7ac85"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f)) ; no check target
|
||||
|
@ -5355,7 +5355,7 @@ You can save humanity and get programming skills!")
|
|||
(build-system cmake-build-system)
|
||||
(inputs `(("bzip2" ,bzip2)
|
||||
("fluid-3" ,fluid-3)
|
||||
("fluidsynth" ,fluidsynth)
|
||||
("fluidsynth" ,fluidsynth-1) ;XXX: try using 2.x when updating
|
||||
("gtk+3" ,gtk+)
|
||||
("libgme" ,libgme)
|
||||
("libjpeg" ,libjpeg)
|
||||
|
|
|
@ -787,7 +787,7 @@ programming langauage. It also contains the utility
|
|||
(define-public appstream-glib
|
||||
(package
|
||||
(name "appstream-glib")
|
||||
(version "0.7.12")
|
||||
(version "0.7.14")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://people.freedesktop.org/~hughsient/"
|
||||
|
@ -795,7 +795,7 @@ programming langauage. It also contains the utility
|
|||
"appstream-glib-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1jcb2bggcic3iczr2hn8zp8a3c2hl1xjij0aawr7kwqmzh9b3jms"))))
|
||||
"0n0s99jmx2sx5895lcvmfjwa9r0f06i71495dpn9v9frz4asvk3d"))))
|
||||
(build-system meson-build-system)
|
||||
(native-inputs
|
||||
`(("gettext" ,gettext-minimal)
|
||||
|
|
|
@ -398,28 +398,30 @@ access the common Google services, and has full asynchronous support.")
|
|||
(define-public libgxps
|
||||
(package
|
||||
(name "libgxps")
|
||||
(version "0.2.5")
|
||||
(version "0.3.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
(version-major+minor version) "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(patches (search-patches "libgxps-CVE-2017-11590.patch"))
|
||||
(sha256
|
||||
(base32
|
||||
"184r06s8g20cfigg7m169n42jjsc9wmzzlycr4g1fxxhr72r8x9y"))))
|
||||
(build-system gnu-build-system)
|
||||
"1bhgrpb6ndlp11qwr95g9piklmjcsca7bi04f8gy9ziipm1i6as1"))))
|
||||
(build-system meson-build-system)
|
||||
(native-inputs
|
||||
`(("gobject-introspection" ,gobject-introspection)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("cairo" ,cairo)
|
||||
("glib" ,glib)
|
||||
("libarchive" ,libarchive)
|
||||
("libjpeg" ,libjpeg)
|
||||
`(("gtk+" ,gtk+)
|
||||
("libjpeg" ,libjpeg-turbo)
|
||||
("lcms" ,lcms)
|
||||
("libtiff" ,libtiff)
|
||||
("nettle" ,nettle)))
|
||||
(propagated-inputs
|
||||
;; In Requires of libgxps.pc.
|
||||
`(("cairo" ,cairo)
|
||||
("glib" ,glib)
|
||||
("libarchive" ,libarchive)))
|
||||
(home-page "https://wiki.gnome.org/Projects/libgxps")
|
||||
(synopsis "GObject-based library for handling and rendering XPS documents")
|
||||
(description
|
||||
|
@ -7226,6 +7228,71 @@ It supports ripping to any audio codec supported by a GStreamer plugin, such as
|
|||
mp3, Ogg Vorbis and FLAC")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public soundconverter
|
||||
(package
|
||||
(name "soundconverter")
|
||||
(version "3.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://launchpad.net/soundconverter/trunk/"
|
||||
version "/+download/"
|
||||
"soundconverter-" version ".tar.xz"))
|
||||
|
||||
(sha256
|
||||
(base32
|
||||
"1wrxf5py54xplrf97qp24pzbis0cvax5c6k0c7vr3z3ry8r7gd7c"))
|
||||
(patches
|
||||
(search-patches
|
||||
"soundconverter-remove-gconf-dependency.patch"))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(arguments
|
||||
`(#:imported-modules ((guix build python-build-system)
|
||||
(guix build glib-or-gtk-build-system)
|
||||
,@%gnu-build-system-modules)
|
||||
|
||||
#:modules ((guix build glib-or-gtk-build-system)
|
||||
(guix build utils)
|
||||
((guix build gnu-build-system) #:prefix gnu:)
|
||||
((guix build python-build-system) #:prefix python:))
|
||||
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-POTFILES.in
|
||||
(lambda _
|
||||
(substitute* "po/POTFILES.in"
|
||||
;; This file doesn't exist, so without removing it, the 'check
|
||||
;; phase fails for the po directory
|
||||
(("soundconverter/gconfstore\\.py") ""))))
|
||||
(add-after 'install 'wrap-soundconverter-for-python
|
||||
(assoc-ref python:%standard-phases 'wrap))
|
||||
(add-after 'install 'wrap-soundconverter
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(gi-typelib-path (getenv "GI_TYPELIB_PATH"))
|
||||
(gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH")))
|
||||
(wrap-program (string-append out "/bin/soundconverter")
|
||||
`("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
|
||||
`("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))))
|
||||
#t)))))
|
||||
(native-inputs
|
||||
`(("intltool" ,intltool)
|
||||
("pkg-config" ,pkg-config)
|
||||
("glib:bin" ,glib "bin")))
|
||||
(inputs
|
||||
`(("gtk+" ,gtk+)
|
||||
("python" ,python)
|
||||
("python-pygobject" ,python-pygobject)
|
||||
("gstreamer" ,gstreamer)
|
||||
("gst-plugins-base" ,gst-plugins-base)))
|
||||
(home-page "http://soundconverter.org/")
|
||||
(synopsis "Convert between audio formats with a graphical interface")
|
||||
(description
|
||||
"SoundConverter supports converting between many audio formats including
|
||||
Opus, Ogg Vorbis, FLAC and more. It supports parallel conversion, and
|
||||
configurable file renaming. ")
|
||||
(license license:gpl3)))
|
||||
|
||||
(define-public workrave
|
||||
(let ((commit "v1_10_21"))
|
||||
(package
|
||||
|
|
|
@ -1948,27 +1948,43 @@ designs.")
|
|||
license:asl2.0
|
||||
license:cpl1.0)))))
|
||||
|
||||
(define-public javacc
|
||||
(define-public javacc-4
|
||||
(package
|
||||
(name "javacc")
|
||||
(version "7.0.3")
|
||||
(version "4.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/javacc/javacc/"
|
||||
"archive/" version ".tar.gz"))
|
||||
(file-name (string-append "javacc-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/javacc/javacc.git")
|
||||
(commit "release_41")))
|
||||
(file-name (string-append "javacc-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"111xc9mnmc5a6qz6x3xbhqc07y1lg2b996ggzw0hrblg42zya9xf"))))
|
||||
"07ysav7j8r1c6h8qxrgqk6lwdp74ly0ad1935lragxml0qqc3ka0"))
|
||||
(modules '((guix build utils)))
|
||||
;; delete bundled jars
|
||||
(snippet '(begin (delete-file-recursively "lib") #t))))
|
||||
(build-system ant-build-system)
|
||||
;; Tests fail with
|
||||
;; /tmp/guix-build-javacc-4.1.drv-0/source/test/javacodeLA/build.xml:60:
|
||||
;; JAVACODE failed
|
||||
(arguments
|
||||
`(#:test-target "test"
|
||||
`(#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'delete-bundled-libs
|
||||
;; Delete tests to avoid build failure (we don't run them anyway).
|
||||
(add-after 'unpack 'delete-tests
|
||||
(lambda _
|
||||
(delete-file-recursively "lib") #t))
|
||||
(replace 'install (install-jars "target")))))
|
||||
(for-each delete-file
|
||||
'("src/org/javacc/JavaCCTestCase.java"
|
||||
"src/org/javacc/parser/ExpansionTest.java"
|
||||
"src/org/javacc/parser/OptionsTest.java"
|
||||
"src/org/javacc/jjtree/JJTreeOptionsTest.java"))
|
||||
(for-each delete-file-recursively
|
||||
'("src/org/javacc/parser/test"
|
||||
"src/org/javacc/jjdoc/test"))
|
||||
#t))
|
||||
(replace 'install (install-jars "bin/lib")))))
|
||||
(home-page "https://javacc.org/")
|
||||
(synopsis "Java parser generator")
|
||||
(description "Java Compiler Compiler (JavaCC) is the most popular parser
|
||||
|
@ -1980,29 +1996,34 @@ as tree building (via a tool called JJTree included with JavaCC), actions,
|
|||
debugging, etc.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public javacc-4
|
||||
(package (inherit javacc)
|
||||
(version "4.1")
|
||||
(define-public javacc
|
||||
(package
|
||||
(inherit javacc-4)
|
||||
(version "7.0.3")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/javacc/javacc.git")
|
||||
(commit "release_41")))
|
||||
(file-name (string-append "javacc-" version "-checkout"))
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/javacc/javacc/"
|
||||
"archive/" version ".tar.gz"))
|
||||
(file-name (string-append "javacc-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"07ysav7j8r1c6h8qxrgqk6lwdp74ly0ad1935lragxml0qqc3ka0"))))
|
||||
;; Tests fail with
|
||||
;; /tmp/guix-build-javacc-4.1.drv-0/source/test/javacodeLA/build.xml:60:
|
||||
;; JAVACODE failed
|
||||
"111xc9mnmc5a6qz6x3xbhqc07y1lg2b996ggzw0hrblg42zya9xf"))
|
||||
(modules '((guix build utils)))
|
||||
;; delete bundled jars
|
||||
(snippet '(begin (for-each delete-file-recursively
|
||||
'("bootstrap" "lib"))
|
||||
#t))))
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
`(#:make-flags ; bootstrap from javacc-4
|
||||
(list (string-append "-Dbootstrap-jar="
|
||||
(assoc-ref %build-inputs "javacc")
|
||||
"/share/java/javacc.jar"))
|
||||
#:test-target "test"
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'delete-bundled-libs
|
||||
(lambda _
|
||||
(delete-file-recursively "lib") #t))
|
||||
(replace 'install (install-jars "bin/lib")))))))
|
||||
(replace 'install (install-jars "target")))))
|
||||
(native-inputs
|
||||
`(("javacc" ,javacc-4)))))
|
||||
|
||||
;; This is the last 3.x release of ECJ
|
||||
(define-public java-ecj-3
|
||||
|
|
|
@ -317,6 +317,11 @@ generator library for C++.")
|
|||
(string-append (assoc-ref inputs "tzdata")
|
||||
"/share/zoneinfo")))
|
||||
|
||||
;; Don't phone home to check for updates.¬
|
||||
(substitute* "system/addon-manifest.xml"¬
|
||||
(("<addon optional=\\\"true\\\">service.xbmc.versioncheck</addon>")
|
||||
""))
|
||||
|
||||
;; Let's disable some tests that are known not to work here.
|
||||
;; Doing this later while in the cmake "../build" directory
|
||||
;; is trickier.
|
||||
|
|
|
@ -399,8 +399,8 @@ It has been modified to remove all non-free binary blobs.")
|
|||
;; supports qemu "virt" machine and possibly a large number of ARM boards.
|
||||
;; See : https://wiki.debian.org/DebianKernel/ARMMP.
|
||||
|
||||
(define %linux-libre-version "4.18.14")
|
||||
(define %linux-libre-hash "1gwwx8l283w8v1zylw2haqahvjns5dzqxx9li2586nnl8cfmfnwc")
|
||||
(define %linux-libre-version "4.18.15")
|
||||
(define %linux-libre-hash "0v6xs85qn1iy2dj3m6s3cfnhbwb1mjy21d9lagjni8dg3jic26hf")
|
||||
|
||||
(define %linux-libre-4.18-patches
|
||||
(list %boot-logo-patch
|
||||
|
@ -430,8 +430,8 @@ It has been modified to remove all non-free binary blobs.")
|
|||
#:patches %linux-libre-4.18-patches
|
||||
#:configuration-file kernel-config))
|
||||
|
||||
(define %linux-libre-4.14-version "4.14.76")
|
||||
(define %linux-libre-4.14-hash "1y5zqf84ngb6f5f85xpd4bdy6mlxr52x19bx3mdrp82awc9fvr7q")
|
||||
(define %linux-libre-4.14-version "4.14.77")
|
||||
(define %linux-libre-4.14-hash "18y81rga2lhsk7bjckglxz52pvnzf103ar0z2zj611g37wyf83r5")
|
||||
|
||||
(define-public linux-libre-4.14
|
||||
(make-linux-libre %linux-libre-4.14-version
|
||||
|
@ -440,8 +440,8 @@ It has been modified to remove all non-free binary blobs.")
|
|||
#:configuration-file kernel-config))
|
||||
|
||||
(define-public linux-libre-4.9
|
||||
(make-linux-libre "4.9.133"
|
||||
"1vr94czdv5alzsgm2k1r6wqm01r2zafrayjn10l6kdr4g7aga488"
|
||||
(make-linux-libre "4.9.134"
|
||||
"0f5qif27k0mhc57d98arbfkq7zlvg0ra2gz6g5fasblyjz3j7w7h"
|
||||
%intel-compatible-systems
|
||||
#:configuration-file kernel-config))
|
||||
|
||||
|
@ -3671,7 +3671,7 @@ The collection contains a set of bandwidth and latency benchmark such as:
|
|||
(package
|
||||
(name "rng-tools")
|
||||
(home-page "https://github.com/nhorman/rng-tools")
|
||||
(version "6.5")
|
||||
(version "6.6")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference (url home-page)
|
||||
|
@ -3679,7 +3679,7 @@ The collection contains a set of bandwidth and latency benchmark such as:
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"11kw1rcgzmgzwk7g1w2g0nzjraqb0pf24gxpy50k4ls2qxslw3rk"))))
|
||||
"0c32sxfvngdjzfmxn5ngc5yxwi8ij3yl216nhzyz9r31qi3m14v7"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(;; Avoid using OpenSSL, curl, and libxml2, reducing the closure by 166 MiB.
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -763,14 +763,14 @@ invoking @command{notifymuch} from the post-new hook.")
|
|||
(define-public notmuch
|
||||
(package
|
||||
(name "notmuch")
|
||||
(version "0.27")
|
||||
(version "0.28")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://notmuchmail.org/releases/notmuch-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0xh8vq2sa7r07xb3n13drc6gdiqhcgl0pj0za5xj43qkiwpikls0"))))
|
||||
"0dqarmjc8544m2w7bqrqmvsfy55fw82707z3lz9cql8nr777bjmc"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build gnu-build-system)
|
||||
|
|
|
@ -2659,7 +2659,7 @@ to BMP, JPEG or PNG image formats.")
|
|||
(define-public maxima
|
||||
(package
|
||||
(name "maxima")
|
||||
(version "5.41.0")
|
||||
(version "5.42.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -2667,7 +2667,7 @@ to BMP, JPEG or PNG image formats.")
|
|||
version "-source/" name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0x0n81z0s4pl8nwpf7ivlsbvsdphm9w42250g7qdkizl0132by6s"))
|
||||
"0d5pdihvcbwb7r4i4qs5qqgsz46hxlq33qj8is053llrgn9ylpyn"))
|
||||
(patches (search-patches "maxima-defsystem-mkdir.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
|
|
|
@ -3568,7 +3568,7 @@ are a C compiler and glib. Full API documentation and examples are included.")
|
|||
("fltk" ,fltk)
|
||||
("libogg" ,libogg)
|
||||
("libsamplerate" ,libsamplerate)
|
||||
("fluidsynth" ,fluidsynth)
|
||||
("fluidsynth" ,fluidsynth-1) ;XXX: try using 2.x when updating
|
||||
("libvorbis" ,libvorbis)
|
||||
("alsa-lib" ,alsa-lib)
|
||||
("portaudio" ,portaudio)
|
||||
|
|
|
@ -160,7 +160,7 @@ index 5e4cdfd..690f180 100644
|
|||
|
||||
/* Try to make this image bootable using the EFI Boot Manager, if available. */
|
||||
if (!efi_distributor || efi_distributor[0] == '\0')
|
||||
@@ -1887,8 +1892,11 @@ main (int argc, char *argv[])
|
||||
@@ -1887,7 +1892,10 @@ main (int argc, char *argv[])
|
||||
efidir_grub_dev->disk->name,
|
||||
(part ? ",": ""), (part ? : ""));
|
||||
grub_free (part);
|
||||
|
@ -174,3 +174,24 @@ index 5e4cdfd..690f180 100644
|
|||
}
|
||||
break;
|
||||
|
||||
|
||||
Below is a followup to the patch above: the uninitialized variable could lead
|
||||
‘grub-install’ to error out when it shouldn’t (seen on an AArch64 box where
|
||||
‘grub_install_remove_efi_entries_by_distributor’ didn't have any entry to
|
||||
remove):
|
||||
|
||||
grub-install: error: efibootmgr failed to register the boot entry: Unknown error 65535.
|
||||
|
||||
See <http://lists.gnu.org/archive/html/bug-grub/2018-10/msg00006.html>.
|
||||
|
||||
--- grub-2.02/grub-core/osdep/unix/platform.c 2018-10-17 22:21:53.015284846 +0200
|
||||
+++ grub-2.02/grub-core/osdep/unix/platform.c 2018-10-17 22:21:55.595271222 +0200
|
||||
@@ -85,7 +85,7 @@ grub_install_remove_efi_entries_by_distr
|
||||
pid_t pid = grub_util_exec_pipe ((const char * []){ "efibootmgr", NULL }, &fd);
|
||||
char *line = NULL;
|
||||
size_t len = 0;
|
||||
- int rc;
|
||||
+ int rc = 0;
|
||||
|
||||
if (!pid)
|
||||
{
|
||||
|
|
|
@ -1,48 +0,0 @@
|
|||
Fix CVE-2017-11590:
|
||||
|
||||
https://bugzilla.gnome.org/show_bug.cgi?id=785479
|
||||
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-11590
|
||||
|
||||
Patch copied from upstream source repository:
|
||||
|
||||
https://git.gnome.org/browse/libgxps/commit/?id=9d5d292055250ed298f3b89dc332d6db4003a031
|
||||
|
||||
From 9d5d292055250ed298f3b89dc332d6db4003a031 Mon Sep 17 00:00:00 2001
|
||||
From: Marek Kasik <mkasik@redhat.com>
|
||||
Date: Wed, 26 Jul 2017 16:23:37 +0200
|
||||
Subject: archive: Check for pathname being NULL before dereferencing
|
||||
|
||||
Check whether "archive_entry_pathname ()" returns a non-NULL pathname
|
||||
before using it to avoid a NULL pointer being dereferenced.
|
||||
|
||||
https://bugzilla.gnome.org/show_bug.cgi?id=785479
|
||||
---
|
||||
libgxps/gxps-archive.c | 5 ++++-
|
||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/libgxps/gxps-archive.c b/libgxps/gxps-archive.c
|
||||
index acf8d7d..e763773 100644
|
||||
--- a/libgxps/gxps-archive.c
|
||||
+++ b/libgxps/gxps-archive.c
|
||||
@@ -257,6 +257,7 @@ gxps_archive_initable_init (GInitable *initable,
|
||||
GXPSArchive *archive;
|
||||
ZipArchive *zip;
|
||||
struct archive_entry *entry;
|
||||
+ const gchar *pathname;
|
||||
|
||||
archive = GXPS_ARCHIVE (initable);
|
||||
|
||||
@@ -281,7 +282,9 @@ gxps_archive_initable_init (GInitable *initable,
|
||||
|
||||
while (gxps_zip_archive_iter_next (zip, &entry)) {
|
||||
/* FIXME: We can ignore directories here */
|
||||
- g_hash_table_add (archive->entries, g_strdup (archive_entry_pathname (entry)));
|
||||
+ pathname = archive_entry_pathname (entry);
|
||||
+ if (pathname != NULL)
|
||||
+ g_hash_table_add (archive->entries, g_strdup (pathname));
|
||||
archive_read_data_skip (zip->archive);
|
||||
}
|
||||
|
||||
--
|
||||
cgit v0.12
|
||||
|
|
@ -1,31 +1,17 @@
|
|||
Fix "Hostname" parsing in OpenSSH config files, as reported
|
||||
at <https://red.libssh.org/issues/260>.
|
||||
|
||||
From: Niels Ole Salscheider <niels_ole@salscheider-online.de>
|
||||
Date: Mon, 8 May 2017 17:36:13 +0200
|
||||
Subject: [PATCH] Fix reading of the first parameter
|
||||
|
||||
This is a fixup for 7b8b5eb4eac314a3a29be812bef0264c6611f6e7.
|
||||
Previously, it would return as long as the parameter was _not_ seen
|
||||
before. It also did not handle the case for the unsupported opcode (-1)
|
||||
It does not handle the case for the unsupported opcode (-1)
|
||||
which would cause a segfault when accessing the "seen" array.
|
||||
---
|
||||
src/config.c | 5 +++--
|
||||
1 file changed, 3 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/config.c b/src/config.c
|
||||
index 7c03b27..238a655 100644
|
||||
index c5313ec8..72e07639 100644
|
||||
--- a/src/config.c
|
||||
+++ b/src/config.c
|
||||
@@ -218,8 +218,9 @@ static int ssh_config_parse_line(ssh_session session, const char *line,
|
||||
@@ -218,7 +218,8 @@ static int ssh_config_parse_line(ssh_session session, const char *line,
|
||||
}
|
||||
|
||||
opcode = ssh_config_get_opcode(keyword);
|
||||
- if (*parsing == 1 && opcode != SOC_HOST) {
|
||||
- if (seen[opcode] == 0) {
|
||||
+ if (*parsing == 1 && opcode != SOC_HOST &&
|
||||
+ opcode > SOC_UNSUPPORTED && opcode < SOC_END) {
|
||||
+ if (seen[opcode] == 1) {
|
||||
if (seen[opcode] != 0) {
|
||||
return 0;
|
||||
}
|
||||
seen[opcode] = 1;
|
||||
|
|
|
@ -0,0 +1,83 @@
|
|||
From: Sebastian Ramacher <sebastian@ramacher.at>
|
||||
Date: Fri, 6 Apr 2018 13:25:35 +0200
|
||||
Subject: Only fetch profiles if GConf is still available
|
||||
|
||||
---
|
||||
bin/soundconverter.py | 1 -
|
||||
soundconverter/gstreamer.py | 44 ++++++++++++++++++++++++--------------------
|
||||
2 files changed, 24 insertions(+), 21 deletions(-)
|
||||
|
||||
diff --git a/bin/soundconverter.py b/bin/soundconverter.py
|
||||
index 39055ce..5198443 100644
|
||||
--- a/bin/soundconverter.py
|
||||
+++ b/bin/soundconverter.py
|
||||
@@ -66,7 +66,6 @@ def _check_libs():
|
||||
import gi
|
||||
gi.require_version('Gst', '1.0')
|
||||
gi.require_version('Gtk', '3.0')
|
||||
- gi.require_version('GConf', '2.0')
|
||||
from gi.repository import GObject
|
||||
# force GIL creation - see https://bugzilla.gnome.org/show_bug.cgi?id=710447
|
||||
import threading
|
||||
diff --git a/soundconverter/gstreamer.py b/soundconverter/gstreamer.py
|
||||
index 23aaa9b..211b052 100644
|
||||
--- a/soundconverter/gstreamer.py
|
||||
+++ b/soundconverter/gstreamer.py
|
||||
@@ -25,7 +25,7 @@ from urllib.parse import urlparse
|
||||
from gettext import gettext as _
|
||||
|
||||
import gi
|
||||
-from gi.repository import Gst, Gtk, GObject, GConf, Gio
|
||||
+from gi.repository import Gst, Gtk, GObject, Gio
|
||||
|
||||
from soundconverter.fileoperations import vfs_encode_filename, file_encode_filename
|
||||
from soundconverter.fileoperations import unquote_filename, vfs_makedirs, vfs_unlink
|
||||
@@ -66,25 +66,29 @@ _GCONF_PROFILE_LIST_PATH = "/system/gstreamer/1.0/audio/global/profile_list"
|
||||
audio_profiles_list = []
|
||||
audio_profiles_dict = {}
|
||||
|
||||
-_GCONF = GConf.Client.get_default()
|
||||
-profiles = _GCONF.all_dirs(_GCONF_PROFILE_LIST_PATH)
|
||||
-for name in profiles:
|
||||
- if _GCONF.get_bool(_GCONF_PROFILE_PATH + name + "/active"):
|
||||
- # get profile
|
||||
- description = _GCONF.get_string(_GCONF_PROFILE_PATH + name + "/name")
|
||||
- extension = _GCONF.get_string(_GCONF_PROFILE_PATH + name + "/extension")
|
||||
- pipeline = _GCONF.get_string(_GCONF_PROFILE_PATH + name + "/pipeline")
|
||||
- # check profile validity
|
||||
- if not extension or not pipeline:
|
||||
- continue
|
||||
- if not description:
|
||||
- description = extension
|
||||
- if description in audio_profiles_dict:
|
||||
- continue
|
||||
- # store
|
||||
- profile = description, extension, pipeline
|
||||
- audio_profiles_list.append(profile)
|
||||
- audio_profiles_dict[description] = profile
|
||||
+try:
|
||||
+ from gi.repository import GConf
|
||||
+ _GCONF = GConf.Client.get_default()
|
||||
+ profiles = _GCONF.all_dirs(_GCONF_PROFILE_LIST_PATH)
|
||||
+ for name in profiles:
|
||||
+ if _GCONF.get_bool(_GCONF_PROFILE_PATH + name + "/active"):
|
||||
+ # get profile
|
||||
+ description = _GCONF.get_string(_GCONF_PROFILE_PATH + name + "/name")
|
||||
+ extension = _GCONF.get_string(_GCONF_PROFILE_PATH + name + "/extension")
|
||||
+ pipeline = _GCONF.get_string(_GCONF_PROFILE_PATH + name + "/pipeline")
|
||||
+ # check profile validity
|
||||
+ if not extension or not pipeline:
|
||||
+ continue
|
||||
+ if not description:
|
||||
+ description = extension
|
||||
+ if description in audio_profiles_dict:
|
||||
+ continue
|
||||
+ # store
|
||||
+ profile = description, extension, pipeline
|
||||
+ audio_profiles_list.append(profile)
|
||||
+ audio_profiles_dict[description] = profile
|
||||
+except ImportError:
|
||||
+ pass
|
||||
|
||||
required_elements = ('decodebin', 'fakesink', 'audioconvert', 'typefind', 'audiorate')
|
||||
for element in required_elements:
|
|
@ -131,14 +131,14 @@ data as produced by digital cameras.")
|
|||
(define-public libgphoto2
|
||||
(package
|
||||
(name "libgphoto2")
|
||||
(version "2.5.18")
|
||||
(version "2.5.19")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/gphoto/libgphoto/"
|
||||
version "/libgphoto2-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1v57ayp17j88bj79nl7rf4iyajbxx00kgb4l5k3kbv50gjfvh5sv"))))
|
||||
"0qrcc6kajbfb237paxrl904vvwl7hd8mnqvjw00j6m5qwd93wlk2"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs `(("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
|
|
|
@ -10131,14 +10131,14 @@ functionality in the command line.")
|
|||
(define-public python-glances
|
||||
(package
|
||||
(name "python-glances")
|
||||
(version "2.7.1")
|
||||
(version "3.0.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "Glances" version))
|
||||
(sha256
|
||||
(base32
|
||||
"11jbq40g8alsbirnd4kiagznqg270247i0m8qhi48ldf2i5xppxg"))))
|
||||
"09fxysfp1n16csqvzvawy74qm6a94nvwjf3vcf5gkqp4i6k4vjjy"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-psutil" ,python-psutil)))
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
(define-public re2
|
||||
(package
|
||||
(name "re2")
|
||||
(version "2018-09-01")
|
||||
(version "2018-10-01")
|
||||
(home-page "https://github.com/google/re2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
|
@ -37,7 +37,7 @@
|
|||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0hygr88hvy7if1i45m5r6x60zf73439j2fwzw7wwcw9gb01v690l"))))
|
||||
"10fsxsj3yip34hp2zl5rw8h2x2lgnp83fwrh7m0qfd9m99qrf4x3"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build gnu-build-system)
|
||||
|
|
|
@ -65,40 +65,36 @@
|
|||
#:use-module (srfi srfi-1))
|
||||
|
||||
(define-public libssh
|
||||
;; This commit from the 'v0-7' branch contains 7 memory-management-related
|
||||
;; bug fixes that we'd rather have.
|
||||
(let ((commit "239d0f75b5f909174c2ef7fb08d23bcfa6b20ba0")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "libssh")
|
||||
(version (git-version "0.7.5" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://git.libssh.org/projects/libssh.git")
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"01w72w1jsgs9ilj3n1gp6qkmdxr9n74i5h2nipi3x1vzm7bv8na1"))
|
||||
(patches (search-patches "libssh-hostname-parser-bug.patch"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system cmake-build-system)
|
||||
(outputs '("out" "debug"))
|
||||
(arguments
|
||||
'(#:configure-flags '("-DWITH_GCRYPT=ON")
|
||||
(package
|
||||
(name "libssh")
|
||||
(version "0.7.6")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://git.libssh.org/projects/libssh.git")
|
||||
(commit (string-append "libssh-" version))))
|
||||
(patches (search-patches "libssh-hostname-parser-bug.patch"))
|
||||
(sha256
|
||||
(base32
|
||||
"0slwqa36mhyb6brdv2jvb9fxp7rvsv3ziv67kaxx615jxn52l5pa"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system cmake-build-system)
|
||||
(outputs '("out" "debug"))
|
||||
(arguments
|
||||
'(#:configure-flags '("-DWITH_GCRYPT=ON")
|
||||
|
||||
;; TODO: Add 'CMockery' and '-DWITH_TESTING=ON' for the test suite.
|
||||
#:tests? #f))
|
||||
(inputs `(("zlib" ,zlib)
|
||||
("libgcrypt" ,libgcrypt)))
|
||||
(synopsis "SSH client library")
|
||||
(description
|
||||
"libssh is a C library implementing the SSHv2 and SSHv1 protocol for
|
||||
client and server implementations. With libssh, you can remotely execute
|
||||
programs, transfer files, and use a secure and transparent tunnel for your
|
||||
remote applications.")
|
||||
(home-page "https://www.libssh.org")
|
||||
(license license:lgpl2.1+))))
|
||||
;; TODO: Add 'CMockery' and '-DWITH_TESTING=ON' for the test suite.
|
||||
#:tests? #f))
|
||||
(inputs `(("zlib" ,zlib)
|
||||
("libgcrypt" ,libgcrypt)))
|
||||
(synopsis "SSH client library")
|
||||
(description
|
||||
"libssh is a C library implementing the SSHv2 and SSHv1 protocol for client
|
||||
and server implementations. With libssh, you can remotely execute programs,
|
||||
transfer files, and use a secure and transparent tunnel for your remote
|
||||
applications.")
|
||||
(home-page "https://www.libssh.org")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public libssh2
|
||||
(package
|
||||
|
|
|
@ -4506,3 +4506,248 @@ including:
|
|||
|
||||
It also ensures compatibility with the @code{media9} and @code{animate} packages.")
|
||||
(license license:lppl)))
|
||||
|
||||
(define-public texlive-latex-ms
|
||||
(package
|
||||
(name "texlive-latex-ms")
|
||||
(version (number->string %texlive-revision))
|
||||
(source (origin
|
||||
(method svn-fetch)
|
||||
(uri (texlive-ref "latex" "ms"))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"0m4wx3yjb5al1qsv995z8fii8xxy96mcfihbnlx43lpgayiwz35s"))))
|
||||
(build-system texlive-build-system)
|
||||
(arguments
|
||||
'(#:tex-directory "latex/ms"
|
||||
#:tex-format "latex"))
|
||||
(home-page "https://ctan.org/pkg/ms")
|
||||
(synopsis "Various LATEX packages by Martin Schröder")
|
||||
(description
|
||||
"A bundle of LATEX packages by Martin Schröder; the collection comprises:
|
||||
|
||||
@itemize
|
||||
@item @command{count1to}, make use of fixed TEX counters;
|
||||
@item @command{everysel}, set commands to execute every time a font is selected;
|
||||
@item @command{everyshi}, set commands to execute whenever a page is shipped out;
|
||||
@item @command{multitoc}, typeset the table of contents in multiple columns;
|
||||
@item @command{prelim2e}, mark typeset pages as preliminary; and
|
||||
@item @command{ragged2e}, typeset ragged text and allow hyphenation.
|
||||
@end itemize\n")
|
||||
(license license:lppl1.3c+)))
|
||||
|
||||
(define-public texlive-latex-needspace
|
||||
(package
|
||||
(name "texlive-latex-needspace")
|
||||
(version (number->string %texlive-revision))
|
||||
(source (origin
|
||||
(method svn-fetch)
|
||||
(uri (texlive-ref "latex" "needspace"))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"0kw80f5jh4gdpa2ka815abza3gr5z8b929w0745vrlc59pl0017y"))))
|
||||
(build-system texlive-build-system)
|
||||
(arguments
|
||||
'(#:tex-directory "latex/needspace"
|
||||
#:tex-format "latex"))
|
||||
(inputs
|
||||
`(("texlive-latex-filecontents" ,texlive-latex-filecontents)))
|
||||
(home-page "https://www.ctan.org/pkg/needspace")
|
||||
(synopsis "Insert pagebreak if not enough space")
|
||||
(description
|
||||
"Provides commands to disable pagebreaking within a given vertical
|
||||
space. If there is not enough space between the command and the bottom of the
|
||||
page, a new page will be started.")
|
||||
(license license:lppl)))
|
||||
|
||||
(define-public texlive-latex-eukdate
|
||||
(package
|
||||
(name "texlive-latex-eukdate")
|
||||
(version (number->string %texlive-revision))
|
||||
(source
|
||||
(origin
|
||||
(method svn-fetch)
|
||||
(uri (svn-reference
|
||||
(url (string-append "svn://www.tug.org/texlive/tags/"
|
||||
%texlive-tag "/Master/texmf-dist/"
|
||||
"/tex/latex/eukdate"))
|
||||
(revision %texlive-revision)))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"18xan116l8w47v560bkw6nbhkrml7g04xrlzk3jrpc7qsyf3n5fz"))))
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils))
|
||||
#:builder
|
||||
(begin
|
||||
(use-modules (guix build utils))
|
||||
(let ((target (string-append (assoc-ref %outputs "out")
|
||||
"/share/texmf-dist/tex/latex/eukdate")))
|
||||
(mkdir-p target)
|
||||
(copy-recursively (assoc-ref %build-inputs "source") target)
|
||||
#t))))
|
||||
(home-page "https://www.ctan.org/pkg/eukdate")
|
||||
(synopsis "UK format dates, with weekday")
|
||||
(description
|
||||
"The package is used to change the format of @code{\\today}’s date,
|
||||
including the weekday, e.g., \"Saturday, 26 June 2008\", the 'UK format', which
|
||||
is preferred in many parts of the world, as distinct from that which is used in
|
||||
@code{\\maketitle} of the article class, \"June 26, 2008\", the 'US format'.")
|
||||
(license license:lppl)))
|
||||
|
||||
(define-public texlive-generic-ulem
|
||||
(package
|
||||
(name "texlive-generic-ulem")
|
||||
(version (number->string %texlive-revision))
|
||||
(source
|
||||
(origin
|
||||
(method svn-fetch)
|
||||
(uri (svn-reference
|
||||
(url (string-append "svn://www.tug.org/texlive/tags/"
|
||||
%texlive-tag "/Master/texmf-dist/"
|
||||
"/tex/generic/ulem"))
|
||||
(revision %texlive-revision)))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"1rzdniqq9zk39w8ch8ylx3ywh2mj87s4ivchrsk2b8nx06jyn797"))))
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils))
|
||||
#:builder
|
||||
(begin
|
||||
(use-modules (guix build utils))
|
||||
(let ((target (string-append (assoc-ref %outputs "out")
|
||||
"/share/texmf-dist/tex/generic/ulem")))
|
||||
(mkdir-p target)
|
||||
(copy-recursively (assoc-ref %build-inputs "source") target)
|
||||
#t))))
|
||||
(home-page "https://www.ctan.org/pkg/ulem")
|
||||
(synopsis "Underline text in TeX")
|
||||
(description
|
||||
"The package provides an @code{\\ul} (underline) command which will break
|
||||
over line ends; this technique may be used to replace @code{\\em} (both in that
|
||||
form and as the @code{\\emph} command), so as to make output look as if it comes
|
||||
from a typewriter. The package also offers double and wavy underlining, and
|
||||
striking out (line through words) and crossing out (/// over words).")
|
||||
(license license:lppl1.3c+)))
|
||||
|
||||
(define-public texlive-latex-pgf
|
||||
(package
|
||||
(name "texlive-latex-pgf")
|
||||
(version (number->string %texlive-revision))
|
||||
(source
|
||||
(origin
|
||||
(method svn-fetch)
|
||||
(uri (svn-reference
|
||||
(url (string-append "svn://www.tug.org/texlive/tags/"
|
||||
%texlive-tag "/Master/texmf-dist/"
|
||||
"/tex/latex/pgf"))
|
||||
(revision %texlive-revision)))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"1dq8p10pz8wn0vx412m7d7d5gj1syxly3yqdqvf7lv2xl8zndn5h"))))
|
||||
(build-system trivial-build-system)
|
||||
(native-inputs
|
||||
`(("texlive-latex-pgf-generic"
|
||||
,(origin
|
||||
(method svn-fetch)
|
||||
(uri (svn-reference
|
||||
(url (string-append "svn://www.tug.org/texlive/tags/"
|
||||
%texlive-tag "/Master/texmf-dist/"
|
||||
"/tex/generic/pgf"))
|
||||
(revision %texlive-revision)))
|
||||
(file-name (string-append "texlive-latex-pgf-generic" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"0xkxw26sjzr5npjpzpr28yygwdbhzpdd0hsk80gjpidhcxmz393i"))))))
|
||||
(arguments
|
||||
`(#:modules ((guix build utils))
|
||||
#:builder
|
||||
(begin
|
||||
(use-modules (guix build utils))
|
||||
(let ((target-generic (string-append (assoc-ref %outputs "out")
|
||||
"/share/texmf-dist/tex/generic/pgf"))
|
||||
(target-latex (string-append (assoc-ref %outputs "out")
|
||||
"/share/texmf-dist/tex/latex/pgf")))
|
||||
(mkdir-p target-generic)
|
||||
(mkdir-p target-latex)
|
||||
(copy-recursively (assoc-ref %build-inputs "texlive-latex-pgf-generic") target-generic)
|
||||
(copy-recursively (assoc-ref %build-inputs "source") target-latex)
|
||||
#t))))
|
||||
(home-page "https://www.ctan.org/pkg/tikz")
|
||||
(synopsis "Create PostScript and PDF graphics in TeX")
|
||||
(description
|
||||
"PGF is a macro package for creating graphics. It is platform- and
|
||||
format-independent and works together with the most important TeX backend
|
||||
drivers, including pdfTeX and dvips. It comes with a user-friendly syntax layer
|
||||
called TikZ.
|
||||
|
||||
Its usage is similar to pstricks and the standard picture environment. PGF
|
||||
works with plain (pdf-)TeX, (pdf-)LaTeX, and ConTeXt. Unlike pstricks, it can
|
||||
produce either PostScript or PDF output.")
|
||||
(license license:lppl1.3c+)))
|
||||
|
||||
(define-public texlive-latex-koma-script
|
||||
(package
|
||||
(name "texlive-latex-koma-script")
|
||||
(version (number->string %texlive-revision))
|
||||
(source (origin
|
||||
(method svn-fetch)
|
||||
(uri (svn-reference
|
||||
(url (string-append "svn://www.tug.org/texlive/tags/"
|
||||
%texlive-tag "/Master/texmf-dist/"
|
||||
"/tex/latex/koma-script"))
|
||||
(revision %texlive-revision)))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"1g8qg796hc6s092islnybaxs115ldsqwp2vxkk3gpy6vh7wc9r50"))))
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils)
|
||||
(ice-9 match))
|
||||
#:builder
|
||||
(begin
|
||||
(use-modules (guix build utils)
|
||||
(ice-9 match))
|
||||
(let ((root (string-append (assoc-ref %outputs "out")
|
||||
"/share/texmf-dist/"))
|
||||
(pkgs '(("source" . "tex/latex/koma-script"))))
|
||||
(for-each (match-lambda
|
||||
((pkg . dir)
|
||||
(let ((target (string-append root dir)))
|
||||
(mkdir-p target)
|
||||
(copy-recursively (assoc-ref %build-inputs pkg)
|
||||
target))))
|
||||
pkgs)
|
||||
#t))))
|
||||
(home-page "https://www.ctan.org/pkg/koma-script")
|
||||
(synopsis "Bundle of versatile classes and packages")
|
||||
(description
|
||||
"The KOMA-Script bundle provides replacements for the article, report, and
|
||||
book classes with emphasis on typography and versatility. There is also a
|
||||
letter class.
|
||||
|
||||
The bundle also offers:
|
||||
|
||||
@itemize
|
||||
@item a package for calculating type areas in the way laid down by the
|
||||
typographer Jan Tschichold,
|
||||
@item packages for easily changing and defining page styles,
|
||||
@item a package scrdate for getting not only the current date but also the name
|
||||
of the day, and
|
||||
@item a package scrtime for getting the current time.
|
||||
@end itemize
|
||||
|
||||
All these packages may be used not only with KOMA-Script classes but also with
|
||||
the standard classes.
|
||||
|
||||
Since every package has its own version number, the version number quoted only
|
||||
refers to the version of scrbook, scrreprt, scrartcl, scrlttr2 and
|
||||
typearea (which are the main parts of the bundle).")
|
||||
(license license:lppl1.3+)))
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
(define-public tmux
|
||||
(package
|
||||
(name "tmux")
|
||||
(version "2.7")
|
||||
(version "2.8")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -42,7 +42,7 @@
|
|||
version "/tmux-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0lnlhnafvi5700afr69g6gr62pblnd440jj0hxdbrxhk0c87vvcx"))))
|
||||
"1fm22wva2znkcs5jczrnlxrpzsk2jlwdwy4dhzzyrbsgccsz6svz"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("libevent" ,libevent)
|
||||
|
|
|
@ -427,7 +427,7 @@ everything from small to very large projects with speed and efficiency.")
|
|||
(define-public libgit2
|
||||
(package
|
||||
(name "libgit2")
|
||||
(version "0.26.6")
|
||||
(version "0.26.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/libgit2/libgit2/"
|
||||
|
@ -435,7 +435,7 @@ everything from small to very large projects with speed and efficiency.")
|
|||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0qjn1v5q282v8jih8rqjdqxr5v4n4manr0c8i3nnrf6sxd3xssbn"))
|
||||
"1vy4dnbvhcq3pw8n8zz6clnsv2xnkrichl8k96w3lb6yyk0lln35"))
|
||||
(patches (search-patches "libgit2-mtime-0.patch"))
|
||||
|
||||
;; Remove bundled software.
|
||||
|
|
|
@ -1268,7 +1268,7 @@ access to mpv's powerful playback capabilities.")
|
|||
(define-public youtube-dl
|
||||
(package
|
||||
(name "youtube-dl")
|
||||
(version "2018.09.18")
|
||||
(version "2018.10.05")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://yt-dl.org/downloads/"
|
||||
|
@ -1276,7 +1276,7 @@ access to mpv's powerful playback capabilities.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0mlsdmddmyy3xaqy366k48xds14g17l81al3kglndjkbrrji63sb"))))
|
||||
"1iq02kwxdgh07bf0w0fvbsjbdshs4kja35gy8m70ji9cj10l1mbw"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
;; The problem here is that the directory for the man page and completion
|
||||
|
|
|
@ -163,7 +163,7 @@ interpretation of the specifications for these languages.")
|
|||
(define-public vulkan-headers
|
||||
(package
|
||||
(name "vulkan-headers")
|
||||
(version "1.1.82.0")
|
||||
(version "1.1.85.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -172,7 +172,7 @@ interpretation of the specifications for these languages.")
|
|||
"archive/sdk-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1rbra47f1dkw5bjzvm0k9s2f89c2x80j904ply4bxks7sl3xlwyz"))))
|
||||
"166hqqb97kjg6h9vp8yxb1cq02i1kqaxvl693482gf8v21fl7ink"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f)) ; No tests.
|
||||
|
@ -195,7 +195,7 @@ interpretation of the specifications for these languages.")
|
|||
"archive/sdk-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"032vfysb8mi19c2lx08vc6k9mbzxmiy17wp7a22vpgwwv69kxkc6"))))
|
||||
"04d53ynlc0ww8r67hv4sxwg5sirjhpr1laaa9hc6j4niliw0166n"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ;FIXME: 23/39 tests fail. Try "tests/run_all_tests.sh".
|
||||
|
@ -251,7 +251,7 @@ and the ICD.")
|
|||
"archive/sdk-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"175qhfg9lxxfm5zks6jxaybcxamwd9q5kvjq8ikf2dbmskgybr92"))))
|
||||
"0r26px9rh09giddajlmafv21rx1la1y3bbnjgnpai8aw98wvq9mm"))))
|
||||
(build-system cmake-build-system)
|
||||
(inputs
|
||||
`(("glslang" ,glslang)
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 Pierre-Antoine Rouby <contact@parouby.fr>
|
||||
;;; Copyright © 2018 Meiyo Peng <meiyo.peng@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -233,6 +234,46 @@ from scratch. i3 is primarily targeted at advanced users and
|
|||
developers.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public i3blocks
|
||||
(let ((commit "37f23805ff886639163fbef8aedba71c8071eff8")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "i3blocks")
|
||||
(version (string-append "1.4-" revision "."
|
||||
(string-take commit 7)))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/vivien/i3blocks.git")
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"15rnrcajzyrmhlz1a21qqsjlj3dkib70806dlb386fliylc2kisb"))
|
||||
(file-name (string-append name "-" version "-checkout"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:make-flags (list "CC=gcc" (string-append "PREFIX=" %output))
|
||||
#:phases (modify-phases %standard-phases
|
||||
(add-after 'unpack 'autogen
|
||||
(lambda _ (invoke "sh" "autogen.sh")))
|
||||
(add-after 'install 'install-doc
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(man1 (string-append out "/share/man/man1")))
|
||||
(install-file "docs/i3blocks.1" man1)
|
||||
#t))))))
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(home-page "https://github.com/vivien/i3blocks")
|
||||
(synopsis "Minimalist scheduler for status bar scripts")
|
||||
(description "i3blocks executes your command lines and generates a
|
||||
status line from their output. The generated line is meant to be displayed by
|
||||
the i3 window manager through its i3bar component, as an alternative to
|
||||
i3status.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public perl-anyevent-i3
|
||||
(package
|
||||
(name "perl-anyevent-i3")
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2015 Andy Wingo <wingo@igalia.com>
|
||||
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
|
||||
|
@ -996,7 +996,7 @@ as expected.")))
|
|||
(elogind-service)
|
||||
(dbus-service)
|
||||
|
||||
(ntp-service)
|
||||
(service ntp-service-type)
|
||||
|
||||
x11-socket-directory-service
|
||||
|
||||
|
|
|
@ -53,6 +53,7 @@
|
|||
static-networking-service-type)
|
||||
#:export (%facebook-host-aliases
|
||||
dhcp-client-service
|
||||
dhcp-client-service-type
|
||||
|
||||
dhcpd-service-type
|
||||
dhcpd-configuration
|
||||
|
@ -202,9 +203,10 @@ fe80::1%lo0 apps.facebook.com\n")
|
|||
"-pf" #$pid-file ifaces))))
|
||||
(and (zero? (cdr (waitpid pid)))
|
||||
(read-pid-file #$pid-file)))))
|
||||
(stop #~(make-kill-destructor))))))
|
||||
(stop #~(make-kill-destructor))))
|
||||
isc-dhcp))
|
||||
|
||||
(define* (dhcp-client-service #:key (dhcp isc-dhcp))
|
||||
(define* (dhcp-client-service #:key (dhcp isc-dhcp)) ;deprecated
|
||||
"Return a service that runs @var{dhcp}, a Dynamic Host Configuration
|
||||
Protocol (DHCP) client, on all the non-loopback network interfaces."
|
||||
(service dhcp-client-service-type dhcp))
|
||||
|
@ -295,7 +297,8 @@ Protocol (DHCP) client, on all the non-loopback network interfaces."
|
|||
ntp-configuration?
|
||||
(ntp ntp-configuration-ntp
|
||||
(default ntp))
|
||||
(servers ntp-configuration-servers)
|
||||
(servers ntp-configuration-servers
|
||||
(default %ntp-servers))
|
||||
(allow-large-adjustment? ntp-allow-large-adjustment?
|
||||
(default #f)))
|
||||
|
||||
|
@ -368,9 +371,10 @@ restrict -6 ::1\n"))
|
|||
(description
|
||||
"Run the @command{ntpd}, the Network Time Protocol (NTP)
|
||||
daemon of the @uref{http://www.ntp.org, Network Time Foundation}. The daemon
|
||||
will keep the system clock synchronized with that of the given servers.")))
|
||||
will keep the system clock synchronized with that of the given servers.")
|
||||
(default-value (ntp-configuration))))
|
||||
|
||||
(define* (ntp-service #:key (ntp ntp)
|
||||
(define* (ntp-service #:key (ntp ntp) ;deprecated
|
||||
(servers %ntp-servers)
|
||||
allow-large-adjustment?)
|
||||
"Return a service that runs the daemon from @var{ntp}, the
|
||||
|
@ -1062,10 +1066,10 @@ networking."))))
|
|||
#~("-u")
|
||||
#~())
|
||||
#$@(if interface
|
||||
#~(string-append "-i" #$interface)
|
||||
#~((string-append "-i" #$interface))
|
||||
#~())
|
||||
#$@(if config-file
|
||||
#~(string-append "-c" #$config-file)
|
||||
#~((string-append "-c" #$config-file))
|
||||
#~())
|
||||
#$@extra-options)
|
||||
#:pid-file #$pid-file))
|
||||
|
|
|
@ -44,7 +44,7 @@
|
|||
|
||||
;; Add services to the baseline: a DHCP client and
|
||||
;; an SSH server.
|
||||
(services (cons* (dhcp-client-service)
|
||||
(services (cons* (service dhcp-client-service-type)
|
||||
(service openssh-service-type
|
||||
(openssh-configuration
|
||||
(port-number 2222)))
|
||||
|
|
|
@ -45,7 +45,7 @@
|
|||
;; Globally-installed packages.
|
||||
(packages (cons* screen openssh %base-packages))
|
||||
|
||||
(services (cons* (dhcp-client-service)
|
||||
(services (cons* (service dhcp-client-service-type)
|
||||
;; mingetty does not work on serial lines.
|
||||
;; Use agetty with board-specific serial parameters.
|
||||
(agetty-service
|
||||
|
|
|
@ -181,7 +181,7 @@ fi
|
|||
alias ls='ls -p --color=auto'
|
||||
alias ll='ls -l'
|
||||
alias grep='grep --color=auto'\n"))
|
||||
(zlogin (plain-file "zlogin" "\
|
||||
(zprofile (plain-file "zprofile" "\
|
||||
# Honor system-wide environment variables
|
||||
source /etc/profile\n"))
|
||||
(guile-wm (computed-file "guile-wm" copy-guile-wm))
|
||||
|
@ -197,7 +197,10 @@ set debug-file-directory ~/.guix-profile/lib/debug
|
|||
set auto-load safe-path /gnu/store/*/lib\n")))
|
||||
`((".bash_profile" ,profile)
|
||||
(".bashrc" ,bashrc)
|
||||
(".zlogin" ,zlogin)
|
||||
;; Zsh sources ~/.zprofile before ~/.zshrc, and it sources ~/.zlogin
|
||||
;; after ~/.zshrc. To avoid interfering with any customizations a user
|
||||
;; may have made in their ~/.zshrc, put this in .zprofile, not .zlogin.
|
||||
(".zprofile" ,zprofile)
|
||||
(".nanorc" ,(plain-file "nanorc" "\
|
||||
# Include all the syntax highlighting modules.
|
||||
include /run/current-system/profile/share/nano/*.nanorc\n"))
|
||||
|
|
|
@ -673,7 +673,7 @@ non-ASCII names from /tmp.")
|
|||
(name-service-switch %mdns-host-lookup-nss)
|
||||
(services (cons* (avahi-service #:debug? #t)
|
||||
(dbus-service)
|
||||
(dhcp-client-service) ;needed for multicast
|
||||
(service dhcp-client-service-type) ;needed for multicast
|
||||
|
||||
;; Enable heavyweight debugging output.
|
||||
(modify-services (operating-system-user-services
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
|
||||
(define %memcached-os
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
(service memcached-service-type)))
|
||||
|
||||
(define* (run-memcached-test #:optional (port 11211))
|
||||
|
@ -130,7 +130,7 @@
|
|||
(operating-system
|
||||
(inherit
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
(service mongodb-service-type)))
|
||||
(packages (cons* mongodb
|
||||
%base-packages))))
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
|
||||
(define %dicod-os
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
(service dicod-service-type
|
||||
(dicod-configuration
|
||||
(interfaces '("0.0.0.0"))
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
|
||||
(define %opensmtpd-os
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
(service opensmtpd-service-type
|
||||
(opensmtpd-configuration
|
||||
(config-file
|
||||
|
@ -155,7 +155,7 @@ accept from any for local deliver to mbox
|
|||
|
||||
(define %exim-os
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
(service mail-aliases-service-type '())
|
||||
(service exim-service-type
|
||||
(exim-configuration
|
||||
|
@ -283,7 +283,7 @@ acl_check_data:
|
|||
|
||||
(define %dovecot-os
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
(dovecot-service #:config
|
||||
(dovecot-configuration
|
||||
(disable-plaintext-auth? #f)
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
"Run a test of an OS running XMPP-SERVICE, which writes its PID to PID-FILE."
|
||||
(define os
|
||||
(marionette-operating-system
|
||||
(simple-operating-system (dhcp-client-service)
|
||||
(simple-operating-system (service dhcp-client-service-type)
|
||||
xmpp-service)
|
||||
#:imported-modules '((gnu services herd))))
|
||||
|
||||
|
@ -167,7 +167,7 @@
|
|||
(define (run-bitlbee-test)
|
||||
(define os
|
||||
(marionette-operating-system
|
||||
(simple-operating-system (dhcp-client-service)
|
||||
(simple-operating-system (service dhcp-client-service-type)
|
||||
(service bitlbee-service-type
|
||||
(bitlbee-configuration
|
||||
(interface "0.0.0.0"))))
|
||||
|
|
|
@ -85,7 +85,7 @@
|
|||
|
||||
(define %prometheus-node-exporter-os
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
(service prometheus-node-exporter-service-type
|
||||
(prometheus-node-exporter-configuration))))
|
||||
|
||||
|
|
|
@ -39,7 +39,7 @@
|
|||
(define %inetd-os
|
||||
;; Operating system with 2 inetd services.
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
(service inetd-service-type
|
||||
(inetd-configuration
|
||||
(entries (list
|
||||
|
@ -463,7 +463,7 @@ COMMIT
|
|||
(define os
|
||||
(marionette-operating-system
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
(service inetd-service-type
|
||||
(inetd-configuration
|
||||
(entries (list
|
||||
|
|
|
@ -55,7 +55,7 @@
|
|||
(services (cons*
|
||||
(service rpcbind-service-type
|
||||
(rpcbind-configuration))
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
%base-services))))
|
||||
|
||||
(define (run-nfs-test name socket)
|
||||
|
|
|
@ -111,7 +111,7 @@ PORT."
|
|||
;; Return operating system under test.
|
||||
(let ((base-os
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
(service rsync-service-type))))
|
||||
(operating-system
|
||||
(inherit base-os)
|
||||
|
|
|
@ -39,7 +39,7 @@ empty-password logins.
|
|||
When SFTP? is true, run an SFTP server test."
|
||||
(define os
|
||||
(marionette-operating-system
|
||||
(simple-operating-system (dhcp-client-service) ssh-service)
|
||||
(simple-operating-system (service dhcp-client-service-type) ssh-service)
|
||||
#:imported-modules '((gnu services herd)
|
||||
(guix combinators))))
|
||||
(define vm
|
||||
|
|
|
@ -92,7 +92,7 @@
|
|||
;; Operating system under test.
|
||||
(let ((base-os
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
(service cgit-service-type
|
||||
(cgit-configuration
|
||||
(nginx %cgit-configuration-nginx)))
|
||||
|
@ -237,7 +237,7 @@ HTTP-PORT."
|
|||
|
||||
(define %git-http-os
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
(service fcgiwrap-service-type)
|
||||
(service nginx-service-type %git-nginx-configuration)
|
||||
%test-repository-service))
|
||||
|
@ -328,7 +328,7 @@ HTTP-PORT."
|
|||
|
||||
(define %gitolite-os
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
(service openssh-service-type)
|
||||
(service gitolite-service-type
|
||||
(gitolite-configuration
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
|
||||
(define %libvirt-os
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
(dbus-service)
|
||||
(polkit-service)
|
||||
(service libvirt-service-type)))
|
||||
|
|
|
@ -125,7 +125,7 @@ HTTP-PORT."
|
|||
|
||||
(define %httpd-os
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
(service httpd-service-type
|
||||
(httpd-configuration
|
||||
(config
|
||||
|
@ -154,7 +154,7 @@ HTTP-PORT."
|
|||
(define %nginx-os
|
||||
;; Operating system under test.
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
(service nginx-service-type
|
||||
(nginx-configuration
|
||||
(log-directory "/var/log/nginx")
|
||||
|
@ -188,7 +188,7 @@ sub vcl_synth {
|
|||
|
||||
(define %varnish-os
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
;; Pretend to be a web server that serves %index.html-contents.
|
||||
(service varnish-service-type
|
||||
(varnish-configuration
|
||||
|
@ -237,7 +237,7 @@ echo(\"Computed by php:\".((string)(2+3)));
|
|||
(define %php-fpm-os
|
||||
;; Operating system under test.
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
(service php-fpm-service-type)
|
||||
(service nginx-service-type
|
||||
(nginx-configuration
|
||||
|
@ -392,7 +392,7 @@ HTTP-PORT, along with php-fpm."
|
|||
|
||||
(define %hpcguix-web-os
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
(service hpcguix-web-service-type
|
||||
(hpcguix-web-configuration
|
||||
(specs %hpcguix-web-specs)))))
|
||||
|
@ -407,7 +407,7 @@ HTTP-PORT, along with php-fpm."
|
|||
(define %tailon-os
|
||||
;; Operating system under test.
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service dhcp-client-service-type)
|
||||
(service tailon-service-type
|
||||
(tailon-configuration
|
||||
(config-file
|
||||
|
|
|
@ -50,7 +50,7 @@
|
|||
"Return a URI string for the Python package hosted on the Python Package
|
||||
Index (PyPI) corresponding to NAME and VERSION. EXTENSION is the file name
|
||||
extension, such as '.tar.gz'."
|
||||
(string-append "https://pypi.io/packages/source/"
|
||||
(string-append "https://pypi.org/packages/source/"
|
||||
(string-take name 1) "/" name "/"
|
||||
name "-" version extension))
|
||||
|
||||
|
|
|
@ -438,6 +438,14 @@ This is the declarative counterpart of 'gexp->file'."
|
|||
(base file-append-base) ;<package> | <derivation> | ...
|
||||
(suffix file-append-suffix)) ;list of strings
|
||||
|
||||
(define (write-file-append file port)
|
||||
(match file
|
||||
(($ <file-append> base suffix)
|
||||
(format port "#<file-append ~s ~s>" base
|
||||
(string-join suffix)))))
|
||||
|
||||
(set-record-type-printer! <file-append> write-file-append)
|
||||
|
||||
(define (file-append base . suffix)
|
||||
"Return a <file-append> object that expands to the concatenation of BASE and
|
||||
SUFFIX."
|
||||
|
|
|
@ -330,7 +330,7 @@ VERSION, SOURCE-URL, HOME-PAGE, SYNOPSIS, DESCRIPTION, and LICENSE."
|
|||
(define (pypi-url? url)
|
||||
(or (string-prefix? "https://pypi.org/" url)
|
||||
(string-prefix? "https://pypi.python.org/" url)
|
||||
(string-prefix? "https://pypi.io/packages" url)))
|
||||
(string-prefix? "https://pypi.org/packages" url)))
|
||||
|
||||
(let ((source-url (and=> (package-source package) origin-uri))
|
||||
(fetch-method (and=> (package-source package) origin-method)))
|
||||
|
|
|
@ -198,8 +198,11 @@ added to the pack."
|
|||
(with-directory-excursion %root
|
||||
(exit
|
||||
(zero? (apply system* "tar"
|
||||
"-I"
|
||||
(string-join '#+(compressor-command compressor))
|
||||
#+@(if (compressor-command compressor)
|
||||
#~("-I"
|
||||
(string-join
|
||||
'#+(compressor-command compressor)))
|
||||
#~())
|
||||
"--format=gnu"
|
||||
|
||||
;; Avoid non-determinism in the archive. Use
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -17,6 +17,7 @@
|
|||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (guix tests)
|
||||
#:use-module ((guix config) #:select (%storedir %localstatedir))
|
||||
#:use-module (guix store)
|
||||
#:use-module (guix derivations)
|
||||
#:use-module (guix packages)
|
||||
|
@ -30,6 +31,7 @@
|
|||
#:use-module (ice-9 binary-ports)
|
||||
#:use-module (web uri)
|
||||
#:export (open-connection-for-tests
|
||||
with-external-store
|
||||
random-text
|
||||
random-bytevector
|
||||
file=?
|
||||
|
@ -74,6 +76,39 @@
|
|||
|
||||
store)))
|
||||
|
||||
(define (call-with-external-store proc)
|
||||
"Call PROC with an open connection to the external store or #f it there is
|
||||
no external store to talk to."
|
||||
(parameterize ((%daemon-socket-uri
|
||||
(string-append %localstatedir
|
||||
"/guix/daemon-socket/socket"))
|
||||
(%store-prefix %storedir))
|
||||
(define store
|
||||
(catch #t
|
||||
(lambda ()
|
||||
(open-connection))
|
||||
(const #f)))
|
||||
|
||||
(dynamic-wind
|
||||
(const #t)
|
||||
(lambda ()
|
||||
;; Since we're using a different store we must clear the
|
||||
;; package-derivation cache.
|
||||
(hash-clear! (@@ (guix packages) %derivation-cache))
|
||||
|
||||
(proc store))
|
||||
(lambda ()
|
||||
(when store
|
||||
(close-connection store))))))
|
||||
|
||||
(define-syntax-rule (with-external-store store exp ...)
|
||||
"Evaluate EXP with STORE bound to the external store rather than the
|
||||
temporary test store, or #f if there is no external store to talk to.
|
||||
|
||||
This is meant to be used for tests that need to build packages that would be
|
||||
too expensive to build entirely in the test store."
|
||||
(call-with-external-store (lambda (store) exp ...)))
|
||||
|
||||
(define (random-seed)
|
||||
(or (and=> (getenv "GUIX_TESTS_RANDOM_SEED")
|
||||
number->string)
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
# GNU Guix --- Functional package management for GNU
|
||||
# Copyright © 2018 Chris Marusich <cmmarusich@gmail.com>
|
||||
# Copyright © 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
#
|
||||
# This file is part of GNU Guix.
|
||||
#
|
||||
|
@ -28,26 +29,33 @@ fi
|
|||
|
||||
guix pack --version
|
||||
|
||||
# FIXME: Starting from commit 66e9944e078cbb9e0d618377dd6df6e639640efa,
|
||||
# '--bootstrap' is mostly ineffective since 'guix pack' produces derivations
|
||||
# that refer to guile-sqlite3 and libgcrypt. For now we just skip the test.
|
||||
exit 77
|
||||
# Starting from commit 66e9944e078cbb9e0d618377dd6df6e639640efa, 'guix pack'
|
||||
# produces derivations that refer to guile-sqlite3 and libgcrypt. To make
|
||||
# that relatively inexpensive, run the test in the user's global store if
|
||||
# possible, on the grounds that binaries may already be there or can be built
|
||||
# or downloaded inexpensively.
|
||||
|
||||
# Use --no-substitutes because we need to verify we can do this ourselves.
|
||||
GUIX_BUILD_OPTIONS="--no-substitutes"
|
||||
export GUIX_BUILD_OPTIONS
|
||||
NIX_STORE_DIR="`guile -c '(use-modules (guix config))(display %storedir)'`"
|
||||
localstatedir="`guile -c '(use-modules (guix config))(display %localstatedir)'`"
|
||||
GUIX_DAEMON_SOCKET="$localstatedir/guix/daemon-socket/socket"
|
||||
export NIX_STORE_DIR GUIX_DAEMON_SOCKET
|
||||
|
||||
if ! guile -c '(use-modules (guix)) (exit (false-if-exception (open-connection)))'
|
||||
then
|
||||
exit 77
|
||||
fi
|
||||
|
||||
# Build a tarball with no compression.
|
||||
guix pack --compression=none --bootstrap guile-bootstrap
|
||||
guix pack --compression=none guile-bootstrap
|
||||
|
||||
# Build a tarball (with compression). Check that '-e' works as well.
|
||||
out1="`guix pack --bootstrap guile-bootstrap`"
|
||||
out2="`guix pack --bootstrap -e '(@ (gnu packages bootstrap) %bootstrap-guile)'`"
|
||||
out1="`guix pack guile-bootstrap`"
|
||||
out2="`guix pack -e '(@ (gnu packages bootstrap) %bootstrap-guile)'`"
|
||||
test -n "$out1"
|
||||
test "$out1" = "$out2"
|
||||
|
||||
# Build a tarball with a symlink.
|
||||
the_pack="`guix pack --bootstrap -S /opt/gnu/bin=bin guile-bootstrap`"
|
||||
the_pack="`guix pack -S /opt/gnu/bin=bin guile-bootstrap`"
|
||||
|
||||
# Try to extract it. Note: we cannot test whether /opt/gnu/bin/guile itself
|
||||
# exists because /opt/gnu/bin may be an absolute symlink to a store item that
|
||||
|
|
|
@ -153,8 +153,8 @@ cat > "$tmpfile" <<EOF
|
|||
|
||||
(operating-system
|
||||
$OS_BASE
|
||||
(services (cons* (dhcp-client-service)
|
||||
(dhcp-client-service) ;twice!
|
||||
(services (cons* (service dhcp-client-service-type)
|
||||
(service dhcp-client-service-type) ;twice!
|
||||
%base-services)))
|
||||
EOF
|
||||
|
||||
|
|
|
@ -29,15 +29,12 @@
|
|||
#:use-module (gnu packages bootstrap)
|
||||
#:use-module (srfi srfi-64))
|
||||
|
||||
(define %store
|
||||
(open-connection-for-tests))
|
||||
|
||||
;; Globally disable grafts because they can trigger early builds.
|
||||
(%graft? #f)
|
||||
|
||||
(define-syntax-rule (test-assertm name exp)
|
||||
(define-syntax-rule (test-assertm name store exp)
|
||||
(test-assert name
|
||||
(run-with-store %store exp
|
||||
(run-with-store store exp
|
||||
#:guile-for-build (%guile-for-build))))
|
||||
|
||||
(define %gzip-compressor
|
||||
|
@ -51,37 +48,43 @@
|
|||
|
||||
(test-begin "pack")
|
||||
|
||||
;; FIXME: The following test would rebuild the world (and likely fail) as a
|
||||
;; consequence of commit c45477d2a1a651485feede20fe0f3d15aec48b39 (and related
|
||||
;; changes) that made guile-sqlite3 a dependency of the derivation.
|
||||
;; See <https://bugs.gnu.org/32184>.
|
||||
(test-skip 1)
|
||||
;; The following test needs guile-sqlite3, libgcrypt, etc. as a consequence of
|
||||
;; commit c45477d2a1a651485feede20fe0f3d15aec48b39 and related changes. Thus,
|
||||
;; run it on the user's store, if it's available, on the grounds that these
|
||||
;; dependencies may be already there, or we can get substitutes or build them
|
||||
;; quite inexpensively; see <https://bugs.gnu.org/32184>.
|
||||
|
||||
(test-assertm "self-contained-tarball"
|
||||
(mlet* %store-monad
|
||||
((profile (profile-derivation (packages->manifest
|
||||
(list %bootstrap-guile))
|
||||
#:hooks '()
|
||||
#:locales? #f))
|
||||
(tarball (self-contained-tarball "pack" profile
|
||||
#:symlinks '(("/bin/Guile"
|
||||
-> "bin/guile"))
|
||||
#:compressor %gzip-compressor
|
||||
#:archiver %tar-bootstrap))
|
||||
(check (gexp->derivation
|
||||
"check-tarball"
|
||||
#~(let ((bin (string-append "." #$profile "/bin")))
|
||||
(setenv "PATH"
|
||||
(string-append #$%tar-bootstrap "/bin"))
|
||||
(system* "tar" "xvf" #$tarball)
|
||||
(mkdir #$output)
|
||||
(exit
|
||||
(and (file-exists? (string-append bin "/guile"))
|
||||
(string=? (string-append #$%bootstrap-guile "/bin")
|
||||
(readlink bin))
|
||||
(string=? (string-append ".." #$profile
|
||||
"/bin/guile")
|
||||
(readlink "bin/Guile"))))))))
|
||||
(built-derivations (list check))))
|
||||
(with-external-store store
|
||||
(unless store (tests-skip 1))
|
||||
(test-assertm "self-contained-tarball" store
|
||||
(mlet* %store-monad
|
||||
((profile (profile-derivation (packages->manifest
|
||||
(list %bootstrap-guile))
|
||||
#:hooks '()
|
||||
#:locales? #f))
|
||||
(tarball (self-contained-tarball "pack" profile
|
||||
#:symlinks '(("/bin/Guile"
|
||||
-> "bin/guile"))
|
||||
#:compressor %gzip-compressor
|
||||
#:archiver %tar-bootstrap))
|
||||
(check (gexp->derivation
|
||||
"check-tarball"
|
||||
#~(let ((bin (string-append "." #$profile "/bin")))
|
||||
(setenv "PATH"
|
||||
(string-append #$%tar-bootstrap "/bin"))
|
||||
(system* "tar" "xvf" #$tarball)
|
||||
(mkdir #$output)
|
||||
(exit
|
||||
(and (file-exists? (string-append bin "/guile"))
|
||||
(string=? (string-append #$%bootstrap-guile "/bin")
|
||||
(readlink bin))
|
||||
(string=? (string-append ".." #$profile
|
||||
"/bin/guile")
|
||||
(readlink "bin/Guile"))))))))
|
||||
(built-derivations (list check)))))
|
||||
|
||||
(test-end)
|
||||
|
||||
;; Local Variables:
|
||||
;; eval: (put 'test-assertm 'scheme-indent-function 2)
|
||||
;; End:
|
||||
|
|
|
@ -81,7 +81,7 @@ baz > 13.37")
|
|||
(dummy-package "foo"
|
||||
(source (dummy-origin
|
||||
(uri
|
||||
"https://pypi.io/packages/source/p/psutil/psutil-4.3.0.tar.gz"))))))
|
||||
"https://pypi.org/packages/source/p/psutil/psutil-4.3.0.tar.gz"))))))
|
||||
|
||||
(test-equal "guix-package->pypi-name, new URL style"
|
||||
"certbot"
|
||||
|
|
Reference in New Issue