Help: logged out after rebuild; gdm issue

Hello, today i ran nixos-rebuild switch after updating my flake, suddenly, i lost the ability to open terminals, and upon reboot, i could not get my password to authenticate, in the nixos-rebuild switch text i found:

warning: not applying UID change of user ‘gdm-greeter-2’ (60580 -> 60579) in /etc/passwd

warning: not applying UID change of user ‘gdm-greeter-3’ (60581 -> 60580) in /etc/passwd

warning: not applying UID change of user ‘gdm-greeter-4’ (60582 -> 60581) in /etc/passwd

I found a github issue discussing this, where the only proposed solution is to change the profiles manually in /etc/passwd, i do not want to do this in case i fuck up my usable builds. I also tried switching to ly, but i couldn’t get my password to authenticate.

How can i either: safely get gdm to work without fucking up my usable generations? or change display managers and have said display manager recognize my password?

I do not understand. What have you tried to do? What was the (unexpected) result?

I am the author of the linked GitHub issue. That issue is probably not the cause of your problems. It only creates the warning during nixos-rebuild.

What i did: run nixos rebuild switch after updating my flake

Expected result: i can still do everything normally

Unexpected result: i can no longer open a terminal, if i reboot my computer, and enter my password, gdm does not authenticate it, i cannot log in

Some things i tried:

Remove every flake input except nixpkgs

Change from gdm to ly. Ly does not authenticate my password either

Huh. I recall this going around a year or two ago, there was some inadvisable change to GNOME.

When was your last update? Are you using unstable?

I’m using unstable yes, that’s why i also considered changing display managers to wait it out

This is not a recent thing. What are the commits you’re updating between according to your flake.lock?

This is my flake.lock:

{
"nodes": {
"nixpkgs": {
"locked": {
"lastModified": 1791956154,
"narHash": "sha256-jBYGPi4udQ9uo4KQp9m2J0546nJVQitG15gvZSaVVAs=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "55bfb4d7437bd4e09ab7cba58a43bd68eb310044",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"root": {
"inputs": {
"nixpkgs": "nixpkgs"
}
}
},
"root": "root",
"version": 7
}

The issue with the changed UIDs of gdm-greeter-N users came late in the 26.05 cycle. It’s roughly half a year old.

I guess the main issue is, that your password is not recognized anymore. What happens, when you login on TTY4? Does it work on an older generation?

I’m sorry for the stupid question, how do i do that?

Press Ctrl+alt+F4 and enter your username and password.

Thanks, it does work, both in new and old generations

In short: login via TTY works, but it does not with GDM or Ly!? :thinking:

Yes, but i did another test, and while it recognizes my password i cannot start mango from newer generations: “cannot render”

GDM/Ly are rendered correctly? What is your GPU?

GDM/Ly are render correctly. Mango throws the following errors:

[render/egl.c:280] EGL_EXT_platform_base not supported
[render/egl.c:566] Failed to create EGL context
[render/fx_render/fx_renderer.c:329] could not initialize EGL
couldn't create render

CPU: 13th Gen Intel(R) Core™ i5-1334U (4+8) @ 4.60 GHz

GPU: Intel Iris Xe Graphics @ 1.25 GHz [Integrated]

Have you tried to start a non-mango session (like gnome) via GDM?

I can log into gnome, i cannot open kitty, i can open the gnome console and running mango gives the same errors as before.

edit: Now my old generations don’t work, i am locked into using gnome, despair.

What about the flake.lock from before the update?

Anyway, we’re just dancing in circles here without some diagnostics. Do this:

  1. Reboot, use the broken generation.
  2. Switch to tty4 and login
  3. Get the output of journalctl --boot (pipe it into a file).
  4. Run journalctl -f (you can pipe this to a file for easy sharing too)
  5. Switch back to tty1
  6. Log in (and let it fail)
  7. Go back to tty4 and get the logs that happened during that attempt
  8. If just that output isn’t obvious, share the logs with us here. You can use paste/hastebin or a gist, or even upload them as attachments.
    • At least use a codeblock so discourse makes it scrollable, triple backtick for that not just one like you did with flake.lock up above.

There’s probably something wrong with PAM, or maybe altogether some part of the activation script fails. Hard to debug going blind.

If you can share your whole repo we may also be able to reproduce this in a VM, assuming you don’t have anything sensitive in there.

It looks to me, that mango is the culprit here: @Zsele logins in GDM/LY, the mango session gets started, mango fails with its render error, the login manager is shown again.

I did a short test on current unstable with a Radeon RX 5600 XT:

  1. Set programs.mango.enable = true
  2. Reboot.
  3. Log in as a test user selecting the Mango session in GDM.
  4. Mango shows up and complains, that there is no configuration file.

@Zsele: Consider reaching out to the support channels of Mango.