| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
|
|
| |
* guix/derivations.scm (imported-files): Keep private.
(%imported-modules, %compiled-modules, build-expression->derivation):
Mark as deprecated.
(imported-modules, compiled-modules): Remove.
* guix/gexp.scm (%mkdir-p-definition): New variable.
(imported-files, search-path*, imported-modules, compiled-modules):
New procedures.
* tests/derivations.scm ("imported-files"): Remove.
* tests/gexp.scm ("imported-files", "gexp->derivation #:modules"): New
tests.
|
|
|
|
|
|
| |
* guix/store.scm (text-file): Add optional 'references' parameter. Pass
it to 'add-text-to-store'.
* doc/guix.texi (The Store Monad): Adjust accordingly.
|
|
|
|
|
|
|
|
| |
* guix/gexp.scm (lower-references): New procedure.
(gexp->derivation): Add #:allowed-references and honor it.
* tests/gexp.scm ("gexp->derivation #:allowed-references",
"gexp->derivation #:allowed-references, disallowed"): New tests.
* doc/guix.texi (G-Expressions): Update 'gexp->derivation' doc.
|
|
|
|
|
| |
* guix/derivations.scm (graft-derivation)[build]: Add call to
'force-output'.
|
|
|
|
| |
* guix/scripts/lint.scm (probe-uri): handle FTP URIs.
|
|
|
|
|
|
|
|
|
|
| |
Reported by Andreas Enge <andreas@enge.fr>
at <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=19764#19>.
* guix/profiles.scm (manifest-transaction-effects): Use 'version>=?'
instead of 'version>?'.
* tests/profiles.scm ("manifest-transaction-effects and
pseudo-upgrades"): New test.
|
|
|
|
|
| |
* guix/utils.scm (version>?): Clarify docstring.
(version>=?): New procedure.
|
|
|
|
|
|
|
| |
* guix/build-system/waf.scm,
guix/build/waf-build-system.scm: New files.
* Makefile.am (MODULES): Add them.
* doc/guix.texi (Build Systems): Document waf-build-system.
|
|
|
|
|
|
|
|
|
|
| |
Fixes <http://bugs.gnu.org/19764>.
* guix/profiles.scm (manifest-transaction-effects): Return downgraded
packages as a fourth value.
* guix/ui.scm (show-manifest-transaction): Adjust accordingly.
* tests/profiles.scm ("manifest-transaction-effects and downgrades"):
New test.
|
|
|
|
|
|
| |
This is a followup to 46b8aad.
* guix/ui.scm (call-with-error-handling): Add 'nar-error?' case.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes <http://bugs.gnu.org/19756>.
Reported by <sleep_walker@suse.cz>.
* guix/serialization.scm (currently-restored-file): New variable.
(get-bytevector-n*): New procedure.
(read-int, read-long-long, read-string, read-latin1-string,
read-contents): Use it instead of 'get-bytevector-n'.
(restore-file): Parameterize 'currently-restored-file' and set it.
* tests/nar.scm ("restore-file with incomplete input"): New test.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before that, any profile generation built when '-p' is used would
effectively become a permanent GC root because the symlink in
/var/guix/gcroots/auto would point directly to /gnu/store/...-profile.
* guix/scripts/package.scm (maybe-register-gc-root): Rename to...
(register-gc-root): ... this. Remove conditional, and replace call to
'canonicalize-path' with (string-append (getcwd) "/" ...).
(guix-package): Call 'register-gc-root' only if PROFILE is different
from %CURRENT-PROFILE.
* tests/guix-package.sh: Add test case.
|
|
|
|
|
|
|
|
|
|
| |
Before that, if two users on the same machine ran 'guix pull', the
second one would have the "Guix already up to date" message and their
~/.config/guix/latest link would be left unchanged---effectively
preventing them from updating.
* guix/scripts/pull.scm (build-and-install): Install the 'latest'
symlink regardless of whether TO-DO? is true or false.
|
|
|
|
|
|
|
|
| |
Suggested by Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>.
* guix/scripts/offload.scm (register-gc-root)[script]: Replace
'false-if-exception' with a finer-grain 'system-error handler.
Provide the name of MACHINE in 'leave' error message.
|
|
|
|
|
|
|
|
| |
Suggested by Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>.
* guix/scripts/offload.scm (remote-pipe): Remove unneeded 'catch'.
(machine-load): Check the exit value upon (close-pipe pipe). Call
'warning' when it is non-zero.
|
|
|
|
|
| |
* guix/cvs-download.scm, guix/build/cvs.scm: New files.
* Makefile.am (MODULES): Add them.
|
|
|
|
| |
* guix/svn-download.scm (svn-fetch): Remove outdated comment.
|
|
|
|
|
|
| |
* guix/scripts/environment.scm (for-each-search-path): Iterate over all
derivation output paths.
(packages->transitive-inputs): Process inputs that specify an output, too.
|
|
|
|
|
|
|
| |
* guix/store.scm (build-derivations): Remove.
* guix/derivations.scm (build-derivations): Write in terms of
'build-things'.
* doc/guix.texi (Invoking guix build): Adjust text accordingly.
|
|
|
|
|
|
|
|
|
|
| |
* guix/store.scm (operation-id): Rename 'build-derivations' to
'build-things', as per Nix commit 1aba0bf0.
(build-derivations): Rename to...
(build-things): ... this. Keep 'build-derivations' as an alias.
(build): New procedure.
* tests/store.scm ("build-things with output path",
"substitute + build-things with output path"): New tests.
|
|
|
|
|
|
|
|
|
| |
* guix/tests.scm (%substitute-directory): New variable.
(call-with-derivation-narinfo): Use it.
(call-with-derivation-substitute): New procedure.
(with-derivation-substitute): New macro.
* tests/store.scm ("substitute"): Use 'with-derivation-substitute'.
("substitute, corrupt output hash"): Likewise.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* guix/tests.scm (derivation-narinfo): Turn 'nar' into a keyword
parameter. Add #:sha256 parameter, and honor it.
(call-with-derivation-narinfo): Add #:sha256 and pass it to
'derivation-narinfo'.
(with-derivation-narinfo): Extend with support for (sha256 => value).
* tests/store.scm ("substitute query"): Use 'with-derivation-narinfo'.
("substitute"): Likewise.
("substitute, corrupt output hash"): Likewise.
("substitute --fallback"): Likewise.
* tests/derivations.scm: Remove Emacs local variable.
|
|
|
|
| |
* guix/ui.scm (show-version-and-exit): Increment copyright year.
|
|
|
|
|
|
|
|
| |
* guix/scripts/lint.scm (%options) <--checkers>: Remove 'arg-handler'
parameter, and return a single value.
(guix-lint)[parse-options]: Remove 'arg-handler' parameter from
handlers. Remove second seed to 'args-fold*'.
* tests/guix-lint.sh: Add test.
|
|
|
|
|
| |
* guix/scripts/substitute-binary.scm (open-cache*): New macro.
(guix-substitute-binary): Use it instead of (delay (open-cache ...)).
|
|
|
|
|
|
|
|
|
| |
Fixes <http://bugs.gnu.org/19677>.
Reported by Mark H Weaver <mhw@netris.org>.
* guix/hash.scm: Use (guix gcrypt).
(sha256, open-sha256-md, md-write, md-close): Use 'libgcrypt-func'
instead of 'dynamic-func'.
|
|
|
|
|
|
|
| |
* guix/gcrypt.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/pk-crypto.scm: Use it.
(libgcrypt-func, gcrypt-version): Remove.
|
|
|
|
|
|
|
|
| |
Before that it would check all the URIs of each package.
* guix/scripts/lint.scm (validate-uri): Really return #f on failure and
#t otherwise.
(check-source): Replace 'for-each' with 'any'.
|
|
|
|
|
| |
* guix/scripts/lint.scm (validate-uri?): New procedure.
(%checkers): Add 'source' checker
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes <http://bugs.gnu.org/19630>.
Reported by Ricardo Wurmus <ricardo.wurmus@mdc-berlin.de>.
* guix/derivations.scm (&derivation-error,
&derivation-missing-output-error): New error conditions.
(derivation->output-path): Raise a '&derivation-missing-output-error'
if OUTPUT is not an output of DRV.
* guix/ui.scm (call-with-error-handling): Add case for
'derivation-missing-output-error?'.
(show-what-to-build): Check whether (derivation-outputs drv) is
empty.
* tests/packages.scm ("reference to non-existent output"): Add test.
|
|
|
|
|
|
|
| |
Fixes an Evince regression introduced in commit 3d243e9.
* guix/build/glib-or-gtk-build-system.scm (data-directories): Check the
/mime sub-directory.
|
|
|
|
|
|
| |
* guix/ui.scm (report-error): Export.
* guix/scripts/system.scm (read-operating-system): Report syntax errors
using standard GNU format. Report other errors using 'display-error'.
|
|
|
|
|
| |
* guix/store.scm (run-with-store): Wrap 'run-with-state' in
'call-with-values'. Return only the first value.
|
|
|
|
|
|
|
|
| |
Reported by Andreas Enge <andreas@enge.fr>.
* guix/scripts/package.scm (with-null-error-port): New macro.
(search-path-environment-variables): Wrap 'search-path-as-list' call
in 'with-null-error-port'.
|
|
|
|
|
|
| |
* guix/packages.scm (<origin>)[patches]: Mark as 'delayed'.
(print-origin, origin->derivation): Add call to 'force' when accessing
'patches'.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* guix/records.scm (make-syntactic-constructor): Add #:delayed
parameter.
[delayed-field?]: New procedure.
[wrap-field-value]: Use it.
(define-record-type*)[delayed-field?, wrapped-field?]: New procedures.
[thunked-field-accessor-name]: Rename to...
[wrapped-field-accessor-name]: ... this.
[field-spec->srfi-9]: Change 'thunked' to 'wrapped'.
[delayed-field-accessor-definition]: New procedure.
Compute delayed-field accessors and emit them. Pass #:delayed to
'make-syntactic-constructor'.
* tests/records.scm ("define-record-type* & delayed",
"define-record-type* & delayed & default",
"define-record-type* & delayed & inherited"): New tests.
|
| |
|
|
|
|
|
|
| |
* guix/records.scm (make-syntactic-constructor)[wrap-field-value]: New
procedure.
[field-bindings, field-value]: Use it.
|
|
|
|
|
| |
* guix/records.scm (make-syntactic-constructor): New procedure, formerly
nested in 'define-record-type*'.
|
|
|
|
|
|
|
| |
* guix/records.scm (define-record-type*)[make-syntactic-constructor]:
Turn THUNKED and DEFAULTS into keyword arguments.
Adjust caller accordingly. Declare 'thunked' and 'defaults' local
variables.
|
|
|
|
|
|
|
|
| |
Fixes <http://bugs.gnu.org/19610>.
Reported by Mark H Weaver <mhw@netris.org>.
* guix/nar.scm (restore-one-item): Use 'read-latin1-string' to read the
signature.
|
|
|
|
|
|
| |
* guix/serialization.scm (read-latin1-string): Use 'get-bytevector-n'
instead of 'get-string-n'. Use 'list->string' etc. to convert the
bytevector to a string.
|
|
|
|
|
| |
* guix/store.scm (preserve-documentation): New procedure.
(store-lift, store-lower): Use it.
|
|
|
|
|
|
| |
* doc/guix.texi (The Store Monad): Document '%state-monad' and related
procedures. Describe '%store-monad' as an alias for '%state-monad'.
* guix/monads.scm: Update commentary.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* guix/store.scm (define-alias): New macro.
(%store-monad, store-return, store-bind): Define as aliases of the
corresponding %STATE-MONAD part.
(store-lift, text-file, interned-file): Return STORE as a second
value.
(run-with-store): Use 'run-with-state'.
* guix/packages.scm (set-guile-for-build, package-file): Return STORE as
a second value.
* guix/monads.scm: Remove part of the module commentary.
|
|
|
|
|
|
|
|
|
|
|
| |
* guix/monads.scm (state-return, state-bind, run-with-state,
current-state, set-current-state, state-push, state-pop): New
procedures.
(%state-monad): New variable.
* tests/monads.scm (%monads): Add %STATE-MONAD.
(%monad-run): Add 'run-with-state'.
(values->list): New macro.
("set-current-state", "state-push etc."): New tests.
|
|
|
|
|
|
|
| |
* guix/scripts/archive.scm (show-help, %options): Add -r/--recursive.
(export-from-store): Pass #:recursive? to 'export-paths'.
* doc/guix.texi (Invoking guix archive): Add -r in Emacs example. Add
example with ~/.guix-profile. Document -r/--recursive.
|
|
|
|
| |
* guix/scripts/archive.scm (%options): Remove -r/--root.
|
|
|
|
| |
* guix/store.scm (export-paths): Remove unused variable 's'.
|
|
|
|
|
|
|
| |
* guix/store.scm (export-paths): Add #:recursive? parameter and honor
it.
* tests/store.scm ("export/import incomplete", "export/import
recursive"): New tests.
|