Ludovic Courtès [Thu, 18 Jul 2013 22:07:03 +0000 (00:07 +0200)]
doc: Improve build instructions in README and HACKING.
* README (Requirements): Remove Nixpkgs. Remove mentions of building
from Git.
(Installation): Refer to the manual.
* HACKING: List requirements for when building from Git.
Remove the `dot: Command not found' error.
Ludovic Courtès [Wed, 17 Jul 2013 13:33:48 +0000 (15:33 +0200)]
Update NEWS.
Ludovic Courtès [Wed, 17 Jul 2013 13:32:52 +0000 (15:32 +0200)]
gnu: linux-libre: Add alternate URLs.
Fixes <http://bugs.gnu.org/14851>.
Reported by Andreas Enge <andreas@enge.fr>.
* gnu/packages/linux.scm (linux-libre-urls): New procedure.
(linux-libre-headers, linux-libre): Use it.
Ludovic Courtès [Wed, 17 Jul 2013 12:22:05 +0000 (14:22 +0200)]
gnu: tzdata: Update hash.
Fixes <http://bugs.gnu.org/14890>.
Reported by Andreas Enge <andreas@enge.fr>.
* gnu/packages/base.scm (tzdata): Update hash.
Ludovic Courtès [Wed, 17 Jul 2013 09:59:48 +0000 (11:59 +0200)]
doc: Add "Adding New Packages".
* doc/guix.texi (Adding New Packages): New section.
(Packaging Guidelines): Make a subsection thereof.
(From the Source Tarball to the Package): New subsection.
(Contributing): Link to "Adding New Packages".
(Package Modules): Link to modules in Guile's manual.
Ludovic Courtès [Wed, 17 Jul 2013 09:07:28 +0000 (11:07 +0200)]
build: Check the availability of i686-linux binaries.
* build-aux/check-available-binaries.scm (%supported-systems): New
variable.
(native): Map over these.
Ludovic Courtès [Wed, 17 Jul 2013 09:05:19 +0000 (11:05 +0200)]
build: Provide a replacement (srfi srfi-37) when the user's one is broken.
* srfi/srfi-37.scm.in: New file, taken from Guile 2.0.9.
* m4/guix.m4: New macro.
* configure.ac: Use it. Define Automake conditional `INSTALL_SRFI_37'.
* Makefile.am (nobase_nodist_guilemodule_DATA)[INSTALL_SRFI_37]: Add
srfi/srfi-37.scm.
(GOBJECTS)[INSTALL_SRFI_37]: Add srfi/srfi-37.go.
(srfi/srfi-37.scm)[INSTALL_SRFI_37]: New target.
(EXTRA_DIST): Add srfi/srfi-37.scm.in.
Ludovic Courtès [Wed, 17 Jul 2013 09:01:42 +0000 (11:01 +0200)]
doc: Mark 2.0.5 as being the minimum Guile version.
* doc/guix.texi (Requirements): Require Guile 2.0.5+.
* README: Ditto.
Ludovic Courtès [Wed, 17 Jul 2013 09:00:28 +0000 (11:00 +0200)]
Update .po files.
Ludovic Courtès [Tue, 16 Jul 2013 21:46:01 +0000 (23:46 +0200)]
Update NEWS.
Ludovic Courtès [Tue, 16 Jul 2013 21:13:04 +0000 (23:13 +0200)]
doc: Refer to guix-devel@gnu.org.
* doc/guix.texi (Contributing): Refer to guix-devel@gnu.org.
Ludovic Courtès [Tue, 16 Jul 2013 21:12:38 +0000 (23:12 +0200)]
gnu: subversion: Fetch over plain HTTP.
* gnu/packages/version-control.scm (subversion): Use the http:// URL
to work around <http://bugs.gnu.org/14884>. Reported by Mark Weaver
and Andreas Enge.
Ludovic Courtès [Tue, 16 Jul 2013 20:28:06 +0000 (22:28 +0200)]
list-packages: Add links to hydra.gnu.org.
* build-aux/list-packages.scm (package->sxml)[status]: New procedure.
Use it at the end of each description.
(packages->sxml): Add link to hydra.gnu.org.
Ludovic Courtès [Tue, 16 Jul 2013 20:15:23 +0000 (22:15 +0200)]
gnu: libphidget: Add "debug" output.
* gnu/packages/libphidget.scm (libphidget): Add `outputs' field.
Ludovic Courtès [Tue, 16 Jul 2013 13:27:15 +0000 (15:27 +0200)]
hydra: Fix typo.
* build-aux/hydra/gnu-system.scm (hydra-jobs): Use `cons', not `append'.
Ludovic Courtès [Tue, 16 Jul 2013 11:42:34 +0000 (13:42 +0200)]
hydra: Build for all the specified systems.
* build-aux/hydra/gnu-system.scm (hydra-jobs): Pick all the `system'
keys in ARGUMENTS.
[cross-jobs]: Turn into a procedure, with a `system' parameter.
Build packages for all of SYSTEMS and %CROSS-TARGETS.
Ludovic Courtès [Tue, 16 Jul 2013 07:59:25 +0000 (09:59 +0200)]
hydra: Distinguish between jobs for different system types.
* build-aux/hydra/gnu-system.scm (package-job, package-cross-job):
Append `.SYSTEM' to the job name.
Ludovic Courtès [Tue, 16 Jul 2013 07:47:01 +0000 (09:47 +0200)]
hydra: Honor the `system' argument.
* build-aux/hydra/gnu-system.scm (hydra-jobs): Really look up the
`system' symbol in ARGUMENTS.
Andreas Enge [Tue, 16 Jul 2013 05:50:34 +0000 (07:50 +0200)]
gnu: libapr, libaprutil: Upgrade.
* gnu/packages/libapr.scm (libapr): Upgrade to 1.4.8.
* gnu/packages/libapr.scm (libaprutil): Upgrade to 1.5.2.
Ludovic Courtès [Mon, 15 Jul 2013 21:33:17 +0000 (23:33 +0200)]
guix package: Allow separate install of several outputs of the same package.
* guix/scripts/package.scm (guix-package)[process-actions](same-package?):
New procedure. Use it instead of `alist-delete' when filtering out
duplicate packages from the profile.
Ludovic Courtès [Mon, 15 Jul 2013 21:06:14 +0000 (23:06 +0200)]
build: Check for the availability of binaries upon "distcheck".
* build-aux/check-available-binaries.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
(distcheck-hook, assert-binaries-available): New target.
Ludovic Courtès [Mon, 15 Jul 2013 16:28:29 +0000 (18:28 +0200)]
Thank the translators.
Ludovic Courtès [Mon, 15 Jul 2013 16:26:16 +0000 (18:26 +0200)]
Add `pt_BR' translation.
Andreas Enge [Mon, 15 Jul 2013 21:15:45 +0000 (23:15 +0200)]
gnu: pango, gtk+: Propagate inputs.
* gnu/packages/gtk.scm (pango): Propagate input cairo.
* gnu/packages/gtk.scm (gtk+): Propagate inputs atk, gdk-pixbuf and pango;
drop input cairo, propagated through pango.
Andreas Enge [Mon, 15 Jul 2013 20:41:19 +0000 (22:41 +0200)]
Add gtk+.
* gnu/packages/gtk.scm (pango): Propagate input harfbuzz.
* gnu/packages/gtk.scm (gtk+): New variable.
Ludovic Courtès [Sun, 14 Jul 2013 14:58:43 +0000 (16:58 +0200)]
gnu: make-bootstrap: Skip tests for the statically-linked gawk.
* gnu/packages/make-bootstrap.scm (%static-inputs)[gawk]: Add #:tests? #f.
Ludovic Courtès [Sun, 14 Jul 2013 14:43:40 +0000 (16:43 +0200)]
Update `eo.po'.
Ludovic Courtès [Sun, 14 Jul 2013 14:35:37 +0000 (16:35 +0200)]
Rename (guix web) to (guix http-client).
* guix/web.scm: Rename to...
* guix/http-client.scm: ... this.
* guix/gnu-maintenance.scm, guix/scripts/substitute-binary.scm,
Makefile.am, po/POTFILES.in: Update accordingly.
Nikita Karetnikov [Sat, 13 Jul 2013 20:55:36 +0000 (20:55 +0000)]
doc: Add "Building from Git" to 'HACKING'.
Ludovic Courtès [Fri, 12 Jul 2013 21:27:35 +0000 (23:27 +0200)]
guix package: Fix handling of `-e'.
This fixes a bug whereby a command like
guix package -e '(@@ (gnu packages base) gnu-make-boot0)'
would only succeed when the outputs of that package are available, and
otherwise fail with "/nix/store/... is not valid".
* guix/scripts/package.scm (guix-package)[process-action](package->tuple):
Leave P as is in the result. Move `package->tuple' call from INSTALL*
to INSTALL.
Ludovic Courtès [Fri, 12 Jul 2013 21:01:07 +0000 (23:01 +0200)]
ui: Ignore SIGPIPE and catch `system-error' exceptions.
* guix/ui.scm (initialize-guix): Call `sigaction'.
(call-with-error-handling): Wrap `thunk' in a (catch 'system-error ...).
Ludovic Courtès [Fri, 12 Jul 2013 20:59:33 +0000 (22:59 +0200)]
guix package: Reuse FTP connections for subsequent `latest-release' calls.
* guix/gnu-maintenance.scm (latest-release): Add `ftp-close' and
`ftp-open' keyword parameters.
* guix/scripts/package.scm (ftp-open*): New variable.
(check-package-freshness): Call `latest-release' with `ftp-open*' and
a no-op procedure.
Ludovic Courtès [Fri, 12 Jul 2013 20:26:24 +0000 (22:26 +0200)]
gnu-maintenance: `latest-release' closes its connection.
* guix/gnu-maintenance.scm (latest-release): Close CONN before
returning.
Ludovic Courtès [Fri, 12 Jul 2013 20:25:30 +0000 (22:25 +0200)]
gnu: plotutils: Allow compilation with newer libpng.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/patches/plotutils-libpng-jmpbuf.patch: New file.
* gnu/packages/plotutils.scm (plotutils): Add
`plotutils-libpng-jmpbuf.patch' as an input, and apply it.
Ludovic Courtès [Thu, 11 Jul 2013 23:05:27 +0000 (01:05 +0200)]
gnu: freeipmi: Upgrade to 1.2.8.
* gnu/packages/freeipmi.scm (freeipmi): Upgrade to 1.2.8.
Ludovic Courtès [Thu, 11 Jul 2013 23:05:06 +0000 (01:05 +0200)]
gnu: libidn: Upgrade to 1.28.
* gnu/packages/libidn.scm (libidn): Upgrade to 1.28.
Ludovic Courtès [Thu, 11 Jul 2013 23:04:32 +0000 (01:04 +0200)]
gnu: gnupg: Upgrade support libraries.
* gnu/packages/gnupg.scm (libgpg-error): Upgrade to 1.12.
(libassuan): Upgrade to 2.1.1.
Ludovic Courtès [Thu, 11 Jul 2013 20:42:41 +0000 (22:42 +0200)]
substitute-binary: Directly replace the global `regexp-exec'.
* guix/scripts/substitute-binary.scm (%regexp-exec-mutex, string->uri):
Remove.
(regexp-exec): Replace this global binding by a thread-safety wrapper.
(fields->alist): Remove `with-mutex', and directly alias `recutils->alist'.
Ludovic Courtès [Thu, 11 Jul 2013 20:30:46 +0000 (22:30 +0200)]
gnu: help2man: Upgrade to 1.43.3.
* gnu/packages/help2man.scm (help2man): Upgrade to 1.43.3.
Ludovic Courtès [Thu, 11 Jul 2013 20:30:13 +0000 (22:30 +0200)]
gnu: xorriso: Upgrade to 1.3.0.
* gnu/packages/cdrom.scm (xorriso): Upgrade to 1.3.0.
Ludovic Courtès [Thu, 11 Jul 2013 20:22:22 +0000 (22:22 +0200)]
substitute-binary: Increase the default timeout.
* guix/scripts/substitute-binary.scm (%fetch-timeout): Set to 5 seconds.
Ludovic Courtès [Thu, 11 Jul 2013 20:21:47 +0000 (22:21 +0200)]
gnu: automake: Upgrade to 1.14.
* gnu/packages/autotools.scm (automake): Upgrade to 1.14.
Ludovic Courtès [Thu, 11 Jul 2013 17:56:30 +0000 (19:56 +0200)]
guix refresh: Keep only the newest versions of packages as upgrade candidates.
* guix/scripts/refresh.scm (guix-refresh)[keep-newest]: New procedure.
Use it to keep only once copy of each package.
Ludovic Courtès [Wed, 10 Jul 2013 21:16:07 +0000 (23:16 +0200)]
list-packages: Show the package logo, when available.
* build-aux/list-packages.scm (lookup-gnu-package): New procedure.
(package->sxml): Add the package logo, when available, next to the
description.
Ludovic Courtès [Wed, 10 Jul 2013 18:01:46 +0000 (20:01 +0200)]
Update eo.po.
Ludovic Courtès [Wed, 10 Jul 2013 20:33:40 +0000 (22:33 +0200)]
gnu-maintenance: Add `doc-description' field to <gnu-package-descriptor>.
* guix/gnu-maintenance.scm (%gsrc-package-list-url): New variable.
(<gnu-package-descriptor>): Add `doc-description' field.
(official-gnu-packages)[group-package-fields]: Rename to...
[read-records]: ... this. Reverse the result.
[gsrc-description]: New procedure.
Add the "description" field to the alist passed to `alist->record'.
Ludovic Courtès [Wed, 10 Jul 2013 16:26:46 +0000 (18:26 +0200)]
records: `recutils->alist' recognizes lines starting with a `+'.
* guix/records.scm (%recutils-plus-rx): New variable.
(recutils->alist): Use it to read + lines.
* tests/records.scm ("recutils->alist with + lines"): New test.
Ludovic Courtès [Wed, 10 Jul 2013 16:08:09 +0000 (18:08 +0200)]
gnu-maintenance: Use `recutils->alist'.
* guix/gnu-maintenance.scm (official-gnu-packages)[group-package-fields]:
Rewrite in terms of `recutils->alist'. Remove `state' parameter.
Specify "doc-url" and "language" as multiple-value keys in the
`alist->record' call.
Ludovic Courtès [Wed, 10 Jul 2013 16:04:08 +0000 (18:04 +0200)]
records: `alist->record' supports multiple-field occurrences.
* guix/records.scm (alist->record): Add `multiple-value-keys'
parameter. Update docstring, and honor it.
* tests/records.scm ("alist->record"): New record.
Ludovic Courtès [Wed, 10 Jul 2013 15:01:47 +0000 (17:01 +0200)]
records: `recutils->alist' recognizes comments.
* guix/records.scm (%recutils-comment-rx): New variable.
(recutils->alist): Match comments.
* tests/records.scm ("recutils->alist"): Add comments.
Ludovic Courtès [Wed, 10 Jul 2013 14:54:17 +0000 (16:54 +0200)]
records: Add `recutils->alist' for public consumption.
* guix/records.scm (%recutils-field-rx): New variable.
(recutils->alist): New procedure, formerly known as `fields->alist'.
* guix/scripts/substitute-binary.scm (fields->alist): Use it.
* tests/records.scm ("recutils->alist"): New test.
Ludovic Courtès [Wed, 10 Jul 2013 13:55:39 +0000 (15:55 +0200)]
gnu: libpng: Upgrade to 1.5.17.
* gnu/packages/libpng.scm (libpng): Upgrade to 1.5.17.
Ludovic Courtès [Wed, 10 Jul 2013 09:52:35 +0000 (11:52 +0200)]
list-packages: Write out the HTML page as UTF-8.
* build-aux/list-packages.scm (list-packages): Install the "C" locale.
Write out as UTF-8.
Ludovic Courtès [Tue, 9 Jul 2013 23:00:19 +0000 (01:00 +0200)]
tests: Fix guix-package.sh in the presence of multiple-output `make'.
* tests/guix-package.sh: For $boot_make_drv, take only the "out" output.
Reported by Nikita Karetnikov <nikita@karetnikov.org>.
Ludovic Courtès [Tue, 9 Jul 2013 22:27:53 +0000 (00:27 +0200)]
Add `build-aux/list-packages.scm'.
* build-aux/list-packages.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
Ludovic Courtès [Tue, 9 Jul 2013 20:17:18 +0000 (22:17 +0200)]
Merge branch 'core-updates'
Ludovic Courtès [Mon, 8 Jul 2013 22:24:54 +0000 (00:24 +0200)]
doc: Add "Installing Debugging Files".
* doc/guix.texi (Installing Debugging Files): New node.
(Packages with Multiple Outputs): Add cross-reference.
Ludovic Courtès [Mon, 8 Jul 2013 21:33:45 +0000 (23:33 +0200)]
doc: Add "Packages with Multiple Outputs" section.
* doc/guix.texi (Packages with Multiple Outputs): New node.
(Invoking guix package): Refer to it.
Ludovic Courtès [Mon, 8 Jul 2013 20:53:31 +0000 (22:53 +0200)]
tests: Adjust `package-field-location' test for Guile <= 2.0.6.
* tests/packages.scm ("package-field-location"): Check the result of
`read-at' against both VALUE and (FIELD VALUE).
Reported by Matthew Lien - 練喆明" <bluet@bluet.org>.
Ludovic Courtès [Mon, 8 Jul 2013 20:37:02 +0000 (22:37 +0200)]
build: Set the umask to 0022 before running the daemon for tests.
* test-env.in: Run "umask 0022" before running the daemon.
Reported by Matthew Lien - 練喆明 <bluet@bluet.org>
Ludovic Courtès [Mon, 8 Jul 2013 20:37:02 +0000 (22:37 +0200)]
build: Set the umask to 0022 before running the daemon for tests.
* test-env.in: Run "umask 0022" before running the daemon.
Reported by Matthew Lien - 練喆明 <bluet@bluet.org>
Ludovic Courtès [Sun, 7 Jul 2013 22:13:15 +0000 (00:13 +0200)]
gnu: gettext: Upgrade to 0.18.3.
* gnu/packages/gettext.scm (gettext): Upgrade to 0.18.3.
Remove patch. Change `patch-tests' phase to use (which "sh'); keep it
regardless of whether we're cross compiling.
Ludovic Courtès [Sun, 7 Jul 2013 21:40:36 +0000 (23:40 +0200)]
gnu: tzdata: Upgrade to 2013d.
* gnu/packages/base.scm (tzdata): Upgrade to 2013d.
Ludovic Courtès [Sun, 7 Jul 2013 21:26:31 +0000 (23:26 +0200)]
doc: Move the packaging guidelines to the manual.
* HACKING (Packaging Guidelines): Remove.
* doc/guix.texi (Packaging Guidelines): New node.
Ludovic Courtès [Sat, 6 Jul 2013 23:02:48 +0000 (01:02 +0200)]
doc: Add a "Porting" section.
* HACKING (Porting the Guix distro on a new platform): Remove.
* doc/guix.texi (Porting): New node. Describe cross-compilation as the
only approach.
Ludovic Courtès [Sat, 6 Jul 2013 22:29:50 +0000 (00:29 +0200)]
doc: Add a "Boostrapping" section.
* doc/guix.texi (Package Modules): New node, with material formerly
under "GNU Distribution".
(Bootstrapping): New node.
* Makefile.am (EXTRA_DIST): Add doc/images/bootstrap-graph.dot and
doc/images/bootstrap-graph.eps.
(infoimagedir, dist_infoimage_DATA, DOT_OPTIONS): New variable.
(.dot.png, .dot.eps, doc/guix.pdf, doc/guix.info, doc/guix.ps): New
targets.
* doc/images/bootstrap-graph.dot: New file.
Ludovic Courtès [Sat, 6 Jul 2013 16:08:29 +0000 (18:08 +0200)]
gnu: gcc: Add Texinfo to the native inputs.
* gnu/packages/gcc.scm (gcc-4.7): Add `native-inputs' field.
(gcc-4.8): Remove outdated comment.
* gnu/packages/base.scm (gcc-boot0): Add `native-inputs' field.
Ludovic Courtès [Fri, 5 Jul 2013 19:54:52 +0000 (21:54 +0200)]
build: Bail out on unsupported platforms; add `--with-courage'.
* m4/guix.m4 (GUIX_ASSERT_SUPPORTED_SYSTEM): New macro.
* configure.ac: Use it.
Ludovic Courtès [Fri, 5 Jul 2013 12:39:47 +0000 (14:39 +0200)]
gnu: make-bootstrap: guile-static-stripped has no "debug" output.
* gnu/packages/make-bootstrap.scm (%guile-static-stripped): Add
`outputs' field.
Ludovic Courtès [Fri, 5 Jul 2013 12:14:21 +0000 (14:14 +0200)]
build: Correctly determine the system type for non-Linux systems.
* m4/guix.m4 (GUIX_SYSTEM_TYPE): Find `sed'. Fix sed pattern in the
non-Linux case.
Ludovic Courtès [Thu, 4 Jul 2013 20:49:00 +0000 (22:49 +0200)]
store: Deal with unsupported `setsockopt' operation on GNU/Hurd.
* guix/store.scm (open-connection): Silently ignore ENOPROTOOPT on
`setsockopt' calls, for the sake of GNU/Hurd.
Reported by Matthew Lien <bluet@bluet.org> at
<http://lists.gnu.org/archive/html/bug-guix/2013-07/msg00020.html>.
Ludovic Courtès [Thu, 4 Jul 2013 20:46:26 +0000 (22:46 +0200)]
daemon: Make argp usage compatible with libc on GNU/Hurd.
* nix/nix-daemon/guix-daemon.cc (parse_opt): Cast return value to
`error_t' for the sake of GNU/Hurd.
Reported by Matthew Lien <bluet@bluet.org> at
<http://lists.gnu.org/archive/html/bug-guix/2013-07/msg00002.html>.
Ludovic Courtès [Thu, 4 Jul 2013 11:43:54 +0000 (13:43 +0200)]
Import (guix hash) in build-aux/download.scm.
* build-aux/download.scm: Import (guix hash).
Reported by Matthew Lien <bluet@bluet.org>.
Ludovic Courtès [Thu, 4 Jul 2013 11:26:35 +0000 (13:26 +0200)]
build-system/gnu: Remove the "debug" output when `strip-binaries?' is #f.
* guix/build-system/gnu.scm (gnu-build, gnu-cross-build): Delete "debug"
from OUTPUTS when STRIP-BINARIES? is false.
* gnu/packages/cross-base.scm (cross-libc): Leave `outputs' unchanged.
This reverts commit
a4627d4.
Ludovic Courtès [Thu, 4 Jul 2013 09:08:28 +0000 (11:08 +0200)]
gnu: cross-libc: Remove the "debug" output.
* gnu/packages/cross-base.scm (cross-libc): Remove "debug" from the
`outputs' field.
Ludovic Courtès [Wed, 3 Jul 2013 21:55:04 +0000 (23:55 +0200)]
gnu: Add a "debug" output for some packages.
* gnu/packages/base.scm (coreutils, gnu-make, glibc): Add a "debug" output.
* gnu/packages/bdw-gc.scm (libgc): Likewise.
* gnu/packages/guile.scm (guile-2.0): Likewise.
* gnu/packages/libffi.scm (libffi): Likewise.
* gnu/packages/multiprecision.scm (gmp, mpfr, mpc): Likewise.
Ludovic Courtès [Wed, 3 Jul 2013 21:53:31 +0000 (23:53 +0200)]
build-system/gnu: Write debug files to the "debug" sub-derivation, if any.
* guix/build/gnu-build-system.scm (strip): Add `objcopy-command' keyword
parameter.
[debug-output, debug-file-extension]: New variables.
[debug-file, make-debug-file, add-debug-link]: New procedures.
[strip-dir]: Use them.
Ludovic Courtès [Wed, 3 Jul 2013 21:08:41 +0000 (23:08 +0200)]
utils: Re-export `alist-cons' and `alist-delete'.
* guix/build/utils.scm: Re-export `alist-cons' and `alist-delete'.
Ludovic Courtès [Wed, 3 Jul 2013 13:10:34 +0000 (15:10 +0200)]
gnu: Add noweb.
* gnu/packages/noweb.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
Ludovic Courtès [Tue, 2 Jul 2013 23:04:57 +0000 (01:04 +0200)]
gnu: qemu: Upgrade to 1.5.1.
* gnu/packages/qemu.scm (qemu-kvm): Add `--cc' configure option.
Add PIXMAN and ALSA-LIB as inputs.
(qemu): Upgrade to 1.5.1 Remove autotool hack for pixman. Patch
tests/libqtest.c. Remove Autoconf, Automake, and Libtool from the
inputs. Fix `home-page'.
Ludovic Courtès [Tue, 2 Jul 2013 20:58:50 +0000 (22:58 +0200)]
Update `NEWS' and `TODO'.
Ludovic Courtès [Tue, 2 Jul 2013 23:17:11 +0000 (01:17 +0200)]
Use `port-sha256' and `open-sha256-port'.
* guix/derivations.scm (derivation-hash): Add comment as to why we keep
the plain `sha256' call.
* guix/scripts/download.scm (guix-download): Use `port-sha256' instead
of (compose sha256 get-bytevector-all).
* guix/scripts/refresh.scm (update-package): Likewise.
Ludovic Courtès [Tue, 2 Jul 2013 20:38:03 +0000 (22:38 +0200)]
hash: Add `open-sha256-port'.
* guix/hash.scm (GCRY_MD_SHA256): New macro.
(sha256): Use it.
(open-sha256-md, md-write, md-read, md-close, open-sha256-port,
port-sha256): New procedures.
* tests/hash.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
Ludovic Courtès [Mon, 1 Jul 2013 21:28:21 +0000 (23:28 +0200)]
Move `sha256' to (guix hash).
* guix/utils.scm (sha256): Move to...
* guix/hash.scm: ... here. New file.
* Makefile.am (MODULES): Add it.
* guix/derivations.scm, guix/scripts/download.scm,
guix/scripts/hash.scm, guix/scripts/refresh.scm, tests/base32.scm,
tests/derivations.scm, tests/store.scm: Use (guix hash).
Ludovic Courtès [Mon, 1 Jul 2013 09:43:23 +0000 (11:43 +0200)]
gnu: liboop: Fix & improve meta-data.
* gnu/packages/lsh.scm (liboop): Fix home page. Improve `synopsis' and
`description'. Thanks to carl hansen <carlhansen1234@gmail.com>, who
raised it on bug-gsrc@gnu.org.
Ludovic Courtès [Sun, 30 Jun 2013 22:29:22 +0000 (00:29 +0200)]
ui: Don't make substituter-related RPCs at all when substitutes are disabled.
Reported by Nikita Karetnikov and Cyril Roelandt.
* guix/ui.scm (show-what-to-build): Call `substitutable-path-info'
only when USE-SUBSTITUTES? is true.
Ludovic Courtès [Sun, 30 Jun 2013 22:18:36 +0000 (00:18 +0200)]
gnu: Add GNU vc-dwim.
* gnu/packages/version-control.scm (vc-dwim): New variable.
Ludovic Courtès [Sat, 29 Jun 2013 20:20:11 +0000 (22:20 +0200)]
gnu: Add GNU Rush.
* gnu/packages/rush.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
Ludovic Courtès [Sat, 29 Jun 2013 20:10:06 +0000 (22:10 +0200)]
substitute-binary: Avoid dangling connections to the server.
* guix/web.scm (open-socket-for-uri): New procedure.
(http-fetch): Add `port' keyword parameter; use it.
* guix/scripts/substitute-binary.scm (%random-state): New variable.
(with-timeout): Wait a little before retrying.
(fetch): Use `open-socket-for-uri', and keep a copy of the socket in
variable `port'. Close PORT upon timeout.
Cyril Roelandt [Thu, 27 Jun 2013 21:57:45 +0000 (23:57 +0200)]
gnutls: fix the test-suite for 32 bits systems.
* gnu/packages/patches/gnutls-fix-tests-on-32-bits-system.patch: New file.
* gnu-system.am: Add it here...
* gnu/packages/gnutls.scm (gnutls): ... and use it here.
Thanks to Nikos Mavrogiannopoulos for providing this patch:
http://permalink.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/6778
Ludovic Courtès [Thu, 27 Jun 2013 20:36:41 +0000 (22:36 +0200)]
gnu: lout: Upgrade to 3.40.
* gnu/packages/lout.scm (lout): Upgrade to 3.40.
Ludovic Courtès [Thu, 27 Jun 2013 20:36:23 +0000 (22:36 +0200)]
download: Add Savannah's master site.
* guix/download.scm (%mirrors): Add the "-noredirect" version of
Savannah.
Ludovic Courtès [Thu, 27 Jun 2013 20:27:26 +0000 (22:27 +0200)]
gnu: lsh: Upgrade to 2.1.
* gnu/packages/lsh.scm (lsh): Upgrade to 2.1. Add Nettle as an input.
Remove now unneeded patches.
* gnu/packages/patches/lsh-guile-compat.patch,
gnu/packages/patches/lsh-no-root-login.patch,
gnu/packages/patches/lsh-pam-service-name.patch: Remove.
* gnu-system.am (dist_patch_DATA): Remove them.
Ludovic Courtès [Wed, 26 Jun 2013 21:02:49 +0000 (23:02 +0200)]
gnu: gcc: Use `gcc-configure-flags-for-triplet' when cross-compiling GCC.
* gnu/packages/cross-base.scm (gcc-configure-flags-for-triplet): Move to...
* gnu/packages/gcc.scm (gcc-configure-flags-for-triplet): ... here. New
procedure.
(gcc-4.7): Use it when (%current-target-system) is true.
Ludovic Courtès [Wed, 26 Jun 2013 20:41:09 +0000 (22:41 +0200)]
build: Add "mips64el-linux-gnuabi64" as a cross build target.
* build-aux/hydra/gnu-system.scm (%packages-to-cross-build): Add
%bootstrap-tarballs.
(%cross-targets): Add "mips64el-linux-gnuabi64".
Ludovic Courtès [Wed, 26 Jun 2013 20:37:38 +0000 (22:37 +0200)]
gnu: cross-base: Add support for `mips64el-linux-gnu-gnuabi64' (N64 ABI).
* gnu/packages/cross-base.scm (gcc-configure-flags-for-triplet): New
procedure.
(cross-gcc): Use it.
(xgcc-mips64el): Use *-gnuabi64 instead of the N32 ABI.
Ludovic Courtès [Wed, 26 Jun 2013 15:23:56 +0000 (17:23 +0200)]
gnu: make-bootstrap: Fix cross compilation of binutils-static.
* gnu/packages/make-bootstrap.scm (%binutils-static): Inherit configure
flags from BINUTILS.
Ludovic Courtès [Wed, 26 Jun 2013 15:01:10 +0000 (17:01 +0200)]
gnu: make-bootstrap: Have %gcc-static actually static when cross building.
* gnu/packages/make-bootstrap.scm (%gcc-static): Pass `-static' through
`LDFLAGS' when cross-compiling.
Ludovic Courtès [Wed, 26 Jun 2013 14:51:39 +0000 (16:51 +0200)]
gnu: gcc: Allow cross-compilation of GCC itself.
* gnu/packages/gcc.scm (gcc-4.7): Define `CC_FOR_TARGET',
`AR_FOR_TARGET', etc. when cross-compiling.
Ludovic Courtès [Wed, 26 Jun 2013 14:27:51 +0000 (16:27 +0200)]
gnu: cross-base: Make `glibc-dynamic-linker' do the right thing.
* gnu/packages/bootstrap.scm (glibc-dynamic-linker): Determine SYSTEM
based on (%current-target-system) when it's true.
* gnu/packages/cross-base.scm (cross-gcc): Directly call
(package-arguments gcc-4.7) from the body of `arguments'.