jackhill/guix/guix.git
9 years agolicenses: Add 'imlib2'.
Alex Kost [Sun, 26 Oct 2014 12:27:56 +0000 (15:27 +0300)]
licenses: Add 'imlib2'.

* guix/licenses.scm (imlib2): New variable.
* gnu/packages/image.scm (imlib2): Use it.

9 years agognu: Some cleanup based on lint checkers.
Eric Bavier [Fri, 24 Oct 2014 04:46:59 +0000 (23:46 -0500)]
gnu: Some cleanup based on lint checkers.

* gnu/packages/admin.scm, gnu/packages/aidc.scm, gnu/packages/algebra.scm,
  gnu/packages/apr.scm, gnu/packages/avahi.scm, gnu/packages/backup.scm,
  gnu/packages/base.scm, gnu/packages/calcurse.scm, gnu/packages/cdrom.scm,
  gnu/packages/check.scm, gnu/packages/compression.scm, gnu/packages/cook.scm,
  gnu/packages/crypto.scm, gnu/packages/cryptsetup.scm, gnu/packages/curl.scm,
  gnu/packages/cyrus-sasl.scm, gnu/packages/databases.scm,
  gnu/packages/doxygen.scm, gnu/packages/dwm.scm, gnu/packages/elf.scm,
  gnu/packages/emacs.scm, gnu/packages/feh.scm, gnu/packages/file.scm,
  gnu/packages/fish.scm, gnu/packages/flex.scm, gnu/packages/fltk.scm,
  gnu/packages/fontutils.scm, gnu/packages/games.scm, gnu/packages/gcal.scm,
  gnu/packages/gcc.scm, gnu/packages/geeqie.scm, gnu/packages/ghostscript.scm,
  gnu/packages/gimp.scm, gnu/packages/gl.scm, gnu/packages/glib.scm,
  gnu/packages/gnome.scm, gnu/packages/gnunet.scm, gnu/packages/gnupg.scm,
  gnu/packages/gperf.scm, gnu/packages/grub.scm, gnu/packages/gsasl.scm,
  gnu/packages/gtk.scm, gnu/packages/guile-wm.scm, gnu/packages/guile.scm,
  gnu/packages/hurd.scm, gnu/packages/icu4c.scm, gnu/packages/image.scm,
  gnu/packages/imagemagick.scm, gnu/packages/irssi.scm, gnu/packages/kde.scm,
  gnu/packages/libdaemon.scm, gnu/packages/libevent.scm,
  gnu/packages/libidn.scm, gnu/packages/libusb.scm, gnu/packages/linux.scm,
  gnu/packages/lout.scm, gnu/packages/lsh.scm, gnu/packages/lsof.scm,
  gnu/packages/lua.scm, gnu/packages/maths.scm, gnu/packages/mcrypt.scm,
  gnu/packages/mp3.scm, gnu/packages/netpbm.scm, gnu/packages/noweb.scm,
  gnu/packages/ocaml.scm, gnu/packages/openssl.scm, gnu/packages/pcre.scm,
  gnu/packages/pdf.scm, gnu/packages/pkg-config.scm,
  gnu/packages/pretty-print.scm, gnu/packages/python.scm, gnu/packages/qt.scm,
  gnu/packages/rsync.scm, gnu/packages/scheme.scm, gnu/packages/scrot.scm,
  gnu/packages/sdl.scm, gnu/packages/skribilo.scm, gnu/packages/ssh.scm,
  gnu/packages/stalonetray.scm, gnu/packages/tcl.scm, gnu/packages/tcsh.scm,
  gnu/packages/telephony.scm, gnu/packages/texlive.scm, gnu/packages/tor.scm,
  gnu/packages/valgrind.scm, gnu/packages/version-control.scm,
  gnu/packages/vim.scm, gnu/packages/vpn.scm, gnu/packages/w3m.scm,
  gnu/packages/web.scm, gnu/packages/wordnet.scm, gnu/packages/xiph.scm,
  gnu/packages/xml.scm, gnu/packages/xorg.scm, gnu/packages/zile.scm,
  gnu/packages/zip.scm, gnu/packages/zsh.scm [synopsis, description]: Adjust
  according to lint checkers.
* gnu/packages/fltk.scm (fltk)[source]: Wrap long line in uri.
* /gnu/packages/xiph.scm (libogg, libtheora, vorbis-tools)[source]: Same.

9 years agoguix: lint: Make exception for package name starting description.
Eric Bavier [Sun, 26 Oct 2014 17:36:42 +0000 (12:36 -0500)]
guix: lint: Make exception for package name starting description.

* guix/scripts/lint.scm (check-description-style): Exception for
  upper-case rule if the description starts with the package name.
* tests/lint.scm: Test it.

9 years agoguix: lint: Allow digits at start of synopsis or description.
Eric Bavier [Sat, 25 Oct 2014 16:29:34 +0000 (11:29 -0500)]
guix: lint: Allow digits at start of synopsis or description.

* guix/scripts/lint.scm (start-with-capital-letter?): Rename too...
  (properly-starts-sentence?): Rewrite with regex and add digits.
  (check-description-style, check-synopsis-style): Use it.
* tests/lint.scm: Add tests.

9 years agoguix: lint: Check for empty synopses and descriptions.
Eric Bavier [Wed, 22 Oct 2014 18:48:55 +0000 (13:48 -0500)]
guix: lint: Check for empty synopses and descriptions.

* guix/scripts/lint.scm (check-description-style,
  check-synopsis-style): New emptiness checks.
* tests/lint.scm: Test them.

9 years agoguix: lint: Check for proper end-of-sentence space.
Eric Bavier [Wed, 22 Oct 2014 18:47:01 +0000 (13:47 -0500)]
guix: lint: Check for proper end-of-sentence space.

* guix/scripts/lint.scm (start-with-capital-letter?): Handle empty
  strings.
  (check-description-style): New check for end-of-sentence space.
* tests/lint.scm: Test it.

9 years agoguix: lint: Use if/when consistently.
Eric Bavier [Wed, 22 Oct 2014 17:01:04 +0000 (12:01 -0500)]
guix: lint: Use if/when consistently.

* guix/scripts/lint.scm (check-synopsis-style): Replace single-branch
  uses of if with when.
  (check-patches): Same

9 years agoguix: lint: Use string-suffix? and string-prefix? where appropriate.
Eric Bavier [Wed, 22 Oct 2014 14:20:20 +0000 (09:20 -0500)]
guix: lint: Use string-suffix? and string-prefix? where appropriate.

* guix/scripts/lint.scm (check-synopsis): Use string-suffix? and
  string-prefix? in place of string-take and string=?.

9 years agognu: Add ATLAS.
Federico Beffa [Sun, 26 Oct 2014 10:03:02 +0000 (11:03 +0100)]
gnu: Add ATLAS.

* gnu/packages/maths.scm (atlas): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
9 years agoUpdate name and email address for Joshua Grant.
Joshua Grant [Mon, 20 Oct 2014 23:08:37 +0000 (18:08 -0500)]
Update name and email address for Joshua Grant.

9 years agognu: Add cppunit
John Darrington [Mon, 20 Oct 2014 19:37:16 +0000 (21:37 +0200)]
gnu: Add cppunit

* gnu/packages/check.scm (cppunit): New variable.

9 years agognu: pulseaudio: Fix CVE-2014-3970 and intermittent test failures.
Mark H Weaver [Fri, 24 Oct 2014 07:39:34 +0000 (03:39 -0400)]
gnu: pulseaudio: Fix CVE-2014-3970 and intermittent test failures.

* gnu/packages/patches/pulseaudio-CVE-2014-397.patch: New file.
* gnu/packages/patches/pulseaudio-fix-mult-test.patch: New file.
* gnu-system.am (dist_patch_DATA): Add them.
* gnu/packages/pulseaudio.scm (pulseaudio): Add patches.

9 years agognu: acl: Install library and disable failing test suite.
Mark H Weaver [Fri, 24 Oct 2014 01:09:00 +0000 (21:09 -0400)]
gnu: acl: Install library and disable failing test suite.

Previously, this package was completely broken.  It installed only
binaries that failed to run for lack of the shared library.

* gnu/packages/acl.scm (acl): Disable tests.  Remove customized
  'check' phase that ran tests and ignored errors.  Remove 'perl' as
  input, needed only for tests.  Replace 'install' phase with one that
  includes 'install-lib' target.

9 years agognu: openssl: Update to 1.0.1j.
Mark H Weaver [Fri, 24 Oct 2014 00:54:14 +0000 (20:54 -0400)]
gnu: openssl: Update to 1.0.1j.

* gnu/packages/openssl.scm (openssl): Update to 1.0.1j.

9 years agognu: gettext: Update to 0.19.3.
Mark H Weaver [Fri, 24 Oct 2014 00:51:54 +0000 (20:51 -0400)]
gnu: gettext: Update to 0.19.3.

* gnu/packages/gettext.scm (gettext): Update to 0.19.3.

9 years agognu: bash: Update to 4.3.30.
Mark H Weaver [Fri, 24 Oct 2014 00:42:54 +0000 (20:42 -0400)]
gnu: bash: Update to 4.3.30.

* gnu/packages/bash.scm (%patch-series-4.3): Add patches 28-30.
  (bash)[source]: Remove parser-oob patch.  It is superceded by
  upstream patch bash43-028.

9 years agognu: make: Update to 4.1.
Mark H Weaver [Fri, 24 Oct 2014 00:36:50 +0000 (20:36 -0400)]
gnu: make: Update to 4.1.

* gnu/packages/base.scm (make): Update to 4.1.  Adapt 'default_shell'
  substitution to new code.
* gnu/packages/commencement.scm (gnu-make-boot0): Remove code that
  manually removed guile.c from list of things to build.

9 years agognu: ffmpeg: Add version 2.2.9 and use it for vlc.
Mark H Weaver [Sun, 26 Oct 2014 00:05:57 +0000 (20:05 -0400)]
gnu: ffmpeg: Add version 2.2.9 and use it for vlc.

* gnu/packages/video.scm (ffmpeg-2.2): New variable.
  (vlc): Use ffmpeg-2.2.

9 years agognu: python2-pyicu: Update to 1.8.
Andreas Enge [Fri, 24 Oct 2014 19:36:41 +0000 (21:36 +0200)]
gnu: python2-pyicu: Update to 1.8.

* gnu/packages/python.scm (python2-pyicu): Update to 1.8.

9 years agognu: vlc: Update to 2.1.5.
Mark H Weaver [Fri, 24 Oct 2014 00:06:44 +0000 (20:06 -0400)]
gnu: vlc: Update to 2.1.5.

* gnu/packages/video.scm (vlc): Update to 2.1.5.

9 years agognu: icecat: Update to 31.2.0.
Mark H Weaver [Thu, 23 Oct 2014 18:37:08 +0000 (14:37 -0400)]
gnu: icecat: Update to 31.2.0.

* gnu/packages/gnuzilla.scm (icecat): Update to 31.2.0.  Download
  source from GNU mirrors.

9 years agoguix import pypi: Fix a typo in a docstring.
Cyril Roelandt [Wed, 15 Oct 2014 22:46:15 +0000 (00:46 +0200)]
guix import pypi: Fix a typo in a docstring.

* guix/import/pypi.scm (snake-case): Fix documentation.

9 years agoguix import pypi: do not add "python-" to a package name if it's already there.
Cyril Roelandt [Wed, 15 Oct 2014 22:42:51 +0000 (00:42 +0200)]
guix import pypi: do not add "python-" to a package name if it's already there.

* guix/import/pypi.scm (make-pypi-sexp): test whether the package name starts
  with "python-" before modifying it.

9 years agoguix import pypi: add the Apache License 2.0
Cyril Roelandt [Wed, 15 Oct 2014 18:18:00 +0000 (20:18 +0200)]
guix import pypi: add the Apache License 2.0

* guix/import/pypi.scm (string->license): add ASL2.0.

9 years agognu: emacs: Update to 24.4.
Mark H Weaver [Wed, 8 Oct 2014 07:49:43 +0000 (03:49 -0400)]
gnu: emacs: Update to 24.4.

* gnu/packages/patches/emacs-configure-sh.patch: Remove.
* gnu-system.am (dist_patch_DATA): Remove it.
* gnu/packages/emacs.scm (emacs): Update to 24.4.  Add 'acl' as input.
  Remove --with-crt-dir configure option.
  (emacs-no-x-toolkit): Add 'inotify-tools' as input.  Adjust to cope
  with the lack of configure-flags in the main 'emacs' package.

9 years agorefresh: Add end-of-line to error message.
Eric Bavier [Mon, 20 Oct 2014 22:03:02 +0000 (17:03 -0500)]
refresh: Add end-of-line to error message.

* guix/scripts/refresh.scm (%options)[select]: Add end-of-line to
  error message.

9 years agognu: ccache: Upgrade to 3.1.10.
Eric Bavier [Mon, 20 Oct 2014 21:47:58 +0000 (16:47 -0500)]
gnu: ccache: Upgrade to 3.1.10.

* gnu/packages/ccache.scm (ccache): Upgrade to 3.1.10.
  [source]: Remove patches.
* gnu/packages/patches/ccache-stdc-predef-test.patch: Delete patch.
* gnu-system.am (dist_patch_DATA): Remove it.

9 years agognu: ffmpeg: Update to 2.4.2.
Jason Self [Mon, 20 Oct 2014 19:32:42 +0000 (12:32 -0700)]
gnu: ffmpeg: Update to 2.4.2.

* gnu/packages/video.scm (ffmpeg): Update to version 2.4.2.

9 years agognu: Add sane-backends
John Darrington [Sun, 19 Oct 2014 08:21:03 +0000 (10:21 +0200)]
gnu: Add sane-backends

* gnu/packages/scanner.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.

9 years agognu: sqlite: Add readline as input.
Andreas Enge [Mon, 20 Oct 2014 14:09:09 +0000 (16:09 +0200)]
gnu: sqlite: Add readline as input.

* gnu/packages/databases.scm (sqlite): Add input readline.

9 years agognu: Add 'version-prefix' and 'version-major+minor'; use them.
Ian Denhardt [Sun, 19 Oct 2014 02:03:42 +0000 (22:03 -0400)]
gnu: Add 'version-prefix' and 'version-major+minor'; use them.

The procedure version-prefix truncates a version string to a certain
number of components. version-major+minor is a special case of this,
which extracts the "major.minor" part of the string. Previously this
was handled by an expression common to several packages.

* guix/utils.scm (version-prefix, version-major+minor): New procedures
* gnu/packages/backup.scm (duplicity): Use version-major+minor.
* gnu/packages/cmake.scm (cmake): Likewise.
* gnu/packages/gnome.scm (libbonobo, libbonoboui): Likewise.
* gnu/packages/gnutls.scm (gnutls): Likewise.
* gnu/packages/mail.scm (gmime): Likewise.
* gnu/packages/mpd.scm (mpd): Likewise.
* gnu/packages/mpi.scm (openmpi): Likewise.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
9 years agodownload: Add "Accept: */*" to the headers.
Ludovic Courtès [Sun, 19 Oct 2014 10:07:26 +0000 (12:07 +0200)]
download: Add "Accept: */*" to the headers.

Fixes downloads from https://alioth.debian.org.
Reported by John Darrington <jmd@gnu.org>.

* guix/build/download.scm (http-fetch)[headers]: Add 'Accept'.

9 years agognu: Add ntp
John Darrington [Sat, 18 Oct 2014 15:09:45 +0000 (17:09 +0200)]
gnu: Add ntp

* gnu/packages/ntp.scm: New file.
* gnu-system.am (gnu/packages/ntp.scm): Add it.

9 years agoemacs: Improve interface for working with multiple profiles.
Alex Kost [Fri, 17 Oct 2014 18:21:32 +0000 (22:21 +0400)]
emacs: Improve interface for working with multiple profiles.

Suggested by David Thompson, Ludovic Courtès and Mathieu Lirzin.

* emacs/guix-base.el (guix-profile-prompt): New procedure.
  (guix-set-current-profile): Use it.
  (guix-buffer-name-simple, guix-buffer-name-default, guix-buffer-name): New
  procedures.
  (guix-buffer-name-function, guix-profile): New variables.
  (guix-set-vars, guix-get-entries, guix-get-show-entries, guix-set-buffer,
  guix-history-call, guix-process-package-actions,
  guix-continue-package-operation-p, guix-delete-generations,
  guix-switch-to-generation): Add 'profile' argument.
* emacs/guix.el (guix-get-show-packages, guix-get-show-generations,
  guix-search-by-name, guix-search-by-regexp, guix-installed-packages,
  guix-obsolete-packages, guix-all-available-packages,
  guix-newest-available-packages, guix-generations, guix-generations-by-time):
  Likewise.
  (guix-last-generations): New command.
* emacs/guix-info.el: Adjust for using 'profile' argument where needed.
* emacs/guix-list.el: Likewise.
* doc/emacs.texi (Emacs Commands): Document 'guix-last-generations' and using
  "C-u" for commands.
  (Emacs Buffer Names): Document 'guix-buffer-name-function'.

9 years agopackages: Add 'package-transitive-supported-systems'.
Ludovic Courtès [Fri, 17 Oct 2014 21:20:39 +0000 (23:20 +0200)]
packages: Add 'package-transitive-supported-systems'.

* guix/packages.scm (package-transitive-supported-systems): New procedure.
* tests/packages.scm ("package-transitive-supported-systems"): New test.
* build-aux/hydra/gnu-system.scm (package->job): Use it.

9 years agognu: valgrind: Don't build on mipsel64-linux.
Ludovic Courtès [Fri, 17 Oct 2014 21:08:45 +0000 (23:08 +0200)]
gnu: valgrind: Don't build on mipsel64-linux.

* gnu/packages/valgrind.scm (valgrind): Add 'supported-systems'.

9 years agognu: sdl-gfx: Build only on Intel machines.
Ludovic Courtès [Fri, 17 Oct 2014 21:08:20 +0000 (23:08 +0200)]
gnu: sdl-gfx: Build only on Intel machines.

* gnu/packages/sdl.scm (sdl-gfx): Add 'supported-systems' field.

9 years agoderivations: 'graft-derivation' correctly handles multiple-output sources.
Ludovic Courtès [Wed, 15 Oct 2014 21:55:36 +0000 (23:55 +0200)]
derivations: 'graft-derivation' correctly handles multiple-output sources.

* guix/derivations.scm (graft-derivation): Add DRV as input for each one
  of OUTPUT-NAMES.

9 years agopackages: Improve the package-to-derivation cache.
Ludovic Courtès [Wed, 15 Oct 2014 07:22:23 +0000 (09:22 +0200)]
packages: Improve the package-to-derivation cache.

* guix/packages.scm (cache): Preserve the former values associated with
  PACKAGE.
  (cached): Bind SYSTEM in 'let', to prevent double evaluation.

9 years agoderivations: Add #:system parameter to 'graft-derivation'.
Ludovic Courtès [Tue, 14 Oct 2014 17:04:08 +0000 (19:04 +0200)]
derivations: Add #:system parameter to 'graft-derivation'.

* guix/derivations.scm (graft-derivation): Add #:system parameter.

9 years agoderivations: Introduce 'graft' record type.
Ludovic Courtès [Tue, 14 Oct 2014 12:47:49 +0000 (14:47 +0200)]
derivations: Introduce 'graft' record type.

* guix/derivations.scm (<graft>): New record type.
  (graft-derivation): Rename 'replacements' to 'grafts', and expect it
  to be a list of <graft> records.  Adjust accordingly.
* tests/derivations.scm ("graft-derivation"): Use 'graft' instead of
  pairs in argument to 'graft-derivation'.

9 years agorecords: Improve the docstring of 'define-record-type*'.
Ludovic Courtès [Tue, 14 Oct 2014 12:44:48 +0000 (14:44 +0200)]
records: Improve the docstring of 'define-record-type*'.

* guix/records.scm (define-record-type*): Agument the docstring, give
  examples.

9 years agodoc: Replace "emacs" with "Emacs" in node names.
Alex Kost [Fri, 17 Oct 2014 17:22:38 +0000 (21:22 +0400)]
doc: Replace "emacs" with "Emacs" in node names.

Suggested by Ludovic Courtès.

* doc/emacs.texi: Use "Emacs" in node names.

9 years agoemacs: Add 'guix-generations-by-time' command.
Alex Kost [Thu, 16 Oct 2014 17:35:47 +0000 (21:35 +0400)]
emacs: Add 'guix-generations-by-time' command.

* emacs/guix-main.scm (find-generations): Add finding generations by time.
* emacs/guix-utils.el (guix-read-date): New procedure.
* emacs/guix-base.el (guix-messages): Add new messages.
* emacs/guix.el (guix-generations-by-time): New command.
* doc/emacs.texi (emacs Commands): Document it.

9 years agodownload: Allow use of substitutes.
Ludovic Courtès [Thu, 16 Oct 2014 21:39:54 +0000 (23:39 +0200)]
download: Allow use of substitutes.

See <https://bugs.gnu.org/18747> for the original report.

* guix/download.scm (url-fetch): Comment out #:local-build? argument.
* guix/git-download.scm (git-fetch): Likewise.
* guix/svn-download.scm (svn-fetch): Likewise.

9 years agognu: linux-libre: Update to 3.17.1.
Jason Self [Thu, 16 Oct 2014 12:45:44 +0000 (05:45 -0700)]
gnu: linux-libre: Update to 3.17.1.

* gnu/packages/linux.scm (linux-libre): Update to version 3.17.1.

9 years agoemacs: Support auto-updating after performing REPL operation.
Alex Kost [Tue, 14 Oct 2014 16:43:10 +0000 (20:43 +0400)]
emacs: Support auto-updating after performing REPL operation.

* emacs/guix-backend.el (guix-operation-buffer): New variable.
  (guix-eval-in-repl): Use it.  Add optional 'operation-buffer' argument.
* emacs/guix-base.el (guix-update-after-operation): New variable.
  (guix-switch-to-buffer, guix-list-or-info-buffer-p, guix-buffers,
  guix-update-buffers-maybe): New procedures.
  (guix-set-buffer): Use 'guix-switch-to-buffer'.  Add optional 'no-display'
  argument.
  (guix-process-package-actions, guix-delete-generations,
  guix-switch-to-generation): Add optional 'operation-buffer' argument.
* emacs/guix-info.el (guix-package-info-insert-action-button,
  guix-generation-info-insert-number, guix-generation-info-insert-current):
  Adjust for using operation buffer.
* emacs/guix-list.el (guix-list-execute-package-actions,
  guix-generation-list-switch, guix-generation-list-execute): Likewise.

9 years agoemacs: Add hooks for REPL operations.
Alex Kost [Mon, 13 Oct 2014 17:49:31 +0000 (21:49 +0400)]
emacs: Add hooks for REPL operations.

* emacs/guix-backend.el (guix-before-repl-operation-hook,
  guix-after-repl-operation-hook, guix-repl-operation-p): New variables.
  (guix-repl-operation-success-message, guix-repl-output-filter): New
  procedures.
  (guix-start-repl): Adjust for using 'guix-repl-output-filter'.
  (guix-eval-in-repl): Honor 'guix-before-repl-operation-hook'.

9 years agoguix lint: add the --checkers option.
Cyril Roelandt [Sat, 11 Oct 2014 23:58:29 +0000 (01:58 +0200)]
guix lint: add the --checkers option.

* guix/scripts/lint.scm: add the "--checkers" option.
* doc/guix.texi (Invoking guix lint): Document it.
* tests/guix-lint.sh: New file
* Makefile.am (SCM_TESTS): Add it.

9 years agognu: gnutls: Patch bug in 'set-session-server-name!'.
Ludovic Courtès [Tue, 14 Oct 2014 21:09:07 +0000 (23:09 +0200)]
gnu: gnutls: Patch bug in 'set-session-server-name!'.

* gnu/packages/patches/gnutls-server-name-fix.patch: New file.
* gnu/packages/gnutls.scm (gnutls)[source]: Use it.
* gnu-system.am (dist_patch_DATA): Add it.

9 years agognu: Add xboing
John Darrington [Mon, 13 Oct 2014 10:33:39 +0000 (12:33 +0200)]
gnu: Add xboing

* gnu/packages/games.scm (xboing): New variable.

9 years agoutils: Micro-optimize 'bytevector->base16-string'.
Ludovic Courtès [Mon, 13 Oct 2014 21:07:47 +0000 (23:07 +0200)]
utils: Micro-optimize 'bytevector->base16-string'.

This reduces run time of (package-derivation s emacs) by ~1.5%.

* guix/utils.scm (bytevector->base16-string): Traverse BV from the end
  so as to use 'string-concatenate' instead of
  'string-concatenate-reverse'.

9 years agoderivations: Micro-optimize 'imported-modules'.
Ludovic Courtès [Mon, 13 Oct 2014 21:00:06 +0000 (23:00 +0200)]
derivations: Micro-optimize 'imported-modules'.

This reduces run time of (package-derivation s emacs) by ~5%.

* guix/derivations.scm (search-path*): New procedure.
  (imported-modules): Use it instead of 'search-path'.

9 years agoderivations: Memoize 'derivation-path->base16-hash'.
Ludovic Courtès [Mon, 13 Oct 2014 20:33:31 +0000 (22:33 +0200)]
derivations: Memoize 'derivation-path->base16-hash'.

This reduces run time of (package-derivation s emacs) by ~10%.

* guix/derivations.scm (derivation-path->base16-hash): New procedure.
  (derivation-hash): Use it.

9 years agognu: gnutls: Update to 3.2.19.
Ludovic Courtès [Mon, 13 Oct 2014 15:52:11 +0000 (17:52 +0200)]
gnu: gnutls: Update to 3.2.19.

* gnu/packages/gnutls.scm (gnutls): Update to 3.2.19.

9 years agognu: xfig, transfig: Patch compiler flags for mips and i686.
Eric Bavier [Mon, 13 Oct 2014 15:11:43 +0000 (10:11 -0500)]
gnu: xfig, transfig: Patch compiler flags for mips and i686.

* gnu/packages/xfig.scm (xfig, transfig)[arguments]: Have Makefile
  substitution match for more targets.

9 years agoemacs: Add support for switching generations.
Alex Kost [Fri, 10 Oct 2014 19:58:30 +0000 (23:58 +0400)]
emacs: Add support for switching generations.

* emacs/guix-base.el (guix-switch-to-generation): New procedure.
* emacs/guix-info.el (guix-generation-info-insert-current): Insert button for
  switching to generation.
* emacs/guix-list.el (guix-generation-list-switch): New procedure.
* doc/emacs.texi (emacs List buffer, emacs Info buffer): Document switching
  generations.

9 years agoemacs: Add 'current' generation parameter.
Alex Kost [Fri, 10 Oct 2014 19:50:15 +0000 (23:50 +0400)]
emacs: Add 'current' generation parameter.

* emacs/guix-main.scm (generation-param-alist): Add 'current' parameter.
* emacs/guix-base.el (guix-param-titles): Add title for 'current' parameter.
* emacs/guix-info.el: Display 'current' parameter.
  (guix-generation-info-current, guix-generation-info-not-current): New faces.
  (guix-generation-info-insert-current): New procedure.
* emacs/guix-list.el: Display 'current' column.
  (guix-generation-list-get-current): New procedure.

9 years agognu: nss-mdns: Add alternate source URLs.
Mark H Weaver [Mon, 13 Oct 2014 07:01:10 +0000 (03:01 -0400)]
gnu: nss-mdns: Add alternate source URLs.

Based on 8c43746 by Ludovic Courtès <ludo@gnu.org>.
Fixes <http://bugs.gnu.org/18704>.

* gnu/packages/avahi.scm (nss-mdns)[source]: Add Debian and Fedora mirrors.

9 years agognu: icu4c: Reinstate RUNPATH on shared libraries.
Ludovic Courtès [Sun, 12 Oct 2014 22:34:44 +0000 (00:34 +0200)]
gnu: icu4c: Reinstate RUNPATH on shared libraries.

Fixes <http://bugs.gnu.org/18695>.
Reported by Mark H Weaver <mhw@netris.org>.

* gnu/packages/icu4c.scm (icu4c)[arguments]: In 'add-lib-to-runpath',
  reinstate RUNPATH on files under lib/.  Fixes a regression introduced
  in commit 7239828.

9 years agognu: guile-ssh: Update to 0.7.1.
Ludovic Courtès [Sun, 12 Oct 2014 22:32:14 +0000 (00:32 +0200)]
gnu: guile-ssh: Update to 0.7.1.

* gnu/packages/ssh.scm (guile-ssh)[source]: Update to 0.7.1.
  [arguments]: Remove ssh/Makefile.am fiddling from 'autoreconf' phase.
  Remove #:parallel-build? argument.
  [inputs]: Add LIBGCRYPT-1.5.

9 years agognu: libssh: Add libgcrypt bug-fix patch.
Ludovic Courtès [Sun, 12 Oct 2014 22:30:49 +0000 (00:30 +0200)]
gnu: libssh: Add libgcrypt bug-fix patch.

Suggested by Artyom Poptsov <poptsov.artyom@gmail.com>.

* gnu/packages/ssh.scm (libssh)[source]: Add 'patches'.

9 years agognu: guix: Update development snapshot.
Ludovic Courtès [Sun, 12 Oct 2014 22:29:09 +0000 (00:29 +0200)]
gnu: guix: Update development snapshot.

* gnu/packages/package-management.scm (guix-0.7): Make public.
  (guix-devel)[source]: Update to commit 14e84b2.
  [propagated-inputs]: New field.
  (guix): Alias for GUIX-DEVEL.

9 years agoderivations: Add #:guile parameter to 'graft-derivation'.
Ludovic Courtès [Sun, 12 Oct 2014 20:32:38 +0000 (22:32 +0200)]
derivations: Add #:guile parameter to 'graft-derivation'.

* guix/derivations.scm (graft-derivation): Add #:guile parameter; pass
  it to 'build-expression->derivation'.

9 years agolist-packages: Handle 'origin' patches.
Ludovic Courtès [Sun, 12 Oct 2014 13:33:07 +0000 (15:33 +0200)]
list-packages: Handle 'origin' patches.

* build-aux/list-packages.scm (package->sxml)[patches]: Handle the case
  where PATCH is an 'origin'.

9 years agognu: Add unixodbc
John Darrington [Sun, 12 Oct 2014 07:02:33 +0000 (09:02 +0200)]
gnu: Add unixodbc

* gnu/packages/databases.scm (unixodbc): New variable.

9 years agognu: magit: Update to 1.2.1.
Mark H Weaver [Sun, 12 Oct 2014 06:47:36 +0000 (02:47 -0400)]
gnu: magit: Update to 1.2.1.

* gnu/packages/emacs.scm (magit): Update to 1.2.1.

9 years agoemacs: Allow list functions to deal with nil values.
Alex Kost [Fri, 10 Oct 2014 19:29:24 +0000 (23:29 +0400)]
emacs: Allow list functions to deal with nil values.

* emacs/guix-list.el (guix-list-get-tabulated-entry): Call functions returning
  column value even for nil values.
  (guix-list-get-one-line): Adjust for accepting nil argument.

9 years agoguix package: Add '--switch-generation' option.
Alex Kost [Fri, 10 Oct 2014 13:58:43 +0000 (17:58 +0400)]
guix package: Add '--switch-generation' option.

* guix/scripts/package.scm (switch-to-generation): New procedure.
  (switch-to-previous-generation): Use it.
  (guix-package): Adjust for '--switch-generation' option.
* tests/guix-package.sh: Test it.
* doc/guix.texi (Invoking guix package): Document it.

9 years agoprofiles: Add 'relative-generation'.
Alex Kost [Fri, 10 Oct 2014 13:56:59 +0000 (17:56 +0400)]
profiles: Add 'relative-generation'.

* guix/profiles.scm: (relative-generation): New procedure.
  (previous-generation-number): Use it.

9 years agoprofiles: Add condition types for profiles and generations.
Alex Kost [Wed, 8 Oct 2014 13:29:01 +0000 (17:29 +0400)]
profiles: Add condition types for profiles and generations.

Suggested by Ludovic Courtès.

* guix/profiles.scm (&profile-error, &profile-not-found-error,
  &missing-generation-error): New condition types.
* guix/ui.scm (call-with-error-handling): Handle new types.
* guix/scripts/package.scm (roll-back, guix-package): Raise
  '&profile-not-found-error' where needed.

9 years agognu: libarchive: Apply fixes including for CVE-2013-0211.
Mark H Weaver [Sun, 12 Oct 2014 02:49:15 +0000 (22:49 -0400)]
gnu: libarchive: Apply fixes including for CVE-2013-0211.

* gnu/packages/patches/libarchive-CVE-2013-0211.patch,
  gnu/packages/patches/libarchive-fix-lzo-test-case.patch,
  gnu/packages/patches/libarchive-mtree-filename-length-fix.patch: New files.
* gnu-system.am (dist_patch_DATA): Add them.
* gnu/packages/backup.scm (libarchive)[source]: Add patches.

9 years agognu: Add transfig.
Eric Bavier [Fri, 10 Oct 2014 18:11:22 +0000 (13:11 -0500)]
gnu: Add transfig.

* gnu/packages/xfig.scm (transfig): New variable.

9 years agognu: Add xfig.
Eric Bavier [Fri, 10 Oct 2014 18:10:42 +0000 (13:10 -0500)]
gnu: Add xfig.

* gnu/packages/xfig.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.

9 years agognu: libjpeg: Upgrade to version 9a.
Eric Bavier [Fri, 10 Oct 2014 18:07:55 +0000 (13:07 -0500)]
gnu: libjpeg: Upgrade to version 9a.

* gnu/packages/image.scm (libjpeg): Upgrade to version 9a.

9 years agognu: Add imake.
Eric Bavier [Fri, 10 Oct 2014 18:06:33 +0000 (13:06 -0500)]
gnu: Add imake.

* gnu/packages/xorg.scm (imake): New variable.

9 years agosyscalls: Accept ENOENT in the 'swapoff' test.
Ludovic Courtès [Sat, 11 Oct 2014 22:13:20 +0000 (00:13 +0200)]
syscalls: Accept ENOENT in the 'swapoff' test.

Fixes <http://bugs.gnu.org/18690>.
Reported by Philip Woods <elzairthesorcerer@gmail.com>.

* tests/syscalls.scm ("swapoff, EINVAL/EPERM"): Rename to...
  ("swapoff, ENOENT/EINVAL/EPERM"): ... this.  Add ENOENT to the list of
  possible return values.

9 years agoAugment '.dir-locals.el' with bug-reference-mode settings.
Ludovic Courtès [Fri, 10 Oct 2014 16:19:43 +0000 (18:19 +0200)]
Augment '.dir-locals.el' with bug-reference-mode settings.

9 years agognu: Add perl-zip.
John Darrington [Fri, 10 Oct 2014 03:50:36 +0000 (05:50 +0200)]
gnu: Add perl-zip.

* gnu/packages/zip.scm (perl-zip): New variable.

9 years agognu: openssh: Update to 6.7p1.
Mark H Weaver [Sat, 11 Oct 2014 06:56:42 +0000 (02:56 -0400)]
gnu: openssh: Update to 6.7p1.

* gnu/packages/ssh.scm (openssh): Update to 6.7p1.

9 years agoAdd copyright line to gnuzilla.scm.
Mark H Weaver [Sat, 11 Oct 2014 06:54:55 +0000 (02:54 -0400)]
Add copyright line to gnuzilla.scm.

* gnu/packages/gnuzilla.scm: Add copyright line for Mark H Weaver, which
  should have been added in 74c7af9 (gnu: icecat: Update to 31.1.1).

9 years agoscripts: Add 'environment' command.
David Thompson [Sun, 21 Sep 2014 17:40:05 +0000 (13:40 -0400)]
scripts: Add 'environment' command.

* guix/scripts/environment.scm: New file.
* Makefile.am (MODULES): Add it.
* doc/guix.texi ("Invoking guix environment"): New node.

9 years agobuild: Make sure tests/guix-package.sh doesn't leave anything behind it.
Ludovic Courtès [Fri, 10 Oct 2014 12:08:47 +0000 (14:08 +0200)]
build: Make sure tests/guix-package.sh doesn't leave anything behind it.

Fixes a regression introduced in commit 300868ba.

* tests/guix-package.sh: Move 'module_dir' definition to the top, and
  "rm -rf" it from the top-most 'trap'.  Remove second use of 'trap'.

9 years agodoc: Add 'operating-system' reference.
Ludovic Courtès [Fri, 10 Oct 2014 08:47:57 +0000 (10:47 +0200)]
doc: Add 'operating-system' reference.

* doc/guix.texi (Using the Configuration System): Add xref to
  "operating-system Reference".
  (operating-system Reference): New section.
  (Networking Services): Add xref to it.

9 years agodoc: Use @deftp for 'build-machine'.
Ludovic Courtès [Fri, 10 Oct 2014 07:34:38 +0000 (09:34 +0200)]
doc: Use @deftp for 'build-machine'.

* doc/guix.texi (Daemon Offload Setup): Use @deftp for 'build-machine'.

9 years agognu: icu4c: Correct error in the binaries' runpath
John Darrington [Tue, 7 Oct 2014 21:18:59 +0000 (23:18 +0200)]
gnu: icu4c: Correct error in the binaries' runpath

* gnu/packages/icu4c.scm (icu4c): Apply the RUNPATH to the binaries,
  instead of the libs

9 years agoui: Move 'show-manifest-transaction' from (guix profiles).
Alex Kost [Wed, 8 Oct 2014 13:15:49 +0000 (17:15 +0400)]
ui: Move 'show-manifest-transaction' from (guix profiles).

* guix/profiles.scm: Do not use (guix ui) module.
  (right-arrow, manifest-show-transaction): Move and rename to...
* guix/ui.scm (right-arrow, show-manifest-transaction): ... here.
* tests/profiles.scm ("manifest-show-transaction"): Move to...
* tests/ui.scm ("show-manifest-transaction"): ... here.
  (guile-1.8.8, guile-2.0.9): New variables.
* emacs/guix-main.scm (process-package-actions): Rename
  'manifest-show-transaction' to 'show-manifest-transaction'.
* guix/scripts/package.scm (guix-package): Likewise.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
9 years agoui: Make sure we use the right domain for &message translation.
Ludovic Courtès [Thu, 9 Oct 2014 21:50:16 +0000 (23:50 +0200)]
ui: Make sure we use the right domain for &message translation.

* guix/ui.scm (call-with-error-handling): Add %GETTEXT-DOMAIN as a
  second argument to 'gettext'.

9 years agoBreak module cycle involving (guix store) and (guix ui).
Ludovic Courtès [Thu, 9 Oct 2014 21:46:13 +0000 (23:46 +0200)]
Break module cycle involving (guix store) and (guix ui).

Before, there was a cycle along the lines of:

  (guix store) -> (guix nar) -> (guix ui) -> (guix store)

This caused problems, as discussed at:

  http://lists.gnu.org/archive/html/guix-devel/2014-10/msg00109.html

This patch removes cycles in the (guix ...) modules.

* guix/nar.scm (&nar-error, &nar-read-error, dump, write-contents,
  read-contents, %archive-version-1, write-file, restore-file): Move to...
* guix/serialization.scm: ... here.
* guix/store.scm: Remove dependency on (guix nar).
* guix/scripts/hash.scm, guix/scripts/offload.scm,
  guix/scripts/substitute-binary.scm, tests/nar.scm, tests/store.scm,
  tests/substitute-binary.scm: Adjust accordingly.

9 years agosubstitute-binary: Ignore $GUIX_BINARY_SUBSTITUTE_URL.
Ludovic Courtès [Thu, 9 Oct 2014 11:38:16 +0000 (13:38 +0200)]
substitute-binary: Ignore $GUIX_BINARY_SUBSTITUTE_URL.

* guix/scripts/substitute-binary.scm (%cache-url): Ignore the
  'GUIX_BINARY_SUBSTITUTE_URL' environment variable.
* test-env.in: Invoke 'guix-daemon' with '--substitute-urls'.
* tests/substitute-binary.scm: Set '%cache-url' to the value of
  'GUIX_BINARY_SUBSTITUTE_URL'.

9 years agodaemon: Add '--substitute-urls' option.
Ludovic Courtès [Thu, 9 Oct 2014 11:25:41 +0000 (13:25 +0200)]
daemon: Add '--substitute-urls' option.

* nix/nix-daemon/guix-daemon.cc (GUIX_OPT_SUBSTITUTE_URLS): New macro.
  (GUIX_OPT_NO_BUILD_HOOK, GUIX_OPT_GC_KEEP_OUTPUTS,
  GUIX_OPT_GC_KEEP_DERIVATIONS): Renumber.
  (options): Add '--substitute-urls'.
  (parse_opt): Honor it.
  (main): Add 'settings.set' call for the default "substitute-urls"
  value.
* guix/scripts/substitute-binary.scm (daemon-options,
  find-daemon-option): New procedures.
  (%cache-url): Define based on the "substitute-urls" daemon option.
* doc/guix.texi (Invoking guix-daemon): Document '--substitute-urls'.
  (Substitutes): Mention it.

9 years agognu: icecat: Update to 31.1.1.
Mark H Weaver [Thu, 9 Oct 2014 03:37:37 +0000 (23:37 -0400)]
gnu: icecat: Update to 31.1.1.

* gnu/packages/gnuzilla.scm (icecat): Update to 31.1.1.  Add 'pango',
  'freetype', 'libxft' and 'pulseaudio' as inputs.  Set
  'out-of-source?' to #t.  Remove 'sanitise' phase.  Adapt customized
  'configure' phase to handle 'out-of-source?' build.  Add
  '--with-l10n-base' argument to configure.

9 years agomonads: Add 'mbegin'.
Ludovic Courtès [Wed, 8 Oct 2014 21:35:08 +0000 (23:35 +0200)]
monads: Add 'mbegin'.

* guix/monads.scm (mbegin): New macro.
* tests/monads.scm ("mbegin"): New test.
* doc/guix.texi (The Store Monad): Document it.

9 years agopackages: Gracefully print packages whose 'location' is #f.
Ludovic Courtès [Wed, 8 Oct 2014 21:06:19 +0000 (23:06 +0200)]
packages: Gracefully print packages whose 'location' is #f.

* guix/packages.scm (<package> printer): Check whether LOC is #f.
* tests/packages.scm ("printer with location", "printer without
  location"): New tests.

9 years agoAdd Federico to 'AUTHORS'.
Ludovic Courtès [Wed, 8 Oct 2014 20:12:06 +0000 (22:12 +0200)]
Add Federico to 'AUTHORS'.

9 years agodoc: Document 'glib-or-gtk-build-system'.
Federico Beffa [Wed, 8 Oct 2014 19:04:25 +0000 (21:04 +0200)]
doc: Document 'glib-or-gtk-build-system'.

* doc/guix.texi (Build System): Document 'glib-or-gtk-build-system'.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
9 years agognu: cmake: Use our curl, zlib, expat, bzip2, and libarchive.
Eric Bavier [Wed, 8 Oct 2014 16:55:40 +0000 (11:55 -0500)]
gnu: cmake: Use our curl, zlib, expat, bzip2, and libarchive.

* gnu/packages/cmake.scm (cmake)[arguments]: Move sh-patching to new
  'patch-bin-sh phase.  New 'set-paths phase.
  [inputs]: Add curl, zlib, expat, bzip2, and libarchive.
  [description]: Fix space after end-of-sentence.

9 years agognu: slim: Fix typo in synopsis and wrap description.
Eric Bavier [Wed, 8 Oct 2014 14:39:17 +0000 (09:39 -0500)]
gnu: slim: Fix typo in synopsis and wrap description.

* gnu/packages/slim.scm (slim)[synopsis]: Fix typo.
  [description]: Fix two-space-after-end-of-sentence.  Wrap to 80
  characters.

9 years agognu: conkeror: install conkeror-spawn-helper.
Eric Bavier [Tue, 7 Oct 2014 22:33:00 +0000 (17:33 -0500)]
gnu: conkeror: install conkeror-spawn-helper.

* gnu/packages/conkeror.scm (conkeror)[build-system]: Change to
  gnu-build-system.  Adjust arguments accordingly.
  [inputs]: Remove now-implicit bash.
  [native-inputs]: Remove now-implicit tar and gzip.
  [description]: Fix two-space-after-end-of-sentence.  Remove comment
  about separate conkeror-spawn-process-helper package.

9 years agognu: Add the 'glib-or-gtk' build system.
Federico Beffa [Mon, 6 Oct 2014 13:49:29 +0000 (15:49 +0200)]
gnu: Add the 'glib-or-gtk' build system.

* guix/build-system/glib-or-gtk.scm, guix/build/glib-or-gtk-build-system.scm:
  New files.
* Makefile.am (MODULES): Add them.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>