summaryrefslogtreecommitdiff
path: root/guix
AgeCommit message (Expand)Author
2018-04-30Merge branch 'master' into core-updatesMark H Weaver
2018-04-30Merge branch 'staging'Marius Bakke
2018-04-30guix system: search: Display default Shepherd service names....Fixes <https://bugs.gnu.org/29707>. Reported by Clément Lassieur <clement@lassieur.org>. * guix/scripts/system/search.scm (service-type-default-shepherd-services) (service-type-shepherd-names): New procedures. (service-type->recutils): Use it. * tests/guix-system.sh: Add test. Ludovic Courtès
2018-04-30Merge branch 'master' into core-updatesMark H Weaver
2018-04-27guix system: Report wrong file system 'device' fields....Previously, if you wrote (device "my-label") without (title 'label), you'd get: guix system: error: stat: No such file or directory: "my-label" Now you get a proper error and a hint. Reported by Pierre-Antoine Rouby. * guix/scripts/system.scm (check-file-system-availability)[literal]: New variable. Loop over LITERAL. * gnu/system/file-systems.scm (%pseudo-file-system-types): New variable. * guix/ui.scm (display-hint): Make public. Ludovic Courtès
2018-04-25Merge branch 'master' into stagingMarius Bakke
2018-04-23download: Use ungrafted tools in 'url-fetch/tarbomb' and 'url-fetch/zipbomb'....Fixes <https://bugs.gnu.org/31085>. Reported by Diego Nicola Barbato <dnbarbato@posteo.de>. * guix/download.scm (url-fetch/tarbomb): Pass #:graft? #f to 'gexp->derivation'. (url-fetch/zipbomb): Likewise. Ludovic Courtès
2018-04-21Merge branch 'master' into core-updatesMark H Weaver
2018-04-20build-system: emacs: Add improved check phase....* guix/build-system/emacs.scm (emacs-build): Add #:test-command keyword argument. Remove #:configure-flags and #:test-target keyword arguments. * guix/build/emacs-build-system.scm (check): New procedure. (%standard-phases): Register check phase after the build phase. Signed-off-by: Arun Isaac <arunisaac@systemreboot.net> Maxim Cournoyer
2018-04-20build-system: emacs: Replace system* with invoke....* guix/build/emacs-utils.scm: Use (guix build utils) for invoke. (emacs-batch-eval, emacs-batch-edit-file): Replace system* with invoke. * guix/build/emacs-build-system.scm (make-autoloads): No need to return #t explicitly since emacs-generate-autoloads now uses invoke. Signed-off-by: Arun Isaac <arunisaac@systemreboot.net> Maxim Cournoyer
2018-04-20build-system: emacs: Search all inputs for Emacs Lisp directories....* guix/build/emacs-build-system.scm (set-emacs-load-path): Include Emacs Lisp directories from all inputs. Also, add the unpacked source directory to EMACSLOADPATH. (emacs-inputs, emacs-inputs-directories, emacs-input->el-directory, emacs-inputs-el-directories): Remove. (%standard-phases): Move set-emacs-load-path phase to after unpack phase. Signed-off-by: Arun Isaac <arunisaac@systemreboot.net> Maxim Cournoyer
2018-04-17download: Fix 'url-fetch/tarbomb' and 'url-fetch/zipbomb'....Fixes a regression introduced in 20927c9331b493eaf94211ad9f8a5055e11b4588. Reported by Eric Bavier <ericbavier@centurylink.net>. * guix/download.scm (url-fetch/tarbomb, url-fetch/zipbomb): Within the gexp, import (guix build utils) for 'invoke'. Mark H Weaver
2018-04-16Merge branch 'master' into stagingMarius Bakke
2018-04-15build-system/meson: Don't override LDFLAGS if already set....* guix/build/meson-build-system.scm (configure): Test for LDFLAGS before adding ours. (cherry picked from commit 611c27db2aec8c2f72bc0c1e5c7d126dc95b39b2) Marius Bakke
2018-04-11Merge branch 'master' into core-updatesMark H Weaver
2018-04-11self: Produce a spliced (guix config) to placate Guile 2.0....Fixes 'guix pull' with Guile 2.0. See <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27284#153>. * guix/self.scm (make-config.scm): Remove 'begin' in 'scheme-file' argument and pass #:splice? #t. Ludovic Courtès
2018-04-11gexp: 'scheme-file' can splice expressions....* guix/gexp.scm (<scheme-file>)[splice?]: New field. (scheme-file): Add #:splice? and pass it to '%scheme-file'. (scheme-file-compiler): Pass SPLICE? to 'gexp->file'. (gexp->file): Add #:splice? and honor it. * tests/gexp.scm ("gexp->file + #:splice?"): New test. ("gexp->derivation & with-imported-module & computed module"): Use #:splice? #t. Ludovic Courtès
2018-04-11self: 'package-for-guile' really honors GUILE-VERSION....* guix/self.scm (package-for-guile): Pass GUILE-VERSION to 'false-if-wrong-guile'. Ludovic Courtès
2018-04-11self: Remove 'eval-when' from in generated (guix config)....* guix/self.scm (make-config.scm): Remove unneeded 'eval-when'. Ludovic Courtès
2018-04-10self: Don't use deprecated package names....* guix/self.scm (compiled-guix)[guile-json, guile-ssh]: Don't refer t "guile2.2-json" and "guile2.2-ssh", which are deprecated. Ludovic Courtès
2018-04-10self: Export '%guix-register-program' in generated (guix config)....* guix/self.scm (make-config.scm): Export '%guix-register-program'. Ludovic Courtès
2018-04-10self: Fix package names for compilation with Guile 2.0....Reported by Ricardo Wurmus. * guix/self.scm (specification->package): Add guile2.0-{json,git,ssh}. (guile-for-build): Use 'module-ref' for Guile 2.0. Ludovic Courtès
2018-04-10self: Display a new line at the end of module compilation....* guix/self.scm (compiled-modules)[build]: Add a 'newline' call at the end. Ludovic Courtès
2018-04-10self: Don't substitute the '-source' derivations....With substitution enabled we would end up downloading 10+ MiB of source that's already available locally on disk. * guix/self.scm (imported-files): Pass #:options to 'computed-file'. Ludovic Courtès
2018-04-10Merge branch 'master' into core-updatesMark H Weaver
2018-04-08discovery: Remove dependency on (guix ui)....This reduces the closure of (guix discovery) from 28 to 8 modules. * guix/discovery.scm (scheme-files): Use 'format' instead of 'warning'. (scheme-modules): Add #:warn parameter. Use it instead of 'warn-about-load-error'. (fold-modules): Add #:warn and pass it to 'scheme-modules'. (all-modules): Likewise. * gnu/bootloader.scm (bootloader-modules): Pass #:warn to 'all-modules'. * gnu/packages.scm (fold-packages): Likewise. * gnu/services.scm (all-service-modules): Likewise. * guix/upstream.scm (importer-modules): Likewise. Ludovic Courtès
2018-04-08Add (guix self)....* guix/self.scm: New file. * Makefile.am (MODULES): Add it. * gnu/packages.scm (%distro-root-directory): Rewrite to try different directories. * guix/discovery.scm (guix): Export 'scheme-files'. Ludovic Courtès
2018-04-08gexp: 'directory-union' has a #:resolve-collision parameter....* guix/gexp.scm (directory-union): Add #:resolve-collision and honor it. Ludovic Courtès
2018-04-08union: Allow callers to choose the collision resolution policy....* guix/build/union.scm (warn-about-collision): New procedure. (union-build): Add #:resolve-collision. [resolve-collisions]: Call it. * tests/union.scm ("union-build collision first & last"): New test. Ludovic Courtès
2018-04-08modules: Report the search path in &missing-dependency-error....* guix/modules.scm (&missing-dependency-error)[search-path]: New field. (source-module-dependencies): Initialize the 'search-path' field. Ludovic Courtès
2018-04-02git: Increase modularity and expose 'update-cached-checkout'....* guix/git.scm (repository->head-sha1, copy-to-store): Remove. (switch-to-ref): Return the OID of OBJ. (update-cached-checkout): New procedure, with code from 'latest-repository-commit'. (latest-repository-commit): Use it. Ludovic Courtès
2018-04-02build-system/meson: Don't override LDFLAGS if already set....* guix/build/meson-build-system.scm (configure): Test for LDFLAGS before adding ours. Marius Bakke
2018-04-01gexp: 'compiled-modules' prints a line for each module....* guix/gexp.scm (compiled-modules)[build]: Add 'processed' parameter to 'process-entry' and 'process-directory'. Print a message before each 'compile-file' call. Ludovic Courtès
2018-04-01gexp: compiled-modules: Factorize build code....* guix/gexp.scm (compiled-modules)[build]: Factorize 'process-entry'. Ludovic Courtès
2018-03-31union: Slightly improve messages for file collisions....* guix/build/union.scm (union-build): Indent file names upon collision. Remove "arbitrarily" from the message. Ludovic Courtès
2018-03-31guix package: Add '--allow-collisions'....Fixes <https://bugs.gnu.org/30830>. Suggested by Ricardo Wurmus <rekado@elephly.net>. * guix/scripts/package.scm (build-and-use-profile): Add #:allow-collisions? and pass it to 'profile-derivation'. (show-help, %options): Add '--allow-collisions'. (manifest-action, process-actions): Pass #:allow-collisions? to 'build-and-use-profile'. * tests/guix-package.sh: Add collision test. * doc/guix.texi (Invoking guix package): Document '--allow-collisions'. Ludovic Courtès
2018-03-30gnu: rust: Update rust to 1.24.1....* gnu/packages/rust.scm (rust-bootstrap): Freeze bootstrap version to 1.22.1. Reorganize bootstrap binaries to match new "rust" package structure with two ouputs "out" with Rust compiler and "cargo" with Cargo package manager. Replace all "system*" by "invoke". (rust-1.23): Rename "rustc" to "rust". Update sha256 for tarball. Add cargo related dependencies. Install "cargo" as separate "rust" output. Remove substitutes for parts that were fixed in "rustc" source code. Install documentation to separate "doc" output. Update configuration according to changes in "rustc" source code. Replace all "system*" by "invoke". (rust): Create package for 1.24.1 rust release based on rust-1.23 release. * guix/build-system/cargo.scm (default-rust): Replace "default-cargo" and "default-rustc" functions with "default-rust" function. (cargo-build-system): Take only one package as "rust" source. Use "rustc" of default output of "rust" package, use "cargo" as "cargo" output of "rust" package. Nikolai Merinov
2018-03-29ld-wrapper: Allow linking with non-store libraries by default....This was suggested on several occasions, notably <https://bugs.gnu.org/24544>. * gnu/packages/ld-wrapper.in (%allow-impurities?): Default to #t and parse the value of 'GUIX_LD_WRAPPER_ALLOW_IMPURITIES'. * guix/build/gnu-build-system.scm (set-paths): Set 'GUIX_LD_WRAPPER_ALLOW_IMPURITIES'. Ludovic Courtès
2018-03-29gremlin: Fix typo in export list....* guix/build/gremlin.scm: Really export 'elf-dynamic-info-soname'. Ludovic Courtès
2018-03-29Merge branch 'master' into core-updatesMarius Bakke
2018-03-28weather: Report continuous integration stats....* guix/scripts/weather.scm (histogram, throughput, queued-subset): New procedures. (report-server-coverage): Report CI information. * doc/guix.texi (Invoking guix weather): Document it. Ludovic Courtès
2018-03-28Add (guix ci)....* guix/ci.scm: New file. * Makefile.am (MODULES): Add it. Ludovic Courtès
2018-03-27guix environment: load manifest files like "guix package" does...* guix/scripts/environment.scm (options/resolve-packages): When loading manifest files, use the same module environment as in "guix package". Signed-off-by: Ludovic Courtès <ludovic.courtes@inria.fr> Konrad Hinsen
2018-03-27guix gc: Add '--derivers'....* guix/scripts/gc.scm (show-help, %options): Add '--derivers'. (guix-gc): Handle 'list-derivers'. * tests/guix-gc.sh: Add test. * doc/guix.texi (Invoking guix gc): Document it. Ludovic Courtès
2018-03-27graph: Add "module" node type....* guix/scripts/graph.scm (module-from-package) (source-module-dependencies*): New procedures. (%module-node-type): New variable. (%node-types): Add it. * guix/modules.scm (source-module-dependencies): Export. * tests/graph.scm ("module graph"): New test. * doc/guix.texi (Invoking guix graph): Document it. Ludovic Courtès
2018-03-26guix build: 'guix build --log-file' gracefully reports certificate errors....Previously 'guix build --log-file' would print a backtrace upon X.509 certificate verification errors. * guix/scripts/build.scm (log-url): Catch 'tls-certificate-error' in addition to 'getaddrinfo-error'. Ludovic Courtès
2018-03-26git: 'latest-repository-commit' calls 'repository-close!'....* guix/git.scm (latest-repository-commit): Call 'repository-close!' when it exists. Ludovic Courtès
2018-03-24system: Add "guix system docker-image" command....* gnu/system/vm.scm (system-docker-image): New procedure. * guix/scripts/system.scm (system-derivation-for-action): Add a case for docker-image, and in that case, call system-docker-image. (show-help): Document docker-image. (guix-system): Parse arguments for docker-image. * doc/guix.texi (Invoking guix system): Document "guix system docker-image". * gnu/system/examples/docker-image.tmpl: New file. Chris Marusich
2018-03-24guix: Rewrite build-docker-image to allow more paths....* guix/docker.scm (build-docker-image): Rename "path" argument to "prefix" to reflect the fact that it is used as a prefix for the symlink targets. Add the "paths" argument, and remove the "closure" argument, since it is now redundant. Add a "transformations" argument. * guix/scripts/pack.scm (docker-image): Read the profile's reference graph and provide its paths to build-docker-image via the new "paths" argument. Chris Marusich
2018-03-24tests: Add tests for "guix pack"....* guix/scripts/pack.scm (bootstrap-xz): New variable. (%options) <--bootstrap>: New option. (show-help): Document the new --bootstrap option. (guix-pack): When --bootstrap is specified, use the bootstrap Guile, tar, and xz to build the pack, and do not use any profile hooks or locales. * doc/guix.texi (Invoking guix pull): Document the new --bootstrap option. * tests/guix-pack.sh: New file. * Makefile.am (SH_TESTS): Add guix-pack.sh. * gnu/packages/package-management.scm (guix) <inputs>: Add util-linux. Chris Marusich