Commit Graph

3132 Commits

Author SHA1 Message Date
Ludovic Courtès b15d79dfe6 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.
2014-06-06 17:18:17 +02:00
Ludovic Courtès 63a4282468 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.
2014-06-06 17:07:26 +02:00
Ludovic Courtès e97c5be914 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.
2014-06-06 00:28:21 +02:00
Ludovic Courtès c6b76405ff gnu: Add WakeLan.
* gnu/packages/admin.scm (wakelan): New variable.
2014-06-06 00:28:21 +02:00
Mark H Weaver 017f7415ab 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.
2014-06-05 16:36:25 -04:00
Ludovic Courtès cc24623d71 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.
2014-06-04 23:55:12 +02:00
Ludovic Courtès 9d9b576bcd gnu: Set proper source location for 'gcc-final'.
* gnu/packages/base.scm (gcc-final)[location]: New field.
  Reported by Andreas Enge <andreas@enge.fr>.
2014-06-04 23:32:46 +02:00
Ludovic Courtès ea31dbbc18 install: Add missing argv[0] in Info invocation.
* gnu/system/install.scm (log-to-info): Add "info" as second argument to
  'execl'.
2014-06-04 23:08:59 +02:00
Ludovic Courtès e2fcc23a3a 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.
2014-06-04 23:08:09 +02:00
Ludovic Courtès 185f669109 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.
2014-06-04 22:19:30 +02:00
Ludovic Courtès 3d116a70f9 services: Add the build group to the supplementary groups of build users.
* gnu/services/base.scm (guix-build-accounts): Add
  'supplementary-groups' field.
2014-06-04 22:17:20 +02:00
Ludovic Courtès c17b5ab4db 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.
2014-06-04 18:15:50 +02:00
Ludovic Courtès d3bbe992ec 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'.
2014-06-04 18:15:50 +02:00
Ludovic Courtès 4654439be7 system: Rename activation script.
* gnu/system.scm (operating-system-activation-script): Change file name
  to "activate".
2014-06-04 18:15:50 +02:00
Ludovic Courtès 56ef7fcc50 vm: Add #:name parameter for 'system-disk-image'.
* gnu/system/vm.scm (system-disk-image): Add #:name parameter; pass it
  to 'qemu-image'.
2014-06-04 18:15:50 +02:00
Ludovic Courtès 2c5c696c39 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.
2014-06-04 18:15:50 +02:00
Ludovic Courtès 202adef2ec gnu: guix: Use /etc as sysconfdir.
* gnu/packages/package-management.scm (guix)[arguments]: Pass
  --sysconfdir=/etc.
2014-06-04 18:15:50 +02:00
Ludovic Courtès 6f436c54d6 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.
2014-06-04 18:15:50 +02:00
Mark H Weaver 39d4fde3bf gnu: gnutls: Upgrade to 3.2.15.
* gnu/packages/gnutls.scm (gnutls): Upgrade to 3.2.15.
2014-06-04 01:03:17 -04:00
Ludovic Courtès e73a99a304 install: Add more useful packages.
* gnu/system/install.scm (installation-os)[packages]: Add isc-dhcp,
  net-tools, ddrescue, kbd, and texinfo-4.
2014-06-03 23:31:26 +02:00
Ludovic Courtès 28b1d6d8f3 Update 'eo.po'. 2014-06-03 22:43:07 +02:00
Ludovic Courtès d8bb353c26 gnu: linux-libre: Build the e1000e driver (Intel ethernet NIC driver.)
* gnu/packages/linux.scm (linux-libre): Add CONFIG_E1000E=m.
2014-06-03 22:43:05 +02:00
Ludovic Courtès cc4a2aeb98 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.
2014-06-03 22:43:00 +02:00
Ludovic Courtès a549ab4bcf hydra: Add Avahi to the demo OS.
* build-aux/hydra/demo-os.scm: Use 'avahi-service' and 'dbus-service'.
  Add AVAHI to 'packages'.
2014-06-03 11:49:28 +02:00
Ludovic Courtès 585c651951 system: Make sure /run/setuid-programs comes first in $PATH.
* gnu/system.scm (etc-directory) <bashrc>: Move /run/setuid-programs
  first in $PATH.
2014-06-03 11:48:41 +02:00
Ludovic Courtès b6772a01e9 gnu: elfutils: Add synopsis and description.
* gnu/packages/elf.scm (elfutils): Add synopsis and description.
2014-06-03 11:10:58 +02:00
Ludovic Courtès 57c0992927 list-packages: Add links to Hydra for mips64el-linux.
* build-aux/list-packages.scm (package->sxml): Add 'url' call for
  mips64el-linux.
2014-06-03 00:17:00 +02:00
Ludovic Courtès d4c87617e5 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'.
2014-06-03 00:14:58 +02:00
Ludovic Courtès 2405858a04 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.
2014-06-02 23:48:55 +02:00
Ludovic Courtès 0497ba3b26 Revert "gnu: hurd: Add Hurd Minimal."
This reverts commit bc046a94de,
which referred to uncommitted things ('glibc/hurd-headers'.)
2014-06-02 23:28:07 +02:00
Manolis Ragkousis bc046a94de 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>
2014-06-01 23:56:14 +02:00
Ludovic Courtès 1f3fc60da5 services: syslogd: Write fewer messages to /dev/console.
* gnu/services/base.scm (syslog-service)[contents]: Remove "kern.*" from
  /dev/console.
2014-06-01 23:51:59 +02:00
Ludovic Courtès 9b4a163a87 linux-initrd: Actually create /dev/console.
* guix/build/linux-initrd.scm (make-essential-device-nodes): Add
  "dev/console".
2014-06-01 23:51:12 +02:00
Ludovic Courtès 9e69b09857 hydra: Make USB installation image smaller.
* build-aux/hydra/gnu-system.scm (qemu-jobs): Reduce size of 'usb-image'
  to 630 MiB.
2014-06-01 23:50:39 +02:00
Ludovic Courtès b53be755e4 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.
2014-06-01 23:32:26 +02:00
Ludovic Courtès 5a6a3ba43a 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.
2014-06-01 22:53:16 +02:00
Ludovic Courtès ac52e80b4e 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.
2014-06-01 21:48:57 +02:00
Ludovic Courtès 009d831167 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.
2014-06-01 21:20:54 +02:00
Ludovic Courtès 10d86d54f0 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.
2014-05-31 22:15:06 +02:00
Ludovic Courtès fc91c17aa8 Add (gnu system install).
* gnu/system/install.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2014-05-31 22:13:33 +02:00
Ludovic Courtès 548d4c1395 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.
2014-05-31 22:01:05 +02:00
Ludovic Courtès 52322163ac 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.
2014-05-31 21:51:04 +02:00
Ludovic Courtès 1bb784ea05 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.
2014-05-31 15:55:38 +02:00
Ludovic Courtès b0e3635e0a 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.
2014-05-31 15:25:49 +02:00
Ludovic Courtès 10ace2c49e 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'.
2014-05-30 23:46:17 +02:00
Ludovic Courtès 85a83edb36 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.
2014-05-30 23:46:17 +02:00
Eric Bavier bd3fc08c4d gnu: Add rdiff-backup.
* gnu/packages/backup.scm (rdiff-backup): New variable.
2014-05-30 14:30:42 -05:00
Eric Bavier 22c2462112 gnu: Add btar.
* gnu/packages/backup.scm (btar): New variable.
2014-05-30 12:36:27 -05:00
Eric Bavier d42e61224e gnu: Add rdup.
* gnu/packages/backup.scm (rdup): New variable.
2014-05-30 12:36:27 -05:00
Eric Bavier 28469ab0ec gnu: Add libarchive.
* gnu/packages/compression.scm (libarchive): New variable.
2014-05-30 12:36:27 -05:00