~ruther/guix-local

ref: 18d50d76216f5c207d8178cb2d2d2f31eb8fe3eb guix-local/guix/store.scm -rw-r--r-- 14.5 KiB
c4c7406b — Ludovic Courtès 13 years ago
store: Document `add-to-store' hack for `fixed?'.

* guix/store.scm (add-to-store): Document that `fixed?' must be #t.
e3d74106 — Ludovic Courtès 13 years ago
store: Add `store-path-package-name'.

* guix/store.scm (store-path-package-name): New procedure.
* tests/utils.scm ("store-path-package-name"): New test.
34811f02 — Ludovic Courtès 13 years ago
guix-build: Add `--root'.

* 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.
82058eff — Ludovic Courtès 13 years ago
store: Add `query-path-hash'.

* 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.
df1fab58 — Ludovic Courtès 13 years ago
distro: Add a statically-linked, relocatable Guile 2.0 package.

* 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.
f39bd08a — Ludovic Courtès 13 years ago
Optimize `store-path?'.

* guix/store.scm (store-path?): Check with `string-prefix?' instead of a
  regexp.
3abaf0c4 — Ludovic Courtès 13 years ago
Add `close-connection'.

* guix/store.scm (close-connection): New procedure.
e36a7172 — Ludovic Courtès 13 years ago
Upgrade Nix worker protocol.

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.
31ef99a8 — Ludovic Courtès 13 years ago
Add the `valid-path?' RPC.

* 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.
e036c31b — Ludovic Courtès 13 years ago
Add missing `set-build-options' parameters.

* 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.
dcee50c1 — Ludovic Courtès 13 years ago
store: Wait for the server to be done sending output.

* 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.
b37eb5ed — Ludovic Courtès 13 years ago
Add `add-to-store' with recursive directory storage.

* 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.
26bbbb95 — Ludovic Courtès 13 years ago
First stab at the `derivation' primitive.

* 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.
e87088c9 — Ludovic Courtès 13 years ago
store: Raise error conditions upon protocol errors.

* 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.
77d3cf08 — Ludovic Courtès 14 years ago
Split (guix) in (guix store) and (guix derivations).

* guix.scm: Move contents to other files.  Just aggregate these.
* guix/derivations.scm, guix/store.scm: New files.