gitwtfhub

wtf is linux-lockscreen-bioauth-faceid-gestures-?

juantrader500/linux-lockscreen-bioauth-faceid-gestures- — explained in plain English

Analysis updated 2026-05-18

2PythonAudience · ops devopsComplexity · 5/5Setup · hard

TL;DR

A two-factor biometric login system for Fedora GNOME that unlocks the screen using face recognition and a hand gesture, falling back to your normal password if it fails.

Mindmap

mindmap
  root((repo))
    What it does
      Face plus gesture login
      Falls back to password
      Hooks into PAM
    Tech stack
      Python
      InsightFace
      MediaPipe
    Use cases
      Biometric lock screen
      PAM authentication
      Offline face recognition
    Audience
      Linux power users
      System administrators

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Unlock a Fedora GNOME lock screen with your face and a thumbs up gesture instead of typing a password.

REASON 2

Add a PAM-based biometric authentication step that safely falls back to password login on failure.

REASON 3

Run offline, CPU-only face recognition using InsightFace without needing a GPU.

What's in the stack?

PythonInsightFaceMediaPipeONNX RuntimeOpenCVPAM

How it stacks up

juantrader500/linux-lockscreen-bioauth-faceid-gestures-0-bingwu-0/live-interpreter0cm-labs/tokenizer-benchmark
Stars222
LanguagePythonPythonPython
Setup difficultyhardmoderatemoderate
Complexity5/52/52/5
Audienceops devopsgeneralresearcher

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · hard Time to first run · 1h+

Requires editing PAM configuration files directly, a mistake can lock you out of your own login.

Wtf does this do

This project adds two-factor biometric login to Fedora Linux systems running GNOME. Instead of only typing a password at the lock screen, the system can recognize your face and check for a specific hand gesture, and only if that combination fails or times out does it fall back to asking for your ordinary password. It works by plugging into PAM, the standard Linux system that handles logins. When GDM, the GNOME login manager, asks for credentials, PAM runs this tool first. If your face is recognized and you make a thumbs up gesture, you get in without typing anything, otherwise the normal password prompt appears after a short timeout. Face recognition is handled by a model called InsightFace, running on the CPU rather than requiring a graphics card. The first time it runs, it looks at a folder of your own reference photos, front, left, and right, and turns each one into a numeric representation of your face, which it saves to a cache so future logins are almost instant. Live camera frames are then compared against that cache using a similarity score, and a close enough match counts as a face match. The cache automatically refreshes itself if you add, remove, or change any of the reference photos. The gesture check uses a separate tool called MediaPipe to track the points of your hand in real time, and looks for a thumbs up: the thumb clearly raised above the wrist while the other four fingers stay folded down. Both the face and the gesture checks have to succeed for a few frames in a row before access is granted, which helps avoid a false match from one odd camera frame. The project is written in Python and is tested on Fedora 44 with GNOME, though the author says it should also work on similar distributions like RHEL, CentOS, and Rocky Linux, with partial support for others such as Ubuntu, Debian, Arch, and Linux Mint. Setting it up involves creating an isolated Python environment, installing a specific set of libraries, providing 10 to 16 photos of your own face, and then editing PAM configuration files directly, which the README warns should always be backed up first since a mistake there can lock you out of your own system.

Yoink these prompts

Prompt 1
Walk me through setting up the PAM wrapper script and editing gdm-password for this biometric login project.
Prompt 2
Explain how face_auth.py builds and caches facial embeddings with InsightFace.
Prompt 3
Show me how gesture_auth.py detects a thumbs up gesture using MediaPipe hand landmarks.

Frequently asked questions

wtf is linux-lockscreen-bioauth-faceid-gestures-?

A two-factor biometric login system for Fedora GNOME that unlocks the screen using face recognition and a hand gesture, falling back to your normal password if it fails.

What language is linux-lockscreen-bioauth-faceid-gestures- written in?

Mainly Python. The stack also includes Python, InsightFace, MediaPipe.

How hard is linux-lockscreen-bioauth-faceid-gestures- to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is linux-lockscreen-bioauth-faceid-gestures- for?

Mainly ops devops.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.