Summary: A login page for websites that provides a JSON Web Token
Name: weblogin
Version: VERSION
Release: RELEASE
License: MIT
URL: https://git.hrhr.dev/weblogin/about
Distribution: Fedora 38
Vendor: Holden Rohrer
Packager: Holden Rohrer
BuildArch: noarch
Requires: python3
Requires: python3-flask
Requires: python3-passlib
Requires: python3-jwt+crypto
Source: weblogin.tar.gz
%define username weblogin
%define installdir /usr/lib/%{username}
%define sharedir /usr/share/%{username}
%define vardir /var/lib/%{username}
%description
This is a small flask webserver that returns a JSON web token for form
requests at /auth, submitted by a user of the /login.html page.
A GET request to /logout will remove the JSON web token cookie (the
cookie auth is used for storage).
%global debug_package %{nil}
%pre
getent group %{username} >/dev/null || groupadd -r %{username}
getent passwd %{username} >/dev/null || useradd -r -s /sbin/nologin\
-g %{username} -c "weblogin server" -d %{installdir} -M %{username}
%prep
%autosetup
%install
mkdir -p %{buildroot}%{installdir} %{buildroot}%{sharedir} %{buildroot}%{vardir}
ls
cp -t %{buildroot}%{installdir} login.py
cp -t %{buildroot}%{sharedir} login.html
%clean
rm -rf %{buildroot}
%files
%doc README
%license LICENSE
%defattr(644, %{username}, %{username}, 755)
%attr(755, weblogin, weblogin) %{installdir}/login.py
%{sharedir}/login.html
%attr(700, weblogin, weblogin) %{vardir}