Merge branch 'sandino/7.3.1-fc36-el8' into sandino/7.3.1-fc36-el9
This commit is contained in:
commit
a3323b501a
1 changed files with 248 additions and 0 deletions
248
CentOS-8/SPECS/coolwsd.spec
Normal file
248
CentOS-8/SPECS/coolwsd.spec
Normal file
|
@ -0,0 +1,248 @@
|
|||
# spec file for package coolwsd
|
||||
#
|
||||
# Copyright (c) 2015 Collabora
|
||||
#
|
||||
# This file is subject to the terms of the Mozilla Public
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
%if 0%{?name_suffix:1}
|
||||
Name: coolwsd%{name_suffix}
|
||||
%else
|
||||
Name: coolwsd
|
||||
%endif
|
||||
Version: 22.05.5.4
|
||||
Release: 1%{?dist}
|
||||
Vendor: %{vendor}
|
||||
Summary: Collabora Online WebSocket Daemon
|
||||
License: EULA
|
||||
Source0: coolwsd-22.05.5.4.tar.gz
|
||||
|
||||
BuildRequires: cppunit-devel
|
||||
BuildRequires: fontconfig
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: libcap-devel
|
||||
BuildRequires: libpng-devel
|
||||
BuildRequires: m4
|
||||
BuildRequires: make
|
||||
BuildRequires: nodejs
|
||||
BuildRequires: npm
|
||||
BuildRequires: pam-devel
|
||||
BuildRequires: poco-devel
|
||||
BuildRequires: python3
|
||||
BuildRequires: systemd-rpm-macros
|
||||
|
||||
# Red Hat and CentOS
|
||||
%if 0%{?rhel} == 7
|
||||
BuildRequires: libpcap kernel-headers python36-polib python36-lxml
|
||||
%endif
|
||||
|
||||
%if 0%{?rhel} == 8
|
||||
BuildRequires: libpcap kernel-headers python3-polib python3-lxml
|
||||
%endif
|
||||
|
||||
# openSUSE Leap 15.x, SLES12, SLES15
|
||||
%if 0%{?suse_version}
|
||||
BuildRequires: libcap-progs linux-glibc-devel systemd-rpm-macros python3-polib python3-lxml
|
||||
%endif
|
||||
|
||||
Requires: libreoffice
|
||||
Requires: libreoffice-calc
|
||||
Requires: libreoffice-core
|
||||
Requires: libreoffice-draw
|
||||
Requires: libreoffice-graphicfilter
|
||||
Requires: libreoffice-impress
|
||||
Requires: libreoffice-langpack-en
|
||||
Requires: libreoffice-math
|
||||
Requires: libreoffice-pdfimport
|
||||
Requires: libreoffice-ure
|
||||
Requires: libreoffice-writer
|
||||
|
||||
Requires(post): coreutils grep sed cpio
|
||||
|
||||
%if 0%{?rhel}
|
||||
# coolwsd dependencies
|
||||
Requires: systemd expat keyutils-libs krb5-libs libattr libcap libcom_err libgcc libpng libselinux openssh-clients openssl-libs pcre xz-libs zlib
|
||||
# Collabora Office dependencies (unfortunately Collabora Office RPM packages do not have real dependencies)
|
||||
Requires: expat fontconfig freetype libuuid bzip2-libs
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version}
|
||||
# coolwsd dependencies
|
||||
Requires(post): libcap-progs
|
||||
Requires: systemd libopenssl1_0_0 libpcre1 libz1 libcap2 libpng12-0 %{fillup_prereq}
|
||||
# Collabora Office dependencies (unfortunately Collabora Office RPM packages do not have real dependencies)
|
||||
# cd /usr/lib64/libreoffice/program ; for i in soffice.bin *.so ;do ldd $i | grep '=>' | sed -e "s/^.*=> //" -e "s/ [(].*$//"; done | sort | uniq | xargs rpm -qf --qf="%{NAME}\n" | sort | uniq | grep -v libreoffice
|
||||
Requires: fontconfig libbz2-1 libexpat1 libfreetype6 libpng16-16 libuuid1 openssh
|
||||
%endif
|
||||
|
||||
%description
|
||||
|
||||
%if 0%{?suse_version}
|
||||
%debug_package
|
||||
%endif
|
||||
%prep
|
||||
%setup -n coolwsd-22.05.5.4
|
||||
|
||||
%build
|
||||
# usando versión marrana (incluyendo una librería embebida)
|
||||
%configure \
|
||||
--enable-silent-rules \
|
||||
--with-lokit-path=bundled/include \
|
||||
--with-lo-path=/usr/lib64/libreoffice \
|
||||
--disable-setcap \
|
||||
%if 0%{?config_options:1}
|
||||
%{config_options}
|
||||
%endif
|
||||
|
||||
env BUILDING_FROM_RPMBUILD=yes make %{?_smp_mflags}
|
||||
|
||||
%check
|
||||
#env BUILDING_FROM_RPMBUILD=yes make check
|
||||
|
||||
%install
|
||||
env BUILDING_FROM_RPMBUILD=yes make install DESTDIR=%{buildroot}
|
||||
install -d -m 755 %{buildroot}/var/adm/fillup-templates
|
||||
%if 0%{?rhel}
|
||||
install -D -m 444 coolwsd.service %{buildroot}%{_unitdir}/coolwsd.service
|
||||
# systemd in RHEL 7 does not understand these options
|
||||
%if 0%{?rhel} <= 7
|
||||
sed -i "/^ReadWritePaths/d;/^ProtectControlGroups/d;/^ProtectSystem/d" %{buildroot}%{_unitdir}/coolwsd.service
|
||||
%endif
|
||||
install -D -m 644 sysconfig.coolwsd %{buildroot}/etc/sysconfig/coolwsd
|
||||
install -d -m 755 %{buildroot}/etc/httpd/conf
|
||||
install -D -m 755 etc/apache2/coolwsd.conf %{buildroot}/etc/httpd/conf
|
||||
rm %{buildroot}/etc/apache2/conf-available/coolwsd.conf
|
||||
%endif
|
||||
%if 0%{?suse_version}
|
||||
install -D -m 444 coolwsd.service %{buildroot}%{_unitdir}/coolwsd.service
|
||||
install -D -m 644 sysconfig.coolwsd %{buildroot}/var/adm/fillup-templates
|
||||
%endif
|
||||
mkdir -p %{buildroot}/etc/pam.d
|
||||
echo "auth required pam_unix.so" > %{buildroot}/etc/pam.d/coolwsd
|
||||
echo "account required pam_unix.so" >> %{buildroot}/etc/pam.d/coolwsd
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
/usr/bin/coolwsd
|
||||
/usr/bin/loolwsd
|
||||
/usr/bin/coolwsd-systemplate-setup
|
||||
/usr/bin/loolwsd-systemplate-setup
|
||||
/usr/bin/coolwsd-generate-proof-key
|
||||
/usr/bin/coolforkit
|
||||
/usr/bin/coolconvert
|
||||
/usr/bin/coolconfig
|
||||
/usr/bin/loolconfig
|
||||
/usr/bin/coolmount
|
||||
/usr/share/coolwsd/discovery.xml
|
||||
/usr/share/coolwsd/favicon.ico
|
||||
/usr/share/coolwsd/browser
|
||||
/usr/share/doc/coolwsd/README
|
||||
/usr/share/doc/coolwsd/README.vars
|
||||
/usr/share/doc/coolwsd/metrics.txt
|
||||
/usr/share/doc/coolwsd/protocol.txt
|
||||
/usr/share/doc/coolwsd/reference.md
|
||||
/usr/share/man/man1/coolwsd.1.gz
|
||||
/usr/share/man/man1/coolforkit.1.gz
|
||||
/usr/share/man/man1/coolconvert.1.gz
|
||||
/usr/share/man/man1/coolconfig.1.gz
|
||||
/usr/share/man/man1/coolwsd-systemplate-setup.1.gz
|
||||
/usr/share/man/man1/coolwsd-generate-proof-key.1.gz
|
||||
/usr/share/man/man1/coolmount.1.gz
|
||||
%{_unitdir}/coolwsd.service
|
||||
%if 0%{?rhel}
|
||||
%config(noreplace) /etc/sysconfig/coolwsd
|
||||
%endif
|
||||
%if 0%{?suse_version}
|
||||
/var/adm/fillup-templates/sysconfig.coolwsd
|
||||
%endif
|
||||
|
||||
%config(noreplace) /etc/pam.d/coolwsd
|
||||
%config(noreplace) %attr(640, cool, root) /etc/coolwsd/coolwsd.xml
|
||||
%config /etc/coolwsd/coolkitconfig.xcu
|
||||
%config(noreplace) /etc/nginx/snippets/coolwsd.conf
|
||||
%if 0%{?suse_version} > 0
|
||||
%config(noreplace) /etc/apache2/conf-available/coolwsd.conf
|
||||
%endif
|
||||
%if 0%{?rhel} > 0
|
||||
%config(noreplace) /etc/httpd/conf/coolwsd.conf
|
||||
%endif
|
||||
|
||||
%doc README.md
|
||||
|
||||
%pre
|
||||
%if 0%{?suse_version}
|
||||
%service_add_pre coolwsd.service
|
||||
%endif
|
||||
|
||||
getent group cool >/dev/null || groupadd -r cool
|
||||
getent passwd cool >/dev/null || useradd -g cool -r cool -d /opt/cool -s /bin/bash
|
||||
|
||||
# for filename in `find /opt/cool/systemplate -type f`;do stripped=$(echo -ne $filename | sed -e "s|/opt/cool/systemplate||");rpm -qf --qf="%{NAME}\n" $stripped;done | grep -v devel | grep -v 32bit | grep -v -- -fonts | sort | uniq
|
||||
%triggerin -- expat fontconfig freetype freetype2 glibc glibc-locale kernel keyutils-libs krb5 krb5-libs libbz2-1 libcap libcap-ng libcap2 libexpat1 libfreetype6 libgcc libgcc_s1 libgcrypt libiscsi libpng libpng12 libpng12-0 libpng15-15 libpng16-16 libstdc++ libstdc++6 libuuid libuuid1 libz1 lsb nss-mdns nss-softokn-freebl pcre sssd sssd-client systemd-libs timezone tzdata zlib
|
||||
|
||||
echo -ne "Triggered update of coolwsd systemplate..."
|
||||
|
||||
%if 0%{?rhel} >= 7 || 0%{?suse_version} >= 1300
|
||||
systemctl is-active -q coolwsd && COOLWSD_IS_ACTIVE=1 || COOLWSD_IS_ACTIVE=0
|
||||
if [ $COOLWSD_IS_ACTIVE == "1" ]; then systemctl stop coolwsd; fi
|
||||
%endif
|
||||
|
||||
# Figure out where LO is installed, let's hope it is not a mount point
|
||||
# Create a directory for coolwsd on the same file system
|
||||
loroot=/usr/lib64/libreoffice
|
||||
coolparent=`cd ${loroot} && cd .. && /bin/pwd`
|
||||
|
||||
rm -rf ${coolparent}/cool
|
||||
mkdir -p ${coolparent}/cool/child-roots
|
||||
chown cool:cool ${coolparent}/cool
|
||||
chown cool:cool ${coolparent}/cool/child-roots
|
||||
|
||||
fc-cache ${loroot}/share/fonts/truetype
|
||||
coolwsd-systemplate-setup ${coolparent}/cool/systemplate ${loroot} >/dev/null 2>&1
|
||||
coolwsd-generate-proof-key >/dev/null 2>&1
|
||||
|
||||
%if 0%{?rhel} || 0%{?suse_version}
|
||||
if [ $COOLWSD_IS_ACTIVE == "1" ]; then systemctl start coolwsd; fi
|
||||
%endif
|
||||
|
||||
echo " Done."
|
||||
|
||||
%post
|
||||
setcap cap_fowner,cap_chown,cap_mknod,cap_sys_chroot=ep /usr/bin/coolforkit
|
||||
setcap cap_sys_admin=ep /usr/bin/coolmount
|
||||
if [ -f /etc/loolwsd/loolwsd.xml ]; then /usr/bin/coolconfig migrateconfig --write; fi
|
||||
|
||||
%if 0%{?rhel} >= 7
|
||||
%systemd_post coolwsd.service
|
||||
%else
|
||||
%if 0%{?suse_version}
|
||||
%service_add_post coolwsd.service
|
||||
%{fillup_only -n coolwsd}
|
||||
%endif
|
||||
%endif
|
||||
|
||||
|
||||
%preun
|
||||
%if 0%{?rhel} >= 7
|
||||
%systemd_preun coolwsd.service
|
||||
%else
|
||||
%if 0%{?suse_version}
|
||||
%service_del_preun coolwsd.service
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%postun
|
||||
%if 0%{?rhel} >= 7
|
||||
%systemd_postun coolwsd.service
|
||||
%else
|
||||
%if 0%{?suse_version}
|
||||
%service_del_postun coolwsd.service
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Mon Aug 03 2015 Mihai Varga
|
||||
- added the cronjob
|
||||
* Tue May 19 2015 Tor Lillqvist
|
||||
- Initial RPM release
|
Loading…
Reference in a new issue