{"id":13678490,"url":"https://github.com/RogueScholar/fingerprint-gui","last_synced_at":"2025-04-29T15:31:45.399Z","repository":{"id":49067898,"uuid":"188518806","full_name":"RogueScholar/fingerprint-gui","owner":"RogueScholar","description":"Use fingerprint readers with a Linux desktop environment","archived":false,"fork":false,"pushed_at":"2021-06-29T16:21:04.000Z","size":8577,"stargazers_count":93,"open_issues_count":12,"forks_count":21,"subscribers_count":9,"default_branch":"main","last_synced_at":"2024-06-17T18:02:14.504Z","etag":null,"topics":["biometric-authentication","biometrics","fingerprint","fingerprint-authentication","fingerprint-data","fingerprint-gui","fingerprint-readers","fingerprint-recognition","fingerprint-scanner","fingerprint-sensor","pam","pam-authentication","pam-module"],"latest_commit_sha":null,"homepage":"https://web.archive.org/web/20190607022148/http://www.ullrich-online.cc:80/fingerprint/index.php","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RogueScholar.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null},"funding":{"github":"RogueScholar","open_collective":"peter-mello","ko_fi":"roguescholar","liberapay":"RogueScholar","issuehunt":"roguescholar","custom":null}},"created_at":"2019-05-25T04:05:02.000Z","updated_at":"2024-06-17T12:56:03.000Z","dependencies_parsed_at":"2022-08-29T17:00:56.097Z","dependency_job_id":null,"html_url":"https://github.com/RogueScholar/fingerprint-gui","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RogueScholar%2Ffingerprint-gui","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RogueScholar%2Ffingerprint-gui/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RogueScholar%2Ffingerprint-gui/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RogueScholar%2Ffingerprint-gui/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RogueScholar","download_url":"https://codeload.github.com/RogueScholar/fingerprint-gui/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":213678307,"owners_count":15622493,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["biometric-authentication","biometrics","fingerprint","fingerprint-authentication","fingerprint-data","fingerprint-gui","fingerprint-readers","fingerprint-recognition","fingerprint-scanner","fingerprint-sensor","pam","pam-authentication","pam-module"],"created_at":"2024-08-02T13:00:54.192Z","updated_at":"2024-08-02T13:07:35.825Z","avatar_url":"https://github.com/RogueScholar.png","language":"C++","funding_links":["https://github.com/sponsors/RogueScholar","https://opencollective.com/peter-mello","https://ko-fi.com/roguescholar","https://liberapay.com/RogueScholar","https://issuehunt.io/r/roguescholar"],"categories":["C++"],"sub_categories":[],"readme":"# Fingerprint GUI\n\nFingerprint GUI is an application providing fingerprint-based authentication on\nLinux desktops. Based on the libfprint library, it features a simple GUI for\nfingerprint management and a PAM module. Additionally, you may install the\nbundled non-free libbsapi library, in which case Fingerprint GUI will\nautomatically support all fingerprint readers manufactured by UPEK, Inc.\n\n## Supported hardware\n\nThe list of fingerprint readers supported by libfprint is available\n[here](https://fprint.freedesktop.org/supported-devices.html).\n\nIf you install the libbsapi library, then all hardware by UPEK should be\nsupported as well.\n\n## Compilation\n\n### Prepare the build environment\n\nThis project is built using the Qt 5 development framework. The required\npackages can be installed on any recent Debian-based Linux distributions with\nthe command:\n\n```bash\nsudo apt install -y qtbase5-dev libqt5core5a qt5ct qt5-qmake qtchooser \\\nqttranslations5-l10n qtbase5-dev-tools qttools5-dev-tools libqt5x11extras5-dev \\\n  qttools5-dev\n```\n\n### Install dependencies\n\nIn order to compile the software you will need cmake and the development\npackages for libfprint, libqca-qt5-2, libfakekey, libusb-1.0, libpolkit-qt5-1\nand libpam.\n\nIf you are running a recent Debian-based distribution, use the following\ncommand:\n\n```bash\nsudo apt install -y cmake cmake-extras libfprint-dev libqca-qt5-2-dev \\\nlibfakekey-dev libusb-1.0-0-dev libpolkit-qt5-1-dev libpam0g-dev\n```\n\n### Create the build directory\n\n```bash\nmkdir build \u0026\u0026 cd build\n```\n\n### Generate the Makefile\n\n```bash\ncmake ..\n```\n\n#### Installation paths\n\nBy default, everything gets installed under `/usr/local/`. If you want to change\nthe prefix to `/usr/`, you can alter the cmake invocation like this:\n\n```bash\ncmake -DCMAKE_INSTALL_PREFIX=/usr ..\n```\n\nAdditionally, libraries are installed into\n`$CMAKE_INSTALL_PREFIX/$CMAKE_INSTALL_LIBDIR`, helper executables go into\n`$CMAKE_INSTALL_PREFIX/$CMAKE_INSTALL_LIBEXECDIR`, and the PAM module is\ninstalled into `$CMAKE_INSTALL_LIBDIR/security`. The default value for both\n`$CMAKE_INSTALL_LIBDIR` and `$CMAKE_INSTALL_LIBEXECDIR` is `/lib`, which should\nbe suitable for most Linux distributions.\n\nHowever, should you need to adjust the value of these two variables, you can set\nthem in the same way as `$CMAKE_INSTALL_PREFIX` above. For instance, on recent\n64-bit Fedora systems you would invoke cmake like this:\n\n```bash\ncmake -DCMAKE_INSTALL_LIBDIR=/lib64 -DCMAKE_INSTALL_LIBEXECDIR=/libexec ..\n```\n\nor with\n\n```bash\ncmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=/lib64 \\\n-DCMAKE_INSTALL_LIBEXECDIR=/libexec ..\n```\n\nif you want to install into `/usr`.\n\n### Build the software\n\n```bash\nmake -j$(nproc)\n```\n\n### Install the compiled software\n\n```bash\nsudo make install\n```\n\n### Add support for UPEK readers (install the bundled proprietary library `libbsapi`)\n\n```bash\nsudo make install-upek\n```\n\n### Upgrading from older versions\n\nBeginning with version 1.07 of Fingerprint GUI, the ownership and permissions of\nusers' fingerprint data in `/var/lib/fingerprint-gui/` has been changed. To\napply the new ownership and permissions needed for version 1.07 and above to\nfingerprint data from an older version, run:\n\n```bash\nsudo make user-data\n```\n\n## Account membership\n\nPlease note that every user that wants to use this library must be member of\ngroup `plugdev`. This group is created automatically. The following command will\nadd your current user account to the `plugdev` group:\n\n```bash\nsudo usermod -a -G plugdev $(id -un)\n```\n\n## PAM configuration\n\nSee the following guides for instructions on how to modify your PAM stack to\nenable fingerprint-based authentication:\n\n- [Fingerprint GUI Step-By-Step Manual](http://www.ullrich-online.cc/fingerprint/doc/Step-by-step-manual.html#idp34500608)\n- [ArchWiki](https://wiki.archlinux.org/index.php/Fingerprint_GUI)\n- [ThinkWiki](http://www.thinkwiki.org/wiki/How_to_enable_the_integrated_fingerprint_reader)\n\n### lxdm / Lubuntu\n\nThe lxdm developers should read the PAM documentation, specifically the \"Linux\nPAM Application Developers Guide\" located [here](http://uw714doc.sco.com/en/SEC_pam/pam_appl.html). Because of the completely\nimproper use of PAM authentication in lxdm it is not possible to use\nalternative authentication methods.\n\nIf you want to use fingerprint login for Lubuntu or other lxdm desktop\nenvironments you should install lightdm and lightdm-gtk-greeter and use those\ninstead. That will work.\n\n## License\n\nThis software is released under GPL-3+. See [LICENSE](LICENSE) for the full text\nof the license.\n\nCopyright © 2008-2016 Wolfgang Ullrich \u003ccontact@ullrich-online.cc\u003e\n\n## Bugs\n\nBugs can be sent directly to the author or posted in the\n[forums](http://home.ullrich-online.cc/fingerprint/Forum/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FRogueScholar%2Ffingerprint-gui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FRogueScholar%2Ffingerprint-gui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FRogueScholar%2Ffingerprint-gui/lists"}