summaryrefslogtreecommitdiff
path: root/guix/store.scm
AgeCommit message (Collapse)Author
2012-11-01store: Add `store-path-package-name'.Ludovic Courtès
* guix/store.scm (store-path-package-name): New procedure. * tests/utils.scm ("store-path-package-name"): New test.
2012-10-30guix-build: Add `--root'.Ludovic Courtès
* guix/store.scm (add-indirect-root): New operation. * guix-build.in (show-help): Document `--root'. (%options): Add `--root'. (guix-build)[register-root]: New procedure. Call it when `--root' is passed.
2012-10-24store: Add `query-path-hash'.Ludovic Courtès
* guix/store.scm (write-arg, read-arg): Add `base16' literal and corresponding rule. (query-path-hash): New operation. * tests/derivations.scm ("fixed-output derivation"): Check whether `query-path-hash' returns a bytevector.
2012-10-13distro: Add a statically-linked, relocatable Guile 2.0 package.Ludovic Courtès
* distro/packages/base.scm (%guile-static, %guile-static-stripped): New variables. * distro/patches/guile-relocatable.patch: New file. * Makefile.am (dist_patch_DATA): Add it.
2012-09-01Optimize `store-path?'.Ludovic Courtès
* guix/store.scm (store-path?): Check with `string-prefix?' instead of a regexp.
2012-08-22Add `close-connection'.Ludovic Courtès
* guix/store.scm (close-connection): New procedure.
2012-07-02Upgrade Nix worker protocol.Ludovic Courtès
We were already relying on the new version in `set-build-options', so this patch fixes that. * guix/store.scm (%protocol-version): Increase. (open-connection)[reserve-space?]: New argument. Pass it to the server when it's recent enough.
2012-07-01Add the `valid-path?' RPC.Ludovic Courtès
* guix/store.scm (valid-path?): New procedure. * tests/builders.scm ("http-fetch", "gnu-build"): Use it. * tests/derivations.scm ("add-to-store, flat", "add-to-store, recursive", "derivation with no inputs", "build derivation with 1 source", "build derivation with coreutils", "build-expression->derivation with expression returning #f"): Likewise.
2012-07-01Add missing `set-build-options' parameters.Ludovic Courtès
* guix/store.scm (set-build-options)[build-cores, use-substitutes?]: New keyword parameters. [send]: Change to expect a type, and use `write-arg'. Send settings for BUILD-CORES and USE-SUBSTITUTES? when the server supports it.
2012-06-16store: Wait for the server to be done sending output.Ludovic Courtès
* guix/store.scm (current-build-output-port): New variable. (process-stderr): Add docstring. Always return #f, except upon %STDERR-LAST. Upon %STDERR-NEXT, write to `current-build-output-port', not `current-error-port'. (set-build-options): Loop until `process-stderr' returns true. (define-operation): Likewise. (build-derivations): Update docstring to mention that it's synchronous.
2012-06-10Add `add-to-store' with recursive directory storage.Ludovic Courtès
* guix/store.scm (write-file): Implement directory recursive dump. (add-to-store): Fix the parameter list. * tests/derivations.scm (directory-contents): New procedure. ("add-to-store, recursive"): New test.
2012-06-03First stab at the `derivation' primitive.Ludovic Courtès
* guix/store.scm (%store-prefix): New parameter. (store-path?, derivation-path?): New procedures. * guix/derivations.scm (write-derivation): Pass SOURCES through `object->string'. (compressed-hash, store-path, output-path, derivation): New procedures. * tests/derivations.scm (%store): New global variable. ("derivation with no inputs"): New test.
2012-06-02store: Raise error conditions upon protocol errors.Ludovic Courtès
* guix/store.scm (&nix-error, &nix-protocol-error): New SRFI-35 condition types. (process-stderr): Raise an error condition upon protocol errors instead of returning to the caller. This allows the connection to be reused for further interactions.
2012-04-18Split (guix) in (guix store) and (guix derivations).Ludovic Courtès
* guix.scm: Move contents to other files. Just aggregate these. * guix/derivations.scm, guix/store.scm: New files.