added sddm avatars

This commit is contained in:
Emmet
2025-03-02 12:58:35 -06:00
parent ae2090378a
commit 6781b0585e

View File

@@ -47,6 +47,38 @@ in
package = pkgs.libsForQt5.sddm;
};
# Define systemd service to run on boot to load avatars for sddm
systemd.services."sddm-avatar" = {
description = "Service to copy or update users Avatars at startup.";
wantedBy = [ "multi-user.target" ];
before = [ "sddm.service" ];
script = ''
set -eu
mkdir -p /var/lib/AccountsService/icons
for user in /home/*; do
username=$(basename "$user")
if [ -f "$user/.face.icon" ]; then
if [ ! -f "/var/lib/AccountsService/icons/$username" ]; then
cp "$user/.face.icon" "/var/lib/AccountsService/icons/$username"
else
if [ "$user/.face.icon" -nt "/var/lib/AccountsService/icons/$username" ]; then
cp "$user/.face.icon" "/var/lib/AccountsService/icons/$username"
fi
fi
fi
done
'';
serviceConfig = {
Type = "simple";
User = "root";
StandardOutput = "journal+console";
StandardError = "journal+console";
};
};
# # Ensures SDDM starts after the service.
systemd.services.sddm = { after = [ "sddm-avatar.service" ]; };
# xwayland
services.xserver = {
enable = true;