Package: greetd
Version: 0.10.3-7
Severity: normal

Dear Maintainer,

Since 0.10.3-6 ("Update PAM configuration to include common-* instead of
login", #1140127), /etc/pam.d/greetd is

  @include common-auth
  @include common-account
  @include common-session

/etc/pam.d/login (util-linux 2.42.4-1 in forky) also has the two pam_env
lines

  session required pam_env.so readenv=1
  session required pam_env.so readenv=1 envfile=/etc/default/locale

and common-session has neither, so a session started by greetd no longer
gets /etc/environment or the system locale. On a forky install whose
system locale is en_PH.UTF-8, a session started from gtkgreet had LANG
unset and ran in the C locale (foot, for one, warned about it).

#1143492 was the same change for pam_gnome_keyring, fixed in
gnome-keyring 51.1-2. pam_env has no package of its own to carry its
lines, so adding them back to greetd's PAM file seems the way:

--- a/debian/greetd.greetd.pam
+++ b/debian/greetd.greetd.pam
@@ -1,4 +1,6 @@
 #%PAM-1.0
 @include common-auth
 @include common-account
 @include common-session
+session required pam_env.so readenv=1
+session required pam_env.so readenv=1 envfile=/etc/default/locale

We found this in FlickOS, a Debian-based desktop that uses greetd and
gtkgreet; its session script reads the locale itself for now.

Thanks,
Jon

Reply via email to