Personal-use NixOS configuration
1{ userName, userIcon }:
2
3let
4 userFile = ''
5 [User]
6 Icon=/var/lib/AccountsService/icons/${userName}
7 '';
8in
9{
10 systemd.tmpfiles.rules = [
11 "d /var/lib/AccountsService/users 0755 root root -"
12 "d /var/lib/AccountsService/icons 0755 root root -"
13 "f /var/lib/AccountsService/users/${userName} 0644 root root -"
14 "f /var/lib/AccountsService/icons/${userName} 0644 root root -"
15 ];
16
17 system.activationScripts = builtins.listToAttrs [
18 {
19 name = "copy-profile-picture-${userName}";
20
21 value.text = ''
22 cp ${userIcon} /var/lib/AccountsService/icons/${userName}
23 echo "${userFile}" > /var/lib/AccountsService/users/${userName}
24
25 chown root:root /var/lib/AccountsService/{icons,users}/${userName}
26 chmod 0644 /var/lib/AccountsService/{icons,users}/${userName}
27 '';
28 }
29 ];
30}