Merge branch 'master' into core-updates

master
Marius Bakke 2017-08-21 02:40:37 +02:00
commit 2718a9cd09
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
77 changed files with 3646 additions and 835 deletions

10
HACKING
View File

@ -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 youre confident, its OK to commit.
That last part is subject to being adjusted, allowing individuals to commit
directly on non-controversial changes on parts theyre 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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -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
@ -231,16 +233,19 @@ their dependencies.")
(string-append guile "/bin/guile")
"-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)

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

File diff suppressed because it is too large Load Diff

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -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")
(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 (emit-nginx-upstream-config upstream)
(list
" upstream " (nginx-upstream-configuration-name upstream) " {\n"
(map (lambda (server)
(simple-format #f " server ~A;\n" server))
(nginx-upstream-configuration-servers upstream))
" }\n"))
(define (nginx-upstream-config upstream)
(string-append
" upstream " (nginx-upstream-configuration-name upstream) " {\n"
(string-concatenate
(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))

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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