Merge branch 'master' into staging

This commit is contained in:
Marius Bakke 2018-12-09 00:18:32 +01:00
commit fbb7b04a85
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
84 changed files with 1059 additions and 638 deletions

View File

@ -459,7 +459,8 @@ check-system: $(GOBJECTS)
# Public key used to sign substitutes from hydra.gnu.org & co. # Public key used to sign substitutes from hydra.gnu.org & co.
dist_pkgdata_DATA = \ dist_pkgdata_DATA = \
etc/substitutes/hydra.gnu.org.pub \ etc/substitutes/hydra.gnu.org.pub \
etc/substitutes/berlin.guixsd.org.pub etc/substitutes/berlin.guixsd.org.pub \
etc/substitutes/ci.guix.info.pub
# Bash completion file. # Bash completion file.
dist_bashcompletion_DATA = etc/completion/bash/guix \ dist_bashcompletion_DATA = etc/completion/bash/guix \
@ -762,7 +763,7 @@ assert-no-store-file-names: $(distdir)/ChangeLog
exit 1 ; \ exit 1 ; \
fi fi
# Make sure hydra.gnu.org has the important binaries. # Make sure important substitutes are available.
assert-binaries-available: $(GOBJECTS) assert-binaries-available: $(GOBJECTS)
$(AM_V_at)$(top_builddir)/pre-inst-env "$(GUILE)" \ $(AM_V_at)$(top_builddir)/pre-inst-env "$(GUILE)" \
"$(top_srcdir)/build-aux/check-available-binaries.scm" "$(top_srcdir)/build-aux/check-available-binaries.scm"

58
NEWS
View File

@ -11,28 +11,38 @@ Copyright © 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
Please send Guix bug reports to bug-guix@gnu.org. Please send Guix bug reports to bug-guix@gnu.org.
* Changes since 0.15.0 * Changes in 0.16.0 (since 0.15.0)
** Package management ** Package management
*** Default substitute URL changed to https://ci.guix.info
*** guix pull -l lists new and upgraded packages *** guix pull -l lists new and upgraded packages
*** guix pull now supports channels via ~/.config/guix/channels.scm *** guix pull now supports channels via ~/.config/guix/channels.scm
*** New --profile or -p option for guix pull *** New --profile or -p option for guix pull
*** ~/.config/guix/current is now a symlink to /var/guix/profiles
*** New guix describe command *** New guix describe command
*** guix package no longer shows build logs by default *** guix package no longer shows build logs by default
*** guix commands now produce colored output by default *** guix commands now produce colored output by default
*** User interface now reports grafts separately
*** Manifests can now refer to arbitrary Guix commits using “inferiors” *** Manifests can now refer to arbitrary Guix commits using “inferiors”
*** New --with-branch and --with-commit package transformation options
*** guix build -f now accepts any kind of “file-like object”
*** Git checkouts may now be fetched from Software Heritage
*** New guix repl command for use by inferiors
*** New guix processes command *** New guix processes command
*** guix pack now honors --localstatedir for all its backends *** guix pack now honors --localstatedir for all its backends
*** New opam importer for guix import
*** guix import pypi has a new --recursive option *** guix import pypi has a new --recursive option
*** guix import hackage has a new --recursive option *** guix import hackage has a new --recursive option
*** guix import stackage has a new --recursive option *** guix import stackage has a new --recursive option
The short option for --lts-version is now -l (used to be -r). The short option for --lts-version is now -l (used to be -r).
*** guix refresh now stores upstream keys in ~/.config/guix/upstream *** guix refresh now stores upstream keys in ~/.config/guix/upstream
*** Guix now depends on Guile-Gcrypt *** Guix now depends on Guile-Gcrypt
*** Guix now requires Guile-JSON
** Distribution ** Distribution
*** Rust is now bootstrapped from mrustc
*** The GNU Shepherd was upgraded to 0.5.0 *** The GNU Shepherd was upgraded to 0.5.0
*** guix system reconfigure now loads Shepherd service replacements *** guix system reconfigure now loads Shepherd service replacements
*** herd schedule mcron now displays mcrons job schedule *** herd schedule mcron now displays mcrons job schedule
@ -40,21 +50,59 @@ The short option for --lts-version is now -l (used to be -r).
*** herd invalidate nscd TABLE instructs nscd to invalidate TABLE *** herd invalidate nscd TABLE instructs nscd to invalidate TABLE
*** New services *** New services
gitolite, iptables, pcscd, prometheus-node-exporter, varnish ddclient, gitolite, iptables, pcscd, prometheus-node-exporter, varnish
*** 985 new packages
*** 1945 package updates
Noteworthy updates:
bash 4.4.23, binutils 2.31.1, cups 2.2.8, enlightenment 0.22.4, gcc 8.2.0,
gdb 8.2, ghc 8.4.3, gimp 2.10.6, glibc 2.28, gnupg 2.2.11, go 1.11.1,
guile 2.2.4, icecat 60.3.0-gnu1, icedtea 3.7.0, libreoffice 6.1.3.2,
linux-libre 4.19.6, ocaml 4.07.1, octave 4.4.1, perl 5.28.0,
python2 2.7.15, python 3.7.0, racket 7.0, rust 1.28.0, r 3.5.1,
sbcl 1.4.13, shepherd 0.5.0, xorg-server 1.20.3
** Programming interfaces ** Programming interfaces
*** New (guix channels) module *** New (guix channels) module, see “Channels” in the manual
*** New (guix inferior) module *** New (guix inferior) module, see “Inferiors” in the manual
*** New (guix status) module *** New (guix describe) module, used by guix describe
*** New (guix status) module, for build progress reporting
*** packages->manifest now accepts inferior packages *** packages->manifest now accepts inferior packages
*** New build systems: clojure, guile *** New build systems: clojure, guile
*** New git-checkout record constructor in (guix git)
*** Shepherd services can now declare custom actions *** Shepherd services can now declare custom actions
*** More of the (gnu system …) APIs are now non-monadic *** More of the (gnu system …) APIs are now non-monadic
*** New add-file-tree-to-store procedure in (guix store) *** New add-file-tree-to-store procedure in (guix store)
*** New (guix swh) module to access Software Heritage
*** New (guix build debug-link) module, for ELF .gnu_debuglink sections
** Noteworthy bug fixes ** Noteworthy bug fixes
*** Fix GCC crashes caused by a patch of ours (<https://bugs.gnu.org/31708>)
*** guix import hackage now supports custom-setup field
(<https://bugs.gnu.org/23961>)
*** guix-daemon taken from guix pull looks up guix in the right place
(<https://bugs.gnu.org/32183>)
*** Try several file names when looking up kernel modules
(<https://bugs.gnu.org/31714>)
*** file-system-* services are now always started after udev
(<https://bugs.gnu.org/32313>)
*** Racket now ignores bytecode checksums for files in the store
(<https://bugs.gnu.org/30680>)
*** Grafting now updates CRCs in .gnu_debuglink ELF sections
(<https://bugs.gnu.org/19973>)
*** UUID computation for VMs is now deterministic (<https://bugs.gnu.org/32652>)
*** git-predicate from (guix git) now uses Guile-Git, which fixes corner cases
(<https://bugs.gnu.org/27925>)
*** (guix store database) registers each store item only once
(<https://bugs.gnu.org/32600>)
*** The File > Open dialog in LibreOffice no longer triggers a crash
(<https://bugs.gnu.org/30642>)
*** Account home directory is always honored (<https://bugs.gnu.org/33422>)
** Native language support ** Native language support
*** The manual is now partially translated into German, in addition to French *** The manual is now partially translated into German, in addition to French

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -17,7 +17,7 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
;;; ;;;
;;; Check whether important binaries are available at hydra.gnu.org. ;;; Check whether important binaries are available.
;;; ;;;
(use-modules (guix store) (use-modules (guix store)

View File

@ -17,7 +17,7 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
;;; ;;;
;;; Check whether important binaries are available at hydra.gnu.org. ;;; Check whether important binaries are available.
;;; ;;;
(use-modules (guix store) (use-modules (guix store)

View File

@ -30,6 +30,7 @@
(ice-9 match) (ice-9 match)
(ice-9 rdelim) (ice-9 rdelim)
(ice-9 regex) (ice-9 regex)
(ice-9 vlist)
(ice-9 pretty-print)) (ice-9 pretty-print))
(define %header-rx (define %header-rx
@ -98,31 +99,60 @@ paragraph."
(lambda (match port) (lambda (match port)
(let ((stars (match:substring match 1))) (let ((stars (match:substring match 1)))
(format port (format port
"~a ~a new packages~%~%~a~%~%" "~a ~a new packages~%~%"
stars (length added) stars (length added)))))))))
(enumeration->paragraph added)))))))))
(define (write-packages-updates news-file old new) (define (write-packages-updates news-file old new)
"Write to NEWS-FILE the list of packages upgraded between OLD and NEW." "Write to NEWS-FILE the list of packages upgraded between OLD and NEW."
(let ((upgraded (filter-map (match-lambda (define important
'("gcc" "glibc" "binutils" "gdb" ;toolchain
"shepherd" "linux-libre" "xorg-server" "cups" ;OS
"gnome" "xfce" "enlightenment" "lxde" "mate" ;desktop env.
"guile" "bash" "python" "python2" "perl" ;languages
"ghc" "rust" "go" "julia" "r" "ocaml"
"icedtea" "openjdk" "clojure" "sbcl" "racket"
"emacs" "gimp" "inkscape" "libreoffice" ;applications
"octave" "icecat" "gnupg"))
(let* ((table (fold (lambda (package table)
(match package
((name . version)
(vhash-cons name version table))))
vlist-null
new))
(latest (lambda (name)
(let ((versions (vhash-fold* cons '() name table)))
(match (sort versions version>?)
((latest . _) latest)))))
(upgraded (filter-map (match-lambda
((package . new-version) ((package . new-version)
(match (assoc package old) (match (assoc package old)
((_ . old-version) ((_ . old-version)
(and (version>? new-version old-version) (and (string=? new-version
(string-append package "@" (latest package))
new-version))) (version>? new-version old-version)
(cons package new-version)))
(_ #f)))) (_ #f))))
new))) new))
(noteworthy (filter (match-lambda
((package . version)
(member package important)))
upgraded)))
(with-atomic-file-replacement news-file (with-atomic-file-replacement news-file
(lambda (input output) (lambda (input output)
(rewrite-org-section input output (rewrite-org-section input output
(make-regexp "^(\\*+) (.*) package updates") (make-regexp "^(\\*+) (.*) package updates")
(lambda (match port) (lambda (match port)
(let ((stars (match:substring match 1))) (let ((stars (match:substring match 1))
(lst (map (match-lambda
((package . version)
(string-append package " "
version)))
noteworthy)))
(format port (format port
"~a ~a package updates~%~%~a~%~%" "~a ~a package updates~%~%Noteworthy updates:~%~a~%~%"
stars (length upgraded) stars (length upgraded)
(enumeration->paragraph upgraded))))))))) (enumeration->paragraph lst)))))))))
(define (main . args) (define (main . args)
@ -138,6 +168,8 @@ paragraph."
(let-values (((previous-version new-version) (let-values (((previous-version new-version)
(call-with-input-file news-file NEWS->versions))) (call-with-input-file news-file NEWS->versions)))
(format (current-error-port) "Updating NEWS for ~a to ~a...~%"
previous-version new-version)
(let* ((old (call-with-input-file (package-file previous-version) (let* ((old (call-with-input-file (package-file previous-version)
read)) read))
(new (fold-packages (lambda (p r) (new (fold-packages (lambda (p r)

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -133,7 +133,8 @@ COMMIT."
;; Add an indirect GC root for SOURCE in the current directory. ;; Add an indirect GC root for SOURCE in the current directory.
(false-if-exception (delete-file root)) (false-if-exception (delete-file root))
(symlink source root) (symlink source root)
(add-indirect-root store root) (add-indirect-root store
(string-append (getcwd) "/" root))
(format #t "source code for commit ~a: ~a (GC root: ~a)~%" (format #t "source code for commit ~a: ~a (GC root: ~a)~%"
commit source root))))) commit source root)))))

View File

@ -120,15 +120,7 @@ if test "x$guix_build_daemon" = "xyes"; then
dnl Determine the appropriate default list of substitute URLs (GnuTLS dnl Determine the appropriate default list of substitute URLs (GnuTLS
dnl is required so we can default to 'https'.) dnl is required so we can default to 'https'.)
case "x$host_cpu" in guix_substitute_urls="https://ci.guix.info"
xaarch64)
# Currently only berlin.guixsd.org provides aarch64 binaries.
guix_substitute_urls="https://berlin.guixsd.org"
;;
*)
guix_substitute_urls="https://mirror.hydra.gnu.org"
;;
esac
AC_MSG_CHECKING([for default substitute URLs]) AC_MSG_CHECKING([for default substitute URLs])
AC_MSG_RESULT([$guix_substitute_urls]) AC_MSG_RESULT([$guix_substitute_urls])

View File

@ -443,7 +443,7 @@ as timestamps or randomly-generated output in the build result.
Another option is to use @command{guix challenge} (@pxref{Invoking guix Another option is to use @command{guix challenge} (@pxref{Invoking guix
challenge}). You may run it once the package has been committed and challenge}). You may run it once the package has been committed and
built by @code{hydra.gnu.org} to check whether it obtains the same built by @code{@value{SUBSTITUTE-SERVER}} to check whether it obtains the same
result as you did. Better yet: Find another machine that can build it result as you did. Better yet: Find another machine that can build it
and run @command{guix publish}. Since the remote build machine is and run @command{guix publish}. Since the remote build machine is
likely different from yours, this can catch non-determinism issues likely different from yours, this can catch non-determinism issues

View File

@ -13,6 +13,9 @@
@set OPENPGP-SIGNING-KEY-ID 3CE464558A84FDC69DB40CFB090B11993D9AEBB5 @set OPENPGP-SIGNING-KEY-ID 3CE464558A84FDC69DB40CFB090B11993D9AEBB5
@set KEY-SERVER pool.sks-keyservers.net @set KEY-SERVER pool.sks-keyservers.net
@c The official substitute server used by default.
@set SUBSTITUTE-SERVER ci.guix.info
@copying @copying
Copyright @copyright{} 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès@* Copyright @copyright{} 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès@*
Copyright @copyright{} 2013, 2014, 2016 Andreas Enge@* Copyright @copyright{} 2013, 2014, 2016 Andreas Enge@*
@ -1274,8 +1277,7 @@ remote procedure call (@pxref{The Store}).
@anchor{daemon-substitute-urls} @anchor{daemon-substitute-urls}
Consider @var{urls} the default whitespace-separated list of substitute Consider @var{urls} the default whitespace-separated list of substitute
source URLs. When this option is omitted, source URLs. When this option is omitted,
@indicateurl{https://mirror.hydra.gnu.org https://hydra.gnu.org} is used @indicateurl{https://@value{SUBSTITUTE-SERVER}} is used.
(@code{mirror.hydra.gnu.org} is a mirror of @code{hydra.gnu.org}).
This means that substitutes may be downloaded from @var{urls}, as long This means that substitutes may be downloaded from @var{urls}, as long
as they are signed by a trusted signature (@pxref{Substitutes}). as they are signed by a trusted signature (@pxref{Substitutes}).
@ -2321,7 +2323,7 @@ also result from derivation builds, can be available as substitutes.
@cindex hydra @cindex hydra
@cindex build farm @cindex build farm
The @code{mirror.hydra.gnu.org} server is a front-end to an official build farm The @code{@value{SUBSTITUTE-SERVER}} server is a front-end to an official build farm
that builds packages from Guix continuously for some that builds packages from Guix continuously for some
architectures, and makes them available as substitutes. This is the architectures, and makes them available as substitutes. This is the
default source of substitutes; it can be overridden by passing the default source of substitutes; it can be overridden by passing the
@ -2353,33 +2355,28 @@ other substitute server.
@cindex substitutes, authorization thereof @cindex substitutes, authorization thereof
@cindex access control list (ACL), for substitutes @cindex access control list (ACL), for substitutes
@cindex ACL (access control list), for substitutes @cindex ACL (access control list), for substitutes
To allow Guix to download substitutes from @code{hydra.gnu.org} or a To allow Guix to download substitutes from @code{@value{SUBSTITUTE-SERVER}} or a
mirror thereof, you mirror thereof, you
must add its public key to the access control list (ACL) of archive must add its public key to the access control list (ACL) of archive
imports, using the @command{guix archive} command (@pxref{Invoking guix imports, using the @command{guix archive} command (@pxref{Invoking guix
archive}). Doing so implies that you trust @code{hydra.gnu.org} to not archive}). Doing so implies that you trust @code{@value{SUBSTITUTE-SERVER}} to not
be compromised and to serve genuine substitutes. be compromised and to serve genuine substitutes.
The public key for @code{hydra.gnu.org} is installed along with Guix, in The public key for @code{@value{SUBSTITUTE-SERVER}} is installed along with Guix, in
@code{@var{prefix}/share/guix/hydra.gnu.org.pub}, where @var{prefix} is @code{@var{prefix}/share/guix/@value{SUBSTITUTE-SERVER}.pub}, where @var{prefix} is
the installation prefix of Guix. If you installed Guix from source, the installation prefix of Guix. If you installed Guix from source,
make sure you checked the GPG signature of make sure you checked the GPG signature of
@file{guix-@value{VERSION}.tar.gz}, which contains this public key file. @file{guix-@value{VERSION}.tar.gz}, which contains this public key file.
Then, you can run something like this: Then, you can run something like this:
@example @example
# guix archive --authorize < @var{prefix}/share/guix/hydra.gnu.org.pub # guix archive --authorize < @var{prefix}/share/guix/@value{SUBSTITUTE-SERVER}.pub
@end example @end example
@quotation Note @quotation Note
Similarly, the @file{berlin.guixsd.org.pub} file contains the public key Similarly, the @file{hydra.gnu.org.pub} file contains the public key
for the project's new build farm, reachable at of an independent build farm also run by the project, reachable at
@indicateurl{https://berlin.guixsd.org}. @indicateurl{https://mirror.hydra.gnu.org}.
As of this writing @code{berlin.guixsd.org} is being upgraded so it can
better scale up, but you might want to give it a try. It is backed by
20 x86_64/i686 build nodes and may be able to provide substitutes more
quickly than @code{mirror.hydra.gnu.org}.
@end quotation @end quotation
Once this is in place, the output of a command like @code{guix build} Once this is in place, the output of a command like @code{guix build}
@ -2409,7 +2406,7 @@ $ guix build emacs --dry-run
@end example @end example
@noindent @noindent
This indicates that substitutes from @code{hydra.gnu.org} are usable and This indicates that substitutes from @code{@value{SUBSTITUTE-SERVER}} are usable and
will be downloaded, when possible, for future builds. will be downloaded, when possible, for future builds.
@cindex substitutes, how to disable @cindex substitutes, how to disable
@ -2501,9 +2498,9 @@ by a server.
Today, each individual's control over their own computing is at the Today, each individual's control over their own computing is at the
mercy of institutions, corporations, and groups with enough power and mercy of institutions, corporations, and groups with enough power and
determination to subvert the computing infrastructure and exploit its determination to subvert the computing infrastructure and exploit its
weaknesses. While using @code{hydra.gnu.org} substitutes can be weaknesses. While using @code{@value{SUBSTITUTE-SERVER}} substitutes can be
convenient, we encourage users to also build on their own, or even run convenient, we encourage users to also build on their own, or even run
their own build farm, such that @code{hydra.gnu.org} is less of an their own build farm, such that @code{@value{SUBSTITUTE-SERVER}} is less of an
interesting target. One way to help is by publishing the software you interesting target. One way to help is by publishing the software you
build using @command{guix publish} so that others have one more choice build using @command{guix publish} so that others have one more choice
of server to download substitutes from (@pxref{Invoking guix publish}). of server to download substitutes from (@pxref{Invoking guix publish}).
@ -3658,11 +3655,11 @@ Read a single-item archive as served by substitute servers
low-level operation needed in only very narrow use cases; see below. low-level operation needed in only very narrow use cases; see below.
For example, the following command extracts the substitute for Emacs For example, the following command extracts the substitute for Emacs
served by @code{hydra.gnu.org} to @file{/tmp/emacs}: served by @code{@value{SUBSTITUTE-SERVER}} to @file{/tmp/emacs}:
@example @example
$ wget -O - \ $ wget -O - \
https://hydra.gnu.org/nar/@dots{}-emacs-24.5 \ https://@value{SUBSTITUTE-SERVER}/nar/@dots{}-emacs-24.5 \
| bunzip2 | guix archive -x /tmp/emacs | bunzip2 | guix archive -x /tmp/emacs
@end example @end example
@ -6683,7 +6680,7 @@ but you are actually on an @code{x86_64} machine:
@example @example
$ guix build --log-file gdb -s mips64el-linux $ guix build --log-file gdb -s mips64el-linux
https://hydra.gnu.org/log/@dots{}-gdb-7.10 https://@value{SUBSTITUTE-SERVER}/log/@dots{}-gdb-7.10
@end example @end example
You can freely access a huge library of build logs! You can freely access a huge library of build logs!
@ -8335,7 +8332,7 @@ When @command{guix publish} runs, it spawns an HTTP server which allows
anyone with network access to obtain substitutes from it. This means anyone with network access to obtain substitutes from it. This means
that any machine running Guix can also act as if it were a build farm, that any machine running Guix can also act as if it were a build farm,
since the HTTP interface is compatible with Hydra, the software behind since the HTTP interface is compatible with Hydra, the software behind
the @code{hydra.gnu.org} build farm. the @code{@value{SUBSTITUTE-SERVER}} build farm.
For security, each substitute is signed, allowing recipients to check For security, each substitute is signed, allowing recipients to check
their authenticity and integrity (@pxref{Substitutes}). Because their authenticity and integrity (@pxref{Substitutes}). Because
@ -8572,20 +8569,20 @@ any given store item.
The command output looks like this: The command output looks like this:
@smallexample @smallexample
$ guix challenge --substitute-urls="https://hydra.gnu.org https://guix.example.org" $ guix challenge --substitute-urls="https://@value{SUBSTITUTE-SERVER} https://guix.example.org"
updating list of substitutes from 'https://hydra.gnu.org'... 100.0% updating list of substitutes from 'https://@value{SUBSTITUTE-SERVER}'... 100.0%
updating list of substitutes from 'https://guix.example.org'... 100.0% updating list of substitutes from 'https://guix.example.org'... 100.0%
/gnu/store/@dots{}-openssl-1.0.2d contents differ: /gnu/store/@dots{}-openssl-1.0.2d contents differ:
local hash: 0725l22r5jnzazaacncwsvp9kgf42266ayyp814v7djxs7nk963q local hash: 0725l22r5jnzazaacncwsvp9kgf42266ayyp814v7djxs7nk963q
https://hydra.gnu.org/nar/@dots{}-openssl-1.0.2d: 0725l22r5jnzazaacncwsvp9kgf42266ayyp814v7djxs7nk963q https://@value{SUBSTITUTE-SERVER}/nar/@dots{}-openssl-1.0.2d: 0725l22r5jnzazaacncwsvp9kgf42266ayyp814v7djxs7nk963q
https://guix.example.org/nar/@dots{}-openssl-1.0.2d: 1zy4fmaaqcnjrzzajkdn3f5gmjk754b43qkq47llbyak9z0qjyim https://guix.example.org/nar/@dots{}-openssl-1.0.2d: 1zy4fmaaqcnjrzzajkdn3f5gmjk754b43qkq47llbyak9z0qjyim
/gnu/store/@dots{}-git-2.5.0 contents differ: /gnu/store/@dots{}-git-2.5.0 contents differ:
local hash: 00p3bmryhjxrhpn2gxs2fy0a15lnip05l97205pgbk5ra395hyha local hash: 00p3bmryhjxrhpn2gxs2fy0a15lnip05l97205pgbk5ra395hyha
https://hydra.gnu.org/nar/@dots{}-git-2.5.0: 069nb85bv4d4a6slrwjdy8v1cn4cwspm3kdbmyb81d6zckj3nq9f https://@value{SUBSTITUTE-SERVER}/nar/@dots{}-git-2.5.0: 069nb85bv4d4a6slrwjdy8v1cn4cwspm3kdbmyb81d6zckj3nq9f
https://guix.example.org/nar/@dots{}-git-2.5.0: 0mdqa9w1p6cmli6976v4wi0sw9r4p5prkj7lzfd1877wk11c9c73 https://guix.example.org/nar/@dots{}-git-2.5.0: 0mdqa9w1p6cmli6976v4wi0sw9r4p5prkj7lzfd1877wk11c9c73
/gnu/store/@dots{}-pius-2.1.1 contents differ: /gnu/store/@dots{}-pius-2.1.1 contents differ:
local hash: 0k4v3m9z1zp8xzzizb7d8kjj72f9172xv078sq4wl73vnq9ig3ax local hash: 0k4v3m9z1zp8xzzizb7d8kjj72f9172xv078sq4wl73vnq9ig3ax
https://hydra.gnu.org/nar/@dots{}-pius-2.1.1: 0k4v3m9z1zp8xzzizb7d8kjj72f9172xv078sq4wl73vnq9ig3ax https://@value{SUBSTITUTE-SERVER}/nar/@dots{}-pius-2.1.1: 0k4v3m9z1zp8xzzizb7d8kjj72f9172xv078sq4wl73vnq9ig3ax
https://guix.example.org/nar/@dots{}-pius-2.1.1: 1cy25x1a4fzq5rk0pmvc8xhwyffnqz95h2bpvqsz2mpvlbccy0gs https://guix.example.org/nar/@dots{}-pius-2.1.1: 1cy25x1a4fzq5rk0pmvc8xhwyffnqz95h2bpvqsz2mpvlbccy0gs
@dots{} @dots{}
@ -8605,7 +8602,7 @@ the servers obtained a result different from the local build.
@cindex non-determinism, in package builds @cindex non-determinism, in package builds
As an example, @code{guix.example.org} always gets a different answer. As an example, @code{guix.example.org} always gets a different answer.
Conversely, @code{hydra.gnu.org} agrees with local builds, except in the Conversely, @code{@value{SUBSTITUTE-SERVER}} agrees with local builds, except in the
case of Git. This might indicate that the build process of Git is case of Git. This might indicate that the build process of Git is
non-deterministic, meaning that its output varies as a function of non-deterministic, meaning that its output varies as a function of
various things that Guix does not fully control, in spite of building various things that Guix does not fully control, in spite of building
@ -8619,14 +8616,14 @@ To find out what is wrong with this Git binary, we can do something along
these lines (@pxref{Invoking guix archive}): these lines (@pxref{Invoking guix archive}):
@example @example
$ wget -q -O - https://hydra.gnu.org/nar/@dots{}-git-2.5.0 \ $ wget -q -O - https://@value{SUBSTITUTE-SERVER}/nar/@dots{}-git-2.5.0 \
| guix archive -x /tmp/git | guix archive -x /tmp/git
$ diff -ur --no-dereference /gnu/store/@dots{}-git.2.5.0 /tmp/git $ diff -ur --no-dereference /gnu/store/@dots{}-git.2.5.0 /tmp/git
@end example @end example
This command shows the difference between the files resulting from the This command shows the difference between the files resulting from the
local build, and the files resulting from the build on local build, and the files resulting from the build on
@code{hydra.gnu.org} (@pxref{Overview, Comparing and Merging Files,, @code{@value{SUBSTITUTE-SERVER}} (@pxref{Overview, Comparing and Merging Files,,
diffutils, Comparing and Merging Files}). The @command{diff} command diffutils, Comparing and Merging Files}). The @command{diff} command
works great for text files. When binary files differ, a better option works great for text files. When binary files differ, a better option
is @uref{https://diffoscope.org/, Diffoscope}, a tool that helps is @uref{https://diffoscope.org/, Diffoscope}, a tool that helps
@ -8641,7 +8638,7 @@ In the meantime, @command{guix challenge} is one tool to help address
the problem. the problem.
If you are writing packages for Guix, you are encouraged to check If you are writing packages for Guix, you are encouraged to check
whether @code{hydra.gnu.org} and other substitute servers obtain the whether @code{@value{SUBSTITUTE-SERVER}} and other substitute servers obtain the
same build result as you did with: same build result as you did with:
@example @example
@ -9072,7 +9069,7 @@ More and more system services are provided (@pxref{Services}), but some
may be missing. may be missing.
@item @item
More than 7,500 packages are available, but you might More than 8,500 packages are available, but you might
occasionally find that a useful package is missing. occasionally find that a useful package is missing.
@item @item
@ -11231,14 +11228,14 @@ Number of build user accounts to create.
@item @code{authorize-key?} (default: @code{#t}) @item @code{authorize-key?} (default: @code{#t})
@cindex substitutes, authorization thereof @cindex substitutes, authorization thereof
Whether to authorize the substitute keys listed in Whether to authorize the substitute keys listed in
@code{authorized-keys}---by default that of @code{hydra.gnu.org} @code{authorized-keys}---by default that of @code{@value{SUBSTITUTE-SERVER}}
(@pxref{Substitutes}). (@pxref{Substitutes}).
@vindex %default-authorized-guix-keys @vindex %default-authorized-guix-keys
@item @code{authorized-keys} (default: @var{%default-authorized-guix-keys}) @item @code{authorized-keys} (default: @var{%default-authorized-guix-keys})
The list of authorized key files for archive imports, as a list of The list of authorized key files for archive imports, as a list of
string-valued gexps (@pxref{Invoking guix archive}). By default, it string-valued gexps (@pxref{Invoking guix archive}). By default, it
contains that of @code{hydra.gnu.org} (@pxref{Substitutes}). contains that of @code{@value{SUBSTITUTE-SERVER}} (@pxref{Substitutes}).
@item @code{use-substitutes?} (default: @code{#t}) @item @code{use-substitutes?} (default: @code{#t})
Whether to use substitutes. Whether to use substitutes.
@ -23776,7 +23773,7 @@ system}.
@cindex substituter @cindex substituter
Users can obtain the new package definition simply by running Users can obtain the new package definition simply by running
@command{guix pull} (@pxref{Invoking guix pull}). When @command{guix pull} (@pxref{Invoking guix pull}). When
@code{hydra.gnu.org} is done building the package, installing the @code{@value{SUBSTITUTE-SERVER}} is done building the package, installing the
package automatically downloads binaries from there package automatically downloads binaries from there
(@pxref{Substitutes}). The only place where human intervention is (@pxref{Substitutes}). The only place where human intervention is
needed is to review and apply the patch. needed is to review and apply the patch.

View File

@ -361,8 +361,8 @@ sys_authorize_build_farms()
case $yn in case $yn in
[Yy]*) guix archive --authorize < "${ROOT_HOME}/.config/guix/current/share/guix/hydra.gnu.org.pub" && [Yy]*) guix archive --authorize < "${ROOT_HOME}/.config/guix/current/share/guix/hydra.gnu.org.pub" &&
_msg "${PAS}Authorized public key for hydra.gnu.org"; _msg "${PAS}Authorized public key for hydra.gnu.org";
guix archive --authorize < "${ROOT_HOME}/.config/guix/current/share/guix/berlin.guixsd.org.pub" && guix archive --authorize < "${ROOT_HOME}/.config/guix/current/share/guix/ci.guix.info.pub" &&
_msg "${PAS}Authorized public key for berlin.guixsd.org"; _msg "${PAS}Authorized public key for ci.guix.info";
break;; break;;
[Nn]*) _msg "${INF}Skipped authorizing build farm public keys" [Nn]*) _msg "${INF}Skipped authorizing build farm public keys"
break;; break;;

View File

@ -0,0 +1 @@
berlin.guixsd.org.pub

View File

@ -477,6 +477,11 @@ GRUB configuration and OS-DRV as the stuff in it."
"mnt=/tmp/root/mnt" "mnt=/tmp/root/mnt"
"-path-list" "-" "-path-list" "-"
"--" "--"
;; XXX: Add padding to avoid I/O errors on i686:
;; <https://bugs.gnu.org/33639>.
"-padding" "10m"
"-volid" (string-upcase volume-id) "-volid" (string-upcase volume-id)
(if volume-uuid (if volume-uuid
`("-volume_date" "uuid" `("-volume_date" "uuid"

View File

@ -600,6 +600,7 @@ dist_patch_DATA = \
%D%/packages/patches/bash-completion-directories.patch \ %D%/packages/patches/bash-completion-directories.patch \
%D%/packages/patches/bastet-change-source-of-unordered_set.patch \ %D%/packages/patches/bastet-change-source-of-unordered_set.patch \
%D%/packages/patches/bazaar-CVE-2017-14176.patch \ %D%/packages/patches/bazaar-CVE-2017-14176.patch \
%D%/packages/patches/beets-python-3.7-fix.patch \
%D%/packages/patches/beignet-correct-file-names.patch \ %D%/packages/patches/beignet-correct-file-names.patch \
%D%/packages/patches/binutils-loongson-workaround.patch \ %D%/packages/patches/binutils-loongson-workaround.patch \
%D%/packages/patches/blast+-fix-makefile.patch \ %D%/packages/patches/blast+-fix-makefile.patch \
@ -665,7 +666,6 @@ dist_patch_DATA = \
%D%/packages/patches/dropbear-CVE-2018-15599.patch \ %D%/packages/patches/dropbear-CVE-2018-15599.patch \
%D%/packages/patches/dvd+rw-tools-add-include.patch \ %D%/packages/patches/dvd+rw-tools-add-include.patch \
%D%/packages/patches/elfutils-tests-ptrace.patch \ %D%/packages/patches/elfutils-tests-ptrace.patch \
%D%/packages/patches/elogind-glibc-2.27.patch \
%D%/packages/patches/einstein-build.patch \ %D%/packages/patches/einstein-build.patch \
%D%/packages/patches/emacs-exec-path.patch \ %D%/packages/patches/emacs-exec-path.patch \
%D%/packages/patches/emacs-fix-scheme-indent-function.patch \ %D%/packages/patches/emacs-fix-scheme-indent-function.patch \
@ -715,7 +715,6 @@ dist_patch_DATA = \
%D%/packages/patches/gcc-4.8-libsanitizer-fix.patch \ %D%/packages/patches/gcc-4.8-libsanitizer-fix.patch \
%D%/packages/patches/gcc-4.9-libsanitizer-fix.patch \ %D%/packages/patches/gcc-4.9-libsanitizer-fix.patch \
%D%/packages/patches/gcc-4.9-libsanitizer-ustat.patch \ %D%/packages/patches/gcc-4.9-libsanitizer-ustat.patch \
%D%/packages/patches/gcc-libsanitizer-fix.patch \
%D%/packages/patches/gcc-libsanitizer-ustat.patch \ %D%/packages/patches/gcc-libsanitizer-ustat.patch \
%D%/packages/patches/gcc-libvtv-runpath.patch \ %D%/packages/patches/gcc-libvtv-runpath.patch \
%D%/packages/patches/gcc-strmov-store-file-names.patch \ %D%/packages/patches/gcc-strmov-store-file-names.patch \
@ -1111,6 +1110,8 @@ dist_patch_DATA = \
%D%/packages/patches/python-unittest2-remove-argparse.patch \ %D%/packages/patches/python-unittest2-remove-argparse.patch \
%D%/packages/patches/python-waitress-fix-tests.patch \ %D%/packages/patches/python-waitress-fix-tests.patch \
%D%/packages/patches/qemu-glibc-2.27.patch \ %D%/packages/patches/qemu-glibc-2.27.patch \
%D%/packages/patches/qemu-CVE-2018-16847.patch \
%D%/packages/patches/qemu-CVE-2018-16867.patch \
%D%/packages/patches/qt4-ldflags.patch \ %D%/packages/patches/qt4-ldflags.patch \
%D%/packages/patches/qtbase-use-TZDIR.patch \ %D%/packages/patches/qtbase-use-TZDIR.patch \
%D%/packages/patches/qtscript-disable-tests.patch \ %D%/packages/patches/qtscript-disable-tests.patch \
@ -1118,8 +1119,8 @@ dist_patch_DATA = \
%D%/packages/patches/quagga-reproducible-build.patch \ %D%/packages/patches/quagga-reproducible-build.patch \
%D%/packages/patches/quickswitch-fix-dmenu-check.patch \ %D%/packages/patches/quickswitch-fix-dmenu-check.patch \
%D%/packages/patches/quilt-test-fix-regex.patch \ %D%/packages/patches/quilt-test-fix-regex.patch \
%D%/packages/patches/quilt-compat-getopt-fix-second-separator.patch \ %D%/packages/patches/quilt-getopt-nondigit-param.patch \
%D%/packages/patches/quilt-compat-getopt-fix-option-with-nondigit-param.patch \ %D%/packages/patches/quilt-getopt-second-separator.patch \
%D%/packages/patches/qtwebkit-pbutils-include.patch \ %D%/packages/patches/qtwebkit-pbutils-include.patch \
%D%/packages/patches/randomjungle-disable-static-build.patch \ %D%/packages/patches/randomjungle-disable-static-build.patch \
%D%/packages/patches/rapicorn-isnan.patch \ %D%/packages/patches/rapicorn-isnan.patch \

View File

@ -139,7 +139,7 @@ solve the shortest vector problem.")
(define-public pari-gp (define-public pari-gp
(package (package
(name "pari-gp") (name "pari-gp")
(version "2.11.0") (version "2.11.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -147,7 +147,7 @@ solve the shortest vector problem.")
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"18f9yj8ffn3dxignbxj1x36771zbxy4js0r18mv6831ymb6cld9q")))) "1jfax92jpydjd02fwl30r6b8kfzqqd6sm4yx94gidyz9lqjb7a94"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs `(("texlive" ,texlive-tiny))) (native-inputs `(("texlive" ,texlive-tiny)))
(inputs `(("gmp" ,gmp) (inputs `(("gmp" ,gmp)

View File

@ -2097,7 +2097,9 @@ buffers, and audio capture.")
(base32 (base32
"1agdpwwi42176l4mxj0c4fsvdiv1ig56bfnnx0msckxmy57df8bb")))) "1agdpwwi42176l4mxj0c4fsvdiv1ig56bfnnx0msckxmy57df8bb"))))
(build-system waf-build-system) (build-system waf-build-system)
(arguments `(#:tests? #f)) ; no check target (arguments
`(#:tests? #f ; no check target
#:python ,python-2))
(inputs (inputs
`(("alsa-lib" ,alsa-lib) `(("alsa-lib" ,alsa-lib)
("boost" ,boost) ("boost" ,boost)
@ -2118,14 +2120,14 @@ and ALSA.")
(define-public qjackctl (define-public qjackctl
(package (package
(name "qjackctl") (name "qjackctl")
(version "0.5.4") (version "0.5.5")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://sourceforge/qjackctl/qjackctl/" (uri (string-append "mirror://sourceforge/qjackctl/qjackctl/"
version "/qjackctl-" version ".tar.gz")) version "/qjackctl-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0qr71nb93gkz5q53nfcl5g168z173wc6s8w1yjs3rfn3m4hg0bcq")))) "1rzzqa39a6llr52vjkjr0a86nc776kmr5xs52qqga8ms9697psz5"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:tests? #f)) ; no check target '(#:tests? #f)) ; no check target
@ -2202,6 +2204,12 @@ background file post-processing.")
(ice-9 ftw)) (ice-9 ftw))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'fix-build-with-boost-1.68
(lambda _
(substitute* "server/supernova/utilities/time_tag.hpp"
(("(time_duration offset = .+ microseconds\\().*" _ m)
(string-append m "static_cast<long>(get_nanoseconds()/1000));\n")))
#t))
(add-after 'unpack 'rm-bundled-libs (add-after 'unpack 'rm-bundled-libs
(lambda _ (lambda _
;; The build system doesn't allow us to unbundle the following ;; The build system doesn't allow us to unbundle the following
@ -2266,7 +2274,7 @@ external_libraries/yaml-cpp/include)"))
("eudev" ,eudev) ;for user interactions with devices ("eudev" ,eudev) ;for user interactions with devices
("avahi" ,avahi) ;zeroconf service discovery support ("avahi" ,avahi) ;zeroconf service discovery support
("icu4c" ,icu4c) ("icu4c" ,icu4c)
("boost" ,boost) ("boost" ,boost-cxx14)
("boost-sync" ,boost-sync) ("boost-sync" ,boost-sync)
("yaml-cpp" ,yaml-cpp))) ("yaml-cpp" ,yaml-cpp)))
(home-page "https://github.com/supercollider/supercollider") (home-page "https://github.com/supercollider/supercollider")
@ -2855,7 +2863,7 @@ interface.")
(define-public qsynth (define-public qsynth
(package (package
(name "qsynth") (name "qsynth")
(version "0.5.3") (version "0.5.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -2863,7 +2871,7 @@ interface.")
"/qsynth-" version ".tar.gz")) "/qsynth-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1jghczmmva7cyavg1q0j8nr3hmjpzzglzi5ckg92ax4ji8gpks9c")))) "0kpq5fxr96wnii18ax780w1ivq8ksk892ac0bprn92iz0asfysrd"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f ; no "check" phase `(#:tests? #f ; no "check" phase

View File

@ -4024,6 +4024,14 @@ sequences).")
"src/mash/CommandScreen.cpp") "src/mash/CommandScreen.cpp")
(("^#include \"kseq\\.h\"") (("^#include \"kseq\\.h\"")
"#include \"htslib/kseq.h\"")) "#include \"htslib/kseq.h\""))
#t))
(add-after 'fix-includes 'use-c++14
(lambda _
;; capnproto 0.7 requires c++14 to build
(substitute* "configure.ac"
(("c\\+\\+11") "c++14"))
(substitute* "Makefile.in"
(("c\\+\\+11") "c++14"))
#t))))) #t)))))
(native-inputs (native-inputs
`(("autoconf" ,autoconf) `(("autoconf" ,autoconf)
@ -12957,7 +12965,7 @@ once. This package provides tools to perform Drop-seq analyses.")
(define-public pigx-rnaseq (define-public pigx-rnaseq
(package (package
(name "pigx-rnaseq") (name "pigx-rnaseq")
(version "0.0.4") (version "0.0.5")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/BIMSBbioinfo/pigx_rnaseq/" (uri (string-append "https://github.com/BIMSBbioinfo/pigx_rnaseq/"
@ -12965,7 +12973,7 @@ once. This package provides tools to perform Drop-seq analyses.")
"/pigx_rnaseq-" version ".tar.gz")) "/pigx_rnaseq-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"16gla23rmziimqan7w494q0nr7vfbp42zzkrl9fracmr4k7b1kzr")))) "05gn658zpj9xki5dbs728z9zxq1mcm25hkwr5vzwqxsfi15l5f2l"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:parallel-tests? #f ; not supported `(#:parallel-tests? #f ; not supported
@ -12981,7 +12989,7 @@ once. This package provides tools to perform Drop-seq analyses.")
#t))))) #t)))))
(inputs (inputs
`(("gzip" ,gzip) `(("gzip" ,gzip)
("snakemake" ,snakemake-4) ("snakemake" ,snakemake)
("fastqc" ,fastqc) ("fastqc" ,fastqc)
("multiqc" ,multiqc) ("multiqc" ,multiqc)
("star" ,star) ("star" ,star)

View File

@ -123,6 +123,16 @@ across a broad spectrum of applications.")
(license (license:x11-style "https://www.boost.org/LICENSE_1_0.txt" (license (license:x11-style "https://www.boost.org/LICENSE_1_0.txt"
"Some components have other similar licences.")))) "Some components have other similar licences."))))
;; Some programs need Boost to be built with C++14 support.
(define-public boost-cxx14
(package (inherit boost)
(arguments
(substitute-keyword-arguments (package-arguments boost)
((#:make-flags flags)
`(append ,flags
'("cxxflags=-std=c++14")))))
(properties '((hidden? . #t)))))
(define-public boost-for-mysql (define-public boost-for-mysql
;; Older version for MySQL 5.7.23. ;; Older version for MySQL 5.7.23.
(package (package

View File

@ -128,7 +128,9 @@ data units.")
;; running in a TTY: ;; running in a TTY:
;; https://github.com/pimutils/khal/issues/683 ;; https://github.com/pimutils/khal/issues/683
"not test_printics_read_from_stdin " "not test_printics_read_from_stdin "
"and not test_import_from_stdin"))))))) "and not test_import_from_stdin "
;; https://github.com/pimutils/khal/issues/825
"and not test_description_and_location_and_categories")))))))
(native-inputs (native-inputs
`(("python-pytest" ,python-pytest) `(("python-pytest" ,python-pytest)
("python-pytest-cov" ,python-pytest-cov) ("python-pytest-cov" ,python-pytest-cov)

View File

@ -2263,7 +2263,7 @@ single-member files which can't be decompressed in parallel.")
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:tests? #f)) ;; No tests available. `(#:tests? #f)) ;; No tests available.
(inputs `(("boost" ,boost) (inputs `(("boost" ,boost-cxx14)
("libiconv" ,libiconv) ("libiconv" ,libiconv)
("xz" ,xz))) ("xz" ,xz)))
(native-inputs `(("pkg-config" ,pkg-config))) (native-inputs `(("pkg-config" ,pkg-config)))

View File

@ -7754,3 +7754,24 @@ circular variables).")
"This package provides tools to fit and compare Ornstein-Uhlenbeck models "This package provides tools to fit and compare Ornstein-Uhlenbeck models
for evolution along a phylogenetic tree.") for evolution along a phylogenetic tree.")
(license license:gpl2+))) (license license:gpl2+)))
(define-public r-fmsb
(package
(name "r-fmsb")
(version "0.6.3")
(source
(origin
(method url-fetch)
(uri (cran-uri "fmsb" version))
(sha256
(base32
"1n29bnyp20pvpk2lsa9fblsj5w7amp14snc74pk5w3yr5y6rj0s5"))))
(build-system r-build-system)
(home-page "http://minato.sip21c.org/msb/")
(synopsis "Functions for medical statistics book with demographic data")
(description
"This package provides several utility functions for the book entitled
\"Practices of Medical and Health Data Analysis using R\" (Pearson Education
Japan, 2007) with Japanese demographic data and some demographic analysis
related functions.")
(license license:gpl2+)))

View File

@ -2869,6 +2869,14 @@ transforms idiomatic python function calls to well-formed SQL queries.")
(delete-file-recursively (delete-file-recursively
"src/github.com/mongodb/mongo-tools/vendor") "src/github.com/mongodb/mongo-tools/vendor")
#t)) #t))
(add-after 'delete-bundled-source-code 'patch-source
(lambda _
;; Remove a redundant argument that causes compilation to fail.
(substitute*
"src/github.com/mongodb/mongo-tools/mongorestore/filepath.go"
(("skipping restore of system.profile collection\", db)")
"skipping restore of system.profile collection\")"))
#t))
;; We don't need to install the source code for end-user applications ;; We don't need to install the source code for end-user applications
(delete 'install-source) (delete 'install-source)
(replace 'build (replace 'build

View File

@ -5,6 +5,7 @@
;;; Copyright © 2017, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2017, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Pierre-Antoine Rouby <contact@parouby.fr> ;;; Copyright © 2018 Pierre-Antoine Rouby <contact@parouby.fr>
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -22,22 +23,29 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages dictionaries) (define-module (gnu packages dictionaries)
#:use-module (guix licenses) #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system python) #:use-module (guix build-system python)
#:use-module (guix build-system trivial) #:use-module (guix build-system trivial)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base) #:use-module (gnu packages base)
#:use-module (gnu packages curl) #:use-module (gnu packages curl)
#:use-module (gnu packages emacs) #:use-module (gnu packages emacs)
#:use-module (gnu packages flex)
#:use-module (gnu packages fribidi) #:use-module (gnu packages fribidi)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages pcre)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages readline) #:use-module (gnu packages readline)
#:use-module (gnu packages texinfo) #:use-module (gnu packages texinfo)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
#:use-module (gnu packages tcl)) #:use-module (gnu packages tcl)
#:use-module (gnu packages xml))
(define-public vera (define-public vera
@ -87,7 +95,7 @@
(description (description
"V.E.R.A. (Virtual Entity of Relevant Acronyms) is a list of computing "V.E.R.A. (Virtual Entity of Relevant Acronyms) is a list of computing
acronyms distributed as an info document.") acronyms distributed as an info document.")
(license fdl1.3+))) (license license:fdl1.3+)))
(define-public gcide (define-public gcide
(package (package
@ -125,7 +133,7 @@ acronyms distributed as an info document.")
be used via the GNU Dico program or accessed online at be used via the GNU Dico program or accessed online at
http://gcide.gnu.org.ua/") http://gcide.gnu.org.ua/")
(home-page "http://gcide.gnu.org.ua/") (home-page "http://gcide.gnu.org.ua/")
(license gpl3+))) (license license:gpl3+)))
(define-public diction (define-public diction
;; Not quite a dictionary, not quite a spell checker either… ;; Not quite a dictionary, not quite a spell checker either…
@ -147,7 +155,7 @@ Diction is used to identify wordy and commonly misused phrases in a
body of text. Style instead analyzes surface aspects of a written body of text. Style instead analyzes surface aspects of a written
work, such as sentence length and other readability measures.") work, such as sentence length and other readability measures.")
(home-page "https://www.gnu.org/software/diction/") (home-page "https://www.gnu.org/software/diction/")
(license gpl3+))) (license license:gpl3+)))
(define-public ding (define-public ding
(package (package
@ -207,7 +215,7 @@ work, such as sentence length and other readability measures.")
(description "Ding is a dictionary lookup program for the X window system. (description "Ding is a dictionary lookup program for the X window system.
It comes with a German-English dictionary with approximately 270,000 entries.") It comes with a German-English dictionary with approximately 270,000 entries.")
(home-page "http://www-user.tu-chemnitz.de/~fri/ding/") (home-page "http://www-user.tu-chemnitz.de/~fri/ding/")
(license gpl2+))) (license license:gpl2+)))
(define-public grammalecte (define-public grammalecte
(package (package
@ -234,7 +242,7 @@ a dubious expression is wrong, it will keep silent.
The package provides the command line interface, along with a server The package provides the command line interface, along with a server
and a Python library.") and a Python library.")
(license gpl3+))) (license license:gpl3+)))
(define-public translate-shell (define-public translate-shell
(package (package
@ -283,4 +291,87 @@ and a Python library.")
translator powered by Google Translate (default), Bing Translator, translator powered by Google Translate (default), Bing Translator,
Yandex.Translate and Apertium. It gives you easy access to one of these Yandex.Translate and Apertium. It gives you easy access to one of these
translation engines from your terminal.") translation engines from your terminal.")
(license public-domain))) (license license:public-domain)))
(define-public lttoolbox
(package
(name "lttoolbox")
(version "3.5.0")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/apertium/lttoolbox/releases/download/v"
version "/lttoolbox-" version ".tar.gz"))
(sha256
(base32
"08y6pf1hl7prwygy1g8h6ndqww18pmb9f3r5988q0pcrp8w6xz6b"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system gnu-build-system)
(inputs
`(("libxml2" ,libxml2)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://wiki.apertium.org/wiki/Lttoolbox")
(synopsis "Lexical processing toolbox")
(description "Lttoolbox is a toolbox for lexical processing, morphological
analysis and generation of words. Analysis is the process of splitting a
word (e.g. cats) into its lemma \"cat\" and the grammatical information
@code{<n><pl>}. Generation is the opposite process.")
(license (list license:gpl2 ; main license
license:expat)))) ; utf8/*
(define-public apertium
(package
(name "apertium")
(version "3.5.2")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/apertium/apertium/releases/download/v"
version "/apertium-" version ".tar.gz"))
(sha256
(base32
"0lrx58ipx2kzh1pd3xm1viz05dqyrq38jbnj9dnk92c9ckkwkp4h"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system gnu-build-system)
(inputs
`(("libxml2" ,libxml2)
("libxslt" ,libxslt)
("lttoolbox" ,lttoolbox)
("pcre" ,pcre)))
(native-inputs
`(("apertium-get"
,(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/apertium/apertium-get")
(commit "692d030e68008fc123089cf2446070fe8c6e3a3b")))
(sha256
(base32
"0kgp68azvds7yjwfz57z8sa5094fyk5yr0qxzblrw7bisrrihnav"))))
("flex" ,flex)
("pkg-config" ,pkg-config)
;; python is only required for running the test suite
("python-minimal" ,python-minimal)))
(arguments
`(#:phases
(modify-phases %standard-phases
;; If apertium-get does not exist in the source tree, the build tries
;; to download it using an svn checkout. To avoid this, copy
;; apertium-get into the source tree.
(add-after 'unpack 'unpack-apertium-get
(lambda* (#:key inputs #:allow-other-keys)
(copy-recursively (assoc-ref inputs "apertium-get")
"apertium/apertium-get")
#t)))))
(home-page "https://www.apertium.org/")
(synopsis "Rule based machine translation system")
(description "Apertium is a rule based machine translation system
featuring a shallow-transfer machine translation engine. The design of the
system makes translations fast (translating tens of thousands of words per
second on ordinary desktop computers) and, in spite of the errors, reasonably
intelligible and easily correctable.")
(license (list license:gpl2 ; main license
license:expat)))) ; utf8/*

View File

@ -37,13 +37,13 @@
(define-public python-django (define-public python-django
(package (package
(name "python-django") (name "python-django")
(version "1.11.15") (version "1.11.17")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "Django" version)) (uri (pypi-uri "Django" version))
(sha256 (sha256
(base32 (base32
"0h2sl02x2mxr3rl3dy750pzm5kvmx77116fys8rrgw164kc3b0mi")))) "10xlpm21ll8mgz5py41sz9vrd603qv7an736agbqxkxlyikfx1x7"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
'(#:modules ((srfi srfi-1) '(#:modules ((srfi srfi-1)

View File

@ -58,6 +58,7 @@
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix utils) #:use-module (guix utils)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system trivial)) #:use-module (guix build-system trivial))
@ -727,3 +728,56 @@ The client supports both dynamic and (near) static services, as well as MX
record and alternative name management. It caches the address, and only record and alternative name management. It caches the address, and only
attempts the update when it has changed.") attempts the update when it has changed.")
(license license:gpl2+))) (license license:gpl2+)))
(define-public hnsd
;; There have been no releases yet, hence this commit.
(let ((revision "0")
(commit "895d89c25d316d18df9d374fe78aae3902bc89fb"))
(package
(name "hnsd")
(version (git-version "0.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/handshake-org/hnsd")
(commit commit)))
(sha256
(base32
"0704y73sddn24jga9csw4gxyfb3pnrfnk0vdcph84n1h38490l16"))
(file-name (git-file-name name version))
(modules '((guix build utils)))
(snippet
'(begin
;; Delete the bundled copy of libuv.
(delete-file-recursively "uv")
(substitute* "configure.ac"
(("AC_CONFIG_SUBDIRS\\(\\[uv\\]\\)") ""))
(substitute* "Makefile.am"
(("SUBDIRS = uv") "\n")
(("\\$\\(top_builddir\\)/uv/libuv.la") "-luv")
;; Make sure the 'hnsd' binary is installed and
;; dynamically-linked.
(("noinst_PROGRAMS") "bin_PROGRAMS")
(("hnsd_LDFLAGS = -static") ""))
;; This script tries to chdir to "uv" and doesn't do more
;; than "autoreconf" so remove it.
(delete-file "autogen.sh")
#t))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--disable-static"))) ;no need for libhsk.a
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)))
(inputs
`(("unbound" ,unbound)
("libuv" ,libuv)))
(home-page "https://www.handshake.org/")
(synopsis "Resolver daemon for the Handshake naming protocol")
(description
"@command{hnsd} is a @dfn{host name resolver} for the Handshake Naming
System (HNS) peer-to-peer network.")
(license license:expat))))

View File

@ -75,7 +75,7 @@
(define-public calibre (define-public calibre
(package (package
(name "calibre") (name "calibre")
(version "3.28.0") (version "3.35.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -84,7 +84,7 @@
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0b3vv03c6m6972sk8zj3zc5sq6b9837irnfgjlqhv9z5i75m0414")) "1gd15wjz4fhcra6d44xiy3hwbyk0miwb66a1pq5yldyy0hlb271z"))
;; 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

@ -2822,11 +2822,13 @@ These are distributed in separate files and can be used individually.")
(version "1.2.0") (version "1.2.0")
(home-page "https://github.com/Sarcasm/irony-mode") (home-page "https://github.com/Sarcasm/irony-mode")
(source (origin (source (origin
(method url-fetch) (method git-fetch)
(uri (string-append home-page "/archive/v" version ".tar.gz")) (uri (git-reference
(url (string-append home-page ".git"))
(commit (string-append "v" version))))
(sha256 (sha256
(base32 (base32
"1f68zi0glkg2aly66s07rx3w0b0hdi1znxan02h6dbabaadylk99")) "0nhjrnlmss535jbshjjd30vydbr8py21vkx4p294w6d8vg2rssf8"))
(file-name (string-append name "-" version ".tar.gz")))) (file-name (string-append name "-" version ".tar.gz"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(arguments '()) (arguments '())
@ -6785,7 +6787,7 @@ It should enable you to implement low-level X11 applications.")
(define-public emacs-exwm (define-public emacs-exwm
(package (package
(name "emacs-exwm") (name "emacs-exwm")
(version "0.20") (version "0.21")
(synopsis "Emacs X window manager") (synopsis "Emacs X window manager")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
@ -6793,7 +6795,7 @@ It should enable you to implement low-level X11 applications.")
version ".tar")) version ".tar"))
(sha256 (sha256
(base32 (base32
"0nhhzbkm0mkj7sd1dy2c19cmn56gyaj9nl8kgy86h4fp63hjaz04")))) "07ng1pgsnc3isfsyzh2gfc7391p9il8lb5xqf1z6yqn20w7k6xzj"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(propagated-inputs (propagated-inputs
`(("emacs-xelb" ,emacs-xelb))) `(("emacs-xelb" ,emacs-xelb)))

View File

@ -117,8 +117,8 @@
;; Building from recent Git because the official 5.0 release no longer builds. ;; Building from recent Git because the official 5.0 release no longer builds.
(define-public dolphin-emu (define-public dolphin-emu
(let ((commit "22ddd11573fd8d3e43a879804e7a64e50928435d") (let ((commit "2c57e709d0f9e4010a4415de4192de887e37f187")
(revision "4")) (revision "5"))
(package (package
(name "dolphin-emu") (name "dolphin-emu")
(version (git-version "5.0" revision commit)) (version (git-version "5.0" revision commit))
@ -144,7 +144,7 @@
#t)) #t))
(sha256 (sha256
(base32 (base32
"01l6r8spaslqc73m3y7hfb2jx5a4848vdkman6x6w2arpb8bywzl")))) "0aszfdfvs7yg4bmrd3qxwsiz7hx3mrj29f4aw86bz7h9j7hkh57f"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
'(#:tests? #f '(#:tests? #f

View File

@ -1709,7 +1709,7 @@ parallel computing platforms. It also supports serial execution.")
("gcc-toolchain" ,gcc-toolchain) ("gcc-toolchain" ,gcc-toolchain)
("iverilog" ,iverilog) ("iverilog" ,iverilog)
("libtool" ,libtool) ("libtool" ,libtool)
("octave" ,octave) ("octave" ,octave-cli)
("qt4" ,qt-4) ("qt4" ,qt-4)
("sed" ,sed))) ("sed" ,sed)))
(home-page "http://qucs.sourceforge.net/") (home-page "http://qucs.sourceforge.net/")
@ -1839,7 +1839,7 @@ simulations are also supported.")
("libtool" ,libtool) ("libtool" ,libtool)
("mpi" ,openmpi) ("mpi" ,openmpi)
("ngspice" ,ngspice) ("ngspice" ,ngspice)
("octave" ,octave) ("octave" ,octave-cli)
("qt4" ,qt-4) ("qt4" ,qt-4)
("qucs" ,qucs) ("qucs" ,qucs)
("sed" ,sed) ("sed" ,sed)

View File

@ -275,7 +275,8 @@ Libraries with some extra bells and whistles.")
(let ((xkeyboard (assoc-ref inputs "xkeyboard-config")) (let ((xkeyboard (assoc-ref inputs "xkeyboard-config"))
(setxkbmap (assoc-ref inputs "setxkbmap")) (setxkbmap (assoc-ref inputs "setxkbmap"))
(utils (assoc-ref inputs "util-linux")) (utils (assoc-ref inputs "util-linux"))
(libc (assoc-ref inputs "libc"))) (libc (assoc-ref inputs "libc"))
(efl (assoc-ref inputs "efl")))
;; We need to patch the path to 'base.lst' to be able ;; We need to patch the path to 'base.lst' to be able
;; to switch the keyboard layout in E. ;; to switch the keyboard layout in E.
(substitute* (list "src/modules/xkbswitch/e_mod_parse.c" (substitute* (list "src/modules/xkbswitch/e_mod_parse.c"
@ -290,6 +291,9 @@ Libraries with some extra bells and whistles.")
"src/modules/conf_intl/e_int_config_intl.c" "src/modules/conf_intl/e_int_config_intl.c"
"src/modules/wizard/page_010.c") "src/modules/wizard/page_010.c")
(("locale -a") (string-append libc "/bin/locale -a"))) (("locale -a") (string-append libc "/bin/locale -a")))
(substitute* "src/bin/e_import_config_dialog.c"
(("%s/edje_cc -v %s %s %s\", e_prefix_bin_get\\(\\)")
(string-append efl "/bin/edje_cc -v %s %s %s\"")))
(substitute* "src/modules/everything/evry_plug_apps.c" (substitute* "src/modules/everything/evry_plug_apps.c"
(("/usr/bin/") "")) (("/usr/bin/") ""))
(substitute* "configure" (substitute* "configure"

View File

@ -13,6 +13,7 @@
;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org> ;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2018 Stefan Stefanović <stefanx2ovic@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -227,109 +228,69 @@ the freedesktop.org XDG Base Directory specification.")
(define-public elogind (define-public elogind
(package (package
(name "elogind") (name "elogind")
(version "232.4") (version "239.3")
(source (origin (source (origin
(method url-fetch) (method git-fetch)
(uri (string-append "https://github.com/elogind/elogind/" (uri (git-reference
"archive/v" version ".tar.gz")) (url "https://github.com/elogind/elogind")
(file-name (string-append name "-" version ".tar.gz")) (commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1qcxian48z2dj5gfmp7brrngdydqf2jm00f4rjr5sy1myh8fy931")) "1gipnbnlz5k3gxv33wyhi2zd94hlfa9lm360p8z6w5i9s8dzhf52"))))
(patches (search-patches "elogind-glibc-2.27.patch")) (build-system meson-build-system)
(modules '((guix build utils)))
(snippet
'(begin
(use-modules (guix build utils))
(substitute* "Makefile.am"
;; Avoid validation against DTD because the DTDs for
;; both doctype 4.2 and 4.5 are needed.
(("XSLTPROC_FLAGS = ") "XSLTPROC_FLAGS = --novalid"))
#t))))
(build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f ;FIXME: "make check" in the "po" directory fails. `(#:configure-flags
#:configure-flags (let* ((out (assoc-ref %outputs "out"))
(list (string-append "--with-udevrulesdir=" (sysconf (string-append out "/etc"))
(assoc-ref %outputs "out") (libexec (string-append out "/libexec/elogind"))
"/lib/udev/rules.d") (dbuspolicy (string-append out "/etc/dbus-1/system.d"))
(shepherd (assoc-ref %build-inputs "shepherd"))
;; Let elogind be its own cgroup controller, rather than relying (halt-path (string-append shepherd "/sbin/halt"))
;; on systemd or OpenRC. By default, 'configure' makes an (kexec-path "") ;not available in Guix yet
;; incorrect guess. (poweroff-path (string-append shepherd "/sbin/shutdown"))
"--with-cgroup-controller=elogind" (reboot-path (string-append shepherd "/sbin/reboot")))
(list
(string-append "--with-rootprefix=" (string-append "-Drootprefix=" out)
(assoc-ref %outputs "out")) (string-append "-Dsysconfdir=" sysconf)
(string-append "--with-rootlibexecdir=" (string-append "-Drootlibexecdir=" libexec)
(assoc-ref %outputs "out") (string-append "-Ddbuspolicydir=" dbuspolicy)
"/libexec/elogind") (string-append "-Dc_link_args=-Wl,-rpath=" libexec)
;; These are needed to ensure that lto linking works. (string-append "-Dcpp_link_args=-Wl,-rpath=" libexec)
"RANLIB=gcc-ranlib" (string-append "-Dhalt-path=" halt-path)
"AR=gcc-ar" (string-append "-Dkexec-path=" kexec-path)
"NM=gcc-nm") (string-append "-Dpoweroff-path=" poweroff-path)
#:make-flags '("PKTTYAGENT=/run/current-system/profile/bin/pkttyagent") (string-append "-Dreboot-path=" reboot-path)
"-Dcgroup-controller=elogind"
;; Disable some tests.
"-Dtests=false"
"-Dslow-tests=false"))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'patch-locale-header (add-after 'unpack 'fix-pkttyagent-path
(lambda _ (lambda _
;; Fix compilation with glibc >= 2.26, which removed xlocale.h. (substitute* "meson.build"
;; This can be removed for elogind 234. (("join_paths\\(bindir, 'pkttyagent'\\)")
(substitute* "src/basic/parse-util.c" "'\"/run/current-system/profile/bin/pkttyagent\"'"))
(("xlocale\\.h") "locale.h"))
#t)) #t))
(replace 'bootstrap (add-after 'unpack 'change-pid-file-path
(lambda _ (lambda _
(invoke "intltoolize" "--force" "--automake") (substitute* "src/login/elogind.c"
(invoke "autoreconf" "-vif"))) (("\"/run/elogind.pid\"") "\"/run/systemd/elogind.pid\""))
(add-before 'build 'fix-service-file
(lambda* (#:key outputs #:allow-other-keys)
;; Fix the file name of the 'elogind' binary in the D-Bus
;; '.service' file.
(substitute* "src/login/org.freedesktop.login1.service"
(("^Exec=.*")
(string-append "Exec=" (assoc-ref %outputs "out")
"/libexec/elogind/elogind\n")))
#t))
(add-after 'install 'add-libcap-to-search-path
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Add a missing '-L' for libcap in libelogind.la. See
;; <https://lists.gnu.org/archive/html/guix-devel/2017-09/msg00084.html>.
(let ((libcap (assoc-ref inputs "libcap"))
(out (assoc-ref outputs "out")))
(substitute* (string-append out "/lib/libelogind.la")
(("-lcap")
(string-append "-L" libcap "/lib -lcap")))
#t)))
(add-after 'unpack 'remove-uaccess-tag
(lambda _
;; systemd supports a "uaccess" built-in tag, but eudev currently
;; doesn't. This leads to eudev warnings that we'd rather not
;; see, so remove the reference to "uaccess."
(substitute* "src/login/73-seat-late.rules.in"
(("^TAG==\"uaccess\".*" line)
(string-append "# " line "\n")))
#t))))) #t)))))
(native-inputs (native-inputs
`(("autoconf" ,autoconf) `(("docbook-xml" ,docbook-xml)
("automake" ,automake) ("docbook-xml-4.2" ,docbook-xml-4.2)
("libtool" ,libtool)
("intltool" ,intltool)
("gettext" ,gettext-minimal)
("python" ,python)
("docbook-xsl" ,docbook-xsl) ("docbook-xsl" ,docbook-xsl)
("docbook-xml" ,docbook-xml) ("gettext" ,gettext-minimal)
("xsltproc" ,libxslt) ("gperf" ,gperf)
("m4" ,m4)
("libxml2" ,libxml2) ;for XML_CATALOG_FILES ("libxml2" ,libxml2) ;for XML_CATALOG_FILES
("m4" ,m4)
("pkg-config" ,pkg-config) ("pkg-config" ,pkg-config)
("python" ,python)
;; Use gperf 3.0 to work around ("xsltproc" ,libxslt)))
;; <https://github.com/wingo/elogind/issues/8>.
("gperf" ,gperf-3.0)))
(inputs (inputs
`(("linux-pam" ,linux-pam) `(("linux-pam" ,linux-pam)
("linux-libre-headers" ,linux-libre-headers)
("libcap" ,libcap) ("libcap" ,libcap)
("shepherd" ,shepherd) ;for 'halt' and 'reboot', invoked ("shepherd" ,shepherd) ;for 'halt' and 'reboot', invoked
;when pressing the power button ;when pressing the power button

View File

@ -170,7 +170,7 @@ as required.")
(define-public libfilezilla (define-public libfilezilla
(package (package
(name "libfilezilla") (name "libfilezilla")
(version "0.14.0") (version "0.15.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -178,11 +178,13 @@ as required.")
name "/" name "-" version ".tar.bz2")) name "/" name "-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"15cfz98asypf9rfybv4c6kx8nk3wak7qlm1azldc0gd1nqm4xqvz")))) "17zlhw5b1a7jzh50cbpy2is3sps5lnzch5yf9qm7mwrviw9c8j10"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("cppunit" ,cppunit) `(("cppunit" ,cppunit)
("pkg-config" ,pkg-config))) ("pkg-config" ,pkg-config)))
(inputs
`(("nettle" ,nettle)))
(home-page "https://lib.filezilla-project.org") (home-page "https://lib.filezilla-project.org")
(synopsis "Cross-platform C++ library used by Filezilla client") (synopsis "Cross-platform C++ library used by Filezilla client")
(description (description
@ -207,14 +209,14 @@ output.
(define-public filezilla (define-public filezilla
(package (package
(name "filezilla") (name "filezilla")
(version "3.37.4") (version "3.39.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://download.filezilla-project.org/client/" (uri (string-append "https://download.filezilla-project.org/client/"
"FileZilla_" version "_src.tar.bz2")) "FileZilla_" version "_src.tar.bz2"))
(sha256 (sha256
(base32 "169wy7ilsh518mcinkjmr6m0kzxbzchmc9mivf5c9b4zp1w4gg3i")))) (base32 "0ks42q6mi3qx85zpa98izkyficv2bdh3jnvmy97xjnjyfy9mwlgv"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
;; Don't let filezilla phone home to check for updates. ;; Don't let filezilla phone home to check for updates.

View File

@ -461,34 +461,18 @@ Go. It also includes runtime support libraries for these languages.")
(define-public gcc-6 (define-public gcc-6
(package (package
(inherit gcc-5) (inherit gcc-5)
(version "6.4.0") (version "6.5.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/gcc/gcc-" (uri (string-append "mirror://gnu/gcc/gcc-"
version "/gcc-" version ".tar.xz")) version "/gcc-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1m0lr7938lw5d773dkvwld90hjlcq2282517d1gwvrfzmwgg42w5")) "0i89fksfp6wr1xg9l8296aslcymv2idn60ip31wr9s4pwin7kwby"))
(patches (search-patches "gcc-libsanitizer-fix.patch" (patches (search-patches "gcc-strmov-store-file-names.patch"
"gcc-libsanitizer-ustat.patch"
"gcc-strmov-store-file-names.patch"
"gcc-6-source-date-epoch-1.patch" "gcc-6-source-date-epoch-1.patch"
"gcc-6-source-date-epoch-2.patch" "gcc-6-source-date-epoch-2.patch"
"gcc-5.0-libvtv-runpath.patch")) "gcc-5.0-libvtv-runpath.patch"))))
(modules '((guix build utils)))
;; This is required for building with glibc-2.26.
;; This can be removed when gcc-6.5.0 is released.
;; https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81712
(snippet
'(begin
(for-each
(lambda (dir)
(substitute* (string-append "libgcc/config/"
dir "/linux-unwind.h")
(("struct ucontext") "ucontext_t")))
'("aarch64" "alpha" "bfin" "i386" "m68k" "nios2"
"pa" "sh" "tilepro" "xtensa"))
#t))))
(inputs (inputs
`(("isl" ,isl) `(("isl" ,isl)
,@(package-inputs gcc-4.7))) ,@(package-inputs gcc-4.7)))
@ -506,16 +490,15 @@ Go. It also includes runtime support libraries for these languages.")
(define-public gcc-7 (define-public gcc-7
(package (package
(inherit gcc-6) (inherit gcc-6)
(version "7.3.0") (version "7.4.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/gcc/gcc-" (uri (string-append "mirror://gnu/gcc/gcc-"
version "/gcc-" version ".tar.xz")) version "/gcc-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0p71bij6bfhzyrs8676a8jmpjsfz392s2rg862sdnsk30jpacb43")) "0lgy170b0pp60j9cczqkmaqyjjb584vfamj4c30swd7k0j6y5pgd"))
(patches (search-patches "gcc-strmov-store-file-names.patch" (patches (search-patches "gcc-strmov-store-file-names.patch"
"gcc-libsanitizer-ustat.patch"
"gcc-5.0-libvtv-runpath.patch")))) "gcc-5.0-libvtv-runpath.patch"))))
(description (description
"GCC is the GNU Compiler Collection. It provides compiler front-ends "GCC is the GNU Compiler Collection. It provides compiler front-ends

View File

@ -36,7 +36,6 @@
#:use-module (gnu packages enlightenment) #:use-module (gnu packages enlightenment)
#:use-module (gnu packages file) #:use-module (gnu packages file)
#:use-module (gnu packages flex) #:use-module (gnu packages flex)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gettext) #:use-module (gnu packages gettext)
#:use-module (gnu packages gnome) #:use-module (gnu packages gnome)
#:use-module (gnu packages gperf) #:use-module (gnu packages gperf)
@ -621,11 +620,7 @@ useful for C++.")
(delete-file "tests/test_ossig.py") (delete-file "tests/test_ossig.py")
#t))))) #t)))))
(native-inputs (native-inputs
`(;; Use gcc-7 to work around an internal compiler error that happens `(("which" ,which)
;; when using gcc-5.5.0. FIXME: Try removing this when the default
;; compiler is no longer gcc-5.5.0.
("gcc" ,gcc-7)
("which" ,which)
;for tests: dbus-run-session and glib-compile-schemas ;for tests: dbus-run-session and glib-compile-schemas
("dbus" ,dbus) ("dbus" ,dbus)
("glib-bin" ,glib "bin") ("glib-bin" ,glib "bin")
@ -656,11 +651,7 @@ useful for C++.")
("python-pycairo" ,python2-pycairo) ("python-pycairo" ,python2-pycairo)
("gobject-introspection" ,gobject-introspection))) ("gobject-introspection" ,gobject-introspection)))
(native-inputs (native-inputs
`(;; Use gcc-7 to work around an internal compiler error that happens `(("which" ,which)
;; when using gcc-5.5.0. FIXME: Try removing this when the default
;; compiler is no longer gcc-5.5.0.
("gcc" ,gcc-7)
("which" ,which)
;for tests: dbus-run-session and glib-compile-schemas ;for tests: dbus-run-session and glib-compile-schemas
("dbus" ,dbus) ("dbus" ,dbus)
("glib-bin" ,glib "bin") ("glib-bin" ,glib "bin")

View File

@ -31,6 +31,7 @@
;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018 Jovany Leandro G.C <bit4bit@riseup.net> ;;; Copyright © 2018 Jovany Leandro G.C <bit4bit@riseup.net>
;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com> ;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com>
;;; Copyright © 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -95,6 +96,7 @@
#:use-module (gnu packages polkit) #:use-module (gnu packages polkit)
#:use-module (gnu packages popt) #:use-module (gnu packages popt)
#:use-module (gnu packages ghostscript) #:use-module (gnu packages ghostscript)
#:use-module (gnu packages inkscape)
#:use-module (gnu packages ibus) #:use-module (gnu packages ibus)
#:use-module (gnu packages iso-codes) #:use-module (gnu packages iso-codes)
#:use-module (gnu packages libcanberra) #:use-module (gnu packages libcanberra)
@ -151,6 +153,7 @@
#:use-module (gnu packages version-control) #:use-module (gnu packages version-control)
#:use-module (gnu packages virtualization) #:use-module (gnu packages virtualization)
#:use-module (gnu packages vpn) #:use-module (gnu packages vpn)
#:use-module (gnu packages web)
#:use-module (gnu packages xorg) #:use-module (gnu packages xorg)
#:use-module (ice-9 match) #:use-module (ice-9 match)
#:use-module (srfi srfi-1)) #:use-module (srfi srfi-1))
@ -4629,14 +4632,6 @@ configuration program to choose applications starting on login.")
(arguments (arguments
'(#:phases '(#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'set-paths 'work-around-gcc-7-include-path-issue
;; FIXME: Work around a problem with gcc-7 includes (see
;; <https://bugs.gnu.org/30756>). Note that we use gcc-7
;; to work around an internal compiler error in gcc-5.
(lambda _
(unsetenv "C_INCLUDE_PATH")
(unsetenv "CPLUS_INCLUDE_PATH")
#t))
(add-before (add-before
'check 'pre-check 'check 'pre-check
(lambda _ (lambda _
@ -4654,11 +4649,7 @@ configuration program to choose applications starting on login.")
((".*expect\\(datestr\\).*") "")) ((".*expect\\(datestr\\).*") ""))
#t))))) #t)))))
(native-inputs (native-inputs
`(("gcc" ,gcc-7) ; FIXME: Work around an internal compiler error in `(("glib:bin" ,glib "bin") ; for glib-compile-resources
; gcc-5. Try removing this when our default compiler is
; no longer gcc-5.5.0, and also remove the
; 'work-around-gcc-7-include-path-issue' phase above.
("glib:bin" ,glib "bin") ; for glib-compile-resources
("pkg-config" ,pkg-config) ("pkg-config" ,pkg-config)
("xmllint" ,libxml2) ("xmllint" ,libxml2)
;; For testing ;; For testing
@ -6434,15 +6425,16 @@ functionality and behavior.")
(define-public arc-theme (define-public arc-theme
(package (package
(name "arc-theme") (name "arc-theme")
(version "20170302") (version "20181022")
(source (origin (source (origin
(method url-fetch) (method git-fetch)
(uri (string-append "https://github.com/horst3180/arc-theme" (uri (git-reference
"/archive/" version ".tar.gz")) (url "https://github.com/NicoHood/arc-theme.git")
(file-name (string-append name "-" version ".tar.gz")) (commit version)))
(file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0igxpngnkf1wpsg872a9jg3c9f5z8afm312yfbillz16mk8w39cw")))) "08951dk1irfadwpr3p323a4fprmxg53rk2r2niwq3v62ryhi3663"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases '(#:phases
@ -6453,16 +6445,20 @@ functionality and behavior.")
(native-inputs (native-inputs
`(("autoconf" ,autoconf) `(("autoconf" ,autoconf)
("automake" ,automake) ("automake" ,automake)
("pkg-config" ,pkg-config))) ("glib" ,glib "bin") ; for glib-compile-resources
(inputs ("gnome-shell" ,gnome-shell)
`(("gtk+" ,gtk+))) ("gtk+" ,gtk+)
("inkscape" ,inkscape)
("optipng" ,optipng)
("pkg-config" ,pkg-config)
("sassc" ,sassc)))
(synopsis "A flat GTK+ theme with transparent elements") (synopsis "A flat GTK+ theme with transparent elements")
(description "Arc is a flat theme with transparent elements for GTK 3, GTK (description "Arc is a flat theme with transparent elements for GTK 3, GTK
2, and GNOME Shell which supports GTK 3 and GTK 2 based desktop environments 2, and GNOME Shell which supports GTK 3 and GTK 2 based desktop environments
like GNOME, Unity, Budgie, Pantheon, XFCE, Mate, etc.") like GNOME, Unity, Budgie, Pantheon, XFCE, Mate, etc.")
(home-page "https://github.com/horst3180/arc-theme") (home-page "https://github.com/horst3180/arc-theme")
;; No "or later" language found. ;; No "or later" language found.
(license license:gpl3))) (license license:gpl3+)))
(define-public faba-icon-theme (define-public faba-icon-theme
(package (package

View File

@ -632,7 +632,16 @@ way of specifying command line options.")
"1sv15sri99szkdz1bkh0ir46w9n8prrwx5hfai13nrhkawfyfy10")))) "1sv15sri99szkdz1bkh0ir46w9n8prrwx5hfai13nrhkawfyfy10"))))
(build-system go-build-system) (build-system go-build-system)
(arguments (arguments
'(#:import-path "gopkg.in/tomb.v2")) '(#:import-path "gopkg.in/tomb.v2"
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-source
(lambda _
;; Add a missing % to fix the compilation of this test
(substitute* "src/gopkg.in/tomb.v2/tomb_test.go"
(("t.Fatalf\\(`Killf\\(\"BO%s")
"t.Fatalf(`Killf(\"BO%%s"))
#t)))))
(synopsis "@code{tomb} handles clean goroutine tracking and termination") (synopsis "@code{tomb} handles clean goroutine tracking and termination")
(description (description
"The @code{tomb} package handles clean goroutine tracking and "The @code{tomb} package handles clean goroutine tracking and

View File

@ -61,7 +61,7 @@
(define-public feh (define-public feh
(package (package
(name "feh") (name "feh")
(version "3.1") (version "3.1.1")
(home-page "https://feh.finalrewind.org/") (home-page "https://feh.finalrewind.org/")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
@ -69,7 +69,7 @@
name "-" version ".tar.bz2")) name "-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"01rrl009m1kxwvqqr98y4wk8m1al18fkxwv8cds2k7n4qiv6xdb7")))) "1sy8z6rv5sy1bhk3846hgfdy96wdi874yr2fnxfprks46qp29l31"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (modify-phases %standard-phases (delete 'configure)) '(#:phases (modify-phases %standard-phases (delete 'configure))

View File

@ -30,6 +30,7 @@
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system python) #:use-module (guix build-system python)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages admin)
#:use-module (gnu packages aspell) #:use-module (gnu packages aspell)
#:use-module (gnu packages autogen) #:use-module (gnu packages autogen)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
@ -65,7 +66,7 @@
(define-public quassel (define-public quassel
(package (package
(name "quassel") (name "quassel")
(version "0.12.5") (version "0.13.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -73,7 +74,7 @@
version ".tar.bz2")) version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"1qkl3sb4ijx4k17m0c42j2p5bc4jymypwhmplm942rbrzm6mg50q")) "0xp9mppxl63qzgsdyprmblvfrj0bb9z57kfc088gvcavvq1210nr"))
(modules '((guix build utils))) (modules '((guix build utils)))
;; We don't want to install the bundled scripts. ;; We don't want to install the bundled scripts.
(snippet (snippet
@ -86,21 +87,31 @@
(arguments (arguments
;; The three binaries are not mutually exlusive, and are all built ;; The three binaries are not mutually exlusive, and are all built
;; by default. ;; by default.
'(#:configure-flags '(;;"-DWANT_QTCLIENT=OFF" ; 5.2 MiB '(#:configure-flags '(;;"-DWANT_QTCLIENT=OFF" ; 6.1 MiB
;;"-DWANT_CORE=OFF" ; 2.4 MiB ;;"-DWANT_CORE=OFF" ; 3.0 MiB
;;"-DWANT_MONO=OFF" ; 6.4 MiB ;;"-DWANT_MONO=OFF" ; 7.6 MiB
"-DUSE_QT5=ON" ; default is qt4
"-DWITH_KDE=OFF" ; no to kde integration ... "-DWITH_KDE=OFF" ; no to kde integration ...
"-DWITH_OXYGEN=ON" ; therefore we install bundled icons "-DWITH_BUNDLED_ICONS=ON" ; so we install bundled icons
"-DWITH_WEBKIT=OFF") ; we don't depend on qtwebkit "-DWITH_OXYGEN_ICONS=ON" ; also the oxygen ones
"-DWITH_WEBENGINE=OFF") ; we don't depend on qtwebengine
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-inxi-reference
(lambda* (#:key inputs #:allow-other-keys)
(let ((inxi (string-append (assoc-ref inputs "inxi") "/bin/inxi")))
(substitute* "src/common/aliasmanager.cpp"
((" inxi ") (string-append " " inxi " ")))
#t))))
#:tests? #f)) ; no test target #:tests? #f)) ; no test target
(native-inputs (native-inputs
`(("extra-cmake-modules" ,extra-cmake-modules) `(("extra-cmake-modules" ,extra-cmake-modules)
("pkg-config" ,pkg-config) ("pkg-config" ,pkg-config)
("qttools" ,qttools))) ("qttools" ,qttools)))
(inputs (inputs
`(("qca" ,qca) `(("inxi" ,inxi-minimal)
("qca" ,qca)
("qtbase" ,qtbase) ("qtbase" ,qtbase)
("qtmultimedia" ,qtmultimedia)
("qtscript" ,qtscript) ("qtscript" ,qtscript)
("snorenotify" ,snorenotify) ("snorenotify" ,snorenotify)
("zlib" ,zlib))) ("zlib" ,zlib)))

View File

@ -400,8 +400,8 @@ It has been modified to remove all non-free binary blobs.")
;; supports qemu "virt" machine and possibly a large number of ARM boards. ;; supports qemu "virt" machine and possibly a large number of ARM boards.
;; See : https://wiki.debian.org/DebianKernel/ARMMP. ;; See : https://wiki.debian.org/DebianKernel/ARMMP.
(define %linux-libre-version "4.19.6") (define %linux-libre-version "4.19.7")
(define %linux-libre-hash "1ybi878li06algbv2pdwn81jlh038pfvzz3axn1bzic9p4c9rjhf") (define %linux-libre-hash "1fj038hz6b7g9gdiw9kggydryf8dvrdsfn81snns9bn5b01yp67n")
(define %linux-libre-4.19-patches (define %linux-libre-4.19-patches
(list %boot-logo-patch (list %boot-logo-patch
@ -423,8 +423,8 @@ It has been modified to remove all non-free binary blobs.")
#:patches %linux-libre-4.19-patches #:patches %linux-libre-4.19-patches
#:configuration-file kernel-config)) #:configuration-file kernel-config))
(define %linux-libre-4.14-version "4.14.85") (define %linux-libre-4.14-version "4.14.86")
(define %linux-libre-4.14-hash "1jh11y6jakkp3xlq9jbf2myfjzbccjx1iyhd6ny7r9cjkv6r5i5i") (define %linux-libre-4.14-hash "1w98drq4ns2awwrbbkd6vy9fh219w8bfjfni5zndfycs5yh5hg65")
(define-public linux-libre-4.14 (define-public linux-libre-4.14
(make-linux-libre %linux-libre-4.14-version (make-linux-libre %linux-libre-4.14-version
@ -433,8 +433,8 @@ It has been modified to remove all non-free binary blobs.")
#:configuration-file kernel-config)) #:configuration-file kernel-config))
(define-public linux-libre-4.9 (define-public linux-libre-4.9
(make-linux-libre "4.9.142" (make-linux-libre "4.9.143"
"0a7c41m41p83byn68cfixq460sy73ahwcx9y3xm6cv05grqza8zh" "0vg6hs7vc09riyki8lyy73p3ghl6k9q4xfv7dals4s9q61i6b6d6"
%intel-compatible-systems %intel-compatible-systems
#:configuration-file kernel-config)) #:configuration-file kernel-config))
@ -4055,7 +4055,7 @@ under OpenGL graphics workloads.")
(define-public efivar (define-public efivar
(package (package
(name "efivar") (name "efivar")
(version "35") (version "37")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/rhboot/" name (uri (string-append "https://github.com/rhboot/" name
@ -4063,7 +4063,7 @@ under OpenGL graphics workloads.")
"-" version ".tar.bz2")) "-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"153k2ifyl4giz5fkryxhz8z621diqjy7v25hfga4z94rs32ks0qy")))) "17vvfivhsrszh7q39b6npjsrhrhsjf1cmmcpp3xrh6wh7ywzwrrw"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(;; Tests require a UEFI system and is not detected in the chroot. `(;; Tests require a UEFI system and is not detected in the chroot.

View File

@ -11,6 +11,7 @@
;;; Copyright © 2018 Benjamin Slade <slade@jnanam.net> ;;; Copyright © 2018 Benjamin Slade <slade@jnanam.net>
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2018 Pierre Langlois <pierre.langlois@gmx.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -928,9 +929,9 @@ from other CLXes around the net.")
`(("sbcl-cl-ppcre" ,sbcl-cl-ppcre) `(("sbcl-cl-ppcre" ,sbcl-cl-ppcre)
("sbcl-cl-unicode" ,sbcl-cl-unicode))))) ("sbcl-cl-unicode" ,sbcl-cl-unicode)))))
(define-public sbcl-stumpwm (define-public stumpwm
(package (package
(name "sbcl-stumpwm") (name "stumpwm")
(version "18.05") (version "18.05")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
@ -946,7 +947,8 @@ from other CLXes around the net.")
("alexandria" ,sbcl-alexandria))) ("alexandria" ,sbcl-alexandria)))
(outputs '("out" "lib")) (outputs '("out" "lib"))
(arguments (arguments
'(#:phases '(#:asd-system-name "stumpwm"
#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'create-symlinks 'build-program (add-after 'create-symlinks 'build-program
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
@ -979,17 +981,15 @@ for input. These design decisions reflect the growing popularity of
productive, customizable lisp based systems.") productive, customizable lisp based systems.")
(home-page "https://github.com/stumpwm/stumpwm") (home-page "https://github.com/stumpwm/stumpwm")
(license license:gpl2+) (license license:gpl2+)
(properties `((ecl-variant . ,(delay ecl-stumpwm)))))) (properties `((cl-source-variant . ,(delay cl-stumpwm))))))
(define-public sbcl-stumpwm
(deprecated-package "sbcl-stumpwm" stumpwm))
(define-public cl-stumpwm (define-public cl-stumpwm
(sbcl-package->cl-source-package sbcl-stumpwm))
(define-public ecl-stumpwm
(let ((base (sbcl-package->ecl-package sbcl-stumpwm)))
(package (package
(inherit base) (inherit (sbcl-package->cl-source-package stumpwm))
(outputs '("out")) (name "cl-stumpwm")))
(arguments '()))))
;; The slynk that users expect to install includes all of slynk's contrib ;; The slynk that users expect to install includes all of slynk's contrib
;; modules. Therefore, we build the base module and all contribs first; then ;; modules. Therefore, we build the base module and all contribs first; then
@ -1268,16 +1268,16 @@ multiple inspectors with independent history.")
paths) paths)
#t))))))) #t)))))))
(define-public sbcl-stumpwm+slynk (define-public stumpwm+slynk
(package (package
(inherit sbcl-stumpwm) (inherit stumpwm)
(name "sbcl-stumpwm-with-slynk") (name "stumpwm-with-slynk")
(outputs '("out")) (outputs '("out"))
(inputs (inputs
`(("stumpwm" ,sbcl-stumpwm "lib") `(("stumpwm" ,stumpwm "lib")
("slynk" ,sbcl-slynk))) ("slynk" ,sbcl-slynk)))
(arguments (arguments
(substitute-keyword-arguments (package-arguments sbcl-stumpwm) (substitute-keyword-arguments (package-arguments stumpwm)
((#:phases phases) ((#:phases phases)
`(modify-phases ,phases `(modify-phases ,phases
(replace 'build-program (replace 'build-program
@ -1301,6 +1301,9 @@ multiple inspectors with independent history.")
(delete 'cleanup) (delete 'cleanup)
(delete 'create-symlinks))))))) (delete 'create-symlinks)))))))
(define-public sbcl-stumpwm+slynk
(deprecated-package "sbcl-stumpwm-with-slynk" stumpwm+slynk))
(define-public sbcl-parse-js (define-public sbcl-parse-js
(let ((commit "fbadc6029bec7039602abfc06c73bb52970998f6") (let ((commit "fbadc6029bec7039602abfc06c73bb52970998f6")
(revision "1")) (revision "1"))

View File

@ -495,7 +495,7 @@ sample proximities between pairs of cases.")
`(("python" ,python) `(("python" ,python)
("numpy" ,python-numpy) ("numpy" ,python-numpy)
("r-minimal" ,r-minimal) ("r-minimal" ,r-minimal)
("octave" ,octave) ("octave" ,octave-cli)
("swig" ,swig) ("swig" ,swig)
("eigen" ,eigen) ("eigen" ,eigen)
("hdf5" ,hdf5) ("hdf5" ,hdf5)

View File

@ -23,7 +23,7 @@
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be> ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017 Kyle Meyer <kyle@kyleam.com> ;;; Copyright © 2017 Kyle Meyer <kyle@kyleam.com>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org> ;;; Copyright © 2017, 2018 Rene Saavedra <pacoon@protonmail.com>
;;; Copyright © 2018 Pierre Langlois <pierre.langlois@gmx.com> ;;; Copyright © 2018 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com> ;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com>
@ -2424,15 +2424,15 @@ tools and applications:
(define-public balsa (define-public balsa
(package (package
(name "balsa") (name "balsa")
(version "2.5.3") (version "2.5.6")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://pawsa.fedorapeople.org/balsa/balsa-" (uri (string-append "https://pawsa.fedorapeople.org/balsa/"
version ".tar.bz2")) name "-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"15jkwp3ylbwd8iha4dr37z1xb6mkk31ym90vv3h2a5xk2rmym5mq")))) "17k6wcsl8gki7cskr3hhmfj6n54rha8ca3b6fzd8blsl5shsankx"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags

View File

@ -1413,9 +1413,9 @@ can solve two kinds of problems:
;; For a fully featured Octave, users are strongly recommended also to install ;; For a fully featured Octave, users are strongly recommended also to install
;; the following packages: less, ghostscript, gnuplot. ;; the following packages: less, ghostscript, gnuplot.
(define-public octave (define-public octave-cli
(package (package
(name "octave") (name "octave-cli")
(version "4.4.1") (version "4.4.1")
(source (source
(origin (origin
@ -1497,21 +1497,21 @@ Work may be performed both at the interactive command-line as well as via
script files.") script files.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public qtoctave (define-public octave
(package (inherit octave) (package (inherit octave-cli)
(name "qtoctave") (name "octave")
(source (origin (source (origin
(inherit (package-source octave)))) (inherit (package-source octave-cli))))
(inputs (inputs
`(("qscintilla" ,qscintilla) `(("qscintilla" ,qscintilla)
("qt" ,qtbase) ("qt" ,qtbase)
,@(package-inputs octave))) ,@(package-inputs octave-cli)))
(native-inputs (native-inputs
`(("qttools" , qttools) ;for lrelease `(("qttools" , qttools) ;for lrelease
("texlive" ,texlive) ;for texi2dvi ("texlive" ,texlive) ;for texi2dvi
,@(package-native-inputs octave))) ,@(package-native-inputs octave-cli)))
(arguments (arguments
(substitute-keyword-arguments (package-arguments octave) (substitute-keyword-arguments (package-arguments octave-cli)
((#:phases phases) ((#:phases phases)
`(modify-phases ,phases `(modify-phases ,phases
(add-before 'configure 'patch-qscintilla-library-name (add-before 'configure 'patch-qscintilla-library-name
@ -1525,6 +1525,9 @@ script files.")
"qscintilla2_qt5")) "qscintilla2_qt5"))
#t)))))))) #t))))))))
(define-public qtoctave
(deprecated-package "qtoctave" octave))
(define-public opencascade-oce (define-public opencascade-oce
(package (package
(name "opencascade-oce") (name "opencascade-oce")
@ -1767,6 +1770,7 @@ scientific applications modeled by partial differential equations.")
(name "petsc-openmpi") (name "petsc-openmpi")
(inputs (inputs
`(("hdf5" ,hdf5-parallel-openmpi) `(("hdf5" ,hdf5-parallel-openmpi)
("hypre" ,hypre-openmpi)
("metis" ,metis) ("metis" ,metis)
("mumps" ,mumps-openmpi) ("mumps" ,mumps-openmpi)
("openmpi" ,openmpi) ("openmpi" ,openmpi)
@ -1776,7 +1780,8 @@ scientific applications modeled by partial differential equations.")
(arguments (arguments
(substitute-keyword-arguments (package-arguments petsc) (substitute-keyword-arguments (package-arguments petsc)
((#:configure-flags cf) ((#:configure-flags cf)
``("--with-mpiexec=mpirun" ``("--with-hypre=1"
"--with-mpiexec=mpirun"
"--with-metis=1" "--with-metis=1"
"--with-mumps=1" "--with-mumps=1"
"--with-scalapack=1" "--with-scalapack=1"
@ -3578,7 +3583,7 @@ in finite element programs.")
`(("unzip" ,unzip))) `(("unzip" ,unzip)))
(inputs (inputs
`(("hdf5" ,hdf5) `(("hdf5" ,hdf5)
("octave" ,octave) ("octave" ,octave-cli)
("python" ,python-2) ; print syntax ("python" ,python-2) ; print syntax
;; ("python2-numpy" ,python2-numpy) ; only required for the tests ;; ("python2-numpy" ,python2-numpy) ; only required for the tests
("zlib" ,zlib))) ("zlib" ,zlib)))

View File

@ -470,13 +470,13 @@ compression format (.mpc files).")
(define-public eyed3 (define-public eyed3
(package (package
(name "eyed3") (name "eyed3")
(version "0.8.7") (version "0.8.8")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "eyeD3" version)) (uri (pypi-uri "eyeD3" version))
(sha256 (sha256
(base32 (base32
"1fzqy6hkg73xvpapdjrdzr3r0fsamnplvjfl7dz7rzgzx2r4x4pg")))) "197lszkyzm377ym5r0ssryfsiz20yjx8y4rii3wc81n92d1qzlaq"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:tests? #f)) ; the required test data contains copyrighted material. `(#:tests? #f)) ; the required test data contains copyrighted material.

View File

@ -244,7 +244,7 @@ terminal using ncurses.")
"0m0mjb049sl62vx13h9waavysa30mk0rphacksnvf94n13la62v5")))) "0m0mjb049sl62vx13h9waavysa30mk0rphacksnvf94n13la62v5"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs `(("libmpdclient" ,libmpdclient) (inputs `(("libmpdclient" ,libmpdclient)
("boost" ,boost) ("boost" ,boost-cxx14)
("readline" ,readline) ("readline" ,readline)
("ncurses" ,ncurses) ("ncurses" ,ncurses)
("taglib" ,taglib) ("taglib" ,taglib)

View File

@ -2247,14 +2247,14 @@ from the command line.")
(define-public qtractor (define-public qtractor
(package (package
(name "qtractor") (name "qtractor")
(version "0.9.2") (version "0.9.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "http://downloads.sourceforge.net/qtractor/" (uri (string-append "http://downloads.sourceforge.net/qtractor/"
"qtractor-" version ".tar.gz")) "qtractor-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1j3rpvdkw9rw48j4zyfn6rprp01csy4rl6zckcjyx0vh7vaycchr")))) "1010gvkzdzdk39g1g6wx2j19ls0kdl6l9q51xzk2qik7h2fwxl71"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f)) ; no "check" target `(#:tests? #f)) ; no "check" target
@ -2688,13 +2688,14 @@ Songs can be searched by artist, name or even by a part of the song text.")
(define-public beets (define-public beets
(package (package
(name "beets") (name "beets")
(version "1.4.6") (version "1.4.7")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "beets" version)) (uri (pypi-uri "beets" version))
(patches (search-patches "beets-python-3.7-fix.patch"))
(sha256 (sha256
(base32 (base32
"0l2vfrknwcsm6bn83m7476qrz45qwgxcb5k0h7kn96kr70irn1v2")))) "0w3gz69s9gf5ih69d4sddgh7ndj7658m621bp742zldvjakdncrs"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -2703,6 +2704,12 @@ Songs can be searched by artist, name or even by a part of the song text.")
(lambda _ (lambda _
(setenv "HOME" (string-append (getcwd) "/tmp")) (setenv "HOME" (string-append (getcwd) "/tmp"))
#t)) #t))
(add-after 'unpack 'make-python3.7-compatible
(lambda _
;; See <https://github.com/beetbox/beets/issues/2978>.
(substitute* "beets/autotag/hooks.py"
(("re\\._pattern_type") "re.Pattern"))
#t))
(replace 'check (replace 'check
(lambda _ (lambda _
(invoke "nosetests" "-v")))))) (invoke "nosetests" "-v"))))))
@ -3298,7 +3305,8 @@ plugins, a switch trigger, a toggle switch, and a peakmeter.")
"1wg47vjw9djn99gbnsl2bcwj4xhdid61m4wrbn2nlp797flj91ic")))) "1wg47vjw9djn99gbnsl2bcwj4xhdid61m4wrbn2nlp797flj91ic"))))
(build-system waf-build-system) (build-system waf-build-system)
(arguments (arguments
`(#:tests? #f ; no "check" target `(#:python ,python-2
#:tests? #f ; no "check" target
#:configure-flags (list "--no-webkit") #:configure-flags (list "--no-webkit")
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases

View File

@ -101,9 +101,9 @@
;; Latest version of Guix, which may or may not correspond to a release. ;; Latest version of Guix, which may or may not correspond to a release.
;; Note: the 'update-guix-package.scm' script expects this definition to ;; Note: the 'update-guix-package.scm' script expects this definition to
;; start precisely like this. ;; start precisely like this.
(let ((version "0.15.0") (let ((version "0.16.0")
(commit "71a78ba65b00ad1f27086a3dcdded7dc4326ade1") (commit "6ddc63e599a26c302f74d0622f67cfd987f0dc5f")
(revision 8)) (revision 3))
(package (package
(name "guix") (name "guix")
@ -119,7 +119,7 @@
(commit commit))) (commit commit)))
(sha256 (sha256
(base32 (base32
"0isagzccfxjqrc38wamknvh0jzv1pjh0wq5baj9jzwl07xkrc0hc")) "0vzxrsfbr4phhy60m7pc6klb61whqc404c3x76ydj70xvi1xa0wz"))
(file-name (string-append "guix-" version "-checkout")))) (file-name (string-append "guix-" version "-checkout"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
@ -316,6 +316,7 @@ the Nix package manager.")
(inputs (inputs
`(("gnutls" ,gnutls) `(("gnutls" ,gnutls)
("guile-git" ,guile-git) ("guile-git" ,guile-git)
("guile-json" ,guile-json)
("guile-gcrypt" ,guile-gcrypt) ("guile-gcrypt" ,guile-gcrypt)
,@(fold alist-delete (package-inputs guix) ,@(fold alist-delete (package-inputs guix)
'("boot-guile" "boot-guile/i686" "util-linux")))) '("boot-guile" "boot-guile/i686" "util-linux"))))

View File

@ -0,0 +1,57 @@
Fix compatibility issue with Python 3.7:
https://github.com/beetbox/beets/issues/2978
Patch copied from upstream source repository:
https://github.com/beetbox/beets/commit/15d44f02a391764da1ce1f239caef819f08beed8
From 15d44f02a391764da1ce1f239caef819f08beed8 Mon Sep 17 00:00:00 2001
From: Adrian Sampson <adrian@radbox.org>
Date: Sun, 22 Jul 2018 12:34:19 -0400
Subject: [PATCH] Fix Python 3.7 compatibility (#2978)
---
beets/autotag/hooks.py | 8 +++++++-
docs/changelog.rst | 2 ++
2 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/beets/autotag/hooks.py b/beets/autotag/hooks.py
index 3615a9333..1c62a54c5 100644
--- a/beets/autotag/hooks.py
+++ b/beets/autotag/hooks.py
@@ -31,6 +31,12 @@
log = logging.getLogger('beets')
+# The name of the type for patterns in re changed in Python 3.7.
+try:
+ Pattern = re._pattern_type
+except AttributeError:
+ Pattern = re.Pattern
+
# Classes used to represent candidate options.
@@ -433,7 +439,7 @@ def _eq(self, value1, value2):
be a compiled regular expression, in which case it will be
matched against `value2`.
"""
- if isinstance(value1, re._pattern_type):
+ if isinstance(value1, Pattern):
return bool(value1.match(value2))
return value1 == value2
#diff --git a/docs/changelog.rst b/docs/changelog.rst
#index be6de2904..d487f31f5 100644
#--- a/docs/changelog.rst
#+++ b/docs/changelog.rst
#@@ -19,6 +19,8 @@ New features:
#
# Fixes:
#
#+* Fix compatibility Python 3.7 and its change to a name in the ``re`` module.
#+ :bug:`2978`
# * R128 normalization tags are now properly deleted from files when the values
# are missing.
# Thanks to :user:`autrimpo`.

View File

@ -1,22 +0,0 @@
Look for memfd_create in sys/mman.h instead of linux/memfd.h.
Needed to build with glibc-2.27.
--- a/configure.ac 1969-12-31 19:00:00.000000000 -0500
+++ b/configure.ac 2018-03-27 23:54:15.414589005 -0400
@@ -360,7 +360,7 @@
# ------------------------------------------------------------------------------
AC_CHECK_HEADERS([sys/capability.h], [], [AC_MSG_ERROR([*** POSIX caps headers not found])])
-AC_CHECK_HEADERS([linux/memfd.h], [], [])
+AC_CHECK_HEADERS([sys/mman.h], [], [])
AC_CHECK_HEADERS([printf.h], [have_printf_h=yes], [have_printf_h=no])
AS_IF([test x$have_printf_h = xyes], [
@@ -395,6 +395,7 @@
[], [], [[
#include <sys/types.h>
#include <unistd.h>
+#include <sys/mman.h>
#include <sys/mount.h>
#include <fcntl.h>
#include <sched.h>

View File

@ -1,113 +0,0 @@
https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=8937b94d1a643fd9760714642296d034a45254a8
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81066
This patch can be removed when gcc-6.5.0 is released
From 8937b94d1a643fd9760714642296d034a45254a8 Mon Sep 17 00:00:00 2001
From: doko <doko@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Thu, 7 Sep 2017 07:15:24 +0000
Subject: [PATCH] 2017-09-07 Matthias Klose <doko@ubuntu.com>
Backported from mainline
2017-07-14 Jakub Jelinek <jakub@redhat.com>
PR sanitizer/81066
* sanitizer_common/sanitizer_linux.h: Cherry-pick upstream r307969.
* sanitizer_common/sanitizer_linux.cc: Likewise.
* sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc: Likewise.
* tsan/tsan_platform_linux.cc: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-6-branch@251828 138bc75d-0d04-0410-961f-82ee72b054a4
---
libsanitizer/ChangeLog | 11 +++++++++++
libsanitizer/sanitizer_common/sanitizer_linux.cc | 3 +--
libsanitizer/sanitizer_common/sanitizer_linux.h | 4 +---
.../sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc | 2 +-
libsanitizer/tsan/tsan_platform_linux.cc | 2 +-
5 files changed, 15 insertions(+), 7 deletions(-)
diff --git a/libsanitizer/ChangeLog b/libsanitizer/ChangeLog
index 252cd09..d988b28 100644
--- a/libsanitizer/ChangeLog
+++ b/libsanitizer/ChangeLog
@@ -1,3 +1,14 @@
+2017-09-07 Matthias Klose <doko@ubuntu.com>
+
+ Backported from mainline
+ 2017-07-14 Jakub Jelinek <jakub@redhat.com>
+
+ PR sanitizer/81066
+ * sanitizer_common/sanitizer_linux.h: Cherry-pick upstream r307969.
+ * sanitizer_common/sanitizer_linux.cc: Likewise.
+ * sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc: Likewise.
+ * tsan/tsan_platform_linux.cc: Likewise.
+
2017-07-04 Release Manager
* GCC 6.4.0 released.
diff --git a/libsanitizer/sanitizer_common/sanitizer_linux.cc b/libsanitizer/sanitizer_common/sanitizer_linux.cc
index 2cefa20..223d9c6 100644
--- a/libsanitizer/sanitizer_common/sanitizer_linux.cc
+++ b/libsanitizer/sanitizer_common/sanitizer_linux.cc
@@ -546,8 +546,7 @@ uptr internal_prctl(int option, uptr arg2, uptr arg3, uptr arg4, uptr arg5) {
}
#endif
-uptr internal_sigaltstack(const struct sigaltstack *ss,
- struct sigaltstack *oss) {
+uptr internal_sigaltstack(const void *ss, void *oss) {
return internal_syscall(SYSCALL(sigaltstack), (uptr)ss, (uptr)oss);
}
diff --git a/libsanitizer/sanitizer_common/sanitizer_linux.h b/libsanitizer/sanitizer_common/sanitizer_linux.h
index 4497702..1594058 100644
--- a/libsanitizer/sanitizer_common/sanitizer_linux.h
+++ b/libsanitizer/sanitizer_common/sanitizer_linux.h
@@ -19,7 +19,6 @@
#include "sanitizer_platform_limits_posix.h"
struct link_map; // Opaque type returned by dlopen().
-struct sigaltstack;
namespace __sanitizer {
// Dirent structure for getdents(). Note that this structure is different from
@@ -28,8 +27,7 @@ struct linux_dirent;
// Syscall wrappers.
uptr internal_getdents(fd_t fd, struct linux_dirent *dirp, unsigned int count);
-uptr internal_sigaltstack(const struct sigaltstack* ss,
- struct sigaltstack* oss);
+uptr internal_sigaltstack(const void* ss, void* oss);
uptr internal_sigprocmask(int how, __sanitizer_sigset_t *set,
__sanitizer_sigset_t *oldset);
void internal_sigfillset(__sanitizer_sigset_t *set);
diff --git a/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc b/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc
index c919e4f..014162af 100644
--- a/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc
+++ b/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc
@@ -267,7 +267,7 @@ static int TracerThread(void* argument) {
// Alternate stack for signal handling.
InternalScopedBuffer<char> handler_stack_memory(kHandlerStackSize);
- struct sigaltstack handler_stack;
+ stack_t handler_stack;
internal_memset(&handler_stack, 0, sizeof(handler_stack));
handler_stack.ss_sp = handler_stack_memory.data();
handler_stack.ss_size = kHandlerStackSize;
diff --git a/libsanitizer/tsan/tsan_platform_linux.cc b/libsanitizer/tsan/tsan_platform_linux.cc
index 09cec5f..908f4fe 100644
--- a/libsanitizer/tsan/tsan_platform_linux.cc
+++ b/libsanitizer/tsan/tsan_platform_linux.cc
@@ -291,7 +291,7 @@ bool IsGlobalVar(uptr addr) {
int ExtractResolvFDs(void *state, int *fds, int nfd) {
#if SANITIZER_LINUX
int cnt = 0;
- __res_state *statp = (__res_state*)state;
+ struct __res_state *statp = (struct __res_state*)state;
for (int i = 0; i < MAXNS && cnt < nfd; i++) {
if (statp->_u._ext.nsaddrs[i] && statp->_u._ext.nssocks[i] != -1)
fds[cnt++] = statp->_u._ext.nssocks[i];
--
2.9.3

View File

@ -0,0 +1,158 @@
Fix CVE-2018-16847:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-16847
Patch copied from upstream source repository:
https://git.qemu.org/?p=qemu.git;a=commitdiff;h=87ad860c622cc8f8916b5232bd8728c08f938fce
From 87ad860c622cc8f8916b5232bd8728c08f938fce Mon Sep 17 00:00:00 2001
From: Paolo Bonzini <pbonzini@redhat.com>
Date: Tue, 20 Nov 2018 19:41:48 +0100
Subject: [PATCH] nvme: fix out-of-bounds access to the CMB
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Because the CMB BAR has a min_access_size of 2, if you read the last
byte it will try to memcpy *2* bytes from n->cmbuf, causing an off-by-one
error. This is CVE-2018-16847.
Another way to fix this might be to register the CMB as a RAM memory
region, which would also be more efficient. However, that might be a
change for big-endian machines; I didn't think this through and I don't
know how real hardware works. Add a basic testcase for the CMB in case
somebody does this change later on.
Cc: Keith Busch <keith.busch@intel.com>
Cc: qemu-block@nongnu.org
Reported-by: Li Qiang <liq3ea@gmail.com>
Reviewed-by: Li Qiang <liq3ea@gmail.com>
Tested-by: Li Qiang <liq3ea@gmail.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
---
hw/block/nvme.c | 2 +-
tests/Makefile.include | 2 +-
tests/nvme-test.c | 68 +++++++++++++++++++++++++++++++++++-------
3 files changed, 60 insertions(+), 12 deletions(-)
diff --git a/hw/block/nvme.c b/hw/block/nvme.c
index 28d284346dd..8c35cab2b43 100644
--- a/hw/block/nvme.c
+++ b/hw/block/nvme.c
@@ -1201,7 +1201,7 @@ static const MemoryRegionOps nvme_cmb_ops = {
.write = nvme_cmb_write,
.endianness = DEVICE_LITTLE_ENDIAN,
.impl = {
- .min_access_size = 2,
+ .min_access_size = 1,
.max_access_size = 8,
},
};
diff --git a/tests/Makefile.include b/tests/Makefile.include
index 613242bc6ef..fb0b449c02a 100644
--- a/tests/Makefile.include
+++ b/tests/Makefile.include
@@ -730,7 +730,7 @@ tests/test-hmp$(EXESUF): tests/test-hmp.o
tests/machine-none-test$(EXESUF): tests/machine-none-test.o
tests/drive_del-test$(EXESUF): tests/drive_del-test.o $(libqos-virtio-obj-y)
tests/qdev-monitor-test$(EXESUF): tests/qdev-monitor-test.o $(libqos-pc-obj-y)
-tests/nvme-test$(EXESUF): tests/nvme-test.o
+tests/nvme-test$(EXESUF): tests/nvme-test.o $(libqos-pc-obj-y)
tests/pvpanic-test$(EXESUF): tests/pvpanic-test.o
tests/i82801b11-test$(EXESUF): tests/i82801b11-test.o
tests/ac97-test$(EXESUF): tests/ac97-test.o
diff --git a/tests/nvme-test.c b/tests/nvme-test.c
index 7674a446e4f..2700ba838aa 100644
--- a/tests/nvme-test.c
+++ b/tests/nvme-test.c
@@ -8,25 +8,73 @@
*/
#include "qemu/osdep.h"
+#include "qemu/units.h"
#include "libqtest.h"
+#include "libqos/libqos-pc.h"
+
+static QOSState *qnvme_start(const char *extra_opts)
+{
+ QOSState *qs;
+ const char *arch = qtest_get_arch();
+ const char *cmd = "-drive id=drv0,if=none,file=null-co://,format=raw "
+ "-device nvme,addr=0x4.0,serial=foo,drive=drv0 %s";
+
+ if (strcmp(arch, "i386") == 0 || strcmp(arch, "x86_64") == 0) {
+ qs = qtest_pc_boot(cmd, extra_opts ? : "");
+ global_qtest = qs->qts;
+ return qs;
+ }
+
+ g_printerr("nvme tests are only available on x86\n");
+ exit(EXIT_FAILURE);
+}
+
+static void qnvme_stop(QOSState *qs)
+{
+ qtest_shutdown(qs);
+}
-/* Tests only initialization so far. TODO: Replace with functional tests */
static void nop(void)
{
+ QOSState *qs;
+
+ qs = qnvme_start(NULL);
+ qnvme_stop(qs);
}
-int main(int argc, char **argv)
+static void nvmetest_cmb_test(void)
{
- int ret;
+ const int cmb_bar_size = 2 * MiB;
+ QOSState *qs;
+ QPCIDevice *pdev;
+ QPCIBar bar;
- g_test_init(&argc, &argv, NULL);
- qtest_add_func("/nvme/nop", nop);
+ qs = qnvme_start("-global nvme.cmb_size_mb=2");
+ pdev = qpci_device_find(qs->pcibus, QPCI_DEVFN(4,0));
+ g_assert(pdev != NULL);
+
+ qpci_device_enable(pdev);
+ bar = qpci_iomap(pdev, 2, NULL);
+
+ qpci_io_writel(pdev, bar, 0, 0xccbbaa99);
+ g_assert_cmpint(qpci_io_readb(pdev, bar, 0), ==, 0x99);
+ g_assert_cmpint(qpci_io_readw(pdev, bar, 0), ==, 0xaa99);
+
+ /* Test partially out-of-bounds accesses. */
+ qpci_io_writel(pdev, bar, cmb_bar_size - 1, 0x44332211);
+ g_assert_cmpint(qpci_io_readb(pdev, bar, cmb_bar_size - 1), ==, 0x11);
+ g_assert_cmpint(qpci_io_readw(pdev, bar, cmb_bar_size - 1), !=, 0x2211);
+ g_assert_cmpint(qpci_io_readl(pdev, bar, cmb_bar_size - 1), !=, 0x44332211);
+ g_free(pdev);
- qtest_start("-drive id=drv0,if=none,file=null-co://,format=raw "
- "-device nvme,drive=drv0,serial=foo");
- ret = g_test_run();
+ qnvme_stop(qs);
+}
- qtest_end();
+int main(int argc, char **argv)
+{
+ g_test_init(&argc, &argv, NULL);
+ qtest_add_func("/nvme/nop", nop);
+ qtest_add_func("/nvme/cmb_test", nvmetest_cmb_test);
- return ret;
+ return g_test_run();
}
--
2.19.2

View File

@ -0,0 +1,49 @@
Fix CVE-2018-16867:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-16867
https://seclists.org/oss-sec/2018/q4/202
Patch copied from upstream source repository:
https://git.qemu.org/?p=qemu.git;a=commitdiff;h=c52d46e041b42bb1ee6f692e00a0abe37a9659f6
From c52d46e041b42bb1ee6f692e00a0abe37a9659f6 Mon Sep 17 00:00:00 2001
From: Gerd Hoffmann <kraxel@redhat.com>
Date: Mon, 3 Dec 2018 11:10:45 +0100
Subject: [PATCH] usb-mtp: outlaw slashes in filenames
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Slash is unix directory separator, so they are not allowed in filenames.
Note this also stops the classic escape via "../".
Fixes: CVE-2018-16867
Reported-by: Michael Hanselmann <public@hansmi.ch>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-id: 20181203101045.27976-3-kraxel@redhat.com
---
hw/usb/dev-mtp.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/hw/usb/dev-mtp.c b/hw/usb/dev-mtp.c
index 0f6a9702ef1..100b7171f4e 100644
--- a/hw/usb/dev-mtp.c
+++ b/hw/usb/dev-mtp.c
@@ -1719,6 +1719,12 @@ static void usb_mtp_write_metadata(MTPState *s)
filename = utf16_to_str(dataset->length, dataset->filename);
+ if (strchr(filename, '/')) {
+ usb_mtp_queue_result(s, RES_PARAMETER_NOT_SUPPORTED, d->trans,
+ 0, 0, 0, 0);
+ return;
+ }
+
o = usb_mtp_object_lookup_name(p, filename, dataset->length);
if (o != NULL) {
next_handle = o->handle;
--
2.19.2

View File

@ -102,8 +102,8 @@ listing the files modified by a patch.")
(base32 (base32
"06b816m2gz9jfif7k9v2hrm7fz76zjg5pavf7hd3ifybwn4cgjzn")) "06b816m2gz9jfif7k9v2hrm7fz76zjg5pavf7hd3ifybwn4cgjzn"))
(patches (search-patches "quilt-test-fix-regex.patch" (patches (search-patches "quilt-test-fix-regex.patch"
"quilt-compat-getopt-fix-second-separator.patch" "quilt-getopt-second-separator.patch"
"quilt-compat-getopt-fix-option-with-nondigit-param.patch")))) "quilt-getopt-nondigit-param.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("gettext" ,gnu-gettext))) `(("gettext" ,gnu-gettext)))

View File

@ -12,7 +12,7 @@
;;; Copyright © 2016 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2016 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2017, 2018 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017, 2018 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org> ;;; Copyright © 2017, 2018 Rene Saavedra <pacoon@protonmail.com>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
@ -1001,7 +1001,7 @@ PDF. Indeed @command{pdfposter} was inspired by @command{poster}.")
(define-public pdfgrep (define-public pdfgrep
(package (package
(name "pdfgrep") (name "pdfgrep")
(version "2.1.1") (version "2.1.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1009,7 +1009,7 @@ PDF. Indeed @command{pdfposter} was inspired by @command{poster}.")
name "-" version ".tar.gz")) name "-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"02qcl5kmr5qzjfc99qpbpfb1890bxlrq3r208gnding51zrmb09c")))) "1fia10djcxxl7n9jw2prargw4yzbykk6izig2443ycj9syhxrwqf"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))

View File

@ -131,14 +131,14 @@ data as produced by digital cameras.")
(define-public libgphoto2 (define-public libgphoto2
(package (package
(name "libgphoto2") (name "libgphoto2")
(version "2.5.20") (version "2.5.21")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://sourceforge/gphoto/libgphoto/" (uri (string-append "mirror://sourceforge/gphoto/libgphoto/"
version "/libgphoto2-" version ".tar.bz2")) version "/libgphoto2-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"03wbwsb4v7yay8g5ni7pzmkbrh7qnqx977bddjpxsp9f1qag03z1")))) "1ccb8idjkv19p9zxg6hh8y6vbgs8flpnh550lq6a8cmga8d2nmy5"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs `(("pkg-config" ,pkg-config))) (native-inputs `(("pkg-config" ,pkg-config)))
(inputs (inputs

View File

@ -2100,13 +2100,13 @@ cutting and pasting that code over and over.")
(define-public python-unidecode (define-public python-unidecode
(package (package
(name "python-unidecode") (name "python-unidecode")
(version "0.04.21") (version "1.0.23")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "Unidecode" version)) (uri (pypi-uri "Unidecode" version))
(sha256 (sha256
(base32 (base32
"0lfhp9c5xrbpjvbpr12ji52g1lx04404bzzdg6pvabhzisw6l2i8")))) "1ysjbr3nqfqj97h8zyj3v9pya413vkv7a1mzml80w37xx15kb1cb"))))
(build-system python-build-system) (build-system python-build-system)
(home-page "https://pypi.python.org/pypi/Unidecode") (home-page "https://pypi.python.org/pypi/Unidecode")
(synopsis "ASCII transliterations of Unicode text") (synopsis "ASCII transliterations of Unicode text")
@ -9759,13 +9759,13 @@ addresses, and phone numbers.")
(define-public python-pyaml (define-public python-pyaml
(package (package
(name "python-pyaml") (name "python-pyaml")
(version "17.7.2") (version "18.11.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "pyaml" version)) (uri (pypi-uri "pyaml" version))
(sha256 (sha256
(base32 (base32
"132grrw0ajq4nrappi3ldbkb952k7yn9b6c7csi2rmvzm1g6ppp2")))) "0fi604ix8lbpj1266q7js6szm771saprdzzcdwmj43wy83694qmr"))))
(build-system python-build-system) (build-system python-build-system)
(native-inputs (native-inputs
`(("python-unidecode" ,python-unidecode))) `(("python-unidecode" ,python-unidecode)))

View File

@ -23,21 +23,22 @@
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix utils)) #:use-module (guix utils))
(define-public re2 (define-public re2
(package (package
(name "re2") (name "re2")
(version "2018-10-01") (version "2018-12-01")
(home-page "https://github.com/google/re2") (home-page "https://github.com/google/re2")
(source (origin (source (origin
(method url-fetch) (method git-fetch)
(uri (string-append home-page "/archive/" version ".tar.gz")) (uri (git-reference (url home-page) (commit version)))
(file-name (string-append name "-" version ".tar.gz")) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"10fsxsj3yip34hp2zl5rw8h2x2lgnp83fwrh7m0qfd9m99qrf4x3")))) "181fq0idwzgfmmpyhmqdxi37rbynzgf1b8s99aaka9kqs9ffwj22"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:modules ((guix build gnu-build-system) `(#:modules ((guix build gnu-build-system)

View File

@ -3029,7 +3029,15 @@ a native C extension.")
(lambda _ (lambda _
;; Regenerate gemspec so loosened dependency constraints are ;; Regenerate gemspec so loosened dependency constraints are
;; propagated. ;; propagated.
(invoke "rake" "gemspec")))))) (invoke "rake" "gemspec")))
(add-after 'regenerate-gemspec 'fix-json-java.gemspec
(lambda _
;; This gemspec doesn't look to be generated by the above
;; command, so patch it separately.
(substitute* "json-java.gemspec"
(("%q<test-unit>\\.freeze, \\[\"~> 2\\.0\"\\]")
"%q<test-unit>.freeze, [\">= 2.0\"]"))
#t)))))
(native-inputs (native-inputs
`(("bundler" ,bundler) `(("bundler" ,bundler)
("ragel" ,ragel) ("ragel" ,ragel)

View File

@ -32,20 +32,23 @@
#:use-module (gnu packages acl) #:use-module (gnu packages acl)
#:use-module (gnu packages admin) #:use-module (gnu packages admin)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages backup)
#:use-module (gnu packages check) #:use-module (gnu packages check)
#:use-module (gnu packages crypto) #:use-module (gnu packages crypto)
#:use-module (gnu packages cups) #:use-module (gnu packages cups)
#:use-module (gnu packages databases) #:use-module (gnu packages databases)
#:use-module (gnu packages docbook) #:use-module (gnu packages docbook)
#:use-module (gnu packages tls) #:use-module (gnu packages gnupg)
#:use-module (gnu packages popt)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages openldap)
#:use-module (gnu packages readline)
#:use-module (gnu packages kerberos) #:use-module (gnu packages kerberos)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages openldap)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages popt)
#:use-module (gnu packages python) #:use-module (gnu packages python)
#:use-module (gnu packages readline)
#:use-module (gnu packages tls)
#:use-module (gnu packages web)
#:use-module (gnu packages xml)) #:use-module (gnu packages xml))
(define-public cifs-utils (define-public cifs-utils
@ -147,14 +150,14 @@ anywhere.")
(define-public samba (define-public samba
(package (package
(name "samba") (name "samba")
(version "4.8.6") (version "4.9.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://download.samba.org/pub/samba/stable/" (uri (string-append "https://download.samba.org/pub/samba/stable/"
"samba-" version ".tar.gz")) "samba-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"15hawqdm37l6lp9k14c634315p77cllsx89bvbw9h38fg1hj3fbk")))) "1krm47x08c0vcrq12dxs8mbicma1ck2sl1i0hgkvrmwsgrqdi3yg"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -199,10 +202,14 @@ anywhere.")
`(("acl" ,acl) `(("acl" ,acl)
("cups" ,cups) ("cups" ,cups)
;; ("gamin" ,gamin) ;; ("gamin" ,gamin)
("gpgme" ,gpgme)
("gnutls" ,gnutls) ("gnutls" ,gnutls)
("iniparser" ,iniparser) ("iniparser" ,iniparser)
("jansson" ,jansson)
("libaio" ,libaio) ("libaio" ,libaio)
("libarchive" ,libarchive)
("linux-pam" ,linux-pam) ("linux-pam" ,linux-pam)
("lmdb" ,lmdb)
("openldap" ,openldap) ("openldap" ,openldap)
("popt" ,popt) ("popt" ,popt)
("readline" ,readline) ("readline" ,readline)
@ -338,14 +345,14 @@ many event types, including timers, signals, and the classic file descriptor eve
(define-public ldb (define-public ldb
(package (package
(name "ldb") (name "ldb")
(version "1.3.6") (version "1.4.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://www.samba.org/ftp/ldb/ldb-" (uri (string-append "https://www.samba.org/ftp/ldb/ldb-"
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"16lkz3gyvsm9als1wyimsl573hclr72xy6454mshwjanncs33lji")) "07vacwr941y2x31yl9knsr2rpffz5pqabvqds6sbyngqxy4r785c"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin
@ -358,7 +365,10 @@ many event types, including timers, signals, and the classic file descriptor eve
#t)))) #t))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases '(;; LMDB is only supported on 64-bit systems, yet the test suite
;; requires it.
#:tests? (assoc-ref %build-inputs "lmdb")
#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(replace 'configure (replace 'configure
;; ldb use a custom configuration script that runs waf. ;; ldb use a custom configuration script that runs waf.
@ -378,7 +388,10 @@ many event types, including timers, signals, and the classic file descriptor eve
`(("talloc" ,talloc) `(("talloc" ,talloc)
("tdb" ,tdb))) ("tdb" ,tdb)))
(inputs (inputs
`(("popt" ,popt) `(,@(if (target-64bit?)
`(("lmdb" ,lmdb))
'())
("popt" ,popt)
("tevent" ,tevent))) ("tevent" ,tevent)))
(synopsis "LDAP-like embedded database") (synopsis "LDAP-like embedded database")
(home-page "https://ldb.samba.org/") (home-page "https://ldb.samba.org/")

View File

@ -306,7 +306,7 @@ it a convenient format to store user input files.")
(define-public capnproto (define-public capnproto
(package (package
(name "capnproto") (name "capnproto")
(version "0.6.1") (version "0.7.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -314,7 +314,7 @@ it a convenient format to store user input files.")
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"010s9yhq4531wvdfrdf2477zswhck6cjfby79w73rff3v06090l0")))) "0hfdnhlbskagzgvby8wy6lrxj53zfzpfqimbhga68c0ji2yw1969"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -324,6 +324,14 @@ it a convenient format to store user input files.")
;; Workaround for test that tries to resolve port name from ;; Workaround for test that tries to resolve port name from
;; /etc/services, which is not present in build environment. ;; /etc/services, which is not present in build environment.
(substitute* "src/kj/async-io-test.c++" ((":http") ":80")) (substitute* "src/kj/async-io-test.c++" ((":http") ":80"))
#t))
(add-before 'check 'use-tmp-for-tempory-files
(lambda _
;; Use /tmp for tempory files, as the default /var/tmp directory
;; doesn't exist.
(substitute* "src/kj/filesystem-disk-test.c++"
(("VAR\\_TMP \"/var/tmp\"")
"VAR_TMP \"/tmp\""))
#t))))) #t)))))
(home-page "https://capnproto.org") (home-page "https://capnproto.org")
(synopsis "Capability-based RPC and serialization system") (synopsis "Capability-based RPC and serialization system")

View File

@ -648,6 +648,7 @@ user interface to the FEniCS core components and external libraries.")
"'lift-drag', \n" "'lift-drag', \n"
"'elastodynamics', \n" "'elastodynamics', \n"
"'dg-advection-diffusion', \n" "'dg-advection-diffusion', \n"
"'curl-curl', \n"
"'contact-vi-tao', \n" "'contact-vi-tao', \n"
"'contact-vi-snes', \n" "'contact-vi-snes', \n"
"'collision-detection', \n" "'collision-detection', \n"

View File

@ -321,7 +321,7 @@
("python2-testtools" ,python2-testtools) ("python2-testtools" ,python2-testtools)
("python2-tox" ,python2-tox))) ("python2-tox" ,python2-tox)))
(inputs (inputs
`(("boost" ,boost) `(("boost" ,boost-cxx14)
("curl" ,curl) ("curl" ,curl)
("cryptsetup" ,cryptsetup) ("cryptsetup" ,cryptsetup)
("expat" ,expat) ("expat" ,expat)

View File

@ -30,7 +30,7 @@
(define-public syncthing (define-public syncthing
(package (package
(name "syncthing") (name "syncthing")
(version "0.14.52") (version "0.14.54")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/syncthing/syncthing" (uri (string-append "https://github.com/syncthing/syncthing"
@ -38,12 +38,19 @@
"/syncthing-source-v" version ".tar.gz")) "/syncthing-source-v" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1hhn72l74vb9l32i1a54ry2l85ji78cq6isd20lxxdk0bjqc4m29")) "1pfjckwsrhy8lbmy42fawgh1gcfmjbh3dfxx05w5yjxnpd1g2z6r"))
(modules '((guix build utils))) ;; Since the update to Go 1.11, Go programs have been keeping
;; Delete bundled ("vendored") free software source code. ;; spurious references to all their dependencies:
(snippet '(begin ;; <https://bugs.gnu.org/33620>.
(delete-file-recursively "vendor") ;; For Syncthing, this increases the size of the 'out' closure
#t)))) ;; from 87.6 MiB to 253.5 MiB. So, we use the bundled
;; dependencies until the bug is resolved.
; (modules '((guix build utils)))
; ;; Delete bundled ("vendored") free software source code.
; (snippet '(begin
; (delete-file-recursively "vendor")
; #t))
))
(build-system go-build-system) (build-system go-build-system)
;; The primary Syncthing executable goes to "out", while the auxiliary ;; The primary Syncthing executable goes to "out", while the auxiliary
;; server programs and utility tools go to "utils". This reduces the size ;; server programs and utility tools go to "utils". This reduces the size
@ -63,7 +70,7 @@
#t)) #t))
(replace 'build (replace 'build
(lambda* (#:key inputs #:allow-other-keys) (lambda _
(with-directory-excursion "src/github.com/syncthing/syncthing" (with-directory-excursion "src/github.com/syncthing/syncthing"
(invoke "go" "run" "build.go" "-no-upgrade")))) (invoke "go" "run" "build.go" "-no-upgrade"))))
@ -107,48 +114,6 @@
(delete-file (string-append out man "/man1/strelaysrv.1")) (delete-file (string-append out man "/man1/strelaysrv.1"))
(delete-file (string-append utils man "/man1/syncthing.1")) (delete-file (string-append utils man "/man1/syncthing.1"))
#t)))))) #t))))))
;; When updating Syncthing, check 'vendor/manifest' in the source
;; distribution to ensure we are using the correct versions of these
;; dependencies.
(inputs
`(("go-github-com-audriusbutkevicius-cli"
,go-github-com-audriusbutkevicius-cli)
("go-github-com-audriusbutkevicius-go-nat-pmp"
,go-github-com-audriusbutkevicius-go-nat-pmp)
("go-github-com-audriusbutkevicius-pfilter"
,go-github-com-audriusbutkevicius-pfilter)
("go-github-com-bkaradzic-go-lz4" ,go-github-com-bkaradzic-go-lz4)
("go-github-com-calmh-du" ,go-github-com-calmh-du)
("go-github-com-calmh-xdr" ,go-github-com-calmh-xdr)
("go-github-com-prometheus-union" ,(go-github-com-prometheus-union))
("go-github-com-chmduquesne-rollinghash-adler32"
,go-github-com-chmduquesne-rollinghash-adler32)
("go-github-com-gobwas-glob" ,go-github-com-gobwas-glob)
("go-github-com-gogo-protobuf-union"
,(go-github-com-gogo-protobuf-union))
("go-github-com-golang-groupcache-lru"
,go-github-com-golang-groupcache-lru)
("go-github-com-jackpal-gateway" ,go-github-com-jackpal-gateway)
("go-github-com-kballard-go-shellquote"
,go-github-com-kballard-go-shellquote)
("go-github-com-lib-pq" ,go-github-com-lib-pq)
("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)
("go-github-com-oschwald-geoip2-golang"
,go-github-com-oschwald-geoip2-golang)
("go-github-com-pkg-errors" ,go-github-com-pkg-errors)
("go-github-com-rcrowley-go-metrics" ,go-github-com-rcrowley-go-metrics)
("go-github-com-sasha-s-go-deadlock" ,go-github-com-sasha-s-go-deadlock)
("go-github-com-syncthing-notify" ,go-github-com-syncthing-notify)
("go-github-com-syndtr-goleveldb" ,go-github-com-syndtr-goleveldb)
("go-github-com-thejerf-suture" ,go-github-com-thejerf-suture)
("go-github-com-vitrun-qart" ,(go-github-com-vitrun-qart-union))
("go-golang-org-x-crypto" ,(go-golang-org-x-crypto-union))
("go-golang-org-x-net-union" ,(go-golang-org-x-net-union))
("go-golang-org-x-text" ,(go-golang-org-x-text-union))
("go-golang-org-x-time-rate" ,go-golang-org-x-time-rate)
("go-gopkg.in-ldap.v2" ,go-gopkg.in-ldap.v2)
;; For tests
("go-github-com-d4l3k-messagediff" ,go-github-com-d4l3k-messagediff)))
(synopsis "Decentralized continuous file system synchronization") (synopsis "Decentralized continuous file system synchronization")
(description "Syncthing is a peer-to-peer file synchronization tool that (description "Syncthing is a peer-to-peer file synchronization tool that
supports a wide variety of computing platforms. It uses the Block Exchange supports a wide variety of computing platforms. It uses the Block Exchange
@ -941,8 +906,8 @@ using sh's word-splitting rules.")
(license expat)))) (license expat))))
(define-public go-github-com-syncthing-notify (define-public go-github-com-syncthing-notify
(let ((commit "b76b45868a77e7800dd06cce61101af9c4274bcc") (let ((commit "116c45bb5ad48777321e4984d1320d56889b6097")
(revision "2")) (revision "3"))
(package (package
(name "go-github-com-syncthing-notify") (name "go-github-com-syncthing-notify")
(version (git-version "0.0.0" revision commit)) (version (git-version "0.0.0" revision commit))
@ -954,7 +919,7 @@ using sh's word-splitting rules.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1xxkzaxygxxr51i2kdxsdaqb5i95hqpkw4kcr75wmsp914slw2q9")))) "14bh95pkhwmnc65bnv08p3y4flj1j7f6xxr2cgmlwrphnlp9yhl9"))))
(build-system go-build-system) (build-system go-build-system)
(arguments (arguments
'(#:import-path "github.com/syncthing/notify")) '(#:import-path "github.com/syncthing/notify"))
@ -1188,11 +1153,11 @@ server tools for Prometheus metrics.")
(license asl2.0)))) (license asl2.0))))
(define-public go-github-com-client-golang-prometheus (define-public go-github-com-client-golang-prometheus
(let ((commit "180b8fdc22b4ea7750bcb43c925277654a1ea2f3") (let ((commit "7e9098b20fb8e103a7a5691878272d7e3d703663")
(revision "0")) (revision "0"))
(package (package
(name "go-github-com-prometheus-client-golang-prometheus") (name "go-github-com-prometheus-client-golang-prometheus")
(version (git-version "0.0.0" revision commit)) (version (git-version "0.9.1" revision commit))
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -1201,11 +1166,12 @@ server tools for Prometheus metrics.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1kkfx1j9ka18ydsmdi2cdy3hs39c22b39mbc4laykmj2x93lmbdp")))) "09q8hlvgyn58hn8fmmj535hrwhqc1215czwzf7fhaqpa9zamj4w1"))))
(build-system go-build-system) (build-system go-build-system)
(arguments (arguments
'(#:import-path "github.com/prometheus/client_golang/prometheus" '(#:import-path "github.com/prometheus/client_golang/prometheus"
#:unpack-path "github.com/prometheus/client_golang")) #:unpack-path "github.com/prometheus/client_golang"
#:tests? #f)) ; 'TestHandler' test fails in this non-critical dependency
(propagated-inputs (propagated-inputs
`(("go-github-com-beorn7-perks-quantile" `(("go-github-com-beorn7-perks-quantile"
,go-github-com-beorn7-perks-quantile) ,go-github-com-beorn7-perks-quantile)

View File

@ -826,7 +826,7 @@ then ported to the GNU / Linux environment.")
(define-public mbedtls-apache (define-public mbedtls-apache
(package (package
(name "mbedtls-apache") (name "mbedtls-apache")
(version "2.14.0") (version "2.14.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -836,7 +836,7 @@ then ported to the GNU / Linux environment.")
version "-apache.tgz")) version "-apache.tgz"))
(sha256 (sha256
(base32 (base32
"0bf8mf8w5dyikbwpckcxgdi0l086adk7pailqds10bkzrcg59y42")))) "07f6xn77w5rd6fhq5s1dmna3czs4chk5j2s6wkj366cvikawp2gi"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags

View File

@ -100,6 +100,8 @@
(method url-fetch) (method url-fetch)
(uri (string-append "https://download.qemu.org/qemu-" (uri (string-append "https://download.qemu.org/qemu-"
version ".tar.xz")) version ".tar.xz"))
(patches (search-patches "qemu-CVE-2018-16847.patch"
"qemu-CVE-2018-16867.patch"))
(sha256 (sha256
(base32 (base32
"04sp3f1gp4bdb913jf7fw761njaqp2l32wgipp1sapmxx17zcyld")))) "04sp3f1gp4bdb913jf7fw761njaqp2l32wgipp1sapmxx17zcyld"))))

View File

@ -364,19 +364,18 @@ driven and does not detract you from your daily work.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public next-gtk-webkit (define-public next-gtk-webkit
(let ((commit "b8899341bbdefd0a33412608fbb0b1f92f818c65"))
(package (package
(name "next-gtk-webkit") (name "next-gtk-webkit")
(version (git-version "1.0.0" "1" commit)) (version "1.1.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
(url "https://source.atlas.engineer/public/next") (url "https://source.atlas.engineer/public/next")
(commit commit))) (commit version)))
(sha256 (sha256
(base32 (base32
"12jmf1b9qr85il9h15mb9vpsfh1wzcln9x9xpn4lps0kkccnpkz9")) "00xi01r6gxlrv7xc2dhf4da30y0vng1snbdmc8d829qyn0chl55q"))
(file-name (git-file-name "next" version)))) (file-name (git-file-name "next" version))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
@ -402,7 +401,7 @@ driven and does not detract you from your daily work.")
inspired by Emacs and designed for power users. The application has familiar inspired by Emacs and designed for power users. The application has familiar
key-bindings, is fully configurable and extensible in Lisp, and has powerful key-bindings, is fully configurable and extensible in Lisp, and has powerful
features for productive professionals.") features for productive professionals.")
(license license:bsd-3)))) (license license:bsd-3)))
(define-public sbcl-next (define-public sbcl-next
(package (package
@ -428,8 +427,6 @@ features for productive professionals.")
(define expected-fasl (string-append (define expected-fasl (string-append
lib lib
"/lib/sbcl/next--system.fasl")) "/lib/sbcl/next--system.fasl"))
(pk actual-fasl)
(pk expected-fasl)
(copy-file actual-fasl expected-fasl) (copy-file actual-fasl expected-fasl)
#t)) #t))
(add-after 'create-symlinks 'build-program (add-after 'create-symlinks 'build-program
@ -445,6 +442,9 @@ features for productive professionals.")
;; the illegal version will result in NIL in the .desktop ;; the illegal version will result in NIL in the .desktop
;; file. ;; file.
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(with-output-to-file "version"
(lambda _
(format #t "~a" ,(package-version next-gtk-webkit))))
(invoke "make" "install-assets" (invoke "make" "install-assets"
(string-append "PREFIX=" (string-append "PREFIX="
(assoc-ref outputs "out")))))))) (assoc-ref outputs "out"))))))))
@ -456,14 +456,12 @@ features for productive professionals.")
("cl-strings" ,sbcl-cl-strings) ("cl-strings" ,sbcl-cl-strings)
("cl-string-match" ,sbcl-cl-string-match) ("cl-string-match" ,sbcl-cl-string-match)
("puri" ,sbcl-puri) ("puri" ,sbcl-puri)
("queues.simple-queue" ,sbcl-queues.simple-queue)
("sqlite" ,sbcl-cl-sqlite) ("sqlite" ,sbcl-cl-sqlite)
("parenscript" ,sbcl-parenscript) ("parenscript" ,sbcl-parenscript)
("cl-json" ,sbcl-cl-json) ("cl-json" ,sbcl-cl-json)
("swank" ,sbcl-slime-swank) ("swank" ,sbcl-slime-swank)
("cl-markup" ,sbcl-cl-markup) ("cl-markup" ,sbcl-cl-markup)
("cl-css" ,sbcl-cl-css) ("cl-css" ,sbcl-cl-css)
("usocket" ,sbcl-usocket)
("bordeaux-threads" ,sbcl-bordeaux-threads) ("bordeaux-threads" ,sbcl-bordeaux-threads)
("s-xml-rpc" ,sbcl-s-xml-rpc) ("s-xml-rpc" ,sbcl-s-xml-rpc)
("unix-opts" ,sbcl-unix-opts))) ("unix-opts" ,sbcl-unix-opts)))

View File

@ -196,14 +196,14 @@ Interface} specification.")
(name "nginx") (name "nginx")
;; Consider updating the nginx-documentation package if the nginx package is ;; Consider updating the nginx-documentation package if the nginx package is
;; updated. ;; updated.
(version "1.14.1") (version "1.14.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://nginx.org/download/nginx-" (uri (string-append "https://nginx.org/download/nginx-"
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"19542jxcjf4dvrqvgb5vr36mhbzcjrxc3v0xh451rm60610rf2dz")))) "15wppq12qmq8acjs35xfj61czhf9cdc0drnl5mm8hcg3aihryb80"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs `(("openssl" ,openssl) (inputs `(("openssl" ,openssl)
("pcre" ,pcre) ("pcre" ,pcre)
@ -1281,12 +1281,14 @@ minimum to provide high performance operation.")
#:tests? #f #:tests? #f
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(delete 'bootstrap)
(delete 'configure) (delete 'configure)
(add-after 'unpack 'unpack-libsass-and-set-path (add-after 'unpack 'unpack-libsass-and-set-path
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(invoke "tar" "xvf" (assoc-ref inputs "libsass")) (invoke "tar" "xvf" (assoc-ref inputs "libsass"))
(setenv "SASS_LIBSASS_PATH" (setenv "SASS_LIBSASS_PATH"
(string-append (getcwd) "/libsass-" ,version))))))) (string-append (getcwd) "/libsass-" ,version))
#t)))))
(inputs (inputs
`(("libsass" ,libsass))) `(("libsass" ,libsass)))
(synopsis "CSS pre-processor") (synopsis "CSS pre-processor")

View File

@ -39,6 +39,7 @@
(define-module (gnu packages xml) (define-module (gnu packages xml)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages check)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
#:use-module (gnu packages curl) #:use-module (gnu packages curl)
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
@ -2152,3 +2153,24 @@ It converts the procedure call into an XML document, sends it to a remote
server using HTTP, and gets back the response as XML. This library provides a server using HTTP, and gets back the response as XML. This library provides a
modular implementation of XML-RPC for C and C++.") modular implementation of XML-RPC for C and C++.")
(license (list license:psfl license:expat)))) (license (list license:psfl license:expat))))
(define-public python-xmltodict
(package
(name "python-xmltodict")
(version "0.11.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "xmltodict" version))
(sha256
(base32
"1pxh4yjhvmxi1h6f92skv41g4kbsws3ams57150kzn18m907v3cg"))))
(build-system python-build-system)
(native-inputs
`(("python-coverage" ,python-coverage)
("python-nose" ,python-nose)))
(home-page "https://github.com/martinblech/xmltodict")
(synopsis "Work with XML like you are working with JSON")
(description "This package provides a Python library to convert XML to
@code{OrderedDict}.")
(license license:expat)))

View File

@ -1499,26 +1499,27 @@ starting at FIRST-UID, and under GID."
1+ 1+
1)) 1))
(define (hydra-key-authorization key guix) (define (hydra-key-authorization keys guix)
"Return a gexp with code to register KEY, a file containing a 'guix archive' "Return a gexp with code to register KEYS, a list of files containing 'guix
public key, with GUIX." archive' public keys, with GUIX."
#~(unless (file-exists? "/etc/guix/acl") #~(unless (file-exists? "/etc/guix/acl")
(for-each (lambda (key)
(let ((pid (primitive-fork))) (let ((pid (primitive-fork)))
(case pid (case pid
((0) ((0)
(let* ((key #$key) (let* ((port (open-file key "r0b")))
(port (open-file key "r0b")))
(format #t "registering public key '~a'...~%" key) (format #t "registering public key '~a'...~%" key)
(close-port (current-input-port)) (close-port (current-input-port))
(dup port 0) (dup port 0)
(execl #$(file-append guix "/bin/guix") (execl #$(file-append guix "/bin/guix")
"guix" "archive" "--authorize") "guix" "archive" "--authorize")
(exit 1))) (primitive-exit 1)))
(else (else
(let ((status (cdr (waitpid pid)))) (let ((status (cdr (waitpid pid))))
(unless (zero? status) (unless (zero? status)
(format (current-error-port) "warning: \ (format (current-error-port) "warning: \
failed to register hydra.gnu.org public key: ~a~%" status)))))))) failed to register public key '~a': ~a~%" key status)))))))
'(#$@keys))))
(define %default-authorized-guix-keys (define %default-authorized-guix-keys
;; List of authorized substitute keys. ;; List of authorized substitute keys.
@ -1630,10 +1631,9 @@ failed to register hydra.gnu.org public key: ~a~%" status))))))))
;; otherwise call 'chown' here, but the problem is that on a COW overlayfs, ;; otherwise call 'chown' here, but the problem is that on a COW overlayfs,
;; chown leads to an entire copy of the tree, which is a bad idea. ;; chown leads to an entire copy of the tree, which is a bad idea.
;; Optionally authorize hydra.gnu.org's key. ;; Optionally authorize substitute server keys.
(if authorize-key? (if authorize-key?
#~(begin (hydra-key-authorization keys guix)
#$@(map (cut hydra-key-authorization <> guix) keys))
#~#f)))) #~#f))))
(define* (references-file item #:optional (name "references")) (define* (references-file item #:optional (name "references"))

View File

@ -684,7 +684,8 @@
(string-delete #\? (symbol->string field-name))) (string-delete #\? (symbol->string field-name)))
(define (serialize-field field-name val) (define (serialize-field field-name val)
(format #t "~a=~a\n" (uglify-field-name field-name) val)) (when (not (member field-name '(group secret-file user)))
(format #t "~a=~a\n" (uglify-field-name field-name) val)))
(define (serialize-boolean field-name val) (define (serialize-boolean field-name val)
(serialize-field field-name (if val "yes" "no"))) (serialize-field field-name (if val "yes" "no")))

View File

@ -250,7 +250,7 @@ You have been warned. Thanks for being so brave.\x1b[0m
;; The usual services. ;; The usual services.
(syslog-service) (syslog-service)
;; The build daemon. Register the hydra.gnu.org key as trusted. ;; The build daemon. Register the official server keys as trusted.
;; This allows the installation process to use substitutes by ;; This allows the installation process to use substitutes by
;; default. ;; default.
(guix-service (guix-configuration (authorize-key? #t))) (guix-service (guix-configuration (authorize-key? #t)))

View File

@ -50,7 +50,7 @@
;; Log in as root on tty1, and check what 'loginctl' returns. ;; Log in as root on tty1, and check what 'loginctl' returns.
(test-equal "login on tty1" (test-equal "login on tty1"
'(("c1" "0" "root" "seat0" "/dev/tty1") ;session '(("c1" "0" "root" "seat0" "tty1") ;session
("seat0") ;seat ("seat0") ;seat
("0" "root")) ;user ("0" "root")) ;user

View File

@ -149,7 +149,7 @@ export GUIX_BUILD_OPTIONS=--no-grafts
guix build isc-dhcp guix build isc-dhcp
parted --script /dev/vdb mklabel gpt \\ parted --script /dev/vdb mklabel gpt \\
mkpart primary ext2 1M 3M \\ mkpart primary ext2 1M 3M \\
mkpart primary ext2 3M 1G \\ mkpart primary ext2 3M 1.2G \\
set 1 boot on \\ set 1 boot on \\
set 1 bios_grub on set 1 bios_grub on
mkfs.ext4 -L my-root /dev/vdb2 mkfs.ext4 -L my-root /dev/vdb2
@ -174,7 +174,7 @@ guix --version
export GUIX_BUILD_OPTIONS=--no-grafts export GUIX_BUILD_OPTIONS=--no-grafts
guix build isc-dhcp guix build isc-dhcp
parted --script /dev/vdb mklabel gpt \\ parted --script /dev/vdb mklabel gpt \\
mkpart ext2 1M 1G \\ mkpart ext2 1M 1.2G \\
set 1 legacy_boot on set 1 legacy_boot on
mkfs.ext4 -L my-root -O '^64bit' /dev/vdb1 mkfs.ext4 -L my-root -O '^64bit' /dev/vdb1
mount /dev/vdb1 /mnt mount /dev/vdb1 /mnt
@ -377,7 +377,7 @@ export GUIX_BUILD_OPTIONS=--no-grafts
guix build isc-dhcp guix build isc-dhcp
parted --script /dev/vda mklabel gpt \\ parted --script /dev/vda mklabel gpt \\
mkpart primary ext2 1M 3M \\ mkpart primary ext2 1M 3M \\
mkpart primary ext2 3M 1G \\ mkpart primary ext2 3M 1.2G \\
set 1 boot on \\ set 1 boot on \\
set 1 bios_grub on set 1 bios_grub on
mkfs.ext4 -L my-root /dev/vda2 mkfs.ext4 -L my-root /dev/vda2
@ -510,7 +510,7 @@ guix build isc-dhcp
parted --script /dev/vdb mklabel gpt \\ parted --script /dev/vdb mklabel gpt \\
mkpart primary ext2 1M 3M \\ mkpart primary ext2 1M 3M \\
mkpart primary ext2 3M 100M \\ mkpart primary ext2 3M 100M \\
mkpart primary ext2 100M 1G \\ mkpart primary ext2 100M 1.2G \\
set 1 boot on \\ set 1 boot on \\
set 1 bios_grub on set 1 bios_grub on
mkfs.ext4 -L root-fs /dev/vdb2 mkfs.ext4 -L root-fs /dev/vdb2
@ -676,7 +676,7 @@ export GUIX_BUILD_OPTIONS=--no-grafts
ls -l /run/current-system/gc-roots ls -l /run/current-system/gc-roots
parted --script /dev/vdb mklabel gpt \\ parted --script /dev/vdb mklabel gpt \\
mkpart primary ext2 1M 3M \\ mkpart primary ext2 1M 3M \\
mkpart primary ext2 3M 1G \\ mkpart primary ext2 3M 1.2G \\
set 1 boot on \\ set 1 boot on \\
set 1 bios_grub on set 1 bios_grub on
echo -n thepassphrase | \\ echo -n thepassphrase | \\

View File

@ -144,7 +144,12 @@ are not recursively applied to dependencies of DRV."
,@(append (map add-label sources) ,@(append (map add-label sources)
(map add-label targets))) (map add-label targets)))
#:outputs outputs #:outputs outputs
;; Grafts are computationally cheap so no
;; need to offload or substitute.
#:local-build? #t #:local-build? #t
#:substitutable? #f
#:properties properties))))) #:properties properties)))))
(define (item->deriver store item) (define (item->deriver store item)
"Return two values: the derivation that led to ITEM (a store item), and the "Return two values: the derivation that led to ITEM (a store item), and the

View File

@ -65,7 +65,7 @@
(define %default-log-urls (define %default-log-urls
;; Default base URLs for build logs. ;; Default base URLs for build logs.
'("http://hydra.gnu.org/log")) '("http://ci.guix.info/log"))
;; XXX: The following procedure cannot be in (guix store) because of the ;; XXX: The following procedure cannot be in (guix store) because of the
;; dependency on (guix derivations). ;; dependency on (guix derivations).

View File

@ -89,7 +89,7 @@ Display information about the channels currently in use.\n"))
(define (channel->sexp channel) (define (channel->sexp channel)
`(channel `(channel
(name ,(channel-name channel)) (name ',(channel-name channel))
(url ,(channel-url channel)) (url ,(channel-url channel))
(commit ,(channel-commit channel)))) (commit ,(channel-commit channel))))

View File

@ -278,7 +278,12 @@ the latest known version of ~a (~a)~%")
(define (all-packages) (define (all-packages)
"Return the list of all the distro's packages." "Return the list of all the distro's packages."
(fold-packages cons '() (fold-packages (lambda (package result)
;; Ignore deprecated packages.
(if (package-superseded package)
result
(cons package result)))
'()
#:select? (const #t))) ;include hidden packages #:select? (const #t))) ;include hidden packages
(define (list-dependents packages) (define (list-dependents packages)

View File

@ -297,7 +297,7 @@ Report the size of PACKAGE and its dependencies.\n"))
(leave (G_ "missing store item argument\n"))) (leave (G_ "missing store item argument\n")))
((files ..1) ((files ..1)
(leave-on-EPIPE (leave-on-EPIPE
;; Turn off grafts because (1) hydra.gnu.org does not serve grafted ;; Turn off grafts because (1) substitute servers do not serve grafted
;; packages, and (2) they do not make any difference on the ;; packages, and (2) they do not make any difference on the
;; resulting size. ;; resulting size.
(parameterize ((%graft? #f)) (parameterize ((%graft? #f))

View File

@ -1052,7 +1052,7 @@ found."
(#f (#f
;; This can only happen when this script is not invoked by the ;; This can only happen when this script is not invoked by the
;; daemon. ;; daemon.
'("http://hydra.gnu.org")))) '("http://ci.guix.info"))))
(define substitute-urls (define substitute-urls
;; List of substitute URLs. ;; List of substitute URLs.

View File

@ -497,9 +497,10 @@ STORE is an open connection to the store."
(old-entries (map boot-parameters->menu-entry old-params))) (old-entries (map boot-parameters->menu-entry old-params)))
(run-with-store store (run-with-store store
(mlet* %store-monad (mlet* %store-monad
((bootcfg ((bootloader-configuration-file-generator bootloader) ((bootcfg (lower-object
((bootloader-configuration-file-generator bootloader)
bootloader-config entries bootloader-config entries
#:old-entries old-entries)) #:old-entries old-entries)))
(bootcfg-file -> (bootloader-configuration-file bootloader)) (bootcfg-file -> (bootloader-configuration-file bootloader))
(target -> "/") (target -> "/")
(drvs -> (list bootcfg))) (drvs -> (list bootcfg)))

View File

@ -428,6 +428,9 @@ load path."
,(file-append* source ,(file-append* source
"/etc/substitutes/hydra.gnu.org.pub")) "/etc/substitutes/hydra.gnu.org.pub"))
("share/guix/berlin.guixsd.org.pub" ("share/guix/berlin.guixsd.org.pub"
,(file-append* source
"/etc/substitutes/berlin.guixsd.org.pub"))
("share/guix/ci.guix.info.pub" ;alias
,(file-append* source "/etc/substitutes/berlin.guixsd.org.pub"))))) ,(file-append* source "/etc/substitutes/berlin.guixsd.org.pub")))))
(define* (whole-package name modules dependencies (define* (whole-package name modules dependencies

View File

@ -693,7 +693,7 @@ encoding conversion errors."
(map (if (false-if-exception (resolve-interface '(gnutls))) (map (if (false-if-exception (resolve-interface '(gnutls)))
(cut string-append "https://" <>) (cut string-append "https://" <>)
(cut string-append "http://" <>)) (cut string-append "http://" <>))
'("mirror.hydra.gnu.org"))) '("ci.guix.info")))
(define* (set-build-options server (define* (set-build-options server
#:key keep-failed? keep-going? fallback? #:key keep-failed? keep-going? fallback?

View File

@ -18,7 +18,7 @@ msgstr ""
"Project-Id-Version: guix 0.16.0\n" "Project-Id-Version: guix 0.16.0\n"
"Report-Msgid-Bugs-To: ludo@gnu.org\n" "Report-Msgid-Bugs-To: ludo@gnu.org\n"
"POT-Creation-Date: 2018-11-28 15:05+0100\n" "POT-Creation-Date: 2018-11-28 15:05+0100\n"
"PO-Revision-Date: 2018-11-30 23:11+0100\n" "PO-Revision-Date: 2018-12-03 19:23+0100\n"
"Last-Translator: Julien Lepiller <julien@lepiller.eu>\n" "Last-Translator: Julien Lepiller <julien@lepiller.eu>\n"
"Language-Team: French <traduc@traduc.org>\n" "Language-Team: French <traduc@traduc.org>\n"
"Language: fr\n" "Language: fr\n"
@ -3767,7 +3767,7 @@ msgstr[1] "application de ~a greffes pour ~a..."
#: guix/status.scm:340 #: guix/status.scm:340
#, scheme-format #, scheme-format
msgid "building ~a..." msgid "building ~a..."
msgstr "Construction de « ~a »...~%" msgstr "construction de ~a..."
#: guix/status.scm:344 #: guix/status.scm:344
#, scheme-format #, scheme-format