Files
netoik-git/netoik-git.spec
samuel e19760d37e
Some checks failed
Continuous Delivery / build_n_upload (push) Has been cancelled
fix: typo in spec
2026-03-01 17:03:10 +01:00

85 lines
2.4 KiB
RPMSpec

%define debug_package %{nil}
Name: %(make name)
Version: %(make version)
Release: %(make release)
Summary: Netoik Reverse Proxy
License: MIT
URL: https://git.netoik.io/samuel/%(make name)
Source0: %{name}-%{version}-%{release}.tar.gz
Buildarch: %(make arch)
BuildRequires: make
Requires: netoik-rp netoik-db netoik-cache git
%description
Install the Git UI server called Gitea.
%prep
%autosetup -v
%install
%make_install
%post
# Download gitea bin and verify gpg signature
wget --quiet --output-document %{_tmppath}/gitea "$GITEA_BIN_URL"
wget --quiet --output-document %{_tmppath}/gitea.asc "$GITEA_ASC_URL"
gpg --keyserver "$GITEA_GPG_KEYSERVER" --recv "$GITEA_GPG_RECV"
gpg --verify %{_tmppath}/gitea.asc %{_tmppath}/gitea
mv %{_tmppath}/gitea %{_sbindir}
chmod 755 %{_sbindir}/gitea
rm %{_tmppath}/gitea.asc
# Generate internal token and secret key
INTERNAL_TOKEN="$(gitea generate secret INTERNAL_TOKEN)"
SECRET_KEY="$(gitea generate secret SECRET_KEY)"
envsubst < %{_sysconfdir}/gitea/app.ini > %{_sysconfdir}/gitea/app.ini.new
mv %{_sysconfdir}/gitea/app.ini.new %{_sysconfdir}/gitea/app.ini
# Create gitea user
useradd --system --create-home --base-dir %{_sharedstatedir} gitea
runuser --user gitea -- mkdir --parents %{_sharedstatedir}/gitea/{data,custom}
chgrp gitea %{_sysconfdir}/gitea/app.ini
# Start gitea and nginx services
systemctl daemon-reload
systemctl reenable gitea.service
systemctl restart gitea.service
systemctl restart nginx.service
# Create actrunners
for i in $(seq 1 $GITEA_ACT_RUNNERS); do
if ! id "actrunner$i"; then
useradd --system --create-home --base-dir %{_sharedstatedir}/actrunners "actrunner$i"
systemctl daemon-reload
systemctl reenable "actrunner@$i"
systemctl restart "actrunner@$i"
fi
done
%preun
# Backup gitea data in case of problem
runuser --user gitea -- gitea dump --config %{_sysconfdir}/gitea/app.ini --tempdir %{_tmppath}
%postun
# Remove gitea user after uninstall
#if [ %1 == 0 ]; then
# systemctl stop gitea.service
# userdel --force --remove gitea
#fi
%files
%attr(644, root, root) %{_sysconfdir}/nginx/conf.d/git.netoik.io.conf
%dir %attr(755, root, root) %{_sysconfdir}/gitea
%attr(640, root, -) %{_sysconfdir}/gitea/app.ini
%attr(644, root, root) %{_unitdir}/gitea.service
%attr(644, root, root) %{_unitdir}/actrunner@.service
%dir %attr(755, root, root) %{_sharedstatedir}/actrunners
%changelog
%autochangelog