Ludovic Courtès [Mon, 9 Jun 2014 16:51:11 +0000 (18:51 +0200)]
Thank Carlos.
Ludovic Courtès [Mon, 9 Jun 2014 16:50:16 +0000 (18:50 +0200)]
gnu: skribilo: Propagate Guile dependencies.
Reported by Carlos Carleos <carleos@uniovi.es>.
* gnu/packages/skribilo.scm (skribilo)[inputs]: Move
GUILE-READER/GUILE-2.0 and GUILE-LIB to...
[propagated-inputs]: ... here. New field.
Eric Bavier [Thu, 5 Jun 2014 04:45:31 +0000 (23:45 -0500)]
gnu: rdup: Fix tests.
* gnu/packages/backup.scm (rdup) [arguments]: Add pre-check phase.
[origin]: Add snippet.
Ludovic Courtès [Fri, 6 Jun 2014 15:18:17 +0000 (17:18 +0200)]
build-system/gnu: Add #:allowed-references.
* guix/build-system/gnu.scm (gnu-build): Add #:allowed-references.
[canonicalize-reference]: New procedure.
Pass #:allowed-references to 'build-expression->derivation'.
(gnu-cross-build): Likewise.
Ludovic Courtès [Fri, 6 Jun 2014 15:07:26 +0000 (17:07 +0200)]
derivations: 'build-expression->derivation' supports #:allowed-references.
* guix/derivations.scm (build-expression->derivation): Add
#:allowed-references and pass it to 'derivation.
* doc/guix.texi (Derivations): Adjust accordingly.
Ludovic Courtès [Thu, 5 Jun 2014 22:09:12 +0000 (00:09 +0200)]
services: Use a fixed GID for the build group and use that for the store.
This partly reverts commit
185f669 ("services: Make sure the store's
group is the build group.")
* gnu/services/base.scm (guix-service)[activate]: Remove 'chown' call.
Add 'id' field to 'user-group' form.
* guix/build/install.scm (directives): Set the store's GID to 30000.
Ludovic Courtès [Thu, 5 Jun 2014 11:38:57 +0000 (13:38 +0200)]
gnu: Add WakeLan.
* gnu/packages/admin.scm (wakelan): New variable.
Mark H Weaver [Thu, 5 Jun 2014 20:36:25 +0000 (16:36 -0400)]
gnu: openssl: Upgrade to 1.0.1h.
* gnu/packages/openssl.scm (openssl): Upgrade to 1.0.1h. Remove
patches, which are now upstream.
* gnu/packages/patches/openssl-extension-checking-fixes.patch: Remove.
* gnu/packages/patches/openssl-CVE-2010-5298.patch: Remove.
* gnu-system.am (dist_patch_DATA): Remove them.
Ludovic Courtès [Wed, 4 Jun 2014 21:55:12 +0000 (23:55 +0200)]
gnu: bdb: Move documentation to "doc" output.
* gnu/packages/bdb.scm (bdb): Add 'outputs' field. Adjust 'configure'
phase to move documentation to the "doc" output.
Ludovic Courtès [Wed, 4 Jun 2014 21:32:46 +0000 (23:32 +0200)]
gnu: Set proper source location for 'gcc-final'.
* gnu/packages/base.scm (gcc-final)[location]: New field.
Reported by Andreas Enge <andreas@enge.fr>.
Ludovic Courtès [Wed, 4 Jun 2014 21:08:59 +0000 (23:08 +0200)]
install: Add missing argv[0] in Info invocation.
* gnu/system/install.scm (log-to-info): Add "info" as second argument to
'execl'.
Ludovic Courtès [Wed, 4 Jun 2014 21:08:09 +0000 (23:08 +0200)]
activation: Only create groups that do not exist yet.
Before that the effect would be to re-create groups at each boot, and
thus remove any members of the groups.
* guix/build/activation.scm (activate-users+groups): Call 'add-group'
only when (getgrname name) fails.
Ludovic Courtès [Wed, 4 Jun 2014 20:19:30 +0000 (22:19 +0200)]
services: Make sure the store's group is the build group.
* gnu/services/base.scm (guix-service)[activate]: New variable. Add
'chown' call for (%store-prefix). Set the 'activate' field to
ACTIVATE.
* guix/build/install.scm (directives): Add comment about STORE's group.
Ludovic Courtès [Wed, 4 Jun 2014 20:17:20 +0000 (22:17 +0200)]
services: Add the build group to the supplementary groups of build users.
* gnu/services/base.scm (guix-build-accounts): Add
'supplementary-groups' field.
Ludovic Courtès [Wed, 4 Jun 2014 15:26:54 +0000 (17:26 +0200)]
tests: Skip tests that would hit the shebang length limitation.
* tests/gexp.scm (shebang): New variable.
Skip "gexp->script" when SHEBANG is longer than 127 chars.
* guix/gexp.scm (gexp->script): Add comment on the issue.
Ludovic Courtès [Wed, 4 Jun 2014 14:22:48 +0000 (16:22 +0200)]
system: Tell module-init-tools where to look for modules.
* gnu/packages/linux.scm (module-init-tools)[source](patches): New
field.
* gnu/packages/patches/module-init-tools-moduledir.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/system.scm (etc-directory): Add #:kernel parameter. Set
'LINUX_MODULE_DIRECTORY' in bashrc.
(operating-system-etc-directory): Pass #:kernel to 'etc-directory'.
Ludovic Courtès [Wed, 4 Jun 2014 14:08:26 +0000 (16:08 +0200)]
system: Rename activation script.
* gnu/system.scm (operating-system-activation-script): Change file name
to "activate".
Ludovic Courtès [Wed, 4 Jun 2014 14:07:37 +0000 (16:07 +0200)]
vm: Add #:name parameter for 'system-disk-image'.
* gnu/system/vm.scm (system-disk-image): Add #:name parameter; pass it
to 'qemu-image'.
Ludovic Courtès [Wed, 4 Jun 2014 14:07:09 +0000 (16:07 +0200)]
install: Register the hydra.gnu.org key on the installation image.
* gnu/services/base.scm (hydra-key-authorization): New procedure.
(guix-service): Add #:authorize-hydra-key? parameter; honor it using
'hydra-key-authorization'.
* gnu/system/install.scm (installation-services): Pass
#:authorize-hydra-key? #t.
Ludovic Courtès [Wed, 4 Jun 2014 14:01:53 +0000 (16:01 +0200)]
gnu: guix: Use /etc as sysconfdir.
* gnu/packages/package-management.scm (guix)[arguments]: Pass
--sysconfdir=/etc.
Ludovic Courtès [Wed, 4 Jun 2014 12:59:24 +0000 (14:59 +0200)]
system: Define '%base-packages' and use it.
* gnu/system.scm (<operating-system>)[packages]: Change default value to
%BASE-PACKAGES.
(%base-packages): New variable.
* gnu/system/install.scm (installation-os): Use it when defining the
'packages' field.
* doc/guix.texi (Using the Configuration System): Use %BASE-PACKAGES in
example. Remove now unneeded module imports. Explain this.
Mark H Weaver [Wed, 4 Jun 2014 05:03:17 +0000 (01:03 -0400)]
gnu: gnutls: Upgrade to 3.2.15.
* gnu/packages/gnutls.scm (gnutls): Upgrade to 3.2.15.
Ludovic Courtès [Tue, 3 Jun 2014 21:28:50 +0000 (23:28 +0200)]
install: Add more useful packages.
* gnu/system/install.scm (installation-os)[packages]: Add isc-dhcp,
net-tools, ddrescue, kbd, and texinfo-4.
Ludovic Courtès [Tue, 3 Jun 2014 20:22:39 +0000 (22:22 +0200)]
Update 'eo.po'.
Ludovic Courtès [Tue, 3 Jun 2014 20:22:25 +0000 (22:22 +0200)]
gnu: linux-libre: Build the e1000e driver (Intel ethernet NIC driver.)
* gnu/packages/linux.scm (linux-libre): Add CONFIG_E1000E=m.
Ludovic Courtès [Tue, 3 Jun 2014 20:12:05 +0000 (22:12 +0200)]
gnu: Merge Parted, fdisk, and ddrescue in (gnu packages disk).
* gnu/packages/parted.scm: Rename to...
* gnu/packages/disk.scm: ... this. New file. Merge with...
* gnu/packages/fdisk.scm: ... this; remove file;
* gnu/packages/ddrescue.scm: ... and this; remove file.
* gnu/system/install.scm, gnu/system/vm.scm: Adjust accordingly.
* gnu-system.am (GNU_SYSTEM_MODULES): Remove
gnu/packages/{parted,fdisk,ddrescue}.scm and add
gnu/packages/disk.scm.
Ludovic Courtès [Tue, 3 Jun 2014 09:49:28 +0000 (11:49 +0200)]
hydra: Add Avahi to the demo OS.
* build-aux/hydra/demo-os.scm: Use 'avahi-service' and 'dbus-service'.
Add AVAHI to 'packages'.
Ludovic Courtès [Tue, 3 Jun 2014 09:48:41 +0000 (11:48 +0200)]
system: Make sure /run/setuid-programs comes first in $PATH.
* gnu/system.scm (etc-directory) <bashrc>: Move /run/setuid-programs
first in $PATH.
Ludovic Courtès [Tue, 3 Jun 2014 09:10:58 +0000 (11:10 +0200)]
gnu: elfutils: Add synopsis and description.
* gnu/packages/elf.scm (elfutils): Add synopsis and description.
Ludovic Courtès [Mon, 2 Jun 2014 22:17:00 +0000 (00:17 +0200)]
list-packages: Add links to Hydra for mips64el-linux.
* build-aux/list-packages.scm (package->sxml): Add 'url' call for
mips64el-linux.
Ludovic Courtès [Mon, 2 Jun 2014 21:58:50 +0000 (23:58 +0200)]
system: File system sources can be marked as labels or devices.
* gnu/system/file-systems.scm (<file-system>)[title]: New field.
* gnu/services/base.scm (file-system-service): Add #:title parameter.
In 'start' gexp, use 'canonicalize-device-spec' and honor TITLE.
* gnu/system.scm (other-file-system-services,
operating-system-root-file-system, operating-system-initrd-file):
Adjust accordingly.
* gnu/system/linux-initrd.scm (file-system->spec): Likewise.
* gnu/system/vm.scm (system-disk-image): Add 'title' field for the root
file system.
* guix/build/linux-initrd.scm (mount-file-system): Expect the second
element of SPEC to be the title.
(boot-system)[root-mount-point?, root-fs-type]: Likewise.
* gnu/services/dmd.scm (dmd-configuration-file): Select
'canonicalize-device-spec'.
Ludovic Courtès [Mon, 2 Jun 2014 21:48:55 +0000 (23:48 +0200)]
linux-initrd: Wait for devices to appear when resolving a label.
* guix/build/linux-initrd.scm (canonicalize-device-spec): Add #:title
parameter. When resolving a label, wait a little and try several
times before bailing out.
Ludovic Courtès [Mon, 2 Jun 2014 21:28:07 +0000 (23:28 +0200)]
Revert "gnu: hurd: Add Hurd Minimal."
This reverts commit
bc046a94dec2afadbc1ee3957f13098a8d8b393c,
which referred to uncommitted things ('glibc/hurd-headers'.)
Manolis Ragkousis [Sun, 1 Jun 2014 18:17:03 +0000 (18:17 +0000)]
gnu: hurd: Add Hurd Minimal.
* gnu/packages/hurd.scm (hurd-minimal): New variable.
* gnu/packages/patches/hurd-minimal.patch: New patch.
* gnu-system.am (dist_patch_DATA): Add it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Ludovic Courtès [Sun, 1 Jun 2014 21:51:59 +0000 (23:51 +0200)]
services: syslogd: Write fewer messages to /dev/console.
* gnu/services/base.scm (syslog-service)[contents]: Remove "kern.*" from
/dev/console.
Ludovic Courtès [Sun, 1 Jun 2014 21:51:12 +0000 (23:51 +0200)]
linux-initrd: Actually create /dev/console.
* guix/build/linux-initrd.scm (make-essential-device-nodes): Add
"dev/console".
Ludovic Courtès [Sun, 1 Jun 2014 21:50:39 +0000 (23:50 +0200)]
hydra: Make USB installation image smaller.
* build-aux/hydra/gnu-system.scm (qemu-jobs): Reduce size of 'usb-image'
to 630 MiB.
Ludovic Courtès [Sun, 1 Jun 2014 21:32:26 +0000 (23:32 +0200)]
derivations: Add #:allowed-references 'derivation' parameter.
* guix/derivations.scm (derivation): Add #:allowed-references
parameter.
[user+system-env-vars]: Honor it.
* tests/derivations.scm ("derivation #:allowed-references, ok",
"derivation #:allowed-references, not allowed",
"derivation #:allowed-references, self allowed",
"derivation #:allowed-references, self not allowed"): New tests.
* doc/guix.texi (Derivations): Document #:allowed-references.
Ludovic Courtès [Sun, 1 Jun 2014 20:53:16 +0000 (22:53 +0200)]
gnu: util-linux: Remove dependency on Perl.
* gnu/packages/linux.scm (util-linux)[source](patches): New field.
* gnu/packages/patches/util-linux-perl.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
Ludovic Courtès [Sun, 1 Jun 2014 19:48:57 +0000 (21:48 +0200)]
linux-initrd: Make more device nodes for SCSI disks and CD-ROM devices.
* guix/build/linux-initrd.scm (make-disk-device-nodes): New procedure.
(make-essential-device-nodes): Use it. Make more devices nodes for
SCSI disks and CD-ROM devices.
Ludovic Courtès [Sun, 1 Jun 2014 19:20:54 +0000 (21:20 +0200)]
linux-initrd: Gracefully handle missing /dev nodes.
* guix/build/linux-initrd.scm (partition-label-predicate): Catch
'system-error' around 'read-ext2-superblock'; return #f upon ENOENT.
Ludovic Courtès [Sat, 31 May 2014 20:15:06 +0000 (22:15 +0200)]
hydra: Build the installation image.
* build-aux/hydra/gnu-system.scm (demo-os): New procedure.
(qemu-jobs): Build for both x86_64-linux and i686-linux. Add
'usb-image' job that builds INSTALLATION-OS.
Ludovic Courtès [Sat, 31 May 2014 20:13:33 +0000 (22:13 +0200)]
Add (gnu system install).
* gnu/system/install.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
Ludovic Courtès [Sat, 31 May 2014 20:01:05 +0000 (22:01 +0200)]
system: Add 'issue' field.
* gnu/system.scm (<operating-system>)[issue]: New field.
(%default-issue): New variable.
(etc-directory): Add #:issue parameter and honor it.
(operating-system-etc-directory): Adjust call accordingly.
* build-aux/hydra/demo-os.scm: Add 'issue' field.
Ludovic Courtès [Sat, 31 May 2014 17:16:50 +0000 (19:16 +0200)]
system: Add more options for 'mingetty-service'.
* gnu/services/base.scm (mingetty-service): Add #:auto-login,
#:login-program, and #:login-pause? parameters and honor them.
Ludovic Courtès [Sat, 31 May 2014 13:55:38 +0000 (15:55 +0200)]
linux-initrd: Gracefully deal with partitions with no label.
* guix/build/linux-initrd.scm (partition-label-predicate): Check whether
'ext2-superblock-volume-name' returns #f, and return #f if it does.
Ludovic Courtès [Sat, 31 May 2014 13:25:49 +0000 (15:25 +0200)]
gnu: Move libarchive to (gnu packages backup).
* gnu/packages/compression.scm (libarchive): Move to...
* gnu/packages/backup.scm (libarchive): ... here.
Import (guix licenses) with #:renamer to avoid conflicting 'zlib'
bindings.
Ludovic Courtès [Fri, 30 May 2014 21:45:42 +0000 (23:45 +0200)]
vm: disk-image: Specify the root file system using a label.
* gnu/system/vm.scm (system-disk-image)[root-label]: New variable.
Use it for the root file system, and pass it as #:file-system-label to
'qemu-image'.
Ludovic Courtès [Fri, 30 May 2014 21:44:28 +0000 (23:44 +0200)]
linux-initrd: Allow use of volume labels in 'file-system' declarations.
* guix/build/linux-initrd.scm (%ext2-endianness, %ext2-sblock-magic,
%ext2-sblock-creator-os, %ext2-sblock-uuid, %ext2-sblock-volume-name):
New macros.
(read-ext2-superblock, ext2-superblock-uuid,
ext2-superblock-volume-name, disk-partitions,
partition-label-predicate, find-partition-by-label,
canonicalize-device-spec): New procedures.
(mount-file-system): Use 'canonicalize-device-spec' on SOURCE.
(boot-system): Likewise for ROOT.
* doc/guix.texi (Using the Configuration System): Adjust 'file-system'
declaration accordingly.
Eric Bavier [Fri, 30 May 2014 19:29:42 +0000 (14:29 -0500)]
gnu: Add rdiff-backup.
* gnu/packages/backup.scm (rdiff-backup): New variable.
Eric Bavier [Thu, 29 May 2014 21:37:28 +0000 (16:37 -0500)]
gnu: Add btar.
* gnu/packages/backup.scm (btar): New variable.
Eric Bavier [Thu, 29 May 2014 21:36:42 +0000 (16:36 -0500)]
gnu: Add rdup.
* gnu/packages/backup.scm (rdup): New variable.
Eric Bavier [Thu, 29 May 2014 21:35:45 +0000 (16:35 -0500)]
gnu: Add libarchive.
* gnu/packages/compression.scm (libarchive): New variable.
Eric Bavier [Thu, 29 May 2014 21:35:12 +0000 (16:35 -0500)]
gnu: Add hdup.
* gnu/packages/backup.scm (hdup): New variable.
Ludovic Courtès [Thu, 29 May 2014 21:32:21 +0000 (23:32 +0200)]
hydra: Don't cross-build from MIPS to MIPS.
* build-aux/hydra/gnu-system.scm (hydra-jobs)[same?, either]: New
procedure. Use it in 'remove' call.
Ludovic Courtès [Thu, 29 May 2014 21:13:11 +0000 (23:13 +0200)]
system: Add 'fusermount' to the default setuid programs.
* gnu/system.scm (%setuid-programs): Add 'fusermount'.
Ludovic Courtès [Thu, 29 May 2014 21:07:43 +0000 (23:07 +0200)]
vm: Allow a volume name to be specified for the root partition.
* guix/build/vm.scm (format-partition): Add #:label parameter, and honor
it.
(initialize-hard-disk): Add #:file-system-label parameter, and pass it
to 'format-partition'.
* gnu/system/vm.scm (qemu-image): Add #:file-system-label parameter and
pass it to 'initialize-hard-disk'.
Andreas Enge [Thu, 29 May 2014 15:08:52 +0000 (17:08 +0200)]
gnu: libgnome: Correct source file name.
* gnu/packages/gnome.scm (libgnome): Correct source file name.
Ludovic Courtès [Wed, 28 May 2014 21:33:58 +0000 (23:33 +0200)]
hydra: Build for mips64el-linux.
* build-aux/hydra/gnu-system.scm (hydra-jobs)[systems]: Add
mips64el-linux.
Ludovic Courtès [Wed, 28 May 2014 13:40:53 +0000 (15:40 +0200)]
gnu: fuse: Allow use of 'fusermount' taken from $PATH.
* gnu/packages/linux.scm (fuse) <set-file-names>: Set FUSERMOUNT_DIR in
lib/Makefile.
Ludovic Courtès [Wed, 28 May 2014 10:31:06 +0000 (12:31 +0200)]
gnu: Add sshfs-fuse.
* gnu/packages/linux.scm (sshfs-fuse): New variable.
John Darrington [Wed, 28 May 2014 06:44:18 +0000 (08:44 +0200)]
gnu: Make gtk-glext depend on pangox-compat and remove workaround patch
* gnu/packages/gnome.scm (gtk-glext): Add new dependency and remove patch
* gnu/packages/patches/gtkglext-remove-pangox-dependency.patch: Delete file
* gnu-system.am: Delete gnu/packages/patches/gtkglext-remove-pangox-dependency.patch
John Darrington [Tue, 27 May 2014 19:38:47 +0000 (21:38 +0200)]
gnu: Add cssc.
* gnu/packages/version-control.scm (cssc): New variable.
* gnu/packages/patches/cssc-gets-undeclared.patch: New file
* gnu/packages/patches/cssc-missing-include.patch: New file
* gnu-system.am: Add gnu/packages/patches/cssc-gets-undeclared.patch
and gnu/packages/patches/cssc-missing-include.patch
Andreas Enge [Wed, 28 May 2014 14:04:08 +0000 (16:04 +0200)]
gnu: hdf5: Fix source download location.
* gnu/packages/maths.scm (hdf5): Use "release" directory and not the "current"
directory for the source, which does not break on new upstream releases.
Ludovic Courtès [Tue, 27 May 2014 20:36:54 +0000 (22:36 +0200)]
syscalls: Be more permissive in 'umount' test.
* tests/syscalls.scm ("umount, ENOENT"): Rename to...
("umount, ENOENT/EPERM"): ... this. Accept EPERM as a valid return
value.
Ludovic Courtès [Tue, 27 May 2014 20:01:51 +0000 (22:01 +0200)]
store: Work around 'get-bytevector-n' bug that affects 'import-paths'.
Fixes <http://bugs.gnu.org/17591>.
* guix/store.scm (process-stderr) <%stderr-read>: Use
'get-bytevector-n!' instead of 'get-bytevector-n'.
Ludovic Courtès [Tue, 27 May 2014 12:51:57 +0000 (14:51 +0200)]
gnu: Add Autoconf 2.64.
* gnu/packages/autotools.scm (autoconf-2.64): New variable.
Eric Bavier [Tue, 27 May 2014 15:38:57 +0000 (10:38 -0500)]
gnu: librsync: Fix source uri
* gnu/packages/rsync.scm (librsync) [source]: Fix sourceforge uri.
Eric Bavier [Tue, 27 May 2014 15:04:42 +0000 (10:04 -0500)]
gnu: Add duplicity.
* gnu/packages/backup.scm: New file.
* gnu-system.am: Add it.
Eric Bavier [Tue, 27 May 2014 15:02:16 +0000 (10:02 -0500)]
gnu: Add python-mock.
* gnu/packages/python.scm (python-mock): New variable.
Eric Bavier [Tue, 27 May 2014 15:01:52 +0000 (10:01 -0500)]
gnu: Add python-lockfile.
* gnu/packages/python.scm (python-lockfile): New variable.
Ludovic Courtès [Mon, 26 May 2014 16:23:12 +0000 (18:23 +0200)]
services: Add D-Bus and Avahi.
* gnu/services/dbus.scm: New file.
* gnu/services/avahi.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add them.
Ludovic Courtès [Mon, 26 May 2014 09:51:49 +0000 (11:51 +0200)]
gnu: Add Transmission.
* gnu/packages/bittorrent.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
John Darrington [Sun, 25 May 2014 05:29:30 +0000 (07:29 +0200)]
gnu: Add gsegrafix and dependent libraries.
* gnu/packages/math.scm (gsegrafix): New variable.
* gnu/packages/gtk.scm (pangox-compat): New variable.
* gnu/packages/gnome.scm (libidl, orbit2, libbonobo, gconf, gnome-mime-data,
gnome-vfs, libgnome, libart-lgpl, libgnomecanvas, libgnomeui, libglade,
libgnomeprint, libgnomeprintui, libbonoboui): New variables.
Eric Bavier [Mon, 26 May 2014 06:15:53 +0000 (01:15 -0500)]
gnu: Add mcrypt, libmcrypt, and libmhash.
* gnu/packages/mcrypt.scm: New file.
* gnu/packages/patches/mhash-keygen-test-segfault.patch: New patch.
* gnu-system.am (GNU_SYSTEM_MODULES): Add file.
(dist_patch_DATA): Add patch.
Eric Bavier [Tue, 20 May 2014 13:20:27 +0000 (08:20 -0500)]
gnu: Add librsync.
* gnu/packages/rsync.scm (librsync): New variable.
Ludovic Courtès [Sun, 25 May 2014 22:08:50 +0000 (00:08 +0200)]
gnu: Add inotify-tools.
* gnu/packages/linux.scm (inotify-tools): New variable.
Ludovic Courtès [Sun, 25 May 2014 15:00:01 +0000 (17:00 +0200)]
doc: Augment "Package Naming".
* doc/guix.texi (Package Naming): Mention underscores, and give SDL_net
as an example.
Ludovic Courtès [Sat, 24 May 2014 23:31:15 +0000 (01:31 +0200)]
store: Remove misleading 'setsockopt' call.
* guix/store.scm (open-connection): Remove misleading 'setsockopt' call,
erroneously introduced in
df1fab58. This would actually shrink the
receive buffer from 124 KiB to 12 KiB, though it had little impact on
performance.
Ludovic Courtès [Sat, 24 May 2014 16:09:11 +0000 (18:09 +0200)]
services: nscd: Provide an 'activate' script to make /var/run/nscd.
* gnu/services/base.scm (nscd-service): Add 'activate' field.
* guix/build/install.scm (directives): Remove /var/run/nscd; add
/var/run.
* doc/guix.texi (Defining Services): Add 'activate' field in example.
Document it.
Ludovic Courtès [Sat, 24 May 2014 16:03:27 +0000 (18:03 +0200)]
services: Support per-service activation scripts.
* gnu/services.scm (<service>)[activate]: New field.
* gnu/system.scm (operating-system-activation-script)[service-activations]:
New procedure. Use it, and primitive-load each activation.
Ludovic Courtès [Sat, 24 May 2014 15:53:30 +0000 (17:53 +0200)]
system: Always create /var/empty.
* guix/build/install.scm (directives): Add /var/empty.
Ludovic Courtès [Sat, 24 May 2014 13:51:57 +0000 (15:51 +0200)]
system: Separate the activation script from the boot script.
* gnu/system.scm (operating-system-activation-script): New procedure,
containing most of the former 'operating-system-boot-script'.
(operating-system-boot-script): Call it, and 'primitive-load' its
result.
* guix/build/activation.scm (%booted-system): Remove.
(activate-current-system): Remove #:boot? parameter and related code.
Eric Bavier [Thu, 22 May 2014 18:28:34 +0000 (13:28 -0500)]
gnu: Add lzop.
* gnu/packages/compression.scm (lzop): New variable.
Ludovic Courtès [Fri, 23 May 2014 20:35:08 +0000 (22:35 +0200)]
vm: Disable QEMU networking in the disk image initrd.
* gnu/system/linux-initrd.scm (qemu-initrd): Add #:qemu-networking?
parameter and honor it.
* gnu/system/vm.scm (system-disk-image): Pass #:qemu-networking #f.
Ludovic Courtès [Fri, 23 May 2014 20:19:37 +0000 (22:19 +0200)]
download: Enlarge your receive buffer.
* guix/build/download.scm (open-connection-for-uri): Remove call to
'setsockopt'.
* guix/http-client.scm (open-socket-for-uri)[rmem-max, buffer-size]: New
variables. Add call to 'setsockopt'.
Ludovic Courtès [Thu, 22 May 2014 21:22:15 +0000 (23:22 +0200)]
guix system: Add 'disk-image' action.
* guix/scripts/system.scm (show-help): Add 'disk-image'.
(guix-system)[parse-options]: Support 'disk-image' action.
[option-arguments]: Likewise.
Handle the 'disk-image' action.
* doc/guix.texi (Invoking guix system): Document 'disk-image'.
Ludovic Courtès [Thu, 22 May 2014 21:12:36 +0000 (23:12 +0200)]
vm: Add 'system-disk-image'.
* gnu/system/vm.scm (system-disk-image): New procedure.
Ludovic Courtès [Thu, 22 May 2014 21:20:12 +0000 (23:20 +0200)]
Add (gnu) module.
* gnu.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* build-aux/hydra/demo-os.scm: Use (gnu) and strip import list
accordingly.
* doc/guix.texi (Using the Configuration System): Adjust example
accordingly.
Ludovic Courtès [Thu, 22 May 2014 20:32:53 +0000 (22:32 +0200)]
vm: Use a para-virtualized disk when creating an image.
* guix/build/vm.scm (load-in-linux-vm): When MAKE-DISK-IMAGE?, use
'-drive ...,if=virtio' for better performance.
* gnu/system/vm.scm (qemu-image): Use /dev/vda instead of /dev/sda.
Ludovic Courtès [Thu, 22 May 2014 20:30:13 +0000 (22:30 +0200)]
vm: Make the image format a parameter.
* guix/build/vm.scm (load-in-linux-vm): Add #:disk-image-format
parameter; add 'image-file' variable. Honor DISK-IMAGE-FORMAT.
* gnu/system/vm.scm (expression->derivation-in-linux-vm): Add
#:disk-image-format parameter, and honor it.
(qemu-image): Likewise.
Ludovic Courtès [Thu, 22 May 2014 19:57:39 +0000 (21:57 +0200)]
linux-initrd: Build /dev/loop* nodes.
* guix/build/linux-initrd.scm (make-essential-device-nodes): Build
/dev/loop[0-7].
Andreas Enge [Thu, 22 May 2014 20:28:12 +0000 (22:28 +0200)]
gnu: imagemagick: Upgrade to 6.8.9-0.
* gnu/packages/imagemagick.scm (imagemagick): Upgrade to 6.8.9-0.
Andreas Enge [Thu, 22 May 2014 20:13:42 +0000 (22:13 +0200)]
gnu: perl-io-tty: Upgrade to 1.11.
* gnu/packages/perl.scm (perl-io-tty): Upgrade to 1.11.
Andreas Enge [Thu, 22 May 2014 19:58:08 +0000 (21:58 +0200)]
guix: download: Update imagemagick mirrors.
* guix/download.scm (%mirrors)[imagemagick]: Update and add the legacy
subdirectory of the main site as a last resort.
Ludovic Courtès [Thu, 22 May 2014 08:38:41 +0000 (10:38 +0200)]
build: Fix builds without --with-libgcrypt-prefix nor --with-libgcrypt-libdir.
Reported by Manolis Ragkousis <manolis837@gmail.com>.
Fixes a regression introduced in
14af289.
Before this commit, ./configure would leave LIBGCRYPT_PREFIX and
LIBGCRYPT_LIBDIR undefined, leading to LIBGCRYPT_LIBS="-L -lgcrypt" and
thus to a link failure.
* configure.ac: Make sure $LIBGCRYPT_PREFIX and $LIBGCRYPT_LIBDIR are
never empty.
Ludovic Courtès [Wed, 21 May 2014 21:31:46 +0000 (23:31 +0200)]
vm: Modularize build-side code.
* guix/build/install.scm (install-grub): Call 'error' if 'system*'
returns non-zero.
* guix/build/vm.scm (initialize-partition-table): Make 'partition-size'
a positional parameter. Call 'error' when 'system*' returns
non-zero'.
(format-partition, initialize-root-partition): New procedures.
(initialize-hard-disk): Use them.
Ludovic Courtès [Wed, 21 May 2014 21:19:13 +0000 (23:19 +0200)]
vm: Remove misleading comment.
* guix/build/vm.scm (load-in-linux-vm): Remove misleading comment.
Ludovic Courtès [Wed, 21 May 2014 15:12:03 +0000 (17:12 +0200)]
gnu: Add wpa_supplicant.
* gnu/packages/admin.scm (wpa-supplicant): New variable.
Ludovic Courtès [Wed, 21 May 2014 13:29:23 +0000 (15:29 +0200)]
store: Flush the output when the build process emits '\r'.
This allows progress reports emitted by 'substitute-binary' to be
correctly displayed.
* guix/store.scm (%newlines): New variable.
(process-stderr) <%stderr-next>: Flush (current-build-output-port)
when S contains one of %NEWLINES.