licenses: Add 'bsd-style', 'expat', 'gpl1', 'gpl1+', 'lgpl2.0', and 'lgpl2.0+'.
* guix/licenses.scm (bsd-style, expat, gpl1, gpl1+)
(lgpl2.0, lgpl2.0+): New variables.
tests: Remove `t-profile' files on exit.
* tests/guix-package.sh: Use a trap on EXIT to remove profile-related
files. Reported by Andreas Enge <andreas@enge.fr>.
guix-package: Gracefully handle multiple installs of the same path.
* guix-package.in (guix-package)[process-actions]: Compute PACKAGES such
that packages listed in INSTALL* are first removed from the remainder
of the list. When PROF is equal to the previous profile's store path,
do nothing. Reported by Andreas Enge <andreas@enge.fr>.
* tests/guix-package.sh: Test the behavior of installing the same store
path twice. When removing a package, omit its version number.
Have `%nixpkgs-directory' default to #f when $NIXPKGS is the empty string.
* guix/utils.scm (%nixpkgs-directory): Set to #f when the `NIXPKGS'
environment variable is set but empty. Reported by
Andreas Enge <andreas@enge.fr>.
distro: lout: Delay use of of `nixpkgs-derivation'.
* distro/packages/lout.scm (lout): Don't fork with `nixpkgs-derivation',
to avoid any issues in the absence of `nix-instantiate'.
derivations: Distinguish direct store paths from files within a store path.
* guix/derivations.scm (derivation)[direct-store-path?]: New procedure.
Use it to determine which inputs must be added to the store.
store: Add GC-related operations.
* guix/store.scm (gc-action): New enumerate type.
(read-long-long, read-string-list, write-store-path,
write-store-path-list, read-store-path-list): New procedures.
(write-arg): Add support for `store-path' and `store-path-list'.
(read-arg): Add support for `store-path-list'.
(define-operation): Add support for multiple-value returns.
(run-gc, live-paths, dead-paths, collect-garbage, delete-paths): New
procedures.
(%long-long-max): New macro.
* tests/store.scm: New file.
* Makefile.am (TESTS): Add it.
store: Add `add-temp-root'.
* guix/store.scm (add-temp-root): New procedure.
doc: Correct short name of `--install' option of `guix-package'.
* doc/guix.texi (Invoking guix-package): Fix short form of `--install'.
Reported by Andreas Enge <andreas@enge.fr>.
Change email address in `AUTHORS'.
Add (guix licenses).
* guix/licenses.scm: New file.
* Makefile.am (MODULES): Add it.
distro: Add ACL.
* distro/packages/acl.scm: New file. Dependency on Perl added by
Ludovic.
* Makefile.am (MODULES): Add it.
distro: Add Attr.
* distro/packages/attr.scm: New file. Dependency on Perl and
`patch-shebang' added by Ludovic.
* Makefile.am (MODULES): Add it.
Add (guix gnu-maintenance).
* guix/gnu-maintenance.scm: New file.
* Makefile.am (MODULES): Add it.
guix-build: Don't connect to the daemon when run with `--version' or `--help'.
* guix-build.in (%store): Turn into a SRFI-39 parameter. Update users.
(guix-build): Set %STORE and call `open-connection' only after
`parse-options' has been called.
store: Honor $NIX_STORE_DIR and $NIX_STATE_DIR.
* guix/store.scm (%nix-state-dir): Honor $NIX_STATE_DIR.
(%store-prefix): Honor $NIX_STORE_DIR.