Merge branch 'master' into core-updates

This commit is contained in:
Marius Bakke 2018-10-21 18:06:02 +02:00
commit ffddb42d6c
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
60 changed files with 3097 additions and 439 deletions

View File

@ -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))

View File

@ -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

View File

@ -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 \

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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)))

View File

@ -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+)))

View File

@ -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)

View File

@ -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)

View File

@ -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)

View File

@ -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

View File

@ -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

View File

@ -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.

View File

@ -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

View File

@ -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)

View File

@ -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

View File

@ -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)

View File

@ -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);
@ -173,4 +173,25 @@ index 5e4cdfd..690f180 100644
+ strerror (ret));
}
break;
Below is a followup to the patch above: the uninitialized variable could lead
grub-install to error out when it shouldnt (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)
{

View File

@ -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

View File

@ -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;

View File

@ -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:

View File

@ -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

View File

@ -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)))

View File

@ -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)

View File

@ -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

View File

@ -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+)))

View File

@ -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)

View File

@ -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.

View File

@ -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

View File

@ -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)

View File

@ -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")

View File

@ -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

View File

@ -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))

View 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)))

View File

@ -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

View File

@ -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"))

View File

@ -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

View File

@ -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))))

View File

@ -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"))

View File

@ -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)

View File

@ -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"))))

View File

@ -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))))

View File

@ -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

View File

@ -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)

View File

@ -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)

View File

@ -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

View File

@ -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

View File

@ -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)))

View File

@ -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

View 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))

View File

@ -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."

View File

@ -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)))

View File

@ -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

View File

@ -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)

View File

@ -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

View File

@ -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

View File

@ -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:

View File

@ -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"