1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-07-10 06:24:06 +02:00

Compare commits

..

1 Commits

Author SHA1 Message Date
Ludovic Courtès c18c53117f DRAFT gexp: Preserve scope across stages.
DRAFT: Needs more tests and more testing.

* guix/gexp.scm (gexp)[lookup-binding, generate-bindings]
[syntax-uid, alpha-rename]: New procedures.
Call 'alpha-rename' before doing anything else.
* tests/gexp.scm ("hygiene, eval", "hygiene, define")
("hygiene, shadowed syntax", "hygiene, quote"): New tests.
2017-07-05 23:42:03 +02:00
715 changed files with 28004 additions and 105114 deletions
+1 -2
View File
@@ -77,8 +77,7 @@
(eval . (put 'container-excursion 'scheme-indent-function 1))
(eval . (put 'eventually 'scheme-indent-function 1))
(eval . (put 'call-with-progress-reporter 'scheme-indent-function 1))
;; Recognize '~', '+', and '$', as used for gexps, as quotation symbols.
;; This notably allows '(' in Paredit to not insert a space when the
;; preceding symbol is one of these.
(eval . (modify-syntax-entry ?~ "'"))
+10 -13
View File
@@ -33,7 +33,7 @@ Joshua Grant <tadni@riseup.net> <gzg@riseup.net>
Joshua Grant <tadni@riseup.net> <jgrant@parenthetical.io>
Joshua Grant <tadni@riseup.net> <tadnimi@gmail.com>
Joshua Grant <tadni@riseup.net> <youlysses@riseup.net>
Kei Kebreau <kei@openmailbox.org> <kkebreau@posteo.net>
Kei Kebreau <kei@openmailbox.org>
Leo Famulari <leo@famulari.name> <lfamular@gmail.com>
Ludovic Courtès <ludo@gnu.org> <ludovic.courtes@inria.fr>
Marek Benc <dusxmt@gmx.com> <merkur32@gmail.com>
@@ -42,17 +42,15 @@ Mathieu Lirzin <mthl@gnu.org> <mthl@openmailbox.org>
Mathieu Lirzin <mthl@gnu.org> <mathieu.lirzin@openmailbox.org>
Mathieu Othacehe <m.othacehe@gmail.com>
Nikita Karetnikov <nikita@karetnikov.org> <nikita.karetnikov@gmail.com>
ng0 <ng0@n0.is>
ng0 <ng0@n0.is> <ng0@infotropique.org>
ng0 <ng0@n0.is> <ng0@no-reply.infotropique.org>
ng0 <ng0@n0.is> <ng0@no-reply.pragmatique.xyz>
ng0 <ng0@n0.is> <ng0@pragmatique.xyz>
ng0 <ng0@n0.is> <contact.ng0@cryptolab.net>
ng0 <ng0@n0.is> <ng0@we.make.ritual.n0.is>
ng0 <ng0@n0.is> <ngillmann@runbox.com>
ng0 <ng0@n0.is> <niasterisk@grrlz.net>
ng0 <ng0@n0.is> <ng@niasterisk.space>
ng0 <ng0@n0.is> <ng0@libertad.pw>
ng0 <ng0@no-reply.infotropique.org>
ng0 <ng0@no-reply.infotropique.org> <ng0@no-reply.pragmatique.xyz>
ng0 <ng0@no-reply.infotropique.org> <ng0@pragmatique.xyz>
ng0 <ng0@no-reply.infotropique.org> <contact.ng0@cryptolab.net>
ng0 <ng0@no-reply.infotropique.org> <ng0@we.make.ritual.n0.is>
ng0 <ng0@no-reply.infotropique.org> <ngillmann@runbox.com>
ng0 <ng0@no-reply.infotropique.org> <niasterisk@grrlz.net>
ng0 <ng0@no-reply.infotropique.org> <ng@niasterisk.space>
ng0 <ng0@no-reply.infotropique.org> <ng0@libertad.pw>
Pjotr Prins <pjotr.guix@thebird.nl> <pjotr.public01@thebird.nl>
Pjotr Prins <pjotr.guix@thebird.nl> <pjotr.public12@thebird.nl>
Pjotr Prins <pjotr.guix@thebird.nl> <pjotr.public12@email>
@@ -66,7 +64,6 @@ Sou Bunnbu (宋文武) <iyzsong@gmail.com>
Sou Bunnbu (宋文武) <iyzsong@gmail.com> <iyzsong@member.fsf.org>
Stefan Reichör <stefan@xsteve.at>
Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
Theodoros Foradis <theodoros.for@openmailbox.org> <theodoros@foradis.org>
Thomas Danckaert <thomas.danckaert@gmail.com> <post@thomasdanckaert.be>
Tobias Geerinckx-Rice <me@tobias.gr> <tobias.geerinckx.rice@gmail.com>
Tomáš Čech <sleep_walker@gnu.org> <sleep_walker@suse.cz>
-10
View File
@@ -5,7 +5,6 @@
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
@@ -62,12 +61,3 @@ 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
+19 -42
View File
@@ -7,8 +7,6 @@
# Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
# Copyright © 2017 Leo Famulari <leo@famulari.name>
# Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
# Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
# Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
#
# This file is part of GNU Guix.
#
@@ -48,7 +46,6 @@ MODULES = \
guix/hash.scm \
guix/pk-crypto.scm \
guix/pki.scm \
guix/progress.scm \
guix/combinators.scm \
guix/memoization.scm \
guix/utils.scm \
@@ -69,7 +66,6 @@ MODULES = \
guix/gnu-maintenance.scm \
guix/upstream.scm \
guix/licenses.scm \
guix/git.scm \
guix/graph.scm \
guix/cache.scm \
guix/cve.scm \
@@ -82,9 +78,6 @@ MODULES = \
guix/build-system/dub.scm \
guix/build-system/emacs.scm \
guix/build-system/font.scm \
guix/build-system/go.scm \
guix/build-system/meson.scm \
guix/build-system/minify.scm \
guix/build-system/asdf.scm \
guix/build-system/glib-or-gtk.scm \
guix/build-system/gnu.scm \
@@ -95,7 +88,6 @@ MODULES = \
guix/build-system/waf.scm \
guix/build-system/r.scm \
guix/build-system/ruby.scm \
guix/build-system/scons.scm \
guix/build-system/texlive.scm \
guix/build-system/trivial.scm \
guix/ftp-client.scm \
@@ -105,19 +97,14 @@ MODULES = \
guix/store.scm \
guix/cvs-download.scm \
guix/svn-download.scm \
guix/i18n.scm \
guix/ui.scm \
guix/build/ant-build-system.scm \
guix/build/download.scm \
guix/build/download-nar.scm \
guix/build/cargo-build-system.scm \
guix/build/cmake-build-system.scm \
guix/build/dub-build-system.scm \
guix/build/emacs-build-system.scm \
guix/build/meson-build-system.scm \
guix/build/minify-build-system.scm \
guix/build/font-build-system.scm \
guix/build/go-build-system.scm \
guix/build/asdf-build-system.scm \
guix/build/git.scm \
guix/build/hg.scm \
@@ -129,7 +116,6 @@ MODULES = \
guix/build/ocaml-build-system.scm \
guix/build/r-build-system.scm \
guix/build/ruby-build-system.scm \
guix/build/scons-build-system.scm \
guix/build/texlive-build-system.scm \
guix/build/waf-build-system.scm \
guix/build/haskell-build-system.scm \
@@ -137,7 +123,6 @@ MODULES = \
guix/build/utils.scm \
guix/build/union.scm \
guix/build/profiles.scm \
guix/build/compile.scm \
guix/build/pull.scm \
guix/build/rpath.scm \
guix/build/cvs.scm \
@@ -153,7 +138,6 @@ MODULES = \
guix/build/make-bootstrap.scm \
guix/search-paths.scm \
guix/packages.scm \
guix/import/print.scm \
guix/import/utils.scm \
guix/import/gnu.scm \
guix/import/snix.scm \
@@ -177,7 +161,6 @@ MODULES = \
guix/scripts/authenticate.scm \
guix/scripts/refresh.scm \
guix/scripts/system.scm \
guix/scripts/system/search.scm \
guix/scripts/lint.scm \
guix/scripts/challenge.scm \
guix/scripts/import/cran.scm \
@@ -188,7 +171,6 @@ MODULES = \
guix/scripts/import/texlive.scm \
guix/scripts/environment.scm \
guix/scripts/publish.scm \
guix/scripts/weather.scm \
guix/scripts/edit.scm \
guix/scripts/size.scm \
guix/scripts/graph.scm \
@@ -205,13 +187,11 @@ MODULES += \
guix/import/crate.scm \
guix/import/gem.scm \
guix/import/github.scm \
guix/import/gnome.scm \
guix/import/json.scm \
guix/import/pypi.scm \
guix/import/stackage.scm \
guix/scripts/import/crate.scm \
guix/scripts/import/gem.scm \
guix/scripts/import/json.scm \
guix/scripts/import/pypi.scm \
guix/scripts/import/stackage.scm
@@ -226,6 +206,13 @@ MODULES += \
endif HAVE_GUILE_SSH
if HAVE_GUILE_GIT
MODULES += \
guix/git.scm
endif HAVE_GUILE_GIT
if BUILD_DAEMON_OFFLOAD
MODULES += \
@@ -239,9 +226,8 @@ dist_noinst_DATA = guix/tests.scm guix/tests/http.scm
# Auxiliary files for packages.
AUX_FILES = \
gnu/packages/aux-files/emacs/guix-emacs.el \
gnu/packages/aux-files/linux-libre/4.14-arm.conf \
gnu/packages/aux-files/linux-libre/4.14-i686.conf \
gnu/packages/aux-files/linux-libre/4.14-x86_64.conf \
gnu/packages/aux-files/linux-libre/4.12-i686.conf \
gnu/packages/aux-files/linux-libre/4.12-x86_64.conf \
gnu/packages/aux-files/linux-libre/4.9-i686.conf \
gnu/packages/aux-files/linux-libre/4.9-x86_64.conf \
gnu/packages/aux-files/linux-libre/4.4-i686.conf \
@@ -288,7 +274,6 @@ SCM_TESTS = \
tests/hash.scm \
tests/pk-crypto.scm \
tests/pki.scm \
tests/print.scm \
tests/sets.scm \
tests/modules.scm \
tests/gnu-maintenance.scm \
@@ -330,7 +315,6 @@ SCM_TESTS = \
tests/workers.scm \
tests/zlib.scm \
tests/file-systems.scm \
tests/uuid.scm \
tests/system.scm \
tests/services.scm \
tests/scripts-build.scm \
@@ -416,7 +400,7 @@ check-system: $(GOBJECTS) $(BOOTSTRAP_GUILE_TARBALLS)
# Public key used to sign substitutes from hydra.gnu.org & co.
dist_pkgdata_DATA = \
hydra.gnu.org.pub \
berlin.guixsd.org.pub
bayfront.guixsd.org.pub
# Bash completion file.
dist_bashcompletion_DATA = etc/completion/bash/guix
@@ -435,7 +419,6 @@ EXTRA_DIST = \
build-aux/hydra/evaluate.scm \
build-aux/hydra/gnu-system.scm \
build-aux/hydra/guix.scm \
build-aux/hydra/guix-modular.scm \
build-aux/check-available-binaries.scm \
build-aux/check-final-inputs-self-contained.scm \
build-aux/download.scm \
@@ -584,7 +567,7 @@ SOURCE_TARBALLS = \
$(foreach ext,tar.gz,$(PACKAGE_FULL_TARNAME).$(ext))
# Systems supported by Guix.
SUPPORTED_SYSTEMS ?= x86_64-linux i686-linux armhf-linux aarch64-linux
SUPPORTED_SYSTEMS ?= x86_64-linux i686-linux armhf-linux
# Guix binary tarballs.
BINARY_TARBALLS = \
@@ -597,11 +580,14 @@ 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-install-$(PACKAGE_VERSION)
GUIXSD_IMAGE_BASE = guixsd-usb-install-$(PACKAGE_VERSION)
# Prefix of the GuixSD VM image file name.
GUIXSD_VM_IMAGE_BASE = guixsd-vm-image-$(PACKAGE_VERSION)
# Size of the VM image (for x86_64 typically).
GUIXSD_VM_IMAGE_SIZE ?= 2GiB
# The release process works in several phases:
#
# 0. We assume the developer created a 'vX.Y' tag.
@@ -645,21 +631,21 @@ 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 \
echo "failed to produced GuixSD installation image for $$system" >&2 ; \
exit 1 ; \
fi ; \
xz < "$$image" > "$(releasedir)/$(GUIXSD_IMAGE_BASE).$$system.iso.xz.tmp" ; \
mv "$(releasedir)/$(GUIXSD_IMAGE_BASE).$$system.iso.xz.tmp" \
"$(releasedir)/$(GUIXSD_IMAGE_BASE).$$system.iso.xz" ; \
xz < "$$image" > "$(releasedir)/$(GUIXSD_IMAGE_BASE).$$system.xz.tmp" ; \
mv "$(releasedir)/$(GUIXSD_IMAGE_BASE).$$system.xz.tmp" \
"$(releasedir)/$(GUIXSD_IMAGE_BASE).$$system.xz" ; \
done
for system in $(GUIXSD_VM_SYSTEMS) ; do \
image=`$(top_builddir)/pre-inst-env \
guix system vm-image \
--system=$$system \
--image-size=$(GUIXSD_VM_IMAGE_SIZE) \
gnu/system/examples/vm-image.tmpl` ; \
if [ ! -f "$$image" ] ; then \
echo "failed to produced GuixSD VM image for $$system" >&2 ; \
@@ -719,15 +705,6 @@ hydra-jobs.scm: $(GOBJECTS)
"$(top_srcdir)/build-aux/hydra/gnu-system.scm" > "$@.tmp"
$(AM_V_at)mv "$@.tmp" "$@"
# Compute the Cuirass jobs and write them in the target file.
cuirass-jobs.scm: $(GOBJECTS)
$(AM_V_at)$(MKDIR_P) "`dirname "$@"`"
$(AM_V_GEN)$(top_builddir)/pre-inst-env "$(GUILE)" \
"$(top_srcdir)/build-aux/hydra/evaluate.scm" \
"$(top_srcdir)/build-aux/cuirass/gnu-system.scm" \
cuirass > "$@.tmp"
$(AM_V_at)mv "$@.tmp" "$@"
.PHONY: gen-ChangeLog gen-AUTHORS gen-tarball-version
.PHONY: assert-no-store-file-names assert-binaries-available
.PHONY: assert-final-inputs-self-contained
-801
View File
@@ -10,807 +10,6 @@ Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
Please send Guix bug reports to bug-guix@gnu.org.
* Changes in 0.14.0 (since 0.13.0)
** Package management
*** guix package displays how much will be downloaded
*** guix package warns about insufficient disk space
*** guix package now reports package collisions early on
*** guix package --search sorts results by relevance
*** guix pull now fetches code directly over Git using Guile-Git
*** Substitutes can be downloaded from servers equivalent to the authorized ones
*** New guix-daemon options: --listen, --timeout, --max-silent-time
*** New guix weather command
*** guix publish --cache now also caches uncompressed items
*** guix publish no longer removes live items from its cache
*** guix challenge now displays an overall summary
*** guix refresh no longer uses FTP for GNU and GNOME packages
*** guix refresh has a new -m or --manifest option
*** New refresh checker for guix lint
*** New json importer for guix import to simplify first packages
*** New texlive importer for guix import
** Distribution
*** GuixSD installation image is now available as ISO-9660
*** GuixSD installation image now includes an sshd service
*** New (gnu bootloaders) API, with support for U-Boot and extlinux
*** grub-configuration is deprecated in favor of bootloader-configuration
*** %desktop-services now includes NetworkManager instead of Wicd
*** The (uuid …) form can now specify FAT32 and ISO-9660 UUIDs
*** guix system now reports missing file system UUIDs and labels
*** guix system can provide hints when reporting unbound variables
*** New --file-system-type option for guix system disk-image
*** guix system disk-image can now creates ISO-9660 images
*** guix system vm-image & co. automatically estimate the image size
*** guix system vm now uses overlayfs instead of unionfs
*** guix system init displays a progress bar while copying files
*** TeX Live is now also available as a set of small texlive- packages
*** New guix system search command to search for services
*** New services
certbot, fcgiwrap, gdm, git-http, knot, libvirt, memcached, mongodb, mpd,
murmur, rsync, tailon, sysctl
*** 1211 new packages
0xffff, adms, aegisub, android-udev-rules, ant-apache-bcel, ant-junit,
archivemount, armagetronad, asco, aspell-dict-ca, atool, axoloti-patcher,
axoloti-runtime, bap, bismark, bitshuffle, blis, blis-haswell, blis-knl,
blis-sandybridge, bmon, cadaver, caja, capstone, cataclysm-dda, catcodec,
cheese, cinnamon-desktop, cl-unicode, cl-yale-haskell, classpath, cloc,
cmdtest, conda, coq-bignums, coq-coquelicot, coq-flocq, coq-gappa,
coq-interval, coq-mathcomp, cowsay, cpputest, cpuid, crawl-tiles, criu,
crypto++, cube, cubicle, ddate, deja-dup, dino, dirvish, discount,
disorderfs, dos2unix, dssi, ebtables, ecl-cl-unicode, eid-mw, eless,
emacs-2048-game, emacs-autothemer, emacs-base16-theme,
emacs-bash-completion, emacs-browse-at-remote, emacs-cnfonts,
emacs-company-quickhelp, emacs-dired-hacks, emacs-direnv,
emacs-disable-mouse, emacs-easy-kill, emacs-el2org, emacs-emamux,
emacs-engine-mode, emacs-erc-hl-nicks, emacs-evil-matchit, emacs-exwm-x,
emacs-ggtags, emacs-git-messenger, emacs-gitpatch, emacs-go-mode,
emacs-graphviz-dot-mode, emacs-helm-make, emacs-helm-projectile,
emacs-helm-swoop, emacs-highlight-stages, emacs-highlight-symbol,
emacs-idris-mode, emacs-inf-ruby, emacs-jinja2-mode, emacs-json-snatcher,
emacs-julia-mode, emacs-minitest, emacs-mustache, emacs-nix-mode,
emacs-olivetti, emacs-org-contrib, emacs-org-edit-latex,
emacs-org-pomodoro, emacs-org2web, emacs-pos-tip, emacs-prop-menu,
emacs-pyim, emacs-pyim-basedict, emacs-rainbow-mode, emacs-restclient,
emacs-rpm-spec-mode, emacs-rspec, emacs-sparql-mode, emacs-sr-speedbar,
emacs-switch-window, emacs-tablist, emacs-tiny, emacs-transmission,
emacs-tuareg, emacs-wgrep, emacs-which-key, emacs-writeroom,
emacs-yasnippet-snippets, eog-plugins, eolie, es-dump-restore, escpr, et,
f-seq, f2fs-tools, faba-icon-theme, fbreader, ffms2, five-or-more,
florence, font-dosis, font-fira-sans, font-lato, font-mathjax,
font-open-dyslexic, font-rachana, foo2zjs, foomatic-filters, footswitch,
fping, freehdl, frei0r-plugins, fstrm, fzy, gama, gavl, gemma, geomyidae,
gess, ghc-abstract-deque, ghc-abstract-par, ghc-aws, ghc-base-prelude,
ghc-boxes, ghc-chunked-data, ghc-conduit-combinators,
ghc-contravariant-extras, ghc-crypto-api, ghc-crypto-api-tests,
ghc-cryptohash-md5, ghc-cryptohash-sha1, ghc-data-hash, ghc-edisonapi,
ghc-edisoncore, ghc-edit-distance, ghc-either, ghc-entropy,
ghc-equivalence, ghc-erf, ghc-errors, ghc-fail, ghc-foldl,
ghc-geniplate-mirror, ghc-gitrev, ghc-glob, ghc-hex, ghc-http-conduit,
ghc-http-date, ghc-http2, ghc-language-haskell-extract, ghc-math-functions,
ghc-monad-par, ghc-monad-par-extras, ghc-monadplus, ghc-monadrandom,
ghc-mono-traversable, ghc-murmur-hash, ghc-mwc-random, ghc-network-info,
ghc-pretty-hex, ghc-psqueues, ghc-puremd5, ghc-rebase, ghc-simple-sendfile,
ghc-statistics, ghc-stmonadtrans, ghc-strict, ghc-test-framework-th,
ghc-tuple-th, ghc-uuid, ghc-uuid-types, ghc-vector-algorithms,
ghc-vector-builder, ghc-vector-th-unbox, ghc-wai-conduit, ghc-warp,
ghc-warp-tls, ghostscript-with-cups, git-remote-gcrypt, git-repo,
glusterfs, gnome-clocks, gnome-default-applications, gnome-planner,
gnome-todo, gnome-video-effects, gnucobol, gnutls-dane,
go-github-com-audriusbutkevicius-cli,
go-github-com-audriusbutkevicius-go-nat-pmp,
go-github-com-audriusbutkevicius-kcp-go,
go-github-com-audriusbutkevicius-pfilter, go-github-com-bkaradzic-go-lz4,
go-github-com-calmh-du, go-github-com-calmh-xdr,
go-github-com-ccding-go-stun,
go-github-com-chmduquesne-rollinghash-adler32,
go-github-com-d4l3k-messagediff, go-github-com-edsrzf-mmap-go,
go-github-com-gobwas-glob, go-github-com-gogo-protobuf,
go-github-com-gogo-protobuf-protoc-gen-gogo,
go-github-com-golang-groupcache-lru, go-github-com-golang-snappy,
go-github-com-jackpal-gateway, go-github-com-kardianos-osext,
go-github-com-kballard-go-shellquote, go-github-com-lib-pq,
go-github-com-minio-sha256-simd, go-github-com-oschwald-geoip2-golang,
go-github-com-oschwald-maxminddb-golang, go-github-com-petermattis-goid,
go-github-com-pkg-errors, go-github-com-rcrowley-go-metrics,
go-github-com-sasha-s-go-deadlock, go-github-com-stathat-go,
go-github-com-syndtr-goleveldb, go-github-com-templexxx-cpufeat,
go-github-com-templexxx-reedsolomon, go-github-com-templexxx-xor,
go-github-com-thejerf-suture, go-github-com-tjfoc-gmsm-sm4,
go-github-com-vitrun-qart-coding, go-github-com-vitrun-qart-gf256,
go-github-com-vitrun-qart-qr, go-github-com-xtaci-smux,
go-github-com-zillode-notify, go-golang-org-x-crypto-bcrypt,
go-golang-org-x-crypto-blowfish, go-golang-org-x-crypto-cast5,
go-golang-org-x-crypto-pbkdf2, go-golang-org-x-crypto-salsa20,
go-golang-org-x-crypto-tea, go-golang-org-x-crypto-twofish,
go-golang-org-x-crypto-xtea, go-golang-org-x-net-bpf,
go-golang-org-x-net-context, go-golang-org-x-net-internal-iana,
go-golang-org-x-net-ipv4, go-golang-org-x-net-ipv6,
go-golang-org-x-net-proxy, go-golang-org-x-sys-unix,
go-golang-org-x-text-transform, go-golang-org-x-text-unicode-norm,
go-golang-org-x-time-rate, godot, gpa, gpick, grfcodec, groff-minimal,
grub-hybrid, gsound, gspell, gst-transcoder, gst123, guile-colorized,
guile-dsv, guile-libctl, guile-ncurses-with-gpm, guile-wiredtiger,
guile2.0-bytestructures, guile2.0-git, guile2.0-gnutls, guile2.0-guix,
guile2.0-lib, gwl, harminv, hdf-java, heimdall, ht, hugin,
hunspell-dict-en, hunspell-dict-en-au, hunspell-dict-en-ca,
hunspell-dict-en-gb, hunspell-dict-en-gb-ize, hunspell-dict-en-us,
hunspell-dict-fr, hunspell-dict-fr-moderne, hunspell-dict-fr-reforme1990,
hunspell-dict-fr-toutesvariantes, ibutils, icedtea-web, igraph, ikiwiki,
imb-openmpi, imp, infiniband-diags, jamvm, java-aopalliance,
java-aqute-bnd-annotation, java-aqute-bndlib, java-aqute-libg,
java-assertj, java-bouncycastle-bcpkix, java-bouncycastle-bcprov, java-bsh,
java-classpathx-servletapi, java-cofoja, java-commons-bcel,
java-commons-beanutils, java-commons-collections, java-commons-csv,
java-commons-jexl, java-datanucleus-javax-persistence,
java-eclipse-jetty-http, java-eclipse-jetty-http, java-eclipse-jetty-io,
java-eclipse-jetty-io, java-eclipse-jetty-jmx, java-eclipse-jetty-jmx,
java-eclipse-jetty-perf-helper, java-eclipse-jetty-security,
java-eclipse-jetty-security, java-eclipse-jetty-server,
java-eclipse-jetty-server, java-eclipse-jetty-servlet,
java-eclipse-jetty-servlet, java-eclipse-jetty-test-helper,
java-eclipse-jetty-util, java-eclipse-jetty-util,
java-fasterxml-jackson-annotations, java-fasterxml-jackson-core,
java-fasterxml-jackson-databind, java-fasterxml-jackson-dataformat-xml,
java-fasterxml-jackson-dataformat-yaml,
java-fasterxml-jackson-modules-base-jaxb, java-fest-assert, java-fest-test,
java-fest-util, java-geronimo-xbean-reflect, java-guice,
java-guice-servlet, java-hdrhistogram, java-iq80-snappy, java-javaewah,
java-javax-inject, java-jboss-javassist, java-jboss-jms-api-spec,
java-jbzip2, java-jcommander, java-jdom, java-jeromq, java-jgit, java-jgit,
java-jmock-junit4, java-jmock-legacy, java-jnacl, java-kafka-clients,
java-lmax-disruptor, java-log4j-1.2-api, java-log4j-core, java-lz4,
java-mail, java-microemulator-cldc, java-mvel2, java-ops4j-base-io,
java-ops4j-base-lang, java-ops4j-base-monitors, java-ops4j-base-spi,
java-ops4j-base-store, java-ops4j-base-util, java-ops4j-base-util-property,
java-ops4j-pax-exam-core, java-ops4j-pax-exam-core-junit,
java-ops4j-pax-exam-core-spi, java-ops4j-pax-tinybundles, java-osgi-cmpn,
java-osgi-dto, java-osgi-framework, java-osgi-namespace-contract,
java-osgi-namespace-extender, java-osgi-namespace-service,
java-osgi-resource, java-osgi-service-cm,
java-osgi-service-component-annotations, java-osgi-service-jdbc,
java-osgi-service-log, java-osgi-service-metatype-annotations,
java-osgi-service-packageadmin, java-osgi-service-repository,
java-osgi-service-resolver, java-osgi-util-function,
java-osgi-util-promise, java-osgi-util-tracker, java-picard, java-picard,
java-plexus-archiver, java-plexus-classworlds,
java-plexus-container-default, java-plexus-container-default-bootstrap,
java-plexus-io, java-powermock-api-easymock, java-powermock-api-support,
java-powermock-core, java-powermock-modules-junit4,
java-powermock-modules-junit4-common, java-powermock-reflect,
java-slf4j-api, java-slf4j-simple, java-snakeyaml, java-snappy,
java-snappy, java-stax2-api, java-stringtemplate, java-stringtemplate,
java-testng, java-tomcat, java-tukaani-xz, java-woodstox-core,
java-xerial-core, javacc, javacc, jmtpfs, jo, john-the-ripper-jumbo,
js-datatables, js-es5-shim, js-highlight, js-html5shiv, js-json2,
js-mathjax, js-respond, js-selectize, js-strftime, kaiju, kallisto,
kbd-neo, kde-frameworkintegration, kdelibs4support, kdewebkit, keepassxc,
kentutils, khtml, kjs, kjsembed, kmediaplayer, kodi-cli, kross, leocad,
libdmtx, libdvbpsi, libebml, libechonest, libfabric, libgc-back-pointers,
libgdata, libgxps, libinfinity, liblinebreak, libmatekbd, libmatemixer,
libmatroska, libmd, libmediainfo, libnet, libngspice, liboauth, libproxy,
libserialport, libsignal-protocol-c, libsigrok, libsigrokdecode, libzen,
libzip, linenoise, linkchecker, linux-libre-arm-omap2plus, livemedia-utils,
loksh, lollypop, ltris, lua5.1-bitop, lv2-devel, lxc, lxqt-build-tools,
lziprecover, marco, masscan, mate, mate-applets, mate-control-center,
mate-media, mate-panel, mate-session-manager, mate-settings-daemon,
mate-terminal, mediainfo, meep, memcached, mescc-tools, mgba, minicom,
mksh, mkvtoolnix, monero, monero-core, mongodb, motti, mpb, mtr, mujs,
multitail, musescore, mygui, ncurses-with-gpm, network-manager-openvpn,
newsboat, nftables, nginx-documentation, ngspice, nlohmann-json-cpp, nml,
nototools, nxbelld, nzbget, ocaml-async, ocaml-async-extra,
ocaml-async-kernel, ocaml-async-rpc-kernel, ocaml-async-unix,
ocaml-camomile, ocaml-core, ocaml-core-kernel, ocaml-cstruct,
ocaml-easy-format, ocaml-ezjsonm, ocaml-graph, ocaml-hex, ocaml-jbuilder,
ocaml-lambda-term, ocaml-ocplib-endian, ocaml-piqi, ocaml-piqilib,
ocaml-ppx-bin-prot, ocaml-ppx-custom-printf, ocaml-ppx-expect,
ocaml-ppx-fail, ocaml-ppx-fields-conv, ocaml-ppx-jane, ocaml-ppx-pipebang,
ocaml-ppx-sexp-message, ocaml-ppx-sexp-value, ocaml-re, ocaml-uri,
ocaml-utop, ocaml-uuidm, ocaml-zed, ogre, ois, oksh, opari2,
open-adventure, openfoam, openmolar, openmpi-thread-multiple, openmw,
openrct2, openscenegraph, opensm, optcomp, os-prober, otf2, packagekit,
paml, papagayo, papi, parcimonie, pass-git-helper, pdsh,
perl-archive-extract, perl-b-keywords, perl-browser-open, perl-carp-always,
perl-cgi-session, perl-clone-pp, perl-convert-binhex,
perl-crypt-random-source, perl-data, perl-data-perl, perl-data-printer,
perl-data-record, perl-devel-cycle, perl-devel-hide, perl-file-basedir,
perl-file-configdir, perl-file-desktopentry, perl-file-mimeinfo,
perl-file-sharedir-dist, perl-gnupg-interface, perl-hash-fieldhash,
perl-html-scrubber, perl-html-tidy, perl-importer, perl-libintl-perl,
perl-libtime-parsedate, perl-libtime-period, perl-list-moreutils-xs,
perl-lwp-online, perl-mailtools, perl-math-random-isaac,
perl-math-random-isaac-xs, perl-math-random-secure, perl-mime-tools,
perl-moox, perl-moox-cmd, perl-moox-configfromfile,
perl-moox-file-configdir, perl-moox-handlesvia, perl-moox-late,
perl-moox-options, perl-net-dbus, perl-net-dbus-glib, perl-net-idn-encode,
perl-params-validationcompiler, perl-parse-recdescent,
perl-proc-invokeeditor, perl-ref-util-xs, perl-regexp-util,
perl-sort-naturally, perl-specio, perl-sub-info, perl-term-size-any,
perl-term-size-perl, perl-term-table, perl-test-command,
perl-test-cpan-meta, perl-test-cpan-meta-json, perl-test-eol,
perl-test-file-sharedir-dist, perl-test-memory-cycle, perl-test-notabs,
perl-test-taint, perl-test2-bundle-extended, perl-test2-plugin-nowarnings,
perl-text-markdown-discount, perl-text-template, perl-tree-xpathengine,
perl-type-tie, perl-type-tiny, perl-type-tiny-xs, perl-types-path-tiny,
perl-xml-filter-buffertext, perl-xml-handler-yawriter, perl-xml-sax-writer,
perl-xml-twig, perl-xml-xpathengine, perl-yaml-libyaml, phylip, pidentd,
plink-ng, pngcrush, polyml, premake, prison, procenv, protobuf-c, psm,
pt-scotch32, pulsemixer, pulseview, pydf, python-anaconda-client,
python-ansi2html, python-apache-libcloud, python-apispec,
python-asn1crypto, python-attrs, python-automat, python-backpack,
python-backports-csv, python-behave-web-api, python-betamax-matchers,
python-bottle, python-capstone, python-capturer, python-cbor, python-clf,
python-clyent, python-coloredlogs, python-colormath, python-conda,
python-constantly, python-dukpy, python-editdistance, python-flaky,
python-flasgger, python-flask-httpauth, python-flask-migrate,
python-flask-principal, python-flask-script, python-flex, python-genshi,
python-ghp-import, python-grako, python-graphviz,
python-guzzle-sphinx-theme, python-honcho, python-html5-parser,
python-humanfriendly, python-igraph, python-incremental,
python-internetarchive, python-jsonpatch, python-jsonpatch,
python-jsonpointer, python-jsonrpclib-pelix, python-linecache2,
python-lmdb, python-lzstring, python-m2r, python-marshmallow,
python-misaka, python-networkx2, python-nose-randomly, python-nose-timer,
python-numpy-next, python-packaging, python-parameterized, python-pastel,
python-pbr-minimal, python-pendulum, python-pkginfo, python-py-ubjson,
python-py2bit, python-pyaes, python-pyalsaaudio, python-pycanberra,
python-pyclipper, python-pydiff, python-pydot, python-pynacl,
python-pyodbc, python-pyqrcode, python-pyqt+qscintilla, python-pysocks,
python-pytest-capturelog, python-pytzdata, python-qscintilla, python-radon,
python-ratelimiter, python-regex, python-relatorio, python-rencode,
python-rfc3987, python-ruamel.yaml, python-schedule, python-schema,
python-schema, python-setuptools-scm-git-archive, python-smmap2,
python-spectra, python-sphinxcontrib-websupport, python-sql, python-sure,
python-swagger-spec-validator, python-tornado-http-auth, python-tqdm,
python-traceback2, python-twine, python-uniseg, python-uritemplate,
python-validate-email, python-verboselogs, python-xapian-bindings,
python-xenon, python-xsge, python2-anaconda-client, python2-aniso8601,
python2-ansi2html, python2-apache-libcloud, python2-apispec,
python2-asn1crypto, python2-attrs, python2-automat, python2-backpack,
python2-backports-csv, python2-behave-web-api, python2-betamax-matchers,
python2-booleanoperations, python2-bottle, python2-capstone,
python2-capturer, python2-clf, python2-clyent, python2-coloredlogs,
python2-colormath, python2-conda, python2-constantly, python2-couleur,
python2-defcon, python2-dukpy, python2-flaky, python2-flasgger,
python2-flask-httpauth, python2-flask-migrate, python2-flask-principal,
python2-flask-script, python2-flex, python2-genshi, python2-ghp-import,
python2-grako, python2-graphviz, python2-guzzle-sphinx-theme,
python2-honcho, python2-html5-parser, python2-htseq, python2-httpretty,
python2-humanfriendly, python2-incremental, python2-internetarchive,
python2-jsonpatch, python2-jsonpatch, python2-jsonpointer,
python2-jsonrpclib-pelix, python2-libmpsse, python2-linecache2,
python2-lmdb, python2-lzstring, python2-m2r, python2-marshmallow,
python2-misaka, python2-neo4j-driver, python2-networkx2,
python2-nose-randomly, python2-nose-timer, python2-numpy-next,
python2-packaging, python2-parameterized, python2-parse-type,
python2-pastel, python2-pbr-minimal, python2-pendulum, python2-pgpdump,
python2-pkginfo, python2-py2neo, python2-pyaes, python2-pyalsaaudio,
python2-pyclipper, python2-pydiff, python2-pydot, python2-pyodbc,
python2-pyopengl, python2-pysocks, python2-pytest-capturelog,
python2-pytzdata, python2-radon, python2-ratelimiter, python2-rednose,
python2-regex, python2-relatorio, python2-rencode,
python2-requests-toolbelt, python2-rfc3987, python2-roca-detect,
python2-ruamel.yaml, python2-schedule, python2-schema, python2-schema,
python2-setuptools-scm-git-archive, python2-smmap2, python2-spectra,
python2-sql, python2-steadymark, python2-sure,
python2-swagger-spec-validator, python2-tqdm, python2-traceback2,
python2-twine, python2-ufolib, python2-uniseg, python2-uritemplate,
python2-validate-email, python2-verboselogs, python2-xenon, python2-xsge,
qgpgme, qjson, qmidiroute, qscintilla, qtnetworkauth, qtremoteobjects,
qtspeech, quagga, qucs, qucs-s, r-annotationfilter, r-annotationhub,
r-aroma-light, r-auc, r-bbmle, r-bindr, r-bindrcpp, r-biovizbase, r-blob,
r-broom, r-calibrate, r-circlize, r-compare, r-complexheatmap,
r-copynumber, r-corrplot, r-crosstalk, r-cvst, r-dbplyr, r-ddalpha,
r-dendextend, r-deseq, r-dexseq, r-dimred, r-directlabels,
r-dirichletmultinomial, r-distillery, r-drr, r-edaseq, r-emdbook, r-energy,
r-ensembldb, r-erma, r-extremes, r-fastmatch, r-fastseg, r-fdrtool, r-ff,
r-ffbase, r-fit-models, r-fitdistrplus, r-fithic, r-forcats, r-gage,
r-genomicfiles, r-getoptlong, r-ggally, r-ggbio, r-ggdendro, r-ggrepel,
r-globaloptions, r-glue, r-gower, r-gprofiler, r-gqtlbase, r-gqtlstats,
r-gviz, r-gwascat, r-hardyweinberg, r-hitc, r-homo-sapiens, r-inline,
r-interactivedisplaybase, r-ipred, r-keggrest, r-ksamples, r-laeken,
r-lava, r-ldblock, r-limsolve, r-lmoments, r-lmtest, r-lpsolve,
r-lubridate, r-methylkit, r-mice, r-organismdbi, r-pcapp, r-pdist,
r-performanceanalytics, r-pkgconfig, r-png, r-powerlaw, r-prettyunits,
r-prodlim, r-progress, r-proxy, r-psych, r-qvalue, r-rcpproll, r-recipes,
r-reshape, r-rgraphviz, r-rlang, r-rmpi, r-rmtstat, r-rmysql, r-robust,
r-rook, r-rrcov, r-rsofia, r-shape, r-shiny, r-sm, r-snpstats, r-sp,
r-sparql, r-stringdist, r-suppdists, r-sushi, r-tgconfig, r-tgstat,
r-tidyselect, r-timedate, r-vcd, r-vioplot, r-xts, radare2, retux,
ritornello, rmath-standalone, roguebox-adventures, rosegarden, rss-bridge,
rtl-sdr, ruby-code-statistics, ruby-highline, ruby-httpclient,
ruby-multi-json, ruby-options, ruby-progress_bar, ruby-rubyzip, s-shell,
sakura, sbcl-cl-ppcre-unicode, sbcl-cl-uglify-js, sbcl-cl-unicode,
sbcl-iterate, sbcl-parse-js, sbcl-parse-number, scons-python2,
scorep-openmpi, scotch32, sigrok-cli, sigrok-firmware-fx2lafw,
simplescreenrecorder, smu, snd, sooperlooper, sorcer, spectrwm, spiped,
sqlite-with-fts3, stgit, syncthing, tadbit, texlive-bin, texlive-dvips,
texlive-fontname, texlive-fonts-amsfonts, texlive-fonts-cm,
texlive-fonts-ec, texlive-fonts-knuth-lib, texlive-fonts-latex,
texlive-fonts-rsfs, texlive-fonts-stmaryrd, texlive-fonts-txfonts,
texlive-generic-babel-english, texlive-generic-dehyph-exptl,
texlive-generic-epsf, texlive-generic-hyph-utf8, texlive-generic-ifxetex,
texlive-generic-pdftex, texlive-generic-tex-ini-files,
texlive-generic-unicode-data, texlive-latex-acmart, texlive-latex-acronym,
texlive-latex-amscls, texlive-latex-amsfonts, texlive-latex-amsmath,
texlive-latex-amsrefs, texlive-latex-anysize, texlive-latex-appendix,
texlive-latex-babel, texlive-latex-base, texlive-latex-bigfoot,
texlive-latex-blindtext, texlive-latex-capt-of, texlive-latex-changebar,
texlive-latex-cmap, texlive-latex-colortbl, texlive-latex-cyrillic,
texlive-latex-dinbrief, texlive-latex-draftwatermark, texlive-latex-eepic,
texlive-latex-enumitem, texlive-latex-environ, texlive-latex-eqparbox,
texlive-latex-eso-pic, texlive-latex-etoolbox, texlive-latex-expdlist,
texlive-latex-fancybox, texlive-latex-fancyhdr, texlive-latex-fancyvrb,
texlive-latex-filecontents, texlive-latex-filemod, texlive-latex-float,
texlive-latex-fncychap, texlive-latex-fontspec, texlive-latex-footmisc,
texlive-latex-framed, texlive-latex-g-brief, texlive-latex-galois,
texlive-latex-gcite, texlive-latex-geometry, texlive-latex-graphics,
texlive-latex-hyperref, texlive-latex-ifplatform, texlive-latex-jknapltx,
texlive-latex-l3kernel, texlive-latex-l3packages, texlive-latex-lh,
texlive-latex-listings, texlive-latex-mdwtools, texlive-latex-multirow,
texlive-latex-natbib, texlive-latex-oberdiek, texlive-latex-overpic,
texlive-latex-parskip, texlive-latex-pdfpages, texlive-latex-polyglossia,
texlive-latex-preview, texlive-latex-psfrag, texlive-latex-psnfss,
texlive-latex-pstool, texlive-latex-seminar, texlive-latex-subfigure,
texlive-latex-supertabular, texlive-latex-tabulary,
texlive-latex-threeparttable, texlive-latex-titlesec, texlive-latex-tools,
texlive-latex-trimspaces, texlive-latex-type1cm, texlive-latex-ucs,
texlive-latex-upquote, texlive-latex-url, texlive-latex-varwidth,
texlive-latex-wasysym, texlive-latex-wrapfig, texlive-latex-xcolor,
texlive-luatex-lualibs, texlive-metafont-base, texlive-metapost,
texlive-tex-plain, texlive-tex-texinfo, texlive-tiny, thc-ipv6, tidyp,
tklib, tmuxifier, tome4, toxic, translate-shell, trim-galore, tryton,
trytond, u-boot-odroid-c2, uglify-js, uim, uim-gtk, uim-qt, unbound,
unshield, vcsh, vim-fugitive, virtuoso-ose, vpnc-scripts, websockify,
wget2, wine-next, wine64, xautolock, xautomation, xdg-user-dirs,
xf86-video-freedreno, xmobar, xpra, xsel, xxd, xyce-parallel, xyce-serial,
z3, zathura-pdf-mupdf
*** 1403 package updates
0ad-data@0.0.22-alpha, 0ad@0.0.22-alpha, acct@6.6.4,
adwaita-icon-theme@3.26.0, aisleriot@3.22.4, allegro@5.2.2.0, alot@0.5.1,
alsa-lib@1.1.4.1, alsa-plugins@1.1.4, alsa-utils@1.1.4,
american-fuzzy-lop@2.49b, ansible@2.4.1.0, ant@1.10.1, apr-util@1.6.1,
apr@1.6.3, ardour@5.12, aria2@1.33.1, arm-none-eabi-nano-toolchain@6.4.0,
arm-none-eabi-toolchain@6.4.0, artanis@0.2.1-3, asciinema@1.4.0,
asn1c@0.9.28, aspell-dict-en@2017.01.22-0, at-spi2-atk@2.24.1,
at-spi2-core@2.24.1, atk@2.24.0, attica@5.39.0, audacity@2.2.0,
augeas@1.8.1, autoconf-archive@2017.09.28, autoconf@2.69, automake@1.15.1,
avr-binutils@2.28, awesome@4.2, awscli@1.11.185, babl@0.1.30, baloo@5.39.0,
baobab@3.26.1, bash-completion@2.7, bcftools@1.5, bdb@6.2.32, bdftopcf@1.1,
beets@1.4.5, biber@2.7, bigloo@4.3a, bind@9.11.2,
binutils-static-stripped-tarball@2.28, binutils@2.28, bison@3.0.4,
bitcoin-core@0.15.1, blast+@2.6.0, blender@2.79, bluefish@2.2.10,
bluez-qt@5.39.0, bluez@5.47, boost@1.64.0, borg@1.1.3, bowtie@2.3.2,
brasero@3.12.2, breeze-icons@5.39.0, bspwm@0.9.3, btrfs-progs-static@4.14,
btrfs-progs@4.14, bundler@1.15.4, busybox@1.26.2, bwa@0.7.17,
c-ares@1.13.0, c-toxcore@0.1.10, cairo-xcb@1.14.10, cairo@1.14.10,
calcurse@4.2.2, calf@0.90.0, calibre@3.11.1, capnproto@0.6.1, catimg@2.4.0,
cbatticon@1.6.6, ccid@1.4.28, cd-hit@4.6.8, cdogs-sdl@0.6.6,
certbot@0.19.0, check@0.11.0, chess@6.2.5, chromaprint@1.4.2, clang@3.6.2,
clang@3.7.1, clang@3.8.1, clang@3.9.1, claws-mail@3.15.1, clisp@2.49-60,
clustal-omega@1.2.4, clutter-gst@3.0.24, clutter@1.26.2, cmark@0.28.0,
cmocka@1.1.1, coda@2.18.3, conkeror@1.1.0, connman@1.35, coq@8.7.0,
coreutils-minimal@8.27, coreutils@8.27, cppcheck@1.81, cpphs@1.20.8,
cpupower@4.14.3, crawl@0.20.1, csound@6.09.1, cuirass@0.0.1-10.9cfea9f,
cups-filters@1.17.7, cups-minimal@2.2.4, cups@2.2.4, curl@7.55.1,
curl@7.57.0, cutadapt@1.14, cvs-fast-export@1.43, darktable@2.2.5,
datamash@1.2, dbus@1.10.22, dconf-editor@3.26.2, dconf@0.26.1,
dealii-openmpi@8.5.1, dealii@8.5.1, deeptools@2.5.1, dejagnu@1.6.1,
deutex@5.0.0, devhelp@3.26.0, di@4.44, dialog@1.3-20170509, diamond@0.9.13,
diffoscope@88, diffutils@3.6, ding-libs@0.6.1, dlib@19.7, dnsmasq@2.78,
dovecot@2.2.33.2, drumkv1@0.8.5, dtc@1.4.5, dub@1.5.0, dunst@1.2.0,
e2fsck-static@1.43.6, e2fsprogs@1.43.6, ed@1.14.2, edi@0.5.1, efl@1.20.6,
electrum@3.0, elixir@1.5.2, elogind@232.4, emacs-adaptive-wrap@0.5.1,
emacs-ahungry-theme@1.8.0, emacs-async@1.9.2, emacs-auctex@11.91.0,
emacs-cider@0.15.0, emacs-cyberpunk-theme@1.19, emacs-ebuild-mode@1.37,
emacs-elfeed@2.2.0, emacs-emms@4.4, emacs-ess@16.10, emacs-evil@1.2.13,
emacs-exwm@0.15, emacs-f@0.19.0, emacs-guix@0.3.3, emacs-helm@2.8.5,
emacs-hl-todo@1.8.0, emacs-hydra@0.14.0, emacs-iedit@0.9.9.9,
emacs-lua-mode@20151025.1-652e299cb, emacs-magit-popup@2.12.0,
emacs-markdown-mode@2.3, emacs-minimal@25.3, emacs-neotree@0.5.2,
emacs-no-x-toolkit@25.3, emacs-no-x@25.3, emacs-org@20171116,
emacs-pdf-tools@0.80, emacs-queue@0.2, emacs-s@1.12.0, emacs-slime@2.20,
emacs-undo-tree@0.6.6, emacs-visual-fill-column@1.11,
emacs-with-editor@2.7.0, emacs-yaml-mode@0.0.13, emacs-yasnippet@0.12.2,
emacs@25.3, emacspeak@46.0, enlightenment@0.22.1, eog@3.26.2,
epiphany@3.24.4, erlang@20.1, ethtool@4.13, etl@0.04.22,
eudev-with-hwdb@3.2.2, eudev@3.2.2, evince@3.26.0,
evolution-data-server@3.24.3, exfat-utils@1.2.7, exim@4.89.1, exiv2@0.26,
expat@2.2.1, extra-cmake-modules@5.39.0, eyed3@0.8, fabric@1.13.2,
fasttree@2.1.10, faust@0.9.90, faust@2.1.0, fdisk@2.0.0a1, feh@2.22.2,
ffmpeg@3.3.5, ffmpeg@3.4, file-roller@3.26.2, file@5.30, filezilla@3.27.1,
fio@3.2, fish-guix@0.1.2.1, fish@2.7.0, fizmo@0.8.4, flex@2.6.4,
fluidsynth@1.1.8, font-cns11643@98.1.20170524, font-gnu-unifont@10.0.06,
font-go@20170330-1.f03a046, font-google-noto@20170403, font-hack@3.000,
font-iosevka@1.12.5, fontconfig@2.12.3, fontforge@20170731, fossil@2.2,
fraggenescan@1.30, freeciv@2.5.7, freedoom@0.11.3, freefall@4.14.3,
freeipmi@1.5.7, freetype@2.8, freexl@1.0.4, fuse-exfat@1.2.7, gajim@0.16.8,
gamine@1.5, ganv@1.5.4-1.12f7d6b04,
gcc-cross-sans-libc-arm-none-eabi@6.4.0, gcc-objc++@4.9.4,
gcc-objc++@5.4.0, gcc-objc++@6.4.0, gcc-objc++@7.2.0, gcc-objc@4.9.4,
gcc-objc@5.4.0, gcc-objc@6.4.0, gcc-objc@7.2.0, gcc-toolchain@6.4.0,
gcc-toolchain@7.2.0, gcc@4.9.4, gcc@5.4.0, gcc@6.4.0, gcc@7.2.0,
gcl@2.6.12-1.5956140, gcompris@17.05, gd@2.2.5, gdb-arm-none-eabi@8.0.1,
gdb@8.0.1, gdbm@1.13, gdk-pixbuf+svg@2.36.10, gdk-pixbuf@2.36.10,
gdm@3.24.2, gedit@3.22.1, geoclue@2.4.7, getmail@5.4, gexiv2@0.10.6,
gfortran@6.4.0, gfortran@7.2.0, ghc-aeson-qq@0.8.2, ghc-alex@3.2.3,
ghc-array@0.5.2.0, ghc-asn1-encoding@0.9.5, ghc-asn1-types@0.3.2,
ghc-async@2.1.1.1, ghc-auto-update@0.1.4, ghc-base-orphans@0.6,
ghc-blaze-builder@0.4.0.2, ghc-conduit@1.2.12.1, ghc-happy@1.19.8,
ghc-http-client-tls@0.3.4.1, ghc-http-client@0.5.6.1,
ghc-tasty-rerun@1.1.7, ghc-wai-extra@3.0.13.1, ghc-wai@3.2.1.1,
ghc-x11@1.8, ghc-xmonad-contrib@0.13, ghc@8.0.2, ghostscript-with-x@9.21,
ghostscript@9.21, giac-xcas@1.4.9-33, git-modes@1.2.6, git@2.15.1,
gjs@1.48.6, glade@3.20.2, glib-networking@2.54.1, glib@2.52.3,
glibmm@2.50.1, global@6.5.7, glog@0.3.5, glpk@4.63, gnome-autoar@0.2.2,
gnome-backgrounds@3.26.2, gnome-bluetooth@3.20.1, gnome-calculator@3.26.0,
gnome-calendar@3.26.2, gnome-control-center@3.24.3, gnome-desktop@3.24.2,
gnome-dictionary@3.24.0, gnome-disk-utility@3.26.2, gnome-keyring@3.20.1,
gnome-klotski@3.22.2, gnome-maps@3.26.2, gnome-mines@3.26.0,
gnome-mpv@0.13, gnome-online-accounts@3.24.3, gnome-session@3.24.1,
gnome-settings-daemon@3.24.3, gnome-shell-extensions@3.24.3,
gnome-shell@3.24.3, gnome-sudoku@3.26.0, gnome-system-monitor@3.26.0,
gnome-terminal@3.26.2, gnome-themes-standard@3.22.3,
gnome-tweak-tool@3.24.1, gnome@3.24.3, gnuastro@0.4, gnucash@2.6.18,
gnumeric@1.12.36, gnupg@1.4.22, gnupg@2.0.30, gnupg@2.2.3, gnurl@7.56.1-2,
gnutls@3.5.13, go@1.9.2, gobby@0.5.0, gobject-introspection@1.52.1,
goffice@0.10.36, gparted@0.30.0, gperf@3.1, gptfdisk@1.0.3,
graphicsmagick@1.3.26, graphite2@1.3.10, graphviz@2.40.1, grilo@0.3.3,
gsettings-desktop-schemas@3.24.1, gsl@2.4, gst-libav@1.12.3,
gst-plugins-bad@1.12.3, gst-plugins-base@1.12.3, gst-plugins-good@1.12.3,
gst-plugins-ugly@1.12.3, gstreamer@1.12.3, gtk+@3.22.21, gtkmm@3.22.0,
gtksourceview@3.24.4, guile-git@0.0-4.951a32c, guile-gnome@2.16.5,
guile-lib@0.2.5.1, guile-rsvg@2.18.1-0.05c6a2f, guile-ssh@0.11.2,
guile-static-stripped-tarball@2.2.2, guile-static-stripped@2.2.2,
guile-wisp@0.9.8, guile2.0-ssh@0.11.2, guile2.2-gnutls@3.5.13,
guile2.2-lib@0.2.5.1, guile2.2-ssh@0.11.2, guile@2.0.14, guile@2.2.2,
guile@2.2.3, guitarix-lv2@0.36.1, guitarix@0.36.1, guix@0.13.0-14.91c9b5d,
gvfs@1.32.1, gzochi@0.11.1, harfbuzz@1.5.1, hdf4-alt@4.2.13, hdf4@4.2.13,
hdf5-parallel-openmpi@1.8.19, hdf5@1.8.19, hicolor-icon-theme@0.17,
higan@106, hop@3.1.0-pre2, hplip@3.17.10, htseq@0.9.1, htslib@1.5,
httpd@2.4.27, hubbub@0.3.4, hunspell@1.6.1, hwloc@1.11.8, hyperrogue@10.0g,
i3-wm@4.14.1, ibus-libpinyin@1.9.2, ibus@1.5.17, icecat@52.3.0-gnu1,
icedtea@3.6.0, idr@2.0.3, ijs@9.21, imagemagick@6.9.9-23,
ingen@0.0.0-2.cc4a4db33, iproute2@4.14.1, irssi@1.0.5, isl@0.18,
iso-codes@3.76, isync@1.3.0, jack2@1.9.11-RC1, jasper@2.0.14,
java-htsjdk@2.3.0, java-jmock@2.8.2, java-swt@4.7.1a, jellyfish@2.2.7,
jemalloc@5.0.1, json-glib@1.2.8, jsoncpp@1.8.2, julia@0.6.0,
kactivities-stats@5.39.0, kactivities@5.39.0, kapidox@5.39.0,
karchive@5.39.0, kauth@5.39.0, kbookmarks@5.39.0, kcmutils@5.39.0,
kcodecs@5.39.0, kcompletion@5.39.0, kconfig@5.39.0, kconfigwidgets@5.39.0,
kcoreaddons@5.39.0, kcrash@5.39.0, kdbusaddons@5.39.0, kdeclarative@5.39.0,
kded@5.39.0, kdesignerplugin@5.39.0, kdesu@5.39.0, kdevelop@5.1.2,
kdevplatform@5.1.2, kdnssd@5.39.0, kdoctools@5.39.0, kemoticons@5.39.0,
kfilemetadata@5.39.0, kglobalaccel@5.39.0, kguiaddons@5.39.0, khal@0.9.8,
ki18n@5.39.0, kicad-library@4.0.6, kicad@4.0-2.5f4599f, kiconthemes@5.39.0,
kidletime@5.39.0, kimageformats@5.39.0, kinit@5.39.0, kio@5.39.0,
kitemmodels@5.39.0, kitemviews@5.39.0, kjobwidgets@5.39.0,
knewstuff@5.39.0, knot@2.6.3, knotifications@5.39.0, knotifyconfig@5.39.0,
kodi@18.0_alpha-7-67fd70f, kpackage@5.39.0, kparts@5.39.0, kpeople@5.39.0,
kplotting@5.39.0, kpty@5.39.0, krunner@5.39.0, kservice@5.39.0,
ksyntaxhighlighting@5.39.0, ktexteditor@5.39.0, ktextwidgets@5.39.0,
kunitconversion@5.39.0, kwallet@5.39.0, kwayland@5.39.0,
kwidgetsaddons@5.39.0, kwindowsystem@5.39.0, kxmlgui@5.39.0,
kxmlrpcclient@5.39.0, lame@3.100, lapack@3.7.1, ldb@1.3.0, ldc@0.17.4,
ldc@1.1.1, leptonica@1.74.4, letsencrypt@0.19.0, lftp@4.8.3, libaacs@0.9.0,
libarchive@3.3.1, libass@0.14.0, libassuan@2.4.4, libbluray@1.0.1,
libcdr@0.1.4, libchamplain@0.12.16, libconfuse@3.2.1, libcroco@0.6.12,
libcss@0.7.0, libdom@0.3.2, libdrm@2.4.83, libdvdnav@5.0.3,
libetonyek@0.1.7, libevent@2.1.8, libextractor@1.6, libexttextcat@3.4.5,
libffcall@2.0, libfilezilla@0.11.1, libfreehand@0.1.2, libgcrypt@1.7.8,
libgee@0.20.0, libgit2@0.26.0, libgnome-games-support@1.2.3,
libgnomekbd@3.22.0.1, libgpg-error@1.27, libgtop@2.38.0,
libgweather@3.26.1, libidn2@2.0.2, libidn2@2.0.4, libinput-minimal@1.7.3,
libinput@1.7.3, libjaylink@0.1.0-2.699b700, libjpeg-turbo@1.5.2,
libksysguard@5.11.2, liblangtag@0.6.2, libmateweather@1.18.1,
libmicrohttpd@0.9.57, libmspack@0.6, libmwaw@0.3.12, libnftnl@1.0.8,
libnl@3.4.0, libnsgif@0.2.0, libnspsl@0.1.2, libntlm@1.4, libodfgen@0.1.6,
libpagemaker@0.0.3, libpeas@1.22.0, libpinyin@2.1.0, libpipeline@1.4.2,
libpng@1.2.59, libpng@1.6.29, libpsl@0.19.1, libpthread-stubs@0.4,
libpwquality@1.4.0, libraw@0.18.5, libreoffice@5.3.7.2, libressl@2.6.3,
librevenge@0.0.4, librsvg@2.40.18, libsigsegv@2.11, libsodium@1.0.15,
libsoup@2.60.2, libspectre@0.2.8, libssh@0.7.5, libstaroffice@0.0.5,
libstdc++-doc@5.4.0, libsvgtiny@0.1.6, libtasn1@4.12, libtiff@4.0.8,
libtorrent-rasterbar@1.1.5, libuninameslist@20170807, libunwind@1.2.1,
liburcu@0.10.0, libuv@1.14.1, libva@1.8.3, libvirt@3.7.0, libvisio@0.1.6,
libwacom@0.25, libwapcaplet@0.4.0, libwebp@0.6.1, libwnck@3.24.1,
libwpd@0.10.2, libwpg@0.3.2, libwps@0.4.7, libxcursor@1.1.15,
libxfont@2.0.3, libxres@1.2.0, libzmf@0.0.2, lightning@2.1.2,
lilypond@2.19.63, limnoria@2017.10.01, linux-libre-arm-generic@4.14.3,
linux-libre@4.14.3, linux-libre@4.4.103, linux-libre@4.9.66, lirc@0.10.1,
llvm@3.8.1, llvm@3.9.1, lmdb@0.9.21, lua@5.2.4, lua@5.3.4,
lvm2-static@2.02.176, lvm2@2.02.176, lynx@2.8.9dev.15, lz4@1.8.0,
lzip@1.18, magit@2.11.0, mailutils@3.4, maim@5.4.68, man-db@2.7.6.1,
man-pages@4.14, manaplus@1.7.6.10, mariadb@10.1.26, mate-desktop@1.18.0,
mate-icon-theme@1.18.2, mate-menus@1.18.0, mate-themes@3.22.13,
maxima@5.41.0, mbedtls-apache@2.6.0, mcelog@154, mercurial@4.4.1, mes@0.11,
mesa-headers@17.2.1, mesa@17.2.1, meson@0.43.0, metabat@2.12.1,
mg@20170401, minetest@0.4.16, miniupnpc@2.0.20171102, miso@0.5.4,
mit-krb5@1.15.1, mobile-broadband-provider-info@20170310,
modemmanager-qt@5.39.0, moe@1.9, moka-icon-theme@5.3.6, moreutils@0.61,
mosh@1.3.2, mozjs@24.2.0, mozjs@38.2.1.rc0, mpd@0.20.11, mpg123@1.25.7,
mpv@0.27.0, multiqc@1.3, munge@0.5.13, musl@1.1.18, mutt@1.9.1,
mutter@3.24.4, mysql@5.7.20, nano@2.9.1, nasm@2.13.01, nautilus@3.24.2.1,
ncmpcpp@0.8.1, neofetch@3.3.0, neomutt@20171027, net-tools@1.60-0.479bb4a,
netpbm@10.78.3, netsurf@3.7, network-manager-applet@1.8.4,
network-manager@1.8.4, networkmanager-qt@5.39.0, nginx@1.12.2, nim@0.17.0,
nmap@7.60, nnn@1.5, no-more-secrets@0.3.3, node@8.9.1,
notmuch-addrlookup-c@8-1.88f156d, notmuch@0.25.2, npth@1.5, nsgenbind@0.5,
nspr@4.17, nss-certs@3.34.1, nss-pam-ldapd@0.9.8, nss@3.34,
ntfs-3g@2017.3.23, nyacc@0.82.4, ocaml-findlib@1.7.3, ocaml@4.02.3,
offlineimap@7.1.4, ola@0.10.5, openh264@1.7.0, openjpeg@2.3.0,
openldap@2.4.45, openmpi@1.10.7, openntpd@6.2p3, openocd@0.10.0,
openssh@7.6p1, openssl@1.0.2l, openssl@1.0.2m, openssl@1.1.0g,
openttd@1.7.1, openvpn@2.4.4, opus-tools@0.1.10, opus@1.2.1, orc@0.4.28,
orca@3.26.0, orfm@0.7.1, osip@5.0.0, owncloud-client@2.3.4,
oxygen-icons@5.39.0, p11-kit@0.23.9, p4est-openmpi@2.0, p4est@2.0,
pango@1.40.12, par2cmdline@0.7.4, parallel@20171122, pari-gp@2.9.3,
pcb@4.0.2, pciutils@3.5.5, pcsc-lite@1.8.22, perf@4.14.3,
perl-anyevent-i3@0.17, perl-anyevent@7.14, perl-business-ismn@1.131,
perl-carp-clan@6.06, perl-catalyst-runtime@5.90115,
perl-class-inspector@1.31, perl-class-tiny@1.006, perl-config-any@0.32,
perl-context-preserve@0.02, perl-cpan-meta-check@0.014,
perl-crypt-openssl-bignum@0.08, perl-data-dumper-concise@2.023,
perl-datetime-event-ical@0.13, perl-datetime-event-recurrence@0.19,
perl-datetime-format-flexible@0.28, perl-datetime-format-natural@1.05,
perl-datetime-format-strptime@1.73, perl-datetime-format-w3cdtf@0.07,
perl-datetime-locale@1.16, perl-datetime-set@0.3900,
perl-datetime-timezone@2.13, perl-datetime@1.43, perl-dbd-mysql@4.043,
perl-devel-stacktrace-ashtml@0.15, perl-devel-stacktrace@2.03,
perl-devel-symdump@2.18, perl-email-mime-contenttype@1.022,
perl-email-mime@1.946, perl-email-sender@1.300031, perl-email-simple@2.214,
perl-extutils-pkgconfig@1.16, perl-file-find-rule-perl@1.15,
perl-file-path@2.13, perl-file-remove@1.57,
perl-file-sharedir-install@0.11, perl-file-sharedir@1.104,
perl-geo-ip@1.51, perl-getopt-long-descriptive@0.100, perl-html-lint@2.26,
perl-html-template@2.97, perl-html-tree@5.07, perl-http-cookies@6.04,
perl-image-exiftool@10.55, perl-json-any@1.39, perl-list-moreutils@0.426,
perl-log-log4perl@1.49, perl-mime-charset@1.012.2, perl-mime-types@2.14,
perl-modern-perl@1.20170117, perl-module-scandeps@1.24,
perl-moosex-types-datetime@0.13, perl-mro-compat@0.13, perl-net-dns@1.13,
perl-net-server@2.009, perl-net-ssleay@1.81, perl-parse-yapp@1.2,
perl-regexp-common@2017060201, perl-safe-isa@1.000008,
perl-sub-exporter-progressive@0.001013, perl-test-harness@3.39,
perl-test-leaktrace@0.16, perl-test-script@1.20,
perl-test-www-mechanize-psgi@0.37, perl-test-www-mechanize@1.48,
perl-text-table@1.133, perl-tie-cycle@1.225, perl-tk@804.034,
perl-unicode-utf8@0.62, perl-uri-find@20160806, perl-www-mechanize@1.86,
perl-xml-atom@0.42, perl-xml-libxml@2.0132, perl-xml-namespacesupport@1.12,
perl@5.26.0, petsc-complex-openmpi@3.8.0, petsc-complex@3.8.0,
petsc-openmpi@3.8.0, petsc@3.8.0, php@7.1.12, pkg-config@0.29.2,
plasma-framework@5.39.0, pngcrunch@1.8.13, poppler-qt4@0.59.0,
poppler-qt5@0.59.0, poppler@0.59.0, postgresql@10.1, postgresql@9.6.6,
potrace@1.15, powertabeditor@2.0.0-alpha10, powertop@2.9, presentproto@1.1,
proplib@0.0.0-2.4c46ecbe7, prosody@0.10.0, proteinortho@5.16b,
protobuf@3.5.0, pspp@1.0.1, pulseaudio@11.0, pv@1.6.6, pybitmessage@0.6.2,
python-acme@0.19.0, python-alembic@0.9.5, python-aniso8601@1.3.0,
python-arrow@0.10.0, python-astroid@1.5.3, python-autopep8@1.3.2,
python-biom-format@2.1.6, python-biopython@1.70, python-botocore@1.7.9,
python-cairocffi@0.8.0, python-cffi@1.11.2, python-chardet@3.0.4,
python-cleo@0.6.1, python-click-log@0.2.0, python-click-threading@0.4.3,
python-configargparse@0.12.0, python-cryptography-vectors@2.0.3,
python-cryptography@2.0.3, python-cython@0.27, python-decorator@4.1.2,
python-django@1.10.8, python-docutils@0.14, python-efl@1.20.0,
python-file@5.30, python-fonttools@3.15.1, python-future@0.16.0,
python-gst@1.12.3, python-h5py@2.7.0, python-hacking@0.13.0,
python-html5lib@1.0b10, python-hy@0.13.0, python-icalendar@4.0.0,
python-idna@2.5, python-ipython@5.3.0, python-jinja2@2.9.6,
python-libvirt@3.7.0, python-lxml@3.8.0, python-lz4@0.10.1,
python-matplotlib-documentation@2.0.2, python-matplotlib@2.0.2,
python-minimal@3.5.3, python-mock@2.0.0, python-mutagen@1.38,
python-nbformat@4.3.0, python-netaddr@0.7.19, python-netcdf4@1.2.9,
python-notmuch@0.25.2, python-numexpr@2.6.4, python-orator@0.9.7,
python-paramiko@2.1.2, python-parsedatetime@2.4, python-pbr@3.0.1,
python-peewee@2.10.2, python-pep8@1.7.0, python-plastid@0.4.8,
python-prompt-toolkit@1.0.15, python-protobuf@3.4.0,
python-psycopg2@2.7.3.1, python-pyaml@17.7.2, python-pyasn1@0.2.3,
python-pycodestyle@2.3.1, python-pyflakes@1.0.0, python-pygit2@0.26.0,
python-pygments@2.2.0, python-pygobject@3.24.1, python-pyicu@1.9.8,
python-pyjwt@1.5.3, python-pylast@2.0.0, python-pylint@1.7.2,
python-pyopenssl@17.3.0, python-pyparsing@2.2.0, python-pyqt@5.9,
python-pysam@0.11.2.2, python-pytz@2017.3, python-pyxb@1.2.6,
python-requests-toolbelt@0.8.0, python-requests@2.13.0, python-rpy2@2.9.0,
python-s3transfer@0.1.11, python-scikit-learn@0.19.1, python-scipy@0.19.1,
python-sge-pygame@1.5.1, python-sip@4.19.3, python-sphinx-rtd-theme@0.2.4,
python-sphinx@1.6.3, python-sqlparse@0.2.4, python-sympy@1.1.1,
python-tmx@1.10, python-tox@2.8.1, python-twisted@17.1.0,
python-unidecode@0.04.21, python-vobject@0.9.5, python-xcffib@0.5.1,
python2-alembic@0.9.5, python2-arrow@0.10.0, python2-astroid@1.5.3,
python2-autopep8@1.3.2, python2-biom-format@2.1.6, python2-biopython@1.70,
python2-botocore@1.7.9, python2-bx-python@0.7.3, python2-cairocffi@0.8.0,
python2-cffi@1.11.2, python2-chardet@3.0.4, python2-cleo@0.6.1,
python2-cliapp@1.20170823, python2-configargparse@0.12.0,
python2-cryptography-vectors@2.0.3, python2-cryptography@2.0.3,
python2-cython@0.27, python2-decorator@4.1.2, python2-django@1.10.8,
python2-docutils@0.14, python2-efl@1.20.0, python2-file@5.30,
python2-flake8@2.5.4, python2-fonttools@3.15.1, python2-future@0.16.0,
python2-gst@1.12.3, python2-h5py@2.7.0, python2-hacking@0.13.0,
python2-html5lib@1.0b10, python2-hy@0.13.0, python2-idna@2.5,
python2-ipython@5.3.0, python2-jinja2@2.9.6, python2-libvirt@3.7.0,
python2-lxml@3.8.0, python2-lz4@0.10.1,
python2-matplotlib-documentation@2.0.2, python2-matplotlib@2.0.2,
python2-mutagen@1.38, python2-nbformat@4.3.0, python2-netaddr@0.7.19,
python2-netcdf4@1.2.9, python2-notmuch@0.25.2, python2-numexpr@2.6.4,
python2-orator@0.9.7, python2-paramiko@2.1.2, python2-parsedatetime@2.4,
python2-pbr@3.0.1, python2-peewee@2.10.2, python2-pep8@1.7.0,
python2-plastid@0.4.8, python2-prompt-toolkit@1.0.15,
python2-protobuf@3.4.0, python2-psycopg2@2.7.3.1, python2-pyaml@17.7.2,
python2-pyasn1@0.2.3, python2-pycodestyle@2.3.1, python2-pygit2@0.26.0,
python2-pygments@2.2.0, python2-pygobject@3.24.1, python2-pyicu@1.9.8,
python2-pyjwt@1.5.3, python2-pylast@2.0.0, python2-pylint@1.7.2,
python2-pyopenssl@17.3.0, python2-pyparsing@2.2.0, python2-pyqt@5.9,
python2-pysam@0.11.2.2, python2-pytest@3.0.7, python2-pytz@2017.3,
python2-pyxb@1.2.6, python2-rpython@0.2.1, python2-s3transfer@0.1.11,
python2-scikit-learn@0.19.1, python2-scipy@0.19.1,
python2-sge-pygame@1.5.1, python2-sip@4.19.3,
python2-sphinx-rtd-theme@0.2.4, python2-sqlparse@0.2.4,
python2-sympy@1.1.1, python2-tmx@1.10, python2-tox@2.8.1,
python2-ttystatus@0.35, python2-twisted@17.1.0, python2-unidecode@0.04.21,
python2-unittest2@1.1.0, python2-vobject@0.9.5, python2-xcffib@0.5.1,
python@3.5.3, pzstd@1.3.2, qemu-minimal@2.10.1, qemu@2.10.1,
qsyncthingtray@0.5.8, qt@5.9.3, qtbase@5.9.3, qtcanvas3d@5.9.3,
qtcharts@5.9.3, qtconnectivity@5.9.3, qtdatavis3d@5.9.3,
qtdeclarative@5.9.3, qtgamepad@5.9.3, qtgraphicaleffects@5.9.3,
qtimageformats@5.9.3, qtlocation@5.9.3, qtmultimedia@5.9.3, qtox@1.13.0,
qtpurchasing@5.9.3, qtquickcontrols2@5.9.3, qtquickcontrols@5.9.3,
qtractor@0.8.4, qtscript@5.9.3, qtscxml@5.9.3, qtsensors@5.9.3,
qtserialbus@5.9.3, qtserialport@5.9.3, qtsvg@5.9.3, qttools@5.9.3,
qtwayland@5.9.3, qtwebchannel@5.9.3, qtwebkit@5.9.1, qtwebsockets@5.9.3,
qtx11extras@5.9.3, qtxmlpatterns@5.9.3, qutebrowser@0.11.0, r-ade4@1.7-8,
r-affy@1.56.0, r-affyio@1.48.0, r-annotate@1.56.1, r-annotationdbi@1.40.0,
r-annotationforge@1.20.0, r-ape@5.0, r-backports@1.1.1,
r-bamsignals@1.10.0, r-batchjobs@1.7, r-bh@1.65.0-1, r-bigmemory@4.5.31,
r-biobase@2.38.0, r-bioccheck@1.14.0, r-biocgenerics@0.24.0,
r-biocinstaller@1.28.0, r-biocparallel@1.12.0, r-biocstyle@2.6.0,
r-biocviews@1.46.0, r-biomart@2.34.0, r-biostrings@2.46.0, r-bit64@0.9-7,
r-bookdown@0.5, r-boot@1.3-20, r-bsgenome@1.46.0, r-car@2.1-6,
r-caret@6.0-77, r-category@2.44.0, r-checkmate@1.8.5, r-chipseq@1.28.0,
r-chron@2.3-51, r-commonmark@1.4, r-copywriter@2.10.0, r-cowplot@0.9.1,
r-crayon@1.3.4, r-curl@3.0, r-data-table@1.10.4-3, r-dbi@0.7,
r-delayedarray@0.4.1, r-desc@1.1.1, r-deseq2@1.18.1, r-devtools@1.13.4,
r-dnacopy@1.52.0, r-doparallel@1.0.11, r-dplyr@0.7.4, r-edger@3.20.1,
r-evaluate@0.10.1, r-fastcluster@1.1.24, r-fastica@1.2-1, r-flexmix@2.3-14,
r-foreign@0.8-69, r-formatr@1.5, r-formula@1.2-2, r-gdata@2.18.0,
r-gdtools@0.1.6, r-genefilter@1.60.0, r-geneplotter@1.56.0,
r-genomation@1.10.0, r-genomationdata@1.10.0, r-genomeinfodb@1.14.0,
r-genomeinfodbdata@0.99.1, r-genomicalignments@1.14.1,
r-genomicfeatures@1.30.0, r-genomicranges@1.30.0, r-getopt@1.20.1,
r-ggbeeswarm@0.6.0, r-git2r@0.19.0, r-glmnet@2.0-13, r-go-db@3.5.0,
r-googlesheets@0.2.2, r-gostats@2.44.0, r-graph@1.56.0, r-gridextra@2.3,
r-grohmm@1.12.0, r-gseabase@1.40.1, r-hmisc@4.0-3, r-hms@0.4.0,
r-htmltools@0.3.6, r-htmlwidgets@0.9, r-httpuv@1.3.5, r-httr@1.3.1,
r-igraph@1.1.2, r-impute@1.52.0, r-iranges@2.12.0, r-irlba@2.3.1,
r-jsonlite@1.5, r-knitr@1.17, r-knitrbootstrap@1.0.1, r-lambda-r@1.2,
r-lazyeval@0.2.1, r-limma@3.34.2, r-lme4@1.1-14, r-maldiquant@1.17,
r-matrix@1.2-12, r-mclust@5.4, r-mgcv@1.8-22, r-minimal@3.4.3,
r-motifrg@1.22.0, r-msnbase@2.4.0, r-msnid@1.12.1, r-multitaper@1.0-14,
r-mutationalpatterns@1.4.1, r-mzid@1.16.0, r-mzr@2.12.0, r-openssl@0.9.9,
r-optparse@1.4.4, r-org-ce-eg-db@3.5.0, r-org-dm-eg-db@3.5.0,
r-org-hs-eg-db@3.5.0, r-org-mm-eg-db@3.5.0, r-pbapply@1.3-3,
r-pcamethods@1.70.0, r-plotly@4.7.1, r-plotrix@3.6-6, r-pracma@2.1.1,
r-preprocesscore@1.40.0, r-protgenerics@1.10.0, r-pryr@0.1.3,
r-purrr@0.2.4, r-qtl@1.41-6, r-quantreg@5.34, r-r-utils@2.6.0, r-r6@2.2.2,
r-ranger@0.8.0, r-rann@2.5.1, r-rbgl@1.54.0, r-rcas@1.3.4, r-rcpp@0.12.14,
r-rcpparmadillo@0.8.100.1.0, r-rcppeigen@0.3.3.3.1, r-rcppprogress@0.4,
r-readr@1.1.1, r-rhdf5@2.22.0, r-rhtslib@1.10.0, r-rmarkdown@1.8,
r-robustbase@0.92-8, r-rsamtools@1.30.0, r-rsqlite@2.0, r-rstudioapi@0.7,
r-rtracklayer@1.38.0, r-s4vectors@0.16.0, r-scales@0.5.0,
r-segmented@0.5-2.2, r-seqinr@3.4-5, r-seqlogo@1.44.0, r-seqminer@6.0,
r-seqpattern@1.10.0, r-servr@0.8, r-sfsmisc@1.1-1, r-shortread@1.36.0,
r-sn@1.5-1, r-spams@2.6-2017-03-22, r-sparsem@1.77, r-statmod@1.4.30,
r-stringi@1.1.6, r-summarizedexperiment@1.8.0, r-sva@3.26.0,
r-svglite@1.2.1, r-systempiper@1.12.0, r-tclust@1.3-1, r-tibble@1.3.4,
r-tidyr@0.7.2, r-topgo@2.30.0, r-tximport@1.6.0,
r-variantannotation@1.24.2, r-vegan@2.4-4, r-vgam@1.0-4, r-vsn@3.46.0,
r-wgcna@1.61, r-withr@2.1.0, r-xml@3.98-1.9, r-xvector@0.18.0,
r-zlibbioc@1.24.0, r@3.4.3, rapidjson@1.1.0, raul@0.8.9-1.4db870b2b,
rcas-web@0.0.4, rdma-core@14, re2@2017-11-01, readline@7.0,
red-eclipse@1.5.8-2, redis@4.0.2, rest@0.8.1, retroarch@1.6.9,
rhythmbox@3.4.2, roary@3.11.0, rofi@1.4.2, rpm@4.13.0.2,
ruby-activesupport@5.1.4, ruby-arel@8.0.0, ruby-bio-commandeer@0.4.0,
ruby-builder@3.2.3, ruby-byebug@9.0.6, ruby-coderay@1.1.2,
ruby-concurrent@1.0.5, ruby-connection-pool@2.2.1,
ruby-cucumber-core@2.0.0, ruby-daemons@1.2.4, ruby-debug-inspector@0.0.3,
ruby-diff-lcs@1.3, ruby-domain-name@0.5.20170404, ruby-eventmachine@1.2.5,
ruby-ffi@1.9.18, ruby-fivemat@1.3.5, ruby-gem-hadar@1.9.1,
ruby-gherkin@4.1.3, ruby-git@1.3.0, ruby-introspection@0.0.4,
ruby-json-pure@2.1.0, ruby-json@2.1.0, ruby-libxml@3.0.0,
ruby-listen@3.1.5, ruby-lumberjack@1.0.12, ruby-mail@2.6.6,
ruby-method-source@0.9.0, ruby-mini-portile@2.2.0,
ruby-minitest-bacon@1.0.3, ruby-minitest-bonus-assertions@3.0,
ruby-minitest-hooks@1.4.1, ruby-minitest@5.10.3, ruby-nenv@0.3.0,
ruby-net-http-digest-auth@1.4.1, ruby-net-http-persistent@3.0.0,
ruby-net-ssh@4.1.0, ruby-nokogiri-diff@0.2.0-1.a38491e4,
ruby-nokogiri@1.8.0, ruby-notiffany@0.1.1, ruby-ox@2.6.0,
ruby-packnga@1.0.4, ruby-pg@0.21.0, ruby-pkg-config@1.2.5, ruby-pry@0.11.1,
ruby-puma@3.9.1, ruby-rack@2.0.3, ruby-rake-compiler@1.0.4,
ruby-rb-fsevent@0.10.2, ruby-rb-inotify@0.9.10, ruby-redcarpet@3.4.0,
ruby-redcloth@4.3.2, ruby-rjb@1.5.5, ruby-rspec-core@3.5.4,
ruby-rspec@3.5.0, ruby-sequel@4.49.0, ruby-shoulda-matchers@3.1.2,
ruby-simplecov-html@0.10.1, ruby-slop@4.5.0, ruby-tdiff@0.3.3-1.b662a604,
ruby-term-ansicolor@1.6.0, ruby-test-unit@3.2.5, ruby-thor@0.19.4,
ruby-thread-safe@0.3.6, ruby-timecop@0.9.1, ruby-tins@1.15.0,
ruby-tzinfo@1.2.3, ruby-useragent@0.16.8, ruby-utils@0.9.0, ruby@2.2.8,
ruby@2.3.5, ruby@2.4.2, samba@4.7.3, samplv1@0.8.5, samtools@1.5,
sane-backends-minimal@1.0.27, sane-backends@1.0.27, sassc@3.4.5,
schismtracker@20170910, scons@3.0.1, screen@4.6.2, scribus@1.5.3,
sddm@0.16.0, sdl2@2.0.7, sdparm@1.10, shadow@4.5, shellcheck@0.4.6,
shotwell@0.27.1, signify@23, signing-party@2.6,
slepc-complex-openmpi@3.8.0, slepc-complex@3.8.0, slepc-openmpi@3.8.0,
slepc@3.8.0, slop@7.3.49, slurm@16.05.11, smartmontools@6.6,
snakemake@4.2.0, solid@5.39.0, sonnet@5.39.0, speedtest-cli@1.0.7,
spice-protocol@0.12.13, spin2cpp@3.6.3, sqlite@3.19.3, sshfs-fuse@2.10,
sshoot@1.2.6, sshuttle@0.78.3, sssd@1.16.0, stellarium@0.16.0, strace@4.20,
subread@1.6.0, subversion@1.8.19, sudo@1.8.21p2, suil@0.10.0,
suitesparse@4.5.5, supertuxkart@0.9.3, swig@3.0.12, synfig@1.2.0,
synfigstudio@1.2.0, synthv1@0.8.5, taglib@1.11.1, tailon@1.3.0,
talloc-static@2.1.10, talloc@2.1.10, taxtastic@0.6.4, tcpdump@4.9.2,
tdb@1.3.15, teckit@2.5.7, terminology@1.1.1, tevent@0.9.34, texinfo@6.3,
texinfo@6.5, texlive@2017, the-silver-searcher@2.0.0, thefuck@3.19,
threadweaver@5.39.0, tidy-html@5.6.0, tig@2.3.0, tiled@1.0.3, time@1.8,
tint2@0.14.6, tlp@1.0, tmux@2.6, tomb@2.4, tor@0.3.1.9,
totem-pl-parser@3.10.8, totem@3.26.0, tracker@1.12.3,
tremc@0.9.0-1.9755b50, tzdata@2017b, u-boot-am335x_boneblack@2017.11,
u-boot-malta@2017.11, u-boot-vexpress_ca9x4@2017.11, units@2.16,
util-linux@2.30.1, util-macros@1.19.1, utox@0.16.1, v4l-utils@1.12.5,
vala@0.36.3, vdirsyncer@0.16.3, vifm@0.9, vigra@1.11.1, vim-full@8.0.1300,
vim@8.0.1300, virt-manager@1.4.3, virt-viewer@5.0, vlc@2.2.8,
vsearch@2.6.0, vte-ng@0.50.2.a, vte@0.50.2, wayland-protocols@1.9,
wcslib@5.17, webkitgtk@2.18.3, weechat@2.0, weston@3.0.0, wget@1.19.2,
whois@5.2.18, wimlib@1.12.0, wireshark@2.4.3, wxmaxima@17.05.1,
wxwidgets-gtk2@3.0.3, x265@2.4, xclip@0.13, xf86-input-libinput@0.26.0,
xf86-input-wacom@0.34.2, xf86-video-ati@7.10.0,
xf86-video-intel@2.99.917-8-c899057, xf86-video-openchrome@0.6.0,
xkbcomp@1.4.0, xkeyboard-config@2.21, xmonad@0.13, xonsh@0.5.12,
xorg-server-xwayland@1.19.5, xorg-server@1.19.5, xorriso@1.4.8,
xscreensaver@5.37, xterm@330, yadifa@2.2.6, yoshimi@1.5.3, you-get@0.4.995,
youtube-dl@2017.12.02, zenity@3.24.0, zerofree@1.1.0,
zile-on-guile@2.4.14-0.fd09781, zile@2.4.14, zsh@5.4.2, zstd@1.3.2,
zynaddsubfx@3.0.2
** Programming interfaces
*** New build systems: font, meson, minify, scons, texlive
*** cmake-build-system now supports cross-compilation
*** Various improvements to asdf-build-system, emacs-build-system,
ant-build-system, and go-build-system
*** patches field of <origin> can now contain any lowerable object
*** (gnu system vm) has a new make-iso9660-image procedure
*** openssh-service-type can now be extended with new authorized keys
*** rottlog-service-type can now be extended with new log-rotations
*** network-manager-service-type now supports VPN plugins
*** <service-type> now has a description field, used by guix system search
*** New virtual-machine form in (gnu system vm)
*** New (gnu system uuid) module, which defines a disjoint <uuid> type
*** New (guix progress) module
** Noteworthy bug fixes
*** GuixSD no longer creates setuid binaries in /gnu/store
(<https://bugs.gnu.org/28751>)
*** /root is no longer world-readable (<http://bugs.gnu.org/27135>)
*** guix publish no longer leaks memory (<https://bugs.gnu.org/28784>)
*** Missing cursor icons in GNOME could cause crashes
(<https://bugs.gnu.org/25958>)
*** Setuid programs now honor the system timezone
(<https://bugs.gnu.org/29212>)
*** Clients honor the daemons max-silent-time
(<https://bugs.gnu.org/27157>)
*** guix substitute honors substitute expiry time again
(<https://lists.gnu.org/archive/html/guix-devel/2017-07/msg00179.html>)
*** Several portability fixes for aarch64
** Native language support
Updated translations: da (Danish), fr (French)
* Changes in 0.13.0 (since 0.12.0)
** Package management
+19 -19
View File
@@ -1,42 +1,42 @@
-*- mode: org -*-
[[https://www.gnu.org/software/guix/][GNU Guix]] (IPA: /ɡiːks/) is a purely functional package manager, and
associated free software distribution, for the [[https://www.gnu.org/gnu/gnu.html][GNU system]]. In addition
[[http://www.gnu.org/software/guix/][GNU Guix]] (IPA: /ɡiːks/) is a purely functional package manager, and
associated free software distribution, for the [[http://www.gnu.org/gnu/gnu.html][GNU system]]. In addition
to standard package management features, Guix supports transactional
upgrades and roll-backs, unprivileged package management, per-user
profiles, and garbage collection.
It provides [[https://www.gnu.org/software/guile/][Guile]] Scheme APIs, including a high-level embedded
It provides [[http://www.gnu.org/software/guile/][Guile]] Scheme APIs, including a high-level embedded
domain-specific languages (EDSLs) to describe how packages are to be
built and composed.
A user-land free software distribution for GNU/Linux comes as part of
Guix.
Guix is based on the [[https://nixos.org/nix/][Nix]] package manager.
Guix is based on the [[http://nixos.org/nix/][Nix]] package manager.
* Requirements
GNU Guix currently depends on the following packages:
- [[https://gnu.org/software/guile/][GNU Guile 2.2.x or 2.0.x]], version 2.0.9 or later
- [[https://gnupg.org/][GNU libgcrypt]]
- [[https://www.gnu.org/software/make/][GNU Make]]
- optionally [[https://savannah.nongnu.org/projects/guile-json/][Guile-JSON]], for the 'guix import pypi' command
- optionally [[https://www.gnutls.org][GnuTLS]] compiled with guile support enabled, for HTTPS support
- [[http://gnu.org/software/guile/][GNU Guile 2.2.x or 2.0.x]], version 2.0.9 or later
- [[http://gnupg.org/][GNU libgcrypt]]
- [[http://www.gnu.org/software/make/][GNU Make]]
- optionally [[http://savannah.nongnu.org/projects/guile-json/][Guile-JSON]], for the 'guix import pypi' command
- optionally [[http://www.gnutls.org][GnuTLS]] compiled with guile support enabled, for HTTPS support
in the 'guix download' command. Note that 'guix import pypi' requires
this functionality.
Unless `--disable-daemon' was passed, the following packages are needed:
- [[https://sqlite.org/][SQLite 3]]
- [[http://sqlite.org/][SQLite 3]]
- [[http://www.bzip.org][libbz2]]
- [[https://gcc.gnu.org][GCC's g++]]
- [[http://gcc.gnu.org][GCC's g++]]
When `--disable-daemon' was passed, you instead need the following:
- [[https://nixos.org/nix/][Nix]]
- [[http://nixos.org/nix/][Nix]]
* Installation
@@ -44,7 +44,7 @@ See the manual for the installation instructions, either by running
info -f doc/guix.info "Installation"
or by checking the [[https://www.gnu.org/software/guix/manual/guix.html#Installation][web copy of the manual]].
or by checking the [[http://www.gnu.org/software/guix/manual/guix.html#Installation][web copy of the manual]].
For information on installation from a Git checkout, please see the section
"Building from Git" in the manual.
@@ -109,7 +109,7 @@ Join #guix on irc.freenode.net.
* Guix & Nix
GNU Guix is based on [[https://nixos.org/nix/][the Nix package manager]]. It implements the same
GNU Guix is based on [[http://nixos.org/nix/][the Nix package manager]]. It implements the same
package deployment paradigm, and in fact it reuses some of its code.
Yet, different engineering decisions were made for Guix, as described
below.
@@ -132,7 +132,7 @@ the store. Guix produces such derivations, which are then interpreted
by the daemon to perform the build. Thus, Guix derivations can use
derivations produced by Nix (and vice versa).
With Nix and the [[https://nixos.org/nixpkgs][Nixpkgs]] distribution, package composition happens at
With Nix and the [[http://nixos.org/nixpkgs][Nixpkgs]] distribution, package composition happens at
the Nix language level, but builders are usually written in Bash.
Conversely, Guix encourages the use of Scheme for both package
composition and builders. Likewise, the core functionality of Nix is
@@ -141,13 +141,13 @@ but exposes all the API as Scheme.
* Related software
- [[https://nixos.org][Nix, Nixpkgs, and NixOS]], functional package manager and associated
- [[http://nixos.org][Nix, Nixpkgs, and NixOS]], functional package manager and associated
software distribution, are the inspiration of Guix
- [[https://www.gnu.org/software/stow/][GNU Stow]] builds around the idea of one directory per prefix, and a
- [[http://www.gnu.org/software/stow/][GNU Stow]] builds around the idea of one directory per prefix, and a
symlink tree to create user environments
- [[https://www.pvv.ntnu.no/~arnej/store/storedoc_6.html][STORE]] shares the same idea
- [[http://www.pvv.ntnu.no/~arnej/store/storedoc_6.html][STORE]] shares the same idea
- [[https://live.gnome.org/OSTree/][GNOME's OSTree]] allows bootable system images to be built from a
specified set of packages
- The [[https://www.gnu.org/s/gsrc/][GNU Source Release Collection]] (GSRC) is a user-land software
- The [[http://www.gnu.org/s/gsrc/][GNU Source Release Collection]] (GSRC) is a user-land software
distribution; unlike Guix, it relies on core tools available on the
host system
-18
View File
@@ -224,28 +224,10 @@ files."
(current-error-port)
(%make-void-port "w")))))
(unless guile-git
;; XXX: Guix before February 2017 lacks a 'guile-git' package altogether.
;; If we try to upgrade anyway, the logic in (guix scripts pull) will not
;; build (guix git), which will leave us with an unusable 'guix pull'. To
;; avoid that, fail early.
(format (current-error-port)
"\
Your installation is too old and lacks a '~a' package.
Please upgrade to an intermediate version first, for instance with:
guix pull --url=https://git.savannah.gnu.org/cgit/guix.git/snapshot/v0.13.0.tar.gz
\n"
(match (effective-version)
("2.0" "guile2.0-git")
(_ "guile-git")))
(exit 1))
(mlet %store-monad ((guile (guile-for-build)))
(gexp->derivation "guix-latest" builder
#:modules '((guix build pull)
(guix build utils)
(guix build compile)
;; Closure of (guix modules).
(guix modules)
+78 -48
View File
@@ -17,13 +17,20 @@
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(use-modules (ice-9 match)
(use-modules (system base target)
(system base message)
(ice-9 match)
(ice-9 threads)
(srfi srfi-1)
(guix build compile)
(guix build utils))
(define warnings
;; FIXME: 'format' is missing because it reports "non-literal format
;; strings" due to the fact that we use 'G_' instead of '_'. We'll need
;; help from Guile to solve this.
'(unsupported-warning unbound-variable arity-mismatch))
(define host (getenv "host"))
(define srcdir (getenv "srcdir"))
(define (relative-file file)
@@ -45,38 +52,61 @@
(or (not (file-exists? go))
(file-mtime<? go file))))
(define* (parallel-job-count #:optional (flags (getenv "MAKEFLAGS")))
"Return the number of parallel jobs as determined by FLAGS, the flags passed
to 'make'."
(match flags
(#f (current-processor-count))
(flags
(let ((initial-flags (string-tokenize flags)))
(let loop ((flags initial-flags))
(match flags
(()
;; Note: GNU make prior to version 4.2 would hide "-j" flags from
;; $MAKEFLAGS. Thus, check for a "--jobserver" flag here and
;; assume we're using all cores if specified.
(if (any (lambda (flag)
(string-prefix? "--jobserver" flag))
initial-flags)
(current-processor-count) ;GNU make < 4.2
1)) ;sequential make
(("-j" (= string->number count) _ ...)
(if (integer? count)
count
(current-processor-count)))
((head tail ...)
(if (string-prefix? "-j" head)
(match (string-drop head 2)
(""
(current-processor-count))
((= string->number count)
(if (integer? count)
count
(current-processor-count))))
(loop tail)))))))))
(define (file->module file)
(let* ((relative (relative-file file))
(module-path (string-drop-right relative 4)))
(map string->symbol
(string-split module-path #\/))))
;;; To work around <http://bugs.gnu.org/15602> (FIXME), we want to load all
;;; files to be compiled first. We do this via resolve-interface so that the
;;; top-level of each file (module) is only executed once.
(define (load-module-file file)
(let ((module (file->module file)))
(format #t " LOAD ~a~%" module)
(resolve-interface module)))
(cond-expand
(guile-2.2 (use-modules (language tree-il optimize)
(language cps optimize)))
(else #f))
(define %default-optimizations
;; Default optimization options (equivalent to -O2 on Guile 2.2).
(cond-expand
(guile-2.2 (append (tree-il-default-optimization-options)
(cps-default-optimization-options)))
(else '())))
(define %lightweight-optimizations
;; Lightweight optimizations (like -O0, but with partial evaluation).
(let loop ((opts %default-optimizations)
(result '()))
(match opts
(() (reverse result))
((#:partial-eval? _ rest ...)
(loop rest `(#t #:partial-eval? ,@result)))
((kw _ rest ...)
(loop rest `(#f ,kw ,@result))))))
(define (optimization-options file)
(if (string-contains file "gnu/packages/")
%lightweight-optimizations ;build faster
'()))
(define (compile-file* file output-mutex)
(let ((go (scm->go file)))
(with-mutex output-mutex
(format #t " GUILEC ~a~%" go)
(force-output))
(mkdir-p (dirname go))
(with-fluids ((*current-warning-prefix* ""))
(with-target host
(lambda ()
(compile-file file
#:output-file go
#:opts `(#:warnings ,warnings
,@(optimization-options file))))))))
;; Install a SIGINT handler to give unwind handlers in 'compile-file' an
;; opportunity to run upon SIGINT and to remove temporary output files.
@@ -86,16 +116,16 @@ to 'make'."
(match (command-line)
((_ . files)
(compile-files srcdir (getcwd)
(filter file-needs-compilation? files)
#:workers (parallel-job-count)
#:host host
#:report-load (lambda (file total completed)
(when file
(format #t " LOAD ~a~%" file)
(force-output)))
#:report-compilation (lambda (file total completed)
(when file
(format #t " GUILEC ~a~%"
(scm->go file))
(force-output))))))
(let ((files (filter file-needs-compilation? files)))
(for-each load-module-file files)
(let ((mutex (make-mutex)))
;; Make sure compilation related modules are loaded before starting to
;; compile files in parallel.
(compile #f)
(par-for-each (lambda (file)
(compile-file* file mutex))
files)))))
;;; Local Variables:
;;; eval: (put 'with-target 'scheme-indent-function 1)
;;; End:
-47
View File
@@ -1,47 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
;;;
;;; 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/>.
;;;
;;; This file defines build jobs for the Cuirass continuation integration
;;; tool.
;;;
(include-from-path "build-aux/hydra/gnu-system.scm")
(use-modules ((guix licenses)
#:select (license? license-name license-uri license-comment)))
(define (cuirass-jobs store arguments)
"Return Cuirass jobs."
(map hydra-job->cuirass-job (hydra-jobs store arguments)))
(define (hydra-job->cuirass-job hydra-job)
(let ((name (car hydra-job))
(job ((cdr hydra-job))))
(lambda _ (acons #:job-name (symbol->string name)
(map symbol-alist-entry->keyword-alist-entry job)))))
(define (symbol-alist-entry->keyword-alist-entry entry)
(cons (symbol->keyword (car entry)) (entry->sexp-entry (cdr entry))))
(define (entry->sexp-entry o)
(match o
((? license?) `((name . (license-name o))
(uri . ,(license-uri o))
(comment . ,(license-comment o))))
(_ o)))
+4 -16
View File
@@ -1,6 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -27,12 +26,6 @@
(ice-9 pretty-print)
(ice-9 format))
(define %top-srcdir
(and=> (assq-ref (current-source-location) 'filename)
(lambda (file)
(canonicalize-path
(string-append (dirname file) "/../..")))))
(define %user-module
;; Hydra user module.
(let ((m (make-module)))
@@ -77,7 +70,7 @@ Otherwise return THING."
;; Without further ado...
(match (command-line)
((command file cuirass? ...)
((command file)
;; Load FILE, a Scheme file that defines Hydra jobs.
(let ((port (current-output-port)))
(save-module-excursion
@@ -103,12 +96,7 @@ Otherwise return THING."
;; Call the entry point of FILE and print the resulting job sexp.
(pretty-print
(match ((module-ref %user-module
(if (equal? cuirass? "cuirass")
'cuirass-jobs
'hydra-jobs))
store `((guix
. ((file-name . ,%top-srcdir)))))
(match ((module-ref %user-module 'hydra-jobs) store '())
(((names . thunks) ...)
(map (lambda (job thunk)
(format (current-error-port) "evaluating '~a'... " job)
@@ -119,8 +107,8 @@ Otherwise return THING."
names thunks)))
port))))
((command _ ...)
(format (current-error-port) "Usage: ~a FILE [cuirass]
Evaluate the Hydra or Cuirass jobs defined in FILE.~%"
(format (current-error-port) "Usage: ~a FILE
Evaluate the Hydra jobs defined in FILE.~%"
command)
(exit 1)))
+12 -41
View File
@@ -1,6 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -251,8 +250,7 @@ all its dependencies, and ready to be installed on non-GuixSD distributions.")
"Return a job for PACKAGE on SYSTEM, or #f if this combination is not
valid."
(cond ((member package base-packages)
(package-job store (symbol-append 'base. (job-name package))
package system))
#f)
((supported-package? package system)
(let ((drv (package-derivation store package system
#:graft? #f)))
@@ -262,25 +260,6 @@ valid."
(else
#f)))))
(define (all-packages)
"Return the list of packages to build."
(define (adjust package result)
(cond ((package-replacement package)
(cons* package ;build both
(package-replacement package)
result))
((package-superseded package)
result) ;don't build it
(else
(cons package result))))
(fold-packages adjust
(fold adjust '() ;include base packages
(match (%final-inputs)
(((labels packages _ ...) ...)
packages)))
#:select? (const #t))) ;include hidden packages
;;;
;;; Hydra entry point.
@@ -291,8 +270,6 @@ valid."
(define subset
(match (assoc-ref arguments 'subset)
("core" 'core) ; only build core packages
("hello" 'hello) ; only build hello
(((? string?) (? string?) ...) 'list) ; only build selected list of packages
(_ 'all))) ; build everything
(define (cross-jobs system)
@@ -337,7 +314,17 @@ valid."
(case subset
((all)
;; Build everything, including replacements.
(let ((all (all-packages))
(let ((all (fold-packages
(lambda (package result)
(cond ((package-replacement package)
(cons* package
(package-replacement package)
result))
((package-superseded package)
result) ;don't build it
(else
(cons package result))))
'()))
(job (lambda (package)
(package->job store package
system))))
@@ -353,22 +340,6 @@ valid."
package system))
%core-packages)
(cross-jobs system)))
((hello)
;; Build hello package only.
(if (string=? system (%current-system))
(let ((hello (specification->package "hello")))
(list (package-job store (job-name hello) hello system)))
'()))
((list)
;; Build selected list of packages only.
(if (string=? system (%current-system))
(let* ((names (assoc-ref arguments 'subset))
(packages (map specification->package names)))
(map (lambda (package)
(package-job store (job-name package)
package system))
packages))
'()))
(else
(error "unknown subset" subset))))
%hydra-supported-systems)))
-104
View File
@@ -1,104 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org>
;;;
;;; 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/>.
;;;
;;; This file defines a continuous integration job to build the same modular
;;; Guix as 'guix pull', which is defined in (guix self).
;;;
;; Attempt to use our very own Guix modules.
(eval-when (compile load eval)
;; Ignore any available .go, and force recompilation. This is because our
;; checkout in the store has mtime set to the epoch, and thus .go files look
;; newer, even though they may not correspond.
(set! %fresh-auto-compile #t)
(and=> (assoc-ref (current-source-location) 'filename)
(lambda (file)
(let ((dir (canonicalize-path
(string-append (dirname file) "/../.."))))
(format (current-error-port) "prepending ~s to the load path~%"
dir)
(set! %load-path (cons dir %load-path))))))
(use-modules (guix store)
(guix config)
(guix utils)
(guix grafts)
((guix packages) #:select (%hydra-supported-systems))
(guix derivations)
(guix monads)
(guix gexp)
(guix self)
((guix licenses) #:prefix license:)
(srfi srfi-1)
(srfi srfi-26)
(ice-9 match))
;; XXX: Debugging hack: since `hydra-eval-guile-jobs' redirects the output
;; port to the bit bucket, let us write to the error port instead.
(setvbuf (current-error-port) _IOLBF)
(set-current-output-port (current-error-port))
(define* (build-job store source version system)
"Return a Hydra job a list building the modular Guix derivation from SOURCE
for SYSTEM. Use VERSION as the version identifier."
(lambda ()
`((derivation . ,(derivation-file-name
(parameterize ((%graft? #f))
(run-with-store store
(lower-object (compiled-guix source
#:version version))))))
(description . "Modular Guix")
(long-description
. "This is the modular Guix package as produced by 'guix pull'.")
(license . ,license:gpl3+)
(home-page . ,%guix-home-page-url)
(maintainers . (,%guix-bug-report-address)))))
(define (hydra-jobs store arguments)
"Return Hydra jobs."
(define systems
(match (filter-map (match-lambda
(('system . value) value)
(_ #f))
arguments)
((lst ..1)
lst)
(_
(list (%current-system)))))
(define guix-checkout
(assq-ref arguments 'guix))
(define version
(or (assq-ref guix-checkout 'revision)
"0.unknown"))
(let ((file (assq-ref guix-checkout 'file-name)))
(format (current-error-port) "using checkout ~s (~s)~%"
guix-checkout file)
(map (lambda (system)
(let ((name (string->symbol
(string-append "guix." system))))
`(,name
. ,(build-job store file version system))))
%hydra-supported-systems)))
+33 -22
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -43,10 +43,13 @@
(use-modules (guix store)
(guix packages)
(guix utils)
(guix grafts)
(guix derivations)
(guix build-system gnu)
(gnu packages version-control)
(gnu packages package-management)
(gnu packages imagemagick)
(gnu packages graphviz)
(gnu packages man)
(srfi srfi-1)
(srfi srfi-26)
(ice-9 match))
@@ -60,15 +63,36 @@
#:optional (package-derivation package-derivation))
"Convert PACKAGE to an alist suitable for Hydra."
`((derivation . ,(derivation-file-name
(parameterize ((%graft? #f))
(package-derivation store package system
#:graft? #f))))
(package-derivation store package system)))
(description . ,(package-synopsis package))
(long-description . ,(package-description package))
(license . ,(package-license package))
(home-page . ,(package-home-page package))
(maintainers . ("bug-guix@gnu.org"))))
(define (tarball-package checkout)
"Return a package that does `make distcheck' from CHECKOUT, a directory
containing a Git checkout of Guix."
(let ((guix (@@ (gnu packages package-management) guix)))
(dist-package (package
(inherit guix)
(arguments (package-arguments guix))
(native-inputs `(("imagemagick" ,imagemagick)
,@(package-native-inputs guix))))
checkout
#:phases
'(modify-phases %dist-phases
(add-before 'build 'build-daemon
;; Build 'guix-daemon' first so that help2man
;; successfully creates 'guix-daemon.1'.
(lambda _
(let ((n (number->string
(parallel-job-count))))
(zero? (system* "make"
"nix/libstore/schema.sql.hh"
"guix-daemon" "-j" n)))))))))
(define (hydra-jobs store arguments)
"Return Hydra jobs."
(define systems
@@ -85,22 +109,9 @@
(define guix-checkout
(assq-ref arguments 'guix))
(let ((file (assq-ref guix-checkout 'file-name)))
(let ((guix (assq-ref guix-checkout 'file-name)))
(format (current-error-port) "using checkout ~s (~s)~%"
guix-checkout file)
guix-checkout guix)
`((tarball . ,(cute package->alist store
(dist-package guix file)
(%current-system)))
,@(map (lambda (system)
(let ((name (string->symbol
(string-append "guix." system))))
`(,name
. ,(cute package->alist store
(package
(inherit guix)
(version "latest")
(source file))
system))))
%hydra-supported-systems))))
(tarball-package guix)
(%current-system))))))
+7 -4
View File
@@ -2,7 +2,6 @@
# GNU Guix --- Functional package management for GNU
# Copyright © 2012, 2013, 2014, 2015, 2017 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2017 Eric Bavier <bavier@cray.com>
#
# This file is part of GNU Guix.
#
@@ -51,9 +50,13 @@ NIX_LIBEXEC_DIR="@abs_top_builddir@/nix/scripts" # for 'guix-authenticate'
export NIX_ROOT_FINDER NIX_SUBSTITUTERS NIX_LIBEXEC_DIR
NIX_BUILD_HOOK="$abs_top_builddir/nix/scripts/offload"
@BUILD_DAEMON_OFFLOAD_TRUE@export NIX_BUILD_HOOK
@BUILD_DAEMON_OFFLOAD_FALSE@# No offloading support.
@BUILD_DAEMON_OFFLOAD_FALSE@unset NIX_BUILD_HOOK
if [ -x "$NIX_BUILD_HOOK" ]
then
export NIX_BUILD_HOOK
else
# No offloading support.
unset NIX_BUILD_HOOK
fi
# The 'guix-register' program.
GUIX_REGISTER="$abs_top_builddir/guix-register"
+6 -8
View File
@@ -8,7 +8,7 @@ AC_INIT([GNU Guix],
[https://www.gnu.org/software/guix/])
AC_CONFIG_AUX_DIR([build-aux])
AM_INIT_AUTOMAKE([1.14 gnu silent-rules subdir-objects \
AM_INIT_AUTOMAKE([1.12 gnu silent-rules subdir-objects \
color-tests parallel-tests -Woverride -Wno-portability])
# Enable silent rules by default.
@@ -52,7 +52,7 @@ AC_MSG_CHECKING([for the store directory])
AC_MSG_RESULT([$storedir])
AC_ARG_ENABLE([daemon],
[AS_HELP_STRING([--disable-daemon], [do not build the Nix daemon (C++)])],
[AS_HELP_STRING([--disable-daemon], [build the Nix daemon (C++)])],
[guix_build_daemon="$enableval"],
[guix_build_daemon="yes"])
@@ -100,16 +100,14 @@ if test "x$have_gnutls" != "xyes"; then
AC_MSG_ERROR([The Guile bindings of GnuTLS are missing; please install them.])
fi
dnl Check for Guile-Git.
GUILE_MODULE_AVAILABLE([have_guile_git], [(git)])
if test "x$have_guile_git" != "xyes"; then
AC_MSG_ERROR([Guile-Git is missing; please install it.])
fi
dnl Guile-JSON is used in various places.
GUILE_MODULE_AVAILABLE([have_guile_json], [(json)])
AM_CONDITIONAL([HAVE_GUILE_JSON], [test "x$have_guile_json" = "xyes"])
dnl Check for Guile-Git.
GUILE_MODULE_AVAILABLE([have_guile_git], [(git)])
AM_CONDITIONAL([HAVE_GUILE_GIT], [test "x$have_guile_git" = "xyes"])
dnl Make sure we have a full-fledged Guile.
GUIX_ASSERT_GUILE_FEATURES([regex posix socket net-db threads])
+16 -36
View File
@@ -31,13 +31,7 @@ choice.
@section Building from Git
If you want to hack Guix itself, it is recommended to use the latest
version from the Git repository:
@example
git clone https://git.savannah.gnu.org/git/guix.git
@end example
When building Guix from a checkout,
version from the Git repository. When building Guix from a checkout,
the following packages are required in addition to those mentioned in
the installation instructions (@pxref{Requirements}).
@@ -298,7 +292,11 @@ This mailing list is backed by a Debbugs instance accessible at
of submissions. Each message sent to that mailing list gets a new
tracking number assigned; people can then follow up on the submission by
sending email to @code{@var{NNN}@@debbugs.gnu.org}, where @var{NNN} is
the tracking number (@pxref{Sending a Patch Series}).
the tracking number. When sending a patch series, please first send one
message to @email{guix-patches@@gnu.org}, and then send subsequent
patches to @email{@var{NNN}@@debbugs.gnu.org} to make sure they are kept
together. See @uref{https://debbugs.gnu.org/Advanced.html, the Debbugs
documentation}, for more information.
Please write commit logs in the ChangeLog format (@pxref{Change Logs,,,
standards, GNU Coding Standards}); you can check the commit history for
@@ -308,12 +306,6 @@ Before submitting a patch that adds or modifies a package definition,
please run through this check list:
@enumerate
@item
If the authors of the packaged software provide a cryptographic
signature for the release tarball, make an effort to verify the
authenticity of the archive. For a detached GPG signature file this
would be done with the @code{gpg --verify} command.
@item
Take some time to provide an adequate synopsis and description for the
package. @xref{Synopses and Descriptions}, for some guidelines.
@@ -341,6 +333,12 @@ distribution to make transverse changes such as applying security
updates for a given software package in a single place and have them
affect the whole system---something that bundled copies prevent.
@item
If the authors of the packaged software provide a cryptographic
signature for the release tarball, make an effort to verify the
authenticity of the archive. For a detached GPG signature file this
would be done with the @code{gpg --verify} command.
@item
Take a look at the profile reported by @command{guix size}
(@pxref{Invoking guix size}). This will allow you to notice references
@@ -430,25 +428,7 @@ Please follow our code formatting rules, possibly running the
When posting a patch to the mailing list, use @samp{[PATCH] @dots{}} as
a subject. You may use your email client or the @command{git
send-email} command (@pxref{Sending a Patch Series}). We prefer to get
patches in plain text messages, either inline or as MIME attachments.
You are advised to pay attention if your email client changes anything
like line breaks or indentation which could potentially break the
patches.
When a bug is resolved, please close the thread by sending an email to
@email{@var{NNN}-done@@debbugs.gnu.org}.
@unnumberedsubsec Sending a Patch Series
@anchor{Sending a Patch Series}
@cindex patch series
@cindex @code{git send-email}
@cindex @code{git-send-email}
When sending a patch series (e.g., using @code{git send-email}), please
first send one message to @email{guix-patches@@gnu.org}, and then send
subsequent patches to @email{@var{NNN}@@debbugs.gnu.org} to make sure
they are kept together. See
@uref{https://debbugs.gnu.org/Advanced.html, the Debbugs documentation}
for more information.
@c Debbugs bug: https://debbugs.gnu.org/db/15/15361.html
send-email} command. We prefer to get patches in plain text messages,
either inline or as MIME attachments. You are advised to pay attention if
your email client changes anything like line breaks or indentation which
could potentially break the patches.
+284 -2665
View File
File diff suppressed because it is too large Load Diff
-3
View File
@@ -158,9 +158,6 @@ _guix_complete ()
else
_guix_complete_available_package "$word_at_point"
fi
elif _guix_is_command "download"
then
_guix_complete_file
elif _guix_is_command "system"
then
case $COMP_CWORD in
+2
View File
@@ -7,4 +7,6 @@ start on runlevel [2345]
stop on runlevel [016]
task
exec @localstatedir@/guix/profiles/per-user/root/guix-profile/bin/guix-daemon --build-users-group=guixbuild
+4 -96
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Joshua S. Grant <jgrant@parenthetical.io>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;;
@@ -19,14 +19,6 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu)
#:use-module (guix i18n)
#:use-module (guix utils)
#:use-module (srfi srfi-34)
#:use-module (srfi srfi-35)
#:use-module (ice-9 match)
#:use-module (guix packages)
#:use-module (gnu packages)
#:use-module (gnu services)
#:export (use-package-modules
use-service-modules
use-system-modules))
@@ -60,97 +52,13 @@
(module-use! i (resolve-interface m))))
%public-modules)))
(define (%try-use-modules modules location make-hint)
"Attempt to load all of MODULES. Report errors as coming from LOCATION, a
<location> record, and use MAKE-HINT to produce a fix hint."
(define (location->string loc)
(match loc
(#f "")
(($ <location> file line column)
(format #f "~a:~a:~a: " file line column))))
(for-each (lambda (module)
(catch 'misc-error
(lambda ()
(process-use-modules `((,module))))
(lambda _
(raise
(apply
make-compound-condition
(condition
(&message
(message (format #f (G_ "module ~a not found")
module))))
(condition
(&error-location (location location)))
(or (and=> (make-hint module) list)
'()))))))
modules))
(define (package-module-hint module)
(define last-name
(match module
((_ ... last)
(symbol->string last))))
(match (find-packages-by-name last-name)
(()
(condition
(&fix-hint
(hint (G_ "\
You may use @command{guix package --show=foo | grep location} to search
for the location of package @code{foo}.
If you get the line @code{location: gnu/packages/bar.scm:174:2},
add @code{bar} to the @code{use-package-modules} form.")))))
((package _ ...)
(condition
(&fix-hint
(hint (format #f (G_ "\
Try adding @code{(use-package-modules ~a)}.")
(basename (location-file (package-location package))
".scm"))))))))
(define (service-module-hint module)
(define last-name
(match module
((_ ... last)
last)))
(match (lookup-service-types last-name)
(()
(condition
(&fix-hint
(hint (format #f (G_ "\
You may use @command{guix system search ~a} to search for a service
matching @code{~a}.
If you get the line @code{location: gnu/services/foo.scm:188:2},
add @code{foo} to the @code{use-service-modules} form.")
last-name last-name)))))
((package _ ...)
(condition
(&fix-hint
(hint (format #f (G_ "\
Try adding @code{(use-service-modules ~a)}.")
(basename (location-file (service-type-location package))
".scm"))))))))
(define-syntax-rule (try-use-modules hint modules ...)
(eval-when (expand load eval)
(%try-use-modules '(modules ...)
(source-properties->location
(current-source-location))
hint)))
(define-syntax-rule (use-package-modules module ...)
(try-use-modules package-module-hint
(gnu packages module) ...))
(use-modules (gnu packages module) ...))
(define-syntax-rule (use-service-modules module ...)
(try-use-modules service-module-hint
(gnu services module) ...))
(use-modules (gnu services module) ...))
(define-syntax-rule (use-system-modules module ...)
(try-use-modules (const #f) ;no hint
(gnu system module) ...))
(use-modules (gnu system module) ...))
;;; gnu.scm ends here
+1 -15
View File
@@ -30,7 +30,6 @@
menu-entry-linux
menu-entry-linux-arguments
menu-entry-initrd
menu-entry-device-mount-point
bootloader
bootloader?
@@ -43,7 +42,7 @@
bootloader-configuration
bootloader-configuration?
bootloader-configuration-bootloader
bootloader-configuration-target
bootloader-configuration-device
bootloader-configuration-menu-entries
bootloader-configuration-default-entry
bootloader-configuration-timeout
@@ -68,8 +67,6 @@
(label menu-entry-label)
(device menu-entry-device ; file system uuid, label, or #f
(default #f))
(device-mount-point menu-entry-device-mount-point
(default #f))
(linux menu-entry-linux)
(linux-arguments menu-entry-linux-arguments
(default '())) ; list of string-valued gexps
@@ -107,8 +104,6 @@
(bootloader bootloader-configuration-bootloader) ; <bootloader>
(device bootloader-configuration-device ; string
(default #f))
(target %bootloader-configuration-target ; string
(default #f))
(menu-entries bootloader-configuration-menu-entries ; list of <boot-parameters>
(default '()))
(default-entry bootloader-configuration-default-entry ; integer
@@ -128,15 +123,6 @@
(additional-configuration bootloader-configuration-additional-configuration ; record
(default #f)))
(define (bootloader-configuration-target config)
(or (%bootloader-configuration-target config)
(let ((device (bootloader-configuration-device config)))
(when device
(warning
(G_ "The 'device' field of bootloader configurations is deprecated.~%"))
(warning (G_ "Use 'target' instead.~%")))
device)))
;;;
;;; Bootloaders.
+10 -9
View File
@@ -38,13 +38,14 @@
corresponding to old generations of the system."
(define all-entries
(append entries (bootloader-configuration-menu-entries config)))
(append entries (map menu-entry->boot-parameters
(bootloader-configuration-menu-entries config))))
(define (menu-entry->gexp entry)
(let ((label (menu-entry-label entry))
(kernel (menu-entry-linux entry))
(kernel-arguments (menu-entry-linux-arguments entry))
(initrd (menu-entry-initrd entry)))
(define (boot-parameters->gexp params)
(let ((label (boot-parameters-label params))
(kernel (boot-parameters-kernel params))
(kernel-arguments (boot-parameters-kernel-arguments params))
(initrd (boot-parameters-initrd params)))
#~(format port "LABEL ~a
MENU LABEL ~a
KERNEL ~a
@@ -53,7 +54,7 @@ corresponding to old generations of the system."
APPEND ~a
~%"
#$label #$label
#$kernel (dirname #$kernel) #$initrd
#$kernel #$kernel #$initrd
(string-join (list #$@kernel-arguments)))))
(define builder
@@ -68,11 +69,11 @@ TIMEOUT ~a~%"
(if (> timeout 0) 1 0)
;; timeout is expressed in 1/10s of seconds.
(* 10 timeout))
#$@(map menu-entry->gexp all-entries)
#$@(map boot-parameters->gexp all-entries)
#$@(if (pair? old-entries)
#~((format port "~%")
#$@(map menu-entry->gexp old-entries)
#$@(map boot-parameters->gexp old-entries)
(format port "~%"))
#~())))))
+18 -35
View File
@@ -30,7 +30,7 @@
#:use-module (gnu artwork)
#:use-module (gnu system)
#:use-module (gnu bootloader)
#:use-module (gnu system uuid)
#:use-module (gnu system file-systems)
#:autoload (gnu packages bootloaders) (grub)
#:autoload (gnu packages compression) (gzip)
#:autoload (gnu packages gtk) (guile-cairo guile-rsvg)
@@ -55,7 +55,6 @@
grub-bootloader
grub-efi-bootloader
grub-mkrescue-bootloader
grub-configuration))
@@ -300,7 +299,7 @@ code."
(match device
;; Preferably refer to DEVICE by its UUID or label. This is more
;; efficient and less ambiguous, see <http://bugs.gnu.org/22281>.
((? uuid? uuid)
((? bytevector? uuid)
(format #f "search --fs-uuid --set ~a"
(uuid->string device)))
((? string? label)
@@ -317,14 +316,16 @@ code."
STORE-FS, a <file-system> object. OLD-ENTRIES is taken to be a list of menu
entries corresponding to old generations of the system."
(define all-entries
(append entries (bootloader-configuration-menu-entries config)))
(define (menu-entry->gexp entry)
(let ((device (menu-entry-device entry))
(device-mount-point (menu-entry-device-mount-point entry))
(label (menu-entry-label entry))
(kernel (menu-entry-linux entry))
(arguments (menu-entry-linux-arguments entry))
(initrd (menu-entry-initrd entry)))
(append entries (map menu-entry->boot-parameters
(bootloader-configuration-menu-entries config))))
(define (boot-parameters->gexp params)
(let ((device (boot-parameters-store-device params))
(device-mount-point (boot-parameters-store-mount-point params))
(label (boot-parameters-label params))
(kernel (boot-parameters-kernel params))
(arguments (boot-parameters-kernel-arguments params))
(initrd (boot-parameters-initrd params)))
;; Here DEVICE is the store and DEVICE-MOUNT-POINT is its mount point.
;; Use the right file names for KERNEL and INITRD in case
;; DEVICE-MOUNT-POINT is not "/", meaning that the store is on a
@@ -340,10 +341,11 @@ entries corresponding to old generations of the system."
#$(grub-root-search device kernel)
#$kernel (string-join (list #$@arguments))
#$initrd))))
(mlet %store-monad ((sugar (eye-candy config
(menu-entry-device
(boot-parameters-store-device
(first all-entries))
(menu-entry-device-mount-point
(boot-parameters-store-mount-point
(first all-entries))
#:system system
#:port #~port)))
@@ -360,12 +362,12 @@ set default=~a
set timeout=~a~%"
#$(bootloader-configuration-default-entry config)
#$(bootloader-configuration-timeout config))
#$@(map menu-entry->gexp all-entries)
#$@(map boot-parameters->gexp all-entries)
#$@(if (pair? old-entries)
#~((format port "
submenu \"GNU system, old configurations...\" {~%")
#$@(map menu-entry->gexp old-entries)
#$@(map boot-parameters->gexp old-entries)
(format port "}~%"))
#~()))))
@@ -389,20 +391,7 @@ submenu \"GNU system, old configurations...\" {~%")
(unless (zero? (system* grub "--no-floppy"
"--boot-directory" install-dir
device))
(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)")))))
(error "failed to install GRUB")))))
@@ -421,15 +410,9 @@ submenu \"GNU system, old configurations...\" {~%")
(define* grub-efi-bootloader
(bootloader
(inherit grub-bootloader)
(installer install-grub-efi)
(name 'grub-efi)
(package grub-efi)))
(define* grub-mkrescue-bootloader
(bootloader
(inherit grub-efi-bootloader)
(package grub-hybrid)))
;;;
;;; Compatibility macros.
-47
View File
@@ -1,47 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 David Craven <david@craven.ch>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu bootloader u-boot)
#:use-module (gnu bootloader extlinux)
#:use-module (gnu bootloader)
#:use-module (gnu system)
#:use-module (gnu packages bootloaders)
#:use-module (guix gexp)
#:use-module (guix monads)
#:use-module (guix records)
#:use-module (guix utils)
#:export (u-boot-bootloader))
(define install-u-boot
#~(lambda (bootloader device mount-point)
(if bootloader
(error "Failed to install U-Boot"))))
;;;
;;; Bootloader definitions.
;;;
(define u-boot-bootloader
(bootloader
(inherit extlinux-bootloader)
(name 'u-boot)
(package #f)
(installer install-u-boot)))
+12 -2
View File
@@ -313,7 +313,6 @@ they already exist."
(false-if-exception (delete-file file)))
(format #t "populating /etc from ~a...~%" etc)
(mkdir-p "/etc")
;; Create the /etc/ssl -> /run/current-system/profile/etc/ssl symlink. This
;; symlink, to a target outside of the store, probably doesn't belong in the
@@ -353,13 +352,24 @@ they already exist."
;; Place where setuid programs are stored.
"/run/setuid-programs")
(define (link-or-copy source target)
"Attempt to make TARGET a hard link to SOURCE; if it fails, fall back to
copy SOURCE to TARGET."
(catch 'system-error
(lambda ()
(link source target))
(lambda args
;; Perhaps SOURCE and TARGET live in a different file system, so copy
;; SOURCE.
(copy-file source target))))
(define (activate-setuid-programs programs)
"Turn PROGRAMS, a list of file names, into setuid programs stored under
%SETUID-DIRECTORY."
(define (make-setuid-program prog)
(let ((target (string-append %setuid-directory
"/" (basename prog))))
(copy-file prog target)
(link-or-copy prog target)
(chown target 0 0)
(chmod target #o6555)))
+180 -86
View File
@@ -19,16 +19,15 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu build file-systems)
#:use-module (gnu system uuid)
#:use-module (gnu system file-systems)
#:use-module (guix build utils)
#:use-module (guix build bournish)
#:use-module ((guix build syscalls)
#:hide (file-system-type))
#:use-module (guix build syscalls)
#:use-module (rnrs io ports)
#:use-module (rnrs bytevectors)
#:use-module (ice-9 match)
#:use-module (ice-9 rdelim)
#:use-module (ice-9 format)
#:use-module (ice-9 regex)
#:use-module (system foreign)
#:autoload (system repl repl) (start-repl)
#:use-module (srfi srfi-1)
@@ -42,6 +41,15 @@
find-partition-by-luks-uuid
canonicalize-device-spec
uuid->string
string->uuid
string->iso9660-uuid
string->ext2-uuid
string->ext3-uuid
string->ext4-uuid
string->btrfs-uuid
iso9660-uuid->string
bind-mount
mount-flags->bit-mask
@@ -87,6 +95,20 @@ takes a bytevector and returns #t when it's a valid superblock."
(and (magic? block)
block)))))))))
(define (sub-bytevector bv start size)
"Return a copy of the SIZE bytes of BV starting from offset START."
(let ((result (make-bytevector size)))
(bytevector-copy! bv start result 0 size)
result))
(define (latin1->string bv terminator)
"Return a string of BV, a latin1 bytevector, or #f. TERMINATOR is a predicate
that takes a number and returns #t when a termination character is found."
(let ((bytes (take-while (negate terminator) (bytevector->u8-list bv))))
(if (null? bytes)
#f
(list->string (map integer->char bytes)))))
(define null-terminated-latin1->string
(cut latin1->string <> zero?))
@@ -174,6 +196,10 @@ if DEVICE does not contain a btrfs file system."
;; <http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-107.pdf>.
(define-syntax %fat32-endianness
;; Endianness of fat file systems.
(identifier-syntax (endianness little)))
(define (fat32-superblock? sblock)
"Return #t when SBLOCK is a fat32 superblock."
(bytevector=? (sub-bytevector sblock 82 8)
@@ -188,13 +214,19 @@ if DEVICE does not contain a btrfs file system."
"Return the Volume ID of a fat superblock SBLOCK as a 4-byte bytevector."
(sub-bytevector sblock 67 4))
(define (fat32-uuid->string uuid)
"Convert fat32 UUID, a 4-byte bytevector, to its string representation."
(let ((high (bytevector-uint-ref uuid 0 %fat32-endianness 2))
(low (bytevector-uint-ref uuid 2 %fat32-endianness 2)))
(format #f "~:@(~x-~x~)" low high)))
(define (fat32-superblock-volume-name sblock)
"Return the volume name of SBLOCK as a string of at most 11 characters, or
#f if SBLOCK has no volume name. The volume name is a latin1 string.
Trailing spaces are trimmed."
(string-trim-right (latin1->string (sub-bytevector sblock 71 11) (lambda (c) #f)) #\space))
(define (check-fat-file-system device)
(define (check-fat32-file-system device)
"Return the health of a fat file system on DEVICE."
(match (status:exit-val
(system* "fsck.vfat" "-v" "-a" device))
@@ -202,33 +234,6 @@ Trailing spaces are trimmed."
(1 'errors-corrected)
(_ 'fatal-error)))
;;;
;;; FAT16 file systems.
;;;
(define (fat16-superblock? sblock)
"Return #t when SBLOCK is a fat16 boot record."
(bytevector=? (sub-bytevector sblock 54 8)
(string->utf8 "FAT16 ")))
(define (read-fat16-superblock device)
"Return the raw contents of DEVICE's fat16 superblock as a bytevector, or
#f if DEVICE does not contain a fat16 file system."
(read-superblock device 0 62 fat16-superblock?))
(define (fat16-superblock-uuid sblock)
"Return the Volume ID of a fat superblock SBLOCK as a 4-byte bytevector."
(sub-bytevector sblock 39 4))
(define (fat16-superblock-volume-name sblock)
"Return the volume name of SBLOCK as a string of at most 11 characters, or
#f if SBLOCK has no volume name. The volume name is a latin1 string.
Trailing spaces are trimmed."
(string-trim-right (latin1->string (sub-bytevector sblock 43 11)
(lambda (c) #f))
#\space))
;;;
;;; ISO9660 file systems.
@@ -236,6 +241,27 @@ Trailing spaces are trimmed."
;; <http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-119.pdf>.
(define %iso9660-uuid-rx
;; Y m d H M S ss
(make-regexp "^([[:digit:]]{4})-([[:digit:]]{2})-([[:digit:]]{2})-([[:digit:]]{2})-([[:digit:]]{2})-([[:digit:]]{2})-([[:digit:]]{2})$"))
(define (string->iso9660-uuid str)
"Parse STR as a ISO9660 UUID (which is really a timestamp - see /dev/disk/by-uuid).
Return its contents as a 16-byte bytevector. Return #f if STR is not a valid
ISO9660 UUID representation."
(and=> (regexp-exec %iso9660-uuid-rx str)
(lambda (match)
(letrec-syntax ((match-numerals
(syntax-rules ()
((_ index (name rest ...) body)
(let ((name (match:substring match index)))
(match-numerals (+ 1 index) (rest ...) body)))
((_ index () body)
body))))
(match-numerals 1 (year month day hour minute second hundredths)
(string->utf8 (string-append year month day
hour minute second hundredths)))))))
(define (iso9660-superblock? sblock)
"Return #t when SBLOCK is an iso9660 volume descriptor."
(bytevector=? (sub-bytevector sblock 1 6)
@@ -282,6 +308,20 @@ SBLOCK as a bytevector. If that's not set, returns the creation time."
modification-time)))
(sub-bytevector time 0 16))) ; strips GMT offset.
(define (iso9660-uuid->string uuid)
"Given an UUID bytevector, return its timestamp string."
(define (digits->string bytes)
(latin1->string bytes (lambda (c) #f)))
(let* ((year (sub-bytevector uuid 0 4))
(month (sub-bytevector uuid 4 2))
(day (sub-bytevector uuid 6 2))
(hour (sub-bytevector uuid 8 2))
(minute (sub-bytevector uuid 10 2))
(second (sub-bytevector uuid 12 2))
(hundredths (sub-bytevector uuid 14 2))
(parts (list year month day hour minute second hundredths)))
(string-append (string-join (map digits->string parts) "-"))))
(define (iso9660-superblock-volume-name sblock)
"Return the volume name of SBLOCK as a string. The volume name is an ASCII
string. Trailing spaces are trimmed."
@@ -333,16 +373,15 @@ not valid header was found."
(define (disk-partitions)
"Return the list of device names corresponding to valid disk partitions."
(define (last-character str)
(string-ref str (- (string-length str) 1)))
(define (partition? name major minor)
;; grub-mkrescue does some funny things for EFI support which
;; makes it a lot more difficult than one would expect to support
;; booting an ISO-9660 image from an USB flash drive.
;; For example there's a buggy (too small) hidden partition in it
;; which Linux mounts and then proceeds to fail while trying to
;; fall off the edge.
;; In any case, partition tables are supposed to be optional so
;; here we allow checking entire disks for file systems, too.
(> major 2)) ;ignore RAM disks and floppy disks
;; Select device names that end in a digit, like libblkid's 'probe_all'
;; function does. Checking for "/sys/dev/block/MAJOR:MINOR/partition"
;; doesn't work for partitions coming from mapped devices.
(and (char-set-contains? char-set:digit (last-character name))
(> major 2))) ;ignore RAM disks and floppy disks
(call-with-input-file "/proc/partitions"
(lambda (port)
@@ -413,9 +452,7 @@ partition field reader that returned a value."
(partition-field-reader read-btrfs-superblock
btrfs-superblock-volume-name)
(partition-field-reader read-fat32-superblock
fat32-superblock-volume-name)
(partition-field-reader read-fat16-superblock
fat16-superblock-volume-name)))
fat32-superblock-volume-name)))
(define %partition-uuid-readers
(list (partition-field-reader read-iso9660-superblock
@@ -425,9 +462,7 @@ partition field reader that returned a value."
(partition-field-reader read-btrfs-superblock
btrfs-superblock-uuid)
(partition-field-reader read-fat32-superblock
fat32-superblock-uuid)
(partition-field-reader read-fat16-superblock
fat16-superblock-uuid)))
fat32-superblock-uuid)))
(define read-partition-label
(cut read-partition-field <> %partition-label-readers))
@@ -448,12 +483,12 @@ was READ is = to the given value."
(partition-predicate read-partition-label string=?))
(define partition-uuid-predicate
(partition-predicate read-partition-uuid uuid=?))
(partition-predicate read-partition-uuid bytevector=?))
(define luks-partition-uuid-predicate
(partition-predicate
(partition-field-reader read-luks-header luks-header-uuid)
uuid=?))
bytevector=?))
(define (find-partition predicate)
"Return the first partition found that matches PREDICATE, or #f if none
@@ -472,6 +507,65 @@ were found."
(define find-partition-by-luks-uuid
(find-partition luks-partition-uuid-predicate))
;;;
;;; UUIDs.
;;;
(define-syntax %network-byte-order
(identifier-syntax (endianness big)))
(define (uuid->string uuid)
"Convert UUID, a 16-byte bytevector, to its string representation, something
like \"6b700d61-5550-48a1-874c-a3d86998990e\"."
;; See <https://tools.ietf.org/html/rfc4122>.
(let ((time-low (bytevector-uint-ref uuid 0 %network-byte-order 4))
(time-mid (bytevector-uint-ref uuid 4 %network-byte-order 2))
(time-hi (bytevector-uint-ref uuid 6 %network-byte-order 2))
(clock-seq (bytevector-uint-ref uuid 8 %network-byte-order 2))
(node (bytevector-uint-ref uuid 10 %network-byte-order 6)))
(format #f "~8,'0x-~4,'0x-~4,'0x-~4,'0x-~12,'0x"
time-low time-mid time-hi clock-seq node)))
(define %uuid-rx
;; The regexp of a UUID.
(make-regexp "^([[:xdigit:]]{8})-([[:xdigit:]]{4})-([[:xdigit:]]{4})-([[:xdigit:]]{4})-([[:xdigit:]]{12})$"))
(define (string->uuid str)
"Parse STR as a DCE UUID (see <https://tools.ietf.org/html/rfc4122>) and
return its contents as a 16-byte bytevector. Return #f if STR is not a valid
UUID representation."
(and=> (regexp-exec %uuid-rx str)
(lambda (match)
(letrec-syntax ((hex->number
(syntax-rules ()
((_ index)
(string->number (match:substring match index)
16))))
(put!
(syntax-rules ()
((_ bv index (number len) rest ...)
(begin
(bytevector-uint-set! bv index number
(endianness big) len)
(put! bv (+ index len) rest ...)))
((_ bv index)
bv))))
(let ((time-low (hex->number 1))
(time-mid (hex->number 2))
(time-hi (hex->number 3))
(clock-seq (hex->number 4))
(node (hex->number 5))
(uuid (make-bytevector 16)))
(put! uuid 0
(time-low 4) (time-mid 2) (time-hi 2)
(clock-seq 2) (node 6)))))))
(define string->ext2-uuid string->uuid)
(define string->ext3-uuid string->uuid)
(define string->ext4-uuid string->uuid)
(define string->btrfs-uuid string->uuid)
(define* (canonicalize-device-spec spec #:optional (title 'any))
"Return the device name corresponding to SPEC. TITLE is a symbol, one of
@@ -481,7 +575,8 @@ the following:
\"/dev/sda1\";
• 'label', in which case SPEC is known to designate a partition label--e.g.,
\"my-root-part\";
• 'uuid', in which case SPEC must be a UUID designating a partition;
• 'uuid', in which case SPEC must be a UUID (a 16-byte bytevector)
designating a partition;
• 'any', in which case SPEC can be anything.
"
(define max-trials
@@ -527,11 +622,9 @@ the following:
(resolve find-partition-by-label spec identity))
((uuid)
(resolve find-partition-by-uuid
(cond ((string? spec)
(string->uuid spec))
((uuid? spec)
(uuid-bytevector spec))
(else spec))
(if (string? spec)
(string->uuid spec)
spec)
uuid->string))
(else
(error "unknown device title" title))))
@@ -542,7 +635,7 @@ the following:
(cond
((string-prefix? "ext" type) check-ext2-file-system)
((string-prefix? "btrfs" type) check-btrfs-file-system)
((string-suffix? "fat" type) check-fat-file-system)
((string-suffix? "fat" type) check-fat32-file-system)
(else #f)))
(if check-procedure
@@ -586,8 +679,11 @@ corresponds to the symbols listed in FLAGS."
(()
0))))
(define* (mount-file-system fs #:key (root "/root"))
"Mount the file system described by FS, a <file-system> object, under ROOT.
(define* (mount-file-system spec #:key (root "/root"))
"Mount the file system described by SPEC under ROOT. SPEC must have the
form:
(DEVICE TITLE MOUNT-POINT TYPE (FLAGS ...) OPTIONS CHECK?)
DEVICE, MOUNT-POINT, and TYPE must be strings; OPTIONS can be a string or #f;
FLAGS must be a list of symbols. CHECK? is a Boolean indicating whether to
@@ -613,36 +709,34 @@ run a file system check."
(if options
(string-append "," options)
"")))))
(let ((type (file-system-type fs))
(options (file-system-options fs))
(source (canonicalize-device-spec (file-system-device fs)
(file-system-title fs)))
(mount-point (string-append root "/"
(file-system-mount-point fs)))
(flags (mount-flags->bit-mask (file-system-flags fs))))
(when (file-system-check? fs)
(check-file-system source type))
(match spec
((source title mount-point type (flags ...) options check?)
(let ((source (canonicalize-device-spec source title))
(mount-point (string-append root "/" mount-point))
(flags (mount-flags->bit-mask flags)))
(when check?
(check-file-system source type))
;; Create the mount point. Most of the time this is a directory, but
;; in the case of a bind mount, a regular file or socket may be needed.
(if (and (= MS_BIND (logand flags MS_BIND))
(not (file-is-directory? source)))
(unless (file-exists? mount-point)
(mkdir-p (dirname mount-point))
(call-with-output-file mount-point (const #t)))
(mkdir-p mount-point))
;; Create the mount point. Most of the time this is a directory, but
;; in the case of a bind mount, a regular file or socket may be needed.
(if (and (= MS_BIND (logand flags MS_BIND))
(not (file-is-directory? source)))
(unless (file-exists? mount-point)
(mkdir-p (dirname mount-point))
(call-with-output-file mount-point (const #t)))
(mkdir-p mount-point))
(cond
((string-prefix? "nfs" type)
(mount-nfs source mount-point type flags options))
(else
(mount source mount-point type flags options)))
(cond
((string-prefix? "nfs" type)
(mount-nfs source mount-point type flags options))
(else
(mount source mount-point type flags options)))
;; For read-only bind mounts, an extra remount is needed, as per
;; <http://lwn.net/Articles/281157/>, which still applies to Linux 4.0.
(when (and (= MS_BIND (logand flags MS_BIND))
(= MS_RDONLY (logand flags MS_RDONLY)))
(let ((flags (logior MS_BIND MS_REMOUNT MS_RDONLY)))
(mount source mount-point type flags #f)))))
;; For read-only bind mounts, an extra remount is needed, as per
;; <http://lwn.net/Articles/281157/>, which still applies to Linux 4.0.
(when (and (= MS_BIND (logand flags MS_BIND))
(= MS_RDONLY (logand flags MS_RDONLY)))
(let ((flags (logior MS_BIND MS_REMOUNT MS_RDONLY)))
(mount source mount-point type flags #f)))))))
;;; file-systems.scm ends here
+40 -23
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;;
;;; This file is part of GNU Guix.
@@ -21,16 +21,15 @@
#:use-module (rnrs io ports)
#:use-module (system repl error-handling)
#:autoload (system repl repl) (start-repl)
#:autoload (system base compile) (compile-file)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26)
#:use-module (ice-9 match)
#:use-module (ice-9 ftw)
#:use-module (guix build utils)
#:use-module ((guix build syscalls)
#:hide (file-system-type))
#:use-module (guix build syscalls)
#:use-module (gnu build linux-modules)
#:use-module (gnu build file-systems)
#:use-module (gnu system file-systems)
#:export (mount-essential-file-systems
linux-command-line
find-long-option
@@ -240,10 +239,20 @@ the last argument of `mknod'."
(filter-map string->number (scandir "/proc")))))
(define* (mount-root-file-system root type
#:key volatile-root?)
#:key volatile-root? (unionfs "unionfs"))
"Mount the root file system of type TYPE at device ROOT. If VOLATILE-ROOT?
is true, mount ROOT read-only and make it a overlay with a writable tmpfs
using the kernel build-in overlayfs."
is true, mount ROOT read-only and make it a union with a writable tmpfs using
UNIONFS."
(define (mark-as-not-killable pid)
;; Tell the 'user-processes' shepherd service that PID must be kept alive
;; when shutting down.
(mkdir-p "/root/etc/shepherd")
(let ((port (open-file "/root/etc/shepherd/do-not-kill" "a")))
(chmod port #o600)
(write pid port)
(newline port)
(close-port port)))
(if volatile-root?
(begin
(mkdir-p "/real-root")
@@ -251,17 +260,24 @@ using the kernel build-in overlayfs."
(mkdir-p "/rw-root")
(mount "none" "/rw-root" "tmpfs")
;; Create the upperdir and the workdir of the overlayfs
(mkdir-p "/rw-root/upper")
(mkdir-p "/rw-root/work")
;; We want read-write /dev nodes.
(mkdir-p "/rw-root/upper/dev")
(mount "none" "/rw-root/upper/dev" "devtmpfs")
(mkdir-p "/rw-root/dev")
(mount "none" "/rw-root/dev" "devtmpfs")
;; Make /root an overlay of the tmpfs and the actual root.
(mount "none" "/root" "overlay" 0
"lowerdir=/real-root,upperdir=/rw-root/upper,workdir=/rw-root/work"))
;; Make /root a union of the tmpfs and the actual root. Use
;; 'max_files' to set a high RLIMIT_NOFILE for the unionfs process
;; itself. Failing to do that, we quickly run out of file
;; descriptors; see <http://bugs.gnu.org/17827>.
(unless (zero? (system* unionfs "-o"
"cow,allow_other,use_ino,suid,dev,max_files=65536"
"/rw-root=RW:/real-root=RO"
"/root"))
(error "unionfs failed"))
;; Make sure unionfs remains alive till the end. Because
;; 'fuse_daemonize' doesn't tell the PID of the forked daemon, we
;; have to resort to 'pidof' here.
(mark-as-not-killable (pidof unionfs)))
(begin
(check-file-system root type)
(mount root "/root" type)))
@@ -269,7 +285,6 @@ using the kernel build-in overlayfs."
;; Make sure /root/etc/mtab is a symlink to /proc/self/mounts.
(false-if-exception
(delete-file "/root/etc/mtab"))
(mkdir-p "/root/etc")
(symlink "/proc/self/mounts" "/root/etc/mtab"))
(define (switch-root root)
@@ -334,17 +349,19 @@ supports kernel command-line options '--load', '--root', and '--repl'.
Mount the root file system, specified by the '--root' command-line argument,
if any.
MOUNTS must be a list of <file-system> objects.
MOUNTS must be a list suitable for 'mount-file-system'.
When VOLATILE-ROOT? is true, the root file system is writable but any changes
to it are lost."
(define (root-mount-point? fs)
(string=? (file-system-mount-point fs) "/"))
(define root-mount-point?
(match-lambda
((device _ "/" _ ...) #t)
(_ #f)))
(define root-fs-type
(or (any (lambda (fs)
(and (root-mount-point? fs)
(file-system-type fs)))
(or (any (match-lambda
((device _ "/" type _ ...) type)
(_ #f))
mounts)
"ext4"))
+2 -1
View File
@@ -152,7 +152,8 @@ for the process."
;; Mount user-specified file systems.
(for-each (lambda (file-system)
(mount-file-system file-system #:root root))
(mount-file-system (file-system->spec file-system)
#:root root))
mounts)
;; Jail the process inside the container's root file system.
+15 -31
View File
@@ -165,24 +165,19 @@ QEMU monitor and to the guest's backdoor REPL."
(newline repl)
(read repl))))
(define* (wait-for-file file marionette
#:key (timeout 10) (read 'read))
"Wait until FILE exists in MARIONETTE; READ its content and return it. If
(define* (wait-for-file file marionette #:key (timeout 10))
"Wait until FILE exists in MARIONETTE; 'read' its content and return it. If
FILE has not shown up after TIMEOUT seconds, raise an error."
(match (marionette-eval
`(let loop ((i ,timeout))
(cond ((file-exists? ,file)
(cons 'success (call-with-input-file ,file ,read)))
((> i 0)
(sleep 1)
(loop (- i 1)))
(else
'failure)))
marionette)
(('success . result)
result)
('failure
(error "file didn't show up" file))))
(marionette-eval
`(let loop ((i ,timeout))
(cond ((file-exists? ,file)
(call-with-input-file ,file read))
((> i 0)
(sleep 1)
(loop (- i 1)))
(else
(error "file didn't show up" ,file))))
marionette))
(define (marionette-control command marionette)
"Run COMMAND in the QEMU monitor of MARIONETTE. COMMAND is a string such as
@@ -262,20 +257,9 @@ PREDICATE, whichever comes first. Raise an error when TIMEOUT is exceeded."
(#\. . "dot")
(#\, . "comma")
(#\; . "semicolon")
(#\' . "apostrophe")
(#\" . "shift-apostrophe")
(#\` . "grave_accent")
(#\bs . "backspace")
(#\tab . "tab")))
(define (character->keystroke chr keystrokes)
"Return the keystroke for CHR according to the keyboard layout defined by
KEYSTROKES."
(if (char-set-contains? char-set:upper-case chr)
(string-append "shift-" (string (char-downcase chr)))
(or (assoc-ref keystrokes chr)
(string chr))))
(define* (string->keystroke-commands str
#:optional
(keystrokes
@@ -284,9 +268,9 @@ KEYSTROKES."
to STR. KEYSTROKES is an alist specifying a mapping from characters to
keystrokes."
(string-fold-right (lambda (chr result)
(cons (string-append
"sendkey "
(character->keystroke chr keystrokes))
(cons (string-append "sendkey "
(or (assoc-ref keystrokes chr)
(string chr)))
result))
'()
str))
+4 -6
View File
@@ -60,13 +60,11 @@
(type "tmpfs")
(check? #f)))
(define accounts
(define passwd
;; This is for processes in the default user namespace but living in a
;; different mount namespace, so that they can lookup users.
(list (file-system-mapping
(source "/etc/passwd") (target source))
(file-system-mapping
(source "/etc/group") (target source))))
(file-system-mapping
(source "/etc/passwd") (target source)))
(define nscd-socket
(file-system-mapping
@@ -80,7 +78,7 @@
%network-file-mappings))
,@(if (and (memq 'mnt namespaces)
(not (memq 'user namespaces)))
accounts
(list passwd)
'())
,%store-mapping))) ;XXX: coarse-grain
(map file-system-mapping->bind-mount
+22 -62
View File
@@ -26,7 +26,7 @@
#:use-module (guix build syscalls)
#:use-module (gnu build linux-boot)
#:use-module (gnu build install)
#:use-module (gnu system uuid)
#:use-module (gnu build file-systems)
#:use-module (guix records)
#:use-module ((guix combinators) #:select (fold2))
#:use-module (ice-9 format)
@@ -76,14 +76,11 @@
(qemu (qemu-command)) (memory-size 512)
linux initrd
make-disk-image?
single-file-output?
(disk-image-size (* 100 (expt 2 20)))
(disk-image-format "qcow2")
(references-graphs '()))
"Run BUILDER, a Scheme file, into a VM running LINUX with INITRD, and copy
the result to OUTPUT. If SINGLE-FILE-OUTPUT? is true, copy a single file from
/xchg to OUTPUT. Otherwise, copy the contents of /xchg to a new directory
OUTPUT.
the result to OUTPUT.
When MAKE-DISK-IMAGE? is true, OUTPUT will contain a VM image of
DISK-IMAGE-SIZE bytes resulting from the execution of BUILDER, which may
@@ -140,17 +137,8 @@ the #:references-graphs parameter of 'derivation'."
;; When MAKE-DISK-IMAGE? is true, the image is in OUTPUT already.
(unless make-disk-image?
(if single-file-output?
(let ((graph? (lambda (name stat)
(member (basename name) references-graphs))))
(match (find-files "xchg" (negate graph?))
((result)
(copy-file result output))
(x
(error "did not find a single result file" x))))
(begin
(mkdir output)
(copy-recursively "xchg" output)))))
(mkdir output)
(copy-recursively "xchg" output)))
;;;
@@ -163,15 +151,14 @@ the #:references-graphs parameter of 'derivation'."
(size partition-size)
(file-system partition-file-system (default "ext4"))
(label partition-label (default #f))
(uuid partition-uuid (default #f))
(flags partition-flags (default '()))
(initializer partition-initializer (default (const #t))))
(define (estimated-partition-size graphs)
"Return the estimated size of a partition that can store the store items
given by GRAPHS, a list of file names produced by #:references-graphs."
;; Simply add a 25% overhead.
(round (* 1.25 (closure-size graphs))))
;; Simply add a 20% overhead.
(round (* 1.2 (closure-size graphs))))
(define* (initialize-partition-table device partitions
#:key
@@ -237,26 +224,22 @@ actual /dev name based on DEVICE."
(define MS_BIND 4096) ; <sys/mounts.h> again!
(define* (create-ext-file-system partition type
#:key label uuid)
#:key label)
"Create an ext-family filesystem of TYPE on PARTITION. If LABEL is true,
use that as the volume name. If UUID is true, use it as the partition UUID."
use that as the volume name."
(format #t "creating ~a partition...\n" type)
(unless (zero? (apply system* (string-append "mkfs." type)
"-F" partition
`(,@(if label
`("-L" ,label)
'())
,@(if uuid
`("-U" ,(uuid->string uuid))
'()))))
(if label
`("-L" ,label)
'())))
(error "failed to create partition")))
(define* (create-fat-file-system partition
#:key label uuid)
#:key label)
"Create a FAT filesystem on PARTITION. The number of File Allocation Tables
will be determined based on filesystem size. If LABEL is true, use that as the
volume name."
;; FIXME: UUID is ignored!
(format #t "creating FAT partition...\n")
(unless (zero? (apply system* "mkfs.fat" partition
(if label
@@ -265,13 +248,13 @@ volume name."
(error "failed to create FAT partition")))
(define* (format-partition partition type
#:key label uuid)
#:key label)
"Create a file system TYPE on PARTITION. If LABEL is true, use that as the
volume name."
(cond ((string-prefix? "ext" type)
(create-ext-file-system partition type #:label label #:uuid uuid))
(create-ext-file-system partition type #:label label))
((or (string-prefix? "fat" type) (string= "vfat" type))
(create-fat-file-system partition #:label label #:uuid uuid))
(create-fat-file-system partition #:label label))
(else (error "Unsupported file system."))))
(define (initialize-partition partition)
@@ -280,8 +263,7 @@ it, run its initializer, and unmount it."
(let ((target "/fs"))
(format-partition (partition-device partition)
(partition-file-system partition)
#:label (partition-label partition)
#:uuid (partition-uuid partition))
#:label (partition-label partition))
(mkdir-p target)
(mount (partition-device partition) target
(partition-file-system partition))
@@ -372,37 +354,18 @@ SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation."
(error "failed to create GRUB EFI image"))))
(define* (make-iso9660-image grub config-file os-drv target
#:key (volume-id "GuixSD_image") (volume-uuid #f)
register-closures? (closures '()))
#:key (volume-id "GuixSD") (volume-uuid #f))
"Given a GRUB package, creates an iso image as TARGET, using CONFIG-FILE as
GRUB configuration and OS-DRV as the stuff in it."
(let ((grub-mkrescue (string-append grub "/bin/grub-mkrescue"))
(target-store (string-append "/tmp/root" (%store-directory))))
(populate-root-file-system os-drv "/tmp/root")
(mount (%store-directory) target-store "" MS_BIND)
(when register-closures?
(display "registering closures...\n")
(for-each (lambda (closure)
(register-closure
"/tmp/root"
(string-append "/xchg/" closure)
;; XXX: Using deduplication causes cross device link errors.
#:deduplicate? #f))
closures))
Grub configuration and OS-DRV as the stuff in it."
(let ((grub-mkrescue (string-append grub "/bin/grub-mkrescue")))
(mkdir-p "/tmp/root/var/run")
(mkdir-p "/tmp/root/run")
(unless (zero? (apply system*
`(,grub-mkrescue "-o" ,target
,(string-append "boot/grub/grub.cfg=" config-file)
,(string-append "gnu/store=" os-drv "/..")
"etc=/tmp/root/etc"
"var=/tmp/root/var"
"run=/tmp/root/run"
;; /mnt is used as part of the installation
;; process, as the mount point for the target
;; filesystem, so create it.
"mnt=/tmp/root/mnt"
"--"
"-volid" ,(string-upcase volume-id)
,@(if volume-uuid
@@ -464,14 +427,11 @@ passing it a directory name where it is mounted."
;; Create a tiny configuration file telling the embedded grub
;; where to load the real thing.
;; XXX This is quite fragile, and can prevent the image from booting
;; when there's more than one volume with this label present.
;; Reproducible almost-UUIDs could reduce the risk (not eliminate it).
(call-with-output-file grub-config
(lambda (port)
(format port
"insmod part_msdos~@
search --set=root --label GuixSD_image~@
search --set=root --label gnu-disk-image~@
configfile /boot/grub/grub.cfg~%")))
(display "creating EFI firmware image...")
+81 -162
View File
@@ -2,16 +2,15 @@
# Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2013, 2014, 2015, 2016, 2017 Andreas Enge <andreas@enge.fr>
# Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
# Copyright © 2013, 2014, 2015, 2016, 2017 Mark H Weaver <mhw@netris.org>
# Copyright © 2013, 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
# Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
# Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net>
# Copyright © 2016, 2017 Kei Kebreau <kei@openmailbox.org>
# Copyright © 2016, 2017 Rene Saavedra <rennes@openmailbox.org>
# Copyright © 2016 Adonay "adfeno" Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@openmailbox.org>
# Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
# Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
# Copyright © 2016, 2017 Alex Vong <alexvong1995@gmail.com>
# Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
# Copyright © 2016, 2017 Jan Nieuwenhuizen <janneke@gnu.org>
# Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
# Copyright © 2017 Clément Lassieur <clement@lassieur.org>
# Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
@@ -41,7 +40,6 @@ GNU_SYSTEM_MODULES = \
%D%/bootloader.scm \
%D%/bootloader/grub.scm \
%D%/bootloader/extlinux.scm \
%D%/bootloader/u-boot.scm \
%D%/packages.scm \
%D%/packages/abduco.scm \
%D%/packages/abiword.scm \
@@ -67,7 +65,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/autotools.scm \
%D%/packages/avahi.scm \
%D%/packages/avr.scm \
%D%/packages/axoloti.scm \
%D%/packages/backup.scm \
%D%/packages/base.scm \
%D%/packages/bash.scm \
@@ -89,9 +86,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/check.scm \
%D%/packages/chez.scm \
%D%/packages/ci.scm \
%D%/packages/cinnamon.scm \
%D%/packages/cmake.scm \
%D%/packages/cobol.scm \
%D%/packages/code.scm \
%D%/packages/commencement.scm \
%D%/packages/compression.scm \
@@ -103,7 +98,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/cpio.scm \
%D%/packages/cpp.scm \
%D%/packages/cppi.scm \
%D%/packages/cran.scm \
%D%/packages/cross-base.scm \
%D%/packages/crypto.scm \
%D%/packages/cryptsetup.scm \
@@ -143,7 +137,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/enlightenment.scm \
%D%/packages/entr.scm \
%D%/packages/erlang.scm \
%D%/packages/fabric-management.scm \
%D%/packages/fcitx.scm \
%D%/packages/figlet.scm \
%D%/packages/file.scm \
@@ -156,7 +149,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/fonts.scm \
%D%/packages/fontutils.scm \
%D%/packages/fpga.scm \
%D%/packages/forth.scm \
%D%/packages/freedesktop.scm \
%D%/packages/freeipmi.scm \
%D%/packages/ftp.scm \
@@ -171,6 +163,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/gdb.scm \
%D%/packages/geo.scm \
%D%/packages/gettext.scm \
%D%/packages/gforth.scm \
%D%/packages/ghostscript.scm \
%D%/packages/gimp.scm \
%D%/packages/gkrellm.scm \
@@ -189,7 +182,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/gperf.scm \
%D%/packages/gprolog.scm \
%D%/packages/gps.scm \
%D%/packages/graph.scm \
%D%/packages/graphics.scm \
%D%/packages/graphviz.scm \
%D%/packages/groff.scm \
@@ -201,10 +193,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/gv.scm \
%D%/packages/gxmessage.scm \
%D%/packages/haskell.scm \
%D%/packages/haskell-check.scm \
%D%/packages/haskell-crypto.scm \
%D%/packages/haskell-web.scm \
%D%/packages/ham-radio.scm \
%D%/packages/hexedit.scm \
%D%/packages/hugs.scm \
%D%/packages/hurd.scm \
@@ -276,13 +264,12 @@ GNU_SYSTEM_MODULES = \
%D%/packages/maths.scm \
%D%/packages/mc.scm \
%D%/packages/mcrypt.scm \
%D%/packages/medical.scm \
%D%/packages/mes.scm \
%D%/packages/messaging.scm \
%D%/packages/mingw.scm \
%D%/packages/mg.scm \
%D%/packages/microcom.scm \
%D%/packages/moe.scm \
%D%/packages/motti.scm \
%D%/packages/monitoring.scm \
%D%/packages/mono.scm \
%D%/packages/moreutils.scm \
@@ -325,7 +312,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/pdf.scm \
%D%/packages/pem.scm \
%D%/packages/perl.scm \
%D%/packages/perl-check.scm \
%D%/packages/perl-web.scm \
%D%/packages/photo.scm \
%D%/packages/php.scm \
@@ -333,7 +319,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/plotutils.scm \
%D%/packages/polkit.scm \
%D%/packages/popt.scm \
%D%/packages/profiling.scm \
%D%/packages/pth.scm \
%D%/packages/pulseaudio.scm \
%D%/packages/pumpio.scm \
@@ -341,9 +326,8 @@ GNU_SYSTEM_MODULES = \
%D%/packages/protobuf.scm \
%D%/packages/pv.scm \
%D%/packages/python.scm \
%D%/packages/python-crypto.scm \
%D%/packages/python-web.scm \
%D%/packages/tryton.scm \
%D%/packages/qemu.scm \
%D%/packages/qt.scm \
%D%/packages/ragel.scm \
%D%/packages/rails.scm \
@@ -375,12 +359,10 @@ GNU_SYSTEM_MODULES = \
%D%/packages/shells.scm \
%D%/packages/shellutils.scm \
%D%/packages/simh.scm \
%D%/packages/simulation.scm \
%D%/packages/skarnet.scm \
%D%/packages/skribilo.scm \
%D%/packages/slang.scm \
%D%/packages/smalltalk.scm \
%D%/packages/sml.scm \
%D%/packages/speech.scm \
%D%/packages/spice.scm \
%D%/packages/ssh.scm \
@@ -391,7 +373,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/suckless.scm \
%D%/packages/swig.scm \
%D%/packages/sync.scm \
%D%/packages/syncthing.scm \
%D%/packages/synergy.scm \
%D%/packages/syndication.scm \
%D%/packages/task-management.scm \
@@ -416,7 +397,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/version-control.scm \
%D%/packages/video.scm \
%D%/packages/vim.scm \
%D%/packages/virtualization.scm \
%D%/packages/vpn.scm \
%D%/packages/w3m.scm \
%D%/packages/wdiff.scm \
@@ -441,10 +421,8 @@ GNU_SYSTEM_MODULES = \
\
%D%/services.scm \
%D%/services/admin.scm \
%D%/services/audio.scm \
%D%/services/avahi.scm \
%D%/services/base.scm \
%D%/services/certbot.scm \
%D%/services/configuration.scm \
%D%/services/cuirass.scm \
%D%/services/cups.scm \
@@ -455,7 +433,6 @@ GNU_SYSTEM_MODULES = \
%D%/services/dns.scm \
%D%/services/kerberos.scm \
%D%/services/lirc.scm \
%D%/services/virtualization.scm \
%D%/services/mail.scm \
%D%/services/mcron.scm \
%D%/services/messaging.scm \
@@ -464,12 +441,10 @@ GNU_SYSTEM_MODULES = \
%D%/services/shepherd.scm \
%D%/services/herd.scm \
%D%/services/pm.scm \
%D%/services/rsync.scm \
%D%/services/sddm.scm \
%D%/services/spice.scm \
%D%/services/ssh.scm \
%D%/services/sysctl.scm \
%D%/services/telephony.scm \
%D%/services/version-control.scm \
%D%/services/vpn.scm \
%D%/services/web.scm \
@@ -485,7 +460,6 @@ GNU_SYSTEM_MODULES = \
%D%/system/nss.scm \
%D%/system/pam.scm \
%D%/system/shadow.scm \
%D%/system/uuid.scm \
%D%/system/vm.scm \
\
%D%/build/activation.scm \
@@ -497,29 +471,22 @@ GNU_SYSTEM_MODULES = \
%D%/build/linux-initrd.scm \
%D%/build/linux-modules.scm \
%D%/build/marionette.scm \
%D%/build/shepherd.scm \
%D%/build/vm.scm \
\
%D%/tests.scm \
%D%/tests/admin.scm \
%D%/tests/audio.scm \
%D%/tests/base.scm \
%D%/tests/databases.scm \
%D%/tests/desktop.scm \
%D%/tests/dict.scm \
%D%/tests/nfs.scm \
%D%/tests/install.scm \
%D%/tests/mail.scm \
%D%/tests/messaging.scm \
%D%/tests/networking.scm \
%D%/tests/rsync.scm \
%D%/tests/ssh.scm \
%D%/tests/version-control.scm \
%D%/tests/virtualization.scm \
%D%/tests/web.scm
# Modules that do not need to be compiled.
MODULES_NOT_COMPILED += \
%D%/build/shepherd.scm \
%D%/build/svg.scm
patchdir = $(guilemoduledir)/%D%/packages/patches
@@ -543,7 +510,6 @@ dist_patch_DATA = \
%D%/packages/patches/ath9k-htc-firmware-binutils.patch \
%D%/packages/patches/ath9k-htc-firmware-gcc.patch \
%D%/packages/patches/ath9k-htc-firmware-objcopy.patch \
%D%/packages/patches/audacity-build-with-system-portaudio.patch \
%D%/packages/patches/automake-skip-amhello-tests.patch \
%D%/packages/patches/automake-regexp-syntax.patch \
%D%/packages/patches/automake-test-gzip-warning.patch \
@@ -552,15 +518,15 @@ 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/bigloo-gc-shebangs.patch \
%D%/packages/patches/binutils-ld-new-dtags.patch \
%D%/packages/patches/binutils-loongson-workaround.patch \
%D%/packages/patches/blast+-fix-makefile.patch \
%D%/packages/patches/binutils-mips-bash-bug.patch \
%D%/packages/patches/byobu-writable-status.patch \
%D%/packages/patches/cairo-CVE-2016-9082.patch \
%D%/packages/patches/calibre-drop-unrar.patch \
%D%/packages/patches/calibre-no-updates-dialog.patch \
%D%/packages/patches/calibre-use-packaged-feedparser.patch \
%D%/packages/patches/catdoc-CVE-2017-11110.patch \
%D%/packages/patches/cdparanoia-fpic.patch \
%D%/packages/patches/cdrtools-3.01-mkisofs-isoinfo.patch \
%D%/packages/patches/ceph-disable-cpu-optimizations.patch \
@@ -568,11 +534,9 @@ dist_patch_DATA = \
%D%/packages/patches/ceph-skip-collect-sys-info-test.patch \
%D%/packages/patches/ceph-skip-unittest_blockdev.patch \
%D%/packages/patches/chicken-CVE-2017-6949.patch \
%D%/packages/patches/chicken-CVE-2017-11343.patch \
%D%/packages/patches/chmlib-inttypes.patch \
%D%/packages/patches/clang-libc-search-path.patch \
%D%/packages/patches/clang-3.8-libc-search-path.patch \
%D%/packages/patches/clisp-remove-failing-test.patch \
%D%/packages/patches/clucene-pkgconfig.patch \
%D%/packages/patches/clx-remove-demo.patch \
%D%/packages/patches/cmake-fix-tests.patch \
@@ -582,6 +546,7 @@ dist_patch_DATA = \
%D%/packages/patches/cool-retro-term-memory-leak-1.patch \
%D%/packages/patches/cool-retro-term-remove-non-free-fonts.patch \
%D%/packages/patches/coreutils-cut-huge-range-test.patch \
%D%/packages/patches/coreutils-fix-cross-compilation.patch \
%D%/packages/patches/cpio-CVE-2016-2037.patch \
%D%/packages/patches/cpufrequtils-fix-aclocal.patch \
%D%/packages/patches/cracklib-CVE-2016-6318.patch \
@@ -589,36 +554,30 @@ dist_patch_DATA = \
%D%/packages/patches/crawl-upgrade-saves.patch \
%D%/packages/patches/crda-optional-gcrypt.patch \
%D%/packages/patches/crossmap-allow-system-pysam.patch \
%D%/packages/patches/crypto++-fix-dos-in-asn.1-decoders.patch \
%D%/packages/patches/csound-header-ordering.patch \
%D%/packages/patches/clucene-contribs-lib.patch \
%D%/packages/patches/cube-nocheck.patch \
%D%/packages/patches/cursynth-wave-rand.patch \
%D%/packages/patches/cvs-2017-12836.patch \
%D%/packages/patches/cyrus-sasl-CVE-2013-4122.patch \
%D%/packages/patches/dblatex-remove-multirow.patch \
%D%/packages/patches/dbus-helper-search-path.patch \
%D%/packages/patches/deja-dup-use-ref-keyword-for-iter.patch \
%D%/packages/patches/dfu-programmer-fix-libusb.patch \
%D%/packages/patches/diffutils-gets-undeclared.patch \
%D%/packages/patches/doc++-include-directives.patch \
%D%/packages/patches/doc++-segfault-fix.patch \
%D%/packages/patches/doxygen-test.patch \
%D%/packages/patches/dtc-format-modifier.patch \
%D%/packages/patches/dtc-32-bits-check.patch \
%D%/packages/patches/dvd+rw-tools-add-include.patch \
%D%/packages/patches/elfutils-tests-ptrace.patch \
%D%/packages/patches/elixir-disable-failing-tests.patch \
%D%/packages/patches/einstein-build.patch \
%D%/packages/patches/emacs-exec-path.patch \
%D%/packages/patches/emacs-fix-scheme-indent-function.patch \
%D%/packages/patches/emacs-highlight-stages-add-gexp.patch \
%D%/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch \
%D%/packages/patches/emacs-source-date-epoch.patch \
%D%/packages/patches/erlang-man-path.patch \
%D%/packages/patches/eudev-rules-directory.patch \
%D%/packages/patches/eudev-conflicting-declaration.patch \
%D%/packages/patches/evilwm-lost-focus-bug.patch \
%D%/packages/patches/exiv2-CVE-2017-14860.patch \
%D%/packages/patches/exiv2-CVE-2017-14859-14862-14864.patch \
%D%/packages/patches/expat-CVE-2016-0718-fix-regression.patch \
%D%/packages/patches/exim-CVE-2017-1000369.patch \
%D%/packages/patches/fabric-tests.patch \
%D%/packages/patches/fastcap-mulGlobal.patch \
%D%/packages/patches/fastcap-mulSetup.patch \
%D%/packages/patches/fasthenry-spAllocate.patch \
@@ -628,27 +587,26 @@ dist_patch_DATA = \
%D%/packages/patches/fasthenry-spFactor.patch \
%D%/packages/patches/fcgi-2.4.0-gcc44-fixes.patch \
%D%/packages/patches/fcgi-2.4.0-poll.patch \
%D%/packages/patches/file-CVE-2017-1000249.patch \
%D%/packages/patches/findutils-localstatedir.patch \
%D%/packages/patches/findutils-gnulib-multi-core.patch \
%D%/packages/patches/findutils-test-xargs.patch \
%D%/packages/patches/flint-ldconfig.patch \
%D%/packages/patches/fltk-shared-lib-defines.patch \
%D%/packages/patches/fltk-xfont-on-demand.patch \
%D%/packages/patches/foomatic-filters-CVE-2015-8327.patch \
%D%/packages/patches/foomatic-filters-CVE-2015-8560.patch \
%D%/packages/patches/fontconfig-charwidth-symbol-conflict.patch \
%D%/packages/patches/fontconfig-path-max.patch \
%D%/packages/patches/fontforge-svg-modtime.patch \
%D%/packages/patches/freeimage-CVE-2015-0852.patch \
%D%/packages/patches/freeimage-CVE-2016-5684.patch \
%D%/packages/patches/freeimage-fix-build-with-gcc-5.patch \
%D%/packages/patches/freetype-CVE-2017-8105.patch \
%D%/packages/patches/freetype-CVE-2017-8287.patch \
%D%/packages/patches/fuse-overlapping-headers.patch \
%D%/packages/patches/gawk-shell.patch \
%D%/packages/patches/gcc-arm-bug-71399.patch \
%D%/packages/patches/gcc-arm-link-spec-fix.patch \
%D%/packages/patches/gcc-asan-powerpc-missing-include.patch \
%D%/packages/patches/gcc-cross-environment-variables.patch \
%D%/packages/patches/gcc-libvtv-runpath.patch \
%D%/packages/patches/gcc-strmov-store-file-names.patch \
%D%/packages/patches/gcc-4-compile-with-gcc-5.patch \
%D%/packages/patches/gcc-4.6-gnu-inline.patch \
%D%/packages/patches/gcc-4.9.3-mingw-gthr-default.patch \
%D%/packages/patches/gcc-5.0-libvtv-runpath.patch \
@@ -656,34 +614,30 @@ dist_patch_DATA = \
%D%/packages/patches/gcc-5-source-date-epoch-2.patch \
%D%/packages/patches/gcc-6-arm-none-eabi-multilib.patch \
%D%/packages/patches/gcc-6-cross-environment-variables.patch \
%D%/packages/patches/gcc-6-source-date-epoch-1.patch \
%D%/packages/patches/gcc-6-source-date-epoch-2.patch \
%D%/packages/patches/gcr-disable-failing-tests.patch \
%D%/packages/patches/gcr-fix-collection-tests-to-work-with-gpg-21.patch \
%D%/packages/patches/gdk-pixbuf-list-dir.patch \
%D%/packages/patches/gd-fix-gd2-read-test.patch \
%D%/packages/patches/gd-fix-tests-on-i686.patch \
%D%/packages/patches/gd-freetype-test-failure.patch \
%D%/packages/patches/gd-php-73968-Fix-109-XBM-reading.patch \
%D%/packages/patches/gegl-CVE-2012-4433.patch \
%D%/packages/patches/gemma-intel-compat.patch \
%D%/packages/patches/geoclue-config.patch \
%D%/packages/patches/gettext-multi-core.patch \
%D%/packages/patches/gettext-gnulib-multi-core.patch \
%D%/packages/patches/ghc-dont-pass-linker-flags-via-response-files.patch \
%D%/packages/patches/ghostscript-CVE-2013-5653.patch \
%D%/packages/patches/ghostscript-CVE-2015-3228.patch \
%D%/packages/patches/ghostscript-CVE-2016-7976.patch \
%D%/packages/patches/ghostscript-CVE-2016-7978.patch \
%D%/packages/patches/ghostscript-CVE-2016-7979.patch \
%D%/packages/patches/ghostscript-CVE-2016-8602.patch \
%D%/packages/patches/ghostscript-CVE-2017-8291.patch \
%D%/packages/patches/ghostscript-no-header-id.patch \
%D%/packages/patches/ghostscript-no-header-uuid.patch \
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
%D%/packages/patches/ghostscript-runpath.patch \
%D%/packages/patches/glib-networking-ssl-cert-file.patch \
%D%/packages/patches/glib-tests-timer.patch \
%D%/packages/patches/glibc-CVE-2015-5180.patch \
%D%/packages/patches/glibc-CVE-2015-7547.patch \
%D%/packages/patches/glibc-CVE-2016-3075.patch \
%D%/packages/patches/glibc-CVE-2016-3706.patch \
%D%/packages/patches/glibc-CVE-2016-4429.patch \
%D%/packages/patches/glibc-CVE-2017-1000366-pt1.patch \
%D%/packages/patches/glibc-CVE-2017-1000366-pt2.patch \
%D%/packages/patches/glibc-CVE-2017-1000366-pt3.patch \
%D%/packages/patches/glibc-CVE-2017-15670-15671.patch \
%D%/packages/patches/glibc-bootstrap-system.patch \
%D%/packages/patches/glibc-ldd-x86_64.patch \
%D%/packages/patches/glibc-locales.patch \
@@ -691,7 +645,6 @@ dist_patch_DATA = \
%D%/packages/patches/glibc-o-largefile.patch \
%D%/packages/patches/glibc-vectorized-strcspn-guards.patch \
%D%/packages/patches/glibc-versioned-locpath.patch \
%D%/packages/patches/glusterfs-use-PATH-instead-of-hardcodes.patch \
%D%/packages/patches/glog-gcc-5-demangling.patch \
%D%/packages/patches/gmp-arm-asm-nothumb.patch \
%D%/packages/patches/gmp-faulty-test.patch \
@@ -702,30 +655,19 @@ 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-11403+CVE-2017-14103.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/graphicsmagick-CVE-2017-13775.patch \
%D%/packages/patches/graphicsmagick-CVE-2017-13776+CVE-2017-13777.patch \
%D%/packages/patches/graphicsmagick-CVE-2017-14042.patch \
%D%/packages/patches/graphicsmagick-CVE-2017-14165.patch \
%D%/packages/patches/graphicsmagick-CVE-2017-14649.patch \
%D%/packages/patches/graphite2-ffloat-store.patch \
%D%/packages/patches/grep-gnulib-lock.patch \
%D%/packages/patches/grep-timing-sensitive-test.patch \
%D%/packages/patches/groff-source-date-epoch.patch \
%D%/packages/patches/gsl-test-i686.patch \
%D%/packages/patches/gspell-dash-test.patch \
%D%/packages/patches/guile-1.8-cpp-4.5.patch \
%D%/packages/patches/guile-2.2-default-utf8.patch \
%D%/packages/patches/guile-bytestructures-name-clash.patch \
%D%/packages/patches/guile-default-utf8.patch \
%D%/packages/patches/guile-linux-syscalls.patch \
%D%/packages/patches/guile-present-coding.patch \
%D%/packages/patches/guile-relocatable.patch \
%D%/packages/patches/guile-rsvg-pkgconfig.patch \
%D%/packages/patches/guile-emacs-fix-configure.patch \
%D%/packages/patches/guile-ssh-channel-finalization.patch \
%D%/packages/patches/guile-ssh-double-free.patch \
%D%/packages/patches/guile-ssh-rexec-bug.patch \
%D%/packages/patches/gtk2-respect-GUIX_GTK2_PATH.patch \
%D%/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch \
%D%/packages/patches/gtk2-theme-paths.patch \
@@ -744,26 +686,17 @@ dist_patch_DATA = \
%D%/packages/patches/hdf-eos5-remove-gctp.patch \
%D%/packages/patches/hdf-eos5-fix-szip.patch \
%D%/packages/patches/hdf-eos5-fortrantests.patch \
%D%/packages/patches/heimdal-CVE-2017-6594.patch \
%D%/packages/patches/heimdal-CVE-2017-11103.patch \
%D%/packages/patches/hmmer-remove-cpu-specificity.patch \
%D%/packages/patches/higan-remove-march-native-flag.patch \
%D%/packages/patches/httpd-CVE-2017-9798.patch \
%D%/packages/patches/hop-linker-flags.patch \
%D%/packages/patches/hubbub-sort-entities.patch \
%D%/packages/patches/hurd-fix-eth-multiplexer-dependency.patch \
%D%/packages/patches/hydra-disable-darcs-test.patch \
%D%/packages/patches/icecat-avoid-bundled-libraries.patch \
%D%/packages/patches/icecat-bug-1348660-pt5.patch \
%D%/packages/patches/icecat-bug-1415133.patch \
%D%/packages/patches/icu4c-CVE-2017-7867-CVE-2017-7868.patch \
%D%/packages/patches/icu4c-CVE-2017-14952.patch \
%D%/packages/patches/icu4c-reset-keyword-list-iterator.patch \
%D%/packages/patches/id3lib-CVE-2007-4460.patch \
%D%/packages/patches/ilmbase-fix-tests.patch \
%D%/packages/patches/intltool-perl-compatibility.patch \
%D%/packages/patches/isl-0.11.1-aarch64-support.patch \
%D%/packages/patches/jacal-fix-texinfo.patch \
%D%/packages/patches/java-powermock-fix-java-files.patch \
%D%/packages/patches/jbig2dec-ignore-testtest.patch \
%D%/packages/patches/jbig2dec-CVE-2016-9601.patch \
%D%/packages/patches/jbig2dec-CVE-2017-7885.patch \
@@ -783,7 +716,6 @@ dist_patch_DATA = \
%D%/packages/patches/kobodeluxe-manpage-minus-not-hyphen.patch \
%D%/packages/patches/kobodeluxe-midicon-segmentation-fault.patch \
%D%/packages/patches/kobodeluxe-graphics-window-signed-char.patch \
%D%/packages/patches/ktexteditor-5.39.0-autotests-dependencies.patch \
%D%/packages/patches/laby-make-install.patch \
%D%/packages/patches/lcms-CVE-2016-10165.patch \
%D%/packages/patches/ldc-disable-tests.patch \
@@ -793,7 +725,6 @@ dist_patch_DATA = \
%D%/packages/patches/liba52-link-with-libm.patch \
%D%/packages/patches/liba52-set-soname.patch \
%D%/packages/patches/liba52-use-mtune-not-mcpu.patch \
%D%/packages/patches/libarchive-CVE-2017-14166.patch \
%D%/packages/patches/libbase-fix-includes.patch \
%D%/packages/patches/libbase-use-own-logging.patch \
%D%/packages/patches/libbonobo-activation-test-race.patch \
@@ -801,6 +732,7 @@ dist_patch_DATA = \
%D%/packages/patches/libcroco-CVE-2017-7960.patch \
%D%/packages/patches/libcroco-CVE-2017-7961.patch \
%D%/packages/patches/libdrm-symbol-check.patch \
%D%/packages/patches/libetonyek-build-with-mdds-1.2.patch \
%D%/packages/patches/libevent-dns-tests.patch \
%D%/packages/patches/libevent-2.0-CVE-2016-10195.patch \
%D%/packages/patches/libevent-2.0-CVE-2016-10196.patch \
@@ -811,7 +743,7 @@ dist_patch_DATA = \
%D%/packages/patches/libgit2-0.25.1-mtime-0.patch \
%D%/packages/patches/libgdata-fix-tests.patch \
%D%/packages/patches/libgdata-glib-duplicate-tests.patch \
%D%/packages/patches/libffi-3.2.1-complex-alpha.patch \
%D%/packages/patches/libgit2-use-after-free.patch \
%D%/packages/patches/libjxr-fix-function-signature.patch \
%D%/packages/patches/libjxr-fix-typos.patch \
%D%/packages/patches/liboop-mips64-deplibs-fix.patch \
@@ -821,34 +753,40 @@ dist_patch_DATA = \
%D%/packages/patches/libmad-armv7-thumb-pt2.patch \
%D%/packages/patches/libmad-frame-length.patch \
%D%/packages/patches/libmad-mips-newgcc.patch \
%D%/packages/patches/libmwaw-CVE-2017-9433.patch \
%D%/packages/patches/libsndfile-armhf-type-checks.patch \
%D%/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch \
%D%/packages/patches/libsndfile-CVE-2017-8362.patch \
%D%/packages/patches/libssh-hostname-parser-bug.patch \
%D%/packages/patches/libssh2-fix-build-failure-with-gcrypt.patch \
%D%/packages/patches/libtar-CVE-2013-4420.patch \
%D%/packages/patches/libtasn1-CVE-2017-10790.patch \
%D%/packages/patches/libtasn1-CVE-2017-6891.patch \
%D%/packages/patches/libtheora-config-guess.patch \
%D%/packages/patches/libtiff-CVE-2016-10688.patch \
%D%/packages/patches/libtiff-CVE-2017-9936.patch \
%D%/packages/patches/libtiff-CVE-2016-10092.patch \
%D%/packages/patches/libtiff-CVE-2016-10093.patch \
%D%/packages/patches/libtiff-CVE-2016-10094.patch \
%D%/packages/patches/libtiff-CVE-2017-5225.patch \
%D%/packages/patches/libtiff-assertion-failure.patch \
%D%/packages/patches/libtiff-divide-by-zero-ojpeg.patch \
%D%/packages/patches/libtiff-divide-by-zero-tiffcp.patch \
%D%/packages/patches/libtiff-divide-by-zero-tiffcrop.patch \
%D%/packages/patches/libtiff-divide-by-zero.patch \
%D%/packages/patches/libtiff-heap-overflow-pixarlog-luv.patch \
%D%/packages/patches/libtiff-heap-overflow-tif-dirread.patch \
%D%/packages/patches/libtiff-heap-overflow-tiffcp.patch \
%D%/packages/patches/libtiff-heap-overflow-tiffcrop.patch \
%D%/packages/patches/libtiff-invalid-read.patch \
%D%/packages/patches/libtiff-null-dereference.patch \
%D%/packages/patches/libtiff-tiffcp-underflow.patch \
%D%/packages/patches/libtiff-tiffgetfield-bugs.patch \
%D%/packages/patches/libtiff-tiffycbcrtorgb-integer-overflow.patch \
%D%/packages/patches/libtiff-tiffycbcrtorgbinit-integer-overflow.patch \
%D%/packages/patches/libtirpc-CVE-2017-8779.patch \
%D%/packages/patches/libtorrent-rasterbar-boost-compat.patch \
%D%/packages/patches/libtool-skip-tests2.patch \
%D%/packages/patches/libunistring-gnulib-multi-core.patch \
%D%/packages/patches/libusb-0.1-disable-tests.patch \
%D%/packages/patches/libusb-for-axoloti.patch \
%D%/packages/patches/libvirt-CVE-2017-1000256.patch \
%D%/packages/patches/libunwind-CVE-2015-3239.patch \
%D%/packages/patches/libvpx-CVE-2016-2818.patch \
%D%/packages/patches/libxcb-python-3.5-compat.patch \
%D%/packages/patches/libxml2-CVE-2016-4658.patch \
%D%/packages/patches/libxml2-CVE-2016-5131.patch \
%D%/packages/patches/libxml2-CVE-2017-0663.patch \
%D%/packages/patches/libxml2-CVE-2017-7375.patch \
%D%/packages/patches/libxml2-CVE-2017-7376.patch \
%D%/packages/patches/libxml2-CVE-2017-9047+CVE-2017-9048.patch \
%D%/packages/patches/libxml2-CVE-2017-9049+CVE-2017-9050.patch \
%D%/packages/patches/libxslt-generated-ids.patch \
%D%/packages/patches/libxslt-CVE-2016-4738.patch \
%D%/packages/patches/libxt-guix-search-paths.patch \
@@ -874,6 +812,7 @@ 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 \
@@ -882,43 +821,38 @@ dist_patch_DATA = \
%D%/packages/patches/mcrypt-CVE-2012-4409.patch \
%D%/packages/patches/mcrypt-CVE-2012-4426.patch \
%D%/packages/patches/mcrypt-CVE-2012-4527.patch \
%D%/packages/patches/mesa-fix-32bit-test-failures.patch \
%D%/packages/patches/mesa-skip-disk-cache-test.patch \
%D%/packages/patches/mesa-wayland-egl-symbols-check-mips.patch \
%D%/packages/patches/meson-for-build-rpath.patch \
%D%/packages/patches/metabat-fix-compilation.patch \
%D%/packages/patches/metabat-remove-compilation-date.patch \
%D%/packages/patches/mhash-keygen-test-segfault.patch \
%D%/packages/patches/mingw-w64-5.0rc2-gcc-4.9.3.patch \
%D%/packages/patches/mpc123-initialize-ao.patch \
%D%/packages/patches/module-init-tools-moduledir.patch \
%D%/packages/patches/mongodb-support-unknown-linux-distributions.patch \
%D%/packages/patches/mozjs17-aarch64-support.patch \
%D%/packages/patches/mozjs24-aarch64-support.patch \
%D%/packages/patches/mozjs38-pkg-config-version.patch \
%D%/packages/patches/mozjs38-shell-version.patch \
%D%/packages/patches/mozjs38-tracelogger.patch \
%D%/packages/patches/mozjs38-version-detection.patch \
%D%/packages/patches/multiqc-fix-git-subprocess-error.patch \
%D%/packages/patches/mumps-build-parallelism.patch \
%D%/packages/patches/mupdf-build-with-openjpeg-2.1.patch \
%D%/packages/patches/mupdf-CVE-2017-14685.patch \
%D%/packages/patches/mupdf-CVE-2017-14686.patch \
%D%/packages/patches/mupdf-CVE-2017-14687.patch \
%D%/packages/patches/mupdf-CVE-2017-15587.patch \
%D%/packages/patches/mupen64plus-ui-console-notice.patch \
%D%/packages/patches/musl-CVE-2016-8859.patch \
%D%/packages/patches/mutt-store-references.patch \
%D%/packages/patches/ncurses-CVE-2017-10684-10685.patch \
%D%/packages/patches/net-tools-bitrot.patch \
%D%/packages/patches/netcdf-date-time.patch \
%D%/packages/patches/netcdf-tst_h_par.patch \
%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/newsbeuter-CVE-2017-14500.patch \
%D%/packages/patches/ngircd-handle-zombies.patch \
%D%/packages/patches/ninja-zero-mtime.patch \
%D%/packages/patches/node-test-http2-server-rst-stream.patch \
%D%/packages/patches/node-9077.patch \
%D%/packages/patches/nss-increase-test-timeout.patch \
%D%/packages/patches/nss-pkgconfig.patch \
%D%/packages/patches/ntfs-3g-CVE-2017-0358.patch \
%D%/packages/patches/nvi-assume-preserve-path.patch \
%D%/packages/patches/nvi-dbpagesize-binpower.patch \
%D%/packages/patches/nvi-db4.patch \
@@ -927,40 +861,37 @@ dist_patch_DATA = \
%D%/packages/patches/ocaml-CVE-2015-8869.patch \
%D%/packages/patches/ocaml-Add-a-.file-directive.patch \
%D%/packages/patches/ocaml-findlib-make-install.patch \
%D%/packages/patches/ocaml-graph-honor-source-date-epoch.patch \
%D%/packages/patches/omake-fix-non-determinism.patch \
%D%/packages/patches/ola-readdir-r.patch \
%D%/packages/patches/openscenegraph-ffmpeg3.patch \
%D%/packages/patches/openexr-missing-samples.patch \
%D%/packages/patches/openfoam-4.1-cleanup.patch \
%D%/packages/patches/openjpeg-CVE-2016-9850-CVE-2016-9851.patch \
%D%/packages/patches/openjpeg-CVE-2016-9572-CVE-2016-9573.patch \
%D%/packages/patches/openldap-CVE-2017-9287.patch \
%D%/packages/patches/openocd-nrf52.patch \
%D%/packages/patches/openssl-runpath.patch \
%D%/packages/patches/openssl-1.1.0-c-rehash-in.patch \
%D%/packages/patches/openssl-c-rehash-in.patch \
%D%/packages/patches/optipng-CVE-2017-1000229.patch \
%D%/packages/patches/orpheus-cast-errors-and-includes.patch \
%D%/packages/patches/osip-CVE-2017-7853.patch \
%D%/packages/patches/ots-no-include-missing-file.patch \
%D%/packages/patches/owncloud-disable-updatecheck.patch \
%D%/packages/patches/p7zip-CVE-2016-9296.patch \
%D%/packages/patches/p7zip-remove-unused-code.patch \
%D%/packages/patches/patchelf-page-size.patch \
%D%/packages/patches/patchelf-rework-for-arm.patch \
%D%/packages/patches/patchutils-xfail-gendiff-tests.patch \
%D%/packages/patches/patch-hurd-path-max.patch \
%D%/packages/patches/pcmanfm-CVE-2017-8934.patch \
%D%/packages/patches/pcre-CVE-2017-7186.patch \
%D%/packages/patches/pcre2-CVE-2017-7186.patch \
%D%/packages/patches/pcre2-CVE-2017-8786.patch \
%D%/packages/patches/perl-file-path-CVE-2017-6512.patch \
%D%/packages/patches/perl-autosplit-default-time.patch \
%D%/packages/patches/perl-dbd-mysql-CVE-2017-10788.patch \
%D%/packages/patches/perl-deterministic-ordering.patch \
%D%/packages/patches/perl-finance-quote-unuse-mozilla-ca.patch \
%D%/packages/patches/perl-gd-options-passthrough-and-fontconfig.patch \
%D%/packages/patches/perl-io-socket-ssl-openssl-1.0.2f-fix.patch \
%D%/packages/patches/perl-net-amazon-s3-moose-warning.patch \
%D%/packages/patches/perl-net-ssleay-disable-ede-test.patch \
%D%/packages/patches/perl-net-dns-resolver-programmable-fix.patch \
%D%/packages/patches/perl-no-sys-dirs.patch \
%D%/packages/patches/perl-module-pluggable-search.patch \
@@ -983,11 +914,7 @@ dist_patch_DATA = \
%D%/packages/patches/portmidi-modular-build.patch \
%D%/packages/patches/procmail-ambiguous-getline-debian.patch \
%D%/packages/patches/procmail-CVE-2014-3618.patch \
%D%/packages/patches/procmail-CVE-2017-16844.patch \
%D%/packages/patches/proot-test-fhs.patch \
%D%/packages/patches/psm-arch.patch \
%D%/packages/patches/psm-ldflags.patch \
%D%/packages/patches/psm-repro.patch \
%D%/packages/patches/pt-scotch-build-parallelism.patch \
%D%/packages/patches/pulseaudio-fix-mult-test.patch \
%D%/packages/patches/pulseaudio-longer-test-timeout.patch \
@@ -1006,6 +933,7 @@ dist_patch_DATA = \
%D%/packages/patches/python-3.5-fix-tests.patch \
%D%/packages/patches/python-3.5-getentropy-on-old-kernels.patch \
%D%/packages/patches/python-dendropy-fix-tests.patch \
%D%/packages/patches/python-file-double-encoding-bug.patch \
%D%/packages/patches/python-fix-tests.patch \
%D%/packages/patches/python-genshi-add-support-for-python-3.4-AST.patch \
%D%/packages/patches/python-genshi-buildable-on-python-2.7.patch \
@@ -1013,13 +941,12 @@ dist_patch_DATA = \
%D%/packages/patches/python-genshi-fix-tests-on-python-3.5.patch \
%D%/packages/patches/python-genshi-isstring-helper.patch \
%D%/packages/patches/python-genshi-stripping-of-unsafe-script-tags.patch \
%D%/packages/patches/python2-larch-coverage-4.0a6-compatibility.patch \
%D%/packages/patches/python-networkx2-reproducible-build.patch \
%D%/packages/patches/python-nose-timer-drop-ordereddict.patch \
%D%/packages/patches/python-parse-too-many-fields.patch \
%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-fake-factory-fix-build-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 \
@@ -1030,16 +957,15 @@ dist_patch_DATA = \
%D%/packages/patches/python2-pygobject-2-gi-info-type-error-domain.patch \
%D%/packages/patches/python-pygpgme-fix-pinentry-tests.patch \
%D%/packages/patches/python2-subprocess32-disable-input-test.patch \
%D%/packages/patches/python2-unittest2-remove-argparse.patch \
%D%/packages/patches/qemu-CVE-2017-15038.patch \
%D%/packages/patches/qemu-CVE-2017-15118.patch \
%D%/packages/patches/qemu-CVE-2017-15119.patch \
%D%/packages/patches/qemu-CVE-2017-15268.patch \
%D%/packages/patches/qemu-CVE-2017-15289.patch \
%D%/packages/patches/qemu-CVE-2017-7493.patch \
%D%/packages/patches/qemu-CVE-2017-8112.patch \
%D%/packages/patches/qemu-CVE-2017-8309.patch \
%D%/packages/patches/qemu-CVE-2017-8379.patch \
%D%/packages/patches/qemu-CVE-2017-8380.patch \
%D%/packages/patches/qemu-CVE-2017-9524.patch \
%D%/packages/patches/qt4-ldflags.patch \
%D%/packages/patches/qtscript-disable-tests.patch \
%D%/packages/patches/quagga-reproducible-build.patch \
%D%/packages/patches/quassel-fix-tls-check.patch \
%D%/packages/patches/quickswitch-fix-dmenu-check.patch \
%D%/packages/patches/rapicorn-isnan.patch \
%D%/packages/patches/raptor2-heap-overflow.patch \
@@ -1051,9 +977,11 @@ 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 \
%D%/packages/patches/ruby-puma-ignore-broken-test.patch \
%D%/packages/patches/ruby-rack-ignore-failing-test.patch \
%D%/packages/patches/ruby-tzinfo-data-ignore-broken-test.patch\
%D%/packages/patches/rxvt-unicode-escape-sequences.patch \
@@ -1061,19 +989,15 @@ dist_patch_DATA = \
%D%/packages/patches/scotch-test-threading.patch \
%D%/packages/patches/sdl-libx11-1.6.patch \
%D%/packages/patches/seq24-rename-mutex.patch \
%D%/packages/patches/shepherd-close-fds.patch \
%D%/packages/patches/shishi-fix-libgcrypt-detection.patch \
%D%/packages/patches/slim-session.patch \
%D%/packages/patches/slim-config.patch \
%D%/packages/patches/slim-sigusr1.patch \
%D%/packages/patches/slim-reset.patch \
%D%/packages/patches/slim-login.patch \
%D%/packages/patches/slurm-configure-remove-nonfree-contribs.patch \
%D%/packages/patches/sooperlooper-build-with-wx-30.patch \
%D%/packages/patches/spice-CVE-2016-9577.patch \
%D%/packages/patches/spice-CVE-2016-9578-1.patch \
%D%/packages/patches/spice-CVE-2016-9578-2.patch \
%D%/packages/patches/spice-CVE-2017-7506.patch \
%D%/packages/patches/steghide-fixes.patch \
%D%/packages/patches/superlu-dist-scotchmetis.patch \
%D%/packages/patches/swish-e-search.patch \
@@ -1090,6 +1014,7 @@ dist_patch_DATA = \
%D%/packages/patches/tcsh-fix-out-of-bounds-read.patch \
%D%/packages/patches/teensy-loader-cli-help.patch \
%D%/packages/patches/teeworlds-use-latest-wavpack.patch \
%D%/packages/patches/texlive-texmf-CVE-2016-10243.patch \
%D%/packages/patches/texi2html-document-encoding.patch \
%D%/packages/patches/texi2html-i18n.patch \
%D%/packages/patches/thefuck-test-environ.patch \
@@ -1101,7 +1026,6 @@ dist_patch_DATA = \
%D%/packages/patches/ttf2eot-cstddef.patch \
%D%/packages/patches/ttfautohint-source-date-epoch.patch \
%D%/packages/patches/tophat-build-with-later-seqan.patch \
%D%/packages/patches/totem-meson-easy-codec.patch \
%D%/packages/patches/tuxpaint-stamps-path.patch \
%D%/packages/patches/unrtf-CVE-2016-10091.patch \
%D%/packages/patches/unzip-CVE-2014-8139.patch \
@@ -1121,16 +1045,16 @@ 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 \
%D%/packages/patches/vorbis-tools-CVE-2015-6749.patch \
%D%/packages/patches/vsearch-unbundle-cityhash.patch \
%D%/packages/patches/vpnc-script.patch \
%D%/packages/patches/vte-CVE-2012-2738-pt1.patch \
%D%/packages/patches/vte-CVE-2012-2738-pt2.patch \
%D%/packages/patches/weechat-python.patch \
%D%/packages/patches/wget-CVE-2017-6508.patch \
%D%/packages/patches/wget-fix-504-test-timeout.patch \
%D%/packages/patches/wicd-bitrate-none-fix.patch \
%D%/packages/patches/wicd-get-selected-profile-fix.patch \
%D%/packages/patches/wicd-urwid-1.3.patch \
@@ -1141,20 +1065,15 @@ dist_patch_DATA = \
%D%/packages/patches/wordnet-CVE-2008-2149.patch \
%D%/packages/patches/wordnet-CVE-2008-3908-pt1.patch \
%D%/packages/patches/wordnet-CVE-2008-3908-pt2.patch \
%D%/packages/patches/wpa-supplicant-CVE-2017-13082.patch \
%D%/packages/patches/wpa-supplicant-fix-key-reuse.patch \
%D%/packages/patches/wpa-supplicant-fix-zeroed-keys.patch \
%D%/packages/patches/wpa-supplicant-fix-nonce-reuse.patch \
%D%/packages/patches/wpa-supplicant-krack-followups.patch \
%D%/packages/patches/xcb-proto-python3-print.patch \
%D%/packages/patches/xcb-proto-python3-whitespace.patch \
%D%/packages/patches/wxwidgets-fix-windowGTK.patch \
%D%/packages/patches/xdotool-fix-makefile.patch \
%D%/packages/patches/xf86-video-ark-remove-mibstore.patch \
%D%/packages/patches/xf86-video-ast-remove-mibstore.patch \
%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 \
+7 -9
View File
@@ -140,19 +140,17 @@ for system '~a'")
directory))
%load-path)))
(define* (fold-packages proc init
#:optional
(modules (all-modules (%package-module-path)))
#:key (select? (negate hidden-package?)))
"Call (PROC PACKAGE RESULT) for each available package defined in one of
MODULES that matches SELECT?, using INIT as the initial value of RESULT. It
is guaranteed to never traverse the same package twice."
(define (fold-packages proc init)
"Call (PROC PACKAGE RESULT) for each available package, using INIT as
the initial value of RESULT. It is guaranteed to never traverse the
same package twice."
(fold-module-public-variables (lambda (object result)
(if (and (package? object) (select? object))
(if (and (package? object)
(not (hidden-package? object)))
(proc object result)
result))
init
modules))
(all-modules (%package-module-path))))
(define find-packages-by-name
(let ((packages (delay
+2 -45
View File
@@ -1,6 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 ng0 <ng0@infotropique.org>
;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
;;; Copyright © 2017 ng0 <ng0@no-reply.pragmatique.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -21,8 +20,6 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system glib-or-gtk)
#:use-module (gnu packages)
#:use-module (gnu packages xml)
@@ -32,8 +29,7 @@
#:use-module (gnu packages xorg)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages libusb))
#:use-module (gnu packages pkg-config))
(define-public florence
(package
@@ -80,42 +76,3 @@ available to help to click.")
;; The documentation is under FDL1.2, but we do not install the
;; documentation.
(license license:gpl2+)))
(define-public footswitch
(let ((commit "7cb0a9333a150c27c7e4746ee827765d244e567a"))
(package
(name "footswitch")
(version (git-version "0.1" "1" commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/rgerganov/footswitch")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0mg1vr4a9vls5y435w7wdnr1vb5059gy60lvrdfjgzhd2wwf47iw"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("hidapi" ,hidapi)))
(arguments
`(#:tests? #f ; no tests
#:make-flags (list "CC=gcc")
#:phases (modify-phases %standard-phases
(delete 'configure)
;; Install target in the Makefile does not work for Guix
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((bin (string-append (assoc-ref outputs "out")
"/bin")))
(mkdir-p bin)
(install-file "footswitch" bin)
#t))))))
(home-page "https://github.com/rgerganov/footswitch")
(synopsis "Command line utility for PCsensor foot switch")
(description
"Command line utility for programming foot switches sold by PCsensor.
It works for both single pedal devices and three pedal devices. All supported
devices have vendorId:productId = 0c45:7403 or 0c45:7404.")
(license license:expat))))
+2 -2
View File
@@ -25,7 +25,7 @@
(define-public acct
(package
(name "acct")
(version "6.6.4")
(version "6.6.3")
(source
(origin
(method url-fetch)
@@ -33,7 +33,7 @@
version ".tar.gz"))
(sha256
(base32
"0gv6m8giazshvgpvwbng98chpas09myyfw1zr2y7hqxib0mvy5ac"))))
"14x0zklwlg7cc7amlyzffqr8az3fqj1h9dyj0hvl1kpi7cr7kbjy"))))
(build-system gnu-build-system)
(home-page "https://gnu.org/software/acct/")
(synopsis "Standard login and process accounting utilities")
+199 -258
View File
@@ -6,14 +6,14 @@
;;; Copyright © 2015, 2016 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2015 Alex Sassmannshausen <alex.sassmannshausen@gmail.com>
;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Peter Feigl <peter.feigl@nexoid.at>
;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net>
;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net>
;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
;;; Copyright © 2017 Ben Sturmfels <ben@sturm.com.au>
;;; Copyright © 2017 Ethan R. Jones <doubleplusgood23@gmail.com>
@@ -46,7 +46,6 @@
#:use-module (guix build-system trivial)
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages check)
#:use-module (gnu packages cyrus-sasl)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages readline)
@@ -56,7 +55,6 @@
#:use-module (gnu packages gettext)
#:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
#:use-module (gnu packages perl-check)
#:use-module (gnu packages tcl)
#:use-module (gnu packages compression)
#:use-module (gnu packages cross-base)
@@ -70,8 +68,6 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages popt)
#:use-module (gnu packages python)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages groff)
#:use-module (gnu packages pciutils)
@@ -81,6 +77,7 @@
#:use-module (gnu packages image)
#:use-module (gnu packages xorg)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages python)
#:use-module (gnu packages man)
#:use-module (gnu packages autotools)
#:use-module (gnu packages gnome)
@@ -162,8 +159,7 @@ and provides a \"top-like\" mode (monitoring).")
version ".tar.gz"))
(sha256
(base32
"174q1qg7yg6w1hfvlfv720hr6hid4h5xzw15y3ycfpspllzldhcb"))
(patches (search-patches "shepherd-close-fds.patch"))))
"174q1qg7yg6w1hfvlfv720hr6hid4h5xzw15y3ycfpspllzldhcb"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--localstatedir=/var")))
@@ -171,10 +167,10 @@ and provides a \"top-like\" mode (monitoring).")
`(("pkg-config" ,pkg-config)
;; This is the Guile we use as a cross-compiler...
("guile" ,guile-2.2)))
("guile" ,guile-2.0)))
(inputs
;; ... and this is the one that appears in shebangs when cross-compiling.
`(("guile" ,guile-2.2)))
`(("guile" ,guile-2.0)))
(synopsis "System service manager")
(description
"The GNU Shepherd is a daemon-managing daemon, meaning that it supervises
@@ -275,13 +271,7 @@ re-executing them as necessary.")
"05n65k4ixl85dc6rxc51b1b732gnmm8xnqi424dy9f1nz7ppb3xy"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--localstatedir=/var"
;; Make sure 'PATH_PROCNET_DEV' gets defined when
;; cross-compiling (by default it does not.)
,@(if (%current-target-system)
'("--with-path-procnet-dev=/proc/net/dev")
'()))
'(#:configure-flags '("--localstatedir=/var")
;; On some systems, 'libls.sh' may fail with an error such as:
;; "Failed to tell switch -a apart from -A".
#:parallel-tests? #f))
@@ -292,8 +282,7 @@ re-executing them as necessary.")
(synopsis "Basic networking utilities")
(description
"Inetutils is a collection of common network programs, such as an ftp
client and server, a telnet client and server, an rsh client and server, and
hostname.")
client and server, a telnet client and server, and an rsh client and server.")
(license license:gpl3+)))
(define-public shadow
@@ -310,7 +299,7 @@ hostname.")
"0hdpai78n63l3v3fgr3kkiqzhd0awrpfnnzz4mf7lmxdh61qb37w"))))
(build-system gnu-build-system)
(arguments
`(;; Assume System V `setpgrp (void)', which is the default on GNU
'(;; Assume System V `setpgrp (void)', which is the default on GNU
;; variants (`AC_FUNC_SETPGRP' is not cross-compilation capable.)
#:configure-flags
'("--with-libpam" "ac_cv_func_setpgrp_void=yes")
@@ -320,10 +309,7 @@ hostname.")
(add-before 'build 'set-nscd-file-name
(lambda* (#:key inputs #:allow-other-keys)
;; Use the right file name for nscd.
(let ((libc (assoc-ref inputs
,(if (%current-target-system)
"cross-libc"
"libc"))))
(let ((libc (assoc-ref inputs "libc")))
(substitute* "lib/nscd.c"
(("/usr/sbin/nscd")
(string-append libc "/sbin/nscd"))))))
@@ -337,11 +323,11 @@ hostname.")
(for-each delete-file (find-files man "^groups\\."))
#t))))))
(inputs (if (string-contains (or (%current-target-system)
(%current-system))
"-linux")
`(("linux-pam" ,linux-pam))
'()))
(inputs (if (string-suffix? "-linux"
(or (%current-target-system)
(%current-system)))
`(("linux-pam" ,linux-pam))
'()))
(home-page "http://pkg-shadow.alioth.debian.org/")
(synopsis "Authentication-related tools such as passwd, su, and login")
(description
@@ -365,31 +351,32 @@ login, passwd, su, groupadd, and useradd.")
"05yxrp44ky2kg6qknk1ih0kvwkgbn9fbz77r3vci7agslh5wjm8g"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(man8 (string-append out "/share/man/man8"))
(sbin (string-append out "/sbin"))
(shadow (assoc-ref inputs "shadow"))
(login (string-append shadow "/bin/login")))
(substitute* "Makefile"
(("^SBINDIR.*")
(string-append "SBINDIR = " out
"/sbin\n"))
(("^MANDIR.*")
(string-append "MANDIR = " out
"/share/man/man8\n")))
`(#:phases (alist-replace 'configure
(lambda* (#:key inputs outputs
#:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(man8 (string-append
out "/share/man/man8"))
(sbin (string-append out "/sbin"))
(shadow (assoc-ref inputs "shadow"))
(login (string-append shadow
"/bin/login")))
(substitute* "Makefile"
(("^SBINDIR.*")
(string-append "SBINDIR = " out
"/sbin\n"))
(("^MANDIR.*")
(string-append "MANDIR = " out
"/share/man/man8\n")))
;; Pick the right 'login' by default.
(substitute* "mingetty.c"
(("\"/bin/login\"")
(string-append "\"" login "\"")))
;; Pick the right 'login' by default.
(substitute* "mingetty.c"
(("\"/bin/login\"")
(string-append "\"" login "\"")))
(mkdir-p sbin)
(mkdir-p man8))
#t)))
(mkdir-p sbin)
(mkdir-p man8)))
%standard-phases)
#:tests? #f)) ; no tests
(inputs `(("shadow" ,shadow)))
@@ -502,7 +489,7 @@ connection alive.")
(bind-minor-version "9")
(bind-patch-version "10")
(bind-release-type "-P") ; for patch release, use "-P"
(bind-release-version "3") ; for patch release, e.g. "6"
(bind-release-version "2") ; for patch release, e.g. "6"
(bind-version (string-append bind-major-version
"."
bind-minor-version
@@ -618,7 +605,7 @@ connection alive.")
"/bind-" bind-version ".tar.gz"))
(sha256
(base32
"00yh1d5shrq7y0kfwacax4f8dc0akaa2fha430j92n7mshms65m1"))))
"19yl7axphmpm4n2ggb7j5irw4c655yifa1bnlckg6qiyv8dr8n7b"))))
;; When cross-compiling, we need the cross Coreutils and sed.
;; Otherwise just use those from %FINAL-INPUTS.
@@ -664,14 +651,14 @@ network statistics collection, security monitoring, network debugging, etc.")
(define-public tcpdump
(package
(name "tcpdump")
(version "4.9.2")
(version "4.9.0")
(source (origin
(method url-fetch)
(uri (string-append "http://www.tcpdump.org/release/tcpdump-"
version ".tar.gz"))
(sha256
(base32
"0ygy0layzqaj838r5xd613iraz09wlfgpyh7pc6cwclql8v3b2vr"))))
"0pjsxsy8l71i813sa934cwf1ryp9xbr7nxwsvnzavjdirchq3sga"))))
(build-system gnu-build-system)
(inputs `(("libpcap" ,libpcap)
("openssl" ,openssl)))
@@ -728,25 +715,25 @@ by bandwidth they use.")
("perl-x11-protocol" ,perl-x11-protocol)))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'install 'set-load-paths
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Put the perl-tk and perl-x11-protocol modules in the perl inc
;; path for PROG
(let* ((out (assoc-ref outputs "out"))
(prog (string-append out "/bin/cssh"))
(perl-ver ,(package-version perl))
(x11-inc (string-append
(assoc-ref inputs "perl-x11-protocol")
"/lib/perl5/site_perl/" perl-ver))
(tk-inc (string-append
(assoc-ref inputs "perl-tk")
"/lib/perl5/site_perl/" perl-ver
"/x86_64-linux")))
(wrap-program
prog
`("PERL5LIB" ":" prefix (,x11-inc ,tk-inc))))
#t)))))
(alist-cons-after
'install 'set-load-paths
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Put the perl-tk and perl-x11-protocol modules in the perl inc
;; path for PROG
(let* ((out (assoc-ref outputs "out"))
(prog (string-append out "/bin/cssh"))
(perl-ver ,(package-version perl))
(x11-inc (string-append
(assoc-ref inputs "perl-x11-protocol")
"/lib/perl5/site_perl/" perl-ver))
(tk-inc (string-append
(assoc-ref inputs "perl-tk")
"/lib/perl5/site_perl/" perl-ver
"/x86_64-linux")))
(wrap-program
prog
`("PERL5LIB" ":" prefix (,x11-inc ,tk-inc)))))
%standard-phases)))
;; The clusterssh.sourceforge.net address requires login to view
(home-page "https://sourceforge.net/projects/clusterssh/")
(synopsis "Secure concurrent multi-server terminal control")
@@ -787,11 +774,6 @@ over ssh connections.")
"/etc"))
#:phases (modify-phases %standard-phases
(add-after 'unpack 'patch-paths
(lambda _
(substitute* "rc/rc"
(("/usr/sbin/sendmail") "sendmail"))
#t))
(add-after 'build 'set-packdir
(lambda _
;; Set a default location for archived logs.
@@ -826,7 +808,7 @@ system administrator.")
(define-public sudo
(package
(name "sudo")
(version "1.8.21p2")
(version "1.8.20p2")
(source (origin
(method url-fetch)
(uri
@@ -836,7 +818,7 @@ system administrator.")
version ".tar.gz")))
(sha256
(base32
"0s33szq6q59v5s377l4v6ybsdy7pfq6sz7y364j4x09ssdn79ibl"))
"1na5likm1srnd1g5sjx7b0543sczw0yppacyqsazfdg9b48awhmx"))
(modules '((guix build utils)))
(snippet
'(delete-file-recursively "lib/zlib"))))
@@ -857,30 +839,29 @@ system administrator.")
;; Avoid non-determinism; see <http://bugs.gnu.org/21918>.
#:parallel-build? #f
#:phases
(modify-phases %standard-phases
(add-before 'configure 'pre-configure
(lambda _
(substitute* "src/sudo_usage.h.in"
;; Do not capture 'configure' arguments since we would
;; unduly retain references, and also because the
;; CPPFLAGS above would close the string literal
;; prematurely.
(("@CONFIGURE_ARGS@") "\"\""))
(substitute* (find-files "." "Makefile\\.in")
(("-o [[:graph:]]+ -g [[:graph:]]+")
;; Allow installation as non-root.
"")
(("^install: (.*)install-sudoers(.*)" _ before after)
;; Don't try to create /etc/sudoers.
(string-append "install: " before after "\n"))
(("\\$\\(DESTDIR\\)\\$\\(rundir\\)")
;; Don't try to create /run/sudo.
"$(TMPDIR)/dummy")
(("\\$\\(DESTDIR\\)\\$\\(vardir\\)")
;; Don't try to create /var/db/sudo.
"$(TMPDIR)/dummy"))
#t)))
#:phases (alist-cons-before
'configure 'pre-configure
(lambda _
(substitute* "src/sudo_usage.h.in"
;; Do not capture 'configure' arguments since we would
;; unduly retain references, and also because the
;; CPPFLAGS above would close the string literal
;; prematurely.
(("@CONFIGURE_ARGS@") "\"\""))
(substitute* (find-files "." "Makefile\\.in")
(("-o [[:graph:]]+ -g [[:graph:]]+")
;; Allow installation as non-root.
"")
(("^install: (.*)install-sudoers(.*)" _ before after)
;; Don't try to create /etc/sudoers.
(string-append "install: " before after "\n"))
(("\\$\\(DESTDIR\\)\\$\\(rundir\\)")
;; Don't try to create /run/sudo.
"$(TMPDIR)/dummy")
(("\\$\\(DESTDIR\\)\\$\\(vardir\\)")
;; Don't try to create /var/db/sudo.
"$(TMPDIR)/dummy")))
%standard-phases)
;; XXX: The 'testsudoers' test series expects user 'root' to exist, but
;; the chroot's /etc/passwd doesn't have it. Turn off the tests.
@@ -911,24 +892,18 @@ commands and their arguments.")
"http://w1.fi/releases/wpa_supplicant-"
version
".tar.gz"))
(patches (search-patches "wpa-supplicant-CVE-2017-13082.patch"
"wpa-supplicant-fix-key-reuse.patch"
"wpa-supplicant-fix-zeroed-keys.patch"
"wpa-supplicant-fix-nonce-reuse.patch"
"wpa-supplicant-krack-followups.patch"))
(sha256
(base32
"0l0l5gz3d5j9bqjsbjlfcv4w4jwndllp9fmyai4x9kg6qhs6v4xl"))))
(build-system gnu-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(chdir "wpa_supplicant")
(copy-file "defconfig" ".config")
(let ((port (open-file ".config" "al")))
(display "
'(#:phases (alist-replace
'configure
(lambda* (#:key outputs #:allow-other-keys)
(chdir "wpa_supplicant")
(copy-file "defconfig" ".config")
(let ((port (open-file ".config" "al")))
(display "
CONFIG_DEBUG_SYSLOG=y
# Choose GnuTLS (the default is OpenSSL.)
@@ -938,23 +913,26 @@ commands and their arguments.")
CFLAGS += $(shell pkg-config libnl-3.0 --cflags)
CONFIG_LIBNL32=y
CONFIG_READLINE=y\n" port)
(close-port port))))
(add-after 'install 'install-man-pages
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(man (string-append out "/share/man"))
(man5 (string-append man "/man5"))
(man8 (string-append man "/man8")))
(define (copy-man-page target)
(lambda (file)
(install-file file target)))
(close-port port)))
(mkdir-p man5) (mkdir man8)
(for-each (copy-man-page man5)
(find-files "doc/docbook" "\\.5"))
(for-each (copy-man-page man8)
(find-files "doc/docbook" "\\.8"))
#t))))
(alist-cons-after
'install 'install-man-pages
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(man (string-append out "/share/man"))
(man5 (string-append man "/man5"))
(man8 (string-append man "/man8")))
(define (copy-man-page target)
(lambda (file)
(install-file file target)))
(mkdir-p man5) (mkdir man8)
(for-each (copy-man-page man5)
(find-files "doc/docbook" "\\.5"))
(for-each (copy-man-page man8)
(find-files "doc/docbook" "\\.8"))
#t))
%standard-phases))
#:make-flags (list "CC=gcc"
(string-append "BINDIR=" (assoc-ref %outputs "out")
@@ -991,24 +969,25 @@ This package provides the 'wpa_supplicant' daemon and the 'wpa_cli' command.")
(arguments
(substitute-keyword-arguments (package-arguments wpa-supplicant-minimal)
((#:phases phases)
`(modify-phases ,phases
(add-after 'configure 'configure-for-dbus
(lambda _
(let ((port (open-file ".config" "al")))
(display "
`(alist-cons-after
'configure 'configure-for-dbus
(lambda _
(let ((port (open-file ".config" "al")))
(display "
CONFIG_CTRL_IFACE_DBUS=y
CONFIG_CTRL_IFACE_DBUS_NEW=y
CONFIG_CTRL_IFACE_DBUS_INTRO=y\n" port)
(close-port port))
#t))
(add-after 'install-man-pages 'install-dbus-conf
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(dir (string-append out "/etc/dbus-1/system.d")))
(mkdir-p dir)
(copy-file "dbus/dbus-wpa_supplicant.conf"
(string-append dir "/wpa_supplicant.conf")))
#t))))))))
(close-port port))
#t)
(alist-cons-after
'install-man-pages 'install-dbus-conf
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(dir (string-append out "/etc/dbus-1/system.d")))
(mkdir-p dir)
(copy-file "dbus/dbus-wpa_supplicant.conf"
(string-append dir "/wpa_supplicant.conf"))))
,phases)))))))
(define-public wakelan
(package
@@ -1024,22 +1003,22 @@ This package provides the 'wpa_supplicant' daemon and the 'wpa_cli' command.")
"0vydqpf44146ir6k87gmqaq6xy66xhc1gkr3nsd7jj3nhy7ypx9x"))))
(build-system gnu-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(mkdir-p (string-append out "/bin"))
(mkdir-p (string-append out "/share/man/man1"))
'(#:phases (alist-replace
'configure
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(mkdir-p (string-append out "/bin"))
(mkdir-p (string-append out "/share/man/man1"))
;; It's an old configure script that doesn't understand
;; the extra options we pass.
(setenv "CONFIG_SHELL" (which "bash"))
(zero?
(system* "./configure"
(string-append "--prefix=" out)
(string-append "--mandir=" out
"/share/man")))))))
;; It's an old configure script that doesn't understand
;; the extra options we pass.
(setenv "CONFIG_SHELL" (which "bash"))
(zero?
(system* "./configure"
(string-append "--prefix=" out)
(string-append "--mandir=" out
"/share/man")))))
%standard-phases)
#:tests? #f))
(home-page "http://kernel.org") ; really, no home page
(synopsis "Send a wake-on-LAN packet")
@@ -1098,7 +1077,7 @@ module slots, and the list of I/O ports (e.g. serial, parallel, USB).")
"HOST=_LINUX"
"OPT_CFLAGS=-Wall -fno-strict-aliasing")
#:tests? #f ; no 'check' target.
#:phases (modify-phases %standard-phases (delete 'configure))))
#:phases (alist-delete 'configure %standard-phases)))
(home-page "http://acpica.org/")
(synopsis "Tools for the development and debug of ACPI tables")
(description
@@ -1208,7 +1187,7 @@ recover lost partitions and/or make non-booting disks bootable again.")
(base32 "04kviw799qxly08zb8n5mgxfd96gyis6x69q2qiw86jnh87c4mv9"))))
(build-system gnu-build-system)
(arguments
'(#:phases (modify-phases %standard-phases (delete 'configure))
'(#:phases (alist-delete 'configure %standard-phases)
#:tests? #f ; no check target
#:make-flags (let ((out (assoc-ref %outputs "out")))
(list (string-append "prefix=" out)))))
@@ -1237,23 +1216,23 @@ environment variable is set and output is to tty.")
"#!$SHELL")))))
(build-system gnu-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-before 'build 'patch-/bin/sh
(lambda* (#:key inputs #:allow-other-keys)
;; Use the right shell when executing the watcher and
;; user-provided shell commands.
(let ((bash (assoc-ref inputs "bash")))
(substitute* '("src/direvent.c" "src/progman.c")
(("\"/bin/sh\"")
(string-append "\"" bash "/bin/sh\"")))
'(#:phases (alist-cons-before
'build 'patch-/bin/sh
(lambda* (#:key inputs #:allow-other-keys)
;; Use the right shell when executing the watcher and
;; user-provided shell commands.
(let ((bash (assoc-ref inputs "bash")))
(substitute* '("src/direvent.c" "src/progman.c")
(("\"/bin/sh\"")
(string-append "\"" bash "/bin/sh\"")))
;; Adjust the 'shell.at' test accordingly.
(substitute* "tests/testsuite"
(("SHELL=/bin/sh")
(string-append "SHELL=" bash "/bin/sh")))
;; Adjust the 'shell.at' test accordingly.
(substitute* "tests/testsuite"
(("SHELL=/bin/sh")
(string-append "SHELL=" bash "/bin/sh")))
#t))))))
#t))
%standard-phases)))
(home-page "https://www.gnu.org/software/direvent/")
(synopsis "Daemon to monitor directories for events such as file removal")
(description
@@ -1295,7 +1274,7 @@ various ways that may be running with too much privilege.")
(define-public smartmontools
(package
(name "smartmontools")
(version "6.6")
(version "6.5")
(source (origin
(method url-fetch)
(uri (string-append
@@ -1303,16 +1282,16 @@ various ways that may be running with too much privilege.")
version "/smartmontools-" version ".tar.gz"))
(sha256
(base32
"0m1hllbb78rr6cxkbalmz1gqkl0psgq8rrmv4gwcmz34n07kvx2i"))))
"1g25r6sx85b5lay5n6sbnqv05qxzj6xsafsp93hnrg1h044bps49"))))
(build-system gnu-build-system)
(inputs `(("libcap-ng" ,libcap-ng)))
(home-page "https://www.smartmontools.org/")
(home-page "http://www.smartmontools.org/")
(synopsis "S.M.A.R.T. harddisk control and monitoring tools")
(description
"The smartmontools package contains utility programs to control and
monitor storage systems using the Self-Monitoring, Analysis and Reporting
Technology System (@dfn{S.M.A.R.T.}) built into most modern ATA and SCSI hard
disks. In many cases, these utilities will provide advanced warning of disk
Technology System (S.M.A.R.T.) built into most modern ATA and SCSI harddisks.
In many cases, these utilities will provide advanced warning of disk
degradation and failure.")
(license license:gpl2+)))
@@ -1386,14 +1365,14 @@ of supported upstream metrics systems simultaneously.")
(define-public ansible
(package
(name "ansible")
(version "2.4.1.0")
(version "2.3.1.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "ansible" version))
(sha256
(base32
"0spv0kjaicwss4q52s727b6grdizcxpa0bbsfg26pgf5kjrayqfs"))
"1xdr82fy8gahxh3586wm5k1bxksys7yl1f2n24shrk8gf99qyjyd"))
(patches (search-patches "ansible-wrap-program-hack.patch"))))
(build-system python-build-system)
(native-inputs
@@ -1545,7 +1524,7 @@ displays a table of current bandwidth usage by pairs of hosts.")
(define-public munge
(package
(name "munge")
(version "0.5.13")
(version "0.5.12")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/dun/munge/releases/"
@@ -1553,7 +1532,7 @@ displays a table of current bandwidth usage by pairs of hosts.")
version ".tar.xz"))
(sha256
(base32
"1nj486bbg1adfg298zck96vgx57kchcypc1zdz1n7w540vyksxcr"))))
"1s0vlwgm3hcx75vcmjf2y3icy5nv8y07bx93w2cmm6a7x71y6wp9"))))
(inputs
`(("openssl" ,openssl)
("libgcrypt" ,libgcrypt)))
@@ -1610,14 +1589,14 @@ done with the @code{auditctl} utility.")
(define-public nmap
(package
(name "nmap")
(version "7.60")
(version "7.50")
(source (origin
(method url-fetch)
(uri (string-append "https://nmap.org/dist/nmap-" version
".tar.bz2"))
(sha256
(base32
"08bga42ipymmbxd7wy4x5sl26c0ir1fm3n9rc6nqmhx69z66wyd8"))
"1ckl2qxqxkrfa2qxdrqyaa4k1hhj273aqckrc46fijdz0a76mag9"))
(modules '((guix build utils)))
(snippet
'(map delete-file-recursively
@@ -1710,7 +1689,7 @@ results (ndiff), and a packet generation and response analysis tool (nping).")
(list (string-append "DESTDIR=" out)
"prefix=/"))
;; no configure script
#:phases (modify-phases %standard-phases (delete 'configure))))
#:phases (alist-delete 'configure %standard-phases)))
(inputs `(("python-2" ,python-2)))
(synopsis "Versatile resource statistics tool")
(description "Dstat is a versatile replacement for @command{vmstat},
@@ -1729,7 +1708,7 @@ throughput (in the same interval).")
(define-public thefuck
(package
(name "thefuck")
(version "3.19")
(version "3.18")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/nvbn/thefuck/archive/"
@@ -1737,7 +1716,7 @@ throughput (in the same interval).")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"191zbvkyc02h0wwd46xwj4zzg7jhlr8xv0ji6knqkgjnk0nvqq01"))
"1xsvkqh89rgxq5w03mnlcfkn9y39nfwhb2pjabjspcc2mi2mq5y6"))
(patches (search-patches "thefuck-test-environ.patch"))))
(build-system python-build-system)
(arguments
@@ -1773,13 +1752,13 @@ a new command using the matched rule, and runs it.")
(define-public di
(package
(name "di")
(version "4.44")
(version "4.43")
(source
(origin
(method url-fetch)
(uri (string-append "https://gentoo.com/di/di-" version ".tar.gz"))
(sha256
(base32 "0803lp8kd3mp1jcm17i019xiqxdy85hhs6xk67zib8gmvg500gcn"))))
(base32 "1q25jy51qfzsym9b2w0cqzscq2j492gn60dy6gbp88m8nwm4sdy8"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; Obscure test failures.
@@ -1804,14 +1783,14 @@ highly portable. Great for heterogeneous networks.")
(define-public cbatticon
(package
(name "cbatticon")
(version "1.6.6")
(version "1.6.5")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/valr/"
name "/archive/" version ".tar.gz"))
(sha256
(base32
"1rxlrwd817f2zl4fsc5ha43wjzfidq3yyagq4lgyi150qg36svv3"))
"0xzz1faqgm57bwlkw6sjdfbckf5hck81879zbfk18p7xn9vhvixv"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system gnu-build-system)
(arguments
@@ -1843,7 +1822,7 @@ the status of your battery in the system tray.")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/TrilbyWhite/interrobang")
(url "git://github.com/TrilbyWhite/interrobang")
(commit commit)))
(file-name (string-append name "-" version))
(sha256
@@ -2116,22 +2095,28 @@ Intel DRM Driver.")
(define-public fabric
(package
(name "fabric")
(version "1.13.2")
(version "1.13.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Fabric" version))
(sha256
(base32
"0k944dxr41whw7ib6380q9x15wyskx7fqni656icdn8rzshn9bwq"))))
"1z17hw0yiqp1blq217zxkg2jzkv8qd79saqhscgsw14mwlcqpwd0"))
(patches (search-patches "fabric-tests.patch"))))
(build-system python-build-system)
(arguments
`(#:python ,python-2)) ; Python 2 only
`(#:python ,python-2)) ;Python 2 only
(native-inputs
`(("python2-fudge" ,python2-fudge)
("python2-jinja2" ,python2-jinja2)
("python2-nose" ,python2-nose)))
`(("python2-fudge" ,python2-fudge) ; Requires < 1.0
("python2-jinja2" ,python2-jinja2) ; Requires < 3.0
("python2-nose" ,python2-nose))) ; Requires < 2.0
(propagated-inputs
;; Required upgrading python-paramiko 1.17.4 to fix an incompatibility
;; between python-paramiko and newer python-pycrypto. Without this, the
;; `fab` command fails with "ValueError: CTR mode needs counter
;; parameter, not IV". See:
;; https://github.com/paramiko/paramiko/pull/714#issuecomment-281191548.
`(("python2-paramiko" ,python2-paramiko)))
(home-page "http://fabfile.org")
(synopsis "Simple Pythonic remote execution and deployment tool")
@@ -2148,7 +2133,7 @@ tool for remote execution and deployment.")
(define-public neofetch
(package
(name "neofetch")
(version "3.3.0")
(version "3.2.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/dylanaraps/neofetch/"
@@ -2156,10 +2141,10 @@ tool for remote execution and deployment.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"15p69q0jchfms1fpb4i7kq8b28w2xpgh2zmynln618qxv1myf228"))))
"07a32rzmch51znxspzyc7zyaldmr383v70b49wmnjdjs2qfdbv3a"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; there are no tests
'(#:tests? #f ; there are no tests
#:make-flags
(list (string-append "PREFIX=" %output))
#:phases
@@ -2174,17 +2159,9 @@ tool for remote execution and deployment.")
(("\"/etc/neofetch")
(string-append "\"" out "/etc/neofetch"))
(("\"/usr/share/neofetch")
(string-append "\"" out "/share/neofetch"))))
(string-append "\"" out "/usr/share/neofetch"))))
#t))
(delete 'configure) ; no configure script
(replace 'install
(lambda* (#:key make-flags outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(doc (string-append out "/share/doc/" ,name "-" ,version))
(etc (string-append doc "/examples/etc")))
(zero? (apply system* `("make" ,@make-flags
,(string-append "SYSCONFDIR=" etc)
"install")))))))))
(delete 'configure))))
(home-page "https://github.com/dylanaraps/neofetch")
(synopsis "System info script")
(description "Neofetch is a CLI system information tool written in Bash.
@@ -2197,7 +2174,7 @@ you are running, what theme or icon set you are using, etc.")
(define-public nnn
(package
(name "nnn")
(version "1.5")
(version "1.2")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/jarun/nnn/"
@@ -2205,7 +2182,7 @@ you are running, what theme or icon set you are using, etc.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0zswf8lb29zr1z642i1d0zi1y2mxal8qjqdrpdiqjh197jamj3zm"))))
"08l0wcwwsl5kix9kg3h51s2afzg97y1rjjfi0ijs294kz57g1cfq"))))
(build-system gnu-build-system)
(inputs `(("ncurses" ,ncurses)
("readline" ,readline)))
@@ -2296,39 +2273,3 @@ on systems running the Linux kernel.")
;; arm and aarch64 don't have cpuid.h
(supported-systems '("i686-linux" "x86_64-linux"))
(license license:gpl2+)))
(define-public masscan
(package
(name "masscan")
(version "1.0.4")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/robertdavidgraham/masscan"
"/archive/" version ".tar.gz"))
(sha256
(base32
"1y9af345g00z83rliv6bmlqg37xwc7xpnx5xqdgmjikzcxgk9pji"))))
(build-system gnu-build-system)
(inputs
`(("libpcap" ,libpcap)))
(arguments
'(#:test-target "regress"
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
(delete 'configure) ; There is no ./configure script
(add-after 'unpack 'patch-path
(lambda* (#:key outputs inputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(pcap (assoc-ref inputs "libpcap")))
(substitute* "src/rawsock-pcap.c"
(("libpcap.so") (string-append pcap "/lib/libpcap.so")))
#t))))))
(synopsis "TCP port scanner")
(description "MASSCAN is an asynchronous TCP port scanner. It can detect
open ports, and also complete the TCP connection and interact with the remote
application, collecting the information received.")
(home-page "https://github.com/robertdavidgraham/masscan")
;; 'src/siphash24.c' is the SipHash reference implementation, which
;; bears a CC0 Public Domain Dedication.
(license license:agpl3+)))
-23
View File
@@ -1,7 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 John Darringon <jmd@gnu.org>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -70,25 +69,3 @@ a mobile phone with CCD. The capacity of QR Code is up to 7000 digits or 4000
characters, and is highly robust.")
(license license:lgpl2.1+)
(home-page "https://fukuchi.org/works/qrencode")))
(define-public libdmtx
(package
(name "libdmtx")
(version "0.7.4")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://sourceforge/libdmtx/" name "/" version "/"
name "-" version ".tar.bz2"))
(sha256
(base32 "0xnxx075ycy58n92yfda2z9zgd41h3d4ik5d9l197lzsqim5hb5n"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://libdmtx.sourceforge.net/")
(synopsis "Library for reading and writing Data Matrix 2D barcodes")
(description "libdmtx is software for reading and writing Data Matrix 2D
barcodes on Linux and Unix. At its core libdmtx is a shared library, allowing
C/C++ programs to use its capabilities without restrictions or overhead.")
(license license:bsd-3)))
+28 -20
View File
@@ -4,7 +4,6 @@
;;; Copyright © 2016, 2017 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
;;;
@@ -133,7 +132,7 @@ solve the shortest vector problem.")
(define-public pari-gp
(package
(name "pari-gp")
(version "2.9.3")
(version "2.9.2")
(source (origin
(method url-fetch)
(uri (string-append
@@ -141,7 +140,7 @@ solve the shortest vector problem.")
version ".tar.gz"))
(sha256
(base32
"0qqal1lpggd6dvs19svnz0dil86xk0xkcj5s3b7104ibkmvjfsp7"))))
"0zi08qz9nk17wwdna4xb2vp3i3mh5sgv1y8wqbf0j2sfryxlr8ls"))))
(build-system gnu-build-system)
(native-inputs `(("texlive" ,texlive-tiny)))
(inputs `(("gmp" ,gmp)
@@ -207,7 +206,7 @@ GP2C, the GP to C compiler, translates GP scripts to PARI programs.")
(define-public giac-xcas
(package
(name "giac-xcas")
(version "1.4.9-33")
(version "1.2.3-51")
(source (origin
(method url-fetch)
;; "~parisse/giac" is not used because the maintainer regularly
@@ -219,7 +218,7 @@ GP2C, the GP to C compiler, translates GP scripts to PARI programs.")
"source/giac_" version ".tar.gz"))
(sha256
(base32
"1f071j4l9ayri2cxka6bfdb6c0fsdl7q7wk345r7hxjfga69g9mv"))))
"1w7d4sdjbvqiibnfkhrqy9np3smsysilfba9pry3q1qn5g5y6nrp"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@@ -229,6 +228,13 @@ GP2C, the GP to C compiler, translates GP scripts to PARI programs.")
;; Some Makefiles contain hard-coded "/bin/cp".
(substitute* (find-files "doc" "^Makefile")
(("/bin/cp") (which "cp")))
#t))
(add-after 'unpack 'disable-broken-test
(lambda _
;; Disable failing test. Actually, the results are correct but
;; a sorting discrepancy prevents the test from being validated.
(substitute* "check/Makefile.in"
(("chk_fhan16") ""))
#t)))))
(inputs
`(("fltk" ,fltk)
@@ -327,21 +333,22 @@ fast arithmetic.")
("mpfr" ,mpfr)))
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(flint (assoc-ref inputs "flint"))
(gmp (assoc-ref inputs "gmp"))
(mpfr (assoc-ref inputs "mpfr")))
;; do not pass "--enable-fast-install", which makes the
;; homebrew configure process fail
(zero? (system*
"./configure"
(string-append "--prefix=" out)
(string-append "--with-flint=" flint)
(string-append "--with-gmp=" gmp)
(string-append "--with-mpfr=" mpfr)))))))))
(alist-replace
'configure
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(flint (assoc-ref inputs "flint"))
(gmp (assoc-ref inputs "gmp"))
(mpfr (assoc-ref inputs "mpfr")))
;; do not pass "--enable-fast-install", which makes the
;; homebrew configure process fail
(zero? (system*
"./configure"
(string-append "--prefix=" out)
(string-append "--with-flint=" flint)
(string-append "--with-gmp=" gmp)
(string-append "--with-mpfr=" mpfr)))))
%standard-phases)))
(synopsis "Arbitrary precision floating-point ball arithmetic")
(description
"Arb is a C library for arbitrary-precision floating-point ball
@@ -472,6 +479,7 @@ binary.")
(base32
"0amh9ik44jfg66csyvf4zz1l878c4755kjndq9j0270akflgrbb2"))))
(build-system gnu-build-system)
(inputs `(("readline" ,readline)))
(native-inputs
`(("ed" ,ed)
("flex" ,flex)
-39
View File
@@ -4,7 +4,6 @@
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2017 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -26,10 +25,8 @@
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
#:use-module (guix build-system trivial)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages)
#:use-module (gnu packages check)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages python)
#:use-module (gnu packages ssh)
@@ -308,42 +305,6 @@ of device actions, such as installing and debugging apps, and it provides access
to a Unix shell that can run commands on the connected device or emulator.")
(license license:asl2.0)))
(define-public android-udev-rules
(package
(name "android-udev-rules")
(version "20170910")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/M0Rf30/android-udev-rules")
(commit version)))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32 "0vic40n3si0dxag3dyc3hi3pn7cjpm5q378x8v2ys19n3iz9fp1g"))))
(build-system trivial-build-system)
(native-inputs `(("source" ,source)))
(arguments
'(#:modules ((guix build utils))
#:builder
(begin
(use-modules (guix build utils))
(let ((source (assoc-ref %build-inputs "source")))
(install-file (string-append source "/51-android.rules")
(string-append %output "/lib/udev/rules.d"))))))
(home-page "https://github.com/M0Rf30/android-udev-rules")
(synopsis "udev rules for Android devices")
(description "Provides a set of udev rules to allow using Android devices
with tools such as @command{adb} and @command{fastboot} without root
privileges. This package is intended to be added as a rule to the
@code{udev-service-type} in your @code{operating-system} configuration.
Additionally, an @code{adbusers} group must be defined and your user added to
it.
@emph{Simply installing this package will not have any effect.} It is meant
to be passed to the @code{udev} service.")
(license license:gpl3+)))
(define-public git-repo
(package
(name "git-repo")
-81
View File
@@ -19,7 +19,6 @@
(define-module (gnu packages animation)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix utils)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system gnu)
@@ -35,8 +34,6 @@
#:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages qt)
#:use-module (gnu packages video))
(define-public etl
@@ -81,16 +78,6 @@ C++ @dfn{Standard Template Library} (STL).")
"/lib"))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-boost-build-error
;; A chain of Boost headers leads to this error: "make_array" is
;; not a member of "boost::serialization". This can be avoided by
;; loading the "array_wrapper" header first.
(lambda _
(substitute* "src/synfig/valuenodes/valuenode_dynamic.cpp"
(("#include <boost/numeric/odeint/integrate/integrate.hpp>" match)
(string-append
"#include <boost/serialization/array_wrapper.hpp>\n" match)))
#t))
(add-after 'unpack 'adapt-to-libxml++-changes
(lambda _
(substitute* "configure"
@@ -188,71 +175,3 @@ be capable of producing feature-film quality animation. It eliminates the
need for tweening, preventing the need to hand-draw each frame. This package
contains the graphical user interface for synfig.")
(license license:gpl3+)))
(define-public papagayo
(let ((commit "e143684b30e59fe4a554f965cb655d23cbe93ee7")
(revision "1"))
(package
(name "papagayo")
(version (string-append "2.0b1-" revision "." (string-take commit 9)))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/LostMoho/Papagayo.git")
(commit commit)))
(sha256
(base32
"1p9gffjhbph34jhrvgpg93yha75bf88vkvlnk06x1r9601ph5321"))
(modules '((guix build utils)))
;; Delete bundled libsndfile sources.
(snippet
'(begin
(delete-file-recursively "libsndfile_1.0.19")
(delete-file-recursively "libsndfile_1.0.25")
#t))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((libsndfile (assoc-ref inputs "libsndfile")))
;; Do not use bundled libsndfile sources
(substitute* "Papagayo.pro"
(("else \\{")
(string-append "\nINCLUDEPATH += " libsndfile
"/include"
"\nLIBS +=" libsndfile
"/lib/libsndfile.so\n"
"win32 {"))))
(zero? (system* "qmake"
(string-append "DESTDIR="
(assoc-ref outputs "out")
"/bin")))))
;; Ensure that all required Qt plugins are found at runtime.
(add-after 'install 'wrap-executable
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(qt '("qt" "qtmultimedia")))
(wrap-program (string-append out "/bin/Papagayo")
`("QT_PLUGIN_PATH" ":" prefix
,(map (lambda (label)
(string-append (assoc-ref inputs label)
"/lib/qt5/plugins/"))
qt)))
#t))))))
(inputs
`(("qt" ,qtbase)
("qtmultimedia" ,qtmultimedia)
("libsndfile" ,libsndfile)))
(native-inputs
`(("qttools" ,qttools)))
(home-page "http://www.lostmarble.com/papagayo/")
(synopsis "Lip-syncing for animations")
(description
"Papagayo is a lip-syncing program designed to help you line up
phonemes with the actual recorded sound of actors speaking. Papagayo makes it
easy to lip sync animated characters by making the process very simple just
type in the words being spoken, then drag the words on top of the sounds
waveform until they line up with the proper sounds.")
(license license:gpl3+))))
+17 -16
View File
@@ -30,14 +30,14 @@
(define-public apr
(package
(name "apr")
(version "1.6.3")
(version "1.5.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://apache/apr/apr-"
version ".tar.bz2"))
(sha256
(base32
"0wiik6amxn6lkc55fv9yz5i3kbxnqbp36alrzabx1avsdp8hc7qk"))
"0ypn51xblix5ys9xy7da3ngdydip0qqh9rdq8nz54w9aq8lys0vx"))
(patches
(search-patches "apr-skip-getservbyname-test.patch"))
(patch-flags '("-p0"))))
@@ -65,14 +65,14 @@ around or take advantage of platform-specific deficiencies or features.")
(define-public apr-util
(package
(name "apr-util")
(version "1.6.1")
(version "1.5.4")
(source (origin
(method url-fetch)
(uri (string-append "mirror://apache/apr/apr-util-"
version ".tar.bz2"))
(sha256
(base32
"0nq3s1yn13vplgl6qfm09f7n0wm08malff9s59bqf9nid9xjzqfk"))))
"0bn81pfscy9yjvbmyx442svf43s6dhrdfcsnkpxz43fai5qk5kx6"))))
(build-system gnu-build-system)
(inputs
`(("apr" ,apr)))
@@ -80,18 +80,19 @@ around or take advantage of platform-specific deficiencies or features.")
`(("expat" ,expat)))
(arguments
'(#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(apr (assoc-ref inputs "apr"))
(expat (assoc-ref inputs "expat")))
(setenv "CONFIG_SHELL" (which "bash"))
(zero?
(system* "./configure"
(string-append "--prefix=" out)
(string-append "--with-apr=" apr)
(string-append "--with-expat=" expat)))))))
(alist-replace
'configure
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(apr (assoc-ref inputs "apr"))
(expat (assoc-ref inputs "expat")))
(setenv "CONFIG_SHELL" (which "bash"))
(zero?
(system* "./configure"
(string-append "--prefix=" out)
(string-append "--with-apr=" apr)
(string-append "--with-expat=" expat)))))
%standard-phases)
;; There are race conditions during 'make check'. Typically, the
;; 'testall' executable is not built yet by the time 'make check' tries
+5 -117
View File
@@ -4,8 +4,7 @@
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Christopher Andersson <christopher@8bits.nu>
;;; Copyright © 2016 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016 Theodoros Foradis <theodoros.for@openmailbox.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -28,9 +27,8 @@
#:use-module (guix build-system gnu)
#:use-module (guix licenses)
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages compression)
#:use-module (gnu packages perl))
#:use-module (gnu packages perl)
#:use-module (gnu packages base))
(define-public aspell
(package
@@ -116,13 +114,6 @@ dictionaries, including personal ones.")
(home-page "http://aspell.net/")))
(define-public aspell-dict-ca
(aspell-dictionary "ca" "Catalan"
#:version "2.1.5-1"
#:sha256
(base32
"1fb5y5kgvk25nlsfvc8cai978hg66x3pbp9py56pldc7vxzf9npb")))
(define-public aspell-dict-de
(aspell-dictionary "de" "German"
#:version "20030222-1"
@@ -132,10 +123,10 @@ dictionaries, including personal ones.")
(define-public aspell-dict-en
(aspell-dictionary "en" "English"
#:version "2017.01.22-0"
#:version "2016.11.20-0"
#:sha256
(base32
"1qamzpw1fsnn5n9jpsnnnzqj1a0m0xvsikmkdp5a6pmb7sp3ziwk")))
"1496jnhh2jvhkzcj0p4vy89bcs4g5wz6a76m33vw4dhchn5xm9jw")))
(define-public aspell-dict-eo
(aspell-dictionary "eo" "Esperanto"
@@ -218,106 +209,3 @@ dictionaries, including personal ones.")
#:sha256
(base32
"1y09lx9zf2rnp55r16b2vgj953l3538z1vaqgflg9mdvm555bz3p")))
;;;
;;; Hunspell packages made from the Aspell word lists.
;;;
(define* (aspell-word-list language synopsis
#:optional
(nick (string-map (lambda (chr)
(if (char=? #\_ chr)
#\-
chr))
(string-downcase language))))
(package
(name (string-append "hunspell-dict-" nick))
(version "2017.08.24")
(source (origin
(method url-fetch)
(uri (string-append
"http://downloads.sourceforge.net/wordlist/scowl-"
version ".tar.gz"))
(sha256
(base32
"1kdhydzg5z5x20ad2j1x5hbdhvy08ljkfdi2v3gbyvghbagxm15s"))))
(native-inputs
`(("tar" ,tar)
("gzip" ,gzip)
("perl" ,perl)
("aspell" ,aspell)))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(delete 'configure)
(delete 'check)
(replace 'build
(lambda _
(substitute* "speller/make-hunspell-dict"
(("zip -9 .*$")
"return\n"))
(mkdir "speller/hunspell")
;; XXX: This actually builds all the dictionary variants.
(zero? (system* "make" "-C" "speller" "hunspell"))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref %outputs "out"))
(hunspell (string-append out "/share/hunspell"))
(myspell (string-append out "/share/myspell"))
(doc (string-append out "/share/doc/"
,name)))
(mkdir-p myspell)
(install-file ,(string-append "speller/" language ".dic")
hunspell)
(install-file ,(string-append "speller/" language ".aff")
hunspell)
(symlink hunspell (string-append myspell "/dicts"))
(for-each (lambda (file)
(install-file file doc))
(find-files "."
"^(Copyright|.*\\.(txt|org|md))$"))
#t))))))
(synopsis synopsis)
(description
"This package provides a dictionary for the Hunspell spell-checking
library.")
(home-page "http://wordlist.aspell.net/")
(license (non-copyleft "file://Copyright"
"Word lists come from several sources, all
under permissive licensing terms. See the 'Copyright' file."))))
(define-syntax define-word-list-dictionary
(syntax-rules (synopsis)
((_ name language (synopsis text))
(define-public name
(aspell-word-list language text)))
((_ name language nick (synopsis text))
(define-public name
(aspell-word-list language text nick)))))
(define-word-list-dictionary hunspell-dict-en
"en"
(synopsis "Hunspell dictionary for English"))
(define-word-list-dictionary hunspell-dict-en-au
"en_AU"
(synopsis "Hunspell dictionary for Australian English"))
(define-word-list-dictionary hunspell-dict-en-ca
"en_CA"
(synopsis "Hunspell dictionary for Canadian English"))
(define-word-list-dictionary hunspell-dict-en-gb
"en_GB-ise" "en-gb"
(synopsis "Hunspell dictionary for British English, with -ise endings"))
(define-word-list-dictionary hunspell-dict-en-gb-ize
"en_GB-ize"
(synopsis "Hunspell dictionary for British English, with -ize endings"))
(define-word-list-dictionary hunspell-dict-en-us
"en_US"
(synopsis "Hunspell dictionary for United States English"))
+2 -2
View File
@@ -103,14 +103,14 @@ debugging information in STABS, DWARF 2, and CodeView 8 formats.")
(define-public lightning
(package
(name "lightning")
(version "2.1.2")
(version "2.1.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/lightning/lightning-"
version ".tar.gz"))
(sha256
(base32
"0sbs2lm8b9in2m8d52zf0x9gpp40x6r7sl6sha92yq3pr78rwa4v"))))
"19j9nwl88k660045s40cbz5zrl1wpd2mcxnnc8qqnnaj311a58qz"))))
(build-system gnu-build-system)
(native-inputs `(("zlib" ,zlib)))
(synopsis "Library for generating assembly code at runtime")
+5 -5
View File
@@ -64,7 +64,7 @@ in FITS files.")
(define-public wcslib
(package
(name "wcslib")
(version "5.17")
(version "5.16")
(source
(origin
(method url-fetch)
@@ -72,7 +72,7 @@ in FITS files.")
"ftp://ftp.atnf.csiro.au/pub/software/wcslib/" name "-" version
".tar.bz2"))
(sha256
(base32 "0v23x1fw01arhmqdrzfd9n593mjglhzfyx4793v065z0dg4bb72w"))))
(base32 "1vwrzkznpig2q40m11j12hsfqvsjz8z44l66pz5fkh6fy461w0zd"))))
(inputs
`(("cfitsio" ,cfitsio)))
(build-system gnu-build-system)
@@ -83,7 +83,7 @@ in FITS files.")
(substitute* "makedefs.in"
(("/bin/sh") "sh"))
#t)))))
(home-page "https://www.atnf.csiro.au/people/mcalabre/WCS")
(home-page "http://www.atnf.csiro.au/people/mcalabre/WCS")
(synopsis "Library which implements the FITS WCS standard")
(description "The FITS \"World Coordinate System\" (WCS) standard defines
keywords and usage that provide for the description of astronomical coordinate
@@ -93,7 +93,7 @@ systems in a FITS image header.")
(define-public gnuastro
(package
(name "gnuastro")
(version "0.4")
(version "0.3")
(source
(origin
(method url-fetch)
@@ -101,7 +101,7 @@ systems in a FITS image header.")
version ".tar.gz"))
(sha256
(base32
"1n30zz4kg89ic5h30b7nrxp0bk0ls2m3xnfi81mja56bxxwpihrs"))))
"109xjwbs36gbkx5sd5yzf6ailfcldc5d28vl1n19z0ylfzww4nwa"))))
(inputs
`(("cfitsio" ,cfitsio)
("gsl" ,gsl)
+181 -360
View File
@@ -36,7 +36,6 @@
#:use-module (guix build-system trivial)
#:use-module (guix build-system cmake)
#:use-module (guix build-system python)
#:use-module (guix build-system glib-or-gtk)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages autotools)
@@ -80,11 +79,7 @@
#:use-module (gnu packages xiph)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (gnu packages maths)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages music)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26))
#:use-module (srfi srfi-1))
(define-public alsa-modular-synth
(package
@@ -191,11 +186,11 @@ streams from live audio.")
(define-public ardour
(package
(name "ardour")
(version "5.12")
(version "5.8")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://git.ardour.org/ardour/ardour.git")
(url "git://git.ardour.org/ardour/ardour.git")
(commit version)))
(snippet
;; Ardour expects this file to exist at build time. The revision
@@ -208,7 +203,7 @@ streams from live audio.")
namespace ARDOUR { const char* revision = \"" version "\" ; }")))))
(sha256
(base32
"0mla5lm51ryikc2rrk53max2m7a5ds6i1ai921l2h95wrha45nkr"))
"1lcvslrcw6g4kp9w0h1jx46x6ilz4nzz0k2yrw4gd545k1rwx0c1"))
(file-name (string-append name "-" version))))
(build-system waf-build-system)
(arguments
@@ -277,42 +272,20 @@ engineers, musicians, soundtrack editors and composers.")
(define-public audacity
(package
(name "audacity")
(version "2.2.0")
(version "2.1.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/audacity/audacity/archive"
"/Audacity-" version ".tar.gz"))
(sha256
(base32 "09xpr4bjnainz1xmc35v3qg3dadjr9wv8bmn1p4y91aqyihnhjry"))
(patches (search-patches "audacity-build-with-system-portaudio.patch"))
(modules '((guix build utils)))
(snippet
;; Remove bundled libraries.
'(begin
(for-each
(lambda (dir)
(delete-file-recursively (string-append "lib-src/" dir)))
'("expat" "ffmpeg" "libflac" "libid3tag" "libmad" "libogg"
"libsndfile" "libsoxr" "libvamp" "libvorbis" "lv2"
"portaudio-v19" "portmidi" "soundtouch" "twolame"
;; FIXME: these libraries have not been packaged yet:
;; "libnyquist"
;; "libscorealign"
;; "libwidgetextra"
;; "portburn"
;; "portsmf"
;; "portmixer"
;; FIXME: we have this library, but it differs in that the Slide
;; class does not have a member "getInverseStretchedTime".
;; "sbsms"
))
#t))))
(base32 "11mx7gb4dbqrgfp7hm0154x3m76ddnmhf2675q5zkxn7jc5qfc6b"))))
(build-system gnu-build-system)
(inputs
`(("wxwidgets" ,wxwidgets)
("gtk" ,gtk+)
;; TODO: Add portSMF and libwidgetextra once they're packaged. In-tree
;; versions shipping with Audacity are used for now.
`(("wxwidgets" ,wxwidgets-gtk2)
("gtk" ,gtk+-2)
("alsa-lib" ,alsa-lib)
("jack" ,jack-1)
("expat" ,expat)
@@ -321,7 +294,7 @@ engineers, musicians, soundtrack editors and composers.")
("flac" ,flac)
("libid3tag" ,libid3tag)
("libmad" ,libmad)
;;("libsbsms" ,libsbsms) ;bundled version is modified
("libsbsms" ,libsbsms)
("libsndfile" ,libsndfile)
("soundtouch" ,soundtouch)
("soxr" ,soxr) ;replaces libsamplerate
@@ -329,10 +302,8 @@ engineers, musicians, soundtrack editors and composers.")
("vamp" ,vamp)
("libvorbis" ,libvorbis)
("lv2" ,lv2)
("lilv" ,lilv) ;for lv2
("suil" ,suil) ;for lv2
("portaudio" ,portaudio)
("portmidi" ,portmidi)))
("lilv" ,lilv)
("portaudio" ,portaudio)))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
@@ -342,63 +313,24 @@ engineers, musicians, soundtrack editors and composers.")
("python" ,python-2)
("which" ,which)))
(arguments
`(#:configure-flags
'(#:configure-flags
(let ((libid3tag (assoc-ref %build-inputs "libid3tag"))
(libmad (assoc-ref %build-inputs "libmad"))
(portmidi (assoc-ref %build-inputs "portmidi")))
(libmad (assoc-ref %build-inputs "libmad")))
(list
;; Loading FFmpeg dynamically is problematic.
"--disable-dynamic-loading"
;; SSE instructions are available on Intel systems only.
,@(if (any (cute string-prefix? <> (or (%current-target-system)
(%current-system)))
'("x64_64" "i686"))
'()
'("--enable-sse=no"))
;; portmidi, libid3tag and libmad provide no .pc files, so
;; pkg-config fails to find them. Force their inclusion.
;; libid3tag and libmad provide no .pc files, so pkg-config fails to
;; find them. Force their inclusion.
(string-append "ID3TAG_CFLAGS=-I" libid3tag "/include")
(string-append "ID3TAG_LIBS=-L" libid3tag "/lib -lid3tag -lz")
(string-append "LIBMAD_CFLAGS=-I" libmad "/include")
(string-append "LIBMAD_LIBS=-L" libmad "/lib -lmad")
(string-append "PORTMIDI_CFLAGS=-I" portmidi "/include")
(string-append "PORTMIDI_LIBS=-L" portmidi "/lib -lportmidi")
"EXPAT_USE_SYSTEM=yes"
"FFMPEG_USE_SYSTEM=yes"
"LAME_USE_SYSTEM=yes"
"LIBFLAC_USE_SYSTEM=yes"
"LIBID3TAG_USE_SYSTEM=yes"
"LIBMAD_USE_SYSTEM=yes"
"USE_LOCAL_LIBNYQUIST=" ;not packaged yet
;;"LIBSBSMS_USE_SYSTEM=yes" ;bundled version is patched
"LIBSNDFILE_USE_SYSTEM=yes"
"LIBSOUNDTOUCH_USE_SYSTEM=yes"
"LIBSOXR_USE_SYSTEM=yes"
"LIBTWOLAME_USE_SYSTEM=yes"
"LIBVAMP_USE_SYSTEM=yes"
"LIBVORBIS_USE_SYSTEM=yes"
"LV2_USE_SYSTEM=yes"
"PORTAUDIO_USE_SYSTEM=yes"))
(string-append "LIBMAD_LIBS=-L" libmad "/lib -lmad")))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-sbsms-check
;; FFmpeg is only detected if autoreconf runs.
(add-before 'configure 'autoreconf
(lambda _
;; This check is wrong: there is no 2.2.0 release; not even the
;; bundled sources match this release string.
(substitute* '("m4/audacity_checklib_libsbsms.m4"
"configure")
(("sbsms >= 2.2.0") "sbsms >= 2.0.0"))
#t))
(add-after 'unpack 'use-upstream-headers
(lambda* (#:key inputs #:allow-other-keys)
(substitute* '("src/NoteTrack.cpp"
"src/AudioIO.cpp"
"src/AudioIO.h")
(("../lib-src/portmidi/pm_common/portmidi.h") "portmidi.h")
(("../lib-src/portmidi/porttime/porttime.h") "porttime.h"))
(substitute* "src/prefs/MidiIOPrefs.cpp"
(("../../lib-src/portmidi/pm_common/portmidi.h") "portmidi.h"))
#t)))
(zero? (system* "autoreconf" "-vfi")))))
;; The test suite is not "well exercised" according to the developers,
;; and fails with various errors. See
;; <http://sourceforge.net/p/audacity/mailman/message/33524292/>.
@@ -453,14 +385,14 @@ plugins are provided.")
(define-public calf
(package
(name "calf")
(version "0.90.0")
(version "0.0.60")
(source (origin
(method url-fetch)
(uri (string-append "http://calf-studio-gear.org/files/calf-"
version ".tar.gz"))
(sha256
(base32
"0dijv2j7vlp76l10s4v8gbav26ibaqk8s24ci74vrc398xy00cib"))))
"019fwg00jv217a5r767z7szh7vdrarybac0pr2sk26xp81kibrx9"))))
(build-system gnu-build-system)
(inputs
`(("fluidsynth" ,fluidsynth)
@@ -636,17 +568,23 @@ emulation (valve, tape), bit fiddling (decimator, pointer-cast), etc.")
(define-public csound
(package
(name "csound")
(version "6.09.1")
(version "6.05")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/csound/csound/archive/"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
"mirror://sourceforge/csound/csound6/Csound"
version "/Csound" version ".tar.gz"))
(sha256
(base32
"0xqpqws4jsv7fyawcjzwaw544qbfh29xq164kdf30a9v1n3yklp4"))))
"0a1sni6lr7qpwywpggbkp0ia3h9bwwgf9i87gsag8ra2h30v82hd"))
(patches (search-patches "csound-header-ordering.patch"))))
(build-system cmake-build-system)
(arguments
;; Work around this error on x86_64 with libc 2.22+:
;; libmvec.so.1: error adding symbols: DSO missing from command line
(if (string-prefix? "x86_64" (or (%current-target-system) (%current-system)))
'(#:configure-flags '("-DCMAKE_EXE_LINKER_FLAGS=-lmvec"))
'()))
(inputs
`(("alsa-lib" ,alsa-lib)
("boost" ,boost)
@@ -685,21 +623,23 @@ language and software synthesizer.")
`(#:tests? #f ; no "check" target
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-makefile-and-enter-directory
(lambda _
(substitute* "libs/Makefile"
(("/sbin/ldconfig") "true")
(("^LIBDIR =.*") "LIBDIR = lib\n"))
(chdir "libs")
#t))
(add-after 'install 'install-symlink
(lambda _
(symlink "libclalsadrv.so"
(string-append (assoc-ref %outputs "out")
"/lib/libclalsadrv.so.2"))))
(alist-cons-after
'unpack 'patch-makefile-and-enter-directory
(lambda _
(substitute* "libs/Makefile"
(("/sbin/ldconfig") "true")
(("^LIBDIR =.*") "LIBDIR = lib\n"))
(chdir "libs")
#t)
(alist-cons-after
'install
'install-symlink
(lambda _
(symlink "libclalsadrv.so"
(string-append (assoc-ref %outputs "out")
"/lib/libclalsadrv.so.2")))
;; no configure script
(delete 'configure))))
(alist-delete 'configure %standard-phases)))))
(inputs
`(("alsa-lib" ,alsa-lib)
("fftw" ,fftw)))
@@ -1026,27 +966,23 @@ follower.")
(define-public fluidsynth
(package
(name "fluidsynth")
(version "1.1.8")
(version "1.1.6")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/FluidSynth/fluidsynth.git")
(commit (string-append "v" version))))
(file-name (string-append name "-" version "-checkout"))
(method url-fetch)
(uri (string-append
"mirror://sourceforge/fluidsynth/fluidsynth-"
version "/fluidsynth-" version ".tar.gz"))
(sha256
(base32
"12q7hv0zvgylsdj1ipssv5zr7ap2y410dxsd63dz22y05fa2hwwd"))))
(build-system cmake-build-system)
"070pwb7brdcn1mfvplkd56vjc7lbz4iznzkqvfsakvgbv68k71ah"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f ; no check phase
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-libdir
(lambda _
(substitute* "CMakeLists.txt"
(("LIB_SUFFIX \\$\\{_init_lib_suffix\\}")
"LIB_SUFFIX \"\""))
#t)))))
`(#:phases
(alist-cons-after
'unpack
'remove-broken-symlinks
(lambda _ (delete-file-recursively "m4") #t)
%standard-phases)))
(inputs
`(("libsndfile" ,libsndfile)
("alsa-lib" ,alsa-lib)
@@ -1064,7 +1000,7 @@ follower.")
specifications. FluidSynth reads and handles MIDI events from the MIDI input
device. It is the software analogue of a MIDI synthesizer. FluidSynth can
also play midifiles using a Soundfont.")
(license license:lgpl2.1+)))
(license license:gpl2+)))
(define-public faad2
(package
@@ -1085,11 +1021,12 @@ also play midifiles using a Soundfont.")
("unzip" ,unzip)))
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'bootstrap
(lambda _
(substitute* "bootstrap" (("\r\n") "\n"))
(zero? (system* "sh" "bootstrap")))))))
(alist-cons-after
'unpack 'bootstrap
(lambda _
(substitute* "bootstrap" (("\r\n") "\n"))
(zero? (system* "sh" "bootstrap")))
%standard-phases)))
(home-page "http://www.audiocoding.com/faad2.html")
(synopsis "MPEG-4 and MPEG-2 AAC decoder")
(description
@@ -1100,19 +1037,17 @@ PS, and DAB+.")
(define-public faust
(package
(name "faust")
(version "0.9.90")
(version "0.9.67")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/grame-cncm/faust.git")
(commit (string-append "v"
(string-map (lambda (c)
(if (char=? c #\.) #\- c))
version)))))
(file-name (string-append "faust-" version "-checkout"))
(method url-fetch)
(uri (string-append
"mirror://sourceforge/faudiostream/faust-" version ".zip"))
(sha256
(base32
"0qc6iwjd3i80jdyjc186c6ywipmjzl8wlsp4050pbr56q4rlkd4z"))))
"068vl9536zn0j4pknwfcchzi90rx5pk64wbcbd67z32w0csx8xm1"))
(snippet
;; Remove prebuilt library
'(delete-file "architecture/android/libs/armeabi-v7a/libfaust_dsp.so"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out")))
@@ -1120,16 +1055,7 @@ PS, and DAB+.")
#:phases
(modify-phases %standard-phases
;; no "configure" script
(delete 'configure)
;; Files appear under $out/share/faust that are read-only. The
;; install phase tries to overwrite them and fails, so we change
;; the permissions first.
(add-before 'install 'fix-permissions
(lambda _
(for-each (lambda (file)
(chmod file #o644))
(find-files "architecture/max-msp" ".*"))
#t)))))
(delete 'configure))))
(native-inputs
`(("unzip" ,unzip)))
(home-page "http://faust.grame.fr/")
@@ -1141,18 +1067,14 @@ PS, and DAB+.")
(define-public faust-2
(package
(inherit faust)
(version "2.1.0")
(version "2.0.a51")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/grame-cncm/faust.git")
(commit (string-append "v"
(string-map (lambda (c)
(if (char=? c #\.) #\- c))
version)))))
(method url-fetch)
(uri (string-append
"mirror://sourceforge/faudiostream/faust-" version ".tgz"))
(sha256
(base32
"06km0ygwxxwgw1lqldccqidxhmjfz8ck0wnbd95qk5sg8sbpc068"))))
"1yryjqfqmxs7lxy95hjgmrncvl9kig3rcsmg0v49ghzz7vs7haxf"))))
(build-system gnu-build-system)
(arguments
(substitute-keyword-arguments (package-arguments faust)
@@ -1162,7 +1084,7 @@ PS, and DAB+.")
(native-inputs
`(("llvm" ,llvm-with-rtti)
("which" ,which)
("xxd" ,xxd)
("xxd" ,vim)
("ctags" ,emacs-minimal) ; for ctags
("pkg-config" ,pkg-config)))
(inputs
@@ -1214,7 +1136,7 @@ patches that can be used with softsynths such as Timidity and WildMidi.")
(define-public guitarix
(package
(name "guitarix")
(version "0.36.1")
(version "0.35.3")
(source (origin
(method url-fetch)
(uri (string-append
@@ -1222,7 +1144,7 @@ patches that can be used with softsynths such as Timidity and WildMidi.")
version ".tar.xz"))
(sha256
(base32
"1g5949jwh2n755xjs3kcbdb8a1wxr5mn0m115wdnk27dxcdn93b0"))))
"0pvw4ijkq6lcn45vrif9b4mqmgzi0qg1dp5b33kb5zan6n1aci4j"))))
(build-system waf-build-system)
(arguments
`(#:tests? #f ; no "check" target
@@ -1274,7 +1196,9 @@ auto-wah.")
(arguments
(substitute-keyword-arguments (package-arguments guitarix)
((#:configure-flags flags)
`(cons "--lv2-only" ,flags))))))
`(cons "--lv2-only" ,flags))))
(inputs
(alist-delete "webkitgtk/gtk+-2" (package-inputs guitarix)))))
(define-public rakarrack
(package
@@ -1416,16 +1340,17 @@ synchronous execution of all clients, and low latency operation.")
(define-public jack-2
(package (inherit jack-1)
(name "jack2")
(version "1.9.11-RC1")
(version "1.9.10")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/jackaudio/jack2/releases/"
"download/v" version "/jack2-"
version ".tar.gz"))
(uri (string-append
"https://github.com/jackaudio/jack2/archive/v"
version
".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0ks72xxv8qrpwjc2ksr74rnp178h62g5vdplb2rn4vhkw86yw3kk"))))
"03b0iiyk3ng3vh5s8gaqwn565vik7910p56mlbk512bw3dhbdwc8"))))
(build-system waf-build-system)
(arguments
`(#:python ,python-2
@@ -1573,16 +1498,6 @@ to be plugged into a wide range of audio synthesis and recording packages.")
(base32
"12z1vx3krrzsfccpah9xjs68900xvr7bw92wx8np5871i2yv47iw"))))
(build-system gnu-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
;; lashd embeds an ancient version of sigsegv so we just skip it
(add-after 'unpack 'skip-lashd
(lambda _
(substitute* '("Makefile.am" "Makefile.in")
(("lashd ") ""))
#t)))
#:configure-flags '("--disable-static")))
(inputs
`(("bdb" ,bdb)
("gtk" ,gtk+-2)
@@ -1749,21 +1664,6 @@ add functionality to support the needs of increasingly powerful audio
software.")
(license license:isc)))
(define-public lv2-devel
(let ((commit "39c7c726cd52b2863fcea356cafe1bcab2ba7f37")
(revision "1"))
(package (inherit lv2)
(name "lv2-devel")
(version (string-append "1.15.3-" revision "." (string-take commit 7)))
(source (origin
(method git-fetch)
(uri (git-reference
(url "http://lv2plug.in/git/lv2.git")
(commit commit)))
(sha256
(base32
"1gp2rd99dfmpibvpixrqn115mrhybzf3if3h8bssf6siyi13f29r")))))))
(define-public lv2-mda-piano
(package
(name "lv2-mda-piano")
@@ -1782,7 +1682,7 @@ software.")
"TYPE=mdaPiano"
(string-append "PREFIX=" (assoc-ref %outputs "out")))
#:tests? #f ; no check target
#:phases (modify-phases %standard-phases (delete 'configure))))
#:phases (alist-delete 'configure %standard-phases)))
(inputs
`(("lv2" ,lv2)
("lvtk" ,lvtk)))
@@ -1805,7 +1705,7 @@ software.")
"TYPE=mdaEPiano"
(string-append "PREFIX=" (assoc-ref %outputs "out")))
#:tests? #f ; no check target
#:phases (modify-phases %standard-phases (delete 'configure))))
#:phases (alist-delete 'configure %standard-phases)))
(home-page "http://elephly.net/lv2/mdaepiano.html")
(synopsis "LV2 port of the mda EPiano plugin")
(description "An LV2 port of the mda EPiano VSTi.")))
@@ -2020,11 +1920,11 @@ aimed at audio/musical applications.")
(license license:gpl2+)))
(define-public raul-devel
(let ((commit "4db870b2b20b0a608ec0283139056b836c5b1624")
(let ((commit "f8bf77d3c3b77830aedafb9ebb5cdadfea7ed07a")
(revision "1"))
(package (inherit raul)
(name "raul")
(version (string-append "0.8.9-" revision "."
(version (string-append "0.8.4-" revision "."
(string-take commit 9)))
(source (origin
(method git-fetch)
@@ -2034,7 +1934,7 @@ aimed at audio/musical applications.")
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"04fajrass3ymr72flx5js5vxc601ccrmx8ny8scp0rw7j0igyjdr")))))))
"1lby508fb0n8ks6iz959sh18fc37br39d6pbapwvbcw5nckdrxwj")))))))
(define-public rubberband
(package
@@ -2081,8 +1981,8 @@ tempo and pitch of an audio recording independently of one another.")
(arguments
`(#:tests? #f ;no "check" target
#:phases (modify-phases %standard-phases
(add-after
'unpack 'autoconf
(add-before
'configure 'autoconf
(lambda _ (zero? (system* "autoreconf" "-vfi"))))
(add-before
'build 'fix-makefile
@@ -2144,14 +2044,14 @@ the Turtle syntax.")
(define-public suil
(package
(name "suil")
(version "0.10.0")
(version "0.8.4")
(source (origin
(method url-fetch)
(uri (string-append "http://download.drobilla.net/suil-"
version ".tar.bz2"))
(sha256
(base32
"0j489gm3fhnmwmbgw30bvd4byw1vsy4yazdlnji8jzhcz0qwb5cq"))))
"1kji3lhha26qr6xm9j8ic5c40zbrrb5qnwm2qxzmsfxgmrz29wkf"))))
(build-system waf-build-system)
(arguments
`(#:tests? #f ; no check target
@@ -2159,8 +2059,7 @@ the Turtle syntax.")
'("CXXFLAGS=-std=gnu++11")))
(inputs
`(("lv2" ,lv2)
("gtk+" ,gtk+-2)
("gtk+" ,gtk+)
("gtk+-2" ,gtk+-2)
("qt" ,qtbase)))
(native-inputs
`(("pkg-config" ,pkg-config)))
@@ -2174,7 +2073,7 @@ toolkit. The API is designed such that hosts do not need to explicitly
support specific toolkits if Suil supports a particular toolkit, then UIs in
that toolkit will work in all hosts that use Suil automatically.
Suil currently supports every combination of Gtk, Qt, and X11.")
Suil currently supports every combination of Gtk 2, Qt 4, and X11.")
(license license:isc)))
(define-public timidity++
@@ -2199,19 +2098,19 @@ Suil currently supports every combination of Gtk, Qt, and X11.")
(string-append "--with-default-path="
(assoc-ref %outputs "out") "/etc/timidity"))
#:phases
(modify-phases %standard-phases
(add-after 'install 'install-config
(lambda _
(let ((out (string-append (assoc-ref %outputs "out")
"/etc/timidity")))
(mkdir-p out)
(call-with-output-file
(string-append out "/timidity.cfg")
(lambda (port)
(format port (string-append "source "
(assoc-ref %build-inputs "freepats")
"/share/freepats/freepats.cfg")))))
#t)))))
(alist-cons-after
'install 'install-config
(lambda _
(let ((out (string-append (assoc-ref %outputs "out")
"/etc/timidity")))
(mkdir-p out)
(call-with-output-file
(string-append out "/timidity.cfg")
(lambda (port)
(format port (string-append "source "
(assoc-ref %build-inputs "freepats")
"/share/freepats/freepats.cfg"))))))
%standard-phases)))
(inputs
`(("alsa-lib" ,alsa-lib)
("ao" ,ao)
@@ -2250,15 +2149,16 @@ disks as various audio file formats.")
(arguments
`(#:tests? #f ; no check target
#:phases
(modify-phases %standard-phases
(add-after 'install 'remove-libvamp-hostsdk.la
(lambda* (#:key outputs #:allow-other-keys)
;; https://bugs.launchpad.net/ubuntu/+source/vamp-plugin-sdk/+bug/1253656
(for-each delete-file
(let ((out (assoc-ref outputs "out")))
(list (string-append out "/lib/libvamp-sdk.la")
(string-append out "/lib/libvamp-hostsdk.la"))))
#t)))))
(alist-cons-after
'install 'remove-libvamp-hostsdk.la
(lambda* (#:key outputs #:allow-other-keys)
;; https://bugs.launchpad.net/ubuntu/+source/vamp-plugin-sdk/+bug/1253656
(for-each delete-file
(let ((out (assoc-ref outputs "out")))
(list (string-append out "/lib/libvamp-sdk.la")
(string-append out "/lib/libvamp-hostsdk.la"))))
#t)
%standard-phases)))
(inputs
`(("libsndfile" ,libsndfile)))
(native-inputs
@@ -2420,10 +2320,11 @@ Tracker 3 S3M and Impulse Tracker IT files.")
("file" ,file)))
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'bootstrap
(lambda _
(zero? (system* "sh" "bootstrap")))))))
(alist-cons-after
'unpack 'bootstrap
(lambda _
(zero? (system* "sh" "bootstrap")))
%standard-phases)))
(home-page "http://www.surina.net/soundtouch/")
(synopsis
"Audio processing library for changing tempo, pitch and playback rate")
@@ -2557,10 +2458,11 @@ portions of LAME.")
'(#:phases
;; Autoreconf is necessary because the audacity-compat patch modifies
;; .in files.
(modify-phases %standard-phases
(add-after 'unpack 'autoreconf
(lambda _
(zero? (system* "autoreconf" "-vif")))))
(alist-cons-after
'unpack 'autoreconf
(lambda _
(zero? (system* "autoreconf" "-vif")))
%standard-phases)
#:tests? #f)) ;no 'check' target
(home-page "http://www.portaudio.com/")
(synopsis "Audio I/O library")
@@ -2624,13 +2526,14 @@ synthesizer written in C++.")
("pulseaudio" ,pulseaudio)))
(arguments
'(#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(setenv "CC" "gcc")
(zero?
(system* "./configure"
(string-append "--prefix=" (assoc-ref outputs "out")))))))
(alist-replace
'configure
(lambda* (#:key outputs #:allow-other-keys)
(setenv "CC" "gcc")
(zero?
(system* "./configure"
(string-append "--prefix=" (assoc-ref outputs "out")))))
%standard-phases)
;; No 'check' target.
#:tests? #f))
(home-page "http://themaister.net/rsound.html")
@@ -2697,20 +2600,22 @@ result.")
`(#:tests? #f ; no "check" target
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-makefile-and-enter-directory
(lambda _
(substitute* "libs/Makefile"
(("ldconfig") "true")
(("^LIBDIR =.*") "LIBDIR = lib\n"))
(chdir "libs") #t))
(add-after 'install 'install-symlink
(lambda _
(symlink "libzita-convolver.so"
(string-append (assoc-ref %outputs "out")
"/lib/libzita-convolver.so.3"))))
(alist-cons-after
'unpack 'patch-makefile-and-enter-directory
(lambda _
(substitute* "libs/Makefile"
(("ldconfig") "true")
(("^LIBDIR =.*") "LIBDIR = lib\n"))
(chdir "libs") #t)
(alist-cons-after
'install
'install-symlink
(lambda _
(symlink "libzita-convolver.so"
(string-append (assoc-ref %outputs "out")
"/lib/libzita-convolver.so.3")))
;; no configure script
(delete 'configure))))
(alist-delete 'configure %standard-phases)))))
(inputs `(("fftwf" ,fftwf)))
(home-page "http://kokkinizita.linuxaudio.org")
(synopsis "Fast, partitioned convolution engine library")
@@ -2785,21 +2690,23 @@ provide high-quality sample rate conversion.")
`(#:tests? #f ; no "check" target
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-makefile-and-enter-directory
(lambda _
(substitute* "libs/Makefile"
(("ldconfig") "true")
(("^LIBDIR =.*") "LIBDIR = lib\n"))
(chdir "libs")
#t))
(add-after 'install 'install-symlink
(lambda _
(symlink "libzita-alsa-pcmi.so"
(string-append (assoc-ref %outputs "out")
"/lib/libzita-alsa-pcmi.so.0"))))
;; no configure script
(delete 'configure))))
(alist-cons-after
'unpack 'patch-makefile-and-enter-directory
(lambda _
(substitute* "libs/Makefile"
(("ldconfig") "true")
(("^LIBDIR =.*") "LIBDIR = lib\n"))
(chdir "libs")
#t)
(alist-cons-after
'install
'install-symlink
(lambda _
(symlink "libzita-alsa-pcmi.so"
(string-append (assoc-ref %outputs "out")
"/lib/libzita-alsa-pcmi.so.0")))
;; no configure script
(alist-delete 'configure %standard-phases)))))
(inputs
`(("alsa-lib" ,alsa-lib)
("fftw" ,fftw)))
@@ -2861,8 +2768,7 @@ machine-readable ASCII format.")
(description "shntool is a multi-purpose WAVE data processing and reporting
utility. File formats are abstracted from its core, so it can process any file
that contains WAVE data, compressed or not---provided there exists a format
module to handle that particular file type. It can also generate CUE files, and
use them split WAVE data into multiple files.")
module to handle that particular file type.")
(home-page "http://etree.org/shnutils/shntool/")
;; 'install-sh' bears the x11 license
(license (list license:gpl2+ license:x11))))
@@ -3001,88 +2907,3 @@ code, used in @code{libtoxcore}.")
06.10 RPE-LTP lossy speech compression algorithm.")
(home-page "http://quut.com/gsm/")
(license (license:non-copyleft "file://COPYRIGHT"))))
(define-public python-pyalsaaudio
(package
(name "python-pyalsaaudio")
(version "0.8.4")
(source (origin
(method url-fetch)
(uri (pypi-uri "pyalsaaudio" version))
(sha256
(base32
"1180ypn9596rq4b7y7dyv627j1q0fqilmkkrckclnzsdakdgis44"))))
(build-system python-build-system)
(arguments
`(#:tests? #f)) ; tests require access to ALSA devices.
(inputs
`(("alsa-lib" ,alsa-lib)))
(home-page "http://larsimmisch.github.io/pyalsaaudio/")
(synopsis "ALSA wrappers for Python")
(description
"This package contains wrappers for accessing the ALSA API from Python.
It is currently fairly complete for PCM devices, and has some support for
mixers.")
(license license:psfl)))
(define-public python2-pyalsaaudio
(package-with-python2 python-pyalsaaudio))
(define-public snd
(package
(name "snd")
(version "17.7")
(source (origin
(method url-fetch)
(uri (string-append "ftp://ccrma-ftp.stanford.edu/pub/Lisp/"
"snd-" version ".tar.gz"))
(sha256
(base32
"1vm0dy5qlycqkima7y5ajzvazyjybifa803fabjcpncjz08c26vp"))))
(build-system glib-or-gtk-build-system)
(arguments
'(#:tests? #f ; no tests
#:out-of-source? #f ; for the 'install-doc' phase
#:configure-flags
(let* ((out (assoc-ref %outputs "out"))
(docdir (string-append out "/share/doc/snd")))
(list "--with-alsa" "--with-jack" "--with-gmp"
(string-append "--with-doc-dir=" docdir)))
#:phases
(modify-phases %standard-phases
(add-after 'install 'install-doc
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(docdir (string-append out "/share/doc/snd")))
(mkdir-p docdir)
(for-each
(lambda (f)
(install-file f docdir))
(find-files "." "\\.html$|COPYING"))
(copy-recursively "pix" (string-append docdir "/pix"))
#t))))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("alsa-lib" ,alsa-lib)
("fftw" ,fftw)
("flac" ,flac)
("gmp" ,gmp)
("gsl" ,gsl)
("gtk+" ,gtk+)
("jack" ,jack-1)
("libsamplerate" ,libsamplerate)
("mpc" ,mpc)
("mpfr" ,mpfr)
("mpg123" ,mpg123)
("speex" ,speex)
("timidity++" ,timidity++)
("vorbis-tools" ,vorbis-tools)
("wavpack" ,wavpack)))
(synopsis "Sound editor")
(home-page "https://ccrma.stanford.edu/software/snd/")
(description
"Snd is a sound editor modelled loosely after Emacs. It can be
customized and extended using either the s7 Scheme implementation (included in
the Snd sources), Ruby, or Forth.")
(license (license:non-copyleft "file://COPYING"))))
+2 -3
View File
@@ -1,6 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -31,14 +30,14 @@
(define-public augeas
(package
(name "augeas")
(version "1.8.1")
(version "1.8.0")
(source (origin
(method url-fetch)
(uri (string-append "http://download.augeas.net/augeas-"
version ".tar.gz"))
(sha256
(base32
"1yf93fqwav1zsl8dpyfkf0g11w05mmfckqy6qsjy5zkklnspbkv5"))))
"1iac5lwi1q10r343ii9v5p2fdplvh06yv9svsi8zz6cd2c2fjp2i"))))
(build-system gnu-build-system)
;; Marked as "required" in augeas.pc
(propagated-inputs
+4 -22
View File
@@ -1,12 +1,11 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
;;; Copyright © 2014 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
;;; Copyright © 2015, 2017 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016 David Thompson <davet@gnu.org>
;;; Copyright © 2017 ng0 <ng0@infotropique.org>
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 ng0 <ng0@libertad.pw>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -195,7 +194,7 @@ exec ~a --no-auto-compile \"$0\" \"$@\"
(define-public autoconf-archive
(package
(name "autoconf-archive")
(version "2017.09.28")
(version "2017.03.21")
(source
(origin
(method url-fetch)
@@ -203,7 +202,7 @@ exec ~a --no-auto-compile \"$0\" \"$@\"
version ".tar.xz"))
(sha256
(base32
"00gsh9hkrgg291my98plkrwlcpxkfrpq64pglf18kciqbf2bb7sw"))))
"0rfpapadka2023qhy8294ca5awxpb8d4904js6kv7piby5ax8siq"))))
(build-system gnu-build-system)
(home-page "https://www.gnu.org/software/autoconf-archive/")
(synopsis "Collection of freely reusable Autoconf macros")
@@ -238,7 +237,6 @@ output is indexed in many ways to simplify browsing.")
(license gpl3+)))
(define-public automake
;; Replace with 'automake/latest' on the next rebuild cycle.
(package
(name "automake")
(version "1.15")
@@ -317,22 +315,6 @@ intuitive format and then Automake works with Autoconf to produce a robust
Makefile, simplifying the entire process for the developer.")
(license gpl2+))) ; some files are under GPLv3+
(define-public automake/latest
;; Merge with 'automake' on the next rebuild cycle.
(package
(inherit automake)
(version "1.15.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/automake/automake-"
version ".tar.xz"))
(sha256
(base32
"1bzd9g32dfm4rsbw93ld9x7b5nc1y6i4m6zp032qf1i28a8s6sxg"))
(patches
(search-patches "automake-skip-amhello-tests.patch"))))))
(define-public libtool
(package
(name "libtool")
+3 -6
View File
@@ -1,7 +1,6 @@
;;; guix-emacs.el --- Emacs packages installed with Guix
;; Copyright © 2014, 2015, 2016, 2017 Alex Kost <alezost@gmail.com>
;; Copyright © 2017 Kyle Meyer <kyle@kyleam.com>
;; This file is part of GNU Guix.
@@ -88,11 +87,9 @@ profiles.
(interactive (list (if (fboundp 'guix-read-package-profile)
(funcall 'guix-read-package-profile)
guix-user-profile)))
(let* ((env (getenv "GUIX_ENVIRONMENT"))
(profiles (or profiles
(append (list "/run/current-system/profile"
guix-user-profile)
(and env (list env))))))
(let ((profiles (or profiles
(list "/run/current-system/profile"
guix-user-profile))))
(dolist (profile profiles)
(let ((dirs (guix-emacs-directories profile)))
(when dirs
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -157,7 +157,7 @@ C++.")
(list (string-append "PREFIX=" (assoc-ref %outputs "out")))))
(native-inputs
`(("unzip" ,unzip)
("xxd" ,xxd)))
("vim" ,vim))) ; for xxd
(home-page "http://microscheme.org/")
(synopsis "Scheme subset for Atmel microcontrollers")
(description
-352
View File
@@ -1,352 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.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 axoloti)
#:use-module (guix utils)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system gnu)
#:use-module (guix build-system ant)
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages compression)
#:use-module (gnu packages cross-base)
#:use-module (gnu packages embedded)
#:use-module (gnu packages flashing-tools)
#:use-module (gnu packages java)
#:use-module (gnu packages libusb)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages textutils)
#:use-module (gnu packages version-control)
#:use-module (gnu packages xml))
(define libusb-for-axoloti
(package (inherit libusb)
(name "axoloti-libusb")
(version (package-version libusb))
(source
(origin
(inherit (package-source libusb))
(patches (list (search-patch "libusb-for-axoloti.patch")))))))
(define dfu-util-for-axoloti
(package (inherit dfu-util)
(name "axoloti-dfu-util")
(version "0.8")
(source
(origin
(method url-fetch)
(uri (string-append "http://dfu-util.sourceforge.net/releases/"
"dfu-util-" version ".tar.gz"))
(sha256
(base32
"0n7h08avlzin04j93m6hkq9id6hxjiiix7ff9gc2n89aw6dxxjsm"))))
(inputs
`(("libusb" ,libusb-for-axoloti)))))
(define-public axoloti-runtime
(package
(name "axoloti-runtime")
(version "1.0.12")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/axoloti/axoloti/"
"archive/" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1dynk6h0nixp4zihpirpqa4vi8fq1lhm443jsmvhk135ykhf364p"))
(modules '((guix build utils)))
(snippet
'(begin
;; Remove pre-built Java binaries.
(delete-file-recursively "lib/")
#t))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no check target
#:modules ((guix build gnu-build-system)
(guix build utils)
(srfi srfi-1)
(srfi srfi-26)
(ice-9 match)
(ice-9 regex))
#:imported-modules ((guix build syscalls)
,@%gnu-build-system-modules)
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-paths
(lambda* (#:key inputs #:allow-other-keys)
;; prepare ChibiOS
(and (zero? (system* "unzip" "-o" (assoc-ref inputs "chibios")))
(zero? (system* "mv" "ChibiOS_2.6.9" "chibios"))
(with-directory-excursion "chibios/ext"
(zero? (system* "unzip" "-o" "fatfs-0.9-patched.zip"))))
;; Remove source of non-determinism in ChibiOS
(substitute* "chibios/os/various/shell.c"
(("#ifdef __DATE__") "#if 0"))
;; Patch shell paths
(substitute* '("src/main/java/qcmds/QCmdCompileFirmware.java"
"src/main/java/qcmds/QCmdCompilePatch.java"
"src/main/java/qcmds/QCmdFlashDFU.java")
(("/bin/sh") (which "sh")))
;; Override cross compiler base name
(substitute* "firmware/Makefile.patch"
(("arm-none-eabi-(gcc|g\\+\\+|objcopy|objdump)" tool)
(which tool)))
;; Hardcode full path to compiler tools
(substitute* '("firmware/Makefile"
"firmware/flasher/Makefile"
"firmware/mounter/Makefile")
(("TRGT =.*")
(string-append "TRGT = "
(assoc-ref inputs "cross-toolchain")
"/bin/arm-none-eabi-\n")))
;; Hardcode path to "make"
(substitute* '("firmware/compile_firmware_linux.sh"
"firmware/compile_patch_linux.sh")
(("make") (which "make")))
;; Hardcode path to "dfu-util"
(substitute* "platform_linux/upload_fw_dfu.sh"
(("-f \"\\$\\{platformdir\\}/bin/dfu-util\"") "-z \"\"")
(("\\./dfu-util") (which "dfu-util")))
#t))
(delete 'configure)
(replace 'build
;; Build Axoloti firmware with cross-compiler
(lambda* (#:key inputs #:allow-other-keys)
(let* ((toolchain (assoc-ref inputs "cross-toolchain"))
(headers (string-append
toolchain
"/arm-none-eabi/include:"
toolchain
"/arm-none-eabi/include/arm-none-eabi/armv7e-m")))
(setenv "CROSS_CPATH" headers)
(setenv "CROSS_CPLUS_INCLUDE_PATH" headers)
(setenv "CROSS_LIBRARY_PATH"
(string-append toolchain
"/arm-none-eabi/lib")))
(with-directory-excursion "platform_linux"
(zero? (system* "sh" "compile_firmware.sh")))))
(replace 'install
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(share (string-append out "/share/axoloti/"))
(doc (string-append share "doc"))
(dir (getcwd))
(pats '("/doc/[^/]+$"
"/patches/[^/]+/[^/]+$"
"/objects/[^/]+/[^/]+$"
"/firmware/.+"
"/chibios/[^/]+$"
"/chibios/boards/ST_STM32F4_DISCOVERY/[^/]+$"
"/chibios/(ext|os|docs)/.+"
"/CMSIS/[^/]+/[^/]+$"
"/patch/[^/]+/[^/]+$"
"/[^/]+\\.txt$"))
(pattern (string-append
"(" (string-join
(map (cut string-append dir <>)
pats)
"|") ")"))
(files (find-files dir
(lambda (file stat)
(and (eq? 'regular (stat:type stat))
(string-match pattern file))))))
(for-each (lambda (file)
(install-file file
(string-append
share
(regexp-substitute
#f
(string-match dir (dirname file))
'pre 'post))))
files)
#t))))))
(inputs
`(("chibios"
,(origin
(method url-fetch)
(uri "mirror://sourceforge/chibios/ChibiOS_RT%20stable/Version%202.6.9/ChibiOS_2.6.9.zip")
(sha256
(base32
"0lb5s8pkj80mqhsy47mmq0lqk34s2a2m3xagzihalvabwd0frhlj"))))
;; for compiling patches
("make" ,gnu-make)
;; for compiling firmware
("cross-toolchain" ,arm-none-eabi-nano-toolchain-4.9)
;; for uploading compiled patches and firmware
("dfu-util" ,dfu-util-for-axoloti)))
(native-inputs
`(("unzip" ,unzip)))
(home-page "http://www.axoloti.com/")
(synopsis "Audio development environment for the Axoloti core board")
(description
"The Axoloti patcher offers a “patcher” environment similar to Pure Data
for sketching digital audio algorithms. The patches run on a standalone
powerful microcontroller board: Axoloti Core. This package provides the
runtime.")
(license license:gpl3+)))
(define-public axoloti-patcher
(package (inherit axoloti-runtime)
(name "axoloti-patcher")
(version (package-version axoloti-runtime))
(arguments
`(#:tests? #f ; no check target
#:modules ((guix build gnu-build-system)
((guix build ant-build-system) #:prefix ant:)
(guix build utils)
(srfi srfi-1)
(srfi srfi-26)
(ice-9 match)
(ice-9 regex)
(sxml simple)
(sxml xpath)
(sxml transform))
#:imported-modules ((guix build ant-build-system)
(guix build syscalls)
,@%gnu-build-system-modules)
#:phases
(modify-phases %standard-phases
(delete 'configure)
(replace 'build
(lambda* (#:key inputs #:allow-other-keys)
(setenv "JAVA_HOME" (assoc-ref inputs "icedtea"))
;; We want to use our own jar files instead of the pre-built
;; stuff in lib. So we replace the zipfileset tags in the
;; build.xml with new ones that reference our jars.
(let* ((build.xml (with-input-from-file "build.xml"
(lambda _
(xml->sxml #:trim-whitespace? #t))))
(jars (append-map (match-lambda
(((? (cut string-prefix? "java-" <>)
label) . directory)
(find-files directory "\\.jar$"))
(_ '()))
inputs))
(classpath (string-join jars ":"))
(fileset (map (lambda (jar)
`(zipfileset (@ (excludes "META-INF/*.SF")
(src ,jar))))
jars)))
(call-with-output-file "build.xml"
(lambda (port)
(sxml->xml
(pre-post-order
build.xml
`(;; Remove all zipfileset tags from the "jar" tree and
;; inject our own tags.
(jar . ,(lambda (tag . kids)
`(jar ,@(append-map
(filter (lambda (e)
(not (eq? 'zipfileset (car e)))))
kids)
,@fileset)))
;; Skip the "bundle" target (and the "-post-jar" target
;; that depends on it), because we don't need it and it
;; confuses sxml->xml.
(target . ,(lambda (tag . kids)
(let ((name ((sxpath '(name *text*))
(car kids))))
(if (or (member "bundle" name)
(member "-post-jar" name))
'() ; skip
`(,tag ,@kids)))))
(*default* . ,(lambda (tag . kids) `(,tag ,@kids)))
(*text* . ,(lambda (_ txt)
(match txt
;; Remove timestamp.
("${TODAY}" "(unknown)")
(_ txt))))))
port)))
;; Build it!
(zero? (system* "ant"
(string-append "-Djavac.classpath=" classpath)
"-Dbuild.runtime=true"
"-Dbuild.time=01/01/1970 00:00:00"
"-Djavac.source=1.7"
"-Djavac.target=1.7"
(string-append "-Dtag.short.version="
,version))))))
(replace 'install
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(share (string-append out "/share/axoloti/")))
(install-file "dist/Axoloti.jar" share)
;; We do this to ensure that this package retains references to
;; other Java packages' jar files.
(install-file "build.xml" share)
;; Create a launcher script
(mkdir (string-append out "/bin"))
(let ((target (string-append out "/bin/Axoloti")))
(with-output-to-file target
(lambda ()
(let* ((dir (string-append (assoc-ref outputs "out")
"/share/axoloti"))
(runtime (string-append (assoc-ref inputs "axoloti-runtime")
"/share/axoloti"))
(toolchain (assoc-ref inputs "cross-toolchain"))
(includes (string-append
toolchain
"/arm-none-eabi/include:"
toolchain
"/arm-none-eabi/include/arm-none-eabi/armv7e-m")))
(display
(string-append "#!" (which "sh") "\n"
"export CROSS_CPATH=" includes "\n"
"export CROSS_CPLUS_INCLUDE_PATH=" includes "\n"
"export CROSS_LIBRARY_PATH="
toolchain "/arm-none-eabi/lib" "\n"
(which "java")
" -Daxoloti_release=" runtime
" -Daxoloti_runtime=" runtime
" -jar " dir "/Axoloti.jar")))))
(chmod target #o555))
#t)))
(add-after 'install 'strip-jar-timestamps
(assoc-ref ant:%standard-phases 'strip-jar-timestamps)))))
(inputs
`(("icedtea" ,icedtea "jdk")
("cross-toolchain" ,arm-none-eabi-nano-toolchain-4.9)
("java-simple-xml" ,java-simple-xml)
("java-rsyntaxtextarea" ,java-rsyntaxtextarea)
("java-usb4java" ,java-usb4java)
("java-jsch" ,java-jsch)
("java-slf4j-api" ,java-slf4j-api)
("java-jgit" ,java-jgit-4.2)
("axoloti-runtime" ,axoloti-runtime)))
(native-inputs
`(("ant" ,ant)
("zip" ,zip) ; for repacking the jar
("unzip" ,unzip)))
(description
"The Axoloti patcher offers a “patcher” environment similar to Pure Data
for sketching digital audio algorithms. The patches run on a standalone
powerful microcontroller board: Axoloti Core. This package provides the
patcher application.")))
+43 -161
View File
@@ -1,12 +1,11 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2015, 2016 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2017 Christopher Allan Webber <cwebber@dustycloud.org>
;;; Copyright © 2017 Kei Kebreau <kei@openmailbox.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -34,7 +33,6 @@
#:use-module (gnu packages acl)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages databases)
#:use-module (gnu packages dejagnu)
@@ -50,8 +48,6 @@
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages rsync)
#:use-module (gnu packages ssh)
#:use-module (gnu packages tls)
@@ -122,7 +118,7 @@ spying and/or modification by the server.")
(define-public par2cmdline
(package
(name "par2cmdline")
(version "0.7.4")
(version "0.7.2")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/Parchive/par2cmdline/archive/v"
@@ -130,7 +126,7 @@ spying and/or modification by the server.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0iwwskiag3262mvhinvnbk6n0qh6sh56m86y4d0m285v0jl0y9pa"))))
"0rsrca7903g08zrifv4102gkxrhmzvgwd1sb6vw9pa00qhzsfkzs"))))
(native-inputs
`(("automake" ,automake)
("autoconf" ,autoconf)))
@@ -140,15 +136,10 @@ spying and/or modification by the server.")
(modify-phases %standard-phases
(add-after 'unpack 'autoreconf
(lambda _ (zero? (system* "autoreconf" "-vfi")))))))
(synopsis "File verification and repair tools")
(description "Par2cmdline uses Reed-Solomon error-correcting codes to
generate and verify PAR2 recovery files. These files can be distributed
alongside the source files or stored together with back-ups to protect against
transmission errors or @dfn{bit rot}, the degradation of storage media over
time.
Unlike a simple checksum, PAR2 doesn't merely detect errors: as long as the
damage isn't too extensive (and smaller than the size of the recovery file), it
can even repair them.")
(synopsis "File verification and repair tool")
(description "Par2cmdline is a tool for generating RAID-like PAR2 recovery
files using Reed-Solomon coding. PAR2 files can be stored along side backups
or distributed files for recovering from bitrot.")
(home-page "https://github.com/Parchive/par2cmdline")
(license license:gpl3+)))
@@ -188,8 +179,8 @@ backups (called chunks) to allow easy burning to CD/DVD.")
(define-public libarchive
(package
(name "libarchive")
(replacement libarchive-3.3.2)
(version "3.3.1")
(replacement libarchive-3.3.1)
(version "3.2.2")
(source
(origin
(method url-fetch)
@@ -197,7 +188,7 @@ backups (called chunks) to allow easy burning to CD/DVD.")
version ".tar.gz"))
(sha256
(base32
"1rr40hxlm9vy5z2zb5w7pyfkgd1a4s061qapm83s19accb8mpji9"))))
"03q6y428rg723c9fj1vidzjw46w1vf8z0h95lkvz1l9jw571j739"))))
(build-system gnu-build-system)
;; TODO: Add -L/path/to/nettle in libarchive.pc.
(inputs
@@ -244,19 +235,19 @@ archive. In particular, note that there is currently no built-in support for
random access nor for in-place modification.")
(license license:bsd-2)))
(define libarchive-3.3.2
(define libarchive-3.3.1
(package
(inherit libarchive)
(version "3.3.2")
(name "libarchive")
(version "3.3.1")
(source
(origin
(method url-fetch)
(uri (string-append "http://libarchive.org/downloads/libarchive-"
version ".tar.gz"))
(patches (search-patches "libarchive-CVE-2017-14166.patch"))
(sha256
(base32
"1km0mzfl6in7l5vz9kl09a88ajx562rw93ng9h2jqavrailvsbgd"))))))
"1rr40hxlm9vy5z2zb5w7pyfkgd1a4s061qapm83s19accb8mpji9"))))))
(define-public rdup
(package
@@ -297,20 +288,20 @@ random access nor for in-place modification.")
("nettle" ,nettle)))
(arguments
`(#:parallel-build? #f ;race conditions
#:phases
(modify-phases %standard-phases
(add-before 'build 'remove-Werror
;; rdup uses a deprecated function from libarchive
(lambda _
(substitute* "GNUmakefile"
(("^(CFLAGS=.*)-Werror" _ front) front))
#t))
(add-before 'check 'pre-check
(lambda _
(setenv "HOME" (getcwd))
(substitute* "testsuite/rdup/rdup.rdup-up-t-with-file.exp"
(("/bin/cat") (which "cat")))
#t)))))
#:phases (alist-cons-before
'build 'remove-Werror
;; rdup uses a deprecated function from libarchive
(lambda _
(substitute* "GNUmakefile"
(("^(CFLAGS=.*)-Werror" _ front) front)))
(alist-cons-before
'check 'pre-check
(lambda _
(setenv "HOME" (getcwd))
(substitute* "testsuite/rdup/rdup.rdup-up-t-with-file.exp"
(("/bin/cat") (which "cat"))))
%standard-phases))))
(home-page "http://archive.miek.nl/projects/rdup/index.html")
(synopsis "Provide a list of files to backup")
(description
@@ -340,9 +331,9 @@ list and implement the backup strategy.")
"CC=gcc")
#:tests? #f ;test input not distributed
#:phases
;; no configure phase
(modify-phases %standard-phases
(delete 'configure))))
(alist-delete
'configure ;no configure phase
%standard-phases)))
(home-page "http://viric.name/cgi-bin/btar/doc/trunk/doc/home.wiki")
(synopsis "Tar-compatible archiver")
(description
@@ -466,13 +457,13 @@ detection, and lossless compression.")
(define-public borg
(package
(name "borg")
(version "1.1.3")
(version "1.0.10")
(source (origin
(method url-fetch)
(uri (pypi-uri "borgbackup" version))
(sha256
(base32
"1rvn8b6clzd1r317r9jkvk34r31risi0dxfjc7jffhnwasck4anc"))
"1sarmpzwr8dhbg0hsvaclcsjfax36ssb32d9klhhah4j8kqji3wp"))
(modules '((guix build utils)))
(snippet
'(for-each
@@ -509,7 +500,6 @@ detection, and lossless compression.")
(string-append
;; These tests need to write to '/var'.
"not test_get_cache_dir "
"and not test_get_config_dir "
"and not test_get_keys_dir "
"and not test_get_security_dir "
;; These tests assume there is a root user in
@@ -521,10 +511,9 @@ detection, and lossless compression.")
"and not benchmark "
;; These tests assume the kernel supports FUSE.
"and not test_fuse "
"and not test_fuse_allow_damaged_files "
"and not test_mount_hardlinks"))))))
"and not test_fuse_allow_damaged_files"))))))
(add-after 'install 'install-doc
(lambda* (#:key inputs outputs #:allow-other-keys)
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(man (string-append out "/share/man/man1"))
(misc (string-append out "/share/borg/misc")))
@@ -532,11 +521,11 @@ detection, and lossless compression.")
'("docs/misc/create_chunker-params.txt"
"docs/misc/internals-picture.txt"
"docs/misc/prune-example.txt"))
(add-installed-pythonpath inputs outputs)
(and
(zero? (system* "python3" "setup.py" "build_man"))
(zero? (system* "python3" "setup.py" "build_ext" "--inplace"))
(zero? (system* "make" "-C" "docs" "man"))
(begin
(copy-recursively "docs/man" man)
(install-file "docs/_build/man/borg.1" man)
#t))))))))
(native-inputs
`(("python-cython" ,python-cython)
@@ -546,7 +535,7 @@ detection, and lossless compression.")
("python-pytest" ,python-pytest-3.0)
;; For generating the documentation.
("python-sphinx" ,python-sphinx)
("python-guzzle-sphinx-theme" ,python-guzzle-sphinx-theme)))
("python-sphinx-rtd-theme" ,python-sphinx-rtd-theme)))
(inputs
`(("acl" ,acl)
("lz4" ,lz4)
@@ -560,7 +549,7 @@ provide an efficient and secure way to backup data. The data deduplication
technique used makes Borg suitable for daily backups since only changes are
stored. The authenticated encryption technique makes it suitable for backups
to not fully trusted targets. Borg is a fork of Attic.")
(home-page "https://www.borgbackup.org/")
(home-page "https://borgbackup.github.io/borgbackup/")
(license license:bsd-3)))
(define-public attic
@@ -612,14 +601,14 @@ changes are stored.")
(define-public wimlib
(package
(name "wimlib")
(version "1.12.0")
(version "1.10.0")
(source (origin
(method url-fetch)
(uri (string-append "https://wimlib.net/downloads/"
name "-" version ".tar.gz"))
(sha256
(base32
"0ks6hq7vwq13ljkzxp3a490bf8dnracgl2azf57rg49ad2fzab45"))))
"0mbz03smlc054i2m9q2sbqymml9m897kfs84q7g81i26y811p6wq"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@@ -696,110 +685,3 @@ using GnuPG. Backups can be stored on local hard disks, or online via
the SSH SFTP protocol. The backup server, if used, does not require
any special software, on top of SSH.")
(license license:gpl3+)))
(define-public dirvish
(package
(name "dirvish")
(version "1.2.1")
(build-system gnu-build-system)
(source (origin
(method url-fetch)
(uri (string-append
"http://dirvish.org/dirvish-" version ".tgz"))
(sha256
(base32
"1kbxa1irszp2zw8hd5qzqnrrzb4vxfivs1vn64yxnj0lak1jjzvb"))))
(arguments
`(#:modules ((ice-9 match) (ice-9 rdelim)
,@%gnu-build-system-modules)
#:phases
;; This mostly mirrors the steps taken in the install.sh that ships
;; with dirvish, but simplified because we aren't prompting interactively
(modify-phases %standard-phases
(delete 'configure)
(delete 'build)
(delete 'check)
(replace 'install
(lambda* (#:key inputs outputs #:allow-other-keys)
;; These are mostly the same steps the install.sh that comes with
;; dirvish does
(let* (;; Files we'll be copying
(executables
'("dirvish" "dirvish-runall"
"dirvish-expire" "dirvish-locate"))
(man-pages
'(("dirvish" "8") ("dirvish-runall" "8")
("dirvish-expire" "8") ("dirvish-locate" "8")
("dirvish.conf" "5")))
(output-dir
(assoc-ref outputs "out"))
;; Just a default... not so useful on guixsd though
;; You probably want to a service with file(s) to point to.
(confdir "/etc/dirvish")
(perl (string-append (assoc-ref %build-inputs "perl")
"/bin/perl"))
(loadconfig.pl (call-with-input-file "loadconfig.pl"
read-string)))
(define (write-pl filename)
(define pl-header
(string-append "#!" perl "\n\n"
"$CONFDIR = \"" confdir "\";\n\n"))
(define input-file-location
(string-append filename ".pl"))
(define target-file-location
(string-append output-dir "/bin/" filename ".pl"))
(define text-to-write
(string-append pl-header
(call-with-input-file input-file-location
read-string)
"\n" loadconfig.pl))
(with-output-to-file target-file-location
(lambda ()
(display text-to-write)))
(chmod target-file-location #o755)
(wrap-program target-file-location
`("PERL5LIB" ":" prefix
,(map (lambda (l) (string-append (assoc-ref %build-inputs l)
"/lib/perl5/site_perl"))
'("perl-libtime-period"
"perl-libtime-parsedate")))))
(define write-man
(match-lambda
((file-base man-num)
(let* ((filename
(string-append file-base "." man-num))
(output-path
(string-append output-dir
"/share/man/man" man-num
"/" filename)))
(copy-file filename output-path)))))
;; Make directories
(mkdir-p (string-append output-dir "/bin/"))
(mkdir-p (string-append output-dir "/share/man/man8/"))
(mkdir-p (string-append output-dir "/share/man/man5/"))
;; Write out executables
(for-each write-pl executables)
;; Write out man pages
(for-each write-man man-pages)
#t))))))
(inputs
`(("perl" ,perl)
("rsync" ,rsync)
("perl-libtime-period" ,perl-libtime-period)
("perl-libtime-parsedate" ,perl-libtime-parsedate)))
(home-page "http://dirvish.org/")
(synopsis "Fast, disk based, rotating network backup system")
(description
"With dirvish you can maintain a set of complete images of your
filesystems with unattended creation and expiration. A dirvish backup vault
is like a time machine for your data. ")
(license (license:fsf-free "file://COPYING"
"Open Software License 2.0"))))
+188 -70
View File
@@ -7,8 +7,6 @@
;;; Copyright © 2014, 2015 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
;;;
;;; This file is part of GNU Guix.
@@ -89,8 +87,7 @@ command-line arguments, multiple languages, and so on.")
(sha256
(base32
"1dcasjp3a578nrvzrcn38mpizb8w1q6mvfzhjmcqqgkf0nsivj72"))
(patches (search-patches "grep-timing-sensitive-test.patch"
"grep-gnulib-lock.patch"))))
(patches (search-patches "grep-timing-sensitive-test.patch"))))
(build-system gnu-build-system)
(native-inputs `(("perl" ,perl))) ;some of the tests require it
(arguments
@@ -231,14 +228,14 @@ differences.")
(define-public diffutils
(package
(name "diffutils")
(version "3.6")
(version "3.5")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/diffutils/diffutils-"
version ".tar.xz"))
(sha256
(base32
"1mivg0fy3a6fcn535ln8nkgfj6vxh5hsxxs5h6692wxmsjyyh8fn"))))
"0csmqfz8ks23kdjsq0v2ll1acqiz8lva06dj19mwmymrsp69ilys"))))
(build-system gnu-build-system)
(synopsis "Comparing and merging files")
(description
@@ -261,13 +258,8 @@ interactive means to merge two files.")
(sha256
(base32
"178nn4dl7wbcw499czikirnkniwnx36argdnqgz4ik9i6zvwkm6y"))
(patches (search-patches
"findutils-localstatedir.patch"
"findutils-test-xargs.patch"
;; test-lock has performance issues on multi-core
;; machines, it hangs or takes a long time to complete.
;; This is a commit from gnulib to fix this issue.
"findutils-gnulib-multi-core.patch"))))
(patches (search-patches "findutils-localstatedir.patch"
"findutils-test-xargs.patch"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list
@@ -293,15 +285,15 @@ used to apply commands with arbitrarily long arguments.")
(define-public coreutils
(package
(name "coreutils")
(version "8.27")
(version "8.26")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/coreutils/coreutils-"
version ".tar.xz"))
(sha256
(base32
"0sv547572iq8ayy8klir4hnngnx92a9nsazmf1wgzfc7xr4x74c8"))
(patches (search-patches "coreutils-cut-huge-range-test.patch"))))
"13lspazc7xkviy93qz7ks9jv4sldvgmwpq36ghrbrqpq93br8phm"))
(patches (search-patches "coreutils-fix-cross-compilation.patch"))))
(build-system gnu-build-system)
(inputs `(("acl" ,acl) ; TODO: add SELinux
("gmp" ,gmp) ;bignums in 'expr', yay!
@@ -316,12 +308,21 @@ used to apply commands with arbitrarily long arguments.")
;; copy of help2man. However, don't pass it when cross-compiling since
;; that would lead it to try to run programs to get their '--help' output
;; for help2man.
(if (%current-target-system)
'()
`(("perl" ,perl))))
`(,@(if (%current-target-system)
'()
`(("perl" ,perl)))
;; Apply this patch only on ARM to avoid a full rebuild.
;; TODO: Move to 'patches' in the next update cycle.
,@(if (string-prefix? "arm" (or (%current-target-system)
(%current-system)))
`(("cut-test.patch"
,(search-patch "coreutils-cut-huge-range-test.patch")))
'())))
(outputs '("out" "debug"))
(arguments
`(#:parallel-build? #f ; help2man may be called too early
#:parallel-tests? #f ; race condition fixed after 8.26
#:phases (alist-cons-before
'build 'patch-shell-references
(lambda* (#:key inputs #:allow-other-keys)
@@ -336,7 +337,22 @@ used to apply commands with arbitrarily long arguments.")
(substitute* (find-files "tests" "\\.sh$")
(("#!/bin/sh")
(format #f "#!~a/bin/sh" bash)))))
%standard-phases)))
,@(if (string-prefix? "arm" (or (%current-target-system)
(%current-system)))
'((alist-cons-before
'build 'patch-cut-test
(lambda* (#:key inputs native-inputs
#:allow-other-keys)
(let ((patch (or (assoc-ref inputs
"cut-test.patch")
(assoc-ref native-inputs
"cut-test.patch"))))
(zero?
(system* "patch" "-p1" "--force"
"--input" patch))))
%standard-phases))
'(%standard-phases)))))
(synopsis "Core GNU utilities (file, text, shell)")
(description
"GNU Coreutils includes all of the basic command-line tools that are
@@ -346,6 +362,29 @@ functionality beyond that which is outlined in the POSIX standard.")
(license gpl3+)
(home-page "https://www.gnu.org/software/coreutils/")))
;; We add version 8.27 here for use in (gnu system) due to a time
;; zone bug in `date' versions 8.25 - 8.26.
;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=23035
;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=26238
(define-public coreutils-8.27
(package
(inherit coreutils)
(version "8.27")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/coreutils/coreutils-"
version ".tar.xz"))
(sha256
(base32
"0sv547572iq8ayy8klir4hnngnx92a9nsazmf1wgzfc7xr4x74c8"))))
(arguments
(if (string-prefix? "arm" (or (%current-target-system)
(%current-system)))
(substitute-keyword-arguments (package-arguments coreutils)
((#:phases phases)
`(alist-delete 'patch-cut-test ,phases)))
(package-arguments coreutils)))))
(define-public coreutils-minimal
;; Coreutils without its optional dependencies.
(package
@@ -394,18 +433,18 @@ change. GNU make offers many powerful extensions over the standard utility.")
(define-public binutils
(package
(replacement binutils/fixed)
(name "binutils")
(version "2.28")
(version "2.27")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/binutils/binutils-"
version ".tar.bz2"))
(sha256
(base32
"0wiasgns7i8km8nrxas265sh2dfpsw93b3qw195ipc90w4z475v2"))
"125clslv17xh1sab74343fg6v31msavpmaa1c1394zsqa773g5rn"))
(patches (search-patches "binutils-ld-new-dtags.patch"
"binutils-loongson-workaround.patch"))))
"binutils-loongson-workaround.patch"
"binutils-mips-bash-bug.patch"))))
(build-system gnu-build-system)
;; TODO: Add dependency on zlib + those for Gold.
@@ -417,6 +456,10 @@ change. GNU make offers many powerful extensions over the standard utility.")
;; Don't search under /usr/lib & co.
"--with-lib-path=/no-ld-lib-path"
;; Glibc 2.17 has a "comparison of unsigned
;; expression >= 0 is always true" in wchar.h.
"--disable-werror"
;; Install BFD. It ends up in a hidden directory,
;; but it's here.
"--enable-install-libbfd"
@@ -436,23 +479,10 @@ included.")
(license gpl3+)
(home-page "https://www.gnu.org/software/binutils/")))
(define binutils/fixed
(package
(inherit binutils)
;; 2.28.1 is two characters longer than 2.28, so grafting fails due to
;; mismatched lengths of filenames, so we have to force it to the same length.
(version "2281")
(source
(origin (inherit (package-source binutils))
(uri "mirror://gnu/binutils/binutils-2.28.1.tar.bz2")
(sha256
(base32
"1sj234nd05cdgga1r36zalvvdkvpfbr12g5mir2n8i1dwsdrj939"))))))
(define* (make-ld-wrapper name #:key
(target (const #f))
binutils
(guile (canonical-package guile-2.2))
(guile (canonical-package guile-2.0))
(bash (canonical-package bash))
(guile-for-build guile))
"Return a package called NAME that contains a wrapper for the 'ld' program
@@ -528,7 +558,7 @@ store.")
(package
(name "glibc")
(version "2.25")
(replacement glibc/fixed)
(replacement glibc-2.25-patched)
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/glibc/glibc-"
@@ -546,12 +576,7 @@ store.")
(modules '((guix build utils)))
(patches (search-patches "glibc-ldd-x86_64.patch"
"glibc-versioned-locpath.patch"
"glibc-o-largefile.patch"
"glibc-memchr-overflow-i686.patch"
"glibc-vectorized-strcspn-guards.patch"
"glibc-CVE-2017-1000366-pt1.patch"
"glibc-CVE-2017-1000366-pt2.patch"
"glibc-CVE-2017-1000366-pt3.patch"))))
"glibc-o-largefile.patch"))))
(build-system gnu-build-system)
;; Glibc's <limits.h> refers to <linux/limit.h>, for instance, so glibc
@@ -563,6 +588,10 @@ store.")
(arguments
`(#:out-of-source? #t
;; In version 2.21, there a race in the 'elf' directory, see
;; <http://lists.gnu.org/archive/html/guix-devel/2015-02/msg00709.html>.
#:parallel-build? #f
;; The libraries have an empty RUNPATH, but some, such as the versioned
;; libraries (libdl-2.24.so, etc.) have ld.so marked as NEEDED. Since
;; these libraries are always going to be found anyway, just skip
@@ -638,6 +667,19 @@ store.")
;; 4.7.1.
((" -lgcc_s") ""))
;; Apply patch only on i686.
;; TODO: Move the patch to 'patches' in the next update cycle.
,@(if (string-prefix? "i686" (or (%current-target-system)
(%current-system)))
`((unless (zero? (system* "patch" "-p1" "--force"
"--input"
(or (assoc-ref native-inputs
"glibc-memchr-overflow-i686.patch")
(assoc-ref inputs
"glibc-memchr-overflow-i686.patch"))))
(error "patch failed for glibc-memchr-overflow-i686.patch")))
'())
;; Have `system' use that Bash.
(substitute* "sysdeps/posix/system.c"
(("#define[[:blank:]]+SHELL_PATH.*$")
@@ -681,7 +723,15 @@ store.")
;; install the message catalogs, with 'msgfmt'.
(native-inputs `(("texinfo" ,texinfo)
("perl" ,perl)
("gettext" ,gettext-minimal)))
("gettext" ,gettext-minimal)
;; Apply this patch only on i686 to avoid a full rebuild.
;; TODO: Move to 'patches' in the next update cycle.
,@(if (string-prefix? "i686" (or (%current-target-system)
(%current-system)))
`(("glibc-memchr-overflow-i686.patch"
,(search-patch "glibc-memchr-overflow-i686.patch")))
'())))
(native-search-paths
;; Search path for packages that provide locale data. This is useful
@@ -730,6 +780,71 @@ with the Linux kernel.")
;; Add libmachuser.so and libhurduser.so to libc.so's search path.
;; See <http://lists.gnu.org/archive/html/bug-hurd/2015-07/msg00051.html>.
`(modify-phases ,original-phases
;; TODO: This is almost an exact copy of the phase of the same name
;; in glibc/linux. The only difference is that the i686 patch is
;; not applied here. In the next update cycle the patch moves to
;; the patches field and this overwritten phase won't be needed any
;; more.
(replace 'pre-configure
(lambda* (#:key inputs native-inputs outputs
#:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
;; FIXME: Normally we would look it up only in INPUTS
;; but cross-base uses it as a native input.
(bash (or (assoc-ref inputs "static-bash")
(assoc-ref native-inputs "static-bash"))))
;; Install the rpc data base file under `$out/etc/rpc'.
;; FIXME: Use installFlags = [ "sysconfdir=$(out)/etc" ];
(substitute* "sunrpc/Makefile"
(("^\\$\\(inst_sysconfdir\\)/rpc(.*)$" _ suffix)
(string-append out "/etc/rpc" suffix "\n"))
(("^install-others =.*$")
(string-append "install-others = " out "/etc/rpc\n")))
(substitute* "Makeconfig"
;; According to
;; <http://www.linuxfromscratch.org/lfs/view/stable/chapter05/glibc.html>,
;; linking against libgcc_s is not needed with GCC
;; 4.7.1.
((" -lgcc_s") ""))
;; Have `system' use that Bash.
(substitute* "sysdeps/posix/system.c"
(("#define[[:blank:]]+SHELL_PATH.*$")
(format #f "#define SHELL_PATH \"~a/bin/bash\"\n"
bash)))
;; Same for `popen'.
(substitute* "libio/iopopen.c"
(("/bin/sh")
(string-append bash "/bin/sh")))
;; Same for the shell used by the 'exec' functions for
;; scripts that lack a shebang.
(substitute* (find-files "." "^paths\\.h$")
(("#define[[:blank:]]+_PATH_BSHELL[[:blank:]].*$")
(string-append "#define _PATH_BSHELL \""
bash "/bin/sh\"\n")))
;; Nscd uses __DATE__ and __TIME__ to create a string to
;; make sure the client and server come from the same
;; libc. Use something deterministic instead.
(substitute* "nscd/nscd_stat.c"
(("static const char compilation\\[21\\] =.*$")
(string-append
"static const char compilation[21] = \""
(string-take (basename out) 20) "\";\n")))
;; Make sure we don't retain a reference to the
;; bootstrap Perl.
(substitute* "malloc/mtrace.pl"
(("^#!.*")
;; The shebang can be omitted, because there's the
;; "bilingual" eval/exec magic at the top of the file.
"")
(("exec @PERL@")
"exec perl")))))
(add-after 'install 'augment-libc.so
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")))
@@ -787,14 +902,18 @@ GLIBC/HURD for a Hurd host"
(define-syntax glibc
(identifier-syntax (glibc-for-target)))
(define glibc/fixed
(define glibc-2.25-patched
(package
(inherit glibc)
(source (origin
(inherit (package-source glibc))
(patches (append
(origin-patches (package-source glibc))
(search-patches "glibc-CVE-2017-15670-15671.patch")))))))
(patches (search-patches "glibc-ldd-x86_64.patch"
"glibc-versioned-locpath.patch"
"glibc-o-largefile.patch"
"glibc-vectorized-strcspn-guards.patch"
"glibc-CVE-2017-1000366-pt1.patch"
"glibc-CVE-2017-1000366-pt2.patch"
"glibc-CVE-2017-1000366-pt3.patch"))))))
;; Below are old libc versions, which we use mostly to build locale data in
;; the old format (which the new libc cannot cope with.)
@@ -814,8 +933,6 @@ GLIBC/HURD for a Hurd host"
"glibc-versioned-locpath.patch"
"glibc-o-largefile.patch"
"glibc-vectorized-strcspn-guards.patch"
"glibc-CVE-2015-5180.patch"
"glibc-CVE-2017-15670-15671.patch"
"glibc-CVE-2017-1000366-pt1.patch"
"glibc-CVE-2017-1000366-pt2.patch"
"glibc-CVE-2017-1000366-pt3.patch"))))))
@@ -835,11 +952,6 @@ GLIBC/HURD for a Hurd host"
"glibc-versioned-locpath.patch"
"glibc-o-largefile.patch"
"glibc-vectorized-strcspn-guards.patch"
"glibc-CVE-2015-5180.patch"
"glibc-CVE-2016-3075.patch"
"glibc-CVE-2016-3706.patch"
"glibc-CVE-2016-4429.patch"
"glibc-CVE-2017-15670-15671.patch"
"glibc-CVE-2017-1000366-pt1.patch"
"glibc-CVE-2017-1000366-pt2.patch"
"glibc-CVE-2017-1000366-pt3.patch"))))))
@@ -857,12 +969,6 @@ GLIBC/HURD for a Hurd host"
"0j49682pm2nh4qbdw35bas82p1pgfnz4d2l7iwfyzvrvj0318wzb"))
(patches (search-patches "glibc-ldd-x86_64.patch"
"glibc-vectorized-strcspn-guards.patch"
"glibc-CVE-2015-5180.patch"
"glibc-CVE-2015-7547.patch"
"glibc-CVE-2016-3075.patch"
"glibc-CVE-2016-3706.patch"
"glibc-CVE-2016-4429.patch"
"glibc-CVE-2017-15670-15671.patch"
"glibc-CVE-2017-1000366-pt1.patch"
"glibc-CVE-2017-1000366-pt2.patch"
"glibc-CVE-2017-1000366-pt3.patch"))))
@@ -872,11 +978,23 @@ GLIBC/HURD for a Hurd host"
`(modify-phases ,phases
(add-before 'configure 'fix-pwd
(lambda _
;; Use `pwd' instead of `/bin/pwd' for glibc-2.22.
;; Use `pwd' instead of `/bin/pwd' for glibc-2.21
(substitute* "configure"
(("/bin/pwd") "pwd"))
#t))))))))
(define-public glibc-2.21
(package
(inherit glibc-2.22)
(version "2.21")
(source (origin
(inherit (package-source glibc-2.22))
(uri (string-append "mirror://gnu/glibc/glibc-"
version ".tar.xz"))
(sha256
(base32
"1f135546j34s9bfkydmx2nhh9vwxlx60jldi80zmsnln6wj3dsxf"))))))
(define-public glibc-locales
(package
(inherit glibc)
@@ -896,12 +1014,12 @@ the 'share/locale' sub-directory of this package.")
,@(package-arguments glibc))))
(substitute-keyword-arguments args
((#:phases phases)
`(modify-phases ,phases
(replace 'build
(lambda _
(zero? (system* "make" "localedata/install-locales"
"-j" (number->string (parallel-job-count))))))
(delete 'install)))
`(alist-replace
'build
(lambda* (#:key outputs #:allow-other-keys)
(zero? (system* "make" "localedata/install-locales"
"-j" (number->string (parallel-job-count)))))
(alist-delete 'install ,phases)))
((#:configure-flags flags)
`(append ,flags
;; Use $(libdir)/locale/X.Y as is the case by default.
+27 -27
View File
@@ -211,33 +211,33 @@ without modification.")
(outputs (delete "include" (package-outputs bash)))
(arguments
(substitute-keyword-arguments (package-arguments bash)
((#:modules _ '())
'((guix build gnu-build-system)
(guix build utils)
(srfi srfi-1)
(srfi srfi-26)))
((#:configure-flags flags '())
`(list "--without-bash-malloc"
"--disable-readline"
"--disable-history"
"--disable-help-builtin"
"--disable-progcomp"
"--disable-net-redirections"
"--disable-nls"
(let ((args `(#:modules ((guix build gnu-build-system)
(guix build utils)
(srfi srfi-1)
(srfi srfi-26))
,@(package-arguments bash))))
(substitute-keyword-arguments args
((#:configure-flags flags)
`(list "--without-bash-malloc"
"--disable-readline"
"--disable-history"
"--disable-help-builtin"
"--disable-progcomp"
"--disable-net-redirections"
"--disable-nls"
;; Pretend 'dlopen' is missing so we don't build loadable
;; modules and related code.
"ac_cv_func_dlopen=no"
;; Pretend 'dlopen' is missing so we don't build loadable
;; modules and related code.
"ac_cv_func_dlopen=no"
,@(if (%current-target-system)
'("bash_cv_job_control_missing=no"
"bash_cv_getcwd_malloc=yes")
'())))
((#:phases phases)
`(modify-phases ,phases
;; No loadable modules.
(delete 'move-development-files)))))))
,@(if (%current-target-system)
'("bash_cv_job_control_missing=no"
"bash_cv_getcwd_malloc=yes")
'())))
((#:phases phases)
`(modify-phases ,phases
;; No loadable modules.
(delete 'move-development-files))))))))
(define-public static-bash
;; Statically-linked Bash that contains nothing but the 'bash' binary and
@@ -263,7 +263,7 @@ without modification.")
(define-public bash-completion
(package
(name "bash-completion")
(version "2.7")
(version "2.5")
(source (origin
(method url-fetch)
(uri (string-append
@@ -271,7 +271,7 @@ without modification.")
version "/" name "-" version ".tar.xz"))
(sha256
(base32
"07j484vb3k90f4989xh1g1x99g01akrp69p3dml4lza27wnqkfj1"))
"1kwmii1z1ljx5i4z702ynsr8jgrq64bj9w9hl3n2aa2kcl659fdh"))
(patches
(search-patches "bash-completion-directories.patch"))))
(build-system gnu-build-system)
+4 -28
View File
@@ -1,8 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2013, 2014, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -24,8 +23,7 @@
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages hurd))
#:use-module (gnu packages pkg-config))
(define-public libgc
(package
@@ -40,20 +38,8 @@
"143x7g0d0k6250ai6m2x3l4y352mzizi4wbgrmahxscv2aqjhjm1"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
(list
;; Install gc_cpp.h et al.
"--enable-cplusplus"
;; In GNU/Hurd systems during the 'Check' phase,
;; there is a deadlock caused by the 'gctest' test.
;; To disable the error set "--disable-gcj-support"
;; to configure script. See bug report and discussion:
;; <https://lists.opendylan.org/pipermail/bdwgc/2017-April/006275.html>
;; <https://lists.gnu.org/archive/html/bug-hurd/2017-01/msg00008.html>
,@(if (hurd-triplet? (or (%current-system)
(%current-target-system)))
'("--disable-gcj-support")
'()))))
'(#:configure-flags '(;; Install gc_cpp.h et al.
"--enable-cplusplus")))
(native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("libatomic-ops" ,libatomic-ops)))
(outputs '("out" "debug"))
@@ -78,16 +64,6 @@ C or C++ programs, though that is not its primary goal.")
(license (x11-style (string-append home-page "license.txt")))))
(define-public libgc/back-pointers
(package
(inherit libgc)
(name "libgc-back-pointers")
(arguments
`(#:make-flags
(list "CPPFLAGS=-DKEEP_BACK_PTRS=1")
,@(package-arguments libgc)))
(synopsis "The BDW garbage collector, with back-pointer tracking")))
(define-public libatomic-ops
(package
(name "libatomic-ops")
+3 -68
View File
@@ -1,6 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Dave Love <fx@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -25,15 +24,13 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages linux)
#:use-module (gnu packages maths)
#:use-module (gnu packages mpi)
#:use-module (gnu packages python)
#:use-module (gnu packages storage)
#:use-module (ice-9 match))
#:use-module (gnu packages storage))
(define-public fio
(package
(name "fio")
(version "3.2")
(version "2.20")
(source (origin
(method url-fetch)
(uri (string-append
@@ -41,7 +38,7 @@
"fio-" version ".tar.bz2"))
(sha256
(base32
"1f5vina9bxn99drda8dhbxng8ypj4ny72xh6mp8rq955d0f8sq0z"))))
"15vgbzlcjd21bi9ahlbs8h9ca4raw5qgi711n802qmagjdjbmlxw"))))
(build-system gnu-build-system)
(arguments
'(#:test-target "test"
@@ -106,65 +103,3 @@ is to write a job file matching the I/O load one wants to simulate.")
;; are covered by other licenses.
(license (list license:gpl2 license:gpl2+ license:bsd-2
license:public-domain))))
;; Parameterized in anticipation of m(va)pich support
(define (imb mpi)
(package
(name (string-append "imb-" (package-name mpi)))
(version "2017.2")
(source
(origin
(method url-fetch)
(uri (match (string-split version #\.)
((major minor)
(string-append
"https://software.intel.com/sites/default/files/managed/76/6c/IMB_"
major "_Update" minor ".tgz"))))
(sha256 (base32 "11nczxm686rsppmw9gjc2p2sxc0jniv5kv18yxm1lzp5qfh5rqyb"))))
(build-system gnu-build-system)
(inputs
`(("mpi" ,mpi)))
(arguments
`(#:phases
(modify-phases %standard-phases
(delete 'configure)
(delete 'check)
(replace 'build
(lambda* (#:key inputs #:allow-other-keys)
(let ((mpi-home (assoc-ref inputs "mpi")))
(zero?
;; Not safe for parallel build
(system* "make" "-C" "imb/src" "-f" "make_mpich" "SHELL=sh"
(string-append "MPI_HOME=" mpi-home))))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(doc (string-append out "/share/doc/" ,name))
(bin (string-append out "/bin")))
(with-directory-excursion "imb/src"
(for-each
(lambda (file)
(install-file file bin))
'("IMB-IO" "IMB-EXT" "IMB-MPI1" "IMB-NBC" "IMB-RMA")))
(mkdir-p doc)
(with-directory-excursion "imb"
(copy-recursively "license" doc)))
#t)))))
(home-page "https://software.intel.com/en-us/articles/intel-mpi-benchmarks")
(synopsis "Intel MPI Benchmarks")
(description
"This package provides benchmarks for implementations of the @dfn{Message
Passing Interface} (MPI). It contains MPI performance measurements for
point-to-point and global communication, and file, operations for a range of
message sizes. The generated benchmark data fully characterize:
@itemize
@item
Performance of a cluster system, including node performance, network latency,
and throughput;
@item
Efficiency of the MPI implementation.
@end itemize")
(license license:cpl1.0)))
(define-public imb-openmpi (imb openmpi))
File diff suppressed because it is too large Load Diff
+27 -27
View File
@@ -5,7 +5,7 @@
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Tomáš Čech <sleep_walker@gnu.org>
;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Jelle Licht <jlicht@fsfe.org>
;;;
;;; This file is part of GNU Guix.
@@ -74,24 +74,23 @@
"gui")) ; graphical user interface
(arguments
'(#:glib-or-gtk-wrap-excluded-outputs '("out")
#:phases
(modify-phases %standard-phases
(add-after 'install 'move-gui
(lambda* (#:key outputs #:allow-other-keys)
;; Move the GUI to its own output, so that "out" doesn't
;; depend on GTK+.
(let ((out (assoc-ref outputs "out"))
(gui (assoc-ref outputs "gui")))
(mkdir-p (string-append gui "/bin"))
(rename-file (string-append out "/bin/transmission-gtk")
(string-append gui
"/bin/transmission-gtk"))
#:phases (alist-cons-after
'install 'move-gui
(lambda* (#:key outputs #:allow-other-keys)
;; Move the GUI to its own output, so that "out" doesn't
;; depend on GTK+.
(let ((out (assoc-ref outputs "out"))
(gui (assoc-ref outputs "gui")))
(mkdir-p (string-append gui "/bin"))
(rename-file (string-append out "/bin/transmission-gtk")
(string-append gui
"/bin/transmission-gtk"))
;; Move the '.desktop' file as well.
(mkdir (string-append gui "/share"))
(rename-file (string-append out "/share/applications")
(string-append gui "/share/applications")))
#t)))))
;; Move the '.desktop' file as well.
(mkdir (string-append gui "/share"))
(rename-file (string-append out "/share/applications")
(string-append gui "/share/applications"))))
%standard-phases)))
(inputs
`(("inotify-tools" ,inotify-tools)
("libevent" ,libevent)
@@ -177,21 +176,20 @@ XML-RPC over SCGI.")
(license l:gpl2+)))
(define-public tremc
(let ((commit "9755b50e9444566cff02c977edafdbb3e9750cbb")
(revision "1"))
(let ((commit "401f2303c9b5a6e2e7b0808617d794576d4aa29e")
(revision "0"))
(package
(name "tremc")
(version (git-version "0.9.0" revision commit))
(version (string-append "0.9.0-" revision "." (string-take commit 7)))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/louipc/tremc.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"05259qss5jka5ygwrh7cngyp6cgazbynji5pshgfzrd2d43pyfq5"))))
"1h2720zn35iggmf9av65g119b0bhskwm1ng0zbkjryaf38nfzpin"))))
(build-system python-build-system)
(arguments
`(#:tests? #f ; no test suite
@@ -266,7 +264,7 @@ maintained upstream.")
(define-public aria2
(package
(name "aria2")
(version "1.33.1")
(version "1.32.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/tatsuhiro-t/aria2/"
@@ -274,7 +272,7 @@ maintained upstream.")
name "-" version ".tar.xz"))
(sha256
(base32
"06syqxia701dk96rcbhnd4x0arjj6d22gm3aqksz38am9y2f8f95"))))
"0l6whbbcw1qijlczlfqi3mhba3zki0ybjb2prrgncp8km6a92vjl"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list "--enable-libaria2"
@@ -382,7 +380,7 @@ and will take advantage of multiple processor cores where possible.")
(define-public libtorrent-rasterbar
(package
(name "libtorrent-rasterbar")
(version "1.1.5")
(version "1.1.2")
(source (origin
(method url-fetch)
(uri
@@ -390,9 +388,11 @@ and will take advantage of multiple processor cores where possible.")
"https://github.com/arvidn/libtorrent/releases/download/libtorrent-"
(string-join (string-split version #\.) "_")
"/libtorrent-rasterbar-" version ".tar.gz"))
(patches
(search-patches "libtorrent-rasterbar-boost-compat.patch"))
(sha256
(base32
"0c398b7hsa5dvj4m0jc8h7mn0m3nawmagb6c5c7ml5c9hc338c8h"))))
"16im9qsmfrmmkhfjpij9739nqpn4s6wgc9cikdxbcyshfhimzra5"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
+5 -7
View File
@@ -28,15 +28,14 @@
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
#:use-module (gnu packages compression)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages perl)
#:use-module (gnu packages python)
#:use-module (gnu packages shells))
#:use-module (gnu packages shells)
#:use-module (gnu packages perl))
(define-public boost
(package
(name "boost")
(version "1.64.0")
(version "1.63.0")
(source (origin
(method url-fetch)
(uri (string-append
@@ -45,10 +44,9 @@
".tar.bz2"))
(sha256
(base32
"0cikd35xfkpg9nnl76yqqnqxnf3hyfjjww8xjd4akflprsm5rk3v"))))
"1c5kzhcqahnic55dxcnw7r80qvwx5sfa2sa97yzv7xjrywljbbmy"))))
(build-system gnu-build-system)
(inputs `(("icu4c" ,icu4c)
("zlib" ,zlib)))
(inputs `(("zlib" ,zlib)))
(native-inputs
`(("perl" ,perl)
("python" ,python-2)
+56 -209
View File
@@ -6,7 +6,6 @@
;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2016, 2017 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2016, 2017 David Craven <david@craven.ch>
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -38,21 +37,17 @@
#:use-module (gnu packages gettext)
#:use-module (gnu packages linux)
#:use-module (gnu packages man)
#:use-module (gnu packages mtools)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
#:use-module (gnu packages python)
#:use-module (gnu packages qemu)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages swig)
#:use-module (gnu packages virtualization)
#:use-module (guix build-system gnu)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26))
#:use-module (guix utils))
(define unifont
;; GNU Unifont, <http://gnu.org/s/unifont>.
@@ -77,7 +72,7 @@
"03vvdfhdmf16121v7xs8is2krwnv15wpkhkf16a4yf8nsfc3f2w1"))))
(build-system gnu-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
'(#:phases (modify-phases %standard-phases
(add-after 'unpack 'patch-stuff
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "grub-core/Makefile.in"
@@ -104,11 +99,7 @@
(substitute* "Makefile.in"
(("grub_cmd_date grub_cmd_set_date grub_cmd_sleep")
"grub_cmd_date grub_cmd_sleep"))
#t)))
;; Disable tests on ARM and AARCH64 platforms.
#:tests? ,(not (any (cute string-prefix? <> (or (%current-target-system)
(%current-system)))
'("arm" "aarch64")))))
#t)))))
(inputs
`(("gettext" ,gettext-minimal)
@@ -129,7 +120,7 @@
("bison" ,bison)
;; Due to a bug in flex >= 2.6.2, GRUB must be built with an older flex:
;; <http://lists.gnu.org/archive/html/grub-devel/2017-02/msg00133.html>
;; TODO Try building with flex > 2.6.4.
;; TODO Try building with flex > 2.6.3.
("flex" ,flex-2.6.1)
("texinfo" ,texinfo)
("help2man" ,help2man)
@@ -158,14 +149,13 @@ menu to select one of the installed operating systems.")
(synopsis "GRand Unified Boot loader (UEFI version)")
(inputs
`(("efibootmgr" ,efibootmgr)
("mtools", mtools)
,@(package-inputs grub)))
(arguments
`(;; TODO: Tests need a UEFI firmware for qemu. There is one at
;; https://github.com/tianocore/edk2/tree/master/OvmfPkg .
;; Search for 'OVMF' in "tests/util/grub-shell.in".
#:tests? #f
,@(substitute-keyword-arguments (package-arguments grub)
((#:tests? _ #f) #f)
((#:configure-flags flags ''())
`(cons "--with-platform=efi" ,flags))
((#:phases phases)
@@ -176,52 +166,7 @@ menu to select one of the installed operating systems.")
(("efibootmgr")
(string-append (assoc-ref inputs "efibootmgr")
"/sbin/efibootmgr")))
#t))
(add-after 'patch-stuff 'use-absolute-mtools-path
(lambda* (#:key inputs #:allow-other-keys)
(let ((mtools (assoc-ref inputs "mtools")))
(substitute* "util/grub-mkrescue.c"
(("\"mformat\"")
(string-append "\"" mtools
"/bin/mformat\"")))
(substitute* "util/grub-mkrescue.c"
(("\"mcopy\"")
(string-append "\"" mtools
"/bin/mcopy\"")))
#t))))))))))
;; Because grub searches hardcoded paths it's easiest to just build grub
;; again to make it find both grub-pc and grub-efi. There is a command
;; line argument which allows you to specify ONE platform - but
;; grub-mkrescue will use multiple platforms if they are available
;; in the installation directory (without command line argument).
(define-public grub-hybrid
(package
(inherit grub-efi)
(name "grub-hybrid")
(synopsis "GRand Unified Boot loader (hybrid version)")
(inputs
`(("grub" ,grub)
,@(package-inputs grub-efi)))
(arguments
(substitute-keyword-arguments (package-arguments grub-efi)
((#:modules modules `((guix build utils) (guix build gnu-build-system)))
`((ice-9 ftw) ,@modules))
((#:phases phases)
`(modify-phases ,phases
(add-after 'install 'install-non-efi
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((input-dir (string-append (assoc-ref inputs "grub")
"/lib/grub"))
(output-dir (string-append (assoc-ref outputs "out")
"/lib/grub")))
(for-each
(lambda (basename)
(if (not (string-prefix? "." basename))
(symlink (string-append input-dir "/" basename)
(string-append output-dir "/" basename))))
(scandir input-dir))
#t)))))))))
#t)))))))))
(define-public syslinux
(let ((commit "bb41e935cc83c6242de24d2271e067d76af3585c"))
@@ -243,8 +188,7 @@ menu to select one of the installed operating systems.")
("perl" ,perl)
("python-2" ,python-2)))
(inputs
`(("libuuid" ,util-linux)
("mtools" ,mtools)))
`(("libuuid" ,util-linux)))
(arguments
`(#:parallel-build? #f
#:make-flags
@@ -259,17 +203,11 @@ menu to select one of the installed operating systems.")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-files
(lambda* (#:key inputs #:allow-other-keys)
(lambda _
(substitute* (find-files "." "Makefile.*|ppmtolss16")
(("/bin/pwd") (which "pwd"))
(("/bin/echo") (which "echo"))
(("/usr/bin/perl") (which "perl")))
(let ((mtools (assoc-ref inputs "mtools")))
(substitute* (find-files "." "\\.c$")
(("mcopy")
(string-append mtools "/bin/mcopy"))
(("mattrib")
(string-append mtools "/bin/mattrib"))))
#t))
(delete 'configure)
(add-before 'build 'set-permissions
@@ -294,7 +232,7 @@ menu to select one of the installed operating systems.")
(define-public dtc
(package
(name "dtc")
(version "1.4.5")
(version "1.4.4")
(source (origin
(method url-fetch)
(uri (string-append
@@ -302,23 +240,15 @@ menu to select one of the installed operating systems.")
"dtc-" version ".tar.xz"))
(sha256
(base32
"08gnl39i4xy3dm8iqwlz2ygx0ml1bgc5kpiys5ll1wvah1j72b04"))
;; Fix build and tests on 32 bits platforms.
;; Will probably be fixed in 1.4.6 release.
(patches (search-patches "dtc-format-modifier.patch"
"dtc-32-bits-check.patch"))))
"1yygyvnnpdh241hl90n9p3kxcdvk3jxmsr4ndb961c8mq3ak21s7"))))
(build-system gnu-build-system)
(native-inputs
`(("bison" ,bison)
("flex" ,flex)
("swig" ,swig)))
(inputs
`(("python-2" ,python-2)))
("flex" ,flex-2.6.1))) ; A bug in flex prevents building with flex-2.6.3.
(arguments
`(#:make-flags
(list "CC=gcc"
(string-append "PREFIX=" (assoc-ref %outputs "out"))
(string-append "SETUP_PREFIX=" (assoc-ref %outputs "out"))
"INSTALL=install")
#:phases
(modify-phases %standard-phases
@@ -333,7 +263,7 @@ tree binary files. These are board description files used by Linux and BSD.")
(define u-boot
(package
(name "u-boot")
(version "2017.11")
(version "2017.03")
(source (origin
(method url-fetch)
(uri (string-append
@@ -341,7 +271,7 @@ tree binary files. These are board description files used by Linux and BSD.")
"u-boot-" version ".tar.bz2"))
(sha256
(base32
"01bcsah5imy6m3fbjwhqywxg0pfk5fl8ks9ylb7kv3zmrb9qy0ba"))))
"0gqihplap05dlpwdb971wsqyv01nz2vabwq5g5649gr5jczsyjzm"))))
(native-inputs
`(("bc" ,bc)
("dtc" ,dtc)
@@ -355,59 +285,48 @@ also initializes the boards (RAM etc).")
(define (make-u-boot-package board triplet)
"Returns a u-boot package for BOARD cross-compiled for TRIPLET."
(let ((same-arch? (if (string-prefix? (%current-system)
(gnu-triplet->nix-system triplet))
`#t
`#f)))
(package
(inherit u-boot)
(name (string-append "u-boot-" (string-downcase board)))
(native-inputs
`(,@(if (not same-arch?)
`(("cross-gcc" ,(cross-gcc triplet))
("cross-binutils" ,(cross-binutils triplet)))
'())
,@(package-native-inputs u-boot)))
(arguments
`(#:modules ((ice-9 ftw) (guix build utils) (guix build gnu-build-system))
#:test-target "test"
#:make-flags
(list "HOSTCC=gcc"
,@(if (not same-arch?)
`((string-append "CROSS_COMPILE=" ,triplet "-"))
'()))
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs make-flags #:allow-other-keys)
(let ((config-name (string-append ,board "_defconfig")))
(if (file-exists? (string-append "configs/" config-name))
(zero? (apply system* "make" `(,@make-flags ,config-name)))
(begin
(display "Invalid board name. Valid board names are:")
(let ((suffix-len (string-length "_defconfig")))
(scandir "configs"
(lambda (file-name)
(when (string-suffix? "_defconfig" file-name)
(format #t
"- ~A\n"
(string-drop-right file-name
suffix-len))))))
#f)))))
(replace 'install
(lambda* (#:key outputs make-flags #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(libexec (string-append out "/libexec"))
(uboot-files (append
(find-files "." ".*\\.(bin|efi|img|spl)$")
(find-files "." "^MLO$"))))
(mkdir-p libexec)
(for-each
(lambda (file)
(let ((target-file (string-append libexec "/" file)))
(mkdir-p (dirname target-file))
(copy-file file target-file)))
uboot-files))))))))))
(package
(inherit u-boot)
(name (string-append "u-boot-" (string-downcase board)))
(native-inputs
`(("cross-gcc" ,(cross-gcc triplet))
("cross-binutils" ,(cross-binutils triplet))
,@(package-native-inputs u-boot)))
(arguments
`(#:modules ((ice-9 ftw) (guix build utils) (guix build gnu-build-system))
#:test-target "test"
#:make-flags
(list "HOSTCC=gcc" (string-append "CROSS_COMPILE=" ,triplet "-"))
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs make-flags #:allow-other-keys)
(let ((config-name (string-append ,board "_defconfig")))
(if (file-exists? (string-append "configs/" config-name))
(zero? (apply system* "make" `(,@make-flags ,config-name)))
(begin
(display "Invalid board name. Valid board names are:")
(let ((suffix-len (string-length "_defconfig")))
(scandir "configs"
(lambda (file-name)
(when (string-suffix? "_defconfig" file-name)
(format #t
"- ~A\n"
(string-drop-right file-name
suffix-len))))))
#f)))))
(replace 'install
(lambda* (#:key outputs make-flags #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(libexec (string-append out "/libexec"))
(uboot-files (find-files "." ".*\\.(bin|efi|spl)$")))
(mkdir-p libexec)
(for-each
(lambda (file)
(let ((target-file (string-append libexec "/" file)))
(mkdir-p (dirname target-file))
(copy-file file target-file)))
uboot-files)))))))))
(define-public u-boot-vexpress
(make-u-boot-package "vexpress_ca9x4" "arm-linux-gnueabihf"))
@@ -417,75 +336,3 @@ also initializes the boards (RAM etc).")
(define-public u-boot-beagle-bone-black
(make-u-boot-package "am335x_boneblack" "arm-linux-gnueabihf"))
(define-public u-boot-odroid-c2
(make-u-boot-package "odroid-c2" "aarch64-linux-gnu"))
(define-public os-prober
(package
(name "os-prober")
(version "1.76")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://debian/pool/main/o/os-prober/os-prober_"
version ".tar.xz"))
(sha256
(base32
"1vb45i76bqivlghrq7m3n07qfmmq4wxrkplqx8gywj011rhq19fk"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build gnu-build-system)
(guix build utils)
(ice-9 regex) ; for string-match
(srfi srfi-26)) ; for cut
#:make-flags (list "CC=gcc")
#:tests? #f ; no tests
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(substitute* (find-files ".")
(("/usr") (assoc-ref outputs "out")))
(substitute* (find-files "." "50mounted-tests$")
(("mkdir") "mkdir -p"))
#t))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(define (find-files-non-recursive directory)
(find-files directory
(lambda (file stat)
(string-match (string-append "^" directory "/[^/]*$")
file))
#:directories? #t))
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(lib (string-append out "/lib"))
(share (string-append out "/share")))
(for-each (cut install-file <> bin)
(list "linux-boot-prober" "os-prober"))
(install-file "newns" (string-append lib "/os-prober"))
(install-file "common.sh" (string-append share "/os-prober"))
(install-file "os-probes/mounted/powerpc/20macosx"
(string-append lib "/os-probes/mounted"))
(for-each
(lambda (directory)
(for-each
(lambda (file)
(let ((destination (string-append lib "/" directory
"/" (basename file))))
(mkdir-p (dirname destination))
(copy-recursively file destination)))
(append (find-files-non-recursive (string-append directory "/common"))
(find-files-non-recursive (string-append directory "/x86")))))
(list "os-probes" "os-probes/mounted" "os-probes/init"
"linux-boot-probes" "linux-boot-probes/mounted"))
#t))))))
(home-page "https://joeyh.name/code/os-prober")
(synopsis "Detect other operating systems")
(description "os-prober probes disks on the system for other operating
systems so that they can be added to the bootloader. It also works out how to
boot existing GNU/Linux systems and detects what distribution is installed in
order to add a suitable bootloader menu entry.")
(license license:gpl2+)))
-2
View File
@@ -162,7 +162,6 @@ successful, or false to signal an error."
gnu-triplet->nix-system)
(%current-system))))
"Return the name of Glibc's dynamic linker for SYSTEM."
;; See the 'SYSDEP_KNOWN_INTERPRETER_NAMES' cpp macro in libc.
(cond ((string=? system "x86_64-linux") "/lib/ld-linux-x86-64.so.2")
((string=? system "i686-linux") "/lib/ld-linux.so.2")
((string=? system "armhf-linux") "/lib/ld-linux-armhf.so.3")
@@ -171,7 +170,6 @@ successful, or false to signal an error."
((string=? system "i686-gnu") "/lib/ld.so.1")
((string=? system "aarch64-linux") "/lib/ld-linux-aarch64.so.1")
((string=? system "powerpc-linux") "/lib/ld.so.1")
((string=? system "powerpc64le-linux") "/lib/ld64.so.2")
((string=? system "alpha-linux") "/lib/ld-linux.so.2")
;; XXX: This one is used bare-bones, without a libc, so add a case
+4 -58
View File
@@ -23,7 +23,6 @@
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (gnu packages)
#:use-module (gnu packages compression)
#:use-module (gnu packages python)
#:use-module (gnu packages ninja)
#:use-module (guix build-system gnu)
@@ -70,18 +69,17 @@ makes a few sacrifices to acquire fast full and incremental build times.")
(define-public meson
(package
(name "meson")
(version "0.43.0")
(version "0.40.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/mesonbuild/meson/"
"releases/download/" version "/meson-"
version ".tar.gz"))
"archive/" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0h3k0m45004ay1hzz9r66fkl1kwizaigxahyrlabyw0d1slyq4y5"))))
"0yl6iryh89nn6hzhwv7kg16ki1chh9h0x1yk1y130h87iq42a35r"))))
(build-system python-build-system)
(inputs `(("ninja", ninja)))
(propagated-inputs `(("python" ,python)))
(home-page "https://mesonbuild.com/")
(synopsis "Build system designed to be fast and user-friendly")
(description
@@ -92,55 +90,3 @@ Autoconf/Automake/make combo. Build specifications, also known as @dfn{Meson
files}, are written in a custom domain-specific language (DSL) that resembles
Python.")
(license license:asl2.0)))
(define-public meson-for-build
(package
(inherit meson)
(name "meson-for-build")
(version "0.42.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/mesonbuild/meson/"
"archive/" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1494hdnd40g2v6pky34j0f2iwc6kwn51vck37qwz7nl2xr17b18q"))
(patches (search-patches "meson-for-build-rpath.patch"))))
;; People should probably install "meson", not "meson-for-build".
(properties `((hidden? . #t)))))
(define-public premake4
(package
(name "premake")
(version "4.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/premake/Premake/"
version "/premake-" version "-src.zip"))
(sha256
(base32
"1017rd0wsjfyq2jvpjjhpszaa7kmig6q1nimw76qx3cjz2868lrn"))))
(build-system gnu-build-system)
(native-inputs
`(("unzip" ,unzip))) ; for unpacking the source
(arguments
`(#:make-flags '("CC=gcc")
#:tests? #f ; No test suite
#:phases
(modify-phases %standard-phases
(delete 'configure)
(add-after 'unpack 'enter-source
(lambda _ (chdir "build/gmake.unix") #t))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(install-file "../../bin/release/premake4"
(string-append (assoc-ref outputs "out") "/bin"))
#t)))))
(synopsis "Portable software build tool")
(description "@code{premake4} is a command line utility that reads a
scripted definition of a software project and outputs @file{Makefile}s or
other lower-level build files.")
(home-page "https://premake.github.io")
(license license:bsd-3)))
+3 -8
View File
@@ -1,6 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2017 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -39,17 +38,13 @@
(base32
"0il0y06akdqgy0f9p40m4x6arn66nh7sr1w1i41bszycs7div266"))))
(build-system gnu-build-system)
(inputs `(("ncurses" ,ncurses)))
(native-inputs `(("tzdata" ,tzdata-2017a)))
(inputs `(("ncurses" ,ncurses)
("tzdata" ,tzdata)))
(arguments
;; The ical tests all want to create a ".calcurse" directory, and may
;; fail with "cannot create directory '.calcurse': File exists" if run
;; concurently.
`(#:parallel-tests? #f
;; Since this tzdata is only used for tests and not referenced by the
;; built package, used the "fixed" obsolete version of tzdata and ensure
;; it does not sneak in to the closure.
#:disallowed-references (,tzdata-2017a)
'(#:parallel-tests? #f
#:phases (modify-phases %standard-phases
(add-before 'check 'check-setup
(lambda* (#:key inputs #:allow-other-keys)
+17 -24
View File
@@ -1,8 +1,8 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 David Thompson <davet@gnu.org>
;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Kei Kebreau <kei@openmailbox.org>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com>
;;; Copyright © 2016 Stefan Reichoer <stefan@xsteve.at>
;;;
@@ -31,14 +31,12 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system python)
#:use-module (gnu packages base)
#:use-module (gnu packages check)
#:use-module (gnu packages databases)
#:use-module (gnu packages dav)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages perl)
#:use-module (gnu packages python)
#:use-module (gnu packages time)
#:use-module (srfi srfi-26))
(define-public libical
@@ -57,8 +55,9 @@
(arguments
'(#:tests? #f ; test suite appears broken
#:configure-flags
(list (string-append "-DCMAKE_INSTALL_LIBDIR="
(assoc-ref %outputs "out") "/lib"))
(list (string-append "-DCMAKE_INSTALL_RPATH="
(assoc-ref %outputs "out") "/lib:"
(assoc-ref %outputs "out") "/lib64"))
#:phases
(modify-phases %standard-phases
(add-before 'configure 'patch-paths
@@ -86,13 +85,13 @@ data units.")
(define-public khal
(package
(name "khal")
(version "0.9.8")
(version "0.9.5")
(source (origin
(method url-fetch)
(uri (pypi-uri "khal" version))
(sha256
(base32
"1blx3gxnv7sj302biqphfw7i6ilzl2xlmvzp130n3113scg9w17y"))))
"0fvv0kjym9q8v20zbpr5m8ig65b8hva4p0c935qsdvgdni68jidr"))))
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@@ -101,33 +100,26 @@ data units.")
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Make installed package available for running the tests
(add-installed-pythonpath inputs outputs)
(and
(zero? (system* "make" "--directory=doc/" "man"))
(install-file
"doc/build/man/khal.1"
(string-append (assoc-ref outputs "out") "/share/man/man1")))))
(zero? (system* "make" "--directory=doc/" "man"))
(install-file
"doc/build/man/khal.1"
(string-append (assoc-ref outputs "out") "/share/man/man1"))))
;; The tests require us to choose a timezone.
(replace 'check
(lambda* (#:key inputs #:allow-other-keys)
;; The tests require us to choose a timezone.
(setenv "TZ"
(string-append (assoc-ref inputs "tzdata")
"/share/zoneinfo/Zulu"))
(zero? (system* "py.test" "tests" "-k"
(string-append
;; These tests are known to fail in when not
;; running in a TTY:
;; https://github.com/pimutils/khal/issues/683
"not test_printics_read_from_stdin "
"and not test_import_from_stdin"))))))))
(zero? (system* "py.test" "tests")))))))
(native-inputs
;; XXX Uses tmpdir_factory, introduced in pytest 2.8.
`(("python-pytest" ,python-pytest-3.0)
("python-pytest-cov" ,python-pytest-cov)
("python-setuptools-scm" ,python-setuptools-scm)
;; Required for tests
("python-freezegun" ,python-freezegun)
("tzdata" ,tzdata)
("vdirsyncer" ,vdirsyncer)
("python-freezegun" ,python-freezegun)
;; Required to build manpage
("python-sphinxcontrib-newsfeed" ,python-sphinxcontrib-newsfeed)
("python-sphinx" ,python-sphinx)))
@@ -139,7 +131,8 @@ data units.")
("python-icalendar" ,python-icalendar)
("python-tzlocal" ,python-tzlocal)
("python-urwid" ,python-urwid)
("python-pyxdg" ,python-pyxdg)))
("python-pyxdg" ,python-pyxdg)
("vdirsyncer" ,vdirsyncer)))
(synopsis "Console calendar program")
(description "Khal is a standards based console calendar program,
able to synchronize with CalDAV servers through vdirsyncer.")
+3 -3
View File
@@ -147,14 +147,14 @@ libcdio.")
(define-public xorriso
(package
(name "xorriso")
(version "1.4.8")
(version "1.4.6")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/xorriso/xorriso-"
version ".tar.gz"))
(sha256
(base32
"10c44yr3dpmwxa7rf23mwfsy1bahny3jpcg9ig0xjv090jg0d0pc"))))
"112p0ghwzxrcjbsir1n2jxhq103ckrw93wzvd55qqvzfgs674vsj"))))
(build-system gnu-build-system)
(inputs
`(("acl" ,acl)
@@ -454,7 +454,7 @@ the data.")
(build-system gnu-build-system)
(arguments
'(#:tests? #f
#:phases (modify-phases %standard-phases (delete 'configure))
#:phases (alist-delete 'configure %standard-phases)
#:make-flags (list "CC=gcc"
(string-append "PREFIX="
(assoc-ref %outputs "out")))))
+5 -19
View File
@@ -1,9 +1,8 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -75,7 +74,7 @@
(define-public nss-certs
(package
(name "nss-certs")
(version "3.34.1")
(version "3.31")
(source (origin
(method url-fetch)
(uri (let ((version-with-underscores
@@ -86,7 +85,7 @@
"nss-" version ".tar.gz")))
(sha256
(base32
"186x33wsk4mzjz7dzbn8p0py9a0nzkgzpfkdv4rlyy5gghv5vhd3"))))
"0pd643a8ns7q5az5ai3ascrw666i2kbfiyy1c9hlhw9jd8jn21g9"))))
(build-system gnu-build-system)
(outputs '("out"))
(native-inputs
@@ -156,26 +155,13 @@ taken from the NSS package and thus ultimately from the Mozilla project.")
(let ((root (assoc-ref %build-inputs "isrgrootx1.pem"))
(intermediate (assoc-ref %build-inputs "letsencryptauthorityx3.pem"))
(backup (assoc-ref %build-inputs "letsencryptauthorityx4.pem"))
(out (string-append (assoc-ref %outputs "out") "/etc/ssl/certs"))
(openssl (assoc-ref %build-inputs "openssl"))
(perl (assoc-ref %build-inputs "perl")))
(out (string-append (assoc-ref %outputs "out") "/etc/ssl/certs")))
(mkdir-p out)
(for-each
(lambda (cert)
(copy-file cert (string-append out "/"
(strip-store-file-name cert))))
(list root intermediate backup))
;; Create hash symlinks suitable for OpenSSL ('SSL_CERT_DIR' and
;; similar.)
(chdir (string-append %output "/etc/ssl/certs"))
(unless (zero? (system* (string-append perl "/bin/perl")
(string-append openssl "/bin/c_rehash")
"."))
(error "'c_rehash' failed" openssl))))))
(native-inputs
`(("openssl" ,openssl)
("perl" ,perl))) ;for 'c_rehash'
(list root intermediate backup))))))
(inputs
`(; The Let's Encrypt root certificate, "ISRG Root X1".
("isrgrootx1.pem"
+19 -1565
View File
File diff suppressed because it is too large Load Diff
+11 -35
View File
@@ -3,7 +3,6 @@
;;; 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.
;;;
@@ -187,8 +186,8 @@ their dependencies.")
(license l:gpl3+))))
(define-public cuirass
(let ((commit "9cfea9fe2e3ca6a3d1b832a6ec217426ec973c93")
(revision "10"))
(let ((commit "870e8d6ad3415ac61c52e57095fcc6164023a0fc")
(revision "6"))
(package
(name "cuirass")
(version (string-append "0.0.1-" revision "." (string-take commit 7)))
@@ -200,7 +199,7 @@ their dependencies.")
(file-name (string-append name "-" version))
(sha256
(base32
"177klidmsw12kjk9dzawc0bqcwqlplgx45m87qpgjfx3cnk28i2b"))))
"0lp5a5p42k7lml15lbmmd7az9i0gw5kips3sh3awd2z79h0w2knw"))))
(build-system gnu-build-system)
(arguments
'(#:modules ((guix build utils)
@@ -216,12 +215,7 @@ their dependencies.")
(substitute* "Makefile.am"
(("tests/repo.scm \\\\") "\\"))
#t))
(add-after 'disable-repo-tests 'patch-/bin/sh
(lambda _
(substitute* "build-aux/git-version-gen"
(("#!/bin/sh") (string-append "#!" (which "sh"))))
#t))
(add-after 'patch-/bin/sh 'bootstrap
(add-before 'configure 'bootstrap
(lambda _ (zero? (system* "sh" "bootstrap"))))
(add-after 'install 'wrap-program
(lambda* (#:key inputs outputs #:allow-other-keys)
@@ -229,8 +223,7 @@ their dependencies.")
(let* ((out (assoc-ref outputs "out"))
(json (assoc-ref inputs "guile-json"))
(sqlite (assoc-ref inputs "guile-sqlite3"))
(git (assoc-ref inputs "guile-git"))
(bytes (assoc-ref inputs "guile-bytestructures"))
(git (assoc-ref inputs "git"))
(guix (assoc-ref inputs "guix"))
(guile (assoc-ref %build-inputs "guile"))
(effective (read-line
@@ -238,19 +231,16 @@ 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 'evaluate' command, as
;; well as the relevant Guile modules.
;; Make sure 'cuirass' can find the 'git' and 'evaluate'
;; commands, as well as the relevant Guile modules.
(wrap-program (string-append out "/bin/cuirass")
`("PATH" ":" prefix (,(string-append out "/bin")))
`("PATH" ":" prefix (,(string-append out "/bin")
,(string-append git "/bin")))
`("GUILE_LOAD_PATH" ":" prefix (,mods))
`("GUILE_LOAD_COMPILED_PATH" ":" prefix (,mods)))
#t))))))
@@ -258,27 +248,13 @@ their dependencies.")
`(("guile" ,guile-2.2)
("guile-json" ,guile-json)
("guile-sqlite3" ,guile-sqlite3)
("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)))
("guix" ,guix)
("git" ,git)))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("pkg-config" ,pkg-config)
("texinfo" ,texinfo)))
(native-search-paths
;; For HTTPS access, Cuirass itself honors these variables, with the
;; same semantics as Git and OpenSSL (respectively).
(list (search-path-specification
(variable "GIT_SSL_CAINFO")
(file-type 'regular)
(separator #f) ;single entry
(files '("etc/ssl/certs/ca-certificates.crt")))
(search-path-specification
(variable "SSL_CERT_DIR")
(files '("etc/ssl/certs")))))
(synopsis "Continuous integration system")
(description
"Cuirass is a continuous integration tool using GNU Guix. It is
-86
View File
@@ -1,86 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 ng0 <ng0@infotropique.org>
;;;
;;; 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 cinnamon)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix utils)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
#:use-module (gnu packages gnome)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
#:use-module (gnu packages xorg))
(define-public cinnamon-desktop
(package
(name "cinnamon-desktop")
(version "3.4.2")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/linuxmint/cinnamon-desktop/"
"archive/" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1jf24csrbfi9aiza1g70jpvsbjiqwphk0i5wilxq9kpjjsl99maq"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'autoconf
(lambda _
(mkdir-p "m4")
(zero?
(and (system* "glib-gettextize" "--force" "--copy")
(system* "intltoolize" "--force" "--copy" "--automake")
(system* "autoreconf" "--verbose" "--force" "--install"))))))))
;; TODO: package 'libgsystem'.
(inputs
`(("accountsservice" ,accountsservice)
("gtk+" ,gtk+)
("glib" ,glib)
("gobject-introspection" ,gobject-introspection)
("gnome-common" ,gnome-common)
("libxkbfile" ,libxkbfile)
("libxrandr" ,libxrandr)
("python-2" ,python-2)
("pulseaudio" ,pulseaudio)
("xkeyboard-config" ,xkeyboard-config)))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("gettext" ,gettext-minimal)
("glib" ,glib "bin") ; glib-gettextize
("intltool" ,intltool)
("libtool" ,libtool)
("pkg-config" ,pkg-config)))
(home-page "https://github.com/linuxmint/cinnamon-desktop/")
(synopsis "Library for the Cinnamon Desktop")
(description
"The cinnamon-desktop package contains the libcinnamon-desktop library,
as well as some desktop-wide documents.")
(license (list license:gpl2+ license:lgpl2.0+
license:expat)))) ;display-name.c , edid-parse.c
-59
View File
@@ -1,59 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; 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 cobol)
#:use-module (gnu packages)
#:use-module (guix build-system gnu)
#:use-module (guix licenses)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (gnu packages databases)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses))
(define-public gnucobol
(package
(name "gnucobol")
(version "2.2")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://gnu/gnucobol/gnucobol-"
version ".tar.xz"))
(sha256
(base32
"1814s1n95xax2dz938cf4fkcp0q94nkj1gjbdblbzpk9q92zq66w"))))
(arguments
'(#:configure-flags (list (string-append "LDFLAGS=-Wl,-rpath="
(assoc-ref %outputs "out")
"/lib"))))
(inputs
`(("bdb" ,bdb)
("gmp" ,gmp)
("ncurses" ,ncurses)))
(build-system gnu-build-system)
(home-page "https://savannah.gnu.org/projects/gnucobol/")
(synopsis "A modern COBOL compiler")
(description "GnuCOBOL is a free, modern COBOL compiler. GnuCOBOL
implements a substantial part of the COBOL 85, COBOL 2002 and COBOL 2014
standards and X/Open COBOL, as well as many extensions included in other
COBOL compilers (IBM COBOL, MicroFocus COBOL, ACUCOBOL-GT and others).
GnuCOBOL translates COBOL into C and compiles the translated code using
a native C compiler.")
(license gpl3+)))
+1 -60
View File
@@ -5,7 +5,6 @@
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017 Andy Wingo <wingo@igalia.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -58,11 +57,7 @@
;; Needed to have cflow-mode.el installed.
(native-inputs `(("emacs" ,emacs-minimal)))
(arguments
'(#:configure-flags (list (string-append "CPPFLAGS="
"-D" "CFLOW_PREPROC=\\\""
(assoc-ref %build-inputs "gcc")
"/bin/cpp\\\""))))
(home-page "https://www.gnu.org/software/cflow/")
(synopsis "Create a graph of control flow within a program")
(description
@@ -194,60 +189,6 @@ effort, time, and money it would take to develop the software, using the
COCOMO model or user-provided parameters.")
(license license:gpl2+)))
(define-public cloc
(package
(name "cloc")
(version "1.74")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/AlDanial/cloc/releases/download/" version
"/cloc-" version ".tar.gz"))
(sha256
(base32
"0rq5xfiln1wlv3yr9mg18ax4gskbss786iqaf0v45iv6awyl5b2m"))))
(build-system gnu-build-system)
(inputs
`(("coreutils" ,coreutils)
("perl" ,perl)
("perl-algorithm-diff" ,perl-algorithm-diff)
("perl-regexp-common" ,perl-regexp-common)
("perl-digest-md5" ,perl-digest-md5)))
(arguments
`(#:phases (modify-phases %standard-phases
(delete 'configure)
(delete 'build)
(replace 'install
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")))
(zero?
(system* "make" "-C" "Unix"
(string-append "prefix=" out)
(string-append "INSTALL="
(assoc-ref inputs "coreutils")
"/bin/install")
"install")))))
(add-after 'install 'wrap-program
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(wrap-program (string-append out "/bin/cloc")
`("PERL5LIB" ":" =
,(string-split (getenv "PERL5LIB") #\:)))
#t))))
#:out-of-source? #t
;; Tests require some other packages.
#:tests? #f))
(home-page "https://github.com/AlDanial/cloc")
(synopsis "Count source lines of code (SLOC) and other source code metrics")
(description "cloc counts blank lines, comment lines, and physical lines
of source code in many programming languages. Given two versions of a code
base, cloc can compute differences in blank, comment, and source lines.
cloc contains code from David Wheeler's SLOCCount. Compared to SLOCCount,
cloc can handle a greater variety of programming languages.")
(license license:gpl2+)))
(define-public the-silver-searcher
(package
(name "the-silver-searcher")
+26 -22
View File
@@ -3,7 +3,6 @@
;;; Copyright © 2014 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2014, 2015, 2017 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -510,7 +509,14 @@ the bootstrap environment."
(propagated-inputs `(("kernel-headers" ,(kernel-headers-boot0))))
(native-inputs
`(("texinfo" ,texinfo-boot0)
("perl" ,perl-boot0)))
("perl" ,perl-boot0)
;; Apply this patch only on i686 to avoid a full rebuild.
;; TODO: Remove in the next update cycle.
,@(if (string-prefix? "i686" (or (%current-target-system)
(%current-system)))
`(("glibc-memchr-overflow-i686.patch"
,(search-patch "glibc-memchr-overflow-i686.patch")))
'())))
(inputs
`(;; The boot inputs. That includes the bootstrap libc. We don't want
;; it in $CPATH, hence the 'pre-configure' phase above.
@@ -669,7 +675,7 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
(define binutils-final
(package-with-bootstrap-guile
(package/inherit binutils
(package (inherit binutils)
(arguments
`(#:guile ,%bootstrap-guile
#:implicit-inputs? #f
@@ -800,14 +806,13 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
(define bash-final
;; Link with `-static-libgcc' to make sure we don't retain a reference
;; to the bootstrap GCC. Use "bash-minimal" to avoid an extra dependency
;; on Readline and ncurses.
;; to the bootstrap GCC.
(let ((bash (package
(inherit bash-minimal)
(inherit bash)
(arguments
`(#:disallowed-references
,(assoc-ref %boot3-inputs "coreutils&co")
,@(package-arguments bash-minimal))))))
,@(package-arguments bash))))))
(package-with-bootstrap-guile
(package-with-explicit-inputs (static-libgcc-package bash)
%boot3-inputs
@@ -823,7 +828,7 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
;; This package must be public because other modules refer to it. However,
;; mark it as hidden so that 'fold-packages' ignores it.
(package-with-bootstrap-guile
(package-with-explicit-inputs (hidden-package guile-2.2/fixed)
(package-with-explicit-inputs (hidden-package guile-2.0/fixed)
%boot4-inputs
(current-source-location)
#:guile %bootstrap-guile)))
@@ -844,10 +849,12 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
(define-public ld-wrapper
;; The final 'ld' wrapper, which uses the final Guile and Binutils.
(make-ld-wrapper "ld-wrapper"
#:binutils binutils-final
#:guile guile-final
#:bash bash-final))
(package (inherit ld-wrapper-boot3)
(name "ld-wrapper")
(inputs `(("guile" ,guile-final)
("bash" ,bash-final)
,@(fold alist-delete (package-inputs ld-wrapper-boot3)
'("guile" "bash"))))))
(define %boot5-inputs
;; Now with UTF-8 locales. Remember that the bootstrap binaries were built
@@ -940,7 +947,7 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
the implicit inputs of 'gnu-build-system', return that one, otherwise return
PACKAGE.
The goal is to avoid duplication in cases like GUILE-FINAL vs. GUILE-2.2,
The goal is to avoid duplication in cases like GUILE-FINAL vs. GUILE-2.0,
COREUTILS-FINAL vs. COREUTILS, etc."
;; XXX: This doesn't handle dependencies of the final inputs, such as
;; libunistring, GMP, etc.
@@ -960,7 +967,7 @@ COREUTILS-FINAL vs. COREUTILS, etc."
;;; GCC toolchain.
;;;
(define (make-gcc-toolchain gcc)
(define (gcc-toolchain gcc)
"Return a complete toolchain for GCC."
(package
(name "gcc-toolchain")
@@ -1006,21 +1013,18 @@ and binaries, plus debugging symbols in the 'debug' output), and Binutils.")
("libc-debug" ,glibc-final "debug")))))
(define-public gcc-toolchain-4.8
(make-gcc-toolchain gcc-4.8))
(gcc-toolchain gcc-4.8))
(define-public gcc-toolchain-4.9
(make-gcc-toolchain gcc-4.9))
(define-public gcc-toolchain
(make-gcc-toolchain gcc-final))
(gcc-toolchain gcc-4.9))
(define-public gcc-toolchain-5
gcc-toolchain)
(gcc-toolchain gcc-final))
(define-public gcc-toolchain-6
(make-gcc-toolchain gcc-6))
(gcc-toolchain gcc-6))
(define-public gcc-toolchain-7
(make-gcc-toolchain gcc-7))
(gcc-toolchain gcc-7))
;;; commencement.scm ends here
+145 -559
View File
@@ -4,7 +4,7 @@
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2015, 2016 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2015 Jeff Mickey <j@codemac.net>
;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
@@ -12,14 +12,11 @@
;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016 David Craven <david@craven.ch>
;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2016 Kei Kebreau <kei@openmailbox.org>
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 ng0 <contact.ng0@cryptolab.net>
;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
;;; Copyright © 2017 Petter <petter@mykolab.ch>
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2017 Theodoros Foradis <theodoros.for@openmailbox.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -42,7 +39,6 @@
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system ant)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system perl)
@@ -54,9 +50,6 @@
#:use-module (gnu packages base)
#:use-module (gnu packages check)
#:use-module (gnu packages curl)
#:use-module (gnu packages file)
#:use-module (gnu packages java)
#:use-module (gnu packages maths)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
@@ -121,7 +114,7 @@ in compression.")
(modify-phases %standard-phases
(add-after 'unpack 'enter-source
(lambda _ (chdir "contrib/minizip") #t))
(add-after 'enter-source 'autoreconf
(add-before 'configure 'autoreconf
(lambda _
(zero? (system* "autoreconf" "-vif")))))))
(native-inputs
@@ -219,78 +212,84 @@ file; as a result, it is often used in conjunction with \"tar\", resulting in
(home-page "https://www.gnu.org/software/gzip/")))
(define-public bzip2
(package
(name "bzip2")
(version "1.0.6")
(source (origin
(method url-fetch)
(uri (string-append "http://www.bzip.org/" version "/bzip2-"
version ".tar.gz"))
(sha256
(base32
"1kfrc7f0ja9fdn6j1y6yir6li818npy6217hvr3wzmnmzhs8z152"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build gnu-build-system)
(guix build utils)
(srfi srfi-1))
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key target #:allow-other-keys)
(if ,(%current-target-system)
;; Cross-compilation: use the cross tools.
(substitute* (find-files "." "Makefile")
(("CC=.*$")
(string-append "CC = " target "-gcc\n"))
(("AR=.*$")
(string-append "AR = " target "-ar\n"))
(("RANLIB=.*$")
(string-append "RANLIB = " target "-ranlib\n"))
(("^all:(.*)test" _ prerequisites)
;; Remove 'all' -> 'test' dependency.
(string-append "all:" prerequisites "\n")))
#t)))
(add-before 'build 'build-shared-lib
(lambda* (#:key inputs #:allow-other-keys)
(patch-makefile-SHELL "Makefile-libbz2_so")
(zero? (system* "make" "-f" "Makefile-libbz2_so"))))
(add-after 'install 'install-shared-lib
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(libdir (string-append out "/lib")))
(for-each (lambda (file)
(let ((base (basename file)))
(format #t "installing `~a' to `~a'~%"
base libdir)
(copy-file file
(string-append libdir "/" base))))
(find-files "." "^libbz2\\.so")))
#t))
(add-after 'install-shared-lib 'patch-scripts
(lambda* (#:key outputs inputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")))
(substitute* (string-append out "/bin/bzdiff")
(("/bin/rm") "rm")))
#t)))
(let ((build-shared-lib
;; Build a shared library.
'(lambda* (#:key inputs #:allow-other-keys)
(patch-makefile-SHELL "Makefile-libbz2_so")
(zero? (system* "make" "-f" "Makefile-libbz2_so"))))
(install-shared-lib
'(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(libdir (string-append out "/lib")))
(for-each (lambda (file)
(let ((base (basename file)))
(format #t "installing `~a' to `~a'~%"
base libdir)
(copy-file file
(string-append libdir "/" base))))
(find-files "." "^libbz2\\.so")))))
(set-cross-environment
'(lambda* (#:key target #:allow-other-keys)
(substitute* (find-files "." "Makefile")
(("CC=.*$")
(string-append "CC = " target "-gcc\n"))
(("AR=.*$")
(string-append "AR = " target "-ar\n"))
(("RANLIB=.*$")
(string-append "RANLIB = " target "-ranlib\n"))
(("^all:(.*)test" _ prerequisites)
;; Remove 'all' -> 'test' dependency.
(string-append "all:" prerequisites "\n"))))))
(package
(name "bzip2")
(version "1.0.6")
(source (origin
(method url-fetch)
(uri (string-append "http://www.bzip.org/" version "/bzip2-"
version ".tar.gz"))
(sha256
(base32
"1kfrc7f0ja9fdn6j1y6yir6li818npy6217hvr3wzmnmzhs8z152"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build gnu-build-system)
(guix build utils)
(srfi srfi-1))
#:phases
,(if (%current-target-system)
#:make-flags (list (string-append "PREFIX="
(assoc-ref %outputs "out")))
;; Cross-compilation: use the cross tools.
`(alist-cons-before
'build 'build-shared-lib ,build-shared-lib
(alist-cons-after
'install 'install-shared-lib ,install-shared-lib
(alist-replace 'configure ,set-cross-environment
%standard-phases)))
;; Don't attempt to run the tests when cross-compiling.
,@(if (%current-target-system)
'(#:tests? #f)
'())))
(synopsis "High-quality data compression program")
(description
"bzip2 is a freely available, patent free (see below), high-quality data
;; Native compilation: build the shared library.
`(alist-cons-before
'build 'build-shared-lib ,build-shared-lib
(alist-cons-after
'install 'install-shared-lib ,install-shared-lib
(alist-delete 'configure %standard-phases))))
#:make-flags (list (string-append "PREFIX="
(assoc-ref %outputs "out")))
;; Don't attempt to run the tests when cross-compiling.
,@(if (%current-target-system)
'(#:tests? #f)
'())))
(synopsis "High-quality data compression program")
(description
"bzip2 is a freely available, patent free (see below), high-quality data
compressor. It typically compresses files to within 10% to 15% of the best
available techniques (the PPM family of statistical compressors), whilst
being around twice as fast at compression and six times faster at
decompression.")
(license (license:non-copyleft "file://LICENSE"
"See LICENSE in the distribution."))
(home-page "http://www.bzip.org/")))
(license (license:non-copyleft "file://LICENSE"
"See LICENSE in the distribution."))
(home-page "http://www.bzip.org/"))))
(define-public lbzip2
(package
@@ -463,54 +462,24 @@ some compression ratio).")
(define-public lzip
(package
(name "lzip")
(version "1.18")
(version "1.16")
(source (origin
(method url-fetch)
(uri (string-append "mirror://savannah/lzip/lzip-"
version ".tar.gz"))
(sha256
(base32
"1p8lvc22sv3damld9ng8y6i8z2dvvpsbi9v7yhr5bc2a20m8iya7"))))
"0l9724rw1l3hg2ldr3n7ihqich4m9nc6y7l302bvdj4jmxdw530j"))))
(build-system gnu-build-system)
(home-page "http://www.nongnu.org/lzip/lzip.html")
(synopsis "Lossless data compressor based on the LZMA algorithm")
(description
"Lzip is a lossless data compressor with a user interface similar to the
one of gzip or bzip2. Lzip decompresses almost as fast as gzip and compresses
more than bzip2, which makes it well-suited for software distribution and data
more than bzip2, which makes it well suited for software distribution and data
archiving. Lzip is a clean implementation of the LZMA algorithm.")
(license license:gpl3+)))
(define-public lziprecover
(package
(name "lziprecover")
(version "1.19")
(source (origin
(method url-fetch)
(uri (string-append "mirror://savannah/lzip/" name "/"
name "-" version ".tar.gz"))
(sha256
(base32
"0z5fbkm0qprypjf7kxkqganniibj0zml13zvfkrchnjafcmmzyld"))))
(build-system gnu-build-system)
(home-page "http://www.nongnu.org/lzip/lziprecover.html")
(synopsis "Recover and decompress data from damaged lzip files")
(description
"Lziprecover is a data recovery tool and decompressor for files in the lzip
compressed data format (.lz). It can test the integrity of lzip files, extract
data from damaged ones, and repair most files with small errors (up to one
single-byte error per member) entirely.
Lziprecover is not a replacement for regular backups, but a last line of defence
when even the backups are corrupt. It can recover files by merging the good
parts of two or more damaged copies, such as can be easily produced by running
@command{ddrescue} on a failing device.
This package also includes @command{unzcrash}, a tool to test the robustness of
decompressors when faced with corrupted input.")
(license (list license:bsd-2 ; arg_parser.{cc,h}
license:gpl2+)))) ; everything else
(define-public sharutils
(package
(name "sharutils")
@@ -528,14 +497,14 @@ decompressors when faced with corrupted input.")
`(("which" ,which)))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'patch-source-shebangs 'unpatch-source-shebang
;; revert the patch-shebang phase on a script which is
;; in fact test data
(lambda _
(substitute* "tests/shar-1.ok"
(((which "sh")) "/bin/sh"))
#t)))))
(alist-cons-after
'patch-source-shebangs 'unpatch-source-shebang
;; revert the patch-shebang phase on a script which is
;; in fact test data
(lambda _
(substitute* "tests/shar-1.ok"
(((which "sh")) "/bin/sh")))
%standard-phases)))
(home-page "https://www.gnu.org/software/sharutils/")
(synopsis "Archives in shell scripts, uuencode/uudecode")
(description
@@ -613,14 +582,14 @@ sfArk file format to the uncompressed sf2 format.")
(define-public libmspack
(package
(name "libmspack")
(version "0.6")
(version "0.5")
(source
(origin
(method url-fetch)
(uri (string-append "http://www.cabextract.org.uk/libmspack/libmspack-"
version "alpha.tar.gz"))
(sha256
(base32 "08gr2pcinas6bdqz3k0286g5cnksmcx813skmdwyca6bmj1fxnqy"))))
(base32 "04413hynb7zizxnkgy9riik3612dwirkpr6fcjrnfl2za9sz4rw9"))))
(build-system gnu-build-system)
(home-page "http://www.cabextract.org.uk/libmspack/")
(synopsis "Compression tools for some formats used by Microsoft")
@@ -709,15 +678,16 @@ writing of compressed data created with the zlib and bzip2 libraries.")
(define-public lz4
(package
(name "lz4")
(version "1.8.0")
(version "1.7.5")
(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
"1xnckwwah74gl98gylf1b00vk4km1d8sgd8865h07ccvgbm8591c"))
"0zkykqqjfa1q3ji0qmb1ml3l9063qqfh99agyj3cnb02cg6wm401"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system gnu-build-system)
(native-inputs `(("valgrind" ,valgrind))) ; for tests
@@ -728,34 +698,33 @@ 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 "http://www.lz4.org")
(home-page "https://github.com/lz4/lz4")
(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+))))
(define-public python-lz4
(package
(name "python-lz4")
(version "0.10.1")
(version "0.8.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "lz4" version))
(sha256
(base32
"0ghv1xbaq693kgww1x9c22bplz479ls9szjsaa4ig778ls834hm0"))))
"1irad4sq4hdr30fr53smvv3zzk4rddcf9b4jx19w8s9xsxhr1x3b"))))
(build-system python-build-system)
(native-inputs
`(("python-nose" ,python-nose)
("python-setuptools-scm" ,python-setuptools-scm)))
`(("python-nose" ,python-nose)))
(home-page "https://github.com/python-lz4/python-lz4")
(synopsis "LZ4 bindings for Python")
(synopsis "LZ4 Bindings for Python")
(description
"This package provides python bindings for the lz4 compression library
by Yann Collet. The project contains bindings for the LZ4 block format and
@@ -765,28 +734,6 @@ the LZ4 frame format.")
(define-public python2-lz4
(package-with-python2 python-lz4))
(define-public python-lzstring
(package
(name "python-lzstring")
(version "1.0.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "lzstring" version))
(sha256
(base32
"1d3ck454y41mii0gcjabpmp2skb7n0f9zk232gycqdv8z2jxakfm"))))
(build-system python-build-system)
(propagated-inputs
`(("python-future" ,python-future)))
(home-page "https://github.com/gkovacs/lz-string-python")
(synopsis "String compression")
(description "Lz-string is a string compressor library for Python.")
(license license:expat)))
(define-public python2-lzstring
(package-with-python2 python-lzstring))
(define-public squashfs-tools
(package
(name "squashfs-tools")
@@ -983,7 +930,7 @@ respectively, based on the reference implementation from Google.")
(modify-phases %standard-phases
(add-after 'unpack 'enter-build-directory
(lambda _ (chdir "xdelta3")))
(add-after 'enter-build-directory 'autoconf
(add-before 'configure 'autoconf
(lambda _ (zero? (system* "autoreconf" "-vfi")))))))
(home-page "http://xdelta.com")
(synopsis "Delta encoder for binary files")
@@ -1030,38 +977,6 @@ well as bzip2.")
(license (list license:gpl3+
license:public-domain)))) ; most files in lzma/
(define-public bitshuffle
(package
(name "bitshuffle")
(version "0.3.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "bitshuffle" version))
(sha256
(base32
"01vcjrvsxjvv47y5hf9rps69zwv0vwd4ydhhms2jfs4rpcnlak6v"))))
(build-system python-build-system)
(arguments
`(#:tests? #f
#:phases
(modify-phases %standard-phases
(add-before 'check 'make-required-dir
(lambda _
(mkdir-p "bitshuffle/plugin")
#t)))))
(inputs
`(("numpy" ,python-numpy)
("h5py" ,python-h5py)
("hdf5" ,hdf5)))
(native-inputs
`(("cython" ,python-cython)))
(home-page "https://github.com/kiyo-masui/bitshuffle")
(synopsis "Filter for improving compression of typed binary data")
(description "Bitshuffle is an algorithm that rearranges typed, binary data
for improving compression, as well as a python/C package that implements this
algorithm within the Numpy framework.")
(license license:expat)))
(define-public snappy
(package
(name "snappy")
@@ -1085,275 +1000,6 @@ for most inputs, but the resulting compressed files are anywhere from 20% to
100% bigger.")
(license license:asl2.0)))
(define bitshuffle-for-snappy
(package
(inherit bitshuffle)
(name "bitshuffle-for-snappy")
(build-system gnu-build-system)
(arguments
`(#:tests? #f
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(with-output-to-file "Makefile"
(lambda _
(format #t "\
libbitshuffle.so: src/bitshuffle.o src/bitshuffle_core.o src/iochain.o lz4/lz4.o
\tgcc -O3 -ffast-math -std=c99 -o $@ -shared -fPIC $^
%.o: %.c
\tgcc -O3 -ffast-math -std=c99 -fPIC -Isrc -Ilz4 -c $< -o $@
PREFIX:=~a
LIBDIR:=$(PREFIX)/lib
INCLUDEDIR:=$(PREFIX)/include
install: libbitshuffle.so
\tinstall -dm755 $(LIBDIR)
\tinstall -dm755 $(INCLUDEDIR)
\tinstall -m755 libbitshuffle.so $(LIBDIR)
\tinstall -m644 src/bitshuffle.h $(INCLUDEDIR)
\tinstall -m644 src/bitshuffle_core.h $(INCLUDEDIR)
\tinstall -m644 src/iochain.h $(INCLUDEDIR)
\tinstall -m644 lz4/lz4.h $(INCLUDEDIR)
" (assoc-ref outputs "out"))))
#t)))))
(inputs '())
(native-inputs '())))
(define-public java-snappy
(package
(name "java-snappy")
(version "1.1.4")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/xerial/snappy-java/archive/"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1w58diryma7qz7aa24yv8shf3flxcbbw8jgcn2lih14wgmww58ww"))))
(build-system ant-build-system)
(arguments
`(#:jar-name "snappy.jar"
#:source-dir "src/main/java"
#:phases
(modify-phases %standard-phases
(add-before 'build 'remove-binaries
(lambda _
(delete-file "lib/org/xerial/snappy/OSInfo.class")
(delete-file-recursively "src/main/resources/org/xerial/snappy/native")
#t))
(add-before 'build 'build-jni
(lambda _
;; Rebuild one of the binaries we removed earlier
(system* "javac" "src/main/java/org/xerial/snappy/OSInfo.java"
"-d" "lib")
;; Link to the dynamic bitshuffle and snappy, not the static ones
(substitute* "Makefile.common"
(("-shared")
"-shared -lbitshuffle -lsnappy"))
(substitute* "Makefile"
;; Don't try to use git, don't download bitshuffle source
;; and don't build it.
(("\\$\\(SNAPPY_GIT_UNPACKED\\) ")
"")
((": \\$\\(SNAPPY_GIT_UNPACKED\\)")
":")
(("\\$\\(BITSHUFFLE_UNPACKED\\) ")
"")
((": \\$\\(SNAPPY_SOURCE_CONFIGURED\\)") ":")
;; What we actually want to build
(("SNAPPY_OBJ:=.*")
"SNAPPY_OBJ:=$(addprefix $(SNAPPY_OUT)/, \
SnappyNative.o BitShuffleNative.o)\n")
;; Since we removed the directory structure in "native" during
;; the previous phase, we need to recreate it.
(("NAME\\): \\$\\(SNAPPY_OBJ\\)")
"NAME): $(SNAPPY_OBJ)\n\t@mkdir -p $(@D)"))
;; Finally we can run the Makefile to build the dynamic library.
(zero? (system* "make" "native"))))
;; Once we have built the shared library, we need to place it in the
;; "build" directory so it can be added to the jar file.
(add-after 'build-jni 'copy-jni
(lambda _
(copy-recursively "src/main/resources/org/xerial/snappy/native"
"build/classes/org/xerial/snappy/native")))
(add-before 'check 'fix-failing
(lambda _
;; This package assumes maven build, which puts results in "target".
;; We put them in "build" instead, so fix that.
(substitute* "src/test/java/org/xerial/snappy/SnappyLoaderTest.java"
(("target/classes") "build/classes"))
;; FIXME: probably an error
(substitute* "src/test/java/org/xerial/snappy/SnappyOutputStreamTest.java"
(("91080") "91013")))))))
(inputs
`(("osgi-framework" ,java-osgi-framework)))
(propagated-inputs
`(("bitshuffle" ,bitshuffle-for-snappy)
("snappy" ,snappy)))
(native-inputs
`(("junit" ,java-junit)
("hamcrest" ,java-hamcrest-core)
("xerial-core" ,java-xerial-core)
("classworlds" ,java-plexus-classworlds)
("perl" ,perl)))
(home-page "https://github.com/xerial/snappy-java")
(synopsis "Compression/decompression algorithm in Java")
(description "Snappy-java is a Java port of the snappy, a fast C++
compresser/decompresser.")
(license license:asl2.0)))
(define-public java-snappy-1
(package
(inherit java-snappy)
(version "1.0.3-rc3")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/xerial/snappy-java/archive/"
"snappy-java-" version ".tar.gz"))
(sha256
(base32
"08hsxlqidiqck0q57fshwyv3ynyxy18vmhrai9fyc8mz17m7gsa3"))))
(arguments
`(#:jar-name "snappy.jar"
#:source-dir "src/main/java"
#:phases
(modify-phases %standard-phases
(add-before 'build 'remove-binaries
(lambda _
(delete-file "lib/org/xerial/snappy/OSInfo.class")
(delete-file-recursively "src/main/resources/org/xerial/snappy/native")
#t))
(add-before 'build 'build-jni
(lambda _
;; Rebuild one of the binaries we removed earlier
(system* "javac" "src/main/java/org/xerial/snappy/OSInfo.java"
"-d" "lib")
;; Link to the dynamic snappy, not the static ones
(substitute* "Makefile.common"
(("-shared") "-shared -lsnappy"))
(substitute* "Makefile"
;; Don't download the sources here.
(("\\$\\(SNAPPY_UNPACKED\\) ") "")
((": \\$\\(SNAPPY_UNPACKED\\) ") ":")
;; What we actually want to build
(("SNAPPY_OBJ:=.*")
"SNAPPY_OBJ:=$(addprefix $(SNAPPY_OUT)/, SnappyNative.o)\n")
;; Since we removed the directory structure in "native" during
;; the previous phase, we need to recreate it.
(("NAME\\): \\$\\(SNAPPY_OBJ\\)")
"NAME): $(SNAPPY_OBJ)\n\t@mkdir -p $(@D)"))
;; Finally we can run the Makefile to build the dynamic library.
(zero? (system* "make" "native"))))
;; Once we have built the shared library, we need to place it in the
;; "build" directory so it can be added to the jar file.
(add-after 'build-jni 'copy-jni
(lambda _
(copy-recursively "src/main/resources/org/xerial/snappy/native"
"build/classes/org/xerial/snappy/native")
#t))
(add-before 'check 'fix-tests
(lambda _
(mkdir-p "src/test/resources/org/xerial/snappy/")
(copy-recursively "src/test/java/org/xerial/snappy/testdata"
"src/test/resources/org/xerial/snappy/testdata")
(install-file "src/test/java/org/xerial/snappy/alice29.txt"
"src/test/resources/org/xerial/snappy/")
#t)))))))
(define-public java-iq80-snappy
(package
(name "java-iq80-snappy")
(version "0.4")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/dain/snappy/archive/snappy-"
version ".tar.gz"))
(sha256
(base32
"0rb3zhci7w9wzd65lfnk7p3ip0n6gb58a9qpx8n7r0231gahyamf"))))
(build-system ant-build-system)
(arguments
`(#:jar-name "iq80-snappy.jar"
#:source-dir "src/main/java"
#:test-dir "src/test"
#:jdk ,icedtea-8
#:phases
(modify-phases %standard-phases
(replace 'check
(lambda _
(define (test class)
(zero? (system* "java" "-cp" (string-append (getenv "CLASSPATH")
":build/classes"
":build/test-classes")
"-Dtest.resources.dir=src/test/resources"
"org.testng.TestNG" "-testclass"
class)))
(system* "ant" "compile-tests")
(and
(test "org.iq80.snappy.SnappyFramedStreamTest")
(test "org.iq80.snappy.SnappyStreamTest"))))
(add-before 'build 'remove-hadoop-dependency
(lambda _
;; We don't have hadoop
(delete-file "src/main/java/org/iq80/snappy/HadoopSnappyCodec.java")
(delete-file "src/test/java/org/iq80/snappy/TestHadoopSnappyCodec.java")
#t)))))
(home-page "https://github.com/dain/snappy")
(native-inputs
`(("guava" ,java-guava)
("java-snappy" ,java-snappy)
("hamcrest" ,java-hamcrest-core)
("testng" ,java-testng)))
(synopsis "Java port of snappy")
(description "Iq80-snappy is a rewrite (port) of Snappy writen in pure
Java. This compression code produces a byte-for-byte exact copy of the output
created by the original C++ code, and extremely fast.")
(license license:asl2.0)))
(define-public java-jbzip2
(package
(name "java-jbzip2")
(version "0.9.1")
(source (origin
(method url-fetch)
(uri (string-append "https://storage.googleapis.com/"
"google-code-archive-source/v2/"
"code.google.com/jbzip2/"
"source-archive.zip"))
(file-name (string-append name "-" version ".zip"))
(sha256
(base32
"0ncmhlqmrfmj96nqf6p77b9ws35lcfsvpfxzwxi2asissc83z1l3"))))
(build-system ant-build-system)
(native-inputs
`(("unzip" ,unzip)
("java-junit" ,java-junit)))
(arguments
`(#:tests? #f ; no tests
#:jar-name "jbzip2.jar"
#:source-dir "tags/release-0.9.1/src"
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-encoding-problems
(lambda _
;; Some of the files we're patching are
;; ISO-8859-1-encoded, so choose it as the default
;; encoding so the byte encoding is preserved.
(with-fluids ((%default-port-encoding #f))
(substitute* "tags/release-0.9.1/src/org/itadaki/bzip2/HuffmanAllocator.java"
(("Milidi.") "Milidiu")))
#t)))))
(home-page "https://code.google.com/archive/p/jbzip2/")
(synopsis "Java bzip2 compression/decompression library")
(description "Jbzip2 is a Java bzip2 compression/decompression library.
It can be used as a replacement for the Apache @code{CBZip2InputStream} /
@code{CBZip2OutputStream} classes.")
(license license:expat)))
(define-public p7zip
(package
(name "p7zip")
@@ -1537,16 +1183,16 @@ or junctions, and always follows hard links.")
("unshield-avigomanager11b22.zip"
,(origin
(method url-fetch)
(uri (string-append "https://www.dropbox.com/s/8r4b6752swe3nhu/"
"unshield-avigomanager11b22.zip?dl=1"))
(uri (string-append "https://www.dropbox.com/s/8r4b6752swe3nhu/\"
unshield-avigomanager11b22.zip?dl=1"))
(sha256
(base32 "0fwq7lih04if68wpwpsk5wjqyvh32db76a41sq6gbx4dn1lc3ddn"))
(file-name "unshield-avigomanager11b22.zip")))
("unshield-the-feeble-files-spanish.zip"
,(origin
(method url-fetch)
(uri (string-append "https://www.dropbox.com/s/1ng0z9kfxc7eb1e/"
"unshield-the-feeble-files-spanish.zip?dl=1"))
(uri (string-append "https://www.dropbox.com/s/1ng0z9kfxc7eb1e/\"
unshield-the-feeble-files-spanish.zip?dl=1"))
(sha256
(base32 "1k5cw6vnpja8yjlnhx5124xrw9i8s1l539hfdqqrqz3l5gn0bnyd"))
(file-name "unshield-the-feeble-files-spanish.zip")))))
@@ -1590,10 +1236,28 @@ or junctions, and always follows hard links.")
archives from InstallShield installers.")
(license license:expat)))
(define-public unrar
(package
(name "unrar")
(version "0.0.1")
(source (origin
(method url-fetch)
(uri (string-append
"http://download.gna.org/unrar/unrar-" version ".tar.gz"))
(sha256
(base32
"1fgmjaxffj3shyxgy765jhxwz1cq88hk0fih1bsdzyvymyyz6mz7"))))
(build-system gnu-build-system)
(home-page "http://download.gna.org/unrar")
(synopsis "RAR archive extraction tool")
(description "Unrar is a simple command-line program to list and extract
RAR archives.")
(license license:gpl2+)))
(define-public zstd
(package
(name "zstd")
(version "1.3.2")
(version "1.2.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/facebook/zstd/archive/v"
@@ -1601,7 +1265,17 @@ or junctions, and always follows hard links.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"12krs9k5f408kyn0d7dwxqyc67177mgd14783ay10rafqsim8l5c"))))
"1yyb8z03z9rw74k1d9dygcqxhx76717xq29agz57d0k3lf9lazja"))
(modules '((guix build utils)))
(snippet
;; Remove non-free source files.
'(begin
(for-each delete-file-recursively
(list
;; Commercial use of the following is not allowed.
"examples"
"LICENSE-examples"))
#t))))
(build-system gnu-build-system)
(arguments
`(#:phases
@@ -1620,10 +1294,7 @@ zlib. In most scenarios, both compression and decompression can be performed in
trade-off between compression ratio and speed, without affecting decompression
speed.")
(license (list license:bsd-3 ; the main top-level LICENSE file
license:bsd-2 ; many files explicitly state 2-Clause
license:gpl2 ; the mail top-level COPYING file
license:gpl3+ ; tests/gzip/*.sh
license:expat ; lib/dictBuilder/divsufsort.[ch]
license:bsd-2 ; quite a few files have but 2 clauses
license:public-domain ; zlibWrapper/examples/fitblk*
license:zlib)))) ; zlibWrapper/{gz*.c,gzguts.h}
@@ -1825,115 +1496,30 @@ manipulate, read, and write Zip archive files.")
(define-public libzip
(package
(name "libzip")
(version "1.3.2")
(version "1.2.0")
(source (origin
(method url-fetch)
(uri (string-append
"https://libzip.org/download/" name "-" version ".tar.xz"))
"https://nih.at/libzip/libzip-" version ".tar.gz"))
(sha256
(base32
"11g1hvm2bxa2v5plakfzcwyk5hb5fz4kgrkp38l0xhnv21888xv2"))))
"17vxj2ffsxwh8lkc6801ppmwj15jp8q58rin76znxfbx88789ybc"))))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'configure 'patch-perl
(lambda _
(substitute* "regress/runtest.in"
(("/usr/bin/env perl") (which "perl"))))))))
(native-inputs
`(("perl" ,perl)))
(inputs
`(("zlib" ,zlib)))
(build-system gnu-build-system)
(home-page "https://libzip.org")
(home-page "https://nih.at/libzip/index.html")
(synopsis "C library for reading, creating, and modifying zip archives")
(description "Libzip is a C library for reading, creating, and modifying
zip archives. Files can be added from data buffers, files, or compressed data
copied directly from other zip archives. Changes made without closing the
archive can be reverted.")
(license license:bsd-3)))
(define-public atool
(package
(name "atool")
(version "0.39.0")
(source
(origin
(method url-fetch)
(uri (string-append "http://savannah.nongnu.org/download/atool/atool-"
version ".tar.gz"))
(sha256
(base32
"0fvhzip2v08jgnlfpyj6rapan39xlsl1ksgq4lp8gfsai2ah1xma"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'embed-absolute-file-name
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "atool"
(("(^\\$::cfg_path_file.*= )'file'" _ pre)
(string-append pre "'" (assoc-ref inputs "file")
"/bin/file'")))
#t)))))
(inputs
`(("perl" ,perl)
("file" ,file)))
(home-page "http://www.nongnu.org/atool/")
(synopsis "Universal tool to manage file archives of various types")
(description "The main command is @command{aunpack} which extracts files
from an archive. The other commands provided are @command{apack} (to create
archives), @command{als} (to list files in archives), and @command{acat} (to
extract files to standard out). As @command{atool} invokes external programs
to handle the archives, not all commands may be supported for a certain type
of archives.")
(license license:gpl2+)))
(define-public perl-archive-extract
(package
(name "perl-archive-extract")
(version "0.80")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/B/BI/BINGOS/Archive-Extract-"
version ".tar.gz"))
(sha256
(base32
"1x15j1q6w6z8hqyqgap0lz4qbq2174wfhksy1fdd653ccbaw5jr5"))))
(build-system perl-build-system)
(home-page "http://search.cpan.org/dist/Archive-Extract/")
(synopsis "Generic archive extracting mechanism")
(description "It allows you to extract any archive file of the type .tar,
.tar.gz, .gz, .Z, tar.bz2, .tbz, .bz2, .zip, .xz,, .txz, .tar.xz or .lzma
without having to worry how it does so, or use different interfaces for each
type by using either Perl modules, or command-line tools on your system.")
(license license:perl-license)))
(define-public java-tukaani-xz
(package
(name "java-tukaani-xz")
(version "1.6")
(source (origin
(method url-fetch)
(uri (string-append "https://tukaani.org/xz/xz-java-" version ".zip"))
(sha256
(base32
"1z3p1ri1gvl07inxn0agx44ck8n7wrzfmvkz8nbq3njn8r9wba8x"))))
(build-system ant-build-system)
(arguments
`(#:tests? #f; no tests
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
;; Our build system enters the first directory in the archive, but
;; the package is not contained in a subdirectory
(chdir "..")))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
;; Do we want to install *Demo.jar?
(install-file "build/jar/xz.jar"
(string-append
(assoc-ref outputs "out")
"/share/java/xz.jar")))))))
(native-inputs
`(("unzip" ,unzip)))
(home-page "https://tukaani.org")
(synopsis "XZ in Java")
(description "Tukaani-xz is an implementation of xz compression/decompression
algorithms in Java.")
(license license:public-domain)))
+2 -2
View File
@@ -29,7 +29,7 @@
(define-public conkeror
(package
(name "conkeror")
(version "1.1.0")
(version "1.0.3")
(source (origin
(method url-fetch)
(uri
@@ -38,7 +38,7 @@
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0jz216mjwis7f03j98s4wkcrrq2j3f41fb2y47a5qszc340zhdzv"))))
"0ybmincxw3msnrfpby9gnckbq2x94c7fra2m66zham54cjc7mav3"))))
(build-system gnu-build-system)
(inputs `(("icecat" ,icecat)))
(arguments
+16 -15
View File
@@ -50,21 +50,22 @@
;; TODO: add 'ncurses.pc' to the ncurses package.
"-DBUILD_NCURSES=false")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'add-freetype-to-search-path
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "cmake/ConkyPlatformChecks.cmake"
(("set\\(INCLUDE_SEARCH_PATH")
(string-append
"set(INCLUDE_SEARCH_PATH "
(assoc-ref inputs "freetype") "/include/freetype2 ")))
#t))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((bin (string-append (assoc-ref outputs "out") "/bin")))
(mkdir-p bin)
(install-file "src/conky" bin))
#t)))))
(alist-cons-after
'unpack 'add-freetype-to-search-path
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "cmake/ConkyPlatformChecks.cmake"
(("set\\(INCLUDE_SEARCH_PATH")
(string-append
"set(INCLUDE_SEARCH_PATH "
(assoc-ref inputs "freetype") "/include/freetype2 ")))
#t)
(alist-replace
'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((bin (string-append (assoc-ref outputs "out") "/bin")))
(mkdir-p bin)
(install-file "src/conky" bin)))
%standard-phases))))
(inputs
`(("freetype" ,freetype)
("ncurses" ,ncurses)
+2 -2
View File
@@ -42,7 +42,7 @@
(define-public connman
(package
(name "connman")
(version "1.35")
(version "1.34")
(source
(origin
(method url-fetch)
@@ -50,7 +50,7 @@
name "-" version ".tar.xz"))
(sha256
(base32
"1apj5j25kj7v1bsfv3nh54aiq873nfrsjfbj85p5qm3ihfwxxmv6"))))
"07n71wcy1c4cc01ca4dl9k1jpdqr5nsyr33dqf7k87wwfa681859"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
+3 -3
View File
@@ -45,12 +45,12 @@
'(#:phases
;; build scripts not in root of archive
(modify-phases %standard-phases
(add-after 'unpack 'pre-configure
(add-before 'configure 'pre-configure
(lambda _
(chdir "Project/GNU/Library")))
(add-after 'pre-configure 'autogen
(add-before 'configure 'autogen
(lambda _
(zero? (system* "sh" "autogen.sh")))))))
(zero? (system* "./autogen.sh")))))))
(home-page "https://github.com/MediaArea/ZenLib")
(synopsis "C++ utility library")
(description "ZenLib is a C++ utility library. It includes classes for handling
File diff suppressed because it is too large Load Diff
+29 -197
View File
@@ -1,12 +1,11 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 David Thompson <davet@gnu.org>
;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox>
;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
;;; Copyright © 2016, 2017 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -30,19 +29,16 @@
#:use-module (gnu packages attr)
#:use-module (gnu packages autotools)
#:use-module (gnu packages boost)
#:use-module (gnu packages compression)
#:use-module (gnu packages cryptsetup)
#:use-module (gnu packages gettext)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages image)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages libbsd)
#:use-module (gnu packages libffi)
#:use-module (gnu packages linux)
#:use-module (gnu packages nettle)
#:use-module (gnu packages password-utils)
#:use-module (gnu packages perl)
#:use-module (gnu packages perl-check)
#:use-module (gnu packages readline)
#:use-module (gnu packages search)
#:use-module (gnu packages serialization)
@@ -56,66 +52,35 @@
#:use-module (guix git-download)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system perl))
#:use-module (guix build-system python))
(define-public libsodium
(package
(name "libsodium")
(version "1.0.15")
(version "1.0.12")
(source (origin
(method url-fetch)
(uri (list (string-append
"https://download.libsodium.org/libsodium/"
"http://download.libsodium.org/libsodium/"
"releases/libsodium-" version ".tar.gz")
(string-append
"https://download.libsodium.org/libsodium/"
"releases/old/libsodium-" version ".tar.gz")))
(sha256
(base32
"1x3qw7lsz44vcxpcn1dvwig410phg6gmv31jwj94arrgka3rwspv"))))
"159givfh5jgli3cifxgssivkklfyfq6lzyjgrx8h4jx5ncdqyr5q"))))
(build-system gnu-build-system)
(synopsis "Portable NaCl-based crypto library")
(description
"Sodium is a new easy-to-use high-speed software library for network
communication, encryption, decryption, signatures, etc.")
(license license:isc)
(home-page "https://libsodium.org")))
(define-public libmd
(package
(name "libmd")
(version "0.0.0")
(source (origin
(method url-fetch)
(uri (string-append
"https://archive.hadrons.org/software/libmd/libmd-"
version
".tar.xz"))
(sha256
(base32
"121s73pgbqsnmy6xblbrkj9y44c5zzzpf2hcmh6zvcvg4dk26gzx"))))
(build-system gnu-build-system)
(synopsis "Message Digest functions from BSD systems")
(description
"The currently provided message digest algorithms are:
@itemize
@item MD2
@item MD4
@item MD5
@item RIPEMD-160
@item SHA-1
@item SHA-2 (SHA-256, SHA-384 and SHA-512)
@end itemize")
(license (list license:bsd-3
license:bsd-2
license:isc
license:public-domain))
(home-page "https://www.hadrons.org/software/libmd/")))
(home-page "http://libsodium.org")))
(define-public signify
(package
(name "signify")
(version "23")
(version "21")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/aperezdc/signify/"
@@ -123,7 +88,7 @@ communication, encryption, decryption, signatures, etc.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0c70mzawgahsvmsv4xdrass4pgyynd67ipd9lij0fgi8wkq0ns8w"))))
"0jd26kxwmmar3bylpx9x5dpqxzs17ky5dvwx8pdgcg95n4lyk223"))))
(build-system gnu-build-system)
;; TODO Build with libwaive (described in README.md), to implement something
;; like OpenBSD's pledge().
@@ -195,7 +160,7 @@ OpenBSD tool of the same name.")
(arguments
`(#:configure-flags '("--disable-tools" "--disable-python")
#:phases (modify-phases %standard-phases
(add-after 'unpack 'autoconf
(add-before 'configure 'autoconf
(lambda _
(zero? (system* "autoreconf" "-vfi")))))))
(home-page "https://github.com/savoirfairelinux/opendht/")
@@ -450,158 +415,25 @@ utility as a demonstration of the @code{scrypt} key derivation function.
attacks than alternative functions such as @code{PBKDF2} or @code{bcrypt}.")
(license license:bsd-2)))
(define-public perl-math-random-isaac-xs
(define-public python-asn1crypto
(package
(name "perl-math-random-isaac-xs")
(version "1.004")
(name "python-asn1crypto")
(version "0.22.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/J/JA/JAWNSY/"
"Math-Random-ISAAC-XS-" version ".tar.gz"))
(sha256
(base32
"0yxqqcqvj51fn7b7j5xqhz65v74arzgainn66c6k7inijbmr1xws"))))
(build-system perl-build-system)
(native-inputs
`(("perl-module-build" ,perl-module-build)
("perl-test-nowarnings" ,perl-test-nowarnings)))
(home-page "http://search.cpan.org/dist/Math-Random-ISAAC-XS")
(synopsis "C implementation of the ISAAC PRNG algorithm")
(description "ISAAC (Indirection, Shift, Accumulate, Add, and Count) is a
fast pseudo-random number generator. It is suitable for applications where a
significant amount of random data needs to be produced quickly, such as
solving using the Monte Carlo method or for games. The results are uniformly
distributed, unbiased, and unpredictable unless you know the seed.
This package implements the same interface as @code{Math::Random::ISAAC}.")
(license license:public-domain)))
(define-public perl-math-random-isaac
(package
(name "perl-math-random-isaac")
(version "1.004")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/J/JA/JAWNSY/"
"Math-Random-ISAAC-" version ".tar.gz"))
(sha256
(base32
"0z1b3xbb3xz71h25fg6jgsccra7migq7s0vawx2rfzi0pwpz0wr7"))))
(build-system perl-build-system)
(native-inputs
`(("perl-test-nowarnings" ,perl-test-nowarnings)))
(propagated-inputs
`(("perl-math-random-isaac-xs" ,perl-math-random-isaac-xs)))
(home-page "http://search.cpan.org/dist/Math-Random-ISAAC")
(synopsis "Perl interface to the ISAAC PRNG algorithm")
(description "ISAAC (Indirection, Shift, Accumulate, Add, and Count) is a
fast pseudo-random number generator. It is suitable for applications where a
significant amount of random data needs to be produced quickly, such as
solving using the Monte Carlo method or for games. The results are uniformly
distributed, unbiased, and unpredictable unless you know the seed.
This package provides a Perl interface to the ISAAC pseudo random number
generator.")
(license license:public-domain)))
(define-public perl-crypt-random-source
(package
(name "perl-crypt-random-source")
(version "0.12")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
"Crypt-Random-Source-" version ".tar.gz"))
(sha256
(base32
"00mw5m52sbz9nqp3f6axyrgcrihqxn7k8gv0vi1kvm1j1nc9g29h"))))
(build-system perl-build-system)
(native-inputs
`(("perl-module-build-tiny" ,perl-module-build-tiny)
("perl-test-exception" ,perl-test-exception)))
(propagated-inputs
`(("perl-capture-tiny" ,perl-capture-tiny)
("perl-module-find" ,perl-module-find)
("perl-module-runtime" ,perl-module-runtime)
("perl-moo" ,perl-moo)
("perl-namespace-clean" ,perl-namespace-clean)
("perl-sub-exporter" ,perl-sub-exporter)
("perl-type-tiny" ,perl-type-tiny)))
(home-page "http://search.cpan.org/dist/Crypt-Random-Source")
(synopsis "Get weak or strong random data from pluggable sources")
(description "This module provides implementations for a number of
byte-oriented sources of random data.")
(license license:perl-license)))
(define-public perl-math-random-secure
(package
(name "perl-math-random-secure")
(version "0.080001")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/F/FR/FREW/"
"Math-Random-Secure-" version ".tar.gz"))
(sha256
(base32
"0dgbf4ncll4kmgkyb9fsaxn0vf2smc9dmwqzgh3259zc2zla995z"))))
(build-system perl-build-system)
(native-inputs
`(("perl-list-moreutils" ,perl-list-moreutils)
("perl-test-leaktrace" ,perl-test-leaktrace)
("perl-test-sharedfork" ,perl-test-sharedfork)
("perl-test-warn" ,perl-test-warn)))
(inputs
`(("perl-crypt-random-source" ,perl-crypt-random-source)
("perl-math-random-isaac" ,perl-math-random-isaac)
("perl-math-random-isaac-xs" ,perl-math-random-isaac-xs)
("perl-moo" ,perl-moo)))
(home-page "http://search.cpan.org/dist/Math-Random-Secure")
(synopsis "Cryptographically secure replacement for rand()")
(description "This module is intended to provide a
cryptographically-secure replacement for Perl's built-in @code{rand} function.
\"Crytographically secure\", in this case, means:
@enumerate
@item No matter how many numbers you see generated by the random number
generator, you cannot guess the future numbers, and you cannot guess the seed.
@item There are so many possible seeds that it would take decades, centuries,
or millenia for an attacker to try them all.
@item The seed comes from a source that generates relatively strong random
data on your platform, so the seed itself will be as random as possible.
@end enumerate\n")
(license license:artistic2.0)))
(define-public crypto++
(package
(name "crypto++")
(version "5.6.5")
(source (origin
(method url-fetch/zipbomb)
(uri (string-append "https://cryptopp.com/cryptopp"
(string-join (string-split version #\.) "")
".zip"))
(sha256
(base32
"0d1cqdz369ivi082k59025wvxzywvkizw7i0pf5h0a1izs3g8pm7"))
(patches
(search-patches "crypto++-fix-dos-in-asn.1-decoders.patch"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags
(list (string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
(delete 'configure))))
(native-inputs
`(("unzip" ,unzip)))
(home-page "https://cryptopp.com/")
(synopsis "C++ class library of cryptographic schemes")
(description "Crypto++ is a C++ class library of cryptographic schemes.")
;; The compilation is distributed under the Boost license; the individual
;; files in the compilation are in the public domain.
(license (list license:boost1.0 license:public-domain))))
(origin
(method url-fetch)
(uri (string-append "https://github.com/wbond/asn1crypto/archive/"
version ".tar.gz"))
(sha256
(base32
"1kn910896l3knmilla1c9ly20q181s43w1ah08lzkbm1h3j6pcz0"))))
(build-system python-build-system)
(home-page "https://github.com/wbond/asn1crypto")
(synopsis "ASN.1 parser and serializer in Python")
(description "asn1crypto is an ASN.1 parser and serializer with definitions
for private keys, public keys, certificates, CRL, OCSP, CMS, PKCS#3, PKCS#7,
PKCS#8, PKCS#12, PKCS#5, X.509 and TSP.")
(license license:expat)))
(define-public python2-asn1crypto
(package-with-python2 python-asn1crypto))
+24 -206
View File
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Mark H Weaver <mhw@netris.org>
@@ -27,14 +27,10 @@
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages autotools)
#:use-module (gnu packages avahi)
#:use-module (gnu packages compression)
#:use-module (gnu packages groff)
#:use-module (gnu packages libusb)
#:use-module (gnu packages perl)
#:use-module (gnu packages pretty-print)
#:use-module (gnu packages autotools)
#:use-module (gnu packages python)
#:use-module (gnu packages scanner)
#:use-module (gnu packages image)
@@ -46,18 +42,26 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages tls))
;; Delay to avoid module circularity problems.
(define ghostscript/cups
(delay
(package/inherit ghostscript
(name "ghostscript-with-cups")
(inputs `(("cups" ,cups-minimal)
,@(package-inputs ghostscript))))))
(define-public cups-filters
(package
(name "cups-filters")
(version "1.17.7")
(version "1.13.1")
(source(origin
(method url-fetch)
(uri
(string-append "https://openprinting.org/download/cups-filters/"
(string-append "http://openprinting.org/download/cups-filters/"
"cups-filters-" version ".tar.xz"))
(sha256
(base32
"1mg397kgfx0rs9j852f8ppmvaz2al5l75ildbgiqg6j3gwq5jssw"))
"0s7hylp2lcvc1vrqpywpv7lspkrh4xf7cyi4nbg10cf38rshj474"))
(modules '((guix build utils)))
(snippet
;; install backends, banners and filters to cups-filters output
@@ -85,13 +89,6 @@
#:configure-flags
`("--disable-driverless" ; TODO: enable this
"--disable-mutool" ; depends on yet another PDF library (mupdf)
;; Look for the "domain socket of CUPS" in /var/run/cups.
"--localstatedir=/var"
;; Free software for the win.
"--with-acroread-path=evince"
,(string-append "--with-test-font-path="
(assoc-ref %build-inputs "font-dejavu")
"/share/fonts/truetype/DejaVuSans.ttf")
@@ -102,34 +99,7 @@
(assoc-ref %build-inputs "bash")
"/bin/bash")
,(string-append "--with-rcdir="
(assoc-ref %outputs "out") "/etc/rc.d"))
#:phases (modify-phases %standard-phases
(add-after 'unpack 'patch-foomatic-hardcoded-file-names
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Foomatic has hardcoded file names we need to fix.
(let ((out (assoc-ref outputs "out"))
(gs (assoc-ref inputs "ghostscript")))
(substitute* "filter/foomatic-rip/foomaticrip.c"
(("/usr/local/lib/cups/filter")
(string-append out "/lib/cups/filter")))
#t)))
(add-after 'install 'wrap-filters
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Some filters expect to find 'gs' in $PATH. We cannot
;; just hard-code its absolute file name in the source
;; because foomatic-rip, for example, has tests like
;; 'startswith(cmd, "gs")'.
(let ((out (assoc-ref outputs "out"))
(ghostscript (assoc-ref inputs "ghostscript")))
(for-each (lambda (file)
(wrap-program file
`("PATH" ":" prefix
(,(string-append ghostscript
"/bin")))))
(find-files (string-append
out "/lib/cups/filter")))
#t))))))
(assoc-ref %outputs "out") "/etc/rc.d"))))
(native-inputs
`(("glib" ,glib "bin") ; for gdbus-codegen
("pkg-config" ,pkg-config)))
@@ -138,7 +108,7 @@
("fontconfig" ,fontconfig)
("freetype" ,freetype)
("font-dejavu" ,font-dejavu) ; also needed by test suite
("ghostscript" ,ghostscript/cups)
("ghostscript" ,(force ghostscript/cups))
("ijs" ,ijs)
("dbus" ,dbus)
("lcms" ,lcms)
@@ -171,7 +141,7 @@ filters for the PDF-centric printing workflow introduced by OpenPrinting.")
(define-public cups-minimal
(package
(name "cups-minimal")
(version "2.2.4")
(version "2.2.1")
(source
(origin
(method url-fetch)
@@ -179,7 +149,7 @@ filters for the PDF-centric printing workflow introduced by OpenPrinting.")
version "/cups-" version "-source.tar.gz"))
(sha256
(base32
"1k4qxafmapq6hzbkh273fdyzkj9alw6ppwz5k933bhsi4svlsvar"))))
"1m8rwhbk0l8n19iwm51r2569jj15d0x6mpqhfig0bk3pm4577f43"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@@ -218,13 +188,13 @@ filters for the PDF-centric printing workflow introduced by OpenPrinting.")
(home-page "https://www.cups.org")
(synopsis "The Common Unix Printing System")
(description
"CUPS is a printing system that uses the Internet Printing Protocol
(@dfn{IPP}). It provides System V and BSD command-line interfaces, as well
"CUPS is a printing system that uses the Internet Printing
Protocol (IPP). It provides System V and BSD command-line interfaces, as well
as a Web interface and a C programming interface to manage printers and print
jobs. It supports printing to both local (parallel, serial, USB) and
networked printers, and printers can be shared from one computer to another.
Internally, CUPS uses PostScript Printer Description (@dfn{PPD}) files to
describe printer capabilities and features, and a wide variety of generic and
Internally, CUPS uses PostScript Printer Description (PPD) files to describe
printer capabilities and features and a wide variety of generic and
device-specific programs to convert and print many types of files.")
(license license:gpl2)))
@@ -369,14 +339,14 @@ device-specific programs to convert and print many types of files.")
(define-public hplip
(package
(name "hplip")
(version "3.17.10")
(version "3.16.11")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/hplip/hplip/" version
"/hplip-" version ".tar.gz"))
(sha256
(base32
"0v27hg856b5z2rilczcbfgz8ksxn0n810g1glac3mxkj8qbl8wqg"))))
"094vkyr0rjng72m13dgr824cdl7q20x23qjxzih4w7l9njn0rqpn"))))
(build-system gnu-build-system)
(home-page "http://hplipopensource.com/")
(synopsis "HP Printer Drivers")
@@ -475,155 +445,3 @@ device-specific programs to convert and print many types of files.")
;; TODO: Make hp-setup find python-dbus.
("python-dbus" ,python-dbus)))
(native-inputs `(("pkg-config" ,pkg-config)))))
(define-public foomatic-filters
(package
(name "foomatic-filters")
(version "4.0.12")
(source (origin
(method url-fetch)
(uri (string-append
"http://www.openprinting.org/download/foomatic/"
name "-" version ".tar.gz"))
(sha256
(base32
"17w26r15094j4fqifa7f7i7jad4gsy9zdlq69kffrykcw31qx3q8"))
(patches
(search-patches "foomatic-filters-CVE-2015-8327.patch"
"foomatic-filters-CVE-2015-8560.patch"))))
(build-system gnu-build-system)
(home-page
"https://wiki.linuxfoundation.org/openprinting/database/foomatic")
(native-inputs
`(("perl" ,perl)
("pkg-config" ,pkg-config)))
(inputs
`(("dbus" ,dbus)
("a2ps" ,a2ps)))
(arguments
'( ;; Specify the installation directories.
#:configure-flags (list (string-append "ac_cv_path_CUPS_BACKENDS="
(assoc-ref %outputs "out")
"/lib/cups/backend")
(string-append "ac_cv_path_CUPS_FILTERS="
(assoc-ref %outputs "out")
"/lib/cups/filter")
(string-append "ac_cv_path_PPR_INTERFACES="
(assoc-ref %outputs "out")
"/lib/ppr/interfaces")
(string-append "ac_cv_path_PPR_LIB="
(assoc-ref %outputs "out")
"/lib/ppr/lib")
;; For some reason these are misdiagnosed.
"ac_cv_func_malloc_0_nonnull=yes"
"ac_cv_func_realloc_0_nonnull=yes")
#:test-target "tests"))
(synopsis "Convert PostScript to the printer's native format")
(description
"This package contains filter scripts used by the printer spoolers to
convert the incoming PostScript data into the printer's native format using a
printer/driver specific, but spooler-independent PPD file.")
(license license:gpl2+)))
(define-public foo2zjs
(package
;; The tarball is called "foo2zjs", but the web page talks about
;; "foo2xqx". Go figure!
(name "foo2zjs")
(version "201709")
(source (origin
(method url-fetch)
;; XXX: This is an unversioned URL!
(uri "http://foo2zjs.rkkda.com/foo2zjs.tar.gz")
(sha256
(base32
"0amjj3jr6s6h7crzxyx11v31sj0blz7k5c2vycz4gn8cxlmk3c7w"))))
(build-system gnu-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(substitute* (find-files "." "^Makefile$")
;; Set the installation directory.
(("^PREFIX[[:blank:]]*=.*$")
(string-append "PREFIX = "
(assoc-ref outputs "out")
"\n"))
(("^UDEVBIN[[:blank:]]*=.*$")
"UDEVBIN = $(PREFIX)/bin\n")
;; Don't try to chown/chgrp the installed files.
(("-oroot")
"")
(("-glp")
"")
;; Placate the dependency checks.
(("/usr/include/stdio.h")
"/etc/passwd")
(("/usr/")
"$(PREFIX)/")
;; Ensure fixed timestamps in man pages.
(("^MODTIME[[:blank:]]*=.*$")
"MODTIME = echo Thu Jan 01 01:00:00 1970\n"))
#t))
(add-after 'install 'remove-pdf
(lambda* (#:key outputs #:allow-other-keys)
;; Remove 'manual.pdf' which is (1) useless (it's a
;; concatenation of man pages), and (2) not
;; bit-reproducible due to <https://bugs.gnu.org/27593>.
(let ((out (assoc-ref outputs "out")))
(for-each delete-file
(find-files out "^manual\\.pdf$"))
#t))))
#:parallel-build? #f ;broken makefile
#:tests? #f ;no tests
#:make-flags '("CC=gcc")))
(inputs
`(("ghostscript" ,ghostscript)
("foomatic-filters" ,foomatic-filters))) ;for 'foomatic-rip'
(native-inputs
`(("bc" ,bc)
("groff" ,groff)))
(home-page "http://foo2xqx.rkkda.com/")
(synopsis "Printer driver for XQX stream protocol")
(description
"This package provides a printer driver notably for the ZJS and XQX
protocols, which cover printers made by Konica, HP (LaserJet), Oki, Samsung,
and more. See @file{README} for details.")
(license license:gpl2+)))
(define-public escpr
(package
(name "escpr")
(version "1.6.17")
;; XXX: This currently works. But it will break as soon as a newer
;; version is available since the URLs for older versions are not
;; preserved. An alternative source will be added as soon as
;; available.
(source (origin
(method url-fetch)
;; The uri has to be chopped up in order to satisfy guix lint.
(uri (string-append "https://download3.ebz.epson.net/dsc/f/03/00/06/66/09/"
"4ac2bf69bb1ddf4a9ad525596615cbb40fe4dad5/"
"epson-inkjet-printer-escpr-1.6.17-1lsb3.2.tar.gz"))
(sha256
(base32
"0m6v1wdavw4r25jfywqchsx0v9ss1l5fr8vq9d0d8cmjnz8mqblv"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
`(,(string-append "--prefix="
(assoc-ref %outputs "out"))
,(string-append "--with-cupsfilterdir="
(assoc-ref %outputs "out") "/lib/cups/filter")
,(string-append "--with-cupsppddir="
(assoc-ref %outputs "out") "/share/ppd"))))
(inputs `(("cups" ,cups-minimal)))
(synopsis "ESC/P-R printer driver")
(description
"This package provides a filter for the Common UNIX Printing
System (CUPS). It offers high-quality printing with Seiko Epson color ink jet
printers. It can only be used with printers that support the Epson ESC/P-R
language.")
(home-page "http://download.ebz.epson.net/dsc/search/01/search")
(license license:gpl2+)))
+8 -10
View File
@@ -4,7 +4,6 @@
;;; Copyright © 2015 Tomáš Čech <sleep_walker@suse.cz>
;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -25,7 +24,6 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix utils)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
#:use-module (gnu packages compression)
@@ -42,15 +40,15 @@
(define-public curl
(package
(name "curl")
(version "7.55.1")
(replacement curl-7.57.0)
(replacement curl-7.54.1)
(version "7.53.0")
(source (origin
(method url-fetch)
(uri (string-append "https://curl.haxx.se/download/curl-"
version ".tar.xz"))
version ".tar.lzma"))
(sha256
(base32
"1dvbcwcar3dv488h9378hy145ma3ws2fwpbr6mgszd7chipcmbry"))))
"1k0i31xygb804c61llhin5wbpcscg4gfqmbxcfkpdr1alwh7igrq"))))
(build-system gnu-build-system)
(outputs '("out"
"doc")) ;1.2 MiB of man3 pages
@@ -123,15 +121,15 @@ tunneling, and so on.")
"See COPYING in the distribution."))
(home-page "https://curl.haxx.se/")))
(define-public curl-7.57.0
(define curl-7.54.1
(package
(inherit curl)
(version "7.57.0")
(version "7.54.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://curl.haxx.se/download/curl-"
version ".tar.xz"))
version ".tar.lzma"))
(sha256
(base32
"0y3qbjjcxhcvm1yawp3spfssjbskv0g6gyzld6ckif5pf8ygvxpm"))))))
"0vnv3cz0s1l5cjby86hm0x6pgzqijmdm97qa9q5px200956z6yib"))))))
+1 -1
View File
@@ -65,4 +65,4 @@ library makes supporting various SASL mechanisms easy for both client and
server writers.")
(license (license:non-copyleft "file://COPYING"
"See COPYING in the distribution."))
(home-page "https://cyrusimap.org/sasl/")))
(home-page "http://cyrusimap.web.cmu.edu")))
+92 -1045
View File
File diff suppressed because it is too large Load Diff
+3 -3
View File
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -28,7 +28,7 @@
(define-public datamash
(package
(name "datamash")
(version "1.2")
(version "1.1.1")
(source
(origin
(method url-fetch)
@@ -36,7 +36,7 @@
version ".tar.gz"))
(sha256
(base32
"15jrv3ly0vgvwwi2qjmhi39n7wrklwifdk961wwfaxyc5jr6zm78"))))
"06w0pc828qsabmrlh7bc2zwc823xzxy89paaf37f6bipsyrij222"))))
(native-inputs
`(("which" ,which) ;for tests
("perl" ,perl))) ;for help2man
+3 -6
View File
@@ -22,9 +22,7 @@
#:use-module (guix licenses)
#:use-module (guix packages)
#:use-module (gnu packages)
#:use-module (gnu packages check)
#:use-module (gnu packages python)
#:use-module (gnu packages python-web))
#:use-module (gnu packages python))
(define-public radicale
(package
@@ -57,13 +55,13 @@ clients.")
(define-public vdirsyncer
(package
(name "vdirsyncer")
(version "0.16.3")
(version "0.16.0")
(source (origin
(method url-fetch)
(uri (pypi-uri name version))
(sha256
(base32
"0dpwbfi97ksijqng191659m8k0v215y8ld95w8gb126m4m96qpzw"))))
"0n59mhcrm24bncnphigqqnifivxgsg87pidz6gshijkkjdwzmnyg"))))
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@@ -91,7 +89,6 @@ clients.")
("python-pytest" ,python-pytest)
("python-pytest-localserver" ,python-pytest-localserver)
("python-pytest-subtesthack" ,python-pytest-subtesthack)
("python-urllib3" ,python-urllib3)
("python-wsgi-intercept" ,python-wsgi-intercept)
("radicale" ,radicale)))
(propagated-inputs
+56 -79
View File
@@ -1,6 +1,5 @@
;;; 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>
;;; Copyright © 2014, 2015, 2016 Eric Bavier <bavier@member.fsf.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -33,7 +32,7 @@
#:use-module (gnu packages llvm)
#:use-module (gnu packages perl)
#:use-module (gnu packages pretty-print)
#:use-module (gnu packages virtualization)
#:use-module (gnu packages qemu)
#:use-module (ice-9 match)
#:use-module (srfi srfi-1))
@@ -58,24 +57,23 @@
`(("perl" ,perl)))
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
;; Makefile contains no install target
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(doc (string-append out "/share/doc/delta-" ,version)))
(begin
(mkdir-p bin)
(mkdir-p doc)
(for-each (lambda (h)
(install-file h doc))
`("License.txt" ,@(find-files "www" ".*\\.html")))
(for-each (lambda (b)
(install-file b bin))
`("delta" "multidelta" "topformflat"))))
#t))
(delete 'configure))))
(alist-replace
'install
(lambda* (#:key outputs #:allow-other-keys)
;; Makefile contains no install target
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(doc (string-append out "/share/doc/delta-" ,version)))
(begin
(mkdir-p bin)
(mkdir-p doc)
(for-each (lambda (h)
(install-file h doc))
`("License.txt" ,@(find-files "www" ".*\\.html")))
(for-each (lambda (b)
(install-file b bin))
`("delta" "multidelta" "topformflat")))))
(alist-delete 'configure %standard-phases))))
(home-page "http://delta.tigris.org/")
(synopsis "Heuristical file minimizer")
(description
@@ -115,24 +113,23 @@ program to exhibit a bug.")
("sys-cpu" ,perl-sys-cpu)
("term-readkey" ,perl-term-readkey)))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'install 'set-load-paths
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Tell creduce where to find the perl modules it needs.
(let* ((out (assoc-ref outputs "out"))
(prog (string-append out "/bin/creduce")))
(wrap-program
prog
`("PERL5LIB" ":" prefix
,(map (lambda (p)
(string-append (assoc-ref inputs p)
"/lib/perl5/site_perl/"
,(package-version perl)))
'("term-readkey" "exporter-lite"
"file-which" "getopt-tabular"
"regex-common" "sys-cpu")))))
#t)))))
`(#:phases (alist-cons-after
'install 'set-load-paths
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Tell creduce where to find the perl modules it needs.
(let* ((out (assoc-ref outputs "out"))
(prog (string-append out "/bin/creduce")))
(wrap-program
prog
`("PERL5LIB" ":" prefix
,(map (lambda (p)
(string-append (assoc-ref inputs p)
"/lib/perl5/site_perl/"
,(package-version perl)))
'("term-readkey" "exporter-lite"
"file-which" "getopt-tabular"
"regex-common" "sys-cpu"))))))
%standard-phases)))
(home-page "http://embed.cs.utah.edu/creduce")
(synopsis "Reducer for interesting code")
(description
@@ -169,15 +166,12 @@ 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.49b") ;It seems all releases have the 'b' suffix
(version "2.15b") ;It seems all releases have the 'b' suffix
(source
(origin
(method url-fetch)
@@ -185,7 +179,7 @@ tools that process C/C++ code.")
"afl-" version ".tgz"))
(sha256
(base32
"1lc8mpwlbyb1iil9961yfysp8l2l4nw0s07781m1haiz4jq2rigp"))))
"04n2jfkchpz6a07w694b0im1vcmc3220ryqcaasa7vix7784wzs2"))))
(build-system gnu-build-system)
(inputs
`(("custom-qemu"
@@ -240,20 +234,6 @@ 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
@@ -263,7 +243,10 @@ tools that process C/C++ code.")
(symlink (string-append qemu "/bin/qemu-" ,machine)
(string-append out "/bin/afl-qemu-trace"))
#t)))
(delete 'check)))) ; Tests are run during 'install phase.
(delete 'check))))
(supported-systems (fold delete
%supported-systems
'("armhf-linux" "mips64el-linux")))
(home-page "http://lcamtuf.coredump.cx/afl")
(synopsis "Security-oriented fuzzer")
(description
@@ -304,26 +287,20 @@ down the road.")
;; not accept a directory name instead. To let the gnu-build-system's
;; patch-* phases work properly, we unpack the source first, then
;; repack before the configure phase.
(let ((make-dir (string-append "make-" (package-version gnu-make))))
`(#:configure-flags '("--with-make-tar=./make.tar.xz")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'unpack-make
(lambda* (#:key inputs #:allow-other-keys)
(zero? (system* "tar" "xf" (assoc-ref inputs "make-source")))))
(add-after 'unpack-make 'set-default-shell
(lambda _
;; Taken mostly directly from (@ (gnu packages base) gnu-make)
(substitute* (string-append ,make-dir "/job.c")
(("default_shell = .*$")
(format #f "default_shell = \"~a\";\n"
(which "sh"))))))
(add-before 'configure 'repack-make
(lambda _
(zero? (system* "tar" "cJf" "./make.tar.xz" ,make-dir))))
(add-after 'unpack 'bootstrap
(lambda _
(zero? (system* "autoreconf" "-vfi"))))))))
`(#:configure-flags '("--with-make-tar=./make.tar.xz")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'unpack-make
(lambda* (#:key inputs #:allow-other-keys)
(zero? (system* "tar" "xf" (assoc-ref inputs "make-source")))))
(add-before 'configure 'repack-make
(lambda _
(zero? (system* "tar" "cJf" "./make.tar.xz"
(string-append "make-"
,(package-version gnu-make))))))
(add-before 'configure 'bootstrap
(lambda _
(zero? (system* "autoreconf" "-vfi")))))))
(home-page "https://github.com/losalamos/stress-make")
(synopsis "Expose race conditions in Makefiles")
(description
+3 -3
View File
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flasher.co.il>
;;; Copyright © 2016 Efraim Flashner <efraim@flasher.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -27,7 +27,7 @@
(define-public dejagnu
(package
(name "dejagnu")
(version "1.6.1")
(version "1.6")
(source
(origin
(method url-fetch)
@@ -35,7 +35,7 @@
version ".tar.gz"))
(sha256
(base32
"14hnq1mh91vqprc43xdy4f15sycw6fbajrh7zi6cw2kyg6xjhnxz"))))
"0qypaakd2065jgpcv84zcsibl8gph3p334gb2qdmhsrbirhlmdh0"))))
(build-system gnu-build-system)
(inputs `(("expect" ,expect)))
(arguments
+19 -6
View File
@@ -17,7 +17,7 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages direct-connect)
#:use-module (guix build-system scons)
#:use-module (guix build-system python)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
@@ -44,11 +44,23 @@
(sha256
(base32
"12i92hirmwryl1qy0n3jfrpziwzb82f61xca9jcjwyilx502f0b6"))))
(build-system scons-build-system)
(build-system python-build-system)
(arguments
`(#:scons ,scons-python2
#:scons-flags (list (string-append "PREFIX=" %output))
#:tests? #f)) ; no tests
`(#:python ,python-2
#:tests? #f ; no tests
#:phases
;; TODO: Add scons-build-system and use it here.
(modify-phases %standard-phases
(delete 'configure)
(replace 'build
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(mkdir-p out)
(zero? (system* "scons" (string-append "PREFIX=" out)
"-j" (number->string (parallel-job-count)))))))
(replace 'install
(lambda _
(zero? (system* "scons" "install")))))))
(inputs
`(("boost" ,boost)
("bzip2" ,bzip2)
@@ -59,7 +71,8 @@
(native-inputs
`(("bazaar" ,bazaar)
("gettext-minimal" ,gettext-minimal)
("pkg-config" ,pkg-config)))
("pkg-config" ,pkg-config)
("scons" ,scons)))
(home-page "https://launchpad.net/linuxdcpp/")
(synopsis "Direct Connect client")
(description "LinuxDC++ is a Direct Connect (DC) client. Direct Connect
+13 -48
View File
@@ -8,7 +8,6 @@
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -31,7 +30,6 @@
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system trivial)
#:use-module (guix build-system python)
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages docbook)
@@ -92,7 +90,7 @@ tables. It includes a library and command-line utility.")
(define-public fdisk
(package
(name "fdisk")
(version "2.0.0a1")
(version "2.0.0a")
(source
(origin
(method url-fetch)
@@ -100,27 +98,13 @@ tables. It includes a library and command-line utility.")
version ".tar.gz"))
(sha256
(base32
"1d8za79kw8ihnp2br084rgyjv9whkwp7957rzw815i0izx6xhqy9"))))
"04nd7civ561x2lwcmxhsqbprml3178jfc58fy1v7hzqg5k4nbhy3"))))
(build-system gnu-build-system)
(inputs
`(("gettext" ,gettext-minimal)
("guile" ,guile-1.8)
("util-linux" ,util-linux)
("parted" ,parted)))
;; The build neglects to look for its own headers in its own tree. A next
;; release should fix this, but may never come: GNU fdisk looks abandoned.
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'skip-broken-header-probes
(lambda _
(substitute* "backend/configure"
(("gnufdisk-common.h .*") "\n"))
#t)))
#:make-flags (list (string-append "CPPFLAGS="
" -I../common/include "
" -I../debug/include "
" -I../exception/include"))))
(home-page "https://www.gnu.org/software/fdisk/")
(synopsis "Low-level disk partitioning and formatting")
(description
@@ -132,7 +116,7 @@ tables, and it understands a variety of different formats.")
(define-public gptfdisk
(package
(name "gptfdisk")
(version "1.0.3")
(version "1.0.1")
(source
(origin
(method url-fetch)
@@ -140,7 +124,7 @@ tables, and it understands a variety of different formats.")
version "/" name "-" version ".tar.gz"))
(sha256
(base32
"0p0vr67lnqdsgdv2y144xmjqa1a2nijrrd3clc8dc2f46pn5mzc9"))))
"1izazbyv5n2d81qdym77i8mg9m870hiydmq4d0s51npx5vp8lk46"))))
(build-system gnu-build-system)
(inputs
`(("gettext" ,gettext-minimal)
@@ -170,9 +154,9 @@ tables, and it understands a variety of different formats.")
(home-page "http://www.rodsbooks.com/gdisk/")
(synopsis "Low-level GPT disk partitioning and formatting")
(description "GPT fdisk (aka gdisk) is a text-mode partitioning tool that
works on Globally Unique Identifier (@dfn{GUID}) Partition Table (@dfn{GPT})
disks, rather than on the older Master Boot Record (@dfn{MBR}) partition
scheme.")
works on Globally Unique Identifier (GUID) Partition Table (GPT) disks, rather
than on the more common (through 2009) Master Boot Record (MBR) partition
tables.")
(license license:gpl2)))
(define-public ddrescue
@@ -216,7 +200,7 @@ to recover data more efficiently by only reading the necessary blocks.")
`(#:make-flags (list (string-append "PREFIX=" %output)
"CC=gcc")))
(native-inputs
`(("xxd" ,xxd))) ; for tests
`(("xxd" ,vim))) ; for tests
(home-page "https://github.com/dosfstools/dosfstools")
(synopsis "Utilities for making and checking MS-DOS FAT file systems")
(description
@@ -261,7 +245,7 @@ and a @command{fsck.vfat} compatibility symlink for use in an initrd.")
(define-public sdparm
(package
(name "sdparm")
(version "1.10")
(version "1.09")
(source
(origin
(method url-fetch)
@@ -269,7 +253,7 @@ and a @command{fsck.vfat} compatibility symlink for use in an initrd.")
name "-" version ".tar.xz"))
(sha256
(base32
"1jjq3lzgfy4r76rc26q02lv4wm5cb4dx5nh913h489zjrr4f3jbx"))))
"0jakqyjwi72zqjzss04bally0xl0lc4710mx8da08vpmir1hfphg"))))
(build-system gnu-build-system)
(home-page "http://sg.danny.cz/sg/sdparm.html")
(synopsis "Provide access to SCSI device parameters")
@@ -319,14 +303,14 @@ and can dramatically shorten the lifespan of the drive if left unchecked.")
(define-public gparted
(package
(name "gparted")
(version "0.30.0")
(version "0.28.1")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/gparted/gparted/gparted-"
version "/gparted-" version ".tar.gz"))
(sha256
(base32 "0jngbsbvg8k8vbpsphqbk8br2cbmxhabbm2c5bmxm2q5zvpr64fk"))))
(base32 "0cyk8lpimm6wani8khw0szwqkgw5wpq2mfnfxkbgfm2774a1z2bn"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; Tests require a network connection.
@@ -346,7 +330,7 @@ and can dramatically shorten the lifespan of the drive if left unchecked.")
(native-inputs
`(("intltool" ,intltool)
("pkg-config" ,pkg-config)))
(home-page "https://gparted.org/")
(home-page "https://sourceforge.net/projects/gparted/")
(synopsis "Partition editor to graphically manage disk partitions")
(description "GParted is a GNOME partition editor for creating,
reorganizing, and deleting disk partitions. It uses libparted from the parted
@@ -355,25 +339,6 @@ permit managing file systems not included in libparted.")
;; The home page says GPLv2, but the source code says GPLv2+.
(license license:gpl2+)))
(define-public pydf
(package
(name "pydf")
(version "12")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pydf" version))
(sha256
(base32
"0f8ly8xyp93i2hm9c0qjqd4y86nz73axw2f09z01mszwmg1sfivz"))))
(build-system python-build-system)
(home-page "http://kassiopeia.juls.savba.sk/~garabik/software/pydf/")
(synopsis "Colourised @command{df} clone")
(description "All-singing, all-dancing, fully colourised @command{df} clone
written in Python. It displays the amount of disk space available on the
mounted filesystems, using different colours for different types of file
systems. Output format is completely customizable.")
(license license:public-domain)))
(define-public f3
(package
+14 -32
View File
@@ -4,7 +4,6 @@
;;; Copyright © 2014 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -133,7 +132,7 @@ Qt-style API for Wayland clients.")
(define-public sddm
(package
(name "sddm")
(version "0.16.0")
(version "0.14.0")
(source (origin
(method url-fetch)
(uri (string-append
@@ -142,15 +141,14 @@ Qt-style API for Wayland clients.")
"sddm-" version ".tar.xz"))
(sha256
(base32
"0fwf1wsdak5yglykfyq4wbx9g9gi079n8ncjrdynz17hwwiql4z9"))))
"0y3pn8g2qj7q20zkmbasrfsj925lfzizk63sfrvzf84bc5c84d3y"))))
(build-system cmake-build-system)
(native-inputs
`(("extra-cmake-modules" ,extra-cmake-modules)
("pkg-config" ,pkg-config)
("qttools" ,qttools)))
(inputs
`(("elogind" ,elogind)
("glib" ,glib)
`(("glib" ,glib)
("libxcb" ,libxcb)
("libxkbcommon" ,libxkbcommon)
("linux-pam" ,linux-pam)
@@ -165,8 +163,6 @@ Qt-style API for Wayland clients.")
;; Option added by enable wayland greeters PR
"-DENABLE_WAYLAND=ON"
"-DENABLE_PAM=ON"
;; Both flags are required for elogind support.
"-DNO_SYSTEMD=ON" "-DUSE_ELOGIND=ON"
"-DCONFIG_FILE=/etc/sddm.conf"
;; Set path to /etc/login.defs
;; Alternatively use -DUID_MIN and -DUID_MAX
@@ -184,19 +180,6 @@ Qt-style API for Wayland clients.")
(guix build qt-utils))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'embed-loginctl-reference
(lambda _
(substitute* "CMakeLists.txt"
(("/usr/bin/loginctl") (which "loginctl")))
#t))
(add-before 'configure 'fix-qml-include
(lambda _
;; Make sure QtQml is found when building the helper.
;; See <https://github.com/sddm/sddm/pull/918>.
(substitute* "src/helper/CMakeLists.txt"
(("target_link_libraries\\(sddm-helper")
"target_link_libraries(sddm-helper Qt5::Qml"))
#t))
(add-after 'install 'wrap-programs
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
@@ -346,18 +329,17 @@ GTK+, lets you select a desktop session and log in to it.")
(native-inputs
`(("pkg-config" ,pkg-config)))
(arguments
'(#:phases
(modify-phases %standard-phases
(add-before 'configure 'set-new-etc-location
(lambda _
(substitute* "CMakeLists.txt"
(("/etc")
(string-append (assoc-ref %outputs "out") "/etc"))
(("install.*systemd.*")
;; The build system's logic here is: if "Linux", then
;; "systemd". Strip that.
""))
#t)))
'(#:phases (alist-cons-before
'configure 'set-new-etc-location
(lambda _
(substitute* "CMakeLists.txt"
(("/etc")
(string-append (assoc-ref %outputs "out") "/etc"))
(("install.*systemd.*")
;; The build system's logic here is: if "Linux", then
;; "systemd". Strip that.
"")))
%standard-phases)
#:configure-flags '("-DUSE_PAM=yes"
"-DUSE_CONSOLEKIT=no")
#:tests? #f))
+4 -28
View File
@@ -2,7 +2,6 @@
;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 ng0 <contact.ng0@cryptolab.net>
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -27,21 +26,18 @@
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages databases)
#:use-module (gnu packages check)
#:use-module (gnu packages python)
#:use-module (gnu packages python-web)
#:use-module (gnu packages time))
#:use-module (gnu packages python))
(define-public python-django
(package
(name "python-django")
(version "1.10.8")
(version "1.10.7")
(source (origin
(method url-fetch)
(uri (pypi-uri "Django" version))
(sha256
(base32
"1fwqqh2zbcy9dy0lnvk338s11llnnfz2k56bf84w0wv56ayq7vyl"))))
"1f5hnn2dzfr5szk4yc47bs4kk2nmrayjcvgpqi2s4l13pjfpfgar"))))
(build-system python-build-system)
(arguments
'(#:phases
@@ -154,7 +150,7 @@ with arguments to the field constructor.")
`(("python-django" ,python-django)
("python-setuptools-scm" ,python-setuptools-scm)))
(propagated-inputs
`(("python-pytest" ,python-pytest-3.0)))
`(("python-pytest" ,python-pytest)))
(home-page "http://pytest-django.readthedocs.org/")
(synopsis "Django plugin for py.test")
(description "Pytest-django is a plugin for py.test that provides a set of
@@ -208,26 +204,6 @@ them do this.")
(base32
"1fslqc5qqb0b66yscvkyjwfv8cnbfx5nlkpnwimyb3pf1nc1w7r3"))))
(build-system python-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
;; TODO: Tagging the tests requiring the web could be done upstream.
(add-before 'check 'skip-test-requiring-network-access
(lambda _
(substitute* "allauth/socialaccount/providers/openid/tests.py"
(("def test_login")
"from django.test import tag
@tag('requires-web')
def test_login"))))
(replace 'check
(lambda _
(setenv "DJANGO_SETTINGS_MODULE" "test_settings")
(zero? (system*
"django-admin"
"test"
"allauth"
"--verbosity=2"
"--exclude-tag=requires-web")))))))
(propagated-inputs
`(("python-openid" ,python-openid)
("python-requests" ,python-requests)
-8
View File
@@ -34,14 +34,6 @@
(base32
"0psh3zl9dj4n4r3lx25390nx34xz0bg0ql48zdskhq354ljni5p6"))))
(build-system gnu-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
(add-after 'unpack 'reproducible
(lambda _
;; Ensure there are no timestamps in .svgz files.
(substitute* "desktopfiles/Makefile.in"
(("gzip") "gzip -n"))
#t)))))
(home-page "http://djvu.sourceforge.net/")
(synopsis "Implementation of DjVu, the document format")
(description "DjVuLibre is an implementation of DjVu,
+31 -31
View File
@@ -2,7 +2,7 @@
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me@tobias.gr>
@@ -59,7 +59,7 @@
(define-public dnsmasq
(package
(name "dnsmasq")
(version "2.78")
(version "2.76")
(source (origin
(method url-fetch)
(uri (string-append
@@ -67,7 +67,7 @@
version ".tar.xz"))
(sha256
(base32
"0ar5h5v3kas2qx2wgy5iqin15gc4jhqrqs067xacgc3lii1rz549"))))
"15lzih6671gh9knzpl8mxchiml7z5lfqzr7jm2r0rjhrxs6nk4jb"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@@ -75,7 +75,7 @@
`(("dbus" ,dbus)))
(arguments
`(#:phases
(modify-phases %standard-phases (delete 'configure))
(alist-delete 'configure %standard-phases)
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
"CC=gcc"
"COPTS=\"-DHAVE_DBUS\"")
@@ -99,7 +99,7 @@ and BOOTP/TFTP for network booting of diskless machines.")
(define-public isc-bind
(package
(name "bind")
(version "9.11.2")
(version "9.11.1-P2")
(source (origin
(method url-fetch)
(uri (string-append
@@ -107,7 +107,7 @@ and BOOTP/TFTP for network booting of diskless machines.")
version ".tar.gz"))
(sha256
(base32
"0yn7wgi2y8mpmvbjbkl4va7p0xsnn48m4yjx6ynb1hzp423asikz"))))
"19gyh7yij6cpvk5b199ghhns5wmsz67d2rpgvl91dbkm2m1wclxz"))))
(build-system gnu-build-system)
(outputs `("out" "utils"))
(inputs
@@ -181,7 +181,7 @@ high-volume and high-reliability applications. The name BIND stands for
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'autoreconf
(add-before 'configure 'autoreconf
(lambda _
;; Re-generate build files due to unbundling ltdl.
;; TODO: Prevent generating new libltdl and building it.
@@ -229,7 +229,7 @@ servers is included, and an up-to-date version is available at
#:tests? #f
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'create-configure
(add-before 'configure 'create-configure
(lambda _
(zero? (system* "make" "configure")))))))
(native-inputs
@@ -284,7 +284,7 @@ asynchronous fashion.")
(define-public unbound
(package
(name "unbound")
(version "1.6.7")
(version "1.6.3")
(source
(origin
(method url-fetch)
@@ -292,7 +292,7 @@ asynchronous fashion.")
version ".tar.gz"))
(sha256
(base32
"17qwfmlls0w9kpkya3dlpn44b3kr87wsswzg3gawc13hh8yx8ysf"))))
"0pw4m4z5qspsagxzbjb61xq5bhd57amw26xqvqzi6b8d3mf6azjc"))))
(build-system gnu-build-system)
(outputs '("out" "python"))
(native-inputs
@@ -443,17 +443,17 @@ served by AS112. Stub and forward zones are supported.")
(define-public yadifa
(package
(name "yadifa")
(version "2.2.6")
(version "2.2.4")
(source
(let ((build "7246"))
(let ((revision "6924"))
(origin
(method url-fetch)
(uri
(string-append "http://cdn.yadifa.eu/sites/default/files/releases/"
name "-" version "-" build ".tar.gz"))
name "-" version "-" revision ".tar.gz"))
(sha256
(base32
"041a35f5jz2wcn8pxk1m7b2qln2wbvj4ddwb0a53lqabl912xi6p")))))
"060ydcfn9876bs6p5xi3p1k20ca547f4jck25r5x1hnxjlv7ss03")))))
(build-system gnu-build-system)
(native-inputs
`(("which" ,which)))
@@ -470,7 +470,10 @@ served by AS112. Stub and forward zones are supported.")
"--enable-shared" "--disable-static"
"--enable-messages" "--enable-ctrl"
"--enable-nsec" "--enable-nsec3"
"--enable-tsig" "--enable-caching")))
"--enable-tsig" "--enable-caching"
;; NSID is a rarely-used debugging aid, that also
;; causes the build to fail. Just disable it.
"--disable-nsid")))
(home-page "http://www.yadifa.eu/")
(synopsis "Authoritative DNS name server")
(description "YADIFA is an authoritative name server for the @dfn{Domain
@@ -483,27 +486,31 @@ Extensions} (DNSSEC).")
(define-public knot
(package
(name "knot")
(version "2.6.3")
(version "2.5.2")
(source (origin
(method url-fetch)
(uri (string-append "https://secure.nic.cz/files/knot-dns/"
name "-" version ".tar.xz"))
(sha256
(base32
"143pk2124liiq1r4ja1s579nbv3hm2scbbfbfclc2pw60r07mcig"))
"1sgmw8k9qccc7bgxbwrvahdinj1bjq90iza55rxj199mxsj72ri8"))
(modules '((guix build utils)))
(snippet
'(begin
;; Delete bundled libraries.
;; Remove bundled libraries and dependencies on them.
(substitute* "configure"
(("src/contrib/dnstap/Makefile") ""))
(substitute* "src/Makefile.in"
(("contrib/dnstap ") ""))
(with-directory-excursion "src/contrib"
(delete-file-recursively "lmdb"))
(for-each delete-file-recursively
(list "dnstap" "lmdb")))
#t))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("fstrm" ,fstrm)
("gnutls" ,gnutls)
`(("gnutls" ,gnutls)
("jansson" ,jansson)
("libcap-ng" ,libcap-ng)
("libedit" ,libedit)
@@ -512,7 +519,6 @@ Extensions} (DNSSEC).")
("lmdb" ,lmdb)
("ncurses" ,ncurses)
("nettle" ,nettle)
("protobuf-c" ,protobuf-c)
;; For pykeymgr, needed to migrate keys from versions <= 2.4.
("python" ,python-2)
@@ -545,7 +551,6 @@ Extensions} (DNSSEC).")
(list "--sysconfdir=/etc"
"--localstatedir=/var"
"--with-module-rosedb=yes" ; serve static records from a database
"--with-module-dnstap=yes" ; allow detailed query logging
(string-append "--with-bash-completions="
(assoc-ref %outputs "out")
"/etc/bash_completion.d"))))
@@ -558,11 +563,6 @@ number of programming techniques to improve speed. For example, the responder
is completely lock-free, resulting in a very high response rate. Other features
include automatic @dfn{DNS Security Extensions} (DNSSEC) signing, dynamic record
synthesis, and on-the-fly re-configuration.")
(license
(list
;; src/contrib/{hat-trie,murmurhash3,openbsd},
;; src/dnssec/contrib/vpool.[ch], and parts of libtap/ are MIT (expat).
license:expat
license:lgpl2.0+ ; parts of scr/contrib/ucw
license:public-domain ; src/contrib/fnv and possibly murmurhash3
license:gpl3+)))) ; everything else
(license (list license:expat ; src/contrib/{hat-trie,murmurhash3}
license:lgpl2.0+ ; parts of scr/contrib/ucw
license:gpl3+)))) ; everything else
+2 -32
View File
@@ -180,41 +180,11 @@ by no means limited to these applications.) This package provides XML DTDs.")
version ".tar.bz2"))
(sha256
(base32
"0pdizc5rjywwzxa1qqhdmba5zr35pbmdwbysalsid7xw87w3kq06"))
(patches (search-patches "dblatex-remove-multirow.patch"))))
"0pdizc5rjywwzxa1qqhdmba5zr35pbmdwbysalsid7xw87w3kq06"))))
(build-system python-build-system)
;; TODO: Add xfig/transfig for fig2dev utility
(inputs
`(("texlive" ,(texlive-union (list texlive-latex-amsfonts
texlive-latex-anysize
texlive-latex-appendix
texlive-latex-changebar
texlive-latex-colortbl
texlive-latex-eepic
texlive-latex-eso-pic
texlive-latex-fancybox
texlive-latex-fancyhdr
texlive-latex-fancyvrb
texlive-latex-float
texlive-latex-footmisc
texlive-latex-hyperref
texlive-latex-jknapltx
texlive-latex-listings
texlive-latex-multirow
texlive-latex-oberdiek
texlive-latex-overpic
texlive-latex-pdfpages
texlive-latex-subfigure
texlive-latex-titlesec
texlive-latex-url
texlive-latex-wasysym
texlive-fonts-amsfonts
texlive-fonts-ec
texlive-fonts-rsfs
texlive-fonts-stmaryrd
texlive-generic-ifxetex)))
`(("texlive" ,texlive)
("imagemagick" ,imagemagick) ;for convert
("inkscape" ,inkscape) ;for svg conversion
("docbook" ,docbook-xml)
+1 -2
View File
@@ -24,8 +24,7 @@
#:use-module (guix git-download)
#:use-module (guix build-system python)
#:use-module (guix utils)
#:use-module (gnu packages python)
#:use-module (gnu packages python-web))
#:use-module (gnu packages python))
(define-public python-docker-py
(package
+1 -1
View File
@@ -4,7 +4,7 @@
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
;;; Copyright © 2016 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2017 Kei Kebreau <kei@openmailbox.org>
;;;
;;; This file is part of GNU Guix.
;;;
+8 -9
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015, 2017 Alex Kost <alezost@gmail.com>
;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -32,16 +32,15 @@
(define-public dunst
(package
(name "dunst")
(version "1.2.0")
(version "1.1.0")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/dunst-project/dunst/archive/v"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
"http://knopwob.org/public/dunst-release/dunst-"
version ".tar.bz2"))
(sha256
(base32
"1bf5fmmj79wlwi8wzir3rd8czyrxfx16w8q7c957123yz1g5ph53"))))
"0w3hilzwanwsp4q6dxbdj6l0mvpg4fq02wf8isll8kmbx9kz2ay7"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f ; no check target
@@ -56,15 +55,15 @@
(inputs
`(("dbus" ,dbus)
("glib" ,glib)
("gtk" ,gtk+-2)
("cairo" ,cairo)
("pango" ,pango)
("libx11" ,libx11)
("libxext" ,libxext)
("libxft" ,libxft)
("libxscrnsaver" ,libxscrnsaver)
("libxinerama" ,libxinerama)
("libxrandr" ,libxrandr)
("libxdg-basedir" ,libxdg-basedir)))
(home-page "https://dunst-project.org/")
(home-page "http://knopwob.org/dunst")
(synopsis "Customizable and lightweight notification daemon")
(description
"Dunst is a highly configurable and minimalistic notification daemon.

Some files were not shown because too many files have changed in this diff Show More