Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37435661
en ru br
Репозитории ALT
S:3.0.0-alt7.beta1.gitc5b1766
www.altlinux.org/Changes

Группа :: Система/Ядро и оборудование
Пакет: howdy

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

Name: howdy
Version: 3.0.0
Release: alt6.beta1.git943f1e1
Summary: Windows Hello style authentication

License: MIT
Group: System/Kernel and hardware
Url: https://github.com/boltgolt/howdy

# commit 943f1e14e2c05159c22fb5176db377c0c1610bba

Source: %url/archive/%version/%name-%version.tar.gz
Source1: https://github.com/davisking/dlib-models/raw/master/dlib_face_recognition_resnet_model_v1.dat.bz2
Source2: https://github.com/davisking/dlib-models/raw/master/mmod_human_face_detector.dat.bz2
Source3: https://github.com/davisking/dlib-models/raw/master/shape_predictor_5_face_landmarks.dat.bz2
Patch: howdy-3.0.0-alt-fix-the-dublicates-in-the-man.patch
Patch1: howdy-3.0.0-alt-fix-howdy-gtk-startup.patch
Patch2: howdy-pull-673.patch
Patch3: howdy-pull-692-1.patch
Patch4: howdy-pull-692-2.patch
Patch5: howdy-pull-692-3.patch
Patch6: howdy-pull-736.patch

BuildRequires: gcc-c++ rpm-build-python3 meson rpm-build-ninja cmake gettext-tools
BuildRequires: libinih-devel libevdev-devel libpam0-devel
Requires: python3-module-opencv python3-module-h5py python3-module-PAM python3-module-numpy python3-module-elevate python3-base python3-module-pygobject3
%ifnarch ppc64le
Requires: python3-module-dlib
%endif

%add_python3_req_skip i18n

%description
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.

%package pam
Summary: PAM module for howdy
Group: System/Base

%description pam
The package provides PAM module for %name.

%package gtk
Summary: Windows Hello style authentication - gtk interface
Group: System/Kernel and hardware
BuildArch: noarch

%description gtk
The package provides gtk interface for %name.

%prep
%setup
%patch -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
cp -a %SOURCE1 %SOURCE2 %SOURCE3 .
bzip2 -dv *.bz2
sed -i 's|/lib/security|/%_lib/security|' \
 howdy/src/pam/meson.build \
 howdy/src/autocomplete/howdy \
 howdy/src/pam/main.cc \
 howdy-gtk/src/tab_video.py \
 howdy-gtk/src/window.py \
 howdy/src/pam-config/howdy
sed -i 's|./main.glade|/usr/libexec/howdy-gtk/main.glade|' \
 howdy-gtk/src/window.py
sed -i 's|./onboarding.glade|/usr/libexec/howdy-gtk/onboarding.glade|' \
 howdy-gtk/src/onboarding.py
sed -i 's|../howdy-gtk/src/init.py|/usr/libexec/howdy-gtk/src/init.py|' \
 howdy/src/compare.py
#sed -i 's|/../config.ini|/%_lib/security/howdy/config.ini|' \
#  howdy/src/cli/*.py
#sed -i 's|/../dlib-data/|/%_lib/security/howdy/dlib-data/|' \
#  howdy/src/cli/add.py \
#  howdy/src/cli/test.py
#sed -i 's|/../|/%_lib/security/howdy/|' \
#  howdy/src/cli/*.py
sed -i 's|/usr/bin/env python3|%__python3|' \
 howdy-gtk/src/init.py \
 howdy/src/cli.py
sed -i 's|/bin/nano|%_bindir/nano|' \
 howdy/src/cli/config.py
sed -i 's|/usr/lib/howdy-gtk/logo.png|/usr/libexec/howdy-gtk/logo.png|' \
 howdy-gtk/src/authsticky.py

%build
pushd howdy/src/pam
%meson
%meson_build
popd

%install
pushd howdy/src/pam
%meson_install
popd

mkdir -p %buildroot/%_lib/security/howdy
cp -a howdy/src/* %buildroot/%_lib/security/howdy
mkdir -p %buildroot/usr/libexec/howdy-gtk
cp -a howdy-gtk/src/* %buildroot/usr/libexec/howdy-gtk
cp -a dlib_face_recognition_resnet_model_v1.dat %buildroot/%_lib/security/howdy/dlib-data/
cp -a mmod_human_face_detector.dat %buildroot/%_lib/security/howdy/dlib-data/
cp -a shape_predictor_5_face_landmarks.dat %buildroot/%_lib/security/howdy/dlib-data/
mkdir -p %buildroot/usr/bin
ln -s /%_lib/security/howdy/cli.py %buildroot%_bindir/howdy
ln -s /usr/libexec/howdy-gtk/init.py %buildroot%_bindir/howdy-gtk
chmod +x %buildroot/%_lib/security/howdy/cli.py
mkdir -p %buildroot%_datadir/bash-completion/completions
cp -a howdy/src/autocomplete/howdy %buildroot%_datadir/bash-completion/completions/howdy
mkdir -p %buildroot%_man1dir
cp -a howdy/debian/howdy.1 %buildroot%_man1dir/
# already built
rm -rf %buildroot/%_lib/security/howdy/pam
rm -rf %buildroot/%_lib/security/howdy/dlib-data/{Readme.md,install.sh,.gitignore}

%files
%doc LICENSE README.md
%_bindir/howdy
%_datadir/bash-completion/completions/howdy
%config(noreplace) /%_lib/security/howdy/config.ini
/%_lib/security/howdy/
%_man1dir/howdy*

%files pam
/%_lib/security/pam_howdy.so

%files gtk
%_bindir/howdy-gtk
/usr/libexec/howdy-gtk/

%changelog

Полный changelog можно просмотреть здесь

 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin