howdy
Howdy provides Windows Hello™ style authentication for Linux. Use your built-in IR emitters and camera in combination with facial recognition to prove who you are.
Using the central authentication system (PAM), this works everywhere you would otherwise need your password: Login, lock screen, sudo, su, etc.
Installation
Howdy is currently available and packaged for Debian/Ubuntu, Arch Linux, Fedora and openSUSE. If you’re interested in packaging Howdy for your distro, don’t hesitate to open an issue.
Note: The build of dlib can hang on 100% for over a minute, give it time.
Ubuntu or Linux Mint
Run the installer by pasting (
) the following commands into the terminal one at a time:
sudo add-apt-repository ppa:boltgolt/howdy
sudo apt update
sudo apt install howdy
This will guide you through the installation.
Debian
Download the .deb file from the Releases page and install with gdebi.
Arch Linux
Maintainer wanted.
Install the
package from the AUR. For AUR installation instructions, take a look at this wiki page.
You will need to do some additional configuration steps. Please read the ArchWiki entry for more information.
Fedora
Maintainer: @luyatshimbalanga
The
package is available as a Fedora COPR repository, install it by simply executing the following commands in a terminal:
sudo dnf copr enable principis/howdy
sudo dnf --refresh install howdy
See the link to the COPR repository for detailed configuration steps.
openSUSE
Maintainer: @dmafanasyev
Go to the openSUSE wiki page for detailed installation instructions.
Building from source
If you want to build Howdy from source, a few dependencies are required.
Dependencies
- Python 3.6 or higher
- pip
- setuptools
- wheel
- meson version 0.64 or higher
- ninja
- INIReader (can be pulled from git automatically if not found)
- libevdev
To install them on Debian/Ubuntu for example:
sudo apt-get update && sudo apt-get install -y \
python3 python3-pip python3-setuptools python3-wheel \
cmake make build-essential \
libpam0g-dev libinih-dev libevdev-dev \
python3-dev libopencv-dev
Build
meson setup buildmeson compile -C build
You can also install Howdy to your system with
.
Setup
After installation, Howdy needs to learn what you look like so it can recognise you later. Run
to add a face model.
If nothing went wrong we should be able to run sudo by just showing your face. Open a new terminal and run
to see it in action. Please check this wiki page if you're experiencing problems or search for similar issues.
If you're curious you can run
to open the central config file and see the options Howdy has to offer. On most systems this will open the nano editor, where you have to press
+
to save your changes.
CLI
The installer adds a
command to manage face models for the current user. Use
or
to list the available options.
Usage:
howdy [-U user] [-y] command [argument]
Command | Description |
---|---|
| Add a new face model for a user |
| Remove all face models for a user |
| Open the config file in your default editor |
| Disable or enable howdy |
| List all saved face models for a user |
| Remove a specific model for a user |
| Take a snapshot of your camera input |
| Test the camera and recognition methods |
| Print the current version number |
Contributing
The easiest ways to contribute to Howdy is by starring the repository and opening GitHub issues for features you'd like to see. If you want to do more, you can also buy me a coffee.
Code contributions are also very welcome. If you want to port Howdy to another distro, feel free to open an issue for that too.
Troubleshooting
Any Python errors get logged directly into the console and should indicate what went wrong. If authentication still fails but no errors are printed, you could take a look at the last lines in
to see if anything has been reported there.
Please first check the wiki on common issues and if you encounter an error that hasn't been reported yet, don't be afraid to open a new issue.
A note on security
This package is in no way as secure as a password and will never be. Although it's harder to fool than normal face recognition, a person who looks similar to you, or a well-printed photo of you could be enough to do it. Howdy is a more quick and convenient way of logging in, not a more secure one.
To minimize the chance of this program being compromised, it's recommended to leave Howdy in
and to keep it read-only.
DO NOT USE HOWDY AS THE SOLE AUTHENTICATION METHOD FOR YOUR SYSTEM.