%define debug_package %{nil} Name: arangodb3 Version: 3.9.2 Release: 1 Summary: The open-source, multi-model NoSQL database License: Apache-2.0 URL: http://www.arangodb.com Source: arangodb-%{version}.tar.gz ExclusiveArch: x86_64 BuildRequires: cmake BuildRequires: gcc-c++ >= 10.0 BuildRequires: libatomic BuildRequires: git BuildRequires: jemalloc-devel BuildRequires: openssl-devel BuildRequires: python3 BuildRequires: systemd %{?systemd_requires} %package client Summary: ArangoDB shell as stand-alone package %description ArangoDB is a durable, reliable, transactional multi-model database. Its key-features are: joins, transaction, and flexible data modelling. The ArangoDB consists of a server, a separate shell, which allows you to administrate the server, and a set of client APIs for various languages. It is written in C/C++. %description client The ArangoDB shell as stand-alone program. It also contains the utility programs: arangobench (benchmark), arangorestore & arangodump (backup), arangoimport (import). %prep %autosetup -n arangodb-%{version} -p1 mkdir -p %{_builddir}/arangodb-%{version}/build %check %build cd build %__cmake .. %make_build %install cd build %make_install # /usr/usr -> /usr mkdir -p %{buildroot}%{_unitdir} mv %{buildroot}/usr%{_unitdir}/%{name}.service %{buildroot}%{_unitdir}/%{name}.service rm -rf %{buildroot}/usr/usr # /usr/var -> /var mkdir -p %{buildroot}%{_localstatedir}/lib mkdir -p %{buildroot}%{_localstatedir}/log mv %{buildroot}/usr%{_localstatedir}/lib/* %{buildroot}%{_localstatedir}/lib mv %{buildroot}/usr%{_localstatedir}/log/* %{buildroot}%{_localstatedir}/log rm -rf %{buildroot}/usr%{_localstatedir} # /usr/etc -> /etc mkdir -p %{buildroot}%{_sysconfdir}/%{name} mv %{buildroot}/usr%{_sysconfdir}/%{name}/* %{buildroot}%{_sysconfdir}/%{name} rm -rf %{buildroot}/usr%{_sysconfdir}/%{name} # remove licences and READMEs in /usr/share/doc/arangodb3, use %doc and %license instead. rm -rf %{buildroot}%{_datadir}/doc/%{name} mkdir -p %{buildroot}%{_localstatedir}/run/%{name} %files %defattr(-,root,root,0755) %doc README %doc README.md %license LICENSE %license LICENSES-OTHER-COMPONENTS.md %attr(0755,arangodb,arangodb) %{_localstatedir}/lib/%{name} %attr(0755,arangodb,arangodb) %{_localstatedir}/lib/%{name}-apps %attr(0755,arangodb,arangodb) %{_localstatedir}/log/%{name} %ghost %attr(0755,arangodb,arangodb) %{_localstatedir}/run/%{name} %config(noreplace) %attr(-,arangodb,arangodb) %{_sysconfdir}/%{name} %{_bindir}/* %{_sbindir}/* %{_mandir}/*/* %{_datadir}/%{name} %{_unitdir}/%{name}.service %{_sysconfdir}/logrotate.d/%{name} %files client %defattr(-,root,root,0755) %config(noreplace) %attr(-,arangodb,arangodb) %{_sysconfdir}/%{name}/arangosh.conf %config(noreplace) %attr(-,arangodb,arangodb) %{_sysconfdir}/%{name}/arangoimport.conf %config(noreplace) %attr(-,arangodb,arangodb) %{_sysconfdir}/%{name}/arangodump.conf %config(noreplace) %attr(-,arangodb,arangodb) %{_sysconfdir}/%{name}/arangorestore.conf %config(noreplace) %attr(-,arangodb,arangodb) %{_sysconfdir}/%{name}/arangobench.conf %config(noreplace) %attr(-,arangodb,arangodb) %{_sysconfdir}/%{name}/foxx-manager.conf %{_bindir}/arangosh %{_bindir}/arangoimport %{_bindir}/arangodump %{_bindir}/arangorestore %{_bindir}/arangobench %{_bindir}/foxx-manager %{_mandir}/*/arangosh* %{_mandir}/*/arangorestore* %{_mandir}/*/arangobench* %{_mandir}/*/arangodump* %{_mandir}/*/arangoimport* %{_datadir}/%{name}/js/common %{_datadir}/%{name}/js/client %{_datadir}/%{name}/js/node %pre # create arangodb group only if it doesn't already exist if ! getent group arangodb >/dev/null 2>&1; then /usr/sbin/groupadd -r arangodb fi # create arangodb user only if it doesn't already exist if ! getent passwd arangodb >/dev/null 2>&1; then /usr/sbin/useradd -r -g arangodb --home %{_localstatedir}/arangodb arangodb /usr/sbin/usermod -c "Arango Server" arangodb fi %post %systemd_post %{name}.service %preun %systemd_preun %{name}.service %postun exit 0 %changelog * Thu Jul 28 2022 algorithmofdish - 3.9.2-1 - Package init