summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndras Timar <andras.timar@collabora.com>2019-12-09 18:09:48 +0100
committerAndras Timar <andras.timar@collabora.com>2020-02-06 22:59:19 +0100
commitb889fbbffe6b502f9c8568c58c0bb06d05b654b5 (patch)
tree177743688b3bf97283da22a13013ae07ad8c5a5f
parent6bc3cd5c7f56665abcf0d385bf438b4a5fc38cde (diff)
Bump package version to 4.2.0-4 and update deb/rpm package filescp-4.2.0-4CODE-4.2.0-4distro/collabora/code-4.2.0-4
Change-Id: I935425f644f373acdd4bf8d073ec8be3f29313b8
-rw-r--r--configure.ac2
-rw-r--r--debian/changelog28
-rw-r--r--debian/control18
-rw-r--r--debian/rules4
-rw-r--r--loolwsd.spec.in125
5 files changed, 108 insertions, 69 deletions
diff --git a/configure.ac b/configure.ac
index e6448cdc5..a74884c06 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3,7 +3,7 @@
AC_PREREQ([2.63])
-AC_INIT([loolwsd], [master], [libreoffice@lists.freedesktop.org])
+AC_INIT([loolwsd], [4.2.0], [libreoffice@lists.freedesktop.org])
LT_INIT([shared, disable-static, dlopen])
AM_INIT_AUTOMAKE([1.10 subdir-objects tar-pax -Wno-portability])
diff --git a/debian/changelog b/debian/changelog
index 56cbc5563..1f9ce94ac 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,25 +1,23 @@
-loolwsd (1.8.2-1) unstable; urgency=medium
+loolwsd (4.2.0-4) unstable; urgency=medium
- * Fix crash in Impress.
+ * https://cgit.freedesktop.org/libreoffice/online/log/?h=CODE-4.2.0-4
- -- Jan Holesovsky <kendy@collabora.com> Thu, 11 Aug 2016 16:46:00 +0100
+ -- Andras Timar <andras.timar@collabora.com> Tue, 28 Jan 2020 18:58:00 +0100
-loolwsd (1.8.0-1) unstable; urgency=medium
+loolwsd (4.2.0-3) unstable; urgency=medium
- [ Tor Lillqvist ]
- * Back to packaging this for Debian.
+ * https://cgit.freedesktop.org/libreoffice/online/log/?h=CODE-4.2.0-3
- [ Jan Holesovsky ]
- * Update to match Collabora Office 5.1
+ -- Andras Timar <andras.timar@collabora.com> Thu, 09 Jan 2020 22:12:00 +0100
- -- Jan Holesovsky <kendy@collabora.com> Fri, 05 Aug 2016 16:51:54 +0100
+loolwsd (4.2.0-2) unstable; urgency=medium
-loolwsd (1.0.0-1) unstable; urgency=low
+ * https://cgit.freedesktop.org/libreoffice/online/log/?h=CODE-4.2.0-2
- * Initial release
+ -- Andras Timar <andras.timar@collabora.com> Fri, 20 Dec 2019 13:27:00 +0100
- * Local Variables:
- * Mode: fundamental
- * End:
+loolwsd (4.2.0-1) unstable; urgency=medium
- -- Tor Lillqvist <tml@collabora.com> Fri, 15 May 2015 11:10:20 +0300
+ * https://cgit.freedesktop.org/libreoffice/online/log/?h=CODE-4.2.0-1
+
+ -- Andras Timar <andras.timar@collabora.com> Tue, 10 Dec 2019 20:47:00 +0100
diff --git a/debian/control b/debian/control
index 532367872..a4dc03ff6 100644
--- a/debian/control
+++ b/debian/control
@@ -2,13 +2,27 @@ Source: loolwsd
Section: web
Priority: optional
Maintainer: Andras Timar <andras.timar@collabora.com>
-Build-Depends: debhelper (>= 9), dh-systemd (>= 1.3), libcap-dev, libcap2-bin, libpcre3-dev, libpng-dev, libpoco-dev (>= 1.7.5), linux-libc-dev, nodejs, python-polib, python-lxml, python3-polib, python3-lxml, fontconfig, libpam-dev, libcppunit-dev, pkg-config, devscripts, m4
+Build-Depends: debhelper (>= 9), dh-systemd (>= 1.3), libcap-dev, libcap2-bin, libpcre3-dev, libpng-dev, libpoco-dev (>= 1.7.5), linux-libc-dev, nodejs, python3-polib, python3-lxml, fontconfig, libpam-dev, libcppunit-dev, pkg-config, devscripts, m4
Standards-Version: 3.9.7
Package: loolwsd
Section: web
Architecture: any
-Depends: ${shlibs:Depends}, ${misc:Depends}, adduser, fontconfig, libsm6, libssl1.0.0, libodbc1, libxinerama1, libxrender1, libcairo2, libgl1-mesa-glx, libcups2, libdbus-glib-1-2, cpio, libcap2-bin, ${lo:Depends}
+Depends: ${shlibs:Depends}, ${misc:Depends},
+ locales-all, adduser, expat, fontconfig, cpio, libcap2-bin,
+ collaboraofficebasis6.2-calc,
+ collaboraofficebasis6.2-core,
+ collaboraofficebasis6.2-graphicfilter,
+ collaboraofficebasis6.2-images,
+ collaboraofficebasis6.2-impress,
+ collaboraofficebasis6.2-ooofonts,
+ collaboraofficebasis6.2-writer,
+ collaboraoffice6.2,
+ collaboraoffice6.2-ure,
+ collaboraofficebasis6.2-en-us,
+ collaboraofficebasis6.2-draw,
+ collaboraofficebasis6.2-extension-pdf-import,
+ collaboraofficebasis6.2-ooolinguistic
Description: LibreOffice Online WebSocket Daemon
LOOLWSD is a daemon that talks to web browser clients and provides LibreOffice
services.
diff --git a/debian/rules b/debian/rules
index d675675c0..feb980c95 100644
--- a/debian/rules
+++ b/debian/rules
@@ -19,7 +19,3 @@ override_dh_auto_test:
override_dh_installinit:
# no init.d scripts here, assume systemd
-
-override_dh_gencontrol:
- # put package names of LibreOffice here
- # dh_gencontrol -- -Vlo:Depends=""
diff --git a/loolwsd.spec.in b/loolwsd.spec.in
index d78760e82..5b2147216 100644
--- a/loolwsd.spec.in
+++ b/loolwsd.spec.in
@@ -12,39 +12,45 @@ Name: loolwsd%{name_suffix}
Name: loolwsd
%endif
Version: @PACKAGE_VERSION@
-Release: 1%{?dist}
+Release: 4%{?dist}
Vendor: %{vendor}
Summary: LibreOffice Online WebSocket Daemon
License: MPL
Source0: loolwsd-@PACKAGE_VERSION@.tar.gz
-BuildRequires: libcap-devel libpng-devel poco-devel >= 1.7.5 m4
-%if 0%{?fedora} || 0%{?rhel} >= 7
-BuildRequires: libpcap kernel-headers
-%else
-%if 0%{?suse_version}
-BuildRequires: libcap-progs linux-glibc-devel systemd-rpm-macros
+BuildRequires: libcap-devel libpng-devel pam-devel gcc-c++ cppunit-devel pam-devel fontconfig make
+
+# 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: %{lo_rpm_list}
-Requires: systemd
+Requires: collaboraoffice6.2 collaboraoffice6.2-ure collaboraofficebasis6.2-core collaboraofficebasis6.2-writer collaboraofficebasis6.2-impress collaboraofficebasis6.2-graphicfilter collaboraofficebasis6.2-en-US collaboraofficebasis6.2-calc collaboraofficebasis6.2-ooofonts collaboraofficebasis6.2-images collaboraofficebasis6.2-draw collaboraofficebasis6.2-extension-pdf-import collaboraofficebasis6.2-ooolinguistic
Requires(post): coreutils grep sed
-%if 0%{?fedora} || 0%{?rhel} >= 7
+%if 0%{?rhel}
# loolwsd dependencies
-Requires: expat keyutils-libs krb5-libs libattr libcap libcom_err libgcc libpng libselinux openssl-libs pcre xz-libs zlib
-Requires: poco-crypto >= 1.7.5 poco-foundation >= 1.7.5 poco-json >= 1.7.5 poco-net >= 1.7.5 poco-netssl >= 1.7.5 poco-util >= 1.7.5 poco-xml >= 1.7.5
-# LibreOffice dependencies (unfortunately upstream LibreOffice RPM packages (from TDF) do not have real dependencies)
-Requires: atk avahi-glib avahi-libs bzip2-libs cairo cups-libs dbus-glib dbus-libs fontconfig freetype GConf2 gdk-pixbuf2 glib2 gnome-vfs2 graphite2 gstreamer gstreamer-plugins-base gtk2 harfbuzz libdrm libffi libICE libSM libuuid libX11 libXau libxcb libXcomposite libXcursor libXdamage libXext libXfixes libXi libXinerama libXrandr libXrender libxshmfence libXt libXxf86vm mesa-libEGL mesa-libgbm mesa-libGL mesa-libglapi pango pixman
-%else
+Requires: systemd expat keyutils-libs krb5-libs libattr libcap libcom_err libgcc libpng libselinux 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}
# loolwsd dependencies
Requires(post): libcap-progs
-Requires: libcap2 libopenssl1_0_0 libpng12-0 libpcre1 libz1 %{?systemd_requires} %{fillup_prereq}
-Requires: libPocoCrypto48 >= 1.7.8 libPocoFoundation48 >= 1.7.8 libPocoJSON48 >= 1.7.8 libPocoNet48 >= 1.7.8 libPocoNetSSL48 >= 1.7.8 libPocoUtil48 >= 1.7.8 libPocoXML48 >= 1.7.8
-# LibreOffice dependencies (unfortunately upstream LibreOffice RPM packages (from TDF) do not have real dependencies)
-Requires: Mesa-libEGL1 Mesa-libGL1 Mesa-libglapi0 cups-libs dbus-1-glib fontconfig libatk-1_0-0 libavahi-client3 libavahi-common3 libavahi-glib1 libbz2-1 libcairo2 libcom_err2 libdbus-1-3 libdrm2 libexpat1 libfreetype6 libgbm1 libgio-2_0-0 libglib-2_0-0 libgmodule-2_0-0 libgobject-2_0-0 libgraphite2-3 libgthread-2_0-0 libgtk-2_0-0 libharfbuzz0 libkeyutils1 liblzma5 libpixman-1-0 libpng16-16 libuuid1 libxml2 libffi4 libgbm1 libICE6 libselinux1 libSM6 libwayland-client0 libwayland-server0 libX11-6 libX11-xcb1 libXau6 libxcb1 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-present0 libxcb-render0 libxcb-shm0 libxcb-sync1 libxcb-xfixes0 libXdamage1 libXext6 libXfixes3 libXrender1 libxshmfence1 libXxf86vm1
-%endif
+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 /opt/collaboraoffice6.2/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 collaboraoffice
+Requires: fontconfig libbz2-1 libexpat1 libfreetype6 libpng16-16 libuuid1
%endif
+
%if 0%{?name_suffix:1}
Provides: loleaflet = 1.5.8, loolwsd
%else
@@ -64,28 +70,31 @@ Obsoletes: loleaflet <= 1.5.8
%configure \
--enable-silent-rules \
--with-lokit-path=bundled/include \
- --with-lo-path=%{loroot} \
+ --with-lo-path=/opt/collaboraoffice6.2 \
--disable-setcap \
%if 0%{?config_options:1}
%{config_options}
%endif
-make %{?_smp_mflags}
+env BUILDING_FROM_RPMBUILD=yes make %{?_smp_mflags}
%check
-#make check
+#env BUILDING_FROM_RPMBUILD=yes make check
%install
-make install DESTDIR=%{buildroot}
-%__install -D -m 444 loolwsd.service %{buildroot}%{_unitdir}/loolwsd.service
+env BUILDING_FROM_RPMBUILD=yes make install DESTDIR=%{buildroot}
install -d -m 755 %{buildroot}/var/adm/fillup-templates
-%if 0%{?fedora} || 0%{?rhel} >= 7
+%if 0%{?rhel}
+install -D -m 444 loolwsd.service %{buildroot}%{_unitdir}/loolwsd.service
install -D -m 644 sysconfig.loolwsd %{buildroot}/etc/sysconfig/loolwsd
-%else
+install -d -m 755 %{buildroot}/etc/httpd/conf
+install -D -m 755 etc/apache2/loolwsd.conf %{buildroot}/etc/httpd/conf
+rm %{buildroot}/etc/apache2/conf-available/loolwsd.conf
+%endif
%if 0%{?suse_version}
+install -D -m 444 loolwsd.service %{buildroot}%{_unitdir}/loolwsd.service
install -D -m 644 sysconfig.loolwsd %{buildroot}/var/adm/fillup-templates
%endif
-%endif
mkdir -p %{buildroot}/etc/cron.d
echo "#Remove old tiles once every 10 days at midnight" > %{buildroot}/etc/cron.d/loolwsd.cron
echo "0 0 */1 * * root find /var/cache/loolwsd -type f -a -atime +10 -exec rm {} \;" >> %{buildroot}/etc/cron.d/loolwsd.cron
@@ -94,6 +103,7 @@ echo "auth required pam_unix.so" > %{buildroot}/etc/pam.d/loolwsd
echo "account required pam_unix.so" >> %{buildroot}/etc/pam.d/loolwsd
%files
+%defattr(-,root,root,-)
/usr/bin/loolwsd
/usr/bin/loolwsd-systemplate-setup
/usr/bin/loolforkit
@@ -104,27 +114,33 @@ echo "account required pam_unix.so" >> %{buildroot}/etc/pam.d/loolwsd
/usr/share/loolwsd/loleaflet
/usr/share/doc/loolwsd/README
/usr/share/doc/loolwsd/README.vars
+/usr/share/doc/loolwsd/metrics.txt
/usr/share/doc/loolwsd/protocol.txt
/usr/share/doc/loolwsd/reference.md
-/usr/share/doc/loolwsd/metrics.txt
-/usr/share/man/man1/loolwsd.1
-/usr/share/man/man1/loolforkit.1
-/usr/share/man/man1/loolconvert.1
-/usr/share/man/man1/loolconfig.1
-/usr/share/man/man1/loolwsd-systemplate-setup.1
+/usr/share/man/man1/loolwsd.1.gz
+/usr/share/man/man1/loolforkit.1.gz
+/usr/share/man/man1/loolconvert.1.gz
+/usr/share/man/man1/loolconfig.1.gz
+/usr/share/man/man1/loolwsd-systemplate-setup.1.gz
%{_unitdir}/loolwsd.service
-%if 0%{?fedora} || 0%{?rhel} >= 7
+%if 0%{?rhel}
%config(noreplace) /etc/sysconfig/loolwsd
-%else
+%endif
%if 0%{?suse_version}
/var/adm/fillup-templates/sysconfig.loolwsd
%endif
-%endif
%config(noreplace) /etc/cron.d/loolwsd.cron
%config(noreplace) /etc/pam.d/loolwsd
%config(noreplace) %attr(640, lool, root) /etc/loolwsd/loolwsd.xml
%config /etc/loolwsd/loolkitconfig.xcu
+%config(noreplace) /etc/nginx/snippets/loolwsd.conf
+%if 0%{?suse_version} > 0
+%config(noreplace) /etc/apache2/conf-available/loolwsd.conf
+%endif
+%if 0%{?rhel} > 0
+%config(noreplace) /etc/httpd/conf/loolwsd.conf
+%endif
%doc README
@@ -134,17 +150,21 @@ echo "account required pam_unix.so" >> %{buildroot}/etc/pam.d/loolwsd
%endif
getent group lool >/dev/null || groupadd -r lool
-getent passwd lool >/dev/null || useradd -g lool -r lool
+getent passwd lool >/dev/null || useradd -g lool -r lool -d /opt/lool -s /bin/bash
-%post
-setcap cap_fowner,cap_mknod,cap_sys_chroot=ep /usr/bin/loolforkit
+# for filename in `find /opt/lool/systemplate -type f`;do stripped=$(echo -ne $filename | sed -e "s|/opt/lool/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
-mkdir -p /var/cache/loolwsd && chown lool:lool /var/cache/loolwsd
-rm -rf /var/cache/loolwsd/*
+echo -ne "Triggered update of loolwsd systemplate..."
+
+%if 0%{?rhel} >= 7 || 0%{?suse_version} >= 1300
+systemctl is-active -q loolwsd && LOOLWSD_IS_ACTIVE=1 || LOOLWSD_IS_ACTIVE=0
+if [ $LOOLWSD_IS_ACTIVE == "1" ]; then systemctl stop loolwsd; fi
+%endif
# Figure out where LO is installed, let's hope it is not a mount point
# Create a directory for loolwsd on the same file system
-loroot=%{loroot}
+loroot=/opt/collaboraoffice6.2
loolparent=`cd ${loroot} && cd .. && /bin/pwd`
rm -rf ${loolparent}/lool
@@ -155,7 +175,19 @@ chown lool:lool ${loolparent}/lool/child-roots
fc-cache ${loroot}/share/fonts/truetype
loolwsd-systemplate-setup ${loolparent}/lool/systemplate ${loroot} >/dev/null 2>&1
-%if 0%{?fedora} || 0%{?rhel} >= 7
+%if 0%{?rhel} || 0%{?suse_version}
+if [ $LOOLWSD_IS_ACTIVE == "1" ]; then systemctl start loolwsd; fi
+%endif
+
+echo " Done."
+
+%post
+setcap cap_fowner,cap_mknod,cap_sys_chroot=ep /usr/bin/loolforkit
+
+mkdir -p /var/cache/loolwsd && chown lool:lool /var/cache/loolwsd
+rm -rf /var/cache/loolwsd/*
+
+%if 0%{?rhel} >= 7
%systemd_post loolwsd.service
%else
%if 0%{?suse_version}
@@ -164,9 +196,8 @@ loolwsd-systemplate-setup ${loolparent}/lool/systemplate ${loroot} >/dev/null 2>
%endif
%endif
-
%preun
-%if 0%{?fedora} || 0%{?rhel} >= 7
+%if 0%{?rhel} >= 7
%systemd_preun loolwsd.service
%else
%if 0%{?suse_version}
@@ -175,7 +206,7 @@ loolwsd-systemplate-setup ${loolparent}/lool/systemplate ${loroot} >/dev/null 2>
%endif
%postun
-%if 0%{?fedora} || 0%{?rhel} >= 7
+%if 0%{?rhel} >= 7
%systemd_postun loolwsd.service
%else
%if 0%{?suse_version}