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 built-in liveness gate (accepted in 69 of 70 measured presentations). irlume setup offers a trained cue that refuses it. 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
🙋 Only when you ask Empty password + Enter. Typing never starts a scan
🩺 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
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.10.0, 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.

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