~ruther/guix-local

ref: 3d243e9c45b83bf7a4bab0514dc6830c29bb2ea5 guix-local/guix d---------
61771a79 — Federico Beffa 11 years ago
guix: build/glib-or-gtk-build-system: Add support for GIO and XDG theming.

* guix/build/glib-or-gtk-build-system.scm (data-directories): Rename
  'schemas-directories' to 'data-directories' and add support for XDG theming
  data.

* guix/build/glib-or-gtk-build-system.scm (gio-module-directories): New
  function.

* guix/build/glib-or-gtk-build-system.scm (wrap-all-programs): Update names to
  reflect that we are dealing with more types of data and not only with
  schemas.  Add handling of GIO modules.

* guix/build-system/glib-or-gtk.scm (lower): Import the 'bin' output of GLib
  instead of 'out'.  This was an error since we need the program
  'glib-compile-schemas'.  Update the description.
c06d140c — Ludovic Courtès 11 years ago
derivations: Use a set for 'substitution-oracle'.

* guix/derivations.scm (substitution-oracle): Use sets instead of lists.
ed3592a9 — Ludovic Courtès 11 years ago
derivations: Use sets for 'derivations-prerequisites'.

This yields a 46% improvement in 'derivation-prerequisites' invocations
on the Emacs derivation.

* guix/derivations.scm (derivation-prerequisites): Add 'input-set'
  variable, and use it in iterations.
d326767e — Ludovic Courtès 11 years ago
Add (guix sets).

* guix/sets.scm, tests/sets.scm: New files.sets
* Makefile.am (MODULES, SCM_TESTS): Add them.
e9651e39 — Ludovic Courtès 11 years ago
derivations: Add 'substitution-oracle' and use it.

This makes 'guix environment PACKAGE' significantly faster when
substitutes are enabled.  Before that, it would lead to many invocations
of 'guix substitute-binary', one per 'derivation-prerequisites-to-build'
call.  Now, all these are replaced by a single invocation.

* guix/derivations.scm (derivation-output-paths, substitution-oracle):
  New procedures.
  (derivation-prerequisites-to-build): Replace #:use-substitutes? with
  #:substitutable?.  Remove the local 'derivation-output-paths' and
  'substitutable?'.
* guix/ui.scm (show-what-to-build): Add 'substitutable?'.  Pass it to
  'derivation-prerequisites-to-build'.
  [built-or-substitutable?]: Use it instead of 'has-substitutes?'.
* tests/derivations.scm ("derivation-prerequisites-to-build and
  substitutes"): Use #:substitutable? instead of #:use-substitutes?.
0b6af195 — Ludovic Courtès 11 years ago
derivations: Add 'derivation-output-names'.

* guix/derivations.scm (derivation-output-names): New procedure.
  (derivation-prerequisites-to-build): Use it for #:outputs.
  (map-derivation): Likewise.
* tests/derivations.scm ("derivation-output-names"): New test.
d45dc6da — Eric Bavier 11 years ago
import: Add CPAN importer.

* guix/import/cpan.scm, guix/scripts/import/cpan.scm, tests/cpan.scm:
  New files.
* Makefile.am (MODULE)[HAVE_GUILE_JSON]: Add them.
* guix/scripts/import.scm (importers): Add cpan.
* doc/guix.texi (Requirements): Mention `guix import cpan` as a user
  of guile-json.
  (Invoking guix import): Document new `guix import cpan` command.
694b317c — Eric Bavier 11 years ago
tests: import: Factorize utility function.

* tests/pypi.scm (mock): Move this...
* guix/tests.scm: to here.
1ff2619b — Eric Bavier 11 years ago
import: Factorize utility functions.

* guix/import/pypi.scm (hash-table->alist, flatten, assoc-ref*,
  url-fetch, json-fetch): Pull procedures from here into...
* guix/import/utils.scm: Here and...
* guix/import/json.scm: Here.  New file.
* Makefile.am (MODULE)[HAVE_GUILE_JSON]: Add it.
* guix/import/gnu.scm (file-sha256): Move from here to...
* guix/hash.scm: Here.
* tests/pypi.scm (pypi->guix-package): Update mock module reference.
c6cb82f5 — Eric Bavier 11 years ago
import: gnu: Propagate the key-download argument.

* guix/import/gnu.scm (gnu->guix-package): Pass the key-download
  argument on to gnu-package->sexp.
8234fcf2 — Ludovic Courtès 11 years ago
substitute-binary: Micro-optimize 'narinfo-sha256'.

* guix/scripts/substitute-binary.scm (narinfo-signature->canonical-sexp):
  Change "~a" to "~s" in error message.
  (%signature-line-rx): Remove.
  (narinfo-sha256): Use 'string-contains' instead of 'regexp-exec', and
  'string-take' instead of 'match:substring'.
fb519bd8 — Ludovic Courtès 11 years ago
records: Optimize 'recutils->alist' by avoiding regexps.

* guix/records.scm (%recutils-field-rx, %recutils-comment-rx,
  %recutils-plus-rx): Remove.
  (%recutils-field-charset): New variable.
  (recutils->alist): Adjust to use tests (string-ref line 0) instead of
  regexps.
b2ad9d9b — Ludovic Courtès 11 years ago
base64: Inline arithmetic operations.

* guix/base64.scm (define-alias): New macro.
  (fxbit-field, fxarithmetic-shift, fxarithmetic-shift-left, fxand,
  fxior, fxxor): New aliases.
9331ba5d — 宋文武 11 years ago
linux-boot: Make /etc/mtab a symlink to /proc/self/mounts.

Fixes <http://bugs.gnu.org/19491>.

* gnu/build/linux-boot.scm (mount-root-file-system): Make /root/etc/mtab
  a symlink to /proc/self/mounts.
* gnu/build/file-systems.scm (mount-file-system): Don't update /etc/mtab.
* guix/build/syscalls.scm (mount, umount): Have #:update-mtab? default to
  #f.
828c0bec — Ludovic Courtès 11 years ago
pk-crypto: Improve docstring of signature-related procedures.

* guix/pk-crypto.scm (bytevector->hash-data, sign): Augment docstring.
dd8ea244 — Ludovic Courtès 11 years ago
download: Export 'maybe-expand-mirrors'.

* guix/build/download.scm (uri-vicinity, maybe-expand-mirrors): New
  procedures.
  (url-fetch): Remove them from here.
8b385969 — Ludovic Courtès 11 years ago
tests: Factorize the 'dummy-package' macro.

* guix/tests.scm (dummy-package): New macro.
* tests/lint.scm (dummy-package): Remove.
* tests/packages.scm (dummy-package): Remove.
907c98ac — Ludovic Courtès 11 years ago
lint: Add tests for the 'home-page' checker.

Suggested by Cyril Roelandt <tipecaml@gmail.com>.

* tests/lint.scm (%http-server-port, %http-server-socket, %local-url,
  stub-http-server): New variables.
  (http-write, call-with-http-server): New procedures.
  (with-http-server): New macro.
  ("home-page: wrong home-page", "home-page: invalid URI", "home-page:
  host not found", "home-page: Connection refused", "home-page: 200",
  "home-page: 404"): New tests.
* guix/scripts/lint.scm (check-home-page): Export.
c79c6e59 — Ludovic Courtès 11 years ago
lint: Report on the package being checked.

* guix/scripts/lint.scm (run-checkers): Check
  whether (current-error-port) is a tty, and print the package being
  checked and the checker currently running when it is.
a3bf0969 — Ludovic Courtès 11 years ago
lint: Add 'home-page' checker.

* guix/build/download.scm (open-connection-for-uri): Export.
* guix/scripts/lint.scm (probe-uri, check-home-page): New procedures.
  (%checkers): Add 'home-page' checker.
Next