73c59e54c1
Update PKGBUILD version / update-pkgver (push) Successful in 3s
The PAM stack only ever had `auth include login` — no account module. auth.rs nevertheless called pam_acct_mgmt after pam_authenticate, which fell back to /etc/pam.d/other (pam_deny) and rejected every password. On the FP side, the same call was wrapped in a spawn_blocking + 2s resume_async retry path that triggered a use-after-free in gtk_window_destroy (20+ SIGSEGVs in 6 days). - auth.rs: remove pam_acct_mgmt extern + call; return pam_authenticate result directly. Lockout still works via pam_faillock in the auth stack. - auth.rs: drop check_account() and its tests (FP path no longer needs it). - lockscreen.rs::start_fingerprint: on success go straight to label.set_text + fp.stop() + cb(); no PAM acct check, no resume retry. - fingerprint.rs: remove resume_async() — no caller left. - config/moonlock-pam: keep single `auth include login` line, matching swaylock/gtklock pattern. - CLAUDE.md, DECISIONS.md updated.
34 lines
780 B
TOML
34 lines
780 B
TOML
[package]
|
|
name = "moonlock"
|
|
version = "0.6.13"
|
|
edition = "2024"
|
|
description = "A secure Wayland lockscreen with GTK4, PAM and fingerprint support"
|
|
license = "MIT"
|
|
|
|
[dependencies]
|
|
gtk4 = { version = "0.11", features = ["v4_10"] }
|
|
gtk4-session-lock = { version = "0.4", features = ["v1_2"] }
|
|
glib = "0.22"
|
|
gdk4 = "0.11"
|
|
gdk-pixbuf = "0.22"
|
|
gio = "0.22"
|
|
toml = "0.8"
|
|
serde = { version = "1", features = ["derive"] }
|
|
graphene-rs = { version = "0.22", package = "graphene-rs" }
|
|
nix = { version = "0.29", features = ["user"] }
|
|
zeroize = { version = "1", features = ["derive", "std"] }
|
|
libc = "0.2"
|
|
log = "0.4"
|
|
systemd-journal-logger = "2.2"
|
|
|
|
[dev-dependencies]
|
|
tempfile = "3"
|
|
|
|
[build-dependencies]
|
|
glib-build-tools = "0.22"
|
|
|
|
[profile.release]
|
|
lto = "fat"
|
|
codegen-units = 1
|
|
strip = true
|