Browse Source

Add user/group to spec, shore up systemd scripts

rpm
J. King 3 years ago
parent
commit
d34f06d3c3
  1. 53
      dist/rpm/arsse.spec

53
dist/rpm/arsse.spec

@ -24,14 +24,17 @@ Requires: php-hash
Requires: php-json
# A database option is required; a Web server option is required as well, but what we package is not exhaustive
Requires: arsse-conf-db
# User and Group
Requires: user(arsse) group(arsse)
%systemd_requires
Recommends: arsse-sqlite
Suggests: php-curl
Provides: arsse = %{version}
Obsoletes: arsse < %{version}
BuildRequires: systemd-rpm-macros
BuildRequires: sysuser-tools
%description
The Arsse bridges the gap between multiple existing newsfeed aggregator
@ -96,8 +99,8 @@ Group: Productivity/Networking/Web/Utilities
Requires: php-fpm >= %{minver}
Requires: nginx
Requires: %{name} = %{version}-%{release}
Provides: arsse-nginx-fpm = %{version}
Obsoletes: arsse-nginx-fpm < %{version}
Provides: arsse-config-nginx-fpm = %{version}
Obsoletes: arsse-config-nginx-fpm < %{version}
Supplements: packageand(apache2:arsse)
%description config-nginx-fpm
@ -110,27 +113,39 @@ Group: Productivity/Networking/Web/Utilities
Requires: php-fpm >= %{minver}
Requires: %{name} = %{version}-%{release}
Requires: apache >= 2.4
Provides: arsse-apache-fpm = %{version}
Obsoletes: arsse-apache-fpm < %{version}
Provides: arsse-config-apache-fpm = %{version}
Obsoletes: arsse-config-apache-fpm < %{version}
Supplements: packageand(apache2:arsse)
%description config-apache-fpm
Apache Web server configuration for The Arsse using PHP-FPM. Using Ngix is
generally preferred as it receives more testing.
%package -n system-user-arsse
Summary: System user and group arsse
Group: System/Fhs
%{sysusers_requires}
%description -n system-user-arsse
This package provides the system account and group 'arsse'.
%prep
%setup -q -n %{name}
### Perform adjustments to config files here?
# Patch the executable so it does not use env as the interpreter; RPMLint complains about this
sed -i -se 's/#! \?\/usr\/bin\/env php/#! \/usr\/bin\/php/' dist/arsse
# Remove stray executable
rm -f vendor/nicolus/picofeed/picofeed
%build
# Nothing to do
%sysusers_generate_pre dist/sysuser.conf arsse system-user-arsse.conf
%install
mkdir -p "%{buildroot}%{_datadir}/php/arsse" "%{buildroot}%{_mandir}" "%{buildroot}%{_unitdir}"
mkdir -p "%{buildroot}%{_datadir}/php/arsse" "%{buildroot}%{_mandir}" "%{buildroot}%{_unitdir}" "%{buildroot}%{_sysusersdir}" "%{buildroot}%{_bindir}"
cp -r lib locale sql vendor www CHANGELOG UPGRADING README.md arsse.php "%{buildroot}%{_datadir}/php/arsse"
cp -r dist/man/* "%{buildroot}%{_mandir}"
cp dist/systemd/arsse-fetch.service "%{buildroot}%{_unitdir}/arsse.service"
install -Dm755 dist/arsse "%{buildroot}%{_bindir}/arsse"
install -m 755 dist/arsse "%{buildroot}%{_bindir}/arsse"
install -m 644 dist/sysuser.conf %{buildroot}%{_sysusersdir}/system-user-arsse.conf
%files
%dir %{_datadir}/php
@ -140,3 +155,21 @@ install -Dm755 dist/arsse "%{buildroot}%{_bindir}/arsse"
%{_mandir}/man*/arsse.*
%{_bindir}/arsse
%{_unitdir}/arsse.service
%files -n system-user-arsse
%{_sysusersdir}/system-user-arsse.conf
%pre
%service_add_pre arsse.service demo1.service
%post
%service_add_post arsse.service demo1.service
%preun
%service_del_preun arsse.service
%postun
%service_del_postun arsse.service
%service_del_postun_without_restart arsse.service
%pre -n system-user-arsse -f arsse.pre
Loading…
Cancel
Save