Ludovic Courtès [Fri, 1 Feb 2013 11:48:02 +0000 (12:48 +0100)]
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.
Ludovic Courtès [Fri, 1 Feb 2013 12:16:27 +0000 (13:16 +0100)]
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.
Ludovic Courtès [Fri, 1 Feb 2013 08:17:35 +0000 (09:17 +0100)]
guix-package: Gracefully report non-existing outputs.
* guix-package.in (guix-package)[find-package](ensure-output): New
procedure. Use it to validate SUB-DRV.
Ludovic Courtès [Thu, 31 Jan 2013 22:24:10 +0000 (23:24 +0100)]
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.
Andreas Enge [Thu, 31 Jan 2013 21:47:25 +0000 (22:47 +0100)]
gnu: Add libkate.
* gnu/packages/oggvorbis.scm (libkate): New variable.
* gnu/packages/oggvorbis.scm (vorbis-tools): Add input libkate.
Andreas Enge [Thu, 31 Jan 2013 21:18:47 +0000 (22:18 +0100)]
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.
Ludovic Courtès [Thu, 31 Jan 2013 16:49:44 +0000 (17:49 +0100)]
gnu: bigloo: Update tarball's hash.
* gnu/packages/scheme.scm (bigloo): Change hash. The tarball was
recently modified in-place (!).
Ludovic Courtès [Thu, 31 Jan 2013 13:05:10 +0000 (14:05 +0100)]
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>.
Andreas Enge [Wed, 30 Jan 2013 22:46:39 +0000 (23:46 +0100)]
gnu: vorbis-tools: Enable ogg123.
* gnu/packages/oggvorbis.scm (vorbis-tools): Add inputs ao and curl.
Andreas Enge [Wed, 30 Jan 2013 22:32:13 +0000 (23:32 +0100)]
gnu: Add libao.
* gnu/packages/oggvorbis.scm (ao): New variable.
Andreas Enge [Wed, 30 Jan 2013 20:48:57 +0000 (21:48 +0100)]
gnu: Add curl.
* gnu/packages/curl.scm: New file.
* Makefile.am (MODULES): Add it.
Andreas Enge [Wed, 30 Jan 2013 20:31:50 +0000 (21:31 +0100)]
gnu: Add openssh.
* gnu/packages/ssh.cm (openssh): New variable.
Ludovic Courtès [Wed, 30 Jan 2013 17:59:12 +0000 (18:59 +0100)]
.dir-locals.el: Fill at 78 columns.
Ludovic Courtès [Wed, 30 Jan 2013 17:56:20 +0000 (18:56 +0100)]
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.
Ludovic Courtès [Wed, 30 Jan 2013 16:05:54 +0000 (17:05 +0100)]
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.
Ludovic Courtès [Wed, 30 Jan 2013 15:30:49 +0000 (16:30 +0100)]
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.
Ludovic Courtès [Wed, 30 Jan 2013 15:22:33 +0000 (16:22 +0100)]
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.
Ludovic Courtès [Tue, 29 Jan 2013 23:37:26 +0000 (00:37 +0100)]
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".
Ludovic Courtès [Tue, 29 Jan 2013 22:59:27 +0000 (23:59 +0100)]
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 "").
Ludovic Courtès [Tue, 29 Jan 2013 22:53:09 +0000 (23:53 +0100)]
store: Cache `add-text-to-store' results.
* guix/store.scm (<nix-server>)[atts-cache]: New field.
(add-text-to-store/cached): New procedure. Use it as a wrapper around
`add-text-to-store'.
When running "guix-build gdb", this reduces the number of RPCs from
3048 to 289, and execution time from 4.7s to 2.6s.
Ludovic Courtès [Tue, 29 Jan 2013 22:34:50 +0000 (23:34 +0100)]
store: Make the `add-to-store' cache per-connection.
* guix/store.scm (<nix-server>)[ats-cache]: New field.
(open-connection): Update accordingly.
(add-to-store/cached): Use (nix-server-add-to-store-cache SERVER)
instead of a weak hash table.
Andreas Enge [Tue, 29 Jan 2013 22:02:22 +0000 (23:02 +0100)]
gnu: Add libssh2.
* gnu/packages/ssh.scm: New file.
* Makefile.am (MODULES): Add it.
Andreas Enge [Sat, 26 Jan 2013 19:31:37 +0000 (20:31 +0100)]
gnu: Add openldap.
* gnu/packages/openldap.scm: New file.
* Makefile.am (MODULE): Add it.
Ludovic Courtès [Mon, 28 Jan 2013 23:16:18 +0000 (00:16 +0100)]
store: Make `add-to-store' memoizing.
* guix/store.scm (add-to-store/cached): New variable.
Use it as the new `add-to-store'.
This reduces the number of RPCs when doing "guix-build gdb" from 5009
to 3053, and the execution time from 7s to 3.9s.
Ludovic Courtès [Mon, 28 Jan 2013 21:48:15 +0000 (22:48 +0100)]
gnu: gdb: Update to 7.5.1.
* gnu/packages/gdb.scm (gdb): Update to 7.5.1.
Ludovic Courtès [Mon, 28 Jan 2013 20:26:00 +0000 (21:26 +0100)]
build: Require Automake 1.12 or later.
* configure.ac: Require Automake 1.12 or later.
Nikita Karetnikov [Mon, 28 Jan 2013 07:13:19 +0000 (07:13 +0000)]
Update 'TODO'.
Nikita Karetnikov [Mon, 28 Jan 2013 06:29:10 +0000 (06:29 +0000)]
guix-package: Add '--search'.
* guix-package.in (find-packages-by-description): New procedure.
(show-help, %options): Add '--search'.
(guix-package)[process-query]: Add support for '--search'.
* doc/guix.texi (Invoking guix-package): Document it.
* tests/guix-package.sh: Add tests.
Ludovic Courtès [Sun, 27 Jan 2013 21:52:21 +0000 (22:52 +0100)]
gnu: automake: Update to 1.13.1.
* gnu/packages/autotools.scm (automake): Update to 1.13.1.
Ludovic Courtès [Sun, 27 Jan 2013 21:35:33 +0000 (22:35 +0100)]
gnu: autoconf-wrapper: Fix "guile" input.
* gnu/packages/autotools.scm (autoconf-wrapper): Remove `lambda' for
"guile" input..
Ludovic Courtès [Sun, 27 Jan 2013 16:58:46 +0000 (17:58 +0100)]
guix-package: Always use the next number for new generations.
Suggested by Andreas Enge <andreas@enge.fr> at
<http://lists.gnu.org/archive/html/bug-guix/2013-01/msg00325.html>.
* guix-package.in (latest-profile-number): Remove.
(switch-symlinks): New procedure.
(roll-back)[switch-link]: Use it.
(guix-package)[process-actions]: Always choose NUMBER + 1 for the new
profile. Use `switch-symlinks' instead of `symlink'. Remove code to
delete PROFILE when it exists since `switch-symlinks' has the same
effect.
* tests/guix-package.sh: Adjust existing `--roll-back' tests.
* doc/guix.texi (Invoking guix-package): Document this `--roll-back'
behavior.
Ludovic Courtès [Sun, 27 Jan 2013 16:18:55 +0000 (17:18 +0100)]
guix-package: When rolling back to nothingness, point to the empty profile.
Suggested by Andreas Enge <andreas@enge.fr> at
<http://lists.gnu.org/archive/html/bug-guix/2013-01/msg00316.html>.
* guix-package.in (roll-back): Check whether PROFILE is valid using
`file-exists?'. When NUMBER is zero, just emit a notice. When
PREVIOUS-NUMBER is zero and PREVIOUS-PROFILE does not exist, build the
empty profile, and link to it.
* tests/guix-package.sh: Add tests.
* doc/guix.texi (Invoking guix-package): Document the new behavior.
Ludovic Courtès [Sat, 26 Jan 2013 23:59:04 +0000 (00:59 +0100)]
Update `TODO'.
Ludovic Courtès [Sat, 26 Jan 2013 23:55:51 +0000 (00:55 +0100)]
Update `AUTHORS' and `THANKS'.
Ludovic Courtès [Sat, 26 Jan 2013 23:55:37 +0000 (00:55 +0100)]
gnu: python: Remove unnecessary module import.
* gnu/packages/python.scm: Remove use of (gnu packages base).
Cyril Roelandt [Sat, 26 Jan 2013 20:06:05 +0000 (21:06 +0100)]
gnu: Add irssi.
* gnu/packages/irssi.scm: New file.
* Makefile.am (MODULES): Add it.
Andreas Enge [Sat, 26 Jan 2013 13:24:06 +0000 (14:24 +0100)]
gnu: Add zip, unzip and zziplib.
* gnu/packages/zip.scm: New file.
* Makefile.am (MODULES): Add it.
Andreas Enge [Fri, 25 Jan 2013 23:43:03 +0000 (00:43 +0100)]
gnu: Add TECkit.
* gnu/packages/freetype.scm (teckit): New variable.
* gnu/packages/patches/teckit-cstdio.patch: New file.
* Makefile.am (dist_patch_DATA): Add patch.
Ludovic Courtès [Fri, 25 Jan 2013 20:50:32 +0000 (21:50 +0100)]
gnu: Use `mirror://apache' where applicable.
* gnu/packages/libapr.scm (libapr, libaprutil): Use `mirror://apache'.
* gnu/packages/subversion.scm (subversion): Likewise.
Ludovic Courtès [Fri, 25 Jan 2013 20:49:49 +0000 (21:49 +0100)]
download: Add Apache mirrors.
* guix/download.scm (%mirrors): Add `apache'.
Cyril Roelandt [Fri, 25 Jan 2013 19:42:52 +0000 (20:42 +0100)]
gnu: Add Subversion.
* gnu/packages/subversion.scm: New file.
* Makefile.am (MODULES): Add it.
Ludovic Courtès [Fri, 25 Jan 2013 20:36:56 +0000 (21:36 +0100)]
gnu: Add SQLite.
* gnu/packages/sqlite.scm: New file.
* Makefile.am (MODULES): Add it.
Ludovic Courtès [Fri, 25 Jan 2013 20:36:26 +0000 (21:36 +0100)]
download: Follow HTTP redirection upon 301 "moved permanently".
* guix/build/download.scm (http-fetch): Follow redirections upon 301.
This is what `downloads.sourceforge.net' returns, for instance.
Cyril Roelandt [Fri, 25 Jan 2013 19:42:50 +0000 (20:42 +0100)]
gnu: Add libaprutil.
* gnu/packages/libapr: new variable.
Cyril Roelandt [Fri, 25 Jan 2013 19:42:49 +0000 (20:42 +0100)]
gnu: Add libapr.
* gnu/packages/libapr.scm: New file.
* gnu/packages/patches/libapr-skip-getservbyname-test.patch: New file
* Makefile.am: Add them
Andreas Enge [Fri, 25 Jan 2013 09:50:30 +0000 (10:50 +0100)]
gnu: fplll: Update to version 4.0.2.
* gnu/packages/algebra.scm (fplll): Update to version 4.0.2.
Andreas Enge [Thu, 24 Jan 2013 22:02:38 +0000 (23:02 +0100)]
gnu: Add poppler.
* gnu/packages/pdf.scm: New file.
* Makefile.am (MODULES): Add it.
Ludovic Courtès [Thu, 24 Jan 2013 22:33:30 +0000 (23:33 +0100)]
packages: Mark the `inputs' field of <package> as thunked.
* guix/packages.scm (<package>)[inputs]: Mark as thunked.
(package-derivation)[expand-input]: Remove case where the input is a
procedure.
* tests/packages.scm ("trivial with system-dependent input"): Remove
`lambda', and use (%current-system).
* gnu/packages/bootstrap.scm (package-from-tarball): Likewise for `inputs'.
(%bootstrap-glibc, %bootstrap-gcc): Likewise.
* gnu/packages/scheme.scm (mit-scheme): Likewise.
Ludovic Courtès [Thu, 24 Jan 2013 21:00:54 +0000 (22:00 +0100)]
guix-package: Error out when passed a non-option argument.
* guix-package.in (guix-package)[parse-options]: Call `leave' when
passed a non-option argument.
Reported by Andreas Enge <andreas@enge.fr>.
* tests/guix-package.sh: Add test.
Andreas Enge [Wed, 23 Jan 2013 21:56:04 +0000 (22:56 +0100)]
gnu: Add t1lib.
* gnu/packages/freetype.scm (t1lib): New variable.
Cyril Roelandt [Wed, 23 Jan 2013 20:16:22 +0000 (21:16 +0100)]
gnu: Add OCaml. licenses: Add QPL.
* gnu/packages/ocaml.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/licenses.scm: New variable.
Ludovic Courtès [Wed, 23 Jan 2013 22:21:59 +0000 (23:21 +0100)]
packages: Mark the `arguments' field of <package> as thunked.
* guix/packages.scm (<package>): Mark `arguments' as thunked.
(package-derivation): Adjust accordingly. Parameterize
%CURRENT-SYSTEM to SYSTEM, so that arguments can refer to it.
* guix/build-system/gnu.scm (package-with-explicit-inputs): Expect
`package-arguments' to always return a list, and return a list.
(package-with-extra-configure-variable): Likewise.
(static-package): Likewise.
* gnu/packages/base.scm (patch, findutils, gcc-4.7, binutils-boot0,
gcc-boot0, glibc-final-with-bootstrap-bash, cross-gcc-wrapper,
static-bash-for-glibc, binutils-final, gcc-final): Change `arguments'
from a lambda to a list, and use (%current-system) as needed.
(nix-system->gnu-triplet, boot-triplet): Have the first argument
default to (%current-system).
* gnu/packages/bootstrap.scm (glibc-dynamic-linker): Have `system'
default to (%current-system).
(%bootstrap-gcc): Change `arguments' to a list.
* gnu/packages/gawk.scm (gawk): Likewise.
* gnu/packages/m4.scm (m4): Likewise.
* gnu/packages/make-bootstrap.scm (%glibc-for-bootstrap): Likewise, and
expect `package-arguments' to return a list.
(%static-inputs, %gcc-static, tarball-package): Likewise.
* gnu/packages/ncurses.scm (ncurses): Likewise.
Ludovic Courtès [Wed, 23 Jan 2013 22:08:29 +0000 (23:08 +0100)]
guix-build: Fix typo.
* guix-build.in (guix-build)[find-package]: Use `x', not `_', to avoid
confusion with `gettext'.
Ludovic Courtès [Wed, 23 Jan 2013 21:47:39 +0000 (22:47 +0100)]
gnu: Remove unnecessary closures around `arguments' value.
* gnu/packages/algebra.scm (pari-gp): Remove closure around the value of
`arguments'.
* gnu/packages/bdb.scm (bdb): Likewise.
* gnu/packages/mit-krb5.scm (mit-krb5): Likewise.
* gnu/packages/openssl.scm (openssl): Likewise.
* gnu/packages/perl.scm (perl): Likewise.
Ludovic Courtès [Wed, 23 Jan 2013 21:24:47 +0000 (22:24 +0100)]
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 [Wed, 23 Jan 2013 15:45:36 +0000 (16:45 +0100)]
doc: Clarify that `guix-build' really is for developers.
* doc/guix.texi (Invoking guix-build): Make it clear that `guix-build'
doesn't access the user's profile, and add cross-ref to `guix-package'.
Suggested by Nikita Karetnikov <nikita@karetnikov.org>.
Andreas Enge [Wed, 23 Jan 2013 20:10:26 +0000 (21:10 +0100)]
gnu: Add fontconfig.
* gnu/packages/freetype.scm (fontconfig): New variable.
Andreas Enge [Mon, 21 Jan 2013 21:27:34 +0000 (22:27 +0100)]
gnu: libjpeg: Correct name of libjpeg-8 package to allow installation.
* gnu/packages/libjpeg (libjpeg-8): Switch name field to "libjpeg".
Ludovic Courtès [Wed, 23 Jan 2013 14:36:11 +0000 (15:36 +0100)]
Update `THANKS'.
Ludovic Courtès [Wed, 23 Jan 2013 14:35:36 +0000 (15:35 +0100)]
doc: Improve wording and fix typos in "Features".
* doc/guix.texi (Features): Fix typos, and rephrase according to the
suggestions of Alex Sassmannshausen <alex.sassmannshausen@gmail.com>.
Andreas Enge [Tue, 22 Jan 2013 22:48:08 +0000 (23:48 +0100)]
gnu: ghostscript: Build and install shared library and header files.
* gnu/packages/ghostscript (ghostscript): Extend build and install phases.
Ludovic Courtès [Tue, 22 Jan 2013 21:35:16 +0000 (22:35 +0100)]
guix-package: Fix `--roll-back' when `--profile' is not passed.
* guix-package.in (roll-back): Fix file name of PREVIOUS-PROFILE, which
could end up containing the dirname twice.
Reported by Nikita and Andreas.
* tests/guix-package.sh: Add test.
Ludovic Courtès [Tue, 22 Jan 2013 21:13:10 +0000 (22:13 +0100)]
guix-build: Allow version-qualified package names.
* guix-build.in (guix-build)[find-package]: New procedure.
Use it instead of using `find-packages-by-name' directly.
Suggested by Andreas Enge <andreas@enge.fr>.
* tests/guix-build.sh: Add tests.
* doc/guix.texi (Invoking guix-build): Add `coreutils-8.20' as an
example. Fix guile-1.8 example.
Ludovic Courtès [Mon, 21 Jan 2013 23:17:15 +0000 (00:17 +0100)]
Update `ROADMAP'.
Ludovic Courtès [Mon, 21 Jan 2013 23:16:47 +0000 (00:16 +0100)]
gnu: automake: Adjust test suite to lack of /bin/sh.
* gnu/packages/autotools.scm (autoconf-wrapper): New variable.
(automake): Use AUTOCONF-WRAPPER instead of AUTOCONF.
Add `automake-skip-amhello-tests.patch' as an input.
Add #:patches and #:phases arguments.
* gnu/packages/patches/automake-skip-amhello-tests.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
Ludovic Courtès [Mon, 21 Jan 2013 23:14:04 +0000 (00:14 +0100)]
packages: Remove redundant test for inputs-as-procedures.
* guix/packages.scm (package-derivation)[expand-input]: Remove redundant
test when the input is a procedure.
Ludovic Courtès [Mon, 21 Jan 2013 20:35:03 +0000 (21:35 +0100)]
doc: Add "The Perfect Setup" in 'HACKING'.
* HACKING (The Perfect Setup): New section.
Ludovic Courtès [Mon, 21 Jan 2013 20:25:43 +0000 (21:25 +0100)]
gnu: Add Geiser.
* gnu/packages/emacs.scm (geiser): New variable.
Ludovic Courtès [Mon, 21 Jan 2013 20:25:17 +0000 (21:25 +0100)]
gnu: gnutls: Remove unneeded import.
* gnu/packages/gnutls.scm: Remove import of (gnu packages base).
Andreas Enge [Mon, 21 Jan 2013 21:22:24 +0000 (22:22 +0100)]
gnu: Add groff.
* gnu/packages/groff.scm: New file.
* Makefile.am (MODULES): Add it.
Andreas Enge [Sun, 20 Jan 2013 22:26:11 +0000 (23:26 +0100)]
gnu: Add psutils.
* gnu/packages/ghostscript.scm (psutils): New variable.
Andreas Enge [Sat, 19 Jan 2013 16:59:46 +0000 (17:59 +0100)]
gnu: Add netpbm.
* gnu/packages/netpbm.scm: New file.
* Makefile.am (MODULES): Add it.
Ludovic Courtès [Mon, 21 Jan 2013 07:53:14 +0000 (08:53 +0100)]
gnu: Add missing libevent patch.
* gnu/packages/patches/libevent-dns-tests.patch: New file.
* Makefile.am (dist_patch_DATA): Add it.
Nikita Karetnikov [Mon, 21 Jan 2013 03:06:54 +0000 (03:06 +0000)]
Update 'HACKING'.
* HACKING (When the platform is supported by Nixpkgs): Update the example.
Ludovic Courtès [Sun, 20 Jan 2013 22:21:04 +0000 (23:21 +0100)]
gnu: Add Tor.
* gnu/packages/tor.scm: New file.
* Makefile.am (MODULES): Add it.
Ludovic Courtès [Sun, 20 Jan 2013 21:54:25 +0000 (22:54 +0100)]
Augment `.gitignore'.
Ludovic Courtès [Sun, 20 Jan 2013 21:51:34 +0000 (22:51 +0100)]
Update `NEWS'.
* NEWS: Update.
Ludovic Courtès [Sun, 20 Jan 2013 21:47:19 +0000 (22:47 +0100)]
gnu: Add libevent.
* gnu/packages/libevent.scm: New file.
* Makefile.am (MODULES): Add it.
Ludovic Courtès [Sun, 20 Jan 2013 21:28:38 +0000 (22:28 +0100)]
download: Add HTTPS support.
* guix/build/download.scm: Autoload (gnutls).
(tls-wrap): New procedure.
(open-connection-for-uri): Add support for `https'. Wrap the socket
with `tls-wrap' in that case.
(url-fetch): Add `https'.
* guix/download.scm (gnutls-derivation): New procedure.
(url-fetch)[need-gnutls?]: New variable.
Call `gnutls-derivation' when NEED-GNUTLS? is true, and add its output
to the `GUILE_LOAD_PATH' env. var. in that case.
Ludovic Courtès [Sun, 20 Jan 2013 21:17:58 +0000 (22:17 +0100)]
packages: Have `package-derivation' return a <derivation> as a second value.
* guix/packages.scm (cache): Change the `drv' argument to `thunk'.
Memoize all the return values of THUNK.
(cached-derivation): Remove.
(cached): New macro.
(package-derivation): Use `cached' instead of `(or (cached-derivation) …)'.
* doc/guix.texi (Defining Packages): Update accordingly.
Andreas Enge [Sun, 20 Jan 2013 21:29:55 +0000 (22:29 +0100)]
gnu: mit-krb5: Patch and enable tests.
* gnu/packages/mit-krb5.scm (mit-krb5): Enable patched tests.
Ludovic Courtès [Sun, 20 Jan 2013 14:46:17 +0000 (15:46 +0100)]
Update `THANKS'.
Ludovic Courtès [Sun, 20 Jan 2013 14:45:14 +0000 (15:45 +0100)]
doc: Run `useradd -g guix-builder -G guix-builder'.
* doc/guix.texi (Setting Up the Daemon): Add `-G guix-builder' when
invoking `useradd'.
Suggested by Aleix Conchillo Flaqué <aconchillo@gmail.com>.
Andreas Enge [Sun, 20 Jan 2013 11:29:09 +0000 (12:29 +0100)]
gnu: screen: correct license to gpl2+
* gnu/packages/screen.scm (screen): correct license field
Cyril Roelandt [Sun, 20 Jan 2013 03:45:56 +0000 (04:45 +0100)]
Add GNU Screen.
* gnu/packages/screen.scm: New file.
* Makefile.am (MODULES): Add it.
Ludovic Courtès [Sat, 19 Jan 2013 22:09:36 +0000 (23:09 +0100)]
build: Use "nix-instantiate" as the default name for that program.
* configure.ac: Have `NIX_INSTANTIATE' default to `nix-instantiate'.
Ludovic Courtès [Sat, 19 Jan 2013 21:32:21 +0000 (22:32 +0100)]
gnu: lout: Add missing dependency on Ghostscript.
* gnu/packages/lout.scm (lout): Add GHOSTSCRIPT as an input. Use a
mirror:// URL.
Ludovic Courtès [Sat, 19 Jan 2013 21:31:17 +0000 (22:31 +0100)]
gnu: freetype: Avoid license/package name clash.
* gnu/packages/freetype.scm: Use a renamer for (guix licenses), to avoid
a name clash.
Ludovic Courtès [Wed, 16 Jan 2013 22:01:24 +0000 (23:01 +0100)]
distro: glib: Run the test suite; add DBus.
* distro/packages/glib.scm: Rename to...
* gnu/packages/glib.scm: ... this. Update module declaration
accordingly.
(dbus): New variable.
(glib): Change version number to 2.34.3, and adjust URL accordingly.
Add a "doc" output. Add #:configure-flags, #:patches, and #:phases
arguments. Add DBUS as an input, as well a three patches.
* Makefile.am (MODULES): Adjust to file renaming.
(dist_patch_DATA): Add `glib-tests-timezone.patch',
`glib-tests-homedir.patch', and `glib-tests-desktop.patch'.
Nikita Karetnikov [Tue, 15 Jan 2013 02:49:01 +0000 (02:49 +0000)]
distro: Add GLib.
* distro/packages/glib.scm: New file.
* Makefile.am (MODULES): Add it.
Andreas Enge [Sat, 19 Jan 2013 16:34:26 +0000 (17:34 +0100)]
gnu: libtiff: Add zlib support.
* gnu/packages/libtiff.scm (libtiff): Add input zlib.
Andreas Enge [Sat, 19 Jan 2013 14:17:28 +0000 (15:17 +0100)]
gnu: Add libxml2.
* gnu/packages/xml.scm (libxml2): New variable.
Andreas Enge [Sat, 19 Jan 2013 12:44:42 +0000 (13:44 +0100)]
gnu: Add GNU Ghostscript and its dependencies libpaper and lcms.
* gnu/packages/ghostscrip.scm: New file.
* Makefile.am (MODULES): Add it.
Andreas Enge [Sat, 19 Jan 2013 11:28:55 +0000 (12:28 +0100)]
gnu: Add Freetype.
licenses: Add freetype license.
* gnu/packages/freetype.scm: New file.
* guix/licenses.scm (freetype): New variable.
* Makefile.am (MODULES): Add freetype.scm.
Nikita Karetnikov [Fri, 18 Jan 2013 07:27:06 +0000 (07:27 +0000)]
gnu: ddrescue: Fix 'synopsis' and 'description'.
* gnu/packages/ddrescue.scm (ddrescue): Fix 'synopsis' and 'description'.
Nikita Karetnikov [Sat, 19 Jan 2013 00:35:23 +0000 (00:35 +0000)]
gnu: Add GNU Speex.
* gnu/packages/oggvorbis.scm (speex): Add it.
(vorbis-tools): Add 'speex' to 'inputs'.
Andreas Enge [Fri, 18 Jan 2013 22:55:07 +0000 (23:55 +0100)]
gnu: Amended previous patch.
* Makefile.am (MODULES): Add libpng.scm.
Andreas Enge [Fri, 18 Jan 2013 22:49:38 +0000 (23:49 +0100)]
gnu: Add libpng.
* gnu/packages/libpng.scm: New file.
* Makefile.am (MODULES): Add it.
Andreas Enge [Fri, 18 Jan 2013 21:48:28 +0000 (22:48 +0100)]
licenses: Add 'vim'.
* guix/licenses.scm (vim): New variable.
Andreas Enge [Fri, 18 Jan 2013 10:02:26 +0000 (11:02 +0100)]
gnu: Add libogg, libvorbis and vorbis-tools.
* gnu/packages/oggvorbis.scm: New file.
* Makefile.am (MODULES): Add it.