Jan Engelhardt
5b4465a255
Switch to sysuser-tools-backed useradd OBS-URL: https://build.opensuse.org/package/show/server:mail/grommunio-web?expand=0&rev=2
341 lines
11 KiB
RPMSpec
341 lines
11 KiB
RPMSpec
#
|
|
# spec file for package grommunio-web
|
|
#
|
|
# Copyright (c) 2023 SUSE LLC
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
%if 0%{?centos_version} || 0%{?rhel_version} || 0%{?fedora_version}
|
|
%global __brp_mangle_shebangs_exclude_from sabredav|vobject|generate_vcards
|
|
%endif
|
|
|
|
Name: grommunio-web
|
|
Version: 3.1.182.52d9180
|
|
Release: 0
|
|
Summary: Web client for access to grommunio features from the web
|
|
License: AGPL-3.0-or-later AND GPL-3.0-only AND LGPL-2.1-only AND MIT
|
|
Group: Productivity/Networking/Email/Clients
|
|
URL: http://www.grommunio.com/
|
|
Source: %name-%version.tar.xz
|
|
|
|
%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150400
|
|
%define phpdir /etc/php8
|
|
BuildRequires: php8-gettext
|
|
%else
|
|
# i.e. SUSE15, RHEL, etc.
|
|
%define phpdir /etc/php7
|
|
%endif
|
|
%if 0%{?sle_version} && 0%{?sle_version} < 150400
|
|
BuildRequires: php7-gettext
|
|
BuildRequires: php7-json
|
|
%endif
|
|
%if 0%{?suse_version}
|
|
BuildRequires: fdupes
|
|
BuildRequires: java >= 1.9.0
|
|
BuildRequires: java-devel >= 1.9.0
|
|
%else
|
|
BuildRequires: java-11-openjdk-devel
|
|
BuildRequires: php-cli
|
|
BuildRequires: php-json
|
|
%endif
|
|
BuildRequires: mapi-header-php
|
|
BuildRequires: php
|
|
BuildRequires: xz
|
|
%if 0%{?suse_version} >= 1220
|
|
BuildRequires: libxml2-tools
|
|
%else
|
|
BuildRequires: libxml2
|
|
%endif
|
|
%if 0%{?suse_version} >= 1500
|
|
BuildRequires: sysuser-tools
|
|
%sysusers_requires
|
|
%else
|
|
Requires(pre): %_sbindir/groupadd
|
|
Requires(pre): %_sbindir/useradd
|
|
%endif
|
|
BuildArch: noarch
|
|
|
|
Obsoletes: system-user-groweb
|
|
Provides: system-user-groweb
|
|
Requires: gromox >= 1.27
|
|
Requires: mapi-header-php
|
|
%if 0%{?centos_version} || 0%{?rhel_version} || 0%{?fedora_version}
|
|
Requires: php-bcmath
|
|
Requires: php-common
|
|
Requires: php-ctype
|
|
Requires: php-curl
|
|
Requires: php-mbstring
|
|
Requires: php-sodium
|
|
Requires: php-sqlite3
|
|
%endif
|
|
%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150400
|
|
Requires: php8-bcmath
|
|
Requires: php8-ctype
|
|
Requires: php8-curl
|
|
Requires: php8-gd
|
|
Requires: php8-gettext
|
|
Requires: php8-iconv
|
|
Requires: php8-mbstring
|
|
Requires: php8-openssl
|
|
Requires: php8-sodium
|
|
Requires: php8-sqlite
|
|
Requires: php8-sysvshm
|
|
Requires: php8-zip
|
|
Requires: php8-zlib
|
|
%endif
|
|
%if 0%{?sle_version} && 0%{?sle_version} < 150400
|
|
Requires: php7-bcmath
|
|
Requires: php7-ctype
|
|
Requires: php7-curl
|
|
Requires: php7-gd
|
|
Requires: php7-gettext
|
|
Requires: php7-iconv
|
|
Requires: php7-json
|
|
Requires: php7-mbstring
|
|
Requires: php7-openssl
|
|
Requires: php7-sodium
|
|
Requires: php7-sqlite
|
|
Requires: php7-sysvshm
|
|
Requires: php7-zip
|
|
Requires: php7-zlib
|
|
%endif
|
|
|
|
%define langdir %_datadir/%name/server/language
|
|
%define plugindir %_datadir/%name/plugins
|
|
%define nginx_dir %_sysconfdir/nginx
|
|
|
|
%description
|
|
A web client written in PHP that makes use of HTML5, JSON and ExtJS
|
|
to allow users to make full use of the grommunio
|
|
through a web browser.
|
|
|
|
%prep
|
|
%autosetup -p1
|
|
find . -type f "(" -name "*.js" -o -name "*.php" ")" \
|
|
-exec chmod a-x "{}" "+";
|
|
# Set git revision
|
|
echo "%version-%release" >version
|
|
echo "%version-%release" | sha1sum | cut -b 1-8 >cachebuster
|
|
|
|
%build
|
|
%make_build -j1
|
|
%if 0%{?suse_version} >= 1500
|
|
%sysusers_generate_pre %_sourcedir/system-user-groweb.conf %name system-user-groweb.conf
|
|
%else
|
|
: >>"%name.pre"
|
|
%endif
|
|
|
|
%install
|
|
b="%buildroot"
|
|
d="$b/%_datadir"
|
|
mkdir -p "$d"
|
|
cp -a deploy "$b/%_datadir/%name"
|
|
|
|
install -vm 644 LICENSE.txt "$b/%_datadir/%name/LICENSE.txt"
|
|
|
|
# Nginx conf
|
|
mkdir -pv "$b/usr/share/grommunio-common/nginx/locations.d"
|
|
install -Dpvm 644 build/grommunio-web.conf "$b/usr/share/grommunio-common/nginx/locations.d/"
|
|
mkdir -pv "$b/usr/share/grommunio-common/nginx/upstreams.d"
|
|
install -Dpvm 644 build/grommunio-web-upstream.conf "$b/usr/share/grommunio-common/nginx/upstreams.d/grommunio-web.conf"
|
|
|
|
# PHP-FPM
|
|
mkdir -pv "$b/%phpdir/fpm/php-fpm.d/"
|
|
install -Dpvm 644 build/pool-grommunio-web.conf "$b/%phpdir/fpm/php-fpm.d/pool-grommunio-web.conf"
|
|
|
|
# web config
|
|
mkdir -pv "$b/%_sysconfdir/grommunio-web"
|
|
mv -v "$b/%_datadir/%name/config.php.dist" "$b/%_sysconfdir/grommunio-web/config.php"
|
|
ln -sfv "%_sysconfdir/grommunio-web/config.php" "$b/%_datadir/grommunio-web/config.php"
|
|
rm -v "$b/%_datadir/%name/debug.php.dist"
|
|
mkdir -pv "$b/var/lib/%name/tmp"
|
|
mkdir -pv "$b/var/lib/%name/sqlite-index"
|
|
mkdir -pv "$b/var/lib/%name/session"
|
|
mkdir -pv "$b/var/log/grommunio"
|
|
|
|
# Signatures template scripts
|
|
mkdir -pv "$b/%_datadir/doc/grommunio-web/scripts"
|
|
|
|
for dir in "$b/%_datadir/%name/plugins"/*; do
|
|
plugindir=$(basename "$dir")
|
|
if [ -f "$b/%_datadir/%name/plugins/$plugindir/config.php" ]; then
|
|
mv -v "$b/%_datadir/%name/plugins/$plugindir/config.php" "$b/%_sysconfdir/grommunio-web/config-$plugindir.php"
|
|
ln -sv "%_sysconfdir/grommunio-web/config-$plugindir.php" "$b/%_datadir/%name/plugins/$plugindir/config.php"
|
|
else
|
|
echo "we did not find a config.php"
|
|
fi
|
|
done
|
|
|
|
%if 0%{?suse_version} >= 1500
|
|
mkdir -p "%buildroot/%_sysusersdir"
|
|
install -m 0644 "%_sourcedir/system-user-groweb.conf" "%buildroot/%_sysusersdir/"
|
|
%endif
|
|
%if 0%{?fdupes:1}
|
|
%fdupes %buildroot/%_prefix
|
|
%endif
|
|
|
|
%pre -f %name.pre
|
|
%if 0%{?suse_version} < 1500
|
|
getent group groweb >/dev/null || %_sbindir/groupadd -r groweb
|
|
getent passwd groweb >/dev/null || %_sbindir/useradd -g groweb -s /bin/false \
|
|
-r -c "user for %name" -d "%_localstatedir/lib/groweb" groweb
|
|
%endif
|
|
|
|
%post
|
|
# clear translation caches
|
|
ipcrm -M 0x950412de 2>/dev/null || :
|
|
|
|
%files
|
|
%dir %_sysconfdir/grommunio-web
|
|
%dir %phpdir
|
|
%dir %phpdir/fpm
|
|
%dir %phpdir/fpm/php-fpm.d/
|
|
%attr(0640,root,root) %phpdir/fpm/php-fpm.d/pool-grommunio-web.conf
|
|
%config(noreplace) %attr(0644,root,root) %_sysconfdir/grommunio-web/config-archive.php
|
|
%config(noreplace) %attr(0644,root,root) %_sysconfdir/grommunio-web/config-chat.php
|
|
%config(noreplace) %attr(0644,root,root) %_sysconfdir/grommunio-web/config-desktopnotifications.php
|
|
%config(noreplace) %attr(0644,root,root) %_sysconfdir/grommunio-web/config-files.php
|
|
%config(noreplace) %attr(0644,root,root) %_sysconfdir/grommunio-web/config-intranet.php
|
|
%config(noreplace) %attr(0644,root,root) %_sysconfdir/grommunio-web/config-maps.php
|
|
%config(noreplace) %attr(0644,root,root) %_sysconfdir/grommunio-web/config-mdm.php
|
|
%config(noreplace) %attr(0644,root,root) %_sysconfdir/grommunio-web/config-meet.php
|
|
%config(noreplace) %attr(0644,root,root) %_sysconfdir/grommunio-web/config-passwd.php
|
|
%config(noreplace) %attr(0644,root,root) %_sysconfdir/grommunio-web/config-smime.php
|
|
%config(noreplace) %attr(0644,root,root) %_sysconfdir/grommunio-web/config.php
|
|
%dir %_datadir/grommunio-common/
|
|
%dir %_datadir/grommunio-common/nginx/
|
|
%dir %_datadir/grommunio-common/nginx/locations.d/
|
|
%_datadir/grommunio-common/nginx/locations.d/grommunio-web.conf
|
|
%dir %_datadir/grommunio-common/nginx/upstreams.d/
|
|
%_datadir/grommunio-common/nginx/upstreams.d/grommunio-web.conf
|
|
%dir %attr(0770,groweb,groweb) /var/lib/grommunio-web
|
|
%dir %attr(0775,groweb,groweb) /var/lib/grommunio-web/tmp
|
|
%dir %attr(0775,groweb,groweb) /var/lib/grommunio-web/sqlite-index
|
|
%dir %attr(0775,groweb,groweb) /var/lib/grommunio-web/session
|
|
|
|
%dir %_datadir/%name
|
|
%exclude %_datadir/%name/LICENSE.txt
|
|
%license LICENSE.txt
|
|
%_datadir/%name/*.php
|
|
%_datadir/%name/client/
|
|
%_datadir/%name/plugins/
|
|
%dir %_datadir/%name/server/
|
|
%_datadir/%name/server/includes/
|
|
%_datadir/%name/server/manifest.dtd
|
|
%_datadir/%name/version
|
|
%_datadir/%name/cachebuster
|
|
%attr(750,root,root) /var/log/grommunio/
|
|
|
|
%if 0%{?suse_version} >= 1500
|
|
%_sysusersdir/*.conf
|
|
%endif
|
|
|
|
%dir %langdir/
|
|
%lang(af_ZA) %langdir/af_ZA.UTF-8
|
|
%lang(am_ET) %langdir/am_ET.UTF-8
|
|
%lang(ar_DZ) %langdir/ar_DZ.UTF-8
|
|
%lang(ar_SA) %langdir/ar_SA.UTF-8
|
|
%lang(as_IN) %langdir/as_IN.UTF-8
|
|
%lang(az_AZ) %langdir/az_AZ.UTF-8
|
|
%lang(be_BY) %langdir/be_BY.UTF-8
|
|
%lang(bg_BG) %langdir/bg_BG.UTF-8
|
|
%lang(bn_BD) %langdir/bn_BD.UTF-8
|
|
%lang(bn_IN) %langdir/bn_IN.UTF-8
|
|
%lang(bs_BA) %langdir/bs_BA.UTF-8
|
|
%lang(ca_ES) %langdir/ca_ES.UTF-8
|
|
%lang(ca_ES) %langdir/ca_ES.UTF-8@valencia
|
|
%lang(cs_CZ) %langdir/cs_CZ.UTF-8
|
|
%lang(cy_GB) %langdir/cy_GB.UTF-8
|
|
%lang(da_DK) %langdir/da_DK.UTF-8
|
|
%lang(de_CH) %langdir/de_CH.UTF-8
|
|
%lang(de_DE) %langdir/de_DE.UTF-8
|
|
%lang(el_GR) %langdir/el_GR.UTF-8
|
|
%lang(en_GB) %langdir/en_GB.UTF-8
|
|
%lang(en_US) %langdir/en_US.UTF-8
|
|
%lang(es_ES) %langdir/es_ES.UTF-8
|
|
%lang(et_EE) %langdir/et_EE.UTF-8
|
|
%lang(eu_ES) %langdir/eu_ES.UTF-8
|
|
%lang(fa_IR) %langdir/fa_IR.UTF-8
|
|
%lang(fi_FI) %langdir/fi_FI.UTF-8
|
|
%lang(fil_PH) %langdir/fil_PH.UTF-8
|
|
%lang(fr_FR) %langdir/fr_FR.UTF-8
|
|
%lang(ga_IE) %langdir/ga_IE.UTF-8
|
|
%lang(gd_GB) %langdir/gd_GB.UTF-8
|
|
%lang(gl_ES) %langdir/gl_ES.UTF-8
|
|
%lang(gu_IN) %langdir/gu_IN.UTF-8
|
|
%lang(he_IL) %langdir/he_IL.UTF-8
|
|
%lang(hi_IN) %langdir/hi_IN.UTF-8
|
|
%lang(hr_HR) %langdir/hr_HR.UTF-8
|
|
%lang(hu_HU) %langdir/hu_HU.UTF-8
|
|
%lang(hy_AM) %langdir/hy_AM.UTF-8
|
|
%lang(id_ID) %langdir/id_ID.UTF-8
|
|
%lang(is_IS) %langdir/is_IS.UTF-8
|
|
%lang(it_IT) %langdir/it_IT.UTF-8
|
|
%lang(ja_JP) %langdir/ja_JP.UTF-8
|
|
%lang(ka_GE) %langdir/ka_GE.UTF-8
|
|
%lang(kk_KZ) %langdir/kk_KZ.UTF-8
|
|
%lang(km_KH) %langdir/km_KH.UTF-8
|
|
%lang(kn_IN) %langdir/kn_IN.UTF-8
|
|
%lang(kok_IN) %langdir/kok_IN.UTF-8
|
|
%lang(ko_KR) %langdir/ko_KR.UTF-8
|
|
%lang(ky_KG) %langdir/ky_KG.UTF-8
|
|
%lang(lb_LU) %langdir/lb_LU.UTF-8
|
|
%lang(lt_LT) %langdir/lt_LT.UTF-8
|
|
%lang(lv_LV) %langdir/lv_LV.UTF-8
|
|
%lang(mi_NZ) %langdir/mi_NZ.UTF-8
|
|
%lang(mk_MK) %langdir/mk_MK.UTF-8
|
|
%lang(ml_IN) %langdir/ml_IN.UTF-8
|
|
%lang(mn_MN) %langdir/mn_MN.UTF-8
|
|
%lang(mr_IN) %langdir/mr_IN.UTF-8
|
|
%lang(ms_MY) %langdir/ms_MY.UTF-8
|
|
%lang(mt_MT) %langdir/mt_MT.UTF-8
|
|
%lang(nb_NO) %langdir/nb_NO.UTF-8
|
|
%lang(ne_NP) %langdir/ne_NP.UTF-8
|
|
%lang(nl_NL) %langdir/nl_NL.UTF-8
|
|
%lang(nn_NO) %langdir/nn_NO.UTF-8
|
|
%lang(or_IN) %langdir/or_IN.UTF-8
|
|
%lang(pa_IN) %langdir/pa_IN.UTF-8
|
|
%lang(pl_PL) %langdir/pl_PL.UTF-8
|
|
%lang(prs_AF) %langdir/prs_AF.UTF-8
|
|
%lang(pt_BR) %langdir/pt_BR.UTF-8
|
|
%lang(pt_PT) %langdir/pt_PT.UTF-8
|
|
%lang(quz_PE) %langdir/quz_PE.UTF-8
|
|
%lang(ro_RO) %langdir/ro_RO.UTF-8
|
|
%lang(ru_RU) %langdir/ru_RU.UTF-8
|
|
%lang(sd_IN) %langdir/sd_IN.UTF-8
|
|
%lang(si_LK) %langdir/si_LK.UTF-8
|
|
%lang(sk_SK) %langdir/sk_SK.UTF-8
|
|
%lang(sl_SI) %langdir/sl_SI.UTF-8
|
|
%lang(sq_AL) %langdir/sq_AL.UTF-8
|
|
%lang(sr_BA) %langdir/sr_BA.UTF-8
|
|
%lang(sr_RS) %langdir/sr_RS.UTF-8
|
|
%lang(sr_RS) %langdir/sr_RS.UTF-8@latin
|
|
%lang(sv_SE) %langdir/sv_SE.UTF-8
|
|
%lang(sw_KE) %langdir/sw_KE.UTF-8
|
|
%lang(ta_IN) %langdir/ta_IN.UTF-8
|
|
%lang(te_IN) %langdir/te_IN.UTF-8
|
|
%lang(th_TH) %langdir/th_TH.UTF-8
|
|
%lang(tk_TM) %langdir/tk_TM.UTF-8
|
|
%lang(tr_TR) %langdir/tr_TR.UTF-8
|
|
%lang(tt_RU) %langdir/tt_RU.UTF-8
|
|
%lang(ug_CN) %langdir/ug_CN.UTF-8
|
|
%lang(uk_UA) %langdir/uk_UA.UTF-8
|
|
%lang(ur_PK) %langdir/ur_PK.UTF-8
|
|
%lang(uz_UZ) %langdir/uz_UZ.UTF-8
|
|
%lang(vi_VN) %langdir/vi_VN.UTF-8
|
|
%lang(zh_CN) %langdir/zh_CN.UTF-8
|
|
%lang(zh_TW) %langdir/zh_TW.UTF-8
|
|
|
|
%changelog
|