Age | Commit message (Expand) | Author |
2013-01-23 | define-record-type*: Add the `thunked' field definition keyword....* guix/utils.scm (define-record-type*)[make-syntactic-constructor]: Add
a `thunked' parameter.
(thunked-field?, field-bindings): New procedures. Use the latter when
generating `letrec*' bindings.
[thunked-field?, thunked-field-accessor-name, field-spec->srfi-9,
thunked-field-accessor-name]: New procedures.
Use them when generating the `define-record-type' form, and to
generated thunk field accessors, along call to
`make-syntactic-constructor' with the new argument.
* tests/utils.scm ("define-record-type* & thunked",
"define-record-type* & thunked & default",
"define-record-type* & thunked & inherited"): New tests.
| Ludovic Courtès |
2013-01-06 | Update license headers....Change all license headers, except guix/build/* and ld-wrapper.scm, with
this code:
(use-modules (guix build utils)
(srfi srfi-1))
(fluid-set! %default-port-encoding "UTF-8")
(substitute* (remove (lambda (f)
(or (string-contains f ".tar.")
(string-contains f ".git/")
(string-contains f ".so")
(string-suffix? ".o" f)
(string-suffix? ".a" f)
(string-suffix? ".go" f)
(string-suffix? ".pdf" f)
(string-suffix? ".png" f)
(string-suffix? ".info" f)
(equal? (basename f) "guix-daemon")
(equal? (basename f) "nix-setuid-helper")
(string-contains f "nix-upstream/")
(string-contains f "distro/packages/bootstrap/")))
(find-files "." "\\.[a-z]+$"))
(("^([[:graph:]]+) This file is part of Guix." _ comment-start)
(string-append comment-start " This file is part of GNU Guix."))
(("^([[:graph:]]+) Guix --- Nix package management.*" _ comment-start)
(string-append comment-start
" GNU Guix --- Functional package management for GNU\n"))
(("^([[:graph:]]+) Guix is " _ comment-start)
(string-append comment-start " GNU Guix is "))
(("^([[:graph:]]+) along with Guix." _ comment-start)
(string-append comment-start " along with GNU Guix."))
(("^([[:graph:]]+) Copyright \\(C\\)" _ comment-start)
(string-append comment-start " Copyright ©")))
Change headers using C-style comments manually.
| Ludovic Courtès |
2012-12-05 | tests: Remove hard-coded /nix/store....* tests/utils.scm ("store-path-package-name"): Use (%store-prefix)
instead of a hard-coded "/nix/store".
| Ludovic Courtès |
2012-11-11 | Move base32 code to (guix base32)....* guix/utils.scm (bytevector-quintet-ref, bytevector-quintet-ref-right,
bytevector-quintet-length, bytevector-quintet-fold,
bytevector-quintet-fold-right, make-bytevector->base32-string,
%nix-base32-chars, %rfc4648-base32-chars, bytevector->base32-string,
bytevector->nix-base32-string, 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): Move to...
* guix/base32.scm: ... here. New file.
* tests/utils.scm (%nix-hash, "bytevector->base32-string",
"base32-string->bytevector", "nix-base32-string->bytevector", "sha256
& bytevector->base32-string"): Move to...
* tests/base32.scm: ... here. New file
* guix-download.in, guix/derivations.scm, guix/packages.scm,
guix/snix.scm, tests/builders.scm, tests/derivations.scm: Adjust
accordingly.
* guix.scm (%public-modules): Add `base32'.
| Ludovic Courtès |
2012-11-04 | utils: Add `package-name->name+version'....* guix/utils.scm (package-name->name+version): New procedure.
* guix-package.in (guix-package)[find-package]: Use it.
* tests/utils.scm ("package-name->name+version"): New test.
| Ludovic Courtès |
2012-11-01 | store: Add `store-path-package-name'....* guix/store.scm (store-path-package-name): New procedure.
* tests/utils.scm ("store-path-package-name"): New test.
| Ludovic Courtès |
2012-08-30 | define-record-type*: Add the `inherit' syntactic constructor keyword....* 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.
| Ludovic Courtès |
2012-08-14 | build: Pass $(NIX_INSTANTIATE) to the build and test environments....* 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.
| Ludovic Courtès |
2012-07-03 | define-record-type*: Add `letrec*' behavior....* 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.
| Ludovic Courtès |
2012-06-27 | Add `define-record-type*'....* guix/utils.scm (define-record-type*): New macro.
* tests/utils.scm ("define-record-type*"): New test.
| Ludovic Courtès |
2012-06-11 | Add a `%current-system' fluid....* 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.
| Ludovic Courtès |
2012-06-09 | Add `base16-string->bytevector'....* guix/utils.scm (base16-string->bytevector): New procedure.
* tests/utils.scm ("bytevector->base16-string->bytevector"): New test.
| Ludovic Courtès |
2012-06-09 | Add `base32-string->bytevector' and `nix-base32-string->bytevector'....* 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.
| Ludovic Courtès |
2012-06-03 | Fix `bytevector->nix-base32-string'....* 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.
| Ludovic Courtès |
2012-06-01 | Add (guix utils), with `bytevector->base32-string'....* guix/utils.scm, tests/utils.scm: New files.
| Ludovic Courtès |