Age | Commit message (Expand) | Author |
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 |
2014-02-19 | gnu: Introduce the (gnu services ...) modules....* gnu/system/dmd.scm: Remove file. Move contents to...
* gnu/services.scm, gnu/services/base.scm, gnu/services/dmd.scm,
gnu/services/networking.scm, gnu/services/xorg.scm: ... here. New
files.
* gnu/system.scm, gnu/system/vm.scm: Adjust accordingly.
* guix/scripts/system.scm (%user-module): Likewise.
* doc/guix.texi (Using the Configuration System): Likewise.
(Defining Services): Likewise.
| Ludovic Courtès |