No description
Find a file
2026-04-15 20:50:37 -07:00
cmd init: residual/auth — PAM auth, login UI, session picker, res-login + res-select binaries 2026-04-15 19:17:33 -07:00
login init: residual/auth — PAM auth, login UI, session picker, res-login + res-select binaries 2026-04-15 19:17:33 -07:00
selector init: residual/auth — PAM auth, login UI, session picker, res-login + res-select binaries 2026-04-15 19:17:33 -07:00
tty init: residual/auth — PAM auth, login UI, session picker, res-login + res-select binaries 2026-04-15 19:17:33 -07:00
auth.go init: residual/auth — PAM auth, login UI, session picker, res-login + res-select binaries 2026-04-15 19:17:33 -07:00
go.mod init: residual/auth — PAM auth, login UI, session picker, res-login + res-select binaries 2026-04-15 19:17:33 -07:00
go.sum init: residual/auth — PAM auth, login UI, session picker, res-login + res-select binaries 2026-04-15 19:17:33 -07:00
pam.go init: residual/auth — PAM auth, login UI, session picker, res-login + res-select binaries 2026-04-15 19:17:33 -07:00
pam_stub.go init: residual/auth — PAM auth, login UI, session picker, res-login + res-select binaries 2026-04-15 19:17:33 -07:00
README docs: add README 2026-04-15 20:50:37 -07:00
session.go init: residual/auth — PAM auth, login UI, session picker, res-login + res-select binaries 2026-04-15 19:17:33 -07:00

residual/auth
=============

authentication, login screen, and session selection for residual.

packages:
  auth/           PAM authenticator interface + implementation (CGO).
                  pam_stub.go provides a no-op fallback for CGO_ENABLED=0.
  auth/tty/       linux TTY management — open, VT switching, wait-active.
  auth/login/     bubbletea login screen UI (branding + password form).
  auth/selector/  bubbletea session picker UI (.desktop file scanning).

binaries:
  res-login   full login flow: TTY setup → authentication → session launch.
              requires CGO for PAM. see etc/pam.d/residual-login.
  res-select  standalone session picker (post-login, or for display managers).

build:
  go build ./cmd/res-login     # requires CGO_ENABLED=1
  CGO_ENABLED=0 go build ./cmd/res-select

module:   git.merith.xyz/residual/auth
requires: git.merith.xyz/residual/core