guix-package: Make `--search' queries case-insensitive. * guix-package.in (guix-package)[process-query]: Use `regexp/icase' for the `search' regexp.
Augment `.dir-locals.el'. * .dir-locals.el: Add more Scheme settings. * guix-build.in, tests/base32.scm, tests/build-utils.scm, tests/builders.scm, tests/derivations.scm, tests/packages.scm, tests/snix.scm, tests/store.scm, tests/union.scm, tests/utils.scm: Remove redundant Emacs local variable settings.
guix-package: Report `--search' matches in recutils format. * guix/ui.scm (fill-paragraph, string->recutils, package->recutils): New procedures. * guix-package.in (guix-package)[process-query]: Use `package->recutils' to display package meta-data. * tests/guix-package.sh: Adjust test. * tests/ui.scm: New file. * Makefile.am (TESTS): Add it. * doc/guix.texi (Invoking guix-package): Adjust `--search' documentation, and give an example.
guix-package: Gracefully report non-existing outputs. * guix-package.in (guix-package)[find-package](ensure-output): New procedure. Use it to validate SUB-DRV.
guix-package: Reduce start-up time for queries. * guix-package.in (guix-package): Call `open-connection' and `package-derivation' only after `process-query' has returned.
gnu: Add libkate. * gnu/packages/oggvorbis.scm (libkate): New variable. * gnu/packages/oggvorbis.scm (vorbis-tools): Add input libkate.
gnu: Add flac. * gnu/packages/oggvorbis.scm (flac): New variable. * gnu/packages/oggvorbis.scm (vorbis-tools): Add flac input. * gnu/packages/patches/flac-fix-memcmp-not-declared.patch: New file.
gnu: bigloo: Update tarball's hash. * gnu/packages/scheme.scm (bigloo): Change hash. The tarball was recently modified in-place (!).
store: Don't expect build logs to be UTF-8-encoded. * guix/store.scm (read-latin1-string): New procedure. (process-stderr): Use it instead of `read-string'. Reported by Andreas Enge <andreas@enge.fr>.
gnu: vorbis-tools: Enable ogg123. * gnu/packages/oggvorbis.scm (vorbis-tools): Add inputs ao and curl.
gnu: Add libao. * gnu/packages/oggvorbis.scm (ao): New variable.
gnu: Add curl. * gnu/packages/curl.scm: New file. * Makefile.am (MODULES): Add it.
gnu: Add openssh. * gnu/packages/ssh.cm (openssh): New variable.
.dir-locals.el: Fill at 78 columns.
derivations: Memoize `read-derivation'. * guix/derivations.scm (read-derivation): Rename to... (%read-derivation): ... this. (read-derivation): New procedure. This reduces the execution of "guix-build gdb" from 2.5s to 1.7s.
store: Slightly improve memoization hashing. * guix/store.scm (open-connection): Call `make-hash-table' with 100. (add-text-to-store): Move TEXT first in ARGS, for better `hash' results. (add-to-store): Likewise, move ST first.
store: Remove the `fixed?' parameter from `add-to-store'. * guix/store.scm (add-to-store): Remove the `fixed?' parameter from the public interface. * gnu/packages/bootstrap.scm, guix-download.in, guix/derivations.scm, guix/packages.scm, tests/derivations.scm: Update all callers accordingly.
store: Avoid use of `set!'. * guix/store.scm (operation): New macro. (define-operation): Define in terms of `operation'. (add-text-to-store): Define using `operation', and remove now unnecessary `set!'. (add-to-store): Likewise. (add-text-to-store/cached, add-to-store/cached): Remove.
store: Micro-optimize `write-string'. * guix/store.scm (write-string): Optimize to write the length, contents, and padding all at once. This yields a 2% improvement on the execution time of "guix-build gdb".
Gracefully handle failure to install the current locale. * guix/ui.scm (install-locale): New procedure. * guix-build.in, guix-download.in, guix-gc.in, guix-import.in, guix-package.in: Use it instead of (setlocale LC_ALL "").