Age | Commit message (Collapse) | Author |
|
* guix/utils.scm (nixpkgs-derivation): Add a `system' parameter. Pass
it in the `nix-instantiate' invocation.
|
|
* 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.
|
|
* guix/packages.scm (<location>, location): Move to...
* guix/utils.scm: ... here.
|
|
* guix/utils.scm (define-record-type*)[make-syntactic-constructor]: New
`type' parameter. Add the `inherit' keyword and corresponding support
code.
* tests/utils.scm ("define-record-type* & inherit", "define-record-type*
& inherit & letrec* behavior"): New tests.
|
|
* configure.ac: Add `--with-libgcrypt-prefix'. Substitute `LIBGCRYPT'.
* Makefile.am (.scm.go): Pass $(LIBGCRYPT).
* guix/utils.scm (%libgcrypt): New variable.
(sha256): Use it.
|
|
* Makefile.am (.scm.go): Define $NIX_INSTANTIATE.
(TESTS_ENVIRONMENT): Likewise, and define $NIX_HASH.
* guix/utils.scm (nixpkgs-derivation): Use $NIX_INSTANTIATE when
defined.
* tests/utils.scm (%nix-hash): New variable.
("sha256 & bytevector->nix-base32-string"): Use it.
|
|
* guix/utils.scm (nixpkgs-derivation*): New macro.
* distro/base.scm: Use it instead of `nixpkgs-derivation'.
|
|
* guix/utils.scm (define-record-type*)[make-syntactic-constructor]: Bind
all the ((FIELD VALUE) ...) in a `letrec*'. Adjust `field-value'
accordingly.
* tests/utils.scm ("define-record-type* with letrec* behavior"): New
test.
|
|
* guix/utils.scm (define-record-type*): In case of missing or extra
field initializers, raise a descriptive `syntax-error'.
|
|
* guix/utils.scm (sha256): Add a libgcrypt-based implementation using
the FFI.
|
|
* guix/utils.scm (compile-time-value): Move to the top.
(sha256): Add an implementation that uses Coreutils, for when libchop
is unavailable.
|
|
* guix/utils.scm (compile-time-value): New macro.
(%nixpkgs-directory): Use it.
* guix/build-system/gnu.scm (%standard-inputs): Likewise.
|
|
* guix/utils.scm (define-record-type*): New macro.
* tests/utils.scm ("define-record-type*"): New test.
|
|
* guix/utils.scm (gnu-triplet->nix-system): New procedure.
(%current-system): New variable.
* tests/utils.scm ("gnu-triplet->nix-system"): New test.
* tests/derivations.scm (%current-system): Remove. Update users to
use (%current-system) instead.
|
|
* guix/utils.scm (base16-string->bytevector): New procedure.
* tests/utils.scm ("bytevector->base16-string->bytevector"): New test.
|
|
* guix/utils.scm (bytevector-quintet-set!,
bytevector-quintet-set-right!, base32-string-unfold,
base32-string-unfold-right, make-base32-string->bytevector,
base32-string->bytevector, nix-base32-string->bytevector): New
procedures.
* tests/utils.scm ("base32-string->bytevector",
"nix-base32-string->bytevector"): New tests.
|
|
* guix/derivations.scm (derivation-path->output-path): New procedure.
(derivation-hash): Call `memoize'. In the fixed-output case, convert
HASH-ALGO to a string. In the other case, sort inputs in the
alphabetical order of their hex hash. For inputs with no sub-drvs,
add "out" as the sub-drv.
* guix/utils.scm (%nixpkgs-directory): New parameter.
(nixpkgs-derivation, memoize): New procedures.
* tests/derivations.scm ("build derivation with 1 source"): Remove
useless shebang.
(%coreutils): New variable.
("build derivation with coreutils"): New test.
|
|
* guix/utils.scm (bytevector->base16-string): New procedure.
|
|
* guix/utils.scm (bytevector-quintet-ref-right,
bytevector-quintet-fold): New procedures.
(bytevector-quintet-fold-right): Add `quintet-fold' parameter; use it
instead of `bytevector-quintet-fold'.
(bytevector->base32-string): Pass BYTEVECTOR-QUINTET-FOLD as the
first parameter.
(bytevector->nix-base32-string): Pass BYTEVECTOR-QUINTET-FOLD-RIGHT as
the first parameter.
* tests/utils.scm ("sha256 & bytevector->nix-base32-string"): New test.
|
|
* guix/derivations.scm (sha256): Move to...
* guix/utils.scm (sha256): ... here.
|
|
* guix/utils.scm, tests/utils.scm: New files.
|