Age | Commit message (Expand) | Author |
2013-04-12 | substitute-binary: Correctly handle missing narinfos in `--query' mode.•••* guix/scripts/substitute-binary.scm (guix-substitute-binary)["--query"]("have",
"info"): Filter SUBSTITUTABLE through `narinfo?'.
| Ludovic Courtès |
2013-04-11 | ui: Add a `warning' macro.•••* guix/ui.scm (program-name, guix-warning-port): New variables.
(warning): New macro.
(guix-main): Parametrize PROGRAM-NAME.
* guix/scripts/build.scm, guix/scripts/download.scm,
guix/scripts/gc.scm, guix/scripts/package.scm: Adjust to use `leave'
and `warning' consistently.
| Ludovic Courtès |
2013-04-04 | substitute-binary: Fix communication of several store paths to the daemon.•••* guix/scripts/substitute-binary.scm (guix-substitute-binary)["--query"]:
Emit blank lines only after the complete list of store paths has been
returned.
| Ludovic Courtès |
2013-04-03 | Add preliminary binary substituter.•••* guix/scripts/substitute-binary.scm: New file.
* Makefile.am (MODULES): Add it.
* nix/scripts/substitute-binary.in: New file.
* config-daemon.ac: Produce nix/scripts/substitute-binary.
* daemon.am (nodist_pkglibexec_SCRIPTS): Add
nix/scripts/substitute-binary.
* guix/store.scm (substitutable-path-info): Use the
`query-substitutable-path-infos' RPC.
* nix/nix-daemon/guix-daemon.cc (main): Honor `NIX_SUBSTITUTERS'.
* pre-inst-env.in: Set `NIX_SUBSTITUTERS'.
* test-env.in: Leave `NIX_SUBSTITUTERS' unchanged. Set
`GUIX_BINARY_SUBSTITUTE_URL, and create
$NIX_STATE_DIR/substituter-data.
Run `guix-daemon' within `./pre-inst-env'.
* tests/store.scm ("substitute query"): New test.
| Ludovic Courtès |
2013-03-31 | pull: Switch to the cgit URL.•••* guix/scripts/pull.scm (%snapshot-url): Switch to the cgit URL, given
that the Hydra one is not currently available.
| Ludovic Courtès |
2013-03-18 | guix package: Report packages to be removed/installed.•••* guix/scripts/package.scm (guix-package)[process-actions](show-what-to-remove/install):
New procedure.
Call it before `show-what-to-build'.
| Ludovic Courtès |
2013-03-16 | guix package: Gracefully handle `official-gnu-packages' failure.•••* guix/gnu-maintenance.scm (http-fetch): Error out when DATA is #f.
* guix/scripts/package.scm (check-package-freshness): Wrap
`gnu-package?' call in `false-if-exception'.
Reported by Cyril Roelandt <tipecaml@gmail.com>.
| Ludovic Courtès |
2013-03-07 | ui: Gracefully report failures to connect to the daemon.•••* guix/store.scm (&nix-connection-error): New condition type.
(open-connection): Translate `system-error' during the `connect' call
into `&nix-connection-error'.
* guix/ui.scm (call-with-error-handling): Add case for `nix-connection-error?'.
* guix/scripts/package.scm (guix-package): Move `open-connection' call
within `with-error-handling'.
* guix/scripts/pull.scm (guix-pull): Likewise.
* guix/scripts/download.scm (guix-download): Move body within
`with-error-handling'.
| Ludovic Courtès |
2013-03-05 | guix package: Recover from freshness check transient errors.•••* guix/scripts/package.scm (check-package-freshness): Ignore
`getaddrinfo-error' and `ftp-error' exceptions.
| Ludovic Courtès |
2013-03-05 | guix package: Inform about new upstream versions of GNU packages.•••* guix/gnu-maintenance.scm (gnu-package?): New procedure.
* guix/scripts/package.scm (waiting): New macro.
(check-package-freshness): New procedure.
(guix-package)[process-actions]: Use it.
* doc/guix.texi (Invoking guix package): Mention the feature.
| Ludovic Courtès |
2013-03-01 | ui: Factorize `read/eval-package-expression'.•••* guix/scripts/package.scm (read/eval-package-expression): Move to...
* guix/ui.scm (read/eval-package-expression): ... here.
* guix/scripts/build.scm (derivations-from-package-expressions): Use it.
| Ludovic Courtès |
2013-03-01 | guix package: Add `--install-from-expression'.•••* guix/scripts/package.scm (read/eval-package-expression): New
procedure.
(show-help): Add `-e'.
(%options): Likewise.
(guix-package)[process-actions]: Handle ('install . p) pairs, where P
is a package.
* tests/guix-package.sh: Add `boot_make_drv'. Use `-i $boot_make_drv'
once, and then use `-e $boot_make'.
* doc/guix.texi (Invoking guix package): Document `-e'.
| Ludovic Courtès |
2013-02-27 | guix gc: Add `--references' and `--referrers'.•••* guix/scripts/gc.scm (show-help): Update.
(%options): Add `--references' and `--referrers'.
(guix-gc)[symlink-target, store-directory]: New procedures.
Handle the `list-references' and `list-referrers' actions.
* tests/guix-gc.sh: Add tests for `--references'.
* doc/guix.texi (Invoking guix gc): Document `--references' and
`--referrers'.
| Ludovic Courtès |
2013-02-22 | pull: Distinguish "already up to date" from "updated".•••* guix/ui.scm (show-what-to-build): Return (length req*).
* guix/scripts/pull.scm (guix-pull): Print an "already up to date"
message when there's nothing to build.
| Ludovic Courtès |
2013-02-22 | pull: Build (guix build download) first, because of the (gnutls) autoload.•••* guix/scripts/pull.scm (unpack): Build (guix build download) first, as
done in 855a8ad71def2ebc594ed32c57bda0ca4e13d91c.
Reported by Andreas Enge <andreas@enge.fr>.
| Ludovic Courtès |
2013-02-20 | Add "guix pull".•••* guix/scripts/pull.scm: New file.
* Makefile.am (MODULES): Add it.
* doc/guix.texi (Invoking guix pull): New node.
(Invoking guix package): Add cross-ref to it.
* guix/ui.scm (config-directory): New procedure.
* scripts/guix.in: When `GUIX_UNINSTALLED' is undefined, add
$XDG_CONFIG_HOME/guix/latest to the search path.
* po/POTFILES.in: Add guix/scripts/pull.scm.
| Ludovic Courtès |
2013-02-20 | ui: Factorize `show-what-to-build'.•••* guix/scripts/package.scm (guix-package)[show-what-to-build]: Move to..
* guix/ui.scm (show-what-to-build): ... here. Add a `store'
parameter'. Adjust callers.
* guix/scripts/build.scm (guix-build): Use it. Remove `req' and `req*'
variables.
| Ludovic Courtès |
2013-02-20 | ui: Add temporary file handling and atomic symlink switch.•••* guix/scripts/download.scm (call-with-temporary-output-file): Move to
ui.scm.
* guix/scripts/package.scm (switch-symlinks): Likewise.
* guix/ui.scm (call-with-temporary-output-file, switch-symlinks): New
procedures.
| Ludovic Courtès |
2013-02-17 | scripts: Remove hyphen in the command name shown by `--version'.•••* guix/scripts/build.scm (%options): Remove hyphen from the name passed
to `show-version-and-exit'.
* guix/scripts/download.scm (%options): Likewise.
* guix/scripts/gc.scm (%options): Likewise.
* guix/scripts/import.scm (%options): Likewise.
* guix/scripts/package.scm (%options): Likewise.
| Ludovic Courtès |
2013-02-17 | scripts: Remove initialization now redundant with `initialize-guix'.•••* guix/scripts/build.scm (guix-build): Remove calls to `install-locale',
`textdomain', etc., now redundant with `initialize-guix'.
* guix/scripts/download.scm (guix-download): Likewise.
* guix/scripts/import.scm (guix-import): Likewise.
* guix/scripts/package.scm (guix-package): Likewise.
* guix/ui.scm: Remove export of `install-locale' and `initialize-guix'.
(initialize-guix): Add docstring.
| Ludovic Courtès |
2013-02-16 | Replace individual scripts with master 'guix' script.•••* scripts/guix.in: New script.
* Makefile.am (bin_SCRIPTS): Add 'scripts/guix'. Remove 'guix-build',
'guix-download', 'guix-import', 'guix-package', and 'guix-gc'.
(MODULES): Add 'guix/scripts/build.scm', 'guix/scripts/download.scm',
'guix/scripts/import.scm', 'guix/scripts/package.scm', and
'guix/scripts/gc.scm'.
* configure.ac (AC_CONFIG_FILES): Add 'scripts/guix'. Remove 'guix-build',
'guix-download', 'guix-import', 'guix-package', and 'guix-gc'.
* guix-build.in, guix-download.in, guix-gc.in, guix-import.in,
guix-package.in: Remove shell script boilerplate. Move to guix-COMMAND.in
to guix/scripts/COMMAND.scm. Rename module from (guix-COMMAND) to
(guix scripts COMMAND). Change "guix-COMMAND" to "guix COMMAND" in
usage help string.
* pre-inst-env.in: Add "@abs_top_builddir@/scripts" to the front of $PATH.
Export $GUIX_UNINSTALLED.
* tests/guix-build.sh, tests/guix-daemon.sh, tests/guix-download.sh,
tests/guix-gc.sh, tests/guix-package.sh: Use "guix COMMAND" instead of
"guix-COMMAND".
* doc/guix.texi: Replace all occurrences of "guix-COMMAND" with
"guix COMMAND".
* po/POTFILES.in: Update.
| Mark H Weaver |