Ludovic Courtès
3f6f7b36d3
packages: Allow use of origins as patches.
...
* guix/packages.scm (patch-and-repack)[patch-inputs]: Use 'add-to-store'
only if the PATCH is a file name, and 'package-source-derivation' if
PATCH is an origin.
2014-09-24 19:07:22 +02:00
Alex Kost
a54a237b5f
emacs: Add support for displaying outputs.
...
Suggested by Taylan Ulrich Bayirli/Kammer and Ludovic Courtès.
* emacs/guix-base.el (guix-param-titles): Add output titles.
(guix-messages): Add output messages.
(guix-get-package-id-and-output-by-output-id): New procedure.
(guix-define-buffer-type): Add ':buffer-name' key.
* emacs/guix-info.el: Add "output-info" buffer type.
(guix-info-insert-methods): Add output methods.
(guix-info-displayed-params): Add output params.
(guix-output-info-insert-version, guix-output-info-insert-output): New
procedures.
* emacs/guix-list.el: Add "output-list" buffer type.
(guix-list-column-format): Add output formats.
(guix-list-column-value-methods): Add output methods.
(guix-package-list-type): New variable.
(guix-generation-list-show-packages): Use it.
(guix-package-list-marking-check): Use 'guix-output-list-mode'.
(guix-list-mark-package-upgrades): New procedure.
(guix-package-list-mark-upgrades): Use it.
(guix-list-execute-package-actions): New procedure.
(guix-package-list-execute): Use it.
(guix-list-describe-maybe): New procedure.
(guix-list-describe): Use it.
(guix-output-list-mark-install, guix-output-list-mark-delete,
guix-output-list-mark-upgrade, guix-output-list-mark-upgrades,
guix-output-list-execute, guix-output-list-make-action,
guix-output-list-describe): New procedures.
(guix-output-list-describe-type): New variable.
* emacs/guix.el (guix-get-show-packages): Use 'guix-package-list-type'.
* doc/emacs.texi (emacs Commands): Mention 'guix-package-list-type'.
(emacs List buffer): Adjust accordingly.
(emacs Info buffer): Likewise.
(emacs Buffer Names): New node.
(emacs Keymaps): Add keymaps for output buffers.
2014-09-24 16:09:20 +04:00
Alex Kost
81b339fe31
emacs: Rewrite scheme side in a functional manner.
...
* emacs/guix-main.scm: Rewrite in a functional way. Add support for output
entries.
(%current-manifest, %current-manifest-entries-table,
set-current-manifest-maybe!): Replace with...
(manifest-entries->hash-table, manifest->hash-table): ... this.
(manifest-entries-by-name+version): Replace with...
(manifest-entries-by-name): ... this.
(fold-manifest-entries): Rename to...
(fold-manifest-by-name): ... this.
(package-installed-param-alist): Rename to...
(%manifest-entry-param-alist): ... this.
(package-param-alist): Rename to...
(%package-param-alist): this.
(manifest-entry->installed-entry): Rename to...
(manifest-entry->sexp): ... this.
(manifest-entries->installed-entries): Rename to...
(manifest-entries->sexps): ... this.
(matching-generation-entries): Replace with...
(matching-generations): ... this.
(last-generation-entries): Replace with...
(last-generations): ... this.
(get-entries): Rename to...
(entries): ... this.
(installed-entries-by-name+version, installed-entries-by-package,
matching-package-entries, fold-object, package-entries-by-name+version,
package-entries-by-spec, package-entries-by-regexp, package-entries-by-ids,
newest-available-package-entries, all-available-package-entries,
manifest-package-entries, installed-package-entries,
generation-package-entries, obsolete-package-entries,
all-generation-entries, generation-entries-by-ids, profile-generations,
%package-entries-functions, %generation-entries-functions): Remove.
(manifest=?, manifest-entry->name+version+output, manifest-entry-by-output,
list-maybe, matching-packages, filter-packages-by-output, packages-by-name,
manifest-entry->packages, all-available-packages, newest-available-packages,
specification->package-pattern, specification->output-pattern,
id->package-pattern, id->output-pattern, specifications->package-patterns,
specifications->output-patterns, ids->package-patterns,
ids->output-patterns, manifest-patterns-result, obsolete-package-patterns,
obsolete-output-patterns, manifest-package-patterns,
manifest-output-patterns, obsolete-package-sexp,
package-pattern-transformer, output-pattern-transformer, entry-type-error,
search-type-error, pattern-transformer, patterns-maker,
package/output-sexps, find-generations, generation-sexps): New procedures.
(%pattern-transformers, %patterns-makers): New variables.
* emacs/guix-base.el (guix-continue-package-operation-p): Adjust accordingly.
* emacs/guix-info.el (guix-package-info-insert-action-button): Likewise.
2014-09-24 16:09:20 +04:00
Alex Kost
dfeb023927
emacs: Use general functions instead of generated ones.
...
* emacs/guix-base.el: Add and use general functions instead of
specialized functions generated by 'guix-define-buffer-type' macro.
(guix-buffer-type, guix-entry-type): New variables.
(guix-set-vars): Add new variables.
(guix-get-show-entries, guix-show-entries, guix-set-buffer)
(guix-history-call, guix-make-history-item)
(guix-get-params-for-receiving, guix-revert-buffer)
(guix-redisplay-buffer): New functions.
(guix-define-buffer-type): Do not generate specialized functions.
* emacs/guix-info.el (guix-package-info-insert-full-names): Use
'guix-get-show-entries'.
(guix-generation-info-insert-number): Likewise.
* emacs/guix-list.el (guix-list-describe): New function.
(guix-list-define-entry-type): Do not generate specialized one.
(guix-generation-list-show-packages): Use 'guix-get-show-entries'.
* emacs/guix.el (guix-show-generations-function): Remove.
(guix-get-show-packages): Use new functions.
(guix-get-show-generations): Likewise.
2014-09-24 16:09:20 +04:00
Ludovic Courtès
8689901f95
Introduce the 'GUIX_PACKAGE_PATH' environment variable.
...
* gnu/packages.scm (%package-module-path): Honor $GUIX_PACKAGE_PATH.
* test-env.in: Unset 'GUIX_PACKAGE_PATH'.
* tests/guix-package.sh: Test it.
* doc/guix.texi (Package Modules): Document it.
2014-09-24 14:06:09 +02:00
Ludovic Courtès
300868ba57
guix build: Add -L/--load-path as a common option.
...
* guix/scripts/build.scm (show-build-options-help): Document -L.
(%standard-build-options): Add -L/--load-path.
* tests/guix-package.sh: Test it.
2014-09-24 14:06:09 +02:00
Ludovic Courtès
c107b54108
packages: Add '%package-module-search-path'.
...
* gnu/packages.scm (%package-module-path): New variable.
(all-package-modules): New procedure.
(fold-packages): Use it instead of 'package-modules'.
2014-09-24 14:06:08 +02:00
Ludovic Courtès
84836a5733
packages: Generalize package module search.
...
* gnu/packages.scm (%distro-root-directory): New variable.
(%distro-module-directory): Remove.
(package-files): Rename to...
(scheme-files): ... this. Return absolute file names, not stripped.
(file-name->module-name): New procedure.
(package-modules): Add 'directory' and 'sub-directory' parameters.
Rewrite accordingly.
(fold-packages): Adjust 'package-modules' call accordingly.
2014-09-24 10:23:27 +02:00
Federico Beffa
df354a771d
gnu: maxima: Update to 5.34.1 and add dependencies.
...
* gnu/packages/maths.scm (maxima): Update to 5.34.1 which fixes a bug in
the plotting capabilities present in the previous version. Add Gnuplot
and Tcl/Tk to 'inputs'.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2014-09-24 09:35:44 +02:00
Mark H Weaver
b5b73a8269
Use #:prefix instead of #:renamer with 'symbol-prefix-proc'.
...
* gnu/packages/abiword.scm, gnu/packages/admin.scm, gnu/packages/aidc.scm,
gnu/packages/backup.scm, gnu/packages/bittorrent.scm,
gnu/packages/boost.scm, gnu/packages/compression.scm,
gnu/packages/cryptsetup.scm, gnu/packages/curl.scm,
gnu/packages/cyrus-sasl.scm, gnu/packages/dc.scm, gnu/packages/emacs.scm,
gnu/packages/fonts.scm, gnu/packages/fontutils.scm, gnu/packages/geeqie.scm,
gnu/packages/ghostscript.scm, gnu/packages/gimp.scm,
gnu/packages/gkrellm.scm, gnu/packages/gl.scm, gnu/packages/glib.scm,
gnu/packages/gnome.scm, gnu/packages/gnunet.scm, gnu/packages/gnupg.scm,
gnu/packages/gnutls.scm, gnu/packages/gnuzilla.scm, gnu/packages/gsasl.scm,
gnu/packages/gtk.scm, gnu/packages/gv.scm, gnu/packages/image.scm,
gnu/packages/indent.scm, gnu/packages/inkscape.scm,
gnu/packages/lesstif.scm, gnu/packages/links.scm, gnu/packages/lisp.scm,
gnu/packages/lsh.scm, gnu/packages/lsof.scm, gnu/packages/maths.scm,
gnu/packages/mp3.scm, gnu/packages/openssl.scm, gnu/packages/ots.scm,
gnu/packages/pciutils.scm, gnu/packages/pcre.scm, gnu/packages/pdf.scm,
gnu/packages/pulseaudio.scm, gnu/packages/python.scm, gnu/packages/slim.scm,
gnu/packages/ssh.scm, gnu/packages/texlive.scm, gnu/packages/vim.scm,
gnu/packages/vpn.scm, gnu/packages/web.scm, gnu/packages/wv.scm,
gnu/packages/xiph.scm, gnu/packages/xml.scm, gnu/packages/xorg.scm,
gnu/packages/yasm.scm, gnu/packages/zip.scm,
guix/build/cmake-build-system.scm, guix/build/perl-build-system.scm,
guix/build/python-build-system.scm, guix/download.scm: Replaces uses of
#:renamer and 'symbol-prefix-proc' with #:prefix.
2014-09-23 18:52:29 -04:00
Mark H Weaver
c3f16c554e
gnu: gtk+: Disable tests on mips64el-linux.
...
* gnu/packages/gtk.scm (gtk+): Disable tests on mips64el-linux.
2014-09-23 18:52:27 -04:00
Ludovic Courtès
99462faca0
gnu: gtk+: Remove dependency on Xorg server on mips64el-linux.
...
Reported by Mark H. Weaver.
* gnu/packages/gtk.scm (gtk+)[native-inputs]: Remove XORG-SERVER on
mips64el-linux.
2014-09-23 18:52:26 -04:00
Ludovic Courtès
4627a46470
services: Add 'bitlbee-service'.
...
* gnu/services/networking.scm (bitlbee-service): New procedure.
* doc/guix.texi (Networking Services): Document it.
2014-09-23 23:46:01 +02:00
Ludovic Courtès
b5d9beaa1a
gnu: xf86-input-synaptics: Allow building with libc 2.20.
...
* gnu/packages/patches/xf86-input-synaptics-glibc-2.20.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/xorg.scm (xf86-input-synaptics): Use it. Improve
synopsis and description.
2014-09-23 22:49:42 +02:00
Ludovic Courtès
c9d39df937
gnu: node: Add 'which' as an input.
...
* gnu/packages/node.scm (node)[native-inputs]: Add WHICH.
2014-09-23 15:30:13 +02:00
Ludovic Courtès
969b662128
gnu: xorg: Remove xf86-input-vmmouse.
...
* gnu/packages/xorg.scm (xf86-input-vmmouse): Remove. This driver
implement the mouse protocol of a proprietary emulator.
* gnu/services/xorg.scm (xorg-start-command): Remove reference.
2014-09-23 15:13:46 +02:00
Ludovic Courtès
3b0273885b
gnu: linux-libre: Work around GCC 4.8.3 ICE.
...
* gnu/packages/linux.scm (linux-libre)[inputs]: New field.
2014-09-23 10:12:17 +02:00
Ludovic Courtès
4b164c4532
system: Add Patch to '%base-packages'.
...
* gnu/system.scm (%base-packages): Add PATCH.
2014-09-22 23:11:33 +02:00
Ludovic Courtès
f07aa672fd
Merge branch 'core-updates'
2014-09-22 23:06:33 +02:00
Ludovic Courtès
52ac153e2a
linux-initrd: Adjust VM code and doc to new 'base-initrd' signature.
...
This fixes regressions introduced in de1c158
("system: Add support for
boot-time mapped devices.").
* doc/guix.texi (Initial RAM Disk): Adjust example with custom use of
'base-initrd'. Document #:mapped-devices parameter of 'base-initrd'.
* gnu/system/vm.scm (system-disk-image, system-qemu-image,
virtualized-operating-system): Adjust call to 'base-initrd' to new
signature.
2014-09-22 21:29:41 +02:00
Ludovic Courtès
8591fae4cf
syscalls: Adjust /proc/net/dev parser for old kernels.
...
* guix/build/syscalls.scm (%interface-line): Remove whitespace in rest
pattern. (There's no extra whitespace after the colon with Linux
2.6.32.)
2014-09-22 21:12:26 +02:00
Ludovic Courtès
077bd18d22
download: Use the 'SERVER NAME' TLS extension when possible.
...
Fixes <http://bugs.gnu.org/18526 >.
Reported by Mark H. Weaver.
* guix/build/download.scm (tls-wrap): Add 'server' parameter. Call
'set-session-server-name!' when (gnutls) defines it.
(open-connection-for-uri): Adjust 'tls-wrap' call accordingly.
2014-09-22 21:06:39 +02:00
Ludovic Courtès
cb150ca34f
gnu: perl-tk: Build sequentially.
...
Fixes <http://bugs.gnu.org/18262 >.
* gnu/packages/tcl.scm (perl-tk)[arguments]: Add #:parallel-build? #f.
2014-09-22 14:27:46 +02:00
Alex Kost
886cf584db
guix package: Use 'profile-generations'.
...
* guix/scripts/package.scm (guix-package)[process-actions]: Use
'profile-generations' instead of the equivalent code.
2014-09-22 13:24:52 +04:00
Alex Kost
f452e8ff10
profiles: Add 'profile-generations'.
...
* guix/profiles.scm (profile-generations): New procedure.
2014-09-22 13:24:52 +04:00
Ludovic Courtès
de1c158f32
system: Add support for boot-time mapped devices.
...
* gnu/build/linux-boot.scm (boot-system): Add #:pre-mount parameter and
honor it.
* gnu/system/linux-initrd.scm (base-initrd): Add #:mapped-devices
parameter. Add 'device-mapping-commands' variable, and use it to
build the #:pre-mount argument of 'boot-system'.
* gnu/system.scm (mapped-device-user,
operating-system-user-mapped-devices,
operating-system-boot-mapped-devices): New procedures.
(device-mapping-services): Use 'operating-system-user-mapped-devices'
instead of 'operating-system-mapped-devices'.
(operating-system-initrd-file): Call the initrd with #:mapped-devices.
2014-09-22 11:20:41 +02:00
Ludovic Courtès
e2b464b7f4
activation: Ensure existing user accounts have the right settings.
...
* gnu/build/activation.scm (modify-user, ensure-user): New procedures.
(activate-users+groups): Systematically call 'ensure-user'.
2014-09-22 10:10:08 +02:00
Ludovic Courtès
5f36ea03ad
gnu: valgrind: Update to 3.10.0.
...
* gnu/packages/valgrind.scm (valgrind): Update to 3.10.0.
* gnu/packages/patches/valgrind-glibc.patch: Remove.
* gnu-system.am (dist_patch_DATA): Adjust accordingly.
2014-09-22 10:07:52 +02:00
Ludovic Courtès
cc7f4e0589
gnu: duplicity: Add dependency on util-linux.
...
* gnu/packages/backup.scm (duplicity)[native-inputs]: Add util-linux.
2014-09-20 23:38:16 +02:00
Ludovic Courtès
a69bc0103d
gnu: ots: Build sequentially.
...
* gnu/packages/ots.scm (ots)[arguments]: New field.
2014-09-20 23:14:48 +02:00
Ludovic Courtès
573a35541f
gnu: Add sound-theme-freedesktop.
...
Suggested by Federico Beffa <beffa@ieee.org>.
* gnu/packages/libcanberra.scm (sound-theme-freedesktop): New variable.
2014-09-20 15:10:11 +02:00
Ludovic Courtès
571a0310ff
gnu: libcanberra: Add dependency on PulseAudio and eudev.
...
* gnu/packages/libcanberra.scm (libcanberra): Add PulseAudio and eudev
as inputs.
2014-09-20 15:02:45 +02:00
Ludovic Courtès
0a9e9a6311
gnu: emacs: Switch to GTK+ 3.
...
Suggested by Federico Beffa <beffa@ieee.org>.
* gnu/packages/emacs.scm (emacs): Switch to GTK+ 3.
2014-09-20 14:49:20 +02:00
Ludovic Courtès
dd68dd137a
gnu: cyrus-sasl: Build sequentially.
...
* gnu/packages/cyrus-sasl.scm (cyrus-sasl)[arguments]: Pass
#:parallel-build?.
2014-09-20 14:15:17 +02:00
Ludovic Courtès
46025e94cd
offload: Use a total order when sorting available machines.
...
* guix/scripts/offload.scm (machine-less-loaded?, machine-faster?):
Remove.
(machine-power-factor): New procedure.
(machine-less-loaded-or-faster?): Use it.
2014-09-20 12:23:39 +02:00
Ludovic Courtès
b1fea30339
offload: Try another machine when the "best" machine is overloaded.
...
* guix/scripts/offload.scm (choose-build-machine): When BEST is
overloaded, try the other machines.
2014-09-20 12:10:28 +02:00
Ludovic Courtès
4359378a2c
linux-boot: Ask fsck for a progress bar.
...
* gnu/build/file-systems.scm (check-file-system): Pass '-C 0' to FSCK.
Suggested by Mark H. Weaver.
2014-09-19 21:51:36 +02:00
Ludovic Courtès
f75426d5b4
gnu: guile-charting: Update to 0.2.0.
...
* gnu/packages/guile.scm (guile-charting): Update to 0.2.0. Remove
now-unnecessary cruft from 'snippet'. Modify 'godir' in Makefile.in.
2014-09-19 17:23:17 +02:00
Ludovic Courtès
a9eef4d2e5
system: Fix value of 'EUDEV_RULES_DIRECTORY'.
...
* gnu/services/base.scm (udev-service): Append "/lib/udev/rules.d" to
EUDEV_RULES_DIRECTORY.
2014-09-19 17:23:17 +02:00
Alex Kost
516e93f8a6
gnu: Fix typos.
...
* gnu/packages/cdrom.scm (cdparanoia): Double space in description.
* gnu/packages/maths.scm (hdf5): Double space in synopsis.
2014-09-19 15:31:19 +04:00
Jason Self
49e4bca583
gnu: linux-libre: Update to 3.16.3.
...
* gnu/packages/linux.scm (linux-libre): Update to version 3.16.3.
2014-09-18 16:18:14 -07:00
Ludovic Courtès
7f28bf9a43
system: Add udev rule for /dev/kvm.
...
* gnu/services/base.scm (kvm-udev-rule): New procedure.
(udev-service): Use it, and add it to RULES.
(guix-build-accounts): Add "kvm" to the 'supplementary-groups' field.
* gnu/system/shadow.scm (%base-groups): Add "kvm".
2014-09-18 23:23:46 +02:00
Ludovic Courtès
6c1df0819c
linux-initrd: Remove now obsolete #:guile-modules-in-chroot? parameter.
...
* gnu/build/linux-boot.scm (boot-system): Remove
#:guile-modules-in-chroot? and related code.
* gnu/system/linux-initrd.scm (base-initrd): Likewise.
* gnu/system/vm.scm (expression->derivation-in-linux-vm): Remove
#:guile-modules-in-chroot? argument in 'base-initrd' call.
2014-09-18 23:05:22 +02:00
Ludovic Courtès
dbcb0ab1a9
doc: Remove a couple of limitations.
...
* doc/guix.texi (System Installation): Remove encrypted disks and swap
from the limitations.
2014-09-18 22:52:03 +02:00
Ludovic Courtès
2a13d05e45
system: Add support for swap devices.
...
* gnu/services/base.scm (swap-service): New procedure.
* gnu/system.scm (<operating-system>)[swap-devices]: New field.
(swap-services): New procedure.
(essential-services): Use it.
2014-09-18 22:52:01 +02:00
Ludovic Courtès
715fc9d44d
syscalls: Add 'swapon' and 'swapoff'.
...
* guix/build/syscalls.scm (swapon, swapoff): New procedures.
* tests/syscalls.scm ("swapon, ENOENT/EPERM", "swapoff, EINVAL/EPERM"):
New tests.
2014-09-18 20:19:56 +02:00
Ludovic Courtès
510f9d8624
doc: Document mapped devices.
...
* doc/guix.texi (Mapped Devices): New subsection.
2014-09-18 19:50:00 +02:00
Ludovic Courtès
722554a306
system: Define 'device-mapping-kind', and add a 'close' procedure.
...
* gnu/system/file-systems.scm (<mapped-device-type>): New record type.
(<mapped-device>)[command]: Remove field.
[type]: New field.
* gnu/services/base.scm (device-mapping-service): Rename 'command'
parameter to 'open'. Add 'close' parameter and honor it.
* gnu/system.scm (luks-device-mapping): Rename to...
(open-luks-device): ... this.
(close-luks-device): New procedure.
(luks-device-mapping): New variable.
(device-mapping-services): Get the type of MD, and pass its 'open' and
'close' fields to 'device-mapping-service'.
2014-09-18 19:18:39 +02:00
Ludovic Courtès
cb823dd279
pull: Rewrite using gexps.
...
* guix/scripts/pull.scm (unpack): Remove 'store' parameter. Rewrite
using 'gexp->derivation'.
(what-to-build, indirect-root-added, build-and-install): New
procedures.
(guix-pull): Use it.
2014-09-18 18:45:00 +02:00
Ludovic Courtès
2f7a10db6d
gnu: skribilo: Make sure Guile-Reader is in the search path.
...
Reported by Luis Souto Graña <luissoutobueu@gmail.com>.
* gnu/packages/skribilo.scm (skribilo)[arguments]: Add #:phases.
2014-09-18 11:22:01 +02:00