1
0
Fork 1
mirror of https://github.com/NixOS/nixpkgs.git synced 2025-02-19 17:39:34 +00:00

Merge pull request #45107 from mnacamura/lightdm-accountsservice

lightdm: enable the accounts daemon to find dbus interface
This commit is contained in:
Jan Tojnar 2018-08-16 17:15:05 +02:00 committed by GitHub
commit 6f8fe25ccf
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 13 additions and 4 deletions
nixos/modules/services
desktops
x11/display-managers

View file

@ -32,15 +32,21 @@ with lib;
environment.systemPackages = [ pkgs.accountsservice ]; environment.systemPackages = [ pkgs.accountsservice ];
# Accounts daemon looks for dbus interfaces in $XDG_DATA_DIRS/accountsservice
environment.pathsToLink = [ "/share/accountsservice" ];
services.dbus.packages = [ pkgs.accountsservice ]; services.dbus.packages = [ pkgs.accountsservice ];
systemd.packages = [ pkgs.accountsservice ]; systemd.packages = [ pkgs.accountsservice ];
systemd.services.accounts-daemon= { systemd.services.accounts-daemon = {
wantedBy = [ "graphical.target" ]; wantedBy = [ "graphical.target" ];
} // (mkIf (!config.users.mutableUsers) { # Accounts daemon looks for dbus interfaces in $XDG_DATA_DIRS/accountsservice
environment.XDG_DATA_DIRS = "${config.system.path}/share";
} // (optionalAttrs (!config.users.mutableUsers) {
environment.NIXOS_USERS_PURE = "true"; environment.NIXOS_USERS_PURE = "true";
}); });
}; };

View file

@ -15,7 +15,7 @@ let
inherit (pkgs) lightdm writeScript writeText; inherit (pkgs) lightdm writeScript writeText;
# lightdm runs with clearenv(), but we need a few things in the enviornment for X to startup # lightdm runs with clearenv(), but we need a few things in the environment for X to startup
xserverWrapper = writeScript "xserver-wrapper" xserverWrapper = writeScript "xserver-wrapper"
'' ''
#! ${pkgs.bash}/bin/bash #! ${pkgs.bash}/bin/bash
@ -209,9 +209,12 @@ in
services.dbus.enable = true; services.dbus.enable = true;
services.dbus.packages = [ lightdm ]; services.dbus.packages = [ lightdm ];
# lightdm uses the accounts daemon to rember language/window-manager per user # lightdm uses the accounts daemon to remember language/window-manager per user
services.accounts-daemon.enable = true; services.accounts-daemon.enable = true;
# Enable the accounts daemon to find lightdm's dbus interface
environment.systemPackages = [ lightdm ];
security.pam.services.lightdm = { security.pam.services.lightdm = {
allowNullPassword = true; allowNullPassword = true;
startSession = true; startSession = true;