aboutsummaryrefslogtreecommitdiff
path: root/gnu/build/activation.scm
AgeCommit message (Collapse)Author
2016-09-06activation: Don't fail if /var/lib exists.Leo Famulari
This is a followup to commit 6526d43ea4fb0cd151a0d5e9a072c651c1c963d1. * gnu/build/activation.scm (activate-user+groups): Use mkdir-p to create /var/lib.
2016-09-06activation: Allow home directories to be created under /var/lib.David Craven
* gnu/build/activation.scm (activate-user+groups): Make sure /var/lib exists.
2016-08-28system: Add 'create-home-directory?' field to <user-account>.Ludovic Courtès
* gnu/system/shadow.scm (<user-account>)[create-home-directory?]: New field. (user-account->gexp): Serialize it. * gnu/build/activation.scm (activate-users+groups)[activate-user]: Update 'match-lambda' pattern accordingly. Pass #:create-home? to 'ensure-user'. (add-user, modify-user, ensure-user): Add #:create-home? parameter and honor it. * doc/guix.texi (User Accounts): Document it.
2016-03-24activation: Copy account skeletons silently.Ludovic Courtès
* gnu/build/activation.scm (copy-account-skeletons): Pass #:log to 'copy-recursively'.
2016-03-20system: Allow account skeletons to be directories.Ludovic Courtès
* gnu/system/shadow.scm (skeleton-directory): Use 'copy-recursively' instead of 'copy-file'. * gnu/build/activation.scm (copy-account-skeletons): Likewise.
2015-05-09system: activate-ptrace-attach: Handle kernels without YAMA support.Mark H Weaver
* gnu/build/activation.scm (activate-ptrace-attach): Check for the existence of /proc/sys/kernel/yama/ptrace_scope before trying to write to it.
2015-05-05activation: Make user copies of the skeletons writable.Ludovic Courtès
* gnu/build/activation.scm (make-file-writable, make-skeletons-writable): New procedures. (copy-account-skeletons): Call 'make-file-writable' after 'copy-file'. (add-user): Add call to 'make-skeletons-writable'.
2015-04-12system: Allow users to PTRACE_ATTACH to their own processes.Ludovic Courtès
* gnu/build/activation.scm (activate-ptrace-attach): New procedure. * gnu/system.scm (operating-system-activation-script): Use it.
2015-04-08activation: Remove undeclared user accounts and groups.Ludovic Courtès
Fixes <http://bugs.gnu.org/19795>. Reported by David Thompson <dthompson2@worcester.edu>. * gnu/build/activation.scm (enumerate, current-users, current-groups, delete-user, delete-group): New procedures. (activate-users+groups): Add calls to 'delete-user' and 'delete-group'. * doc/guix.texi (User Accounts): Add a paragraph about statelessness. Explain that passwords are preserved.
2015-03-03system: Add /etc/ssl symlink; set needed variables in /etc/profile.Mark H Weaver
* gnu/build/activation.scm (activate-etc): Create /etc/ssl symlink. * gnu/system.scm (etc-directory): Set SSL_CERT_DIR, SSL_CERT_FILE, and GIT_SSL_CAINFO in /etc/profile. Co-Authored-By: Ludovic Courtès <ludo@gnu.org>
2014-12-13activation: Copy the account skeletons when creating the 'root' account.Ludovic Courtès
* gnu/build/activation.scm (%skeleton-directory): New variable. (dot-or-dot-dot?, copy-account-skeletons): New procedure. (add-user): Use 'copy-account-skeletons'. (activate-etc): Use 'dot-or-dot-dot?'.
2014-12-06activation: Don't create unneeded "/var/guix/gcroots/etc-directory".Ludovic Courtès
* gnu/build/activation.scm (activate-etc): Don't create "/var/guix/gcroots/etc-directory".
2014-11-11activation: Set the firmware search path.Ludovic Courtès
* gnu/build/activation.scm (activate-firmware): New procedure. * gnu/system.scm (<operating-system>)[firmware]: New field. (directory-union): New procedure. (%base-firmware): New variable. (operating-system-activation-script): Use 'directory-union', and call 'activate-firmware'. * doc/guix.texi (operating-system Reference): Document 'firmware'.
2014-11-02system: Allow Linux-libre to find our 'modprobe' command.Ludovic Courtès
Fixes <http://bugs.gnu.org/18525>. Reported by Mark H Weaver <mhw@netris.org>. * gnu/build/activation.scm (activate-modprobe): New procedure. * gnu/system.scm (modprobe-wrapper): New procedure. (operating-system-activation-script): Use both.
2014-09-22activation: Ensure existing user accounts have the right settings.Ludovic Courtès
* gnu/build/activation.scm (modify-user, ensure-user): New procedures. (activate-users+groups): Systematically call 'ensure-user'.
2014-09-12activation: Honor $GUIX_NEW_SYSTEM for use by 'guix system reconfigure'.Ludovic Courtès
* gnu/build/activation.scm (activate-current-system): Honor $GUIX_NEW_SYSTEM by default. * guix/scripts/system.scm (switch-to-system): Set $GUIX_NEW_SYSTEM before loading SCRIPT.
2014-09-12activation: Set the permissions of /etc/sudoers to 440.Ludovic Courtès
* gnu/build/activation.scm (activate-etc): Move 'rm-f' to a local 'define'. When TARGET is "sudoers", make it 440.
2014-09-12activation: Make the /bin/sh symlink at activation time.Ludovic Courtès
* gnu/build/install.scm (directives): Remove "/bin/sh". * gnu/build/activation.scm (activate-/bin/sh): New procedure. * gnu/system.scm (operating-system-activation-script): Use it.
2014-09-12activation: Make sure /etc/sudoers & co. are regular files.Ludovic Courtès
Before that, 'sudo' would exit with: sudo: /etc/sudoers is not a regular file sudo: no valid sudoers sources found, quitting * gnu/build/activation.scm (activate-etc): Check if SOURCE matches 'file-is-directory?'. If not, use 'copy-file' instead of 'symlink'.
2014-09-12activation: Remove outdated comment.Ludovic Courtès
* gnu/build/activation.scm (activate-etc): Remove outdated comment.
2014-09-12activation: Factorize the link-or-copy trick.Ludovic Courtès
* gnu/build/activation.scm (link-or-copy): New procedure. (activate-setuid-programs): Use it.
2014-09-03Rename (gnu build linux-initrd) to (gnu build linux-boot).Ludovic Courtès
* 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.
2014-09-03Move operating system helpers from (guix build …) to (gnu build …).Ludovic Courtès
* 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.