Age | Commit message (Expand) | Author |
2014-09-19 | system: Fix value of 'EUDEV_RULES_DIRECTORY'....* gnu/services/base.scm (udev-service): Append "/lib/udev/rules.d" to
EUDEV_RULES_DIRECTORY.
| Ludovic Courtès |
2014-09-18 | 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".
| Ludovic Courtès |
2014-09-18 | 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.
| Ludovic Courtès |
2014-09-18 | 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'.
| Ludovic Courtès |
2014-09-17 | services: file-system: Change directory to root before unmounting....* gnu/services/base.scm (file-system-service)[stop]: Add 'chdir' call.
| Ludovic Courtès |
2014-09-17 | services: user-processes: Wait for complete process termination....* gnu/services/base.scm (user-processes-service): Add 'wait' loop.
| Ludovic Courtès |
2014-09-17 | services: udev: Make non-respawnable....* gnu/services/base.scm (udev-service): Add 'respawn?' field.
| Ludovic Courtès |
2014-09-13 | system: Use eudev instead of udev by default....* gnu/system.scm (%base-packages): Change 'udev' to 'eudev'.
* gnu/services/base.scm (udev-service): Change #:udev to default to
'eudev'.
| Ludovic Courtès |
2014-09-13 | services: udev: Allow the use of eudev....* gnu/services/base.scm (udev-service): Adjust 'start' method to support
eudev in addition to udev.
| Ludovic Courtès |
2014-09-13 | system: Add FUSE and ALSA udev rules by default....* gnu/services/base.scm (%base-services): Pass FUSE and ALSA-UTILS to
'udev-service'.
| Ludovic Courtès |
2014-09-12 | system: Add support for Linux-style mapped devices....* gnu/system/file-systems.scm (<mapped-device>): New record type.
* gnu/system.scm (<operating-system>)[mapped-devices]: New field.
(luks-device-mapping): New procedure.
(other-file-system-services)[device-mappings, requirements]: New
procedures. Pass #:requirements to 'file-system-service'.
(device-mapping-services): New procedure.
(essential-services): Use it. Append its result to the return value.
(operating-system-initrd-file): Add comment.
* gnu/services/base.scm (file-system-service): Add #:requirements
parameter and honor it.
(device-mapping-service): New procedure.
* gnu/system/linux-initrd.scm (base-initrd): Add comment.
| Ludovic Courtès |
2014-09-12 | services: udev: Allow for additional udev rules....* gnu/services/base.scm (udev-rules-union): New procedure.
(udev-service): Add #:rules parameter. Call 'udev-rules-union' and
create udev.conf. Set $UDEV_CONFIG_FILE before spawning udevd.
| Ludovic Courtès |
2014-09-03 | Move part of (gnu build linux-boot) to (gnu build file-systems)....* gnu/build/linux-boot.scm (%ext2-endianness, %ext2-sblock-magic,
%ext2-sblock-creator-os, %ext2-sblock-uuid, %ext2-sblock-volume-name,
read-ext2-superblock, ext2-superblock-uuid,
ext2-superblock-volume-name, disk-partitions,
partition-label-predicate, find-partition-by-label,
canonicalize-device-spec, MS_RDONLY, MS_NOSUID, MS_NODEV, MS_NOEXEC,
MS_BIND, MS_MOVE, bind-mount, check-file-system,
mount-flags->bit-mask, mount-file-system): Move to...
* gnu/build/file-systems.scm: ... here. New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* gnu/services/base.scm: Use (gnu build file-systems).
* gnu/services/dmd.scm (dmd-configuration-file): Likewise.
* gnu/system.scm (operating-system-activation-script): Likewise.
* gnu/system/linux-initrd.scm (base-initrd): Likewise.
* gnu/system/vm.scm (expression->derivation-in-linux-vm): Likewise.
| Ludovic Courtès |
2014-09-03 | Rename (gnu build linux-initrd) to (gnu build linux-boot)....* gnu/build/linux-initrd.scm: Rename to...
* gnu/build/linux-boot.scm: ... this.
* gnu-system.am (GNU_SYSTEM_MODULES): Adjust accordingly.
* gnu/build/activation.scm, gnu/build/vm.scm, gnu/services/base.scm,
gnu/services/dmd.scm, gnu/system.scm, gnu/system/linux-initrd.scm,
gnu/system/vm.scm: Adjust accordingly.
| Ludovic Courtès |
2014-09-03 | Move operating system helpers from (guix build …) to (gnu build …)....* guix/build/activation.scm, guix/build/install.scm,
guix/build/linux-initrd.scm, guix/build/vm.scm: Move to...
* gnu/build: ... here.
* Makefile.am (MODULES): Remove the above guix/build/ files.
* gnu-system.am (GNU_SYSTEM_MODULES): Add the above gnu/build/ files
here.
* gnu/services/base.scm, gnu/services/dmd.scm, gnu/system.scm,
gnu/system/linux-initrd.scm, gnu/system/vm.scm,
guix/scripts/system.scm: Adjust to the new module names.
| Ludovic Courtès |
2014-08-28 | gnu: Split (gnu packages base), adding (gnu packages commencement)....* gnu/packages/base.scm (gnu-make-boot0, diffutils-boot0,
findutils-boot0, %boot0-inputs, nix-system->gnu-triplet, boot-triplet,
binutils-boot0, gcc-boot0, perl-boot0, linux-libre-headers-boot0,
texinfo-boot0, %boot1-inputs, glibc-final-with-bootstrap-bash,
cross-gcc-wrapper, static-bash-for-glibc, glibc-final,
gcc-boot0-wrapped, %boot2-inputs, binutils-final, libstdc++,
gcc-final, ld-wrapper-boot3, %boot3-inputs, bash-final, %boot4-inputs,
guile-final, gnu-make-final, ld-wrapper, coreutils-final, grep-final,
%boot5-inputs, %final-inputs, canonical-package, gcc-toolchain,
gcc-toolchain-4.8, gcc-toolchain-4.9): Move to...
* gnu/packages/commencement.scm: ... here. New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* build-aux/check-final-inputs-self-contained.scm: Adjust accordingly.
* gnu/packages/cross-base.scm: Likewise.
* gnu/packages/make-bootstrap.scm: Likewise.
* guix/build-system/cmake.scm (cmake-build): Likewise.
* guix/build-system/gnu.scm (standard-packages, gnu-build,
gnu-cross-build): Likewise.
* guix/build-system/perl.scm (perl-build): Likewise.
* guix/build-system/python.scm (python-build): Likewise.
* guix/build-system/trivial.scm (guile-for-build): Likewise.
* guix/download.scm (url-fetch): Likewise.
* guix/gexp.scm (default-guile): Likewise.
* guix/git-download.scm (git-fetch): Likewise.
* guix/monads.scm (run-with-store): Likewise.
* guix/packages.scm (default-guile): Likewise.
* guix/scripts/package.scm (guix-package): Likewise.
* guix/scripts/refresh.scm: Likewise.
* guix/svn-download.scm (svn-fetch): Likewise.
* tests/builders.scm (%bootstrap-inputs, %bootstrap-search-paths):
Likewise.
* tests/packages.scm ("GNU Make, bootstrap"): Likewise.
* tests/guix-package.sh: Likewise.
* gnu/services/base.scm: Use 'canonical-package' instead of xxx-final.
* gnu/services/xorg.scm: Likewise.
* gnu/system/vm.scm: Likewise.
* guix/scripts/pull.scm (guix-pull): Likewise.
| Ludovic Courtès |
2014-07-25 | services: Use system groups where applicable....* gnu/services/avahi.scm (avahi-service): Add 'system?' field to
'user-group' form.
* gnu/services/base.scm (guix-service): Likewise.
* gnu/services/dbus.scm (dbus-service): Likewise.
* gnu/services/networking.scm (tor-service): Likewise.
| Ludovic Courtès |
2014-07-23 | system: Recognize more file system flags....* guix/build/linux-initrd.scm (MS_NOSUID, MS_NODEV, MS_NOEXEC): New
variables.
(mount-flags->bit-mask): New procedure.
(mount-file-system)[flags->bit-mask]: Remove.
Use 'mount-flags->bit-mask' instead.
In /etc/mtab, use the empty string when OPTIONS is false.
* gnu/services/base.scm (file-system-service): Add #:flags parameter and
honor it.
* gnu/system.scm (other-file-system-services): Pass FLAGS to
'file-system-service'.
| Ludovic Courtès |
2014-07-23 | system: Add 'file-system' decl. for /dev/pts, and use the right options....Fixes <http://bugs.gnu.org/18081>.
* gnu/system/file-systems.scm (%devtmpfs-file-system): Add
'needed-for-boot?' field.
(%tty-gid, %pseudo-terminal-file-system): New variables.
(%base-file-systems): Add %PSEUDO-TERMINAL-FILE-SYSTEM.
* gnu/services/base.scm (udev-service): Remove dependency on
'file-system-/dev'.
* gnu/system/shadow.scm (%base-groups): Add 'id' field for group 'tty'.
* guix/build/linux-initrd.scm (boot-system): Remove 'mount' call for
/dev/pts.
* doc/guix.texi (File Systems): Add %pseudo-terminal-file-system.
| Ludovic Courtès |
2014-07-23 | system: Add 'create-mount-point?' file system option....* gnu/system/file-systems.scm (<file-system>)[create-mount-point?]: New
field.
* gnu/services/base.scm (file-system-service): Add #:create-mount-point?
parameter and honor it.
* gnu/system.scm (other-file-system-services): Update
'file-system-service' call accordingly.
* doc/guix.texi (File Systems): Document it.
| Ludovic Courtès |
2014-07-22 | system: Add '%devtmpfs-file-system' for udev, and '%base-file-systems'....Suggested by Adam Pribyl <pribyl@lowlevel.cz>.
* gnu/services/base.scm (udev-service)[requirement]: Add
'file-system-/dev'.
* gnu/system/file-systems.scm (%devtmpfs-file-system,
%base-file-systems): New variables.
* gnu/system/install.scm (installation-services)[file-systems]: Use
%base-file-systems.
* build-aux/hydra/demo-os.scm (file-systems): Likewise.
* doc/guix.texi (System Installation): Show %BASE-FILE-SYSTEMS in the
example.
(Using the Configuration System): Likewise.
(File Systems): Document %base-file-systems, %devtmpfs-file-system,
%binary-format-file-system, and %fuse-control-file-system.
| Ludovic Courtès |
2014-07-21 | services: Allow 'check-file-system' to work for non-boot-time file systems....* gnu/services/base.scm (file-system-service)[start]: Set $PATH so that
fsck.* can be found. Reported by "DusXMT".
| Ludovic Courtès |
2014-07-17 | services: Add 'console-font-service'....* gnu/services/base.scm (unicode-start, console-font-service): New
procedures.
(%base-services): Call 'console-font-service' for TTY1 to TTY6.
* gnu/system/install.scm (installation-services): Add comment about the
console font. Call 'console-font-service' for TTY1 to TTY6.
| Ludovic Courtès |
2014-07-16 | services: syslog: Don't write trivial error messages to /dev/console....* gnu/services/base.scm (syslog-service): Change "*.err" to "*.alert".
| Ludovic Courtès |
2014-07-14 | services: Add options to 'guix-service'....* gnu/services/base.scm (guix-service): Add #:use-substitutes? and
#:extra-options parameters, and honor them.
* doc/guix.texi (Base Services): Adjust accordingly.
| Ludovic Courtès |
2014-07-12 | 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".
| Ludovic Courtès |
2014-07-11 | 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.
| Ludovic Courtès |
2014-07-10 | 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'.
| Ludovic Courtès |
2014-07-08 | 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.
| Ludovic Courtès |
2014-06-29 | 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".
| Ludovic Courtès |
2014-06-27 | 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.
| Ludovic Courtès |
2014-06-24 | services: Add udev service, and add it to '%base-services'....* gnu/services/base.scm (udev-service): New procedure.
(%base-services): Use it.
* gnu/system.scm (%base-packages): Add UDEV.
| Ludovic Courtès |
2014-06-22 | system: Remove useless 'members' field of 'user-group'....* gnu/system/shadow.scm (<user-group>)[members]: Remove field.
* gnu/system/install.scm (installation-os)[users]: Remove 'members'
fields. Use 'supplementary-groups' for 'guest'.
* build-aux/hydra/demo-os.scm (users): Likewise.
* gnu/services/base.scm (guix-service): Remove 'members' field.
| Ludovic Courtès |
2014-06-06 | 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 |
2014-06-04 | 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 |
2014-06-04 | 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 |
2014-06-04 | 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 |
2014-06-03 | 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 |
2014-06-01 | services: syslogd: Write fewer messages to /dev/console....* gnu/services/base.scm (syslog-service)[contents]: Remove "kern.*" from
/dev/console.
| Ludovic Courtès |
2014-05-31 | 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 |
2014-05-24 | 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 |
2014-05-14 | system: When unionfs-fuse is used for /, don't kill it when halting....* guix/build/linux-initrd.scm (pidof): New procedure.
(mount-root-file-system)[mark-as-not-killable]: New procedure.
Use it for unionfs when VOLATILE-ROOT?.
* gnu/services/base.scm (%do-not-kill-file): New variable.
(user-processes-service)[stop]: Honor it.
| Ludovic Courtès |
2014-05-11 | system: Make accounts and groups at activation time....* gnu/services/base.scm (guix-build-accounts): Remove #:gid parameter;
add #:group. Remove 'password' and 'gid' fields in 'user-account'
form, and add 'group'.
(guix-service): Remove #:build-user-gid parameter. Remove 'id' field
in 'user-group' form.
* gnu/system.scm (etc-directory): Remove #:groups and #:accounts. No
longer produce files "passwd", "shadow", and "group". Adjust caller
accordingly.
(%root-account): New variable.
(operating-system-accounts): Add 'users' variable. Add %ROOT-ACCOUNT
only of 'operating-system-users' doesn't already contain a root
account.
(user-group->gexp, user-account->gexp): New procedures.
(operating-system-boot-script): Add calls to 'setenv' and
'activate-users+groups' in gexp.
* gnu/system/linux.scm (base-pam-services): Add PAM services for
"user{add,del,mode}" and "group{add,del,mod}".
* gnu/system/shadow.scm (<user-account>)[gid]: Rename to...
[group]: ... this.
[supplementary-groups]: New field.
[uid, password]: Default to #f.
(<user-group>)[id]: Default to #f.
(group-file, passwd-file): Remove.
* gnu/system/vm.scm (operating-system-default-contents)[user-directories]:
Remove. Add "/home" to the directives.
* guix/build/activation.scm (add-group, add-user,
activate-users+groups): New procedures.
| Ludovic Courtès |
2014-05-10 | services: Add 'file-system-service'....* gnu/services/base.scm (file-system-service): New procedure.
(user-processes-service): Add 'requirements' parameter.
* gnu/services/dmd.scm (dmd-configuration-file): Use (guix build
linux-initrd).
* guix/build/linux-initrd.scm (guix): Export 'check-file-system'.
* gnu/system.scm (file-union): New procedure.
(essential-services): Use it. Add that to the returned list.
| Ludovic Courtès |
2014-05-10 | services: Use (guix build syscalls) instead of util-linux....* gnu/services/dmd.scm (dmd-configuration-file): Add derivations for
the (guix build syscalls) module, and add that to the load path of
dmd.conf.
* gnu/services/base.scm (root-file-system-service): Rewrite using the
'sync' and 'mount' procedures.
| Ludovic Courtès |
2014-05-09 | system: Automatically add essential services....* gnu/services/base.scm (%base-services): Remove calls to
'host-name-service', 'user-processes-service', and
'root-file-system-service'.
* gnu/system.scm (<operating-system>)[operating-system-services]: Rename
to...
[operating-system-user-services]: ... this.
(essential-services, operating-system-services): New procedures.
(operating-system-accounts, operating-system-etc-directory,
operating-system-boot-script, operating-system-derivation): Adjust to
new 'operating-system-services' return type.
| Ludovic Courtès |
2014-05-08 | services: Add service to cleanly unmount the root file system....* gnu/services/base.scm (root-file-system-service,
user-processes-service): New procedures.
(mingetty-service, nscd-service, syslog-service, guix-service): Add
requirement on 'user-processes'.
(%base-services): Add (user-processes-service)
and (root-file-system-service).
* gnu/services/xorg.scm (slim-service): Add requirement on
'user-processes'.
| Ludovic Courtès |
2014-04-28 | services: Rewrite using gexps....* gnu/services.scm (<service>)[inputs]: Remove.
* gnu/system.scm (links): Remove.
(etc-directory): Add PASSWD and SHADOW to #:inputs.
(operating-system-boot-script): Pass ETC to 'dmd-configuration-file'.
(operating-system-derivation): Remove EXTRAS from the union.
* gnu/system/linux.scm (pam-service->configuration): Rewrite in terms of
'gexp->derivation'. Compute the contents on the build side. Expect
'arguments' to contain a list of gexps.
(pam-services->directory): Rewrite in terms of 'gexp->derivation'.
(unix-pam-service): Change 'arguments' to a list of one gexp.
* gnu/system/shadow.scm (<user-account>)[inputs]: Remove.
[shell]: Change default value to a gexp.
(passwd-file): Rewrite in terms of 'gexp->derivation'. Compute
contents on the build side.
* gnu/services/base.scm (host-name-service, mingetty-service,
nscd-service, syslog-service, guix-service): Change 'start' and 'stop'
to gexps; remove 'inputs' field.
(guix-build-accounts): Change 'shell' field to a gexp.
* gnu/services/networking.scm (static-networking-service): Change
'start' and 'stop' to gexps; remove 'inputs' field.
* gnu/services/xorg.scm (slim-service): Likewise.
* gnu/services/dmd.scm (dmd-configuration-file): Expect ETC to be a
derivation. Change 'config' to a gexp. Use 'gexp->file' instead of
'text-file'.
* doc/guix.texi (Defining Services): Update nscd example with gexps, and
without 'inputs'. Add xref to "G-Expressions".
| Ludovic Courtès |
2014-04-23 | system: Factorize (gnu system)....* gnu/system.scm (operating-system-accounts,
operating-system-etc-directory): New procedures.
(operating-system-derivation): Use them.
* gnu/services/base.scm (%base-services): Add 'host-name-service'
invocation.
| Ludovic Courtès |
2014-02-19 | gnu: Define '%base-services'....* gnu/services/base.scm (%base-services): New variable.
* gnu/system.scm (<operating-system>)[services]: Change the default
value to %BASE-SERVICES.
* doc/guix.texi (Using the Configuration System): Change
'%standard-services' to '%base-services'.
| Ludovic Courtès |