Refactor Argeo init
[gpl/argeo-freed.git] / argeo-freed.spec
index 642b524f890ccab3c9aa36bfd7931d8d4f6bbd20..1357e2f65925867b4ebb4ea9a5093714f29344a6 100644 (file)
@@ -1,7 +1,7 @@
 Name:           argeo-freed
-Version:        2.3.0
+Version:        2.3.5
 Release:        1%{?dist}
-Summary:        Enrollment into a FREEd compatible domain
+Summary:        Utilities for a FREEd compatible domain
 
 License:        GPL
 URL:            http://www.argeo.org
@@ -9,8 +9,22 @@ Source0:        %{name}-%{version}.tar.gz
 
 BuildArch:      noarch
 
+# Required for the %{_unitdir} and %{_sysusersdir} macros
+BuildRequires: systemd
+BuildRequires: systemd-rpm-macros
+
 %description
 
+%package cms
+Summary:        FREEd Argeo CMS services
+Requires:       argeo-cms
+
+%package cms-user
+Summary:        FREEd Argeo CMS user services
+Requires:       argeo-cms
+
+%description cms
+
 %package libreswan
 Summary:        FREEd extensions to libreswan
 Requires:       libreswan
@@ -19,7 +33,7 @@ Requires:       libreswan
 
 %package roaming-client
 Summary:        FREEd roaming client
-Requires:       argeo-freed-libreswan unbound
+Requires:       argeo-freed-libreswan
 
 %description roaming-client
 
@@ -35,24 +49,78 @@ Requires:       argeo-freed-libreswan
 %build
 
 %install
+mkdir -p %{buildroot}%{_bindir}
+cp -a ./usr/bin/* %{buildroot}%{_bindir}
+
 mkdir -p %{buildroot}%{_sysconfdir}
-cp -a ./etc/ipsec.d %{buildroot}%{_sysconfdir}
+cp -a ./etc/* %{buildroot}%{_sysconfdir}
+
+mkdir -p %{buildroot}%{_datadir}
+cp -a ./usr/share/* %{buildroot}%{_datadir}
+
+mkdir -p %{buildroot}%{_unitdir}
+cp -a ./usr/lib/systemd/system/* %{buildroot}%{_unitdir}
 
-mkdir -p %{buildroot}%{_libdir}
-cp -a ./usr/lib/systemd %{buildroot}%{_libdir}
+mkdir -p %{buildroot}%{_userunitdir}
+cp -a ./usr/lib/systemd/user/* %{buildroot}%{_userunitdir}
 
 mkdir -p %{buildroot}%{_libexecdir}
 cp -a ./usr/libexec/ipsec %{buildroot}%{_libexecdir}
 
+%files cms
+%attr(755, root, root) %{_bindir}/argeo
+%attr(755, root, root) %{_bindir}/jshc
+
+%{_sysconfdir}/argeo.d
+%{_datadir}/argeo
+%{_unitdir}/argeo@.service
+
+%files cms-user
+%{_sysconfdir}/argeo.user.d
+%{_userunitdir}/argeo@.service
+
 %files libreswan
 %attr(755, root, root) %{_libexecdir}/ipsec
 
 %files roaming-client
 %{_sysconfdir}/ipsec.d/roaming.conf
 
-%{_libdir}/systemd/system/freed-ipsec-roaming@.service
-%{_libdir}/systemd/system/freed-onresume.service
-%{_libdir}/systemd/system/freed-onsuspend.service
+%{_unitdir}/freed-ipsec-roaming@.service
+%{_unitdir}/freed-onresume.service
+%{_unitdir}/freed-onsuspend.service
+
+%post cms
+%systemd_post argeo@.service
+
+%preun cms
+%systemd_preun argeo@.service
+
+%postun cms
+%systemd_postun argeo@.service
+
+%post cms-user
+%systemd_user_post argeo@.service
+
+%preun cms-user
+%systemd_user_preun argeo@.service
+
+%postun cms-user
+%systemd_user_postun argeo@.service
+
+%post roaming-client
+%systemd_post freed-ipsec-roaming@.service
+%systemd_post freed-onresume.service
+%systemd_post freed-onsuspend.service
+
+%preun roaming-client
+%systemd_preun freed-ipsec-roaming@.service
+%systemd_preun freed-onresume.service
+%systemd_preun freed-onsuspend.service
+
+%postun roaming-client
+%systemd_postun freed-ipsec-roaming@.service
+%systemd_postun freed-onresume.service
+%systemd_postun freed-onsuspend.service
 
 %files roaming-host
 %{_sysconfdir}/ipsec.d/roaming-host.conf