Commit Graph

32641 Commits

Author SHA1 Message Date
Ludovic Courtès 1458f768c1
self: Include gnu/build/* in the result.
Previously, modules like gnu/build/cross-toolchain.scm or
gnu/build/svg.scm were missing from the result.

* guix/self.scm (compiled-guix)[*system-modules*]: Add gnu/build/* to
 #:extra-files.
(imported-files)[same-target?]: New procedure.
[build]: Call 'delete-duplicates' on FILES.
2018-06-02 00:43:49 +02:00
Ludovic Courtès 8031b3fa3c
self: 'compiled-files' builds the given list of files.
* guix/self.scm (compiled-files): Add 'module-files' parameter.
[build]: 'process-directory' now honors MODULE-FILES instead of
building any '.scm' file it sees.
(scheme-node): Adjust accordingly.
2018-06-02 00:43:49 +02:00
Ludovic Courtès e3a87d770f
self: Improve backtraces for 'imported-files'.
* guix/self.scm (imported-files): Pass #:env-vars.
2018-06-02 00:43:49 +02:00
Ludovic Courtès a13c1bf4ca
Merge branch 'master' into core-updates 2018-06-01 23:41:40 +02:00
Mark H Weaver 1a3e3162ac
gnu: icecat: Add more fixes from upstream esr52.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add selected fixes from
the upstream mozilla-esr52 repository.
2018-06-01 12:51:43 -04:00
Ludovic Courtès 54be2b4d75
self: Show backtraces on more columns.
* guix/self.scm (compiled-modules): Add "COLUMNS" to #:env-vars.
2018-06-01 18:41:45 +02:00
Ludovic Courtès 6d52844cd4
self: Add dependency on guile-gdbm-ffi.
Fixes a regression introduced in
331ac4cc23 whereby "guile-gdbm-ffi" would
now be mandatory.

* guix/self.scm (specification->package): Add "guile-gdbm-ffi" and
"guile2.0-gdbm-ffi".
(compiled-guix)[guile-gdbm-ffi]: New variables.
[dependencies]: Add it.
2018-06-01 18:41:45 +02:00
Ricardo Wurmus 65a9f6b6cf
gnu: qtbase: Fix build on older kernels.
* gnu/packages/qt.scm (qtbase)[arguments]: Add configure flags
"-no-feature-getentropy" and "-no-feature-renameat2".
2018-06-01 17:33:25 +02:00
Caleb Ristvedt bf5bf5778c
Add (guix store deduplication).
* guix/store/database.scm (register-path): Add #:deduplicate? and call
'deduplicate' when it's true.
(counting-wrapper-port, nar-sha256): Move to...
* guix/store/deduplication.scm: ... here.  New file.
* tests/store-deduplication.scm: New file.
* Makefile.am (STORE_MODULES): Add deduplication.scm.
(SCM_TESTS) [HAVE_GUILE_SQLITE3]: Add store-deduplication.scm.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2018-06-01 15:35:54 +02:00
Ludovic Courtès 285cc75c31
database: 'register-path' resets timestamps.
* guix/store/database.scm (reset-timestamps): New procedure.
(register-path): Use it.
2018-06-01 15:35:45 +02:00
Caleb Ristvedt 7f9d184d9b
Add (gnu store database).
* guix/config.scm.in (%store-database-directory): New variable.
* guix/store/database.scm: New file.
* tests/store-database.scm: New file.
* Makefile.am (STORE_MODULES): New variable.
(MODULES, MODULES_NOT_COMPILED): Adjust accordingly.
(SCM_TESTS) [HAVE_GUILE_SQLITE3]: Add tests/store-database.scm.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2018-06-01 15:35:32 +02:00
Ludovic Courtès d59e75f3b5
build: Check for Guile-SQLite3.
* m4/guix.m4 (GUIX_CHECK_GUILE_SQLITE3): New macro.
* configure.ac: Use it and define 'HAVE_GUILE_SQLITE3'.
* guix/self.scm (specification->package): Add "guile-sqlite3".
(compiled-guix)[guile-sqlite3]: New variable.
[dependencies]: Add it.
2018-06-01 15:35:15 +02:00
Ludovic Courtès 9f160a0d3c
vm: Use 'with-extensions'.
* gnu/system/vm.scm (system-docker-image)[build]: Use
'with-extensions'.  Remove 'add-to-load-path' calls.
2018-06-01 15:21:28 +02:00
Ludovic Courtès 331ac4cc23
profiles: Use 'with-extensions'.
* guix/profiles.scm (manual-database)[build]: Use 'with-extensions'.
Remove 'add-to-load-path' call.
* guix/man-db.scm: Use (gdbm) the normal way; remove 'module-autoload!'
call.
2018-06-01 15:21:28 +02:00
Ludovic Courtès 33d8a87104
bootloader: grub: Use 'with-extensions'.
* gnu/bootloader/grub.scm (svg->png): Use 'with-extensions'.  Remove
'add-to-load-path' calls.
* gnu/build/svg.scm: Use (rsvg) and (cairo) the normal way.  Remove
'module-autoload!' calls.
2018-06-01 15:21:28 +02:00
Ludovic Courtès 31a5d694a3
bootloader: grub: Simplify 'svg->png'.
* gnu/bootloader/grub.scm (svg->png): Remove now unneeded
  #:guile-for-build argument.
2018-06-01 15:21:28 +02:00
Ludovic Courtès ff913cf514
tests: ssh: Use 'with-extensions'.
* gnu/tests/ssh.scm (run-ssh-test)[test]: Wrap body in
'with-extensions'.  Remove %load-path manipulation code.
2018-06-01 15:21:28 +02:00
Ludovic Courtès 13993c77fe
pack: Use 'with-extensions' when referring to (guix docker).
* guix/docker.scm: Use module (json) the normal way.
* guix/scripts/pack.scm (docker-image)[build]: Wrap in
'with-extensions'.
2018-06-01 15:21:28 +02:00
Ludovic Courtès 838e17d805
gexp: Add 'with-extensions'.
* guix/gexp.scm (<gexp>)[extensions]: New field.
(gexp-attribute): New procedure.
(gexp-modules): Write in terms of 'gexp-attribute'.
(gexp-extensions): New procedure.
(gexp->derivation): Add #:effective-version.
[extension-flags]: New procedure.
Honor extensions of EXP.
(current-imported-extensions): New syntax parameter.
(with-extensions): New macro.
(gexp): Honor CURRENT-IMPORTED-EXTENSIONS.
(compiled-modules): Add #:extensions and honor it.
(load-path-expression): Likewise.
(gexp->script, gexp->file): Honor extensions.
* tests/gexp.scm (%extension-package): New variable.
("gexp-extensions & ungexp")
("gexp-extensions & ungexp-splicing")
("gexp-extensions and literal Scheme object")
("gexp->derivation & with-extensions")
("program-file & with-extensions"): New tests.
* doc/guix.texi (G-Expressions): Document 'with-extensions'.
2018-06-01 15:20:54 +02:00
Ludovic Courtès ccc951cab3
pack: Adjust test to expect relative symlinks.
Reported by Chris Marusich <cmmarusich@gmail.com>.
Fixes <https://bugs.gnu.org/31560>.

* tests/pack.scm ("self-contained-tarball"): Rename 'guile' to 'bin'.
Expect 'bin/Guile' to be a relative symlink.
2018-06-01 15:17:41 +02:00
Ricardo Wurmus 44057a461b
tests: Fix arguments in pack test.
This is a follow-up to commit 5ffac538aa.

* tests/pack.scm (self-contained-tarball): Adjust arguments to
"self-contained-tarball".
2018-06-01 14:18:31 +02:00
Ludovic Courtès 5d669883ec
gexp: 'compiled-modules' no longer overrides (guix build utils).
Until now 'compiled-modules' would override (guix build utils) with its
own.  Thus, when asked to build a different (guix build utils),
via #:module-path, it would fail badly because a (guix build utils)
module was already loaded and possibly incompatible with the new one.

This happened when running 'guix pull --branch=core-updates' from
current master: in 'core-updates', (guix build utils) exports
'ignore-error?' but in 'master' it does not.  Thus, 'guix pull' would
fail with:

  no binding `invoke-error?' in module (guix build utils)
  builder for `/gnu/store/…-module-import-compiled.drv' failed with exit code 1
  cannot build derivation `/gnu/store/…-compute-guix-derivation.drv': 1 dependencies couldn't be built

This patch fixes it.

* guix/gexp.scm (compiled-modules)[build-utils-hack?]: New variable.
[build]: Load MODULES/build/utils.scm when it exists.
2018-06-01 13:50:27 +02:00
Robin Templeton 514026d7de
gnu: rust: Add support for building 32-bit packages on 64-bit hosts.
* gnu/packages/rust.scm (rust-bootstrap, rust-1.23): Use
nix-system->gnu-triplet to determine the system type.
(rust-1.19): Use readelf instead of nm in the atomic-lock-free test.
(rust-1.23): Disable the cargo_test_env test. Disable parallel execution of
tests.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2018-06-01 13:50:27 +02:00
Timothy Sample a078a6ec3b
gnu: Add git-annex.
* gnu/packages/version-control.scm (git-annex): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2018-06-01 13:50:27 +02:00
Timothy Sample 4e5d9bf20e
gnu: Add ghc-disk-free-space.
* gnu/packages/haskell.scm (ghc-disk-free-space): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2018-06-01 13:50:27 +02:00
Timothy Sample 1ea3971992
gnu: ghc-psqueues: Allow building with newer versions of QuickCheck.
* gnu/packages/haskell.scm (ghc-psqueues)[arguments]: Add configure
flag to allow newer versions of QuickCheck.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2018-06-01 13:50:27 +02:00
Timothy Sample 6950a45073
gnu: Add ghc-safesemaphore.
* gnu/packages/haskell.scm (ghc-safesemaphore): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2018-06-01 13:50:27 +02:00
Timothy Sample 92c2097bc2
gnu: Add ghc-esqueleto.
* gnu/packages/haskell.scm (ghc-esqueleto): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2018-06-01 13:50:26 +02:00
Timothy Sample a39e6faee9
gnu: Add ghc-ifelse.
* gnu/packages/haskell.scm (ghc-ifelse): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2018-06-01 13:50:26 +02:00
Timothy Sample e3aae496f9
gnu: Add ghc-feed.
* gnu/packages/haskell.scm (ghc-feed): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2018-06-01 13:50:26 +02:00
Timothy Sample 4c798726b4
gnu: Add ghc-bloomfilter.
* gnu/package/haskell.scm (ghc-bloomfilter): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2018-06-01 13:50:26 +02:00
Rouby Pierre-Antoine 93b83eb31e
services: Add hpcguix-web.
* gnu/service/web.scm (<hpcguix-web-configuration>): New record-type.
  (%hpcguix-web-accounts): New variable.
  (%hpcguix-web-activation,hpcguix-web-shepherd-service,
  hpcguix-web-service-type): New procedures.
* gnu/tests/web.scm (run-hpcguix-web-server-test): New procedure.
  (%hpcguix-web-specs, %hpcguix-web-os, %test-hpcguix-web): New variable.
* doc/guix.texi (Web Services): Add 'hpcguix-web'.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2018-06-01 13:50:26 +02:00
Rouby Pierre-Antoine d6a4dfec90
gnu: Add hpcguix-web.
* gnu/package/web.scm (hpcguix-web): New variable.

Signed-off-by: Ludovic Courtès <ludovic.courtes@inria.fr>
2018-06-01 13:50:26 +02:00
Ludovic Courtès 7a4e2eaab3
marionette: Add 'wait-for-tcp-port'.
* gnu/build/marionette.scm (wait-for-tcp-port): New procedure.
* gnu/tests/dict.scm (run-dicod-test)["connect inside"]: Use it instead
of the inline loop.
2018-06-01 13:50:26 +02:00
Ludovic Courtès 5ede50b850
gnu: emacs-w3m: Update and allow builds with Emacs 26.
* gnu/packages/emacs.scm (emacs-w3m)[source]: Grab the source from
github.com.
[native-inputs]: Add TEXINFO.
[arguments]: Add 'support-emacs!' phase.  In 'patch-exec-paths' phase,
make w3m.el and w3m-image.el writable.  Remove substitution for
'w3m-image-viewer', which no longer exists.
2018-06-01 13:50:26 +02:00
Stefan Stefanović 8674abb1dd
gnu: sddm: Fix CMake build.
* gnu/packages/display-managers.scm (sddm): Fix CMake build.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/patches/sddm-fix-build-with-qt-5.11-1024.patch: New file.

Signed-off-by: Rutger Helling <rhelling@mykolab.com>
2018-06-01 12:17:00 +02:00
Mathieu Othacehe 8fc3a971b0
scripts: system: Sort profile generations in reverse order.
* guix/scripts/system.scm (profile-boot-parameters): Reverse
generation-numbers list. This allows old generations to be listed from most
recent to oldest in bootloaders configuration files.
2018-06-01 09:40:07 +02:00
Leo Famulari e90322d201
gnu: prosody: Update to 0.10.2 [fixes CVE-2018-10847].
* gnu/packages/messaging.scm (prosody): Update to 0.10.2.
2018-05-31 20:31:46 -04:00
Konrad Hinsen 555ab0853b
gnu: Add emacs-zotxt.
* gnu/packages/emacs.scm (emacs-zotxt): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2018-05-31 18:13:09 +02:00
Konrad Hinsen 45dca193a4
gnu: Add emacs-org-caldav.
* gnu/packages/emacs.scm (emacs-org-caldav): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2018-05-31 18:13:08 +02:00
Konrad Hinsen ec8a9892d1
gnu: Add python-bigfloat.
* gnu/packages/python.scm (python-bigfloat, python2-bigfloat): New
variables.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2018-05-31 18:13:08 +02:00
Fis Trivial 73d854232f
gnu: bear: Fix python path.
* gnu/packages/build-tools.scm (bear)
[inputs]: Add python-wrapper.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2018-05-31 18:13:08 +02:00
Ludovic Courtès 9768848af8
records: Make a couple of procedures available at expansion time.
* guix/records.scm (current-abi-identifier, abi-check): Wrap in
'eval-when'.
2018-05-31 18:13:08 +02:00
Ludovic Courtès b1059b38b2
system: 'read-boot-parameters' provides a more meaningful warning.
'system' here was bound to Guile's 'system' procedure.

* gnu/system.scm (read-boot-parameters): Fix argument for fallback
warning.
2018-05-31 18:13:08 +02:00
Ludovic Courtès 69a05eab35
file-systems: Always wait for devices to show up.
Previously, 'canonicalize-device-spec' would wait for devices when they
were specified as a label or UUID, but would not wait when the user
passed a "/dev" file name directly.  This could cause problems when
the /dev node takes a while to show up.

* gnu/build/file-systems.scm (canonicalize-device-spec): Add 'resolve'
call in the 'string?' case.
2018-05-31 18:13:08 +02:00
Ludovic Courtès e13240f598
self: Reduce the set of dependencies.
By mistake we were adding more dependencies than needed to the Scheme
derivations.

* guix/self.scm (compiled-guix)[dependencies]: Use
'package-transitive-propagated-inputs', not 'package-transitive-inputs'.
2018-05-31 18:13:08 +02:00
Ricardo Wurmus babeea3f9f
build-system/r: Use invoke.
* guix/build/r-build-system.scm (invoke-r): Use invoke.
(pipe-to-r): Raise invoke-error on non-zero return value.
(check): Unconditionally return #t.
2018-05-31 13:24:17 +02:00
Ricardo Wurmus 59f87b44da
Merge branch 'master' into core-updates 2018-05-31 13:23:49 +02:00
Ricardo Wurmus 404e5c7d7d
gnu: r-servr: Update to 0.10.
* gnu/packages/web.scm (r-servr): Update to 0.10.
[native-inputs]: Remove r-rcpp.
2018-05-31 13:21:31 +02:00
Ricardo Wurmus ce8b9e3b1c
gnu: r-seurat: Update to 2.3.1.
* gnu/packages/bioinformatics.scm (r-seurat): Update to 2.3.1.
[propagated-inputs]: Remove r-gridextra; add r-reticulate.
2018-05-31 13:21:31 +02:00