This is actually distinct enough from bug 2121017, so let's not consider
it duplicate. To copy my comment from that bug:

The user in bug 2125403 is using "compat" rather than "files" for
passwd, group, and shadow[1]. I don't grok the generated postinst well
enough to be sure, but I think that means that since we have
"after=files" in libnss-systemd.nss, the sed expressions don't match the
existing content of /etc/nsswitch.conf:

root@q:~# cat /var/lib/dpkg/info/libnss-systemd\:amd64.postinst
#!/bin/sh
set -e
# Automatically added by dh_installnss/1.7
if [ "$1" = "configure" ] && [ -f 
"${DPKG_ROOT}/etc/nsswitch.conf.nss.${DPKG_MAINTSCRIPT_PACKAGE}-will-install" ] 
&& [ -e "${DPKG_ROOT}/etc/nsswitch.conf" ] ; then
        if ! grep -q -E -e '^group:[^#]*\s(systemd)(\s|#|$)' -e 
'^gshadow:[^#]*\s(systemd)(\s|#|$)' -e '^passwd:[^#]*\s(systemd)(\s|#|$)' -e 
'^shadow:[^#]*\s(systemd)(\s|#|$)' "${DPKG_ROOT}/etc/nsswitch.conf" ; then
                # Installing passwd/systemd from libnss-systemd in position 
after=files
                sed -E -i "${DPKG_ROOT}/etc/nsswitch.conf" -e 
'/^passwd:\s[^#]*$/ s/(\s)(files(\s+\[[^]]+\])?)(\s|$)/\1\2 systemd /' -e 
'/^passwd:\s.*#/ s/(\s)(files(\s+\[[^]]+\])?)(\s|#)/\1\2 systemd \3/' -e 's/ 
$//'
                # Installing group/systemd from libnss-systemd in position 
after=files
                sed -E -i "${DPKG_ROOT}/etc/nsswitch.conf" -e 
'/^group:\s[^#]*$/ s/(\s)(files(\s+\[[^]]+\])?)(\s|$)/\1\2 systemd /' -e 
'/^group:\s.*#/ s/(\s)(files(\s+\[[^]]+\])?)(\s|#)/\1\2 systemd \3/' -e 's/ $//'
                # Installing shadow/systemd from libnss-systemd in position 
after=files
                sed -E -i "${DPKG_ROOT}/etc/nsswitch.conf" -e 
'/^shadow:\s[^#]*$/ s/(\s)(files(\s+\[[^]]+\])?)(\s|$)/\1\2 systemd /' -e 
'/^shadow:\s.*#/ s/(\s)(files(\s+\[[^]]+\])?)(\s|#)/\1\2 systemd \3/' -e 's/ 
$//'
                # Installing gshadow/systemd from libnss-systemd in position 
after=files
                sed -E -i "${DPKG_ROOT}/etc/nsswitch.conf" -e 
'/^gshadow:\s[^#]*$/ s/(\s)(files(\s+\[[^]]+\])?)(\s|$)/\1\2 systemd /' -e 
'/^gshadow:\s.*#/ s/(\s)(files(\s+\[[^]]+\])?)(\s|#)/\1\2 systemd \3/' -e 's/ 
$//'
        fi
        rm 
"${DPKG_ROOT}/etc/nsswitch.conf.nss.${DPKG_MAINTSCRIPT_PACKAGE}-will-install"
fi
# End automatically added section

In other words, since the user did not have "files" listed for those
dbs, "systemd" does not get added. It's also unclear to me from the
docs[2] what to do in this case.

Can we just add "after=compat" entries as a fallback to libnss-
systemd.nss?

[1] https://bugs.launchpad.net/ubuntu/+source/gdm3/+bug/2125403/comments/4
[2] https://manpages.debian.org/unstable/dh-nss/dh_installnss.1.en.html

** This bug is no longer a duplicate of bug 2121017
   gdm3 49~beta doesn't start [unix_chkpwd: could not obtain user info 
(gdm-greeter)] on systems installed before 2024

** Summary changed:

- Graphics mode won't be started from gdm3
+ Graphics mode won't be started from gdm3 when 'compat' is used instead of 
'files' in /etc/nsswitch.conf

** Changed in: gdm3 (Ubuntu)
       Status: New => Triaged

** Changed in: gdm3 (Ubuntu)
   Importance: Undecided => Critical

** Changed in: gdm3 (Ubuntu)
     Assignee: (unassigned) => Nick Rosbrook (enr0n)

** Changed in: gdm3 (Ubuntu)
    Milestone: None => ubuntu-25.10

-- 
You received this bug notification because you are a member of Ubuntu
Desktop Bugs, which is subscribed to gdm3 in Ubuntu.
https://bugs.launchpad.net/bugs/2125403

Title:
  Graphics mode won't be started from gdm3 when 'compat' is used instead
  of 'files' in /etc/nsswitch.conf

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gdm3/+bug/2125403/+subscriptions


-- 
desktop-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/desktop-bugs

Reply via email to