diff --git a/README.md b/README.md index 96dd124..11c7665 100644 --- a/README.md +++ b/README.md @@ -42,6 +42,7 @@ This will guide you through the installation. Download the .deb file from the [Releases page](https://github.com/boltgolt/howdy/releases) and install with gdebi. ### Arch Linux +_Maintainer wanted._ Install the `howdy` package from the AUR. For AUR installation instructions, take a look at this [wiki page](https://wiki.archlinux.org/index.php/Arch_User_Repository#Installing_packages). @@ -57,6 +58,11 @@ sudo dnf copr enable luya/howdy sudo dnf install howdy ``` +### openSUSE +_Maintainer: [@dmafanasyev](https://github.com/dmafanasyev)_ + +Go to the [openSUSE wiki page](https://en.opensuse.org/SDB:Facial_authentication) for detailed installation instructions. + ## Setup After installation, Howdy needs needs to learn what you look like so it can recognise you later. Run `sudo howdy add` to add a face model. diff --git a/archlinux/.SRCINFO b/archlinux/.SRCINFO index 8002aed..484a94b 100644 --- a/archlinux/.SRCINFO +++ b/archlinux/.SRCINFO @@ -1,6 +1,6 @@ pkgbase = howdy pkgdesc = Windows Hello for Linux - pkgver = 2.5.0 + pkgver = 2.5.1 pkgrel = 1 url = https://github.com/boltgolt/howdy arch = x86_64 @@ -19,11 +19,11 @@ pkgbase = howdy depends = python-click depends = python-numpy backup = usr/lib/security/howdy/config.ini - source = https://github.com/boltgolt/howdy/archive/v2.5.0.tar.gz + source = https://github.com/boltgolt/howdy/archive/v2.5.1.tar.gz source = https://downloads.sourceforge.net/project/pam-python/pam-python-1.0.6-1/pam-python-1.0.6.tar.gz source = https://sourceforge.net/p/pam-python/tickets/_discuss/thread/5dc8cfd5/5839/attachment/pam-python-1.0.6-fedora.patch source = https://sourceforge.net/p/pam-python/tickets/_discuss/thread/5dc8cfd5/5839/attachment/pam-python-1.0.6-gcc8.patch - sha256sums = a42c278f05866a6a616e8f5dd8349e35769063a229c236e680e566c5a6580334 + sha256sums = 596c8d947422e6d419746784f900a4af931a6fc647e1324913c6ce66a146bf82 sha256sums = 0ef4dda35da14088afb1640266415730a6e0274bea934917beb5aca90318f853 sha256sums = acb9d1b5cf7cad73d5524334b7954431bb9b90f960980378c538907e468c34b5 sha256sums = 02dd9a4d8ec921ff9a2408183f290f08102e3f9e0151786ae7220a4d550bfe24 diff --git a/archlinux/PKGBUILD b/archlinux/PKGBUILD index f1c58a6..e100771 100644 --- a/archlinux/PKGBUILD +++ b/archlinux/PKGBUILD @@ -1,7 +1,7 @@ # Maintainer: boltgolt # Maintainer: Kelley McChesney pkgname=howdy -pkgver=2.5.0 +pkgver=2.5.1 pkgrel=1 pkgdesc="Windows Hello for Linux" arch=('x86_64') @@ -25,11 +25,11 @@ makedepends=( 'python-pip' ) backup=('usr/lib/security/howdy/config.ini') -source=("https://github.com/boltgolt/howdy/archive/v2.5.0.tar.gz" +source=("https://github.com/boltgolt/howdy/archive/v2.5.1.tar.gz" "https://downloads.sourceforge.net/project/pam-python/pam-python-1.0.6-1/pam-python-1.0.6.tar.gz" "https://sourceforge.net/p/pam-python/tickets/_discuss/thread/5dc8cfd5/5839/attachment/pam-python-1.0.6-fedora.patch" "https://sourceforge.net/p/pam-python/tickets/_discuss/thread/5dc8cfd5/5839/attachment/pam-python-1.0.6-gcc8.patch") -sha256sums=('a42c278f05866a6a616e8f5dd8349e35769063a229c236e680e566c5a6580334' +sha256sums=('596c8d947422e6d419746784f900a4af931a6fc647e1324913c6ce66a146bf82' '0ef4dda35da14088afb1640266415730a6e0274bea934917beb5aca90318f853' 'acb9d1b5cf7cad73d5524334b7954431bb9b90f960980378c538907e468c34b5' '02dd9a4d8ec921ff9a2408183f290f08102e3f9e0151786ae7220a4d550bfe24') diff --git a/opensuse/howdy.spec b/opensuse/howdy.spec new file mode 100644 index 0000000..e449153 --- /dev/null +++ b/opensuse/howdy.spec @@ -0,0 +1,70 @@ +# +# spec file for package howdy +# +# Copyright (c) 2019 Dmitriy O. Afanasyev, . +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +Name: howdy +Version: 2.5.1 +Release: 0 +Summary: Windows Hello™ style authentication for Linux +License: MIT +Url: https://github.com/boltgolt/%{name} +Group: System/Base +Source: https://github.com/boltgolt/%{name}/archive/v%{version}.tar.gz + +BuildRequires: wget +Requires: python3-opencv +Requires: ffmpeg-4 +Requires: libv4l2-0 +Requires: pam-python +Requires: python3-dlib + +#TODO: pre and post install steps, auto conf /etc/pam.d + +%description +Windows Hello™ style authentication for Linux. Use your built-in IR emitters and camera in combination with face recognition to prove who you are. + +%prep +%setup -q -n v%{version} + +%build +## nothing to build + +%install +mkdir -p %{buildroot}%{_libdir}/security/%{name} +rm -fr src/*~ +cp -pr src/* %{buildroot}%{_libdir}/security/%{name} + +# Facial recognition model preinstalled manually (before packaging), need to delete some files +rm -fr %{buildroot}%{_libdir}/security/%{name}/dlib-data/{Readme.md,install.sh,.gitignore} + +#Add bash completion +mkdir -p %{buildroot}%{_datadir}/bash-completion/completions +install -Dm 644 autocomplete/%{name} %{buildroot}%{_datadir}/bash-completion/completions + +# Create an executable +mkdir -p %{buildroot}%{_bindir} +chmod +x %{buildroot}%{_libdir}/security/%{name}/cli.py +ln -s %{_libdir}/security/%{name}/cli.py %{buildroot}%{_bindir}/%{name} + +%files +%license LICENSE +%doc README.md +%{_bindir}/%{name} +%dir %{_libdir}/security +%{_libdir}/security/%{name} +%{_datadir}/bash-completion/completions/%{name} +%config(noreplace) %{_libdir}/security/%{name}/config.ini + +%changelog +* Sun May 12 2019 Dmitriy O. Afanasyev - 2.5.1 +- Initial packaging diff --git a/src/compare.py b/src/compare.py index 17e1524..8f8dfbf 100644 --- a/src/compare.py +++ b/src/compare.py @@ -88,7 +88,7 @@ config.read(PATH + "/config.ini") # Get all config values needed use_cnn = config.getboolean("core", "use_cnn", fallback=False) -timeout = config.getint("video", "timout", fallback=5) +timeout = config.getint("video", "timeout", fallback=5) dark_threshold = config.getfloat("video", "dark_threshold", fallback=50.0) video_certainty = config.getfloat("video", "certainty", fallback=3.5) / 10 end_report = config.getboolean("debug", "end_report", fallback=False)