<feed xmlns='http://www.w3.org/2005/Atom'>
<title>guix.git/gnu/build/activation.scm, branch master</title>
<subtitle>Personal branch of https://git.savannah.gnu.org/cgit/guix.git/ for implementing 'guix deploy'.
</subtitle>
<id>https://git.jakob.space/guix.git/atom?h=master</id>
<link rel='self' href='https://git.jakob.space/guix.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/'/>
<updated>2019-06-05T21:10:36Z</updated>
<entry>
<title>activation: Lock /etc/.pwd.lock before accessing databases.</title>
<updated>2019-06-05T21:10:36Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2019-06-03T15:14:17Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=d497b6ab397273cd250003b6266f22ad74f4c20d'/>
<id>urn:sha1:d497b6ab397273cd250003b6266f22ad74f4c20d</id>
<content type='text'>
Suggested by Florian Pelz &lt;pelzflorian@pelzflorian.de&gt;
in &lt;http://bugs.gnu.org/35996&gt;.

* gnu/build/accounts.scm (%password-lock-file): New variable.
* gnu/build/activation.scm (activate-users+groups): Wrap calls to
'user+group-databases', 'write-group', etc. into 'with-file-lock'.
</content>
</entry>
<entry>
<title>activation: Shared system home directories are now 555 and root-owned.</title>
<updated>2019-03-08T22:21:59Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2019-03-08T21:48:04Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=d429878daf3e3eb21660ed80934b1d4b0603f6e1'/>
<id>urn:sha1:d429878daf3e3eb21660ed80934b1d4b0603f6e1</id>
<content type='text'>
Fixes &lt;https://bugs.gnu.org/34788&gt;.
Reported by Jack Hill &lt;jackhill@jackhill.us&gt;.

Regression introduced by the combination of
8bb76f3d44c1f5ffec8011819494db306a51d801 and
0ae735bcc8ff7fdc89d67b492bdee9091ee19e86: /var/empty would be 700 and
owned by one of the system accounts (thus inaccessible to others), and
/var/run/dbus would be 700 as well, thereby preventing D-Bus clients
from connecting to the daemon.

* gnu/build/activation.scm (duplicates): New procedure.
(activate-users+groups)[system-accounts]: New variable.
Use it.  Make shared system account home directories #o555 and
root-owned.
* gnu/services/dbus.scm (dbus-activation): Make /var/run/dbus #o755.
* gnu/tests/base.scm (run-basic-test): Test the ownership and
permissions of /var/empty.
</content>
</entry>
<entry>
<title>activation: Build account databases with (gnu build accounts).</title>
<updated>2019-03-07T19:05:09Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2019-03-03T22:16:41Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=0ae735bcc8ff7fdc89d67b492bdee9091ee19e86'/>
<id>urn:sha1:0ae735bcc8ff7fdc89d67b492bdee9091ee19e86</id>
<content type='text'>
* gnu/build/activation.scm (enumerate, current-users, current-groups)
(add-group, add-user, modify-user, ensure-user): Remove.
(activate-users+groups)[touch, activate-user]: Remove.
[make-home-directory]: New procedure.
Rewrite in terms of 'user+group-databases', 'write-group', etc.
* gnu/build/install.scm (directives): Remove "/root".
* gnu/system/shadow.scm (account-activation): Remove (setenv "PATH" ...)
expression, which is now unneeded.
</content>
</entry>
<entry>
<title>activation: Operate on &lt;user-account&gt; and &lt;user-group&gt; records.</title>
<updated>2019-03-07T19:05:09Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2019-03-03T20:57:26Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=6061d01512081c93c53fdd1d4302b36696403061'/>
<id>urn:sha1:6061d01512081c93c53fdd1d4302b36696403061</id>
<content type='text'>
* gnu/system/accounts.scm (sexp-&gt;user-group, sexp-&gt;user-account): New
procedures.
* gnu/system/shadow.scm (account-activation): Call them in the arguments
to 'activate-users+groups'.
(account-shepherd-service): Likewise.
* gnu/build/activation.scm (activate-users+groups): Expect a list of
&lt;user-account&gt; and a list of &lt;user-group&gt;.  Replace uses of 'match' on
tuples with calls to record accessors.
(activate-user-home): Likewise.
</content>
</entry>
<entry>
<title>activation: Make home directories #o700 by default.</title>
<updated>2019-03-04T14:22:58Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2019-03-04T12:32:36Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=8bb76f3d44c1f5ffec8011819494db306a51d801'/>
<id>urn:sha1:8bb76f3d44c1f5ffec8011819494db306a51d801</id>
<content type='text'>
Until now they'd be #o755, except for /root, which is treated specially
in (gnu build install).

* gnu/build/activation.scm (activate-user-home): Chmod HOME to #o700.
Remove redundant 'unless system?'.
</content>
</entry>
<entry>
<title>activation: Aways pass '-d HOME' to 'useradd'.</title>
<updated>2018-11-18T22:37:25Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2018-11-18T22:34:19Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=b297934437932de730432629b361fcb422accbb7'/>
<id>urn:sha1:b297934437932de730432629b361fcb422accbb7</id>
<content type='text'>
Fixes &lt;https://bugs.gnu.org/33422&gt;.
Reported by fps.

* gnu/build/activation.scm (add-user): Always pass "-d HOME" when HOME
is true.  Pass "--create-home" only when HOME, CREATE-HOME?, and SYSTEM?
are true.
(activate-users+groups): Pass #:create-home? create-home? to
'ensure-user'.
* gnu/tests/base.scm (run-basic-test)["accounts"]: Test 'passwd:dir' as
well.
</content>
</entry>
<entry>
<title>activation: Pass '-d HOME' to 'usermod'.</title>
<updated>2018-03-27T12:51:44Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2018-03-27T09:48:01Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=82b71ac366ef154400653d264b46b7aa3520f393'/>
<id>urn:sha1:82b71ac366ef154400653d264b46b7aa3520f393</id>
<content type='text'>
Fixes a bug whereby changes to user home directories in the OS config
would never be effective.

Reported by Pierre Neidhardt &lt;ambrevar@gmail.com&gt;.

* gnu/build/activation.scm (modify-user): Pass '-d HOME'.
</content>
</entry>
<entry>
<title>activation: Do not create setuid binaries in the store [security fix].</title>
<updated>2017-10-08T19:27:48Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2017-10-08T19:25:32Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=5e66574a128937e7f2fcf146d146225703ccfd5d'/>
<id>urn:sha1:5e66574a128937e7f2fcf146d146225703ccfd5d</id>
<content type='text'>
Fixes &lt;https://bugs.gnu.org/28751&gt;.

* gnu/build/activation.scm (activate-setuid-programs)[link-or-copy]: Remove.
Use 'copy-file' instead.
</content>
</entry>
<entry>
<title>activation: Make sure /etc exists.</title>
<updated>2017-08-02T22:35:59Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2017-08-02T22:20:05Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=49962b15a1c4e72a55b6cf273806d203906de2ed'/>
<id>urn:sha1:49962b15a1c4e72a55b6cf273806d203906de2ed</id>
<content type='text'>
Fixes &lt;http://bugs.gnu.org/27146&gt;.
Reported by ng0 &lt;ng0@pragmatique.xyz&gt;.

* gnu/build/activation.scm (activate-etc): Add call to 'mkdir-p'.
</content>
</entry>
<entry>
<title>activation: Change permissions on /root to #o700.</title>
<updated>2017-05-30T16:08:37Z</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2017-05-30T15:40:39Z</published>
<link rel='alternate' type='text/html' href='https://git.jakob.space/guix.git/commit/?id=41db5a756369f5b14d1e67a523ee0940cad56744'/>
<id>urn:sha1:41db5a756369f5b14d1e67a523ee0940cad56744</id>
<content type='text'>
Reported by Alex Griffin &lt;a@ajgrf.com&gt;.
Fixes &lt;http://bugs.gnu.org/27135&gt;.

* gnu/build/activation.scm (add-user): When UID is zero, add 'chmod'
call.
* gnu/tests/base.scm (run-basic-test)["permissions on /root"]: New test.
</content>
</entry>
</feed>
