Age | Commit message (Expand) | Author |
2018-05-21 | Merge branch 'master' into core-updates | Mark H Weaver |
2018-05-19 | uuid: 'uuid' returns #f when 'string->uuid' returns #f....* gnu/system/uuid.scm (uuid): When STR is not a literal, return #f when
'string->uuid' returns #f.
* tests/uuid.scm ("uuid, dynamic value"): New test.
| Ludovic Courtès |
2018-05-19 | tests: Skip 'tests/guix-pack.sh' when networking is missing....The test could fail because "static-binaries.tar.xz" is missing, for
instance.
* tests/guix-pack.sh: Require a network connection to be on the safe
side. This reverts part of 47a60325ca650e8fc1a291c8655b4297f4de8deb.
| Ludovic Courtès |
2018-05-19 | tests: Adjust to new "unbound variable" messages....This is a followup to 2d2f98efb36db3f003d950a004806234962b4f4d.
* tests/guix-system.sh: Adjust regexps to match "error:".
| Ludovic Courtès |
2018-05-17 | Merge branch 'master' into core-updates | Mark H Weaver |
2018-05-13 | utils: Add 'version-prefix?'....* guix/utils.scm (version-prefix?): New procedure.
* tests/utils.scm ("version-prefix?"): New test.
| Ludovic Courtès |
2018-05-10 | pack: Add '--relocatable'....* gnu/packages/aux-files/run-in-namespace.c: New file.
* Makefile.am (AUX_FILES): Add it.
* guix/scripts/pack.scm (<c-compiler>): New record type.
(c-compiler, bootstrap-c-compiler, c-compiler-compiler): New procedures.
(self-contained-tarball): Use
'relative-file-name' for the SOURCE -> TARGET symlink.
(docker-image): Add 'defmod' to please Geiser.
(wrapped-package, map-manifest-entries): New procedures.
(%options, show-help): Add --relocatable.
(guix-pack): Honor it.
| Ludovic Courtès |
2018-05-10 | profiles: Optionally use relative file names for symlink targets....* guix/build/union.scm (symlink-relative): New procedure.
* guix/build/profiles.scm: Re-export it.
(build-profile): Add #:symlink and pass it to 'union-build'.
* guix/profiles.scm (profile-derivation): Add #:relative-symlinks?.
Pass #:symlink to 'build-profile'.
* tests/profiles.scm ("profile-derivation relative symlinks, one entry")
("profile-derivation relative symlinks, two entries"): New tests.
| Ludovic Courtès |
2018-05-10 | union: Add 'relative-file-name'....* guix/build/union.scm (%not-slash): New variable.
(relative-file-name): New procedure.
* tests/union.scm (test-relative-file-name): New macro and tests.
| Ludovic Courtès |
2018-05-08 | guix: Separate the package name and version with "@", not "-"....* guix/packages.scm (package-full-name): By default, use "@" to separate
the package name and package version. Add an optional delimiter
argument so that there is still a way to explicitly use a different
delimiter.
* gnu/packages/commencement.scm (gcc-boot0) <unpack-gmp&co>: Adjust
accordingly.
* tests/graph.scm: Adjust accordingly.
* tests/profiles.scm: Adjust accordingly.
* NEWS: Mention the change.
Fixes: <https://bugs.gnu.org/31088>.
Reported by Pierre Neidhardt <ambrevar@gmail.com>.
| Chris Marusich |
2018-05-08 | Merge branch 'master' into core-updates | Mark H Weaver |
2018-05-07 | pack: Fix handling of '-e'....Fixes a regression introduced in
aad16cc1965ab3488449c262455eb29b15c77e95.
Reported by Julien Lepiller.
* guix/scripts/pack.scm (guix-pack)[manifest-from-args]: In
'match-lambda', add clause for single packages.
* tests/guix-pack.sh: Add test for '-e'.
| Ludovic Courtès |
2018-05-07 | pack: Honor package transformation options....Previously they would silently be ignored.
* guix/scripts/pack.scm (guix-pack)[manifest-from-args]: Add 'store'
parameter. Call 'options->transformation' and use it.
Move 'with-store' and 'parameterize' around the 'let'.
* tests/guix-pack.sh: Add test using '--with-source'.
| Ludovic Courtès |
2018-05-07 | pack: Adjust test to cope with GC'd profiles....Previous "test -x opt/gnu/bin/guile" would fail if the store item
"opt/gnu/bin" points to had been GC'd.
* tests/guix-pack.sh: Replace "test -x" with "test -L" to deal with
store items that have been reclaimed.
| Ludovic Courtès |
2018-05-06 | Merge branch 'master' into core-updates | Marius Bakke |
2018-05-04 | guix build: Nicely report unbound variables with hints....* guix/ui.scm (print-unbound-variable-error): Add "error:" to the
message.
(report-unbound-variable-error): New procedure, with code formerly in
'report-load-error'.
(report-load-error): Use it.
(call-with-unbound-variable-handling): New procedure.
(with-unbound-variable-handling): New macro.
* guix/scripts/build.scm (options->derivations): Wrap body in
'with-unbound-variable-handling'.
* tests/guix-build.sh (GUIX_PACKAGE_PATH): Add test.
| Ludovic Courtès |
2018-04-30 | Merge branch 'master' into core-updates | Mark H Weaver |
2018-04-30 | guix 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-21 | Merge branch 'master' into core-updates | Mark H Weaver |
2018-04-19 | guix-daemon: Disable garbage collection for remote connections....* nix/nix-daemon/nix-daemon.cc (isRemoteConnection): New variable.
(performOp): For wopCollectGarbage, throw an error when isRemoteConnection
is set.
(acceptConnection): Set isRemoteConnection when connection is not AF_UNIX.
* tests/guix-daemon.sh: Add a test for the new behavior.
| Roel Janssen |
2018-04-11 | Merge branch 'master' into core-updates | Mark H Weaver |
2018-04-11 | gexp: '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-10 | Merge branch 'master' into core-updates | Mark H Weaver |
2018-04-08 | union: 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-08 | tests: Skip 'pivot-root' test on Ubuntu's 4.4 kernels....Fixes <https://bugs.gnu.org/25476>.
Reported by Paul Garlick <pgarlick@tourbillion-technology.com>
and Maria Sidorova <hydromasha@gmail.com>.
* tests/syscalls.scm ("pivot-root"): Skip on known-bad Ubuntu kernels.
| Ludovic Courtès |
2018-03-31 | guix 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-29 | Merge branch 'master' into core-updates | Marius Bakke |
2018-03-27 | tests: Use invoke and return #t from all builders....* tests/packages.scm ("package-source-derivation, snippet", "trivial")
("trivial with local file as input", "trivial with source")
("trivial with system-dependent input", "trivial with #:allowed-references")
("--search-paths with pattern", "--search-paths with single-item search path")
("replacement also grafted"): In the builders, raise an exception on errors
and otherwise return #t. Use invoke.
| Mark H Weaver |
2018-03-27 | guix 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-27 | graph: 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-24 | tests: Add tests for "guix system disk-image" et al....* tests/guix-system.sh: Add test cases that exercise (1) all of the
example files in gnu/system/examples, and (2) all of the "image"
creation commands: vm, vm-image, disk-image, and docker-image.
| Chris Marusich |
2018-03-24 | tests: 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 |
2018-03-23 | gexp: 'program-file' has a new #:module-path parameter....* guix/gexp.scm (<program-file>): Add 'path' field.
(program-file): Add #:module-path parameter and honor it.
(program-file-compiler): Honor the 'path' field.
* tests/gexp.scm ("program-file #:module-path"): New test.
* doc/guix.texi (G-Expressions): Update.
| Ludovic Courtès |
2018-03-23 | gexp: 'gexp->script' and 'gexp->file' have a new #:module-path parameter....* guix/gexp.scm (load-path-expression): Add 'path' optional parameter.
(gexp->script): Add #:module-path and honor it.
(gexp->file): Likewise.
* tests/gexp.scm ("gexp->script #:module-path"): New test.
* doc/guix.texi (G-Expressions): Update accordingly.
| Ludovic Courtès |
2018-03-22 | publish: Always build a new derivation for the "/log/NAME" test....Fixes <https://bugs.gnu.org/30868>.
Reported by Martin Castillo <castilma@uni-bremen.de>.
* tests/publish.scm ("/log/NAME"): Use #$(random-text) in the builder.
| Ludovic Courtès |
2018-03-22 | publish: Add test for non-GET queries....* tests/publish.scm ("non-GET query"): New test.
| Ludovic Courtès |
2018-03-18 | glob: Add an extra glob pattern compilation stage....* guix/glob.scm (compile-glob-pattern): Rename to...
(string->sglob): ... this.
(compile-sglob, string->compiled-sglob): New procedures.
(glob-match?): Replace '?, 'range, and 'set with a single clause.
* tests/glob.scm (test-compile-glob-pattern): Rename to...
(test-string->sglob): ... this. Adjust accordingly.
(test-glob-match): Use 'string->compiled-sglob' instead of
'compile-glob-pattern'.
* gnu/build/linux-modules.scm (read-module-aliases): Use
'string->compiled-sglob' instead of 'compile-glob-pattern'.
| Ludovic Courtès |
2018-03-18 | glob: Support square brackets in patterns....* guix/glob.scm (wildcard-indices): Remove.
(parse-bracket): New procedure.
(compile-glob-pattern): Rewrite. Support square brackets for sets and
ranges.
(glob-match?): Support sets and ranges.
* tests/glob.scm (test-compile-glob-pattern)
(test-glob-match): New macros.
Use them to rewrite the existing tests, and add new tests.
| Ludovic Courtès |
2018-03-18 | tests: elpa: Don't actually download files....* tests/elpa.scm (eval-test-with-elpa): Mock 'url-fetch'.
| Ludovic Courtès |
2018-03-18 | import: elpa: Adjust test for HTTPS URLs....This is a followup to 44dd3d579db3aa467e41d0b431029e46cae8e12d.
* tests/elpa.scm (eval-test-with-elpa): Use https.
| Ludovic Courtès |
2018-03-15 | tests: Do not assume the bootstrap guile tarball is available locally....Fixes <https://bugs.gnu.org/30824>.
Reported by Chris Marusich <cmmarusich@gmail.com>.
* tests/packages.scm ("package-source-derivation, snippet"): Use
'bootstrap-guile-origin' instead of assuming the bootstrap guile tarball
is available locally.
| Ludovic Courtès |
2018-03-13 | gnu: time: Update to 1.9....* gnu/packages/time.scm (time): Update to 1.9.
* tests/guix-build.sh: Update time package to 1.9.
| Efraim Flashner |
2018-03-08 | hash: Add 'sha1'....* guix/hash.scm (GCRY_MD_SHA1): New macro.
(bytevector-hash): New procedure.
(sha256): Express in terms of 'bytevector-hash'.
(sha1): New procedure.
* tests/hash.scm ("sha1, empty", "sha1, hello"): New tests.
| Ludovic Courtès |
2018-03-02 | Add (guix glob)....* guix/glob.scm, tests/glob.scm: New files.
* Makefile.am (MODULES): Add guix/glob.scm.
(SCM_TESTS): Add tests/glob.scm.
| Ludovic Courtès |
2018-03-02 | environment: Add --user....This change allows overriding the home directory of all filesystem mappings to
help hide the identity of the calling user in a container.
* doc/guix.texi (Invoking guix environment)[--container]: Mention --user.
[--user]: Add item.
* guix/scripts/environment.scm (show-help): Add --user.
(%options): Add --user.
(launch-environment/container) Add 'user' parameter. Update doc. Override
'user-mappings' using 'override-user-mappings'. Consider override for chdir.
(mock-passwd, user-override-home, overrid-euser-dir): New procedures.
(guix-environment): Disallow --user without --container. Provide user to
'launch-environment/container'.
* tests/guix-environment.sh: Add user test.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Mike Gerwitz |
2018-03-02 | environment: Add --link-profile....This change is motivated by attempts to run programs (like GNU IceCat) within
containers. The 'fontconfig' program, for example, is configured explicitly
to check ~/.guix-profile for additional fonts.
There were no existing container tests in 'tests/guix-environment.sh', but I
added one anyway for this change.
* doc/guix.texi (Invoking guix environment): Add '--link-profile'.
* guix/scripts/environment.scm (show-help): Add '--link-profile'.
(%options): Add 'link-profile' as '#\P', assigned to 'link-profile?'.
(link-environment): New procedure.
(launch-environment/container): Use it when 'link-profile?'.
[link-profile?]: New parameter.
(guix-environment): Leave when '--link-prof' but not '--container'. Add
'#:link-profile?' argument to 'launch-environment/container' application.
* tests/guix-environment-container.sh: New '--link-profile' test.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Mike Gerwitz |
2018-03-01 | profiles: 'manifest-add' truly deletes duplicate entries....Fixes <https://bugs.gnu.org/30569>.
Reported by Andreas Enge <andreas@enge.fr>.
* guix/profiles.scm (manifest-add): Don't append ENTRIES as is.
Instead, cons each element of ENTRIES as we fold over it.
Remove unneeded ellispes in 'match' patterns.
| Ludovic Courtès |
2018-02-28 | build-system/trivial: Add support for #:allowed-references....* guix/build-system/trivial.scm (lower): Add #:allowed-references and
keep it in the 'arguments' field.
(trivial-build): Add #:allowed-references. Add
'canonicalize-reference'. Pass #:allowed-references to
'build-expression->derivation'.
(trivial-cross-build): Likewise.
* tests/packages.scm ("trivial with #:allowed-references"): New test.
| Ludovic Courtès |
2018-02-27 | guix package: '--search' no longer shows superseded packages....Fixes <https://bugs.gnu.org/30566>.
Reported by Björn Höfling <bjoern.hoefling@bjoernhoefling.de>.
* guix/scripts/package.scm (find-packages-by-description): Ignore
superseded packages.
* tests/guix-package.sh: Add test.
| Ludovic Courtès |
2018-02-26 | build: Require Guile >= 2.0.13....* README, configure.ac, doc/guix.texi (Requirements): Increase minimum
Guile version from 2.0.9 to 2.0.13.
* config-daemon.ac: Remove use of 'GUIX_CHECK_UNBUFFERED_CBIP'.
* m4/guix.m4 (GUIX_CHECK_UNBUFFERED_CBIP): Remove.
* guix/build/download.scm (current-http-proxy): Remove.
* guix/build/syscalls.scm (%libc-errno-pointer, errno): Remove.
(syscall->procedure): Use #:return-errno unconditionally.
* guix/hash.scm (open-sha256-input-port)[unbuffered]: Remove outdated
comment.
* guix/http-client.scm (when-guile<=2.0.5-or-otherwise-broken): Remove.
<top level>: Remove 'when-guile<=2.0.5-or-otherwise-broken' block.
* guix/scripts/substitute.scm (fetch): Remove 'guile-version>?'
conditional.
* tests/hash.scm (supports-unbuffered-cbip?): Remove.
<top level>: Remove 'test-skip' call.
| Ludovic Courtès |