Eelco Dolstra
cb9601029e
daemon: Use deterministic $TMPDIR in chroot.
...
Rather than using $<host-TMPDIR>/nix-build-<drvname>-<number>, the
temporary directory is now always /tmp/nix-build-<drvname>-0. This
improves bitwise-exact reproducibility for builds that store $TMPDIR
in their build output. (Of course, those should still be fixed...)
* nix/libstore/build.cc (DerivationGoal)[tmpDirInSandbox]: New field.
(DerivationGoal::startBuilder): Initialize 'useChroot' earlier. Compute
'tmpDirInSandbox', and use it when populating 'dirsInChroot'.
* doc/guix.texi (Build Environment Setup): Document it.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2015-12-09 14:29:41 +01:00
Ludovic Courtès
a8d65643fb
guix build: Add '--check'.
...
* guix/derivations.scm (build-derivations): Add optional 'mode'
parameter.
* guix/scripts/build.scm (%default-options): Add 'build-mode'.
(show-help, %options): Add '--check'.
(guix-build): Honor 'build-mode' key of OPTS. Pass it to
'show-what-to-build' and 'build-derivations'.
* doc/guix.texi (Invoking guix build): Document it.
(Substitutes): Mention it.
2015-12-09 14:29:41 +01:00
Ludovic Courtès
58c08df054
derivations: Determine what's built in 'check' mode.
...
* guix/derivations.scm (substitution-oracle): Add #:mode parameter and
honor it.
(derivation-prerequisites-to-build): Likewise.
[derivation-built?]: Take it into account.
* guix/ui.scm (show-what-to-build): Add #:mode parameter. Pass it to
'substitute-oracle' and 'derivations-prerequisites-to-build'.
* tests/derivations.scm ("derivation-prerequisites-to-build in 'check'
mode"): New test.
2015-12-09 14:29:41 +01:00
Efraim Flashner
cc9553562c
gnu: gmime: Update to 2.6.20.
...
* gnu/packages/mail.scm (gmime): Update to 2.6.20.
[arguments]: Use modify-phases syntax.
2015-12-09 15:21:34 +02:00
Ludovic Courtès
8d5e7ad29a
gnu: guile-sly: Use HTTPS URL.
...
* gnu/packages/guile.scm (guile-sly)[source]: Use 'https'. Failing to
do that, we get redirected to 'https', which fails because GnuTLS is
missing.
2015-12-08 23:58:12 +01:00
Ludovic Courtès
5b74fe065b
guix build: Add '--rounds'.
...
* guix/scripts/build.scm (show-build-options-help)
(%standard-build-options): Add --rounds.
(set-build-options-from-command-line): Honor it.
* doc/guix.texi (Invoking guix build): Document it.
* doc/contributing.texi (Submitting Patches): Mention it.
2015-12-08 23:58:12 +01:00
Ludovic Courtès
2fba87ac7c
store: Allow clients to request multiple builds.
...
* guix/store.scm (set-build-options): Add #:rounds parameter and honor it.
* tests/store.scm ("build multiple times"): New test.
2015-12-08 23:58:12 +01:00
Eelco Dolstra
b23b4d394a
daemon: Allow builds to be repeated.
...
This makes it easy to detect non-deterministic builds.
* nix/libstore/build.cc (DerivationGoal): Remove 'InodesSeen'; add
'curRound', 'nrRound', and 'prevInfos'.
(DerivationGoal::inputsRealised): Initialize 'nrRound'.
(NotDeterministic): New error type.
(DerivationGoal::buildDone): Check whether we need to repeat.
(DerivationGoal::startBuilder): Adjust message.
(DerivationGoal::registerOutputs): Check whether we get the same result.
* nix/libstore/globals.cc (Settings::get(const string & name, int def)):
New method.
* nix/libstore/globals.hh (Settings): Add it.
* nix/libstore/store-api.hh (ValidPathInfo): Add operator ==.
* nix/nix-daemon/nix-daemon.cc (performOp): Allow "build-repeat" for
"untrusted" users.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2015-12-08 23:58:12 +01:00
Andreas Enge
7fbee931a5
gnu: python-pillow: Update to 3.0.0.
...
* gnu/packages/python.scm (python-pillow, python2-pillow): Update to 3.0.0.
2015-12-08 23:16:37 +01:00
Andreas Enge
b00150641a
gnu: numactl: Update to 2.0.10.
...
* gnu/packages/linux.scm (numactl)[source]: Update to 2.0.10.
[arguments]: Adapt phases to use the autotools machinery.
[native-inputs]: Add autotools packages.
2015-12-08 23:09:59 +01:00
Ludovic Courtès
c499125704
gnu-maintenance: Exclude development releases from GNOME update candidates.
...
Suggested by Efraim Flashner <efraim@flashner.co.il>.
* guix/gnu-maintenance.scm (latest-ftp-release): Add #:keep-file?
parameter and honor it.
(latest-gnome-release)[%not-dot]: New variable.
[even-minor-version?, even-numbered-tarball?]: New procedures.
Pass EVEN-NUMBERED-TARBALL? as #:keep-file? argument.
2015-12-08 16:09:33 +01:00
Efraim Flashner
f714d9fe04
gnu: glade3: Update to 3.8.5.
...
* gnu/packages/gnome.scm (glade3): Update to 3.8.5.
2015-12-08 15:05:25 +02:00
Efraim Flashner
20a1a4c322
gnu: autogen: Update to 5.18.7.
...
* gnu/packages/autogen.scm (autogen): Update to 5.18.7.
2015-12-08 14:30:29 +02:00
Ludovic Courtès
6efa6f7645
gnu-maintenance: ftp.gnome.org does not provide signatures.
...
* guix/gnu-maintenance.scm (latest-ftp-release): Add #:file->signature
parameter. Honor it.
(latest-gnome-release): Pass #:file->signature.
* guix/upstream.scm (coalesce-sources): Keep 'signature-urls' as #f
unless both sources provide it.
2015-12-07 23:57:20 +01:00
Ludovic Courtès
e80c0f85ba
gnu-maintenance: Add GNOME updater.
...
* guix/gnu-maintenance.scm (ftp-server/directory)[quirks]: Remove glib.
(false-if-ftp-error): New macro.
(latest-release*): Use it.
(non-emacs-gnu-package?): Rename to...
(pure-gnu-package?): ... this. Add call to 'gnome-package?'.
(%gnu-updater): Adjust accordingly.
(gnome-package?, latest-gnome-release): New procedures.
(%gnome-updater): New variable.
* guix/scripts/refresh.scm (%updaters): Add %GNOME-UPDATER.
* doc/guix.texi (Invoking guix refresh): Mention it.
2015-12-07 23:32:01 +01:00
Ludovic Courtès
e946f2ec92
gnu-maintenance: Generalize 'latest-ftp-release'.
...
* guix/gnu-maintenance.scm (latest-release): Rename to...
(latest-ftp-release): ... this. Add #:server and #:directory
parameters.
(latest-release): New procedure.
2015-12-07 23:32:01 +01:00
Ludovic Courtès
fba607b129
refresh: Bail out when asked for a nonexistent updater.
...
* guix/scripts/refresh.scm (lookup-updater): Call 'leave' when 'find'
returns #f.
2015-12-07 23:32:01 +01:00
Ludovic Courtès
e3cc793e7c
gnu-maintenance: Do not look for releases in "w32" sub-directories.
...
* guix/gnu-maintenance.scm (latest-release): Filter out "w32"
directories.
2015-12-07 23:32:01 +01:00
Ludovic Courtès
202440e07a
gnu-maintenance: Add tests for 'release-file?'.
...
* tests/gnu-maintenance.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
* guix/gnu-maintenance.scm (release-file?): Export.
2015-12-07 23:32:01 +01:00
Ludovic Courtès
fa04a04f18
gnu-maintenance: Properly handle TeXmacs.
...
* guix/gnu-maintenance.scm (ftp-server/directory): Add comment.
(release-file?): Use 'string-ci=?' instead of 'equal?' when comparing
project names.
2015-12-07 23:32:01 +01:00
Ludovic Courtès
f00dccf441
gnu-maintenance: Adjust tarball regexp for IceCat tarballs.
...
* guix/gnu-maintenance.scm (%tarball-rx): Tweak to match IceCat tarball
patterns.
2015-12-07 23:32:01 +01:00
Ludovic Courtès
b6124f00b8
gnu-maintenance: Fix URLs returned by 'latest-release' for deep trees.
...
With this, (latest-release "gcc") returns an <upstream-source> with URL:
ftp://ftp.gnu.org/gnu/gcc/gcc-5.3.0/gcc-5.3.0.tar.gz
Previous it would omit "gcc-5.3.0/" from the URL.
Fixes a regression introduced in 0a7c5a0.
* guix/gnu-maintenance.scm (latest-release)[file->url, file->source]:
Add 'directory' parameter. Update users.
2015-12-07 23:32:01 +01:00
Ludovic Courtès
56b6befb50
doc: 'guix environment --container' does not create '/env'.
...
* doc/guix.texi (Invoking guix environment): Remove outdated mention of
'/env' for '--container'.
2015-12-07 23:32:01 +01:00
David Thompson
1eca745b44
gnu: node: Do not use bundled dependencies.
...
The Node build system was previously building its own copies of
OpenSSL (yikes!), libuv, and zlib.
* gnu/packages/node.scm (node)[inputs]: Add openssl, libuv, and zlib.
[arguments]: Add configure flags for using system libraries. Use
'modify-phases' syntax.
2015-12-07 17:05:34 -05:00
Leo Famulari
437d728632
gnu: util-linux: Make description more descriptive.
...
* gnu/packages/linux.scm (util-linux)[description]: Give some more
information about the package.
Signed-off-by: Andreas Enge <andreas@enge.fr>
2015-12-07 21:11:21 +01:00
Mark H Weaver
dae36ca558
gnu: pcre: Update to 8.38.
...
* gnu/packages/pcre.scm (pcre): Update to 8.38. Add source URI for
main FTP site.
2015-12-07 09:54:01 -05:00
Mark H Weaver
821060f3f6
gnu: libxml2: Update to 2.9.3.
...
* gnu/packages/patches/libxml2-CVE-2015-1819.patch,
gnu/packages/patches/libxml2-CVE-2015-7941-pt1.patch,
gnu/packages/patches/libxml2-CVE-2015-7941-pt2.patch,
gnu/packages/patches/libxml2-CVE-2015-7942-pt1.patch,
gnu/packages/patches/libxml2-CVE-2015-7942-pt2.patch,
gnu/packages/patches/libxml2-CVE-2015-8035.patch,
gnu/packages/patches/libxml2-bug-737840.patch,
gnu/packages/patches/libxml2-bug-738805.patch,
gnu/packages/patches/libxml2-bug-746048.patch,
gnu/packages/patches/libxml2-bug-747437.patch,
gnu/packages/patches/libxml2-bug-751603.patch,
gnu/packages/patches/libxml2-bug-751631.patch,
gnu/packages/patches/libxml2-bug-754946.patch,
gnu/packages/patches/libxml2-bug-754947.patch,
gnu/packages/patches/libxml2-bug-755857.patch,
gnu/packages/patches/libxml2-fix-catalog-corruption.patch,
gnu/packages/patches/libxml2-id-attrs-in-xmlSetTreeDoc.patch,
gnu/packages/patches/libxml2-node-sort-order-pt1.patch,
gnu/packages/patches/libxml2-node-sort-order-pt2.patch: Delete files.
* gnu-system.am (dist_patch_DATA): Remove them.
* gnu/packages/xml.scm (libxml2): Update to 2.9.3. Remove patches.
2015-12-07 09:54:01 -05:00
Mark H Weaver
86c8f1daf8
gnu: openssl: Update to 1.0.2e [fixes CVE-2015-{3193,3194,3195}].
...
* gnu/packages/tls.scm (openssl): Update to 1.0.2e.
[arguments]: Rename 'fix-man-dir' phase to 'patch-Makefile.org',
and patch SHELL in Makefile.org. Add 'fix-broken-symlinks' phase.
Return #t from 'patch-tests' phase.
2015-12-07 09:54:01 -05:00
Efraim Flashner
e5be0e01f2
gnu: keepassx: Update to 2.0.
...
* gnu/packages/password-utils.scm (keepassx): Update to 2.0.
[source]: Change to official release location.
2015-12-07 13:07:18 +02:00
Efraim Flashner
044176621e
gnu: python2-zope-security: Use python2-zope-testrunner.
...
* gnu/packages/python.scm (python2-zope-security): Do it.
2015-12-07 12:31:56 +02:00
Efraim Flashner
b847618f65
gnu: help2man: Update to 1.47.3.
...
* gnu/packages/man.scm (help2man): Update to 1.47.3.
2015-12-07 10:59:54 +02:00
Efraim Flashner
5f47e71343
gnu: libmicrohttpd: Update to 0.9.47.
...
* gnu/packages/gnunet.scm (libmicrohttpd): Update to 0.9.47.
2015-12-07 10:40:05 +02:00
Alex Vong
f8f8897f7e
gnu: mp3info: Update URL.
...
* gnu/packages/mp3.scm (mp3info): Update source URL.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2015-12-06 23:12:12 +01:00
Ludovic Courtès
91726b6a3b
nls: Add Polish translation.
2015-12-06 23:02:32 +01:00
Kyle Meyer
e92b8599f7
gnu: Add myrepos.
...
* gnu/packages/version-control.scm (myrepos): New variable.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2015-12-06 22:44:17 +01:00
Kyle Meyer
1872f1bb79
gnu: Add python-docopt.
...
* gnu/packages/python.scm (python-docopt, python2-docopt): New
variables.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2015-12-06 22:38:32 +01:00
Efraim Flashner
07ab3b8ecc
gnu: gajim: Update to 0.16.4.
...
* gnu/packages/messaging.scm (gajim): Update to 0.16.4.
2015-12-06 22:18:01 +02:00
Efraim Flashner
d1d75c6a67
gnu: pinentry: Update to 0.9.6.
...
* gnu/packages/gnupg.scm (pinentry): Update to 0.9.6.
[inputs]: Add libsecret.
2015-12-06 22:18:01 +02:00
Efraim Flashner
231dd02337
gnu: gpgme: Update to 1.6.0.
...
* gnu/packages/gnupg.scm (gpgme): Update to 1.6.0.
2015-12-06 22:18:01 +02:00
Efraim Flashner
b65249cc2b
gnu: gnupg: Update to 2.1.10.
...
* gnu/packages/gnupg.scm (gnupg): Update to 2.1.10.
[inputs]: Add adns.
2015-12-06 22:18:01 +02:00
Efraim Flashner
7b40296fc0
gnu: gnupg-2.0: Update to 2.0.29.
...
* gnu/packages/gnupg.scm (gnupg-2.0): Update to 2.0.29.
[inputs]: Add adns.
2015-12-06 22:18:01 +02:00
Efraim Flashner
b682a77669
gnu: libassuan: Update to 2.4.2.
...
* gnu/packages/gnupg.scm (libassuan): Update to 2.4.2.
2015-12-06 22:18:01 +02:00
Mathieu Lirzin
d4fe27fe2c
gnu: Move pkg-config to native inputs.
...
* gnu/packages/xiph.scm (ao)[native-inputs]: Move pkg-config from
inputs.
* gnu/packages/xorg.scm (xf86-video-geode)[native-inputs]: Likewise.
2015-12-06 17:23:26 +01:00
Mathieu Lirzin
cd08fe4259
edit: Don't assume that an emacs daemon is running.
...
* guix/scripts/edit.scm (%editor): Use Emacs as a default value.
2015-12-06 17:23:25 +01:00
Mathieu Lirzin
b16dbd1311
edit: Allow command line arguments in $VISUAL and $EDITOR.
...
* guix/scripts/edit.scm (guix-edit): Fix the assumption that %editor is
a one word command.
2015-12-06 17:23:21 +01:00
Efraim Flashner
2f52ad7413
gnu: nano: Update to 2.5.0.
...
* gnu/packages/nano.scm (nano): Update to 2.5.0.
2015-12-06 16:49:41 +02:00
Efraim Flashner
ff21fa8b63
gnu: gdb: Update to 7.10.1.
...
* gnu/packages/gdb.scm (gdb): Update to 7.10.1.
2015-12-06 15:57:33 +02:00
Alex Kost
7edf242967
gnu: manaplus: Update to 1.5.12.5.
...
* gnu/packages/games.scm (manaplus): Update to 1.5.12.5.
2015-12-06 12:46:10 +03:00
Alex Kost
f5688801b2
emacs: info: Show a message after copying button label.
...
* emacs/guix-info.el (guix-info-button-copy-label): Use
'guix-copy-as-kill' to display a message with what was killed.
2015-12-06 12:46:10 +03:00
Alex Kost
9ff175655c
emacs: Complete --profile in 'guix package' popup.
...
* emacs/guix-command.el (guix-command-improve-package-argument): Use
'guix-read-file-name' to complete --profile option.
2015-12-06 12:46:10 +03:00