We built Gaze (v0.2.1), a facial authentication system for Linux. It hooks into PAM, so it works for sudo, the lock screen, and GDM login. Everything runs on-device. No cloud, no account.
It's been a slow build. v0.1.0 took about 3 months, and v0.2.0 landed roughly a month and a half after that. We'd rather get things right than ship fast.
What it does:
- PAM integration for
sudo,polkit, and any PAM-aware auth stack - Liveness anti-spoofing on by default. A local
MiniFASNet-V2model checks the face crop after a match on the RGB path, and eye-motion analysis handles the IR path. - Infrared camera support for Windows Hello-style IR cameras, including driving the IR emitter. You can enroll RGB and IR templates and combine them with hybrid policies: require both, either one, or fall back to IR when it's too dark.
- GNOME Shell extension for the lock screen, plus optional face unlock at GDM login
- Works with Hyprland (
hyprlock), KDE Plasma, and LXQt alongside GNOME - A libadwaita desktop app for enrolling, testing, and health checks
- DBus API (
com.gundulabs.Gaze) if you want to build on top of it - Multiple face profiles per user, so you can enroll a default, one with glasses, whatever varies
gaze refine-faceto sharpen recognition in dim light or at odd angles- Security levels from
lowtomaximumthat swap the detector/recognizer models and match threshold, plus acustomlevel if you want to tune it yourself - Optional TPM 2.0 template encryption that seals your face templates to the machine, so a stolen disk can't read them
- Multi-user support (
gaze add-face work -u alice) gaze doctorfor a quick health check,gaze uninstallfor a clean removal- Models download on first run and stay local under
/var/cache/gaze
One-line install (Debian/Ubuntu/Fedora/Arch):
sh curl -fsSL https://gaze.gundulabs.com/install.sh | sh
One honest caveat: face recognition isn't perfect, so false accepts and rejects happen. Liveness and an IR camera raise the bar, but keep a password as a fallback and don't rely on Gaze as your only factor.
Repo:
SOCIAL SHARE CARD GENERATOR