jackhill/guix/guix.git
9 years agoMerge branch 'bug-17853'
Ludovic Courtès [Sun, 13 Jul 2014 21:44:55 +0000 (23:44 +0200)]
Merge branch 'bug-17853'

9 years agoguix system: Fix return value for 'reconfigure'.
Ludovic Courtès [Sun, 13 Jul 2014 21:44:37 +0000 (23:44 +0200)]
guix system: Fix return value for 'reconfigure'.

* guix/scripts/system.scm (perform-action) <reconfigure>: Add missing
  'return' expression.

9 years agolinux-initrd: Allow extra modules to be passed to 'base-initrd'.
Ludovic Courtès [Sun, 13 Jul 2014 21:43:00 +0000 (23:43 +0200)]
linux-initrd: Allow extra modules to be passed to 'base-initrd'.

* gnu/system/linux-initrd.scm (base-initrd): Add #:extra-modules
  parameter.

9 years agoinstall: Make /var/db and /mnt.
Ludovic Courtès [Sun, 13 Jul 2014 14:35:24 +0000 (16:35 +0200)]
install: Make /var/db and /mnt.

* guix/build/install.scm (directives): Add /var/db and /mnt.

9 years agoguix system: Convert to monadic style.
Ludovic Courtès [Sun, 13 Jul 2014 14:13:42 +0000 (16:13 +0200)]
guix system: Convert to monadic style.

* guix/scripts/system.scm (references*, topologically-sorted*,
  show-what-to-build*): New procedures.
  (copy-closure): Turn into a monadic procedure.
  (install): Likewise, and adjust parameter list.
  (switch-to-system): Likewise.
  (system-derivation-for-action, grub.cfg, maybe-build, perform-action):
  New procedures.
  (guix-system): Use them.

9 years agovm: Add support for i686.
Ludovic Courtès [Sun, 13 Jul 2014 14:07:26 +0000 (16:07 +0200)]
vm: Add support for i686.

Partially fixes <http://bugs.gnu.org/18002>.
Reported by David Thompson <dthompson2@worcester.edu>.

* guix/build/vm.scm (qemu-command): Add optional 'system' parameter.
  Special-case "^i[3456]86$".
* gnu/system/vm.scm (system-qemu-image/shared-store-script): Use it.

9 years agognu: Add chess and xboard.
John Darrington [Sat, 12 Jul 2014 17:42:13 +0000 (19:42 +0200)]
gnu: Add chess and xboard.

* gnu/packages/games.scm (xboard, chess): New variables.

9 years agoservices: Add Tor service.
Ludovic Courtès [Sat, 12 Jul 2014 21:14:10 +0000 (23:14 +0200)]
services: Add Tor service.

* gnu/services/networking.scm (tor-service): New procedure.
* doc/guix.texi (Networking Services): Document it.
* build-aux/hydra/demo-os.scm: Use it.  Add TOR and TORSOCKS to
  'packages'.

9 years agoservices: networking: Set interfaces up; delete default route only when needed.
Ludovic Courtès [Sat, 12 Jul 2014 20:56:40 +0000 (22:56 +0200)]
services: networking: Set interfaces up; delete default route only when needed.

* gnu/services/networking.scm (static-networking-service): Use -i, -A,
  and --up with Inetutils' ifconfig.  Do 'route del -net default' only
  when GATEWAY is true.

9 years agosystem: Add 'which' to the base packages.
Ludovic Courtès [Sat, 12 Jul 2014 20:53:56 +0000 (22:53 +0200)]
system: Add 'which' to the base packages.

* gnu/system.scm (%base-packages): Add WHICH.

9 years agoservices: Provide a 'loopback' service by default.
Ludovic Courtès [Sat, 12 Jul 2014 20:46:44 +0000 (22:46 +0200)]
services: Provide a 'loopback' service by default.

* gnu/services/networking.scm (static-networking-service): Add
  #:provision parameter; use it.
* gnu/services/base.scm (%base-services): Call
  'static-networking-service' for "lo".

9 years agosystem: Remove erroneous system binding in profile maker.
Ludovic Courtès [Sat, 12 Jul 2014 20:16:34 +0000 (22:16 +0200)]
system: Remove erroneous system binding in profile maker.

Partly fixes <http://bugs.gnu.org/18002>.
Reported by David Thompson <dthompson2@worcester.edu>.

* gnu/system.scm (union): Remove #:system parameter, which was unused.

9 years agogexp: Resolve the default system at '>>=' time.
Ludovic Courtès [Sat, 12 Jul 2014 20:11:12 +0000 (22:11 +0200)]
gexp: Resolve the default system at '>>=' time.

Partly fixes <http://bugs.gnu.org/18002>.
Reported by David Thompson <dthompson2@worcester.edu>.

* guix/gexp.scm (gexp->derivation): Change #:system to default #f.
  Use (%current-system) from within the 'mlet*'.
* tests/gexp.scm ("gexp->derivation, default system"): New test.

9 years agomonads: Fix 'mapm' so that effects happen from left to right.
Ludovic Courtès [Sat, 12 Jul 2014 15:16:36 +0000 (17:16 +0200)]
monads: Fix 'mapm' so that effects happen from left to right.

* guix/monads.scm (mapm): Don't reverse LST, so that items are processed
  from left to right.  Bind the result of 'foldm' and reverse it.
* tests/monads.scm ("sequence"): Change 'frob' so it performs its side
  effect within an 'mlet' body.  Adjust call accordingly.

9 years agognu: Add links.
John Darrington [Fri, 11 Jul 2014 08:01:05 +0000 (10:01 +0200)]
gnu: Add links.

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

9 years agodoc: Start writing about services.
Ludovic Courtès [Fri, 11 Jul 2014 21:01:57 +0000 (23:01 +0200)]
doc: Start writing about services.

* doc/guix.texi (Using the Configuration System): Remove details about
  '%base-services', and link to "Services".
  (Services): Add introductory text.
  (Base Services, Networking Services, X Window): New nodes.

9 years agoservices: Use more Texinfo markup in docstrings.
Ludovic Courtès [Fri, 11 Jul 2014 20:57:02 +0000 (22:57 +0200)]
services: Use more Texinfo markup in docstrings.

* gnu/services/base.scm (host-name-service): Use Texinfo markup.
  (mingetty-service): Comment on #:allow-empty-passwords?.  Improve
  markup.
  (syslog-service, guix-service): Use Texinfo markup.
* gnu/services/networking.scm (static-networking-service): Likewise.
* gnu/services/xorg.scm (slim-service): Likewise.

9 years agosystem: Allow root to use 'groupadd' & co. without authenticating.
Ludovic Courtès [Fri, 11 Jul 2014 12:02:44 +0000 (14:02 +0200)]
system: Allow root to use 'groupadd' & co. without authenticating.

This fixes a bug whereby, if #:allow-root-passwords was #f, 'groupadd'
would ask for a password.  This is particularly problematic during
activation.

* gnu/system/linux.scm (rootok-pam-service): New procedure.
  (base-pam-services): Use it for all the user* and group* commands.

9 years agopackages: Add printer for <origin>.
Ludovic Courtès [Fri, 11 Jul 2014 11:59:54 +0000 (13:59 +0200)]
packages: Add printer for <origin>.

* guix/packages.scm (print-origin): New procedure.
  (<origin>): Add it as record type printer.

9 years agognu: texlive: Upgrade to 2014.
Eric Bavier [Fri, 11 Jul 2014 15:58:56 +0000 (10:58 -0500)]
gnu: texlive: Upgrade to 2014.

* gnu/packages/texlive.scm (texlive-extra-src, texlive-texmf-src,
  texlive): Upgrade to 2014.
  (texlive)[arguments]: Remove 'patch-perl-shebang' phase.

9 years agognu: Add fish.
David Thompson [Thu, 10 Jul 2014 12:07:00 +0000 (08:07 -0400)]
gnu: Add fish.

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

9 years agosystem: Add "netdev" group.
Ludovic Courtès [Thu, 10 Jul 2014 22:27:27 +0000 (00:27 +0200)]
system: Add "netdev" group.

* gnu/system/shadow.scm (%base-groups): Add "netdev".

9 years agognu: linux-libre: Remove '--strip-all' argument.
Ludovic Courtès [Thu, 10 Jul 2014 22:26:27 +0000 (00:26 +0200)]
gnu: linux-libre: Remove '--strip-all' argument.

* gnu/packages/linux.scm (linux-libre)[arguments]: Remove
  #:strip-flags, which led to unloadable modules.  This reverts
  commit 9ca7eaa1.
  [build-phase]: Add INSTALL_MOD_STRIP=1.

9 years agognu: glib: Fix build on i686.
Eric Bavier [Thu, 10 Jul 2014 22:03:42 +0000 (17:03 -0500)]
gnu: glib: Fix build on i686.

* gnu/packages/patches/glib-tests-timer.patch: New patch.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/glib.scm: Use it.

9 years agognu: Remove overlooked patch.
Eric Bavier [Thu, 10 Jul 2014 21:43:17 +0000 (16:43 -0500)]
gnu: Remove overlooked patch.

* gnu-system.am (dist_patch_DATA): Remove patch deleted previously.

9 years agognu: Add VTK.
Ludovic Courtès [Thu, 10 Jul 2014 19:34:07 +0000 (21:34 +0200)]
gnu: Add VTK.

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

9 years agognu: plotutils: Propagate libXaw.
Ludovic Courtès [Thu, 10 Jul 2014 11:05:47 +0000 (13:05 +0200)]
gnu: plotutils: Propagate libXaw.

* gnu/packages/plotutils.scm (plotutils): Move LIBXAW to from 'inputs'
  to 'propagated-inputs'.

9 years agognu: linux-libre: Fallback to 'defconfig' when there's no config file.
Ludovic Courtès [Thu, 10 Jul 2014 11:03:46 +0000 (13:03 +0200)]
gnu: linux-libre: Fallback to 'defconfig' when there's no config file.

* gnu/packages/linux.scm (kernel-config): Return #f rather than error
  out in the default case.
  (linux-libre)[native-inputs]: Add "kconfig" input only when
  'kernel-config' returns true.
  [build-phase]: Adjust accordingly.

9 years agognu: linux-libre: Strip everything with '--strip-all'.
Ludovic Courtès [Wed, 9 Jul 2014 22:34:33 +0000 (00:34 +0200)]
gnu: linux-libre: Strip everything with '--strip-all'.

* gnu/packages/linux.scm (linux-libre)[arguments]: Add #:strip-flags.

9 years agognu: linux-libre: Add i686 and x86_64 full-blown configs.
Ludovic Courtès [Wed, 9 Jul 2014 22:31:31 +0000 (00:31 +0200)]
gnu: linux-libre: Add i686 and x86_64 full-blown configs.

Thanks to Jason Self <jself@gnu.org> for the kernel configs.

* gnu/packages/linux.scm (kernel-config): New procedure.
  (linux-libre)[build-phase]: Copy it to .config.  Reduce the list of
  things appended to .config.
  [native-inputs]: Add "kconfig" input.
* gnu/packages/linux-libre-i686.conf,
  gnu/packages/linux-libre-x86_64.conf: New files, from
  <http://jxself.org/x86-32.txt> and <http://jxself.org/x86-64.txt>.
* Makefile.am (KCONFIGS): New variable.
  (nobase_dist_guilemodule_DATA): Add it.

9 years agoservices: udev: Improve synchronization when starting.
Ludovic Courtès [Wed, 9 Jul 2014 22:20:57 +0000 (00:20 +0200)]
services: udev: Improve synchronization when starting.

* gnu/services/base.scm (udev-service)[start]: Add 'wait-for-udevd', and
  call it before running 'udevadm trigger'.  Pass --action=add to
  'udevadm trigger'.  Call 'udevadm settle' after 'udevadm trigger'.

9 years agoservices: xorg: Remove optional sections from xorg.conf.
Ludovic Courtès [Wed, 9 Jul 2014 21:55:33 +0000 (23:55 +0200)]
services: xorg: Remove optional sections from xorg.conf.

* gnu/services/xorg.scm (xorg-start-command)[xserver.conf]: Remove
  sections "Monitor", "InputClass", "ServerLayout", "Device", and
  "Screen".

9 years agoservices: xorg: Require 'udev'.
Ludovic Courtès [Wed, 9 Jul 2014 21:53:35 +0000 (23:53 +0200)]
services: xorg: Require 'udev'.

* gnu/services/xorg.scm: Add 'udev' to the 'requirement' field.

9 years agoservices: xorg: Add drivers to the default search path.
Ludovic Courtès [Wed, 9 Jul 2014 21:52:49 +0000 (23:52 +0200)]
services: xorg: Add drivers to the default search path.

* gnu/services/xorg.scm (xorg-start-command)[xserver.conf]: Add
  'ModulePath' entries for xf86-video-{fbdev,cirrus,intel,mach64,nv} and
  xf86-input-{synaptics,vmmouse}.

9 years agoservices: xorg: Fix typo in font path.
Ludovic Courtès [Wed, 9 Jul 2014 21:51:19 +0000 (23:51 +0200)]
services: xorg: Fix typo in font path.

* gnu/services/xorg.scm (xorg-start-command)[xserver.conf]: Fix typo in
  font path.

9 years agognu: Add sipwitch and dependent packages
John Darrington [Tue, 8 Jul 2014 16:59:09 +0000 (18:59 +0200)]
gnu: Add sipwitch and dependent packages

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

9 years agoguix system: Add '--system' option.
Ludovic Courtès [Tue, 8 Jul 2014 21:42:35 +0000 (23:42 +0200)]
guix system: Add '--system' option.

* guix/scripts/system.scm (switch-to-system): Add #:system parameter;
  pass it to 'run-with-store'.
  (%options): Add '--system'.
  (guix-system): Pass the 'system' option to 'run-with-store',
  'package-derivation', and 'switch-to-system' calls.
* doc/guix.texi (Invoking guix system): Document '--system' and
  '--image-size'.

9 years agognu: Add conkeror.
Cyrill Schenkel [Mon, 7 Jul 2014 16:58:18 +0000 (18:58 +0200)]
gnu: Add conkeror.

* gnu-system.am (GNU_SYSTEM_MODULES): Add new package.
* gnu/packages/conkeror.scm: New file.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
9 years agognu: tor: Upgrade to 0.2.4.22.
Mark H Weaver [Tue, 8 Jul 2014 13:07:51 +0000 (09:07 -0400)]
gnu: tor: Upgrade to 0.2.4.22.

* gnu/packages/tor.scm (tor): Upgrade to 0.2.4.22.

9 years agoservices: Update to use the dmd 0.2 API.
Ludovic Courtès [Mon, 7 Jul 2014 21:58:02 +0000 (23:58 +0200)]
services: Update to use the dmd 0.2 API.

* gnu/services/avahi.scm (avahi-service)[start]: Wrap command in a
  list.
* gnu/services/dbus.scm (dbus-service)[start]: Likewise.
* gnu/services/ssh.scm (lsh-service): Likewise.
* gnu/services/base.scm (mingetty-service)[start]: Likewise.
  (nscd-service)[start]: Likewise.
  (syslog-service)[start]: Likewise.
  (guix-service)[start]: Likewise.
  (udev-service)[start]: Use 'exec-command' instead of 'execl'.
* gnu/services/xorg.scm (slim-service)[start]: Likewise, and use
  #:environment-variables.

9 years agognu: dmd: Update to 0.2.
Ludovic Courtès [Mon, 7 Jul 2014 21:54:28 +0000 (23:54 +0200)]
gnu: dmd: Update to 0.2.

* gnu/packages/admin.scm (dmd): Update to 0.2; remove 'patches'.
* gnu/packages/patches/dmd-getpw.patch,
  gnu/packages/patches/dmd-tests-longer-sleeps.patch: Remove.
* gnu-system.am (dist_patch_DATA): Adjust accordingly.

9 years agognu: linux-libre: Use the GNU + Freedo boot logo.
Ludovic Courtès [Mon, 7 Jul 2014 20:50:45 +0000 (22:50 +0200)]
gnu: linux-libre: Use the GNU + Freedo boot logo.

* gnu/packages/linux.scm (%boot-logo-patch): New variable.
  (linux-libre)[build-phase]: Apply it.
  [native-inputs]: Add it.

9 years agognu: bitlbee: Upgrade to 3.2.2.
Mark H Weaver [Mon, 7 Jul 2014 05:19:17 +0000 (01:19 -0400)]
gnu: bitlbee: Upgrade to 3.2.2.

* gnu/packages/messaging.scm (bitlbee): Upgrade to 3.2.2.  Remove patches.
  Use 'libotr' instead of 'libotr-3'.
* gnu/packages/patches/bitlbee-fix-tests.patch: Remove file.
* gnu/packages/patches/bitlbee-memset-fix.patch: Remove file.
* gnu-system.am (dist_patch_DATA): Remove patches.

9 years agobuild: Get the canonical $HOME name when testing 'guix package'.
Ludovic Courtès [Sun, 6 Jul 2014 19:26:11 +0000 (21:26 +0200)]
build: Get the canonical $HOME name when testing 'guix package'.

* tests/guix-package.sh (HOME): Recompute using 'pwd -P'.

9 years agobuild: Use the canonical srcdir/builddir in 'pre-inst-env'.
Ludovic Courtès [Sun, 6 Jul 2014 17:13:12 +0000 (19:13 +0200)]
build: Use the canonical srcdir/builddir in 'pre-inst-env'.

Fixes <http://bugs.gnu.org/17935>.

* pre-inst-env.in (abs_top_builddir, abs_top_srcdir): Use 'pwd -P'.

9 years agobuild: Remove empty element from $GUILE_LOAD_PATH.
Ludovic Courtès [Sun, 6 Jul 2014 17:08:54 +0000 (19:08 +0200)]
build: Remove empty element from $GUILE_LOAD_PATH.

* pre-inst-env.in (GUILE_LOAD_PATH): Remove extraneous colon.

9 years agognu: gnupg: Update to 2.0.25 and 1.4.18.
Ludovic Courtès [Sat, 5 Jul 2014 17:51:43 +0000 (19:51 +0200)]
gnu: gnupg: Update to 2.0.25 and 1.4.18.

* gnu/packages/gnupg.scm (gnupg): Update to 2.0.25.
  (gnupg-1): Update to 1.4.18.

9 years agobuild: Support running the test suite from a directory with symlinks.
Ludovic Courtès [Sat, 5 Jul 2014 17:07:38 +0000 (19:07 +0200)]
build: Support running the test suite from a directory with symlinks.

Fixes <http://bugs.gnu.org/17935>.
Reported by Alex Kost <alezost@gmail.com>.

* test-env.in: Canonicalize $NIX_STORE_DIR, and remove
  $NIX_IGNORE_SYMLINK_STORE setting.
* tests/guix-register.sh: Likewise, canonicalize $new_store_dir and
  $new_store and leave $NIX_IGNORE_SYMLINK_STORE unchanged.

9 years agognu: Add maxima.
John Darrington [Sat, 5 Jul 2014 12:31:49 +0000 (14:31 +0200)]
gnu: Add maxima.

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

9 years agognu: Add gcl.
John Darrington [Sat, 5 Jul 2014 12:30:51 +0000 (14:30 +0200)]
gnu: Add gcl.

* gnu-system.am (GNU_SYSTEM_MODULES): Add new package.
* gnu/packages/lisp.scm: New file.

9 years agoguix package: Try $LOGNAME in addition to $USER.
Taylan Ulrich Bayirli/Kammer [Sat, 5 Jul 2014 12:36:44 +0000 (15:36 +0300)]
guix package: Try $LOGNAME in addition to $USER.

Fixes <http://bugs.gnu.org/17946>.

Notoriously, cron jobs may set LOGNAME only and not USER.  See
e.g. crontab(5) under Debian 7 (wheezy).

* guix/scripts/package.scm (%profile-directory)
(guix-package): Also try LOGNAME if USER is unset.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
9 years agoThank Taylan and Alex.
Ludovic Courtès [Sat, 5 Jul 2014 13:02:42 +0000 (15:02 +0200)]
Thank Taylan and Alex.

9 years agoguix package: Do the right thing for '-p ~/.guix-profile'.
Ludovic Courtès [Sat, 5 Jul 2014 12:56:08 +0000 (14:56 +0200)]
guix package: Do the right thing for '-p ~/.guix-profile'.

Fixes <http://bugs.gnu.org/17939>.
Reported by Taylan Ulrich Bayirli/Kammer <taylanbayirli@gmail.com>.

* guix/scripts/package.scm (canonicalize-profile): New procedure.
  (%options): Use it for --profile.
* tests/guix-package.sh: Add test.

9 years agovm: Enable QEMU support in the freestanding VM image.
Ludovic Courtès [Fri, 4 Jul 2014 17:01:22 +0000 (19:01 +0200)]
vm: Enable QEMU support in the freestanding VM image.

* gnu/system/vm.scm (system-qemu-image): Add 'initrd' field.

9 years agognu: Avoid circular dependency among modules.
Ludovic Courtès [Fri, 4 Jul 2014 13:08:25 +0000 (15:08 +0200)]
gnu: Avoid circular dependency among modules.

Reported by Alex Kost <alezost@gmail.com>.

* gnu/packages/python.scm: Don't use #:select for (gnu packages zip).

9 years agognu: Add gegl and gimp
John Darrington [Thu, 3 Jul 2014 04:49:22 +0000 (06:49 +0200)]
gnu: Add gegl and gimp

* gnu/packages/gimp.scm (gegl, gimp): New variables.

9 years agodoc: Document user accounts and user groups.
Ludovic Courtès [Thu, 3 Jul 2014 21:36:01 +0000 (23:36 +0200)]
doc: Document user accounts and user groups.

* doc/guix.texi (File Systems): Fix typo.
  (User Accounts): Populate.

9 years agolinux-initrd: Use 'call-with-error-handling' when booting.
Ludovic Courtès [Thu, 3 Jul 2014 20:44:14 +0000 (22:44 +0200)]
linux-initrd: Use 'call-with-error-handling' when booting.

* guix/build/linux-initrd.scm (canonicalize-device-spec): When label
  resolution fails, call 'error' instead of 'format' + 'start-repl'.
  (boot-system): Wrap most of body in 'call-with-error-handling'.
  Remove 'catch' around 'primitive-load' call.

9 years agolinux-initrd: Remove unused local procedure.
Ludovic Courtès [Thu, 3 Jul 2014 20:24:56 +0000 (22:24 +0200)]
linux-initrd: Remove unused local procedure.

* guix/build/linux-initrd.scm (boot-system)[resolve]: Remove.

9 years agognu: Add youtube-dl.
Ludovic Courtès [Thu, 3 Jul 2014 20:21:53 +0000 (22:21 +0200)]
gnu: Add youtube-dl.

* gnu/packages/video.scm (youtube-dl): New variable.

9 years agodoc: Write about file system configuration.
Ludovic Courtès [Wed, 2 Jul 2014 21:42:06 +0000 (23:42 +0200)]
doc: Write about file system configuration.

* doc/guix.texi (Using the Configuration System): Change 'guix system
  boot' to 'guix system reconfigure'.
  (File Systems, User Accounts, Services): New nodes.

9 years agognu: glib: Upgrade to 2.40.0.
Eric Bavier [Wed, 2 Jul 2014 18:58:02 +0000 (13:58 -0500)]
gnu: glib: Upgrade to 2.40.0.

* gnu/packages/glib.scm (glib)[source]: Upgrade to 2.40.0.  Adjust
  patch list.
* gnu/packages/patches/glib-tests-newnet.patch: Remove.
* gnu/packages/patches/glib-tests-desktop.patch: Adjust for 2.40.0.

9 years agognu: libbonobo: Skip failing test case.
Eric Bavier [Wed, 2 Jul 2014 18:52:12 +0000 (13:52 -0500)]
gnu: libbonobo: Skip failing test case.

* gnu/packages/patches/libbonobo-activation-test-race.patch: New patch.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/gnome.scm (libbonobo)[source]: New 'patches' field.

9 years agognu: gnome: Version splitting and line wrapping.
Eric Bavier [Wed, 2 Jul 2014 18:47:23 +0000 (13:47 -0500)]
gnu: gnome: Version splitting and line wrapping.

* gnu/packages/gnome.scm (orbit2): Wrape code to 80 characters.  Use
  string-split/string-join to get version major/minor numbers.
  (libbonoboui): Likewise.

9 years agognu: Adjust yet more packages to GLib "bin" split.
Eric Bavier [Wed, 2 Jul 2014 18:32:59 +0000 (13:32 -0500)]
gnu: Adjust yet more packages to GLib "bin" split.

* gnu/packages/maths.scm (pspp): Add glib:bin to 'native-inputs'.
* gnu/packages/gnome.scm (gconf, gnome-vfs, libgnome, libgnomeui,
  libbonoboui): Likewise.
  (libbonobo, libgnomecanvas, libgnomeprint): Comment on why glib:bin.
* gnu/packages/gtk.scm (gtksourceview): Likewise.

9 years agolinux-initrd: Gracefully handle lack of or invalid ext2 superblocks.
Ludovic Courtès [Wed, 2 Jul 2014 10:18:36 +0000 (12:18 +0200)]
linux-initrd: Gracefully handle lack of or invalid ext2 superblocks.

Reported by David Thompson <dthompson2@worcester.edu>.

* guix/build/linux-initrd.scm (read-ext2-superblock): Add
  'superblock-size' variable.  Read with 'get-bytevector-n!' instead of
  'getbytevector-n', and make sure we read exactly SUPERBLOCK-SIZE
  bytes.

9 years agognu: Adjust more packages to GLib "bin" split.
Ludovic Courtès [Wed, 2 Jul 2014 09:42:17 +0000 (11:42 +0200)]
gnu: Adjust more packages to GLib "bin" split.

* gnu/packages/glib.scm (dbus-glib): Add glib-bin to 'native-inputs'.
  (glibmm): Likewise.
* gnu/packages/gstreamer.scm (gstreamer-0.10): Likewise.
* gnu/packages/gtk.scm (gtksourceview): Likewise.
* gnu/packages/qemu.scm (qemu-headless): Likewise.
* gnu/packages/gnome.scm (librsvg, libbonobo, libgnomecanvas,
  libgnomeprint): Likewise.

9 years agognu: pdf: Add PoDoFo.
Ludovic Courtès [Wed, 2 Jul 2014 07:50:04 +0000 (09:50 +0200)]
gnu: pdf: Add PoDoFo.

* gnu/packages/pdf.scm (podofo): New variable.

9 years agognu: Add cmatrix.
Cyrill Schenkel [Tue, 1 Jul 2014 12:44:04 +0000 (14:44 +0200)]
gnu: Add cmatrix.

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

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
9 years agognu: Add node.
Cyrill Schenkel [Tue, 1 Jul 2014 06:47:31 +0000 (08:47 +0200)]
gnu: Add node.

* gnu-system.am (GNU_SYSTEM_MODULES): Add new package.
* gnu/packages/node.scm: New file.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
9 years agoservices: Add lshd service.
Ludovic Courtès [Mon, 30 Jun 2014 20:33:48 +0000 (22:33 +0200)]
services: Add lshd service.

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

9 years agolinux-initrd: Rename 'qemu-initrd' to 'base-initrd'.
Ludovic Courtès [Mon, 30 Jun 2014 18:56:45 +0000 (20:56 +0200)]
linux-initrd: Rename 'qemu-initrd' to 'base-initrd'.

* gnu/system/linux-initrd.scm (qemu-initrd): Rename to...
  (base-initrd): ... this.
* gnu/system.scm (<operating-system>)[initrd]: Update accordingly.
* gnu/system/vm.scm (expression->derivation-in-linux-vm,
  system-disk-image, virtualized-operating-system): Likewise.

9 years agolinux-initrd: Disable QEMU networking by default.
Ludovic Courtès [Mon, 30 Jun 2014 18:52:38 +0000 (20:52 +0200)]
linux-initrd: Disable QEMU networking by default.

* gnu/system/linux-initrd.scm (qemu-initrd): Remove default value for
  #:qemu-networking?.
* gnu/system/vm.scm (expression->derivation-in-linux-vm): Pass
  #:qemu-networking? #t.
  (system-disk-image): Remove #:qemu-networking? #f.
  (virtualized-operating-system): Pass #:qemu-networking? #t.

9 years agolinux-initrd: Make the virtio kernel modules optional.
Ludovic Courtès [Mon, 30 Jun 2014 04:49:38 +0000 (06:49 +0200)]
linux-initrd: Make the virtio kernel modules optional.

* gnu/system/linux-initrd.scm (qemu-initrd): Add #:virtio? parameter.
  Use it.
* gnu/system/vm.scm (expression->derivation-in-linux-vm): Pass
  'qemu-initrd' #:virtio?.
  (virtualized-operating-system): Likewise.

9 years agognu: Add jrnl, python-pycrypto, python-keyring, python-parsedatetime, and python...
Eric Bavier [Mon, 30 Jun 2014 16:26:08 +0000 (11:26 -0500)]
gnu: Add jrnl, python-pycrypto, python-keyring, python-parsedatetime, and python-tzlocal.

* gnu/packages/jrnl.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* gnu/packages/python.scm (python-pycrypto, python-keyring,
  python-dateutil-2, python-parsedatetime, python-tzlocal): New
  variables.

9 years agoguix: Add CC0 license.
Eric Bavier [Mon, 30 Jun 2014 16:24:29 +0000 (11:24 -0500)]
guix: Add CC0 license.

* guix/licenses.scm (cc0): New variable.

9 years agognu: Add behave, python-six, python-enum34, python-parse-type, and python-parse.
Eric Bavier [Mon, 30 Jun 2014 14:56:50 +0000 (09:56 -0500)]
gnu: Add behave, python-six, python-enum34, python-parse-type, and python-parse.

* gnu/packages/python.scm (python-six, python-enum34, python-parse-type,
  python-parse, behave): New variables.

9 years agognu: glib: Add "bin" output.
Ludovic Courtès [Mon, 30 Jun 2014 16:05:57 +0000 (18:05 +0200)]
gnu: glib: Add "bin" output.

Fixes <http://bugs.gnu.org/17853>.

* gnu/packages/glib.scm (glib)[outputs]: Add "bin".
  (gobject-introspection)[native-inputs]: New field.
* gnu/packages/avahi.scm (avahi)[native-inputs]: Add glib:bin.
* gnu/packages/gnome.scm (brasero, libgnome-keyring, evince,
  gsettings-desktop-schemas, libnotify, gtkglext): Likewise.
* gnu/packages/gstreamer.scm (gstreamer, gst-plugins-base,
  gst-plugins-base-0.10): Likewise.
* gnu/packages/gtk.scm (atk, pango, gdk-pixbuf, gtk+-2, gtk+):
  Likewise.
* gnu/packages/linux.scm (udev): Likewise.
* gnu/packages/pdf.scm (poppler): Likewise.

9 years agognu: Add goffice and gnumeric
John Darrington [Sat, 28 Jun 2014 07:11:58 +0000 (09:11 +0200)]
gnu: Add goffice and gnumeric

gnu/packages/gnome.scm (goffice, gnumeric): New variables.

9 years agoguix-register: Add explicit libgcrypt initialization.
Ludovic Courtès [Sun, 29 Jun 2014 21:53:18 +0000 (23:53 +0200)]
guix-register: Add explicit libgcrypt initialization.

* nix/guix-register/guix-register.cc (main): Add calls to
  'gcry_check_version' and 'gcry_control', to appease libgcrypt.

9 years agoAdd Cyrill to AUTHORS.
Ludovic Courtès [Sun, 29 Jun 2014 20:38:38 +0000 (22:38 +0200)]
Add Cyrill to AUTHORS.

9 years agognu: Add ncmpcpp.
Cyrill Schenkel [Sun, 29 Jun 2014 08:23:28 +0000 (10:23 +0200)]
gnu: Add ncmpcpp.

* gnu/packages/mpd.scm (ncmpcpp): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
9 years agoservices: udev: Make sure modules are found, and use "udevadm settle".
Ludovic Courtès [Sun, 29 Jun 2014 20:06:29 +0000 (22:06 +0200)]
services: udev: Make sure modules are found, and use "udevadm settle".

* gnu/services/base.scm (udev-service): Set $LINUX_MODULE_DIRECTORY.  In
  the parent, invoke "udevadm settle" before "udevadm trigger".

9 years agosystem: Set $LINUX_MODULE_DIRECTORY as a function or /run/booted-system.
Ludovic Courtès [Sun, 29 Jun 2014 20:02:42 +0000 (22:02 +0200)]
system: Set $LINUX_MODULE_DIRECTORY as a function or /run/booted-system.

* gnu/system.scm (etc-directory): Remove #:kernel parameter.  Set
  LINUX_MODULE_DIRECTORY as a function or /run/booted-system.
  (operating-system-etc-directory): Update accordingly.

9 years agodoc: Improve wording and example in "Using the Configuration System".
Ludovic Courtès [Fri, 27 Jun 2014 21:20:26 +0000 (23:20 +0200)]
doc: Improve wording and example in "Using the Configuration System".

* doc/guix.texi (Using the Configuration System): Make the intro more
  user-oriented.  Change example to return an operating system.  Fix
  typos.  Mention mandatory/optional fields.

9 years agognu: guix: Use the development version by default.
Ludovic Courtès [Fri, 27 Jun 2014 21:37:44 +0000 (23:37 +0200)]
gnu: guix: Use the development version by default.

* gnu/packages/package-management.scm (guix): Rename to...
  (guix-0.6): ... this.
  (guix-devel): Rename to...
  (guix): ... this.  Replace references to 'guix' by references to
  'guix-0.6'.

9 years agognu: guix: Add development version.
Ludovic Courtès [Fri, 27 Jun 2014 21:06:55 +0000 (23:06 +0200)]
gnu: guix: Add development version.

* gnu/packages/package-management.scm (guix-devel): New variable.

9 years agogit-download: Support recursive clones.
Ludovic Courtès [Fri, 27 Jun 2014 21:04:48 +0000 (23:04 +0200)]
git-download: Support recursive clones.

* guix/git-download.scm (<git-reference>)[recursive?]: New field.
  (git-fetch): Add 'inputs' variable.  Add it to the #:inputs argument
  of 'build-expression->derivation'.  Augment builder with call to
  'set-path-environment-variable', and pass #:recursive? to
  'git-fetch'.
* guix/build/git.scm (git-fetch): Add #:recursive? parameter.  Pass
  --recursive when RECURSIVE? is true, and delete all the '.git' files.

9 years agognu: Adjust for (gnu packages image) merger.
Ludovic Courtès [Fri, 27 Jun 2014 20:36:25 +0000 (22:36 +0200)]
gnu: Adjust for (gnu packages image) merger.

* gnu/packages/aidc.scm: Use (gnu packages image).

9 years agosystem: Add a 'system?' field to user accounts.
Ludovic Courtès [Fri, 27 Jun 2014 16:57:33 +0000 (18:57 +0200)]
system: Add a 'system?' field to user accounts.

* gnu/system/shadow.scm (<user-account>)[system?]: New field.
* gnu/system.scm (user-account->gexp): Add it.
* guix/build/activation.scm (add-user): Add #:system? parameter and
  honor it.
  (activate-users+groups): Handle the 'system?' part of user tuples.
  Pass it to 'add-user'.  Don't create PROFILE-DIR when SYSTEM? is
  true.
* gnu/services/dbus.scm (dbus-service): Add 'system?' field for
  "messagebus" account.
* gnu/services/base.scm (guix-build-accounts): Likewise.
* gnu/services/avahi.scm (avahi-service): Likewise.

9 years agosystem: Install /var/guix/profiles/system-1-link on new systems.
Ludovic Courtès [Fri, 27 Jun 2014 15:54:29 +0000 (17:54 +0200)]
system: Install /var/guix/profiles/system-1-link on new systems.

* guix/build/install.scm (directives): Add /var/guix/profiles/system.
  (populate-root-file-system): Add 'system' parameter.  Create
  /var/guix/profiles/system-1-link.
* guix/scripts/system.scm (install): Pass OS-DIR to
  'populate-root-file-system'.
* guix/build/vm.scm (initialize-root-partition): Add #:system-directory
  parameter, and pass it to 'populate-root-file-system'.
  (initialize-hard-disk): Add #:system-directory parameter, and pass it
  to 'initialize-root-partition'.
* gnu/system/vm.scm (qemu-image): Add #:os-derivation parameter and pass
  it to 'initialize-hard-disk'.
  (system-disk-image, system-qemu-image,
  system-qemu-image/shared-store): Pass #:os-derivation to 'qemu-image.

9 years agognu: Add talkfilters.
John Darrington [Fri, 27 Jun 2014 08:33:08 +0000 (10:33 +0200)]
gnu: Add talkfilters.

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

9 years agognu: Add qrencode.
John Darrington [Thu, 26 Jun 2014 18:40:21 +0000 (20:40 +0200)]
gnu: Add qrencode.

* gnu/packages/aidc.scm (qrencode): New variable.

9 years agognu: Consolidate libjpeg, libpng, and libtiff into one module.
David Thompson [Wed, 25 Jun 2014 12:39:02 +0000 (08:39 -0400)]
gnu: Consolidate libjpeg, libpng, and libtiff into one module.

* gnu/packages/image.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add image.scm and remove libjpeg.scm,
  libpng.scm, and libtiff.scm.
* gnu/packages/libjpeg.scm, gnu/packages/libpng.scm, gnu/packages/libtiff.scm:
  Delete files.
* gnu/packages/emacs.scm gnu/packages/games.scm, gnu/packages/gd.scm,
  gnu/packages/geeqie.scm, gnu/packages/ghostscript.scm,
  gnu/packages/gimp.scm, gnu/packages/gnome.scm, gnu/packages/gnunet.scm,
  gnu/packages/gnustep.scm, gnu/packages/gnuzilla.scm,
  gnu/packages/graphviz.scm, gnu/packages/gtk.scm,
  gnu/packages/imagemagick.scm, gnu/packages/inkscape.scm,
  gnu/packages/netpbm.scm, gnu/packages/pdf.scm, gnu/packages/plotutils.scm,
  gnu/packages/qemu.scm, gnu/packages/qt.scm, gnu/packages/scheme.scm,
  gnu/packages/sdl.scm, gnu/packages/slim.scm, gnu/packages/tcl.scm,
  gnu/packages/texlive.scm, gnu/packages/video.scm, gnu/packages/xiph.scm,
  gnu/packages/xorg.scm: Use (gnu packages image) module.

9 years agognu: Enable libvpx support in ffmpeg.
David Thompson [Thu, 26 Jun 2014 22:07:29 +0000 (18:07 -0400)]
gnu: Enable libvpx support in ffmpeg.

* gnu/packages/video.scm (ffmpeg): Add libvpx input.

9 years agosystem: Adjust the set of fields with default values.
Ludovic Courtès [Thu, 26 Jun 2014 22:11:38 +0000 (00:11 +0200)]
system: Adjust the set of fields with default values.

* gnu/system.scm (<operating-system>)[file-systems]: Remove default.
  [locale]: Add default value.

9 years agoguix system: Add 'reconfigure' action.
Ludovic Courtès [Thu, 26 Jun 2014 22:06:46 +0000 (00:06 +0200)]
guix system: Add 'reconfigure' action.

* guix/scripts/system.scm (%system-profile): New variable.
  (switch-to-system, previous-grub-entries): New procedures.
  (unless-file-not-found): New macro.
  (show-help): Add 'reconfigure'.
  (guix-system): Handle it.
* gnu/system.scm: Export 'operating-system-activation-script'.
* doc/guix.texi (Invoking guix system): Document it.

9 years agoactivation: Preserve /etc/groups upon reboots.
Ludovic Courtès [Thu, 26 Jun 2014 21:31:17 +0000 (23:31 +0200)]
activation: Preserve /etc/groups upon reboots.

This is a followup to e2fcc23.  The /etc/group file would be cleared
when booting.

* guix/build/activation.scm (activate-users+groups)[touch]: Rewrite so
  it does not wipe out FILE's contents.

9 years agoguix {system,offload}: Improve reporting of syntax errors.
Ludovic Courtès [Thu, 26 Jun 2014 20:23:36 +0000 (22:23 +0200)]
guix {system,offload}: Improve reporting of syntax errors.

* guix/scripts/system.scm (read-operating-system) <catch handler>: Add
  case for 'syntax-error'.  Correct message for default case.
* guix/scripts/offload.scm (build-machines) <catch handler>: Add case
  for 'syntax-error'.
* tests/guix-system.sh: New file.
* Makefile.am (SH_TESTS): Add it.

9 years agognu: Add libsodium.
David Thompson [Thu, 26 Jun 2014 00:32:23 +0000 (20:32 -0400)]
gnu: Add libsodium.

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