Skip to content
irlume: face authentication for Linux

Your face or fingerprint unlocks Linux

Login, lock screen, sudo, and app prompts like Bitwarden. In the dark, with an IR camera. Stored as an embedding, never an image. Password always works.

License: GPL v3 Platform Built with Rust Packaged Version OpenSSF Scorecard OpenSSF Best Practices AI-assisted

Setup · Commands · Limits · FAQ · All docs


irlume demo: install, guided face enrollment in the TUI, wiring the greeter and lock screen, and opt-in face-sudo

Important

A printed photograph of an enrolled face passes the algorithmic IR gate alone (accepted in 69 of 70 measured presentations). The shipped PAD pair (ViT RGB + FLIR IR) refuses it, runs default-on, and verifies against signed checksums at startup; kill switches: IRLUME_PAD_VIT=0, IRLUME_PAD_IR=0. Read Limits before wiring this into anything that matters.


🌑 Works in the dark Infrared recognition, no ambient light needed
🔓 Unlocks everything Login, lock screen, sudo, polkit prompts
🗝️ Opens your wallet A face match TPM-unseals your keyring secret
🧬 No face images 512-D embeddings, AES-256-GCM under a TPM-sealed key
🙋 Consent before camera yes for a face attempt; typing your password never starts a scan, and both work in the same prompt (the field accepts either, so you never wait for one path to time out)
🛡️ Refuses photos and screens Two anti-spoofing models run by default: print attacks on RGB, screens/phones on IR (Howdy's own README warns a printed photo can defeat it)
🔁 Survives real life Suspend/resume verified on hardware; a failed scan or a crashed component falls back to your password, never a lockout
📦 Installs boring One Rust binary per package, no Python, no dlib, no pip. The class of install breakage that dominates other face-unlock trackers does not exist here
🩺 Repairs itself A live TUI fixes faults; PAM wiring survives updates

Install

curl -fsSL https://raw.githubusercontent.com/archledger/irlume/main/scripts/install.sh | sh
Or install by hand
sudo dnf copr enable archledger/irlume && sudo dnf install irlume   # Fedora
sudo add-apt-repository ppa:archledger/irlume && sudo apt install irlume   # Ubuntu
yay -S irlume                                                       # Arch
sudo apt install ./irlume_*.deb                                     # Debian 12+, from Releases

On NixOS use nixosModules.irlume from this flake (docs/NIXOS.md). Signed packages for every distro are attached to each release as a fallback. Which lane suits which distro version: docs/SETUP.md.

Then:

irlume doctor    # what your hardware supports
irlume tui       # guided enrollment and wiring

You need x86-64 Linux with systemd and PAM. A TPM 2.0 is strongly recommended. Most cameras work and set your tier (an IR node must offer an 8-bit grey format; see Platforms): IR → secure login · RGB → screen unlock · fingerprint → companion factor.

Documentation

Setup Install and configure, guided or by hand
Turning it off Per-surface disable, canceling a scan, uninstall
Commands Every command and flag
Limits What irlume does not do, and the measurements
FAQ Common questions
Architecture How it works inside
Security · Threat model What is protected, and from whom
Verify Reproduce every claim on your machine
Integration · Machine API Drive irlume from your own software
Debugging Trace a failing login
Contributing · Changelog · Credits

Status

v0.11.2, working on real hardware across Fedora, Ubuntu and Arch. Self-tested against ISO/IEC 30107-3, not lab-certified. Interfaces may shift before 1.0. Validated cameras are listed in Hardware compatibility (generated from measured evidence, never hand-edited).

Hardware reports from laptops with IR cameras, working or not, are the most useful contribution right now: Discussions · Issues · Security

If irlume is useful to you and you feel like it, there is a Ko-fi. No obligation; the project stays free and GPL either way.

ko-fi


GPL-3.0-or-later · no CLA, no commercial relicensing · credits

Built with Rust and AI assistance, human-directed (details) · Windows Hello is a Microsoft trademark; irlume is independent · your face stays yours

Releases

Sponsor this project

Packages

Used by

Contributors

Languages