Merge branch 'master' into core-updates

This commit is contained in:
Mark H Weaver 2015-07-19 18:12:34 -04:00
commit 1b4e48d498
98 changed files with 1738 additions and 768 deletions

1
.gitignore vendored
View File

@ -125,3 +125,4 @@ GTAGS
/doc/os-config-bare-bones.texi /doc/os-config-bare-bones.texi
/doc/os-config-desktop.texi /doc/os-config-desktop.texi
/doc/*.1 /doc/*.1
/etc/guix-daemon.service

44
AUTHORS
View File

@ -5,45 +5,5 @@ build daemon whose code comes from Nix (see the manual for details.)
Nix was initially written by Eelco Dolstra; other people have been Nix was initially written by Eelco Dolstra; other people have been
contributing to it. See `nix/AUTHORS' for details. contributing to it. See `nix/AUTHORS' for details.
The fine people listed below have contributed code to GNU Guix (in The list of GNU Guix contributors is now generated from the output of
alphabetical order): 'git log' and written to this file, as can be seen in release tarballs.
Arne Babenhauserheide <arne.babenhauserheide@kit.edu>
Eric Bavier <bavier@member.fsf.org>
Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
Federico Beffa <beffa@fbengineering.ch>
Marek Benc <merkur32@gmail.com>
Amirouche Boubekki <amirouche@hypermove.net>
Sou Bunnbu (宋文武) <iyzsong@gmail.com>
Tomáš Čech <sleep_walker@gnu.org>
Ludovic Courtès <ludo@gnu.org>
John Darrington <jmd@gnu.org>
Ian Denhardt <ian@zenhack.net>
Andreas Enge <andreas@enge.fr>
Alírio Eyng <alirioeyng@gmail.com>
Alexander I. Grafov <grafov@gmail.com>
Joshua Grant <tadni@riseup.net>
Raimon Grau <raimonster@gmail.com>
David Hashe <david.hashe@dhashe.com>
Nikita Karetnikov <nikita@karetnikov.org>
Alex Kost <alezost@gmail.com>
Kevin Lemonnier <lemonnierk@ulrar.net>
Julien Lepiller <julien@lepiller.eu>
Mathieu Lirzin <mthl@openmailbox.org>
Aljosha Papsch <misc@rpapsch.de>
Deck Pickard <deck.r.pickard@gmail.com>
Manolis Ragkousis <manolis837@gmail.com>
Pierre-Antoine Rault <par@rigelk.eu>
Cyril Roelandt <tipecaml@gmail.com>
Alex Sassmannshausen <alex.sassmannshausen@gmail.com>
Cyrill Schenkel <cyrill.schenkel@gmail.com>
Jason Self <j@jxself.org>
Sree Harsha Totakura <sreeharsha@totakura.in>
David Thompson <davet@gnu.org>
Claes Wallin (韋嘉誠) <claes.wallin@greatsinodevelopment.com>
Paul van der Walt <paul@denknerd.org>
Mark H Weaver <mhw@netris.org>
Christopher A. Webber <cwebber@dustycloud.org>
Andy Wingo <wingo@pobox.com>
Ben Woodcroft <b.woodcroft@uq.edu.au>
Ricardo Wurmus <rekado@elephly.net>

View File

@ -279,6 +279,7 @@ EXTRA_DIST = \
build-aux/check-final-inputs-self-contained.scm \ build-aux/check-final-inputs-self-contained.scm \
build-aux/download.scm \ build-aux/download.scm \
build-aux/make-binary-tarball.scm \ build-aux/make-binary-tarball.scm \
build-aux/generate-authors.scm \
srfi/srfi-37.scm.in \ srfi/srfi-37.scm.in \
srfi/srfi-64.scm \ srfi/srfi-64.scm \
srfi/srfi-64.upstream.scm \ srfi/srfi-64.upstream.scm \
@ -389,9 +390,12 @@ gen-ChangeLog:
fi fi
gen-AUTHORS: gen-AUTHORS:
if test -d .git; then \
rm -f "$(distdir)/AUTHORS"; \
$(top_builddir)/pre-inst-env "$(GUILE)" \ $(top_builddir)/pre-inst-env "$(GUILE)" \
"$(top_srcdir)/build-aux/generate-authors.scm" \ "$(top_srcdir)/build-aux/generate-authors.scm" \
"$(top_srcdir)" "$(distdir)/AUTHORS" "$(top_srcdir)" "$(distdir)/AUTHORS"; \
fi
# Make sure we're not shipping a file that embeds a local /gnu/store file name. # Make sure we're not shipping a file that embeds a local /gnu/store file name.
assert-no-store-file-names: assert-no-store-file-names:

View File

@ -21,7 +21,7 @@
# #
BUILT_SOURCES += nix/libstore/schema.sql.hh BUILT_SOURCES += nix/libstore/schema.sql.hh
CLEANFILES += $(BUILT_SOURCES) CLEANFILES += $(BUILT_SOURCES) etc/guix-daemon.service
noinst_LIBRARIES = libformat.a libutil.a libstore.a noinst_LIBRARIES = libformat.a libutil.a libstore.a
@ -93,7 +93,6 @@ libstore_headers = \
nix/libstore/references.hh \ nix/libstore/references.hh \
nix/libstore/pathlocks.hh \ nix/libstore/pathlocks.hh \
nix/libstore/globals.hh \ nix/libstore/globals.hh \
nix/libstore/schema.sql.hh \
nix/libstore/worker-protocol.hh \ nix/libstore/worker-protocol.hh \
nix/libstore/remote-store.hh \ nix/libstore/remote-store.hh \
nix/libstore/derivations.hh \ nix/libstore/derivations.hh \
@ -181,10 +180,22 @@ endif BUILD_DAEMON_OFFLOAD
nodist_libexec_SCRIPTS = \ nodist_libexec_SCRIPTS = \
nix/scripts/guix-authenticate nix/scripts/guix-authenticate
# The '.service' file for systemd.
systemdservicedir = $(libdir)/systemd/system
nodist_systemdservice_DATA = etc/guix-daemon.service
etc/guix-daemon.service: etc/guix-daemon.service.in \
$(top_builddir)/config.status
$(MKDIR_P) "`dirname "$@"`"
$(SED) -e 's|@''bindir''@|$(bindir)|' < \
"$(srcdir)/etc/guix-daemon.service.in" > "$@.tmp"
mv "$@.tmp" "$@"
EXTRA_DIST += \ EXTRA_DIST += \
nix/libstore/schema.sql \ nix/libstore/schema.sql \
nix/AUTHORS \ nix/AUTHORS \
nix/COPYING nix/COPYING \
etc/guix-daemon.service.in
AM_TESTS_ENVIRONMENT += \ AM_TESTS_ENVIRONMENT += \
top_builddir="$(abs_top_builddir)" top_builddir="$(abs_top_builddir)"

17
doc.am
View File

@ -25,6 +25,7 @@ EXTRA_DIST += \
doc/images/bootstrap-graph.dot \ doc/images/bootstrap-graph.dot \
doc/images/bootstrap-graph.eps \ doc/images/bootstrap-graph.eps \
doc/images/bootstrap-graph.pdf \ doc/images/bootstrap-graph.pdf \
doc/images/coreutils-size-map.eps \
doc/environment-gdb.scm doc/environment-gdb.scm
OS_CONFIG_EXAMPLES_TEXI = \ OS_CONFIG_EXAMPLES_TEXI = \
@ -63,27 +64,35 @@ DOT_OPTIONS = \
$(DOT) -Teps $(DOT_OPTIONS) < "$<" > "$@.tmp" $(DOT) -Teps $(DOT_OPTIONS) < "$<" > "$@.tmp"
mv "$@.tmp" "$@" mv "$@.tmp" "$@"
.png.eps:
convert "$<" "$@-tmp.eps"
mv "$@-tmp.eps" "$@"
# We cannot add new dependencies to `doc/guix.pdf' & co. (info "(automake) # We cannot add new dependencies to `doc/guix.pdf' & co. (info "(automake)
# Extending"). Using the `-local' rules is imperfect, because they may be # Extending"). Using the `-local' rules is imperfect, because they may be
# triggered after the main rule. Oh, well. # triggered after the main rule. Oh, well.
pdf-local: $(top_srcdir)/doc/images/bootstrap-graph.pdf pdf-local: $(top_srcdir)/doc/images/bootstrap-graph.pdf
info-local: $(top_srcdir)/doc/images/bootstrap-graph.png info-local: $(top_srcdir)/doc/images/bootstrap-graph.png
ps-local: $(top_srcdir)/doc/images/bootstrap-graph.eps ps-local: $(top_srcdir)/doc/images/bootstrap-graph.eps \
$(top_srcdir)/doc/images/coreutils-size-map.eps
dvi-local: ps-local
# Manual pages. # Manual pages.
doc/guix.1: scripts/guix doc/guix.1: $(SUBCOMMANDS:%=guix/scripts/%.scm)
-LANGUAGE= $(top_builddir)/pre-inst-env \ -LANGUAGE= $(top_builddir)/pre-inst-env \
$(HELP2MAN) --output="$@" guix $(HELP2MAN) --output="$@" guix
doc/guix-daemon.1: guix-daemon # Note: Do not depend on 'guix-daemon' since that would trigger a rebuild even
# for people building from a tarball.
doc/guix-daemon.1: nix/nix-daemon/guix-daemon.cc
-LANGUAGE= $(top_builddir)/pre-inst-env \ -LANGUAGE= $(top_builddir)/pre-inst-env \
$(HELP2MAN) --output="$@" guix-daemon $(HELP2MAN) --output="$@" guix-daemon
define subcommand-manual-target define subcommand-manual-target
doc/guix-$(1).1: scripts/guix guix/scripts/$(1).go doc/guix-$(1).1: guix/scripts/$(1).scm
-LANGUAGE= $(top_builddir)/pre-inst-env \ -LANGUAGE= $(top_builddir)/pre-inst-env \
$(HELP2MAN) --output="$$@" "guix $(1)" $(HELP2MAN) --output="$$@" "guix $(1)"

View File

@ -319,6 +319,10 @@ Make @code{root}'s profile available under @file{~/.guix-profile}:
~root/.guix-profile ~root/.guix-profile
@end example @end example
@item
Create the group and user accounts for build users as explained below
(@pxref{Build Environment Setup}).
@item @item
Run the daemon: Run the daemon:
@ -326,6 +330,10 @@ Run the daemon:
# ~root/.guix-profile/bin/guix-daemon --build-users-group=guixbuild # ~root/.guix-profile/bin/guix-daemon --build-users-group=guixbuild
@end example @end example
On hosts using the systemd init system, drop
@file{~root/.guix-profile/lib/systemd/system/guix-daemon.service} in
@file{/etc/systemd/system}.
@item @item
Make the @command{guix} command available to other users on the machine, Make the @command{guix} command available to other users on the machine,
for instance with: for instance with:
@ -508,8 +516,12 @@ Bash syntax and the @code{shadow} commands):
@noindent @noindent
The number of build users determines how many build jobs may run in The number of build users determines how many build jobs may run in
parallel, as specified by the @option{--max-jobs} option parallel, as specified by the @option{--max-jobs} option
(@pxref{Invoking guix-daemon, @option{--max-jobs}}). (@pxref{Invoking guix-daemon, @option{--max-jobs}}). The
The @code{guix-daemon} program may then be run as @code{root} with: @code{guix-daemon} program may then be run as @code{root} with the
following command@footnote{If your machine uses the systemd init system,
dropping the @file{@var{prefix}/lib/systemd/system/guix-daemon.service}
file in @file{/etc/systemd/system} will ensure that
@command{guix-daemon} is automatically started.}:
@example @example
# guix-daemon --build-users-group=guixbuild # guix-daemon --build-users-group=guixbuild
@ -2446,7 +2458,8 @@ implements the RubyGems build procedure used by Ruby packages, which
involves running @code{gem build} followed by @code{gem install}. involves running @code{gem build} followed by @code{gem install}.
Which Ruby package is used can be specified with the @code{#:ruby} Which Ruby package is used can be specified with the @code{#:ruby}
parameter. parameter. A list of additional flags to be passed to the @command{gem}
command can be specified with the @code{#:gem-flags} parameter.
@end defvr @end defvr
@defvr {Scheme Variable} waf-build-system @defvr {Scheme Variable} waf-build-system
@ -4813,6 +4826,10 @@ The package object of the operating system kernel to use@footnote{Currently
only the Linux-libre kernel is supported. In the future, it will be only the Linux-libre kernel is supported. In the future, it will be
possible to use the GNU@tie{}Hurd.}. possible to use the GNU@tie{}Hurd.}.
@item @code{kernel-arguments} (default: @code{'()})
List of strings or gexps representing additional arguments to pass on
the kernel's command-line---e.g., @code{("console=ttyS0")}.
@item @code{bootloader} @item @code{bootloader}
The system bootloader configuration object. @xref{GRUB Configuration}. The system bootloader configuration object. @xref{GRUB Configuration}.
@ -5011,6 +5028,14 @@ errors before being mounted.
@item @code{create-mount-point?} (default: @code{#f}) @item @code{create-mount-point?} (default: @code{#f})
When true, the mount point is created if it does not exist yet. When true, the mount point is created if it does not exist yet.
@item @code{dependencies} (default: @code{'()})
This is a list of @code{<file-system>} objects representing file systems
that must be mounted before (and unmounted after) this one.
As an example, consider a hierarchy of mounts: @file{/sys/fs/cgroup} is
a dependency of @file{/sys/fs/cgroup/cpu} and
@file{/sys/fs/cgroup/memory}.
@end table @end table
@end deftp @end deftp

View File

@ -0,0 +1,15 @@
# This is a "service unit file" for the systemd init system to launch
# 'guix-daemon'. Drop it in /etc/systemd/system or similar to have
# 'guix-daemon' automatically started.
[Unit]
Description=Build daemon for GNU Guix
[Service]
ExecStart=@bindir@/guix-daemon --build-users-group=guixbuild
RemainAfterExit=yes
StandardOutput=syslog
StandardError=syslog
[Install]
WantedBy=multi-user.target

View File

@ -193,6 +193,7 @@ GNU_SYSTEM_MODULES = \
gnu/packages/lsh.scm \ gnu/packages/lsh.scm \
gnu/packages/lsof.scm \ gnu/packages/lsof.scm \
gnu/packages/lua.scm \ gnu/packages/lua.scm \
gnu/packages/lxde.scm \
gnu/packages/lxqt.scm \ gnu/packages/lxqt.scm \
gnu/packages/lynx.scm \ gnu/packages/lynx.scm \
gnu/packages/m4.scm \ gnu/packages/m4.scm \
@ -410,6 +411,7 @@ dist_patch_DATA = \
gnu/packages/patches/cpio-fix-symlink-bad-length-test.patch \ gnu/packages/patches/cpio-fix-symlink-bad-length-test.patch \
gnu/packages/patches/cpio-gets-undeclared.patch \ gnu/packages/patches/cpio-gets-undeclared.patch \
gnu/packages/patches/cpufrequtils-fix-aclocal.patch \ gnu/packages/patches/cpufrequtils-fix-aclocal.patch \
gnu/packages/patches/crda-optional-gcrypt.patch \
gnu/packages/patches/crossmap-allow-system-pysam.patch \ gnu/packages/patches/crossmap-allow-system-pysam.patch \
gnu/packages/patches/cssc-gets-undeclared.patch \ gnu/packages/patches/cssc-gets-undeclared.patch \
gnu/packages/patches/cssc-missing-include.patch \ gnu/packages/patches/cssc-missing-include.patch \

View File

@ -317,7 +317,7 @@ allow automatic login and starting any app.")
(description (description
"This package provides the /etc/services, /etc/protocols, and /etc/rpc "This package provides the /etc/services, /etc/protocols, and /etc/rpc
files, which contain information about the IANA-assigned port, protocol, and files, which contain information about the IANA-assigned port, protocol, and
ONC RPC numbers") ONC RPC numbers.")
(home-page "http://packages.debian.org/sid/netbase") (home-page "http://packages.debian.org/sid/netbase")
(license license:gpl2))) (license license:gpl2)))

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2014, 2015 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net> ;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
@ -45,7 +45,7 @@
(define-public duplicity (define-public duplicity
(package (package
(name "duplicity") (name "duplicity")
(version "0.6.24") (version "0.6.26")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -55,7 +55,7 @@
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0l14nrhbgkyjgvh339bbhnm6hrdwrjadphq1jmpi0mcgcdbdfh8x")) "0jh79syhr8n3l81jxlwsmwm1pklb4d923m2lgqbswyavh1fqmvwb"))
(patches (list (search-patch "duplicity-piped-password.patch") (patches (list (search-patch "duplicity-piped-password.patch")
(search-patch "duplicity-test_selection-tmp.patch"))))) (search-patch "duplicity-test_selection-tmp.patch")))))
(build-system python-build-system) (build-system python-build-system)
@ -314,5 +314,5 @@ modification times, extended attributes, acls, and resource forks. Also,
rdiff-backup can operate in a bandwidth efficient manner over a pipe, like rdiff-backup can operate in a bandwidth efficient manner over a pipe, like
rsync. Thus you can use rdiff-backup and ssh to securely back a hard drive up rsync. Thus you can use rdiff-backup and ssh to securely back a hard drive up
to a remote location, and only the differences will be transmitted. Finally, to a remote location, and only the differences will be transmitted. Finally,
rdiff-backup is easy to use and settings have sensical defaults.") rdiff-backup is easy to use and settings have sensible defaults.")
(license license:gpl2+))) (license license:gpl2+)))

View File

@ -1394,6 +1394,85 @@ resolution of binding sites through combining the information of both
sequencing tag position and orientation.") sequencing tag position and orientation.")
(license license:bsd-3))) (license license:bsd-3)))
(define-public metabat
(package
(name "metabat")
(version "0.26.1")
(source (origin
(method url-fetch)
(uri (string-append
"https://bitbucket.org/berkeleylab/metabat/get/"
version ".tar.bz2"))
(file-name (string-append name "-" version ".tar.bz2"))
(sha256
(base32
"0vgrhbaxg4dkxyax2kbigak7w0arhqvw0szwp6gd9wmyilc44kfa"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-includes
(lambda _
(substitute* "SConstruct"
(("/include/bam/bam.h")
"/include/samtools/bam.h"))
(substitute* "src/BamUtils.h"
(("^#include \"bam/bam\\.h\"")
"#include \"samtools/bam.h\"")
(("^#include \"bam/sam\\.h\"")
"#include \"samtools/sam.h\""))
(substitute* "src/KseqReader.h"
(("^#include \"bam/kseq\\.h\"")
"#include \"samtools/kseq.h\""))
#t))
(add-after 'unpack 'fix-scons
(lambda _
(substitute* "SConstruct" ; Do not distribute README
(("^env\\.Install\\(idir_prefix, 'README\\.md'\\)")
""))
#t))
(delete 'configure)
(replace 'build
(lambda* (#:key inputs outputs #:allow-other-keys)
(mkdir (assoc-ref outputs "out"))
(zero? (system* "scons"
(string-append
"PREFIX="
(assoc-ref outputs "out"))
(string-append
"HTSLIB_DIR="
(assoc-ref inputs "htslib"))
(string-append
"SAMTOOLS_DIR="
(assoc-ref inputs "samtools"))
(string-append
"BOOST_ROOT="
(assoc-ref inputs "boost"))
"install"))))
;; check and install carried out during build phase
(delete 'check)
(delete 'install))))
(inputs
`(("zlib" ,zlib)
("perl" ,perl)
("samtools" ,samtools)
("htslib" ,htslib)
("boost" ,boost)))
(native-inputs
`(("scons" ,scons)))
(home-page "https://bitbucket.org/berkeleylab/metabat")
(synopsis
"Reconstruction of single genomes from complex microbial communities")
(description
"Grouping large genomic fragments assembled from shotgun metagenomic
sequences to deconvolute complex microbial communities, or metagenome binning,
enables the study of individual organisms and their interactions. MetaBAT is
an automated metagenome binning software, which integrates empirical
probabilistic distances of genome abundance and tetranucleotide frequency.")
(license (license:non-copyleft "file://license.txt"
"See license.txt in the distribution."))))
(define-public miso (define-public miso
(package (package
(name "miso") (name "miso")

View File

@ -83,7 +83,7 @@
(description (description
"Transmission is a BitTorrent client that comes with graphical, "Transmission is a BitTorrent client that comes with graphical,
textual, and Web user interfaces. Transmission also has a daemon for textual, and Web user interfaces. Transmission also has a daemon for
unattended operationg. It supports local peer discovery, full encryption, unattended operations. It supports local peer discovery, full encryption,
DHT, µTP, PEX and Magnet Links.") DHT, µTP, PEX and Magnet Links.")
;; COPYING reads: ;; COPYING reads:

View File

@ -264,7 +264,7 @@ than gzip and 15 % smaller output than bzip2.")
(arguments '(#:configure-flags '("--enable-shared"))) (arguments '(#:configure-flags '("--enable-shared")))
(home-page "http://www.oberhumer.com/opensource/lzo") (home-page "http://www.oberhumer.com/opensource/lzo")
(synopsis (synopsis
"Data compresion library suitable for real-time data de-/compression") "Data compression library suitable for real-time data de-/compression")
(description (description
"LZO is a data compression library which is suitable for data "LZO is a data compression library which is suitable for data
de-/compression in real-time. This means it favours speed over de-/compression in real-time. This means it favours speed over

View File

@ -102,10 +102,10 @@
"curl is a command line tool for transferring data with URL syntax, "curl is a command line tool for transferring data with URL syntax,
supporting DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP, supporting DICT, FILE, FTP, FTPS, Gopher, HTTP, HTTPS, IMAP, IMAPS, LDAP,
LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, Telnet and TFTP. LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, Telnet and TFTP.
curl supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading, curl supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading, HTTP
HTTP form based upload, proxies, cookies, user+password authentication form based upload, proxies, cookies, file transfer resume, user+password
(Basic, Digest, NTLM, Negotiate, kerberos...), file transfer resume, authentication (Basic, Digest, NTLM, Negotiate, kerberos...), proxy
proxy tunneling, and so on") tunneling, and so on.")
(license (license:non-copyleft "file://COPYING" (license (license:non-copyleft "file://COPYING"
"See COPYING in the distribution.")) "See COPYING in the distribution."))
(home-page "http://curl.haxx.se/"))) (home-page "http://curl.haxx.se/")))

View File

@ -175,7 +175,7 @@ Language.")
(define-public mariadb (define-public mariadb
(package (package
(name "mariadb") (name "mariadb")
(version "10.0.18") (version "10.0.20")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://downloads.mariadb.org/f/" (uri (string-append "https://downloads.mariadb.org/f/"
@ -183,7 +183,7 @@ Language.")
name "-" version ".tar.gz")) name "-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1xcs391cm0vnl9bvx1470v8z4d77zqv16n6iaqi12jm0ma8fwvv8")))) "0ywb730l68mxvmpik1x2ndbdaaks6dmc17pxspspm5wlqxinjkrs"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
'(#:configure-flags '(#:configure-flags
@ -633,7 +633,7 @@ While based on the concepts used by DBIx::Abstract, the concepts used have
been modified to make the SQL easier to generate from Perl data structures. been modified to make the SQL easier to generate from Perl data structures.
The underlying idea is for this module to do what you mean, based on the data The underlying idea is for this module to do what you mean, based on the data
structures you provide it, so that you don't have to modify your code every structures you provide it, so that you don't have to modify your code every
time your data changes") time your data changes.")
(license (package-license perl)))) (license (package-license perl))))
(define-public perl-sql-splitstatement (define-public perl-sql-splitstatement

View File

@ -60,7 +60,7 @@
(define-public calibre (define-public calibre
(package (package
(name "calibre") (name "calibre")
(version "2.30.0") (version "2.29.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -69,7 +69,7 @@
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1k2rpn06nfzqjy5k6fh8pwfj8vbhpn7rgkpkkpz5n2fqg3z8ph1j")) "1n3cfnjnghhhsgzcbcvbr0gh191lhl6az09q1s68jhlcc2lski6l"))
;; Remove non-free or doubtful code, see ;; Remove non-free or doubtful code, see
;; https://lists.gnu.org/archive/html/guix-devel/2015-02/msg00478.html ;; https://lists.gnu.org/archive/html/guix-devel/2015-02/msg00478.html
(modules '((guix build utils))) (modules '((guix build utils)))

View File

@ -4,6 +4,7 @@
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014 Alex Kost <alezost@gmail.com> ;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch> ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -52,6 +53,7 @@
#:use-module (gnu packages glib) #:use-module (gnu packages glib)
#:use-module (gnu packages acl) #:use-module (gnu packages acl)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)
#:use-module (gnu packages pdf)
#:use-module (gnu packages linux) ;alsa #:use-module (gnu packages linux) ;alsa
#:use-module (gnu packages xiph) #:use-module (gnu packages xiph)
#:use-module (gnu packages mp3) #:use-module (gnu packages mp3)
@ -811,17 +813,98 @@ or XEmacs.")
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
"http://stable.melpa.org/packages/mmm-mode-" "https://github.com/purcell/mmm-mode/archive/"
version version ".tar.gz"))
".tar")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1llkzb6d978ym3zv3yfzwj0w5zzmmj3ksrm5swrx1papxcnqnkb9")))) "10kwslnflbjqm62wkrq420crqzdqalzfflp9pqk1i12zm6dm4mfv"))))
(build-system emacs-build-system) (build-system gnu-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'autogen
(lambda _
(zero? (system* "sh" "autogen.sh")))))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("emacs" ,emacs-no-x)
("texinfo" ,texinfo)))
(home-page "https://github.com/purcell/mmm-mode") (home-page "https://github.com/purcell/mmm-mode")
(synopsis (synopsis "Allow multiple major modes in an Emacs buffer")
"Allow multiple major modes in an Emacs buffer")
(description (description
"MMM Mode is a minor mode that allows multiple major modes to coexist in a "MMM Mode is a minor mode that allows multiple major modes to coexist in a
single buffer.") single buffer.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public emacs-pdf-tools
(package
(name "emacs-pdf-tools")
(version "0.60")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/politza/pdf-tools/archive/v"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1y8k5n2jbyaxby0j6f4m9xbm0ddpmbkrfj6rp6ll5sb97lcg3vrx"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; there are no tests
#:modules ((guix build gnu-build-system)
(guix build utils)
(guix build emacs-utils))
#:imported-modules (,@%gnu-build-system-modules
(guix build emacs-utils))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'enter-dir (lambda _ (chdir "server") #t))
(add-before
'configure 'autogen
(lambda _
(zero? (system* "bash" "autogen.sh"))))
(add-before
'build 'patch-variables
(lambda* (#:key outputs #:allow-other-keys)
(with-directory-excursion "../lisp"
;; Set path to epdfinfo program.
(emacs-substitute-variables "pdf-info.el"
("pdf-info-epdfinfo-program"
(string-append (assoc-ref outputs "out")
"/bin/epdfinfo")))
;; Set 'pdf-tools-handle-upgrades' to nil to avoid "auto
;; upgrading" that pdf-tools tries to perform.
(emacs-substitute-variables "pdf-tools.el"
("pdf-tools-handle-upgrades" '())))))
(add-after
'install 'install-lisp
(lambda* (#:key outputs #:allow-other-keys)
(let ((target (string-append (assoc-ref outputs "out")
"/share/emacs/site-lisp/")))
(mkdir-p target)
(for-each
(lambda (file)
(copy-file file (string-append target (basename file))))
(find-files "../lisp" "^(pdf|tab).*\\.elc?"))
(emacs-byte-compile-directory target)
(emacs-generate-autoloads "pdf-tools" target)))))))
(native-inputs `(("autoconf" ,autoconf)
("automake" ,automake)
("pkg-config" ,pkg-config)
("emacs" ,emacs-no-x)))
(inputs `(("poppler" ,poppler)
("cairo" ,cairo)
("glib" ,glib)
("libpng" ,libpng)
("zlib" ,zlib)))
(synopsis "Emacs support library for PDF files")
(description
"PDF Tools is, among other things, a replacement of DocView for PDF
files. The key difference is that pages are not pre-rendered by
e.g. ghostscript and stored in the file-system, but rather created on-demand
and stored in memory.")
(home-page "https://github.com/politza/pdf-tools")
(license license:gpl3+)))

View File

@ -56,6 +56,6 @@ the dlopen() system call.
Enchant steps in to provide uniformity and conformity on top of these libraries, Enchant steps in to provide uniformity and conformity on top of these libraries,
and implement certain features that may be lacking in any individual provider and implement certain features that may be lacking in any individual provider
library. Everything should \"just work\" for any and every definition of \"just library. Everything should \"just work\" for any and every definition of \"just
working.\"") working\".")
(home-page "http://www.abisource.com/projects/enchant") (home-page "http://www.abisource.com/projects/enchant")
(license lgpl2.1+))) (license lgpl2.1+)))

View File

@ -78,6 +78,6 @@
(synopsis "Firmware for the Atheros AR7010 and AR9271 USB 802.11n NICs") (synopsis "Firmware for the Atheros AR7010 and AR9271 USB 802.11n NICs")
(description (description
"This is the firmware for the Qualcomm Atheros AR7010 and AR9271 USB "This is the firmware for the Qualcomm Atheros AR7010 and AR9271 USB
802.11n NICs (aka. Wi-Fi USB dongles.) It is used by the ath9k driver of 802.11n NICs (aka Wi-Fi USB dongles). It is used by the ath9k driver of
Linux-libre.") Linux-libre.")
(license (non-copyleft "http://directory.fsf.org/wiki/License:ClearBSD")))) (license (non-copyleft "http://directory.fsf.org/wiki/License:ClearBSD"))))

View File

@ -108,7 +108,7 @@ technique (ISP).")
(define-public dfu-programmer (define-public dfu-programmer
(package (package
(name "dfu-programmer") (name "dfu-programmer")
(version "0.7.0") (version "0.7.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -116,14 +116,17 @@ technique (ISP).")
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"17lglglk5xrqd2n0impg5bkq4j96qc51cw3kzcghzmzmn6fvg3gf")) "15gr99y1z9vbvhrkd25zqhnzhg6zjmaam3vfjzf2mazd39mx7d0x"))
(patches (list (search-patch "dfu-programmer-fix-libusb.patch"))))) (patches (list (search-patch "dfu-programmer-fix-libusb.patch")))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs (inputs
`(("libusb" ,libusb))) `(("libusb" ,libusb)))
(home-page "http://dfu-programmer.github.io/") (home-page "http://dfu-programmer.github.io/")
(synopsis "Device firmware update programmer for Atmel chips") (synopsis "Device firmware update programmer for Atmel chips")
(description (description
"Dfu-programmer is a multi-platform command-line programmer for Atmel "Dfu-programmer is a multi-platform command-line programmer for
(8051, AVR, XMEGA & AVR32) chips with a USB bootloader supporting ISP") Atmel (8051, AVR, XMEGA & AVR32) chips with a USB bootloader supporting
ISP.")
(license gpl2+))) (license gpl2+)))

View File

@ -356,8 +356,7 @@ seven weights: ExtraLight, Light, Normal, Regular, Medium, Bold, and Heavy.
And in several OpenType/CFF-based deployment configurations to accommodate And in several OpenType/CFF-based deployment configurations to accommodate
various system requirements or limitations. As the name suggests, Pan-CJK various system requirements or limitations. As the name suggests, Pan-CJK
fonts are intended to support the characters necessary to render or display fonts are intended to support the characters necessary to render or display
text in Simplified Chinese, Traditional Chinese, Japanese, and Korean. text in Simplified Chinese, Traditional Chinese, Japanese, and Korean.")
")
(license license:asl2.0))) (license license:asl2.0)))
(define-public font-wqy-zenhei (define-public font-wqy-zenhei

View File

@ -4,6 +4,7 @@
;;; Copyright © 2015 Andy Wingo <wingo@pobox.com> ;;; Copyright © 2015 Andy Wingo <wingo@pobox.com>
;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -39,6 +40,8 @@
#:use-module (gnu packages glib) ;intltool #:use-module (gnu packages glib) ;intltool
#:use-module (gnu packages xdisorg) #:use-module (gnu packages xdisorg)
#:use-module (gnu packages xorg) #:use-module (gnu packages xorg)
#:use-module (gnu packages boost)
#:use-module (gnu packages compression)
#:use-module (gnu packages doxygen) #:use-module (gnu packages doxygen)
#:use-module (gnu packages libffi)) #:use-module (gnu packages libffi))
@ -227,7 +230,7 @@ of a the system to know what users are logged in, and where.")
(synopsis "Implementations of freedesktop.org standards in Python") (synopsis "Implementations of freedesktop.org standards in Python")
(description (description
"PyXDG is a collection of implementations of freedesktop.org standards in "PyXDG is a collection of implementations of freedesktop.org standards in
Python") Python.")
(license license:lgpl2.0))) (license license:lgpl2.0)))
(define-public python2-pyxdg (define-public python2-pyxdg
@ -265,3 +268,30 @@ display server running on Linux kernel modesetting and evdev input devices, an X
application, or a wayland client itself. The clients can be traditional application, or a wayland client itself. The clients can be traditional
applications, X servers (rootless or fullscreen) or other display servers.") applications, X servers (rootless or fullscreen) or other display servers.")
(license license:x11))) (license license:x11)))
(define-public exempi
(package
(name "exempi")
(version "2.2.2")
(source (origin
(method url-fetch)
(uri (string-append
"http://libopenraw.freedesktop.org/download/"
name "-" version ".tar.bz2"))
(sha256
(base32
"01vcd1mfn2s0iiq2cjyzgvnxx6kcq9cwra1iipijhs0vwvjx0yhf"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list (string-append "--with-boost="
(assoc-ref %build-inputs "boost")))))
(native-inputs
`(("boost" ,boost))) ; tests
(inputs
`(("expat" ,expat)
("zlib" ,zlib)))
(home-page "https://wiki.freedesktop.org/libopenraw/Exempi")
(synopsis "XMP metadata handling library")
(description "Exempi is an implementation of the Extensible Metadata
Platform (XMP), which enables embedding metadata in PDF and image formats.")
(license license:bsd-3)))

View File

@ -781,7 +781,7 @@ reference interpreter, using Glk API.")
(synopsis "Z-machine interpreter") (synopsis "Z-machine interpreter")
(description (description
"Fizmo is a console-based Z-machine interpreter. It is used to play "Fizmo is a console-based Z-machine interpreter. It is used to play
interactive ficiton, also known as textadventures, which were implemented interactive fiction, also known as text adventures, which were implemented
either by Infocom or created using the Inform compiler.") either by Infocom or created using the Inform compiler.")
(license license:bsd-3))) (license license:bsd-3)))
@ -853,13 +853,14 @@ multi-system game/emulator system.")
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs `(("readline" ,readline))) (inputs `(("readline" ,readline)))
(synopsis "Play the game of Go") (synopsis "Play the game of Go")
(description "GNU Go is a program that plays the game of Go, in which (description
players place stones on a grid to form territory or capture other stones. "GNU Go is a program that plays the game of Go, in which players
While it can be played directly from the terminal, rendered in ASCII place stones on a grid to form territory or capture other stones. While
characters, it is also possible to play GNU Go with 3rd party graphical it can be played directly from the terminal, rendered in ASCII characters,
interfaces or even in Emacs. It supports the standard game storage format it is also possible to play GNU Go with 3rd party graphical interfaces or
(SGF, Smart Game Format) and inter-process communication format (GMP, Go even in Emacs. It supports the standard game storage format (SGF, Smart
Modem Protocol).") Game Format) and inter-process communication format (GMP, Go Modem
Protocol).")
(home-page "http://www.gnu.org/software/gnugo/") (home-page "http://www.gnu.org/software/gnugo/")
(license license:gpl3+))) (license license:gpl3+)))

View File

@ -21,7 +21,7 @@
(define-module (gnu packages gcc) (define-module (gnu packages gcc)
#:use-module ((guix licenses) #:use-module ((guix licenses)
#:select (gpl3+ gpl2+ lgpl2.1+ lgpl2.0+)) #:select (gpl3+ gpl2+ lgpl2.1+ lgpl2.0+ fdl1.3+))
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages bootstrap) #:use-module (gnu packages bootstrap)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
@ -676,3 +676,53 @@ CLooG is designed to avoid control overhead and to produce a very
effective code.") effective code.")
(license gpl2+))) (license gpl2+)))
(define-public gnu-c-manual
(package
(name "gnu-c-manual")
(version "0.2.4")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/gnu-c-manual/gnu-c-manual-"
version ".tar.gz"))
(sha256
(base32
"0cf4503shr7hxkbrjfi9dky6q2lqk95bgbgbjmvj2s2x312kakd9"))))
(build-system gnu-build-system)
(native-inputs `(("texinfo" ,texinfo)))
(arguments
'(#:phases (modify-phases %standard-phases
(delete 'configure)
(delete 'check)
(replace 'build
(lambda _
(zero? (system* "make"
"gnu-c-manual.info"
"gnu-c-manual.html"))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(info (string-append out "/share/info"))
(html (string-append
out "/share/doc/gnu-c-manual")))
(mkdir-p info)
(mkdir-p html)
(for-each (lambda (file)
(copy-file file
(string-append info "/"
file)))
(find-files "." "\\.info(-[0-9])?$"))
(for-each (lambda (file)
(copy-file file
(string-append html "/"
file)))
(find-files "." "\\.html$"))
#t))))))
(synopsis "Reference manual for the C programming language")
(description
"This is a reference manual for the C programming language, as
implemented by the GNU C Compiler (gcc). As a reference, it is not intended
to be a tutorial of the language. Rather, it outlines all of the constructs
of the language. Library functions are not included.")
(home-page "http://www.gnu.org/software/gnu-c-manual")
(license fdl1.3+)))

View File

@ -138,7 +138,7 @@ you can create PNG images on the fly or modify existing files.")
`(("perl-gd" ,perl-gd) `(("perl-gd" ,perl-gd)
("perl-image-magick" ,perl-image-magick))) ("perl-image-magick" ,perl-image-magick)))
(home-page "http://search.cpan.org/dist/GD-SecurityImage") (home-page "http://search.cpan.org/dist/GD-SecurityImage")
(synopsis "Security image generator.") (synopsis "Security image generator")
(description "This module provides a basic interface to create (description "This module provides a basic interface to create
security (captcha) images. The final output is the actual graphic data, the security (captcha) images. The final output is the actual graphic data, the
mime type of the graphic, and the created random string. The module also has mime type of the graphic, and the created random string. The module also has

View File

@ -130,7 +130,7 @@ the X-Consortium license.")
(description (description
"FTGL is a font rendering library for OpenGL applications. Supported "FTGL is a font rendering library for OpenGL applications. Supported
rendering modes are: Bitmaps, Anti-aliased pixmaps, Texture maps, Outlines, rendering modes are: Bitmaps, Anti-aliased pixmaps, Texture maps, Outlines,
Polygon meshes, and Extruded polygon meshes") Polygon meshes, and Extruded polygon meshes.")
(license l:x11))) (license l:x11)))
(define-public s2tc (define-public s2tc
@ -409,8 +409,14 @@ extension functionality is exposed in a single header file.")
("glu" ,glu) ("glu" ,glu)
("freeglut" ,freeglut))) ("freeglut" ,freeglut)))
(arguments (arguments
'(#:phases (alist-cons-before '(#:phases (modify-phases %standard-phases
'build 'patch-dynamic-link (add-after 'configure 'patch-makefile
(lambda _
;; Install compiled Guile files in the expected place.
(substitute* '("Makefile")
(("^godir = .*$")
"godir = $(moddir)\n"))))
(add-before 'build 'patch-dynamic-link
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(define (dynamic-link-substitute file lib input) (define (dynamic-link-substitute file lib input)
(substitute* file (substitute* file
@ -423,8 +429,7 @@ extension functionality is exposed in a single header file.")
(dynamic-link-substitute "glx/runtime.scm" "GL" "mesa") (dynamic-link-substitute "glx/runtime.scm" "GL" "mesa")
(dynamic-link-substitute "glu/runtime.scm" "GLU" "glu") (dynamic-link-substitute "glu/runtime.scm" "GLU" "glu")
(dynamic-link-substitute "glut/runtime.scm" "glut" (dynamic-link-substitute "glut/runtime.scm" "glut"
"freeglut")) "freeglut"))))))
%standard-phases)))
(home-page "http://gnu.org/s/guile-opengl") (home-page "http://gnu.org/s/guile-opengl")
(synopsis "Guile binding for the OpenGL graphics API") (synopsis "Guile binding for the OpenGL graphics API")
(description (description

View File

@ -5,6 +5,7 @@
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2014, 2015 Federico Beffa <beffa@fbengineering.ch> ;;; Copyright © 2014, 2015 Federico Beffa <beffa@fbengineering.ch>
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com> ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
;;; Copyright © 2015 Andy Wingo <wingo@igalia.com> ;;; Copyright © 2015 Andy Wingo <wingo@igalia.com>
;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com> ;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
@ -61,6 +62,7 @@
#:use-module (gnu packages lua) #:use-module (gnu packages lua)
#:use-module (gnu packages image) #:use-module (gnu packages image)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)
#:use-module (gnu packages photo)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages pulseaudio) #:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python) #:use-module (gnu packages python)
@ -132,6 +134,28 @@ Desktop. It is designed to be as simple as possible and has some unique
features to enable users to create their discs easily and quickly.") features to enable users to create their discs easily and quickly.")
(license license:gpl2+))) (license license:gpl2+)))
(define-public gnome-common
(package
(name "gnome-common")
(version "3.14.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(sha256
(base32
"0b1676g4q44ah73c5gwl1kg88pc93pnq1pa9kwl43d0vg0pj802c"))))
(build-system gnu-build-system)
(home-page "https://www.gnome.org/")
(synopsis "Bootstrap GNOME modules built from Git")
(description "gnome-common contains various files needed to bootstrap
GNOME modules built from Git. It contains a common \"autogen.sh\" script that
can be used to configure a source directory checked out from Git and some
commonly used macros.")
(license license:gpl2+)))
(define-public gnome-desktop (define-public gnome-desktop
(package (package
(name "gnome-desktop") (name "gnome-desktop")
@ -666,7 +690,7 @@ some form of information without getting in the user's way.")
every application the chance to assume its own extensibility. It also has a every application the chance to assume its own extensibility. It also has a
set of features including, but not limited to: multiple extension points; on set of features including, but not limited to: multiple extension points; on
demand (lazy) programming language support for C, Python and JS; simplicity of demand (lazy) programming language support for C, Python and JS; simplicity of
the API") the API.")
(license license:lgpl2.0+))) (license license:lgpl2.0+)))
(define-public gtkglext (define-public gtkglext
@ -1211,7 +1235,8 @@ creating interactive structured graphics.")
(home-page "https://developer.gnome.org/libgnomeui/") (home-page "https://developer.gnome.org/libgnomeui/")
(synopsis "Additional widgets for applications") (synopsis "Additional widgets for applications")
(description "The libgnomeui library provides additional widgets for (description "The libgnomeui library provides additional widgets for
applications. Many of the widgets from libgnomeui have already been ported to GTK+.") applications. Many of the widgets from libgnomeui have already been
ported to GTK+.")
(license license:lgpl2.0+))) (license license:lgpl2.0+)))
(define-public libglade (define-public libglade
@ -1754,11 +1779,12 @@ configuration storage systems.")
`(("glib" ,glib))) ;according to json-glib-1.0.pc `(("glib" ,glib))) ;according to json-glib-1.0.pc
(home-page "https://wiki.gnome.org/Projects/JsonGlib") (home-page "https://wiki.gnome.org/Projects/JsonGlib")
(synopsis "Compiler for the GObject type system") (synopsis "Compiler for the GObject type system")
(description "JSON-GLib is a C library based on GLib providing (description
serialization and deserialization support for the JavaScript Object Notation "JSON-GLib is a C library based on GLib providing serialization and
(JSON) format described by RFC 4627. It provides parser and generator deserialization support for the JavaScript Object Notation (JSON) format
GObject classes and various wrappers for the complex data types employed by described by RFC 4627. It provides parser and generator GObject classes and
JSON, such as arrays and objects.") various wrappers for the complex data types employed by JSON, such as arrays
and objects.")
(license license:lgpl2.1+))) (license license:lgpl2.1+)))
(define-public libxklavier (define-public libxklavier
@ -1796,7 +1822,7 @@ JSON, such as arrays and objects.")
(synopsis "High-level API for X Keyboard Extension") (synopsis "High-level API for X Keyboard Extension")
(description (description
"LibXklavier is a library providing high-level API for X Keyboard "LibXklavier is a library providing high-level API for X Keyboard
Extension known as XKB. This library is indended to support XFree86 and other Extension known as XKB. This library is intended to support XFree86 and other
commercial X servers. It is useful for creating XKB-related software (layout commercial X servers. It is useful for creating XKB-related software (layout
indicators etc).") indicators etc).")
(license license:lgpl2.0+))) (license license:lgpl2.0+)))
@ -3001,3 +3027,53 @@ which can read a large number of file formats.")
(description "Rhythmbox is a music playing application for GNOME. It (description "Rhythmbox is a music playing application for GNOME. It
supports playlists, song ratings, and any codecs installed through gstreamer.") supports playlists, song ratings, and any codecs installed through gstreamer.")
(license license:gpl2+))) (license license:gpl2+)))
(define-public eog
(package
(name "eog")
(version "3.16.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(sha256
(base32
"0frw1b5jix9pffznav5s7ajjx91a8rv5lf4sjvjv3fw65mbnhbw0"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after
'install 'wrap-eog
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(gi-typelib-path (getenv "GI_TYPELIB_PATH")))
(wrap-program (string-append out "/bin/eog")
`("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
#t)))))
(propagated-inputs
`(("dconf" ,dconf)))
(native-inputs
`(("intltool" ,intltool)
("itstool", itstool)
("glib" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
("pkg-config" ,pkg-config)))
(inputs
`(("gnome-desktop" ,gnome-desktop)
("shared-mime-info" ,shared-mime-info)
("adwaita-icon-theme" ,adwaita-icon-theme)
("exempi" ,exempi)
("lcms" ,lcms)
("libexif" ,libexif)
("libpeas" ,libpeas)
("libjpeg" ,libjpeg)
("librsvg" ,librsvg)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
("gtk+" ,gtk+)))
(home-page "https://wiki.gnome.org/Apps/EyeOfGnome")
(synopsis "GNOME image viewer")
(description "Eye of GNOME is the GNOME image viewer. It
supports image conversion, rotation, and slideshows.")
(license license:gpl2+)))

View File

@ -41,7 +41,7 @@
(build-system gnu-build-system) (build-system gnu-build-system)
(synopsis "Library that implements NTLM authentication") (synopsis "Library that implements NTLM authentication")
(description (description
"Libntlm is a library that implements NTLM authentication") "Libntlm is a library that implements NTLM authentication.")
(license license:lgpl2.1+) (license license:lgpl2.1+)
(home-page "http://www.nongnu.org/libntlm/"))) (home-page "http://www.nongnu.org/libntlm/")))

View File

@ -118,8 +118,8 @@ arrays of data.")
(description (description
"GStreamer is a library for constructing graphs of media-handling "GStreamer is a library for constructing graphs of media-handling
components. The applications it supports range from simple Ogg/Vorbis components. The applications it supports range from simple Ogg/Vorbis
playback, audio/video streaming to complex audio (mixing) and video playback, audio/video streaming to complex audio mixing and video
(non-linear editing) processing. non-linear editing.
Applications can take advantage of advances in codec and filter technology Applications can take advantage of advances in codec and filter technology
transparently. Developers can add new codecs and filters by writing a transparently. Developers can add new codecs and filters by writing a
@ -275,8 +275,7 @@ developers consider to have good quality code and correct functionality.")
("pkg-config" ,pkg-config) ("pkg-config" ,pkg-config)
("python-wrapper" ,python-wrapper))) ("python-wrapper" ,python-wrapper)))
(home-page "http://gstreamer.freedesktop.org/") (home-page "http://gstreamer.freedesktop.org/")
(synopsis (synopsis "GStreamer plugins from the \"ugly\" set")
"GStreamer plugins from the \"ugly\" set.")
(description "GStreamer Ugly Plug-ins. This set contains those plug-ins (description "GStreamer Ugly Plug-ins. This set contains those plug-ins
which the developers consider to have good quality code but that might pose which the developers consider to have good quality code but that might pose
distribution problems in some jurisdictions, e.g. due to patent threats.") distribution problems in some jurisdictions, e.g. due to patent threats.")

View File

@ -131,7 +131,7 @@ The cairo API provides operations similar to the drawing operators of
PostScript and PDF. Operations in cairo including stroking and filling cubic PostScript and PDF. Operations in cairo including stroking and filling cubic
Bézier splines, transforming and compositing translucent images, and Bézier splines, transforming and compositing translucent images, and
antialiased text rendering. All drawing operations can be transformed by any antialiased text rendering. All drawing operations can be transformed by any
affine transformation (scale, rotation, shear, etc.)") affine transformation (scale, rotation, shear, etc.).")
(license license:lgpl2.1) ; or Mozilla Public License 1.1 (license license:lgpl2.1) ; or Mozilla Public License 1.1
(home-page "http://cairographics.org/"))) (home-page "http://cairographics.org/")))

View File

@ -457,14 +457,14 @@ http:://json.org specification. These are the main features:
(inputs (inputs
`(("guile" ,guile-2.0))) `(("guile" ,guile-2.0)))
(home-page "https://github.com/ijp/minikanren") (home-page "https://github.com/ijp/minikanren")
(synopsis "miniKanren declarative logic system, packaged for Guile") (synopsis "MiniKanren declarative logic system, packaged for Guile")
(description (description
"MiniKanren is a relational programming extension to the Scheme "MiniKanren is a relational programming extension to the Scheme
programming Language, written as a smaller version of Kanren suitable for programming Language, written as a smaller version of Kanren suitable for
pedagogical purposes. It is featured in the book, The Reasoned Schemer, pedagogical purposes. It is featured in the book, The Reasoned Schemer,
written by Dan Friedman, William Byrd, and Oleg Kiselyov. written by Dan Friedman, William Byrd, and Oleg Kiselyov.
This is Ian Price's r6rs packaged version of miniKranen, which deviates This is Ian Price's r6rs packaged version of miniKanren, which deviates
slightly from miniKanren mainline. slightly from miniKanren mainline.
See http://minikanren.org/ for more on miniKanren generally.") See http://minikanren.org/ for more on miniKanren generally.")

View File

@ -842,8 +842,8 @@ mutable and immutable), with a powerful loop optimisation framework.")
`(("ghc-parsec" ,ghc-parsec))) `(("ghc-parsec" ,ghc-parsec)))
(home-page (home-page
"https://github.com/haskell/network-uri") "https://github.com/haskell/network-uri")
(synopsis "Labrary for URI manipulation") (synopsis "Library for URI manipulation")
(description "This package provides an URI manipulation inteface. In (description "This package provides an URI manipulation interface. In
'network-2.6' the 'Network.URI' module was split off from the 'network' 'network-2.6' the 'Network.URI' module was split off from the 'network'
package into this package.") package into this package.")
(license bsd-3))) (license bsd-3)))

View File

@ -264,10 +264,10 @@ arithmetic ops.")
(build-system gnu-build-system) (build-system gnu-build-system)
(synopsis "Decoder of the JBIG2 image compression format") (synopsis "Decoder of the JBIG2 image compression format")
(description (description
"JBIG2 is designed for lossy or lossless encoding of 'bilevel' "JBIG2 is designed for lossy or lossless encoding of 'bilevel' (1-bit
(1-bit monochrome) images at moderately high resolution, and in monochrome) images at moderately high resolution, and in particular scanned
particular scanned paper documents. In this domain it is very paper documents. In this domain it is very efficient, offering compression
efficient, offering compression ratios on the order of 100:1. ratios on the order of 100:1.
This is a decoder only implementation, and currently is in the alpha This is a decoder only implementation, and currently is in the alpha
stage, meaning it doesn't completely work yet. However, it is stage, meaning it doesn't completely work yet. However, it is

View File

@ -372,7 +372,7 @@ stemmer at http://snowball.sourceforge.net.")
("perl-text-unidecode" ,perl-text-unidecode) ("perl-text-unidecode" ,perl-text-unidecode)
("perl-namespace-clean" ,perl-namespace-clean))) ("perl-namespace-clean" ,perl-namespace-clean)))
(home-page "http://search.cpan.org/dist/String-ToIdentifier-EN") (home-page "http://search.cpan.org/dist/String-ToIdentifier-EN")
(synopsis "Convert strings to english program identifiers") (synopsis "Convert strings to English program identifiers")
(description "This module provides a utility method, \"to_identifier\" for (description "This module provides a utility method, \"to_identifier\" for
converting an arbitrary string into a readable representation using the ASCII converting an arbitrary string into a readable representation using the ASCII
subset of \"\\w\" for use as an identifier in a computer program. The intent subset of \"\\w\" for use as an identifier in a computer program. The intent
@ -395,6 +395,6 @@ string can be easily inferred by a human just by reading the identifier.")
(build-system perl-build-system) (build-system perl-build-system)
(home-page "http://search.cpan.org/dist/Text-German") (home-page "http://search.cpan.org/dist/Text-German")
(synopsis "German grundform reduction") (synopsis "German grundform reduction")
(description "This module is a rather incomplete implementaion of work (description "This module is a rather incomplete implementation of work
done by Gudrun Putze-Meier.") done by Gudrun Putze-Meier.")
(license (package-license perl)))) (license (package-license perl))))

View File

@ -45,5 +45,5 @@
("libxt" ,libxt))) ("libxt" ,libxt)))
(home-page "http://lesstif.sourceforge.net/") (home-page "http://lesstif.sourceforge.net/")
(synopsis "Clone of the Motif toolkit for the X window system") (synopsis "Clone of the Motif toolkit for the X window system")
(description "Clone of the Motif toolkit for the X window system") (description "Clone of the Motif toolkit for the X window system.")
(license license:gpl2+))) ; some files are lgpl2.1+ or x11 (license license:gpl2+))) ; some files are lgpl2.1+ or x11

View File

@ -657,7 +657,7 @@ patterns, which are pre-processed by a perl script.")
(synopsis "Thesaurus") (synopsis "Thesaurus")
(description "MyThes is a simple thesaurus that uses a structured text (description "MyThes is a simple thesaurus that uses a structured text
data file and an index file with binary search to look up words and phrases data file and an index file with binary search to look up words and phrases
and to return information on pronunciations, meaningss and synonyms.") and to return information on pronunciations, meanings and synonyms.")
(license (non-copyleft "file://COPYING" (license (non-copyleft "file://COPYING"
"See COPYING in the distribution.")))) "See COPYING in the distribution."))))

View File

@ -313,7 +313,18 @@ It has been modified to remove all non-free binary blobs.")
(license gpl2) (license gpl2)
(home-page "http://www.gnu.org/software/linux-libre/")))) (home-page "http://www.gnu.org/software/linux-libre/"))))
(define-public linux-libre-4.0
(package
(inherit linux-libre)
(version "4.0.8")
(source (origin
(method url-fetch)
(uri (linux-libre-urls version))
(sha256
(base32
"1xg5ysbdpna78yaz760c1z08sczagqyy74svr3p2mv8iczqyxdca"))))))
;;; ;;;
;;; Pluggable authentication modules (PAM). ;;; Pluggable authentication modules (PAM).
;;; ;;;
@ -356,7 +367,7 @@ It has been modified to remove all non-free binary blobs.")
"A *Free* project to implement OSF's RFC 86.0. "A *Free* project to implement OSF's RFC 86.0.
Pluggable authentication modules are small shared object files that can Pluggable authentication modules are small shared object files that can
be used through the PAM API to perform tasks, like authenticating a user be used through the PAM API to perform tasks, like authenticating a user
at login. Local and dynamic reconfiguration are its key features") at login. Local and dynamic reconfiguration are its key features.")
(license bsd-3))) (license bsd-3)))
@ -1713,6 +1724,113 @@ interface.")
(home-page "http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html") (home-page "http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html")
(license gpl2+))) (license gpl2+)))
(define-public crda
(package
(name "crda")
(version "3.18")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kernel.org/software/network/crda/"
"crda-" version ".tar.xz"))
(sha256
(base32
"1gydiqgb08d9gbx4l6gv98zg3pljc984m50hmn3ysxcbkxkvkz23"))
(patches (list (search-patch "crda-optional-gcrypt.patch")))))
(build-system gnu-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
(delete 'configure)
(add-before
'build 'no-werror-no-ldconfig
(lambda _
(substitute* "Makefile"
(("-Werror") "")
(("ldconfig") "true"))
#t))
(add-before
'build 'set-regulator-db-file-name
(lambda* (#:key inputs #:allow-other-keys)
;; Tell CRDA where to find our database.
(let ((regdb (assoc-ref inputs "wireless-regdb")))
(substitute* "crda.c"
(("\"/lib/crda/regulatory.bin\"")
(string-append "\"" regdb
"/lib/crda/regulatory.bin\"")))
#t))))
#:test-target "verify"
#:make-flags (let ((out (assoc-ref %outputs "out"))
(regdb (assoc-ref %build-inputs "wireless-regdb")))
(list "CC=gcc" "V=1"
;; Disable signature-checking on 'regulatory.bin'.
;; The reason is that this simplifies maintenance
;; on our side (no need to manage a distro key
;; pair), and we can guarantee integrity of
;; 'regulatory.bin' by other means anyway, such as
;; 'guix gc --verify'. See
;; <https://wireless.wiki.kernel.org/en/developers/regulatory/wireless-regdb>
;; for a discssion.
"USE_OPENSSL=0"
(string-append "PREFIX=" out)
(string-append "SBINDIR=" out "/sbin/")
(string-append "UDEV_RULE_DIR="
out "/lib/udev/rules.d")
(string-append "LDFLAGS=-Wl,-rpath="
out "/lib -L.")
(string-append "REG_BIN=" regdb
"/lib/crda/regulatory.bin")))))
(native-inputs `(("pkg-config" ,pkg-config)
("python" ,python-2)
("wireless-regdb" ,wireless-regdb)))
(inputs `(("libnl" ,libnl)))
(home-page
"https://wireless.wiki.kernel.org/en/developers/Regulatory/CRDA")
(synopsis "Central regulatory domain agent (CRDA) for WiFi")
(description
"The Central Regulatory Domain Agent (CRDA) acts as the udev helper for
communication between the kernel Linux and user space for regulatory
compliance.")
(license copyleft-next)))
(define-public wireless-regdb
(package
(name "wireless-regdb")
(version "2015.04.06")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://kernel.org/software/network/wireless-regdb/"
"wireless-regdb-" version ".tar.xz"))
(sha256
(base32
"0czi83k311fp27z42hxjm8vi88fsbc23mhavv96lkb4pmari0jjc"))))
(build-system gnu-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
(delete 'configure))
#:tests? #f ;no tests
#:make-flags (let ((out (assoc-ref %outputs "out")))
(list (string-append "PREFIX=" out)
(string-append "LSB_ID=GuixSD")
(string-append "DISTRO_PUBKEY=/dev/null")
(string-append "DISTRO_PRIVKEY=/dev/null")
(string-append "REGDB_PUBKEY=/dev/null")
;; Leave that empty so that db2bin.py doesn't try
;; to sign 'regulatory.bin'. This allows us to
;; avoid managing a key pair for the whole distro.
(string-append "REGDB_PRIVKEY=")))))
(native-inputs `(("python" ,python-2)))
(home-page
"https://wireless.wiki.kernel.org/en/developers/regulatory/wireless-regdb")
(synopsis "Wireless regulatory database")
(description
"This package contains the wireless regulatory database Central
Regulatory Database Agent (CRDA) daemon. The database contains information on
country-specific regulations for the wireless spectrum.")
(license isc)))
(define-public lm-sensors (define-public lm-sensors
(package (package
(name "lm-sensors") (name "lm-sensors")
@ -1949,10 +2067,10 @@ thanks to the use of namespaces.")
#:phases (alist-delete 'configure %standard-phases) #:phases (alist-delete 'configure %standard-phases)
#:tests? #f)) ; no test suite #:tests? #f)) ; no test suite
(home-page "http://sourceforge.net/projects/hdparm/") (home-page "http://sourceforge.net/projects/hdparm/")
(synopsis "tune hard disk parameters for high performance") (synopsis "Tune hard disk parameters for high performance")
(description (description
"Get/set device parameters for Linux SATA/IDE drives. It's primary use "Get/set device parameters for Linux SATA/IDE drives. It's primary use
is for enabling irq-unmasking and IDE multiplemode.") is for enabling irq-unmasking and IDE multiple-mode.")
(license (non-copyleft "file://LICENSE.TXT")))) (license (non-copyleft "file://LICENSE.TXT"))))
(define-public acpid (define-public acpid
@ -2048,7 +2166,7 @@ also contains the libsysfs library.")
(home-page "https://www.kernel.org/pub/linux/utils/kernel/cpufreq/") (home-page "https://www.kernel.org/pub/linux/utils/kernel/cpufreq/")
(synopsis "Utilities to get and set CPU frequency on Linux") (synopsis "Utilities to get and set CPU frequency on Linux")
(description (description
"The cpufrequtils suite contains utilities to retreive CPU frequency "The cpufrequtils suite contains utilities to retrieve CPU frequency
information, and set the CPU frequency if supported, using the cpufreq information, and set the CPU frequency if supported, using the cpufreq
capabilities of the Linux kernel.") capabilities of the Linux kernel.")
(license gpl2))) (license gpl2)))

View File

@ -70,12 +70,12 @@
(home-page "http://www.llvm.org") (home-page "http://www.llvm.org")
(synopsis "Optimizing compiler infrastructure") (synopsis "Optimizing compiler infrastructure")
(description (description
"LLVM is a compiler infrastructure designed for compile-time, link-time, runtime, "LLVM is a compiler infrastructure designed for compile-time, link-time,
and idle-time optimization of programs from arbitrary programming languages. runtime, and idle-time optimization of programs from arbitrary programming
It currently supports compilation of C and C++ programs, using front-ends languages. It currently supports compilation of C and C++ programs, using
derived from GCC 4.0.1. A new front-end for the C family of languages is in front-ends derived from GCC 4.0.1. A new front-end for the C family of
development. The compiler infrastructure includes mirror sets of programming languages is in development. The compiler infrastructure includes mirror sets
tools as well as libraries with equivalent functionality.") of programming tools as well as libraries with equivalent functionality.")
(license ncsa))) (license ncsa)))
(define (clang-from-llvm llvm hash) (define (clang-from-llvm llvm hash)

49
gnu/packages/lxde.scm Normal file
View File

@ -0,0 +1,49 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.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 lxde)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
#:use-module (gnu packages pkg-config)
#:use-module (guix build-system gnu)
#:use-module (guix download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages))
(define-public lxappearance
(package
(name "lxappearance")
(version "0.6.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/project/lxde/"
"LXAppearance/" name "-" version ".tar.xz"))
(sha256
(base32
"1phnv1b2jdj2vlibjyc9z01izcf3k5zxj8glsaf0i3vh77zqmqq9"))))
(build-system gnu-build-system)
(inputs `(("gtk+" ,gtk+-2)))
(native-inputs `(("intltool" ,intltool)
("pkg-config" ,pkg-config)))
(synopsis "LXDE GTK+ theme switcher")
(description "LXAppearance is a desktop-independent GTK+ theme switcher
able to change themes, icons, and fonts used by GTK+ applications.")
(home-page "http://lxde.org")
(license license:gpl2+)))
;;; lxde.scm ends here

View File

@ -90,10 +90,10 @@
(synopsis "Conversion between thousands of scales") (synopsis "Conversion between thousands of scales")
(description (description
"GNU Units converts numeric quantities between units of measure. It "GNU Units converts numeric quantities between units of measure. It
can handle scale changes through adaptive usage of standard scale prefixes can handle scale changes through adaptive usage of standard scale
(micro-, kilo-, etc.). It can also handle nonlinear conversions such as prefixes (micro-, kilo-, etc.). It can also handle nonlinear
Fahrenheit to Celsius. Its interpreter is powerful enough to be used conversions such as Fahrenheit to Celsius. Its interpreter is powerful
effectively as a scientific calculator.") enough to be used effectively as a scientific calculator.")
(license license:gpl3+) (license license:gpl3+)
(home-page "http://www.gnu.org/software/units/"))) (home-page "http://www.gnu.org/software/units/")))
@ -1381,7 +1381,7 @@ to BMP, JPEG or PNG image formats.")
(description "Maxima is a system for the manipulation of symbolic and (description "Maxima is a system for the manipulation of symbolic and
numerical expressions. It yields high precision numeric results by using numerical expressions. It yields high precision numeric results by using
exact fractions, arbitrary precision integers, and variable precision floating exact fractions, arbitrary precision integers, and variable precision floating
point numbers") point numbers.")
;; Some files are lgpl2.1+. Some are gpl2+. Some explicitly state gpl1+. ;; Some files are lgpl2.1+. Some are gpl2+. Some explicitly state gpl1+.
;; Others simply say "GNU General Public License" without stating a ;; Others simply say "GNU General Public License" without stating a
;; version (which implicitly means gpl1+). ;; version (which implicitly means gpl1+).
@ -1528,7 +1528,7 @@ constant parts of it.")
"OpenLibm is an effort to have a high quality, portable, standalone C "OpenLibm is an effort to have a high quality, portable, standalone C
mathematical library (libm). It can be used standalone in applications and mathematical library (libm). It can be used standalone in applications and
programming language implementations. The project was born out of a need to programming language implementations. The project was born out of a need to
have a good libm for the Julia programming langage that worked consistently have a good libm for the Julia programming language that worked consistently
across compilers and operating systems, and in 32-bit and 64-bit across compilers and operating systems, and in 32-bit and 64-bit
environments.") environments.")
;; See LICENSE.md for details. ;; See LICENSE.md for details.

View File

@ -107,5 +107,5 @@ Algorithms currently supplied are:
CRC-32, CRC-32B, ALDER-32, MD-2, MD-4, MD-5, RIPEMD-128, RIPEMD-160, CRC-32, CRC-32B, ALDER-32, MD-2, MD-4, MD-5, RIPEMD-128, RIPEMD-160,
RIPEMD-256, RIPEMD-320, SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, HAVAL-128, RIPEMD-256, RIPEMD-320, SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, HAVAL-128,
HAVAL-160, HAVAL-192, HAVAL-256, TIGER, TIGER-128, TIGER-160, GOST, WHIRLPOOL, HAVAL-160, HAVAL-192, HAVAL-256, TIGER, TIGER-128, TIGER-160, GOST, WHIRLPOOL,
SNEFRU-128, SNEFRU-256") SNEFRU-128, SNEFRU-256.")
(license gpl2+))) (license gpl2+)))

View File

@ -81,7 +81,8 @@
(description (description
"Massachusetts Institute of Technology implementation of Kerberos. "Massachusetts Institute of Technology implementation of Kerberos.
Kerberos is a network authentication protocol designed to provide strong Kerberos is a network authentication protocol designed to provide strong
authentication for client/server applications by using secret-key cryptography.") authentication for client/server applications by using secret-key
cryptography.")
(license (non-copyleft "file://NOTICE" (license (non-copyleft "file://NOTICE"
"See NOTICE in the distribution.")) "See NOTICE in the distribution."))
(home-page "http://web.mit.edu/kerberos/"))) (home-page "http://web.mit.edu/kerberos/")))

View File

@ -90,7 +90,7 @@ This package contains the library.")
(synopsis "Library for reading ID3 tags") (synopsis "Library for reading ID3 tags")
(description (description
"Libid3tag is a library for reading ID3 tags, both ID3v1 and the various "Libid3tag is a library for reading ID3 tags, both ID3v1 and the various
versions of ID3v2") versions of ID3v2.")
(license license:gpl2+) (license license:gpl2+)
(home-page "http://www.underbit.com/products/mad/"))) (home-page "http://www.underbit.com/products/mad/")))
@ -212,7 +212,7 @@ Speex, WavPack TrueAudio, WAV, AIFF, MP4 and ASF files.")
(synopsis "MP3 technical info viewer and ID3 1.x tag editor") (synopsis "MP3 technical info viewer and ID3 1.x tag editor")
(description (description
"MP3Info is a little utility used to read and modify the ID3 tags of MP3 "MP3Info is a little utility used to read and modify the ID3 tags of MP3
files. MP3Info can also display various techincal aspects of an MP3 file files. MP3Info can also display various technical aspects of an MP3 file
including playing time, bit-rate, sampling frequency and other attributes in a including playing time, bit-rate, sampling frequency and other attributes in a
pre-defined or user-specifiable output format.") pre-defined or user-specifiable output format.")
(license license:gpl2+))) (license license:gpl2+)))
@ -234,7 +234,7 @@ pre-defined or user-specifiable output format.")
("libmad" ,libmad) ("libmad" ,libmad)
("libogg" ,libogg) ("libogg" ,libogg)
("libltdl" ,libltdl) ("libltdl" ,libltdl)
("libvorbid" ,libvorbis) ("libvorbis" ,libvorbis)
("pcre" ,pcre))) ("pcre" ,pcre)))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))
@ -264,7 +264,7 @@ This package contains the library.")
"106dnka56prlc9nsfh300f8841am2lmkwlzgl9lkr25mgnc35wwh")))) "106dnka56prlc9nsfh300f8841am2lmkwlzgl9lkr25mgnc35wwh"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs `(("libmp3splt" ,libmp3splt))) (inputs `(("libmp3splt" ,libmp3splt)))
(synopsis "Utiliy for splitting mp3 and ogg vorbis files") (synopsis "Utility for splitting mp3 and ogg vorbis files")
(description (description
"Mp3splt is a utility to split mp3 and ogg vorbis files selecting a begin "Mp3splt is a utility to split mp3 and ogg vorbis files selecting a begin
and an end time position, without decoding. For splitting an album, one may and an end time position, without decoding. For splitting an album, one may
@ -444,5 +444,5 @@ format.")
(synopsis "Audio player for Musepack-formatted files") (synopsis "Audio player for Musepack-formatted files")
(description (description
"Mpc123 is a command-line player for files in the Musepack audio "Mpc123 is a command-line player for files in the Musepack audio
compression format (.mpc files.)") compression format (.mpc files).")
(license license:gpl2+))) (license license:gpl2+)))

View File

@ -40,7 +40,7 @@
(build-system gnu-build-system) (build-system gnu-build-system)
(synopsis "Ncurses based disk usage analyzer") (synopsis "Ncurses based disk usage analyzer")
(description "A disk usage analyzer with an ncurses interface, aimed to be (description "A disk usage analyzer with an ncurses interface, aimed to be
run on a remote server where you don't have an entire gaphical setup, but have run on a remote server where you don't have an entire graphical setup, but have
to do with a simple SSH connection. ncdu aims to be fast, simple and easy to to do with a simple SSH connection. ncdu aims to be fast, simple and easy to
use, and should be able to run in any minimal POSIX-like environment with use, and should be able to run in any minimal POSIX-like environment with
ncurses installed.") ncurses installed.")

View File

@ -78,7 +78,7 @@
(("test-decodenetnum\\$\\(EXEEXT\\) ") "")) (("test-decodenetnum\\$\\(EXEEXT\\) ") ""))
#t))))) #t)))))
(build-system gnu-build-system) (build-system gnu-build-system)
(synopsis "Real time clock synchonization system") (synopsis "Real time clock synchronization system")
(description "NTP is a system designed to synchronize the clocks of (description "NTP is a system designed to synchronize the clocks of
computers over a network.") computers over a network.")
(license (l:x11-style (license (l:x11-style

View File

@ -380,8 +380,8 @@ It is developed using Objective Caml and Camlp5.")
(zero? (apply system* "make" "install-doc" (zero? (apply system* "make" "install-doc"
make-flags))))))) make-flags)))))))
(home-page "http://proofgeneral.inf.ed.ac.uk/") (home-page "http://proofgeneral.inf.ed.ac.uk/")
(description "Generic front-end for proof assistants based on Emacs") (synopsis "Generic front-end for proof assistants based on Emacs")
(synopsis (description
"Proof General is a major mode to turn Emacs into an interactive proof "Proof General is a major mode to turn Emacs into an interactive proof
assistant to write formal mathematical proofs using a variety of theorem assistant to write formal mathematical proofs using a variety of theorem
provers.") provers.")

View File

@ -55,7 +55,7 @@
(synopsis "Box style window manager") (synopsis "Box style window manager")
(description (description
"Openbox is a highly configurable, next generation window manager with "Openbox is a highly configurable, next generation window manager with
extensive standars support. The *box visual style is well known for its extensive standards support. The *box visual style is well known for its
minimalistic appearance. Openbox uses the *box visual style, while providing minimalistic appearance. Openbox uses the *box visual style, while providing
a greater number of options for theme developers than previous *box a greater number of options for theme developers than previous *box
implementations.") implementations.")

View File

@ -0,0 +1,20 @@
This patch allows us to make the libgcrypt dependency optional (which it
is, if you look at the code), which in turns allows us to build CRDA
without the signature-checking capability on 'regulatory.bin'.
--- crda/Makefile 2015-07-17 11:33:33.546712893 +0200
+++ crda/Makefile 2015-07-17 11:34:05.210994373 +0200
@@ -45,12 +45,14 @@ LDLIBS += `pkg-config --libs openssl`
$(LIBREG): keys-ssl.c
else
+ifeq ($(USE_GCRYPT),1)
CFLAGS += -DUSE_GCRYPT
LDLIBS += -lgcrypt
$(LIBREG): keys-gcrypt.c
endif
+endif
MKDIR ?= mkdir -p
INSTALL ?= install

View File

@ -148,7 +148,7 @@
%standard-phases))) %standard-phases)))
(synopsis "Viewer for PDF files based on the Motif toolkit") (synopsis "Viewer for PDF files based on the Motif toolkit")
(description (description
"Xpdf is a viewer for Portable Document Format (PDF) files") "Xpdf is a viewer for Portable Document Format (PDF) files.")
(license license:gpl3) ; or gpl2, but not gpl2+ (license license:gpl3) ; or gpl2, but not gpl2+
(home-page "http://www.foolabs.com/xpdf/"))) (home-page "http://www.foolabs.com/xpdf/")))
@ -424,8 +424,8 @@ but also provides support for other operations such as searching and
listing the table of contents and hyperlinks. listing the table of contents and hyperlinks.
The library ships with a rudimentary X11 viewer, and a set of command The library ships with a rudimentary X11 viewer, and a set of command
line tools for batch rendering (pdfdraw), examining the file structure line tools for batch rendering (pdfdraw), rewriting files (pdfclean),
(pdfshow), and rewriting files (pdfclean).") and examining the file structure (pdfshow).")
(license license:agpl3+))) (license license:agpl3+)))
(define-public qpdf (define-public qpdf

View File

@ -615,7 +615,7 @@ the Class::C3 method resolution order.")
(description "Class::Data::Inheritable is for creating accessor/mutators (description "Class::Data::Inheritable is for creating accessor/mutators
to class data. That is, if you want to store something about your class as a to class data. That is, if you want to store something about your class as a
whole (instead of about a single object). This data is then inherited by your whole (instead of about a single object). This data is then inherited by your
subclasses and can be overriden.") subclasses and can be overridden.")
(license (package-license perl)))) (license (package-license perl))))
(define-public perl-class-date (define-public perl-class-date
@ -725,7 +725,7 @@ names, not Class::Name. For that, this module provides \"load_class
(home-page "http://search.cpan.org/dist/Class-Load-XS") (home-page "http://search.cpan.org/dist/Class-Load-XS")
(synopsis "XS implementation of parts of Class::Load") (synopsis "XS implementation of parts of Class::Load")
(description "This module provides an XS implementation for portions of (description "This module provides an XS implementation for portions of
Class::Load") Class::Load.")
(license artistic2.0))) (license artistic2.0)))
(define-public perl-class-methodmaker (define-public perl-class-methodmaker
@ -766,11 +766,11 @@ write accessor methods for your objects that perform standard tasks.")
("perl-test-requires" ,perl-test-requires))) ("perl-test-requires" ,perl-test-requires)))
(home-page "http://search.cpan.org/dist/Class-Method-Modifiers") (home-page "http://search.cpan.org/dist/Class-Method-Modifiers")
(synopsis "Moose-like method modifiers") (synopsis "Moose-like method modifiers")
(description "Class::Method::Modifiers provides three modifiers: before, (description "Class::Method::Modifiers provides three modifiers: 'before',
around, and after. before and after are run just before and after the method 'around', and 'after'. 'before' and 'after' are run just before and after the
they modify, but can not really affect that original method. around is run in method they modify, but can not really affect that original method. 'around'
place of the original method, with a hook to easily call that original is run in place of the original method, with a hook to easily call that
method.") original method.")
(license (package-license perl)))) (license (package-license perl))))
(define-public perl-class-singleton (define-public perl-class-singleton
@ -1210,7 +1210,7 @@ necessary later on.")
(home-page "http://search.cpan.org/dist/Data-Tumbler") (home-page "http://search.cpan.org/dist/Data-Tumbler")
(synopsis "Dynamic generation of nested combinations of variants") (synopsis "Dynamic generation of nested combinations of variants")
(description "Data::Tumbler - Dynamic generation of nested combinations of (description "Data::Tumbler - Dynamic generation of nested combinations of
variants") variants.")
(license (package-license perl)))) (license (package-license perl))))
(define-public perl-data-visitor (define-public perl-data-visitor
@ -1409,7 +1409,7 @@ or \"every day\". You can also create more complicated recurrences, such as
("perl-datetime-format-strptime" ,perl-datetime-format-strptime) ("perl-datetime-format-strptime" ,perl-datetime-format-strptime)
("perl-params-validate" ,perl-params-validate))) ("perl-params-validate" ,perl-params-validate)))
(home-page "http://search.cpan.org/dist/DateTime-Format-Builder") (home-page "http://search.cpan.org/dist/DateTime-Format-Builder")
(synopsis "Create DateTime parser classes and objects.") (synopsis "Create DateTime parser classes and objects")
(description "DateTime::Format::Builder creates DateTime parsers. Many (description "DateTime::Format::Builder creates DateTime parsers. Many
string formats of dates and times are simple and just require a basic regular string formats of dates and times are simple and just require a basic regular
expression to extract the relevant information. Builder provides a simple way expression to extract the relevant information. Builder provides a simple way
@ -2155,7 +2155,7 @@ in various parts of the CPAN ecosystem.")
(home-page "http://search.cpan.org/dist/File-HomeDir") (home-page "http://search.cpan.org/dist/File-HomeDir")
(synopsis "Find your home and other directories on any platform") (synopsis "Find your home and other directories on any platform")
(description "File::HomeDir is a module for locating the directories that (description "File::HomeDir is a module for locating the directories that
are \"owned\" by a user (typicaly your user) and to solve the various issues are \"owned\" by a user (typically your user) and to solve the various issues
that arise trying to find them consistently across a wide variety of that arise trying to find them consistently across a wide variety of
platforms.") platforms.")
(license (package-license perl)))) (license (package-license perl))))
@ -2471,7 +2471,7 @@ inc directory within a distribution and are used by Makefile.PL or Build.PL.")
(synopsis "Utilities for interactive I/O") (synopsis "Utilities for interactive I/O")
(description "This module provides three utility subroutines that make it (description "This module provides three utility subroutines that make it
easier to develop interactive applications: is_interactive(), interactive(), easier to develop interactive applications: is_interactive(), interactive(),
and busy()") and busy().")
(license (package-license perl)))) (license (package-license perl))))
(define-public perl-io-string (define-public perl-io-string
@ -2556,7 +2556,7 @@ pseudo ttys.")
;; it, so disable it. ;; it, so disable it.
(delete-file "t/win32_compile.t")))))) (delete-file "t/win32_compile.t"))))))
(home-page "http://search.cpan.org/dist/IPC-Run") (home-page "http://search.cpan.org/dist/IPC-Run")
(synopsis "system() and background procs w/ piping, redirs, ptys") (synopsis "Run system() and background procs w/ piping, redirs, ptys")
(description "IPC::Run allows you run and interact with child processes (description "IPC::Run allows you run and interact with child processes
using files, pipes, and pseudo-ttys. Both system()-style and scripted usages using files, pipes, and pseudo-ttys. Both system()-style and scripted usages
are supported and may be mixed. Likewise, functional and OO API styles are are supported and may be mixed. Likewise, functional and OO API styles are
@ -2575,7 +2575,7 @@ both supported and may be mixed.")
(base32 (base32
"0r9m8q78bg7yycpixd7738jm40yz71p2q7inm766kzsw3g6c709x")))) "0r9m8q78bg7yycpixd7738jm40yz71p2q7inm766kzsw3g6c709x"))))
(build-system perl-build-system) (build-system perl-build-system)
(synopsis "Run a subprocess with input/ouput redirection") (synopsis "Run a subprocess with input/output redirection")
(description (description
"The IPC::Run3 module allows you to run a subprocess and redirect stdin, "The IPC::Run3 module allows you to run a subprocess and redirect stdin,
stdout, and/or stderr to files and perl data structures. It aims to satisfy stdout, and/or stderr to files and perl data structures. It aims to satisfy
@ -3399,8 +3399,8 @@ accessor, while set methods are prefixed with \"_set_\".")
(home-page "http://search.cpan.org/dist/MooseX-StrictConstructor") (home-page "http://search.cpan.org/dist/MooseX-StrictConstructor")
(synopsis "Strict object constructors for Moose") (synopsis "Strict object constructors for Moose")
(description "Simply loading this module makes your constructors (description "Simply loading this module makes your constructors
\"strict\". If your constructor is called with an attribute init argument that \"strict\". If your constructor is called with an attribute init argument
your class does not declare, then it calls Moose->throw_error(). ") that your class does not declare, then it calls Moose->throw_error().")
(license artistic2.0))) (license artistic2.0)))
(define-public perl-moosex-traits-pluggable (define-public perl-moosex-traits-pluggable
@ -3428,7 +3428,7 @@ your class does not declare, then it calls Moose->throw_error(). ")
"http://search.cpan.org/dist/MooseX-Traits-Pluggable") "http://search.cpan.org/dist/MooseX-Traits-Pluggable")
(synopsis "Trait loading and resolution for Moose") (synopsis "Trait loading and resolution for Moose")
(description "Adds support on top of MooseX::Traits for class precedence (description "Adds support on top of MooseX::Traits for class precedence
search for traits and some extra attributes") search for traits and some extra attributes.")
(license (package-license perl)))) (license (package-license perl))))
(define-public perl-moosex-types (define-public perl-moosex-types
@ -4152,7 +4152,7 @@ of Perl objects without duplicates for scalars and references.")
(home-page "http://search.cpan.org/dist/Set-Scalar") (home-page "http://search.cpan.org/dist/Set-Scalar")
(synopsis "Set operations for Perl") (synopsis "Set operations for Perl")
(description "The first priority of Set::Scalar is to be a convenient (description "The first priority of Set::Scalar is to be a convenient
interface to sets (as in: unordered colletions of Perl scalars.) While not interface to sets (as in: unordered collections of Perl scalars). While not
designed to be slow or big, neither has it been designed to be fast or designed to be slow or big, neither has it been designed to be fast or
compact.") compact.")
(license (package-license perl)))) (license (package-license perl))))
@ -4257,7 +4257,7 @@ CamelCase and back again.")
(home-page "http://search.cpan.org/dist/String-RewritePrefix") (home-page "http://search.cpan.org/dist/String-RewritePrefix")
(synopsis "Rewrite strings based on a set of known prefixes") (synopsis "Rewrite strings based on a set of known prefixes")
(description "This module allows you to rewrite strings based on a set of (description "This module allows you to rewrite strings based on a set of
known pprefixes.") known prefixes.")
(license (package-license perl)))) (license (package-license perl))))
(define-public perl-sub-exporter (define-public perl-sub-exporter
@ -4738,7 +4738,7 @@ structures without getting caught in an infinite loop.")
(home-page "http://search.cpan.org/dist/Test-Differences") (home-page "http://search.cpan.org/dist/Test-Differences")
(synopsis "Test strings and data structures and show differences") (synopsis "Test strings and data structures and show differences")
(description "This module exports three test functions and four diff-style (description "This module exports three test functions and four diff-style
functions") functions.")
;; See LICENSE section of Test/Differences.pm, which reads "... GNU public ;; See LICENSE section of Test/Differences.pm, which reads "... GNU public
;; license, any version, ..." ;; license, any version, ..."
(license gpl3+))) (license gpl3+)))
@ -4975,7 +4975,7 @@ bit more fine-grained control over test suites.")
(description (description
"This modules causes any warnings during testing to be captured and "This modules causes any warnings during testing to be captured and
stored. It automatically adds an extra test that will run when your script stored. It automatically adds an extra test that will run when your script
ends to check that there were no warnings. If there were any warings, the ends to check that there were no warnings. If there were any warnings, the
test will fail and output diagnostics of where, when and what the warning was, test will fail and output diagnostics of where, when and what the warning was,
including a stack trace of what was going on when it occurred.") including a stack trace of what was going on when it occurred.")
(home-page (string-append "http://search.cpan.org/~adamk/" (home-page (string-append "http://search.cpan.org/~adamk/"
@ -5601,7 +5601,7 @@ duration strings like \"2 minutes\" and \"3 seconds\" to seconds.")
(description "This module provides functions that are the inverse of (description "This module provides functions that are the inverse of
built-in perl functions localtime() and gmtime(). They accept a date as a built-in perl functions localtime() and gmtime(). They accept a date as a
six-element array, and return the corresponding time(2) value in seconds since six-element array, and return the corresponding time(2) value in seconds since
the system epoch") the system epoch.")
(license (package-license perl)))) (license (package-license perl))))
(define-public perl-timedate (define-public perl-timedate
@ -5770,7 +5770,7 @@ UNIVERSAL::can() as a function, which it is not.")
(home-page "http://search.cpan.org/dist/UNIVERSAL-isa") (home-page "http://search.cpan.org/dist/UNIVERSAL-isa")
(synopsis "UNIVERSAL::isa() reimplementation") (synopsis "UNIVERSAL::isa() reimplementation")
(description "This module attempts to recover from people calling (description "This module attempts to recover from people calling
UNIVERSAL::isa as a function") UNIVERSAL::isa as a function.")
(license (package-license perl)))) (license (package-license perl))))
(define-public perl-variable-magic (define-public perl-variable-magic

View File

@ -173,11 +173,12 @@ rates. ")
(home-page "http://www.pulseaudio.org/") (home-page "http://www.pulseaudio.org/")
(synopsis "Sound server") (synopsis "Sound server")
(description (description
"PulseAudio is a sound server. It is basically a proxy for your sound applications. "PulseAudio is a sound server. It is basically a proxy for your sound
It allows you to do advanced operations on your sound data as it passes applications. It allows you to do advanced operations on your sound data as
between your application and your hardware. Things like transferring the it passes between your application and your hardware. Things like
audio to a different machine, changing the sample format or channel count and transferring the audio to a different machine, changing the sample format or
mixing several sounds into one are easily achieved using a sound server. ") channel count and mixing several sounds into one are easily achieved using a
sound server.")
;; PulseAudio is LGPLv2+, but some of the optional dependencies (GNU dbm, ;; PulseAudio is LGPLv2+, but some of the optional dependencies (GNU dbm,
;; FFTW, etc.) are GPL'd, so the result is effectively GPLv2+. See ;; FFTW, etc.) are GPL'd, so the result is effectively GPLv2+. See

View File

@ -644,7 +644,7 @@ datetime module, available in Python 2.3+.")
(synopsis (synopsis
"Parse human-readable date/time text") "Parse human-readable date/time text")
(description (description
"Parse human-readable date/time text") "Parse human-readable date/time text.")
(license asl2.0))) (license asl2.0)))
(define-public python-pandas (define-public python-pandas
@ -844,8 +844,9 @@ after Andy Lesters Perl module WWW::Mechanize.")
(synopsis (synopsis
"Json library for Python") "Json library for Python")
(description (description
"JSON (JavaScript Object Notation) is a subset of JavaScript syntax "JSON (JavaScript Object Notation) is a subset of JavaScript
(ECMA-262 3rd edition) used as a lightweight data interchange format. syntax (ECMA-262 3rd edition) used as a lightweight data interchange
format.
Simplejson exposes an API familiar to users of the standard library marshal Simplejson exposes an API familiar to users of the standard library marshal
and pickle modules. It is the externally maintained version of the json and pickle modules. It is the externally maintained version of the json
@ -1540,7 +1541,7 @@ executed.")
"Python test discovery for unittest") "Python test discovery for unittest")
(description (description
"Discover provides test discovery for unittest, a feature that has been "Discover provides test discovery for unittest, a feature that has been
backported from Python 2.7 for Python 2.4+") backported from Python 2.7 for Python 2.4+.")
(license bsd-3))) (license bsd-3)))
(define-public python2-discover (define-public python2-discover
@ -2163,7 +2164,7 @@ mining and data analysis.")
(home-page "http://scikit-image.org/") (home-page "http://scikit-image.org/")
(synopsis "Image processing in Python") (synopsis "Image processing in Python")
(description (description
"scikit-image is a collection of algorithms for image processing.") "Scikit-image is a collection of algorithms for image processing.")
(license bsd-3))) (license bsd-3)))
(define-public python2-scikit-image (define-public python2-scikit-image

View File

@ -54,6 +54,6 @@
(synopsis "Client for Windows Terminal Services") (synopsis "Client for Windows Terminal Services")
(description (description
"rdesktop is a client for Microsoft's Windows Remote Desktop Services, "rdesktop is a client for Microsoft's Windows Remote Desktop Services,
capable of natively speaking Remote Desktop Protocol (RDP.) It allows users capable of natively speaking Remote Desktop Protocol (RDP). It allows users
to remotely control a user's Windows desktop.") to remotely control a user's Windows desktop.")
(license license:gpl3+))) (license license:gpl3+)))

View File

@ -162,7 +162,7 @@ Java Lucene text search engine API to C++.")
"LRDF is a library to make it easy to manipulate RDF files describing "LRDF is a library to make it easy to manipulate RDF files describing
LADSPA plugins. It can also be used for general RDF manipulation. It can LADSPA plugins. It can also be used for general RDF manipulation. It can
read RDF/XLM and N3 files and export N3 files, and it also has a light read RDF/XLM and N3 files and export N3 files, and it also has a light
taxonomic inference capablility.") taxonomic inference capability.")
(license gpl2))) (license gpl2)))
(define-public rasqal (define-public rasqal

View File

@ -195,7 +195,7 @@ announcement.")
;; dependencies are not available right now. ;; dependencies are not available right now.
(delete-file "tasks/cucumber.rake")))))) (delete-file "tasks/cucumber.rake"))))))
(synopsis "Building and packaging helper for Ruby native extensions") (synopsis "Building and packaging helper for Ruby native extensions")
(description "Rake-compiler proivides a framework for building and (description "Rake-compiler provides a framework for building and
packaging native C and Java extensions in Ruby.") packaging native C and Java extensions in Ruby.")
(home-page "https://github.com/rake-compiler/rake-compiler") (home-page "https://github.com/rake-compiler/rake-compiler")
(license license:expat))) (license license:expat)))
@ -316,7 +316,7 @@ standard diff-like tool.")
(propagated-inputs (propagated-inputs
`(("ruby-rspec-support" ,ruby-rspec-support) `(("ruby-rspec-support" ,ruby-rspec-support)
("ruby-diff-lcs" ,ruby-diff-lcs-for-rspec))) ("ruby-diff-lcs" ,ruby-diff-lcs-for-rspec)))
(synopsis "RSpec expecations library") (synopsis "RSpec expectations library")
(description "Rspec-expectations provides a simple API to express expected (description "Rspec-expectations provides a simple API to express expected
outcomes of a code example.") outcomes of a code example.")
(home-page "https://github.com/rspec/rspec-expectations") (home-page "https://github.com/rspec/rspec-expectations")

View File

@ -91,5 +91,5 @@ Features included: PNG and XFT support for alpha transparency and antialiased
fonts, External themes support, Configurable runtime options: X server -- fonts, External themes support, Configurable runtime options: X server --
login / shutdown / reboot commands, Single (GDM-like) or double (XDM-like) login / shutdown / reboot commands, Single (GDM-like) or double (XDM-like)
input control, Can load predefined user at startup, Configurable welcome / input control, Can load predefined user at startup, Configurable welcome /
shutdown messages, Random theme selection") shutdown messages, Random theme selection.")
(license l:gpl2))) (license l:gpl2)))

View File

@ -133,9 +133,9 @@ to initiate and control SIP sessions.")
(inputs `(("osip" ,osip))) (inputs `(("osip" ,osip)))
(synopsis "Sip abstraction library") (synopsis "Sip abstraction library")
(description "EXosip is a library that hides the complexity of using the (description "EXosip is a library that hides the complexity of using the
SIP protocol for mutlimedia session establishement. This protocol is mainly to SIP protocol for multimedia session establishment. This protocol is mainly to
be used by VoIP telephony applications (endpoints or conference server) but be used by VoIP telephony applications (endpoints or conference server) but
might be also usefull for any application that wish to establish sessions like might be also useful for any application that wish to establish sessions like
multiplayer games.") multiplayer games.")
(license gpl2+) (license gpl2+)
;; (plus OpenSSL linking exception) ;; (plus OpenSSL linking exception)

View File

@ -232,7 +232,7 @@ required structures.")
(files '("etc/ssl/certs/ca-certificates.crt"))))) (files '("etc/ssl/certs/ca-certificates.crt")))))
(synopsis "SSL/TLS implementation") (synopsis "SSL/TLS implementation")
(description (description
"OpenSSL is an implementation of SSL/TLS") "OpenSSL is an implementation of SSL/TLS.")
(license license:openssl) (license license:openssl)
(home-page "http://www.openssl.org/"))) (home-page "http://www.openssl.org/")))

View File

@ -52,6 +52,6 @@
(synopsis "Approximate regex matching library and agrep utility") (synopsis "Approximate regex matching library and agrep utility")
(description "Superset of the POSIX regex API, enabling approximate (description "Superset of the POSIX regex API, enabling approximate
matching. Also ships a version of the agrep utility which behaves similar to matching. Also ships a version of the agrep utility which behaves similar to
grep but features ineaxct matching.") grep but features inexact matching.")
(home-page "http://laurikari.net/tre") (home-page "http://laurikari.net/tre")
(license bsd-2))) (license bsd-2)))

View File

@ -1275,7 +1275,7 @@ and custom quantization matrices.")
(define-public livestreamer (define-public livestreamer
(package (package
(name "livestreamer") (name "livestreamer")
(version "1.12.1") (version "1.12.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -1284,7 +1284,7 @@ and custom quantization matrices.")
(file-name (string-append "livestreamer-" version ".tar.gz")) (file-name (string-append "livestreamer-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1dhgk8v8q1h3km4g5jc0cmjsxdaa2d456fvdb2wk7hmxmmwbqm9j")))) "1fp3d3z2grb1ls97smjkraazpxnvajda2d1g1378s6gzmda2jvjd"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
'(#:tests? #f)) ; tests rely on external web servers '(#:tests? #f)) ; tests rely on external web servers

View File

@ -365,7 +365,7 @@ files, checks if a given domain is a public suffix, provides immediate cookie
domain verification, finds the longest public part of a given domain, finds domain verification, finds the longest public part of a given domain, finds
the shortest private part of a given domain, works with international the shortest private part of a given domain, works with international
domains (UTF-8 and IDNA2008 Punycode), is thread-safe, and handles IDNA2008 domains (UTF-8 and IDNA2008 Punycode), is thread-safe, and handles IDNA2008
UTS#46") UTS#46.")
(license l:x11))) (license l:x11)))
(define-public tidy (define-public tidy
@ -1148,7 +1148,7 @@ cookie mechanism.")
("perl-path-class" ,perl-path-class))) ("perl-path-class" ,perl-path-class)))
(home-page (home-page
"http://search.cpan.org/dist/Catalyst-Plugin-Session-Store-FastMmap") "http://search.cpan.org/dist/Catalyst-Plugin-Session-Store-FastMmap")
(synopsis "FastMmap session storage backend.") (synopsis "FastMmap session storage backend")
(description "Catalyst::Plugin::Session::Store::FastMmap is a fast session (description "Catalyst::Plugin::Session::Store::FastMmap is a fast session
storage plugin for Catalyst that uses an mmap'ed file to act as a shared storage plugin for Catalyst that uses an mmap'ed file to act as a shared
memory interprocess cache. It is based on Cache::FastMmap.") memory interprocess cache. It is based on Cache::FastMmap.")
@ -1567,13 +1567,13 @@ for files and urls.")
(synopsis "Perl locale encoding determination") (synopsis "Perl locale encoding determination")
(description (description
"The POSIX locale system is used to specify both the language "The POSIX locale system is used to specify both the language
conventions requested by the user and the preferred character set to consume conventions requested by the user and the preferred character set to
and output. The Encode::Locale module looks up the charset and encoding consume and output. The Encode::Locale module looks up the charset and
(called a CODESET in the locale jargon) and arranges for the Encode module encoding (called a CODESET in the locale jargon) and arranges for the
to know this encoding under the name \"locale\". It means bytes obtained Encode module to know this encoding under the name \"locale\". It means
from the environment can be converted to Unicode strings by calling bytes obtained from the environment can be converted to Unicode strings
Encode::encode(locale => $bytes) and converted back again with by calling Encode::encode(locale => $bytes) and converted back again
Encode::decode(locale => $string).") with Encode::decode(locale => $string).")
(home-page "http://search.cpan.org/~gaas/Encode-Locale/"))) (home-page "http://search.cpan.org/~gaas/Encode-Locale/")))
(define-public perl-file-listing (define-public perl-file-listing
@ -2298,7 +2298,7 @@ or to multiple server ports.")
`(("perl-io-socket-ssl" ,perl-io-socket-ssl))) `(("perl-io-socket-ssl" ,perl-io-socket-ssl)))
(home-page "http://search.cpan.org/dist/Net-SMTP-SSL") (home-page "http://search.cpan.org/dist/Net-SMTP-SSL")
(synopsis "SSL support for Net::SMTP") (synopsis "SSL support for Net::SMTP")
(description "SSL support for Net::SMTP") (description "SSL support for Net::SMTP.")
(license (package-license perl)))) (license (package-license perl))))
(define-public perl-plack (define-public perl-plack

View File

@ -79,9 +79,9 @@
(synopsis "Lexical database for the English language") (synopsis "Lexical database for the English language")
(description (description
"WordNet® is a large lexical database of English. Nouns, verbs, "WordNet® is a large lexical database of English. Nouns, verbs,
adjectives and adverbs are grouped into sets of cognitive synonyms adjectives and adverbs are grouped into sets of cognitive synonyms (synsets),
(synsets), each expressing a distinct concept. Synsets are interlinked by each expressing a distinct concept. Synsets are interlinked by means of
means of conceptual-semantic and lexical relations. The resulting network of conceptual-semantic and lexical relations. The resulting network of
meaningfully related words and concepts can be navigated with the browser. meaningfully related words and concepts can be navigated with the browser.
WordNet is also freely and publicly available for download. WordNet's WordNet is also freely and publicly available for download. WordNet's
structure makes it a useful tool for computational linguistics and natural structure makes it a useful tool for computational linguistics and natural

View File

@ -279,7 +279,7 @@ System style license, and has no special dependencies.")
"Wmctrl allows to interact with an X window manager that is compatible "Wmctrl allows to interact with an X window manager that is compatible
with the EWMH/NetWM specification. It can query the window manager for with the EWMH/NetWM specification. It can query the window manager for
information, and request for certain window management actions (resize and information, and request for certain window management actions (resize and
move windows, switch between desktops, etc.)") move windows, switch between desktops, etc.).")
(license license:gpl2+))) (license license:gpl2+)))
(define-public scrot (define-public scrot

View File

@ -157,7 +157,7 @@ storage system.")
(synopsis "Widgets library for Xfce") (synopsis "Widgets library for Xfce")
(description (description
"Libxfce4ui is the replacement of the old libxfcegui4 library. It is used "Libxfce4ui is the replacement of the old libxfcegui4 library. It is used
to share commonly used Xfce widgets amoung the Xfce applications.") to share commonly used Xfce widgets among the Xfce applications.")
(license lgpl2.0+))) (license lgpl2.0+)))
(define-public exo (define-public exo
@ -497,7 +497,7 @@ fast.")
"Thunar-volman is an extension for the Thunar File Manager, which enables "Thunar-volman is an extension for the Thunar File Manager, which enables
automatic management of removable drives and media. For example, if automatic management of removable drives and media. For example, if
thunar-volman is installed and configured properly, and you plug in your thunar-volman is installed and configured properly, and you plug in your
digitcal camera, it will automatically spawn your preferred photo application digital camera, it will automatically spawn your preferred photo application
and import the new pictures from your camera.") and import the new pictures from your camera.")
(license gpl2+))) (license gpl2+)))

View File

@ -333,11 +333,11 @@ incorporated technology from Skype's SILK codec and Xiph.Org's CELT codec.")
(inputs `(("libogg" ,libogg) (inputs `(("libogg" ,libogg)
("opus" ,opus) ("opus" ,opus)
("flac" ,flac))) ("flac" ,flac)))
(synopsis "Command line utilities to encode, inspect, and decode .opus (synopsis
files") "Command line utilities to encode, inspect, and decode .opus files")
(description "Opus is a royalty-free, highly versatile audio codec. (description "Opus is a royalty-free, highly versatile audio codec.
Opus-tools provide command line utilities for creating, inspecting and Opus-tools provide command line utilities for creating, inspecting and
decoding .opus files") decoding .opus files.")
(license license:bsd-3) (license license:bsd-3)
(home-page "http://www.opus-codec.org"))) (home-page "http://www.opus-codec.org")))

View File

@ -84,8 +84,8 @@ things the parser might find in the XML document (like start tags).")
(file-type 'regular)))) (file-type 'regular))))
(search-paths native-search-paths) (search-paths native-search-paths)
(description (description
"Libxml2 is the XML C parser and toolkit developed for the Gnome project "Libxml2 is the XML C parser and toolkit developed for the Gnome
(but it is usable outside of the Gnome platform).") project (but it is usable outside of the Gnome platform).")
(license license:x11))) (license license:x11)))
(define-public python-libxml2 (define-public python-libxml2

File diff suppressed because it is too large Load Diff

View File

@ -25,7 +25,7 @@
#:use-module (gnu system linux) ; 'pam-service', etc. #:use-module (gnu system linux) ; 'pam-service', etc.
#:use-module (gnu packages admin) #:use-module (gnu packages admin)
#:use-module ((gnu packages linux) #:use-module ((gnu packages linux)
#:select (eudev kbd e2fsprogs lvm2 fuse alsa-utils)) #:select (eudev kbd e2fsprogs lvm2 fuse alsa-utils crda))
#:use-module ((gnu packages base) #:use-module ((gnu packages base)
#:select (canonical-package glibc)) #:select (canonical-package glibc))
#:use-module (gnu packages package-management) #:use-module (gnu packages package-management)
@ -739,11 +739,11 @@ item of @var{packages}."
(call-with-output-file (call-with-output-file
(string-append rules.d "/90-kvm.rules") (string-append rules.d "/90-kvm.rules")
(lambda (port) (lambda (port)
;; FIXME: As a workaround for ;; Build users are part of the "kvm" group, so we
;; <http://bugs.gnu.org/18994>, make /dev/kvm 666 ;; can fearlessly make /dev/kvm 660 (see
;; instead of 660. ;; <http://bugs.gnu.org/18994>, for background.)
(display "\ (display "\
KERNEL==\"kvm\", GROUP=\"kvm\", MODE=\"0666\"\n" port)))) KERNEL==\"kvm\", GROUP=\"kvm\", MODE=\"0660\"\n" port))))
#:modules '((guix build utils)))) #:modules '((guix build utils))))
(define* (udev-service #:key (udev eudev) (rules '())) (define* (udev-service #:key (udev eudev) (rules '()))
@ -884,6 +884,6 @@ This is the GNU operating system, welcome!\n\n")))
;; The LVM2 rules are needed as soon as LVM2 or the device-mapper is ;; The LVM2 rules are needed as soon as LVM2 or the device-mapper is
;; used, so enable them by default. The FUSE and ALSA rules are ;; used, so enable them by default. The FUSE and ALSA rules are
;; less critical, but handy. ;; less critical, but handy.
(udev-service #:rules (list lvm2 fuse alsa-utils))))) (udev-service #:rules (list lvm2 fuse alsa-utils crda)))))
;;; base.scm ends here ;;; base.scm ends here

View File

@ -68,6 +68,7 @@
operating-system-host-name operating-system-host-name
operating-system-hosts-file operating-system-hosts-file
operating-system-kernel operating-system-kernel
operating-system-kernel-arguments
operating-system-initrd operating-system-initrd
operating-system-users operating-system-users
operating-system-groups operating-system-groups
@ -103,6 +104,8 @@
operating-system? operating-system?
(kernel operating-system-kernel ; package (kernel operating-system-kernel ; package
(default linux-libre)) (default linux-libre))
(kernel-arguments operating-system-kernel-arguments
(default '())) ; list of gexps/strings
(bootloader operating-system-bootloader) ; <grub-configuration> (bootloader operating-system-bootloader) ; <grub-configuration>
(initrd operating-system-initrd ; (list fs) -> M derivation (initrd operating-system-initrd ; (list fs) -> M derivation
@ -225,10 +228,16 @@ as 'needed-for-boot'."
(operating-system-mapped-devices os))) (operating-system-mapped-devices os)))
(define (requirements fs) (define (requirements fs)
;; XXX: Fiddling with dmd service names is not nice.
(append (map (lambda (fs)
(symbol-append 'file-system-
(string->symbol
(file-system-mount-point fs))))
(file-system-dependencies fs))
(map (lambda (md) (map (lambda (md)
(symbol-append 'device-mapping- (symbol-append 'device-mapping-
(string->symbol (mapped-device-target md)))) (string->symbol (mapped-device-target md))))
(device-mappings fs))) (device-mappings fs))))
(sequence %store-monad (sequence %store-monad
(map (lambda (fs) (map (lambda (fs)
@ -866,11 +875,12 @@ listed in OS. The C library expects to find it under
(label (kernel->grub-label kernel)) (label (kernel->grub-label kernel))
(linux kernel) (linux kernel)
(linux-arguments (linux-arguments
(list (string-append "--root=" (cons* (string-append "--root="
(file-system-device root-fs)) (file-system-device root-fs))
#~(string-append "--system=" #$system) #~(string-append "--system=" #$system)
#~(string-append "--load=" #$system #~(string-append "--load=" #$system
"/boot"))) "/boot")
(operating-system-kernel-arguments os)))
(initrd #~(string-append #$system "/initrd")))))) (initrd #~(string-append #$system "/initrd"))))))
(grub-configuration-file (operating-system-bootloader os) entries (grub-configuration-file (operating-system-bootloader os) entries
#:old-entries old-entries))) #:old-entries old-entries)))
@ -887,6 +897,8 @@ this file is the reconstruction of GRUB menu entries for old configurations."
(label #$label) (label #$label)
(root-device #$(file-system-device root)) (root-device #$(file-system-device root))
(kernel #$(operating-system-kernel os)) (kernel #$(operating-system-kernel os))
(kernel-arguments
#$(operating-system-kernel-arguments os))
(initrd #$initrd))))) (initrd #$initrd)))))
(define (operating-system-derivation os) (define (operating-system-derivation os)

View File

@ -37,6 +37,7 @@
file-system-options file-system-options
file-system-check? file-system-check?
file-system-create-mount-point? file-system-create-mount-point?
file-system-dependencies
file-system->spec file-system->spec
string->uuid string->uuid
@ -97,7 +98,10 @@
(check? file-system-check? ; Boolean (check? file-system-check? ; Boolean
(default #t)) (default #t))
(create-mount-point? file-system-create-mount-point? ; Boolean (create-mount-point? file-system-create-mount-point? ; Boolean
(default #f))) (default #f))
(dependencies file-system-dependencies ; list of strings (mount
; points depended on)
(default '())))
(define-inlinable (file-system-needed-for-boot? fs) (define-inlinable (file-system-needed-for-boot? fs)
"Return true if FS has the 'needed-for-boot?' flag set, or if it's the root "Return true if FS has the 'needed-for-boot?' flag set, or if it's the root
@ -153,8 +157,10 @@ UUID representation."
((_ str) ((_ str)
(string? (syntax->datum #'str)) (string? (syntax->datum #'str))
;; A literal string: do the conversion at expansion time. ;; A literal string: do the conversion at expansion time.
(with-syntax ((bv (string->uuid (syntax->datum #'str)))) (let ((bv (string->uuid (syntax->datum #'str))))
#''bv)) (unless bv
(syntax-violation 'uuid "invalid UUID" s))
(datum->syntax #'str bv)))
((_ str) ((_ str)
#'(string->uuid str))))) #'(string->uuid str)))))
@ -231,11 +237,12 @@ UUID representation."
(flags '(read-only bind-mount)))) (flags '(read-only bind-mount))))
(define %control-groups (define %control-groups
(cons (file-system (let ((parent (file-system
(device "cgroup") (device "cgroup")
(mount-point "/sys/fs/cgroup") (mount-point "/sys/fs/cgroup")
(type "tmpfs") (type "tmpfs")
(check? #f)) (check? #f))))
(cons parent
(map (lambda (subsystem) (map (lambda (subsystem)
(file-system (file-system
(device "cgroup") (device "cgroup")
@ -243,9 +250,13 @@ UUID representation."
(type "cgroup") (type "cgroup")
(check? #f) (check? #f)
(options subsystem) (options subsystem)
(create-mount-point? #t))) (create-mount-point? #t)
;; This must be mounted after, and unmounted before the
;; parent directory.
(dependencies (list parent))))
'("cpuset" "cpu" "cpuacct" "memory" "devices" "freezer" '("cpuset" "cpu" "cpuacct" "memory" "devices" "freezer"
"blkio" "perf_event" "hugetlb")))) "blkio" "perf_event" "hugetlb")))))
(define %base-file-systems (define %base-file-systems
;; List of basic file systems to be mounted. Note that /proc and /sys are ;; List of basic file systems to be mounted. Note that /proc and /sys are

View File

@ -75,6 +75,7 @@ under /root/.guix-profile where GUIX is installed."
(with-directory-excursion %root (with-directory-excursion %root
(zero? (system* "tar" "--xz" "--format=gnu" (zero? (system* "tar" "--xz" "--format=gnu"
"--owner=root:0" "--group=root:0" "--owner=root:0" "--group=root:0"
"--mtime=@0" ;for files in /var/guix
"--check-links" "--check-links"
"-cvf" #$output "-cvf" #$output
;; Avoid adding / and /var to the tarball, ;; Avoid adding / and /var to the tarball,
@ -273,8 +274,9 @@ You have been warned. Thanks for being so brave.
(guix-service #:authorize-hydra-key? #t) (guix-service #:authorize-hydra-key? #t)
;; Start udev so that useful device nodes are available. ;; Start udev so that useful device nodes are available.
;; Use device-mapper rules for cryptsetup & co. ;; Use device-mapper rules for cryptsetup & co; enable the CRDA for
(udev-service #:rules (list lvm2)) ;; regulations-compliant WiFi access.
(udev-service #:rules (list lvm2 crda))
;; Add the 'cow-store' service, which users have to start manually ;; Add the 'cow-store' service, which users have to start manually
;; since it takes the installation directory as an argument. ;; since it takes the installation directory as an argument.

View File

@ -156,7 +156,7 @@ fi
# Adjust the prompt depending on whether we're in 'guix environment'. # Adjust the prompt depending on whether we're in 'guix environment'.
if [ -n \"$GUIX_ENVIRONMENT\" ] if [ -n \"$GUIX_ENVIRONMENT\" ]
then then
export PS1='\\u@\\h \\w\\ [env]$ ' export PS1='\\u@\\h \\w [env]\\$ '
else else
export PS1='\\u@\\h \\w\\$ ' export PS1='\\u@\\h \\w\\$ '
fi fi

View File

@ -493,7 +493,8 @@ exec " #$qemu "/bin/" #$(qemu-command (%current-system))
#~(" -kernel " #$(operating-system-kernel os) "/bzImage \ #~(" -kernel " #$(operating-system-kernel os) "/bzImage \
-initrd " #$os-drv "/initrd \ -initrd " #$os-drv "/initrd \
-append \"" #$(if graphic? "" "console=ttyS0 ") -append \"" #$(if graphic? "" "console=ttyS0 ")
"--system=" #$os-drv " --load=" #$os-drv "/boot --root=/dev/vda1\" ")) "--system=" #$os-drv " --load=" #$os-drv "/boot --root=/dev/vda1 "
(string-join (list #+@(operating-system-kernel-arguments os))) "\" "))
#$(common-qemu-options image #$(common-qemu-options image
(map file-system-mapping-source (map file-system-mapping-source
(cons %store-mapping mappings))) (cons %store-mapping mappings)))

View File

@ -71,6 +71,7 @@
(define* (ruby-build store name inputs (define* (ruby-build store name inputs
#:key #:key
(gem-flags ''())
(test-target "test") (test-target "test")
(tests? #t) (tests? #t)
(phases '(@ (guix build ruby-build-system) (phases '(@ (guix build ruby-build-system)
@ -95,6 +96,7 @@
(source (source
source)) source))
#:system ,system #:system ,system
#:gem-flags ,gem-flags
#:test-target ,test-target #:test-target ,test-target
#:tests? ,tests? #:tests? ,tests?
#:phases ,phases #:phases ,phases

View File

@ -231,7 +231,8 @@ host name without trailing dot."
(resolve-interface '(web client)) (resolve-interface '(web client))
'current-http-proxy)) 'current-http-proxy))
(parameterize ((current-http-proxy #f)) (parameterize ((current-http-proxy #f))
(when (getenv "https_proxy") (when (and=> (getenv "https_proxy")
(negate string-null?))
(format (current-error-port) (format (current-error-port)
"warning: 'https_proxy' is ignored~%")) "warning: 'https_proxy' is ignored~%"))
(thunk)) (thunk))

View File

@ -63,7 +63,8 @@ directory."
(zero? (system* "rake" test-target)) (zero? (system* "rake" test-target))
#t)) #t))
(define* (install #:key source inputs outputs #:allow-other-keys) (define* (install #:key source inputs outputs (gem-flags '())
#:allow-other-keys)
(let* ((ruby-version (let* ((ruby-version
(match:substring (string-match "ruby-(.*)\\.[0-9]$" (match:substring (string-match "ruby-(.*)\\.[0-9]$"
(assoc-ref inputs "ruby")) (assoc-ref inputs "ruby"))
@ -72,10 +73,11 @@ directory."
(gem-home (string-append out "/lib/ruby/gems/" ruby-version ".0"))) (gem-home (string-append out "/lib/ruby/gems/" ruby-version ".0")))
(setenv "GEM_HOME" gem-home) (setenv "GEM_HOME" gem-home)
(mkdir-p gem-home) (mkdir-p gem-home)
(zero? (system* "gem" "install" "--local" (zero? (apply system* "gem" "install" "--local"
(first-matching-file "\\.gem$") (first-matching-file "\\.gem$")
;; Executables should go into /bin, not /lib/ruby/gems. ;; Executables should go into /bin, not /lib/ruby/gems.
"--bindir" (string-append out "/bin"))))) "--bindir" (string-append out "/bin")
gem-flags))))
(define %standard-phases (define %standard-phases
(modify-phases gnu:%standard-phases (modify-phases gnu:%standard-phases

View File

@ -398,22 +398,23 @@ system to PUT-OLD."
(define-syntax read-types (define-syntax read-types
(syntax-rules () (syntax-rules ()
((_ bv offset ()) ((_ return bv offset () (values ...))
'()) (return values ...))
((_ bv offset (type0 types ...)) ((_ return bv offset (type0 types ...) (values ...))
(cons (read-type bv offset type0) (read-types return
(read-types bv (+ offset (type-size type0)) (types ...)))))) bv (+ offset (type-size type0)) (types ...)
(values ... (read-type bv offset type0))))))
(define-syntax define-c-struct (define-syntax define-c-struct
(syntax-rules () (syntax-rules ()
"Define READ as an optimized serializer and WRITE! as a deserializer for "Define READ as a deserializer and WRITE! as a serializer for the C
the C structure with the given TYPES." structure with the given TYPES. READ uses WRAP-FIELDS to return its value."
((_ name read write! (fields types) ...) ((_ name wrap-fields read write! (fields types) ...)
(begin (begin
(define (write! bv offset fields ...) (define (write! bv offset fields ...)
(write-types bv offset (types ...) (fields ...))) (write-types bv offset (types ...) (fields ...)))
(define (read bv offset) (define (read bv offset)
(read-types bv offset (types ...))))))) (read-types wrap-fields bv offset (types ...) ()))))))
;;; ;;;
@ -463,6 +464,8 @@ the C structure with the given TYPES."
32)) 32))
(define-c-struct sockaddr-in ;<linux/in.h> (define-c-struct sockaddr-in ;<linux/in.h>
(lambda (family port address)
(make-socket-address family address port))
read-sockaddr-in read-sockaddr-in
write-sockaddr-in! write-sockaddr-in!
(family unsigned-short) (family unsigned-short)
@ -470,6 +473,8 @@ the C structure with the given TYPES."
(address (int32 ~ big))) (address (int32 ~ big)))
(define-c-struct sockaddr-in6 ;<linux/in6.h> (define-c-struct sockaddr-in6 ;<linux/in6.h>
(lambda (family port flowinfo address scopeid)
(make-socket-address family address port flowinfo scopeid))
read-sockaddr-in6 read-sockaddr-in6
write-sockaddr-in6! write-sockaddr-in6!
(family unsigned-short) (family unsigned-short)
@ -501,14 +506,9 @@ bytevector BV at INDEX."
"Read a socket address from bytevector BV at INDEX." "Read a socket address from bytevector BV at INDEX."
(let ((family (bytevector-u16-native-ref bv index))) (let ((family (bytevector-u16-native-ref bv index)))
(cond ((= family AF_INET) (cond ((= family AF_INET)
(match (read-sockaddr-in bv index) (read-sockaddr-in bv index))
((family port address)
(make-socket-address family address port))))
((= family AF_INET6) ((= family AF_INET6)
(match (read-sockaddr-in6 bv index) (read-sockaddr-in6 bv index))
((family port flowinfo address scopeid)
(make-socket-address family address port
flowinfo scopeid))))
(else (else
"unsupported socket address family" family)))) "unsupported socket address family" family))))

View File

@ -32,6 +32,7 @@
cddl1.0 cddl1.0
cecill-c cecill-c
artistic2.0 clarified-artistic artistic2.0 clarified-artistic
copyleft-next
cpl1.0 cpl1.0
epl1.0 epl1.0
expat expat
@ -154,6 +155,11 @@ at URI, which may be a file:// URI pointing the package's tree."
"http://gianluca.dellavedova.org/2011/01/03/clarified-artistic-license/" "http://gianluca.dellavedova.org/2011/01/03/clarified-artistic-license/"
"https://www.gnu.org/licenses/license-list.html#ArtisticLicense2")) "https://www.gnu.org/licenses/license-list.html#ArtisticLicense2"))
(define copyleft-next
(license "copyleft-next"
"https://raw.github.com/richardfontana/copyleft-next/master/Releases/copyleft-next-0.3.0"
"GPL-compatible copyleft license"))
(define cpl1.0 (define cpl1.0
(license "CPL 1.0" (license "CPL 1.0"
"http://directory.fsf.org/wiki/License:CPLv1.0" "http://directory.fsf.org/wiki/License:CPLv1.0"

View File

@ -307,22 +307,6 @@ RX."
((<) #t) ((<) #t)
(else #f))))) (else #f)))))
(define-syntax-rule (leave-on-EPIPE exp ...)
"Run EXP... in a context when EPIPE errors are caught and lead to 'exit'
with successful exit code. This is useful when writing to the standard output
may lead to EPIPE, because the standard output is piped through 'head' or
similar."
(catch 'system-error
(lambda ()
exp ...)
(lambda args
;; We really have to exit this brutally, otherwise Guile eventually
;; attempts to flush all the ports, leading to an uncaught EPIPE down
;; the path.
(if (= EPIPE (system-error-errno args))
(primitive-_exit 0)
(apply throw args)))))
(define (upgradeable? name current-version current-path) (define (upgradeable? name current-version current-path)
"Return #t if there's a version of package NAME newer than CURRENT-VERSION, "Return #t if there's a version of package NAME newer than CURRENT-VERSION,
or if the newest available version is equal to CURRENT-VERSION but would have or if the newest available version is equal to CURRENT-VERSION but would have

View File

@ -143,7 +143,7 @@ Publish ~a over HTTP.\n") %store-directory)
"Generate a narinfo key/value string for STORE-PATH using the details in "Generate a narinfo key/value string for STORE-PATH using the details in
PATH-INFO. The narinfo is signed with KEY." PATH-INFO. The narinfo is signed with KEY."
(let* ((url (string-append "nar/" (basename store-path))) (let* ((url (string-append "nar/" (basename store-path)))
(hash (bytevector->base32-string (hash (bytevector->nix-base32-string
(path-info-hash path-info))) (path-info-hash path-info)))
(size (path-info-nar-size path-info)) (size (path-info-nar-size path-info))
(references (string-join (references (string-join

View File

@ -280,6 +280,7 @@ Report the size of PACKAGE and its dependencies.\n"))
(() (()
(leave (_ "missing store item argument\n"))) (leave (_ "missing store item argument\n")))
((file) ((file)
(leave-on-EPIPE
(with-store store (with-store store
(run-with-store store (run-with-store store
(mlet* %store-monad ((item (ensure-store-item file)) (mlet* %store-monad ((item (ensure-store-item file))
@ -289,6 +290,6 @@ Report the size of PACKAGE and its dependencies.\n"))
(profile->page-map profile map-file) (profile->page-map profile map-file)
(return #t)) (return #t))
(display-profile* profile))) (display-profile* profile)))
#:system system))) #:system system))))
((files ...) ((files ...)
(leave (_ "too many arguments\n"))))))) (leave (_ "too many arguments\n")))))))

View File

@ -249,16 +249,19 @@ it atomically, and then run OS's activation script."
(('boot-parameters ('version 0) (('boot-parameters ('version 0)
('label label) ('root-device root) ('label label) ('root-device root)
('kernel linux) ('kernel linux)
_ ...) rest ...)
(menu-entry (menu-entry
(label (string-append label " (#" (label (string-append label " (#"
(number->string number) ", " (number->string number) ", "
(seconds->string time) ")")) (seconds->string time) ")"))
(linux linux) (linux linux)
(linux-arguments (linux-arguments
(list (string-append "--root=" root) (cons* (string-append "--root=" root)
#~(string-append "--system=" #$system) #~(string-append "--system=" #$system)
#~(string-append "--load=" #$system "/boot"))) #~(string-append "--load=" #$system "/boot")
(match (assq 'kernel-arguments rest)
((_ args) args)
(#f '())))) ;old format
(initrd #~(string-append #$system "/initrd")))) (initrd #~(string-append #$system "/initrd"))))
(_ ;unsupported format (_ ;unsupported format
(warning (_ "unrecognized boot parameters for '~a'~%") (warning (_ "unrecognized boot parameters for '~a'~%")

View File

@ -62,6 +62,7 @@
show-manifest-transaction show-manifest-transaction
call-with-error-handling call-with-error-handling
with-error-handling with-error-handling
leave-on-EPIPE
read/eval read/eval
read/eval-package-expression read/eval-package-expression
location->string location->string
@ -430,6 +431,22 @@ interpreted."
(leave (_ "~a: ~a~%") proc (leave (_ "~a: ~a~%") proc
(apply format #f format-string format-args)))))) (apply format #f format-string format-args))))))
(define-syntax-rule (leave-on-EPIPE exp ...)
"Run EXP... in a context when EPIPE errors are caught and lead to 'exit'
with successful exit code. This is useful when writing to the standard output
may lead to EPIPE, because the standard output is piped through 'head' or
similar."
(catch 'system-error
(lambda ()
exp ...)
(lambda args
;; We really have to exit this brutally, otherwise Guile eventually
;; attempts to flush all the ports, leading to an uncaught EPIPE down
;; the path.
(if (= EPIPE (system-error-errno args))
(primitive-_exit 0)
(apply throw args)))))
(define %guix-user-module (define %guix-user-module
;; Module in which user expressions are evaluated. ;; Module in which user expressions are evaluated.
;; Compute lazily to avoid circularity with (guix gexp). ;; Compute lazily to avoid circularity with (guix gexp).

View File

@ -3,6 +3,7 @@
# all of them should be listed here.) Strings of the tools are in 'po/guix'. # all of them should be listed here.) Strings of the tools are in 'po/guix'.
gnu/packages/abiword.scm gnu/packages/abiword.scm
gnu/packages/aspell.scm gnu/packages/aspell.scm
gnu/packages/audio.scm
gnu/packages/backup.scm gnu/packages/backup.scm
gnu/packages/base.scm gnu/packages/base.scm
gnu/packages/bittorrent.scm gnu/packages/bittorrent.scm
@ -16,6 +17,8 @@ gnu/packages/games.scm
gnu/packages/gcc.scm gnu/packages/gcc.scm
gnu/packages/geeqie.scm gnu/packages/geeqie.scm
gnu/packages/gettext.scm gnu/packages/gettext.scm
gnu/packages/gimp.scm
gnu/packages/gnome.scm
gnu/packages/gnuzilla.scm gnu/packages/gnuzilla.scm
gnu/packages/gtk.scm gnu/packages/gtk.scm
gnu/packages/guile.scm gnu/packages/guile.scm
@ -26,6 +29,7 @@ gnu/packages/jemalloc.scm
gnu/packages/key-mon.scm gnu/packages/key-mon.scm
gnu/packages/less.scm gnu/packages/less.scm
gnu/packages/lesstif.scm gnu/packages/lesstif.scm
gnu/packages/libreoffice.scm
gnu/packages/linux.scm gnu/packages/linux.scm
gnu/packages/lout.scm gnu/packages/lout.scm
gnu/packages/messaging.scm gnu/packages/messaging.scm

View File

@ -40,6 +40,16 @@
(bytevector=? (uuid "4dab5feb-d176-45de-b287-9b0a6e4c01cb") (bytevector=? (uuid "4dab5feb-d176-45de-b287-9b0a6e4c01cb")
(string->uuid "4dab5feb-d176-45de-b287-9b0a6e4c01cb")))) (string->uuid "4dab5feb-d176-45de-b287-9b0a6e4c01cb"))))
(test-assert "uuid, syntax error"
(catch 'syntax-error
(lambda ()
(eval '(uuid "foobar") (current-module))
#f)
(lambda (key proc message location form . args)
(and (eq? proc 'uuid)
(string-contains message "invalid UUID")
(equal? form '(uuid "foobar"))))))
(test-end) (test-end)

View File

@ -81,7 +81,7 @@ NarSize: ~d
References: ~a~%" References: ~a~%"
%item %item
(basename %item) (basename %item)
(bytevector->base32-string (bytevector->nix-base32-string
(path-info-hash info)) (path-info-hash info))
(path-info-nar-size info) (path-info-nar-size info)
(basename (first (path-info-references info))))) (basename (first (path-info-references info)))))