| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
|
| |
* guix/import/cabal.scm: New file.
* guix/import/hackage.scm: Update to use the new Cabal parsing module.
* tests/hackage.scm: Update tests.
* guix/scripts/import/hackage.scm: Add new '--cabal-environment' and '--stdin'
options.
* doc/guix.texi: ... and document them.
* Makefile.am (MODULES): Add 'guix/import/cabal.scm',
'guix/import/hackage.scm' and 'guix/scripts/import/hackage.scm'.
(SCM_TESTS): Add 'tests/hackage.scm'.
|
|
|
|
|
|
|
|
|
|
| |
Suggested by Federico Beffa <beffa@fbengineering.ch>.
* guix/monads.scm (bind-syntax): New macro.
(with-monad): Use it instead of 'identifier-syntax'.
* tests/monads.scm (">>= with more than two arguments"): New test.
* doc/guix.texi (The Store Monad): Explain that there can be several MPROC.
Add an example.
|
|
|
|
|
|
|
|
|
|
| |
* guix/scripts/import.scm (show-help): Add newline before a list of
importers.
* guix/scripts/lint.scm (show-help): Split a long description line.
* guix/scripts/package.scm (show-help): Improve docstrings for --install
and --remove options.
* guix/scripts/system.scm (show-help): Format actions the same way as
guix commands and importers are formatted.
|
|
|
|
|
|
|
| |
* guix/scripts/gc.scm (show-help, %options): Add --verify.
(guix-gc): Handle it.
* doc/guix.texi (Invoking guix gc): Document --verify, and move --optimize
description right below it.
|
|
|
|
|
|
|
|
| |
* guix/store.scm (operation-id): Add 'verify-store'.
(verify-store): New procedure.
(set-build-options): Adjust comment.
* tests/store.scm ("verify-store", "verify-store + check-contents"): New
tests.
|
|
|
|
| |
* guix/scripts/package.scm (show-help): Align '--show' option properly.
|
|
|
|
| |
* guix/licenses.scm (opl1.0+): New variable.
|
|
|
|
|
|
|
| |
* guix/gexp.scm (<plain-file>): New type.
(plain-file, plain-file-compiler): New procedures.
* tests/gexp.scm ("one plain file"): New test.
* doc/guix.texi (G-Expressions): Document 'plain-file'.
|
|
|
|
|
| |
* guix/gexp.scm (local-file-file, local-file-name, local-file-recursive?):
Export.
|
|
|
|
|
|
|
|
| |
Reported by Mark H Weaver.
* guix/gnu-maintenance.scm (latest-release): Add 'result' parameter to
'loop'. When entering a sub-directory, use the current directory's latest
release as 'result'. This fixes the code for 'gnu-pw-mgr' and 'sharutils'.
|
|
|
|
|
|
|
| |
* guix/scripts/lint.scm (call-with-accumulated-warnings): New procedure.
(with-accumulated-warnings): New macro.
(check-source): Add 'try-uris' and use it. Emit warnings only upon
failure.
|
|
|
|
| |
* guix/scripts/lint.scm (validate-uri): Always return #f on failure.
|
|
|
|
|
|
|
|
| |
Suggested by Christopher Allan Webber <cwebber@dustycloud.org>.
* guix/base32.scm (&invalid-base32-character): New error condition.
(make-base32-string->bytevector): Use it instead of 'error'.
* tests/base32.scm ("&invalid-base32-character"): New test.
|
|
|
|
|
| |
* guix/ui.scm (report-load-error, warn-about-load-error, read/eval): Add
clause for SRFI-34 exceptions.
|
|
|
|
|
| |
* guix/scripts/package.scm: Export 'display-search-paths'.
* emacs/guix-main.scm (process-package-actions): Use it.
|
|
|
|
|
|
|
|
| |
* guix/scripts/environment.scm (%options): Add "ad-hoc" option.
(show-help): Display help for "--ad-hoc".
(packages+propagated-inputs): New procedure.
(guix-environment): Create ad hoc environment when asked.
* doc/guix.texi ("invoking guix environment"): Document it.
|
|
|
|
|
|
|
| |
Reported by Mark H Weaver <mhw@netris.org>.
* guix/profiles.scm (gtk-icon-themes)[build]: Check whether DIR is a directory
before calling 'ensure-writable-directory'.
|
|
|
|
|
|
| |
* guix/build/profiles.scm (ensure-writable-directory): Export.
* guix/profiles.scm (gtk-icon-themes)[build]: Remove '@@' form and use (guix
build profiles).
|
|
|
|
|
|
|
|
|
| |
Reported by Ricardo Wurmus.
* guix/profiles.scm (gtk-icon-themes)[entry-lookup-gtk+](find-among-packages):
Rename to...
(find-among-inputs): ... this. Check whether INPUT is a package before
calling 'package-name'. Fixes a regression introduced in b04af0e.
|
|
|
|
|
|
|
| |
Fixes a regression introduced in 07eaecfa.
* guix/profiles.scm (profile-derivation): Use 'derivation?' instead of
'gexp?' to filter hooks.
|
|
|
|
|
| |
* guix/profiles.scm (gtk-icon-themes): New function.
(%default-profile-hooks): Add it.
|
|
|
|
|
|
| |
* guix/monads.scm (foldm, mapm, anym): Change to take a list of regular
values as is customary.
* tests/monads.scm ("mapm", "anym"): Adjust accordingly.
|
|
|
|
|
|
|
|
|
| |
Suggested by 宋文武 <iyzsong@gmail.com>.
* guix/profiles.scm (ghc-package-cache-file): Return a monadic #f, not just
#f, when MANIFEST contains no GHC package.
(profile-derivation): Do not filter based on the return value of HOOK;
instead filter based on the value of items in EXTRAS.
|
|
|
|
|
|
|
|
|
|
| |
The effect is visible on commands like:
guix build -e '(+ 2 "foo")'
guix build -e '()'
* guix/ui.scm (read/eval): Change handler to properly report syntax errors and
use 'display-error' for other errors.
|
|
|
|
|
|
|
|
|
|
| |
Fixes <http://bugs.gnu.org/19757>.
* guix/scripts/gc.scm (guix-gc): Convert paths to direct store paths.
* guix/store.scm (direct-store-path): Get rid of subdirectories in store path.
* tests/guix-gc.sh: New tests.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
|
|
|
|
|
|
|
|
|
|
| |
* guix/ui.scm (load*): Add #:on-error parameter.
[tag, error-string]: New variables.
Wrap 'load' call in 'call-with-prompt'. Pass TAG to 'make-stack'. Honor
ON-ERROR after 'report-load-error' call.
(report-load-error): Change to not exit on error. Make private.
* guix/scripts/system.scm (show-help, %options): Add --on-error.
(guix-system): Use 'load*' and pass it #:on-error.
|
|
|
|
|
|
|
| |
* guix/scripts/package.scm (guix-package)[process-actions]: Process 'manifest
action regardless of whether 'dry-run? is set. Adjust the message
accordingly.
* tests/guix-package.sh: Add error-reporting test.
|
|
|
|
|
|
|
|
|
|
|
| |
Reported by Christian Grothoff.
* guix/ui.scm (load*): Add 'frame-with-source'. Set
%load-should-auto-compile. Change error handle to just (exit 1). Add
pre-unwind handler to capture the stack and call 'report-load-error'.
(report-load-error): Add optional 'frame' parameter and pass it to
'display-error'.
* tests/guix-system.sh: Add "unbound variable" test.
|
|
|
|
|
| |
* guix/ui.scm (symlink): Change next-to-last 'throw' argument to explicitly
ignore ARGS; change last argument to (list errno).
|
|
|
|
| |
* guix/ui.scm (copy-file): New procedure.
|
|
|
|
|
|
|
|
| |
Fixes <http://bugs.gnu.org/20591>.
Reported by Daniel Pimentel <d4n1@openmailbox.org>.
* guix/scripts/system.scm (install): Copy the closure of GRUB.CFG rather than
that of OS-DIR.
|
|
|
|
|
|
| |
* guix/scripts/system.scm (grub.cfg): Remove.
(perform-action): Call 'operating-system-grub.cfg' with the empty list as
the 2nd argument when ACTION is 'init.
|
|
|
|
|
|
|
| |
Suggested by Mark H Weaver <mhw@netris.org>.
* guix/scripts/system.scm (install): Add 'chown' and 'chmod' calls for TARGET
when running as root, and warn otherwise.
|
|
|
|
|
| |
* gnu/services/base.scm (swap-service)[start, stop]: Use 'restart-on-EINTR'.
* guix/build/syscalls.scm (swapoff): Fix typo in 'throw' arguments.
|
|
|
|
|
| |
* guix/build/syscalls.scm (call-with-restart-on-EINTR): New procedure.
(restart-on-EINTR): New macro.
|
|
|
|
|
| |
* guix/scripts/package.scm (show-help): Add KIND parameter for
--search-paths as a followup to dbc31ab.
|
|
|
|
|
|
|
|
| |
module.
* guix/scripts/build.scm (set-build-options-from-command-line*): New
procedure.
* guix/scripts/environment.scm (set-build-options-from-command-line*): Delete.
|
|
|
|
|
|
|
| |
* guix/ui.scm (show-what-to-build*): New procedure.
* guix/scripts/environment.scm (show-what-to-build*): Delete.
* guix/scripts/system.scm (show-what-to-build*): Likewise.
* build-aux/make-binary-tarball.scm (show-what-to-build*): Likewise.
|
|
|
|
|
|
|
|
| |
* guix/scripts/package.scm (show-help): Add help text.
(%options): Add manifest option.
(guix-package): Add manifest option handler.
* doc/guix.texi ("Invoking guix package"): Document it.
* tests/guix-package.sh: Add test.
|
|
|
|
| |
* guix/profiles.scm (packages->manifest): New procedure.
|
|
|
|
|
|
|
| |
* guix/ui.scm (make-user-module, load*): New procedures.
* guix/scripts/system.scm (%user-module): Define in terms of
'make-user-module'.
(read-operating-system): Define in terms of load*'.
|
|
|
|
|
| |
* guix/ftp-client.scm (ftp-open): When '%ftp-listen' returns something
different from 220, throw instead of writing an error message.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* guix/scripts/package.scm (search-path-environment-variables): Add #:kind
parameter. Pass it to 'environment-variable-definition'.
(display-search-paths): Add #:kind parameter and pass it to
'search-path-environment-variables'.
(%options): Add an optional parameter for "--search-paths".
(guix-package)[process-query]: Handle it.
* tests/guix-package-net.sh: Adjust existing test.
* tests/guix-package.sh: Adjust existing tests and add new test.
* doc/guix.texi (Invoking guix package): Document it.
|
|
|
|
|
| |
* guix/scripts/package.scm (search-path-environment-variables): Add $PATH to
SEARCH-PATHS.
|
|
|
|
|
| |
* guix/scripts/gc.scm (show-help, %options): Add --optimize.
(guix-gc): Handle it.
|
|
|
|
|
| |
* guix/store.scm (operation-id): Add 'optimize-store'.
(optimize-store): New procedure.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes a bug whereby 'guix package -i gcc-toolchain' would fail in
'build-profile'. This is because in 'gcc-toolchain', etc/ is a symlink,
and so the 'scandir' call in 'unsymlink' would return #f instead of
returning a list.
Reported by Andreas Enge <andreas.enge@inria.fr>.
* guix/build/profiles.scm (ensure-writable-directory)[unsymlink]: Append
"/" to TARGET before calling 'scandir'.
* tests/profiles.scm ("etc/profile when etc/ is a symlink"): New test.
|
|
|
|
| |
* guix/build/syscalls.scm (set-network-interface-up): New procedure.
|
|
|
|
|
|
|
|
|
|
|
| |
* guix/scripts/publish.scm (show-help, %options): Add --listen.
(getaddrinfo*): New procedure.
(%default-options): Add 'address'.
(open-server-socket): Replace 'addr' and 'port' with 'address', a
sockaddr.
(guix-publish): Adjust accordingly. Augment "publishing" message with
the actual address.
* doc/guix.texi (Invoking guix publish): Document it.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* guix/scripts/publish.scm (show-help): Add --user.
(%options): Likewise.
(run-publish-server): Change 'port' parameter to 'socket'. Pass
#:socket instead of #:addr and #:port to 'run-server'. Update caller
accordingly.
(open-server-socket, gather-user-privileges): New procedures.
(guix-publish): Use them. Force %PRIVATE-KEY and %PUBLIC-KEY early
on. Warn when running as root.
* doc/guix.texi (Invoking guix publish): Document --user.
|