diff options
author | Marius Bakke <mbakke@fastmail.com> | 2017-08-21 02:40:37 +0200 |
---|---|---|
committer | Marius Bakke <mbakke@fastmail.com> | 2017-08-21 02:40:37 +0200 |
commit | 2718a9cd096d0f5ae4b23cc0814a42aee5cf3c4d (patch) | |
tree | 334bed3ef9be203d77065a75380696c2537ede92 | |
parent | 9c4ce3afac2ad42c832dc7a9f0932744b5fd8892 (diff) | |
parent | e904de7ec1789e243e830b19187b5ef550b2eefa (diff) | |
download | gnu-guix-2718a9cd096d0f5ae4b23cc0814a42aee5cf3c4d.tar gnu-guix-2718a9cd096d0f5ae4b23cc0814a42aee5cf3c4d.tar.gz |
Merge branch 'master' into core-updates
77 files changed, 3645 insertions, 834 deletions
@@ -5,6 +5,7 @@ Copyright © 2012, 2013, 2014, 2016, 2017 Ludovic Courtès <ludo@gnu.org> Copyright © 2015, 2017 Mathieu Lirzin <mthl@gnu.org> Copyright © 2017 Leo Famulari <leo@famulari.name> +Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net> Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright @@ -61,3 +62,12 @@ after two weeks, and if you’re confident, it’s OK to commit. That last part is subject to being adjusted, allowing individuals to commit directly on non-controversial changes on parts they’re familiar with. + +* Using emacs-debbugs + +Bug reports and patches are tracked using debbugs. If you are on emacs, you +can use emacs-debbugs. + +List all open bug reports on guix-patches with + +C-u M-x debbugs-gnu <RET> <RET> guix-patches <RET> n y diff --git a/Makefile.am b/Makefile.am index 91a9113d22..9ba4ccba78 100644 --- a/Makefile.am +++ b/Makefile.am @@ -577,7 +577,7 @@ GUIXSD_SUPPORTED_SYSTEMS ?= x86_64-linux i686-linux GUIXSD_VM_SYSTEMS ?= x86_64-linux # Prefix of the GuixSD installation image file name. -GUIXSD_IMAGE_BASE = guixsd-usb-install-$(PACKAGE_VERSION) +GUIXSD_IMAGE_BASE = guixsd-install-$(PACKAGE_VERSION) # Prefix of the GuixSD VM image file name. GUIXSD_VM_IMAGE_BASE = guixsd-vm-image-$(PACKAGE_VERSION) @@ -628,6 +628,7 @@ release: dist for system in $(GUIXSD_SUPPORTED_SYSTEMS) ; do \ image=`$(top_builddir)/pre-inst-env \ guix system disk-image \ + --file-system-type=iso9660 \ --system=$$system \ gnu/system/install.scm` ; \ if [ ! -f "$$image" ] ; then \ diff --git a/doc/guix.texi b/doc/guix.texi index 94277ba396..bff0788b2f 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -216,7 +216,7 @@ Services * X Window:: Graphical display. * Printing Services:: Local and remote printer support. * Desktop Services:: D-Bus and desktop services. -* Database Services:: SQL databases. +* Database Services:: SQL databases, key-value stores, etc. * Mail Services:: IMAP, POP3, SMTP, and all that. * Messaging Services:: Messaging services. * Monitoring Services:: Monitoring services. @@ -2630,7 +2630,7 @@ configuration triplets,, autoconf, Autoconf}). @item --compression=@var{tool} @itemx -C @var{tool} Compress the resulting tarball using @var{tool}---one of @code{gzip}, -@code{bzip2}, @code{xz}, or @code{lzip}. +@code{bzip2}, @code{xz}, @code{lzip}, or @code{none} for no compression. @item --symlink=@var{spec} @itemx -S @var{spec} @@ -7465,6 +7465,7 @@ available. * Limitations:: What you can expect. * Hardware Considerations:: Supported hardware. * USB Stick Installation:: Preparing the installation medium. +* DVD Installation:: Preparing the installation medium. * Preparing for Installation:: Networking, partitioning, etc. * Proceeding with the Installation:: The real thing. * Installing GuixSD in a VM:: GuixSD playground. @@ -7554,7 +7555,7 @@ about their support in GNU/Linux. @subsection USB Stick Installation An installation image for USB sticks can be downloaded from -@indicateurl{ftp://alpha.gnu.org/gnu/guix/guixsd-usb-install-@value{VERSION}.@var{system}.xz}, +@indicateurl{ftp://alpha.gnu.org/gnu/guix/guixsd-install-@value{VERSION}.@var{system}.xz}, where @var{system} is one of: @table @code @@ -7570,8 +7571,8 @@ Make sure to download the associated @file{.sig} file and to verify the authenticity of the image against it, along these lines: @example -$ wget ftp://alpha.gnu.org/gnu/guix/guixsd-usb-install-@value{VERSION}.@var{system}.xz.sig -$ gpg --verify guixsd-usb-install-@value{VERSION}.@var{system}.xz.sig +$ wget ftp://alpha.gnu.org/gnu/guix/guixsd-install-@value{VERSION}.@var{system}.xz.sig +$ gpg --verify guixsd-install-@value{VERSION}.@var{system}.xz.sig @end example If that command fails because you do not have the required public key, @@ -7585,9 +7586,8 @@ $ gpg --keyserver pgp.mit.edu --recv-keys @value{OPENPGP-SIGNING-KEY-ID} and rerun the @code{gpg --verify} command. @c end duplication -This image contains a single partition with the tools necessary for an -installation. It is meant to be copied @emph{as is} to a large-enough -USB stick. +This image contains the tools necessary for an installation. +It is meant to be copied @emph{as is} to a large-enough USB stick or DVD. To copy the image to a USB stick, follow these steps: @@ -7596,7 +7596,7 @@ To copy the image to a USB stick, follow these steps: Decompress the image using the @command{xz} command: @example -xz -d guixsd-usb-install-@value{VERSION}.@var{system}.xz +xz -d guixsd-install-@value{VERSION}.@var{system}.xz @end example @item @@ -7605,7 +7605,7 @@ its device name. Assuming that the USB stick is known as @file{/dev/sdX}, copy the image with: @example -dd if=guixsd-usb-install-@value{VERSION}.x86_64 of=/dev/sdX +dd if=guixsd-install-@value{VERSION}.x86_64 of=/dev/sdX sync @end example @@ -7619,12 +7619,79 @@ UEFI boot menu, where you can choose to boot from the USB stick. @xref{Installing GuixSD in a VM}, if, instead, you would like to install GuixSD in a virtual machine (VM). +@node DVD Installation +@subsection DVD Installation + +An installation image for DVDs can be downloaded from +@indicateurl{ftp://alpha.gnu.org/gnu/guix/guixsd-install-@value{VERSION}.@var{system}.xz}, +where @var{system} is one of: + +@table @code +@item x86_64-linux +for a GNU/Linux system on Intel/AMD-compatible 64-bit CPUs; + +@item i686-linux +for a 32-bit GNU/Linux system on Intel-compatible CPUs. +@end table + +@c start duplication of authentication part from ``Binary Installation'' +Make sure to download the associated @file{.sig} file and to verify the +authenticity of the image against it, along these lines: + +@example +$ wget ftp://alpha.gnu.org/gnu/guix/guixsd-install-@value{VERSION}.@var{system}.xz.sig +$ gpg --verify guixsd-install-@value{VERSION}.@var{system}.xz.sig +@end example + +If that command fails because you do not have the required public key, +then run this command to import it: + +@example +$ gpg --keyserver pgp.mit.edu --recv-keys @value{OPENPGP-SIGNING-KEY-ID} +@end example + +@noindent +and rerun the @code{gpg --verify} command. +@c end duplication + +This image contains the tools necessary for an installation. +It is meant to be copied @emph{as is} to a large-enough USB stick or DVD. + +To copy the image to a DVD, follow these steps: + +@enumerate +@item +Decompress the image using the @command{xz} command: + +@example +xz -d guixsd-install-@value{VERSION}.@var{system}.xz +@end example + +@item +Insert a blank DVD into your machine, and determine +its device name. Assuming that the DVD drive is known as @file{/dev/srX}, +copy the image with: + +@example +growisofs -dvd-compat -Z /dev/srX=guixsd-install-@value{VERSION}.x86_64 +@end example + +Access to @file{/dev/srX} usually requires root privileges. +@end enumerate + +Once this is done, you should be able to reboot the system and boot from +the DVD. The latter usually requires you to get in the BIOS or +UEFI boot menu, where you can choose to boot from the DVD. + +@xref{Installing GuixSD in a VM}, if, instead, you would like to install +GuixSD in a virtual machine (VM). + @node Preparing for Installation @subsection Preparing for Installation -Once you have successfully booted the image on the USB stick, you should -end up with a root prompt. Several console TTYs are configured and can -be used to run commands as root. TTY2 shows this documentation, +Once you have successfully booted your computer using the installation medium, +you should end up with a root prompt. Several console TTYs are configured +and can be used to run commands as root. TTY2 shows this documentation, browsable using the Info reader commands (@pxref{Top,,, info-stnd, Stand-alone GNU Info}). The installation system runs the GPM mouse daemon, which allows you to select text with the left mouse button and @@ -7979,7 +8046,7 @@ Boot the USB installation image in an VM: @example qemu-system-x86_64 -m 1024 -smp 1 \ -net user -net nic,model=virtio -boot menu=on \ - -drive file=guixsd-usb-install-@value{VERSION}.@var{system} \ + -drive file=guixsd-install-@value{VERSION}.@var{system} \ -drive file=guixsd.img @end example diff --git a/gnu/bootloader/grub.scm b/gnu/bootloader/grub.scm index ef62fe059b..a9f0875f36 100644 --- a/gnu/bootloader/grub.scm +++ b/gnu/bootloader/grub.scm @@ -389,7 +389,20 @@ submenu \"GNU system, old configurations...\" {~%") (unless (zero? (system* grub "--no-floppy" "--boot-directory" install-dir device)) - (error "failed to install GRUB"))))) + (error "failed to install GRUB (BIOS)"))))) + +(define install-grub-efi + #~(lambda (bootloader efi-dir mount-point) + ;; Install GRUB onto the EFI partition mounted at EFI-DIR, for the + ;; system whose root is mounted at MOUNT-POINT. + (let ((grub-install (string-append bootloader "/sbin/grub-install")) + (install-dir (string-append mount-point "/boot"))) + ;; Tell 'grub-install' that there might be a LUKS-encrypted /boot or + ;; root partition. + (setenv "GRUB_ENABLE_CRYPTODISK" "y") + (unless (zero? (system* grub-install "--boot-directory" install-dir + "--efi-directory" efi-dir)) + (error "failed to install GRUB (EFI)"))))) @@ -408,6 +421,7 @@ submenu \"GNU system, old configurations...\" {~%") (define* grub-efi-bootloader (bootloader (inherit grub-bootloader) + (installer install-grub-efi) (name 'grub-efi) (package grub-efi))) diff --git a/gnu/local.mk b/gnu/local.mk index 961c1d3274..0c625469cf 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -196,6 +196,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/gv.scm \ %D%/packages/gxmessage.scm \ %D%/packages/haskell.scm \ + %D%/packages/ham-radio.scm \ %D%/packages/hexedit.scm \ %D%/packages/hugs.scm \ %D%/packages/hurd.scm \ @@ -527,6 +528,7 @@ dist_patch_DATA = \ %D%/packages/patches/awesome-reproducible-png.patch \ %D%/packages/patches/azr3.patch \ %D%/packages/patches/bash-completion-directories.patch \ + %D%/packages/patches/bcftools-regidx-unsigned-char.patch \ %D%/packages/patches/binutils-ld-new-dtags.patch \ %D%/packages/patches/binutils-loongson-workaround.patch \ %D%/packages/patches/blast+-fix-makefile.patch \ @@ -670,6 +672,9 @@ dist_patch_DATA = \ %D%/packages/patches/gobject-introspection-absolute-shlib-path.patch \ %D%/packages/patches/gobject-introspection-cc.patch \ %D%/packages/patches/gobject-introspection-girepository.patch \ + %D%/packages/patches/graphicsmagick-CVE-2017-12935.patch \ + %D%/packages/patches/graphicsmagick-CVE-2017-12936.patch \ + %D%/packages/patches/graphicsmagick-CVE-2017-12937.patch \ %D%/packages/patches/graphite2-ffloat-store.patch \ %D%/packages/patches/grep-gnulib-lock.patch \ %D%/packages/patches/grep-timing-sensitive-test.patch \ @@ -822,7 +827,6 @@ dist_patch_DATA = \ %D%/packages/patches/lvm2-static-link.patch \ %D%/packages/patches/lxsession-use-gapplication.patch \ %D%/packages/patches/lxterminal-CVE-2016-10369.patch \ - %D%/packages/patches/lz4-fix-test-failures.patch \ %D%/packages/patches/make-impure-dirs.patch \ %D%/packages/patches/mars-install.patch \ %D%/packages/patches/mars-sfml-2.3.patch \ @@ -859,6 +863,7 @@ dist_patch_DATA = \ %D%/packages/patches/netsurf-system-utf8proc.patch \ %D%/packages/patches/netsurf-y2038-tests.patch \ %D%/packages/patches/netsurf-longer-test-timeout.patch \ + %D%/packages/patches/newsbeuter-CVE-2017-12904.patch \ %D%/packages/patches/ngircd-handle-zombies.patch \ %D%/packages/patches/ninja-zero-mtime.patch \ %D%/packages/patches/node-9077.patch \ @@ -953,7 +958,6 @@ dist_patch_DATA = \ %D%/packages/patches/python2-rdflib-drop-sparqlwrapper.patch \ %D%/packages/patches/python-statsmodels-fix-tests.patch \ %D%/packages/patches/python-configobj-setuptools.patch \ - %D%/packages/patches/python-cython-fix-tests-32bit.patch \ %D%/packages/patches/python-faker-fix-build-32bit.patch \ %D%/packages/patches/python-pandas-skip-failing-tests.patch \ %D%/packages/patches/python-paste-remove-website-test.patch \ @@ -990,7 +994,6 @@ dist_patch_DATA = \ %D%/packages/patches/reptyr-fix-gcc-7.patch \ %D%/packages/patches/ripperx-missing-file.patch \ %D%/packages/patches/rpcbind-CVE-2017-8779.patch \ - %D%/packages/patches/rpm-CVE-2014-8118.patch \ %D%/packages/patches/rsem-makefile.patch \ %D%/packages/patches/ruby-concurrent-ignore-broken-test.patch \ %D%/packages/patches/ruby-concurrent-test-arm.patch \ @@ -1060,6 +1063,8 @@ dist_patch_DATA = \ %D%/packages/patches/util-linux-tests.patch \ %D%/packages/patches/upower-builddir.patch \ %D%/packages/patches/valgrind-enable-arm.patch \ + %D%/packages/patches/vinagre-revert-1.patch \ + %D%/packages/patches/vinagre-revert-2.patch \ %D%/packages/patches/virglrenderer-CVE-2017-6386.patch \ %D%/packages/patches/vorbis-tools-CVE-2014-9638+CVE-2014-9639.patch \ %D%/packages/patches/vorbis-tools-CVE-2014-9640.patch \ @@ -1091,6 +1096,7 @@ dist_patch_DATA = \ %D%/packages/patches/xf86-video-geode-glibc-2.20.patch \ %D%/packages/patches/xf86-video-i128-remove-mibstore.patch \ %D%/packages/patches/xf86-video-mach64-glibc-2.20.patch \ + %D%/packages/patches/xf86-video-siliconmotion-fix-ftbfs.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 a7e79da3ff..fb7fcd6c4b 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -1793,14 +1793,14 @@ highly portable. Great for heterogeneous networks.") (define-public cbatticon (package (name "cbatticon") - (version "1.6.5") + (version "1.6.6") (source (origin (method url-fetch) (uri (string-append "https://github.com/valr/" name "/archive/" version ".tar.gz")) (sha256 (base32 - "0xzz1faqgm57bwlkw6sjdfbckf5hck81879zbfk18p7xn9vhvixv")) + "1rxlrwd817f2zl4fsc5ha43wjzfidq3yyagq4lgyi150qg36svv3")) (file-name (string-append name "-" version ".tar.gz")))) (build-system gnu-build-system) (arguments diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm index c57c703700..74ef7dc285 100644 --- a/gnu/packages/algebra.scm +++ b/gnu/packages/algebra.scm @@ -207,7 +207,7 @@ GP2C, the GP to C compiler, translates GP scripts to PARI programs.") (define-public giac-xcas (package (name "giac-xcas") - (version "1.2.3-51") + (version "1.2.3-57") (source (origin (method url-fetch) ;; "~parisse/giac" is not used because the maintainer regularly @@ -219,7 +219,7 @@ GP2C, the GP to C compiler, translates GP scripts to PARI programs.") "source/giac_" version ".tar.gz")) (sha256 (base32 - "1w7d4sdjbvqiibnfkhrqy9np3smsysilfba9pry3q1qn5g5y6nrp")))) + "0a7c1r2rgsin671qy98yvwgkg6a81d0pp0p4p7sydhrfi1k9xpr1")))) (build-system gnu-build-system) (arguments `(#:phases diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 87cf164c1a..c5157046ab 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -311,6 +311,7 @@ BAM files.") (sha256 (base32 "0093hkkvxmbwfaa7905s6185jymynvg42kq6sxv7fili11l5mxwz")) + (patches (search-patches "bcftools-regidx-unsigned-char.patch")) (modules '((guix build utils))) (snippet ;; Delete bundled htslib. @@ -2114,7 +2115,7 @@ identify enrichments with functional annotations of the genome.") (define-public diamond (package (name "diamond") - (version "0.9.9") + (version "0.9.10") (source (origin (method url-fetch) (uri (string-append @@ -2123,7 +2124,7 @@ identify enrichments with functional annotations of the genome.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "04i03046g3l2vk9722z47r1p7j415g97vvz6d76ywmbawyiihcb1")))) + "13qqzwg54n5dqh8pm5n3v8x6gqbczzakphwwjix63qv60hcd5bqd")))) (build-system cmake-build-system) (arguments '(#:tests? #f ; no "check" target @@ -8315,6 +8316,30 @@ package, and for letting R applications work on datasets that are larger than the available RAM.") (license license:artistic2.0))) +(define-public r-annotationfilter + (package + (name "r-annotationfilter") + (version "1.0.0") + (source (origin + (method url-fetch) + (uri (bioconductor-uri "AnnotationFilter" version)) + (sha256 + (base32 + "0pxvswjzwibdfmrkdragxmzcl844z73pmkn82z92wahwa6gjfyi7")))) + (properties + `((upstream-name . "AnnotationFilter"))) + (build-system r-build-system) + (propagated-inputs + `(("r-genomicranges" ,r-genomicranges) + ("r-lazyeval" ,r-lazyeval))) + (home-page "https://github.com/Bioconductor/AnnotationFilter") + (synopsis "Facilities for filtering Bioconductor annotation resources") + (description + "This package provides classes and other infrastructure to implement +filters for manipulating Bioconductor annotation resources. The filters are +used by @code{ensembldb}, @code{Organism.dplyr}, and other packages.") + (license license:artistic2.0))) + (define-public emboss (package (name "emboss") @@ -8672,6 +8697,52 @@ CopywriteR constitutes a widely applicable alternative to available copy number detection tools.") (license license:gpl2))) +(define-public r-methylkit + (package + (name "r-methylkit") + (version "1.2.0") + (source (origin + (method url-fetch) + (uri (bioconductor-uri "methylKit" version)) + (sha256 + (base32 + "02acdjf6jl0c1glymin84pdna4farn4vv0gb6107d9iqz3y3gkmm")))) + (properties `((upstream-name . "methylKit"))) + (build-system r-build-system) + (propagated-inputs + `(("r-data-table" ,r-data-table) + ("r-emdbook" ,r-emdbook) + ("r-fastseg" ,r-fastseg) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicranges" ,r-genomicranges) + ("r-gtools" ,r-gtools) + ("r-iranges" ,r-iranges) + ("r-kernsmooth" ,r-kernsmooth) + ("r-limma" ,r-limma) + ("r-mclust" ,r-mclust) + ("r-qvalue" ,r-qvalue) + ("r-r-utils" ,r-r-utils) + ("r-rcpp" ,r-rcpp) + ("r-rhtslib" ,r-rhtslib) + ("r-rsamtools" ,r-rsamtools) + ("r-rtracklayer" ,r-rtracklayer) + ("r-s4vectors" ,r-s4vectors) + ("r-zlibbioc" ,r-zlibbioc))) + (inputs + `(("zlib" ,zlib))) + (home-page "http://code.google.com/p/methylkit/") + (synopsis + "DNA methylation analysis from high-throughput bisulfite sequencing results") + (description + "MethylKit is an R package for DNA methylation analysis and annotation +from high-throughput bisulfite sequencing. The package is designed to deal +with sequencing data from @dfn{Reduced representation bisulfite +sequencing} (RRBS) and its variants, but also target-capture methods and whole +genome bisulfite sequencing. It also has functions to analyze base-pair +resolution 5hmC data from experimental protocols such as oxBS-Seq and +TAB-Seq.") + (license license:artistic2.0))) + (define-public r-sva (package (name "r-sva") @@ -8816,7 +8887,8 @@ proteomics packages.") (properties `((upstream-name . "mzR"))) (build-system r-build-system) (inputs - `(("netcdf" ,netcdf))) + `(("boost" ,boost) + ("netcdf" ,netcdf))) (propagated-inputs `(("r-biobase" ,r-biobase) ("r-biocgenerics" ,r-biocgenerics) @@ -9234,6 +9306,123 @@ distributional differences between lanes (e.g., sequencing depth): global-scaling and full-quantile normalization.") (license license:artistic2.0))) +(define-public r-interactivedisplaybase + (package + (name "r-interactivedisplaybase") + (version "1.14.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "interactiveDisplayBase" version)) + (sha256 + (base32 + "12f6ap4bl3h2iwwhg8i3r9a7yyd28d8i5lb3fj1vnfvjs762r7r7")))) + (properties + `((upstream-name . "interactiveDisplayBase"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-shiny" ,r-shiny))) + (home-page "http://bioconductor.org/packages/interactiveDisplayBase") + (synopsis "Base package for web displays of Bioconductor objects") + (description + "This package contains the basic methods needed to generate interactive +Shiny-based display methods for Bioconductor objects.") + (license license:artistic2.0))) + +(define-public r-annotationhub + (package + (name "r-annotationhub") + (version "2.8.2") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "AnnotationHub" version)) + (sha256 + (base32 + "1nh5si3j1nv37jcg4260582ayjg18851np47cskrm54prnvhwd9r")))) + (properties `((upstream-name . "AnnotationHub"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotationdbi" ,r-annotationdbi) + ("r-biocgenerics" ,r-biocgenerics) + ("r-biocinstaller" ,r-biocinstaller) + ("r-httr" ,r-httr) + ("r-interactivedisplaybase" ,r-interactivedisplaybase) + ("r-rsqlite" ,r-rsqlite) + ("r-s4vectors" ,r-s4vectors) + ("r-yaml" ,r-yaml))) + (home-page "http://bioconductor.org/packages/AnnotationHub") + (synopsis "Client to access AnnotationHub resources") + (description + "This package provides a client for the Bioconductor AnnotationHub web +resource. The AnnotationHub web resource provides a central location where +genomic files (e.g. VCF, bed, wig) and other resources from standard +locations (e.g. UCSC, Ensembl) can be discovered. The resource includes +metadata about each resource, e.g., a textual description, tags, and date of +modification. The client creates and manages a local cache of files retrieved +by the user, helping with quick and reproducible access.") + (license license:artistic2.0))) + +(define-public r-fastseg + (package + (name "r-fastseg") + (version "1.22.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "fastseg" version)) + (sha256 + (base32 + "083wiz03q9mynwchs9frlpp6c84dncri5ncibx6h82p228cpja6h")))) + (build-system r-build-system) + (propagated-inputs + `(("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-genomicranges" ,r-genomicranges) + ("r-iranges" ,r-iranges) + ("r-s4vectors" ,r-s4vectors))) + (home-page "http://www.bioinf.jku.at/software/fastseg/index.html") + (synopsis "Fast segmentation algorithm for genetic sequencing data") + (description + "Fastseg implements a very fast and efficient segmentation algorithm. +It can segment data from DNA microarrays and data from next generation +sequencing for example to detect copy number segments. Further it can segment +data from RNA microarrays like tiling arrays to identify transcripts. Most +generally, it can segment data given as a matrix or as a vector. Various data +formats can be used as input to fastseg like expression set objects for +microarrays or GRanges for sequencing data.") + (license license:lgpl2.0+))) + +(define-public r-qvalue + (package + (name "r-qvalue") + (version "2.8.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "qvalue" version)) + (sha256 + (base32 + "1dxdwa767a9r8n61r272ypi09qblcdfpzzwkmri74y5mbp1r3y4i")))) + (build-system r-build-system) + (propagated-inputs + `(("r-ggplot2" ,r-ggplot2) + ("r-reshape2" ,r-reshape2))) + (home-page "http://github.com/jdstorey/qvalue") + (synopsis "Q-value estimation for false discovery rate control") + (description + "This package takes a list of p-values resulting from the simultaneous +testing of many hypotheses and estimates their q-values and local @dfn{false +discovery rate} (FDR) values. The q-value of a test measures the proportion +of false positives incurred when that particular test is called significant. +The local FDR measures the posterior probability the null hypothesis is true +given the test's p-value. Various plots are automatically generated, allowing +one to make sensible significance cut-offs. The software can be applied to +problems in genomics, brain imaging, astrophysics, and data mining.") + ;; Any version of the LGPL. + (license license:lgpl3+))) + (define htslib-for-sambamba (let ((commit "2f3c3ea7b301f9b45737a793c0b2dcf0240e5ee5")) (package diff --git a/gnu/packages/ci.scm b/gnu/packages/ci.scm index e2cb712bf1..d936c8fa10 100644 --- a/gnu/packages/ci.scm +++ b/gnu/packages/ci.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2016, 2017 Mathieu Lirzin <mthl@gnu.org> ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> +;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -186,8 +187,8 @@ their dependencies.") (license l:gpl3+)))) (define-public cuirass - (let ((commit "870e8d6ad3415ac61c52e57095fcc6164023a0fc") - (revision "6")) + (let ((commit "6f85bc04f31ae5853ceaa0bb3e1dedfe8412a189") + (revision "7")) (package (name "cuirass") (version (string-append "0.0.1-" revision "." (string-take commit 7))) @@ -199,7 +200,7 @@ their dependencies.") (file-name (string-append name "-" version)) (sha256 (base32 - "0lp5a5p42k7lml15lbmmd7az9i0gw5kips3sh3awd2z79h0w2knw")))) + "1dglsa23z21m1s70420ar73qmg39fvdvwlz9xjz6lfp5s9mgzx15")))) (build-system gnu-build-system) (arguments '(#:modules ((guix build utils) @@ -223,7 +224,8 @@ their dependencies.") (let* ((out (assoc-ref outputs "out")) (json (assoc-ref inputs "guile-json")) (sqlite (assoc-ref inputs "guile-sqlite3")) - (git (assoc-ref inputs "git")) + (git (assoc-ref inputs "guile-git")) + (bytes (assoc-ref inputs "guile-bytestructures")) (guix (assoc-ref inputs "guix")) (guile (assoc-ref %build-inputs "guile")) (effective (read-line @@ -232,15 +234,18 @@ their dependencies.") "-c" "(display (effective-version))"))) (mods (string-append json "/share/guile/site/" effective ":" + git "/share/guile/site/" + effective ":" + bytes "/share/guile/site/" + effective ":" sqlite "/share/guile/site/" effective ":" guix "/share/guile/site/" effective))) - ;; Make sure 'cuirass' can find the 'git' and 'evaluate' - ;; commands, as well as the relevant Guile modules. + ;; Make sure 'cuirass' can find the 'evaluate' command, as + ;; well as the relevant Guile modules. (wrap-program (string-append out "/bin/cuirass") - `("PATH" ":" prefix (,(string-append out "/bin") - ,(string-append git "/bin"))) + `("PATH" ":" prefix (,(string-append out "/bin"))) `("GUILE_LOAD_PATH" ":" prefix (,mods)) `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,mods))) #t)))))) @@ -248,8 +253,11 @@ their dependencies.") `(("guile" ,guile-2.2) ("guile-json" ,guile-json) ("guile-sqlite3" ,guile-sqlite3) - ("guix" ,guix) - ("git" ,git))) + ("guile-git" ,guile-git) + ;; FIXME: this is propagated by "guile-git", but it needs to be among + ;; the inputs to add it to GUILE_LOAD_PATH. + ("guile-bytestructures" ,guile-bytestructures) + ("guix" ,guix))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index f2989d9c15..ebb4e407f1 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -606,14 +606,14 @@ sfArk file format to the uncompressed sf2 format.") (define-public libmspack (package (name "libmspack") - (version "0.5") + (version "0.6") (source (origin (method url-fetch) (uri (string-append "http://www.cabextract.org.uk/libmspack/libmspack-" version "alpha.tar.gz")) (sha256 - (base32 "04413hynb7zizxnkgy9riik3612dwirkpr6fcjrnfl2za9sz4rw9")))) + (base32 "08gr2pcinas6bdqz3k0286g5cnksmcx813skmdwyca6bmj1fxnqy")))) (build-system gnu-build-system) (home-page "http://www.cabextract.org.uk/libmspack/") (synopsis "Compression tools for some formats used by Microsoft") @@ -702,16 +702,15 @@ writing of compressed data created with the zlib and bzip2 libraries.") (define-public lz4 (package (name "lz4") - (version "1.7.5") + (version "1.8.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/lz4/lz4/archive/" "v" version ".tar.gz")) - (patches (search-patches "lz4-fix-test-failures.patch")) (sha256 (base32 - "0zkykqqjfa1q3ji0qmb1ml3l9063qqfh99agyj3cnb02cg6wm401")) + "1xnckwwah74gl98gylf1b00vk4km1d8sgd8865h07ccvgbm8591c")) (file-name (string-append name "-" version ".tar.gz")))) (build-system gnu-build-system) (native-inputs `(("valgrind" ,valgrind))) ; for tests @@ -722,14 +721,14 @@ writing of compressed data created with the zlib and bzip2 libraries.") (string-append "PREFIX=" (assoc-ref %outputs "out"))) #:phases (modify-phases %standard-phases (delete 'configure)))) ; no configure script - (home-page "https://github.com/lz4/lz4") + (home-page "http://www.lz4.org") (synopsis "Compression algorithm focused on speed") (description "LZ4 is a lossless compression algorithm, providing compression speed at 400 MB/s per core (0.16 Bytes/cycle). It also features an extremely fast decoder, with speed in multiple GB/s per core (0.71 Bytes/cycle). A high compression derivative, called LZ4_HC, is also provided. It trades CPU time for compression ratio.") - ;; The libraries (lz4, lz4hc, and xxhash are BSD licenced. The command + ;; The libraries (lz4, lz4hc, and xxhash) are BSD licenced. The command ;; line interface programs (lz4, fullbench, fuzzer, datagen) are GPL2+. (license (list license:bsd-2 license:gpl2+)))) diff --git a/gnu/packages/connman.scm b/gnu/packages/connman.scm index 8f567fa61b..a2a5556fb8 100644 --- a/gnu/packages/connman.scm +++ b/gnu/packages/connman.scm @@ -42,7 +42,7 @@ (define-public connman (package (name "connman") - (version "1.34") + (version "1.35") (source (origin (method url-fetch) @@ -50,7 +50,7 @@ name "-" version ".tar.xz")) (sha256 (base32 - "07n71wcy1c4cc01ca4dl9k1jpdqr5nsyr33dqf7k87wwfa681859")))) + "1apj5j25kj7v1bsfv3nh54aiq873nfrsjfbj85p5qm3ihfwxxmv6")))) (build-system gnu-build-system) (arguments `(#:configure-flags diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index feae801116..bb7576352f 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -21,7 +21,12 @@ #:use-module (guix packages) #:use-module (guix download) #:use-module (guix utils) - #:use-module (guix build-system r)) + #:use-module (guix build-system r) + #:use-module (gnu packages gcc) + #:use-module (gnu packages maths) + #:use-module (gnu packages perl) + #:use-module (gnu packages statistics) + #:use-module (gnu packages web)) (define-public r-colorspace (package @@ -148,3 +153,778 @@ where the bound function accepts additional arguments.") "This package provides an easy way to fill an environment with active bindings that call a C++ function.") (license license:expat))) + +(define-public r-auc + (package + (name "r-auc") + (version "0.3.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "AUC" version)) + (sha256 + (base32 + "0ripcib2qz0m7rgr1kiz68nx8f6p408l1ww7j78ljqik7p3g41g7")))) + (properties `((upstream-name . "AUC"))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/AUC") + (synopsis "Compute the area under the curve of selected measures") + (description + "This package includes functions to compute the area under the curve of +selected measures: the area under the sensitivity curve (AUSEC), the area +under the specificity curve (AUSPC), the area under the accuracy +curve (AUACC), and the area under the receiver operating characteristic +curve (AUROC). The curves can also be visualized. Support for partial areas +is provided.") + (license license:gpl2+))) + +(define-public r-calibrate + (package + (name "r-calibrate") + (version "1.7.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "calibrate" version)) + (sha256 + (base32 + "010nb1nb9y7zhw2k6d2i2drwy5brp7b83mjj2w7i3wjp9xb6l1kq")))) + (build-system r-build-system) + (propagated-inputs + `(("r-mass" ,r-mass))) + (home-page "http://cran.r-project.org/web/packages/calibrate") + (synopsis "Calibration of scatterplot and biplot axes") + (description + "This is a package for drawing calibrated scales with tick marks +on (non-orthogonal) variable vectors in scatterplots and biplots.") + (license license:gpl2))) + +(define-public r-shape + (package + (name "r-shape") + (version "1.4.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "shape" version)) + (sha256 + (base32 + "0yk3cmsa57svcvbnm21pyr0s0qbhnllka8nmsg4yb41frjlqph66")))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/shape") + (synopsis "Functions for plotting graphical shapes") + (description + "This package provides functions for plotting graphical shapes such as +ellipses, circles, cylinders, arrows, ...") + (license license:gpl3+))) + +(define-public r-globaloptions + (package + (name "r-globaloptions") + (version "0.0.12") + (source + (origin + (method url-fetch) + (uri (cran-uri "GlobalOptions" version)) + (sha256 + (base32 + "1abpc03cfvazbwj2sx6qgngs5pgpzysvxkana20hyvb4n7ws77f0")))) + (properties `((upstream-name . "GlobalOptions"))) + (build-system r-build-system) + (home-page "https://github.com/jokergoo/GlobalOptions") + (synopsis "Generate functions to get or set global options") + (description + "This package provides more controls on the option values such as +validation and filtering on the values, making options invisible or private.") + (license license:gpl2+))) + +(define-public r-circlize + (package + (name "r-circlize") + (version "0.4.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "circlize" version)) + (sha256 + (base32 + "0p1zx1aawkblz48kzzfn5w1k3lbwv9wrk1k5gcfjrr2b4sz1pp5b")))) + (build-system r-build-system) + (propagated-inputs + `(("r-colorspace" ,r-colorspace) + ("r-globaloptions" ,r-globaloptions) + ("r-shape" ,r-shape))) + (home-page "https://github.com/jokergoo/circlize") + (synopsis "Circular visualization") + (description + "Circular layout is an efficient way for the visualization of huge +amounts of information. This package provides an implementation of circular +layout generation in R as well as an enhancement of available software. The +flexibility of the package is based on the usage of low-level graphics +functions such that self-defined high-level graphics can be easily implemented +by users for specific purposes. Together with the seamless connection between +the powerful computational and visual environment in R, it gives users more +convenience and freedom to design figures for better understanding complex +patterns behind multiple dimensional data.") + (license license:gpl2+))) + +(define-public r-powerlaw + (package + (name "r-powerlaw") + (version "0.70.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "poweRlaw" version)) + (sha256 + (base32 + "1p2la3hslxq2xa8jkwvci6zcpn47cvyr9xqd5agp1riwwp2xw5gh")))) + (properties `((upstream-name . "poweRlaw"))) + (build-system r-build-system) + (propagated-inputs + `(("r-vgam" ,r-vgam))) + (home-page "https://github.com/csgillespie/poweRlaw") + (synopsis "Tools for the analysis of heavy tailed distributions") + (description + "This package provides an implementation of maximum likelihood estimators +for a variety of heavy tailed distributions, including both the discrete and +continuous power law distributions. Additionally, a goodness-of-fit based +approach is used to estimate the lower cut-off for the scaling region.") + ;; Any of these GPL versions. + (license (list license:gpl2 license:gpl3)))) + +(define-public r-compare + (package + (name "r-compare") + (version "0.2-6") + (source + (origin + (method url-fetch) + (uri (cran-uri "compare" version)) + (sha256 + (base32 + "0k9zms930b5dz9gy8414li21wy0zg9x9vp7301v5cvyfi0g7xzgw")))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/compare") + (synopsis "Comparing objects for differences") + (description + "This package provides functions to compare a model object to a +comparison object. If the objects are not identical, the functions can be +instructed to explore various modifications of the objects (e.g., sorting +rows, dropping names) to see if the modified versions are identical.") + (license license:gpl2+))) + +(define-public r-dendextend + (package + (name "r-dendextend") + (version "1.5.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "dendextend" version)) + (sha256 + (base32 + "04jz58apibfrkjcrdmw2hmsav6qpb5cs6qdai81k1v1iznfcya42")))) + (build-system r-build-system) + (propagated-inputs + `(("r-fpc" ,r-fpc) + ("r-ggplot2" ,r-ggplot2) + ("r-magrittr" ,r-magrittr) + ("r-viridis" ,r-viridis) + ("r-whisker" ,r-whisker))) + (home-page "https://cran.r-project.org/web/packages/dendextend") + (synopsis "Extending 'dendrogram' functionality in R") + (description + "This package offers a set of functions for extending @code{dendrogram} +objects in R, letting you visualize and compare trees of hierarchical +clusterings. You can adjust a tree's graphical parameters (the color, size, +type, etc of its branches, nodes and labels) and visually and statistically +compare different dendrograms to one another.") + ;; Any of these versions + (license (list license:gpl2 license:gpl3)))) + +(define-public r-getoptlong + (package + (name "r-getoptlong") + (version "0.1.6") + (source + (origin + (method url-fetch) + (uri (cran-uri "GetoptLong" version)) + (sha256 + (base32 + "1d98gcvlvp9nz5lbnzr0kkpc2hbkx74hlhrnybqhg1gdwc3g09pm")))) + (properties `((upstream-name . "GetoptLong"))) + (build-system r-build-system) + (inputs + `(("perl" ,perl))) + (propagated-inputs + `(("r-globaloptions" ,r-globaloptions) + ("r-rjson" ,r-rjson))) + (home-page "https://github.com/jokergoo/GetoptLong") + (synopsis "Parsing command-line arguments and variable interpolation") + (description + "This is yet another command-line argument parser which wraps the +powerful Perl module @code{Getopt::Long} and with some adaptation for easier +use in R. It also provides a simple way for variable interpolation in R.") + (license license:gpl2+))) + +(define-public r-fastmatch + (package + (name "r-fastmatch") + (version "1.1-0") + (source + (origin + (method url-fetch) + (uri (cran-uri "fastmatch" version)) + (sha256 + (base32 + "0z80jxkygmzn11sq0c2iz357s9bpki548lg926g85gldhfj1md90")))) + (build-system r-build-system) + (home-page "http://www.rforge.net/fastmatch") + (synopsis "Fast match function") + (description + "This package provides a fast @code{match} replacement for cases that +require repeated look-ups. It is slightly faster that R's built-in +@code{match} function on first match against a table, but extremely fast on +any subsequent lookup as it keeps the hash table in memory.") + (license license:gpl2))) + +(define-public r-ff + (package + (name "r-ff") + (version "2.2-13") + (source + (origin + (method url-fetch) + (uri (cran-uri "ff" version)) + (sha256 + (base32 + "1nvd6kx46xzyc99a44mgynd94pvd2h495m5a7b1g67k5w2phiywb")))) + (build-system r-build-system) + (propagated-inputs `(("r-bit" ,r-bit))) + (home-page "http://ff.r-forge.r-project.org/") + (synopsis "Memory-efficient storage of large data on disk and access functions") + (description + "This package provides data structures that are stored on disk but +behave (almost) as if they were in RAM by transparently mapping only a section +in main memory.") + (license license:gpl2))) + +(define-public r-ffbase + (package + (name "r-ffbase") + (version "0.12.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "ffbase" version)) + (sha256 + (base32 + "1nz97bndxxkzp8rq6va8ff5ky9vkaib1jybm6j852awwb3n9had5")))) + (build-system r-build-system) + (propagated-inputs + `(("r-bit" ,r-bit) + ("r-fastmatch" ,r-fastmatch) + ("r-ff" ,r-ff))) + (home-page "http://github.com/edwindj/ffbase") + (synopsis "Basic statistical functions for package 'ff'") + (description + "This package extends the out of memory vectors of @code{ff} with +statistical functions and other utilities to ease their usage.") + (license license:gpl3))) + +(define-public r-prettyunits + (package + (name "r-prettyunits") + (version "1.0.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "prettyunits" version)) + (sha256 + (base32 + "0p3z42hnk53x7ky4d1dr2brf7p8gv3agxr71i99m01n2hq2ri91m")))) + (build-system r-build-system) + (propagated-inputs + `(("r-assertthat" ,r-assertthat) + ("r-magrittr" ,r-magrittr))) + (home-page "https://github.com/gaborcsardi/prettyunits") + (synopsis "Pretty, human readable formatting of quantities") + (description + "This package provides tools for pretty, human readable formatting of +quantities.") + (license license:expat))) + +(define-public r-reshape + (package + (name "r-reshape") + (version "0.8.6") + (source + (origin + (method url-fetch) + (uri (cran-uri "reshape" version)) + (sha256 + (base32 + "1f1ngalc22knhdm9djv1m6abnjqpv1frdzxfkpakhph2l67bk7fq")))) + (build-system r-build-system) + (propagated-inputs + `(("r-plyr" ,r-plyr) + ("r-rcpp" ,r-rcpp))) + (home-page "http://had.co.nz/reshape") + (synopsis "Flexibly reshape data") + (description + "Flexibly restructure and aggregate data using just two functions: +@code{melt} and @code{cast}. This package provides them.") + (license license:expat))) + +(define-public r-progress + (package + (name "r-progress") + (version "1.1.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "progress" version)) + (sha256 + (base32 + "1fxakchfjr5vj59s9sxynd7crpz97xj42438rmkhkf3rjpyspx59")))) + (build-system r-build-system) + (propagated-inputs + `(("r-prettyunits" ,r-prettyunits) + ("r-r6" ,r-r6))) + (home-page "https://github.com/gaborcsardi/progress") + (synopsis "Terminal progress bars") + (description + "This package provides configurable progress bars. They may include +percentage, elapsed time, and/or the estimated completion time. They work in +terminals, in Emacs ESS, RStudio, Windows Rgui, and the macOS R.app. The +package also provides a C++ API, that works with or without Rcpp.") + (license license:expat))) + +(define-public r-ggally + (package + (name "r-ggally") + (version "1.3.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "GGally" version)) + (sha256 + (base32 + "12ddab0nd0f9c7bb6cx3c22mliyvc8xsxv26aqz3cvfbla8crp3b")))) + (properties `((upstream-name . "GGally"))) + (build-system r-build-system) + (propagated-inputs + `(("r-ggplot2" ,r-ggplot2) + ("r-gtable" ,r-gtable) + ("r-plyr" ,r-plyr) + ("r-progress" ,r-progress) + ("r-rcolorbrewer" ,r-rcolorbrewer) + ("r-reshape" ,r-reshape))) + (home-page "https://ggobi.github.io/ggally") + (synopsis "Extension to ggplot2") + (description + "The R package ggplot2 is a plotting system based on the grammar of +graphics. GGally extends ggplot2 by adding several functions to reduce the +complexity of combining geometric objects with transformed data. Some of +these functions include a pairwise plot matrix, a two group pairwise plot +matrix, a parallel coordinates plot, a survival plot, and several functions to +plot networks.") + (license license:gpl2+))) + +(define-public r-proxy + (package + (name "r-proxy") + (version "0.4-17") + (source + (origin + (method url-fetch) + (uri (cran-uri "proxy" version)) + (sha256 + (base32 + "0bg1fn96qrj8whmnl7c3gv244ksm2ykxxsd0zrmw4lb6465pizl2")))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/proxy") + (synopsis "Distance and similarity measures") + (description + "This package provides an extensible framework for the efficient +calculation of auto- and cross-proximities, along with implementations of the +most popular ones.") + (license license:gpl2))) + +(define-public r-sp + (package + (name "r-sp") + (version "1.2-4") + (source + (origin + (method url-fetch) + (uri (cran-uri "sp" version)) + (sha256 + (base32 + "0crba3j00mb2xv2yk60rpa57gn97xq4ql3a6p9cjzqjxzv2cknk2")))) + (build-system r-build-system) + (propagated-inputs + `(("r-lattice" ,r-lattice))) + (home-page "http://cran.r-project.org/web/packages/sp") + (synopsis "Classes and methods for spatial data") + (description + "This package provides classes and methods for spatial data; the classes +document where the spatial location information resides, for 2D or 3D data. +Utility functions are provided, e.g. for plotting data as maps, spatial +selection, as well as methods for retrieving coordinates, for subsetting, +print, summary, etc.") + (license license:gpl2+))) + +(define-public r-rmtstat + (package + (name "r-rmtstat") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "RMTstat" version)) + (sha256 + (base32 + "1nn25q4kmh9kj975sxkrpa97vh5irqrlqhwsfinbck6h6ia4rsw1")))) + (properties `((upstream-name . "RMTstat"))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/RMTstat") + (synopsis "Distributions, statistics and tests derived from random matrix theory") + (description + "This package provides functions for working with the Tracy-Widom laws +and other distributions related to the eigenvalues of large Wishart +matrices.") + (license license:bsd-3))) + +(define-public r-lmoments + (package + (name "r-lmoments") + (version "1.2-3") + (source + (origin + (method url-fetch) + (uri (cran-uri "Lmoments" version)) + (sha256 + (base32 + "13p0r4w16jvjnyjmkhkp3dwdfr1gap2l0k4k5jy41m8nc5fvcx79")))) + (properties `((upstream-name . "Lmoments"))) + (build-system r-build-system) + (home-page "http://www.tilastotiede.fi/juha_karvanen.html") + (synopsis "L-moments and quantile mixtures") + (description + "This package contains functions to estimate L-moments and trimmed +L-moments from the data. It also contains functions to estimate the +parameters of the normal polynomial quantile mixture and the Cauchy polynomial +quantile mixture from L-moments and trimmed L-moments.") + (license license:gpl2))) + +(define-public r-distillery + (package + (name "r-distillery") + (version "1.0-2") + (source + (origin + (method url-fetch) + (uri (cran-uri "distillery" version)) + (sha256 + (base32 + "12m4cacvc18fd3aayc8iih5q6bwsmvf29b55fwp7vs8wp1h8nd8c")))) + (build-system r-build-system) + (home-page "http://www.ral.ucar.edu/staff/ericg") + (synopsis "Functions for confidence intervals and object information") + (description + "This package provides some very simple method functions for confidence +interval calculation and to distill pertinent information from a potentially +complex object; primarily used in common with the packages extRemes and +SpatialVx.") + (license license:gpl2+))) + +(define-public r-extremes + (package + (name "r-extremes") + (version "2.0-8") + (source + (origin + (method url-fetch) + (uri (cran-uri "extRemes" version)) + (sha256 + (base32 + "0pnpib3g2r9x8hfqhvq23j8m3jh62lp28ipnqir5yadnzv850gfm")))) + (properties `((upstream-name . "extRemes"))) + (build-system r-build-system) + (propagated-inputs + `(("r-car" ,r-car) + ("r-distillery" ,r-distillery) + ("r-lmoments" ,r-lmoments))) + (home-page "http://www.assessment.ucar.edu/toolkit/") + (synopsis "Extreme value analysis") + (description + "ExtRemes is a suite of functions for carrying out analyses on the +extreme values of a process of interest; be they block maxima over long blocks +or excesses over a high threshold.") + (license license:gpl2+))) + +(define-public r-lmtest + (package + (name "r-lmtest") + (version "0.9-35") + (source + (origin + (method url-fetch) + (uri (cran-uri "lmtest" version)) + (sha256 + (base32 + "107br1l7p52wxvazs031f4h5ryply97qywg9dzrkw4ydnvqq4j9g")))) + (build-system r-build-system) + (propagated-inputs + `(("r-zoo" ,r-zoo))) + (native-inputs + `(("gfortran" ,gfortran))) + (home-page "http://cran.r-project.org/web/packages/lmtest") + (synopsis "Testing linear regression models") + (description + "This package provides a collection of tests, data sets, and examples for +diagnostic checking in linear regression models. Furthermore, some generic +tools for inference in parametric models are provided.") + ;; Either version is okay + (license (list license:gpl2 license:gpl3)))) + +(define-public r-inline + (package + (name "r-inline") + (version "0.3.14") + (source (origin + (method url-fetch) + (uri (cran-uri "inline" version)) + (sha256 + (base32 + "0cf9vya9h4znwgp6s1nayqqmh6mwyw7jl0isk1nx4j2ijszxcd7x")))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/inline") + (synopsis "Functions to inline C, C++, Fortran function calls from R") + (description + "This package provides functionality to dynamically define R functions +and S4 methods with inlined C, C++ or Fortran code supporting @code{.C} and +@code{.Call} calling conventions.") + ;; Any version of the LGPL. + (license license:lgpl3+))) + +(define-public r-bbmle + (package + (name "r-bbmle") + (version "1.0.19") + (source + (origin + (method url-fetch) + (uri (cran-uri "bbmle" version)) + (sha256 + (base32 + "014h6mw16gv4acs2p78dy7lla7s428n633aybsb1mbi6250dg0p8")))) + (build-system r-build-system) + (propagated-inputs + `(("r-lattice" ,r-lattice) + ("r-mass" ,r-mass) + ("r-numderiv" ,r-numderiv))) + (home-page "http://cran.r-project.org/web/packages/bbmle") + (synopsis "Tools for General Maximum Likelihood Estimation") + (description + "Methods and functions for fitting maximum likelihood models in R. This +package modifies and extends the @code{mle} classes in the @code{stats4} +package.") + ;; Any version of the GPL + (license (list license:gpl2 license:gpl3)))) + +(define-public r-emdbook + (package + (name "r-emdbook") + (version "1.3.9") + (source + (origin + (method url-fetch) + (uri (cran-uri "emdbook" version)) + (sha256 + (base32 + "09xbdyw8a4pvrsg3ryr8drby0njy4avc5wsjj4ffibdaicpchy69")))) + (build-system r-build-system) + (propagated-inputs + `(("r-bbmle" ,r-bbmle) + ("r-coda" ,r-coda) + ("r-lattice" ,r-lattice) + ("r-mass" ,r-mass) + ("r-plyr" ,r-plyr) + ("r-rcpp" ,r-rcpp))) + (home-page "http://www.math.mcmaster.ca/bolker/emdbook") + (synopsis "Support functions and data for \"Ecological Models and Data\"") + (description + "This package provides auxiliary functions and data sets for \"Ecological +Models and Data\", a book presenting maximum likelihood estimation and related +topics for ecologists (ISBN 978-0-691-12522-0).") + ;; Any GPL version + (license (list license:gpl2 license:gpl3)))) + +(define-public r-lpsolve + (package + (name "r-lpsolve") + (version "5.6.13") + (source + (origin + (method url-fetch) + (uri (cran-uri "lpSolve" version)) + (sha256 + (base32 + "13a9ry8xf5j1f2j6imqrxdgxqz3nqp9sj9b4ivyx9sid459irm6m")))) + (properties `((upstream-name . "lpSolve"))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/lpSolve") + (synopsis "R interface to Lp_solve to solve linear/integer programs") + (description + "Lp_solve is software for solving linear, integer and mixed integer +programs. This implementation supplies a \"wrapper\" function in C and some R +functions that solve general linear/integer problems, assignment problems, and +transportation problems.") + (license license:lgpl2.0))) + +(define-public r-limsolve + (package + (name "r-limsolve") + (version "1.5.5.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "limSolve" version)) + (sha256 + (base32 + "1ll6ir42h3g2fzf0wqai213bm82gpwjj2hfma2np3mz024sc09rg")))) + (properties `((upstream-name . "limSolve"))) + (build-system r-build-system) + (propagated-inputs + `(("r-lpsolve" ,r-lpsolve) + ("r-mass" ,r-mass) + ("r-quadprog" ,r-quadprog))) + (native-inputs `(("gfortran" ,gfortran))) + (home-page "http://cran.r-project.org/web/packages/limSolve") + (synopsis "Solving linear inverse models") + (description + "This package provides functions that: + +@enumerate +@item find the minimum/maximum of a linear or quadratic function, +@item sample an underdetermined or overdetermined system, +@item solve a linear system Ax=B for the unknown x. +@end enumerate + +It includes banded and tridiagonal linear systems. The package calls Fortran +functions from LINPACK.") + ;; Any GPL version. + (license (list license:gpl2+ license:gpl3+)))) + +(define-public r-fitdistrplus + (package + (name "r-fitdistrplus") + (version "1.0-9") + (source + (origin + (method url-fetch) + (uri (cran-uri "fitdistrplus" version)) + (sha256 + (base32 + "18x9454g598d54763k3hvi33iszifk7sxvhd1zg5r8z1vpixx3z6")))) + (build-system r-build-system) + (propagated-inputs + `(("r-mass" ,r-mass) + ("r-survival" ,r-survival))) + (home-page "http://riskassessment.r-forge.r-project.org") + (synopsis "Fitting a parametric distribution from data") + (description + "This package extends the @code{fitdistr} function of the MASS package +with several functions to help the fit of a parametric distribution to +non-censored or censored data. Censored data may contain left-censored, +right-censored and interval-censored values, with several lower and upper +bounds. In addition to @dfn{maximum likelihood estimation} (MLE), the package +provides moment matching (MME), quantile matching (QME) and maximum +goodness-of-fit estimation (MGE) methods (available only for non-censored +data). Weighted versions of MLE, MME and QME are available.") + (license license:gpl2+))) + +(define-public r-energy + (package + (name "r-energy") + (version "1.7-0") + (source + (origin + (method url-fetch) + (uri (cran-uri "energy" version)) + (sha256 + (base32 + "1g4hqi6mgsnd1w4q7dd2m40ljh2jdmvad91ksbq9fscnrqpvji1x")))) + (build-system r-build-system) + (propagated-inputs + `(("r-boot" ,r-boot) + ("r-rcpp" ,r-rcpp))) + (home-page "http://cran.r-project.org/web/packages/energy") + (synopsis "Multivariate inference via the energy of data") + (description + "This package provides e-statistics (energy) tests and statistics for +multivariate and univariate inference, including distance correlation, +one-sample, two-sample, and multi-sample tests for comparing multivariate +distributions, are implemented. Measuring and testing multivariate +independence based on distance correlation, partial distance correlation, +multivariate goodness-of-fit tests, clustering based on energy distance, +testing for multivariate normality, distance components (disco) for +non-parametric analysis of structured data, and other energy +statistics/methods are implemented.") + (license license:gpl2+))) + +(define-public r-suppdists + (package + (name "r-suppdists") + (version "1.1-9.4") + (source + (origin + (method url-fetch) + (uri (cran-uri "SuppDists" version)) + (sha256 + (base32 + "1ffx8wigqqvz2pnh06jjc0fnf4vq9z2rhwk2y3f9aszn18ap3dgw")))) + (properties `((upstream-name . "SuppDists"))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/SuppDists") + (synopsis "Supplementary distributions") + (description + "This package provides ten distributions supplementing those built into +R. Inverse Gauss, Kruskal-Wallis, Kendall's Tau, Friedman's chi squared, +Spearman's rho, maximum F ratio, the Pearson product moment correlation +coefficient, Johnson distributions, normal scores and generalized +hypergeometric distributions. In addition two random number generators of +George Marsaglia are included.") + (license license:gpl2+))) + +(define-public r-ksamples + (package + (name "r-ksamples") + (version "1.2-6") + (source + (origin + (method url-fetch) + (uri (cran-uri "kSamples" version)) + (sha256 + (base32 + "1pbam0zqq44slpxdgl2s2fsfdgl7i0pgm8bzlvnm0fy0na24bgdj")))) + (properties `((upstream-name . "kSamples"))) + (build-system r-build-system) + (propagated-inputs + `(("r-suppdists" ,r-suppdists))) + (home-page "http://cran.r-project.org/web/packages/kSamples") + (synopsis "K-Sample rank tests and their combinations") + (description + "This package provides tools to compares k samples using the +Anderson-Darling test, Kruskal-Wallis type tests with different rank score +criteria, Steel's multiple comparison test, and the Jonckheere-Terpstra (JT) +test. It computes asymptotic, simulated or (limited) exact P-values, all +valid under randomization, with or without ties, or conditionally under random +sampling from populations, given the observed tie pattern. Except for Steel's +test and the JT test it also combines these tests across several blocks of +samples.") + (license license:gpl2+))) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index 62fe5fe081..0a05a10698 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -81,7 +81,7 @@ communication, encryption, decryption, signatures, etc.") (define-public signify (package (name "signify") - (version "21") + (version "22") (source (origin (method url-fetch) (uri (string-append "https://github.com/aperezdc/signify/" @@ -89,7 +89,7 @@ communication, encryption, decryption, signatures, etc.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0jd26kxwmmar3bylpx9x5dpqxzs17ky5dvwx8pdgcg95n4lyk223")))) + "0iv5bjaas70ymqchxasapin4c32c41kqzkfhc3kcjzd7rxy78msy")))) (build-system gnu-build-system) ;; TODO Build with libwaive (described in README.md), to implement something ;; like OpenBSD's pledge(). diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index a025317ff5..6b8695ff04 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -17,6 +17,7 @@ ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be> ;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -396,7 +397,7 @@ Language.") (define-public mariadb (package (name "mariadb") - (version "10.1.25") + (version "10.1.26") (source (origin (method url-fetch) (uri (string-append "https://downloads.mariadb.org/f/" @@ -404,7 +405,7 @@ Language.") name "-" version ".tar.gz")) (sha256 (base32 - "1mm0n8sl6grajk5rbrx55333laz5dg2abyl8mlsn7h8vdymfq1bj")))) + "0ggpdcal0if9y6h9hp1yv2q65cbkjfl4p8rqk68a5pk7k75v325s")))) (build-system cmake-build-system) (arguments '(#:configure-flags diff --git a/gnu/packages/debug.scm b/gnu/packages/debug.scm index bde06f35b9..0fc1f513ba 100644 --- a/gnu/packages/debug.scm +++ b/gnu/packages/debug.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014, 2015, 2016, 2017 Eric Bavier <bavier@member.fsf.org> +;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> ;;; ;;; This file is part of GNU Guix. ;;; @@ -166,12 +167,15 @@ tools that process C/C++ code.") (%current-system)) ("x86_64-linux" "x86_64") ("i686-linux" "i386") + ("aarch64-linux" "aarch64") + ("armhf-linux" "arm") + ("mips64el-linux" "mips64el") ;; Prevent errors when querying this package on unsupported ;; platforms, e.g. when running "guix package --search=" (_ "UNSUPPORTED")))) (package (name "american-fuzzy-lop") - (version "2.15b") ;It seems all releases have the 'b' suffix + (version "2.49b") ;It seems all releases have the 'b' suffix (source (origin (method url-fetch) @@ -179,7 +183,7 @@ tools that process C/C++ code.") "afl-" version ".tgz")) (sha256 (base32 - "04n2jfkchpz6a07w694b0im1vcmc3220ryqcaasa7vix7784wzs2")))) + "1lc8mpwlbyb1iil9961yfysp8l2l4nw0s07781m1haiz4jq2rigp")))) (build-system gnu-build-system) (inputs `(("custom-qemu" @@ -234,6 +238,20 @@ tools that process C/C++ code.") "CC=gcc") #:phases (modify-phases %standard-phases (delete 'configure) + ,@(if (string=? (%current-system) (or "x86_64-linux" + "i686-linux")) + '() + '((add-before 'build 'set-afl-flag + (lambda _ (setenv "AFL_NO_X86" "1") #t)) + (add-after 'install 'remove-x86-programs + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin/"))) + (delete-file (string-append bin "afl-gcc")) + (delete-file (string-append bin "afl-g++")) + (delete-file (string-append bin "afl-clang")) + (delete-file (string-append bin "afl-clang++"))) + #t)))) (add-after ;; TODO: Build and install the afl-llvm tool. 'install 'install-qemu @@ -243,10 +261,7 @@ tools that process C/C++ code.") (symlink (string-append qemu "/bin/qemu-" ,machine) (string-append out "/bin/afl-qemu-trace")) #t))) - (delete 'check)))) - (supported-systems (fold delete - %supported-systems - '("armhf-linux" "mips64el-linux"))) + (delete 'check)))) ; Tests are run during 'install phase. (home-page "http://lcamtuf.coredump.cx/afl") (synopsis "Security-oriented fuzzer") (description diff --git a/gnu/packages/ebook.scm b/gnu/packages/ebook.scm index 32f4f3b2d1..38abf47c87 100644 --- a/gnu/packages/ebook.scm +++ b/gnu/packages/ebook.scm @@ -28,10 +28,14 @@ #:use-module (gnu packages) #:use-module (guix build-system python) #:use-module (gnu packages) + #:use-module (gnu packages compression) + #:use-module (gnu packages curl) #:use-module (gnu packages databases) #:use-module (gnu packages fonts) #:use-module (gnu packages fontutils) #:use-module (gnu packages freedesktop) + #:use-module (gnu packages fribidi) + #:use-module (gnu packages gtk) #:use-module (gnu packages gnome) #:use-module (gnu packages glib) #:use-module (gnu packages icu4c) @@ -44,6 +48,7 @@ #:use-module (gnu packages serialization) #:use-module (gnu packages tls) #:use-module (gnu packages web) + #:use-module (gnu packages xml) #:use-module (gnu packages xorg)) (define-public chmlib @@ -195,3 +200,80 @@ ebooks for convenient reading.") license:public-domain license:silofl1.1 license:cc-by-sa3.0)))) + +(define-public liblinebreak + (package + (name "liblinebreak") + (version "2.1") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/vimgadgets" + "/liblinebreak/" version + "/liblinebreak-" version ".tar.gz")) + (sha256 + (base32 + "1f36dbq7nc77lln1by2n1yl050g9dc63viawhs3gc3169mavm36x")))) + (build-system gnu-build-system) + (home-page "http://vimgadgets.sourceforge.net/liblinebreak/") + (synopsis "Library for detecting where linebreaks are allowed in text") + (description "@code{liblinebreak} is an implementation of the line +breaking algorithm as described in Unicode 6.0.0 Standard Annex 14, +Revision 26. It breaks lines that contain Unicode characters. It is +designed to be used in a generic text renderer.") + (license license:zlib))) + +(define-public fbreader + (package + (name "fbreader") + (version "0.99.6") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/geometer/FBReader/" + "archive/" version "-freebsdport.tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0gf1nl562fqkwlzcn6rgkp1j8jcixzmfsnwxbc0sm49zh8n3zqib")))) + (build-system gnu-build-system) + (inputs + `(("curl" ,curl) + ("expat" ,expat) + ("fribidi" ,fribidi) + ("glib" ,glib) + ("gtk+-2" ,gtk+-2) + ("libjpeg" ,libjpeg) + ("liblinebreak" ,liblinebreak) + ("libxft" ,libxft) + ("sqlite" ,sqlite) + ("zlib" ,zlib))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (arguments + `(#:tests? #f ; No tests exist. + #:make-flags `("CC=gcc" "TARGET_ARCH=desktop" "UI_TYPE=gtk" + "TARGET_STATUS=release" + ,(string-append "INSTALLDIR=" + (assoc-ref %outputs "out")) + ,(string-append "LDFLAGS=-Wl,-rpath=" + (assoc-ref %outputs "out") "/lib")) + #:phases + (modify-phases %standard-phases + (delete 'configure)))) + (home-page "https://fbreader.org/") + (synopsis "E-Book reader") + (description "@code{fbreader} is an E-Book reader. It supports the +following formats: + +@enumerate +@item CHM +@item Docbook +@item FB2 +@item HTML +@item OEB +@item PDB +@item RTF +@item TCR +@item TXT +@item XHTML +@end enumerate") + (license license:gpl2+))) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 5a69990c67..1728b5b92d 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -2632,6 +2632,38 @@ features found in other packages it also brings many improvements as well as completely new features.") (license license:gpl3+))) +(define-public emacs-highlight-symbol + (package + (name "emacs-highlight-symbol") + (version "1.3") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/nschum/highlight-symbol.el/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1n7k1qns0fn0jsyc0hrjac5nzk21xw48yc30vyrhwvc51h0b9g90")))) + (build-system emacs-build-system) + (home-page "https://nschum.de/src/emacs/highlight-symbol") + (synopsis "Automatic and manual symbol highlighting for Emacs") + (description + "Use @code{highlight-symbol} to toggle highlighting of the symbol at +point throughout the current buffer. Use @code{highlight-symbol-mode} to keep +the symbol at point highlighted. + +The functions @code{highlight-symbol-next}, @code{highlight-symbol-prev}, +@code{highlight-symbol-next-in-defun} and +@code{highlight-symbol-prev-in-defun} allow for cycling through the locations +of any symbol at point. Use @code{highlight-symbol-nav-mode} to enable key +bindings @code{M-p} and @code{M-p} for navigation. When +@code{highlight-symbol-on-navigation-p} is set, highlighting is triggered +regardless of @code{highlight-symbol-idle-delay}. + +@code{highlight-symbol-query-replace} can be used to replace the symbol. ") + (license license:gpl2+))) + (define-public emacs-hl-todo (package (name "emacs-hl-todo") diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index b01d39c7e2..a83be8522c 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -622,35 +622,14 @@ utilities to ease adding new glyphs to the font.") (name "font-google-noto") (version "20170403") (source (origin - (method url-fetch) + (method url-fetch/zipbomb) (uri (string-append "https://noto-website.storage.googleapis.com/" "pkgs/Noto-hinted.zip")) + (file-name (string-append name "-" version ".zip")) (sha256 (base32 "1p92a6dvs7wqwjfpp1ahr9z1wz35am0l8r78521383spd77bmrfm")))) - (build-system trivial-build-system) - (arguments - `(#:modules ((guix build utils)) - #:builder (begin - (use-modules (guix build utils) - (srfi srfi-26)) - - (let ((PATH (string-append (assoc-ref %build-inputs - "unzip") - "/bin")) - (font-dir (string-append %output - "/share/fonts/truetype"))) - (setenv "PATH" PATH) - (system* "unzip" (assoc-ref %build-inputs "source")) - - (mkdir-p font-dir) - (for-each (lambda (ttf) - (install-file ttf font-dir)) - (find-files "." "\\.ttf$")) - (for-each (lambda (otf) - (install-file otf font-dir)) - (find-files "." "\\.otf$")))))) - (native-inputs `(("unzip" ,unzip))) + (build-system font-build-system) (home-page "https://www.google.com/get/noto/") (synopsis "Fonts to cover all languages") (description "Google Noto Fonts is a family of fonts designed to support diff --git a/gnu/packages/freeipmi.scm b/gnu/packages/freeipmi.scm index 1ad7d6393a..6708092693 100644 --- a/gnu/packages/freeipmi.scm +++ b/gnu/packages/freeipmi.scm @@ -27,14 +27,14 @@ (define-public freeipmi (package (name "freeipmi") - (version "1.5.6") + (version "1.5.7") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/freeipmi/freeipmi-" version ".tar.gz")) (sha256 (base32 - "0p3cl32wwxhyc5vkd9spmmckb78797snkmplgh0ybc7zap2bs6ib")))) + "1rdxs33klk6956rg8mn2dxwkk43y5yilvgvbcka8g6v4x0r98v5l")))) (build-system gnu-build-system) (inputs `(("libgcrypt" ,libgcrypt))) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index c98c15e462..95f8697b42 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2017 Julian Graham <joolean@gmail.com> ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -40,11 +41,14 @@ #:use-module (gnu packages curl) #:use-module (gnu packages databases) #:use-module (gnu packages documentation) + #:use-module (gnu packages fonts) #:use-module (gnu packages fontutils) #:use-module (gnu packages freedesktop) #:use-module (gnu packages fribidi) #:use-module (gnu packages glib) #:use-module (gnu packages gnunet) + #:use-module (gnu packages graphics) + #:use-module (gnu packages graphviz) #:use-module (gnu packages guile) #:use-module (gnu packages m4) #:use-module (gnu packages multiprecision) @@ -934,3 +938,84 @@ Joysticks, etc) and feedback devices (e.g. force feedback). Meant to be very robust and compatible with many systems and operating systems.") (home-page "https://github.com/wgois/OIS") (license license:zlib))) + +(define-public mygui + (package + (name "mygui") + (version "3.2.2") + (source + (origin + (method url-fetch) + (uri + (string-append "https://github.com/MyGUI/" name + "/archive/MyGUI" version ".tar.gz")) + (sha256 + (base32 + "13x7cydmj7gjmsg702sqjbfi53z265iv6j7binv3r6a7ibndfa0a")))) + (build-system cmake-build-system) + (arguments + '(#:tests? #f ; No test target + #:configure-flags + (list "-DMYGUI_INSTALL_DOCS=TRUE" + (string-append "-DOGRE_INCLUDE_DIR=" + (assoc-ref %build-inputs "ogre") + "/include/OGRE")))) + (native-inputs + `(("boost" ,boost) + ("doxygen" ,doxygen) + ("pkg-config" ,pkg-config))) + (inputs + `(("font-dejavu" ,font-dejavu) + ("freetype" ,freetype) + ("graphviz" ,graphviz) + ("libx11" ,libx11) + ("ogre" ,ogre) + ("ois" ,ois))) + (synopsis "Fast, flexible and simple GUI") + (description + "MyGUI is a library for creating Graphical User Interfaces (GUIs) for games +and 3D applications. The main goals of mygui are: speed, flexibility and ease +of use.") + (home-page "http://mygui.info/") + (license license:expat))) + +(define-public openmw + (package + (name "openmw") + (version "0.42.0") + (source + (origin + (method url-fetch) + (uri + (string-append "https://github.com/OpenMW/openmw/archive/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "1pla8016lpbg8cgm9kia318a860f26dmiayc72p3zl35mqrc7g7w")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ; No test target + #:configure-flags + (list "-DDESIRED_QT_VERSION=5"))) + (native-inputs + `(("boost" ,boost) + ("doxygen" ,doxygen) + ("pkg-config" ,pkg-config))) + (inputs + `(("bullet" ,bullet) + ("ffmpeg" ,ffmpeg) + ("libxt" ,libxt) + ("mygui" ,mygui) + ("openal" ,openal) + ("openscenegraph" ,openscenegraph) + ("qtbase" ,qtbase) + ("sdl" ,sdl2) + ("unshield" ,unshield))) + (synopsis "Free software re-implementation of the RPG Morrowind engine") + (description + "OpenMW is a free, open source and modern engine which reimplements and +extends the one that runs the 2002 open-world RPG Morrowind. The engine comes +with its own editor, called OpenMW-CS which allows the user to edit or create +their own original games.") + (home-page "https://openmw.org") + (license license:gpl3))) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 436a885d6e..7932e841c4 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -83,6 +83,7 @@ #:use-module (gnu packages guile) #:use-module (gnu packages imagemagick) #:use-module (gnu packages libcanberra) + #:use-module (gnu packages libedit) #:use-module (gnu packages libunwind) #:use-module (gnu packages haskell) #:use-module (gnu packages mp3) @@ -433,6 +434,47 @@ scriptable with Guile.") Chess). It is similar to standard chess but this variant is far more complicated.") (license license:gpl3+))) +(define-public ltris + (package + (name "ltris") + (version "1.0.19") + (source + (origin + (method url-fetch) + (uri (string-append "http://prdownloads.sourceforge.net/lgames/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "1895wv1fqklrj4apkz47rnkcfhfav7zjknskw6p0886j35vrwslg")))) + (build-system gnu-build-system) + (arguments + '(;; The code in LTris uses traditional GNU semantics for inline functions + #:configure-flags '("CFLAGS=-fgnu89-inline") + #:phases + (modify-phases %standard-phases + (add-after 'set-paths 'set-sdl-paths + (lambda* (#:key inputs #:allow-other-keys) + (setenv "CPATH" + (string-append (assoc-ref inputs "sdl-union") + "/include/SDL")) + #t))))) + (inputs + `(("sdl-union" ,(sdl-union (list sdl sdl-mixer))))) + (home-page "http://lgames.sourceforge.net/LTris/") + (synopsis "Tetris clone based on the SDL library") + (description + "LTris is a tetris clone: differently shaped blocks are falling down the +rectangular playing field and can be moved sideways or rotated by 90 degree +units with the aim of building lines without gaps which then disappear (causing +any block above the deleted line to fall down). LTris has three game modes: In +Classic you play until the stack of blocks reaches the top of the playing field +and no new blocks can enter. In Figures the playing field is reset to a new +figure each level and later on tiles and lines suddenly appear. In Multiplayer +up to three players (either human or CPU) compete with each other sending +removed lines to all opponents. There is also a Demo mode in which you can +watch your CPU playing while enjoying a cup of tea!") + (license license:gpl2+))) + (define-public prboom-plus (package (name "prboom-plus") @@ -2920,6 +2962,64 @@ Super Game Boy, BS-X Satellaview, and Sufami Turbo.") ;; - higan/emulator/emulator.hpp (license license:gpl3))) +(define-public mgba + (package + (name "mgba") + (version "0.6.0") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/mgba-emu/mgba/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "01zy2w5pihlkrmbm51icgyff6iqyqa5ha6qrm4aj8ibzznz03kyq")) + (modules '((guix build utils))) + (snippet + ;; Make sure we don't use the bundled software. + '(for-each + (lambda (subdir) + (let ((lib-subdir (string-append "src/third-party/" subdir))) + (delete-file-recursively lib-subdir))) + '("libpng" "lzma" "sqlite3" "zlib"))))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ;no "test" target + #:configure-flags + (list "-DUSE_LZMA=OFF" ;do not use bundled LZMA + "-DUSE_LIBZIP=OFF" ;use "zlib" instead + ;; Validate RUNPATH phase fails ("error: depends on + ;; 'libmgba.so.0.6', which cannot be found in RUNPATH") without + ;; the following S-exp. + (string-append "-DCMAKE_INSTALL_LIBDIR=" + (assoc-ref %outputs "out") + "/lib")))) + (native-inputs `(("pkg-config" ,pkg-config))) + (inputs `(("ffmpeg" ,ffmpeg) + ("imagemagick" ,imagemagick) + ("libedit" ,libedit) + ("libepoxy" ,libepoxy) + ("libpng" ,libpng) + ("mesa" ,mesa) + ("minizip" ,minizip) + ("ncurses" ,ncurses) + ("qtbase" ,qtbase) + ("qtmultimedia" ,qtmultimedia) + ("qttools" ,qttools) + ("sdl2" ,sdl2) + ("sqlite" ,sqlite) + ("zlib" ,zlib))) + (home-page "https://mgba.io") + (synopsis "Game Boy Advance emulator") + (description + "mGBA is an emulator for running Game Boy Advance games. It aims to be +faster and more accurate than many existing Game Boy Advance emulators, as +well as adding features that other emulators lack. It also supports Game Boy +and Game Boy Color games.") + ;; Code is mainly MPL 2.0. "blip_buf.c" is LGPL 2.1+ and "inih.c" is + ;; BSD-3. + (license (list license:mpl2.0 license:lgpl2.1+ license:bsd-3)))) + (define-public grue-hunter (package (name "grue-hunter") diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 87070e77fd..8f7d0a3dad 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2014, 2015 Federico Beffa <beffa@fbengineering.ch> ;;; Copyright © 2015, 2016 Sou Bunnbu <iyzsong@gmail.com> ;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org> -;;; Copyright © 2015 Andy Wingo <wingo@igalia.com> +;;; Copyright © 2015, 2017 Andy Wingo <wingo@igalia.com> ;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com> ;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2016, 2017 Mark H Weaver <mhw@netris.org> @@ -627,7 +627,7 @@ GNOME Desktop.") (define-public gnome-keyring (package (name "gnome-keyring") - (version "3.20.0") + (version "3.20.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -635,7 +635,7 @@ GNOME Desktop.") name "-" version ".tar.xz")) (sha256 (base32 - "16gcwwcg91ipxjmiyi4c4njvnxixmv1i278p0bilc3lafk6ww5xw")))) + "134ci3mn6jjap59z3lrvyiip7zf2nlw5xvanr44yajs57xr4x5lp")))) (build-system gnu-build-system) (arguments `(#:tests? #f ;48 of 603 tests fail because /var/lib/dbus/machine-id does @@ -2134,6 +2134,9 @@ selection and URL hints."))) (uri (string-append "mirror://gnome/sources/" name "/" (version-major+minor version) "/" name "-" version ".tar.xz")) + (patches ; We have to revert 2 commits to build against freerdp 1.1. + (search-patches "vinagre-revert-1.patch" + "vinagre-revert-2.patch")) (sha256 (base32 "10jya3jyrm18nbw3v410gbkc7677bqamax44pzgd3j15randn76d")))) @@ -3039,7 +3042,7 @@ settings, themes, mouse settings, and startup of other daemons.") (define-public totem-pl-parser (package (name "totem-pl-parser") - (version "3.10.7") + (version "3.10.8") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/totem-pl-parser/" @@ -3047,7 +3050,7 @@ settings, themes, mouse settings, and startup of other daemons.") "totem-pl-parser-" version ".tar.xz")) (sha256 (base32 - "17089sqyh6w6zr8ci865ihmvqshnslcsk9fbsl4s7yii66y8b0lw")))) + "0ayxg0gfs5h5jhr811ja5hxlhryklzp6jlal2ach9wym2c3hmigz")))) (build-system gnu-build-system) (arguments ;; FIXME: Tests require gvfs. @@ -3391,10 +3394,10 @@ write applications that need to store structured data as well as make complex queries upon that data.") (license license:lgpl2.1+))) -(define-public libgames-support +(define-public libgnome-games-support (package - (name "libgames-support") - (version "1.0.2") + (name "libgnome-games-support") + (version "1.2.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -3402,14 +3405,14 @@ queries upon that data.") name "-" version ".tar.xz")) (sha256 (base32 - "0rms2ksiv7j9944km7r87q22nh05si1fisn5xm3z4zy5vpcfi5mh")))) + "04qbgcgmc01sinhbqdljiny8q868l01nkdawj8wrnqnd1i8czvsg")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases (add-before 'check 'pre-check (lambda _ - ;; tests require a writable HOME. + ;; Tests require a writable HOME. (setenv "HOME" (getcwd)) #t))))) (native-inputs @@ -3417,30 +3420,16 @@ queries upon that data.") ("pkg-config" ,pkg-config) ("vala" ,vala))) (propagated-inputs - ;; Required by libgames-support-1.0.pc + ;; Required by libgnome-games-support-1.0.pc `(("gtk+" ,gtk+) ("libgee" ,libgee))) (home-page "https://www.gnome.org/") (synopsis "Useful functionality shared among GNOME games") (description - "libgames-support is a small library intended for internal use by + "libgnome-games-support is a small library intended for internal use by GNOME Games, but it may be used by others.") (license license:lgpl3+))) -(define-public libgnome-games-support - (package - (inherit libgames-support) - (name "libgnome-games-support") - (version "1.2.1") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnome/sources/" name "/" - (version-major+minor version) "/" - name "-" version ".tar.xz")) - (sha256 - (base32 - "1rsyf5hbjim7zpk1yar3gv65g1nmw6zbbc0smrmxsfk0f9n3j9m6")))))) - (define-public gnome-klotski (package (name "gnome-klotski") @@ -4357,7 +4346,7 @@ metadata in photo and video files of various formats.") (define-public shotwell (package (name "shotwell") - (version "0.26.2") + (version "0.26.3") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -4365,7 +4354,7 @@ metadata in photo and video files of various formats.") name "-" version ".tar.xz")) (sha256 (base32 - "0frjqa6nmh025clwnb74z2rzbdq65wjcp2lf9csgcbkpahyjhrag")))) + "1r8fd63r7c5n99hwrkzv9jlrk84z4sa15q3h70pydzfjnfqf90zv")))) (build-system glib-or-gtk-build-system) (propagated-inputs `(("dconf" ,dconf))) @@ -4525,7 +4514,7 @@ configuration program to choose applications starting on login.") (define-public gjs (package (name "gjs") - (version "1.48.3") + (version "1.48.6") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -4533,7 +4522,7 @@ configuration program to choose applications starting on login.") name "-" version ".tar.xz")) (sha256 (base32 - "0cqgv460wfhwkw6j1h46v6bg29bycg6dfl7c5rv0lfcqmmw7v6v6")))) + "04nkig077r7xq55dxg9v46w8i7p8zkkdyja92yv81grq9fx6apz8")))) (build-system gnu-build-system) (arguments '(#:phases @@ -5274,7 +5263,7 @@ devices using the GNOME desktop.") (define-public gnome-control-center (package (name "gnome-control-center") - (version "3.24.2") + (version "3.24.3") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -5282,7 +5271,7 @@ devices using the GNOME desktop.") name "-" version ".tar.xz")) (sha256 (base32 - "0awga40jh6gvn335mn6kyl6yg79frap1znrsz3sw2m27yldlnaiq")))) + "18ncjqjj93a39sla2zjr9i6pw59yh87p4jla899lmvi2qajd5923")))) (build-system glib-or-gtk-build-system) (arguments '(#:phases @@ -5345,7 +5334,7 @@ properties, screen resolution, and other GNOME parameters.") (define-public gnome-shell (package (name "gnome-shell") - (version "3.24.2") + (version "3.24.3") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -5353,7 +5342,7 @@ properties, screen resolution, and other GNOME parameters.") name "-" version ".tar.xz")) (sha256 (base32 - "1xp2ccmdrvzlczsrcplykwqwx2v4lbmkr0rxyylb06danlw9mivh")))) + "1f20x36ymkp1j667hb7s7byly2gqc4m0anldy3qwp38vm8437caq")))) (build-system glib-or-gtk-build-system) (arguments '(#:phases @@ -5733,6 +5722,37 @@ configuration system for GNOME. It allows users to configure desktop software that do not provide their own configuration interface.") (license license:lgpl2.1+))) +(define-public gnome-default-applications + (package + (name "gnome-default-applications") + (version "0") + (build-system trivial-build-system) + (source #f) + (propagated-inputs + `(("nautilus" ,nautilus))) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let* ((out (assoc-ref %outputs "out")) + (apps (string-append out "/share/applications"))) + (mkdir-p apps) + (call-with-output-file (string-append apps "/defaults.list") + (lambda (port) + (format port "[Default Applications]\n") + (format port "inode/directory=org.gnome.Nautilus.desktop\n"))) + #t)))) + (synopsis "Default MIME type associations for the GNOME desktop") + (description + "Given many installed packages which might handle a given MIME type, a +user running the GNOME desktop probably has some preferences: for example, +that folders be opened by default by the Nautilus file manager, not the Baobab +disk usage analyzer. This package establishes that set of default MIME type +associations for GNOME.") + (license license:gpl3+) + (home-page #f))) + (define-public gnome (package (name "gnome") @@ -5746,6 +5766,7 @@ software that do not provide their own configuration interface.") `(("adwaita-icon-theme" ,adwaita-icon-theme) ("baobab" ,baobab) ("font-cantarell" ,font-cantarell) + ("font-dejavu" ,font-dejavu) ("at-spi2-core" ,at-spi2-core) ("dbus" ,dbus) ("dconf" ,dconf) @@ -5757,13 +5778,20 @@ software that do not provide their own configuration interface.") ("gedit" ,gedit) ("glib-networking" ,glib-networking) ("gnome-backgrounds" ,gnome-backgrounds) + ("gnome-bluetooth" ,gnome-bluetooth) + ("gnome-calculator" ,gnome-calculator) ("gnome-control-center" ,gnome-control-center) + ("gnome-disk-utility" ,gnome-disk-utility) + ("gnome-default-applications" ,gnome-default-applications) ("gnome-keyring" ,gnome-keyring) + ("gnome-online-accounts" ,gnome-online-accounts) ("gnome-session" ,gnome-session) ("gnome-settings-daemon" ,gnome-settings-daemon) ("gnome-shell" ,gnome-shell) + ("gnome-system-monitor" ,gnome-system-monitor) ("gnome-terminal" ,gnome-terminal) ("gnome-themes-standard" ,gnome-themes-standard) + ("gucharmap" ,gucharmap) ("gvfs" ,gvfs) ("hicolor-icon-theme" ,hicolor-icon-theme) ("nautilus" ,nautilus) diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm index 497afaf668..7ff1a3f6f8 100644 --- a/gnu/packages/gnunet.scm +++ b/gnu/packages/gnunet.scm @@ -186,14 +186,14 @@ and support for SSL3 and TLS.") (define-public gnurl (package (name "gnurl") - (version "7.55.0") + (version "7.55.1") (source (origin (method url-fetch) (uri (string-append "https://gnunet.org/sites/default/files/" name "-" version ".tar.bz2")) (sha256 (base32 - "0i9bik76rbyag3mbxbk8j383iaxs5v7lmjkn4v36ascl6bdks6vn")))) + "118vb2mc5ivsbrkqzg40w56raf5jdnx00cfmkh735w0mjfy6wccv")))) (build-system gnu-build-system) (outputs '("out" "doc")) ; 1.5 MiB of man3 pages diff --git a/gnu/packages/gobby.scm b/gnu/packages/gobby.scm index 961028d00a..45ebed7c43 100644 --- a/gnu/packages/gobby.scm +++ b/gnu/packages/gobby.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2016 Andy Wingo <wingo@igalia.com> +;;; Copyright © 2016, 2017 Andy Wingo <wingo@igalia.com> +;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -25,6 +26,7 @@ #:use-module (gnu packages) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) + #:use-module (gnu packages gsasl) #:use-module (gnu packages gtk) #:use-module (gnu packages pkg-config) #:use-module (gnu packages tls) @@ -96,7 +98,10 @@ documents in one session. Obby is used by the Gobby collaborative editor.") (license license:gpl2+))) -(define-public gobby +;; Although there is a newer version of Gobby defined below, the protocols are +;; incompatible; you need Gobby 0.4 if you want to connect to servers running +;; the 0.4 protocol. +(define-public gobby-0.4 (package (name "gobby") (version "0.4.13") @@ -127,5 +132,81 @@ documents in one session. Obby is used by the Gobby collaborative editor.") (description "Collaborative editor that supports multiple documents in one session and a multi-user chat. Gobby allows multiple users to edit the same document +together over the internet in real-time. + +This is the older 0.4 version of Gobby. Use this version only if you need to +connect to a server running the old 0.4 protocol.") + (license license:gpl2+))) + +(define-public gobby + (package + (name "gobby") + (version "0.5.0") + (source (origin + (method url-fetch) + (uri (string-append "http://releases.0x539.de/gobby/gobby-" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "165x0r668ma5blziisvbr8qig3jw9hf7i6w8r7wwvz3wsac3bswc")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config) + ("intltool" ,intltool))) + (inputs + `(("gnutls" ,gnutls) + ("gsasl" ,gsasl) + ("gtkmm-2" ,gtkmm-2) + ("gtksourceview-2" ,gtksourceview-2) + ("libinfinity" ,libinfinity) + ("libxml++-2" ,libxml++-2))) + (arguments + ;; Required by libsigc++. + `(#:configure-flags '("CXXFLAGS=-std=c++11") + #:phases + (modify-phases %standard-phases + (add-after 'install 'move-executable + (lambda* (#:key outputs #:allow-other-keys) + (with-directory-excursion (assoc-ref outputs "out") + (rename-file "bin/gobby-0.5" "bin/gobby")) + #t))))) + (home-page "https://gobby.github.io/") + (synopsis "Collaborative editor") + (description + "Collaborative editor that supports multiple documents in one session and +a multi-user chat. Gobby allows multiple users to edit the same document together over the internet in real-time.") (license license:gpl2+))) + +(define-public libinfinity + (package + (name "libinfinity") + (version "0.6.8") + (source + (origin + (method url-fetch) + (uri (string-append "http://releases.0x539.de/libinfinity/libinfinity-" + version ".tar.gz")) + (sha256 + (base32 + "0nylsb6qz9pjw3agjp27c4za205i6zg6i5g1vgs5vbdnbh77wkhc")))) + (build-system gnu-build-system) + (inputs + `(("glib" ,glib) + ("gsasl" ,gsasl) + ("gtk+" ,gtk+-2) + ("libxml2" ,libxml2))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (arguments + `(#:configure-flags (list "--with-inftextgtk" + "--with-infgtk"))) + (home-page "https://gobby.github.io/") + (synopsis "Infininote protocol implementation") + (description "libinfinity is a library to build collaborative text +editors. Changes to the text buffers are synced to all other clients over a +central server. Even though a central server is involved, the local user sees +his changes applied instantly and the merging is done on the individual +clients.") + (license license:lgpl2.1+))) diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index d0e50106fa..f84cc27836 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -36,11 +36,13 @@ #:use-module (gnu packages bash) #:use-module (gnu packages bison) #:use-module (gnu packages boost) + #:use-module (gnu packages check) #:use-module (gnu packages documentation) #:use-module (gnu packages haskell) #:use-module (gnu packages image) #:use-module (gnu packages python) #:use-module (gnu packages flex) + #:use-module (gnu packages fonts) #:use-module (gnu packages fontutils) #:use-module (gnu packages pkg-config) #:use-module (gnu packages pulseaudio) ;libsndfile, libsamplerate @@ -60,6 +62,7 @@ #:use-module (gnu packages qt) #:use-module (gnu packages readline) #:use-module (gnu packages sdl) + #:use-module (gnu packages swig) #:use-module (gnu packages video) #:use-module (gnu packages xml) #:use-module (gnu packages xorg)) @@ -228,6 +231,74 @@ quaternions and other useful 2D and 3D math functions. Iex is an exception-handling library.") (license license:bsd-3))) +(define-public ogre + (package + (name "ogre") + (version "1.10.7") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/OGRECave/" name + "/archive/v" version ".tar.gz")) + (sha256 + (base32 + "1ab354bmwwryxr4zgxchfkm6h4z38mjgif8yn89x640rsrgw5ipj")) + (file-name (string-append name "-" version ".tar.gz")))) + (build-system cmake-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-before 'configure 'pre-configure + (lambda _ + ;; It expects googletest source to be downloaded and + ;; be in a specific place. + (substitute* "Tests/CMakeLists.txt" + (("URL(.*)$" _ suffix) + (string-append "URL " suffix + "\t\tURL_HASH " + "MD5=16877098823401d1bf2ed7891d7dce36\n"))) + #t)) + (add-before 'build 'pre-build + (lambda* (#:key inputs #:allow-other-keys) + (copy-file (assoc-ref inputs "googletest-source") + (string-append (getcwd) + "/Tests/googletest-prefix/src/" + "release-1.8.0.tar.gz")) + #t))) + #:configure-flags + (list "-DOGRE_BUILD_TESTS=TRUE" + (string-append "-DCMAKE_INSTALL_RPATH=" + (assoc-ref %outputs "out") "/lib:" + (assoc-ref %outputs "out") "/lib/OGRE:" + (assoc-ref %build-inputs "googletest") "/lib") + "-DOGRE_INSTALL_DOCS=TRUE" + "-DOGRE_INSTALL_SAMPLES=TRUE" + "-DOGRE_INSTALL_SAMPLES_SOURCE=TRUE"))) + (native-inputs + `(("boost" ,boost) + ("doxygen" ,doxygen) + ("googletest-source" ,(package-source googletest)) + ("pkg-config" ,pkg-config))) + (inputs + `(("font-dejavu" ,font-dejavu) + ("freeimage" ,freeimage) + ("freetype" ,freetype) + ("glu" ,glu) + ("googletest" ,googletest) + ("sdl2" ,sdl2) + ("libxaw" ,libxaw) + ("libxrandr" ,libxrandr) + ("tinyxml" ,tinyxml) + ("zziplib" ,zziplib))) + (synopsis "Scene-oriented, flexible 3D engine written in C++") + (description + "OGRE (Object-Oriented Graphics Rendering Engine) is a scene-oriented, +flexible 3D engine written in C++ designed to make it easier and more intuitive +for developers to produce applications utilising hardware-accelerated 3D +graphics.") + (home-page "http://www.ogre3d.org/") + (license license:expat))) + (define-public openexr (package (name "openexr") diff --git a/gnu/packages/ham-radio.scm b/gnu/packages/ham-radio.scm new file mode 100644 index 0000000000..0f96553c65 --- /dev/null +++ b/gnu/packages/ham-radio.scm @@ -0,0 +1,52 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net> +;;; +;;; 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 ham-radio) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (gnu packages libusb) + #:use-module (gnu packages pkg-config) + #:use-module (guix build-system cmake)) + +(define-public rtl-sdr + (package + (name "rtl-sdr") + (version "0.5.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://cgit.osmocom.org/rtl-sdr/snapshot/rtl-sdr-" + version ".tar.xz")) + (sha256 + (base32 + "08awca3v28sa4lxym4r81pzf0la0j86wbmpyhv3xd53an9gkpjy9")))) + (build-system cmake-build-system) + (inputs + `(("libusb" ,libusb))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (arguments + `(#:configure-flags '("-DDETACH_KERNEL_DRIVER=ON") + #:tests? #f)) ; No tests + (home-page "https://osmocom.org/projects/sdr/wiki/rtl-sdr") + (synopsis "Software defined radio driver for Realtek RTL2832U") + (description "DVB-T dongles based on the Realtek RTL2832U can be used as a +cheap software defined radio, since the chip allows transferring the raw I/Q +samples to the host. @code{rtl-sdr} provides drivers for this purpose.") + (license license:gpl2+))) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index a672092342..4f9e90e552 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -10,6 +10,7 @@ ;;; Copyright © 2016, 2017 David Craven <david@craven.ch> ;;; Copyright © 2017 Danny Milosavljevic <dannym@scratchpost.org> ;;; Copyright © 2017 Peter Mikkelsen <petermikkelsen10@gmail.com> +;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -1324,7 +1325,7 @@ various Haskell streaming data libraries, such as @code{conduit} and (define-public cpphs (package (name "cpphs") - (version "1.19.3") + (version "1.20.8") (source (origin (method url-fetch) @@ -1333,7 +1334,7 @@ various Haskell streaming data libraries, such as @code{conduit} and name "-" version ".tar.gz")) (sha256 (base32 - "1njpmxgpah5pcqppcl1cxb5xicf6xlqrd162qm12khp9hainlm72")))) + "1bh524asqhk9v1s0wvipl0hgn7l63iy3js867yv0z3h5v2kn8vg5")))) (build-system haskell-build-system) (inputs `(("ghc-polyparse" ,ghc-polyparse) @@ -1807,6 +1808,26 @@ capabilities that are optimized for performance critical use, both in terms of large data quantities and high speed.") (license license:bsd-3))) +(define-public ghc-strict + (package + (name "ghc-strict") + (version "0.3.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/strict/strict-" + version ".tar.gz")) + (sha256 + (base32 "08cjajqz9h47fkq98mlf3rc8n5ghbmnmgn8pfsl3bdldjdkmmlrc")))) + (build-system haskell-build-system) + (home-page "https://hackage.haskell.org/package/strict") + (synopsis "Strict data types and String IO") + (description + "This package provides strict versions of some standard Haskell data +types, such as pairs, @code{Maybe} and @code{Either}. It also contains strict +IO operations.") + (license license:bsd-3))) + (define-public ghc-hashable (package (name "ghc-hashable") @@ -1837,6 +1858,51 @@ data structures. The package provides instances for basic types and a way to combine hash values.") (license license:bsd-3))) +(define-public ghc-data-hash + (package + (name "ghc-data-hash") + (version "0.2.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/data-hash" + "/data-hash-" version ".tar.gz")) + (sha256 + (base32 "1ghbqvc48gf9p8wiy71hdpaj7by3b9cw6wgwi3qqz8iw054xs5wi")))) + (build-system haskell-build-system) + (inputs + `(("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2))) + (home-page "https://hackage.haskell.org/package/data-hash") + (synopsis "Combinators for building fast hashing functions") + (description + "This package provides combinators for building fast hashing functions. +It includes hashing functions for all basic Haskell98 types.") + (license license:bsd-3))) + +(define-public ghc-murmur-hash + (package + (name "ghc-murmur-hash") + (version "0.1.0.9") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/murmur-hash" + "/murmur-hash-" version ".tar.gz")) + (sha256 + (base32 "1bb58kfnzvx3mpc0rc0dhqc1fk36nm8prd6gvf20gk6lxaadpfc9")))) + (build-system haskell-build-system) + (home-page "https://github.com/nominolo/murmur-hash") + (synopsis "MurmurHash2 implementation for Haskell") + (description + "This package provides an implementation of MurmurHash2, a good, fast, +general-purpose, non-cryptographic hashing function. See +@url{https://sites.google.com/site/murmurhash/} for details. This +implementation is pure Haskell, so it might be a bit slower than a C FFI +binding.") + (license license:bsd-3))) + (define-public ghc-hunit (package (name "ghc-hunit") @@ -3806,6 +3872,55 @@ different keys; hence the name. Also provided is a @code{locker} type, representing a store for a single element.") (license license:bsd-3))) +(define-public ghc-edisonapi + (package + (name "ghc-edisonapi") + (version "1.3.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/EdisonAPI" + "/EdisonAPI-" version ".tar.gz")) + (sha256 + (base32 "0vmmlsj8ggbpwx6fkf5fvb6jp0zpx6iba6b28m80lllr2p8bi8wm")))) + (build-system haskell-build-system) + (inputs `(("ghc-mtl" ,ghc-mtl))) + (home-page "http://rwd.rdockins.name/edison/home/") + (synopsis "Library of efficient, purely-functional data structures (API)") + (description + "Edison is a library of purely functional data structures written by +Chris Okasaki. It is named after Thomas Alva Edison and for the mnemonic +value EDiSon (Efficient Data Structures). Edison provides several families of +abstractions, each with multiple implementations. The main abstractions +provided by Edison are: Sequences such as stacks, queues, and dequeues; +Collections such as sets, bags and heaps; and Associative Collections such as +finite maps and priority queues where the priority and element are distinct.") + (license license:expat))) + +(define-public ghc-edisoncore + (package + (name "ghc-edisoncore") + (version "1.3.1.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/EdisonCore" + "/EdisonCore-" version ".tar.gz")) + (sha256 + (base32 "06shxmcqxcahcn6zgl64vlqix4fnq53d97drcgsh94qp7gp201ry")))) + (build-system haskell-build-system) + (inputs + `(("ghc-mtl" ,ghc-mtl) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-edisonapi" ,ghc-edisonapi))) + (home-page "http://rwd.rdockins.name/edison/home/") + (synopsis "Library of efficent, purely-functional data structures") + (description + "This package provides the core Edison data structure implementations, +including multiple sequence, set, bag, and finite map concrete implementations +with various performance characteristics.") + (license license:expat))) + (define-public ghc-mmorph (package (name "ghc-mmorph") @@ -3855,6 +3970,50 @@ a subset of @code{MonadBase} into which generic control operations such as @code{catch} can be lifted from @code{IO} or any other base monad.") (license license:bsd-3))) +(define-public ghc-fail + (package + (name "ghc-fail") + (version "4.9.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/fail/fail-" + version ".tar.gz")) + (sha256 + (base32 "18nlj6xvnggy61gwbyrpmvbdkq928wv0wx2zcsljb52kbhddnp3d")))) + (build-system haskell-build-system) + (home-page "https://prime.haskell.org/wiki/Libraries/Proposals/MonadFail") + (synopsis "Forward-compatible MonadFail class") + (description + "This package contains the @code{Control.Monad.Fail} module providing the +@uref{https://prime.haskell.org/wiki/Libraries/Proposals/MonadFail, MonadFail} +class that became available in +@uref{https://hackage.haskell.org/package/base-4.9.0.0, base-4.9.0.0} for +older @code{base} package versions. This package turns into an empty package +when used with GHC versions which already provide the +@code{Control.Monad.Fail} module.") + (license license:bsd-3))) + +(define-public ghc-monadplus + (package + (name "ghc-monadplus") + (version "1.4.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/monadplus" + "/monadplus-" version ".tar.gz")) + (sha256 + (base32 "15b5320wdpmdp5slpphnc1x4rhjch3igw245dp2jxbqyvchdavin")))) + (build-system haskell-build-system) + (home-page "https://hackage.haskell.org/package/monadplus") + (synopsis "Filtering and folding over arbitrary MonadPlus instances") + (description + "This package generalizes many common stream operations such as +@code{filter}, @code{catMaybes} etc, enabling filtering and folding over +arbitrary @code{MonadPlus} instances.") + (license license:bsd-3))) + (define-public ghc-byteorder (package (name "ghc-byteorder") @@ -4694,6 +4853,35 @@ definition of @code{Monad}.") for Haskell.") (license license:bsd-3))) +(define-public ghc-equivalence + (package + (name "ghc-equivalence") + (version "0.3.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/equivalence" + "/equivalence-" version ".tar.gz")) + (sha256 + (base32 "0a85bdyyvjqs5z4kfhhf758210k9gi9dv42ik66a3jl0z7aix8kx")))) + (build-system haskell-build-system) + (inputs + `(("ghc-mtl" ,ghc-mtl) + ("ghc-stmonadtrans" ,ghc-stmonadtrans) + ("ghc-transformers-compat" ,ghc-transformers-compat) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2))) + (home-page "https://github.com/pa-ba/equivalence") + (synopsis "Maintaining an equivalence relation implemented as union-find") + (description + "This is an implementation of Tarjan's Union-Find algorithm (Robert E.@: +Tarjan. \"Efficiency of a Good But Not Linear Set Union Algorithm\",JACM +22(2), 1975) in order to maintain an equivalence relation. This +implementation is a port of the @code{union-find} package using the @code{ST} +monad transformer (instead of the IO monad).") + (license license:bsd-3))) + (define-public ghc-fast-logger (package (name "ghc-fast-logger") @@ -5081,6 +5269,28 @@ prettified JSON to stdout. It also offers a complementary \"compact\"-mode, essentially the opposite of pretty-printing.") (license license:bsd-3))) +(define-public ghc-boxes + (package + (name "ghc-boxes") + (version "0.1.4") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/boxes/boxes-" + version ".tar.gz")) + (sha256 + (base32 "1n7xiplzd3s1a39nizwjcgsh3wi2348mp21c3fk19v98ialfjgjf")))) + (build-system haskell-build-system) + (inputs + `(("ghc-split" ,ghc-split) + ("ghc-quickcheck" ,ghc-quickcheck))) + (home-page "https://hackage.haskell.org/package/boxes") + (synopsis "2D text pretty-printing library") + (description + "Boxes is a pretty-printing library for laying out text in two dimensions, +using a simple box model.") + (license license:bsd-3))) + (define-public ghc-wai (package (name "ghc-wai") @@ -5565,6 +5775,50 @@ and @code{Eq} instances. These instances used to live in the haskell-src-meta package, and that's where the version number started.") (license license:bsd-3))) +(define-public ghc-geniplate-mirror + (package + (name "ghc-geniplate-mirror") + (version "0.7.5") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package" + "/geniplate-mirror" + "/geniplate-mirror-" version ".tar.gz")) + (sha256 + (base32 "17vjps2118s5z3k39ij00lkmkxv3mqf8h59wv6qdamlgmhyr36si")))) + (build-system haskell-build-system) + (inputs `(("ghc-mtl" ,ghc-mtl))) + (home-page "https://github.com/danr/geniplate") + (synopsis "Use Template Haskell to generate Uniplate-like functions") + (description + "Use Template Haskell to generate Uniplate-like functions. This is a +maintained mirror of the @uref{https://hackage.haskell.org/package/geniplate, +geniplate} package, written by Lennart Augustsson.") + (license license:bsd-3))) + +(define-public ghc-gitrev + (package + (name "ghc-gitrev") + (version "1.3.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/gitrev/gitrev-" + version ".tar.gz")) + (sha256 + (base32 "0cl3lfm6k1h8fxp2vxa6ihfp4v8igkz9h35iwyq2frzm4kdn96d8")))) + (build-system haskell-build-system) + (inputs `(("ghc-base-compat" ,ghc-base-compat))) + (home-page "https://github.com/acfoltzer/gitrev") + (synopsis "Compile git revision info into Haskell projects") + (description + "This package provides some handy Template Haskell splices for including +the current git hash and branch in the code of your project. This is useful +for including in panic messages, @command{--version} output, or diagnostic +info for more informative bug reports.") + (license license:bsd-3))) + (define-public ghc-haskell-src-meta (package (name "ghc-haskell-src-meta") @@ -6078,6 +6332,31 @@ supports for high level forms of ASN1 (BER, and DER).") when ASN1 pattern matching is not convenient.") (license license:bsd-3))) +(define-public ghc-edit-distance + (package + (name "ghc-edit-distance") + (version "0.2.2.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/edit-distance" + "/edit-distance-" version ".tar.gz")) + (sha256 + (base32 "0jkca97zyv23yyilp3jydcrzxqhyk27swhzh82llvban5zp8b21y")))) + (build-system haskell-build-system) + (inputs + `(("ghc-random" ,ghc-random) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2))) + (home-page "https://github.com/phadej/edit-distance") + (synopsis "Levenshtein and restricted Damerau-Levenshtein edit distances") + (description + "This package provides optimized functions to determine the edit +distances for fuzzy matching, including Levenshtein and restricted +Damerau-Levenshtein algorithms.") + (license license:bsd-3))) + (define-public ghc-tasty-kat (package (name "ghc-tasty-kat") @@ -7056,6 +7335,27 @@ other transformers.") (base32 "0a364zfcm17mhpy0c4ms2j88sys4yvgd6071qsgk93la2wjm8mkr")))))) +(define-public ghc-stmonadtrans + (package + (name "ghc-stmonadtrans") + (version "0.4.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/STMonadTrans" + "/STMonadTrans-" version ".tar.gz")) + (sha256 + (base32 "1nr26fnmi5fdjc6d00w13kjhmfyvb5b837d0006w4dj0yxndaksp")))) + (build-system haskell-build-system) + (inputs + `(("ghc-mtl" ,ghc-mtl))) + (home-page "https://hackage.haskell.org/package/STMonadTrans") + (synopsis "Monad transformer version of the ST monad") + (description + "This package provides a monad transformer version of the @code{ST} monad +for strict state threads.") + (license license:bsd-3))) + (define-public ghc-findbin (package (name "ghc-findbin") diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 292c4e2eee..7be1b195f1 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -16,6 +16,7 @@ ;;; Copyright © 2016, 2017 Kei Kebreau <kei@openmailbox.org> ;;; Copyright © 2017 ng0 <ng0@infotropique.org> ;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com> +;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu> ;;; ;;; This file is part of GNU Guix. ;;; @@ -48,6 +49,8 @@ #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages graphics) + #:use-module (gnu packages gtk) + #:use-module (gnu packages lua) #:use-module (gnu packages maths) #:use-module (gnu packages mcrypt) #:use-module (gnu packages perl) @@ -61,6 +64,8 @@ #:use-module (guix git-download) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) + #:use-module (guix build-system python) + #:use-module (guix build-system r) #:use-module (srfi srfi-1)) (define-public libpng @@ -177,6 +182,29 @@ APNG patch provides APNG support to libpng.") (sha256 (base32 "1n2lrzjkm5jhfg2bs10q398lkwbbx742fi27zgdgx0x23zhj0ihg")))))) +(define-public r-png + (package + (name "r-png") + (version "0.1-7") + (source (origin + (method url-fetch) + (uri (cran-uri "png" version)) + (sha256 + (base32 + "0g2mcp55lvvpx4kd3mn225mpbxqcq73wy5qx8b4lyf04iybgysg2")))) + (build-system r-build-system) + (inputs + `(("libpng" ,libpng) + ("zlib" ,zlib))) + (home-page "http://www.rforge.net/png/") + (synopsis "Read and write PNG images") + (description + "This package provides an easy and simple way to read, write and display +bitmap images stored in the PNG format. It can read and write both files and +in-memory raw vectors.") + ;; Any of these GPL versions. + (license (list license:gpl2 license:gpl3)))) + (define-public pngcrunch (package (name "pngcrunch") @@ -1157,3 +1185,46 @@ medical image data, e.g. magnetic resonance image (MRI) and functional MRI (fMRI) brain images.") (home-page "http://niftilib.sourceforge.net") (license license:public-domain))) + +(define-public gpick + (package + (name "gpick") + (version "0.2.5") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/thezbyg/gpick/archive/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "0mxvxk15xhk2i5vfavjhnkk4j3bnii0gpf8di14rlbpq070hd5rs")))) + (build-system python-build-system) + (native-inputs + `(("boost" ,boost) + ("gettext" ,gnu-gettext) + ("pkg-config" ,pkg-config) + ("scons" ,scons))) + (inputs + `(("expat" ,expat) + ("gtk2" ,gtk+-2) + ("lua" ,lua-5.2))) + (arguments + `(#:tests? #f + #:phases + (modify-phases %standard-phases + (add-before 'build 'fix-lua-reference + (lambda _ + (substitute* "SConscript" + (("lua5.2") "lua-5.2")) + #t)) + (replace 'build + (lambda _ + (zero? (system* "scons")))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((dest (assoc-ref outputs "out"))) + (zero? (system* "scons" "install" + (string-append "DESTDIR=" dest))))))))) + (home-page "http://www.gpick.org/") + (synopsis "Color picker") + (description "Gpick is an advanced color picker and palette editing tool.") + (license license:bsd-3))) diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm index 8e17307543..3bd705fa2f 100644 --- a/gnu/packages/imagemagick.scm +++ b/gnu/packages/imagemagick.scm @@ -175,7 +175,11 @@ script.") "/GraphicsMagick-" version ".tar.xz"))) (sha256 (base32 - "122zgs96dqrys62mnh8x5yvfff6km4d3yrnvaxzg3mg5sprib87v")))) + "122zgs96dqrys62mnh8x5yvfff6km4d3yrnvaxzg3mg5sprib87v")) + (patches + (search-patches "graphicsmagick-CVE-2017-12935.patch" + "graphicsmagick-CVE-2017-12936.patch" + "graphicsmagick-CVE-2017-12937.patch")))) (build-system gnu-build-system) (arguments `(#:configure-flags diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm index 1d6ac82e5f..0f68cc532a 100644 --- a/gnu/packages/irc.scm +++ b/gnu/packages/irc.scm @@ -301,14 +301,14 @@ using a mouse. It is customizable and extensible with plugins and scripts.") (define-public limnoria (package (name "limnoria") - (version "2017.03.30") + (version "2017.08.18") (source (origin (method url-fetch) (uri (pypi-uri "limnoria" version)) (sha256 (base32 - "1q0y6iglg1cbhimgjz3afws51as3shy6rd61dck7jfm25y8pi6g8")))) + "1hij444l45mjli8i67iyd3syf263ijj1l0cm3irqjjxv5r3f9zjj")))) (build-system python-build-system) (inputs `(("python-pytz" ,python-pytz) diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 47dd4f256b..da68487b01 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -1064,7 +1064,7 @@ bootstrapping purposes.") (license license:gpl2+))) (define-public icedtea-7 - (let* ((version "2.6.10") + (let* ((version "2.6.11") (drop (lambda (name hash) (origin (method url-fetch) @@ -1082,7 +1082,7 @@ bootstrapping purposes.") version ".tar.xz")) (sha256 (base32 - "0am945k2zqrka2xn7lb5grmkad4lwncnhnwk8iq6f269birzsj8w")) + "1ibp6ybqnf8g7mbs45bkbv44dwz4h2w9gr4rh15yvr1m8lqkq1i0")) (modules '((guix build utils))) (snippet '(substitute* "Makefile.in" @@ -1475,25 +1475,25 @@ bootstrapping purposes.") (native-inputs `(("openjdk-src" ,(drop "openjdk" - "02klsxp9hlf5sial6mxpiq53hmrhlrg6x774j7bjjfhb7hpdvadh")) + "1zhr4l9kxnbzghcsgjk3vmih9qpg1wrr9qry7fx04l97svp1ylhd")) ("corba-drop" ,(drop "corba" - "1vbly6khri241xda05gnwkpf2fk41d96ls96ximi084mx0a3w5rd")) + "108v15ncb2rnsyzgzncjlm1f57d1sv60zd9qbpas8kqmvpp8r0gz")) ("jaxp-drop" ,(drop "jaxp" - "0s8zln64vdwdxwlw1vpfzm8xbpyhgsv3nqjmnv7y36qpsszg27a5")) + "0zcpcmm3g1s7m31glrbw3ys7azi97ixcvbyxd40y9xzdja3jyr52")) ("jaxws-drop" ,(drop "jaxws" - "0myd66bv8ib8krzgqv754bc564rd8xwpwabvf7my1apyb86vap3n")) + "1gkqm0p3sr8d0xpki3fhf7cvmgqxx8ambgl5f3jx2plfnhsg96d2")) ("jdk-drop" ,(drop "jdk" - "10b4lfv10vba07zblw0wii7mhrfhf32pf7410x5nz2q0smgszl2h")) + "1d9fjnzdx4m6gwkvmj2n097ag0mvkhm3lldaxjki8x8c6a5clknf")) ("langtools-drop" ,(drop "langtools" - "0lvncxb5qzrlqkflrnd0l8vwy155cwj1jb07rkq10z2vx0bq7lq2")) + "0zscdp9arcq7gr8j7jq4m75gq0w1i3ryxpdnrc8fl0msh4w2s2k5")) ("hotspot-drop" ,(drop "hotspot" - "0q6mdgbbd3681y3n0z1v783irdjhhi73z6sn5csczpyhjm318axb")) + "1y6vnssn5y50x27g4ypdb5wwpmi7zf7jdi8gqbymkwf6n8p5y1d6")) ("ant" ,ant-bootstrap) ("attr" ,attr) ("coreutils" ,coreutils) @@ -1543,7 +1543,7 @@ IcedTea build harness.") (license license:gpl2+)))) (define-public icedtea-8 - (let* ((version "3.5.0") + (let* ((version "3.5.1") (drop (lambda (name hash) (origin (method url-fetch) @@ -1552,7 +1552,7 @@ IcedTea build harness.") "/icedtea8/" version "/" name ".tar.xz")) (sha256 (base32 hash)))))) (package (inherit icedtea-7) - (version "3.5.0") + (version "3.5.1") (source (origin (method url-fetch) (uri (string-append @@ -1560,7 +1560,7 @@ IcedTea build harness.") version ".tar.xz")) (sha256 (base32 - "1dfa7ing61i73m6wfx2kx59q44npqdiy7cd66xmslyy0xh09xa4s")) + "1j8iv0cdk9fkh3yb5is7z29m9k3s89w6y9090538j6aa7p4nmalf")) (modules '((guix build utils))) (snippet '(begin @@ -1632,34 +1632,34 @@ IcedTea build harness.") `(("jdk" ,icedtea-7 "jdk") ("openjdk-src" ,(drop "openjdk" - "0di7gmyis1p6rpksmff1q21ck85i51sqcl9awqyvg7xiwggq0wsm")) + "0a6yrq8y1zkzc7hm2l28rm3vzy5izfxhmmhhhvc91lhfclnqcd2q")) ("aarch32-drop" ,(drop "aarch32" "0cway5a5hcfyh4pzl9zz5xr7lil4gsliy6r5iqbaasd2d9alvqiq")) ("corba-drop" ,(drop "corba" - "1xk64bsdxfc66g61d8k6xrhqj8rc56vzrlxx6s23gkr45604bl8x")) + "031sc6byd8lqvz3cd07phm13pqrxalxk9f3a2q8pim5n4sbsy0qb")) ("jaxp-drop" ,(drop "jaxp" - "1iw9xa4s5kxijdqpf0ih4x6g0lw142yy11vrzfmz6n1y4b0ic7iw")) + "1815jaj0k0w1s0g0jr1ahkajp1jx2qlb08i6l9ha4wyqqyp49a4n")) ("jaxws-drop" ,(drop "jaxws" - "14p2l4j985wh5cdd4hfmm18gb5wmry73yiysdx9pg3aqpkw9qms7")) + "0vh4f85cxhqvabzg86ycpz02519cdzgsn5dr75k22rkmbbxnbbl6")) ("jdk-drop" ,(drop "jdk" - "1qwmb80vicn7jd801f3j23lyil7327ks54d3s87czwv8h108m40r")) + "196ycqz4d9kknc6b219q4ib83l1kkl6w6l1cznw9bzaafyynqa35")) ("langtools-drop" ,(drop "langtools" - "175pi2privhcvn9sbam5mhhgcvicfqbgldiw25fi5g80fqkkrza9")) + "0ssnadlr5cxhmj06nmni34kdynix1sjhcvjzahm5yzfd7dfllmgy")) ("hotspot-drop" ,(drop "hotspot" - "1qdyn02p4ssl3p7z9aadhzl9qdam2q7pvwddz2jkyvajcrxb0mpi")) + "0f7fxf0s9kadvs80hm5ga72pyp9r0fvl8zm1wmd1wrks8kl79sd6")) ("nashorn-drop" ,(drop "nashorn" - "0kzmpf5b9kwhrvnwn7m20q3dzz8s82jjvbac84606x3ff97xk5gr")) + "0m95qgnd4z6p0xp9m06ihss7skx2yrm7xw69jsjsrxpriy1shiwy")) ("shenandoah-drop" ,(drop "shenandoah" - "0kjc5m5jj2bzyy1vj1s59khv5xjfnkxy18z0g4bdb1kb3g21c5wi")) + "0yjlcgp6mldp30hmkfl68mdwlbg3gb0m6xd5y7srczni7cln5f3i")) ,@(fold alist-delete (package-native-inputs icedtea-7) '("jdk" "openjdk-src" "corba-drop" "jaxp-drop" "jaxws-drop" "jdk-drop" "langtools-drop" "hotspot-drop"))))))) diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm index a25de39ed8..292b537a12 100644 --- a/gnu/packages/kde-frameworks.scm +++ b/gnu/packages/kde-frameworks.scm @@ -44,6 +44,7 @@ #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gnupg) + #:use-module (gnu packages gperf) #:use-module (gnu packages graphics) #:use-module (gnu packages gstreamer) #:use-module (gnu packages image) @@ -70,7 +71,7 @@ (define-public extra-cmake-modules (package (name "extra-cmake-modules") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -79,7 +80,7 @@ name "-" version ".tar.xz")) (sha256 (base32 - "1r3dyvrv77xrpjlzpa6yazwkknirvx1ccvdyj9x0mlk4vfi05nh5")))) + "1jr7nmhh4kyz1g454qkldfhimfjvvylqa19zna5iak08bkq8q696")))) (build-system cmake-build-system) (native-inputs `(("qtbase" ,qtbase))) ; For tests (needs qmake) @@ -254,7 +255,7 @@ Phonon-GStreamer is a backend based on the GStreamer multimedia library.") (define-public attica (package (name "attica") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -263,7 +264,7 @@ Phonon-GStreamer is a backend based on the GStreamer multimedia library.") name "-" version ".tar.xz")) (sha256 (base32 - "0l8gmsmpwzg6nzwwlnsdl6r6qkhnhirpmrkag9xpd2sbmy734x53")))) + "13jqk4w9crh8pca6n9334l1gb8bmwf86pa36k0mfh5j19dq72g2p")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -286,7 +287,7 @@ http://freedesktop.org/wiki/Specifications/open-collaboration-services/") (define-public bluez-qt (package (name "bluez-qt") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -295,7 +296,7 @@ http://freedesktop.org/wiki/Specifications/open-collaboration-services/") name "-" version ".tar.xz")) (sha256 (base32 - "040gs2a1fx996gqdx2pwxh00szb1vb85055z946nqvqfn01921df")))) + "1x6nj7vsn0sp9rckzkcbl6fwm7qzj5w98w2qys1fndb1spl7av8s")))) (build-system cmake-build-system) (native-inputs `(("dbus" ,dbus) @@ -306,12 +307,7 @@ http://freedesktop.org/wiki/Specifications/open-collaboration-services/") (arguments `(#:configure-flags '("-DINSTALL_UDEV_RULE:BOOL=OFF") - #:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (setenv "DBUS_FATAL_WARNINGS" "0") - (zero? (system* "dbus-launch" "ctest" "."))))))) + #:tests? #f)) ; DBUS_FATAL_WARNINGS=0 still yields 7/8 tests failing (home-page "https://community.kde.org/Frameworks") (synopsis "QML wrapper for BlueZ") (description "bluez-qt is a Qt-style library for accessing the bluez @@ -321,7 +317,7 @@ Bluetooth stack. It is used by the KDE Bluetooth stack, BlueDevil.") (define-public breeze-icons (package (name "breeze-icons") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -330,7 +326,7 @@ Bluetooth stack. It is used by the KDE Bluetooth stack, BlueDevil.") name "-" version ".tar.xz")) (sha256 (base32 - "1znzlggb6yrkw5rr2n75g7cfv9x5p9d55hss09c4i79lxrh1bk4a")))) + "17nr2phd0nxyx49igvl170ksikapgc4365z26pw0dmmw41llcbxw")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -350,7 +346,7 @@ It is the default icon theme for the KDE Plasma 5 desktop.") (define-public kapidox (package (name "kapidox") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -359,7 +355,7 @@ It is the default icon theme for the KDE Plasma 5 desktop.") name "-" version ".tar.xz")) (sha256 (base32 - "190d5z6i71jrvfna6vnlim2p9rgc33s1fxl0zarn276683i1rwvg")))) + "1xwkaamifxjghv158rwslndfd9z70rm9ixnp1mmkgw8radwsqg5v")))) (build-system cmake-build-system) (arguments `(#:tests? #f)) ; has no test target @@ -392,7 +388,7 @@ documentation.") (define-public karchive (package (name "karchive") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -401,7 +397,7 @@ documentation.") name "-" version ".tar.xz")) (sha256 (base32 - "0g8jskdar2znviwh9bs3kia093wgfnhl04x4jcg2rvh78ylkpvxw")))) + "1599lql0kcx705313bfvbazr7rayr6vsiwrpiq6iwljzc7lli1im")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -426,7 +422,7 @@ GZip format, via a subclass of QIODevice.") (define-public kcodecs (package (name "kcodecs") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -435,10 +431,11 @@ GZip format, via a subclass of QIODevice.") name "-" version ".tar.xz")) (sha256 (base32 - "0k51s4qlf0kq6i8f3wrsz5lrkzjqb1j26hrmlmg57vn91r58iash")))) + "0kmk97b5vbnyb3xjxwmg3l47aka8mkf50g4p7wvr096qwplffbva")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) + ("gperf" ,gperf) ("qttools" ,qttools))) (inputs `(("qtbase" ,qtbase))) @@ -461,7 +458,7 @@ Internet).") (define-public kconfig (package (name "kconfig") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -470,7 +467,7 @@ Internet).") name "-" version ".tar.xz")) (sha256 (base32 - "0blbx6b3fk6p8cv2iywk2avn9w1411bb0g5wwv456a9ggi01988x")))) + "1f0y2gmwy05b17clr7vg1zp18l1z0fd757v02ha7cwd64yznyr5d")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -528,7 +525,7 @@ propagate their changes to their respective configuration files.") (define-public kcoreaddons (package (name "kcoreaddons") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -537,7 +534,7 @@ propagate their changes to their respective configuration files.") name "-" version ".tar.xz")) (sha256 (base32 - "1ybr4bv8rhp4cxpf8mfsc4dk0klzrfh1z8g2cw6zasmksxmmwi90")))) + "0a45sz11d7b2d8sbr9z57mv337nbhd94fiqk3issw470n0y46g3y")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -566,7 +563,7 @@ many more.") (define-public kdbusaddons (package (name "kdbusaddons") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -575,7 +572,7 @@ many more.") name "-" version ".tar.xz")) (sha256 (base32 - "1skblxfnjhbyiwavsfhksc2ybc2sikw3xr0js6mlfbpmvqzghn6h")) + "0745arkp4wnpwyhjq02h7lfac049cmlg5qwhf96i7ss0w54vch4i")) (patches (search-patches "kdbusaddons-kinit-file-name.patch")))) (build-system cmake-build-system) (native-inputs @@ -611,7 +608,7 @@ as well as an API to create KDED modules.") (define-public kdnssd (package (name "kdnssd") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -620,7 +617,7 @@ as well as an API to create KDED modules.") name "-" version ".tar.xz")) (sha256 (base32 - "082mdim9wykdap4fmjfayk443rbarsk1p8cn3mspx2nw047yja80")))) + "03rd6znn2qwndn4m3bb03slwyic06ry535rawgyh06lfps0fcc5z")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -638,7 +635,7 @@ infrastructure.") (define-public kguiaddons (package (name "kguiaddons") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -647,7 +644,7 @@ infrastructure.") name "-" version ".tar.xz")) (sha256 (base32 - "1nmlwvy2jdmh0m6bmahvk68vl2rs9s28c10dkncpi6gvhsdkigqx")))) + "13g6nlw8fk135i6z3f8ichy8whxd6v4rycg80dlvm25h66rg6vn5")))) (build-system cmake-build-system) ;; TODO: Build packages for the Python bindings. Ideally this will be ;; done for all versions of python guix supports. Requires python, @@ -676,7 +673,7 @@ interfaces in the areas of colors, fonts, text, images, keyboard input.") (define-public ki18n (package (name "ki18n") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -685,7 +682,7 @@ interfaces in the areas of colors, fonts, text, images, keyboard input.") name "-" version ".tar.xz")) (sha256 (base32 - "0glvmmy01mp6hnix79aichgwjq842kgf5q5zynkg6mch85y4ary7")))) + "1c1sy4pbhlwsajs2972brdmma5val72gkil6k0a0f58nfvvg952d")))) (build-system cmake-build-system) (propagated-inputs `(("gettext" ,gettext-minimal) @@ -719,7 +716,7 @@ translation scripting.") (define-public kidletime (package (name "kidletime") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -728,7 +725,7 @@ translation scripting.") name "-" version ".tar.xz")) (sha256 (base32 - "0z8x6iz52y2m8llsp2q4qayxswkzay7ksimzy47crfag442bw24g")))) + "01m4q3l2yq83f2dpbv6jry7cjkj6bqdgfpy5b8byaf1gf9w2firs")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -746,7 +743,7 @@ or user activity.") (define-public kitemmodels (package (name "kitemmodels") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -755,7 +752,7 @@ or user activity.") name "-" version ".tar.xz")) (sha256 (base32 - "1liq1ppa7xb1dcncv25c2a0xy3l9bvb2a56cff90c0b0vwr239q5")))) + "1nlpzzp4m0ghfz1p2hrwn4lbhjhxc8b8q8kbzqbh9hmwmimbzzrr")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -805,7 +802,7 @@ model to observers (define-public kitemviews (package (name "kitemviews") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -814,7 +811,7 @@ model to observers name "-" version ".tar.xz")) (sha256 (base32 - "054accbis471zj1gbfxbc99062r2hvpb04i6w3r8fa4ml8s6brqk")))) + "17r7vnlyiiifhrz4gb4fifshn1jb4c67lhadczi8d301rzk7wwsm")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -840,7 +837,7 @@ to flat and hierarchical lists.") (define-public kplotting (package (name "kplotting") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -849,7 +846,7 @@ to flat and hierarchical lists.") name "-" version ".tar.xz")) (sha256 (base32 - "1ffy9b08128ym024wlfgnzk52vpy0mbaa91dhndpr40qcz0i67sh")))) + "0k4s0qvhjm9h1bmg16l32g4bsdrp2jrcila4dgzvrb56447px0zw")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -875,7 +872,7 @@ pixel units.") (define-public ksyntaxhighlighting (package (name "ksyntaxhighlighting") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -884,7 +881,7 @@ pixel units.") "syntax-highlighting-" version ".tar.xz")) (sha256 (base32 - "0ryfwblvzj9rd5jj7l8scmbb49ygzk77ng05hrznsipczin2cjw8")))) + "1l56pb84z7sy0qq8xkd5w5v5418bm9n4qds0vd39ch655d47bl72")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -918,12 +915,13 @@ highlighting engine. It's meant as a building block for text editors as well as for simple highlighted text rendering (e.g. as HTML), supporting both integration with a custom editor as well as a ready-to-use @code{QSyntaxHighlighter} sub-class.") + (properties `((upstream-name . "syntax-highlighting"))) (license license:lgpl2.1+))) (define-public kwayland (package (name "kwayland") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -932,7 +930,7 @@ integration with a custom editor as well as a ready-to-use name "-" version ".tar.xz")) (sha256 (base32 - "1zxb9ram47vbiik8h0czyvacrdiijhnslkpcm61l4r1rb0ybb0ib")))) + "0d4c8l8k38pgj73kzlf1hsq52w31wy9wgpwph1bv0cq5yn2rjiyr")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -962,7 +960,7 @@ represented by a QPoint or a QSize.") (define-public kwidgetsaddons (package (name "kwidgetsaddons") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -971,7 +969,7 @@ represented by a QPoint or a QSize.") name "-" version ".tar.xz")) (sha256 (base32 - "0hw87iig75mfgl5p3ph6zkwap31h357bm7rlyv5d9nnp10bq0hfg")))) + "1jmk377r1h4is2il7chh6bq8wbj21psf4b1yiw84iivg38vlpid4")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1009,7 +1007,7 @@ configuration pages, message boxes, and password requests.") (define-public kwindowsystem (package (name "kwindowsystem") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1018,7 +1016,7 @@ configuration pages, message boxes, and password requests.") name "-" version ".tar.xz")) (sha256 (base32 - "1sp2x7afhw19vmhdp2qyrmljz8h0875xjk95n8c5gzypk7sr0l83")))) + "0pd2n0j5pdv1x7wf4mwcpimnah73g6l0xidhqbpg37p829jix2k2")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1074,7 +1072,7 @@ lower level classes for interaction with the X Windowing System.") (define-public modemmanager-qt (package (name "modemmanager-qt") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1083,7 +1081,7 @@ lower level classes for interaction with the X Windowing System.") name "-" version ".tar.xz")) (sha256 (base32 - "1cf5nsc8h7djvr19fm5dphzplh1wm3asvn0a7r71spg0i7lzi89h")))) + "1fqf43kvj1v1mcdlbfxbh6sh3ycvg35aml2ywh2a684iz4qzq1aq")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1112,7 +1110,7 @@ messages.") (define-public networkmanager-qt (package (name "networkmanager-qt") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1121,7 +1119,7 @@ messages.") name "-" version ".tar.xz")) (sha256 (base32 - "05s0irvkg0g57acriablyha2wb9c7w3xhq223vdddjqpcdx0pnkl")))) + "01px9n97gyvyyfg3dp1k7dik9fprgx9i28hg8wjr2rb5dlr99jd1")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1151,7 +1149,7 @@ which are used in DBus communication.") (define-public oxygen-icons (package (name "oxygen-icons") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1160,7 +1158,7 @@ which are used in DBus communication.") name "5" "-" version ".tar.xz")) (sha256 (base32 - "0cmxxssir5zbp5nlxq81h2xfd6wrxbbkydyw93dby7r56isl7ga5")))) + "1rns7n93f83qp5q11a7r5y87y0hvc0q95ar57cqy0fxsqrg4614h")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1176,7 +1174,7 @@ which are used in DBus communication.") (define-public solid (package (name "solid") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1185,7 +1183,7 @@ which are used in DBus communication.") name "-" version ".tar.xz")) (sha256 (base32 - "02kz21p3p1s1rg7gf34fr6ynhji6x97yvsfdpvbfxbhijabbh4ib")))) + "1gb9gnp1a11q5abl97b7sq1if2rqcrcs0f33sakpxf1z9y0ppg8l")))) (build-system cmake-build-system) (arguments `(#:phases @@ -1214,7 +1212,7 @@ system.") (define-public sonnet (package (name "sonnet") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1223,7 +1221,7 @@ system.") name "-" version ".tar.xz")) (sha256 (base32 - "06gxrh8rb75ydkqxk5dhlmwndnczp264jx588ryfwlf3vlnk99vs")))) + "0sb6i464riadgb2q73nj0vy6xavr2m1sszrvghr20nj7i64f3kk0")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1242,7 +1240,7 @@ ASpell and HUNSPELL.") (define-public threadweaver (package (name "threadweaver") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1251,7 +1249,7 @@ ASpell and HUNSPELL.") name "-" version ".tar.xz")) (sha256 (base32 - "1gylpl283qf1jcfyib4q5xwnpdq13hnd2cp2i7xjazdw2jp40zhr")))) + "1hb3721r1zbbyj211886sfkcxk18k0rsdhcg9ssagx10f29rpxx4")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -1272,7 +1270,7 @@ uses a job-based interface to queue tasks and execute them in an efficient way." (define-public kauth (package (name "kauth") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1281,7 +1279,7 @@ uses a job-based interface to queue tasks and execute them in an efficient way." name "-" version ".tar.xz")) (sha256 (base32 - "06cw1bsp7inh5wglajm8aahy17p35ixgnijb7d74gjqzbj4cv93d")))) + "0ciz28bvbvxlv0iz0cgs31x2m1czkki21ypzqj8rg2ix8jw2p65w")))) (build-system cmake-build-system) (native-inputs `(("dbus" ,dbus) @@ -1319,7 +1317,7 @@ utilities.") (define-public kcompletion (package (name "kcompletion") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1328,7 +1326,7 @@ utilities.") name "-" version ".tar.xz")) (sha256 (base32 - "18hvdk5b1nkh6b3vx0jajri57rl266b0qjsiwirh5wmjc81xbpcw")))) + "0qhjkqmd1jjy50hlzsdxwgnjwpfdrz3njl5n88h3nzp83yjv1ljz")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1355,7 +1353,7 @@ integrated it into your application's other widgets.") (define-public kcrash (package (name "kcrash") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1364,7 +1362,7 @@ integrated it into your application's other widgets.") name "-" version ".tar.xz")) (sha256 (base32 - "1cshay7dhbqgh62nq85vd9sm20gq9s9f70mdnzjjh1q7cajybkp3")))) + "16k2pwf3s3adgayd9vq7kk8c5gnq9g6wra4psrvs3a3c5k5am5y0")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -1390,7 +1388,7 @@ application crashes.") (define-public kdoctools (package (name "kdoctools") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1399,7 +1397,7 @@ application crashes.") name "-" version ".tar.xz")) (sha256 (base32 - "145jjhsd0whmcj91zbjz2b1jyj4wasw60hbwyd4xvqds8cp0l02h")))) + "0gbc5qqim6262hvkl9pf6rynnblxb3hsw3c4ars03ip7n761y0zl")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -1438,7 +1436,7 @@ from DocBook files.") (define-public kfilemetadata (package (name "kfilemetadata") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1447,7 +1445,7 @@ from DocBook files.") name "-" version ".tar.xz")) (sha256 (base32 - "1rvlg6by8daiq5ff3qlxcw9k2iq4qicsj0c8a00xfy3w4h9ip9h5")))) + "17mbm6pdi6ac61kj2qzxf7y3rbxhxg9rwqr7qy766gh3img2vq8p")))) (build-system cmake-build-system) (arguments `(#:phases @@ -1490,7 +1488,7 @@ by applications to write metadata.") (define-public kimageformats (package (name "kimageformats") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1499,7 +1497,7 @@ by applications to write metadata.") name "-" version ".tar.xz")) (sha256 (base32 - "0q9ng4clqk2dqw43nk1pmq1d61rahc3qr4dmg4y3kjvz3ahnnijw")))) + "1knha6wjzjs0vnkljwpfinzg3hg2jyh9c07ifqvd47cprl96ickg")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1511,6 +1509,11 @@ by applications to write metadata.") (arguments `(#:phases (modify-phases %standard-phases + ;; This test fails regularly, delete offending portion + (add-after 'unpack 'neuter-read-xcf-test + (lambda _ + (delete-file "autotests/read/xcf/simple-rgba-gimp-2.8.10.png") + (delete-file "autotests/read/xcf/simple-rgba-gimp-2.8.10.xcf"))) (add-before 'check 'check-setup (lambda _ ;; make Qt render "offscreen", required for tests @@ -1534,7 +1537,7 @@ formats.") (define-public kjobwidgets (package (name "kjobwidgets") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1543,7 +1546,7 @@ formats.") name "-" version ".tar.xz")) (sha256 (base32 - "0lrx761vf947mb2q1l2jgi0wgwj8cz2nn1xg0j38bh99sgddmzpf")))) + "1162dxhpspd7p1735npp0amrxr5b0j467f5651k2rv6mvqfmqr4b")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1562,7 +1565,7 @@ asynchronous jobs.") (define-public knotifications (package (name "knotifications") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1571,7 +1574,7 @@ asynchronous jobs.") name "-" version ".tar.xz")) (sha256 (base32 - "12z5hza0n5zr6mv3gkwhzb8zkrmk6dvgq8hrzwm8rzkgphjr6pi9")))) + "0gvv6jal7n4m3y30ragjlyhghq3y2782d422im9klxqzlgdgvkb6")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -1608,7 +1611,7 @@ covers feedback and persistent events.") (define-public kpackage (package (name "kpackage") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1617,7 +1620,7 @@ covers feedback and persistent events.") name "-" version ".tar.xz")) (sha256 (base32 - "0wdymhcrjggxb7andz36cfk9f240vvbq5yahlxyhfp9z69lriw5q")))) + "1ikf55q2pk8vm70pqm7rmakja309zjh9z1lg0xqslq1pqd6xki7s")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -1646,7 +1649,7 @@ were traditional plugins.") (define-public kpty (package (name "kpty") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1655,7 +1658,7 @@ were traditional plugins.") name "-" version ".tar.xz")) (sha256 (base32 - "00k5hhz7nf3nf47xb003ni1chi03imyrfajap6ay4zp90l8fr950")))) + "0wb873r1ycgi11s0qx3lhvz54703yz5sax6fb6wdmri5c05gzd5a")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -1683,7 +1686,7 @@ and communicating with them using a pty.") (define-public kunitconversion (package (name "kunitconversion") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1692,7 +1695,7 @@ and communicating with them using a pty.") name "-" version ".tar.xz")) (sha256 (base32 - "0v4x0flbfavrzfiqh71mdkqgp1fzk4f52msvq6w60i2s3sz7hcsm")))) + "1qvq61sbv9naj5ndi5xjwx7ami0xa6bqiajr912kbbbp2257cjsi")))) (build-system cmake-build-system) (arguments `(#:phases @@ -1726,7 +1729,7 @@ gallons).") (define-public baloo (package (name "baloo") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1735,7 +1738,7 @@ gallons).") name "-" version ".tar.xz")) (sha256 (base32 - "0z53lnniq9xdk09d73z0p1xs1qmaf71m4znm4hmq956yg4yqa1ya")))) + "19sl07lhjrri40vfi8wl6azgmg08lgfb98xx110j6spjbbbnww79")))) (build-system cmake-build-system) (propagated-inputs `(("kcoreaddons" ,kcoreaddons) @@ -1770,6 +1773,12 @@ gallons).") ;; make Qt render "offscreen", required for tests (setenv "QT_QPA_PLATFORM" "offscreen") #t)) + (add-after 'unpack 'remove-failing-test + ;; This test fails on i686 and aarch64 + (lambda _ + (substitute* "autotests/unit/file/CMakeLists.txt" + (("metadatamovertest") "")) + #t)) (replace 'check (lambda _ (setenv "DBUS_FATAL_WARNINGS" "0") @@ -1784,7 +1793,7 @@ maintaining an index of the contents of your files.") (define-public kactivities (package (name "kactivities") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1793,7 +1802,7 @@ maintaining an index of the contents of your files.") name "-" version ".tar.xz")) (sha256 (base32 - "0dg6bkdxf4sicij4szmi55npn6chp0sfmw27qi1s582ymqzjgf5m")))) + "005xvzp10kvwcsl2w6ghcqgqnr2rdvv9w61i4y44y25vcb85g26v")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -1831,7 +1840,7 @@ with other frameworks.") (define-public kactivities-stats (package (name "kactivities-stats") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1840,7 +1849,7 @@ with other frameworks.") name "-" version ".tar.xz")) (sha256 (base32 - "1dfaq4hsd9wm1ka45dkxbl9wwr7s5ixbnnghqwxhl7a60imc680r")))) + "09zsdzf77palmww7x3dzinl0hxrm4z0q0yc2fmf0d7z6cfl695y2")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -1861,7 +1870,7 @@ by which applications, and what documents have been linked to which activity.") (define-public kbookmarks (package (name "kbookmarks") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1870,7 +1879,7 @@ by which applications, and what documents have been linked to which activity.") name "-" version ".tar.xz")) (sha256 (base32 - "0ggn4rz8ch82ph64q6yik9fb1mp6kmsd7n33p769zl1lw7fldn0v")))) + "0l6rkj0b7hk2wg6dypj1dkl8pcd1vx89gaiixbhkd3vf7jp46n41")))) (build-system cmake-build-system) (propagated-inputs `(("kwidgetsaddons" ,kwidgetsaddons))) @@ -1904,7 +1913,7 @@ using the XBEL format.") (define-public kcmutils (package (name "kcmutils") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1913,7 +1922,7 @@ using the XBEL format.") name "-" version ".tar.xz")) (sha256 (base32 - "1b52lwn7qjqrn06va7j1jswlzs6bx0drs90myf3607k52ffbf4hy")))) + "1ik1505f16swsmvrv62dacis33f1ccnmkw3zbhb84vbrbqyskvzx")))) (build-system cmake-build-system) (propagated-inputs `(("kconfigwidgets" ,kconfigwidgets) @@ -1943,7 +1952,7 @@ KCModules can be created with the KConfigWidgets framework.") (define-public kconfigwidgets (package (name "kconfigwidgets") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1952,7 +1961,7 @@ KCModules can be created with the KConfigWidgets framework.") name "-" version ".tar.xz")) (sha256 (base32 - "0h4kappsffrp2qgg8wza1ybgah2dlcgpz591llfvaz31ldsml9hk")))) + "001d1nj8q6xpl71rwm15rnvy5ajyxpvknvf4ic7p5pbik3021bs6")))) (build-system cmake-build-system) (propagated-inputs `(("kauth" ,kauth) @@ -1985,7 +1994,7 @@ their settings.") (define-public kdeclarative (package (name "kdeclarative") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -1994,7 +2003,7 @@ their settings.") name "-" version ".tar.xz")) (sha256 (base32 - "1mfj32p631zvwz9ldk8536ifb4n825zxbhx69bfllhw2vn1am7z2")))) + "1ish46m2dpnpqjnf8g660clcg7ky65w11cbk2m79pwyhqvhxgggj")))) (build-system cmake-build-system) (propagated-inputs `(("kconfig" ,kconfig) @@ -2046,7 +2055,7 @@ that offer bindings to some of the Frameworks.") (define-public kded (package (name "kded") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2055,7 +2064,7 @@ that offer bindings to some of the Frameworks.") name "-" version ".tar.xz")) (sha256 (base32 - "0qy4w7bcg60gyf6y6c11kqcshnld55a8w4fzglpwgqfbliyi5yzq")))) + "162s5qx2qb0bi889f8jjvd3ci31azd8iwp25i04vwi0lzglwb8gy")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -2079,7 +2088,7 @@ started on demand.") (define-public kdesignerplugin (package (name "kdesignerplugin") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2088,7 +2097,7 @@ started on demand.") name "-" version ".tar.xz")) (sha256 (base32 - "1jnarg7wrhdjfq73q4wplazxsz927mpf0l6m0i4akq4dlp1b7aah")))) + "1197003bqcdpsyn6faasr2nhaadh7ryg92vjpqim78af3vwinsdw")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -2117,7 +2126,7 @@ ini-style description files.") (define-public kdesu (package (name "kdesu") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2126,7 +2135,7 @@ ini-style description files.") name "-" version ".tar.xz")) (sha256 (base32 - "04mx0d6kf8slgkkgbna3cyv4c491jvlwcwqxc7zikz0i03l341id")))) + "1qfhkzk6l9rfdyiad8y6k30zlhziz3q2dxvxkmnghxmkg98yhdza")))) (build-system cmake-build-system) (propagated-inputs `(("kpty" ,kpty))) @@ -2148,7 +2157,7 @@ with su and ssh respectively.") (define-public kemoticons (package (name "kemoticons") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2157,7 +2166,7 @@ with su and ssh respectively.") name "-" version ".tar.xz")) (sha256 (base32 - "02h12qy0w6mcgkczi3md1znnvp7r47l8h416nd080ljpsydalgx8")))) + "1cx978s1dm3v1jh4aymncxs44iizdqp174dqg9m5mf043fcvvinq")))) (build-system cmake-build-system) (propagated-inputs `(("kservice" ,kservice))) @@ -2189,7 +2198,7 @@ emoticons coming from different providers.") (define-public kglobalaccel (package (name "kglobalaccel") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2198,7 +2207,7 @@ emoticons coming from different providers.") name "-" version ".tar.xz")) (sha256 (base32 - "1i32dq70qxjbfvlw0wqxvqvl6ysydmpg3zbiflff4z1qrmvmpw6a")))) + "1d84q3r6q5n2lclym9a9m1brfqnq3p3dykfpzvhcba3bjxh3cdsb")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -2232,7 +2241,7 @@ window does not need focus for them to be activated.") (define-public kiconthemes (package (name "kiconthemes") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2241,7 +2250,7 @@ window does not need focus for them to be activated.") name "-" version ".tar.xz")) (sha256 (base32 - "0hbl82r6qc8dh9v9n9xjkx966czkq5yjxx2rx7sbilj2p9v3saii")))) + "1j7mgfsvxa24nf1d9xyn2jv9y9j523vghsvsm73x8d3ijibchfxq")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -2279,7 +2288,7 @@ in applications using the KDE Frameworks.") (define-public kinit (package (name "kinit") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2288,7 +2297,7 @@ in applications using the KDE Frameworks.") name "-" version ".tar.xz")) (sha256 (base32 - "08429kjihpaip73wszr3rsii8sdlwgm3kxx7g0hpjhkj9d2jq3m1")))) + "0b7dyy4hqyf6wk7gg2l23ldnji2zl8vzyj5wd5qh4yi7rdl6js5r")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -2326,7 +2335,7 @@ makes starting KDE applications faster and reduces memory consumption.") (define-public kio (package (name "kio") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2335,7 +2344,7 @@ makes starting KDE applications faster and reduces memory consumption.") name "-" version ".tar.xz")) (sha256 (base32 - "1i23ld5b9gafh2x3lv79jbggbd92xyhk7rg3n765w3bsfpg2ijva")))) + "0nxchbhs8p2d4243dyp7qa65g1p6r3ic2h6dz7w0aa0qzsy8wi29")))) (build-system cmake-build-system) (propagated-inputs `(("kbookmarks" ,kbookmarks) @@ -2401,7 +2410,7 @@ KIO enabled infrastructure.") (define-public knewstuff (package (name "knewstuff") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2410,7 +2419,7 @@ KIO enabled infrastructure.") name "-" version ".tar.xz")) (sha256 (base32 - "19d53ylwr92dzl9agk4j765zvb897rcm55z7pr6841aj58jk9b82")))) + "1scnxhxx4g8j4wml6x8i5v00rpaxyzzcm7vqbra2axbql5d8g8ny")))) (build-system cmake-build-system) (propagated-inputs `(("attica" ,attica) @@ -2458,7 +2467,7 @@ specification.") (define-public knotifyconfig (package (name "knotifyconfig") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2467,7 +2476,7 @@ specification.") name "-" version ".tar.xz")) (sha256 (base32 - "0lwl22vq770jyp45j32s0ss8yiqdwbink6cdhkbapg3pzbiwklyk")))) + "14kjckynszv8015p17j578l3knmkmw25d8r8ks4wavgj3db9bik5")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -2500,7 +2509,7 @@ notifications which can be embedded in your application.") (define-public kparts (package (name "kparts") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2509,7 +2518,7 @@ notifications which can be embedded in your application.") name "-" version ".tar.xz")) (sha256 (base32 - "1a5n0f7ljdc2bm6vggzwbvpblyxjqn9m9pam70iab964pqqalgp7")))) + "0jrd8idkz8nhkda2rwgf8rysqngiv4r5ajmrzp2kfz1pr91a6l5h")))) (build-system cmake-build-system) (propagated-inputs `(("kio" ,kio) @@ -2551,7 +2560,7 @@ widgets with a user-interface defined in terms of actions.") (define-public kpeople (package (name "kpeople") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2560,7 +2569,7 @@ widgets with a user-interface defined in terms of actions.") name "-" version ".tar.xz")) (sha256 (base32 - "0krm74dl80s48nhiygga4dvkvqqimxdx4nczbk4qvj7j1g9p2rsh")))) + "1qgp4wqp985ac1m9wakpsvk3c2driwkwrjkc3aic7dyr1p456qsf")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -2594,7 +2603,7 @@ to easily extend the contacts collection.") (define-public krunner (package (name "krunner") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2603,7 +2612,7 @@ to easily extend the contacts collection.") name "-" version ".tar.xz")) (sha256 (base32 - "0n527p708k719zgmvvbmp20xmg72f85cll05q05p4h317g7wz6i5")))) + "171qbhr1yszl2gcffm47p5wiwj71w9yhvk6srhvfpiwfyh61a4ld")))) (build-system cmake-build-system) (propagated-inputs `(("plasma-framework" ,plasma-framework))) @@ -2624,6 +2633,7 @@ to easily extend the contacts collection.") ("kpackage" ,kpackage) ("kservice" ,kservice) ("kwidgetsaddons" ,kwidgetsaddons) + ("kwindowsystem" ,kwindowsystem) ("kxmlgui" ,kxmlgui) ("qtbase" ,qtbase) ("qtdeclarative" ,qtdeclarative) @@ -2649,7 +2659,7 @@ typed.") (define-public kservice (package (name "kservice") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2658,7 +2668,7 @@ typed.") name "-" version ".tar.xz")) (sha256 (base32 - "0sikwn49s2iq1nj518q55m2p0hvdvwm98cpf0dkjb1z1v6fgjc37")))) + "1zxs5yzd3rmy33vsip4c4igk9g38kzaggw8c29sxmgr8vgdrnvhr")))) (build-system cmake-build-system) (propagated-inputs `(("kconfig" ,kconfig) @@ -2694,7 +2704,7 @@ types or handled by application specific code.") (define-public ktexteditor (package (name "ktexteditor") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2703,7 +2713,7 @@ types or handled by application specific code.") name "-" version ".tar.xz")) (sha256 (base32 - "182a0swfgdqr0faq3ksk6hlfvdi1afd0hpys5vayjjf263m19xxw")))) + "0y04s1nwkf0np6iymjxf0jssin28qw2901kpb3iw8gd52ni5rrks")))) (build-system cmake-build-system) (propagated-inputs `(("kparts" ,kparts))) @@ -2764,7 +2774,7 @@ library.") (define-public ktextwidgets (package (name "ktextwidgets") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2773,7 +2783,7 @@ library.") name "-" version ".tar.xz")) (sha256 (base32 - "1hri34b373bww5gv14qli2nm77k05pk170nbb2vv2zvzv93g25gw")))) + "1p8ns75sbnapm6ds16hx36q9vlnz9phgy28rx0gm1ckxqvm4yzr5")))) (build-system cmake-build-system) (propagated-inputs `(("ki18n" ,ki18n) @@ -2811,7 +2821,7 @@ It supports rich text as well as plain text.") (define-public kwallet (package (name "kwallet") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2820,7 +2830,7 @@ It supports rich text as well as plain text.") name "-" version ".tar.xz")) (sha256 (base32 - "08z3ddsam5n5qn2svscp4hgksf6qd1h8lqw1v382p01nnmhxadz5")))) + "1l7jl3y0rzx2whnbp6w5p6kg71vwyccp2nwxxgcxr6541m0nihsz")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -2852,7 +2862,7 @@ the passwords on KDE work spaces.") (define-public kxmlgui (package (name "kxmlgui") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2861,7 +2871,7 @@ the passwords on KDE work spaces.") name "-" version ".tar.xz")) (sha256 (base32 - "1v8m6qzjqg3ic14a5ki37bf13kifzcbhly68zcxgs5b92hr953iy")))) + "0jrvjlxkg9knj61b2gj2w6l96jlmww9kn4ij808ir35365x3cdg2")))) (build-system cmake-build-system) (propagated-inputs `(("kconfig" ,kconfig) @@ -2904,7 +2914,7 @@ descriptions for integrating actions from plugins.") (define-public kxmlrpcclient (package (name "kxmlrpcclient") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2913,7 +2923,7 @@ descriptions for integrating actions from plugins.") name "-" version ".tar.xz")) (sha256 (base32 - "0kp3ab50m5jl2jgw883ip67s6gs0l3saprzrqa9r3hydn2c4s3md")))) + "1jn9v86dpfx43qcdcsp6lpnga9q6aa5vxjkkg4wg0wbxmw4w9gvq")))) (build-system cmake-build-system) (propagated-inputs `(("kio" ,kio))) @@ -2947,7 +2957,7 @@ setUrl, setUserAgent and call.") (define-public plasma-framework (package (name "plasma-framework") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -2956,7 +2966,7 @@ setUrl, setUserAgent and call.") name "-" version ".tar.xz")) (sha256 (base32 - "0waicqskfwc8xpmrym165hwlfv6nzbwc783sac5vrhbyk4bwk8x9")))) + "0kamvxfzrbx3msn0cp3k20clqchz9jg5wlazz3h6p6zmrk5v16bh")))) (build-system cmake-build-system) (propagated-inputs `(("kpackage" ,kpackage) @@ -3042,7 +3052,7 @@ script engines.") (define-public kde-frameworkintegration (package (name "kde-frameworkintegration") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) (uri (string-append @@ -3051,7 +3061,7 @@ script engines.") "frameworkintegration-" version ".tar.xz")) (sha256 (base32 - "0hq1r2znjzy0wzm3nsclqmih1aia5300bsf87a2l4919q0ildb20")))) + "0pcy3hjqbahbx65yxz5bl0h2ah4y3fb7mq3pj1rrp2cpp92s135a")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -3099,7 +3109,7 @@ workspace.") (define-public kdelibs4support (package (name "kdelibs4support") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) @@ -3108,7 +3118,7 @@ workspace.") (version-major+minor version) "/portingAids/" name "-" version ".tar.xz")) (sha256 - (base32 "0q9jjsjcvc43va4yvfay2xi40vb95lnqhgzavpqcndzjihixwmi0")))) + (base32 "1zz100m1sqfmg3ni7023b99qn79jhdd2ryw6534axl5zgn0sglh9")))) (build-system cmake-build-system) (native-inputs `(("dbus" ,dbus) @@ -3210,7 +3220,7 @@ http://community.kde.org/Frameworks/Porting_Notes should help with this.") (define-public khtml (package (name "khtml") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) @@ -3219,13 +3229,14 @@ http://community.kde.org/Frameworks/Porting_Notes should help with this.") (version-major+minor version) "/portingAids/" name "-" version ".tar.xz")) (sha256 - (base32 "0j490jfnz8pbfl1i11wj514nw0skpnxr2fvi9pqpfql9lfhsanxv")))) + (base32 "1n0mx2xy9n5ffhvh58z3kn61aa7dhppsrwgxk697pybqy1h45ah2")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) ("perl", perl))) (inputs `(("giflib" ,giflib) + ("gperf" ,gperf) ("karchive" ,karchive) ("kcodecs" ,kcodecs) ("kglobalaccel" ,kglobalaccel) @@ -3268,7 +3279,7 @@ technology and using KJS for JavaScript support.") (define-public kjs (package (name "kjs") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) @@ -3277,7 +3288,7 @@ technology and using KJS for JavaScript support.") (version-major+minor version) "/portingAids/" name "-" version ".tar.xz")) (sha256 - (base32 "18b7k1hi73iqn06c1ryy9lcmvscr9d08q7n1wwkrn0l2xmy05xsq")))) + (base32 "046hy8ji4i6p2xp5gnqa8dk82sv6sbh4xg67y79i82bbi97dvq9b")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -3301,7 +3312,7 @@ support.") (define-public kjsembed (package (name "kjsembed") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) @@ -3310,7 +3321,7 @@ support.") (version-major+minor version) "/portingAids/" name "-" version ".tar.xz")) (sha256 - (base32 "17w8i370pqks1fj3pcziz7j014chnc6yi7md7w2p4xprw54pbmbk")))) + (base32 "0w2wk5azf1b45db58qj0cdc1l056x9s1xcd09ibavx5xmdvq6br0")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -3330,7 +3341,7 @@ QObjects, so you can script your applications.") (define-public kmediaplayer (package (name "kmediaplayer") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) @@ -3339,7 +3350,7 @@ QObjects, so you can script your applications.") (version-major+minor version) "/portingAids/" name "-" version ".tar.xz")) (sha256 - (base32 "1mq87qf86sdvwhas4w7rspd221qp4x9kds4nd0lpldiay4483k86")))) + (base32 "0fqxrkcwwzg11zsax9q169lisnfp9jsqg4ccd6xvv8kpkz3g04jp")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -3376,7 +3387,7 @@ KParts instead.") (define-public kross (package (name "kross") - (version "5.34.0") + (version "5.37.0") (source (origin (method url-fetch) @@ -3385,7 +3396,7 @@ KParts instead.") (version-major+minor version) "/portingAids/" name "-" version ".tar.xz")) (sha256 - (base32 "092qz8vyiialv9fvk4wvn8mrfhz5i5hnbq0xnz6nvi1pk3db6bxq")))) + (base32 "06pk6f6v82pd7x9rsmkhkp5r9sgcbrc503lqckl8d7argbb7j4k1")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm index 0a416148cb..a65a61f96b 100644 --- a/gnu/packages/kde.scm +++ b/gnu/packages/kde.scm @@ -258,7 +258,7 @@ used in KDE development tools Kompare and KDevelop.") (define-public libksysguard (package (name "libksysguard") - (version "5.8.2") + (version "5.10.4") (source (origin (method url-fetch) @@ -266,7 +266,7 @@ used in KDE development tools Kompare and KDevelop.") "/libksysguard-" version ".tar.xz")) (sha256 (base32 - "158n30wbpsgbw3axhhsc58hnwhwdd02j3zc9hhcybmnbkfl5c96l")))) + "01w0laywva0p0ar2lvr1k5000bhjikjfxsb4f6p30qswrchrmrh3")))) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) ("pkg-config" ,pkg-config))) @@ -303,7 +303,7 @@ used in KDE development tools Kompare and KDevelop.") (replace 'check (lambda _ ;other tests require a display and therefore fail (zero? (system* "ctest" "-R" "chronotest"))))))) - (home-page "https://www.kde.org/info/plasma-5.8.2.php") + (home-page "https://www.kde.org/info/plasma-5.10.4.php") (synopsis "Network enabled task and system monitoring") (description "KSysGuard can obtain information on system load and manage running processes. It obtains this information by interacting diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm index c27ddf042a..16a8d257d0 100644 --- a/gnu/packages/libreoffice.scm +++ b/gnu/packages/libreoffice.scm @@ -789,7 +789,7 @@ and to return information on pronunciations, meanings and synonyms.") (define-public libreoffice (package (name "libreoffice") - (version "5.3.2.2") + (version "5.3.5.2") (source (origin (method url-fetch) @@ -798,7 +798,7 @@ and to return information on pronunciations, meanings and synonyms.") "http://download.documentfoundation.org/libreoffice/src/" (version-prefix version 3) "/libreoffice-" version ".tar.xz")) (sha256 (base32 - "1bcy1wx2cixawpd6cpivakwcwv8ryyy25kdw0fbci319p5gaj4c8")))) + "1sknmb9bhm8mxyfycqbwng1jqs4avyp1ffcla7dhlpwqs1aqxvx5")))) (build-system gnu-build-system) (native-inputs `(;; autoreconf is run by the LibreOffice build system, since after diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 8ae74cbcb7..e271ef6b11 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -101,6 +101,7 @@ #:use-module (gnu packages xorg) #:use-module (gnu packages groff) #:use-module (gnu packages selinux) + #:use-module (gnu packages swig) #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system python) @@ -366,8 +367,8 @@ It has been modified to remove all non-free binary blobs.") (define %intel-compatible-systems '("x86_64-linux" "i686-linux")) -(define %linux-libre-version "4.12.7") -(define %linux-libre-hash "1sjkxkcikdgl2w5h7c5pfyqwi29g69dxp4s2z2yavw7aicc91xfq") +(define %linux-libre-version "4.12.8") +(define %linux-libre-hash "1p4ah15qs94id2yj6lhp6abdycvgp7lvn3ccsfs7f6n34hdij0cm") (define-public linux-libre (make-linux-libre %linux-libre-version @@ -376,14 +377,14 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.9 - (make-linux-libre "4.9.43" - "0fxid4xmnrcq966vz2wsb6spw3i02pvqp2hv8xfrx7dr3hfs9nrr" + (make-linux-libre "4.9.44" + "0a92bsb5d0pyhyn5ypc8ashwxixhivdadvikcpv31376j842fmj2" %intel-compatible-systems #:configuration-file kernel-config)) (define-public linux-libre-4.4 - (make-linux-libre "4.4.82" - "01bn0vn6i22hhwiqfh29m1cir1jrvz643lz13war8k9l6h0dmmwy" + (make-linux-libre "4.4.83" + "1fv3j0w0v82aa9s9n4a4qyrxc5bpq2ag9riawlabx57a380x1n62" %intel-compatible-systems #:configuration-file kernel-config)) @@ -1466,7 +1467,52 @@ transparently through a bridge.") (base32 "1r3lw3hjvqxi5zqyq2w1qadm3gisd9nlf71dkl4yplacmssnhm3h")))) (build-system gnu-build-system) - (native-inputs `(("flex" ,flex) ("bison" ,bison))) + (native-inputs + `(("bison" ,bison) + ("flex" ,flex) + ("pkg-config" ,pkg-config) + ("swig" ,swig) + ("libnl3-doc" + ,(origin + (method url-fetch) + (uri (string-append + "https://github.com/thom311/libnl/releases/download/libnl" + (string-join (string-split version #\.) "_") + "/libnl-doc-" version ".tar.gz")) + (sha256 + (base32 "0srab805yj8wb13l64qjyp3mdbqapxg5vk46v3zlhhzpmxqw8j7r")))))) + (inputs + `(("python-2" ,python-2) + ("python-3" ,python-3))) + (outputs '("out" "doc" "python2" "python3")) + (arguments + `(#:modules ((guix build gnu-build-system) + (guix build utils) + (srfi srfi-1)) + #:phases + (modify-phases %standard-phases + (add-after 'install 'install-python + (lambda* (#:key outputs #:allow-other-keys) + (define (python-inst python) + (let ((ldflags (format #f "LDFLAGS=-Wl,-rpath=~a/lib" + (assoc-ref %outputs "out"))) + (pyout (assoc-ref %outputs python))) + (and + (zero? (system (format #f "~a ~a setup.py build" + ldflags python pyout))) + (zero? + (system (format #f "~a ~a setup.py install --prefix=~a" + ldflags python pyout))) + (zero? (system* python "setup.py" "clean"))))) + (with-directory-excursion "./python" + (every python-inst '("python2" "python3"))))) + (add-after 'install 'install-doc + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((dest (string-append (assoc-ref outputs "doc") + "/share/doc/libnl"))) + (mkdir-p dest) + (zero? (system* "tar" "xf" (assoc-ref inputs "libnl3-doc") + "--strip-components=1" "-C" dest)))))))) (home-page "http://www.infradead.org/~tgr/libnl/") (synopsis "NetLink protocol library suite") (description @@ -4263,3 +4309,34 @@ tool, to understand the type of environment a process runs in, and for comparing system environments.") (home-page "http://github.com/jamesodhunt/procenv/") (license license:gpl3+))) + +(define-public libfabric + (package + (name "libfabric") + (version "1.4.1") + (source + (origin + (method url-fetch) + (uri + (string-append "https://github.com/ofiwg/libfabric/releases/download/v" + version "/libfabric-" version ".tar.bz2")) + (sha256 + (base32 "19l2m1frna1l765z4j7wl8hp4rb9wrh0hy5496685hd183hmy5pv")))) + (build-system gnu-build-system) + (inputs `(("rdma-core" ,rdma-core) + ;; TODO: add psm, psm(2). + ("libnl" ,libnl))) + (home-page "https://ofiwg.github.io/libfabric/") + (synopsis "Open Fabric Interfaces") + (description + "OpenFabrics Interfaces (OFI) is a framework focused on exporting fabric +communication services to applications. OFI is best described as a collection +of libraries and applications used to export fabric services. The key +components of OFI are: application interfaces, provider libraries, kernel +services, daemons, and test applications. + +Libfabric is a core component of OFI. It is the library that defines and +exports the user-space API of OFI, and is typically the only software that +applications deal with directly. It works in conjunction with provider +libraries, which are often integrated directly into libfabric.") + (license (list license:bsd-2 license:gpl2)))) ;dual diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index a81f6156ab..537157fca6 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -585,6 +585,14 @@ computations.") #:configure-flags '("--enable-shared") #:phases (modify-phases %standard-phases + ;; This is inspired by two of Debian's patches. + (add-before 'configure 'add-more-aarch64-support + (lambda _ + (substitute* '("mfhdf/ncgen/ncgen.l" + "mfhdf/ncgen/ncgenyy.c" + "mfhdf/libsrc/netcdf.h.in") + (("AIX5L64") "__aarch64__")) + #t)) (add-before 'configure 'patchbuild (lambda _ (substitute* @@ -596,7 +604,8 @@ computations.") -R\\$\\(abs_top_builddir\\)/mfhdf/xdr/\\.libs") "") (("@HDF_BUILD_SHARED_TRUE@AM_LDFLAGS = \ -R\\$\\(abs_top_builddir\\)/mfhdf/libsrc/\\.libs \ --R\\$\\(abs_top_builddir\\)/hdf/src/\\.libs \\$\\(XDR_ADD\\)") ""))))))) +-R\\$\\(abs_top_builddir\\)/hdf/src/\\.libs \\$\\(XDR_ADD\\)") "")) + #t))))) (home-page "https://www.hdfgroup.org/products/hdf4/") (synopsis "Library and multi-object file format for storing and managing data") diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm index 54fdd35ad5..d6423aa6fc 100644 --- a/gnu/packages/mpi.scm +++ b/gnu/packages/mpi.scm @@ -126,6 +126,8 @@ bind processes, and much more.") (inputs `(("hwloc" ,hwloc "lib") ("gfortran" ,gfortran) + ("libfabric" ,libfabric) + ("rdma-core" ,rdma-core) ("valgrind" ,valgrind))) (native-inputs `(("pkg-config" ,pkg-config) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index dcb48fb200..29ab50fc4c 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -952,7 +952,7 @@ your own lessons.") (define-public powertabeditor (package (name "powertabeditor") - (version "2.0.0-alpha9") + (version "2.0.0-alpha10") (source (origin (method url-fetch) (uri (string-append @@ -961,7 +961,7 @@ your own lessons.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1zjdz1qpkl83xr6dkap8airqcyjs3mxc5dzfyhrrvkyr7dics7ii")) + "1fr14ql0yhlqvh6y08yaanszm2nvca5i50rqym396kfvga3ky18x")) (modules '((guix build utils))) (snippet '(begin @@ -996,20 +996,13 @@ add_library( rapidjson INTERFACE IMPORTED )")) (replace 'check (lambda _ (zero? (system* "bin/pte_tests" - ;; FIXME: one test fails. - "exclude:Formats/PowerTabOldImport/Directions")))) - (add-after 'unpack 'set-target-directories - (lambda _ - (substitute* "cmake/PTE_Executable.cmake" - (("set\\( install_dir.*") - "set( install_dir bin )\n")) - (substitute* "cmake/PTE_Paths.cmake" - (("set\\( PTE_DATA_DIR .*") - "set( PTE_DATA_DIR share/powertabeditor )\n")) - ;; Tests hardcode the data directory as "data" - (substitute* "test/CMakeLists.txt" - (("\\$\\{PTE_DATA_DIR\\}") "data")) - #t)) + ;; FIXME: these tests fail + "exclude:Actions/EditStaff" + "exclude:Formats/PowerTabOldImport/MergeMultiBarRests" + "exclude:Score/ViewFilter/FilterRule" + "exclude:Score/ViewFilter/ViewFilter" + "exclude:Formats/PowerTabOldImport/Directions" + )))) (add-before 'configure 'remove-third-party-libs (lambda* (#:key inputs #:allow-other-keys) ;; Link with required static libraries, because we're not @@ -3171,3 +3164,37 @@ MuseScore can also play back scores through the built-in sequencer and SoundFont sample library.") (home-page "https://musescore.org") (license license:gpl2))) + +(define-public dssi + (package + (name "dssi") + (version "1.1.1") + (source (origin + (method url-fetch) + (uri (string-append + "mirror://sourceforge/dssi/dssi/" version + "/dssi-" version ".tar.gz")) + (sha256 + (base32 + "0kl1hzhb7cykzkrqcqgq1dk4xcgrcxv0jja251aq4z4l783jpj7j")))) + (build-system gnu-build-system) + (inputs + `(("alsa-lib" ,alsa-lib) + ("jack-2" ,jack-2) + ("ladspa" ,ladspa) + ("libsamplerate" ,libsamplerate) + ("libsndfile" ,libsndfile) + ("liblo" ,liblo))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (synopsis "Audio plugin API for soft synths and effects") + (description "DSSI is a plugin API for software instruments with user +interfaces, permitting them to be hosted in-process by audio applications. +It is intended to be simple, GUI-toolkit-agnostic, and slightly biased +towards familiarity with MIDI. The DSSI distribution package contains +a JACK/ALSA-sequencer reference host and some plugins as well as the +specification and header.") + (home-page "http://dssi.sourceforge.net/") + ;; The DSSI interface is LGPL2.1+, some tests and examples are GPL2+. + ;; The vast majority of examples are in the public domain. + (license (list license:lgpl2.1+ license:gpl2+)))) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 6dd6046461..c329c463f3 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2016 Raimon Grau <raimonster@gmail.com> ;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2016 John Darrington <jmd@gnu.org> -;;; Copyright © 2016 Nicolas Goaziou <mail@nicolasgoaziou.fr> +;;; Copyright © 2016, 2017 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org> ;;; Copyright © 2016, 2017 Arun Isaac <arunisaac@systemreboot.net> @@ -55,6 +55,7 @@ #:use-module (gnu packages dejagnu) #:use-module (gnu packages flex) #:use-module (gnu packages gettext) + #:use-module (gnu packages glib) #:use-module (gnu packages gnupg) #:use-module (gnu packages gtk) #:use-module (gnu packages libidn) @@ -66,7 +67,9 @@ #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) + #:use-module (gnu packages qt) #:use-module (gnu packages readline) + #:use-module (gnu packages ssh) #:use-module (gnu packages textutils) #:use-module (gnu packages tls) #:use-module (gnu packages valgrind) @@ -480,30 +483,31 @@ which can be used to encrypt a password with @code{crypt(3)}.") (define-public wireshark (package (name "wireshark") - (version "2.2.7") - (synopsis "Network traffic analyzer") + (version "2.4.0") (source (origin (method url-fetch) (uri (string-append "https://www.wireshark.org/download/src/wireshark-" - version ".tar.bz2")) + version ".tar.xz")) (sha256 (base32 - "1dfvhra5v6xhzbp097qsxi0zvirw0srbasl4v1wjf58v49idz7b8")))) - (build-system glib-or-gtk-build-system) - (inputs `(("bison" ,bison) - ("c-ares" ,c-ares) - ("flex" ,flex) + "011vvrj76z1azkpvyy2j40b1x1z56ymld508zfc4xw3gh8dv82w9")))) + (build-system gnu-build-system) + (inputs `(("c-ares" ,c-ares) + ("glib" ,glib) ("gnutls" ,gnutls) - ("gtk+" ,gtk+) ("libcap" ,libcap) ("libgcrypt" ,libgcrypt) ("libnl" ,libnl) ("libpcap" ,libpcap) - ("lua" ,lua-5.2) + ("libssh" ,libssh) + ("libxml2" ,libxml2) + ("lua" ,lua-5.2) ;Lua 5.3 unsupported ("krb5" ,mit-krb5) ("openssl" ,openssl) ("portaudio" ,portaudio) + ("qtbase" ,qtbase) + ("qttools" ,qttools) ("sbc" ,sbc) ("zlib" ,zlib))) (native-inputs `(("perl" ,perl) @@ -514,19 +518,21 @@ which can be used to encrypt a password with @code{crypt(3)}.") (list (string-append "--with-c-ares=" (assoc-ref %build-inputs "c-ares")) (string-append "--with-krb5=" (assoc-ref %build-inputs "krb5")) (string-append "--with-libcap=" (assoc-ref %build-inputs "libcap")) + (string-append "--with-libssh=" (assoc-ref %build-inputs "libssh")) (string-append "--with-lua=" (assoc-ref %build-inputs "lua")) (string-append "--with-pcap=" (assoc-ref %build-inputs "libpcap")) (string-append "--with-portaudio=" - (assoc-ref %build-inputs "portaudio")) + (assoc-ref %build-inputs "portaudio")) (string-append "--with-sbc=" (assoc-ref %build-inputs "sbc")) (string-append "--with-ssl=" (assoc-ref %build-inputs "openssl")) - (string-append "--with-zlib=" (assoc-ref %build-inputs "zlib")) - "--without-qt"))) + (string-append "--with-zlib=" (assoc-ref %build-inputs "zlib"))))) + (home-page "https://www.wireshark.org/") + (synopsis "Network traffic analyzer") (description "Wireshark is a network protocol analyzer, or @dfn{packet sniffer}, that lets you capture and interactively browse the contents of network frames.") - (license license:gpl2+) - (home-page "https://www.wireshark.org/"))) + (home-page "https://www.wireshark.org/") + (license license:gpl2+))) (define-public fping (package diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 3c1a4d9567..9b31f905e4 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -411,15 +411,15 @@ symlinks to the files in a common directory such as /usr/local.") (define-public rpm (package (name "rpm") - (version "4.12.0.1") + (version "4.13.0.1") (source (origin (method url-fetch) - (uri (string-append "http://rpm.org/releases/rpm-4.12.x/rpm-" + (uri (string-append "http://ftp.rpm.org/releases/rpm-" + (version-major+minor version) ".x/rpm-" version ".tar.bz2")) (sha256 (base32 - "0a82ym8phx7g0f3k6smvxnvzh7yv857l42xafk49689kzhld5pbp")) - (patches (search-patches "rpm-CVE-2014-8118.patch")))) + "03cvbwbfrhm0fa02j7828k1qp05hf2m0fradwcf2nqhrsjkppz17")))) (build-system gnu-build-system) (arguments '(#:configure-flags '("--with-external-db" ;use the system's bdb diff --git a/gnu/packages/patches/bcftools-regidx-unsigned-char.patch b/gnu/packages/patches/bcftools-regidx-unsigned-char.patch new file mode 100644 index 0000000000..af5bc160f5 --- /dev/null +++ b/gnu/packages/patches/bcftools-regidx-unsigned-char.patch @@ -0,0 +1,16 @@ +Description: Fix test-regidx argument parsing on archs with unsigned char + On architectures where char is unsigned "c >= 0" was always true. +Author: Adrian Bunk <bunk@debian.org> +Bug-Debian: https://bugs.debian.org/865060 + +--- a/test/test-regidx.c ++++ b/test/test-regidx.c +@@ -336,7 +336,7 @@ + {"seed",1,0,'s'}, + {0,0,0,0} + }; +- char c; ++ int c; + int seed = (int)time(NULL); + while ((c = getopt_long(argc, argv, "hvs:",loptions,NULL)) >= 0) + { diff --git a/gnu/packages/patches/graphicsmagick-CVE-2017-12935.patch b/gnu/packages/patches/graphicsmagick-CVE-2017-12935.patch new file mode 100644 index 0000000000..2cb3d46f62 --- /dev/null +++ b/gnu/packages/patches/graphicsmagick-CVE-2017-12935.patch @@ -0,0 +1,28 @@ +This patch comes from http://hg.code.sf.net/p/graphicsmagick/code/rev/cd699a44f188. + +diff -ur a/coders/png.c b/coders/png.c +--- a/coders/png.c 2017-07-04 17:32:08.000000000 -0400 ++++ b/coders/png.c 2017-08-19 11:16:20.933969362 -0400 +@@ -4101,11 +4101,17 @@ + mng_info->image=image; + } + +- if ((mng_info->mng_width > 65535L) || (mng_info->mng_height +- > 65535L)) +- (void) ThrowException(&image->exception,ImageError, +- WidthOrHeightExceedsLimit, +- image->filename); ++ if ((mng_info->mng_width > 65535L) || ++ (mng_info->mng_height > 65535L)) ++ { ++ (void) LogMagickEvent(CoderEvent,GetMagickModule(), ++ " MNG width or height is too large: %lu, %lu", ++ mng_info->mng_width,mng_info->mng_height); ++ MagickFreeMemory(chunk); ++ ThrowReaderException(CorruptImageError, ++ ImproperImageHeader,image); ++ } ++ + FormatString(page_geometry,"%lux%lu+0+0",mng_info->mng_width, + mng_info->mng_height); + mng_info->frame.left=0; diff --git a/gnu/packages/patches/graphicsmagick-CVE-2017-12936.patch b/gnu/packages/patches/graphicsmagick-CVE-2017-12936.patch new file mode 100644 index 0000000000..7036f37438 --- /dev/null +++ b/gnu/packages/patches/graphicsmagick-CVE-2017-12936.patch @@ -0,0 +1,16 @@ +This patch comes from http://hg.code.sf.net/p/graphicsmagick/code/rev/be898b7c97bd. + +diff -ur a/coders/wmf.c b/coders/wmf.c +--- a/coders/wmf.c 2016-09-05 15:20:23.000000000 -0400 ++++ b/coders/wmf.c 2017-08-19 10:38:08.984187264 -0400 +@@ -2719,8 +2719,8 @@ + if(image->exception.severity != UndefinedException) + ThrowException2(exception, + CoderWarning, +- ddata->image->exception.reason, +- ddata->image->exception.description); ++ image->exception.reason, ++ image->exception.description); + + if(logging) + (void) LogMagickEvent(CoderEvent,GetMagickModule(),"leave ReadWMFImage()"); diff --git a/gnu/packages/patches/graphicsmagick-CVE-2017-12937.patch b/gnu/packages/patches/graphicsmagick-CVE-2017-12937.patch new file mode 100644 index 0000000000..71af9ffe59 --- /dev/null +++ b/gnu/packages/patches/graphicsmagick-CVE-2017-12937.patch @@ -0,0 +1,28 @@ +This patch comes from http://hg.code.sf.net/p/graphicsmagick/code/rev/95d00d55e978. + +diff -ur a/coders/sun.c b/coders/sun.c +--- a/coders/sun.c 2016-05-30 13:19:54.000000000 -0400 ++++ b/coders/sun.c 2017-08-18 18:00:00.191023610 -0400 +@@ -1,5 +1,5 @@ + /* +-% Copyright (C) 2003-2015 GraphicsMagick Group ++% Copyright (C) 2003-2017 GraphicsMagick Group + % Copyright (C) 2002 ImageMagick Studio + % Copyright 1991-1999 E. I. du Pont de Nemours and Company + % +@@ -577,6 +577,7 @@ + for (bit=7; bit >= 0; bit--) + { + index=((*p) & (0x01 << bit) ? 0x01 : 0x00); ++ VerifyColormapIndex(image,index); + indexes[x+7-bit]=index; + q[x+7-bit]=image->colormap[index]; + } +@@ -587,6 +588,7 @@ + for (bit=7; bit >= (long) (8-(image->columns % 8)); bit--) + { + index=((*p) & (0x01 << bit) ? 0x01 : 0x00); ++ VerifyColormapIndex(image,index); + indexes[x+7-bit]=index; + q[x+7-bit]=image->colormap[index]; + } diff --git a/gnu/packages/patches/lz4-fix-test-failures.patch b/gnu/packages/patches/lz4-fix-test-failures.patch deleted file mode 100644 index d38357d402..0000000000 --- a/gnu/packages/patches/lz4-fix-test-failures.patch +++ /dev/null @@ -1,136 +0,0 @@ -These two patches fix some bugs in lz4's test suite: - -https://github.com/lz4/lz4/issues/308 - -Patches copied from upstream source repository: - -https://github.com/lz4/lz4/commit/b89cac7b2e92b792af98bb0a12e4d14684d07629 -https://github.com/lz4/lz4/commit/0dfb0b9dad2a8cb7cc347d2139bf9b84de7e1481 - -From b89cac7b2e92b792af98bb0a12e4d14684d07629 Mon Sep 17 00:00:00 2001 -From: Eric Siegerman <pub08-git@davor.org> -Date: Tue, 14 Feb 2017 14:17:06 -0500 -Subject: [PATCH] Don't use "foo && false || true" - -Replace it with either: - test ! -f $FILE_THAT_SHOULD_NOT_EXIST -or: - ! $COMMAND_THAT_SHOULD_FAIL - -as appropriate. ---- - tests/Makefile | 38 +++++++++++++++++++------------------- - 1 file changed, 19 insertions(+), 19 deletions(-) - -diff --git a/tests/Makefile b/tests/Makefile -index 77e6ae7..ebab278 100644 ---- a/tests/Makefile -+++ b/tests/Makefile -@@ -236,17 +236,17 @@ test-lz4-basic: lz4 datagen unlz4 lz4cat - ./datagen -g256MB | $(LZ4) -vqB4D | $(LZ4) -t - @echo "hello world" > tmp - $(LZ4) --rm -f tmp -- ls -ls tmp && false || true # must fail (--rm) -- ls -ls tmp.lz4 -- $(PRGDIR)/lz4cat tmp.lz4 # must display hello world -- ls -ls tmp.lz4 -+ test ! -f tmp # must fail (--rm) -+ test -f tmp.lz4 -+ $(PRGDIR)/lz4cat tmp.lz4 # must display hello world -+ test -f tmp.lz4 - $(PRGDIR)/unlz4 --rm tmp.lz4 -- ls -ls tmp -- ls -ls tmp.lz4 && false || true # must fail (--rm) -- ls -ls tmp.lz4.lz4 && false || true # must fail (unlz4) -- $(PRGDIR)/lz4cat tmp # pass-through mode -- ls -ls tmp -- ls -ls tmp.lz4 && false || true # must fail (lz4cat) -+ test -f tmp -+ test ! -f tmp.lz4 # must fail (--rm) -+ test ! -f tmp.lz4.lz4 # must fail (unlz4) -+ $(PRGDIR)/lz4cat tmp # pass-through mode -+ test -f tmp -+ test ! -f tmp.lz4 # must fail (lz4cat) - $(LZ4) tmp # creates tmp.lz4 - $(PRGDIR)/lz4cat < tmp.lz4 > tmp3 # checks lz4cat works with stdin (#285) - $(DIFF) -q tmp tmp3 -@@ -262,22 +262,22 @@ test-lz4-hugefile: lz4 datagen - - test-lz4-testmode: lz4 datagen - @echo "\n ---- bench mode ----" -- $(LZ4) -bi1 -+ $(LZ4) -bi1 - @echo "\n ---- test mode ----" -- ./datagen | $(LZ4) -t && false || true -- ./datagen | $(LZ4) -tf && false || true -+ ! ./datagen | $(LZ4) -t -+ ! ./datagen | $(LZ4) -tf - @echo "\n ---- pass-through mode ----" -- ./datagen | $(LZ4) -d > $(VOID) && false || true -- ./datagen | $(LZ4) -df > $(VOID) -+ ! ./datagen | $(LZ4) -d > $(VOID) -+ ./datagen | $(LZ4) -df > $(VOID) - @echo "Hello World !" > tmp1 - $(LZ4) -dcf tmp1 - @echo "from underground..." > tmp2 - $(LZ4) -dcfm tmp1 tmp2 - @echo "\n ---- test cli ----" -- $(LZ4) file-does-not-exist && false || true -- $(LZ4) -f file-does-not-exist && false || true -- $(LZ4) -fm file1-dne file2-dne && false || true -- $(LZ4) -fm file1-dne file2-dne && false || true -+ ! $(LZ4) file-does-not-exist -+ ! $(LZ4) -f file-does-not-exist -+ ! $(LZ4) -fm file1-dne file2-dne -+ ! $(LZ4) -fm file1-dne file2-dne - - test-lz4-opt-parser: lz4 datagen - @echo "\n ---- test opt-parser ----" --- -2.12.2 - -From 0dfb0b9dad2a8cb7cc347d2139bf9b84de7e1481 Mon Sep 17 00:00:00 2001 -From: "Dmitry V. Levin" <ldv@altlinux.org> -Date: Sun, 5 Mar 2017 23:20:10 +0000 -Subject: [PATCH] Fix test-lz4-basic - -When no output filename is specified and stdout is not a terminal, -lz4 doesn't attempt to guess an output filename and uses stdout for -output. - -This change fixes test-lz4-basic when run without a terminal -by specifying output filenames. ---- - tests/Makefile | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/tests/Makefile b/tests/Makefile -index ebab278..d68c700 100644 ---- a/tests/Makefile -+++ b/tests/Makefile -@@ -235,19 +235,19 @@ test-lz4-basic: lz4 datagen unlz4 lz4cat - ./datagen -g33M | $(LZ4) --no-frame-crc | $(LZ4) -t - ./datagen -g256MB | $(LZ4) -vqB4D | $(LZ4) -t - @echo "hello world" > tmp -- $(LZ4) --rm -f tmp -+ $(LZ4) --rm -f tmp tmp.lz4 - test ! -f tmp # must fail (--rm) - test -f tmp.lz4 - $(PRGDIR)/lz4cat tmp.lz4 # must display hello world - test -f tmp.lz4 -- $(PRGDIR)/unlz4 --rm tmp.lz4 -+ $(PRGDIR)/unlz4 --rm tmp.lz4 tmp - test -f tmp - test ! -f tmp.lz4 # must fail (--rm) - test ! -f tmp.lz4.lz4 # must fail (unlz4) - $(PRGDIR)/lz4cat tmp # pass-through mode - test -f tmp - test ! -f tmp.lz4 # must fail (lz4cat) -- $(LZ4) tmp # creates tmp.lz4 -+ $(LZ4) tmp tmp.lz4 # creates tmp.lz4 - $(PRGDIR)/lz4cat < tmp.lz4 > tmp3 # checks lz4cat works with stdin (#285) - $(DIFF) -q tmp tmp3 - $(PRGDIR)/lz4cat < tmp > tmp2 # checks lz4cat works with stdin (#285) --- -2.12.2 - diff --git a/gnu/packages/patches/newsbeuter-CVE-2017-12904.patch b/gnu/packages/patches/newsbeuter-CVE-2017-12904.patch new file mode 100644 index 0000000000..8e90502469 --- /dev/null +++ b/gnu/packages/patches/newsbeuter-CVE-2017-12904.patch @@ -0,0 +1,34 @@ +Fix CVE-2017-12904: + +https://github.com/akrennmair/newsbeuter/issues/591 +https://cve.mitre.org/cgi-bin/cvename.cgi?name=2017-12904 + +Patch copied from the Debian package of newsbeuter, version 2.9-5+deb9u1. + +Adapted from upstream source repository: + +https://github.com/akrennmair/newsbeuter/commit/96e9506ae9e252c548665152d1b8968297128307 + +Description: Fix a RCE vulnerability in the bookmark command + Newsbeuter didn't properly escape the title and description fields before + passing them to the bookmarking program which could lead to remote code + execution using the shells command substitution functionality (e.g. "$()", ``, + etc) + +Origin: upstream, https://github.com/akrennmair/newsbeuter/commit/96e9506ae9e252c548665152d1b8968297128307 +Last-Update: 2017-08-18 + +--- newsbeuter-2.9.orig/src/controller.cpp ++++ newsbeuter-2.9/src/controller.cpp +@@ -1274,9 +1274,10 @@ std::string controller::bookmark(const s + std::string bookmark_cmd = cfg.get_configvalue("bookmark-cmd"); + bool is_interactive = cfg.get_configvalue_as_bool("bookmark-interactive"); + if (bookmark_cmd.length() > 0) { +- std::string cmdline = utils::strprintf("%s '%s' %s %s", ++ std::string cmdline = utils::strprintf("%s '%s' '%s' '%s'", + bookmark_cmd.c_str(), utils::replace_all(url,"'", "%27").c_str(), +- stfl::quote(title).c_str(), stfl::quote(description).c_str()); ++ utils::replace_all(title,"'", "%27").c_str(), ++ utils::replace_all(description,"'", "%27").c_str()); + + LOG(LOG_DEBUG, "controller::bookmark: cmd = %s", cmdline.c_str()); diff --git a/gnu/packages/patches/python-cython-fix-tests-32bit.patch b/gnu/packages/patches/python-cython-fix-tests-32bit.patch deleted file mode 100644 index 7ccc11dd4c..0000000000 --- a/gnu/packages/patches/python-cython-fix-tests-32bit.patch +++ /dev/null @@ -1,27 +0,0 @@ -This fixes a test failure on 32-bit platforms. - -Upstream bug URL: https://github.com/cython/cython/issues/1548 - -Patch copied from upstream source repository: - -https://github.com/cython/cython/commit/d92a718a26c9354fbf35f31a17de5c069865a447 - -From d92a718a26c9354fbf35f31a17de5c069865a447 Mon Sep 17 00:00:00 2001 -From: Robert Bradshaw <robertwb@gmail.com> -Date: Tue, 24 Jan 2017 16:57:00 -0800 -Subject: [PATCH] Normalize possible L suffix. - ---- - tests/run/cpdef_enums.pyx | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/tests/run/cpdef_enums.pyx b/tests/run/cpdef_enums.pyx -index 167c762..c264ec5 100644 ---- a/tests/run/cpdef_enums.pyx -+++ b/tests/run/cpdef_enums.pyx -@@ -93,4 +93,4 @@ def verify_resolution_GH1533(): - 3 - """ - THREE = 100 -- return PyxEnum.THREE -+ return int(PyxEnum.THREE) diff --git a/gnu/packages/patches/python-pygit2-disable-network-tests.patch b/gnu/packages/patches/python-pygit2-disable-network-tests.patch index e46d244807..5578e4c375 100644 --- a/gnu/packages/patches/python-pygit2-disable-network-tests.patch +++ b/gnu/packages/patches/python-pygit2-disable-network-tests.patch @@ -1,64 +1,43 @@ Disable tests trying to look up remote servers. diff --git a/test/test_credentials.py b/test/test_credentials.py -index 92482d9..9a281e5 100644 --- a/test/test_credentials.py +++ b/test/test_credentials.py -@@ -68,39 +68,5 @@ class CredentialCreateTest(utils.NoRepoTestCase): +@@ -68,6 +68,7 @@ class CredentialCreateTest(utils.NoRepoTestCase): self.assertEqual((username, None, None, None), cred.credential_tuple) --class CredentialCallback(utils.RepoTestCase): -- def test_callback(self): -- class MyCallbacks(pygit2.RemoteCallbacks): -- @staticmethod -- def credentials(url, username, allowed): -- self.assertTrue(allowed & GIT_CREDTYPE_USERPASS_PLAINTEXT) -- raise Exception("I don't know the password") -- -- url = "https://github.com/github/github" -- remote = self.repo.create_remote("github", url) -- -- self.assertRaises(Exception, lambda: remote.fetch(callbacks=MyCallbacks())) -- -- def test_bad_cred_type(self): -- class MyCallbacks(pygit2.RemoteCallbacks): -- @staticmethod -- def credentials(url, username, allowed): -- self.assertTrue(allowed & GIT_CREDTYPE_USERPASS_PLAINTEXT) -- return Keypair("git", "foo.pub", "foo", "sekkrit") -- -- url = "https://github.com/github/github" -- remote = self.repo.create_remote("github", url) -- self.assertRaises(TypeError, lambda: remote.fetch(callbacks=MyCallbacks())) -- --class CallableCredentialTest(utils.RepoTestCase): -- -- def test_user_pass(self): -- credentials = UserPass("libgit2", "libgit2") -- callbacks = pygit2.RemoteCallbacks(credentials=credentials) -- -- url = "https://bitbucket.org/libgit2/testgitrepository.git" -- remote = self.repo.create_remote("bb", url) -- remote.fetch(callbacks=callbacks) -- - if __name__ == '__main__': - unittest.main() ++@unittest.skipIf(True, "network tests are not supported in Guix") + class CredentialCallback(utils.RepoTestCase): + def test_callback(self): + class MyCallbacks(pygit2.RemoteCallbacks): +@@ -92,6 +93,7 @@ class CredentialCallback(utils.RepoTestCase): + remote = self.repo.create_remote("github", url) + self.assertRaises(TypeError, lambda: remote.fetch(callbacks=MyCallbacks())) + ++@unittest.skipIf(True, "network tests are not supported in Guix") + class CallableCredentialTest(utils.RepoTestCase): + + def test_user_pass(self): diff --git a/test/test_repository.py b/test/test_repository.py -index cfdf01e..c0d8de4 100644 --- a/test/test_repository.py +++ b/test/test_repository.py -@@ -538,13 +538,6 @@ class CloneRepositoryTest(utils.NoRepoTestCase): +@@ -573,6 +573,7 @@ class CloneRepositoryTest(utils.NoRepoTestCase): self.assertTrue('refs/remotes/custom_remote/master' in repo.listall_references()) self.assertIsNotNone(repo.remotes["custom_remote"]) -- def test_clone_with_credentials(self): -- repo = clone_repository( -- "https://bitbucket.org/libgit2/testgitrepository.git", -- self._temp_dir, callbacks=pygit2.RemoteCallbacks(credentials=pygit2.UserPass("libgit2", "libgit2"))) -- -- self.assertFalse(repo.is_empty) -- - def test_clone_with_checkout_branch(self): - # create a test case which isolates the remote - test_repo = clone_repository('./test/data/testrepo.git', ++ @unittest.skipIf(True, "network tests are not supported in Guix") + def test_clone_with_credentials(self): + repo = clone_repository( + "https://bitbucket.org/libgit2/testgitrepository.git", +diff --git a/test/test_submodule.py b/test/test_submodule.py +--- a/test/test_submodule.py ++++ b/test/test_submodule.py +@@ -42,6 +42,7 @@ SUBM_PATH = 'submodule' + SUBM_URL = 'https://github.com/libgit2/pygit2' + SUBM_HEAD_SHA = '819cbff552e46ac4b8d10925cc422a30aa04e78e' + ++@unittest.skipIf(True, "network tests are not supported in Guix") + class SubmoduleTest(utils.SubmoduleRepoTestCase): + + def test_lookup_submodule(self): diff --git a/gnu/packages/patches/rpm-CVE-2014-8118.patch b/gnu/packages/patches/rpm-CVE-2014-8118.patch deleted file mode 100644 index 5fdb0f0eb2..0000000000 --- a/gnu/packages/patches/rpm-CVE-2014-8118.patch +++ /dev/null @@ -1,25 +0,0 @@ -Fix CVE-2014-8118 (integer overflow allowing arbitrary remote code -execution via crafted CPIO header). - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-8118 - -Source: -https://bugzilla.redhat.com/attachment.cgi?id=962159&action=diff - -Adopted by Debian: -http://anonscm.debian.org/cgit/collab-maint/rpm.git/plain/debian/patches/CVE-2014-8118.patch - -diff --git a/lib/cpio.c b/lib/cpio.c -index 253ff0f..600633a 100644 ---- a/lib/cpio.c -+++ b/lib/cpio.c -@@ -399,6 +399,9 @@ int rpmcpioHeaderRead(rpmcpio_t cpio, char ** path, int * fx) - - GET_NUM_FIELD(hdr.filesize, fsize); - GET_NUM_FIELD(hdr.namesize, nameSize); -+ if (nameSize <= 0 || nameSize > 4096) { -+ return RPMERR_BAD_HEADER; -+ } - - char name[nameSize + 1]; - read = Fread(name, nameSize, 1, cpio->fd); diff --git a/gnu/packages/patches/vinagre-revert-1.patch b/gnu/packages/patches/vinagre-revert-1.patch new file mode 100644 index 0000000000..5a983770b7 --- /dev/null +++ b/gnu/packages/patches/vinagre-revert-1.patch @@ -0,0 +1,56 @@ +Patch taken from Debian: revert changes that prevent building against freerdp +version 1.1 branch. + +From 8ebc0685b85e0d1f70eb00171f2e7712de3d44bd Mon Sep 17 00:00:00 2001 +From: Michael Biebl <biebl@debian.org> +Date: Thu, 22 Sep 2016 01:15:55 +0200 +Subject: [PATCH 1/2] Revert "Improve FreeRDP authentication failure handling" + +This reverts commit d7b4f88943e8615d252d27e1efc58cb64a9e1821. +--- + plugins/rdp/vinagre-rdp-tab.c | 10 ++++++---- + 1 file changed, 6 insertions(+), 4 deletions(-) + +diff --git a/plugins/rdp/vinagre-rdp-tab.c b/plugins/rdp/vinagre-rdp-tab.c +index b731f9b..8572bc3 100644 +--- a/plugins/rdp/vinagre-rdp-tab.c ++++ b/plugins/rdp/vinagre-rdp-tab.c +@@ -1195,8 +1195,8 @@ open_freerdp (VinagreRdpTab *rdp_tab) + VinagreTab *tab = VINAGRE_TAB (rdp_tab); + GtkWindow *window = GTK_WINDOW (vinagre_tab_get_window (tab)); + gboolean success = TRUE; ++ gboolean authentication_error = FALSE; + gboolean cancelled = FALSE; +- guint authentication_errors = 0; + + priv->events = g_queue_new (); + +@@ -1205,12 +1205,14 @@ open_freerdp (VinagreRdpTab *rdp_tab) + + do + { ++ authentication_error = FALSE; ++ + /* Run FreeRDP session */ + success = freerdp_connect (priv->freerdp_session); + if (!success) + { +- authentication_errors += freerdp_get_last_error (priv->freerdp_session->context) == 0x20009 || +- freerdp_get_last_error (priv->freerdp_session->context) == 0x2000c; ++ authentication_error = freerdp_get_last_error (priv->freerdp_session->context) == 0x20009 || ++ freerdp_get_last_error (priv->freerdp_session->context) == 0x2000c; + + cancelled = freerdp_get_last_error (priv->freerdp_session->context) == 0x2000b; + +@@ -1218,7 +1220,7 @@ open_freerdp (VinagreRdpTab *rdp_tab) + init_freerdp (rdp_tab); + } + } +- while (!success && authentication_errors < 3); ++ while (!success && authentication_error); + + if (!success) + { +-- +2.9.3 + diff --git a/gnu/packages/patches/vinagre-revert-2.patch b/gnu/packages/patches/vinagre-revert-2.patch new file mode 100644 index 0000000000..686ee203e4 --- /dev/null +++ b/gnu/packages/patches/vinagre-revert-2.patch @@ -0,0 +1,448 @@ +Patch taken from Debian: revert changes that prevent building against freerdp +version 1.1 branch. + +From bb1828b6b7eb29bb037bcc687cf10f916ddc7561 Mon Sep 17 00:00:00 2001 +From: Michael Biebl <biebl@debian.org> +Date: Thu, 22 Sep 2016 01:18:16 +0200 +Subject: [PATCH 2/2] Revert "Store credentials for RDP" + +This reverts commit 60dea279a24c7f0e398b89a0a60d45e80087ed1d. +--- + plugins/rdp/vinagre-rdp-connection.c | 22 +--- + plugins/rdp/vinagre-rdp-plugin.c | 29 +---- + plugins/rdp/vinagre-rdp-tab.c | 231 +++++++++++++++++------------------ + 3 files changed, 123 insertions(+), 159 deletions(-) + +diff --git a/plugins/rdp/vinagre-rdp-connection.c b/plugins/rdp/vinagre-rdp-connection.c +index f0ff02b..c5f6ed1 100644 +--- a/plugins/rdp/vinagre-rdp-connection.c ++++ b/plugins/rdp/vinagre-rdp-connection.c +@@ -127,25 +127,9 @@ rdp_parse_item (VinagreConnection *conn, xmlNode *root) + static void + rdp_parse_options_widget (VinagreConnection *conn, GtkWidget *widget) + { +- const gchar *text; +- GtkWidget *u_entry, *d_entry, *spin_button, *scaling_button; +- gboolean scaling; +- guint width, height; +- +- d_entry = g_object_get_data (G_OBJECT (widget), "domain_entry"); +- if (!d_entry) +- { +- g_warning ("Wrong widget passed to rdp_parse_options_widget()"); +- return; +- } +- +- text = gtk_entry_get_text (GTK_ENTRY (d_entry)); +- vinagre_cache_prefs_set_string ("rdp-connection", "domain", text); +- +- g_object_set (conn, +- "domain", text != NULL && *text != '\0' ? text : NULL, +- NULL); +- ++ GtkWidget *u_entry, *spin_button, *scaling_button; ++ gboolean scaling; ++ guint width, height; + + u_entry = g_object_get_data (G_OBJECT (widget), "username_entry"); + if (!u_entry) +diff --git a/plugins/rdp/vinagre-rdp-plugin.c b/plugins/rdp/vinagre-rdp-plugin.c +index 4751102..f41da37 100644 +--- a/plugins/rdp/vinagre-rdp-plugin.c ++++ b/plugins/rdp/vinagre-rdp-plugin.c +@@ -100,7 +100,7 @@ vinagre_rdp_plugin_init (VinagreRdpPlugin *plugin) + static GtkWidget * + impl_get_connect_widget (VinagreProtocol *plugin, VinagreConnection *conn) + { +- GtkWidget *grid, *label, *u_entry, *d_entry, *spin_button, *check; ++ GtkWidget *grid, *label, *u_entry, *spin_button, *check; + gchar *str; + gint width, height; + +@@ -146,29 +146,10 @@ impl_get_connect_widget (VinagreProtocol *plugin, VinagreConnection *conn) + g_free (str); + + +- label = gtk_label_new_with_mnemonic (_("_Domain:")); +- gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); +- gtk_grid_attach (GTK_GRID (grid), label, 0, 3, 1, 1); +- gtk_widget_set_margin_left (label, 12); +- +- d_entry = gtk_entry_new (); +- /* Translators: This is the tooltip for the domain field in a RDP connection */ +- gtk_widget_set_tooltip_text (d_entry, _("Optional.")); +- g_object_set_data (G_OBJECT (grid), "domain_entry", d_entry); +- gtk_grid_attach (GTK_GRID (grid), d_entry, 1, 3, 1, 1); +- gtk_label_set_mnemonic_widget (GTK_LABEL (label), d_entry); +- str = g_strdup (VINAGRE_IS_CONNECTION (conn) ? +- vinagre_connection_get_domain (conn) : +- vinagre_cache_prefs_get_string ("rdp-connection", "domain", "")); +- gtk_entry_set_text (GTK_ENTRY (d_entry), str); +- gtk_entry_set_activates_default (GTK_ENTRY (d_entry), TRUE); +- g_free (str); +- +- + /* Host width */ + label = gtk_label_new_with_mnemonic (_("_Width:")); + gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); +- gtk_grid_attach (GTK_GRID (grid), label, 0, 4, 1, 1); ++ gtk_grid_attach (GTK_GRID (grid), label, 0, 3, 1, 1); + gtk_widget_set_margin_left (label, 12); + + spin_button = gtk_spin_button_new_with_range (MIN_SIZE, MAX_SIZE, 1); +@@ -176,7 +157,7 @@ impl_get_connect_widget (VinagreProtocol *plugin, VinagreConnection *conn) + gtk_widget_set_tooltip_text (spin_button, _("Set width of the remote desktop")); + gtk_spin_button_set_value (GTK_SPIN_BUTTON (spin_button), DEFAULT_WIDTH); + g_object_set_data (G_OBJECT (grid), "width_spin_button", spin_button); +- gtk_grid_attach (GTK_GRID (grid), spin_button, 1, 4, 1, 1); ++ gtk_grid_attach (GTK_GRID (grid), spin_button, 1, 3, 1, 1); + gtk_label_set_mnemonic_widget (GTK_LABEL (label), spin_button); + width = VINAGRE_IS_CONNECTION (conn) ? + vinagre_connection_get_width (conn) : +@@ -188,7 +169,7 @@ impl_get_connect_widget (VinagreProtocol *plugin, VinagreConnection *conn) + /* Host height */ + label = gtk_label_new_with_mnemonic (_("_Height:")); + gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); +- gtk_grid_attach (GTK_GRID (grid), label, 0, 5, 1, 1); ++ gtk_grid_attach (GTK_GRID (grid), label, 0, 4, 1, 1); + gtk_widget_set_margin_left (label, 12); + + spin_button = gtk_spin_button_new_with_range (MIN_SIZE, MAX_SIZE, 1); +@@ -196,7 +177,7 @@ impl_get_connect_widget (VinagreProtocol *plugin, VinagreConnection *conn) + gtk_widget_set_tooltip_text (spin_button, _("Set height of the remote desktop")); + gtk_spin_button_set_value (GTK_SPIN_BUTTON (spin_button), DEFAULT_HEIGHT); + g_object_set_data (G_OBJECT (grid), "height_spin_button", spin_button); +- gtk_grid_attach (GTK_GRID (grid), spin_button, 1, 5, 1, 1); ++ gtk_grid_attach (GTK_GRID (grid), spin_button, 1, 4, 1, 1); + gtk_label_set_mnemonic_widget (GTK_LABEL (label), spin_button); + height = VINAGRE_IS_CONNECTION (conn) ? + vinagre_connection_get_height (conn) : +diff --git a/plugins/rdp/vinagre-rdp-tab.c b/plugins/rdp/vinagre-rdp-tab.c +index 8572bc3..f3d9c08 100644 +--- a/plugins/rdp/vinagre-rdp-tab.c ++++ b/plugins/rdp/vinagre-rdp-tab.c +@@ -70,8 +70,6 @@ struct _VinagreRdpTabPrivate + gboolean scaling; + double scale; + double offset_x, offset_y; +- +- guint authentication_attempts; + }; + + G_DEFINE_TYPE (VinagreRdpTab, vinagre_rdp_tab, VINAGRE_TYPE_TAB) +@@ -611,7 +609,6 @@ frdp_post_connect (freerdp *instance) + 0, 0, + gdi->width, gdi->height); + +- vinagre_tab_save_credentials_in_keyring (VINAGRE_TAB (rdp_tab)); + vinagre_tab_add_recent_used (VINAGRE_TAB (rdp_tab)); + vinagre_tab_set_state (VINAGRE_TAB (rdp_tab), VINAGRE_TAB_STATE_CONNECTED); + +@@ -862,76 +859,114 @@ frdp_mouse_moved (GtkWidget *widget, + return TRUE; + } + ++static void ++entry_text_changed_cb (GtkEntry *entry, ++ GtkBuilder *builder) ++{ ++ const gchar *text; ++ GtkWidget *widget; ++ gsize username_length; ++ gsize password_length; ++ ++ widget = GTK_WIDGET (gtk_builder_get_object (builder, "username_entry")); ++ text = gtk_entry_get_text (GTK_ENTRY (widget)); ++ username_length = strlen (text); ++ ++ widget = GTK_WIDGET (gtk_builder_get_object (builder, "password_entry")); ++ text = gtk_entry_get_text (GTK_ENTRY (widget)); ++ password_length = strlen (text); ++ ++ widget = GTK_WIDGET (gtk_builder_get_object (builder, "ok_button")); ++ gtk_widget_set_sensitive (widget, password_length > 0 && username_length > 0); ++} ++ + static gboolean + frdp_authenticate (freerdp *instance, + char **username, + char **password, + char **domain) + { +- VinagreTab *tab = VINAGRE_TAB (((frdpContext *) instance->context)->rdp_tab); +- VinagreRdpTab *rdp_tab = VINAGRE_RDP_TAB (tab); +- VinagreRdpTabPrivate *priv = rdp_tab->priv; +- VinagreConnection *conn = vinagre_tab_get_conn (tab); +- GtkWindow *window = GTK_WINDOW (vinagre_tab_get_window (tab)); +- gboolean save_in_keyring = FALSE; +- gchar *keyring_domain = NULL; +- gchar *keyring_username = NULL; +- gchar *keyring_password = NULL; ++ VinagreTab *tab = VINAGRE_TAB (((frdpContext *) instance->context)->rdp_tab); ++ VinagreConnection *conn = vinagre_tab_get_conn (tab); ++ const gchar *user_name; ++ const gchar *domain_name; ++ GtkBuilder *builder; ++ GtkWidget *dialog; ++ GtkWidget *widget; ++ GtkWidget *username_entry; ++ GtkWidget *password_entry; ++ GtkWidget *domain_entry; ++ gboolean save_credential_check_visible; ++ gboolean domain_label_visible; ++ gboolean domain_entry_visible; ++ gint response; + +- priv->authentication_attempts++; ++ builder = vinagre_utils_get_builder (); + +- if (priv->authentication_attempts == 1) +- { +- vinagre_tab_find_credentials_in_keyring (tab, &keyring_domain, &keyring_username, &keyring_password); +- if (keyring_password != NULL && keyring_username != NULL) +- { +- *domain = keyring_domain; +- *username = keyring_username; +- *password = keyring_password; ++ dialog = GTK_WIDGET (gtk_builder_get_object (builder, "auth_required_dialog")); ++ gtk_window_set_modal ((GtkWindow *) dialog, TRUE); ++ gtk_window_set_transient_for ((GtkWindow *) dialog, GTK_WINDOW (vinagre_tab_get_window (tab))); + +- return TRUE; +- } +- else +- { +- g_free (keyring_domain); +- g_free (keyring_username); +- g_free (keyring_password); +- } ++ widget = GTK_WIDGET (gtk_builder_get_object (builder, "host_label")); ++ gtk_label_set_text (GTK_LABEL (widget), vinagre_connection_get_host (conn)); ++ ++ username_entry = GTK_WIDGET (gtk_builder_get_object (builder, "username_entry")); ++ password_entry = GTK_WIDGET (gtk_builder_get_object (builder, "password_entry")); ++ domain_entry = GTK_WIDGET (gtk_builder_get_object (builder, "domain_entry")); ++ ++ if (*username != NULL && *username[0] != '\0') ++ { ++ gtk_entry_set_text (GTK_ENTRY (username_entry), *username); ++ gtk_widget_grab_focus (password_entry); + } + +- if (vinagre_utils_request_credential (window, +- "RDP", +- vinagre_connection_get_host (conn), +- vinagre_connection_get_domain (conn), +- vinagre_connection_get_username (conn), +- TRUE, +- TRUE, +- TRUE, +- 20, +- domain, +- username, +- password, +- &save_in_keyring)) ++ g_signal_connect (username_entry, "changed", G_CALLBACK (entry_text_changed_cb), builder); ++ g_signal_connect (password_entry, "changed", G_CALLBACK (entry_text_changed_cb), builder); ++ ++ ++ widget = GTK_WIDGET (gtk_builder_get_object (builder, "save_credential_check")); ++ save_credential_check_visible = gtk_widget_get_visible (widget); ++ gtk_widget_set_visible (widget, FALSE); ++ ++ widget = GTK_WIDGET (gtk_builder_get_object (builder, "domain_label")); ++ domain_label_visible = gtk_widget_get_visible (widget); ++ gtk_widget_set_visible (widget, TRUE); ++ ++ domain_entry_visible = gtk_widget_get_visible (domain_entry); ++ gtk_widget_set_visible (domain_entry, TRUE); ++ ++ ++ response = gtk_dialog_run (GTK_DIALOG (dialog)); ++ gtk_widget_hide (dialog); ++ ++ ++ widget = GTK_WIDGET (gtk_builder_get_object (builder, "save_credential_check")); ++ gtk_widget_set_visible (widget, save_credential_check_visible); ++ ++ widget = GTK_WIDGET (gtk_builder_get_object (builder, "domain_label")); ++ gtk_widget_set_visible (widget, domain_label_visible); ++ ++ gtk_widget_set_visible (domain_entry, domain_entry_visible); ++ ++ ++ if (response == GTK_RESPONSE_OK) + { +- if (*domain && **domain != '\0') +- vinagre_connection_set_domain (conn, *domain); ++ domain_name = gtk_entry_get_text (GTK_ENTRY (domain_entry)); ++ if (g_strcmp0 (*domain, domain_name) != 0) ++ *domain = g_strdup (domain_name); + +- if (*username && **username != '\0') +- vinagre_connection_set_username (conn, *username); ++ user_name = gtk_entry_get_text (GTK_ENTRY (username_entry)); ++ if (g_strcmp0 (*username, user_name) != 0) ++ *username = g_strdup (user_name); + +- if (*password && **password != '\0') +- vinagre_connection_set_password (conn, *password); ++ *password = g_strdup (gtk_entry_get_text (GTK_ENTRY (password_entry))); + +- vinagre_tab_set_save_credentials (tab, save_in_keyring); ++ return TRUE; + } + else + { +- vinagre_tab_remove_from_notebook (tab); +- + return FALSE; + } +- +- return TRUE; + } + + static BOOL +@@ -1028,25 +1063,30 @@ frdp_changed_certificate_verify (freerdp *instance, + #endif + + static void +-init_freerdp (VinagreRdpTab *rdp_tab) ++open_freerdp (VinagreRdpTab *rdp_tab) + { + VinagreRdpTabPrivate *priv = rdp_tab->priv; +- rdpSettings *settings; + VinagreTab *tab = VINAGRE_TAB (rdp_tab); + VinagreConnection *conn = vinagre_tab_get_conn (tab); +- gboolean scaling; +- gchar *hostname; +- gint width, height; +- gint port; ++ rdpSettings *settings; ++ GtkWindow *window = GTK_WINDOW (vinagre_tab_get_window (tab)); ++ gboolean success = TRUE; ++ gboolean fullscreen, scaling; ++ gchar *hostname, *username; ++ gint port, width, height; + + g_object_get (conn, + "port", &port, + "host", &hostname, + "width", &width, + "height", &height, ++ "fullscreen", &fullscreen, + "scaling", &scaling, ++ "username", &username, + NULL); + ++ priv->events = g_queue_new (); ++ + /* Setup FreeRDP session */ + priv->freerdp_session = freerdp_new (); + priv->freerdp_session->PreConnect = frdp_pre_connect; +@@ -1111,6 +1151,17 @@ init_freerdp (VinagreRdpTab *rdp_tab) + settings->port = port; + #endif + ++ /* Set username */ ++ username = g_strstrip (username); ++ if (username != NULL && username[0] != '\0') ++ { ++#if HAVE_FREERDP_1_1 ++ settings->Username = g_strdup (username); ++#else ++ settings->username = g_strdup (username); ++#endif ++ } ++ + /* Set keyboard layout */ + #if HAVE_FREERDP_1_1 + freerdp_keyboard_init (KBD_US); +@@ -1120,24 +1171,6 @@ init_freerdp (VinagreRdpTab *rdp_tab) + + /* Allow font smoothing by default */ + settings->AllowFontSmoothing = TRUE; +-} +- +-static void +-init_display (VinagreRdpTab *rdp_tab) +-{ +- VinagreRdpTabPrivate *priv = rdp_tab->priv; +- VinagreTab *tab = VINAGRE_TAB (rdp_tab); +- VinagreConnection *conn = vinagre_tab_get_conn (tab); +- GtkWindow *window = GTK_WINDOW (vinagre_tab_get_window (tab)); +- gboolean fullscreen, scaling; +- gint width, height; +- +- g_object_get (conn, +- "width", &width, +- "height", &height, +- "fullscreen", &fullscreen, +- "scaling", &scaling, +- NULL); + + /* Setup display for FreeRDP session */ + priv->display = gtk_drawing_area_new (); +@@ -1186,54 +1219,20 @@ init_display (VinagreRdpTab *rdp_tab) + priv->key_release_handler_id = g_signal_connect (GTK_WIDGET (tab), "key-release-event", + G_CALLBACK (frdp_key_pressed), + rdp_tab); +-} +- +-static void +-open_freerdp (VinagreRdpTab *rdp_tab) +-{ +- VinagreRdpTabPrivate *priv = rdp_tab->priv; +- VinagreTab *tab = VINAGRE_TAB (rdp_tab); +- GtkWindow *window = GTK_WINDOW (vinagre_tab_get_window (tab)); +- gboolean success = TRUE; +- gboolean authentication_error = FALSE; +- gboolean cancelled = FALSE; +- +- priv->events = g_queue_new (); +- +- init_freerdp (rdp_tab); +- init_display (rdp_tab); +- +- do +- { +- authentication_error = FALSE; + +- /* Run FreeRDP session */ +- success = freerdp_connect (priv->freerdp_session); +- if (!success) +- { +- authentication_error = freerdp_get_last_error (priv->freerdp_session->context) == 0x20009 || +- freerdp_get_last_error (priv->freerdp_session->context) == 0x2000c; +- +- cancelled = freerdp_get_last_error (priv->freerdp_session->context) == 0x2000b; +- +- freerdp_free (priv->freerdp_session); +- init_freerdp (rdp_tab); +- } +- } +- while (!success && authentication_error); ++ /* Run FreeRDP session */ ++ success = freerdp_connect (priv->freerdp_session); + + if (!success) + { + gtk_window_unfullscreen (window); +- if (!cancelled) +- vinagre_utils_show_error_dialog (_("Error connecting to host."), +- NULL, +- window); ++ vinagre_utils_show_error_dialog (_("Error connecting to host."), ++ NULL, ++ window); + g_idle_add ((GSourceFunc) idle_close, rdp_tab); + } + else + { +- priv->authentication_attempts = 0; + priv->update_id = g_idle_add ((GSourceFunc) update, rdp_tab); + } + } +-- +2.9.3 + diff --git a/gnu/packages/patches/xf86-video-siliconmotion-fix-ftbfs.patch b/gnu/packages/patches/xf86-video-siliconmotion-fix-ftbfs.patch new file mode 100644 index 0000000000..8aeec455d7 --- /dev/null +++ b/gnu/packages/patches/xf86-video-siliconmotion-fix-ftbfs.patch @@ -0,0 +1,171 @@ +From eee8fd4c489a693344da0bba14cfa54c54610b89 Mon Sep 17 00:00:00 2001 +From: Maarten Lankhorst <maarten.lankhorst@ubuntu.com> +Date: Thu, 9 Mar 2017 13:31:34 +0200 +Subject: [PATCH] Fix build against xorg server 1.17 on certain architectures + +Fixes at least arm64, likely also hppa, m68k, sh4. + +Signed-off-by: Maarten Lankhorst <maarten.lankhorst@ubuntu.com> +--- + src/regsmi.h | 18 ++++++++++++++++++ + src/smi.h | 2 ++ + src/smi_driver.c | 19 +++++++++---------- + src/smilynx_crtc.c | 6 +++--- + src/smilynx_hw.c | 5 ++--- + 5 files changed, 34 insertions(+), 16 deletions(-) + +diff --git a/src/regsmi.h b/src/regsmi.h +index 5dd0320..69205ba 100644 +--- a/src/regsmi.h ++++ b/src/regsmi.h +@@ -64,8 +64,13 @@ VGAIN8_INDEX(SMIPtr pSmi, int indexPort, int dataPort, CARD8 index) + MMIO_OUT8(pSmi->IOBase, indexPort, index); + return(MMIO_IN8(pSmi->IOBase, dataPort)); + } else { ++#ifdef XSERVER_LIBPCIACCESS ++ pci_io_write8(pSmi->io, indexPort, index); ++ return pci_io_read8(pSmi->io, dataPort); ++#else + outb(pSmi->PIOBase + indexPort, index); + return(inb(pSmi->PIOBase + dataPort)); ++#endif + } + } + +@@ -76,8 +81,13 @@ VGAOUT8_INDEX(SMIPtr pSmi, int indexPort, int dataPort, CARD8 index, CARD8 data) + MMIO_OUT8(pSmi->IOBase, indexPort, index); + MMIO_OUT8(pSmi->IOBase, dataPort, data); + } else { ++#ifdef XSERVER_LIBPCIACCESS ++ pci_io_write8(pSmi->io, indexPort, index); ++ pci_io_write8(pSmi->io, dataPort, data); ++#else + outb(pSmi->PIOBase + indexPort, index); + outb(pSmi->PIOBase + dataPort, data); ++#endif + } + } + +@@ -87,7 +97,11 @@ VGAIN8(SMIPtr pSmi, int port) + if (pSmi->IOBase) { + return(MMIO_IN8(pSmi->IOBase, port)); + } else { ++#ifdef XSERVER_LIBPCIACCESS ++ return pci_io_read8(pSmi->io, port); ++#else + return(inb(pSmi->PIOBase + port)); ++#endif + } + } + +@@ -97,7 +111,11 @@ VGAOUT8(SMIPtr pSmi, int port, CARD8 data) + if (pSmi->IOBase) { + MMIO_OUT8(pSmi->IOBase, port, data); + } else { ++#ifdef XSERVER_LIBPCIACCESS ++ pci_io_write8(pSmi->io, port, data); ++#else + outb(pSmi->PIOBase + port, data); ++#endif + } + } + +diff --git a/src/smi.h b/src/smi.h +index 2742c8d..1f20a2d 100644 +--- a/src/smi.h ++++ b/src/smi.h +@@ -171,6 +171,8 @@ typedef struct + pciVideoPtr PciInfo; /* PCI info vars */ + #ifndef XSERVER_LIBPCIACCESS + PCITAG PciTag; ++#else ++ struct pci_io_handle *io; + #endif + int Chipset; /* Chip info, set using PCI + above */ +diff --git a/src/smi_driver.c b/src/smi_driver.c +index 8949cae..6bdf64d 100644 +--- a/src/smi_driver.c ++++ b/src/smi_driver.c +@@ -446,6 +446,9 @@ SMI_PreInit(ScrnInfoPtr pScrn, int flags) + pSmi->PIOBase = hwp->PIOOffset; + #else + pSmi->PIOBase = 0; ++#ifdef XSERVER_LIBPCIACCESS ++ pSmi->io = hwp->io; ++#endif + #endif + + xf86ErrorFVerb(VERBLEV, "\tSMI_PreInit vgaCRIndex=%x, vgaIOBase=%x, " +@@ -2022,16 +2025,14 @@ SMI_EnableMmio(ScrnInfoPtr pScrn) + vgaHWSetStdFuncs(hwp); + + /* Enable linear mode */ +- outb(pSmi->PIOBase + VGA_SEQ_INDEX, 0x18); +- tmp = inb(pSmi->PIOBase + VGA_SEQ_DATA); ++ tmp = VGAIN8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x18); + pSmi->SR18Value = tmp; /* PDR#521 */ +- outb(pSmi->PIOBase + VGA_SEQ_DATA, tmp | 0x11); ++ VGAOUT8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x18, tmp | 0x11); + + /* Enable 2D/3D Engine and Video Processor */ +- outb(pSmi->PIOBase + VGA_SEQ_INDEX, 0x21); +- tmp = inb(pSmi->PIOBase + VGA_SEQ_DATA); ++ tmp = VGAIN8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x21); + pSmi->SR21Value = tmp; /* PDR#521 */ +- outb(pSmi->PIOBase + VGA_SEQ_DATA, tmp & ~0x03); ++ VGAOUT8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x21, tmp & ~0x03); + } + + LEAVE(); +@@ -2050,12 +2051,10 @@ SMI_DisableMmio(ScrnInfoPtr pScrn) + vgaHWSetStdFuncs(hwp); + + /* Disable 2D/3D Engine and Video Processor */ +- outb(pSmi->PIOBase + VGA_SEQ_INDEX, 0x21); +- outb(pSmi->PIOBase + VGA_SEQ_DATA, pSmi->SR21Value); /* PDR#521 */ ++ VGAOUT8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x21, pSmi->SR21Value); /* PDR#521 */ + + /* Disable linear mode */ +- outb(pSmi->PIOBase + VGA_SEQ_INDEX, 0x18); +- outb(pSmi->PIOBase + VGA_SEQ_DATA, pSmi->SR18Value); /* PDR#521 */ ++ VGAOUT8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x18, pSmi->SR18Value); /* PDR#521 */ + } + + LEAVE(); +diff --git a/src/smilynx_crtc.c b/src/smilynx_crtc.c +index fb7183c..f4d8b4e 100644 +--- a/src/smilynx_crtc.c ++++ b/src/smilynx_crtc.c +@@ -619,9 +619,9 @@ SMILynx_CrtcModeSet_bios(xf86CrtcPtr crtc, + xf86ExecX86int10(pSmi->pInt10); + + /* Enable linear mode. */ +- outb(pSmi->PIOBase + VGA_SEQ_INDEX, 0x18); +- tmp = inb(pSmi->PIOBase + VGA_SEQ_DATA); +- outb(pSmi->PIOBase + VGA_SEQ_DATA, tmp | 0x01); ++ VGAOUT8(pSmi, VGA_SEQ_INDEX, 0x18); ++ tmp = VGAIN8(pSmi, VGA_SEQ_DATA); ++ VGAOUT8(pSmi, VGA_SEQ_DATA, tmp | 0x01); + + /* Enable DPR/VPR registers. */ + tmp = VGAIN8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x21); +diff --git a/src/smilynx_hw.c b/src/smilynx_hw.c +index b2ee8a5..40aa5a4 100644 +--- a/src/smilynx_hw.c ++++ b/src/smilynx_hw.c +@@ -365,9 +365,8 @@ SMILynx_WriteMode(ScrnInfoPtr pScrn, vgaRegPtr vgaSavePtr, SMIRegPtr restore) + xf86ExecX86int10(pSmi->pInt10); + + /* Enable linear mode. */ +- outb(pSmi->PIOBase + VGA_SEQ_INDEX, 0x18); +- tmp = inb(pSmi->PIOBase + VGA_SEQ_DATA); +- outb(pSmi->PIOBase + VGA_SEQ_DATA, tmp | 0x01); ++ tmp = VGAIN8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x18); ++ VGAOUT8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x18, tmp | 0x01); + + /* Enable DPR/VPR registers. */ + tmp = VGAIN8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0x21); +-- +2.7.4 + diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 5557b6042b..102b69cae6 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -3611,15 +3611,14 @@ is designed to have a low barrier to entry.") (define-public python-cython (package (name "python-cython") - (version "0.25.2") + (version "0.26") (source (origin (method url-fetch) (uri (pypi-uri "Cython" version)) - (patches (search-patches "python-cython-fix-tests-32bit.patch")) (sha256 (base32 - "01h3lrf6d98j07iakifi81qjszh6faa37ibx7ylva1vsqbwx2hgi")))) + "0riciynnr0r68cvg6r3gbhi9x7h44pdwb7926m6n5vfs5p1f492c")))) (build-system python-build-system) ;; we need the full python package and not just the python-wrapper ;; because we need libpython3.3m.so @@ -3630,7 +3629,7 @@ is designed to have a low barrier to entry.") (modify-phases %standard-phases (add-before 'check 'set-HOME ;; some tests require access to "$HOME/.cython" - (lambda _ (setenv "HOME" "/tmp"))) + (lambda _ (setenv "HOME" "/tmp") #t)) (replace 'check (lambda _ (zero? (system* "python" "runtests.py" "-vv"))))))) (home-page "http://cython.org/") @@ -3915,14 +3914,14 @@ association studies (GWAS) on extremely large data sets.") (define-public python-pygit2 (package (name "python-pygit2") - (version "0.25.0") + (version "0.26.0") (source (origin (method url-fetch) (uri (pypi-uri "pygit2" version)) (sha256 (base32 - "0wf5rp0fvrw7j3j18dvwjq6xqlbm611wd55aphrfpps0v1gxh3ny")) + "1cbc488ra3kg7r3qky17ms0szi3cda2d96qfkv1l9djsy9hnvw57")) (patches (search-patches "python-pygit2-disable-network-tests.patch")))) (build-system python-build-system) @@ -7296,7 +7295,7 @@ reading and writing MessagePack data.") (define-public python-netaddr (package (name "python-netaddr") - (version "0.7.18") + (version "0.7.19") (source (origin (method url-fetch) @@ -7306,7 +7305,7 @@ reading and writing MessagePack data.") ".tar.gz")) (sha256 (base32 - "06dxjlbcicq7q3vqy8agq11ra01kvvd47j4mk6dmghjsyzyckxd1")))) + "1zdfadvpq4lmcqzr383gywxn4xyn355kj1n3lk9q2l03vmyfrbiq")))) (build-system python-build-system) (arguments `(#:tests? #f)) ;; No tests. (home-page "https://github.com/drkjam/netaddr/") @@ -7691,14 +7690,14 @@ responses, rather than doing any computation.") (define-public python-cryptography-vectors (package (name "python-cryptography-vectors") - (version "2.0.2") + (version "2.0.3") (source (origin (method url-fetch) (uri (pypi-uri "cryptography_vectors" version)) (sha256 (base32 - "0yvi2cp23rg20bq3hd47ixbvjh0zgxnxrriqx5v17d7vkmliwbsi")))) + "1qa117fs1yd50zn2cfxh7d9l999ds0z4h83m9m7j4fk6ffm33f5y")))) (build-system python-build-system) (home-page "https://github.com/pyca/cryptography") (synopsis "Test vectors for the cryptography package") @@ -7713,14 +7712,14 @@ responses, rather than doing any computation.") (define-public python-cryptography (package (name "python-cryptography") - (version "2.0.2") + (version "2.0.3") (source (origin (method url-fetch) (uri (pypi-uri "cryptography" version)) (sha256 (base32 - "1aq6ilnf2zdqshwqai4w8gmb5y6p7ip34qrjp1yb7sz77rkb501p")))) + "0fnck37zyvbzmccbp7w3jy27jgmij1992j5wyy3gxhw6a11b4jyh")))) (build-system python-build-system) (inputs `(("openssl" ,openssl))) diff --git a/gnu/packages/rdesktop.scm b/gnu/packages/rdesktop.scm index 7946cde790..65d17de637 100644 --- a/gnu/packages/rdesktop.scm +++ b/gnu/packages/rdesktop.scm @@ -26,7 +26,9 @@ #:use-module (guix build-system gnu) #:use-module (gnu packages compression) #:use-module (gnu packages cups) + #:use-module (gnu packages docbook) #:use-module (gnu packages gstreamer) + #:use-module (gnu packages image) #:use-module (gnu packages linux) #:use-module (gnu packages pkg-config) #:use-module (gnu packages pulseaudio) @@ -70,51 +72,65 @@ to remotely control a user's Windows desktop.") (license license:gpl3+))) (define-public freerdp - (package - (name "freerdp") - (version "2.0.0-rc0") - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/FreeRDP/FreeRDP/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 "0r36zwhl7fhmdng5pvl2a106gqbcqq184g2i2klz6ilna8pxjcml")))) - (build-system cmake-build-system) - (native-inputs - `(("pkg-config" ,pkg-config) - ("xmlto" ,xmlto))) - (inputs - `(("libx11" ,libx11) - ("libxkbfile" ,libxkbfile) - ("libxcursor" ,libxcursor) - ("libxext" ,libxext) - ("libxi" ,libxi) - ("libxv" ,libxv) - ("libxrandr" ,libxrandr) - ("libxrender" ,libxrender) - ("libxinerama" ,libxinerama) - ("libxshmfence" ,libxshmfence) - ("libxml2" ,libxml2) - ("libxslt" ,libxslt) - ("cups" ,cups) - ("ffmpeg" ,ffmpeg) - ("pulseaudio" ,pulseaudio) - ("alsa-lib" ,alsa-lib) - ("gstreamer" ,gstreamer) - ("gst-plugins-base" ,gst-plugins-base) - ("zlib" ,zlib) - ("openssl" ,openssl))) - (arguments - `(#:configure-flags - '("-DCMAKE_INSTALL_LIBDIR=lib" - "-DWITH_PULSE=ON" - "-DWITH_CUPS=ON") - #:tests? #f)) ; no 'test' target - (home-page "https://www.freerdp.com") - (synopsis "Remote Desktop Protocol implementation") - (description "FreeRDP implements Microsoft's Remote Desktop Protocol. It -consists of the @code{xfreerdp} client, libraries for client and server + (let ((commit "03ab68318966c3a22935a02838daaea7b7fbe96c")) + (package + (name "freerdp") + (version (git-version "1.1" "1" commit)) + (source (origin + (method git-fetch) + (uri (git-reference + ;; We need the 1.1 branch for RDP support in vinagre. + (url "git://github.com/FreeRDP/FreeRDP.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "07ish8rmvbk2zd99k91qybmmh5h4afly75l5kbvslhq1r6k8pbmp")))) + (build-system cmake-build-system) + (native-inputs + `(("pkg-config" ,pkg-config) + ("libxslt" ,libxslt) + ("libxml2" ,libxml2) + ("docbook-xsl" ,docbook-xsl) + ("xmlto" ,xmlto))) + (inputs + `(("libx11" ,libx11) + ("libxkbfile" ,libxkbfile) + ("libxcursor" ,libxcursor) + ("libxext" ,libxext) + ("libxi" ,libxi) + ("libxv" ,libxv) + ("libxrandr" ,libxrandr) + ("libxrender" ,libxrender) + ("libxinerama" ,libxinerama) + ("libxshmfence" ,libxshmfence) + ("cups" ,cups) + ("ffmpeg" ,ffmpeg-2.8) + ("libjpeg" ,libjpeg) + ("pulseaudio" ,pulseaudio) + ("alsa-lib" ,alsa-lib) + ("zlib" ,zlib) + ("openssl" ,openssl))) + (arguments + `(#:configure-flags + (list "-DCMAKE_INSTALL_LIBDIR=lib" + "-DCMAKE_BUILD_TYPE=RELEASE" + "-DWITH_JPEG=ON" + ,@(if (string-prefix? "x86_64" + (or (%current-target-system) + (%current-system))) + '("-DWITH_SSE2=ON") + '()) + (string-append "-DDOCBOOKXSL_DIR=" + (assoc-ref %build-inputs "docbook-xsl") + "/xml/xsl/docbook-xsl-" + ,(package-version docbook-xsl)) + "-DWITH_PULSE=ON" + "-DWITH_CUPS=ON") + #:tests? #f)) ; no 'test' target + (home-page "https://www.freerdp.com") + (synopsis "Remote Desktop Protocol implementation") + (description "FreeRDP implements Microsoft's Remote Desktop Protocol. +It consists of the @code{xfreerdp} client, libraries for client and server functionality, and Windows Portable Runtime (WinPR), a portable implementation of parts of the Windows API.") - (license license:asl2.0))) + (license license:asl2.0)))) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 25b2dd33f7..243ff9e5db 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -464,13 +464,13 @@ expectations and mocks frameworks.") (define-public bundler (package (name "bundler") - (version "1.15.3") + (version "1.15.4") (source (origin (method url-fetch) (uri (rubygems-uri "bundler" version)) (sha256 (base32 - "125amldnpzzrfw76mmr7mlx002k1k6xdyrqf5bdnzl5hajvn0s5f")))) + "0wl4r7wbwdq68xidfv4hhzfb1spb6lmhbspwlzrg4pf1l6ipxlgs")))) (build-system ruby-build-system) (arguments '(#:tests? #f)) ; avoid dependency cycles diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 37307c807b..f1b408982c 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -148,7 +148,7 @@ highlighting.") (source (origin (method url-fetch) - (uri (string-append "https://dist.pragmatique.xyz/fish-guix/" + (uri (string-append "https://dist.infotropique.org/fish-guix/" name "-" version ".tar.xz")) (sha256 (base32 diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index bdee8e59c7..685042240a 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -65,7 +65,7 @@ (define-public pspp (package (name "pspp") - (version "0.10.2") + (version "1.0.0") (source (origin (method url-fetch) @@ -73,7 +73,7 @@ version ".tar.gz")) (sha256 (base32 - "1afsq0a3iij64qacczvwhk81qg0q5rfqm055y5h9ls28d6paqz7p")))) + "10yb8nknh33c1y2ji3gww5dcnx9n3nqgsj6yfb4wibdjypa1m68v")))) (build-system gnu-build-system) (inputs `(("cairo" ,cairo) @@ -126,6 +126,12 @@ be output in text, PostScript, PDF or HTML.") "PKG_BUILT_STAMP=1970-01-01") #:phases (modify-phases %standard-phases + ;; FIXME: see bug #28157. + (add-before 'configure 'patch-which + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "src/library/base/R/unix/system.unix.R" + (("@WHICH@") "which")) + #t)) (add-before 'configure 'patch-uname (lambda* (#:key inputs #:allow-other-keys) (let ((uname-bin (string-append (assoc-ref inputs "coreutils") @@ -227,7 +233,6 @@ be output in text, PostScript, PDF or HTML.") ("perl" ,perl) ("pkg-config" ,pkg-config) ("texinfo" ,texinfo) ; for building HTML manuals - ("which" ,which) ; for tests/Examples/base-Ex.R ("tzdata" ,tzdata-2017a) ("xz" ,xz))) (inputs @@ -246,6 +251,9 @@ be output in text, PostScript, PDF or HTML.") ("pcre" ,pcre) ("readline" ,readline) ("zlib" ,zlib))) + ;; FIXME: By default Sys.which embeds a reference to "which", but this + ;; reference is not detected by Guix (see bug #28157). + (propagated-inputs `(("which" ,which))) (native-search-paths (list (search-path-specification (variable "R_LIBS_SITE") @@ -4724,7 +4732,8 @@ multivariate analysis.") "The trimmed k-means clustering method by Cuesta-Albertos, Gordaliza and Matran (1997). This optimizes the k-means criterion under trimming a portion of the points.") - (license license:gpl2+))) + ;; Any GPL version + (license (list license:gpl2+ license:gpl3+)))) (define-public r-fpc (package diff --git a/gnu/packages/syndication.scm b/gnu/packages/syndication.scm index f434006656..80c45c396c 100644 --- a/gnu/packages/syndication.scm +++ b/gnu/packages/syndication.scm @@ -18,6 +18,7 @@ #:use-module (guix download) #:use-module (guix packages) #:use-module (guix build-system gnu) + #:use-module (gnu packages) #:use-module (gnu packages curl) #:use-module (gnu packages databases) #:use-module (gnu packages gettext) @@ -37,6 +38,7 @@ (method url-fetch) (uri (string-append "https://newsbeuter.org/downloads/newsbeuter-" version ".tar.gz")) + (patches (search-patches "newsbeuter-CVE-2017-12904.patch")) (sha256 (base32 "1j1x0hgwxz11dckk81ncalgylj5y5fgw5bcmp9qb5hq9kc0vza3l")))) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 9d3e9d9e97..111a1c3734 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -112,7 +112,7 @@ in intelligent transportation networks.") (define-public p11-kit (package (name "p11-kit") - (version "0.23.7") + (version "0.23.8") (source (origin (method url-fetch) @@ -120,7 +120,7 @@ in intelligent transportation networks.") "download/" version "/p11-kit-" version ".tar.gz")) (sha256 (base32 - "0hdy4h8byvcvd4av504xqfqyd1h6xy914j034mq3c6v4ya37r3lq")))) + "0gqk1d09yyin75lvlywpbf3kxlnrcwbq8ridgapvqqjbzvjk98ab")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -667,7 +667,7 @@ OpenSSL libraries).") (define-public perl-crypt-openssl-bignum (package (name "perl-crypt-openssl-bignum") - (version "0.06") + (version "0.08") (source (origin (method url-fetch) @@ -677,7 +677,7 @@ OpenSSL libraries).") ".tar.gz")) (sha256 (base32 - "05yzrdglrrzp191krf77zrwfkmzrfwrsrx1vyskbj94522lszk67")))) + "0gamn4dff1bz77nswacy1dlpn9fkwahzw7yvvik4nbwwy2s63hc8")))) (build-system perl-build-system) (inputs `(("openssl" ,openssl))) (arguments perl-crypt-arguments) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 7c1f02d5ad..36a6b7cd18 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -9,7 +9,7 @@ ;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2015 Kyle Meyer <kyle@kyleam.com> ;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net> -;;; Copyright © 2016 Leo Famulari <leo@famulari.name> +;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net> ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com> @@ -121,6 +121,8 @@ as well as the classic centralized workflow.") (define-public git (package (name "git") + ;; XXX When updating Git, check if the special 'git:src' input to cgit needs + ;; to be updated as well. (version "2.14.1") (source (origin (method url-fetch) @@ -349,23 +351,6 @@ everything from small to very large projects with speed and efficiency.") (license license:gpl2) (home-page "https://git-scm.com/"))) -;; Some dependent packages directly access internal interfaces which -;; have changed in 2.12. TODO: Remove this for cgit > 1.1. -(define-public git@2.10 - (package - (inherit git) - (version "2.10.4") - (source (origin - (method url-fetch) - (uri (string-append "mirror://kernel.org/software/scm/git/git-" - version ".tar.xz")) - (sha256 - (base32 - "1pni4mgih5w42813dxljl61s7xmcpdnar34d9m4548hzpljjyd4l")))) - (arguments - `(#:tests? #f - ,@(package-arguments git))))) - (define-public libgit2 (package (name "libgit2") @@ -502,6 +487,8 @@ collaboration using typical untrusted file hosts or services.") (define-public cgit (package (name "cgit") + ;; XXX When updating cgit, try removing the special 'git:src' input and + ;; using the source of the git package. (version "1.1") (source (origin (method url-fetch) @@ -546,7 +533,16 @@ collaboration using typical untrusted file hosts or services.") ;; For building manpage. `(("asciidoc" ,asciidoc))) (inputs - `(("git:src" ,(package-source git@2.10)) + `(;; Cgit directly accesses some internal Git interfaces that changed in + ;; Git 2.12. Try removing this special input and using the source of the + ;; Git package for cgit > 1.1. + ("git:src" + ,(origin + (method url-fetch) + (uri "mirror://kernel.org/software/scm/git/git-2.10.4.tar.xz") + (sha256 + (base32 + "1pni4mgih5w42813dxljl61s7xmcpdnar34d9m4548hzpljjyd4l")))) ("openssl" ,openssl) ("zlib" ,zlib))) (home-page "https://git.zx2c4.com/cgit/") @@ -1341,16 +1337,21 @@ repository\" with git-annex.") (define-public fossil (package (name "fossil") - (version "1.35") + (version "2.2") (source (origin (method url-fetch) - (uri (string-append - "https://www.fossil-scm.org/index.html/uv/download/" - "fossil-src-" version ".tar.gz")) + ;; Older downloads are moved to another URL. + (uri (list + (string-append + "https://www.fossil-scm.org/index.html/uv/download/" + "fossil-src-" version ".tar.gz") + (string-append + "https://www.fossil-scm.org/index.html/uv/" + "fossil-src-" version ".tar.gz"))) (sha256 (base32 - "07ds6rhq69bhydpm9a01mgdhxf88p9b6y5hdnhn8gjc7ba92zyf1")))) + "0wfgacfg29dkl0c3l1rp5ji0kraa64gcbg5lh8p4m7mqdqcq53wv")))) (build-system gnu-build-system) (native-inputs `(("tcl" ,tcl) ;for configuration only @@ -1379,9 +1380,6 @@ repository\" with git-annex.") (lambda _ (setenv "USER" "guix") (setenv "TZ" "UTC") - ;; Fixing the th1 test would require many backports, so - ;; just disable for now. - (delete-file "test/th1.test") #t))))) (home-page "https://fossil-scm.org") (synopsis "Software configuration management system") diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 610b258dfc..2057307a30 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1121,7 +1121,7 @@ access to mpv's powerful playback capabilities.") (define-public youtube-dl (package (name "youtube-dl") - (version "2017.08.13") + (version "2017.08.18") (source (origin (method url-fetch) (uri (string-append "https://yt-dl.org/downloads/" @@ -1129,7 +1129,7 @@ access to mpv's powerful playback capabilities.") version ".tar.gz")) (sha256 (base32 - "1parn0xda7mp1phcj19axldifgh6mcwia6wdi3m20kidc9m4wb11")))) + "1mn3wi31k62c6drpplzp2irygjhiwprj5k7w4m0g8m4bgfdjgx57")))) (build-system python-build-system) (arguments ;; The problem here is that the directory for the man page and completion diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index 7db81ee57d..818d2d207f 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com> -;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017 ng0 <ng0@no-reply.pragmatique.xyz> ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> @@ -648,24 +648,46 @@ refactor Vim in order to: (define-public vifm (package (name "vifm") - (version "0.8.2") + (version "0.9") (source (origin (method url-fetch) - (uri (string-append "mirror://sourceforge/vifm/vifm/vifm-" - version ".tar.bz2")) + (uri (list + (string-append "https://github.com/vifm/vifm/releases/download/v" + version "/vifm-" version ".tar.bz2") + (string-append "https://sourceforge.net/projects/vifm/files/vifm/" + "vifm-" version ".tar.bz2"))) (sha256 (base32 - "07r15kq7kjl3a41sd11ncpsii866xxps4f90zh3lv8jqcrv6silb")))) + "1zd72vcgir3g9rhs2iyca13qf5fc0b1f22y20f5gy92c3sfwj45b")))) (build-system gnu-build-system) (arguments - '(#:phases + '(#:configure-flags '("--disable-build-timestamp") + #:phases (modify-phases %standard-phases (add-after 'patch-source-shebangs 'patch-test-shebangs (lambda _ - (substitute* (find-files "tests" "\\.c$") - (("/bin/sh") (which "sh"))) - #t))))) + (substitute* (cons* "src/background.c" + "src/cfg/config.c" + (find-files "tests" "\\.c$")) + (("/bin/sh") (which "sh")) + (("/bin/bash") (which "bash"))) + ;; This test segfaults + (substitute* "tests/Makefile" + (("misc") "")) + #t)) + (add-after 'install 'install-vim-plugin-files + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (vifm (string-append out "/share/vifm")) + (vimfiles (string-append out "/share/vim/vimfiles"))) + (copy-recursively (string-append vifm "/colors") + (string-append vimfiles "/colors")) + (copy-recursively (string-append vifm "/vim") + vimfiles) + (delete-file-recursively (string-append vifm "/colors")) + (delete-file-recursively (string-append vifm "/vim"))) + #t))))) (native-inputs `(("groff" ,groff) ; for the documentation ("perl" ,perl))) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 09c60ac0e4..d46b6c8ec3 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -933,7 +933,7 @@ minimum to provide high performance operation.") (define-public sassc ;; libsass must be statically linked and it isn't included in the sassc ;; release tarballs, hence this odd package recipe. - (let* ((version "3.2.5") + (let* ((version "3.4.5") (libsass (origin (method url-fetch) @@ -943,7 +943,7 @@ minimum to provide high performance operation.") (file-name (string-append "libsass-" version ".tar.gz")) (sha256 (base32 - "1x25k6p1s1yzsdpzb7bzh8japilmi1mk3z96q66pycbinj9z9is4"))))) + "1j22138l5ymqjfj5zan9d2hipa3ahjmifgpjahqy1smlg5sb837x"))))) (package (name "sassc") (version version) @@ -954,11 +954,16 @@ minimum to provide high performance operation.") (file-name (string-append "sassc-" version ".tar.gz")) (sha256 (base32 - "1xf3w75w840rj0nx375rxi7mcv1ngqqq8p3zrzjlyx8jfpnldmv5")))) + "1xk4kmmvziz9sal3swpqa10q0s289xjpcz8aggmly8mvxvmngsi9")))) (build-system gnu-build-system) (arguments - `(#:make-flags '("CC=gcc") + `(#:make-flags + (list "CC=gcc" + (string-append "PREFIX=" (assoc-ref %outputs "out"))) #:test-target "test" + ;; FIXME: "make test" rebuilds the application and gets lost in a + ;; non-existing directory. + #:tests? #f #:phases (modify-phases %standard-phases (delete 'configure) @@ -968,13 +973,7 @@ minimum to provide high performance operation.") (begin (setenv "SASS_LIBSASS_PATH" (string-append (getcwd) "/libsass-" ,version)) - #t)))) - (replace 'install ; no install target - (lambda* (#:key outputs #:allow-other-keys) - (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) - (mkdir-p bin) - (copy-file "bin/sassc" (string-append bin "/sassc")) - #t)))))) + #t))))))) (inputs `(("libsass" ,libsass))) (synopsis "CSS pre-processor") @@ -4920,3 +4919,67 @@ responsive, and powerful applications with minimal effort.") communicate with each other, with Shiny or without (i.e. static @code{.html} files). It currently supports linked brushing and filtering.") (license l:expat))) + +(define-public r-rook + (package + (name "r-rook") + (version "1.1-1") + (source + (origin + (method url-fetch) + (uri (cran-uri "Rook" version)) + (sha256 + (base32 + "00s9a0kr9rwxvlq433daxjk4ji8m0w60hjdprf502msw9kxfrx00")))) + (properties `((upstream-name . "Rook"))) + (build-system r-build-system) + (propagated-inputs `(("r-brew" ,r-brew))) + (home-page "http://cran.r-project.org/web/packages/Rook") + (synopsis "Web server interface for R") + (description + "This package contains the Rook specification and convenience software +for building and running Rook applications. A Rook application is an R +reference class object that implements a @code{call} method or an R closure +that takes exactly one argument, an environment, and returns a list with three +named elements: the @code{status}, the @code{headers}, and the @code{body}.") + (license l:gpl2))) + +(define-public rss-bridge + (package + (name "rss-bridge") + (version "2017-08-03") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/RSS-Bridge/rss-bridge/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "05s16y552hbyj91s7bnlkx1bi64s6aw0fjy29az8via3i3b21yhl")))) + (build-system trivial-build-system) + (native-inputs + `(("gzip" ,gzip) + ("tar" ,tar))) + (arguments + '(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils) + (ice-9 match)) + (let* ((out (assoc-ref %outputs "out")) + (share-rss-bridge (string-append out "/share/rss-bridge"))) + (set-path-environment-variable + "PATH" '("bin") (map (match-lambda ((_ . input) input)) + %build-inputs)) + (mkdir-p share-rss-bridge) + (system* "tar" "xvf" (assoc-ref %build-inputs "source") + "--strip-components" "1" "-C" share-rss-bridge) + #t)))) + (home-page "https://github.com/RSS-Bridge/rss-bridge") + (synopsis "Generate Atom feeds for social networking websites") + (description "rss-bridge generates Atom feeds for social networking +websites lacking feeds. Supported websites include Facebook, Twitter, +Instagram and YouTube.") + (license (list l:public-domain + l:expat)))) ;; vendor/simplehtmldom/simple_html_dom.php diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index 2b6ea4f235..5ba29c3b3d 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -73,7 +73,7 @@ (define-public libconfuse (package (name "libconfuse") - (version "3.2") + (version "3.2.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/martinh/libconfuse/" @@ -81,7 +81,7 @@ "/confuse-" version ".tar.xz")) (sha256 (base32 - "0j2fg93w22apjfqnkak8k8m395n2l7hhm9xnjx0k2v82js3bnsm4")))) + "0pnjmlj9i0alp407qd7c0vq83sz7gpsjrbdgpcn4xvzjp9r35ii3")))) (build-system gnu-build-system) (home-page "https://github.com/martinh/libconfuse") (synopsis "Configuration file parser library") diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 9e003bb51b..af217ef679 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -3220,7 +3220,8 @@ This driver is intended for ATI Rage 128 based cards.") ".tar.bz2")) (sha256 (base32 - "1g2r6gxqrmjdff95d42msxdw6vmkg2zn5sqv0rxd420iwy8wdwyh")))) + "1g2r6gxqrmjdff95d42msxdw6vmkg2zn5sqv0rxd420iwy8wdwyh")) + (patches (search-patches "xf86-video-siliconmotion-fix-ftbfs.patch")))) (build-system gnu-build-system) (inputs `(("xorg-server" ,xorg-server))) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/services/databases.scm b/gnu/services/databases.scm index 3b64d0e075..de1f6b8411 100644 --- a/gnu/services/databases.scm +++ b/gnu/services/databases.scm @@ -216,6 +216,14 @@ and stores the database cluster in @var{data-directory}." (home-directory "/var/empty") (shell (file-append shadow "/sbin/nologin"))))) +(define memcached-activation + #~(begin + (use-modules (guix build utils)) + (let ((user (getpwnam "memcached"))) + (mkdir-p "/var/run/memcached") + (chown "/var/run/memcached" + (passwd:uid user) (passwd:gid user))))) + (define memcached-shepherd-service (match-lambda (($ <memcached-configuration> memcached interfaces tcp-port udp-port @@ -233,11 +241,14 @@ and stores the database cluster in @var{data-directory}." "-p" #$(number->string tcp-port) "-U" #$(number->string udp-port) "--daemon" - "-P" "/var/run/memcached.pid" + ;; Memcached changes to the memcached user prior to + ;; writing the pid file, so write it to a directory + ;; that memcached owns. + "-P" "/var/run/memcached/pid" "-u" "memcached" ,#$@additional-options) #:log-file "/var/log/memcached" - #:pid-file "/var/run/memcached.pid")) + #:pid-file "/var/run/memcached/pid")) (stop #~(make-kill-destructor)))))))) (define memcached-service-type @@ -245,6 +256,8 @@ and stores the database cluster in @var{data-directory}." (extensions (list (service-extension shepherd-root-service-type memcached-shepherd-service) + (service-extension activation-service-type + (const memcached-activation)) (service-extension account-service-type (const %memcached-accounts)))) (default-value (memcached-configuration)))) diff --git a/gnu/services/web.scm b/gnu/services/web.scm index c605d76866..cc7adeb5e4 100644 --- a/gnu/services/web.scm +++ b/gnu/services/web.scm @@ -114,105 +114,109 @@ (define (config-domain-strings names) "Return a string denoting the nginx config representation of NAMES, a list of domain names." - (string-join - (map (match-lambda + (map (match-lambda ('default "_ ") - ((? string? str) (string-append str " "))) - names))) + ((? string? str) (list str " "))) + names)) (define (config-index-strings names) "Return a string denoting the nginx config representation of NAMES, a list of index files." - (string-join - (map (match-lambda - ((? string? str) (string-append str " "))) - names))) + (map (match-lambda + ((? string? str) (list str " "))) + names)) -(define nginx-location-config +(define emit-nginx-location-config (match-lambda (($ <nginx-location-configuration> uri body) - (string-append + (list " location " uri " {\n" - " " (string-join body "\n ") "\n" + (map (lambda (x) (list " " x "\n")) body) " }\n")) (($ <nginx-named-location-configuration> name body) - (string-append + (list " location @" name " {\n" - " " (string-join body "\n ") "\n" + (map (lambda (x) (list " " x "\n")) body) " }\n")))) -(define (default-nginx-server-config server) - (string-append - " server {\n" - (if (nginx-server-configuration-http-port server) - (string-append " listen " - (number->string (nginx-server-configuration-http-port server)) - ";\n") - "") - (if (nginx-server-configuration-https-port server) - (string-append " listen " - (number->string (nginx-server-configuration-https-port server)) - " ssl;\n") - "") - " server_name " (config-domain-strings - (nginx-server-configuration-server-name server)) - ";\n" - (if (nginx-server-configuration-ssl-certificate server) - (let ((certificate (nginx-server-configuration-ssl-certificate server))) - ;; lstat fails when the certificate file does not exist: it aborts - ;; and lets the user fix their configuration. - (lstat certificate) - (string-append " ssl_certificate " certificate ";\n")) - "") - (if (nginx-server-configuration-ssl-certificate-key server) - (let ((key (nginx-server-configuration-ssl-certificate-key server))) - (lstat key) - (string-append " ssl_certificate_key " key ";\n")) - "") - " root " (nginx-server-configuration-root server) ";\n" - " index " (config-index-strings (nginx-server-configuration-index server)) ";\n" - " server_tokens " (if (nginx-server-configuration-server-tokens? server) - "on" "off") ";\n" - "\n" - (string-join - (map nginx-location-config (nginx-server-configuration-locations server)) - "\n") - " }\n")) +(define (emit-nginx-server-config server) + (let ((http-port (nginx-server-configuration-http-port server)) + (https-port (nginx-server-configuration-https-port server)) + (server-name (nginx-server-configuration-server-name server)) + (ssl-certificate (nginx-server-configuration-ssl-certificate server)) + (ssl-certificate-key + (nginx-server-configuration-ssl-certificate-key server)) + (root (nginx-server-configuration-root server)) + (index (nginx-server-configuration-index server)) + (server-tokens? (nginx-server-configuration-server-tokens? server)) + (locations (nginx-server-configuration-locations server))) + (define-syntax-parameter <> (syntax-rules ())) + (define-syntax-rule (and/l x tail ...) + (let ((x* x)) + (if x* + (syntax-parameterize ((<> (identifier-syntax x*))) + (list tail ...)) + '()))) + (for-each + (match-lambda + ((record-key . file) + (if (and file (not (file-exists? file))) + (error + (simple-format + #f + "~A in the nginx configuration for the server with name \"~A\" does not exist" record-key server-name))))) + `(("ssl-certificate" . ,ssl-certificate) + ("ssl-certificate-key" . ,ssl-certificate-key))) + (list + " server {\n" + (and/l http-port " listen " (number->string <>) ";\n") + (and/l https-port " listen " (number->string <>) " ssl;\n") + " server_name " (config-domain-strings server-name) ";\n" + (and/l ssl-certificate " ssl_certificate " <> ";\n") + (and/l ssl-certificate-key " ssl_certificate_key " <> ";\n") + " root " root ";\n" + " index " (config-index-strings index) ";\n" + " server_tokens " (if server-tokens? "on" "off") ";\n" + "\n" + (map emit-nginx-location-config locations) + "\n" + " }\n"))) -(define (nginx-upstream-config upstream) - (string-append +(define (emit-nginx-upstream-config upstream) + (list " upstream " (nginx-upstream-configuration-name upstream) " {\n" - (string-concatenate - (map (lambda (server) - (simple-format #f " server ~A;\n" server)) - (nginx-upstream-configuration-servers upstream))) + (map (lambda (server) + (simple-format #f " server ~A;\n" server)) + (nginx-upstream-configuration-servers upstream)) " }\n")) +(define (flatten . lst) + "Return a list that recursively concatenates all sub-lists of LST." + (define (flatten1 head out) + (if (list? head) + (fold-right flatten1 out head) + (cons head out))) + (fold-right flatten1 '() lst)) + (define (default-nginx-config nginx log-directory run-directory server-list upstream-list) - (mixed-text-file "nginx.conf" - "user nginx nginx;\n" - "pid " run-directory "/pid;\n" - "error_log " log-directory "/error.log info;\n" - "http {\n" - " client_body_temp_path " run-directory "/client_body_temp;\n" - " proxy_temp_path " run-directory "/proxy_temp;\n" - " fastcgi_temp_path " run-directory "/fastcgi_temp;\n" - " uwsgi_temp_path " run-directory "/uwsgi_temp;\n" - " scgi_temp_path " run-directory "/scgi_temp;\n" - " access_log " log-directory "/access.log;\n" - " include " nginx "/share/nginx/conf/mime.types;\n" - "\n" - (string-join - (filter (lambda (section) (not (null? section))) - (map nginx-upstream-config upstream-list)) - "\n") - "\n" - (let ((http (map default-nginx-server-config server-list))) - (do ((http http (cdr http)) - (block "" (string-append (car http) "\n" block ))) - ((null? http) block))) - "}\n" - "events {}\n")) + (apply mixed-text-file "nginx.conf" + (flatten + "user nginx nginx;\n" + "pid " run-directory "/pid;\n" + "error_log " log-directory "/error.log info;\n" + "http {\n" + " client_body_temp_path " run-directory "/client_body_temp;\n" + " proxy_temp_path " run-directory "/proxy_temp;\n" + " fastcgi_temp_path " run-directory "/fastcgi_temp;\n" + " uwsgi_temp_path " run-directory "/uwsgi_temp;\n" + " scgi_temp_path " run-directory "/scgi_temp;\n" + " access_log " log-directory "/access.log;\n" + " include " nginx "/share/nginx/conf/mime.types;\n" + "\n" + (map emit-nginx-upstream-config upstream-list) + (map emit-nginx-server-config server-list) + "}\n" + "events {}\n"))) (define %nginx-accounts (list (user-group (name "nginx") (system? #t)) diff --git a/gnu/system/examples/bare-bones.tmpl b/gnu/system/examples/bare-bones.tmpl index f7b8823d4f..a10ee6e7fe 100644 --- a/gnu/system/examples/bare-bones.tmpl +++ b/gnu/system/examples/bare-bones.tmpl @@ -12,7 +12,9 @@ ;; Assuming /dev/sdX is the target hard disk, and "my-root" is ;; the label of the target root file system. - (bootloader (grub-configuration (device "/dev/sdX"))) + (bootloader (bootloader-configuration + (bootloader grub-bootloader) + (device "/dev/sdX"))) (file-systems (cons (file-system (device "my-root") (title 'label) diff --git a/gnu/system/examples/desktop.tmpl b/gnu/system/examples/desktop.tmpl index 8b02659478..3cfbd9add6 100644 --- a/gnu/system/examples/desktop.tmpl +++ b/gnu/system/examples/desktop.tmpl @@ -13,19 +13,20 @@ ;; Assuming /dev/sdX is the target hard disk, and "my-root" ;; is the label of the target root file system. - (bootloader (grub-configuration (device "/dev/sdX"))) + (bootloader (bootloader-configuration + (bootloader grub-bootloader) + (device "/dev/sdX"))) ;; Specify a mapped device for the encrypted root partition. ;; The UUID is that returned by 'cryptsetup luksUUID'. (mapped-devices (list (mapped-device (source (uuid "12345678-1234-1234-1234-123456789abc")) - (target "the-root-device") + (target "my-root") (type luks-device-mapping)))) (file-systems (cons (file-system (device "my-root") - (title 'label) (mount-point "/") (type "ext4") (dependencies mapped-devices)) diff --git a/gnu/system/examples/lightweight-desktop.tmpl b/gnu/system/examples/lightweight-desktop.tmpl index 6fb6283d29..127ceb4dc5 100644 --- a/gnu/system/examples/lightweight-desktop.tmpl +++ b/gnu/system/examples/lightweight-desktop.tmpl @@ -12,9 +12,10 @@ (locale "en_US.utf8") ;; Use the UEFI variant of GRUB with the EFI System - ;; Partition on /dev/sda1. - (bootloader (grub-configuration (grub grub-efi) - (device "/dev/sda1"))) + ;; Partition mounted on /boot/efi. + (bootloader (bootloader-configuration + (bootloader grub-efi-bootloader) + (device "/boot/efi"))) ;; Assume the target root file system is labelled "my-root". (file-systems (cons* (file-system diff --git a/gnu/tests/databases.scm b/gnu/tests/databases.scm index 310210c368..9d9a753747 100644 --- a/gnu/tests/databases.scm +++ b/gnu/tests/databases.scm @@ -63,13 +63,15 @@ (test-begin "memcached") ;; Wait for memcached to be up and running. - (test-eq "service running" - 'running! + (test-assert "service running" (marionette-eval '(begin (use-modules (gnu services herd)) - (start-service 'memcached) - 'running!) + (match (start-service 'memcached) + (#f #f) + (('service response-parts ...) + (match (assq-ref response-parts 'running) + ((pid) (number? pid)))))) marionette)) (let* ((ai (car (getaddrinfo "localhost" diff --git a/guix/scripts/download.scm b/guix/scripts/download.scm index bb3dc76741..f40213be33 100644 --- a/guix/scripts/download.scm +++ b/guix/scripts/download.scm @@ -143,12 +143,15 @@ Supported formats: 'nix-base32' (default), 'base32', and 'base16' (arg (or (assq-ref opts 'argument) (leave (G_ "no download URI was specified~%")))) (uri (or (string->uri arg) + (false-if-exception + (string->uri + (string-append "file://" (canonicalize-path arg)))) (leave (G_ "~a: failed to parse URI~%") arg))) (fetch (assq-ref opts 'download-proc)) (path (parameterize ((current-terminal-columns (terminal-columns))) - (fetch arg + (fetch (uri->string uri) #:verify-certificate? (assq-ref opts 'verify-certificate?)))) (hash (call-with-input-file diff --git a/guix/scripts/pack.scm b/guix/scripts/pack.scm index 1273c09f54..c269a1fefc 100644 --- a/guix/scripts/pack.scm +++ b/guix/scripts/pack.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015, 2017 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -50,19 +51,20 @@ (compressor name extension command) compressor? (name compressor-name) ;string (e.g., "gzip") - (extension compressor-extension) ;string (e.g., "lz") + (extension compressor-extension) ;string (e.g., ".lz") (command compressor-command)) ;gexp (e.g., #~("/gnu/store/…/gzip" "-9n")) (define %compressors ;; Available compression tools. - (list (compressor "gzip" "gz" + (list (compressor "gzip" ".gz" #~(#+(file-append gzip "/bin/gzip") "-9n")) - (compressor "lzip" "lz" + (compressor "lzip" ".lz" #~(#+(file-append lzip "/bin/lzip") "-9")) - (compressor "xz" "xz" + (compressor "xz" ".xz" #~(#+(file-append xz "/bin/xz") "-e -T0")) - (compressor "bzip2" "bz2" - #~(#+(file-append bzip2 "/bin/bzip2") "-9")))) + (compressor "bzip2" ".bz2" + #~(#+(file-append bzip2 "/bin/bzip2") "-9")) + (compressor "none" "" #f))) (define (lookup-compressor name) "Return the compressor object called NAME. Error out if it could not be @@ -180,7 +182,7 @@ added to the pack." (_ #f)) directives))))))))) - (gexp->derivation (string-append name ".tar." + (gexp->derivation (string-append name ".tar" (compressor-extension compressor)) build #:references-graphs `(("profile" ,profile)))) @@ -245,7 +247,7 @@ the image." #:compressor '#$(compressor-command compressor) #:creation-time (make-time time-utc 0 1))))) - (gexp->derivation (string-append name ".tar." + (gexp->derivation (string-append name ".tar" (compressor-extension compressor)) build #:references-graphs `(("profile" ,profile)))) diff --git a/nix/libstore/build.cc b/nix/libstore/build.cc index 63540ddfc1..d68e8b2bc0 100644 --- a/nix/libstore/build.cc +++ b/nix/libstore/build.cc @@ -2086,12 +2086,8 @@ void DerivationGoal::runChild() outside of the namespace. Making a subtree private is local to the namespace, though, so setting MS_PRIVATE does not affect the outside world. */ - Strings mounts = tokenizeString<Strings>(readFile("/proc/self/mountinfo", true), "\n"); - foreach (Strings::iterator, i, mounts) { - vector<string> fields = tokenizeString<vector<string> >(*i, " "); - string fs = decodeOctalEscaped(fields.at(4)); - if (mount(0, fs.c_str(), 0, MS_PRIVATE, 0) == -1) - throw SysError(format("unable to make filesystem `%1%' private") % fs); + if (mount(0, "/", 0, MS_REC|MS_PRIVATE, 0) == -1) { + throw SysError("unable to make ‘/’ private mount"); } /* Bind-mount chroot directory to itself, to treat it as a diff --git a/nix/libutil/util.cc b/nix/libutil/util.cc index c07754487e..768e12b5e4 100644 --- a/nix/libutil/util.cc +++ b/nix/libutil/util.cc @@ -1106,21 +1106,6 @@ bool endOfList(std::istream & str) } -string decodeOctalEscaped(const string & s) -{ - string r; - for (string::const_iterator i = s.begin(); i != s.end(); ) { - if (*i != '\\') { r += *i++; continue; } - unsigned char c = 0; - ++i; - while (i != s.end() && *i >= '0' && *i < '8') - c = c * 8 + (*i++ - '0'); - r += c; - } - return r; -} - - void ignoreException() { try { diff --git a/nix/libutil/util.hh b/nix/libutil/util.hh index e84d64d10a..6a6e07c478 100644 --- a/nix/libutil/util.hh +++ b/nix/libutil/util.hh @@ -356,12 +356,6 @@ string parseString(std::istream & str); bool endOfList(std::istream & str); -/* Escape a string that contains octal-encoded escape codes such as - used in /etc/fstab and /proc/mounts (e.g. "foo\040bar" decodes to - "foo bar"). */ -string decodeOctalEscaped(const string & s); - - /* Exception handling in destructors: print an error message, then ignore the exception. */ void ignoreException(); diff --git a/tests/guix-download.sh b/tests/guix-download.sh index ebc853c7fa..30f55fbe2b 100644 --- a/tests/guix-download.sh +++ b/tests/guix-download.sh @@ -29,12 +29,15 @@ then false; else true; fi if guix download unknown://some/where; then false; else true; fi -if guix download not/a/uri; +if guix download /does-not-exist then false; else true; fi # This one should succeed. guix download "file://$abs_top_srcdir/README" +# And this one, without the URI scheme. +guix download "$abs_top_srcdir/README" + # This one too, even if it cannot talk to the daemon. output="t-download-$$" trap 'rm -f "$output"' EXIT |