diff options
Diffstat (limited to 'weblogin.spec.in')
-rw-r--r-- | weblogin.spec.in | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/weblogin.spec.in b/weblogin.spec.in new file mode 100644 index 0000000..ac63130 --- /dev/null +++ b/weblogin.spec.in @@ -0,0 +1,54 @@ +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 <hr@hrhr.dev> +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(600, weblogin, weblogin) %{vardir} |