diff options
Diffstat (limited to 'gnu')
31 files changed, 808 insertions, 281 deletions
diff --git a/gnu/artwork.scm b/gnu/artwork.scm index 94c89143a6..92498b8b23 100644 --- a/gnu/artwork.scm +++ b/gnu/artwork.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2017 Leo Famulari <leo@famulari.name> ;;; ;;; This file is part of GNU Guix. ;;; @@ -28,13 +29,16 @@ ;;; Code: (define %artwork-repository - (origin - (method git-fetch) - (uri (git-reference - (url "git://git.savannah.gnu.org/guix/guix-artwork.git") - (commit "6998d30"))) - (sha256 - (base32 - "0k7j3pj9s3zqiqmfkapypssvzx3f12yr0cc2rbzxqfii0b4clp1j")))) + (let ((commit "6998d30425289b087c64f63e7415df2241e591db")) + (origin + (method git-fetch) + (uri (git-reference + (url "git://git.savannah.gnu.org/guix/guix-artwork.git") + (commit commit))) + (file-name (string-append "guix-artwork-" (string-take commit 7) + "-checkout")) + (sha256 + (base32 + "0k7j3pj9s3zqiqmfkapypssvzx3f12yr0cc2rbzxqfii0b4clp1j"))))) ;;; artwork.scm ends here diff --git a/gnu/bootloader.scm b/gnu/bootloader.scm index 4e77974d31..d5fcf30f05 100644 --- a/gnu/bootloader.scm +++ b/gnu/bootloader.scm @@ -23,7 +23,15 @@ #:use-module (guix records) #:use-module (guix ui) #:use-module (srfi srfi-1) - #:export (bootloader + #:export (menu-entry + menu-entry? + menu-entry-label + menu-entry-device + menu-entry-linux + menu-entry-linux-arguments + menu-entry-initrd + + bootloader bootloader? bootloader-name bootloader-package @@ -50,6 +58,22 @@ ;;; +;;; Menu-entry record. +;;; + +(define-record-type* <menu-entry> + menu-entry make-menu-entry + menu-entry? + (label menu-entry-label) + (device menu-entry-device ; file system uuid, label, or #f + (default #f)) + (linux menu-entry-linux) + (linux-arguments menu-entry-linux-arguments + (default '())) ; list of string-valued gexps + (initrd menu-entry-initrd)) ; file name of the initrd as a gexp + + +;;; ;;; Bootloader record. ;;; diff --git a/gnu/bootloader/extlinux.scm b/gnu/bootloader/extlinux.scm index 67b8815d40..0a1263aed7 100644 --- a/gnu/bootloader/extlinux.scm +++ b/gnu/bootloader/extlinux.scm @@ -37,7 +37,8 @@ corresponding to old generations of the system." (define all-entries - (append entries (bootloader-configuration-menu-entries config))) + (append entries (map menu-entry->boot-parameters + (bootloader-configuration-menu-entries config)))) (define (boot-parameters->gexp params) (let ((label (boot-parameters-label params)) diff --git a/gnu/bootloader/grub.scm b/gnu/bootloader/grub.scm index 49616b7164..f1cc3324db 100644 --- a/gnu/bootloader/grub.scm +++ b/gnu/bootloader/grub.scm @@ -66,12 +66,15 @@ (define (strip-mount-point mount-point file) "Strip MOUNT-POINT from FILE, which is a gexp or other lowerable object denoting a file name." - (if (string=? mount-point "/") - file - #~(let ((file #$file)) - (if (string-prefix? #$mount-point file) - (substring #$file #$(string-length mount-point)) - file)))) + (match mount-point + ((? string? mount-point) + (if (string=? mount-point "/") + file + #~(let ((file #$file)) + (if (string-prefix? #$mount-point file) + (substring #$file #$(string-length mount-point)) + file)))) + (#f file))) (define-record-type* <grub-image> grub-image make-grub-image @@ -103,19 +106,6 @@ denoting a file name." (color-highlight '((fg . yellow) (bg . black))) (color-normal '((fg . light-gray) (bg . black))))) ;XXX: #x303030 -(define-record-type* <menu-entry> - menu-entry make-menu-entry - menu-entry? - (label menu-entry-label) - (device menu-entry-device ; file system uuid, label, or #f - (default #f)) - (device-mount-point menu-entry-device-mount-point - (default "/")) - (linux menu-entry-linux) - (linux-arguments menu-entry-linux-arguments - (default '())) ; list of string-valued gexps - (initrd menu-entry-initrd)) ; file name of the initrd as a gexp - ;;; ;;; Background image & themes. @@ -312,16 +302,6 @@ code." (#f #~(format #f "search --file --set ~a" #$file))))) -(define (boot-parameters->menu-entry conf) - "Convert a <boot-parameters> instance to a corresponding <menu-entry>." - (menu-entry - (label (boot-parameters-label conf)) - (device (boot-parameters-store-device conf)) - (device-mount-point (boot-parameters-store-mount-point conf)) - (linux (boot-parameters-kernel conf)) - (linux-arguments (boot-parameters-kernel-arguments conf)) - (initrd (boot-parameters-initrd conf)))) - (define* (grub-configuration-file config entries #:key (system (%current-system)) @@ -331,33 +311,36 @@ code." STORE-FS, a <file-system> object. OLD-ENTRIES is taken to be a list of menu entries corresponding to old generations of the system." (define all-entries - (map boot-parameters->menu-entry - (append entries - (bootloader-configuration-menu-entries config)))) - - (define entry->gexp - (match-lambda - (($ <menu-entry> label device device-mount-point - linux arguments initrd) + (append entries (map menu-entry->boot-parameters + (bootloader-configuration-menu-entries config)))) + + (define (boot-parameters->gexp params) + (let ((device (boot-parameters-store-device params)) + (device-mount-point (boot-parameters-store-mount-point params)) + (label (boot-parameters-label params)) + (kernel (boot-parameters-kernel params)) + (arguments (boot-parameters-kernel-arguments params)) + (initrd (boot-parameters-initrd params))) ;; Here DEVICE is the store and DEVICE-MOUNT-POINT is its mount point. - ;; Use the right file names for LINUX and INITRD in case + ;; Use the right file names for KERNEL and INITRD in case ;; DEVICE-MOUNT-POINT is not "/", meaning that the store is on a ;; separate partition. - (let ((linux (strip-mount-point device-mount-point linux)) - (initrd (strip-mount-point device-mount-point initrd))) + (let ((kernel (strip-mount-point device-mount-point kernel)) + (initrd (strip-mount-point device-mount-point initrd))) #~(format port "menuentry ~s { ~a linux ~a ~a initrd ~a }~%" #$label - #$(grub-root-search device linux) - #$linux (string-join (list #$@arguments)) - #$initrd))))) + #$(grub-root-search device kernel) + #$kernel (string-join (list #$@arguments)) + #$initrd)))) (mlet %store-monad ((sugar (eye-candy config - (menu-entry-device (first all-entries)) - (menu-entry-device-mount-point + (boot-parameters-store-device + (first all-entries)) + (boot-parameters-store-mount-point (first all-entries)) #:system system #:port #~port))) @@ -374,12 +357,12 @@ set default=~a set timeout=~a~%" #$(bootloader-configuration-default-entry config) #$(bootloader-configuration-timeout config)) - #$@(map entry->gexp all-entries) + #$@(map boot-parameters->gexp all-entries) #$@(if (pair? old-entries) #~((format port " submenu \"GNU system, old configurations...\" {~%") - #$@(map entry->gexp (map boot-parameters->menu-entry old-entries)) + #$@(map boot-parameters->gexp old-entries) (format port "}~%")) #~())))) diff --git a/gnu/build/file-systems.scm b/gnu/build/file-systems.scm index 7737de3d03..1c733f43b4 100644 --- a/gnu/build/file-systems.scm +++ b/gnu/build/file-systems.scm @@ -43,6 +43,7 @@ uuid->string string->uuid + string->iso9660-uuid bind-mount @@ -235,6 +236,27 @@ Trailing spaces are trimmed." ;; <http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-119.pdf>. +(define %iso9660-uuid-rx + ;; Y m d H M S ss + (make-regexp "^([[:digit:]]{4})-([[:digit:]]{2})-([[:digit:]]{2})-([[:digit:]]{2})-([[:digit:]]{2})-([[:digit:]]{2})-([[:digit:]]{2})$")) + +(define (string->iso9660-uuid str) + "Parse STR as a ISO9660 UUID (which is really a timestamp - see /dev/disk/by-uuid). +Return its contents as a 16-byte bytevector. Return #f if STR is not a valid +ISO9660 UUID representation." + (and=> (regexp-exec %iso9660-uuid-rx str) + (lambda (match) + (letrec-syntax ((match-numerals + (syntax-rules () + ((_ index (name rest ...) body) + (let ((name (match:substring match index))) + (match-numerals (+ 1 index) (rest ...) body))) + ((_ index () body) + body)))) + (match-numerals 1 (year month day hour minute second hundredths) + (string->utf8 (string-append year month day + hour minute second hundredths))))))) + (define (iso9660-superblock? sblock) "Return #t when SBLOCK is an iso9660 volume descriptor." (bytevector=? (sub-bytevector sblock 1 6) diff --git a/gnu/local.mk b/gnu/local.mk index d99c4d215b..ae64f244f0 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -256,7 +256,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/man.scm \ %D%/packages/mail.scm \ %D%/packages/make-bootstrap.scm \ - %D%/packages/markdown.scm \ + %D%/packages/markup.scm \ %D%/packages/marst.scm \ %D%/packages/mate.scm \ %D%/packages/maths.scm \ @@ -504,7 +504,6 @@ dist_patch_DATA = \ %D%/packages/patches/agg-am_c_prototype.patch \ %D%/packages/patches/antiword-CVE-2014-8123.patch \ %D%/packages/patches/apr-skip-getservbyname-test.patch \ - %D%/packages/patches/artanis-fix-Makefile.in.patch \ %D%/packages/patches/aspell-default-dict-dir.patch \ %D%/packages/patches/ath9k-htc-firmware-binutils.patch \ %D%/packages/patches/ath9k-htc-firmware-gcc.patch \ @@ -945,6 +944,7 @@ dist_patch_DATA = \ %D%/packages/patches/qtscript-disable-tests.patch \ %D%/packages/patches/quickswitch-fix-dmenu-check.patch \ %D%/packages/patches/rapicorn-isnan.patch \ + %D%/packages/patches/raptor2-heap-overflow.patch \ %D%/packages/patches/ratpoison-shell.patch \ %D%/packages/patches/rcs-5.9.4-noreturn.patch \ %D%/packages/patches/readline-link-ncurses.patch \ diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm index 6984f10742..2aa65d5880 100644 --- a/gnu/packages/astronomy.scm +++ b/gnu/packages/astronomy.scm @@ -93,7 +93,7 @@ systems in a FITS image header.") (define-public gnuastro (package (name "gnuastro") - (version "0.2") + (version "0.3") (source (origin (method url-fetch) @@ -101,7 +101,7 @@ systems in a FITS image header.") version ".tar.gz")) (sha256 (base32 - "0099g7zqg1gr9y94ybhyjgx9pkn9zv4rj1xb00fkybfw8w6ij9iv")))) + "109xjwbs36gbkx5sd5yzf6ailfcldc5d28vl1n19z0ylfzww4nwa")))) (inputs `(("cfitsio" ,cfitsio) ("gsl" ,gsl) @@ -109,7 +109,7 @@ systems in a FITS image header.") ("wcslib" ,wcslib))) (build-system gnu-build-system) (home-page "https://www.gnu.org/software/gnuastro/") - (synopsis "Astronomical data manipulation programs") + (synopsis "Astronomy utilities") (description "The GNU Astronomy Utilities (Gnuastro) is a suite of programs for the manipulation and analysis of astronomical data.") (license license:gpl3+))) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index a5c28afc6e..b47f136935 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -85,6 +85,7 @@ #:use-module (gnu packages ruby) #:use-module (gnu packages serialization) #:use-module (gnu packages statistics) + #:use-module (gnu packages swig) #:use-module (gnu packages tbb) #:use-module (gnu packages tex) #:use-module (gnu packages texinfo) @@ -2093,7 +2094,7 @@ identify enrichments with functional annotations of the genome.") (define-public diamond (package (name "diamond") - (version "0.9.3") + (version "0.9.6") (source (origin (method url-fetch) (uri (string-append @@ -2102,7 +2103,7 @@ identify enrichments with functional annotations of the genome.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1fs5ilvda50vfdg9wll35w8hcpq3jlkp8q2kim4llkwljkj8bls3")))) + "1y8a10b695pvgn7kk2s87jdwbdf7iszpnr6139pw8ina1ajs4w8y")))) (build-system cmake-build-system) (arguments '(#:tests? #f ; no "check" target @@ -9223,3 +9224,311 @@ working with SAM and BAM files. Current parallelised functionality is an important subset of samtools functionality, including view, index, sort, markdup, and depth.") (license license:gpl2+))) + +(define-public ritornello + (package + (name "ritornello") + (version "1.0.0") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/KlugerLab/" + "Ritornello/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "02nik86gq9ljjriv6pamwlmqnfky3ads1fpklx6mc3hx6k40pg38")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; there are no tests + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-samtools-references + (lambda* (#:key inputs #:allow-other-keys) + (substitute* '("src/SamStream.h" + "src/BufferedGenomeReader.h") + (("<sam.h>") "<samtools/sam.h>")) + #t)) + (delete 'configure) + (replace 'install + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin/"))) + (mkdir-p bin) + (install-file "bin/Ritornello" bin) + #t)))))) + (inputs + `(("samtools" ,samtools-0.1) + ("fftw" ,fftw) + ("boost" ,boost) + ("zlib" ,zlib))) + (home-page "https://github.com/KlugerLab/Ritornello") + (synopsis "Control-free peak caller for ChIP-seq data") + (description "Ritornello is a ChIP-seq peak calling algorithm based on +signal processing that can accurately call binding events without the need to +do a pair total DNA input or IgG control sample. It has been tested for use +with narrow binding events such as transcription factor ChIP-seq.") + (license license:gpl3+))) + +(define-public trim-galore + (package + (name "trim-galore") + (version "0.4.2") + (source + (origin + (method url-fetch) + (uri (string-append "http://www.bioinformatics.babraham.ac.uk/" + "projects/trim_galore/trim_galore_v" + version ".zip")) + (sha256 + (base32 + "0b9qdxi4521gsrjvbhgky8g7kry9b5nx3byzaxkgxz7p4k8bn1mn")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no tests + #:phases + (modify-phases %standard-phases + ;; The archive contains plain files. + (replace 'unpack + (lambda* (#:key source #:allow-other-keys) + (zero? (system* "unzip" source)))) + (delete 'configure) + (delete 'build) + (add-after 'unpack 'hardcode-tool-references + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "trim_galore" + (("\\$path_to_cutadapt = 'cutadapt'") + (string-append "$path_to_cutadapt = '" + (assoc-ref inputs "cutadapt") + "/bin/cutadapt'")) + (("\\| gzip") + (string-append "| " + (assoc-ref inputs "gzip") + "/bin/gzip")) + (("\"gunzip") + (string-append "\"" + (assoc-ref inputs "gzip") + "/bin/gunzip"))) + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((bin (string-append (assoc-ref outputs "out") + "/bin"))) + (mkdir-p bin) + (install-file "trim_galore" bin) + #t)))))) + (inputs + `(("gzip" ,gzip) + ("perl" ,perl) + ("cutadapt" ,cutadapt))) + (native-inputs + `(("unzip" ,unzip))) + (home-page "http://www.bioinformatics.babraham.ac.uk/projects/trim_galore/") + (synopsis "Wrapper around Cutadapt and FastQC") + (description "Trim Galore! is a wrapper script to automate quality and +adapter trimming as well as quality control, with some added functionality to +remove biased methylation positions for RRBS sequence files.") + (license license:gpl3+))) + +(define-public gess + (package + (name "gess") + (version "1.0") + (source (origin + (method url-fetch) + (uri (string-append "http://compbio.uthscsa.edu/" + "GESS_Web/files/" + "gess-" version ".src.tar.gz")) + (sha256 + (base32 + "0hyk403kxscclzfs24pvdgiv0wm03kjcziqdrp5w46cb049gz0d7")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no tests + #:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'build) + (replace 'install + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((python (assoc-ref inputs "python")) + (out (assoc-ref outputs "out")) + (bin (string-append out "/bin/")) + (target (string-append + out "/lib/python2.7/site-packages/gess/"))) + (mkdir-p target) + (copy-recursively "." target) + ;; Make GESS.py executable + (chmod (string-append target "GESS.py") #o555) + ;; Add Python shebang to the top and make Matplotlib + ;; usable. + (substitute* (string-append target "GESS.py") + (("\"\"\"Description:" line) + (string-append "#!" (which "python") " +import matplotlib +matplotlib.use('Agg') +" line))) + ;; Make sure GESS has all modules in its path + (wrap-program (string-append target "GESS.py") + `("PYTHONPATH" ":" prefix (,target ,(getenv "PYTHONPATH")))) + (mkdir-p bin) + (symlink (string-append target "GESS.py") + (string-append bin "GESS.py")) + #t)))))) + (inputs + `(("python" ,python-2) + ("python2-pysam" ,python2-pysam) + ("python2-scipy" ,python2-scipy) + ("python2-numpy" ,python2-numpy) + ("python2-networkx" ,python2-networkx) + ("python2-biopython" ,python2-biopython))) + (home-page "http://compbio.uthscsa.edu/GESS_Web/") + (synopsis "Detect exon-skipping events from raw RNA-seq data") + (description + "GESS is an implementation of a novel computational method to detect de +novo exon-skipping events directly from raw RNA-seq data without the prior +knowledge of gene annotation information. GESS stands for the graph-based +exon-skipping scanner detection scheme.") + (license license:bsd-3))) + +(define-public phylip + (package + (name "phylip") + (version "3.696") + (source + (origin + (method url-fetch) + (uri (string-append "http://evolution.gs.washington.edu/phylip/" + "download/phylip-" version ".tar.gz")) + (sha256 + (base32 + "01jar1rayhr2gba2pgbw49m56rc5z4p5wn3ds0m188hrlln4a2nd")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no check target + #:make-flags (list "-f" "Makefile.unx" "install") + #:parallel-build? #f ; not supported + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'enter-dir + (lambda _ (chdir "src") #t)) + (delete 'configure) + (replace 'install + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((target (string-append (assoc-ref outputs "out") + "/bin"))) + (mkdir-p target) + (for-each (lambda (file) + (install-file file target)) + (find-files "../exe" ".*"))) + #t))))) + (home-page "http://evolution.genetics.washington.edu/phylip/") + (synopsis "Tools for inferring phylogenies") + (description "PHYLIP (the PHYLogeny Inference Package) is a package of +programs for inferring phylogenies (evolutionary trees).") + (license license:bsd-2))) + +(define-public imp + (package + (name "imp") + (version "2.6.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://integrativemodeling.org/" + version "/download/imp-" version ".tar.gz")) + (sha256 + (base32 + "0lxqx7vh79d771svr611dkilp6sn30qrbw8zvscbrm37v38d2j6h")))) + (build-system cmake-build-system) + (arguments + `(;; FIXME: Some tests fail because they produce warnings, others fail + ;; because the PYTHONPATH does not include the modeller's directory. + #:tests? #f + ;; Do not place libraries in an architecture-specific directory. + #:configure-flags + (list "-DCMAKE_INSTALL_LIBDIR=lib"))) + (inputs + `(("boost" ,boost) + ("gsl" ,gsl) + ("swig" ,swig) + ("hdf5" ,hdf5) + ("fftw" ,fftw) + ("python" ,python-2))) + (propagated-inputs + `(("python2-numpy" ,python2-numpy) + ("python2-scipy" ,python2-scipy) + ("python2-pandas" ,python2-pandas) + ("python2-scikit-learn" ,python2-scikit-learn) + ("python2-networkx" ,python2-networkx))) + (home-page "https://integrativemodeling.org") + (synopsis "Integrative modeling platform") + (description "IMP's broad goal is to contribute to a comprehensive +structural characterization of biomolecules ranging in size and complexity +from small peptides to large macromolecular assemblies, by integrating data +from diverse biochemical and biophysical experiments. IMP provides a C++ and +Python toolbox for solving complex modeling problems, and a number of +applications for tackling some common problems in a user-friendly way.") + ;; IMP is largely available under the GNU Lesser GPL; see the file + ;; COPYING.LGPL for the full text of this license. Some IMP modules are + ;; available under the GNU GPL (see the file COPYING.GPL). + (license (list license:lgpl2.1+ + license:gpl3+)))) + +(define-public tadbit + (package + (name "tadbit") + (version "0.2") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/3DGenomes/TADbit/" + "archive/v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1cnfqrl4685zar4nnw94j94nhvl2h29jm448nadqi1h05z6fdk4f")))) + (build-system python-build-system) + (arguments + `(;; Tests are included and must be run after installation, but + ;; they are incomplete and thus cannot be run. + #:tests? #f + #:python ,python-2 + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-problems-with-setup.py + (lambda* (#:key outputs #:allow-other-keys) + ;; setup.py opens these files for writing + (chmod "_pytadbit/_version.py" #o664) + (chmod "README.rst" #o664) + + ;; Don't attempt to install the bash completions to + ;; the home directory. + (rename-file "extras/.bash_completion" + "extras/tadbit") + (substitute* "setup.py" + (("\\(path.expanduser\\('~'\\)") + (string-append "(\"" + (assoc-ref outputs "out") + "/etc/bash_completion.d\"")) + (("extras/\\.bash_completion") + "extras/tadbit")) + #t))))) + (inputs + ;; TODO: add Chimera for visualization + `(("imp" ,imp) + ("mcl" ,mcl) + ("python2-scipy" ,python2-scipy) + ("python2-numpy" ,python2-numpy) + ("python2-matplotlib" ,python2-matplotlib) + ("python2-pysam" ,python2-pysam))) + (home-page "http://3dgenomes.github.io/TADbit/") + (synopsis "Analyze, model, and explore 3C-based data") + (description + "TADbit is a complete Python library to deal with all steps to analyze, +model, and explore 3C-based data. With TADbit the user can map FASTQ files to +obtain raw interaction binned matrices (Hi-C like matrices), normalize and +correct interaction matrices, identify adn compare the so-called +@dfn{Topologically Associating Domains} (TADs), build 3D models from the +interaction matrices, and finally, extract structural properties from the +models. TADbit is complemented by TADkit for visualizing 3D models.") + (license license:gpl3+))) diff --git a/gnu/packages/code.scm b/gnu/packages/code.scm index 1576c23b35..6f25b7cd82 100644 --- a/gnu/packages/code.scm +++ b/gnu/packages/code.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -191,7 +192,7 @@ COCOMO model or user-provided parameters.") (define-public the-silver-searcher (package (name "the-silver-searcher") - (version "1.0.2") + (version "2.0.0") (source (origin (method url-fetch) (uri (string-append @@ -199,7 +200,7 @@ COCOMO model or user-provided parameters.") version ".tar.gz")) (sha256 (base32 - "0v54himv65w294l0k4lhdyc6kvpgijn8b9g5356479fzy7hphjkg")))) + "04wm3r5p2mgv8mdkvysak0d5199h5y0yzl032624brfxpzmqfcq0")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 987aaf4226..a4cb4a0b3a 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -4814,7 +4814,8 @@ Emacs.") ;; determined by emacs' standard initialization ;; procedure (list "")))) - #t)))))) + #t)))) + #:include (cons* "^reporters/.*\\.el$" %default-include))) (home-page "https://github.com/rejeep/ert-runner.el") (synopsis "Opinionated Ert testing workflow") (description "@code{ert-runner} is a tool for Emacs projects tested diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 9153a2b5cf..a76ab1ddc2 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -959,7 +959,7 @@ match, cannon keep, and grave-itation pit.") (define minetest-data (package (name "minetest-data") - (version "0.4.15") + (version "0.4.16") (source (origin (method url-fetch) (uri (string-append @@ -968,7 +968,7 @@ match, cannon keep, and grave-itation pit.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "12kxklcd1b5n0f369zf3xxhvkrizxj4d9xv0dh8crfqiymaym0zm")))) + "0nibpm600rbv9dg1zgcsl5grlbqx0b5l6cg1lp6sqkwvjialb4ga")))) (build-system trivial-build-system) (native-inputs `(("source" ,source) @@ -1000,7 +1000,7 @@ match, cannon keep, and grave-itation pit.") (define-public minetest (package (name "minetest") - (version "0.4.15") + (version "0.4.16") (source (origin (method url-fetch) (uri (string-append @@ -1009,7 +1009,7 @@ match, cannon keep, and grave-itation pit.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1ag3jcj7kpq3ph12zirk1c0mj9i0g50wmw932f8gi11liq8yd12n")))) + "0mbnf1ma4gsw9ah68ply04059xkfx5psdxwalxp78sgmx4ypkwqf")))) (build-system cmake-build-system) (arguments '(#:configure-flags @@ -4035,7 +4035,7 @@ fish. The whole game is accompanied by quiet, comforting music.") (define-public crawl (package (name "crawl") - (version "0.19.5") + (version "0.20.0") (source (origin (method url-fetch) @@ -4049,7 +4049,7 @@ fish. The whole game is accompanied by quiet, comforting music.") version "-nodeps.tar.xz"))) (sha256 (base32 - "00yl2lb2shglxlxzpyk99zvglfx4amjybqwnzdcasvbiggb4cj18")))) + "0127dgldij2h4m7cf32yy9ndv4vcz03g4km71lmxrsi5mw7ljgpd")))) (build-system gnu-build-system) (inputs `(("lua51" ,lua-5.1) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index ebf598d9c7..7dca113fe0 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2634,6 +2634,7 @@ output devices.") (("/bin/true") (which "true")))))))) (native-inputs `(("pkg-config" ,pkg-config) + ("gobject-introspection" ,gobject-introspection) ("intltool" ,intltool))) (inputs `(("avahi" ,avahi) @@ -5110,6 +5111,10 @@ properties, screen resolution, and other GNOME parameters.") ("startup-notification" ,startup-notification) ("telepathy-logger" ,telepathy-logger) ("upower" ,upower) + ;; XXX: These requirements were added in 3.24, but no mention in NEWS. + ;; Missing propagation? See also: <https://bugs.gnu.org/27264> + ("librsvg" ,librsvg) + ("geoclue" ,geoclue) ;; XXX: required by libgjs.la. ("readline" ,readline))) (synopsis "Desktop shell for GNOME") diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index bcfbe65aec..e4629d90d6 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -239,7 +239,8 @@ without requiring the source code to be rewritten.") (snippet '(for-each delete-file (find-files "prebuilt" "\\.go$"))))) (properties '((timeout . 72000) ;20 hours - (max-silent-time . 10800))) ;3 hours (needed on ARM) + (max-silent-time . 21600))) ;6 hours (needed on ARM + ; when heavily loaded) (native-search-paths (list (search-path-specification (variable "GUILE_LOAD_PATH") @@ -393,18 +394,17 @@ program can be installed in one go.") (define-public artanis (package (name "artanis") - (version "0.1.2") + (version "0.2.1") (source (origin (method url-fetch) (uri (string-append "ftp://alpha.gnu.org/gnu/artanis/artanis-" version ".tar.gz")) (sha256 (base32 - "19m3ak12cqk8js9d2mdg11kh4fjsq8frfpd10qw75h0zpr5cywpp")) - (patches (search-patches "artanis-fix-Makefile.in.patch")))) + "041ajcg2pz918kd9iqcj4inpzddc3impvz3r2nhlpbv8zrz011hn")))) (build-system gnu-build-system) ;; TODO: Add guile-dbi and guile-dbd optional dependencies. - (inputs `(("guile" ,guile-2.0))) + (inputs `(("guile" ,guile-2.2))) (native-inputs `(("bash" ,bash) ;for the `source' builtin ("pkgconfig" ,pkg-config) ("util-linux" ,util-linux))) ;for the `script' command @@ -412,15 +412,15 @@ program can be installed in one go.") '(#:make-flags ;; TODO: The documentation must be built with the `docs' target. (let* ((out (assoc-ref %outputs "out")) - (dir (string-append out "/share/guile/site/2.0"))) + (scm (string-append out "/share/guile/site/2.2")) + (go (string-append out "/lib/guile/2.2/site-ccache"))) ;; Don't use (%site-dir) for site paths. - (list (string-append "MOD_PATH=" dir) - (string-append "MOD_COMPILED_PATH=" dir))) + (list (string-append "MOD_PATH=" scm) + (string-append "MOD_COMPILED_PATH=" go))) #:test-target "test" #:phases (modify-phases %standard-phases - (add-before - 'install 'substitute-root-dir + (add-before 'install 'substitute-root-dir (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) (substitute* "Makefile" ;ignore the execution of bash.bashrc @@ -428,7 +428,17 @@ program can be installed in one go.") (substitute* "Makefile" ;set the root of config files to OUT ((" /etc") (string-append " " out "/etc"))) (mkdir-p (string-append out "/bin")) ;for the `art' executable - #t)))))) + #t))) + (add-after 'install 'wrap-art + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (scm (string-append out "/share/guile/site/2.2")) + (go (string-append out "/lib/guile/2.2/site-ccache"))) + (wrap-program (string-append bin "/art") + `("GUILE_LOAD_PATH" ":" prefix (,scm)) + `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,go))) + #t)))))) (synopsis "Web application framework written in Guile") (description "GNU Artanis is a web application framework written in Guile Scheme. A web application framework (WAF) is a software framework that is diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm index 07943e1e5e..8fe71d5b5d 100644 --- a/gnu/packages/kde-frameworks.scm +++ b/gnu/packages/kde-frameworks.scm @@ -43,8 +43,11 @@ #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gnupg) + #:use-module (gnu packages graphics) #:use-module (gnu packages gstreamer) #:use-module (gnu packages image) + #:use-module (gnu packages kerberos) + #:use-module (gnu packages libreoffice) #:use-module (gnu packages linux) #:use-module (gnu packages mp3) #:use-module (gnu packages pdf) @@ -120,6 +123,8 @@ common build settings used in software produced by the KDE community.") "177647r2jqfm32hqcz2nqfqv6v48hn5ab2vc31svba2wz23fkgk7")))) (build-system cmake-build-system) (native-inputs + ;; TODO: Add qttools to build the Qt Designer plugin. + ;; TODO: Think about adding pulseaudio. Is it required for sound? `(("extra-cmake-modules" ,extra-cmake-modules))) (inputs `(("qtbase" ,qtbase))) @@ -202,7 +207,8 @@ Phonon-GStreamer is a backend based on the GStreamer multimedia library.") (home-page "https://community.kde.org/Frameworks") (synopsis "C++ bindings/wrapper for gpgme") (description "C++ bindings/wrapper for gpgme.") - (license license:lgpl2.1+))) + (license license:lgpl2.1+) + (properties `((superseded . ,gpgme))))) (define-public kpmcore (package @@ -292,6 +298,7 @@ http://freedesktop.org/wiki/Specifications/open-collaboration-services/") `(("dbus" ,dbus) ("extra-cmake-modules" ,extra-cmake-modules))) (inputs + ;; TODO: qtdeclarative (yields one failing test) `(("qtbase" ,qtbase))) (arguments `(#:configure-flags @@ -639,11 +646,16 @@ infrastructure.") (base32 "1nmlwvy2jdmh0m6bmahvk68vl2rs9s28c10dkncpi6gvhsdkigqx")))) (build-system cmake-build-system) + ;; TODO: Build packages for the Python bindings. Ideally this will be + ;; done for all versions of python guix supports. Requires python, + ;; python-sip, clang-python, libclang. Requires python-2 in all cases for + ;; clang-python. (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) - ("xorg-server" ,xorg-server))) + ("pkg-config" ,pkg-config))) (inputs - `(("qtbase" ,qtbase))) + `(("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras))) (arguments `(#:phases (modify-phases %standard-phases @@ -743,19 +755,17 @@ or user activity.") "1liq1ppa7xb1dcncv25c2a0xy3l9bvb2a56cff90c0b0vwr239q5")))) (build-system cmake-build-system) (native-inputs - `(("extra-cmake-modules" ,extra-cmake-modules) - ("xorg-server" ,xorg-server))) + `(("extra-cmake-modules" ,extra-cmake-modules))) (inputs - `(("qtbase" ,qtbase))) + `(("qtbase" ,qtbase) + ("qtdeclarative" ,qtdeclarative))) (arguments `(#:phases (modify-phases %standard-phases - (add-before 'check 'start-xorg-server - (lambda* (#:key inputs #:allow-other-keys) - ;; The test suite requires a running X server. - (system (string-append (assoc-ref inputs "xorg-server") - "/bin/Xvfb :1 &")) - (setenv "DISPLAY" ":1") + (add-before 'check 'check-setup + (lambda _ + ;; make Qt render "offscreen", required for tests + (setenv "QT_QPA_PLATFORM" "offscreen") #t))))) (home-page "https://community.kde.org/Frameworks") (synopsis "Set of item models extending the Qt model-view framework") @@ -805,8 +815,7 @@ model to observers (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) - ("qttools" ,qttools) - ("xorg-server" ,xorg-server))) + ("qttools" ,qttools))) (inputs `(("qtbase" ,qtbase))) (arguments @@ -815,13 +824,8 @@ model to observers (add-before 'check 'check-setup (lambda _ (setenv "DBUS_FATAL_WARNINGS" "0") - #t)) - (add-before 'check 'start-xorg-server - (lambda* (#:key inputs #:allow-other-keys) - ;; The test suite requires a running X server. - (system (string-append (assoc-ref inputs "xorg-server") - "/bin/Xvfb :1 &")) - (setenv "DISPLAY" ":1") + ;; make Qt render "offscreen", required for tests + (setenv "QT_QPA_PLATFORM" "offscreen") #t))))) (home-page "https://community.kde.org/Frameworks") (synopsis "Set of item views extending the Qt model-view framework") @@ -845,19 +849,16 @@ to flat and hierarchical lists.") "1ffy9b08128ym024wlfgnzk52vpy0mbaa91dhndpr40qcz0i67sh")))) (build-system cmake-build-system) (native-inputs - `(("extra-cmake-modules" ,extra-cmake-modules) - ("xorg-server" ,xorg-server))) + `(("extra-cmake-modules" ,extra-cmake-modules))) (inputs `(("qtbase" ,qtbase))) (arguments `(#:phases (modify-phases %standard-phases - (add-before 'check 'start-xorg-server - (lambda* (#:key inputs #:allow-other-keys) - ;; The test suite requires a running X server. - (system (string-append (assoc-ref inputs "xorg-server") - "/bin/Xvfb :1 &")) - (setenv "DISPLAY" ":1") + (add-before 'check 'check-setup + (lambda _ ; kplotting + ;; make Qt render "offscreen", required for tests + (setenv "QT_QPA_PLATFORM" "offscreen") #t))))) (home-page "https://community.kde.org/Frameworks") (synopsis "Data plotting library") @@ -976,8 +977,7 @@ represented by a QPoint or a QSize.") (inputs `(("qtbase" ,qtbase))) (arguments - `(#:tests? #f ; FIXME: Regression after update to qt 5.7 - #:phases + `(#:phases (modify-phases %standard-phases (add-before 'check 'check-setup (lambda _ @@ -1020,6 +1020,7 @@ configuration pages, message boxes, and password requests.") (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) ("pkg-config" ,pkg-config) + ("dbus" ,dbus) ; for the tests ("qttools" ,qttools) ("xorg-server" ,xorg-server))) ; for the tests (inputs @@ -1028,7 +1029,31 @@ configuration pages, message boxes, and password requests.") ("qtx11extras" ,qtx11extras) ("xcb-utils-keysyms" ,xcb-util-keysyms))) (arguments - `(#:tests? #f)) ; FIXME: 8/10 tests fail. + `(#:tests? #f ; FIXME: 3/12 tests fail. + #:phases + (modify-phases %standard-phases + (delete 'check) + (add-after 'install 'check + (lambda* (#:key inputs outputs tests? #:allow-other-keys) + ;; TODO: Simplify and use "common" phases when test-suite passes + (if tests? + (begin + (let ((out (assoc-ref outputs "out"))) + (setenv "QT_PLUGIN_PATH" + (string-append out "/lib/plugins:" + (getenv "QT_PLUGIN_PATH")))) + ;; The test suite requires a running X server, setting + ;; QT_QPA_PLATFORM=offscreen does not suffice and even make + ;; some tests fail. + (system (string-append (assoc-ref inputs "xorg-server") + "/bin/Xvfb :1 -screen 0 640x480x24 &")) + (setenv "DISPLAY" ":1") + (setenv "CTEST_OUTPUT_ON_FAILURE" "1") + (setenv "DBUS_FATAL_WARNINGS" "0") + (zero? (system* "dbus-launch" "ctest" "."))) + (begin + (format #t "test suite not run~%") + #t))))))) (home-page "https://community.kde.org/Frameworks") (synopsis "KDE access to the windowing system") (description "KWindowSystem provides information about and allows @@ -1175,6 +1200,7 @@ which are used in DBus communication.") (inputs `(("qtbase" ,qtbase) ("udev" ,eudev))) + ;; TODO: Add runtime-only dependency MediaPlayerInfo (home-page "https://community.kde.org/Frameworks") (synopsis "Desktop hardware abstraction") (description "Solid is a device integration framework. It provides a way of @@ -1200,7 +1226,9 @@ system.") `(("extra-cmake-modules" ,extra-cmake-modules) ("qttools" ,qttools))) (inputs - `(("qtbase" ,qtbase))) + `(("hunspell" ,hunspell) + ;; TODO: hspell (for Hebrew), Voikko (for Finish) + ("qtbase" ,qtbase))) (home-page "https://community.kde.org/Frameworks") (synopsis "Multi-language spell checker") (description "Sonnet is a plugin-based spell checking library for Qt-based @@ -1301,8 +1329,7 @@ utilities.") (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) - ("qttools" ,qttools) - ("xorg-server" ,xorg-server))) + ("qttools" ,qttools))) (inputs `(("kconfig" ,kconfig) ("kwidgetsaddons" ,kwidgetsaddons) @@ -1337,8 +1364,7 @@ integrated it into your application's other widgets.") "1cshay7dhbqgh62nq85vd9sm20gq9s9f70mdnzjjh1q7cajybkp3")))) (build-system cmake-build-system) (native-inputs - `(("extra-cmake-modules" ,extra-cmake-modules) - ("xorg-server" ,xorg-server))) + `(("extra-cmake-modules" ,extra-cmake-modules))) (inputs `(("kcoreaddons" ,kcoreaddons) ("kwindowsystem" ,kwindowsystem) @@ -1347,12 +1373,10 @@ integrated it into your application's other widgets.") (arguments `(#:phases (modify-phases %standard-phases - (add-before 'check 'start-xorg-server - (lambda* (#:key inputs #:allow-other-keys) - ;; The test suite requires a running X server. - (system "Xvfb :1 &") - (sleep 2) ;XXX: give the server enough time to start - (setenv "DISPLAY" ":1") + (add-before 'check 'check-setup + (lambda _ + ;; make Qt render "offscreen", required for tests + (setenv "QT_QPA_PLATFORM" "offscreen") #t))))) (home-page "https://community.kde.org/Frameworks") (synopsis "Graceful handling of application crashes") @@ -1476,19 +1500,26 @@ by applications to write metadata.") (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) - ("xorg-server" ,xorg-server))) + ("pkg-config" ,pkg-config))) (inputs - `(("qtbase" ,qtbase))) + `(("karchive" ,karchive) ; for Krita and OpenRaster images + ("openexr" ,openexr) ; for OpenEXR high dynamic-range images + ("qtbase" ,qtbase))) (arguments `(#:phases (modify-phases %standard-phases - (add-before 'check 'start-xorg-server - (lambda* (#:key inputs #:allow-other-keys) - ;; The test suite requires a running X server. - (system (string-append (assoc-ref inputs "xorg-server") - "/bin/Xvfb :1 &")) - (setenv "DISPLAY" ":1") - #t))))) + (add-before 'check 'check-setup + (lambda _ + ;; make Qt render "offscreen", required for tests + (setenv "QT_QPA_PLATFORM" "offscreen") + #t))) + ;; FIXME: The header files of ilmbase (propagated by openexr) are not + ;; found when included by the header files of openexr, and an explicit + ;; flag needs to be set. + #:configure-flags + (list (string-append "-DCMAKE_CXX_FLAGS=-I" + (assoc-ref %build-inputs "ilmbase") + "/include/OpenEXR")))) (home-page "https://community.kde.org/Frameworks") (synopsis "Plugins to allow QImage to support extra file formats") (description "This framework provides additional image format plugins for @@ -1550,6 +1581,9 @@ asynchronous jobs.") ("kwindowsystem" ,kwindowsystem) ("phonon" ,phonon) ("qtbase" ,qtbase) + ;; TODO: qtspeech (new in Qt 5.9) + ;; TODO: Think about adding dbusmenu-qt5 from + ;; https://launchpad.net/libdbusmenu-qt ("qtx11extras" ,qtx11extras))) (arguments `(#:phases @@ -1588,10 +1622,11 @@ covers feedback and persistent events.") `(("karchive" ,karchive) ("kconfig" ,kconfig) ("kcoreaddons" ,kcoreaddons) + ("kdoctools" ,kdoctools) ("ki18n" ,ki18n) ("qtbase" ,qtbase))) (arguments - `(#:tests? #f ; FIXME: 1/4 tests fail. + `(#:tests? #f ; FIXME: 3/9 tests fail. #:phases (modify-phases %standard-phases (add-before 'check 'check-setup @@ -1624,6 +1659,7 @@ were traditional plugins.") (inputs `(("kcoreaddons" ,kcoreaddons) ("ki18n" ,ki18n) + ;; TODO: utempter, for managing UTMP entries ("qtbase" ,qtbase))) (arguments `(#:tests? #f ; FIXME: 1/1 tests fail. @@ -1989,7 +2025,8 @@ their settings.") (modify-phases %standard-phases (add-before 'check 'start-xorg-server (lambda* (#:key inputs #:allow-other-keys) - ;; The test suite requires a running X server. + ;; The test suite requires a running X server, setting + ;; QT_QPA_PLATFORM=offscreen does not suffice. (system (string-append (assoc-ref inputs "xorg-server") "/bin/Xvfb :1 -screen 0 640x480x24 &")) (setenv "DISPLAY" ":1") @@ -2219,8 +2256,7 @@ window does not need focus for them to be activated.") ("qtbase" ,qtbase) ("qtsvg" ,qtsvg))) (arguments - `(#:tests? #f ; FIXME: Test failure - #:phases + `(#:phases (modify-phases %standard-phases (add-before 'check 'check-setup (lambda* (#:key inputs #:allow-other-keys) @@ -2252,7 +2288,8 @@ in applications using the KDE Frameworks.") "08429kjihpaip73wszr3rsii8sdlwgm3kxx7g0hpjhkj9d2jq3m1")))) (build-system cmake-build-system) (native-inputs - `(("extra-cmake-modules" ,extra-cmake-modules))) + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) (inputs `(("kauth" ,kauth) ("kbookmarks" ,kbookmarks) @@ -2262,6 +2299,7 @@ in applications using the KDE Frameworks.") ("kconfigwidgets" ,kconfigwidgets) ("kcoreaddons" ,kcoreaddons) ("kcrash" ,kcrash) + ("kdoctools" ,kdoctools) ("kio" ,kio) ("kitemviews" ,kitemviews) ("ki18n" ,ki18n) @@ -2270,6 +2308,7 @@ in applications using the KDE Frameworks.") ("kwidgetsaddons" ,kwidgetsaddons) ("kwindowsystem" ,kwindowsystem) ("kxmlgui" ,kxmlgui) + ("libcap" ,libcap) ; to install start_kdeinit with CAP_SYS_RESOURCE ("qtbase" ,qtbase) ("solid" ,solid))) (home-page "https://community.kde.org/Frameworks") @@ -2310,6 +2349,7 @@ makes starting KDE applications faster and reduces memory consumption.") ("extra-cmake-modules" ,extra-cmake-modules))) (inputs `(("acl" ,acl) + ("krb5" ,mit-krb5) ("karchive" ,karchive) ("kauth" ,kauth) ("kcodecs" ,kcodecs) @@ -2326,6 +2366,7 @@ makes starting KDE applications faster and reduces memory consumption.") ("libxml2" ,libxml2) ("libxslt" ,libxslt) ("qtbase" ,qtbase) + ("qtscript" ,qtscript) ("qtx11extras" ,qtx11extras) ("sonnet" ,sonnet))) (arguments @@ -2664,9 +2705,11 @@ types or handled by application specific code.") (propagated-inputs `(("kparts" ,kparts))) (native-inputs - `(("extra-cmake-modules" ,extra-cmake-modules))) + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) (inputs - `(("karchive" ,karchive) + `(;; TODO: editor-config + ("karchive" ,karchive) ("kauth" ,kauth) ("kbookmarks" ,kbookmarks) ("kcodecs" ,kcodecs) @@ -2745,6 +2788,7 @@ library.") ("kservice" ,kservice) ("kwidgetsaddons" ,kwidgetsaddons) ("kwindowsystem" ,kwindowsystem) + ;; TODO: qtspeech (new in Qt 5.9) ("qtbase" ,qtbase))) (arguments `(#:phases @@ -2778,7 +2822,7 @@ It supports rich text as well as plain text.") (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) (inputs - `(("gpgmepp" ,gpgmepp) + `(("gpgme" ,gpgme) ;; TODO: Add gpgme Qt-bindings ("kauth" ,kauth) ("kcodecs" ,kcodecs) ("kconfig" ,kconfig) @@ -2915,7 +2959,8 @@ setUrl, setUserAgent and call.") `(("kpackage" ,kpackage) ("kservice" ,kservice))) (native-inputs - `(("extra-cmake-modules" ,extra-cmake-modules))) + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) (inputs `(("kactivities" ,kactivities) ("karchive" ,karchive) @@ -2937,6 +2982,7 @@ setUrl, setUserAgent and call.") ("ki18n" ,ki18n) ("kjobwidgets" ,kjobwidgets) ("knotificantions" ,knotifications) + ("kwayland" ,kwayland) ("kwidgetsaddons" ,kwidgetsaddons) ("kwindowsystem" ,kwindowsystem) ("kxmlgui" ,kxmlgui) @@ -2947,7 +2993,7 @@ setUrl, setUserAgent and call.") ("qtx11extras" ,qtx11extras) ("solid" ,solid))) (arguments - `(#:tests? #f ; FIXME: 13/14 tests fail. + `(#:tests? #f ; FIXME: 9/15 tests fail. #:phases (modify-phases %standard-phases (add-before 'check 'check-setup diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm index b481bb98db..a5ad8da062 100644 --- a/gnu/packages/kde.scm +++ b/gnu/packages/kde.scm @@ -293,6 +293,8 @@ used in KDE development tools Kompare and KDevelop.") (modify-phases %standard-phases (add-before 'configure 'patch-cmakelists (lambda _ + ;; TODO: Verify: This should no longer be necessary, since + ;; KF5AuthConfig.cmake.in contains this already. (substitute* "processcore/CMakeLists.txt" (("KAUTH_HELPER_INSTALL_DIR") "KDE_INSTALL_LIBEXECDIR")))) (replace 'check diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 1a4e25d12a..afddc8ed7a 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -72,6 +72,7 @@ #:use-module (gnu packages libusb) #:use-module (gnu packages man) #:use-module (gnu packages maths) + #:use-module (gnu packages multiprecision) #:use-module (gnu packages ncurses) #:use-module (gnu packages networking) #:use-module (gnu packages ninja) @@ -357,8 +358,8 @@ It has been modified to remove all non-free binary blobs.") (define %intel-compatible-systems '("x86_64-linux" "i686-linux")) -(define %linux-libre-version "4.11.3") -(define %linux-libre-hash "14fbn9s7n86p5yivr4vmh4axdavny6xw1qk63cfwlcma7426wmva") +(define %linux-libre-version "4.11.4") +(define %linux-libre-hash "11nd9pv18vz3g82ja71dkz9mbs0ffb8yamsd44d381szmmm2kpj8") (define-public linux-libre (make-linux-libre %linux-libre-version @@ -367,14 +368,14 @@ 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.30" - "1m1ii9n65lwkbwx0ifj13vgdfr0mnx8n7sfvhf5mn4r8krhxi77a" + (make-linux-libre "4.9.31" + "0amc35c9f2rym6grb277yscnx8ybn8d4fbc2a59sgkg1lsdv7n4q" %intel-compatible-systems #:configuration-file kernel-config)) (define-public linux-libre-4.4 - (make-linux-libre "4.4.70" - "1dvcj3mk42m91y1x41yh52frjdcwip1wj57qwlkmrpg02icr0b3s" + (make-linux-libre "4.4.71" + "0nrd165crx9m9s1px98if6q5dcdqwmas9kh8i4rw51gz2xinh0gx" %intel-compatible-systems #:configuration-file kernel-config)) @@ -3850,6 +3851,36 @@ libnftnl has been previously known as libnftables. This library is currently used by nftables.") (license license:gpl2+))) +(define-public nftables + (package + (name "nftables") + (version "0.7") + (source + (origin + (method url-fetch) + (uri (string-append "http://www.nftables.org/projects/nftables" + "/files/nftables-" version ".tar.bz2")) + (sha256 + (base32 + "0hzdqigdx4i6jbpxbdyq4zy4p4waqn8l6vvz7685ikh1v0wr4qzy")))) + (build-system gnu-build-system) + (inputs `(("bison", bison) + ("flex", flex) + ("gmp", gmp) + ("libmnl", libmnl) + ("libnftnl", libnftnl) + ("readline", readline))) + (native-inputs `(("pkg-config", pkg-config))) + (home-page "http://www.nftables.org") + (synopsis "Userspace utility for Linux packet filtering") + (description "nftables is the project that aims to replace the existing +{ip,ip6,arp,eb}tables framework. Basically, this project provides a new packet +filtering framework, a new userspace utility and also a compatibility layer for +{ip,ip6}tables. nftables is built upon the building blocks of the Netfilter +infrastructure such as the existing hooks, the connection tracking system, the +userspace queueing component and the logging subsystem.") + (license license:gpl2))) + (define-public proot (package (name "proot") diff --git a/gnu/packages/markdown.scm b/gnu/packages/markup.scm index 4a020198e4..cd883b23ec 100644 --- a/gnu/packages/markdown.scm +++ b/gnu/packages/markup.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org> ;;; Copyright © 2015 David Thompson <davet@gnu.org> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2017 ng0 <ng0@no-reply.pragmatique.xyz> ;;; ;;; This file is part of GNU Guix. ;;; @@ -18,7 +19,7 @@ ;;; You should have received a copy of the GNU General Public License ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. -(define-module (gnu packages markdown) +(define-module (gnu packages markup) #:use-module (guix licenses) #:use-module (guix download) #:use-module (guix packages) @@ -130,3 +131,39 @@ for parsing and rendering CommonMark.") ;; licensed. The CommonMark specification is Creative Commons CC-BY-SA 4.0 ;; licensed. See 'COPYING' in the source distribution for more information. (license (list bsd-2 expat cc-by-sa4.0)))) + +(define-public smu + (package + (name "smu") + (version "1.4") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/Gottox/smu/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0iazl45rkz8ngsb5hpykl76w0ngvdvqqhym1qz5wykgmrzk293rp")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags (list "CC=gcc" + (string-append "PREFIX=" + (assoc-ref %outputs "out"))) + #:tests? #f ;No tests included + #:phases + (modify-phases %standard-phases + (delete 'configure)))) + (home-page "https://github.com/Gottox/smu") + (synopsis "Simple markup") + (description + "Smu is a very simple and minimal markup language. It is +designed for using in wiki-like environments. Smu makes it very +easy to write your documents on the fly and convert them into HTML. +Smu is capable to parse very large documents. As long as you avoid an huge +amount of indents it scales just great. + +Smu was started as a rewrite of Markdown but became something more +lightweight and consistent. The biggest difference between Markdown +and smu is that smu doesn't support reference style links.") + (license x11))) diff --git a/gnu/packages/patches/artanis-fix-Makefile.in.patch b/gnu/packages/patches/artanis-fix-Makefile.in.patch deleted file mode 100644 index 7e4800d364..0000000000 --- a/gnu/packages/patches/artanis-fix-Makefile.in.patch +++ /dev/null @@ -1,70 +0,0 @@ -Applies until an Artanis release comes with the following patches -applied: -* <https://savannah.gnu.org/patch/?func=detailitem&item_id=9130> -* <https://savannah.gnu.org/patch/?func=detailitem&item_id=9131> -diff -ru artanis-0.1.2/Makefile.in artanis-0.1.2.1/Makefile.in ---- artanis-0.1.2/Makefile.in 2016-02-10 12:35:18.800490571 -0200 -+++ artanis-0.1.2.1/Makefile.in 2016-10-15 19:44:35.140907367 -0300 -@@ -19,9 +19,18 @@ - MOD_OBJ := $(OBJ)/artanis - BIN := bin - TEMP_LIB_PATH := $(OBJ) --MOD_PATH := $(shell guile -c "(display (%site-dir))") - MOD_COMPILED_PATH := $(shell guile -c "(display (%site-ccache-dir))") -+ -+ifdef DESTDIR -+INFO_DIR := $(DESTDIR)/share/info/ -+MOD_PATH := $(DESTDIR)/$(shell guile -c "(display (%site-dir))") - MOD_TARGET_PATH := $(DESTDIR)/$(MOD_COMPILED_PATH) -+else -+INFO_DIR := $(PREFIX)/share/info/ -+MOD_PATH := $(shell guile -c "(display (%site-dir))") -+MOD_TARGET_PATH := $(MOD_COMPILED_PATH) -+endif -+ - GUILE_CFLAGS := -Wunsupported-warning -Wunbound-variable -Warity-mismatch -Wduplicate-case-datum -Wbad-case-datum -Wformat - GUILEC := GUILE_LOAD_COMPILED_PATH=$(TEMP_LIB_PATH) guild compile $(GUILE_CFLAGS) - ARTANIS_ETC := $(SRC)/etc/artanis -@@ -36,7 +45,6 @@ - GENDOCS :=$(BUILD_AUX)/gendocs.sh - CHK_TEXINFO := $(BUILD_AUX)/check_texinfo.scm - CP := cp -frd -P --INFO_DIR := $(PREFIX)/share/info/ - TARBALL_NAME := artanis-$(VERSION) - TMP_DIR := $(shell mktemp -d) - ANN_GEN := $(BUILD_AUX)/announce-gen -@@ -124,18 +132,29 @@ - -rm -f config.{h,log} - - install: $(ALL_TARGETS) -- mkdir -p $(DESTDIR)/$(MOD_PATH) -- $(CP) $(MOD) $(DESTDIR)/$(MOD_PATH)/ -+ mkdir -p $(MOD_PATH) -+ $(CP) $(MOD) $(MOD_PATH)/ - mkdir -p $(MOD_TARGET_PATH)/ - $(CP) $(MOD_OBJ) $(MOD_TARGET_PATH)/ -+ -+ifdef DESTDIR - $(CP) $(ARTANIS_ETC) $(DESTDIR)/etc/ - $(CP) $(ARTANIS_PAGES) $(DESTDIR)/etc/artanis/ -- mkdir -p $(DESTDIR)/$(PREFIX)/bin/ -- $(CP) $(BIN)/art $(DESTDIR)/$(PREFIX)/bin/ -+ mkdir -p $(DESTDIR)/bin/ -+ $(CP) $(BIN)/art $(DESTDIR)/bin/ - mkdir -p $(DESTDIR)/etc/bash_completion.d/ - $(CP) $(CMDCOMP) $(DESTDIR)/etc/bash_completion.d/ -+else -+ $(CP) $(ARTANIS_ETC) $(PREFIX)/etc/ -+ $(CP) $(ARTANIS_PAGES) $(PREFIX)/etc/artanis/ -+ mkdir -p $(PREFIX)/bin/ -+ $(CP) $(BIN)/art $(PREFIX)/bin/ -+ mkdir -p $(PREFIX)/etc/bash_completion.d/ -+ $(CP) $(CMDCOMP) $(PREFIX)/etc/bash_completion.d/ -+endif -+ - if [ -e /etc/bash.bashrc ]; then source /etc/bash.bashrc; fi -- if [ -e artanis.info ]; then mkdir -p $(DESTDIR)/$(INFO_DIR); $(CP) artanis.info $(DESTDIR)/$(INFO_DIR)/; fi -+ if [ -e artanis.info ]; then mkdir -p $(INFO_DIR); $(CP) artanis.info $(INFO_DIR)/; fi - - distclean: distclean-mk clean clean-config clean-tarball - -rm -f $(BIN)/art diff --git a/gnu/packages/patches/raptor2-heap-overflow.patch b/gnu/packages/patches/raptor2-heap-overflow.patch new file mode 100644 index 0000000000..ce2a4516f8 --- /dev/null +++ b/gnu/packages/patches/raptor2-heap-overflow.patch @@ -0,0 +1,51 @@ +This patch addresses two heap overflow bugs in raptor2: + +http://seclists.org/oss-sec/2017/q2/424 + +Patch copied from libreoffice: + +https://github.com/LibreOffice/core/blob/master/external/redland/raptor/0001-Calcualte-max-nspace-declarations-correctly-for-XML-.patch.1 + +From 590681e546cd9aa18d57dc2ea1858cb734a3863f Mon Sep 17 00:00:00 2001 +From: Dave Beckett <dave@dajobe.org> +Date: Sun, 16 Apr 2017 23:15:12 +0100 +Subject: [PATCH] Calcualte max nspace declarations correctly for XML writer + +(raptor_xml_writer_start_element_common): Calculate max including for +each attribute a potential name and value. + +Fixes Issues #0000617 http://bugs.librdf.org/mantis/view.php?id=617 +and #0000618 http://bugs.librdf.org/mantis/view.php?id=618 +--- + src/raptor_xml_writer.c | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/src/raptor_xml_writer.c b/src/raptor_xml_writer.c +index 693b946..0d3a36a 100644 +--- a/src/raptor_xml_writer.c ++++ b/src/raptor_xml_writer.c +@@ -181,9 +181,10 @@ raptor_xml_writer_start_element_common(raptor_xml_writer* xml_writer, + size_t nspace_declarations_count = 0; + unsigned int i; + +- /* max is 1 per element and 1 for each attribute + size of declared */ + if(nstack) { +- int nspace_max_count = element->attribute_count+1; ++ int nspace_max_count = element->attribute_count * 2; /* attr and value */ ++ if(element->name->nspace) ++ nspace_max_count++; + if(element->declared_nspaces) + nspace_max_count += raptor_sequence_size(element->declared_nspaces); + if(element->xml_language) +@@ -237,7 +238,7 @@ raptor_xml_writer_start_element_common(raptor_xml_writer* xml_writer, + } + } + +- /* Add the attribute + value */ ++ /* Add the attribute's value */ + nspace_declarations[nspace_declarations_count].declaration= + raptor_qname_format_as_xml(element->attributes[i], + &nspace_declarations[nspace_declarations_count].length); +-- +2.9.3 + diff --git a/gnu/packages/php.scm b/gnu/packages/php.scm index 1b55cd4eb9..b6f64bc0ef 100644 --- a/gnu/packages/php.scm +++ b/gnu/packages/php.scm @@ -53,7 +53,7 @@ (define-public php (package (name "php") - (version "7.1.5") + (version "7.1.6") (home-page "https://secure.php.net/") (source (origin (method url-fetch) @@ -61,7 +61,7 @@ name "-" version ".tar.xz")) (sha256 (base32 - "1b7njiqgy66ga5c8wsm78mqqjr7lj3hlpwbbvksi2mn4jv1s6jfi")) + "0nr49gqhk4pv8kcdc60cl1mgwlinawpraq9ba15whzmb472lsn01")) (modules '((guix build utils))) (snippet '(with-directory-excursion "ext" diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 45fdca211c..88bcb9723e 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -533,26 +533,24 @@ John the Ripper).") (define-public python-paramiko (package (name "python-paramiko") - (version "1.17.4") + (version "2.1.2") (source (origin (method url-fetch) (uri (pypi-uri "paramiko" version)) (sha256 (base32 - "1rs2qcmskcmq66q6g5al08wa41l9am0fad5r719m8wf91msyylqw")))) + "04734n0wy3hxk6rij4fr29in5jmr70nxpc7pqi2ksbjysfz4kbjz")))) (build-system python-build-system) (arguments - '(;; FIXME: One test fails with "EOFError not raised by connect". - #:tests? #f)) - ;; #:phases - ;; (modify-phases %standard-phases - ;; (replace 'check - ;; (lambda _ - ;; (zero? (system* "python" "test.py"))))))) + '(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + (zero? (system* "python" "test.py"))))))) (propagated-inputs - `(("python-pycrypto" ,python-pycrypto) - ("python-ecdsa" ,python-ecdsa))) + `(("python-pyasn1" ,python-pyasn1) + ("python-cryptography" ,python-cryptography))) (home-page "http://www.paramiko.org/") (synopsis "SSHv2 protocol library") (description "Paramiko is a python implementation of the SSHv2 protocol, diff --git a/gnu/packages/rdf.scm b/gnu/packages/rdf.scm index 7b7fe60855..6b5cfb013c 100644 --- a/gnu/packages/rdf.scm +++ b/gnu/packages/rdf.scm @@ -53,6 +53,8 @@ (method url-fetch) (uri (string-append "http://download.librdf.org/source/" name "-" version ".tar.gz")) + (patches + (search-patches "raptor2-heap-overflow.patch")) (sha256 (base32 "1vc02im4mpc28zxzgli68k6j0dakh0k3s389bm436yvqajxg19xd")))) diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm index a6b5270199..6a3d8f900d 100644 --- a/gnu/packages/serialization.scm +++ b/gnu/packages/serialization.scm @@ -282,7 +282,7 @@ it a convenient format to store user input files.") (define-public capnproto (package (name "capnproto") - (version "0.6.0") + (version "0.6.1") (source (origin (method url-fetch) (uri (string-append @@ -290,7 +290,7 @@ it a convenient format to store user input files.") version ".tar.gz")) (sha256 (base32 - "0gpp1cxsb9nfd7qkjjykzknx03y0z0n4bq5q0fmxci7w38ci22g5")))) + "010s9yhq4531wvdfrdf2477zswhck6cjfby79w73rff3v06090l0")))) (build-system gnu-build-system) (arguments `(#:phases diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 5e04e86539..41d1758250 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -503,11 +503,11 @@ Its features include: @end enumerate\n") (license bsd-2))) -(define-public s +(define-public s-shell (let ((commit "6604341edb3a775ff94415762af3ee9bd86bfb3c") (revision "1")) (package - (name "s") + (name "s-shell") (version (string-append "0.0.0-" revision "." (string-take commit 7))) (source (origin diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index b81bb42073..ae44bfb01f 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -5231,3 +5231,57 @@ devices that don't have Cairo's capabilities such as alpha support or anti-aliasing. Backends are modular such that any subset of backends is supported.") (license license:gpl2))) + +(define-public r-lubridate + (package + (name "r-lubridate") + (version "1.6.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "lubridate" version)) + (sha256 + (base32 + "0ci6rwij9i1inn840m0mlh1nqgh6vm2lada9kdnjpcjp5kyfv1qs")))) + (build-system r-build-system) + (propagated-inputs + `(("r-stringr" ,r-stringr))) + (home-page + "http://cran.r-project.org/web/packages/lubridate") + (synopsis "Make dealing with dates a little easier") + (description + "This package provides functions to work with date-times and time-spans: +fast and user friendly parsing of date-time data, extraction and updating of +components of a date-time (years, months, days, hours, minutes, and seconds), +algebraic manipulation on date-time and time-span objects. The 'lubridate' +package has a consistent and memorable syntax that makes working with dates +easy and fun.") + (license license:gpl2))) + +(define-public r-fdrtool + (package + (name "r-fdrtool") + (version "1.2.15") + (source + (origin + (method url-fetch) + (uri (cran-uri "fdrtool" version)) + (sha256 + (base32 + "1h46frlk7d9f4qx0bg6p55nrm9wwwz2sv6d1nz7061wdfsm69yb5")))) + (build-system r-build-system) + (home-page "http://strimmerlab.org/software/fdrtool/") + (synopsis "Estimation of false discovery rates and higher criticism") + (description + "This package provides tools to estimate both tail area-based false +discovery rates (Fdr) as well as local false discovery rates (fdr) for a +variety of null models (p-values, z-scores, correlation coefficients, +t-scores). The proportion of null values and the parameters of the null +distribution are adaptively estimated from the data. In addition, the package +contains functions for non-parametric density estimation (Grenander +estimator), for monotone regression (isotonic regression and antitonic +regression with weights), for computing the greatest convex minorant (GCM) and +the least concave majorant (LCM), for the half-normal and correlation +distributions, and for computing empirical higher criticism (HC) scores and +the corresponding decision threshold.") + (license license:gpl3+))) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 23b04bad29..17cb2ac939 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -103,23 +103,15 @@ in intelligent transportation networks.") (define-public p11-kit (package (name "p11-kit") - (version "0.23.2") + (version "0.23.7") (source (origin (method url-fetch) - (uri (string-append "https://p11-glue.freedesktop.org/releases/p11-kit-" - version ".tar.gz")) + (uri (string-append "https://github.com/p11-glue/p11-kit/releases/" + "download/" version "/p11-kit-" version ".tar.gz")) (sha256 (base32 - "1w7szm190phlkg7qx05ychlj2dbvkgkhx9gw6dx4d5rw62l6wwms")) - (modules '((guix build utils))) ; for substitute* - (snippet - '(begin - ;; Drop one test that fails, also when trying to compile manually. - ;; Reported upstream at - ;; https://bugs.freedesktop.org/show_bug.cgi?id=89027 - (substitute* "Makefile.in" - (("test-module\\$\\(EXEEXT\\) ") "")))))) + "0hdy4h8byvcvd4av504xqfqyd1h6xy914j034mq3c6v4ya37r3lq")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -478,25 +470,17 @@ security, and applying best practice development processes.") (package (name "python-acme") ;; Remember to update the hash of certbot when updating python-acme. - (version "0.14.2") + (version "0.15.0") (source (origin (method url-fetch) (uri (pypi-uri "acme" version)) (sha256 (base32 - "1kbgpjabbly7r757vyr1050ixnm9hyvrbf9n6aq49cgmb147ysqn")))) + "11zwgj663vr575pbqw74ia10wxaw16i8rnkcivsrbsx148rxdbcz")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases - (add-after 'unpack 'patch-dependency - ;; This module is part of the Python standard library, so we don't - ;; need to use an external package. - ;; https://github.com/certbot/certbot/pull/2249 - (lambda _ - (substitute* "setup.py" - (("'argparse',") "")) - #t)) (add-after 'build 'build-documentation (lambda _ (zero? (system* "make" "-C" "docs" "man" "info")))) @@ -543,7 +527,7 @@ security, and applying best practice development processes.") (uri (pypi-uri name version)) (sha256 (base32 - "1b39hybswzm8mkarg1mwpx47wffqg57jcgi52mz5iz60rxym9j2v")))) + "1srvmjxz75dbafx7xfg1w3n9h3srr9p2ljnfsih9dwwd5cxh9i5q")))) (build-system python-build-system) (arguments `(#:python ,python-2 diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 4b3d83df28..8a91a97017 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -461,14 +461,14 @@ standards (MPEG-2, MPEG-4 ASP/H.263, MPEG-4 AVC/H.264, and VC-1/VMW3).") (define-public ffmpeg (package (name "ffmpeg") - (version "3.3.1") + (version "3.3.2") (source (origin (method url-fetch) (uri (string-append "https://ffmpeg.org/releases/ffmpeg-" version ".tar.xz")) (sha256 (base32 - "0bwgm6z6k3khb91qh9xv15inykkfchpkm0lcdckkxhkacpyaf0mp")))) + "11974vcfsy8w0i6f4lfwqmg80xkfybqw7vw6zzrcn5i6ncddx60r")))) (build-system gnu-build-system) (inputs `(("fontconfig" ,fontconfig) @@ -2176,7 +2176,7 @@ many codecs and formats supported by libmediainfo.") (source (origin (method url-fetch) (uri (string-append - "http://www.live555.com/liveMedia/public/live." + "https://download.videolan.org/contrib/live555/live." version ".tar.gz")) (sha256 (base32 diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 3b06fbeb6b..d3f387e150 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -14,7 +14,7 @@ ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016 Alex Kost <alezost@gmail.com> -;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com> +;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2016 Petter <petter@mykolab.ch> ;;; Copyright © 2017 Mekeor Melire <mekeor.melire@gmail.com> ;;; Copyright © 2017 ng0 <contact.ng0@cryptolab.net> @@ -47,6 +47,7 @@ #:use-module (gnu packages) #:use-module (gnu packages documentation) #:use-module (gnu packages algebra) + #:use-module (gnu packages autotools) #:use-module (gnu packages compression) #:use-module (gnu packages image) #:use-module (gnu packages pkg-config) @@ -117,22 +118,29 @@ program.") (define-public xclip (package (name "xclip") - (version "0.12") + (version "0.13") (source (origin (method url-fetch) - (uri (string-append - "mirror://sourceforge/" name "/" name "/" version "/" - name "-" version ".tar.gz")) + (uri (string-append "https://github.com/astrand/xclip" + "/archive/" version ".tar.gz")) (sha256 (base32 - "0ibcf46rldnv0r424qcnai1fa5iq3lm5q5rdd7snsi5sb78gmixp")))) + "0n7pczk9vv30zf8qfln8ba3hnif9yfdxg0m84djac469wc28hnya")))) (build-system gnu-build-system) (arguments - '(#:tests? #f)) ; There is no test suite + '(#:tests? #f ; There is no test suite + #:phases + (modify-phases %standard-phases + ;; Since version 0.13, bootstrapped releases are no longer available. + (add-after 'unpack 'bootstrap + (lambda _ (zero? (system* "autoreconf" "-v"))))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake))) (inputs `(("libxmu" ,libxmu) ("libxt" ,libxt))) - (home-page "http://xclip.sourceforge.net/") + (home-page "https://github.com/astrand/xclip") (synopsis "Command line interface to X11 clipboard") (description "Xclip is a command line interface to the X11 clipboard. It can also be used for copying files, as an alternative to sftp/scp, thus @@ -441,7 +449,7 @@ of the screen selected by mouse.") (define-public slop (package (name "slop") - (version "6.3.41") + (version "6.3.43") (source (origin (method url-fetch) (uri (string-append @@ -450,7 +458,7 @@ of the screen selected by mouse.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1yiv0ak1z7zbmcdw0dwx2gpblrh7l7s3l7y7sgpx071dy8s4rqpb")))) + "0kazcnnarc61d3rjysaym9vadf31wisfd3sn076rsjnsldm4y66h")))) (build-system cmake-build-system) (arguments '(#:tests? #f)) ; no "check" target diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 78717cc203..8ed608b216 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -2621,7 +2621,7 @@ as USB mice.") (define-public xf86-video-ati (package (name "xf86-video-ati") - (version "7.8.0") + (version "7.9.0") (source (origin (method url-fetch) @@ -2631,7 +2631,7 @@ as USB mice.") ".tar.bz2")) (sha256 (base32 - "1ynnm4v4261xmg94b7jam9hjyym4n2nqba23rv23v3wjfbkms7s0")))) + "0xcq0lncb5p4sas5866qpkjyp1v8ksalw7m1gmqb3brhccp8gb9w")))) (build-system gnu-build-system) (inputs `(("mesa" ,mesa) ("xxf86driproto" ,xf86driproto) @@ -3019,7 +3019,7 @@ graphics cards.") (define-public xf86-video-openchrome (package (name "xf86-video-openchrome") - (version "0.5.0") + (version "0.6.0") (source (origin (method url-fetch) @@ -3029,7 +3029,7 @@ graphics cards.") ".tar.bz2")) (sha256 (base32 - "1fsmr455lk89zl795d6b5ypyqjim40j3h2vjch52lcssjw9xdza9")))) + "0x9gq3hw6k661k82ikd1y2kkk4dmgv310xr5q59dwn4k6z37aafs")))) (build-system gnu-build-system) (inputs `(("libx11" ,libx11) ("libxext" ,libxext) diff --git a/gnu/system.scm b/gnu/system.scm index 8e44ee85b3..b197abcdcc 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -112,6 +112,7 @@ boot-parameters-initrd read-boot-parameters read-boot-parameters-file + menu-entry->boot-parameters local-host-aliases %setuid-programs @@ -299,6 +300,19 @@ The object has its kernel-arguments extended in order to make it bootable." system root-device))) #f))) + +(define (menu-entry->boot-parameters menu-entry) + "Convert a <menu-entry> instance to a corresponding <boot-parameters>." + (boot-parameters + (label (menu-entry-label menu-entry)) + (root-device #f) + (boot-name 'custom) + (store-device #f) + (store-mount-point #f) + (kernel (menu-entry-linux menu-entry)) + (kernel-arguments (menu-entry-linux-arguments menu-entry)) + (initrd (menu-entry-initrd menu-entry)))) + ;;; ;;; Services. diff --git a/gnu/system/mapped-devices.scm b/gnu/system/mapped-devices.scm index 2959802c96..18b9f5b4b6 100644 --- a/gnu/system/mapped-devices.scm +++ b/gnu/system/mapped-devices.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016 Andreas Enge <andreas@enge.fr> +;;; Copyright © 2017 Mark H Weaver <mhw@netris.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -114,7 +115,16 @@ ;; udev-populated /dev/disk/by-id directory but udev may ;; be unavailable at the time we run this. (if (bytevector? source) - (or (find-partition-by-luks-uuid source) + (or (let loop ((tries-left 10)) + (and (positive? tries-left) + (or (find-partition-by-luks-uuid source) + ;; If the underlying partition is + ;; not found, try again after + ;; waiting a second, up to ten + ;; times. FIXME: This should be + ;; dealt with in a more robust way. + (begin (sleep 1) + (loop (- tries-left 1)))))) (error "LUKS partition not found" source)) source) |