diff options
author | Efraim Flashner <efraim@flashner.co.il> | 2016-08-29 23:46:33 +0300 |
---|---|---|
committer | Efraim Flashner <efraim@flashner.co.il> | 2016-08-29 23:46:33 +0300 |
commit | b3d2be945d2dfe08e3b73102dd0fd3f4a0a93b60 (patch) | |
tree | 707c6a5e18474b410e39fa6892521c9f47518ccc /gnu | |
parent | 97127431ee9133626fea62449706d729d80b73f6 (diff) | |
parent | 5b63a8568b39c019970569773bace18fab17a157 (diff) | |
download | guix-b3d2be945d2dfe08e3b73102dd0fd3f4a0a93b60.tar guix-b3d2be945d2dfe08e3b73102dd0fd3f4a0a93b60.tar.gz |
Merge remote-tracking branch 'origin/master' into core-updates
Diffstat (limited to 'gnu')
76 files changed, 2828 insertions, 956 deletions
diff --git a/gnu/build/activation.scm b/gnu/build/activation.scm index 6666cb4856..10aa58d85c 100644 --- a/gnu/build/activation.scm +++ b/gnu/build/activation.scm @@ -110,7 +110,8 @@ owner-writable in HOME." files))) (define* (add-user name group - #:key uid comment home shell password system? + #:key uid comment home create-home? + shell password system? (supplementary-groups '()) (log-port (current-error-port))) "Create an account for user NAME part of GROUP, with the specified @@ -139,7 +140,7 @@ properties. Return #t on success." `("-G" ,(string-join supplementary-groups ",")) '()) ,@(if comment `("-c" ,comment) '()) - ,@(if home + ,@(if (and home create-home?) (if (file-exists? home) `("-d" ,home) ; avoid warning from 'useradd' `("-d" ,home "--create-home")) @@ -158,7 +159,8 @@ properties. Return #t on success." #t))))) (define* (modify-user name group - #:key uid comment home shell password system? + #:key uid comment home create-home? + shell password system? (supplementary-groups '()) (log-port (current-error-port))) "Modify user account NAME to have all the given settings." @@ -186,7 +188,8 @@ logged in." (zero? (system* "groupdel" name))) (define* (ensure-user name group - #:key uid comment home shell password system? + #:key uid comment home create-home? + shell password system? (supplementary-groups '()) (log-port (current-error-port)) #:rest rest) @@ -207,7 +210,8 @@ numeric gid or #f." (define activate-user (match-lambda - ((name uid group supplementary-groups comment home shell password system?) + ((name uid group supplementary-groups comment home create-home? + shell password system?) (let ((profile-dir (string-append "/var/guix/profiles/per-user/" name))) (ensure-user name group @@ -216,6 +220,7 @@ numeric gid or #f." #:supplementary-groups supplementary-groups #:comment comment #:home home + #:create-home? create-home? #:shell shell #:password password) diff --git a/gnu/build/install.scm b/gnu/build/install.scm index aebf38c066..7431a09021 100644 --- a/gnu/build/install.scm +++ b/gnu/build/install.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -118,6 +118,10 @@ STORE." ("/var/guix/gcroots/booted-system" -> "/run/booted-system") ("/var/guix/gcroots/current-system" -> "/run/current-system") + ;; XXX: 'guix-register' creates this symlink with a wrong target, so + ;; create it upfront to be sure. + ("/var/guix/gcroots/profiles" -> "/var/guix/profiles") + (directory "/bin") (directory "/tmp" 0 0 #o1777) ; sticky bit (directory "/var/tmp" 0 0 #o1777) diff --git a/gnu/local.mk b/gnu/local.mk index 9ec0e54b00..faa6e535ef 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -297,6 +297,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/rdesktop.scm \ %D%/packages/rdf.scm \ %D%/packages/readline.scm \ + %D%/packages/regex.scm \ %D%/packages/rrdtool.scm \ %D%/packages/rsync.scm \ %D%/packages/ruby.scm \ @@ -523,7 +524,6 @@ dist_patch_DATA = \ %D%/packages/patches/geoclue-config.patch \ %D%/packages/patches/ghostscript-CVE-2015-3228.patch \ %D%/packages/patches/ghostscript-runpath.patch \ - %D%/packages/patches/gimp-CVE-2016-4994.patch \ %D%/packages/patches/glib-networking-ssl-cert-file.patch \ %D%/packages/patches/glib-tests-timer.patch \ %D%/packages/patches/glibc-bootstrap-system.patch \ @@ -668,6 +668,8 @@ dist_patch_DATA = \ %D%/packages/patches/mplayer2-theora-fix.patch \ %D%/packages/patches/module-init-tools-moduledir.patch \ %D%/packages/patches/mumps-build-parallelism.patch \ + %D%/packages/patches/mupdf-CVE-2016-6265.patch \ + %D%/packages/patches/mupdf-CVE-2016-6525.patch \ %D%/packages/patches/mupen64plus-ui-console-notice.patch \ %D%/packages/patches/mutt-store-references.patch \ %D%/packages/patches/mysql-fix-failing-test.patch \ @@ -851,7 +853,6 @@ dist_patch_DATA = \ %D%/packages/patches/xf86-video-intel-glibc-2.20.patch \ %D%/packages/patches/xf86-video-mach64-glibc-2.20.patch \ %D%/packages/patches/xf86-video-nv-remove-mibstore.patch \ - %D%/packages/patches/xf86-video-openchrome-glibc-2.20.patch \ %D%/packages/patches/xf86-video-tga-remove-mibstore.patch \ %D%/packages/patches/xfce4-panel-plugins.patch \ %D%/packages/patches/xfce4-session-fix-xflock4.patch \ diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 09a883c89c..05c2895792 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -13,6 +13,7 @@ ;;; Copyright © 2016 Peter Feigl <peter.feigl@nexoid.at> ;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net> ;;; Coypright © 2016 ng0 <ng0@we.make.ritual.n0.is> +;;; Coypright © 2016 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -1244,21 +1245,24 @@ degradation and failure.") (define-public fdupes (package (name "fdupes") - (version "1.51") + (version "1.6.1") (source (origin (method url-fetch) (uri (string-append - "https://github.com/adrianlopezroche/fdupes/archive/fdupes-" + "https://github.com/adrianlopezroche/fdupes/archive/v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "11j96vxl9vg3jsnxqxskrv3gad6dh7hz2zpyc8n31xzyxka1c7kn")))) + "1sj9pa40pbz6xdwbxfwhdhkvhdf1xc5gvggk9mdq26c41gdnyswx")))) (build-system gnu-build-system) (arguments - '(#:phases (alist-delete 'configure %standard-phases) + '(#:phases (modify-phases %standard-phases + (delete 'configure)) #:tests? #f ; no 'check' target - #:make-flags (list (string-append "PREFIX=" + #:make-flags (list "CC=gcc" + (string-append "PREFIX=" (assoc-ref %outputs "out"))))) (home-page "https://github.com/adrianlopezroche/fdupes") (synopsis "Identify duplicate files") @@ -1388,7 +1392,7 @@ limits.") (define-public autojump (package (name "autojump") - (version "22.2.4") + (version "22.3.4") (source (origin (method url-fetch) @@ -1397,7 +1401,7 @@ limits.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0xglj7nb8xczaqy2dhn78drqdwqj64rqpymxhqmmwwqzfaqassw1")))) + "113rcpr37ngf2xs8da41qdarq5qmj0dwx8ggqy3lhlb0kvqq7g9z")))) (build-system gnu-build-system) (native-inputs ;for tests `(("python-mock" ,python-mock) @@ -1647,7 +1651,7 @@ throughput (in the same interval).") (define-public thefuck (package (name "thefuck") - (version "3.9") + (version "3.11") (source (origin (method url-fetch) (uri (string-append "https://github.com/nvbn/thefuck/archive/" @@ -1655,7 +1659,7 @@ throughput (in the same interval).") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0g4s2vkpl0mqhkdkbzib07qr4xf0cq25fvhdhna52290qgd69pwf")))) + "04q2cn8c83f6z6wn1scla1ilrpi5ssjc64987hvmwfvwvb82bvkp")))) (build-system python-build-system) (native-inputs `(("python-setuptools" ,python-setuptools))) @@ -1734,3 +1738,36 @@ highly portable. Great for heterogenous networks.") the status of your battery in the system tray.") (home-page "https://github.com/valr/cbatticon") (license license:gpl2+))) + +(define-public interrobang + (let ((revision "1") + (commit "896543735e1c99144765fdbd7b6e6b5afbd8b881")) + (package + (name "interrobang") + (version (string-append "0.0.0-" revision "." (string-take commit 7))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "git://github.com/TrilbyWhite/interrobang") + (commit commit))) + (file-name (string-append name "-" version)) + (sha256 + (base32 + "1n13m70p1hfba5dy3i8hfclbr6k9q3d9dai3dg4jvhdhmxcpjzdf")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no tests + #:phases + (modify-phases %standard-phases + (delete 'configure)) ; no configure script + #:make-flags (list (string-append "PREFIX=" + (assoc-ref %outputs "out"))))) + (inputs + `(("libx11" ,libx11))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (synopsis "Scriptable launcher menu") + (description "Interrobang is a scriptable launcher menu with a customizable +shortcut syntax and completion options.") + (home-page "https://github.com/TrilbyWhite/interrobang") + (license license:gpl3+)))) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 5c42aaa493..67701a0f37 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -85,7 +85,9 @@ "1azbrhpfk4nnybr7kgmc7w6al6xnzppg853vas8gmkh185kk11l0")))) (build-system gnu-build-system) (arguments - `(#:configure-flags '("--enable-qt5") + `(#:configure-flags + '("--enable-qt5" + "CXXFLAGS=-std=gnu++11") #:phases (modify-phases %standard-phases ;; Insert an extra space between linker flags. @@ -2111,10 +2113,15 @@ interface.") (base32 "034p6mbwrjnxd9b6h20cidxi4ilkk3cgpjp154j0jzjs1ipf7x2h")))) (build-system gnu-build-system) (arguments - `(#:tests? #f)) ; no "check" phase + `(#:tests? #f ; no "check" phase + #:configure-flags + '("CXXFLAGS=-std=gnu++11"))) + (native-inputs + `(("qttools" ,qttools))) (inputs - `(("qt" ,qt) - ("fluidsynth" ,fluidsynth))) + `(("fluidsynth" ,fluidsynth) + ("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras))) (home-page "http://qsynth.sourceforge.net") (synopsis "Graphical user interface for FluidSynth") (description @@ -2430,7 +2437,7 @@ with support for HD extensions.") (define-public bs1770gain (package (name "bs1770gain") - (version "0.4.10") + (version "0.4.11") (source (origin (method url-fetch) @@ -2438,7 +2445,7 @@ with support for HD extensions.") version "/bs1770gain-" version ".tar.gz")) (sha256 (base32 - "1syr8qchs8091z9ayivj723szlidx81gll099bmk9kgpykmckd62")))) + "0j765drdb7h3y5ipjv9sg1a0if6zh8cksbv3rdk5ppd7kxcrjnlb")))) (build-system gnu-build-system) (inputs `(("ffmpeg" ,ffmpeg) ("sox" ,sox))) diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index 0a2e9b1b90..dcab95fa28 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -406,14 +406,14 @@ detection, and lossless compression.") (define-public borg (package (name "borg") - (version "1.0.6") + (version "1.0.7") (source (origin (method url-fetch) (uri (pypi-uri "borgbackup" version)) (sha256 (base32 - "1dxn9p4xm0zd32xzzd9hs4a542db34clykrrnnv3hrdnc394895p")))) + "1l9iw55w5x51yxl3q89cf6avg80lajxvc8qz584hrsmnk6i56cr0")))) (build-system python-build-system) (arguments `(#:phases diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 233b7a8879..2bd71c858b 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6325,6 +6325,61 @@ two-dimensional genome scans.") libraries for systems that do not have these available via other means.") (license license:artistic2.0))) +(define-public r-rhtslib + (package + (name "r-rhtslib") + (version "1.4.3") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "Rhtslib" version)) + (sha256 + (base32 + "1wgpn9x8abjj7fc087pdavqc3fz0pl5xdh231mgjila18irwlhb3")))) + (properties `((upstream-name . "Rhtslib"))) + (build-system r-build-system) + (propagated-inputs + `(("r-zlibbioc" ,r-zlibbioc))) + (inputs + `(("zlib" ,zlib))) + (home-page "https://github.com/nhayden/Rhtslib") + (synopsis "High-throughput sequencing library as an R package") + (description + "This package provides the HTSlib C library for high-throughput +nucleotide sequence analysis. The package is primarily useful to developers +of other R packages who wish to make use of HTSlib.") + (license license:lgpl2.0+))) + +(define-public r-bamsignals + (package + (name "r-bamsignals") + (version "1.4.3") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "bamsignals" version)) + (sha256 + (base32 + "1xqiqvg52p6fcvhr4146djbz79r3j1kmh75mq7rndwglmiybpwmy")))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-genomicranges" ,r-genomicranges) + ("r-iranges" ,r-iranges) + ("r-rcpp" ,r-rcpp) + ("r-rhtslib" ,r-rhtslib) + ("r-zlibbioc" ,r-zlibbioc))) + (inputs + `(("zlib" ,zlib))) + (home-page "http://bioconductor.org/packages/bamsignals") + (synopsis "Extract read count signals from bam files") + (description + "This package allows to efficiently obtain count vectors from indexed bam +files. It counts the number of nucleotide sequence reads in given genomic +ranges and it computes reads profiles and coverage profiles. It also handles +paired-end data.") + (license license:gpl2+))) + (define-public emboss (package (name "emboss") diff --git a/gnu/packages/bittorrent.scm b/gnu/packages/bittorrent.scm index f04dc95196..51248508ff 100644 --- a/gnu/packages/bittorrent.scm +++ b/gnu/packages/bittorrent.scm @@ -207,7 +207,7 @@ interface, for the Transmission BitTorrent daemon.") (define-public aria2 (package (name "aria2") - (version "1.25.0") + (version "1.26.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/tatsuhiro-t/aria2/" @@ -215,10 +215,12 @@ interface, for the Transmission BitTorrent daemon.") name "-" version ".tar.xz")) (sha256 (base32 - "0d8drwc5m5ps4bw63iq2gng36gyc2vadzixbynk1dj6gfr6fp2gz")))) + "1388qswa0in7kb1dx7qb10wp60p58zvvpys7jwim3clsbqvz6a68")))) (build-system gnu-build-system) (arguments - `(#:configure-flags '("--enable-libaria2") + `(#:configure-flags (list "--enable-libaria2" + (string-append "--with-bashcompletiondir=" + %output "/etc/bash_completion.d/")) #:phases (modify-phases %standard-phases (add-after 'unpack 'delete-socket-tests diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index e63c1af048..c239d16638 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -11,6 +11,7 @@ ;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com> ;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org> ;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2016 David Craven <david@craven.ch> ;;; ;;; This file is part of GNU Guix. ;;; @@ -871,3 +872,26 @@ even LZMA can provide, or a higher speed than gzip while compressing as well as bzip2.") (license (list license:gpl3+ license:public-domain)))) ; most files in lzma/ + +(define-public snappy + (package + (name "snappy") + (version "1.1.3") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/google/snappy/releases/download/" + version "/" name "-" version ".tar.gz")) + (sha256 + (base32 + "1wzf8yif5ym2gj52db6v5m1pxnmn258i38x7llk9x346y2nq47ig")))) + (build-system gnu-build-system) + (home-page "https://github.com/google/snappy") + (synopsis "Fast compressor/decompressor") + (description "Snappy is a compression/decompression library. It does not +aim for maximum compression, or compatibility with any other compression library; +instead, it aims for very high speeds and reasonable compression. For instance, +compared to the fastest mode of zlib, Snappy is an order of magnitude faster +for most inputs, but the resulting compressed files are anywhere from 20% to +100% bigger.") + (license license:asl2.0))) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index 7d61164b05..5dad97c72f 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -65,7 +65,7 @@ communication, encryption, decryption, signatures, etc.") (define-public signify (package (name "signify") - (version "18") + (version "19") (source (origin (method url-fetch) (uri (string-append "https://github.com/aperezdc/signify/" @@ -73,7 +73,7 @@ communication, encryption, decryption, signatures, etc.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "00lbjiy0gv1b1fvrd6ni4qah96ah4qf6aig05vd2hji4vs00jgwg")))) + "0d2wrss1xl9wm3yzl571cv6h7zdp170v7a45f953bgsy64hkqavh")))) (build-system gnu-build-system) ;; TODO Build with libwaive (described in README.md), to implement something ;; like OpenBSD's pledge(). @@ -223,3 +223,43 @@ to provide security against off-line attacks, such as a drive falling into the wrong hands.") (license (list license:lgpl3+ ;encfs library license:gpl3+)))) ;command-line tools + +(define-public keyutils + (package + (name "keyutils") + (version "1.5.9") + (source + (origin + (method url-fetch) + (uri + (string-append "https://people.redhat.com/dhowells/keyutils/keyutils-" + version ".tar.bz2")) + (sha256 + (base32 + "1bl3w03ygxhc0hz69klfdlwqn33jvzxl1zfl2jmnb2v85iawb8jd")) + (modules '((guix build utils))) + ;; Create relative symbolic links instead of absolute ones to /lib/* + (snippet '(substitute* "Makefile" (("\\$\\(LNS\\) \\$\\(LIBDIR\\)/") + "$(LNS) "))))) + (build-system gnu-build-system) + (arguments + `(#:phases (modify-phases %standard-phases + (delete 'configure)) ; no configure script + #:make-flags (list "CC=gcc" + "RPATH=-Wl,-rpath,$(DESTDIR)$(LIBDIR)" + (string-append "DESTDIR=" + (assoc-ref %outputs "out")) + "INCLUDEDIR=/include" + "LIBDIR=/lib" + "MANDIR=/share/man" + "SHAREDIR=/share/keyutils") + #:test-target "test")) + (home-page "https://people.redhat.com/dhowells/keyutils/") + (synopsis "Linux key management utilities") + (description + "Keyutils is a set of utilities for managing the key retention facility in +the Linux kernel, which can be used by file systems, block devices, and more to +gain and retain the authorization and encryption keys required to perform +secure operations. ") + (license (list license:lgpl2.1+ ; the files keyutils.* + license:gpl2+)))) ; the rest diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm index 88145eea73..c7c11eba98 100644 --- a/gnu/packages/cups.scm +++ b/gnu/packages/cups.scm @@ -301,14 +301,14 @@ device-specific programs to convert and print many types of files.") (define-public hplip (package (name "hplip") - (version "3.16.7") + (version "3.16.8") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/hplip/hplip/" version "/hplip-" version ".tar.gz")) (sha256 (base32 - "1hpzyf9ifs0vilsbwxcgpv8g9557p1x8w5qwgz5l0avgcd10dzlx")))) + "1svcalf2nc7mvxndp9zz3xp43w66z45rrsr5syl8fx61a6p6gnm9")))) (build-system gnu-build-system) (home-page "http://hplipopensource.com/") (synopsis "HP Printer Drivers") diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 0173ffb896..3d2d130992 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -10,6 +10,7 @@ ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is> ;;; Copyright © 2016 Roel Janssen <roel@gnu.org> +;;; Copyright © 2016 David Craven <david@craven.ch> ;;; ;;; This file is part of GNU Guix. ;;; @@ -57,6 +58,7 @@ #:use-module ((guix licenses) #:select (gpl2 gpl3 gpl3+ lgpl2.1+ lgpl3+ x11-style non-copyleft bsd-2 bsd-3 public-domain)) + #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system gnu) @@ -1064,3 +1066,31 @@ trees (LSM), for sustained throughput under random insert workloads.") (description "The DB::File module provides Perl bindings to the Berkeley DB version 1.x.") (license (package-license perl)))) + +(define-public lmdb + (package + (name "lmdb") + (version "0.9.18") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/LMDB/lmdb/archive/" + "LMDB_" version ".tar.gz")) + (sha256 + (base32 + "12crvzxky8in99ibh22k4ppmkgqs28yy3v7yy944za7fsrqv8dfx")))) + (build-system gnu-build-system) + (arguments + `(#:test-target "test" + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (chdir (string-append + (getenv "PWD") "/lmdb-LMDB_" ,version "/libraries/liblmdb")) + (substitute* "Makefile" + (("/usr/local") (assoc-ref outputs "out"))) + #t))))) + (home-page "https://symas.com/products/lightning-memory-mapped-database") + (synopsis "Lightning memory-mapped database library") + (description "Lightning memory-mapped database library.") + (license license:openldap2.8))) diff --git a/gnu/packages/dav.scm b/gnu/packages/dav.scm index 7d3e43d7cd..507d00c1a6 100644 --- a/gnu/packages/dav.scm +++ b/gnu/packages/dav.scm @@ -52,13 +52,13 @@ clients.") (define-public vdirsyncer (package (name "vdirsyncer") - (version "0.11.3") + (version "0.12.1") (source (origin (method url-fetch) (uri (pypi-uri name version)) (sha256 (base32 - "10majl58vdpxgbddjqgwblvl7akvvr4c2c8iaxnf3kgyh01jq6k9")))) + "1y3xpl83p4y1m5ks44drhwpygzwbjwhraycrhxlkhwk8bhnsifrz")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm index 54f23db01e..27ab7a698b 100644 --- a/gnu/packages/disk.scm +++ b/gnu/packages/disk.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org> +;;; Copyright © 2016 Roel Janssen <roel@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -22,20 +23,27 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu packages disk) - #:use-module (guix licenses) + #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system gnu) #:use-module (gnu packages) + #:use-module (gnu packages base) + #:use-module (gnu packages docbook) #:use-module (gnu packages gettext) + #:use-module (gnu packages glib) + #:use-module (gnu packages gtk) + #:use-module (gnu packages gnome) #:use-module (gnu packages linux) #:use-module (gnu packages ncurses) #:use-module (gnu packages perl) + #:use-module (gnu packages pkg-config) #:use-module (gnu packages popt) #:use-module (gnu packages python) #:use-module (gnu packages readline) #:use-module (gnu packages guile) - #:use-module (gnu packages compression)) + #:use-module (gnu packages compression) + #:use-module (gnu packages xml)) (define-public parted (package @@ -73,7 +81,7 @@ (description "GNU Parted is a package for creating and manipulating disk partition tables. It includes a library and command-line utility.") - (license gpl3+))) + (license license:gpl3+))) (define-public fdisk (package @@ -99,7 +107,7 @@ tables. It includes a library and command-line utility.") "GNU fdisk provides a GNU version of the common disk partitioning tool fdisk. fdisk is used for the creation and manipulation of disk partition tables, and it understands a variety of different formats.") - (license gpl3+))) + (license license:gpl3+))) (define-public gptfdisk (package @@ -139,7 +147,7 @@ tables, and it understands a variety of different formats.") works on Globally Unique Identifier (GUID) Partition Table (GPT) disks, rather than on the more common (through 2009) Master Boot Record (MBR) partition tables.") - (license gpl2))) + (license license:gpl2))) (define-public ddrescue (package @@ -162,7 +170,7 @@ tables.") from one file to another, working to rescue data in case of read errors. The program also includes a tool for manipulating its log files, which are used to recover data more efficiently by only reading the necessary blocks.") - (license gpl3+))) + (license license:gpl3+))) (define-public dosfstools (package @@ -187,7 +195,7 @@ to recover data more efficiently by only reading the necessary blocks.") (description "The dosfstools package includes the mkfs.fat and fsck.fat utilities, which respectively make and check MS-DOS FAT filesystems.") - (license gpl3+))) + (license license:gpl3+))) (define-public sdparm (package @@ -213,7 +221,7 @@ uses a SCSI command set. Such devices include CD/DVD drives (irrespective of transport), SCSI and ATAPI tape drives, and SCSI enclosures. This utility can also send commands associated with starting and stopping the media, loading and unloading removable media and some other housekeeping functions.") - (license bsd-3))) + (license license:bsd-3))) (define-public idle3-tools (package @@ -245,4 +253,43 @@ present in many Western Digital hard drives. This timer is part of the \"IntelliPark\" feature that stops the disk when not in use. Unfortunately, the default timer setting is not well suited to Linux or other *nix systems, and can dramatically shorten the lifespan of the drive if left unchecked.") - (license gpl3+))) + (license license:gpl3+))) + +(define-public gparted + (package + (name "gparted") + (version "0.26.1") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/gparted/gparted/gparted-" + version "/gparted-" version ".tar.gz")) + (sha256 + (base32 "1h9d6x335wxpm49yphzm9n1hbh2hcg0p2rphv76mrvsss91bcm1g")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; Tests require a network connection. + #:configure-flags '("--disable-scrollkeeper"))) + (inputs + `(("util-linux" ,util-linux) + ("parted" ,parted) + ("glib" ,glib) + ("gtkmm" ,gtkmm-2) + ("libxml2" ,libxml2) + ("libxslt" ,libxslt) + ("gnome-doc-utils" ,gnome-doc-utils) + ("docbook-xml" ,docbook-xml-4.2) + ("python" ,python-2) + ("python-libxml2" ,python2-libxml2) + ("which" ,which))) + (native-inputs + `(("intltool" ,intltool) + ("pkg-config" ,pkg-config))) + (home-page "https://sourceforge.net/projects/gparted/") + (synopsis "Partition editor to graphically manage disk partitions") + (description "GParted is a GNOME partition editor for creating, +reorganizing, and deleting disk partitions. It uses libparted from the parted +project to detect and manipulate partition tables. Optional file system tools +permit managing file systems not included in libparted.") + ;; The home page says GPLv2, but the source code says GPLv2+. + (license license:gpl2+))) diff --git a/gnu/packages/documentation.scm b/gnu/packages/documentation.scm index 72af708dbd..080c0dba8e 100644 --- a/gnu/packages/documentation.scm +++ b/gnu/packages/documentation.scm @@ -49,8 +49,25 @@ (base32 "1w71nk527lq504njmaf0vzr93pgahkgzzxzglrq6bay8cw2rvnvq")))) (build-system gnu-build-system) - (arguments '(#:tests? #f)) ; no 'check' target - (inputs `(("python" ,python-2))) + (arguments + `(#:tests? #f ; no 'check' target + #:phases + (modify-phases %standard-phases + ;; Make asciidoc use the local docbook-xsl package instead of fetching + ;; it from the internet at run-time. + (add-before 'install 'make-local-docbook-xsl + (lambda* (#:key inputs #:allow-other-keys) + (substitute* (find-files "docbook-xsl" ".*\\.xsl$") + (("xsl:import href=\"http://docbook.sourceforge.net/\ +release/xsl/current") + (string-append + "xsl:import href=\"" + (string-append (assoc-ref inputs "docbook-xsl") + "/xml/xsl/docbook-xsl-" + ,(package-version docbook-xsl))))) + #t))))) + (inputs `(("python" ,python-2) + ("docbook-xsl" ,docbook-xsl))) (home-page "http://www.methods.co.nz/asciidoc/") (synopsis "Text-based document generation system") (description diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 9948b911d0..4fe9a8aae6 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -14,6 +14,8 @@ ;;; Copyright © 2016 Roel Janssen <roel@gnu.org> ;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is> ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com> +;;; Copyright © 2016 Nicolas Goaziou <mail@nicolasgoaziou.fr> +;;; Copyright © 2016 Alex Vong <alexvong1995@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -410,7 +412,7 @@ configuration files, such as .gitattributes, .gitignore, and .git/config.") (define-public emacs-with-editor (package (name "emacs-with-editor") - (version "2.5.1") + (version "2.5.2") (source (origin (method url-fetch) (uri (string-append @@ -419,7 +421,7 @@ configuration files, such as .gitattributes, .gitignore, and .git/config.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1lqm0msc9lzb05ys96bsx8bf2y1qrw27dh5h6qz8lf5i4cbhflw2")))) + "0k57f2wqng7510nzyzgjgbapplia23l3zrphl816nfm4s58sy1ka")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-dash" ,emacs-dash))) @@ -435,7 +437,7 @@ on stdout instead of using a socket as the Emacsclient does.") (define-public magit (package (name "magit") - (version "2.7.0") + (version "2.8.0") (source (origin (method url-fetch) (uri (string-append @@ -443,7 +445,7 @@ on stdout instead of using a socket as the Emacsclient does.") version "/" name "-" version ".tar.gz")) (sha256 (base32 - "1kzd8k2n0lcr04jvn5b6d29zf765mxgshfhzflkzndwmvyxmlqpl")))) + "1znvb7inwinrhifqzwp4lp9j6yp1l25j7riczc0zmvcjbpl5yhfq")))) (build-system gnu-build-system) (native-inputs `(("texinfo" ,texinfo) ("emacs" ,emacs-minimal))) @@ -571,7 +573,7 @@ support for Git-SVN.") (file-name (string-append "magit-popup-" version ".el")) (sha256 (base32 - "144nl7j5mn86ccan6qxgg40bsxpkbc83vwnhd5y657gqki74972r")))) + "0lmw824zp8c0vhikfkiay9wn4nmaksz6mfy0fldvy4wlx5c26yh3")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-dash" ,emacs-dash))) @@ -1187,7 +1189,7 @@ and stored in memory.") (define-public emacs-dash (package (name "emacs-dash") - (version "2.12.1") + (version "2.13.0") (source (origin (method url-fetch) (uri (string-append @@ -1196,7 +1198,7 @@ and stored in memory.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "082jl7mp4x063bpj5ad2pc5125k0d6p7rb89gcj7ny3lma9h2ij1")))) + "1pjlkrzr8n45bnp3xs3dybvy0nz3gwamrfc7vsi1nhpkkw99ihhb")))) (build-system emacs-build-system) (arguments `(#:phases @@ -1233,7 +1235,7 @@ allows easily move between them.") (define-public emacs-s (package (name "emacs-s") - (version "1.9.0") + (version "1.11.0") (source (origin (method url-fetch) (uri (string-append @@ -1242,7 +1244,7 @@ allows easily move between them.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1gah2k577gvnmxlpw7zrz0jr571vghzhdv2hbgchlgah07czd091")))) + "0krq5nz3llfx0vwdqn18pmq777ja0fac185w0h9qymppb1j1hvc2")))) (build-system emacs-build-system) (arguments `(#:phases @@ -1259,7 +1261,7 @@ strings.") (define-public emacs-f (package (name "emacs-f") - (version "0.17.2") + (version "0.18.2") (source (origin (method url-fetch) (uri (string-append @@ -1268,7 +1270,7 @@ strings.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1n5gcldf43wmkr7jxgs519v21zavwr0yn8048iv6gvgfwicnyjlx")))) + "1926shh2ymdsgz05c6q181mzzz1rci99ch568j151xi865jinyg5")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-s" ,emacs-s) @@ -2091,6 +2093,26 @@ It is built on top of the custom theme support in Emacs 24 or later.") package provides a light and a dark variant.") (license license:gpl3+))) +(define-public emacs-ahungry-theme + (package + (name "emacs-ahungry-theme") + (version "1.3.0") + (source + (origin (method url-fetch) + (uri (string-append "http://elpa.gnu.org/packages/ahungry-theme-" + version ".tar")) + (sha256 + (base32 + "1p2zaq0s4bbl5cx6wyab24wamw7m0mysb0v47dqjmnvfc25z84rq")))) + (build-system emacs-build-system) + (home-page "https://github.com/ahungry/color-theme-ahungry") + (synopsis "Ahungry color theme for Emacs") + (description "Ahungry theme for Emacs provides bright and bold colors. +If you load it from a terminal, you will be able to make use of the +transparent background. If you load it from a GUI, it will default to a +dark background.") + (license license:gpl3+))) + (define-public emacs-smartparens (package (name "emacs-smartparens") @@ -2960,3 +2982,23 @@ passive voice.") (synopsis "Folder tree view for Emacs") (description "This Emacs package provides a folder tree view.") (license license:gpl3+))) + +(define-public emacs-org + (package + (name "emacs-org") + (version "20160815") + (source (origin + (method url-fetch) + (uri (string-append "http://orgmode.org/elpa/org-" + version ".tar")) + (sha256 + (base32 + "0k9pa13kpmpi6irmbavxffgqfanhjnijz4mkmmi0zp7kgjfbaliw")))) + (build-system emacs-build-system) + (home-page "http://orgmode.org/") + (synopsis "Outline-based notes management and organizer") + (description "Org is an Emacs mode for keeping notes, maintaining TODO +lists, and project planning with a fast and effective plain-text system. It +also is an authoring system with unique support for literate programming and +reproducible research.") + (license license:gpl3+))) diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index f6c3d5fba6..dad38e0310 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -388,7 +388,9 @@ multipole-accelerated algorithm.") (assoc-ref outputs "out")) "phoenix.pro")))))))) (inputs - `(("qt" ,qt) + `(("qtbase" ,qtbase) + ("qtserialport" ,qtserialport) + ("qtsvg" ,qtsvg) ("boost" ,boost) ("zlib" ,zlib) ("fritzing-parts-db" diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index 6289bea7af..818dbac942 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -53,7 +53,7 @@ (define-public efl (package (name "efl") - (version "1.17.2") + (version "1.18.0") (source (origin (method url-fetch) (uri (string-append @@ -61,7 +61,7 @@ version ".tar.xz")) (sha256 (base32 - "1dpq5flygrjg931nzsr2ra8icqffzrzbs1lnrzarbpsbmgq3zacs")))) + "17mzbjmz8d2vs8p63r1sk3mppl3l2fhxy2jv24dp75lgqbsvp806")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -69,13 +69,15 @@ `(("alsa-lib" ,alsa-lib) ("compositeproto" ,compositeproto) ("curl" ,curl) + ("ghostscript" ,ghostscript) ("giflib" ,giflib) ("gstreamer" ,gstreamer) ("gst-plugins-base" ,gst-plugins-base) - ("harfbuzz" ,harfbuzz) ("libexif" ,libexif) ("libjpeg" ,libjpeg) + ("libraw" ,libraw) ("librsvg" ,librsvg) + ("libspectre" ,libspectre) ("libtiff" ,libtiff) ("libx11" ,libx11) ("libxcomposite" ,libxcomposite) @@ -89,7 +91,10 @@ ("libxrandr" ,libxrandr) ("libxscrnsaver" ,libxscrnsaver) ("libxtst" ,libxtst) + ("lz4" ,lz4) ("mesa" ,mesa) + ("openjpeg" ,openjpeg-1) + ("poppler" ,poppler) ("printproto" ,printproto) ("scrnsaverproto" ,scrnsaverproto) ("xextproto" ,xextproto) @@ -100,28 +105,41 @@ ;; All these inputs are in package config files in section ;; Require.private. `(("bullet" ,bullet) ; ephysics.pc - ("dbus" ,dbus) ; eldbus.pc + ("dbus" ,dbus) ; eldbus.pc, elementary.pc, elocation.pc, ethumb_client.pc ("eudev" ,eudev) ; eeze.pc - ("fontconfig" ,fontconfig) ; evas.pc - ("freetype" ,freetype) ; evas.pc - ("fribidi" ,fribidi) ; evas.pc - ("glib" ,glib) ; ecore.pc + ("fontconfig" ,fontconfig) ; evas.pc, evas-cxx.pc + ("freetype" ,freetype) ; evas.pc, evas-cxx.pc + ("fribidi" ,fribidi) ; evas.pc, evas-cxx.pc + ("glib" ,glib) ; ecore.pc, ecore-cxx.pc + ("harfbuzz" ,harfbuzz) ; evas.pc, evas-cxx.pc + ("luajit" ,luajit) ; elua.pc, evas.pc, evas-cxx.pc ("libpng" ,libpng) ; evas.pc, evas-cxx.pc ("libsndfile" ,libsndfile) ; ecore-audio.pc, ecore-audio-cxx.pc - ("luajit" ,luajit) ; evas.pc, edje.pc - ("openssl" ,openssl) ; eet.pc, ecore-con.pc + ("openssl" ,openssl) ; ecore-con.pc, eet.pc, eet-cxx.pc, emile.pc ("pulseaudio" ,pulseaudio) ; ecore-audio.pc, ecore-audio-cxx.pc ("util-linux" ,util-linux) ; eeze.pc - ("zlib" ,zlib))) ; eet.pc + ("zlib" ,zlib))) ; eet.pc, eet-cxx.pc, emile.pc (arguments - `(#:configure-flags '("--disable-silent-rules") + `(#:configure-flags '("--disable-silent-rules" + "--enable-liblz4" + "--enable-harfbuzz") #:phases (modify-phases %standard-phases - (add-before 'configure 'patch-config-files + ;; ecore_audio cannot find pulseaudio or libsndfile when compiled. + ;; Starting in version 1.18.0, these two libraries are dlopened so + ;; we hardcode their locations as a temporary workaround. + (add-after 'configure 'hardlink-dlopen-files (lambda _ - (substitute* "po/Makefile.in.in" - (("/bin/sh") (which "bash")))))))) - (home-page "http://www.enlightenment.org") + (substitute* "src/lib/ecore_audio/ecore_audio.c" + (("libpulse.so.0") + (string-append (assoc-ref %build-inputs "pulseaudio") + "/lib/libpulse.so.0"))) + (substitute* "src/lib/ecore_audio/ecore_audio.c" + (("libsndfile.so.1") + (string-append (assoc-ref %build-inputs "libsndfile") + "/lib/libsndfile.so.1"))) + #t))))) + (home-page "https://www.enlightenment.org") (synopsis "Enlightenment Foundation Libraries") (description "Enlightenment Foundation Libraries is a set of libraries developed @@ -148,7 +166,7 @@ removable devices or support for multimedia.") `(("pkg-config" ,pkg-config))) (propagated-inputs `(("efl" ,efl))) ; elementary.pc, elementary-cxx.pc - (home-page "http://www.enlightenment.org") + (home-page "https://www.enlightenment.org") (synopsis "Widget library of Enlightenment world") (description "Elementary is a widget library/toolkit, part of the Enlightenment @@ -180,7 +198,7 @@ full capabilities of EFL.") ("librsvg" ,librsvg) ("libspectre" ,libspectre) ("poppler" ,poppler))) - (home-page "http://www.enlightenment.org") + (home-page "https://www.enlightenment.org") (synopsis "Plugins for integration of various file types into Evas") (description "Evas-generic-loaders is a collection of interfaces to outside libraries @@ -207,7 +225,7 @@ files in Evas (EFL canvas library).") (inputs `(("efl" ,efl) ("vlc" ,vlc))) - (home-page "http://www.enlightenment.org") + (home-page "https://www.enlightenment.org") (synopsis "Plugins for integrating media players in EFL based applications") (description "Emotion-generic-players is a collection of interfaces to outside libraries @@ -231,9 +249,8 @@ The only supported now is VLC.") (native-inputs `(("pkg-config" ,pkg-config))) (inputs - `(("efl" ,efl) - ("elementary" ,elementary))) - (home-page "http://www.enlightenment.org") + `(("efl" ,efl))) + (home-page "https://www.enlightenment.org") (synopsis "Powerful terminal emulator based on EFL") (description "Terminology is fast and feature rich terminal emulator. It is solely @@ -245,21 +262,21 @@ contents and more.") (define-public rage (package (name "rage") - (version "0.1.4") + (version "0.2.0") (source (origin (method url-fetch) (uri (string-append "https://download.enlightenment.org/rel/apps/rage/rage-" - version ".tar.gz")) + version ".tar.xz")) (sha256 - (base32 "10j3n8crk16jzqz2hn5djx6vms5f6x83qyiaphhqx94h9dgv2mgg")))) + (base32 + "07mfh0k83nrm557x72qafxawxizilqgkr6sngbia3ikprc8556zy")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) (inputs - `(("efl" ,efl) - ("elementary" ,elementary))) + `(("efl" ,efl))) (home-page "https://www.enlightenment.org/about-rage") (synopsis "Video and audio player based on EFL") (description @@ -270,7 +287,7 @@ Libraries with some extra bells and whistles.") (define-public enlightenment (package (name "enlightenment") - (version "0.21.1") + (version "0.21.2") (source (origin (method url-fetch) (uri @@ -278,25 +295,22 @@ Libraries with some extra bells and whistles.") name "/" name "-" version ".tar.xz")) (sha256 (base32 - "119sxrgrz163c01yx0q9n2jpmmbv0a58akmz0c2z4xy37f1m02rx")))) + "0fi5dxrprnvhnn2y51gnfpsjj44snriqi20k20a73vhaqxfn8xx8")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--enable-mount-eeze"))) (native-inputs - `(("pkg-config" ,pkg-config))) + `(("gettext" ,gnu-gettext) + ("pkg-config" ,pkg-config))) (inputs `(("alsa-lib" ,alsa-lib) ("dbus" ,dbus) + ("efl" ,efl) ("freetype" ,freetype) - ("gettext" ,gnu-gettext) ("libxcb" ,libxcb) ("libxext" ,libxext) ("linux-pam" ,linux-pam) ("xcb-util-keysyms" ,xcb-util-keysyms))) - (propagated-inputs - ;; both these inputs are present in pkgconfig file in Require section - `(("efl" ,efl) ; enlightenment.pc - ("elementary" ,elementary))) ; enlightenment.pc (home-page "https://www.enlightenment.org") (synopsis "Lightweight desktop environment") (description @@ -309,14 +323,14 @@ embedded systems.") (define-public python-efl (package (name "python-efl") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (pypi-uri "python-efl" version)) (sha256 (base32 - "1ihay90agl2jx12m7jj8j1cspd7vsak1w7q95rhb6r2srkq0ppxk")))) + "0x49rb7mx7ysjp23m919r2rx8qnl4xackhl9s9x2697m7cs77n1r")))) (build-system python-build-system) (arguments '(#:phases @@ -335,7 +349,6 @@ embedded systems.") ("python-cython" ,python-cython))) (inputs `(("efl" ,efl) - ("elementary" ,elementary) ("python-dbus" ,python-dbus))) (home-page "https://www.enlightenment.org/") (synopsis "Python bindings for EFL") diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index 179e32507c..21a22768fd 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -67,7 +67,7 @@ ("miniupnpc" ,miniupnpc) ("openssl" ,openssl) ("protobuf" ,protobuf) - ("qt" ,qt))) + ("qtbase" ,qtbase))) (arguments `(#:configure-flags (list diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 0262d0a1ed..67f1e1a2c0 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -295,6 +295,28 @@ application, or a wayland client itself. The clients can be traditional applications, X servers (rootless or fullscreen) or other display servers.") (license license:x11))) +(define-public wayland-protocols + (package + (name "wayland-protocols") + (version "1.4") + (source (origin + (method url-fetch) + (uri (string-append + "https://wayland.freedesktop.org/releases/" + "wayland-protocols-" version ".tar.xz")) + (sha256 + (base32 + "0wpm7mz7ww6nn3vrgz7a9iyk7mk6za73wnq0n54lzl8yq8irljh1")))) + (build-system gnu-build-system) + (inputs + `(("wayland" ,wayland))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (synopsis "Wayland protocols") + (description "This package contains XML definitions of the Wayland protocols.") + (home-page "https://wayland.freedesktop.org") + (license license:expat))) + (define-public exempi (package (name "exempi") diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 0bfd0c5d30..d544a7294d 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -1,13 +1,13 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 Tomáš Čech <sleep_walker@suse.cz> ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org> -;;; Copyright © 2015 Julian Graham <joolean@gmail.com> ;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2015 Alex Kost <alezost@gmail.com> ;;; Copyright © 2015, 2016 David Thompson <davet@gnu.org> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Kei Kebreau <kei@openmailbox.org> ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2016 Julian Graham <joolean@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -93,14 +93,14 @@ is used in some video games and movies.") (define-public gzochi (package (name "gzochi") - (version "0.9") + (version "0.10") (source (origin (method url-fetch) (uri (string-append "mirror://savannah/gzochi/gzochi-" version ".tar.gz")) (sha256 (base32 - "1nf8naqbc4hmhy99b8n70yswg9j71nh5mfpwwh6d8pdw5mp9b46a")))) + "055m7ywgl48ljwxf0kjhl76ldck890y5afdwjhk5s3p65xyaxh0k")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases @@ -116,7 +116,6 @@ is used in some video games and movies.") (native-inputs `(("pkgconfig" ,pkg-config))) (inputs `(("bdb" ,bdb) ("glib" ,glib) - ("gmp" ,gmp) ("guile" ,guile-2.0) ("libmicrohttpd" ,libmicrohttpd) ("ncurses" ,ncurses) @@ -136,7 +135,7 @@ provide connectivity for client applications written in any language.") (define-public tiled (package (name "tiled") - (version "0.16.1") + (version "0.17.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/bjorn/tiled/archive/v" @@ -144,7 +143,7 @@ provide connectivity for client applications written in any language.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0s1i6yhm1z9ayzjh8cprcc9jvj5m87l9snyqg6w7zlj3q9zn4rn6")))) + "0c9gykxmq0sk0yyfdq81g9psd922scqzn5asskjydj84d80f5z7p")))) (build-system gnu-build-system) (inputs `(("qt" ,qt) ("zlib" ,zlib))) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 96aefbc3e4..ed5d7fd52e 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -1198,7 +1198,7 @@ is programmed in Haskell.") (define-public manaplus (package (name "manaplus") - (version "1.6.6.4") + (version "1.6.8.14") (source (origin (method url-fetch) (uri (string-append @@ -1206,7 +1206,7 @@ is programmed in Haskell.") version "/manaplus-" version ".tar.xz")) (sha256 (base32 - "00sdw2mspdhrqvz0vl6jbnhiclj7vmvyjih9qf8dbkfw2s921ybc")))) + "1mah4w6ng0j76cjzbw8y9m2ds5f1w5ka9b1k3gzgvxh4yaphqnff")))) (build-system gnu-build-system) (arguments '(#:configure-flags diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index 73dc41d216..f99dfa5052 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -359,14 +359,14 @@ Go. It also includes runtime support libraries for these languages.") (define-public gcc-6 (package (inherit gcc-5) - (version "6.1.0") + (version "6.2.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/gcc/gcc-" version "/gcc-" version ".tar.bz2")) (sha256 (base32 - "0ld3y4rgimyqgx1nwvzqyl5gr4wzc0ch4akkvsqp3fgbmdfcii09")) + "1idpf43988v1a6i8lw9ak1r7igcfg1bm5kn011iydlr2qygmhi4r")) (patches (search-patches "gcc-5.0-libvtv-runpath.patch")))))) ;; Note: When changing the default gcc version, update diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm index 1ef5eeb487..86828e717d 100644 --- a/gnu/packages/geo.scm +++ b/gnu/packages/geo.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016 Leo Famulari <leo@famulari.name> +;;; Copyright © 2016 Alex Griffin <a@ajgrf.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -35,7 +36,7 @@ (define-public gnome-maps (package (name "gnome-maps") - (version "3.18.2") + (version "3.18.3") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -43,7 +44,7 @@ name "-" version ".tar.xz")) (sha256 (base32 - "0y4jmh5hwskh2mnladh9hxp9k8as7crm8wwwiifvxsjjj9az2gv9")))) + "1vdnr2wmhqhql2gxd5n1ijwk88qhim14izbkczncg35846hfsr5i")))) (build-system glib-or-gtk-build-system) (arguments `(#:configure-flags ; Ensure that geoclue is referred to by output. diff --git a/gnu/packages/gimp.scm b/gnu/packages/gimp.scm index d5c58e26ba..6540990b36 100644 --- a/gnu/packages/gimp.scm +++ b/gnu/packages/gimp.scm @@ -43,16 +43,18 @@ (define-public babl (package (name "babl") - (version "0.1.10") + (version "0.1.18") (source (origin (method url-fetch) - (uri (list (string-append "http://ftp.gtk.org/pub/babl/0.1/babl-" + (uri (list (string-append "https://download.gimp.org/pub/babl/" + "0.1/babl-" version ".tar.bz2") + (string-append "http://ftp.gtk.org/pub/babl/0.1/babl-" version ".tar.bz2") (string-append "ftp://ftp.gtk.org/pub/babl/0.1/babl-" version ".tar.bz2"))) (sha256 (base32 - "1x2mb7zfbvk9d0a7h5cpdff9hhjsadxvqml2jay2bpf7x9nc6gwl")))) + "1ygvnq22pf0zvf3bj7h67vvbpz7b8hhjvrr79ribws7sr5dljfj8")))) (build-system gnu-build-system) (home-page "http://gegl.org/babl/") (synopsis "Image pixel format conversion library") @@ -124,23 +126,38 @@ buffers.") (define-public gimp (package (name "gimp") - (version "2.8.16") + (version "2.8.18") (source (origin (method url-fetch) (uri (string-append "http://download.gimp.org/pub/gimp/v" (version-major+minor version) "/gimp-" version ".tar.bz2")) - (patches (search-patches "gimp-CVE-2016-4994.patch")) (sha256 (base32 - "1dsgazia9hmab8cw3iis7s69dvqyfj5wga7ds7w2q5mms1xqbqwm")))) + "0halh6sl3d2j9gahyabj6h6r3yyldcy7sfb4qrfazpkqqr3j5p9r")))) (build-system gnu-build-system) (outputs '("out" "doc")) ;8 MiB of gtk-doc HTML (arguments '(#:configure-flags (list (string-append "--with-html-dir=" (assoc-ref %outputs "doc") - "/share/gtk-doc/html")))) + "/share/gtk-doc/html")) + #:phases + (modify-phases %standard-phases + (add-after 'install 'install-sitecustomize.py + ;; Install 'sitecustomize.py' into gimp's python directory to + ;; add pygobject and pygtk to pygimp's search path. + (lambda* (#:key outputs #:allow-other-keys) + (let* ((pythonpath (getenv "PYTHONPATH")) + (out (assoc-ref outputs "out")) + (sitecustomize.py + (string-append + out "/lib/gimp/2.0/python/sitecustomize.py"))) + (call-with-output-file sitecustomize.py + (lambda (port) + (format port "import site~%") + (format port "for dir in '~a'.split(':'):~%" pythonpath) + (format port " site.addsitedir(dir)~%"))))))))) (inputs `(("babl" ,babl) ("glib" ,glib) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index 2fc63a8740..077a6ef2a5 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2013 Joshua Grant <tadni@riseup.net> -;;; Copyright © 2014 David Thompson <davet@gnu.org> +;;; Copyright © 2014, 2016 David Thompson <davet@gnu.org> ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org> ;;; ;;; This file is part of GNU Guix. @@ -22,6 +22,7 @@ (define-module (gnu packages gl) #:use-module (gnu packages autotools) #:use-module (gnu packages bison) + #:use-module (gnu packages documentation) #:use-module (gnu packages flex) #:use-module (gnu packages fontutils) #:use-module (gnu packages freedesktop) @@ -547,3 +548,36 @@ OpenGL graphics API.") "SOIL is a tiny C library used primarily for uploading textures into OpenGL.") (license license:public-domain))) + +(define-public glfw + (package + (name "glfw") + (version "3.2.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/glfw/glfw" + "/releases/download/" version + "/glfw-" version ".zip")) + (sha256 + (base32 + "09kk5yc1zhss9add8ryqrngrr16hdmc94rszgng135bhw09mxmdp")))) + (build-system cmake-build-system) + (arguments + '(#:tests? #f ; no test target + #:configure-flags '("-DBUILD_SHARED_LIBS=ON"))) + (native-inputs + `(("doxygen" ,doxygen) + ("unzip" ,unzip))) + (inputs + `(("mesa" ,mesa) + ("libx11" ,libx11) + ("libxrandr" ,libxrandr) + ("libxinerama" ,libxinerama) + ("libxcursor" ,libxcursor))) + (home-page "http://www.glfw.org") + (synopsis "OpenGL application development library") + (description + "GLFW is a library for OpenGL, OpenGL ES and Vulkan development for +desktop computers. It provides a simple API for creating windows, contexts +and surfaces, receiving input and events.") + (license license:zlib))) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 63d0f1258e..36c753d79c 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -21,6 +21,8 @@ ;;; Copyright © 2016 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com> ;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is> +;;; Copyright © 2016 David Craven <david@craven.ch> +;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -85,7 +87,6 @@ #:use-module (gnu packages libusb) #:use-module (gnu packages lirc) #:use-module (gnu packages lua) - #:use-module (gnu packages m4) #:use-module (gnu packages image) #:use-module (gnu packages networking) #:use-module (gnu packages password-utils) @@ -3284,7 +3285,7 @@ which can read a large number of file formats.") (define-public rhythmbox (package (name "rhythmbox") - (version "3.2.1") + (version "3.4") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -3292,7 +3293,7 @@ which can read a large number of file formats.") name "-" version ".tar.xz")) (sha256 (base32 - "0f3radhlji7rxl760yl2vm49fvfslympxrpm8497acbmbd7wlhxz")))) + "1347747m90aiz47wny1f8rdk5195qf2ph0554c6y91711sm951gg")))) (build-system glib-or-gtk-build-system) (arguments `(#:configure-flags @@ -3310,11 +3311,13 @@ which can read a large number of file formats.") (let ((out (assoc-ref outputs "out")) (gi-typelib-path (getenv "GI_TYPELIB_PATH")) (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH")) - (grl-plugin-path (getenv "GRL_PLUGIN_PATH"))) + (grl-plugin-path (getenv "GRL_PLUGIN_PATH")) + (python-path (getenv "PYTHONPATH"))) (wrap-program (string-append out "/bin/rhythmbox") `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)) `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path)) - `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path)))) + `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path)) + `("PYTHONPATH" ":" prefix (,python-path)))) #t))))) (propagated-inputs `(("dconf" ,dconf))) @@ -3360,7 +3363,6 @@ which can read a large number of file formats.") ;; TODO: ;; * libgpod ;; * mx - ;; * webkit ("brasero" ,brasero))) (home-page "https://wiki.gnome.org/Apps/Rhythmbox") (synopsis "Music player for GNOME") @@ -3600,7 +3602,7 @@ work and the interface is well tested.") (define-public epiphany (package (name "epiphany") - (version "3.20.1") + (version "3.20.3") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -3608,7 +3610,7 @@ work and the interface is well tested.") name "-" version ".tar.xz")) (sha256 (base32 - "1ry9z6d51gjbv5n8kspwdyfrdai2hrin2ixdicmyiq6xbryzcwbi")))) + "18i4nk4k4q2yaj4zw0gbyp7ja2g67pm05p56bbras52cnjyy37ad")))) (build-system glib-or-gtk-build-system) (arguments ;; FIXME: tests run under Xvfb, but fail with: @@ -3862,7 +3864,7 @@ metadata in photo and video files of various formats.") (define-public shotwell (package (name "shotwell") - (version "0.23.1") + (version "0.23.5") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -3870,39 +3872,28 @@ metadata in photo and video files of various formats.") name "-" version ".tar.xz")) (sha256 (base32 - "12imip32mav0zqg1fh4xm6zk4qsgg2435xsyb6ljz47i37zk6kg2")))) + "0fgs1rgvkmy79bmpxrsvm5w8rvqml4l1vnwma0xqx5zzm02p8a07")))) (build-system glib-or-gtk-build-system) - (arguments - `(#:tests? #f ;no "check" target - #:make-flags '("CC=gcc") - #:configure-flags '("--disable-gsettings-convert-install") - #:out-of-source? #f)) + (propagated-inputs + `(("dconf" ,dconf))) (native-inputs `(("pkg-config" ,pkg-config) + ("itstool" ,itstool) ("gettext" ,gnu-gettext) - ("m4" ,m4) - ("desktop-file-utils" ,desktop-file-utils) - ("vala" ,vala) - ("which" ,which) - ("gnome-doc-utils" ,gnome-doc-utils) - ;; FIXME: I only added python2-libxml2 because xml2po needs it at - ;; runtime. It should be propagated. - ("python2-libxml2" ,python2-libxml2) - ("python2" ,python-2))) + ("itstool" ,itstool) + ("vala" ,vala))) (inputs - `(("gstreamer" ,gstreamer) + `(("glib:bin" ,glib "bin") + ("gstreamer" ,gstreamer) ("gst-plugins-base" ,gst-plugins-base) - ("gst-plugins-good" ,gst-plugins-good) ("libgee" ,libgee) ("gexiv2" ,gexiv2) ("libraw" ,libraw) ("json-glib" ,json-glib) - ("rest" ,rest) ("webkitgtk" ,webkitgtk) ("sqlite" ,sqlite) ("libsoup" ,libsoup) ("libxml2" ,libxml2) - ("gtk+" ,gtk+) ("libgudev" ,libgudev) ("libgphoto2" ,libgphoto2))) (home-page "https://wiki.gnome.org/Apps/Shotwell") @@ -4489,6 +4480,27 @@ devices, and provides VPN integration with a variety of different VPN services.") (license license:gpl2+))) +(define-public mobile-broadband-provider-info + (package + (name "mobile-broadband-provider-info") + (version "20151214") + (source (origin + (method url-fetch) + (uri (string-append + "mirror://gnome/sources/" + "mobile-broadband-provider-info/" version "/" + "mobile-broadband-provider-info-" version ".tar.xz")) + (sha256 + (base32 + "1905nab1h8p4hx0m1w0rn4mkg9209x680dcr4l77bngy21pmvr4a")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f)) ; No tests + (home-page "https://wiki.gnome.org/Projects/NetworkManager") + (synopsis "Database of broadband connection configuration") + (description "Database of broadband connection configuration.") + (license license:public-domain))) + (define-public network-manager-applet (package (name "network-manager-applet") @@ -5458,3 +5470,43 @@ GLib/GObject code.") "Libgnomekbd is a keyboard configuration library for the GNOME desktop environment, which can notably display keyboard layouts.") (license license:lgpl2.0+))) + +;;; This package is no longer maintained: +;;; https://wiki.gnome.org/Attic/LibUnique +;;; "Unique is now in maintenance mode, and its usage is strongly discouraged. +;;; Applications should use the GtkApplication class provided by GTK+ 3.0." +(define-public libunique + (package + (name "libunique") + (version "3.0.2") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "0f70lkw66v9cj72q0iw1s2546r6bwwcd8idcm3621fg2fgh2rw58")))) + (build-system glib-or-gtk-build-system) + (arguments + `(#:configure-flags '("--disable-static" + "--disable-dbus" ; use gdbus + "--enable-introspection"))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("gobject-introspection" ,gobject-introspection) + ("glib:bin" ,glib "bin") + ("gtk-doc" ,gtk-doc))) + (propagated-inputs + ;; Referred to in .h files and .pc. + `(("gtk+" ,gtk+))) + (home-page "https://wiki.gnome.org/Attic/LibUnique") + (synopsis "Library for writing single instance applications") + (description + "Libunique is a library for writing single instance applications. If you +launch a single instance application twice, the second instance will either just +quit or will send a message to the running instance. Libunique makes it easy to +write this kind of application, by providing a base class, taking care of all +the IPC machinery needed to send messages to a running instance, and also +handling the startup notification side.") + (license license:lgpl2.1+))) diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm index 788732240c..525cddc701 100644 --- a/gnu/packages/gnunet.scm +++ b/gnu/packages/gnunet.scm @@ -126,14 +126,14 @@ tool to extract metadata from a file and print the results.") (define-public libmicrohttpd (package (name "libmicrohttpd") - (version "0.9.50") + (version "0.9.51") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/libmicrohttpd/libmicrohttpd-" version ".tar.gz")) (sha256 (base32 - "1mzbqr6sqisppz88mh73bbh5sw57g8l87qvhcjdx5pmbd183idni")))) + "1ir3ga328zkyynznnw71dj64wsaz7pmbhl82lqp1y1hrl85vn01h")))) (build-system gnu-build-system) (inputs `(("curl" ,curl) @@ -325,7 +325,7 @@ services.") "1p38k1s6a2fmcfc9a7cf1zrdycm9h06kqdyand4s3k500nj6mb4g")))) (arguments `(#:configure-flags - (list "--without-libunique" + (list "--with-libunique" "--with-qrencode" (string-append "--with-gnunet=" (assoc-ref %build-inputs "gnunet"))))) @@ -335,7 +335,8 @@ services.") ("gtk+" ,gtk+) ("libextractor" ,libextractor) ("glade3" ,glade3) - ("qrencode" ,qrencode))) + ("qrencode" ,qrencode) + ("libunique" ,libunique))) (native-inputs `(("pkg-config" ,pkg-config) ("libglade" ,libglade))) diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 52a9fc5366..2817f2c573 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org> ;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org> ;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is> ;;; @@ -149,7 +150,7 @@ provided.") (define-public libksba (package (name "libksba") - (version "1.3.4") + (version "1.3.5") (source (origin (method url-fetch) @@ -158,7 +159,7 @@ provided.") version ".tar.bz2")) (sha256 (base32 - "0kxdb02z41cwm1xbwfwj9nbc0dzjhwyq8c475mlhhmpcxcy8ihpn")))) + "0h53q4sns1jz1pkmhcz5wp9qrfn9f5g9i3vjv6dafwzzlvblyi21")))) (build-system gnu-build-system) (propagated-inputs `(("libgpg-error" ,libgpg-error))) @@ -397,9 +398,7 @@ and every application benefits from this.") (zero? (system* "make" "check"))))))) (build-system python-build-system) (inputs - `(;; setuptools required for python-2 variant - ("python-setuptools" ,python-setuptools) - ("gnupg" ,gnupg-2.0) + `(("gnupg" ,gnupg-2.0) ("gpgme" ,gpgme))) (home-page "https://launchpad.net/pygpgme") (synopsis "Python module for working with OpenPGP messages") @@ -409,7 +408,12 @@ decrypt messages using the OpenPGP format by making use of GPGME.") (license license:lgpl2.1+))) (define-public python2-pygpgme - (package-with-python2 python-pygpgme)) + (let ((base (package-with-python2 python-pygpgme))) + (package + (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) (define-public python-gnupg (package @@ -427,20 +431,18 @@ decrypt messages using the OpenPGP format by making use of GPGME.") `(#:phases (modify-phases %standard-phases (replace 'check - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "test_gnupg.py" - ;; Test keyrings are missing, so this test fails. - (("'test_scan_keys'") "True") - (("def test_scan_keys") "def disabled__scan_keys") - ;; Unsure why this test fails. - (("'test_search_keys'") "True") - (("def test_search_keys") "def disabled__search_keys")) - (setenv "GPGBINARY" "gpg") - (setenv "USERNAME" "guixbuilder") - ;; The doctests are extremely slow and sometimes time out, - ;; so we disable them. - (zero? (system* "python" - "test_gnupg.py" "--no-doctests"))))))) + (lambda _ + (substitute* "test_gnupg.py" + ;; Exported keys don't have a version line! + (("del k1\\[1\\]") "#") + ;; Unsure why this test fails. + (("'test_search_keys'") "True") + (("def test_search_keys") "def disabled__search_keys")) + (setenv "USERNAME" "guixbuilder") + ;; The doctests are extremely slow and sometimes time out, + ;; so we disable them. + (zero? (system* "python" + "test_gnupg.py" "--no-doctests"))))))) (native-inputs `(("gnupg" ,gnupg-1))) (home-page "https://packages.python.org/python-gnupg/index.html") @@ -477,7 +479,7 @@ and signature functionality from Python programs.") 'build 'set-gpg-file-name (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((gpg (string-append (assoc-ref inputs "gpg") - "/bin/gpg2"))) + "/bin/gpg"))) (substitute* "libpius/constants.py" (("/usr/bin/gpg2") gpg)))))))) (synopsis "Programs to simplify GnuPG key signing") @@ -499,8 +501,8 @@ PGP keysigning parties.") (version "1.1.4") (source (origin (method url-fetch) - (uri (string-append "http://ftp.debian.org/debian/pool/main/s/signing-party/signing-party_" - version ".orig.tar.gz")) + (uri (string-append "mirror://debian/pool/main/s/signing-party/" + "signing-party_" version ".orig.tar.gz")) (sha256 (base32 "188gp0prbh8qs29lq3pbf0qibfd6jq4fk7i0pfrybl8aahvm84rx")))) (build-system gnu-build-system) @@ -508,85 +510,71 @@ PGP keysigning parties.") (arguments `(#:tests? #f #:phases - (alist-cons-after - 'unpack 'remove-spurious-links - (lambda _ (delete-file "keyanalyze/pgpring/depcomp")) - (alist-replace - 'configure - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (substitute* "keyanalyze/Makefile" - (("LDLIBS") (string-append "CC=" (which "gcc") "\nLDLIBS"))) - (substitute* "keyanalyze/Makefile" - (("./configure") (string-append "./configure --prefix=" out))) - (substitute* "keyanalyze/pgpring/configure" - (("/bin/sh") (which "bash"))) - (substitute* "gpgwrap/Makefile" - (("\\} clean") (string-append "} clean\ninstall:\n\tinstall -D bin/gpgwrap " - out "/bin/gpgwrap\n"))) - (substitute* '("gpgsigs/Makefile" "keyanalyze/Makefile" - "keylookup/Makefile" "sig2dot/Makefile" - "springgraph/Makefile") - (("/usr") out)))) - (alist-replace - 'install - (lambda* (#:key outputs #:allow-other-keys #:rest args) - (let ((out (assoc-ref outputs "out")) - (install (assoc-ref %standard-phases 'install))) - (apply install args) - (for-each - (lambda (dir file) - (copy-file (string-append dir "/" file) - (string-append out "/bin/" file))) - '("caff" "caff" "caff" "gpgdir" "gpg-key2ps" - "gpglist" "gpg-mailkeys" "gpgparticipants") - '("caff" "pgp-clean" "pgp-fixkey" "gpgdir" "gpg-key2ps" - "gpglist" "gpg-mailkeys" "gpgparticipants")) - (for-each - (lambda (dir file) - (copy-file (string-append dir "/" file) - (string-append out "/share/man/man1/" file))) - '("caff" "caff" "caff" "gpgdir" - "gpg-key2ps" "gpglist" "gpg-mailkeys" - "gpgparticipants" "gpgsigs" "gpgwrap/doc" - "keyanalyze" "keyanalyze/pgpring" "keyanalyze") - '("caff.1" "pgp-clean.1" "pgp-fixkey.1" "gpgdir.1" - "gpg-key2ps.1" "gpglist.1" "gpg-mailkeys.1" - "gpgparticipants.1" "gpgsigs.1" "gpgwrap.1" - "process_keys.1" "pgpring.1" "keyanalyze.1")))) - %standard-phases))))) + (modify-phases %standard-phases + (add-after 'unpack 'remove-spurious-links + (lambda _ (delete-file "keyanalyze/pgpring/depcomp"))) + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (substitute* "keyanalyze/Makefile" + (("LDLIBS") (string-append "CC=" (which "gcc") "\nLDLIBS"))) + (substitute* "keyanalyze/Makefile" + (("./configure") (string-append "./configure --prefix=" out))) + (substitute* "keyanalyze/pgpring/configure" + (("/bin/sh") (which "bash"))) + (substitute* "gpgwrap/Makefile" + (("\\} clean") + (string-append "} clean\ninstall:\n\tinstall -D bin/gpgwrap " + out "/bin/gpgwrap\n"))) + (substitute* '("gpgsigs/Makefile" "keyanalyze/Makefile" + "keylookup/Makefile" "sig2dot/Makefile" + "springgraph/Makefile") + (("/usr") out))))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys #:rest args) + (let ((out (assoc-ref outputs "out")) + (install (assoc-ref %standard-phases 'install))) + (apply install args) + (for-each + (lambda (dir file) + (copy-file (string-append dir "/" file) + (string-append out "/bin/" file))) + '("caff" "caff" "caff" "gpgdir" "gpg-key2ps" + "gpglist" "gpg-mailkeys" "gpgparticipants") + '("caff" "pgp-clean" "pgp-fixkey" "gpgdir" "gpg-key2ps" + "gpglist" "gpg-mailkeys" "gpgparticipants")) + (for-each + (lambda (dir file) + (copy-file (string-append dir "/" file) + (string-append out "/share/man/man1/" file))) + '("caff" "caff" "caff" "gpgdir" + "gpg-key2ps" "gpglist" "gpg-mailkeys" + "gpgparticipants" "gpgsigs" "gpgwrap/doc" + "keyanalyze" "keyanalyze/pgpring" "keyanalyze") + '("caff.1" "pgp-clean.1" "pgp-fixkey.1" "gpgdir.1" + "gpg-key2ps.1" "gpglist.1" "gpg-mailkeys.1" + "gpgparticipants.1" "gpgsigs.1" "gpgwrap.1" + "process_keys.1" "pgpring.1" "keyanalyze.1")))))))) (synopsis "Collection of scripts for simplifying gnupg key signing") (description "Signing-party is a collection for all kinds of PGP/GnuPG related things, including tools for signing keys, keyring analysis, and party preparation. - - * caff: CA - Fire and Forget signs and mails a key - - * pgp-clean: removes all non-self signatures from key - - * pgp-fixkey: removes broken packets from keys - - * gpg-mailkeys: simply mail out a signed key to its owner - - * gpg-key2ps: generate PostScript file with fingerprint paper strips - - * gpgdir: recursive directory encryption tool - - * gpglist: show who signed which of your UIDs - - * gpgsigs: annotates list of GnuPG keys with already done signatures - - * gpgparticipants: create list of party participants for the organiser - - * gpgwrap: a passphrase wrapper - - * keyanalyze: minimum signing distance (MSD) analysis on keyrings - - * keylookup: ncurses wrapper around gpg --search - - * sig2dot: converts a list of GnuPG signatures to a .dot file - - * springgraph: creates a graph from a .dot file") +@enumerate +@item caff: CA - Fire and Forget signs and mails a key +@item pgp-clean: removes all non-self signatures from key +@item pgp-fixkey: removes broken packets from keys +@item gpg-mailkeys: simply mail out a signed key to its owner +@item gpg-key2ps: generate PostScript file with fingerprint paper strips +@item gpgdir: recursive directory encryption tool +@item gpglist: show who signed which of your UIDs +@item gpgsigs: annotates list of GnuPG keys with already done signatures +@item gpgparticipants: create list of party participants for the organiser +@item gpgwrap: a passphrase wrapper +@item keyanalyze: minimum signing distance (MSD) analysis on keyrings +@item keylookup: ncurses wrapper around gpg --search +@item sig2dot: converts a list of GnuPG signatures to a .dot file +@item springgraph: creates a graph from a .dot file +@end enumerate") ;; gpl2+ for almost all programs, except for keyanalyze: gpl2 ;; and caff and gpgsigs: bsd-3, see ;; http://packages.debian.org/changelogs/pool/main/s/signing-party/current/copyright @@ -639,6 +627,8 @@ passphrase when @code{gpg} or @code{gpg2} is run and needs it."))) (inputs `(("qtbase" ,qtbase) ,@(package-inputs pinentry-tty))) + (arguments + `(#:configure-flags '("CXXFLAGS=-std=gnu++11"))) (description "Pinentry provides a console and a Qt GUI that allows users to enter a passphrase when @code{gpg} or @code{gpg2} is run and needs it."))) @@ -662,13 +652,13 @@ passphrase when @code{gpg} or @code{gpg2} is run and needs it."))) (build-system gnu-build-system) (arguments `(#:phases - (alist-cons-before - 'check 'patch-check-scripts - (lambda _ - (substitute* '("checks/roundtrip.sh" - "checks/roundtrip-raw.sh") - (("/bin/echo") "echo"))) - %standard-phases))) + (modify-phases %standard-phases + (add-before 'check 'patch-check-scripts + (lambda _ + (substitute* '("checks/roundtrip.sh" + "checks/roundtrip-raw.sh") + (("/bin/echo") "echo")) + #t))))) (home-page "http://www.jabberwocky.com/software/paperkey/") (synopsis "Backup OpenPGP keys to paper") (description diff --git a/gnu/packages/gps.scm b/gnu/packages/gps.scm index ccd9636ea0..da5485e6ee 100644 --- a/gnu/packages/gps.scm +++ b/gnu/packages/gps.scm @@ -48,7 +48,9 @@ "0xf7wmy2m29g2lm8lqc74yf8rf7sxfl3cfwbk7dpf0yf42pb0b6w")))) (build-system gnu-build-system) (arguments - `(#:configure-flags '("--with-zlib=system") + `(#:configure-flags + '("--with-zlib=system" + "CXXFLAGS=-std=gnu++11") #:phases (modify-phases %standard-phases (add-before 'configure 'pre-configure @@ -59,7 +61,9 @@ ;; On i686, 'raymarine.test' fails because of a rounding error: ;; <http://hydra.gnu.org/build/133040>. As a workaround, disable tests ;; on these platforms. - #:tests? ,(not (string-prefix? "i686" (%current-system))))) + ;; FIXME: On x86_64 with -std=gnu++11 tests also fail due to rounding + ;; error. + #:tests? #f)) (inputs `(("expat" ,expat) ("zlib" ,zlib) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index a39a3b434d..651186ab8a 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -21,7 +21,7 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu packages gstreamer) - #:use-module ((guix licenses) #:select (lgpl2.0+ lgpl2.1+ bsd-2 bsd-3 gpl2+)) + #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system gnu) @@ -92,7 +92,7 @@ associated tools for compiling and executing simple programs that operate on arrays of data.") ;; The source code implementing the Marsenne Twister algorithm is licensed ;; under the 3-clause BSD license, the rest is under 2-clause BSD license. - (license (list bsd-2 bsd-3)))) + (license (list license:bsd-2 license:bsd-3)))) (define-public gstreamer (package @@ -140,7 +140,7 @@ transparently. Developers can add new codecs and filters by writing a simple plugin with a clean, generic interface. This package provides the core library and elements.") - (license lgpl2.0+))) + (license license:lgpl2.0+))) (define-public gst-plugins-base (package @@ -192,7 +192,7 @@ This package provides the core library and elements.") "Plugins for the GStreamer multimedia library") (description "This package provides an essential exemplary set of plug-ins for the GStreamer multimedia library.") - (license lgpl2.0+))) + (license license:lgpl2.0+))) (define-public gst-plugins-good @@ -258,7 +258,7 @@ for the GStreamer multimedia library.") (description "GStreamer Good Plug-ins is a set of plug-ins for the GStreamer multimedia library. This set contains those plug-ins which the developers consider to have good quality code and correct functionality.") - (license lgpl2.0+))) + (license license:lgpl2.0+))) (define-public gst-plugins-bad (package @@ -323,7 +323,7 @@ developers consider to have good quality code and correct functionality.") ("openssl" ,openssl) ("opus" ,opus) ("orc" ,orc) - ("qt" ,qt) + ("qtbase" ,qtbase) ("soundtouch" ,soundtouch) ("wayland" ,wayland))) (home-page "http://gstreamer.freedesktop.org/") @@ -331,7 +331,7 @@ developers consider to have good quality code and correct functionality.") (description "GStreamer Bad Plug-ins is a set of plug-ins whose quality aren't up to par compared to the rest.") - (license lgpl2.0+))) + (license license:lgpl2.0+))) (define-public gst-plugins-ugly (package @@ -369,7 +369,7 @@ par compared to the rest.") (description "GStreamer Ugly Plug-ins. This set contains those plug-ins which the developers consider to have good quality code but that might pose distribution problems in some jurisdictions, e.g. due to patent threats.") - (license lgpl2.0+))) + (license license:lgpl2.0+))) (define-public gst-libav (package @@ -406,7 +406,7 @@ distribution problems in some jurisdictions, e.g. due to patent threats.") (description "This GStreamer plugin supports a large number of audio and video compression formats through the use of the libav library.") - (license gpl2+))) + (license license:gpl2+))) (define-public python-gst (package @@ -446,7 +446,7 @@ compression formats through the use of the libav library.") (description "This package contains GObject Introspection overrides for Python that can be used by Python applications using GStreamer.") - (license lgpl2.1+) + (license license:lgpl2.1+) (properties `((python2-variant . ,(delay python2-gst)))))) (define-public python2-gst diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 1171436804..296b6154d2 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -1128,7 +1128,7 @@ SQL databases. This package implements the interface for SQLite.") (define-public guile-xosd (package (name "guile-xosd") - (version "0.2") + (version "0.2.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/alezost/" name @@ -1136,7 +1136,7 @@ SQL databases. This package implements the interface for SQLite.") "/" name "-" version ".tar.gz")) (sha256 (base32 - "1j0b07kycccfslp5n6q0hz7adwc7k41fpzds2dvrly67gavjqljv")))) + "1ri5065c16kmgrf2pysn2ymxjqi5302lhpb07wkl1jr75ym8fn8p")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -1157,7 +1157,7 @@ library}.") (define-public guile-daemon (package (name "guile-daemon") - (version "0.1") + (version "0.1.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/alezost/" name @@ -1165,7 +1165,7 @@ library}.") "/" name "-" version ".tar.gz")) (sha256 (base32 - "1s90h8qhblhhz4ahn3p5d573a24px6cdjq2w311ibpgwnsni4qvq")))) + "0wsq9l6a4sijq4i1r3kcddfaznsak2jc5k59gzkhs5il5d2kn5yi")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/ibus.scm b/gnu/packages/ibus.scm index db7d084fc7..814984f16f 100644 --- a/gnu/packages/ibus.scm +++ b/gnu/packages/ibus.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com> ;;; @@ -36,7 +36,8 @@ #:use-module (gnu packages gtk) #:use-module (gnu packages iso-codes) #:use-module (gnu packages pkg-config) - #:use-module (gnu packages python)) + #:use-module (gnu packages python) + #:use-module (gnu packages xorg)) (define-public ibus (package @@ -62,24 +63,42 @@ (assoc-ref %outputs "out") "/lib/python2.7/site-packages/gi/overrides/")) #:phases - (alist-cons-before - 'configure 'disable-dconf-update - (lambda _ - (substitute* "data/dconf/Makefile.in" - (("dconf update") "echo dconf update")) - #t) - (alist-cons-after - 'wrap-program 'wrap-with-additional-paths - (lambda* (#:key outputs #:allow-other-keys) - ;; Make sure 'ibus-setup' runs with the correct PYTHONPATH and - ;; GI_TYPELIB_PATH. - (let ((out (assoc-ref outputs "out"))) - (wrap-program (string-append out "/bin/ibus-setup") - `("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH"))) - `("GI_TYPELIB_PATH" ":" prefix - (,(getenv "GI_TYPELIB_PATH") - ,(string-append out "/lib/girepository-1.0")))))) - %standard-phases)))) + (modify-phases %standard-phases + (add-before 'configure 'disable-dconf-update + (lambda _ + (substitute* "data/dconf/Makefile.in" + (("dconf update") "echo dconf update")) + #t)) + (add-after 'unpack 'delete-generated-files + (lambda _ + (for-each (lambda (file) + (let ((c (string-append (string-drop-right file 4) "c"))) + (when (file-exists? c) + (format #t "deleting ~a\n" c) + (delete-file c)))) + (find-files "." "\\.vala")) + #t)) + (add-after 'unpack 'fix-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "src/ibusenginesimple.c" + (("/usr/share/X11/locale") + (string-append (assoc-ref inputs "libx11") + "/share/X11/locale"))) + (substitute* "ui/gtk3/xkblayout.vala" + (("\"(setxkbmap|xmodmap)\"" _ prog) + (string-append "\"" (assoc-ref inputs prog) "\""))) + #t)) + (add-after 'wrap-program 'wrap-with-additional-paths + (lambda* (#:key outputs #:allow-other-keys) + ;; Make sure 'ibus-setup' runs with the correct PYTHONPATH and + ;; GI_TYPELIB_PATH. + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/ibus-setup") + `("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH"))) + `("GI_TYPELIB_PATH" ":" prefix + (,(getenv "GI_TYPELIB_PATH") + ,(string-append out "/lib/girepository-1.0"))))) + #t))))) (inputs `(("dbus" ,dbus) ("dconf" ,dconf) @@ -88,12 +107,16 @@ ("gtk+" ,gtk+) ("intltool" ,intltool) ("libnotify" ,libnotify) + ("libx11" ,libx11) + ("setxkbmap" ,setxkbmap) + ("xmodmap" ,xmodmap) ("iso-codes" ,iso-codes) ("pygobject2" ,python2-pygobject) ("python2" ,python-2))) (native-inputs `(("glib" ,glib "bin") ; for glib-genmarshal ("gobject-introspection" ,gobject-introspection) ; for g-ir-compiler + ("vala" ,vala) ("pkg-config" ,pkg-config))) (native-search-paths (list (search-path-specification diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm index c88fd7a60a..a554b73a4e 100644 --- a/gnu/packages/imagemagick.scm +++ b/gnu/packages/imagemagick.scm @@ -51,7 +51,7 @@ "00arcvyhsy9i5gp3b0lhfvs04qwhxpmq0bfsv4ipllinb6mjgxf5")))) (build-system gnu-build-system) (arguments - `(#:configure-flags '("--with-frozenpaths") + `(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch") #:phases (modify-phases %standard-phases (add-before 'build 'pre-build @@ -100,7 +100,7 @@ (home-page "http://www.imagemagick.org/") (synopsis "Create, edit, compose, or convert bitmap images") (description - "ImageMagick® is a software suite to create, edit, compose, or convert + "ImageMagick is a software suite to create, edit, compose, or convert bitmap images. It can read and write images in a variety of formats (over 100) including DPX, EXR, GIF, JPEG, JPEG-2000, PDF, PhotoCD, PNG, Postscript, SVG, and TIFF. Use ImageMagick to resize, flip, mirror, rotate, distort, shear and diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm index a679c64314..6ba454d0ed 100644 --- a/gnu/packages/kde-frameworks.scm +++ b/gnu/packages/kde-frameworks.scm @@ -26,16 +26,24 @@ #:use-module (guix packages) #:use-module (guix utils) #:use-module (gnu packages admin) + #:use-module (gnu packages attr) + #:use-module (gnu packages boost) #:use-module (gnu packages bison) #:use-module (gnu packages compression) + #:use-module (gnu packages docbook) #:use-module (gnu packages freedesktop) #:use-module (gnu packages gettext) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) + #:use-module (gnu packages gnupg) #:use-module (gnu packages linux) + #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages polkit) #:use-module (gnu packages python) #:use-module (gnu packages qt) + #:use-module (gnu packages web) + #:use-module (gnu packages xml) #:use-module (gnu packages xorg)) (define-public extra-cmake-modules @@ -77,6 +85,60 @@ modules provided by CMake to find common software. In addition, it provides common build settings used in software produced by the KDE community.") (license license:bsd-3))) +(define-public phonon + (package + (name "phonon") + (version "4.9.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/phonon" + "/" version "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1q5hvsk4sfcb91625wcmldy7kgjmfpmpmkgzi6mxkqdd307v8x5v")))) + (build-system cmake-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (inputs + `(("qtbase" ,qtbase))) + (arguments + `(#:configure-flags + '("-DCMAKE_CXX_FLAGS=-fPIC" + "-DPHONON_BUILD_PHONON4QT5=ON"))) + (home-page "https://phonon.kde.org") + (synopsis "KDE's multimedia library") + (description "KDE's multimedia library.") + (license license:lgpl2.1+))) + +(define-public gpgmepp + (package + (name "gpgmepp") + (version "16.04.3") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/applications" + "/" version "/src/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1850pdysi7c1w0nxnhcbrhnkrfqyrcl0laxyjcw1g1ln764pwcmj")))) + (build-system cmake-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (propagated-inputs + `(("boost" ,boost) + ("gpgme" ,gpgme))) + (inputs + `(("qtbase" ,qtbase))) + (home-page "https://community.kde.org/Frameworks") + (synopsis "C++ bindings/wrapper for gpgme") + (description "C++ bindings/wrapper for gpgme.") + (license license:lgpl2.1+))) + + ;; Tier 1 ;; ;; Tier 1 frameworks depend only on Qt (and possibly a small number of other @@ -331,7 +393,7 @@ It is made of two parts: KConfigCore and KConfigGui. KConfigCore provides access to the configuration files themselves. It features: -@itemize +@enumerate @item Code generation: describe your configuration in an XML file, and use `kconfig_compiler to generate classes that read and write configuration entries. @@ -342,7 +404,7 @@ settings). @item Optional shell expansion support (see docs/options.md). @item The ability to lock down configuration options (see docs/options.md). -@end itemize +@end enumerate KConfigGui provides a way to hook widgets to the configuration so that they are automatically initialized from the configuration and automatically @@ -477,13 +539,10 @@ infrastructure.") (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* _ + (setenv "QT_QPA_PLATFORM" "offscreen") + #t))))) (home-page "https://community.kde.org/Frameworks") (synopsis "Utilities for graphical user interfaces") (description "The KDE GUI addons provide utilities for graphical user @@ -592,7 +651,7 @@ or user activity.") (synopsis "Set of item models extending the Qt model-view framework") (description "KItemModels provides the following models: -@itemize +@enumerate @item KBreadcrumbSelectionModel - Selects the parents of selected items to create breadcrumbs. @@ -617,7 +676,7 @@ model. @item KSelectionProxyModel - A Proxy Model which presents a subset of its source model to observers -@end itemize") +@end enumerate") (license license:lgpl2.1+))) (define-public kitemviews @@ -757,21 +816,25 @@ represented by a QPoint or a QSize.") (inputs `(("qtbase" ,qtbase))) (arguments - `(#:tests? #f ; FIXME: libGL error: failed to load driver: swrast. + `(#:tests? #f ; FIXME: Regression after update to qt 5.7 #:phases (modify-phases %standard-phases (add-before 'check 'check-setup - (lambda* _ - (setenv "CTEST_OUTPUT_ON_FAILURE" "1") ; enable debug output - (setenv "LIBGL_DEBUG" "verbose") ; enable debug output - (setenv "DBUS_FATAL_WARNINGS" "0"))) + (lambda _ + (setenv "QT_QPA_PLATFORM" "offscreen") ; a better solution to Xvfb + (setenv "CTEST_OUTPUT_ON_FAILURE" "1") ; enable debug info + (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. + ;; Xvfb doesn't have proper glx support and needs a pixeldepth + ;; of 24 bit to avoid "libGL error: failed to load driver: swrast" + ;; "Could not initialize GLX" (system (string-append (assoc-ref inputs "xorg-server") - "/bin/Xvfb :1 &")) + "/bin/Xvfb :1 -screen 0 640x480x24 &")) (setenv "DISPLAY" ":1") - #t))))) + #t))))) (home-page "https://community.kde.org/Frameworks") (synopsis "Large set of desktop widgets") (description "Provided are action classes that can be added to toolbars or @@ -838,9 +901,11 @@ lower level classes for interaction with the X Windowing System.") `(("extra-cmake-modules" ,extra-cmake-modules) ("dbus" ,dbus) ("pkg-config" ,pkg-config))) + (propagated-inputs + ; Headers contain #include <ModemManager/ModemManager.h> + `(("modem-manager", modem-manager))) (inputs - `(("modem-manager", modem-manager) - ("qtbase" ,qtbase))) + `(("qtbase" ,qtbase))) (arguments `(#:phases (modify-phases %standard-phases @@ -874,9 +939,12 @@ messages.") `(("extra-cmake-modules" ,extra-cmake-modules) ("dbus" ,dbus) ("pkg-config" ,pkg-config))) + (propagated-inputs + ; Headers contain #include <NetworkManager.h> and + ; #include <libnm/NetworkManager.h> + `(("network-manager" ,network-manager))) (inputs - `(("network-manager", network-manager) - ("qtbase" ,qtbase))) + `(("qtbase" ,qtbase))) (arguments `(#:phases (modify-phases %standard-phases @@ -992,3 +1060,404 @@ ASpell and HUNSPELL.") (description "ThreadWeaver is a helper for multithreaded programming. It uses a job-based interface to queue tasks and execute them in an efficient way.") (license license:lgpl2.1+))) + + +;; Tier 2 +;; +;; Tier 2 frameworks additionally depend on tier 1 frameworks, but still have +;; easily manageable dependencies. + +(define-public kauth + (package + (name "kauth") + (version "5.24.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/frameworks/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "14sjjfgl3arqyqcr77w9qhpnd8mrnh53r5rfss6bvlk26bmihs49")))) + (build-system cmake-build-system) + (native-inputs + `(("dbus" ,dbus) + ("extra-cmake-modules" ,extra-cmake-modules) + ("qttools" ,qttools))) + (inputs + `(("kcoreaddons" ,kcoreaddons) + ("polkit-qt" ,polkit-qt) + ("qtbase" ,qtbase))) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* _ + (setenv "DBUS_FATAL_WARNINGS" "0") + (zero? (system* "dbus-launch" "ctest" "."))))))) + (home-page "https://community.kde.org/Frameworks") + (synopsis "Execute actions as privileged user") + (description "KAuth provides a convenient, system-integrated way to offload +actions that need to be performed as a privileged user to small set of helper +utilities.") + (license license:lgpl2.1+))) + +(define-public kcompletion + (package + (name "kcompletion") + (version "5.24.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/frameworks/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1qln0v31gn86kzwhnkijr1ydf129n32jmiybbckrp4w6hyx6xfxv")))) + (build-system cmake-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("qttools" ,qttools) + ("xorg-server" ,xorg-server))) + (inputs + `(("kconfig" ,kconfig) + ("kwidgetsaddons" ,kwidgetsaddons) + ("qtbase" ,qtbase))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'check-setup + (lambda _ + (setenv "QT_QPA_PLATFORM" "offscreen") + #t))))) + (home-page "https://community.kde.org/Frameworks") + (synopsis "Powerful autocompletion framework and widgets") + (description "This framework helps implement autocompletion in Qt-based +applications. It provides a set of completion-ready widgets, or can be +integrated it into your application's other widgets.") + (license license:lgpl2.1+))) + +(define-public kcrash + (package + (name "kcrash") + (version "5.24.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/frameworks/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1lahgfwlp9b5rsl244kzp7rsl4ybv1q4qlvpv0xxz5ygssk48l0w")))) + (build-system cmake-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("xorg-server" ,xorg-server))) + (inputs + `(("kcoreaddons" ,kcoreaddons) + ("kwindowsystem" ,kwindowsystem) + ("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras))) + (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))))) + (home-page "https://community.kde.org/Frameworks") + (synopsis "Graceful handling of application crashes") + (description "KCrash provides support for intercepting and handling +application crashes.") + (license license:lgpl2.1+))) + +(define-public kdoctools + (package + (name "kdoctools") + (version "5.24.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/frameworks/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1r129kpq0d11b9l87cqbal6fm5ycwhsps1g3r1a7jsxz70scz4ri")))) + (build-system cmake-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (inputs + `(("docbook-xml" ,docbook-xml) + ("docbook-xsl" ,docbook-xsl) + ("karchive" ,karchive) + ("ki18n" ,ki18n) + ("libxml2" ,libxml2) + ("libxslt" ,libxslt) + ("perl" ,perl) + ("perl-uri" ,perl-uri) + ("qtbase" ,qtbase))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'cmake-find-docbook + (lambda* (#:key inputs #:allow-other-keys) + (substitute* (find-files "cmake" "\\.cmake$") + (("CMAKE_SYSTEM_PREFIX_PATH") + "CMAKE_PREFIX_PATH")) + (substitute* "cmake/FindDocBookXML4.cmake" + (("^.*xml/docbook/schema/dtd.*$") + "xml/dtd/docbook\n")) + (substitute* "cmake/FindDocBookXSL.cmake" + (("^.*xml/docbook/stylesheet.*$") + (string-append "xml/xsl/docbook-xsl-" + ,(package-version docbook-xsl) "\n")))))))) + (home-page "https://community.kde.org/Frameworks") + (synopsis "Create documentation from DocBook") + (description "Provides tools to generate documentation in various format +from DocBook files.") + (license license:lgpl2.1+))) + +(define-public kfilemetadata + (package + (name "kfilemetadata") + (version "5.24.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/frameworks/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "02n9qhpr0jlwdgdbid0k34abhs3bzhlsa56ybl5dq1aib6izk1sy")))) + (build-system cmake-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("python-2" ,python-2))) + (inputs + `(("attr" ,attr) + ("karchive" ,karchive) + ("ki18n" ,ki18n) + ("qtbase" ,qtbase))) + (home-page "https://community.kde.org/Frameworks") + (synopsis "Extract metadata from different fileformats") + (description "KFileMetaData provides a simple library for extracting the +text and metadata from a number of different files. This library is typically +used by file indexers to retreive the metadata. This library can also be used +by applications to write metadata.") + (license (list license:lgpl2.0 license:lgpl2.1 license:lgpl3)))) + +(define-public kimageformats + (package + (name "kimageformats") + (version "5.24.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/frameworks/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "12mhgckmhnvcnm8k7mk15mipxrnm7i9ip7ykbjh8nxjiwyk1pmwc")))) + (build-system cmake-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("xorg-server" ,xorg-server))) + (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") + #t))))) + (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 +QtGui. As such it is not required for the compilation of any other software, +but may be a runtime requirement for Qt-based software to support certain image +formats.") + (license license:lgpl2.1+))) + +(define-public kjobwidgets + (package + (name "kjobwidgets") + (version "5.24.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/frameworks/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1mcvrz66xcqjgbp08zpqsf943cm462wbqm5gh719p9s25hx8hwrc")))) + (build-system cmake-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("qttools" ,qttools))) + (inputs + `(("kcoreaddons" ,kcoreaddons) + ("kwidgetsaddons" ,kwidgetsaddons) + ("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras))) + (home-page "https://community.kde.org/Frameworks") + (synopsis "Widgets for showing progress of asynchronous jobs") + (description "KJobWIdgets provides widgets for showing progress of +asynchronous jobs.") + (license license:lgpl2.1+))) + +(define-public knotifications + (package + (name "knotifications") + (version "5.24.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/frameworks/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "0qryp41phnpx4r9wa6rfhmnzy7nxl0ijnyrafadf2n2xb53ipkpa")))) + (build-system cmake-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("dbus" ,dbus) + ("qttools" ,qttools))) + (inputs + `(("kcodecs" ,kcodecs) + ("kconfig" ,kconfig) + ("kcoreaddons" ,kcoreaddons) + ("kwindowsystem" ,kwindowsystem) + ("phonon" ,phonon) + ("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'check-setup + (lambda* _ + (setenv "HOME" (getcwd)))) + (replace 'check + (lambda* _ + (setenv "DBUS_FATAL_WARNINGS" "0") + (zero? (system* "dbus-launch" "ctest" "."))))))) + (home-page "https://community.kde.org/Frameworks") + (synopsis "Desktop notifications") + (description "KNotification is used to notify the user of an event. It +covers feedback and persistent events.") + (license license:lgpl2.1+))) + +(define-public kpackage + (package + (name "kpackage") + (version "5.24.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/frameworks/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "03aqzkpqz3c1v4qgwfbs3ncdbapiyg7psrkhxqv3z48rklavk1ri")))) + (build-system cmake-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (inputs + `(("karchive" ,karchive) + ("kconfig" ,kconfig) + ("kcoreaddons" ,kcoreaddons) + ("ki18n" ,ki18n) + ("qtbase" ,qtbase))) + (arguments + `(#:tests? #f ; FIXME: 1/4 tests fail. + #:phases + (modify-phases %standard-phases + (add-before 'check 'check-setup + (lambda* _ + (setenv "CTEST_OUTPUT_ON_FAILURE" "1") ; enable debug output + (setenv "HOME" (getcwd))))))) + (home-page "https://community.kde.org/Frameworks") + (synopsis "Installation and loading of additional content as packages") + (description "The Package framework lets the user install and load packages +of non binary content such as scripted extensions or graphic assets, as if they +were traditional plugins.") + (license (list license:gpl2+ license:lgpl2.1+)))) + +(define-public kpty + (package + (name "kpty") + (version "5.24.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/frameworks/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1ybvdzqpa53kkki9p5da0ff9x3c63rmksk7865wqwlgy8apzi2fs")))) + (build-system cmake-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (inputs + `(("kcoreaddons" ,kcoreaddons) + ("ki18n" ,ki18n) + ("qtbase" ,qtbase))) + (arguments + `(#:tests? #f ; FIXME: 1/1 tests fail. + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-tests + (lambda _ + (setenv "CTEST_OUTPUT_ON_FAILURE" "1") + (substitute* "autotests/kptyprocesstest.cpp" + (("/bin/bash") (which "bash"))) + #t))))) + (home-page "https://community.kde.org/Frameworks") + (synopsis "Interfacing with pseudo terminal devices") + (description "This library provides primitives to interface with pseudo +terminal devices as well as a KProcess derived class for running child processes +and communicating with them using a pty.") + (license (list license:gpl2+ license:lgpl2.1+)))) + +(define-public kunitconversion + (package + (name "kunitconversion") + (version "5.24.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/frameworks/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "03dfjn4lm6sl2zcdrvw0b9irzvkyc2w2j5xixag5j8nw373742h8")))) + (build-system cmake-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (inputs + `(("ki18n" ,ki18n) + ("qtbase" ,qtbase))) + (home-page "https://community.kde.org/Frameworks") + (synopsis "Converting physical units") + (description "KUnitConversion provides functions to convert values in +different physical units. It supports converting different prefixes (e.g. kilo, +mega, giga) as well as converting between different unit systems (e.g. liters, +gallons).") + (license license:lgpl2.1+))) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 67434e0251..e5657fd641 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -40,6 +40,7 @@ #:use-module (gnu packages bison) #:use-module (gnu packages calendar) #:use-module (gnu packages check) + #:use-module (gnu packages crypto) #:use-module (gnu packages compression) #:use-module (gnu packages databases) #:use-module (gnu packages docbook) @@ -50,6 +51,7 @@ #:use-module (gnu packages gcc) #:use-module (gnu packages gettext) #:use-module (gnu packages glib) + #:use-module (gnu packages gnuzilla) #:use-module (gnu packages gperf) #:use-module (gnu packages gtk) #:use-module (gnu packages libusb) @@ -227,7 +229,7 @@ for SYSTEM and optionally VARIANT, or #f if there is no such configuration." (search-path %load-path file))) (define-public linux-libre - (let* ((version "4.7.1") + (let* ((version "4.7.2") (build-phase '(lambda* (#:key system inputs #:allow-other-keys #:rest args) ;; Avoid introducing timestamps @@ -305,7 +307,7 @@ for SYSTEM and optionally VARIANT, or #f if there is no such configuration." (uri (linux-libre-urls version)) (sha256 (base32 - "08b8yv5grhzacahmhs3q1031d6a4k7qf1qj7i5vsk33fhgg1nvzx")))) + "1rp09y2hv0hvdybm2n2im9717kzxmklpgzs8k1bmdfzqxyg8cb85")))) (build-system gnu-build-system) (supported-systems '("x86_64-linux" "i686-linux")) (native-inputs `(("perl" ,perl) @@ -342,13 +344,13 @@ It has been modified to remove all non-free binary blobs.") (define-public linux-libre-4.4 (package (inherit linux-libre) - (version "4.4.18") + (version "4.4.19") (source (origin (method url-fetch) (uri (linux-libre-urls version)) (sha256 (base32 - "0k8k17in7dkjd9d8zg3i8l1ax466dba6bxw28flxizzyq8znljps")))) + "0nddjs7prmb0g7g3w2k4qfyq02a9szm5nvsgflxcaarbq1slibb5")))) (native-inputs (let ((conf (kernel-config (or (%current-target-system) (%current-system)) @@ -359,13 +361,13 @@ It has been modified to remove all non-free binary blobs.") (define-public linux-libre-4.1 (package (inherit linux-libre) - (version "4.1.30") + (version "4.1.31") (source (origin (method url-fetch) (uri (linux-libre-urls version)) (sha256 (base32 - "0nwmwbskfni3fnbd7v6jh8yfah915zh80xg4g7n38lb66rk3bxvi")))) + "0grffah921k136w1qwcswxv6m810s8q54nr2rk7kyqka3a1b81yw")))) (native-inputs (let ((conf (kernel-config (or (%current-target-system) (%current-system)) @@ -2609,7 +2611,7 @@ and copy/paste text in the console and in xterm.") (define-public btrfs-progs (package (name "btrfs-progs") - (version "4.6.1") + (version "4.7.1") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/linux/kernel/" @@ -2617,7 +2619,7 @@ and copy/paste text in the console and in xterm.") "btrfs-progs-v" version ".tar.xz")) (sha256 (base32 - "06c9l6m3w29dndk17jrlpgr01wykl10h34zva8zc2c571z6mrlaf")))) + "15jsa12ijc6z49v1csc62x9zidrgcf307lwy1rbffdwk3gsrczww")))) (build-system gnu-build-system) (outputs '("out" "static")) ; static versions of binaries in "out" (~16MiB!) @@ -2648,6 +2650,7 @@ and copy/paste text in the console and in xterm.") ("libxml2" ,libxml2) ("docbook-xml" ,docbook-xml) ("docbook-xsl" ,docbook-xsl) + ;; For tests ("which" ,which))) (home-page "https://btrfs.wiki.kernel.org/") (synopsis "Create and manage btrfs copy-on-write file systems") @@ -2869,3 +2872,40 @@ as used on certified hardware security devices.") (license:non-copyleft "file://nist/packtest.c") license:public-domain ; nist/dfft.c license:gpl3+)))) ; everything else + +(define-public ecryptfs-utils + (package + (name "ecryptfs-utils") + (version "111") + (source + (origin + (method url-fetch) + (uri (string-append "https://launchpad.net/ecryptfs/trunk/" + version "/+download/ecryptfs-utils_" + version ".orig.tar.gz")) + (sha256 + (base32 + "0zwq19siiwf09h7lwa7n7mgmrr8cxifp45lmwgcfr8c1gviv6b0i")))) + (build-system gnu-build-system) + (arguments + `(#:configure-flags (list "--disable-pywrap"))) + (native-inputs + `(("intltool" ,intltool) + ("perl" ,perl) ; for pod2man + ("pkg-config" ,pkg-config))) + (inputs + `(("keyutils" ,keyutils) + ("linux-pam" ,linux-pam) + ("nss" ,nss))) + (home-page "http://ecryptfs.org/") + (synopsis "eCryptfs cryptographic file system utilities") + (description + "eCryptfs is a POSIX-compliant stacked cryptographic file system for Linux. +Each file's cryptographic meta-data is stored inside the file itself, along +with the encrypted contents. This allows individual encrypted files to be +copied between hosts and still be decrypted with the proper key. eCryptfs is a +native Linux file system, and has been part of the Linux kernel since version +2.6.19. This package contains the userland utilities to manage it.") + ;; The files src/key_mod/ecryptfs_key_mod_{openssl,pkcs11_helper,tspi}.c + ;; grant additional permission to link with OpenSSL. + (license license:gpl2+))) diff --git a/gnu/packages/lirc.scm b/gnu/packages/lirc.scm index 4c45c0ecb0..b8fbeb61ba 100644 --- a/gnu/packages/lirc.scm +++ b/gnu/packages/lirc.scm @@ -89,50 +89,50 @@ on just one button press.") (license license:gpl2+))) (define-public python-lirc - (let ((commit "4091fe918f3eed2513dad008828565cace408d2f") - (revision "1")) - (package - (name "python-lirc") - (version (string-append "1.2.1-" revision "." (string-take commit 7))) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/tompreston/python-lirc.git") - (commit commit))) - (sha256 - (base32 - "0cm47s5pvijfs3v2k7hmpxv3mvp4n5la0ihnsczk5ym3iq166jil")) - (file-name (string-append name "-" version ".tar.gz")))) - (build-system python-build-system) - (inputs - `(("lirc" ,lirc))) - (native-inputs - `(("python-cython" ,python-cython))) - (arguments - `(#:tests? #f ; the only tests that exist are human-interactive - #:phases - (modify-phases %standard-phases - (add-before 'build 'build-from-cython-files - (lambda _ - (zero? (system* "make" "py3"))))))) - (home-page "https://github.com/tompreston/python-lirc") - (synopsis "Python bindings for LIRC") - (description "@code{lirc} is a Python module which provides LIRC bindings.") - (license license:gpl3) - (properties `((python2-variant . ,(delay python2-lirc))))))) - -(define-public python2-lirc - (let ((base (package-with-python2 (strip-python2-variant python-lirc)))) + (let ((commit "4091fe918f3eed2513dad008828565cace408d2f") + (revision "1")) (package - (inherit base) + (name "python-lirc") + (version (string-append "1.2.1-" revision "." (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tompreston/python-lirc.git") + (commit commit))) + (sha256 + (base32 + "0cm47s5pvijfs3v2k7hmpxv3mvp4n5la0ihnsczk5ym3iq166jil")) + (file-name (string-append name "-" version)))) + (build-system python-build-system) + (inputs + `(("lirc" ,lirc))) + (native-inputs + `(("python-cython" ,python-cython))) (arguments - `(#:tests? #f ; the only tests there are are human-interactive + `(#:tests? #f ; the only tests that exist are human-interactive #:phases - (modify-phases %standard-phases - (add-before 'build 'build-from-cython-files - (lambda _ - (zero? (system* "make" "py2"))))))) - (native-inputs - `(("python2-setuptools" ,python2-setuptools) - ("python2-cython" ,python2-cython)))))) + (modify-phases %standard-phases + (add-before 'build 'build-from-cython-files + (lambda _ + (zero? (system* "make" "py3"))))))) + (home-page "https://github.com/tompreston/python-lirc") + (synopsis "Python bindings for LIRC") + (description "@code{lirc} is a Python module which provides LIRC bindings.") + (license license:gpl3) + (properties `((python2-variant . ,(delay python2-lirc))))))) + + (define-public python2-lirc + (let ((base (package-with-python2 (strip-python2-variant python-lirc)))) + (package + (inherit base) + (arguments + `(#:tests? #f ; the only tests that exist are human-interactive + #:phases + (modify-phases %standard-phases + (add-before 'build 'build-from-cython-files + (lambda _ + (zero? (system* "make" "py2"))))))) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ("python2-cython" ,python2-cython)))))) diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm index b4b5dee8be..8bd67c594d 100644 --- a/gnu/packages/lua.scm +++ b/gnu/packages/lua.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2014 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -21,12 +22,14 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu packages lua) - #:use-module (guix licenses) + #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system gnu) #:use-module (gnu packages) - #:use-module (gnu packages readline)) + #:use-module (gnu packages readline) + #:use-module (gnu packages tls) + #:use-module (gnu packages xml)) (define-public lua (package @@ -44,14 +47,15 @@ (inputs `(("readline" ,readline))) (arguments '(#:modules ((guix build gnu-build-system) - (guix build utils) - (srfi srfi-1)) + (guix build utils) + (srfi srfi-1)) #:test-target "test" + #:make-flags + '("CFLAGS=-fPIC -DLUA_DL_DLOPEN -DLUA_USE_POSIX" + "linux") #:phases (modify-phases %standard-phases (delete 'configure) - (replace 'build - (lambda _ (zero? (system* "make" "CFLAGS=-fPIC" "linux")))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) @@ -68,7 +72,7 @@ based on associative arrays and extensible semantics. Lua is dynamically typed, runs by interpreting bytecode for a register-based virtual machine, and has automatic memory management with incremental garbage collection, making it ideal for configuration, scripting, and rapid prototyping.") - (license x11))) + (license license:x11))) (define-public lua-5.1 (package (inherit lua) @@ -106,4 +110,152 @@ for configuration, scripting, and rapid prototyping.") programming language. Lua is a powerful, dynamic and light-weight programming language. It may be embedded or used as a general-purpose, stand-alone language.") - (license x11))) + (license license:x11))) + +(define-public lua5.1-expat + (package + (name "lua5.1-expat") + (version "1.3.0") + (source (origin + (method url-fetch) + (uri (string-append "https://matthewwild.co.uk/projects/" + "luaexpat/luaexpat-" version ".tar.gz")) + (sha256 + (base32 + "1hvxqngn0wf5642i5p3vcyhg3pmp102k63s9ry4jqyyqc1wkjq6h")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags + (let ((out (assoc-ref %outputs "out"))) + (list "CC=gcc" + (string-append "LUA_LDIR=" out "/share/lua/$(LUA_V)") + (string-append "LUA_CDIR=" out "/lib/lua/$(LUA_V)"))) + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'check + (lambda _ + (setenv "LUA_CPATH" "src/?.so;;") + (setenv "LUA_PATH" "src/?.lua;;") + (and (zero? (system* "lua" "tests/test.lua")) + (zero? (system* "lua" "tests/test-lom.lua")))))))) + (inputs + `(("lua" ,lua-5.1) + ("expat" ,expat))) + (home-page "http://matthewwild.co.uk/projects/luaexpat/") + (synopsis "SAX XML parser based on the Expat library") + (description "LuaExpat is a SAX XML parser based on the Expat library.") + (license (package-license lua-5.1)))) + +(define-public lua5.1-socket + (package + (name "lua5.1-socket") + (version "2.0.2") + (source (origin + (method url-fetch) + (uri (string-append "http://files.luaforge.net/releases/" + "luasocket/luasocket/luasocket-" + version "/luasocket-" version ".tar.gz")) + (sha256 + (base32 + "19ichkbc4rxv00ggz8gyf29jibvc2wq9pqjik0ll326rrxswgnag")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags + (let ((out (assoc-ref %outputs "out"))) + (list (string-append "INSTALL_TOP_SHARE=" out "/share/lua/5.1") + (string-append "INSTALL_TOP_LIB=" out "/lib/lua/5.1"))) + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'check + (lambda _ + (setenv "LUA_CPATH" (string-append "src/?.so." ,version ";;")) + (setenv "LUA_PATH" "src/?.lua;;") + (when (zero? (primitive-fork)) + (system* "lua" "test/testsrvr.lua")) + (zero? (system* "lua" "test/testclnt.lua"))))))) + (inputs + `(("lua" ,lua-5.1))) + (home-page "http://www.tecgraf.puc-rio.br/~diego/professional/luasocket/") + (synopsis "Socket library for Lua") + (description "LuaSocket is a Lua extension library that is composed by two +parts: a C core that provides support for the TCP and UDP transport layers, +and a set of Lua modules that add support for functionality commonly needed by +applications that deal with the Internet. + +Among the supported modules, the most commonly used implement the +SMTP (sending e-mails), HTTP (WWW access) and FTP (uploading and downloading +files) client protocols. These provide a very natural and generic interface +to the functionality defined by each protocol. In addition, you will find +that the MIME (common encodings), URL (anything you could possible want to do +with one) and LTN12 (filters, sinks, sources and pumps) modules can be very +handy.") + (license (package-license lua-5.1)))) + +(define-public lua5.1-filesystem + (package + (name "lua5.1-filesystem") + (version "1.6.3") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/keplerproject/" + "luafilesystem/archive/v_" + "1_6_3" ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0s10ckxin0bysd6gaywqhxkpw3ybjhprr8m655b8cx3pxjwd49am")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags + (list (string-append "PREFIX=" (assoc-ref %outputs "out"))) + #:test-target "test" + #:phases + (modify-phases %standard-phases + (delete 'configure)))) + (inputs + `(("lua" ,lua-5.1))) + (home-page "https://keplerproject.github.io/luafilesystem/index.html") + (synopsis "File system library for Lua") + (description "LuaFileSystem is a Lua library developed to complement the +set of functions related to file systems offered by the standard Lua +distribution. LuaFileSystem offers a portable way to access the underlying +directory structure and file attributes.") + (license (package-license lua-5.1)))) + +(define-public lua5.1-sec + (package + (name "lua5.1-sec") + (version "0.6") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/brunoos/luasec/archive/" + "luasec-" version ".tar.gz")) + (sha256 + (base32 + "0pgd1anzznl4s0h16wg8dlw9mgdb9h52drlcki6sbf5y31fa7wyf")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags + (let ((out (assoc-ref %outputs "out"))) + (list "linux" + "CC=gcc" + "LD=gcc" + (string-append "LUAPATH=" out "/share/lua/5.1") + (string-append "LUACPATH=" out "/lib/lua/5.1"))) + #:tests? #f ; no tests included + #:phases + (modify-phases %standard-phases + (delete 'configure)))) + (inputs + `(("lua" ,lua-5.1) + ("openssl" ,openssl))) + (propagated-inputs + `(("lua-socket" ,lua5.1-socket))) + (home-page "https://github.com/brunoos/luasec/wiki") + (synopsis "OpenSSL bindings for Lua") + (description "LuaSec is a binding for OpenSSL library to provide TLS/SSL +communication. It takes an already established TCP connection and creates a +secure session between the peers.") + (license (package-license lua-5.1)))) diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index f96672cfb2..4332045d63 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -27,18 +28,21 @@ #:use-module (guix build-system gnu) #:use-module (guix build-system r) #:use-module (gnu packages) + #:use-module (gnu packages algebra) #:use-module (gnu packages autotools) #:use-module (gnu packages boost) #:use-module (gnu packages compression) #:use-module (gnu packages dejagnu) #:use-module (gnu packages gcc) + #:use-module (gnu packages image) #:use-module (gnu packages maths) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages statistics) #:use-module (gnu packages swig) - #:use-module (gnu packages xml)) + #:use-module (gnu packages xml) + #:use-module (gnu packages xorg)) (define-public libsvm (package @@ -467,3 +471,64 @@ geometric models.") "This package provides functions for feed-forward neural networks with a single hidden layer, and for multinomial log-linear models.") (license (list license:gpl2+ license:gpl3+)))) + +(define-public dlib + (package + (name "dlib") + (version "19.1") + (source (origin + (method url-fetch) + (uri (string-append + "http://dlib.net/files/dlib-" version ".tar.bz2")) + (sha256 + (base32 + "0p2pvcdalc6jhb6r99ybvjd9x74sclr0ngswdg9j2xl5pj7knbr4")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Delete ~13MB of bundled dependencies. + (delete-file-recursively "dlib/external") + (delete-file-recursively "docs/dlib/external"))))) + (build-system cmake-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'disable-asserts + (lambda _ + ;; config.h recommends explicitly enabling or disabling asserts + ;; when building as a shared library. By default neither is set. + (substitute* "dlib/config.h" + (("^//#define DLIB_DISABLE_ASSERTS") "#define DLIB_DISABLE_ASSERTS")) + #t)) + (replace 'check + (lambda _ + ;; No test target, so we build and run the unit tests here. + (let ((test-dir (string-append "../dlib-" ,version "/dlib/test/build"))) + (mkdir-p test-dir) + (with-directory-excursion test-dir + (and (zero? (system* "cmake" "..")) + (zero? (system* "cmake" "--build" "." "--config" "Release")) + (zero? (system* "./dtest" "--runall"))))))) + (add-after 'install 'delete-static-library + (lambda* (#:key outputs #:allow-other-keys) + (delete-file (string-append (assoc-ref outputs "out") "/lib/libdlib.a"))))))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("fftw" ,fftw) + ("giflib" ,giflib) + ;("lapack" ,lapack) XXX lapack here causes test failures in some setups. + ("libjpeg" ,libjpeg) + ("libpng" ,libpng) + ("libx11" ,libx11) + ("openblas" ,openblas) + ("zlib" ,zlib))) + (synopsis + "Toolkit for making machine learning and data analysis applications in C++") + (description + "Dlib is a modern C++ toolkit containing machine learning algorithms and +tools. It is used in both industry and academia in a wide range of domains +including robotics, embedded devices, mobile phones, and large high performance +computing environments.") + (home-page "http://dlib.net") + (license license:boost1.0))) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 49bf8f74b1..c07bc529d0 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -182,14 +182,14 @@ aliasing facilities to work just as they would on normal mail.") (define-public mutt (package (name "mutt") - (version "1.6.2") + (version "1.7.0") (source (origin (method url-fetch) (uri (string-append "ftp://ftp.mutt.org/pub/mutt/mutt-" version ".tar.gz")) (sha256 (base32 - "13hxmji7v9m2agmvzrs7gzx8s3c9jiwrv7pbkr7z1kc6ckq2xl65")) + "0idkamdiwj9fgqaz1vzkfg78cnmkzp74skv0ibw2xjfq6ds9hghx")) (patches (search-patches "mutt-store-references.patch")))) (build-system gnu-build-system) (inputs @@ -205,6 +205,7 @@ aliasing facilities to work just as they would on normal mail.") "--enable-pop" "--enable-gpgme" "--enable-hcache" ; for header caching + "--enable-sidebar" "--with-ssl" "--with-sasl" ;; so that mutt does not check whether the path @@ -296,7 +297,7 @@ and corrections. It is based on a Bayesian filter.") (define-public offlineimap (package (name "offlineimap") - (version "7.0.5") + (version "7.0.6") (source (origin (method url-fetch) (uri (string-append "https://github.com/OfflineIMAP/offlineimap/" @@ -304,7 +305,7 @@ and corrections. It is based on a Bayesian filter.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "05wm7qix4ikx6hi57a1qc3hb5fv1vksbg6dgvmd8871y5l1qqrkn")))) + "1msg0v5i3v4mvjm2c5alzz91dk5y20h4xdr60lcz3507fv80407m")))) (build-system python-build-system) (inputs `(("python2-pysqlite" ,python2-pysqlite) ("python2-six" ,python2-six))) @@ -407,7 +408,9 @@ attachments, create new maildirs, and so on.") (version "0.3.7") (source (origin (method url-fetch) - ; v0.3.7 not on PyPi yet, so use github instead + ;; package author intends on distributing via github rather + ;; than pypi: + ;; https://github.com/pazz/alot/issues/877#issuecomment-230173331 (uri (string-append "https://github.com/pazz/alot/archive/" version ".tar.gz")) (file-name (string-append "alot-" version ".tar.gz")) @@ -417,8 +420,8 @@ attachments, create new maildirs, and so on.") (build-system python-build-system) (arguments `(#:tests? #f ; no tests - ; python 3 is unsupported, more info: - ; https://github.com/pazz/alot/blob/0.3.7/docs/source/faq.rst + ;; python 3 is unsupported, more info: + ;; https://github.com/pazz/alot/blob/0.3.7/docs/source/faq.rst #:python ,python-2)) (inputs `(("python2-magic" ,python2-magic) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 0f495021f0..32fb87f150 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -692,15 +692,15 @@ can solve two kinds of problems: (define-public octave (package (name "octave") - (version "4.0.2") + (version "4.0.3") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/octave/octave-" - version ".tar.gz")) + version ".tar.xz")) (sha256 (base32 - "1hdxap3j88rpqjimnfhinym6z73wdi5dfa6fv85c13r1dk9qzk9r")))) + "11day29k4yfvxh4101x5yf26ld992x5n6qvmhjjk6mzsd26fqayw")))) (build-system gnu-build-system) (inputs `(("lapack" ,lapack) @@ -709,9 +709,7 @@ can solve two kinds of problems: ("fftw" ,fftw) ("fftwf" ,fftwf) ("arpack" ,arpack-ng) - ("curl" ,curl) ("pcre" ,pcre) - ("cyrus-sasl" ,cyrus-sasl) ("fltk" ,fltk) ("fontconfig" ,fontconfig) ("freetype" ,freetype) @@ -719,7 +717,6 @@ can solve two kinds of problems: ("libxft" ,libxft) ("mesa" ,mesa) ("glu" ,glu) - ("openssl" ,openssl) ("zlib" ,zlib))) (native-inputs `(("gfortran" ,gfortran) @@ -2025,14 +2022,14 @@ packages.") (define-public atlas (package (name "atlas") - (version "3.10.2") + (version "3.10.3") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/math-atlas/Stable/" version "/atlas" version ".tar.bz2")) (sha256 (base32 - "0bqh4bdnjdyww4mcpg6kn0x7338mfqbdgysn97dzrwwb26di7ars")))) + "1dyjlq3fiparvm8ypwk6rsmjzmnwk81l88gkishphpvc79ryp216")))) (build-system gnu-build-system) (home-page "http://math-atlas.sourceforge.net/") (inputs `(("gfortran" ,gfortran) @@ -2079,59 +2076,54 @@ packages.") ,(string-append "--with-netlib-lapack-tarfile=" (assoc-ref %build-inputs "lapack-tar"))) #:phases - (alist-cons-after - 'install 'install-doc - (lambda* (#:key outputs inputs #:allow-other-keys) - (let ((doc (string-append (assoc-ref outputs "doc") - "/share/doc/atlas"))) - (mkdir-p doc) - (fold (lambda (file previous) - (and previous (zero? (system* "cp" file doc)))) - #t (find-files "../ATLAS/doc" ".*")))) - (alist-cons-after - 'check 'check-pt - (lambda _ (zero? (system* "make" "ptcheck"))) - ;; Fix files required to run configure. - (alist-cons-before - 'configure 'fix-/bin/sh + (modify-phases %standard-phases + (add-after 'install 'install-doc + (lambda* (#:key outputs inputs #:allow-other-keys) + (let ((doc (string-append (assoc-ref outputs "doc") + "/share/doc/atlas"))) + (mkdir-p doc) + (fold (lambda (file previous) + (and previous (zero? (system* "cp" file doc)))) + #t (find-files "../ATLAS/doc" ".*"))))) + (add-after 'check 'check-pt + (lambda _ (zero? (system* "make" "ptcheck")))) + ;; Fix files required to run configure. + (add-before 'configure 'fix-/bin/sh (lambda _ ;; Use `sh', not `/bin/sh'. (substitute* (find-files "." "Makefile|configure|SpewMakeInc\\.c") (("/bin/sh") - "sh"))) - ;; Fix /bin/sh in generated make files. - (alist-cons-after - 'configure 'fix-/bin/sh-in-generated-files - (lambda _ - (substitute* (find-files "." "^[Mm]ake\\.inc.*") - (("/bin/sh") - "sh"))) - ;; ATLAS configure program does not accepts the default flags - ;; passed by the 'gnu-build-system'. - (alist-replace - 'configure - (lambda* (#:key native-inputs inputs outputs - (configure-flags '()) - #:allow-other-keys #:rest args) - (let* ((prefix (assoc-ref outputs "out")) - (bash (or (and=> (assoc-ref - (or native-inputs inputs) "bash") - (cut string-append <> "/bin/bash")) - "/bin/sh")) - (flags `(,(string-append "--prefix=" prefix) - ,@configure-flags)) - (abs-srcdir (getcwd)) - (srcdir (string-append "../" (basename abs-srcdir)))) - (format #t "source directory: ~s (relative from build: ~s)~%" - abs-srcdir srcdir) - (mkdir "../build") - (chdir "../build") - (format #t "build directory: ~s~%" (getcwd)) - (format #t "configure flags: ~s~%" flags) - (zero? (apply system* bash - (string-append srcdir "/configure") - flags)))) - %standard-phases))))))) + "sh")))) + ;; Fix /bin/sh in generated make files. + (add-after 'configure 'fix-/bin/sh-in-generated-files + (lambda _ + (substitute* (find-files "." "^[Mm]ake\\.inc.*") + (("/bin/sh") + "sh")))) + ;; ATLAS configure program does not accepts the default flags + ;; passed by the 'gnu-build-system'. + (replace 'configure + (lambda* (#:key native-inputs inputs outputs + (configure-flags '()) + #:allow-other-keys #:rest args) + (let* ((prefix (assoc-ref outputs "out")) + (bash (or (and=> (assoc-ref + (or native-inputs inputs) "bash") + (cut string-append <> "/bin/bash")) + "/bin/sh")) + (flags `(,(string-append "--prefix=" prefix) + ,@configure-flags)) + (abs-srcdir (getcwd)) + (srcdir (string-append "../" (basename abs-srcdir)))) + (format #t "source directory: ~s (relative from build: ~s)~%" + abs-srcdir srcdir) + (mkdir "../build") + (chdir "../build") + (format #t "build directory: ~s~%" (getcwd)) + (format #t "configure flags: ~s~%" flags) + (zero? (apply system* bash + (string-append srcdir "/configure") + flags)))))))) (synopsis "Automatically Tuned Linear Algebra Software") (description "ATLAS is an automatically tuned linear algebra software library diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index de9ac179bb..fa4515c768 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -3,7 +3,7 @@ ;;; Copyright © 2014 Julien Lepiller <julien@lepiller.eu> ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com> ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr> -;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il> ;;; ;;; This file is part of GNU Guix. @@ -24,7 +24,7 @@ (define-module (gnu packages messaging) #:use-module ((guix licenses) #:select (gpl3+ gpl2+ gpl2 lgpl2.1 lgpl2.0+ bsd-2 non-copyleft - asl2.0)) + asl2.0 x11)) #:use-module (guix utils) #:use-module (guix packages) #:use-module (guix download) @@ -45,6 +45,7 @@ #:use-module (gnu packages xdisorg) #:use-module (gnu packages libcanberra) #:use-module (gnu packages libidn) + #:use-module (gnu packages lua) #:use-module (gnu packages xml) #:use-module (gnu packages gnupg) #:use-module (gnu packages ncurses) @@ -492,4 +493,77 @@ transformation; audio and video conferences; file transfer; TLS, GPG and end-to-end encryption support; XML console.") (license gpl3+))) +(define-public prosody + (package + (name "prosody") + (version "0.9.10") + (source (origin + (method url-fetch) + (uri (string-append "https://prosody.im/downloads/source/" + "prosody-" version ".tar.gz")) + (sha256 + (base32 + "0bv6s5c0iizz015hh1lxlwlw1iwvisywajm2rcrbdfyrskzfwdj8")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no "check" target + #:modules ((ice-9 match) + (srfi srfi-1) + (guix build gnu-build-system) + (guix build utils)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-configure-script + (lambda _ + ;; The configure script aborts when it encounters unexpected + ;; arguments. Make it more tolerant. + (substitute* "configure" + (("exit 1") "")) + #t)) + (add-after 'install 'wrap-programs + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Make sure all executables in "bin" find the required Lua + ;; modules at runtime. + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin/")) + (deps (delete #f (map (match-lambda + ((label . directory) + (if (string-prefix? "lua" label) + directory #f))) + inputs))) + (path (string-join + (map (lambda (path) + (string-append path "/share/lua/5.1/?.lua;" + path "/share/lua/5.1/?/?.lua")) + (cons out deps)) + ";")) + (cpath (string-join + (map (lambda (path) + (string-append path "/lib/lua/5.1/?.so;" + path "/lib/lua/5.1/?/?.so")) + (cons out deps)) + ";"))) + (for-each (lambda (file) + (wrap-program file + `("LUA_PATH" ";" = (,path)) + `("LUA_CPATH" ";" = (,cpath)))) + (find-files bin ".*")) + #t)))))) + (inputs + `(("libidn" ,libidn) + ("openssl" ,openssl) + ("lua" ,lua-5.1) + ("lua5.1-expat" ,lua5.1-expat) + ("lua5.1-socket" ,lua5.1-socket) + ("lua5.1-filesystem" ,lua5.1-filesystem) + ("lua5.1-sec" ,lua5.1-sec))) + (home-page "https://prosody.im/") + (synopsis "Jabber (XMPP) server") + (description "Prosody is a modern XMPP communication server. It aims to +be easy to set up and configure, and efficient with system resources. +Additionally, for developers it aims to be easy to extend and give a flexible +system on which to rapidly develop added functionality, or prototype new +protocols.") + (license x11))) + ;;; messaging.scm ends here diff --git a/gnu/packages/mit-krb5.scm b/gnu/packages/mit-krb5.scm index 2b8839c7e9..3d11f3a450 100644 --- a/gnu/packages/mit-krb5.scm +++ b/gnu/packages/mit-krb5.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012, 2013 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org> +;;; Copyright © 2016 Leo Famulari <leo@famulari.name> ;;; ;;; This file is part of GNU Guix. ;;; @@ -30,6 +31,7 @@ (define-public mit-krb5 (package (name "mit-krb5") + (replacement mit-krb5-1.14.3) (version "1.14.2") (source (origin (method url-fetch) @@ -82,3 +84,17 @@ cryptography.") (license (non-copyleft "file://NOTICE" "See NOTICE in the distribution.")) (home-page "http://web.mit.edu/kerberos/"))) + +(define mit-krb5-1.14.3 + (package + (inherit mit-krb5) + (source + (let ((version "1.14.3")) + (origin + (method url-fetch) + (uri (string-append "http://web.mit.edu/kerberos/dist/krb5/" + (version-major+minor version) + "/krb5-" version ".tar.gz")) + (sha256 + (base32 + "1jgjiyh1sp72lkxvk437lz5hzcibvw99jc4ihzfz03fg43aj0ind"))))))) diff --git a/gnu/packages/moreutils.scm b/gnu/packages/moreutils.scm index 79e2a42762..79ab9bbc9a 100644 --- a/gnu/packages/moreutils.scm +++ b/gnu/packages/moreutils.scm @@ -32,9 +32,14 @@ (version "0.58") (source (origin (method url-fetch) - (uri (string-append - "mirror://debian/pool/main/m/moreutils/moreutils_" - version ".orig.tar.gz")) + (uri (list + (string-append + "mirror://debian/pool/main/m/moreutils/moreutils_" + version ".orig.tar.gz") + ;; The main Debian mirrors only hold the current packages + (string-append + "http://snapshot.debian.org/archive/debian/20160304T165744Z" + "/pool/main/m/moreutils/moreutils_0.58.orig.tar.gz"))) (sha256 (base32 "02n00vqp6jxbxr5v3rdjxmzp6kxxjdkjgcclam6wrw8qamsbljww")))) diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm index da989f82db..279ec68440 100644 --- a/gnu/packages/mpd.scm +++ b/gnu/packages/mpd.scm @@ -71,7 +71,7 @@ interfacing MPD in the C, C++ & Objective C languages.") (define-public mpd (package (name "mpd") - (version "0.19.18") + (version "0.19.19") (source (origin (method url-fetch) (uri @@ -80,7 +80,7 @@ interfacing MPD in the C, C++ & Objective C languages.") "/mpd-" version ".tar.xz")) (sha256 (base32 - "0izd0ph570055s1np6dynxhwbh0h6kb6agvfhxzbj34qahf9jk3n")))) + "07af1m2lgblyiq0gcs26zv8n22wrhrpmf49xsm338h1n87d6r1dw")))) (build-system gnu-build-system) (inputs `(("ao" ,ao) ("alsa-lib" ,alsa-lib) @@ -134,7 +134,7 @@ protocol.") (define-public mpd-mpc (package (name "mpd-mpc") - (version "0.27") + (version "0.28") (source (origin (method url-fetch) (uri @@ -143,7 +143,7 @@ protocol.") "/mpc-" version ".tar.xz")) (sha256 (base32 - "0r10wsqxsi07gns6mfnicvpci0sbwwj4qa9iyr1ysrgadl5bx8j5")))) + "0iy5mdffkk61255f62si7p8mhyhkib70zlr1i1iimj2xr037scx4")))) (build-system gnu-build-system) (inputs `(("libmpdclient" ,libmpdclient))) (native-inputs `(("pkg-config" ,pkg-config))) @@ -156,7 +156,7 @@ player daemon.") (define-public ncmpc (package (name "ncmpc") - (version "0.24") + (version "0.25") (source (origin (method url-fetch) (uri @@ -165,7 +165,7 @@ player daemon.") "/ncmpc-" version ".tar.xz")) (sha256 (base32 - "1sf3nirs3mcx0r5i7acm9bsvzqzlh730m0yjg6jcyj8ln6r7cvqf")))) + "196f9s0qmc4srr10n4vk3amvqy5f52y9kvgwqpkfjsnhf75qlckf")))) (build-system gnu-build-system) (inputs `(("glib" ,glib) ("libmpdclient" ,libmpdclient) @@ -180,7 +180,7 @@ terminal using ncurses.") (define-public ncmpcpp (package (name "ncmpcpp") - (version "0.7.4") + (version "0.7.5") (source (origin (method url-fetch) (uri @@ -188,7 +188,7 @@ terminal using ncurses.") version ".tar.bz2")) (sha256 (base32 - "0qqy3w2vw3i9rxz0z8n0plmwwfv6gzrxip86l894l1xbvzqja16p")))) + "0zg084m06y7dd8ccy6aq9hx8q7qi2s5kl0br5139hrmk40q68kvy")))) (build-system gnu-build-system) (inputs `(("libmpdclient" ,libmpdclient) ("boost" ,boost) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index dfd3f7786d..88743aa14d 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -702,8 +702,10 @@ Editor. It is compatible with Power Tab Editor 1.7 and Guitar Pro.") (base32 "0h5zja78phf9705i9g54zh61iczb24iv7rxhljyms30sjgajig1y")))) (build-system gnu-build-system) - ;; There are no tests. - (arguments `(#:tests? #f)) + (arguments + `(#:tests? #f ; There are no tests. + #:configure-flags + '("CXXFLAGS=-std=gnu++11"))) (inputs `(("jack" ,jack-1) ("lv2" ,lv2) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 2678739560..bdccccec6f 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2016 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is> +;;; Coypright © 2016 Arun Isaac <arunisaac@systemreboot.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -419,6 +420,26 @@ by firewalls or when you want to monitor the response time of the actual web application stack itself.") (license license:gpl2))) ; with permission to link with OpenSSL +(define-public bwm-ng + (package + (name "bwm-ng") + (version "0.6.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://www.gropp.org/bwm-ng/bwm-ng-" + version ".tar.gz")) + (sha256 + (base32 + "1w0dwpjjm9pqi613i8glxrgca3rdyqyp3xydzagzr5ndc34z6z02")))) + (build-system gnu-build-system) + (inputs `(("ncurses" ,ncurses))) + (synopsis "Console based live network and disk I/O bandwidth monitor") + (description "Bandwidth Monitor NG is a small and simple console based +live network and disk I/O bandwidth monitor.") + (home-page "https://www.gropp.org/?id=projects&sub=bwm-ng") + (license license:gpl2))) + (define-public aircrack-ng (package (name "aircrack-ng") diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index c14d83c016..1f4c3e471a 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -149,7 +149,7 @@ functional, imperative and object-oriented styles of programming.") (define-public opam (package (name "opam") - (version "1.1.1") + (version "1.2.2") (source (origin (method url-fetch) ;; Use the '-full' version, which includes all the dependencies. @@ -161,7 +161,7 @@ functional, imperative and object-oriented styles of programming.") ) (sha256 (base32 - "1frzqkx6yn1pnyd9qz3bv3rbwv74bmc1xji8kl41r1dkqzfl3xqv")))) + "004gwn6rbpcb53y3rpb3v23vk39rp2xmf0liyd5iy12ij8bigrhm")))) (build-system gnu-build-system) (arguments '(;; Sometimes, 'make -jX' would fail right after ./configure with @@ -169,30 +169,34 @@ functional, imperative and object-oriented styles of programming.") #:parallel-build? #f ;; For some reason, 'ocp-build' needs $TERM to be set. - #:make-flags '("TERM=screen") + #:make-flags `("TERM=screen" + ,(string-append "SHELL=" + (assoc-ref %build-inputs "bash") + "/bin/sh")) #:test-target "tests" ;; FIXME: There's an obscure test failure: ;; …/_obuild/opam/opam.asm install P1' failed. #:tests? #f - #:phases (alist-cons-before - 'build 'pre-build - (lambda* (#:key inputs #:allow-other-keys) - (let ((bash (assoc-ref inputs "bash"))) - (substitute* "src/core/opamSystem.ml" - (("\"/bin/sh\"") - (string-append "\"" bash "/bin/sh\""))))) - (alist-cons-before - 'check 'pre-check - (lambda _ - (setenv "HOME" (getcwd)) - (and (system "git config --global user.email guix@gnu.org") - (system "git config --global user.name Guix"))) - %standard-phases)))) + #:phases (modify-phases %standard-phases + (add-before 'build 'pre-build + (lambda* (#:key inputs make-flags #:allow-other-keys) + (let ((bash (assoc-ref inputs "bash"))) + (substitute* "src/core/opamSystem.ml" + (("\"/bin/sh\"") + (string-append "\"" bash "/bin/sh\""))) + ;; Build dependencies + (zero? (apply system* "make" "lib-ext" make-flags))))) + (add-before 'check 'pre-check + (lambda _ + (setenv "HOME" (getcwd)) + (and (system "git config --global user.email guix@gnu.org") + (system "git config --global user.name Guix"))))))) (native-inputs `(("git" ,git) ;for the tests - ("python" ,python))) ;for the tests + ("python" ,python) ;for the tests + ("camlp4" ,camlp4))) (inputs `(("ocaml" ,ocaml) ("ncurses" ,ncurses) diff --git a/gnu/packages/patches/gimp-CVE-2016-4994.patch b/gnu/packages/patches/gimp-CVE-2016-4994.patch deleted file mode 100644 index 6c81c63386..0000000000 --- a/gnu/packages/patches/gimp-CVE-2016-4994.patch +++ /dev/null @@ -1,96 +0,0 @@ -Fix CVE-2016-4994: -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-4994 - -Copied from upstream repository: -https://git.gnome.org/browse/gimp/patch/?id=e82aaa4b4ee0703c879e35ea9321fff6be3e9b6f - -From e82aaa4b4ee0703c879e35ea9321fff6be3e9b6f Mon Sep 17 00:00:00 2001 -From: Shmuel H <shmuelgimp@gmail.com> -Date: Mon, 20 Jun 2016 17:14:41 +0300 -Subject: Bug 767873 - (CVE-2016-4994) Multiple Use-After-Free when parsing... - -...XCF channel and layer properties - -The properties PROP_ACTIVE_LAYER, PROP_FLOATING_SELECTION, -PROP_ACTIVE_CHANNEL saves the current object pointer the @info -structure. Others like PROP_SELECTION (for channel) and -PROP_GROUP_ITEM (for layer) will delete the current object and create -a new object, leaving the pointers in @info invalid (dangling). - -Therefore, if a property from the first type will come before the -second, the result will be an UaF in the last lines of xcf_load_image -(when it actually using the pointers from @info). - -I wasn't able to exploit this bug because that -g_object_instance->c_class gets cleared by the last g_object_unref and -GIMP_IS_{LAYER,CHANNEL} detects that and return FALSE. - -(cherry picked from commit 6d804bf9ae77bc86a0a97f9b944a129844df9395) ---- - app/xcf/xcf-load.c | 29 +++++++++++++++++++++++++++++ - 1 file changed, 29 insertions(+) - -diff --git a/app/xcf/xcf-load.c b/app/xcf/xcf-load.c -index b180377..67cc6d4 100644 ---- a/app/xcf/xcf-load.c -+++ b/app/xcf/xcf-load.c -@@ -904,6 +904,18 @@ xcf_load_layer_props (XcfInfo *info, - case PROP_GROUP_ITEM: - { - GimpLayer *group; -+ gboolean is_active_layer; -+ -+ /* We're going to delete *layer, Don't leave its pointers -+ * in @info. After that, we'll restore them back with the -+ * new pointer. See bug #767873. -+ */ -+ is_active_layer = (*layer == info->active_layer); -+ if (is_active_layer) -+ info->active_layer = NULL; -+ -+ if (*layer == info->floating_sel) -+ info->floating_sel = NULL; - - group = gimp_group_layer_new (image); - -@@ -916,6 +928,13 @@ xcf_load_layer_props (XcfInfo *info, - g_object_ref_sink (*layer); - g_object_unref (*layer); - *layer = group; -+ -+ if (is_active_layer) -+ info->active_layer = *layer; -+ -+ /* Don't restore info->floating_sel because group layers -+ * can't be floating selections -+ */ - } - break; - -@@ -986,6 +1005,12 @@ xcf_load_channel_props (XcfInfo *info, - { - GimpChannel *mask; - -+ /* We're going to delete *channel, Don't leave its pointer -+ * in @info. See bug #767873. -+ */ -+ if (*channel == info->active_channel) -+ info->active_channel = NULL; -+ - mask = - gimp_selection_new (image, - gimp_item_get_width (GIMP_ITEM (*channel)), -@@ -1000,6 +1025,10 @@ xcf_load_channel_props (XcfInfo *info, - *channel = mask; - (*channel)->boundary_known = FALSE; - (*channel)->bounds_known = FALSE; -+ -+ /* Don't restore info->active_channel because the -+ * selection can't be the active channel -+ */ - } - break; - --- -cgit v0.12 - diff --git a/gnu/packages/patches/mupdf-CVE-2016-6265.patch b/gnu/packages/patches/mupdf-CVE-2016-6265.patch new file mode 100644 index 0000000000..58f5c3726c --- /dev/null +++ b/gnu/packages/patches/mupdf-CVE-2016-6265.patch @@ -0,0 +1,30 @@ +Fix CVE-2016-6265 (use after free in pdf_load_xref()). + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-6265 +https://security-tracker.debian.org/tracker/CVE-2016-6265 + +Patch copied from upstream source repository: + +http://git.ghostscript.com/?p=mupdf.git;h=fa1936405b6a84e5c9bb440912c23d532772f958 + +diff --git a/source/pdf/pdf-xref.c b/source/pdf/pdf-xref.c +index 576c315..3222599 100644 +--- a/source/pdf/pdf-xref.c ++++ b/source/pdf/pdf-xref.c +@@ -1184,8 +1184,14 @@ pdf_load_xref(fz_context *ctx, pdf_document *doc, pdf_lexbuf *buf) + fz_throw(ctx, FZ_ERROR_GENERIC, "object offset out of range: %d (%d 0 R)", (int)entry->ofs, i); + } + if (entry->type == 'o') +- if (entry->ofs <= 0 || entry->ofs >= xref_len || pdf_get_xref_entry(ctx, doc, entry->ofs)->type != 'n') +- fz_throw(ctx, FZ_ERROR_GENERIC, "invalid reference to an objstm that does not exist: %d (%d 0 R)", (int)entry->ofs, i); ++ { ++ /* Read this into a local variable here, because pdf_get_xref_entry ++ * may solidify the xref, hence invalidating "entry", meaning we ++ * need a stashed value for the throw. */ ++ fz_off_t ofs = entry->ofs; ++ if (ofs <= 0 || ofs >= xref_len || pdf_get_xref_entry(ctx, doc, ofs)->type != 'n') ++ fz_throw(ctx, FZ_ERROR_GENERIC, "invalid reference to an objstm that does not exist: %d (%d 0 R)", (int)ofs, i); ++ } + } + } + diff --git a/gnu/packages/patches/mupdf-CVE-2016-6525.patch b/gnu/packages/patches/mupdf-CVE-2016-6525.patch new file mode 100644 index 0000000000..370af5ade6 --- /dev/null +++ b/gnu/packages/patches/mupdf-CVE-2016-6525.patch @@ -0,0 +1,21 @@ +Fix CVE-2016-6525 (heap overflow in pdf_load_mesh_params()). + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-6525 +https://security-tracker.debian.org/tracker/CVE-2016-6525 + +Patch copied from upstream source repository: +http://git.ghostscript.com/?p=mupdf.git;h=39b0f07dd960f34e7e6bf230ffc3d87c41ef0f2e + +diff --git a/source/pdf/pdf-shade.c b/source/pdf/pdf-shade.c +index 7815b3c..6e25efa 100644 +--- a/source/pdf/pdf-shade.c ++++ b/source/pdf/pdf-shade.c +@@ -206,7 +206,7 @@ pdf_load_mesh_params(fz_context *ctx, pdf_document *doc, fz_shade *shade, pdf_ob + obj = pdf_dict_get(ctx, dict, PDF_NAME_Decode); + if (pdf_array_len(ctx, obj) >= 6) + { +- n = (pdf_array_len(ctx, obj) - 4) / 2; ++ n = fz_mini(FZ_MAX_COLORS, (pdf_array_len(ctx, obj) - 4) / 2); + shade->u.m.x0 = pdf_to_real(ctx, pdf_array_get(ctx, obj, 0)); + shade->u.m.x1 = pdf_to_real(ctx, pdf_array_get(ctx, obj, 1)); + shade->u.m.y0 = pdf_to_real(ctx, pdf_array_get(ctx, obj, 2)); diff --git a/gnu/packages/patches/xf86-video-openchrome-glibc-2.20.patch b/gnu/packages/patches/xf86-video-openchrome-glibc-2.20.patch deleted file mode 100644 index 4ed7ab00bf..0000000000 --- a/gnu/packages/patches/xf86-video-openchrome-glibc-2.20.patch +++ /dev/null @@ -1,15 +0,0 @@ -Allow builds with glibc 2.20. -Based on a patch by Peter Hutterer <peter.hutterer@who-t.net>. -See <https://raw.githubusercontent.com/openembedded/oe-core/master/meta/recipes-graphics/xorg-driver/xf86-input-synaptics/always_include_xorg_server.h.patch>. - ---- xf86-video-openchrome-0.3.3/src/via_3d.h.~1~ 2013-05-23 11:11:28.000000000 -0400 -+++ xf86-video-openchrome-0.3.3/src/via_3d.h 2014-12-19 01:17:04.000953259 -0500 -@@ -24,6 +24,8 @@ - #ifndef VIA_3D_H - #define VIA_3D_H - -+#include <xorg-server.h> -+ - #include "xf86.h" - #include "via_dmabuffer.h" - diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index 3b26e26b78..7313ee3974 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -27,6 +27,7 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) #:use-module (guix build-system python) @@ -120,8 +121,12 @@ (define-public poppler-qt5 (package (inherit poppler) (name "poppler-qt5") - (inputs `(("qt" ,qt) + (inputs `(("qtbase" ,qtbase) ,@(package-inputs poppler))) + (arguments + (substitute-keyword-arguments (package-arguments poppler) + ((#:configure-flags flags) + `(cons "CXXFLAGS=-std=gnu++11" ,flags)))) (synopsis "Qt5 frontend for the Poppler PDF rendering library"))) (define-public python-poppler-qt4 @@ -469,6 +474,8 @@ extracting content or merging files.") name "-" version "-source.tar.gz")) (sha256 (base32 "01n26cy41lc2fjri63s4js23ixxb4nd37aafry3hz4i4id6wd8x2")) + (patches (search-patches "mupdf-CVE-2016-6265.patch" + "mupdf-CVE-2016-6525.patch")) (modules '((guix build utils))) (snippet ;; Don't build the bundled-in third party libraries. diff --git a/gnu/packages/polkit.scm b/gnu/packages/polkit.scm index 08b753a6cf..e224ca22f3 100644 --- a/gnu/packages/polkit.scm +++ b/gnu/packages/polkit.scm @@ -142,7 +142,7 @@ for unprivileged applications.") (inputs `(("polkit" ,polkit))) (propagated-inputs - `(("qt" ,qt))) ; qt-4 according to the pkg-config files + `(("qtbase" ,qtbase))) (native-inputs `(("pkg-config" ,pkg-config))) (arguments diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 67494234c9..de8f054c5e 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -25,6 +25,7 @@ ;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com> ;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is> ;;; Copyright © 2016 Dylan Jeffers <sapientech@sapientech@openmailbox.org> +;;; Copyright © 2016 David Craven <david@craven.ch> ;;; ;;; This file is part of GNU Guix. ;;; @@ -42,12 +43,7 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu packages python) - #:use-module ((guix licenses) - #:select (asl2.0 bsd-4 bsd-3 bsd-2 non-copyleft cc0 x11 x11-style - gpl2 gpl2+ gpl3 gpl3+ lgpl2.0+ lgpl2.1 lgpl2.1+ lgpl3+ agpl3+ - isc mpl2.0 psfl public-domain repoze unlicense x11-style - zpl2.1 lgpl3)) - #:use-module ((guix licenses) #:select (expat zlib) #:prefix license:) + #:use-module ((guix licenses) #:prefix license:) #:use-module (gnu packages) #:use-module (gnu packages algebra) #:use-module (gnu packages adns) @@ -292,7 +288,7 @@ introspection capabilities; intuitive object orientation; natural expression of procedural code; full modularity, supporting hierarchical packages; exception-based error handling; and very high level dynamic data types.") - (license psfl))) + (license license:psfl))) ;; Current 2.x version. (define-public python-2 python-2.7) @@ -412,7 +408,7 @@ limiting process resources and management of running processes. It implements many functionalities offered by command line tools such as: ps, top, lsof, netstat, ifconfig, who, df, kill, free, nice, ionice, iostat, iotop, uptime, pidof, tty, taskset, pmap.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-psutil (package-with-python2 python-psutil)) @@ -450,7 +446,7 @@ cross-platform implementations of over 30 password hashing algorithms, as well as a framework for managing existing password hashes. It's designed to be useful for a wide range of tasks, from verifying a hash found in /etc/shadow, to providing full-strength password hashing for multi-user application.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-passlib (package-with-python2 python-passlib)) @@ -487,7 +483,7 @@ John the Ripper).") ;; "sha2.c" is under BSD-3; ;; "blowfish.c" and "bcrypt.c" are under BSD-4; ;; the rest is under ISC. - (license (list isc bsd-3 bsd-4)))) + (license (list license:isc license:bsd-3 license:bsd-4)))) (define-public python2-py-bcrypt (package-with-python2 python-py-bcrypt)) @@ -517,7 +513,7 @@ John the Ripper).") providing both client and server functionality. While it leverages a Python C extension for low level cryptography (PyCrypto), Paramiko itself is a pure Python interface around SSH networking concepts.") - (license lgpl2.1+))) + (license license:lgpl2.1+))) (define-public python2-paramiko (package-with-python2 python-paramiko)) @@ -602,7 +598,7 @@ making them easy to handle and incorporate into other protocols.") (synopsis "Cassandra Cluster Manager") (description "A script/library to create, launch and remove an Apache Cassandra cluster on localhost.") - (license asl2.0))) + (license license:asl2.0))) (define-public python2-ccm (package-with-python2 python-ccm)) @@ -656,7 +652,7 @@ using Python 2.4 or higher and provides access to the Olson timezone database.") - a Python interface to the CLDR (Common Locale Data Repository), providing access to various locale display names, localized number and date formatting, etc. ") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-babel (package-with-python2 python-babel)) @@ -688,7 +684,7 @@ etc. ") earlier versions of Python. The function checks the hostname in the certificate returned by the server to which a connection has been established, and verifies that it matches the intended target hostname.") - (license psfl))) + (license license:psfl))) (define-public python-h5py (package @@ -734,7 +730,7 @@ HDF5 library from Python. The low-level interface is intended to be a complete wrapping of the HDF5 API, while the high-level component supports access to HDF5 files, datasets and groups using established Python and NumPy concepts.") - (license bsd-3) + (license license:bsd-3) (properties `((python2-variant . ,(delay python2-h5py)))))) (define-public python2-h5py @@ -826,7 +822,7 @@ test hooks, project installation, platform-specific details, Python 3 support.") - (license psfl))) + (license license:psfl))) (define-public python2-setuptools (package-with-python2 python-setuptools)) @@ -864,7 +860,7 @@ Python 3 support.") "Pycrypto is a collection of both secure hash functions (such as SHA256 and RIPEMD160), and various encryption algorithms (AES, DES, RSA, ElGamal, etc.). The package is structured to make adding new modules easy.") - (license public-domain))) + (license license:public-domain))) (define-public python2-pycrypto (let ((pycrypto (package-with-python2 python-pycrypto))) @@ -900,7 +896,7 @@ etc.). The package is structured to make adding new modules easy.") service from python. It can be used in any application that needs safe password storage.") ;; "MIT" and PSF dual license - (license x11) + (license license:x11) (properties `((python2-variant . ,(delay python2-keyring)))))) (define-public python2-keyring @@ -932,7 +928,7 @@ functions for smoothing over the differences between the Python versions with the goal of writing Python code that is compatible on both Python versions. Six supports every Python version since 2.5. It is contained in only one Python file, so it can be easily copied into your project.") - (license x11))) + (license license:x11))) (define-public python2-six (package-with-python2 python-six)) @@ -956,7 +952,7 @@ Python file, so it can be easily copied into your project.") (description "The dateutil module provides powerful extensions to the standard datetime module, available in Python 2.3+.") - (license bsd-3) + (license license:bsd-3) (properties `((python2-variant . ,(delay python2-dateutil-2)))))) (define-public python2-dateutil-2 @@ -986,7 +982,7 @@ datetime module, available in Python 2.3+.") (description "The dateutil module provides powerful extensions to the standard datetime module, available in Python 2.3+.") - (license psfl))) + (license license:psfl))) (define-public python2-dateutil (package-with-python2 python-dateutil)) @@ -1011,7 +1007,7 @@ datetime module, available in Python 2.3+.") "Parse human-readable date/time text") (description "Parse human-readable date/time text.") - (license asl2.0) + (license license:asl2.0) (properties `((python2-variant . ,(delay python2-parsedatetime)))))) (define-public python2-parsedatetime @@ -1050,7 +1046,7 @@ structures designed to make working with structured (tabular, multidimensional, potentially heterogeneous) and time series data both easy and intuitive. It aims to be the fundamental high-level building block for doing practical, real world data analysis in Python.") - (license bsd-3) + (license license:bsd-3) (properties `((python2-variant . ,(delay python2-pandas)))))) (define-public python2-pandas @@ -1081,7 +1077,7 @@ doing practical, real world data analysis in Python.") This module attempts to fix a glaring hole in pytz, that there is no way to get the local timezone information, unless you know the zoneinfo name, and under several distributions that's hard or impossible to figure out.") - (license cc0))) + (license license:cc0))) (define-public python2-pysqlite (package @@ -1139,8 +1135,9 @@ Database API 2.0T.") (description "Mechanize implements stateful programmatic web browsing in Python, after Andy Lester’s Perl module WWW::Mechanize.") - (license (non-copyleft "file://COPYING" - "See COPYING in the distribution.")))) + (license (license:non-copyleft + "file://COPYING" + "See COPYING in the distribution.")))) (define-public python-simplejson @@ -1169,7 +1166,7 @@ library contained in Python 2.6, but maintains compatibility with Python 2.5 and (currently) has significant performance advantages, even without using the optional C extension for speedups. Simplejson is also supported on Python 3.3+.") - (license x11))) + (license license:x11))) (define-public python2-simplejson (package-with-python2 python-simplejson)) @@ -1194,7 +1191,7 @@ Python 3.3+.") (synopsis "Python extension wrapping the ICU C++ API") (description "PyICU is a python extension wrapping the ICU C++ API.") - (license x11) + (license license:x11) (properties `((python2-variant . ,(delay python2-pyicu)))))) (define-public python2-pyicu @@ -1227,7 +1224,7 @@ Python 3.3+.") It uses Accessibility (a11y) technologies to communicate with desktop applications. dogtail scripts are written in Python and executed like any other Python program.") - (license gpl2+))) + (license license:gpl2+))) (define-public python2-empy (package @@ -1262,7 +1259,7 @@ effect as a markup language. Also supported are callbacks via hooks, recording and playback via diversions, and dynamic, chainable filters. The system is highly configurable via command line options and embedded commands.") - (license lgpl2.1+))) + (license license:lgpl2.1+))) (define-public python2-element-tree (package @@ -1284,9 +1281,9 @@ commands.") (description "ElementTree is a Python library supporting lightweight XML processing.") (home-page "http://effbot.org/zone/element-index.htm") - (license (x11-style "http://docs.python.org/2/license.html" - "Like \"CWI LICENSE AGREEMENT FOR PYTHON \ -0.9.0 THROUGH 1.2\".")))) + (license (license:x11-style + "http://docs.python.org/2/license.html" + "Like \"CWI LICENSE AGREEMENT FOR PYTHON 0.9.0 THROUGH 1.2\".")))) (define-public python2-pybugz (package @@ -1313,7 +1310,7 @@ commands.") bug tracking system. It is meant as an aid to speed up interaction with the bug tracker.") (home-page "http://www.liquidx.net/pybugz/") - (license gpl2))) + (license license:gpl2))) (define-public python-enum34 (package @@ -1338,7 +1335,7 @@ bug tracker.") (description "Enum34 is the new Python stdlib enum module available in Python 3.4 backported for previous versions of Python from 2.4 to 3.3.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-enum34 (package-with-python2 python-enum34)) @@ -1365,7 +1362,7 @@ backported for previous versions of Python from 2.4 to 3.3.") (synopsis "Extended parse module") (description "Parse_type extends the python parse module.") - (license bsd-3))) + (license license:bsd-3))) (define-public python-parse (package @@ -1390,7 +1387,7 @@ backported for previous versions of Python from 2.4 to 3.3.") (description "Parse strings using a specification based on the Python format() syntax.") - (license x11))) + (license license:x11))) (define-public scons @@ -1417,7 +1414,7 @@ cross-platform substitute for the classic Make utility with integrated functionality similar to autoconf/automake and compiler caches such as ccache. In short, SCons is an easier, more reliable and faster way to build software.") - (license x11))) + (license license:x11))) (define-public python-extras (package @@ -1496,7 +1493,7 @@ matching them against a list of media-ranges.") (synopsis "Python testing library") (description "Nose extends the unittest library to make testing easier.") - (license lgpl2.0+))) + (license license:lgpl2.0+))) (define-public python2-nose (package-with-python2 python-nose)) @@ -1522,7 +1519,7 @@ matching them against a list of media-ranges.") (description "Unittest2 is a replacement for the unittest module in the Python standard library.") - (license psfl))) + (license license:psfl))) (define-public python2-unittest2 (package (inherit python-unittest2) @@ -1774,7 +1771,7 @@ subprocess and see the output as well as any file modifications.") "Testtools extends the Python standard library unit testing framework to provide matchers, more debugging information, and cross-Python compatibility.") - (license psfl))) + (license license:psfl))) (define-public python2-testtools (package-with-python2 python-testtools)) @@ -1802,7 +1799,7 @@ compatibility.") (description "Testscenarios provides clean dependency injection for Python unittest style tests.") - (license (list bsd-3 asl2.0)))) ; at the user's option + (license (list license:bsd-3 license:asl2.0)))) ; at the user's option (define-public python2-testscenarios (package-with-python2 python-testscenarios)) @@ -1829,7 +1826,7 @@ style tests.") (description "Testresources is an extension to Python's unittest to allow declarative use of resources by test cases.") - (license (list bsd-3 asl2.0)))) ; at the user's option + (license (list license:bsd-3 license:asl2.0)))) ; at the user's option (define-public python2-testresources (package-with-python2 python-testresources)) @@ -1858,7 +1855,7 @@ use of resources by test cases.") (description "Python-subunit is a Python implementation of the subunit test streaming protocol.") - (license (list bsd-3 asl2.0)))) ; at the user's option + (license (list license:bsd-3 license:asl2.0)))) ; at the user's option (define-public python2-subunit (package-with-python2 python-subunit)) @@ -1893,7 +1890,7 @@ protocol.") (description "Fixtures provides a way to create reusable state, useful when writing Python tests.") - (license (list bsd-3 asl2.0)))) ; at user's option + (license (list license:bsd-3 license:asl2.0)))) ; at user's option (define-public python2-fixtures-0.3.16 (package-with-python2 python-fixtures-0.3.16)) @@ -1923,7 +1920,7 @@ Python tests.") (description "Python Build Reasonableness (PBR) is a library that injects some useful and sensible default behaviors into your setuptools run.") - (license asl2.0))) + (license license:asl2.0))) (define-public python2-pbr-0.11 (package-with-python2 python-pbr-0.11)) @@ -1965,7 +1962,7 @@ and sensible default behaviors into your setuptools run.") (description "Python Build Reasonableness (PBR) is a library that injects some useful and sensible default behaviors into your setuptools run.") - (license asl2.0))) + (license license:asl2.0))) (define-public python2-pbr (package-with-python2 python-pbr)) @@ -1997,7 +1994,7 @@ and sensible default behaviors into your setuptools run.") (description "Fixtures provides a way to create reusable state, useful when writing Python tests.") - (license (list bsd-3 asl2.0)))) ; at user's option + (license (list license:bsd-3 license:asl2.0)))) ; at user's option (define-public python2-fixtures (package-with-python2 python-fixtures)) @@ -2028,7 +2025,7 @@ Python tests.") (description "Testrepository provides a database of test results which can be used as part of a developer's workflow to check things such as what tests have failed since the last commit or what tests are currently failing.") - (license (list bsd-3 asl2.0)))) ; at user's option + (license (list license:bsd-3 license:asl2.0)))) ; at user's option (define-public python2-testrepository (package-with-python2 python-testrepository)) @@ -2054,7 +2051,7 @@ have failed since the last commit or what tests are currently failing.") uses the code analysis tools and tracing hooks provided in the Python standard library to determine which lines are executable, and which have been executed.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-coverage (package-with-python2 python-coverage)) @@ -2081,7 +2078,7 @@ executed.") (description "Discover provides test discovery for unittest, a feature that has been backported from Python 2.7 for Python 2.4+.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-discover (package-with-python2 python-discover)) @@ -2112,7 +2109,7 @@ Behavior-driven development (or BDD) is an agile software development technique that encourages collaboration between developers, QA and non-technical or business participants in a software project. Behave uses tests written in a natural language style, backed up by Python code.") - (license x11))) + (license license:x11))) (define-public python-exif-read (package @@ -2133,7 +2130,7 @@ tests written in a natural language style, backed up by Python code.") (description "ExifRead is a Python library to extract EXIF data from tiff and jpeg files.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-exif-read (package-with-python2 python-exif-read)) @@ -2156,7 +2153,7 @@ files.") (synopsis "Python implementation of the JSON-LD specification") (description "PyLD is an implementation of the JSON-LD specification.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-pyld (package-with-python2 python-pyld)) @@ -2180,7 +2177,7 @@ files.") (description "Certifi is a Python library that contains a CA certificate bundle, which is used by the Requests library to verify HTTPS requests.") - (license asl2.0))) + (license license:asl2.0))) (define-public python2-certifi (package-with-python2 python-certifi)) @@ -2209,7 +2206,7 @@ is used by the Requests library to verify HTTPS requests.") composable way with as little code as necessary. Its name stands for \"Command Line Interface Creation Kit\". It's highly configurable but comes with sensible defaults out of the box.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-click (package-with-python2 python-click)) @@ -2273,7 +2270,7 @@ installed with a newer @code{pip} or with wheel's own command line utility.") (description "Requests is a Python HTTP client library. It aims to be easier to use than Python’s urllib2 library.") - (license asl2.0))) + (license license:asl2.0))) ;; Some software requires an older version of Requests, notably Docker ;; Compose. @@ -2309,7 +2306,7 @@ than Python’s urllib2 library.") information in a variety of version control systems in order to discover version numbers.") (home-page "https://github.com/habnabit/vcversioner") - (license isc))) + (license license:isc))) (define-public python2-vcversioner (package-with-python2 python-vcversioner)) @@ -2367,7 +2364,7 @@ useful when integrating with legacy code that doesn't support Unicode, or for ease of entry of non-Roman names on a US keyboard, or when constructing ASCII machine identifiers from human-readable Unicode strings that should still be somewhat intelligeble.") - (license gpl2+))) + (license license:gpl2+))) (define-public python2-unidecode (package-with-python2 python-unidecode)) @@ -2422,7 +2419,7 @@ somewhat intelligeble.") (description "Oauthlib is a generic, spec-compliant, thorough implementation of the OAuth request-signing logic.") - (license bsd-3) + (license license:bsd-3) (properties `((python2-variant . ,(delay python2-oauthlib)))))) (define-public python2-oauthlib @@ -2452,7 +2449,7 @@ OAuth request-signing logic.") (description "Itsdangerous provides various helpers to pass trusted data to untrusted environments and back.") - (license bsd-3) + (license license:bsd-3) (properties `((python2-variant . ,(delay python2-itsdangerous)))))) (define-public python2-itsdangerous @@ -2545,7 +2542,7 @@ object.") (description "Markupsafe provides an XML/HTML/XHTML markup safe string implementation for Python.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-markupsafe (package-with-python2 python-markupsafe)) @@ -2570,7 +2567,7 @@ for Python.") (description "Jinja2 is a small but fast and easy to use stand-alone template engine written in pure Python.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-jinja2 (package-with-python2 python-jinja2)) @@ -2620,7 +2617,7 @@ logic-free templating system Mustache.") In particular, joblib offers: transparent disk-caching of the output values and lazy re-evaluation (memoize pattern), easy simple parallel computing logging and tracing of the execution.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-joblib (package-with-python2 python-joblib)) @@ -2651,7 +2648,7 @@ formats, such as HTML, XML, and LaTeX. For input Docutils supports reStructuredText.") ;; Most of the source code is public domain, but some source files are ;; licensed under the PFSL, BSD 2-clause, and GPLv3+ licenses. - (license (list public-domain psfl bsd-2 gpl3+)))) + (license (list license:public-domain license:psfl license:bsd-2 license:gpl3+)))) (define-public python2-docutils (package-with-python2 python-docutils)) @@ -2674,7 +2671,7 @@ reStructuredText.") (synopsis "Syntax highlighting") (description "Pygments is a syntax highlighting package written in Python.") - (license bsd-2))) + (license license:bsd-2))) (define-public python2-pygments (package-with-python2 python-pygments)) @@ -2703,7 +2700,7 @@ reStructuredText.") (description "Sphinx is a tool that makes it easy to create documentation for Python projects or other documents consisting of multiple reStructuredText sources.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-sphinx (package-with-python2 python-sphinx)) @@ -2763,7 +2760,7 @@ sources.") (description "Feedgenerator-py3k is a standalone version of Django's feedgenerator, which can produce feeds in RSS 2.0, RSS 0.91, and Atom formats.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-feedgenerator (package-with-python2 python-feedgenerator)) @@ -2838,7 +2835,7 @@ interested parties to subscribe to events, or \"signals\".") "Pelican is a tool to generate a static blog from reStructuredText, Markdown input files, and more. Pelican uses Jinja2 for templating and is very extensible.") - (license agpl3+))) + (license license:agpl3+))) (define-public python-scikit-learn (package @@ -2882,7 +2879,7 @@ and is very extensible.") (description "Scikit-learn provides simple and efficient tools for data mining and data analysis.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-scikit-learn (let ((scikit (package-with-python2 python-scikit-learn))) @@ -2922,7 +2919,7 @@ mining and data analysis.") (synopsis "Image processing in Python") (description "Scikit-image is a collection of algorithms for image processing.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-scikit-image (let ((scikit-image (package-with-python2 python-scikit-image))) @@ -2989,7 +2986,7 @@ mining and data analysis.") "RQ (Redis Queue) is a simple Python library for queueing jobs and processing them in the background with workers. It is backed by Redis and it is designed to have a low barrier to entry.") - (license bsd-2))) + (license license:bsd-2))) (define-public python2-rq (package-with-python2 python-rq)) @@ -3023,7 +3020,7 @@ is designed to have a low barrier to entry.") (description "Cython is an optimising static compiler for both the Python programming language and the extended Cython programming language. It makes writing C extensions for Python as easy as Python itself.") - (license asl2.0) + (license license:asl2.0) (properties `((python2-variant . ,(delay python2-cython)))))) (define-public python2-cython @@ -3099,7 +3096,7 @@ with Python. It contains among other things: a powerful N-dimensional array object, sophisticated (broadcasting) functions, tools for integrating C/C++ and Fortran code, useful linear algebra, Fourier transform, and random number capabilities.") - (license bsd-3))) + (license license:bsd-3))) (define python2-numpy-bootstrap (package-with-python2 python-numpy-bootstrap)) @@ -3136,7 +3133,7 @@ capabilities.") "FaST-LMM, which stands for Factored Spectrally Transformed Linear Mixed Models, is a program for performing both single-SNP and SNP-set genome-wide association studies (GWAS) on extremely large data sets.") - (license asl2.0))) + (license license:asl2.0))) (define-public python-numpy (package (inherit python-numpy-bootstrap) @@ -3279,7 +3276,7 @@ that client code uses to construct the grammar directly in Python code.") "Numpy's Sphinx extensions") (description "Sphinx extension to support docstrings in Numpy format.") - (license bsd-2))) + (license license:bsd-2))) (define-public python2-numpydoc (package-with-python2 python-numpydoc)) @@ -3444,7 +3441,7 @@ quality figures in a variety of hardcopy formats and interactive environments across platforms. Matplotlib can be used in Python scripts, the python and ipython shell, web application servers, and six graphical user interface toolkits.") - (license psfl) + (license license:psfl) (properties `((python2-variant . ,(delay python2-matplotlib)))))) (define-public python2-matplotlib @@ -3493,7 +3490,7 @@ toolkits.") can, for example, efficiently read whole PLINK *.bed/bim/fam files or parts of those files. It can also efficiently manipulate ranges of integers using set operators such as union, intersection, and difference.") - (license asl2.0))) + (license license:asl2.0))) (define-public python-rpy2 (package @@ -3522,7 +3519,7 @@ operators such as union, intersection, and difference.") low-level interface to R from Python, a proposed high-level interface, including wrappers to graphical libraries, as well as R-like structures and functions.") - (license gpl3+))) + (license license:gpl3+))) (define-public python2-rpy2 (let ((rpy2 (package-with-python2 python-rpy2))) @@ -3625,7 +3622,7 @@ atlas_libs = openblas (description "The SciPy library is one of the core packages that make up the SciPy stack. It provides many user-friendly and efficient numerical routines such as routines for numerical integration and optimization.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-scipy (package-with-python2 python-scipy)) @@ -3660,7 +3657,7 @@ gives application developers the full power and flexibility of SQL. It provides a full suite of well known enterprise-level persistence patterns, designed for efficient and high-performing database access, adapted into a simple and Pythonic domain language.") - (license x11))) + (license license:x11))) (define-public python2-sqlalchemy (package-with-python2 python-sqlalchemy)) @@ -3723,7 +3720,7 @@ SQLAlchemy Database Toolkit for Python.") "The python-distutils-extra module enables you to easily integrate gettext support, themed icons, and scrollkeeper-based documentation into Python's distutils.") - (license gpl2))) + (license license:gpl2))) (define-public python2-distutils-extra (package-with-python2 python-distutils-extra)) @@ -3760,7 +3757,7 @@ Python's distutils.") (description "The elib.intl module provides enhanced internationalization (I18N) services for your Python modules and applications.") - (license lgpl3+))) + (license license:lgpl3+))) (define-public python-pillow (package @@ -3819,7 +3816,7 @@ efficient internal representation, and fairly powerful image processing capabilities. The core image library is designed for fast access to data stored in a few basic pixel formats. It should provide a solid foundation for a general image processing tool.") - (license (x11-style + (license (license:x11-style "http://www.pythonware.com/products/pil/license.htm" "The PIL Software License")))) @@ -3868,7 +3865,7 @@ a general image processing tool.") "Pycparser is a complete parser of the C language, written in pure Python using the PLY parsing library. It parses C code into an AST and can serve as a front-end for C compilers or analysis tools.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-pycparser (package-with-python2 python-pycparser)) @@ -4011,7 +4008,7 @@ support for Python 3 and PyPy. It is based on cffi.") Python bindings and object-oriented API for cairo. Cairo is a 2D vector graphics library with support for multiple backends including image buffers, PNG, PostScript, PDF, and SVG file output.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-cairocffi (package-with-python2 python-cairocffi)) @@ -4068,7 +4065,7 @@ etc. The core of this module is a decorator factory.") "A Python package for Distributed Resource Management (DRM) job submission and control. This package is an implementation of the DRMAA 1.0 Python language binding specification.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-drmaa (package-with-python2 python-drmaa)) @@ -4099,7 +4096,7 @@ Python language binding specification.") "Gridmap is a Python package to allow you to easily create jobs on the cluster directly from Python. You can directly map Python functions onto the cluster without needing to write any wrapper code yourself.") - (license gpl3+))) + (license license:gpl3+))) (define-public python2-gridmap (package-with-python2 python-gridmap)) @@ -4129,7 +4126,7 @@ cluster without needing to write any wrapper code yourself.") controlling them; and responding to expected patterns in their output. Pexpect works like Don Libes’ Expect. Pexpect allows your script to spawn a child application and control it as if a human were typing commands.") - (license isc))) + (license license:isc))) (define-public python2-pexpect (package-with-python2 python-pexpect)) @@ -4241,7 +4238,7 @@ functions, akin to Python’s built-in generic functions like @code{len()}, these generic functions use simple lookup tables, akin to those used by e.g. @code{pickle.dump()} and other generic functions found in the Python standard library.") - (license zpl2.1))) + (license license:zpl2.1))) (define-public python2-simplegeneric (package-with-python2 python-simplegeneric)) @@ -4264,7 +4261,7 @@ standard library.") (synopsis "Vestigial utilities from IPython") (description "This package provides retired utilities from IPython.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-ipython-genutils (package-with-python2 python-ipython-genutils)) @@ -4300,7 +4297,7 @@ callbacks. The package also includes a mechanism to use traitlets for configuration, loading values from files or from command line arguments. This is a distinct layer on top of traitlets, so you can use traitlets in your code without using the configuration machinery.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-traitlets (package-with-python2 python-traitlets)) @@ -4398,7 +4395,7 @@ without using the configuration machinery.") Powerful interactive shells, a browser-based notebook, support for interactive data visualization, embeddable interpreters and tools for parallel computing.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-ipython (let ((ipython (package-with-python2 python-ipython))) @@ -4443,7 +4440,7 @@ computing.") (description "Python-isodate is a python module for parsing and formatting ISO 8601 dates, time and duration.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-isodate (package-with-python2 python-isodate)) @@ -4481,21 +4478,21 @@ and written in Python.") (define-public python-urwid (package (name "python-urwid") - (version "1.3.0") + (version "1.3.1") (source (origin (method url-fetch) (uri (pypi-uri "urwid" version)) (sha256 (base32 - "18mb0yy94sjc434rd61m2sfnw27sa0nyrszpj5a9r9zh7fnlzw19")))) + "18cnd1wdjcas08x5qwa5ayw6jsfcn33w4d9f7q3s29fy6qzc1kng")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases ;; Disable failing test. Bug filed upstream: ;; https://github.com/wardi/urwid/issues/164 - ;; TODO: check again for python-urwid > 1.3.0 or python > 3.4.3. + ;; TODO: check again for python-urwid > 1.3.1 or python > 3.4.3. (add-after 'unpack 'disable-failing-test (lambda _ (substitute* "urwid/tests/test_event_loops.py" @@ -4507,7 +4504,7 @@ and written in Python.") (description "Urwid is a curses-based UI/widget library for Python. It includes many features useful for text console applications.") - (license lgpl2.1+))) + (license license:lgpl2.1+))) (define-public python2-urwid (package-with-python2 python-urwid)) @@ -4515,14 +4512,18 @@ features useful for text console applications.") (define-public python-urwidtrees (package (name "python-urwidtrees") - (version "1.0.1.1") + (version "1.0.2") (source (origin (method url-fetch) - (uri (pypi-uri "urwidtrees" version)) + ;; package author intends on distributing via github rather than pypi: + ;; https://github.com/pazz/alot/issues/877#issuecomment-230173331 + (uri (string-append "https://github.com/pazz/urwidtrees/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1zcvy12s7h3fazf33d6y7b4v19p8hg95xqwhqlmw6jz9fq76v9h8")))) + "0d30lyd3s2a97rhqfax5w9ssqds2z6aydqx3c6j2c2lk3cb4ngvh")))) (build-system python-build-system) (arguments '(#:tests? #f)) ; no tests @@ -4531,7 +4532,7 @@ features useful for text console applications.") (synopsis "Tree widgets for urwid") (description "Urwidtrees is a Widget Container API for the @code{urwid} toolkit. Use it to build trees of widgets.") - (license gpl3+))) + (license license:gpl3+))) (define-public python2-urwidtrees (package-with-python2 python-urwidtrees)) @@ -4639,7 +4640,7 @@ translate the complete SQLite API into Python.") (description "The lxml XML toolkit is a Pythonic binding for the C libraries libxml2 and libxslt.") - (license bsd-3))) ; and a few more, see LICENSES.txt + (license license:bsd-3))) ; and a few more, see LICENSES.txt (define-public python2-lxml (package-with-python2 python-lxml)) @@ -4705,7 +4706,7 @@ converts incoming documents to Unicode and outgoing documents to UTF-8.") "Cssutils is a Python package for parsing and building CSS Cascading Style Sheets. Currently it provides a DOM only and no rendering options.") - (license lgpl3+))) + (license license:lgpl3+))) (define-public python-cssselect (package @@ -4733,7 +4734,7 @@ options.") "Cssselect ia a Python module that parses CSS3 Selectors and translates them to XPath 1.0 expressions. Such expressions can be used in lxml or another XPath engine to find the matching elements in an XML or HTML document.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-cssselect (package-with-python2 python-cssselect)) @@ -4789,7 +4790,7 @@ interfaces in an easy and portable manner.") (description "NetworkX is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-networkx (package-with-python2 python-networkx)) @@ -4838,7 +4839,7 @@ Python style, together with a fast and comfortable execution environment.") graphics in Python. It is built on top of matplotlib and tightly integrated with the PyData stack, including support for numpy and pandas data structures and statistical routines from scipy and statsmodels.") - (license bsd-3) + (license license:bsd-3) (properties `((python2-variant . ,(delay python2-seaborn)))))) (define-public python2-seaborn @@ -4871,7 +4872,7 @@ and statistical routines from scipy and statsmodels.") "SymPy is a Python library for symbolic mathematics. It aims to become a full-featured computer algebra system (CAS) while keeping the code as simple as possible in order to be comprehensible and easily extensible.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-sympy (package-with-python2 python-sympy)) @@ -4936,7 +4937,7 @@ as possible in order to be comprehensible and easily extensible.") "The Python X Library is intended to be a fully functional X client library for Python programs. It is useful to implement low-level X clients. It is written entirely in Python.") - (license gpl2+))) + (license license:gpl2+))) (define-public python-singledispatch (package @@ -4988,7 +4989,7 @@ originally developed at FriendFeed. By using non-blocking network I/O, Tornado can scale to tens of thousands of open connections, making it ideal for long polling, WebSockets, and other applications that require a long-lived connection to each user.") - (license asl2.0) + (license license:asl2.0) (properties `((python2-variant . ,(delay python2-tornado)))))) (define-public python2-tornado @@ -5023,7 +5024,7 @@ connection to each user.") (description "Python-backports-abc provides a backport of additions to the 'collections.abc' module in Python-3.5.") - (license psfl))) + (license license:psfl))) (define-public python2-backports-abc (package-with-python2 python-backports-abc)) @@ -5059,7 +5060,7 @@ connection to each user.") (description "Waf is a Python-based framework for configuring, compiling and installing applications.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-waf (package-with-python2 python-waf)) @@ -5091,7 +5092,7 @@ applications.") (synopsis "Python bindings for 0MQ") (description "PyZMQ is the official Python binding for the ZeroMQ messaging library.") - (license bsd-4))) + (license license:bsd-4))) (define-public python2-pyzmq (package-with-python2 python-pyzmq)) @@ -5298,7 +5299,7 @@ complexity of Python source code.") (synopsis "Markdown parser in pure Python") (description "This package provides a fast markdown parser in pure Python.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-mistune (package-with-python2 python-mistune)) @@ -5331,7 +5332,7 @@ Python.") Markdown. The library features international input, various Markdown extensions, and several HTML output formats. A command line wrapper markdown_py is also provided to convert Markdown files to HTML.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-markdown (package-with-python2 python-markdown)) @@ -5364,7 +5365,7 @@ markdown_py is also provided to convert Markdown files to HTML.") (description "This package provides a Python library used to launch a subprocess in a pseudo terminal (pty), and interact with both the process and its pty.") - (license isc))) + (license license:isc))) (define-public python2-ptyprocess (package-with-python2 python-ptyprocess)) @@ -5396,7 +5397,7 @@ pseudo terminal (pty), and interact with both the process and its pty.") (synopsis "Terminals served to term.js using Tornado websockets") (description "This package provides a Tornado websocket backend for the term.js Javascript terminal emulator library.") - (license bsd-2) + (license license:bsd-2) (properties `((python2-variant . ,(delay python2-terminado)))))) (define-public python2-terminado @@ -5435,8 +5436,9 @@ supports reading and writinfg of TrueType/OpenType fonts, reading and writing of AFM files, reading (and partially writing) of PS Type 1 fonts. The package also contains a tool called “TTX” which converts TrueType/OpenType fonts to and from an XML-based format.") - (license (non-copyleft "file://LICENSE.txt" - "See LICENSE.txt in the distribution.")))) + (license (license:non-copyleft + "file://LICENSE.txt" + "See LICENSE.txt in the distribution.")))) (define-public python2-fonttools (package-with-python2 python-fonttools)) @@ -5462,7 +5464,7 @@ from an XML-based format.") or create documents in LilyPond format. A command line program ly is also provided that can be used to do various manipulations with LilyPond files.") (home-page "https://pypi.python.org/pypi/python-ly") - (license gpl2+))) + (license license:gpl2+))) (define-public python-appdirs (package @@ -5495,7 +5497,7 @@ should be stored on various operating systems.") (define-public python-llfuse (package (name "python-llfuse") - (version "1.1") + (version "1.1.1") (source (origin (method url-fetch) (uri (string-append @@ -5503,7 +5505,7 @@ should be stored on various operating systems.") "llfuse-" version ".tar.bz2")) (sha256 (base32 - "1ywzbqkahrfl9kkcasxrmgilv6fybapvh6pqvimimnfh7sgxal72")))) + "0v6vj9mb286njgd1szg9hz2qdh5f3vkhsvajripfcqg458av310v")))) (build-system python-build-system) (inputs `(("fuse" ,fuse) @@ -5515,7 +5517,7 @@ should be stored on various operating systems.") (description "Python-LLFUSE is a set of Python bindings for the low level FUSE API.") (home-page "https://bitbucket.org/nikratio/python-llfuse/") - (license lgpl2.0+) + (license license:lgpl2.0+) (properties `((python2-variant . ,(delay python2-llfuse)))))) (define-public python2-llfuse @@ -5537,25 +5539,25 @@ should be stored on various operating systems.") "1imlqw9b73086y97izr036f58pgc5akv4ihc2rrf8j5h75jbrlaa")))) ;; Python-LLFUSE < 0.42 includes underscore.js, which is MIT (expat) ;; licensed. The rest of the package is licensed under LGPL2.0 or later. - (license (list license:expat lgpl2.0+)))) + (license (list license:expat license:lgpl2.0+)))) (define-public python-msgpack (package (name "python-msgpack") - (version "0.4.7") + (version "0.4.8") (source (origin (method url-fetch) (uri (pypi-uri "msgpack-python" version)) (sha256 (base32 - "0syd7bs83qs9qmxw540jbgsildbqk4yb57fmrlns1021llli402y")))) + "11pqk5braa6wndpnr1dhg64js82vjgxnm0lzy73rwl831zgijaqs")))) (build-system python-build-system) (synopsis "MessagePack (de)serializer") (description "MessagePack is a fast, compact binary serialization format, suitable for similar data to JSON. This package provides CPython bindings for reading and writing MessagePack data.") (home-page "https://pypi.python.org/pypi/msgpack-python/") - (license asl2.0) + (license license:asl2.0) (properties `((python2-variant . ,(delay python2-msgpack)))))) (define-public python2-msgpack @@ -5590,7 +5592,7 @@ reading and writing MessagePack data.") (description "A Python library for representing and manipulating IPv4, IPv6, CIDR, EUI and MAC network addresses.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-netaddr (package-with-python2 python-netaddr)) @@ -5622,7 +5624,7 @@ and MAC network addresses.") "The aim of the wrapt module is to provide a transparent object proxy for Python, which can be used as the basis for the construction of function wrappers and decorator functions.") - (license bsd-2))) + (license license:bsd-2))) (define-public python2-wrapt (package-with-python2 python-wrapt)) @@ -5673,7 +5675,7 @@ and MAC network addresses.") (description "This module provides a monotonic() function which returns the value (in fractional seconds) of a clock which never goes backwards.") - (license asl2.0))) + (license license:asl2.0))) (define-public python2-monotonic (package-with-python2 python-monotonic)) @@ -5726,10 +5728,10 @@ object to help create WSGI responses.") (home-page "http://www.python-excel.org/") (synopsis "Library for extracting data from Excel files") (description "This packages provides a library to extract data from -spreadsheets using Microsoft Excel® proprietary file formats @samp{.xls} and +spreadsheets using Microsoft Excel proprietary file formats @samp{.xls} and @samp{.xlsx} (versions 2.0 onwards). It has support for Excel dates and is Unicode-aware. It is not intended as an end-user tool.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-xlrd (package-with-python2 python-xlrd)) @@ -5757,7 +5759,7 @@ Unicode-aware. It is not intended as an end-user tool.") tables. PrettyTable allows for selection of which columns are to be printed, independent alignment of columns (left or right justified or centred) and printing of sub-tables by specifying a row range.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-prettytable (package-with-python2 python-prettytable)) @@ -5814,7 +5816,7 @@ printing of sub-tables by specifying a row range.") (synopsis "Hierarchical datasets for Python") (description "PyTables is a package for managing hierarchical datasets and designed to efficently cope with extremely large amounts of data.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-tables (package-with-python2 python-tables)) @@ -5837,7 +5839,7 @@ designed to efficently cope with extremely large amounts of data.") (description "This is an implementation of ASN.1 types and codecs in Python. It is suitable for a wide range of protocols based on the ASN.1 specification.") - (license bsd-2))) + (license license:bsd-2))) (define-public python2-pyasn1 (package-with-python2 python-pyasn1)) @@ -5863,35 +5865,38 @@ suitable for a wide range of protocols based on the ASN.1 specification.") (description "Pyasn1-modules is a collection of Python modules providing ASN.1 types and implementations of ASN.1-based codecs and protocols.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-pyasn1-modules (package-with-python2 python-pyasn1-modules)) -(define-public python2-ipaddress +(define-public python-ipaddress (package - (name "python2-ipaddress") - (version "1.0.14") - (source - (origin - (method url-fetch) - (uri (string-append "https://pypi.python.org/packages/source/i/" - "ipaddress/ipaddress-" version ".tar.gz")) - (sha256 - (base32 - "0givid4963n57nsjibms2fc347zmcs188q1hw9al1dkc9kj4nvr2")))) + (name "python-ipaddress") + (version "1.0.16") + (source (origin + (method url-fetch) + (uri (pypi-uri "ipaddress" version)) + (sha256 + (base32 + "1c3imabdrw8nfksgjjflzg7h4ynjckqacb188rf541m74arq4cas")))) (build-system python-build-system) - (arguments - `(#:tests? #f ; no tests - #:python ,python-2)) (home-page "https://github.com/phihag/ipaddress") (synopsis "IP address manipulation library") (description - "This package provides a fast, lightweight IPv4/IPv6 manipulation library -in Python. This library is used to create, poke at, and manipulate IPv4 and -IPv6 addresses and networks. This is a port of the Python 3.3 ipaddress -module to older versions of Python.") - (license psfl))) + "This package provides a fast, lightweight IPv4/IPv6 manipulation library + in Python. This library is used to create, poke at, and manipulate IPv4 and + IPv6 addresses and networks. This is a port of the Python 3.3 ipaddress + module to older versions of Python.") + (license license:psfl) + (properties `((python2-variant . ,(delay python2-ipaddress)))))) + +(define-public python2-ipaddress + (let ((base (package-with-python2 (strip-python2-variant python-ipaddress)))) + (package (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) (define-public python2-ipaddr (package @@ -5920,7 +5925,7 @@ IPv6 addresses and networks. For new implementations you may prefer to use the standard module @code{ipaddress}, which was introduced in Python 3.3 and backported to older versions of Python.") - (license asl2.0))) + (license license:asl2.0))) (define-public python-idna (package @@ -5947,7 +5952,7 @@ from the earlier standard from 2003. The library is also intended to act as a suitable drop-in replacement for the “encodings.idna” module that comes with the Python standard library but currently only supports the older 2003 specification.") - (license bsd-4))) + (license license:bsd-4))) (define-public python2-idna (package-with-python2 python-idna)) @@ -5974,7 +5979,7 @@ specification.") technique for writing tests. You may hear the term mixed up with mocks, fakes, or doubles. Basically, a stub is an object that returns pre-canned responses, rather than doing any computation.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-pretend (package-with-python2 python-pretend)) @@ -5998,7 +6003,7 @@ responses, rather than doing any computation.") (description "This package contains test vectors for the cryptography package.") ;; Distributed under either BSD-3 or ASL2.0 - (license (list bsd-3 asl2.0)))) + (license (list license:bsd-3 license:asl2.0)))) (define-public python2-cryptography-vectors (package-with-python2 python-cryptography-vectors)) @@ -6040,7 +6045,7 @@ library” for Python. The package includes both high level recipes, and low level interfaces to common cryptographic algorithms such as symmetric ciphers, message digests and key derivation functions.") ;; Distributed under either BSD-3 or ASL2.0 - (license (list bsd-3 asl2.0)) + (license (list license:bsd-3 license:asl2.0)) (properties `((python2-variant . ,(delay python2-cryptography)))))) (define-public python2-cryptography @@ -6079,7 +6084,7 @@ message digests and key derivation functions.") (description "PyOpenSSL is a high-level wrapper around a subset of the OpenSSL library.") - (license asl2.0))) + (license license:asl2.0))) (define-public python2-pyopenssl (package-with-python2 python-pyopenssl)) @@ -6151,7 +6156,7 @@ similar hash values, which allows for the detection of similar objects by comparing their hash values. The byte stream should have a sufficient amount of complexity; for example, a byte stream of identical bytes will not generate a hash value.") - (license asl2.0))) + (license license:asl2.0))) (define-public python2-tlsh (package @@ -6198,7 +6203,7 @@ a hash value.") "This package provides Python bindings to libarchive, a C library to access possibly compressed archives in many different formats. It uses Python's @code{ctypes} foreign function interface (FFI).") - (license lgpl2.0+))) + (license license:lgpl2.0+))) (define-public python2-libarchive-c (package-with-python2 python-libarchive-c)) @@ -6269,7 +6274,7 @@ Debian-related files, such as: @end enumerate\n") ;; Modules are either GPLv2+ or GPLv3+. - (license gpl3+))) + (license license:gpl3+))) (define-public python2-debian (package-with-python2 python-debian)) @@ -6296,7 +6301,7 @@ Debian-related files, such as: (description "This package provides @code{chardet}, a Python module that can automatically detect a wide range of file encodings.") - (license lgpl2.1+))) + (license license:lgpl2.1+))) (define-public python2-chardet (package-with-python2 python-chardet)) @@ -6357,7 +6362,7 @@ programatically with command-line parsers like @code{getopt} and use by applications which are unaware of any subscribers to their events. It is a simple event-dispatching system on which more sophisticated event dispatching systems can be built.") - (license zpl2.1))) + (license license:zpl2.1))) (define-public python2-zope-event (package-with-python2 python-zope-event)) @@ -6383,7 +6388,7 @@ methodology") (description "Zope.interface provides an implementation of \"object interfaces\" for Python. Interfaces are a mechanism for labeling objects as conforming to a given API or contract.") - (license zpl2.1))) + (license license:zpl2.1))) (define-public python2-zope-interface (package-with-python2 python-zope-interface)) @@ -6410,7 +6415,7 @@ conforming to a given API or contract.") (synopsis "Zope exceptions") (description "Zope.exceptions provides general-purpose exception types that have uses outside of the Zope framework.") - (license zpl2.1))) + (license license:zpl2.1))) (define-public python2-zope-exceptions (package-with-python2 python-zope-exceptions)) @@ -6436,7 +6441,7 @@ that have uses outside of the Zope framework.") (synopsis "Zope testing helpers") (description "Zope.testing provides a number of testing utilities for HTML forms, HTTP servers, regular expressions, and more.") - (license zpl2.1))) + (license license:zpl2.1))) (define-public python2-zope-testing (package-with-python2 python-zope-testing)) @@ -6466,7 +6471,7 @@ forms, HTTP servers, regular expressions, and more.") (synopsis "Zope testrunner script") (description "Zope.testrunner provides a script for running Python tests.") - (license zpl2.1))) + (license license:zpl2.1))) (define-public python2-zope-testrunner (let ((base (package-with-python2 python-zope-testrunner))) @@ -6498,7 +6503,7 @@ tests.") (synopsis "Message identifiers for internationalization") (description "Zope.i18nmessageid provides facilities for declaring internationalized messages within program source text.") - (license zpl2.1))) + (license license:zpl2.1))) (define-public python2-zope-i18nmessageid (package-with-python2 python-zope-i18nmessageid)) @@ -6525,7 +6530,7 @@ internationalized messages within program source text.") (synopsis "Zope data schemas") (description "Zope.scheme provides extensions to zope.interface for defining data schemas.") - (license zpl2.1))) + (license license:zpl2.1))) (define-public python2-zope-schema (package-with-python2 python-zope-schema)) @@ -6550,7 +6555,7 @@ defining data schemas.") (synopsis "Zope Configuration Markup Language") (description "Zope.configuration implements ZCML, the Zope Configuration Markup Language.") - (license zpl2.1))) + (license license:zpl2.1))) (define-public python2-zope-configuration (package-with-python2 python-zope-configuration)) @@ -6577,7 +6582,7 @@ Proxies are special objects which serve as mostly-transparent wrappers around another object, intervening in the apparent behavior of the wrapped object only when necessary to apply the policy (e.g., access checking, location brokering, etc.) for which the proxy is responsible.") - (license zpl2.1))) + (license license:zpl2.1))) (define-public python2-zope-proxy (package-with-python2 python-zope-proxy)) @@ -6602,7 +6607,7 @@ brokering, etc.) for which the proxy is responsible.") (synopsis "Zope location library") (description "Zope.location implements the concept of \"locations\" in Zope3, which are are special objects that have a structural location.") - (license zpl2.1))) + (license license:zpl2.1))) (define-public python2-zope-location (package-with-python2 python-zope-location)) @@ -6632,7 +6637,7 @@ Zope3, which are are special objects that have a structural location.") (synopsis "Zope security framework") (description "Zope.security provides a generic mechanism to implement security policies on Python objects.") - (license zpl2.1))) + (license license:zpl2.1))) (define-public python2-zope-security (let ((zope-security (package-with-python2 python-zope-security))) @@ -6671,7 +6676,7 @@ security policies on Python objects.") (description "Zope.component represents the core of the Zope Component Architecture. Together with the zope.interface package, it provides facilities for defining, registering and looking up components.") - (license zpl2.1))) + (license license:zpl2.1))) (define-public python2-zope-component (package-with-python2 python-zope-component)) @@ -6708,7 +6713,7 @@ facilities for defining, registering and looking up components.") (description "A Python wrapper for the dialog utility. Its purpose is to provide an easy to use, pythonic and comprehensive Python interface to dialog. This allows one to make simple text-mode user interfaces on Unix-like systems") - (license lgpl2.1) + (license license:lgpl2.1) (properties `((python2-variant . ,(delay python2-pythondialog)))))) (define-public python2-pythondialog @@ -6770,7 +6775,7 @@ powerful debugger, full-featured request and response objects, HTTP utilities to handle entity tags, cache control headers, HTTP dates, cookie handling, file uploads, a powerful URL routing system and a bunch of community-contributed addon modules.") - (license x11))) + (license license:x11))) (define-public python2-werkzeug (package-with-python2 python-werkzeug)) @@ -6800,7 +6805,7 @@ writer: an ini file round tripper. Its main feature is that it is very easy to use, with a straightforward programmer’s interface and a simple syntax for config files.") (home-page "https://github.com/DiffSK/configobj") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-configobj (package-with-python2 python-configobj)) @@ -6852,7 +6857,7 @@ based on PyOpenSSL. PyOpenSSL provides a more fully featured SSL implementation over the default provided with Python and importantly enables full verification of the SSL peer.") (home-page "https://github.com/cedadev/ndg_httpsclient/") - (license bsd-3))) + (license license:bsd-3))) ;; python2-openssl requires special care, so package-with-python2 is ;; insufficient. @@ -6889,7 +6894,7 @@ of the SSL peer.") provides utilities for common tasks involving decorators and context managers. It also contains additional features that are not part of the standard library.") - (license psfl))) + (license license:psfl))) (define-public python2-contextlib2 (package-with-python2 python-contextlib2)) @@ -6911,7 +6916,7 @@ the standard library.") (synopsis "Python module for creating simple ASCII tables") (description "Texttable is a Python module for creating simple ASCII tables.") - (license lgpl2.1+))) + (license license:lgpl2.1+))) (define-public python2-texttable (package-with-python2 python-texttable)) @@ -6936,7 +6941,7 @@ tables.") (synopsis "WebSocket client for Python") (description "The Websocket-client module provides the low level APIs for WebSocket usage in Python programs.") - (license lgpl2.1+))) + (license license:lgpl2.1+))) (define-public python2-websocket-client (package-with-python2 python-websocket-client)) @@ -6985,7 +6990,7 @@ for atomic filesystem operations.") (description "This is a toolbelt of useful classes and functions to be used with python-requests.") (home-page "https://github.com/sigmavirus24/requests-toolbelt") - (license asl2.0))) + (license license:asl2.0))) (define-public python-click-threading (package @@ -7226,7 +7231,7 @@ processes across test runs.") (description "The icalendar package is a parser/generator of iCalendar files for use with Python.") (home-page "https://github.com/collective/icalendar") - (license bsd-2))) + (license license:bsd-2))) (define-public python-sphinxcontrib-newsfeed (package @@ -7246,7 +7251,7 @@ files for use with Python.") (description "Sphinxcontrib-newsfeed is an extension for adding a simple Blog, News or Announcements section to a Sphinx website.") (home-page "https://bitbucket.org/prometheus/sphinxcontrib-newsfeed") - (license bsd-2))) + (license license:bsd-2))) (define-public python-args (package @@ -7265,7 +7270,7 @@ Blog, News or Announcements section to a Sphinx website.") (synopsis "Command-line argument parser") (description "This library provides a Python module to parse command-line arguments.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-args (package-with-python2 python-args)) @@ -7290,7 +7295,7 @@ Blog, News or Announcements section to a Sphinx website.") "Clint is a Python module filled with a set of tools for developing command-line applications, including tools for colored and indented output, progress bar display, and pipes.") - (license isc))) + (license license:isc))) (define-public python2-clint (package-with-python2 python-clint)) @@ -7313,7 +7318,7 @@ output, progress bar display, and pipes.") (description "Astor is designed to allow easy manipulation of Python source via the Abstract Syntax Tree.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-astor (package-with-python2 python-astor)) @@ -7338,7 +7343,7 @@ Abstract Syntax Tree.") "This package provides a pure Python based parser generator, that also works with RPython. It is a more-or-less direct port of David Bazzley's PLY, with a new public API, and RPython support.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-rply (package-with-python2 python-rply)) @@ -7450,7 +7455,7 @@ authenticated session objects providing things like keep-alive.") "The concurrent.futures module provides a high-level interface for asynchronously executing callables. This package backports the concurrent.futures package from Python 3.2") - (license bsd-3))) + (license license:bsd-3))) (define-public python-urllib3 (package @@ -7506,7 +7511,7 @@ supports url redirection and retries, and also gzip and deflate decoding.") (description "Colorama is a Python library for rendering colored terminal text.") (home-page "https://pypi.python.org/pypi/colorama") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-colorama (package-with-python2 python-colorama)) @@ -7532,7 +7537,7 @@ encryption and decryption, signing and verifying signatures, and key generation according to PKCS#1 version 1.5. It can be used as a Python library as well as on the command line.") (home-page "http://stuvel.eu/rsa") - (license asl2.0))) + (license license:asl2.0))) (define-public python2-rsa (package-with-python2 python-rsa)) @@ -7643,7 +7648,7 @@ document.") (synopsis "Low-level interface to AWS") (description "Botocore is a Python library that provides a low-level interface to the Amazon Web Services (AWS) API.") - (license asl2.0))) + (license license:asl2.0))) (define-public python2-botocore (package-with-python2 python-botocore)) @@ -7677,7 +7682,7 @@ interface to the Amazon Web Services (AWS) API.") (synopsis "Command line client for AWS") (description "AWS CLI provides a unified command line interface to the Amazon Web Services (AWS) API.") - (license asl2.0))) + (license license:asl2.0))) (define-public python-hypothesis (package @@ -7699,7 +7704,7 @@ much larger range of examples than you would ever want to write by hand. It’s based on the Haskell library, Quickcheck, and is designed to integrate seamlessly into your existing Python unit testing work flow.") (home-page "https://github.com/DRMacIver/hypothesis") - (license mpl2.0) + (license license:mpl2.0) (properties `((python2-variant . ,(delay python2-hypothesis)))))) (define-public python2-hypothesis @@ -7733,7 +7738,7 @@ unit test functions that use @code{py.test}. This is useful for using function multiple times, without setting up or tearing down fixture state as is normally the case.") (home-page "https://github.com/untitaker/pytest-subtesthack/") - (license unlicense))) + (license license:unlicense))) (define-public python2-pytest-subtesthack (package-with-python2 python-pytest-subtesthack)) @@ -7762,7 +7767,7 @@ normally the case.") (description "Provides bindings to libxdo for manipulating X11 via simulated input. (Note that this is mostly a legacy library; you may wish to look at python-xdo for newer bindings.)") - (license bsd-3))) + (license license:bsd-3))) (define-public python-wtforms (package @@ -7785,7 +7790,7 @@ python-xdo for newer bindings.)") "WTForms is a flexible forms validation and rendering library for Python web development. It is very similar to the web form API available in Django, but is a standalone package.") - (license bsd-3) + (license license:bsd-3) (properties `((python2-variant . ,(delay python2-wtforms)))))) (define-public python2-wtforms @@ -7842,7 +7847,7 @@ templates into Python modules.") (synopsis "Waitress WSGI server") (description "Waitress is meant to be a production-quality pure-Python WSGI server with very acceptable performance.") - (license zpl2.1) + (license license:zpl2.1) (properties `((python2-variant . ,(delay python2-waitress)))))) (define-public python2-waitress @@ -8023,7 +8028,7 @@ layouts.") (description "pyquery allows you to make jQuery queries on xml documents. The API is as much as possible the similar to jQuery. pyquery uses lxml for fast xml and html manipulation.") - (license bsd-3) + (license license:bsd-3) (properties `((python2-variant . ,(delay python2-pyquery)))))) (define-public python2-pyquery @@ -8111,7 +8116,7 @@ minimum of WSGI.") (description "Anyjson loads whichever is the fastest JSON module installed and provides a uniform API regardless of which JSON implementation is used.") - (license bsd-3) + (license license:bsd-3) (properties `((python2-variant . ,(delay python2-anyjson)))))) (define-public python2-anyjson @@ -8147,7 +8152,7 @@ and provides a uniform API regardless of which JSON implementation is used.") "This is a fork of amqplib which was originally written by Barry Pederson. It is maintained by the Celery project, and used by kombu as a pure python alternative when librabbitmq is not available.") - (license lgpl2.1+) + (license license:lgpl2.1+) (properties `((python2-variant . ,(delay python2-amqp)))))) (define-public python2-amqp @@ -8189,7 +8194,7 @@ and also provide proven and tested solutions to common messaging problems. AMQP is the Advanced Message Queuing Protocol, an open standard protocol for message orientation, queuing, routing, reliability and security, for which the RabbitMQ messaging server is the most popular implementation.") - (license bsd-3) + (license license:bsd-3) (properties `((python2-variant . ,(delay python2-kombu)))))) (define-public python2-kombu @@ -8223,7 +8228,7 @@ RabbitMQ messaging server is the most popular implementation.") multiprocessing package itself is a renamed and updated version of R Oudkerk's pyprocessing package. This standalone variant is intended to be compatible with Python 2.4 and 2.5, and will draw its fixes/improvements from python-trunk.") - (license bsd-3) + (license license:bsd-3) (properties `((python2-variant . ,(delay python2-billiard)))))) (define-public python2-billiard @@ -8264,7 +8269,7 @@ supports scheduling as well. The execution units, called tasks, are executed concurrently on a single or more worker servers using multiprocessing, Eventlet, or gevent. Tasks can execute asynchronously (in the background) or synchronously (wait until ready).") - (license bsd-3) + (license license:bsd-3) (properties `((python2-variant . ,(delay python2-celery)))))) (define-public python2-celery @@ -8327,7 +8332,7 @@ ISO 8859, etc.).") (description "python-editor is a library that provides the editor module for programmatically interfacing with your system's $EDITOR.") - (license asl2.0) + (license license:asl2.0) (properties `((python2-variant . ,(delay python2-editor)))))) (define-public python2-editor @@ -8354,7 +8359,7 @@ programmatically interfacing with your system's $EDITOR.") (description "A Sphinx extension to literally insert the output of arbitrary commands into documents, helping you to keep your command examples up to date.") (home-page "https://github.com/lunaryorn/sphinxcontrib-programoutput") - (license bsd-2) + (license license:bsd-2) (properties `((python2-variant . ,(delay python2-sphinxcontrib-programoutput)))))) (define-public python2-sphinxcontrib-programoutput @@ -8383,7 +8388,7 @@ commands into documents, helping you to keep your command examples up to date.") system. The extension allows generation of API documentation by introspection of @code{zope.interface} instances in code.") (home-page "https://github.com/repoze/repoze.sphinx.autointerface") - (license repoze))) + (license license:repoze))) (define-public python2-sphinx-repoze-autointerface (package-with-python2 python-sphinx-repoze-autointerface)) @@ -8410,7 +8415,7 @@ introspection of @code{zope.interface} instances in code.") (synopsis "Python PostgreSQL adapter") (description "psycopg2 is a thread-safe PostgreSQL adapter that implements DB-API 2.0. ") - (license lgpl3+) + (license license:lgpl3+) (properties `((python2-variant . ,(delay python2-psycopg2)))))) (define-public python2-psycopg2 @@ -8440,7 +8445,7 @@ are supported and well tested. vCard 3.0 files are supported, and all data should be imported, but only a few components are understood in a sophisticated way.") (home-page "http://eventable.github.io/vobject/") - (license asl2.0) + (license license:asl2.0) (properties `((python2-variant . ,(delay python2-vobject)))))) (define-public python2-vobject @@ -8467,7 +8472,7 @@ way.") (description "The Munkres module provides an implementation of the Munkres algorithm (also called the Hungarian algorithm or the Kuhn-Munkres algorithm), useful for solving the Assignment Problem.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-munkres (package-with-python2 python-munkres)) @@ -8492,7 +8497,7 @@ useful for solving the Assignment Problem.") (description "Flask is a micro web framework based on the Werkzeug toolkit and Jinja2 template engine. It is called a micro framework because it does not presume or force a developer to use a particular tool or library.") - (license bsd-3) + (license license:bsd-3) (properties `((python2-variant . ,(delay python2-flask)))))) (define-public python2-flask @@ -8555,7 +8560,7 @@ Python.") (synopsis "Utility for mocking out the `requests` Python library") (description "A utility library for mocking out the `requests` Python library.") - (license asl2.0) + (license license:asl2.0) (properties `((python2-variant . ,(delay python2-responses)))))) (define-public python2-responses @@ -8616,7 +8621,7 @@ ambiguities (forward vs. backward slashes, etc.). (synopsis "Approximate and phonetic matching of strings") (description "Jellyfish uses a variety of string comparison and phonetic encoding algorithms to do fuzzy string matching.") - (license bsd-2) + (license license:bsd-2) (properties `((python2-variant . ,(delay python2-jellyfish)))))) (define-public python2-jellyfish @@ -8652,7 +8657,7 @@ encoding algorithms to do fuzzy string matching.") (synopsis "Unicode CSV module for Python 2") (description "Unicodecsv is a drop-in replacement for Python 2.7's CSV module, adding support for Unicode strings.") - (license bsd-2))) + (license license:bsd-2))) (define-public python-rarfile (package @@ -8681,7 +8686,7 @@ module, adding support for Unicode strings.") (synopsis "RAR archive reader for Python") (description "This is Python module for RAR archive reading. The interface is made as zipfile like as possible.") - (license isc))) + (license license:isc))) (define-public python2-rarfile (package-with-python2 python-rarfile)) @@ -8727,7 +8732,14 @@ is made as zipfile like as possible.") (substitute* "magic.py" (("ctypes.util.find_library\\('magic'\\)") (string-append "'" file "/lib/libmagic.so'"))) - #t)))))) + #t))) + (add-before 'install 'disable-egg-compression + (lambda _ + (let ((port (open-file "setup.cfg" "a"))) + (display "\n[easy_install]\nzip_ok = 0\n" + port) + (close-port port) + #t)))))) (native-inputs `(("python-setuptools" ,python-setuptools))) (inputs @@ -8784,7 +8796,7 @@ in storage services that are compatible with the Amazon Simple Storage Service (S3) protocol, including S3 itself. It supports rsync-like backup, GnuPG encryption, and more. It also supports management of Amazon's CloudFront content delivery network.") - (license gpl2+))) + (license license:gpl2+))) (define-public python-pkgconfig (package @@ -8852,7 +8864,7 @@ LDFLAGS and parse the output to build extensions with setup.py.") files. It contains a drop-in replacement for the I/O interface in the standard library's @code{bz2} module, including features from the latest development version of CPython that are not available in older releases.") - (license asl2.0) + (license license:asl2.0) (properties `((python2-variant . ,(delay python2-bz2file)))))) (define-public python2-bz2file @@ -8944,7 +8956,7 @@ to support both Python 2 and Python 3 with minimal overhead.") other signals and errors) in Cython code, using two related approaches, for mixed Cython/Python code or external C libraries and pure Cython code, respectively.") - (license lgpl3+))) + (license license:lgpl3+))) (define-public python2-cysignals (package-with-python2 python-cysignals)) @@ -8987,7 +8999,7 @@ respectively.") (synopsis "Experimental Python-2 to C++ Compiler") (description (string-append "This is an experimental compiler for a subset of Python. It generates C++ code and a Makefile.")) - (license (list gpl3 bsd-3 license:expat)))) + (license (list license:gpl3 license:bsd-3 license:expat)))) (define-public python2-rope (package @@ -9014,7 +9026,7 @@ Python. It generates C++ code and a Makefile.")) the renaming, moving and extracting of attributes, functions, modules, fields and parameters in Python 2 source code. These refactorings can also be applied to occurences in strings and comments.") - (license gpl2))) + (license license:gpl2))) (define-public python-py3status (package @@ -9035,7 +9047,7 @@ to occurences in strings and comments.") (description "py3status is an i3status wrapper which extends i3status functionality in a modular way, allowing you to extend your panel with your own code, responding to click events and updating clock every second.") - (license bsd-3))) + (license license:bsd-3))) (define-public python-tblib (package @@ -9075,7 +9087,7 @@ multiple processes (imagine multiprocessing, billiard, futures, celery etc). @item Parse traceback strings and raise with the parsed tracebacks. @end itemize") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-tblib (package-with-python2 python-tblib)) @@ -9109,7 +9121,7 @@ multiple processes (imagine multiprocessing, billiard, futures, celery etc). (synopsis "Non-validating SQL parser") (description "Sqlparse is a non-validating SQL parser for Python. It provides support for parsing, splitting and formatting SQL statements.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-sqlparse (package-with-python2 python-sqlparse)) @@ -9134,7 +9146,7 @@ provides support for parsing, splitting and formatting SQL statements.") that supports micro-threads called \"tasklets\". Tasklets run pseudo-concurrently (typically in a single or a few OS-level threads) and are synchronized with data exchanges on \"channels\".") - (license (list psfl license:expat)))) + (license (list license:psfl license:expat)))) (define-public python2-greenlet (package-with-python2 python-greenlet)) @@ -9222,7 +9234,7 @@ focus on event-based network programming and multiprotocol integration.") (synopsis "Python Lex & Yacc") (description "PLY is a @code{lex}/@code{yacc} implemented purely in Python. It uses LR parsing and does extensive error checking.") - (license bsd-3) + (license license:bsd-3) (properties `((python2-variant . ,(delay python2-ply)))))) (define-public python2-ply @@ -9286,7 +9298,7 @@ data in Python.") "Kazoo is a Python client library for the Apache Zookeeper distributed application service. It is designed to be easy to use and to avoid common programming errors.") - (license asl2.0))) + (license license:asl2.0))) (define-public python2-kazoo (package-with-python2 python-kazoo)) @@ -9320,7 +9332,7 @@ programming errors.") "PyKafka is a client for the Apache Kafka distributed messaging system. It includes Python implementations of Kafka producers and consumers, which are optionally backed by a C extension built on librdkafka.") - (license asl2.0))) + (license license:asl2.0))) (define-public python2-pykafka (package-with-python2 python-pykafka)) @@ -9381,7 +9393,7 @@ specified in POSIX.1-2001 and POSIX.1-2008.") It supports both the original 1.0 specification, as well as the new (proposed) 2.0 spec, which includes batch submission, keyword arguments, etc.") - (license asl2.0))) + (license license:asl2.0))) (define-public python-chai (package @@ -9401,7 +9413,7 @@ etc.") (description "Chai provides an api for mocking, stubbing and spying your python objects, patterned after the Mocha library for Ruby.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-chai (package-with-python2 python-chai)) @@ -9430,7 +9442,7 @@ objects, patterned after the Mocha library for Ruby.") "Arrow is a Python library to creating, manipulating, formatting and converting dates, times, and timestamps. It implements and updates the datetime type.") - (license asl2.0))) + (license license:asl2.0))) (define-public python2-arrow (package-with-python2 python-arrow)) @@ -9477,7 +9489,7 @@ underscored string.") (description "Pure Python Levenshtein implementation, based off the Wikipedia code samples at @url{http://en.wikipedia.org/wiki/Levenshtein_distance}.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-pylev (package-with-python2 python-pylev)) @@ -9529,7 +9541,7 @@ docstring and colored output.") (description "Lazy object proxy is an object that wraps a callable but defers the call until the object is actually required, and caches the result of said call.") - (license bsd-2))) + (license license:bsd-2))) (define-public python2-lazy-object-proxy (package-with-python2 python-lazy-object-proxy)) @@ -9588,7 +9600,7 @@ It supports TSIG authenticated messages and EDNS0.") (synopsis "Email address validation library for Python") (description "This library validates email address syntax and deliverability.") - (license cc0))) + (license license:cc0))) (define-public python2-email-validator (package-with-python2 python-email-validator)) @@ -9683,7 +9695,7 @@ addresses, and phone numbers.") (description "pyaml is a PyYAML based python module to produce pretty and readable YAML-serialized data.") - (license (non-copyleft "http://www.wtfpl.net/txt/copying/")))) + (license (license:non-copyleft "http://www.wtfpl.net/txt/copying/")))) (define-public python2-pyaml (package-with-python2 python-pyaml)) @@ -9706,7 +9718,7 @@ YAML-serialized data.") (description "flexmock is a testing library for Python that makes it easy to create mocks, stubs and fakes.") - (license bsd-3))) + (license license:bsd-3))) (define-public python2-flexmock (package-with-python2 python-flexmock)) @@ -9777,7 +9789,7 @@ interfaces in Python. It's like GNU Readline but it also features syntax highlighting while typing, out-of-the-box multi-line input editing, advanced code completion, incremental search, support for Chinese double-width characters, mouse support, and auto suggestions.") - (license bsd-3) + (license license:bsd-3) (properties `((python2-variant . ,(delay python2-prompt-toolkit)))))) (define-public python2-prompt-toolkit @@ -9840,7 +9852,7 @@ characters, mouse support, and auto suggestions.") It supports syntax highlighting, multiline editing, autocompletion, mouse, color schemes, bracketed paste, Vi and Emacs keybindings, Chinese characters etc.") - (license bsd-3) + (license license:bsd-3) (properties `((python2-variant . ,(delay ptpython-2)))))) (define-public ptpython-2 @@ -9880,7 +9892,7 @@ etc.") "Stem is a Python controller library for Tor. With it you can use Tor's control protocol to script against the Tor process and read descriptor data relays publish about themselves.") - (license lgpl3))) + (license license:lgpl3))) (define-public python2-stem (package-with-python2 python-stem)) @@ -9903,7 +9915,7 @@ relays publish about themselves.") (description "@code{pyserial} provide serial port bindings for Python. It supports different byte sizes, stop bits, parity and flow control with RTS/CTS and/or Xon/Xoff. The port is accessed in RAW mode.") - (license bsd-3) + (license license:bsd-3) (properties `((python2-variant . ,(delay python2-pyserial)))))) (define-public python2-pyserial @@ -9977,3 +9989,232 @@ hardware-accelerated multitouch applications.") (define-public python2-kivy-next (package-with-python2 python-kivy-next)) + +(define-public python-binaryornot + (package + (name "python-binaryornot") + (version "0.4.0") + (source (origin + (method url-fetch) + (uri (pypi-uri "binaryornot" version)) + (sha256 + (base32 + "1j4f51dxic39mdwf6alj7gd769wy6mhk916v031wjali51xkh3xb")))) + (build-system python-build-system) + (inputs + `(("python-chardet" ,python-chardet) + ("python-hypothesis" ,python-hypothesis))) + (home-page "https://github.com/audreyr/binaryornot") + (synopsis "Package to check if a file is binary or text") + (description "Ultra-lightweight pure Python package to check if a file is +binary or text.") + (license license:bsd-3) + (properties `((python2-variant . ,(delay python2-binaryornot)))))) + +(define-public python2-binaryornot + (let ((base (package-with-python2 (strip-python2-variant python-binaryornot)))) + (package (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base))) + (inputs + `(("python2-enum34" ,python2-enum34) + ,@(package-inputs base)))))) + +(define-public python-nltk + (package + (name "python-nltk") + (version "3.2.1") + (source (origin + (method url-fetch) + (uri (pypi-uri "nltk" version)) + (sha256 + (base32 + "0skxbhnymwlspjkzga0f7x1hg3y50fwpfghs8g8k7fh6f4nknlym")))) + (build-system python-build-system) + (home-page "http://nltk.org/") + (synopsis "Natural Language Toolkit") + (description "It provides interfaces to over 50 corpora and lexical +resources such as WordNet, along with a suite of text processing libraries +for classification, tokenization, stemming, tagging, parsing, and semantic +reasoning, wrappers for natural language processing libraries.") + (license license:asl2.0) + (properties `((python2-variant . ,(delay python2-nltk)))))) + +(define-public python2-nltk + (let ((base (package-with-python2 (strip-python2-variant python-nltk)))) + (package (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) + +(define-public python-pymongo + (package + (name "python-pymongo") + (version "3.3.0") + (source (origin + (method url-fetch) + (uri (pypi-uri "pymongo" version)) + (sha256 + (base32 + "07mra6w86wjqy4lx5fvimidjhhfzd562gfjn8grsnbv2q8pk0i9x")))) + (build-system python-build-system) + (inputs + `(("python-certifi" ,python-certifi))) + (home-page "http://github.com/mongodb/mongo-python-driver") + (synopsis "Python driver for MongoDB") + (description "Python driver for MongoDB.") + (license license:asl2.0) + (properties `((python2-variant . ,(delay python2-pymongo)))))) + +(define-public python2-pymongo + (let ((base (package-with-python2 (strip-python2-variant python-pymongo)))) + (package (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) + +(define-public python-sh + (package + (name "python-sh") + (version "1.11") + (source (origin + (method url-fetch) + (uri (pypi-uri "sh" version)) + (sha256 + (base32 + "192r0mpv6dmkysjzhc43ddffiwb5g7c76bgr1mb1z2xz9awbj3sr")))) + (build-system python-build-system) + (arguments + `(#:tests? #f)) ; no tests + (home-page "https://github.com/amoffat/sh") + (synopsis "Python subprocess interface") + (description "Abstracts process invocation by providing a function +interface for programs.") + (license license:expat) + (properties `((python2-variant . ,(delay python2-sh)))))) + +(define-public python2-sh + (let ((base (package-with-python2 (strip-python2-variant python-sh)))) + (package (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) + +(define-public python-schematics + (package + (name "python-schematics") + (version "1.1.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/schematics/schematics/archive/v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "19v1i69bf3bzarfxmbv0v6ivpcn758x3shvbiy9l2hy0lvqwnp6l")))) + (build-system python-build-system) + (inputs + `(("python-six" ,python-six))) + (arguments + `(#:tests? #f)) ; requires a bunch of not very nice packages with fixed + ; version requirements (eg python-coveralls) + (home-page "https://github.com/schematics/schematics") + (synopsis "Python Data Structures for Humans") + (description "Python Data Structures for Humans.") + (license license:bsd-3) + (properties `((python2-variant . ,(delay python2-schematics)))))) + +(define-public python2-schematics + (let ((base (package-with-python2 (strip-python2-variant python-schematics)))) + (package (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) + +(define-public python-publicsuffix + (package + (name "python-publicsuffix") + (version "1.1.0") + (source (origin + (method url-fetch) + (uri (pypi-uri "publicsuffix" version)) + (sha256 + (base32 + "1adx520249z2cy7ykwjr1k190mn2888wqn9jf8qm27ly4qymjxxf")))) + (build-system python-build-system) + (arguments + `(#:tests? #f)) ; tests use the internet + (home-page "https://www.tablix.org/~avian/git/publicsuffix.git") + (synopsis "Get suffix for a domain name") + (description "Get a public suffix for a domain name using the Public Suffix +List.") + (license license:expat) + (properties `((python2-variant . ,(delay python2-nltk)))))) + +(define-public python2-publicsuffix + (let ((base (package-with-python2 (strip-python2-variant python-publicsuffix)))) + (package (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) + +(define-public python-publicsuffix2 + (package + (name "python-publicsuffix2") + (version "2.20160621") + (source + (origin + (method url-fetch) + (uri (pypi-uri "publicsuffix2" version ".tar.bz2")) + (sha256 + (base32 + "06lx603gdwad5hc3hmn763ngq0rq9bzz1ni3ga72nzk5n872arkd")))) + (build-system python-build-system) + (home-page "https://github.com/pombredanne/python-publicsuffix2") + (synopsis "Get a public suffix for a domain name using the Public Suffix List") + (description "Get a public suffix for a domain name using the Public Suffix +List. Forked from and using the same API as the publicsuffix package.") + (license (list license:expat license:mpl2.0)) + (properties `((python2-variant . ,(delay python2-publicsuffix2)))))) + +(define-public python2-publicsuffix2 + (let ((base (package-with-python2 (strip-python2-variant python-publicsuffix2)))) + (package (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) + +(define-public python-url + (package + (name "python-url") + (version "0.2.0") + (source (origin + (method url-fetch) + (uri (pypi-uri "url" version)) + (sha256 + (base32 + "0v879yadcz9qxfl41ak6wkga1kimp9cflla9ddz03hjjvgkqy5ki")))) + (build-system python-build-system) + (inputs + `(("python-publicsuffix" ,python-publicsuffix))) + (native-inputs + `(("python-coverage" ,python-coverage) + ("python-nose" ,python-nose))) + (arguments + `(#:tests? #f)) ; FIXME: tests fail with "ImportError: No module named 'tests'" + (home-page "http://github.com/seomoz/url-py") + (synopsis "URL Parsing") + (description "Library for parsing urls.") + (license license:expat) + (properties `((python2-variant . ,(delay python2-url)))))) + +(define-public python2-url + (let ((base (package-with-python2 (strip-python2-variant python-url)))) + (package (inherit base) + (inputs + `(("python2-publicsuffix" ,python2-publicsuffix))) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) diff --git a/gnu/packages/qemu.scm b/gnu/packages/qemu.scm index c67e87fb2a..1b9f0add25 100644 --- a/gnu/packages/qemu.scm +++ b/gnu/packages/qemu.scm @@ -69,14 +69,14 @@ (define-public qemu (package (name "qemu") - (version "2.6.0") + (version "2.6.1") (source (origin (method url-fetch) (uri (string-append "http://wiki.qemu-project.org/download/qemu-" version ".tar.bz2")) (sha256 (base32 - "1v1lhhd6m59hqgmiz100g779rjq70pik5v4b3g936ci73djlmb69")))) + "1l88iqk0swqccrnjwczgl9arqsvy77bis862zxajy7z3dqdzshj9")))) (build-system gnu-build-system) (arguments '(;; Running tests in parallel can occasionally lead to failures, like: diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index a35c33724a..a7eee7c06c 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -313,7 +313,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") (define-public qtbase (package (name "qtbase") - (version "5.6.1-1") + (version "5.7.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -322,7 +322,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") version ".tar.xz")) (sha256 (base32 - "0fbwprlhqmdyhh2wb9122fcpq7pbil530iak482b9sy5gqs7i5ij")) + "0ip6xnizsn269r4s1nq9lkx8cdxkjqr1fidwrj3sa8xb7h96syry")) (modules '((guix build utils))) (snippet '(begin @@ -445,7 +445,36 @@ developers using C++ or QML, a CSS & JavaScript like language.") "-no-avx" "-no-avx2" "-no-mips_dsp" - "-no-mips_dspr2")))))))) + "-no-mips_dspr2"))))) + (add-after 'install 'patch-qt_config.prf + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (qt_config.prf (string-append + out "/mkspecs/features/qt_config.prf"))) + ;; For each Qt module, let `qmake' uses search paths in the + ;; module directory instead of all in QT_INSTALL_PREFIX. + (substitute* qt_config.prf + (("\\$\\$\\[QT_INSTALL_HEADERS\\]") + "$$replace(dir, mkspecs/modules, include)") + (("\\$\\$\\[QT_INSTALL_LIBS\\]") + "$$replace(dir, mkspecs/modules, lib)") + (("\\$\\$\\[QT_HOST_LIBS\\]") + "$$replace(dir, mkspecs/modules, lib)") + (("\\$\\$\\[QT_INSTALL_PLUGINS\\]") + "$$replace(dir, mkspecs/modules, plugins)") + (("\\$\\$\\[QT_INSTALL_LIBEXECS\\]") + "$$replace(dir, mkspecs/modules, libexec)") + (("\\$\\$\\[QT_INSTALL_BINS\\]") + "$$replace(dir, mkspecs/modules, bin)") + (("\\$\\$\\[QT_INSTALL_IMPORTS\\]") + "$$replace(dir, mkspecs/modules, imports)") + (("\\$\\$\\[QT_INSTALL_QML\\]") + "$$replace(dir, mkspecs/modules, qml)")) + #t)))))) + (native-search-paths + (list (search-path-specification + (variable "QMAKEPATH") + (files '(""))))) (home-page "https://www.qt.io/") (synopsis "Cross-platform GUI library") (description "Qt is a cross-platform application and UI framework for @@ -455,7 +484,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") (define-public qtsvg (package (inherit qtbase) (name "qtsvg") - (version "5.6.1-1") + (version "5.7.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -464,7 +493,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") version ".tar.xz")) (sha256 (base32 - "1w0jvhgaiddafcms2nv8wl1klg07lncmjwm1zhdw3l6rxi9071sw")))) + "10fqrlqkiq83xhx79g8d2sjy7hjdnp28067z8f4byj7db81rzy51")))) (propagated-inputs `()) (native-inputs `(("perl" ,perl))) (inputs @@ -489,7 +518,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") (define-public qtimageformats (package (inherit qtsvg) (name "qtimageformats") - (version "5.6.1-1") + (version "5.7.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -498,7 +527,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") version ".tar.xz")) (sha256 (base32 - "1p98acvsm3azka2by1ph4gdb31qbnndrr5k5wns4xk2d760y8ifc")))) + "1rb27x7i2pmvsck6wax2cg31gqpzaakciy45wm5l3lcl86j48czg")))) (native-inputs `()) (inputs `(("libmng" ,libmng) @@ -511,7 +540,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") (define-public qtx11extras (package (inherit qtsvg) (name "qtx11extras") - (version "5.6.1-1") + (version "5.7.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -520,7 +549,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") version ".tar.xz")) (sha256 (base32 - "0yj5yg2dqkrwbgbicmk2rpqsagmi8dsffkrprpsj0fmkx4awhv5y")))) + "1yrkn8pqdbvbqykas3wx1vdfimhjkgx3s5jgdxib9dgmgyx6vjzw")))) (native-inputs `(("perl" ,perl))) (inputs `(("mesa" ,mesa) @@ -529,7 +558,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") (define-public qtxmlpatterns (package (inherit qtsvg) (name "qtxmlpatterns") - (version "5.6.1-1") + (version "5.7.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -538,14 +567,14 @@ developers using C++ or QML, a CSS & JavaScript like language.") version ".tar.xz")) (sha256 (base32 - "1966rrk7f6c55k57j33rffdjs77kk4mawrnnl8yv1ckcirxc3np1")))) + "02z2qxamslg6sphnaykjcjfpypq4b69pb586s43vw4fplm72m21q")))) (native-inputs `(("perl" ,perl))) (inputs `(("qtbase" ,qtbase))))) (define-public qtdeclarative (package (inherit qtsvg) (name "qtdeclarative") - (version "5.6.1-1") + (version "5.7.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -554,7 +583,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") version ".tar.xz")) (sha256 (base32 - "094gx5mzqzcga97y7ihf052b6i5iv512lh7m0702m5q94nsn1pqw")))) + "1x7rij423g5chlfd2kix54f393vxwjvdfsn1c7sybqmfycwn5pl6")))) (native-inputs `(("perl" ,perl) ("pkg-config" ,pkg-config) @@ -568,7 +597,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") (define-public qtconnectivity (package (inherit qtsvg) (name "qtconnectivity") - (version "5.6.1-1") + (version "5.7.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -577,7 +606,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") version ".tar.xz")) (sha256 (base32 - "0sr6sxp0q45pacs25knr28139xdrphcjgrwlksdhdpsryfw19mzi")))) + "00r7lc1w3snfp2qfqmviqzv0cw16zd8m1sfpvxvpl65yqmzcli4q")))) (native-inputs `(("perl" ,perl) ("pkg-config" ,pkg-config) @@ -589,7 +618,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") (define-public qtwebsockets (package (inherit qtsvg) (name "qtwebsockets") - (version "5.6.1-1") + (version "5.7.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -598,7 +627,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") version ".tar.xz")) (sha256 (base32 - "1fz0x8570zxc00a22skd848svma3p2g3xyxj14jq10559jihqqil")))) + "0hwb2l7iwf4wf7l95dli8j3b7h0nffp56skfg1x810kzj0df26vl")))) (native-inputs `(("perl" ,perl) ("qtdeclarative" ,qtdeclarative))) @@ -607,7 +636,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") (define-public qtsensors (package (inherit qtsvg) (name "qtsensors") - (version "5.6.1-1") + (version "5.7.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -616,7 +645,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") version ".tar.xz")) (sha256 (base32 - "0kcrvf6vzn6g2v2m70f9r3raalzmfp48rwjlqhss3w84jfz3y04r")))) + "1gii6wg2xd3bkb86y5hgpmwcpl04xav030zscpl6fhscl9kcqg98")))) (native-inputs `(("perl" ,perl) ("qtdeclarative" ,qtdeclarative))) @@ -625,7 +654,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") (define-public qtmultimedia (package (inherit qtsvg) (name "qtmultimedia") - (version "5.6.1-1") + (version "5.7.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -634,7 +663,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") version ".tar.xz")) (sha256 (base32 - "0paffx0614ivjbf87lr9klpbqik6r1pzbc14l41np6d9jv3dqa2f")))) + "0ndmhiflmyr144nq8drd5njsdi282ixsm4730q5n0ji2v9dp1bh5")))) (native-inputs `(("perl" ,perl) ("pkg-config" ,pkg-config) @@ -649,7 +678,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") (define-public qtwayland (package (inherit qtsvg) (name "qtwayland") - (version "5.6.1-1") + (version "5.7.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -658,7 +687,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") version ".tar.xz")) (sha256 (base32 - "1fnvgpi49ilds3ah9iizxj9qhhb5rnwqd9h03bhkwf0ydywv52c4")))) + "04dynjcr6gxi3hcqdf688a4hkabi2l17slpcx9k0f3dxygwcgf96")))) (native-inputs `(("glib" ,glib) ("perl" ,perl) @@ -680,7 +709,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") (define-public qtserialport (package (inherit qtsvg) (name "qtserialport") - (version "5.6.1-1") + (version "5.7.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -689,7 +718,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") version ".tar.xz")) (sha256 (base32 - "135cbgghxk0c6dblmyyrw6znfb9m8sac9hhyc2dm6vq7vzy8id52")))) + "0rc2l14s59qskp16wqlkizfai32s41qlm7a86r3qahx28gc51qaw")))) (native-inputs `(("perl" ,perl))) (inputs `(("qtbase" ,qtbase) @@ -698,7 +727,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") (define-public qtwebchannel (package (inherit qtsvg) (name "qtwebchannel") - (version "5.6.1-1") + (version "5.7.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -707,7 +736,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") version ".tar.xz")) (sha256 (base32 - "10kys3ppjkj60fs1s335fdcpdsbxsjn6ibvm6zph9gqbncabd2l7")))) + "05lqfidlh1ahdd1j9y20p2037qbcq51zkdzj2m8fwhn7ghbwvd1s")))) (native-inputs `(("perl" ,perl) ("qtdeclarative" ,qtdeclarative) @@ -717,7 +746,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") (define-public qtlocation (package (inherit qtsvg) (name "qtlocation") - (version "5.6.1-1") + (version "5.7.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -726,18 +755,18 @@ developers using C++ or QML, a CSS & JavaScript like language.") version ".tar.xz")) (sha256 (base32 - "0my4pbcxa58yzvdh65l5qx99ln03chjr5c3ml5v37wfk7nx23k69")))) + "0rd898gndn41jrp78203lxd94ybfv693l0qg0myag4r46ikk69vh")))) (native-inputs `(("perl" ,perl) ("qtdeclarative" ,qtdeclarative) - ;("qtquickcontrols" ,qtquickcontrols) + ("qtquickcontrols" ,qtquickcontrols) ("qtserialport" ,qtserialport))) (inputs `(("qtbase" ,qtbase))))) (define-public qttools (package (inherit qtsvg) (name "qttools") - (version "5.6.1-1") + (version "5.7.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -746,7 +775,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") version ".tar.xz")) (sha256 (base32 - "0haic027a2d7p7k8xz83fbvci4a4dln34360rlwgy7hlyy5m4nip")))) + "004m9l7bgh7qnncbyl3d5fkggdrqx58ib21xv4hflvvarxrssibg")))) (native-inputs `(("perl" ,perl) ("qtdeclarative" ,qtdeclarative))) @@ -757,7 +786,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") (define-public qtscript (package (inherit qtsvg) (name "qtscript") - (version "5.6.1-1") + (version "5.7.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -766,13 +795,64 @@ developers using C++ or QML, a CSS & JavaScript like language.") version ".tar.xz")) (sha256 (base32 - "1gini9483flqa9q4a4bl81bh7g5s408bycqykqhgbklmfd29y5lx")))) + "0040890p5ilyrmcpndz1hhp08x2ms5gw4lp4n5iax2a957yy2i4w")))) (native-inputs `(("perl" ,perl) ("qttools" ,qttools))) (inputs `(("qtbase" ,qtbase))))) +(define-public qtquickcontrols + (package (inherit qtsvg) + (name "qtquickcontrols") + (version "5.7.0") + (source (origin + (method url-fetch) + (uri (string-append "https://download.qt.io/official_releases/qt/" + (version-major+minor version) "/" version + "/submodules/" name "-opensource-src-" + version ".tar.xz")) + (sha256 + (base32 + "0cpcrmz9n5b4bgmshmk093lirl9xwqb23inchnai1zqg21vrmqfq")))) + (inputs + `(("qtbase" ,qtbase) + ("qtdeclarative" ,qtdeclarative))))) + +(define-public qtquickcontrols2 + (package (inherit qtsvg) + (name "qtquickcontrols2") + (version "5.7.0") + (source (origin + (method url-fetch) + (uri (string-append "https://download.qt.io/official_releases/qt/" + (version-major+minor version) "/" version + "/submodules/" name "-opensource-src-" + version ".tar.xz")) + (sha256 + (base32 + "0i8h933vhvx1bmniqdx0idg6vk82w9byd3dq0bb2phwjg5vv1xb3")))) + (inputs + `(("qtbase" ,qtbase) + ("qtdeclarative" ,qtdeclarative))))) + +(define-public qtgraphicaleffects + (package (inherit qtsvg) + (name "qtgraphicaleffects") + (version "5.7.0") + (source (origin + (method url-fetch) + (uri (string-append "https://download.qt.io/official_releases/qt/" + (version-major+minor version) "/" version + "/submodules/" name "-opensource-src-" + version ".tar.xz")) + (sha256 + (base32 + "1rwdjg5mk6xpadmxfq64xfp573zp5lrj9illb9105ra5wff565n8")))) + (inputs + `(("qtbase" ,qtbase) + ("qtdeclarative" ,qtdeclarative))))) + (define-public python-sip (package (name "python-sip") @@ -990,8 +1070,10 @@ contain over 620 classes.") (sha256 (base32 "0fka5q5cdzlf79igcjgbnb2smvwbwfasqawkzkbr34whispgm6lz")))) (build-system cmake-build-system) + (native-inputs + `(("qttools" ,qttools))) (inputs - `(("qt" ,qt))) + `(("qtbase" ,qtbase))) (arguments `(#:tests? #f ; No tests included #:phases diff --git a/gnu/packages/regex.scm b/gnu/packages/regex.scm new file mode 100644 index 0000000000..cea9db8379 --- /dev/null +++ b/gnu/packages/regex.scm @@ -0,0 +1,57 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (gnu packages regex) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu)) + +(define-public re2 + (package + (name "re2") + (version "2016-08-01") + (source (origin + (method url-fetch) + (uri + (string-append + "https://github.com/google/re2/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "06pfm3xi5irrrij85m0c46rsn9jyg1rc2r431wi2knhjvbw9f0bx")))) + (build-system gnu-build-system) + (arguments + `(#:test-target "test" + ;; There is no configure step, but the Makefile respects a prefix. + #:make-flags (list (string-append "prefix=" %output)) + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-after 'install 'delete-static-library + (lambda* (#:key outputs #:allow-other-keys) + ;; No make target for shared-only; delete the static version. + (delete-file (string-append (assoc-ref outputs "out") + "/lib/libre2.a"))))))) + (home-page "https://github.com/google/re2") + (synopsis "Fast, safe, thread-friendly regular expression engine") + (description "RE2 is a fast, safe, thread-friendly alternative to +backtracking regular expression engines like those used in PCRE, Perl and +Python. It is a C++ library.") + (license license:bsd-3))) diff --git a/gnu/packages/scribus.scm b/gnu/packages/scribus.scm index 68e57cd1e4..72f3c57612 100644 --- a/gnu/packages/scribus.scm +++ b/gnu/packages/scribus.scm @@ -49,7 +49,10 @@ (base32 "0f2adwg58w37sdi3xrk8xqw486p3pcfjaypcsswjl76r2f3yd0hq")))) (build-system cmake-build-system) - (arguments `(#:tests? #f)) ; no test target + (arguments + `(#:tests? #f ; no test target + #:configure-flags + '("-DCMAKE_CXX_FLAGS=-std=gnu++11"))) (inputs `(("cairo" ,cairo) ("cups" ,cups) diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm index 42bb2b8f92..4a3278fb9f 100644 --- a/gnu/packages/serialization.scm +++ b/gnu/packages/serialization.scm @@ -1,6 +1,8 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org> +;;; Copyright © 2016 David Craven <david@craven.ch> +;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -25,10 +27,12 @@ #:use-module (guix build-system gnu) #:use-module (gnu packages) #:use-module (gnu packages autotools) + #:use-module (gnu packages boost) #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages documentation) - #:use-module (gnu packages pkg-config)) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python)) (define-public cereal (package @@ -123,3 +127,76 @@ such as compact binary encodings, XML, or JSON.") (description "Msgpack is a library for C/C++ that implements binary serialization.") (license license:boost1.0))) + +(define-public yaml-cpp + (package + (name "yaml-cpp") + (version "0.5.3") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/jbeder/yaml-cpp/archive/" + "yaml-cpp-" version ".tar.gz")) + (sha256 + (base32 + "1vk6pjh0f5k6jwk2sszb9z5169whmiha9ainbdpa1arxlkq7v3b6")))) + (build-system cmake-build-system) + (inputs + `(("boost" ,boost))) + (native-inputs + `(("python" ,python))) + (home-page "https://github.com/jbeder/yaml-cpp") + (synopsis "YAML parser and emitter in C++") + (description "YAML parser and emitter in C++ matching the YAML 1.2 spec.") + (license license:bsd-3))) + +(define-public jsoncpp + (package + (name "jsoncpp") + (version "1.7.4") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/open-source-parsers/jsoncpp/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0sgp6nc4c6pfn92f369v08zdwpqswn9j2ihy59bpwwl0grkx1p0h")))) + (build-system cmake-build-system) + (home-page "https://github.com/open-source-parsers/jsoncpp") + (synopsis "C++ library for interacting with JSON") + (description "JsonCpp is a C++ library that allows manipulating JSON values, +including serialization and deserialization to and from strings. It can also +preserve existing comment in unserialization/serialization steps, making +it a convenient format to store user input files.") + (license license:expat))) + +(define-public capnproto + (package + (name "capnproto") + (version "0.5.3") + (source (origin + (method url-fetch) + (uri (string-append + "https://capnproto.org/capnproto-c++-" + version ".tar.gz")) + (sha256 + (base32 + "1yvaadhgakskqq5wpv53hd6fc3pp17mrdldw4i5cvgck4iwprcfd")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'do-not-require-/etc/services + (lambda _ + ;; Workaround for test that tries to resolve port name from + ;; /etc/services, which is not present in build environment. + (substitute* "src/kj/async-io-test.c++" ((":http") ":80")) + #t))))) + (home-page "https://capnproto.org") + (synopsis "Capability-based RPC and serialization system") + (description + "Cap'n Proto is a very fast data interchange format and capability-based +RPC system. Think JSON, except binary. Or think Protocol Buffers, except faster.") + (license license:expat))) diff --git a/gnu/packages/spice.scm b/gnu/packages/spice.scm index 3e6366e6c0..c0e8d240cf 100644 --- a/gnu/packages/spice.scm +++ b/gnu/packages/spice.scm @@ -20,6 +20,7 @@ #:use-module (gnu packages) #:use-module (gnu packages autotools) ; remove after updating usbredir to 0.7.1+ #:use-module (gnu packages compression) + #:use-module (gnu packages cyrus-sasl) #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) @@ -199,7 +200,7 @@ which allows users to view a desktop computing environment.") (define-public spice (package (name "spice") - (version "0.13.1") + (version "0.12.8") (source (origin (method url-fetch) (uri (string-append @@ -207,14 +208,15 @@ which allows users to view a desktop computing environment.") "spice-" version ".tar.bz2")) (sha256 (base32 - "18hxk47z58cqbix5h477qmvcdmsrwzv984jw4c6fj0ns4h217jwy")))) + "0za03i77j8i3g5l2np2j7vy8cqsdbkm9wbv4hjnaqq9xhz2sa0gr")))) (build-system gnu-build-system) (propagated-inputs `(("openssl" ,openssl) ("pixman" ,pixman) ("spice-protocol" ,spice-protocol))) (inputs - `(("glib" ,glib) + `(("cyrus-sasl" ,cyrus-sasl) + ("glib" ,glib) ("libjpeg" ,libjpeg) ("lz4" ,lz4) ("opus" ,opus) diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index 16cd6e20d8..b2612a495f 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -139,10 +139,19 @@ a server that supports the SSH-2 protocol.") (build-system gnu-build-system) (inputs `(("groff" ,groff) ("openssl" ,openssl) + ("pam" ,linux-pam) ("zlib" ,zlib) ("xauth" ,xauth))) ;for 'ssh -X' and 'ssh -Y' (arguments `(#:test-target "tests" + #:configure-flags '("--sysconfdir=/etc" + + ;; Default value of 'PATH' used by sshd. + "--with-default-path=/run/current-system/profile/bin" + + ;; Enable PAM support in sshd. + "--with-pam") + #:phases (modify-phases %standard-phases (add-after 'configure 'reset-/var/empty diff --git a/gnu/packages/synergy.scm b/gnu/packages/synergy.scm index ecff82ce7b..7f8a30fa33 100644 --- a/gnu/packages/synergy.scm +++ b/gnu/packages/synergy.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014, 2015 Eric Bavier <bavier@member.fsf.org> +;;; Copyright © 2014, 2015, 2016 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> ;;; ;;; This file is part of GNU Guix. @@ -33,7 +33,7 @@ (define-public synergy (package (name "synergy") - (version "1.7.6") + (version "1.8.2") (source (origin (method url-fetch) @@ -42,7 +42,7 @@ (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "07a1g2kh4f064nqjdqgfzrjfayls31scnssphbndmnvfc20bhlx4")) + "1ym9lmnm64i1bw4spxq40drb4nvzsq5z7zq1935aq0kgccccg11g")) (modules '((guix build utils))) (snippet ;; Remove ~14MB of unnecessary bundled source and binaries diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm index 98f0060c0d..7837723e39 100644 --- a/gnu/packages/terminals.scm +++ b/gnu/packages/terminals.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Mckinley Olsen <mck.olsen@gmail.com> ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com> +;;; Copyright © 2016 David Craven <david@craven.ch> ;;; ;;; This file is part of GNU Guix. ;;; @@ -27,16 +28,20 @@ #:use-module (guix git-download) #:use-module (guix packages) #:use-module (gnu packages autotools) + #:use-module (gnu packages freedesktop) #:use-module (gnu packages gettext) + #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gtk) + #:use-module (gnu packages linux) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages wm) #:use-module (gnu packages ncurses) #:use-module (gnu packages gtk) - #:use-module (gnu packages gnome)) + #:use-module (gnu packages gnome) + #:use-module (gnu packages xdisorg)) (define-public tilda (package @@ -159,3 +164,69 @@ insert mode and command mode where keybindings have different functions.") Forget screen recording apps and blurry video. Enjoy a lightweight, purely text-based approach to terminal recording.") (license license:gpl3))) + +(define-public libtsm + (package + (name "libtsm") + (version "3") + (source (origin + (method url-fetch) + (uri (string-append + "https://freedesktop.org/software/kmscon/releases/" + "libtsm-" version ".tar.xz")) + (sha256 + (base32 + "01ygwrsxfii0pngfikgqsb4fxp8n1bbs47l7hck81h9b9bc1ah8i")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("libxkbcommon" ,libxkbcommon))) + (synopsis "Xterm state machine library") + (description "TSM is a state machine for DEC VT100-VT520 compatible +terminal emulators. It tries to support all common standards while keeping +compatibility to existing emulators like xterm, gnome-terminal, konsole, etc.") + (home-page "https://www.freedesktop.org/wiki/Software/libtsm") + ;; Hash table implementation is lgpl2.1+ licensed. + ;; The wcwidth implementation in external/wcwidth.{h,c} uses a license + ;; derived from ISC. + ;; UCS-4 to UTF-8 encoding is copied from "terminology" which is released + ;; under the bsd 2 license. + (license (list license:expat license:lgpl2.1+ license:isc license:bsd-2)))) + +(define-public kmscon + (package + (name "kmscon") + (version "8") + (source (origin + (method url-fetch) + (uri (string-append + "https://freedesktop.org/software/kmscon/releases/" + "kmscon-" version ".tar.xz")) + (sha256 + (base32 + "0axfwrp3c8f4gb67ap2sqnkn75idpiw09s35wwn6kgagvhf1rc0a")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("libdrm" ,libdrm) + ("libtsm" ,libtsm) + ("libxkbcommon" ,libxkbcommon) + ("logind" ,elogind) + ("mesa" ,mesa) + ("pango" ,pango) + ("udev" ,eudev))) + (synopsis "Simple terminal emulator") + (description "Kmscon is a simple terminal emulator based on linux kernel +mode setting (KMS). It is an attempt to replace the in-kernel VT implementation +with a userspace console. See kmscon(1) man-page for usage information.") + (home-page "https://www.freedesktop.org/wiki/Software/kmscon") + ;; Hash table implementation is lgpl2.1+ licensed. + ;; The wcwidth implementation in external/wcwidth.{h,c} uses a license + ;; derived from ISC. + ;; UCS-4 to UTF-8 encoding is copied from "terminology" which is released + ;; under the bsd 2 license. + ;; Unifont-Font is from http://unifoundry.com/unifont.html and licensed + ;; under the terms of the GNU GPL. + (license (list license:expat license:lgpl2.1+ license:bsd-2 license:gpl2+)))) diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm index eec3c96407..951b8f680b 100644 --- a/gnu/packages/tor.scm +++ b/gnu/packages/tor.scm @@ -38,14 +38,14 @@ (define-public tor (package (name "tor") - (version "0.2.8.6") + (version "0.2.8.7") (source (origin (method url-fetch) (uri (string-append "https://www.torproject.org/dist/tor-" version ".tar.gz")) (sha256 (base32 - "0nmbwcr8s1qkrc2ahrk7jz81nax74sdhszkhrrgys8ndyw1grj9x")))) + "1iigfi8ljl88s8b5y1g4ak8im57simazscl467zvfbg8k6vf4i5f")))) (build-system gnu-build-system) (native-inputs `(("python" ,python-2))) ; for tests diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 921aff4e25..b85ece0aac 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -53,6 +53,7 @@ #:use-module (gnu packages databases) #:use-module (gnu packages elf) #:use-module (gnu packages fontutils) + #:use-module (gnu packages freedesktop) #:use-module (gnu packages fribidi) #:use-module (gnu packages gettext) #:use-module (gnu packages ghostscript) @@ -399,14 +400,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.1.2") + (version "3.1.3") (source (origin (method url-fetch) (uri (string-append "https://ffmpeg.org/releases/ffmpeg-" version ".tar.xz")) (sha256 (base32 - "0qdxp6r6x47jzi6nmbsv3dhvm073c8n5hpnlmj5gwihgkyva5ljq")))) + "08l8290gipm632dhrqndnphdpkc5ncqc1j3hxdx46r1a3q3mqmzq")))) (build-system gnu-build-system) (inputs `(("fontconfig" ,fontconfig) @@ -626,6 +627,7 @@ audio/video codec library.") ("libvorbis" ,libvorbis) ("libtheora" ,libtheora) ("libxext" ,libxext) + ("libxi" ,libxi) ("libxinerama" ,libxinerama) ("libxml2" ,libxml2) ("libxpm" ,libxpm) @@ -635,7 +637,8 @@ audio/video codec library.") ("perl" ,perl) ("pulseaudio" ,pulseaudio) ("python" ,python-wrapper) - ("qtbase" ,qtbase) + ("qt" ,qt) ; FIXME: reenable modular qt after update - requires building + ;("qtbase" ,qtbase) with -std=gnu++11. ;("qtx11extras" ,qtx11extras) ("sdl" ,sdl) ("sdl-image" ,sdl-image) @@ -1141,8 +1144,9 @@ for use with HTML5 video.") ("perl" ,perl) ("pulseaudio" ,pulseaudio) ("python" ,python-wrapper) - ("qtbase" ,qtbase) - ("qttools" ,qttools) + ("qt" ,qt) ; FIXME: reenable modular qt after update - requires building + ;("qtbase" ,qtbase) with -std=gnu++11. + ;("qttools" ,qttools) ("sdl" ,sdl) ("sqlite" ,sqlite) ("yasm" ,yasm) @@ -1396,7 +1400,8 @@ tools, XML authoring components, and an extensible plug-in based API.") '(#:configure-flags (list (string-append "--with-udevdir=" (assoc-ref %outputs "out") - "/lib/udev")))) + "/lib/udev") + "CXXFLAGS=-std=gnu++11"))) (native-inputs `(("pkg-config" ,pkg-config))) (inputs diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 29055c3c06..e004062fba 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -2615,11 +2615,11 @@ or to multiple server ports.") (source (origin (method url-fetch) - (uri (string-append "https://cpan.metacpan.org/authors/id/R/RJ/RJBS/" + (uri (string-append "mirror://cpan/authors/id/R/RJ/RJBS/" "Net-SMTP-SSL-" version ".tar.gz")) (sha256 - (base32 - "05y94mb1vdw32mvwb0cp2h4ggh32f8j8nwwfjb8kjwxvfkfhyp9h")))) + (base32 + "05y94mb1vdw32mvwb0cp2h4ggh32f8j8nwwfjb8kjwxvfkfhyp9h")))) (build-system perl-build-system) (propagated-inputs `(("perl-io-socket-ssl" ,perl-io-socket-ssl))) diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm index 578b4c9847..2c940285c7 100644 --- a/gnu/packages/webkit.scm +++ b/gnu/packages/webkit.scm @@ -53,14 +53,14 @@ (define-public webkitgtk (package (name "webkitgtk") - (version "2.12.3") + (version "2.12.4") (source (origin (method url-fetch) - (uri (string-append "http://www.webkitgtk.org/releases/" + (uri (string-append "https://www.webkitgtk.org/releases/" name "-" version ".tar.xz")) (sha256 (base32 - "01y34v62khf03w25fnzgd42rrai5mf1m95lr5vjyw8ya5sdbng0p")))) + "0xwsc2lpb4q55vdgmwljx43219l0sa6r5mqs3bmw3fwsb5vk2ka2")))) (build-system cmake-build-system) (arguments '(#:tests? #f ; no tests diff --git a/gnu/packages/wordnet.scm b/gnu/packages/wordnet.scm index dbc75860ef..289ecdeffb 100644 --- a/gnu/packages/wordnet.scm +++ b/gnu/packages/wordnet.scm @@ -83,7 +83,7 @@ (home-page "http://wordnet.princeton.edu/") (synopsis "Lexical database for the English language") (description - "WordNet® is a large lexical database of English. Nouns, verbs, + "WordNet is a large lexical database of English. Nouns, verbs, adjectives and adverbs are grouped into sets of cognitive synonyms (synsets), each expressing a distinct concept. Synsets are interlinked by means of conceptual-semantic and lexical relations. The resulting network of diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index a555a096a3..865a9083fa 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -182,14 +182,14 @@ X11 (yet).") (arguments '(#:tests? #f ; Test suite requires a lot of black magic #:phases - (alist-replace 'configure - (lambda* (#:key outputs #:allow-other-keys #:rest args) - (setenv "PREFIX" (assoc-ref outputs "out")) - (setenv "LDFLAGS" (string-append "-Wl,-rpath=" - (assoc-ref - %outputs "out") "/lib")) - (setenv "CC" "gcc")) - %standard-phases))) + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys #:rest args) + (setenv "PREFIX" (assoc-ref outputs "out")) + (setenv "LDFLAGS" + (string-append "-Wl,-rpath=" + (assoc-ref %outputs "out") "/lib")) + (setenv "CC" "gcc")))))) (native-inputs `(("perl" ,perl))) ; for pod2man (inputs `(("libx11" ,libx11) ("libxext" ,libxext) @@ -514,21 +514,20 @@ include cursor in the resulting image.") (build-system gnu-build-system) (arguments '(#:tests? #f ; no check target - #:phases (alist-delete - 'configure - (alist-replace - 'install - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin")) - (man1 (string-append out "/share/man/man1"))) - (mkdir-p bin) - (mkdir-p man1) - (zero? - (system* "make" "install" "install.man" - (string-append "BINDIR=" bin) - (string-append "MANDIR=" man1))))) - %standard-phases)))) + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'install + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (man1 (string-append out "/share/man/man1"))) + (mkdir-p bin) + (mkdir-p man1) + (zero? + (system* "make" "install" "install.man" + (string-append "BINDIR=" bin) + (string-append "MANDIR=" man1))))))))) (inputs `(("libx11" ,libx11))) (home-page "http://ftp.x.org/contrib/utilities/") (synopsis "Hide idle mouse cursor") diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index cfdc6c006d..a478599fe6 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1,4 +1,3 @@ - ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr> diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 72007f1f35..23834ba19e 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -133,6 +133,29 @@ projects. Software developers are encouraged to migrate software to the GNU autotools system.") (license license:x11))) +(define-public lndir + (package + (name "lndir") + (version "1.0.3") + (source (origin + (method url-fetch) + (uri (string-append + "mirror://xorg/individual/util/" + "lndir-" version ".tar.bz2")) + (sha256 + (base32 + "0pdngiy8zdhsiqx2am75yfcl36l7kd7d7nl0rss8shcdvsqgmx29")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("xproto" ,xproto))) + (home-page "http://www.x.org") + (synopsis "Symlink directory into tree") + (description "Create a shadow directory of symbolic links to another +directory tree.") + (license license:x11))) + (define-public bdftopcf (package (name "bdftopcf") @@ -2361,7 +2384,7 @@ devices, thus making direct access unnecessary.") (define-public xf86-input-evdev (package (name "xf86-input-evdev") - (version "2.10.1") + (version "2.10.3") (source (origin (method url-fetch) @@ -2371,7 +2394,7 @@ devices, thus making direct access unnecessary.") ".tar.bz2")) (sha256 (base32 - "05z05n39v8s2b0hwhcjb1bca7j8gc62bv9jxnibawwmjym3jp75g")))) + "18ijnclnylrr7vkvflalkw4bqfily3scg6baczjjgycdpsj1p8js")))) (build-system gnu-build-system) (inputs `(("udev" ,eudev) @@ -2511,7 +2534,7 @@ as USB mice.") (define-public xf86-input-synaptics (package (name "xf86-input-synaptics") - (version "1.8.3") + (version "1.8.99.1") (source (origin (method url-fetch) @@ -2521,7 +2544,7 @@ as USB mice.") ".tar.bz2")) (sha256 (base32 - "009zx199pilcvlaqm6fx4mg94q81d6vvl5rznmw3frzkfh6117yk")))) + "1apbcwn20p7sy07ghlldmqcnxag2r9sdjqmb4xxzki0hz8wm72ac")))) (build-system gnu-build-system) (inputs `(("libx11" ,libx11) ("libxi" ,libxi) @@ -2623,7 +2646,7 @@ as USB mice.") (define-public xf86-video-ati (package (name "xf86-video-ati") - (version "7.6.1") + (version "7.7.0") (source (origin (method url-fetch) @@ -2633,7 +2656,7 @@ as USB mice.") ".tar.bz2")) (sha256 (base32 - "0k6kw69mcarlmxlb4jlhz887jxqr94qx2pin04xcv2ysp3pdj5i5")))) + "1hy1n8an98mflfbdcb3q7wv59x971j7nf9zhivf90p0lgdbiqkc4")))) (build-system gnu-build-system) (inputs `(("mesa" ,mesa) ("xxf86driproto" ,xf86driproto) @@ -3049,7 +3072,7 @@ graphics cards.") (define-public xf86-video-openchrome (package (name "xf86-video-openchrome") - (version "0.3.3") + (version "0.5.0") (source (origin (method url-fetch) @@ -3058,9 +3081,8 @@ graphics cards.") version ".tar.bz2")) (sha256 - (base32 - "1v8j4i1r268n4fc5gq54zg1x50j0rhw71f3lba7411mcblg2z7p4")) - (patches (search-patches "xf86-video-openchrome-glibc-2.20.patch")))) + (base32 + "1fsmr455lk89zl795d6b5ypyqjim40j3h2vjch52lcssjw9xdza9")))) (build-system gnu-build-system) (inputs `(("libx11" ,libx11) ("libxext" ,libxext) diff --git a/gnu/services/base.scm b/gnu/services/base.scm index 218f3b3cf3..f3f6408687 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -49,7 +49,7 @@ #:use-module (ice-9 format) #:export (fstab-service-type root-file-system-service - file-system-service + file-system-service-type user-unmount-service swap-service user-processes-service @@ -86,6 +86,7 @@ syslog-service-type %default-syslog.conf + %default-authorized-guix-keys guix-configuration guix-configuration? guix-service @@ -163,7 +164,7 @@ (extensions (list (service-extension etc-service-type file-systems->fstab))) - (compose identity) + (compose concatenate) (extend append))) (define %root-file-system-shepherd-service @@ -229,7 +230,8 @@ FILE-SYSTEM." (file-system->shepherd-service-name fs)))) (define (file-system-shepherd-service file-system) - "Return a list containing the shepherd service for @var{file-system}." + "Return the shepherd service for @var{file-system}, or @code{#f} if +@var{file-system} is not auto-mounted upon boot." (let ((target (file-system-mount-point file-system)) (device (file-system-device file-system)) (type (file-system-type file-system)) @@ -237,10 +239,9 @@ FILE-SYSTEM." (check? (file-system-check? file-system)) (create? (file-system-create-mount-point? file-system)) (dependencies (file-system-dependencies file-system))) - (if (file-system-mount? file-system) - (with-imported-modules '((gnu build file-systems) - (guix build bournish)) - (list + (and (file-system-mount? file-system) + (with-imported-modules '((gnu build file-systems) + (guix build bournish)) (shepherd-service (provision (list (file-system->shepherd-service-name file-system))) (requirement `(root-file-system @@ -289,23 +290,19 @@ FILE-SYSTEM." ;; We need an additional module. (modules `(((gnu build file-systems) #:select (check-file-system canonicalize-device-spec)) - ,@%default-modules))))) - '()))) + ,@%default-modules))))))) (define file-system-service-type - ;; TODO(?): Make this an extensible service that takes <file-system> objects - ;; and returns a list of <shepherd-service>. - (service-type (name 'file-system) + (service-type (name 'file-systems) (extensions (list (service-extension shepherd-root-service-type - file-system-shepherd-service) + (lambda (file-systems) + (filter-map file-system-shepherd-service + file-systems))) (service-extension fstab-service-type - identity))))) - -(define* (file-system-service file-system) - "Return a service that mounts @var{file-system}, a @code{<file-system>} -object." - (service file-system-service-type file-system)) + identity))) + (compose concatenate) + (extend append))) (define user-unmount-service-type (shepherd-service-type @@ -1003,15 +1000,14 @@ starting at FIRST-UID, and under GID." 1+ 1)) -(define (hydra-key-authorization guix) - "Return a gexp with code to register the hydra.gnu.org public key with -GUIX." +(define (hydra-key-authorization key guix) + "Return a gexp with code to register KEY, a file containing a 'guix archive' +public key, with GUIX." #~(unless (file-exists? "/etc/guix/acl") (let ((pid (primitive-fork))) (case pid ((0) - (let* ((key (string-append #$guix - "/share/guix/hydra.gnu.org.pub")) + (let* ((key #$key) (port (open-file key "r0b"))) (format #t "registering public key '~a'...~%" key) (close-port (current-input-port)) @@ -1025,6 +1021,10 @@ GUIX." (format (current-error-port) "warning: \ failed to register hydra.gnu.org public key: ~a~%" status)))))))) +(define %default-authorized-guix-keys + ;; List of authorized substitute keys. + (list #~(string-append #$guix "/share/guix/hydra.gnu.org.pub"))) + (define-record-type* <guix-configuration> guix-configuration make-guix-configuration guix-configuration? @@ -1036,6 +1036,8 @@ failed to register hydra.gnu.org public key: ~a~%" status)))))))) (default 10)) (authorize-key? guix-configuration-authorize-key? ;Boolean (default #t)) + (authorized-keys guix-configuration-authorized-keys ;list of gexps + (default %default-authorized-guix-keys)) (use-substitutes? guix-configuration-use-substitutes? ;Boolean (default #t)) (substitute-urls guix-configuration-substitute-urls ;list of strings @@ -1053,7 +1055,8 @@ failed to register hydra.gnu.org public key: ~a~%" status)))))))) (define (guix-shepherd-service config) "Return a <shepherd-service> for the Guix daemon service with CONFIG." (match config - (($ <guix-configuration> guix build-group build-accounts authorize-key? + (($ <guix-configuration> guix build-group build-accounts + authorize-key? keys use-substitutes? substitute-urls extra-options lsof lsh) (list (shepherd-service @@ -1093,14 +1096,15 @@ failed to register hydra.gnu.org public key: ~a~%" status)))))))) (define (guix-activation config) "Return the activation gexp for CONFIG." (match config - (($ <guix-configuration> guix build-group build-accounts authorize-key?) + (($ <guix-configuration> guix build-group build-accounts authorize-key? keys) ;; Assume that the store has BUILD-GROUP as its group. We could ;; otherwise call 'chown' here, but the problem is that on a COW unionfs, ;; chown leads to an entire copy of the tree, which is a bad idea. ;; Optionally authorize hydra.gnu.org's key. (if authorize-key? - (hydra-key-authorization guix) + #~(begin + #$@(map (cut hydra-key-authorization <> guix) keys)) #~#f)))) (define guix-service-type diff --git a/gnu/system.scm b/gnu/system.scm index 04dd7a845c..a21bc5eb0e 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -178,9 +178,9 @@ ;;; Services. ;;; -(define (other-file-system-services os) - "Return file system services for the file systems of OS that are not marked -as 'needed-for-boot'." +(define (non-boot-file-system-service os) + "Return the file system service for the file systems of OS that are not +marked as 'needed-for-boot'." (define file-systems (remove file-system-needed-for-boot? (operating-system-file-systems os))) @@ -204,7 +204,8 @@ as 'needed-for-boot'." (file-system-dependencies fs)) eq?)))) - (map (compose file-system-service add-dependencies) file-systems)) + (service file-system-service-type + (map add-dependencies file-systems))) (define (mapped-device-user device file-systems) "Return a file system among FILE-SYSTEMS that uses DEVICE, or #f." @@ -270,11 +271,11 @@ a container or that of a \"bare metal\" system." (let* ((mappings (device-mapping-services os)) (root-fs (root-file-system-service)) - (other-fs (other-file-system-services os)) + (other-fs (non-boot-file-system-service os)) (unmount (user-unmount-service known-fs)) (swaps (swap-services os)) (procs (user-processes-service - (map service-parameters other-fs))) + (service-parameters other-fs))) (host-name (host-name-service (operating-system-host-name os))) (entries (operating-system-directory-base-entries os #:container? container?))) @@ -302,7 +303,8 @@ a container or that of a \"bare metal\" system." (operating-system-setuid-programs os)) (service profile-service-type (operating-system-packages os)) - (append other-fs mappings swaps + other-fs + (append mappings swaps ;; Add the firmware service, unless we are building for a ;; container. diff --git a/gnu/system/shadow.scm b/gnu/system/shadow.scm index c3948900eb..cfdcf5e136 100644 --- a/gnu/system/shadow.scm +++ b/gnu/system/shadow.scm @@ -78,6 +78,8 @@ (default '())) ; list of strings (comment user-account-comment (default "")) (home-directory user-account-home-directory) + (create-home-directory? user-account-create-home-directory? ;Boolean + (default #t)) (shell user-account-shell ; gexp (default #~(string-append #$bash "/bin/bash"))) (system? user-account-system? ; Boolean @@ -128,6 +130,7 @@ (group "nogroup") (shell #~(string-append #$shadow "/sbin/nologin")) (home-directory "/nonexistent") + (create-home-directory? #f) (system? #t)))) (define (default-skeletons) @@ -255,6 +258,7 @@ of user '~a' is undeclared") #$(user-account-supplementary-groups account) #$(user-account-comment account) #$(user-account-home-directory account) + #$(user-account-create-home-directory? account) ,#$(user-account-shell account) ; this one is a gexp #$(user-account-password account) #$(user-account-system? account))) diff --git a/gnu/tests/base.scm b/gnu/tests/base.scm index 7170ab1e38..ca6f76c0f8 100644 --- a/gnu/tests/base.scm +++ b/gnu/tests/base.scm @@ -190,6 +190,42 @@ info --version") (setlocale LC_ALL before))) marionette)) + (test-assert "/run/current-system is a GC root" + (marionette-eval '(begin + ;; Make sure the (guix …) modules are found. + (eval-when (expand load eval) + (set! %load-path + (cons + (string-append + "/run/current-system/profile/share/guile/site/" + (effective-version)) + %load-path)) + (set! %load-compiled-path + (cons + (string-append + "/run/current-system/profile/share/guile/site/" + (effective-version)) + %load-compiled-path))) + + (use-modules (srfi srfi-34) (guix store)) + + (let ((system (readlink "/run/current-system"))) + (guard (c ((nix-protocol-error? c) + (file-exists? system))) + (with-store store + (delete-paths store (list system)) + #f)))) + marionette)) + + ;; This symlink is currently unused, but better have it point to the + ;; right place. See + ;; <https://lists.gnu.org/archive/html/guix-devel/2016-08/msg01641.html>. + (test-equal "/var/guix/gcroots/profiles is a valid symlink" + "/var/guix/profiles" + (marionette-eval '(readlink "/var/guix/gcroots/profiles") + marionette)) + + (test-assert "screendump" (begin (marionette-control (string-append "screendump " #$output |