aboutsummaryrefslogtreecommitdiff
path: root/guix
Commit message (Collapse)AuthorAge
* Merge branch 'master' into stagingMarius Bakke2018-07-08
|\
| * ui: Add -V as short option for --version.Kyle Meyer2018-07-07
| | | | | | | | | | | | | | * guix/ui.scm (run-guix): Add -V as the short option for --version for consistency with most commands. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| * scripts: Add missing -V option to commands that document it.Kyle Meyer2018-07-07
| | | | | | | | | | | | | | | | | | * guix/scripts/container.scm (guix-container): * guix/scripts/import.scm (guix-import): * guix/scripts/substitute.scm (guix-substitute): Add -V as the short option for --version to match show-help's description. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| * weather: Fix pasto in --version output.Kyle Meyer2018-07-07
| | | | | | | | | | | | | | * guix/scripts/weather.scm (%options): Correct the command name passed to show-version-and-exit. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| * pack: Use guile-for-build for the target system.Ludovic Courtès2018-07-05
| | | | | | | | | | | | | | | | | | | | | | Until now, running "guix pack -s i686-linux" on an x86_64-linux machine, for instance, would use an x86_64 guile for module derivations. This was OK until now, but would break when passing "--localstatedir" due to the introduction of guile-sqlite3: we'd be using the i686 guile-sqlite3 along with the x86_64 guile. * guix/scripts/pack.scm (guix-pack): Pass the 'system option from OPTS to 'package-derivation'.
| * profiles: 'info-dir-file' hook now produces 'dir.LANG' files.Ludovic Courtès2018-07-04
| | | | | | | | | | | | | | | | | | | | | | Previously, entries for 'guix.fr.info' would end up in 'dir', above the 'guix.info' entries; consequently, running 'info guix' would actually open 'guix.fr.info', which was confusing for non-French readers. * guix/profiles.scm (info-dir-file)[glibc-utf8-locales]: New variable. [build](info-file-language): New procedure. (install-info): Use it, to create 'dir.LANG' files. Set GUIX_LOCPATH.
| * Revert "packages: Optimize 'package-transitive-supported-systems'."Ludovic Courtès2018-07-03
| | | | | | | | | | | | | | This reverts commit 24420f5ffabfbdbe913a5765e5c00e17de18fb4c. This broke 'package-transitive-supported-systems', which would return the union of supported systems instead of the intersection.
| * guix system: Make 'init' idempotent again.Ludovic Courtès2018-07-03
| | | | | | | | | | | | | | | | | | | | | | | | | | This fixes a regression introduced in df2f6400b1fbc282ef4d6dd7124ea1c17adc23c2: since the new 'register-path' (actually 'reset-timestamps') would make files read-only, 'delete-file-recursively' would fail to delete them. Thus, re-running 'guix system init' on an already-populated store would fail with a 'delete-file' EPERM. * guix/scripts/system.scm (copy-item): Use 'lstat' instead of 'file-exists?'. Call 'make-file-writable' on each directory below DEST.
| * ui: Report file names in 'system-error' exceptions from 'delete-file'.Ludovic Courtès2018-07-03
| | | | | | | | * guix/ui.scm (delete-file): New error-reporting wrapper.
| * database: 'reset-timestamps' now correctly handles symlinks.Ludovic Courtès2018-07-03
| | | | | | | | | | * guix/store/database.scm (reset-timestamps): Use 'utime' with AT_SYMLINK_NOFOLLOW for symlinks.
| * syscalls: Define AT_SYMLINK_NOFOLLOW et al.Ludovic Courtès2018-07-03
| | | | | | | | | | | | * guix/build/syscalls.scm (AT_FDCWD, AT_SYMLINK_NOFOLLOW, AT_REMOVEDIR) (AT_SYMLINK_FOLLOW, AT_NO_AUTOMOUNT, AT_EMPTY_PATH): New variables. * tests/syscalls.scm ("utime with AT_SYMLINK_NOFOLLOW"): New test.
| * deduplication: Remove 'false-if-system-error', now unused.Ludovic Courtès2018-07-03
| | | | | | | | * guix/store/deduplication.scm (false-if-system-error): Remove.
| * import: elpa: Check if 'fetch-elpa-package' rest argument is null.Oleg Pykhalov2018-07-03
| | | | | | | | * guix/import/elpa.scm (fetch-elpa-package): Check if 'rest' is null.
| * deduplication: Place link files under /gnu/store/.links.Ludovic Courtès2018-07-03
| | | | | | | | | | | | | | | | | | | | | | | | Previously they'd always be placed next to TO-REPLACE, which would lead to EPERM in some cases. * guix/store/deduplication.scm (replace-with-link): Add #:swap-directory parameter and honor it. Add call to 'make-file-writable'. Catch 'system-error' around 'rename-file'. (deduplicate): Pass #:swap-directory and remove uses of 'false-if-system-error'. * tests/store-deduplication.scm ("deduplicate"): Add 'chmod' call.
| * deduplication: Fix incorrect use of 'throw'.Ludovic Courtès2018-07-03
| | | | | | | | | | * guix/store/deduplication.scm (get-temp-link): In handler, fix call to 'throw'.
| * guix system: init: Check the available space before copying.Ludovic Courtès2018-07-03
| | | | | | | | | | * guix/scripts/system.scm (copy-closure): Call 'query-path-info*' on TO-COPY and REFS. Compute the total size. Call 'check-available-space'.
| * ui: Make 'check-available-space' public.Ludovic Courtès2018-07-03
| | | | | | | | | | * guix/ui.scm (check-available-space): Add optional 'directory' parameter, defaulting to (%store-prefix). Honor it. Make public.
| * store: Add 'query-path-info*'.Ludovic Courtès2018-07-03
| | | | | | | | | | * guix/scripts/size.scm (query-path-info*): Move to... * guix/store.scm (query-path-info*): ... here.
| * packages: Optimize 'package-transitive-supported-systems'.Ludovic Courtès2018-07-03
| | | | | | | | | | | | | | | | | | | | | | This version is 13% faster than the one above when timing: (fold-packages (lambda (p x) (package-transitive-supported-systems p)) '()) * guix/packages.scm (package-transitive-supported-systems): Make 'systems' a set instead of calling 'lset-intersection' repeatedly.
| * self: Build with Guile 2.2.4.Ludovic Courtès2018-07-02
| | | | | | | | | | * guix/self.scm (guile-for-build): In the "2.2" case, choose GUILE-2.2.4.
| * self: Use #:guile-for-build in the shebang of the 'guix' executable.Ludovic Courtès2018-07-02
| | | | | | | | | | | | * guix/self.scm (guix-command): Add #:guile and pass it to 'program-file'. (whole-package): Add #:guile and pass it to 'guix-command'. (compiled-guix): Pass #:guile to 'guix-command' and 'whole-package'.
| * utils: Micro-optimize 'source-properties->location'.Ludovic Courtès2018-07-02
| | | | | | | | | | * guix/utils.scm (source-properties->location): Destructure LOC with 'match', adding a fast path without 'assq-ref' calls.
| * utils: Disable memoization for 'location'.Ludovic Courtès2018-07-02
| | | | | | | | | | | | This was getting 25% hits, which did not quite justify the overhead. * guix/utils.scm (location): Remove 'mlambda'.
* | Merge branch 'master' into stagingMarius Bakke2018-07-02
|\|
| * ui: Increase relevance score for exact matches.Ludovic Courtès2018-06-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously "guix package -s python" would have 'python2-zope-interface' as its first result (relevance: 10), followed by many other python-* packages with the same score, while 'python' itself would come later (relevance: 7). This change makes 'python' the first result (relevance: 27). Reported by Gábor Boskovits. * guix/ui.scm (relevance)[score]: Use 'fold-matches' instead of 'match:count' to counter the number of maches. Give more weight to exact matches.
| * self: Add dependency on GnuTLS.Ludovic Courtès2018-06-27
| | | | | | | | | | | | | | | | | | | | Fixes <https://bugs.gnu.org/31983>. Reported by Fis Trivial <ybbs.daans@hotmail.com>. * guix/self.scm (specification->package): Add "gnutls" and "guile2.0-gnutls". (compiled-guix)[gnutls]: New variable. [dependencies]: Add it.
| * scripts: gc: Report size in MiBs instead of bytes.Taylan Kammer2018-06-28
| | | | | | | | * guix/scripts/gc.scm (guix-gc): Show info in MiBs not bytes.
| * ui: Hint at the installation of locale packages and 'GUIX_LOCPATH'.Ludovic Courtès2018-06-27
| | | | | | | | | | | | * guix/ui.scm (install-locale): Hide the "warning: failed to install locale" on Guile 2.2. Add a hint about 'glibc-utf8-locales' and 'GUIX_LOCPATH'.
| * store: Add 'port->connection'.Ludovic Courtès2018-06-26
| | | | | | | | * guix/store.scm (port->connection): New procedure.
* | build-system/meson: Really skip the 'fix-runpath' phase on armhf.Marius Bakke2018-07-02
| | | | | | | | | | | | | | | | | | | | This follows up commit d5b5a15a4046362377f1a45d466b43bb6e93d4f which doesn't work because %current-system etc expands before the actual build. Fixes <https://bugs.gnu.org/31719>. * guix/build-system/meson.scm (meson-build)[builder]: Compare against the already existing "system" variable rather than (%current-system).
* | gnu: java: Return #t from all phases and snippets.Mark H Weaver2018-06-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/java-utils.scm (ant-build-javadoc): Use invoke; return #t. * guix/build/ant-build-system.scm (generate-jar-indices): Return #t and remove vestigal plumbing. * gnu/packages/java.scm (classpath-bootstrap, ant-bootstrap, classpath-devel) (icedtea-6, icedtea-7, java-plexus-sec-dispatcher, ant/java8, clojure) (java-classpathx-servletapi, java-swt, java-qdox-1.12, java-hamcrest-core) (java-plexus-archiver, java-plexus-sec-dispatcher, java-modello-plugins-xml) (java-asm, java-commons-collections, java-commons-bsf, java-slf4j-api) (java-slf4j-api, java-slf4j-simple, java-stringtemplate-3) (java-stringtemplate, antlr3, antlr3-3.3, antlr3-3.1, java-ops4j-base-lang) (java-ops4j-pax-tinybundles, java-ops4j-pax-exam-core-spi) (java-fasterxml-jackson-core, java-fasterxml-jackson-databind) (java-fasterxml-jackson-modules-base-jaxb, java-ecj-3, java-ecj-3.5) (java-fasterxml-jackson-dataformat-yaml, java-woodstox-core) (java-fasterxml-jackson-dataformat-xml, java-testng, java-jnacl) (java-bouncycastle, java-powermock-core, java-powermock-modules-junit4) (java-jansi-native, java-jansi, java-commons-httpclient, java-commons-vfs) (java-apache-ivy, java-janino, java-logback-core): Return #t from all phases and snippets, use invoke where appropriate, and remove vestigial plumbing.
* | meson-build-system: Return #t from all phases.Mark H Weaver2018-06-28
| | | | | | | | | | * guix/build/meson-build-system.scm (configure, build, check, install): (fix-runpath): Use 'invoke' and return #t from all phases.
* | Merge branch 'master' into stagingMarius Bakke2018-06-26
|\|
| * pack: Squashfs build expression refers to (guix store database) & co.Ludovic Courtès2018-06-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes a regression introduced in c45477d2a1a651485feede20fe0f3d15aec48b39. Reported by Christopher Baines <mail@cbaines.net>. * guix/scripts/pack.scm (not-config?, guile-sqlite3&co): New variables. (self-contained-tarball)[not-config?]: Remove. [build]: Use GUILE-SQLITE3&CO for 'with-extensions'. (squashfs-image)[libgcrypt]: New variable. [build]: Use 'source-module-closure', 'make-config.scm', and 'with-extensions'. (docker-image)[not-config?]: Remove.
| * pack: Fix guix pack -f docker.Christopher Baines2018-06-24
| | | | | | | | | | | | | | | | Without this change, running guix pack fails as (guix sets) is missing when compiling (guix build store-copy). * guix/scripts/pack.scm (docker-image): Move (guix build store-copy) to within the source-module-closure call.
| * guix: Fix system reconfigure.Ricardo Wurmus2018-06-21
| | | | | | | | | | | | This is a follow-up to 378daa8cb677121e1893f9173af1db060720d6e4. * guix/scripts/system.scm (switch-to-system): Lower the script.
* | Merge branch 'master' into stagingMarius Bakke2018-06-21
|\|
| * guix system: 'list-generation' correctly displays file system labels.Ludovic Courtès2018-06-20
| | | | | | | | | | | | * guix/scripts/system.scm (display-system-generation): Correctly display file system labels. Previously, starting from commit a5acc17a3c10a3779b5b8b1a2565ef130be77e51, it'd print #<file-system-label "foo">.
* | Merge branch 'master' into stagingMarius Bakke2018-06-19
|\|
| * build-system/waf: Use invoke.Ricardo Wurmus2018-06-19
| | | | | | | | | | * guix/build/waf-build-system.scm (call-waf): Use "invoke" and unconditionally return #t.
| * self: Define derived '-directory' variables in config.scm.Ludovic Courtès2018-06-18
| | | | | | | | | | | | | | | | | | | | This is a followup to d6b5aa0b031f0e7091f7424ac616d1c4d10fed5b. * guix/self.scm (%config-variables): Remove %CONFIG-DIRECTORY, %STATE-DIRECTORY, %STORE-DATABASE-DIRECTORY, and %STORE-DIRECTORY. (make-config.scm): Define them here. * build-aux/build-self.scm (%config-variables, make-config.scm): Likewise.
| * build: Remove checks for 'nix-instantiate'.Ludovic Courtès2018-06-18
| | | | | | | | | | | | | | | | | | | | | | * guix/import/snix.scm (open-nixpkgs): Use "nix-instantiate" unconditionally. * configure.ac: Remove check for 'nix-instantiate'. * guix/config.scm.in (%nix-instantiate): Remove. * guix/self.scm (%dependency-variables): Remove '%nix-instantiate'. (make-config.scm): Remove it from the generated "config.scm". * build-aux/build-self.scm (%dependency-variables, make-config.scm): Likewise.
| * self: Make (guix config) generation really stateless.Ludovic Courtès2018-06-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously the %CONFIG-VARIABLES list would be generated based on what the current (guix config) contains. Thus, it would include '%guix-register-program', which we recently removed, because existing (guix config) most likely contained that variable. Since its value could differ from machine to machine, the build farm could be building a different config.scm, thereby preventing people from getting substitutes. * guix/self.scm (%config-variables): Turn into a white list instead of taking all the remaining variables from the current (guix config). * build-aux/build-self.scm (%config-variables): Likewise.
| * compile: Work around non-thread-safe module autoloading.Ludovic Courtès2018-06-18
| | | | | | | | | | * guix/build/compile.scm <top level>: Set 'try-module-autoload' when running on Guile < 2.2.4.
* | guix: ant-build-system: Use manifest task to create manifest.Gábor Boskovits2018-06-18
| | | | | | | | | | * guix/build/ant-build-system.scm (default-build.xml): Use manifest task to create manifest file instead of a custom echo task.
* | Merge branch 'master' into stagingMarius Bakke2018-06-18
|\|
| * build-system/r: Accept #:r argument.Ricardo Wurmus2018-06-18
| | | | | | | | * guix/build-system/r.scm (lower): Add #:r to private-keywords.
| * self: Install .go files to 'lib/guile/X.Y/site-ccache'.Ludovic Courtès2018-06-17
| | | | | | | | | | | | | | | | | | | | * guix/self.scm (guix-command): Add 'compiled-modules' parameter and honor it. (whole-package): Likewise. (compiled-guix)[built-modules]: Turn into a procedure. When PULL-VERSION is 1, use separate source and compiled modules. When PULL-VERSION is 0, return a single directory containing both .scm and .go files.
| * gnu: ldb: Fix build on 32-bit systems.Marius Bakke2018-06-16
| | | | | | | | | | | | * guix/utils.scm (target-64bit?): New procedure. * gnu/packages/samba.scm (ldb)[inputs]: Only add LMDB on 64-bit systems. [arguments]: Make #:tests? conditional on LMDB availability.
| * offload: Fix error message in 'guix offload test'.Ludovic Courtès2018-06-15
| | | | | | | | | | | | | | | | Reported by Maxim Cournoyer <maxim.cournoyer@gmail.com> in <https://bugs.gnu.org/31824>. * guix/scripts/offload.scm (assert-node-has-guix): Fix typo in failure message; add missing argument.