nixos/gdm: ensure environment from display-manager.service is propagated (#523948)
This commit is contained in:
@@ -455,6 +455,22 @@ in
|
||||
settings.conffile = "/etc/pam/environment";
|
||||
settings.readenv = 0;
|
||||
}
|
||||
# make sure the spawned session has the same variables as `display-manager.service`
|
||||
# https://github.com/NixOS/nixpkgs/issues/523332
|
||||
{
|
||||
name = "env-greeter";
|
||||
control = "required";
|
||||
modulePath = "${config.security.pam.package}/lib/security/pam_env.so";
|
||||
settings.conffile =
|
||||
let
|
||||
env = config.services.displayManager.generic.environment;
|
||||
in
|
||||
pkgs.writeText "gdm-launch-environment-env-conf" ''
|
||||
PATH DEFAULT="''${PATH}:${pkgs.gnome-session}/bin"
|
||||
XDG_DATA_DIRS DEFAULT="''${XDG_DATA_DIRS}:${env.XDG_DATA_DIRS}"
|
||||
'';
|
||||
settings.readenv = 0;
|
||||
}
|
||||
{
|
||||
name = "systemd";
|
||||
control = "optional";
|
||||
|
||||
Reference in New Issue
Block a user