18d1e53
%global selinux_types %(%{__awk} '/^#[[:space:]]*SELINUXTYPE=/,/^[^#]/ { if ($3 == "-") printf "%s ", $2 }' /etc/selinux/config 2>/dev/null)
18d1e53
%global selinux_variants %([ -z "%{selinux_types}" ] && echo mls targeted || echo %{selinux_types})
18d1e53
bc1de5c
# unfortunately, radicale major version upgrades are breakable updates, therefore
bc1de5c
# Fedora >= 31: introduce radicale3
4d2e12b
#
4d2e12b
# Note: this is the simplified spec file for Fedora
bc1de5c
bc1de5c
%define	radicale_major	3
bc1de5c
4d2e12b
%if %{?radicale_major} >= 3
bc1de5c
%define	radicale_version	3.0.6
4d2e12b
%else
4d2e12b
%if %{?radicale_major} >= 2
1b69b46
%define	radicale_version	2.1.12
bc1de5c
%endif
4d2e12b
%endif
bc1de5c
bc1de5c
%define	radicale_name	radicale
bc1de5c
bc1de5c
%if %{?radicale_major} >= 3
1b69b46
%define	radicale_package_name	radicale3
bc1de5c
%else
1b69b46
%define	radicale_package_name	radicale2
bc1de5c
%endif
bc1de5c
cd13139
Name:             radicale
bc1de5c
Version:          %{radicale_version}
a8b59ee
Release:          17%{?dist}
16b9421
Summary:          A simple CalDAV (calendar) and CardDAV (contact) server
16b9421
License:          GPLv3+
5901679
URL:              https://radicale.org
cd13139
Source0:          https://github.com/Kozea/Radicale/archive/%{version}/%{name}-%{version}.tar.gz
cd13139
Source1:          %{name}.service
cd13139
Source2:          %{name}-logrotate
cd13139
Source3:          %{name}-httpd
cd13139
Source4:          %{name}.te
cd13139
Source5:          %{name}.fc
cd13139
Source6:          %{name}.if
cd13139
Source7:          %{name}-tmpfiles.conf
16b9421
0014f99
Source50:	  %{name}-test-example.ics
0014f99
Source51:	  %{name}-test-example.vcf
0014f99
16b9421
BuildArch:        noarch
1b69b46
0014f99
1b69b46
%package -n %{radicale_package_name}
cd13139
Summary:          %{summary}
1b69b46
71eb10f
BuildRequires:    python3-devel
8c1b00b
BuildRequires:    python3-setuptools
16b9421
BuildRequires:    systemd
18d1e53
BuildRequires:    checkpolicy
18d1e53
BuildRequires:    selinux-policy-devel
8c1b00b
BuildRequires:    hardlink
c432147
43a9593
# for 'make check' of major version 3.0.6
43a9593
BuildRequires:    python3-defusedxml
43a9593
BuildRequires:    python3-passlib
43a9593
BuildRequires:    python3-vobject >= 0.9.6
43a9593
BuildRequires:    python3-dateutil >= 2.7.3
43a9593
bc1de5c
%if "%{?radicale_major}" == "3"
bc1de5c
Conflicts:        radicale < 3.0.0
1b69b46
Conflicts:        radicale2
bc1de5c
%endif
bc1de5c
bc1de5c
%if "%{?radicale_major}" == "2"
bc1de5c
Conflicts:        radicale < 2.0.0
bc1de5c
Conflicts:        radicale >= 3.0.0
1b69b46
Conflicts:        radicale3
bc1de5c
%endif
bc1de5c
bc1de5c
%if "%{?radicale_major}" == "1"
bc1de5c
Conflicts:        radicale >= 2.0.0
1b69b46
Conflicts:        radicale3
bc1de5c
%endif
bc1de5c
1b69b46
Requires:         python3-%{radicale_package_name} = %{version}-%{release}
c432147
Requires(pre):    shadow-utils
c432147
%{?systemd_requires}
017bd66
Suggests:         %{radicale_package_name}-selinux = %{version}-%{release}
4d2e12b
18d1e53
16b9421
%description
16b9421
The Radicale Project is a CalDAV (calendar) and CardDAV (contact) server. It
16b9421
aims to be a light solution, easy to use, easy to install, easy to configure.
16b9421
As a consequence, it requires few software dependencies and is pre-configured
16b9421
to work out-of-the-box.
16b9421
16b9421
The Radicale Project runs on most of the UNIX-like platforms (Linux, BSD,
16b9421
MacOS X) and Windows. It is known to work with Evolution, Lightning, iPhone
16b9421
and Android clients. It is free and open-source software, released under GPL
16b9421
version 3.
16b9421
0014f99
1b69b46
%description -n %{radicale_package_name}
1b69b46
The Radicale Project is a CalDAV (calendar) and CardDAV (contact) server. It
1b69b46
aims to be a light solution, easy to use, easy to install, easy to configure.
1b69b46
As a consequence, it requires few software dependencies and is pre-configured
1b69b46
to work out-of-the-box.
1b69b46
1b69b46
The Radicale Project runs on most of the UNIX-like platforms (Linux, BSD,
1b69b46
MacOS X) and Windows. It is known to work with Evolution, Lightning, iPhone
1b69b46
and Android clients. It is free and open-source software, released under GPL
1b69b46
version 3.
1b69b46
cd13139
THIS IS MAJOR VERSION %{?radicale_major}
cd13139
cd13139
UPGRADE BETWEEN MAJOR VERSIONS IS NOT SUPPORTED
cd13139
	-> deinstall old major version
cd13139
	-> install new version
cd13139
	-> follow migration hints
cd13139
%if "%{?radicale_major}" == "3"
cd13139
Upgrade hints from major version 2 -> 3 can be found here:
cd13139
 https://github.com/Kozea/Radicale/blob/master/NEWS.md
cd13139
  (section '3.0.0')
cd13139
%endif
cd13139
%if "%{?radicale_major}" == "2"
cd13139
Upgrade hints from major version 1 -> 2 can be found here:
cd13139
 http://radicale.org/1to2/
cd13139
%endif
1b69b46
0014f99
1b69b46
%package -n python3-%{radicale_package_name}
4d2e12b
Summary:          Python module for Radicale
df24406
Recommends:       python3-bcrypt
df24406
Recommends:       python3-passlib
cd13139
%{?python_provide:%python_provide python3-%{name}}
1b69b46
Obsoletes:        python-%{radicale_package_name} < %{version}-%{release}
bc1de5c
bc1de5c
%if "%{?radicale_major}" == "3"
bc1de5c
Conflicts:        python3-radicale < 3.0.0
1b69b46
Conflicts:        python3-radicale2
bc1de5c
%endif
bc1de5c
bc1de5c
%if "%{?radicale_major}" == "2"
bc1de5c
Conflicts:        python3-radicale < 2.0.0
1b69b46
Conflicts:        python3-radicale3
bc1de5c
%endif
bc1de5c
bc1de5c
%if "%{?radicale_major}" == "1"
bc1de5c
Conflicts:        python3-radicale >= 2.0.0
1b69b46
Conflicts:        python3-radicale2
1b69b46
Conflicts:        python3-radicale3
bc1de5c
%endif
c432147
1b69b46
%description -n python3-%{radicale_package_name}
4d2e12b
Python module for Radicale
c432147
c432147
1b69b46
%package -n %{radicale_package_name}-httpd
16b9421
Summary:        httpd config for Radicale
1b69b46
Requires:       %{radicale_package_name} = %{version}-%{release}
16b9421
Requires:       httpd
a072a02
Requires:       python3-mod_wsgi
16b9421
1b69b46
%if "%{?radicale_major}" == "3"
1b69b46
Conflicts:        radicale-httpd < 3.0.0
1b69b46
Conflicts:        radicale2-httpd
1b69b46
%endif
1b69b46
1b69b46
%if "%{?radicale_major}" == "2"
1b69b46
Conflicts:        radicale-httpd < 2.0.0
1b69b46
Conflicts:        radicale3-httpd
1b69b46
%endif
1b69b46
1b69b46
%if "%{?radicale_major}" == "1"
1b69b46
Conflicts:        radicale-httpd >= 2.0.0
1b69b46
Conflicts:        radicale2-httpd
1b69b46
Conflicts:        radicale3-httpd
1b69b46
%endif
1b69b46
1b69b46
%description -n %{radicale_package_name}-httpd
c432147
httpd example config for Radicale (Python3).
c432147
0014f99
017bd66
%package -n %{radicale_package_name}-selinux
017bd66
Summary:        SELinux definitions for Radicale
017bd66
Requires:       %{radicale_package_name} = %{version}-%{release}
017bd66
%if "%{_selinux_policy_version}" != ""
017bd66
Requires:         selinux-policy >= %{_selinux_policy_version}
017bd66
%endif
017bd66
Requires(post):   /usr/sbin/semodule
017bd66
Requires(post):   /usr/sbin/fixfiles
017bd66
Requires(post):   /usr/sbin/restorecon
017bd66
Requires(post):   policycoreutils-python-utils
017bd66
Requires(postun): /usr/sbin/semodule
017bd66
Requires(postun): /usr/sbin/fixfiles
017bd66
Requires(postun): /usr/sbin/restorecon
017bd66
Requires(postun): policycoreutils-python-utils
017bd66
7d8d86d
017bd66
%description -n %{radicale_package_name}-selinux
017bd66
SELinux definitions for Radicale (Python3).
017bd66
017bd66
16b9421
%prep
18d1e53
%autosetup -n Radicale-%{version}
Juan Orti Alcaine 88f7379
mkdir SELinux
Juan Orti Alcaine 88f7379
cp -p %{SOURCE4} %{SOURCE5} %{SOURCE6} SELinux
18d1e53
fea2762
# adjust _rundir according to definition
d65a889
sed -i 's|\(/var/run\)|%{_rundir}|' SELinux/%{name}.fc
bc1de5c
fea2762
%if %{?radicale_major} >= 3
fea2762
# remove log directory (no longer supported since major version 3)
fea2762
sed -i 's|^/var/log/.*||' SELinux/%{name}.fc
fea2762
%endif
fea2762
0014f99
16b9421
%build
18d1e53
%py3_build
Juan Orti Alcaine 88f7379
cd SELinux
d65a889
Juan Orti Alcaine 88f7379
for selinuxvariant in %{selinux_variants}
Juan Orti Alcaine 88f7379
do
Juan Orti Alcaine 88f7379
    make NAME=${selinuxvariant} -f /usr/share/selinux/devel/Makefile
cd13139
    mv %{name}.pp %{name}.pp.${selinuxvariant}
Juan Orti Alcaine 88f7379
    make NAME=${selinuxvariant} -f /usr/share/selinux/devel/Makefile clean
Juan Orti Alcaine 88f7379
done
Juan Orti Alcaine 88f7379
cd -
16b9421
43a9593
16b9421
%install
18d1e53
%py3_install
16b9421
16b9421
# Install configuration files
cd13139
mkdir -p %{buildroot}%{_sysconfdir}/%{name}/
cd13139
install -p -m 640 config %{buildroot}%{_sysconfdir}/%{name}/
d65a889
sed -i 's|^#\(level = \).*|\1 info|' %{buildroot}%{_sysconfdir}/%{name}/config
bc1de5c
%if %{?radicale_major} < 3
cd13139
install -p -m 644 logging %{buildroot}%{_sysconfdir}/%{name}/
bc1de5c
%endif
cd13139
install -p -m 644 rights %{buildroot}%{_sysconfdir}/%{name}/
16b9421
16b9421
# Install wsgi file
cd13139
mkdir -p %{buildroot}%{_datadir}/%{name}
cd13139
install -p -m 644 radicale.wsgi %{buildroot}%{_datadir}/%{name}/
d65a889
sed -i 's|^#!/usr/bin/env python3$|#!/usr/bin/python3|' %{buildroot}%{_datadir}/%{name}/radicale.wsgi
bc1de5c
%if %{?radicale_major} < 3
cd13139
install -p -m 644 radicale.fcgi %{buildroot}%{_datadir}/%{name}/
d65a889
sed -i 's|^#!/usr/bin/env python3$|#!/usr/bin/python3|' %{buildroot}%{_datadir}/%{name}/radicale.fcgi
bc1de5c
%endif
16b9421
16b9421
# Install apache's configuration file
16b9421
mkdir -p %{buildroot}%{_sysconfdir}/httpd/conf.d/
cd13139
install -p -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/httpd/conf.d/%{name}.conf
16b9421
16b9421
# Create folder where the calendar will be stored
cd13139
mkdir -p  %{buildroot}%{_sharedstatedir}/%{name}/
bc1de5c
cd13139
install -D -p -m 644 %{SOURCE1} %{buildroot}%{_unitdir}/%{name}.service
bc1de5c
%if %{?radicale_major} >= 3
bc1de5c
## 3.0.0: Remove daemonization (should be handled by service managers)
bc1de5c
# change start type
cd13139
sed -i 's|\(Type=\).*|\1exec|' %{buildroot}%{_unitdir}/%{name}.service
bc1de5c
# disable PIDfile
cd13139
sed -i 's|\(PIDFile=\)|#NoLongerUsed in major version >=3#\1|' %{buildroot}%{_unitdir}/%{name}.service
d65a889
# remove daemon options
d65a889
sed -i 's|\(ExecStart=/usr/bin/radicale\).*|\1|' %{buildroot}%{_unitdir}/%{name}.service
bc1de5c
%endif
bc1de5c
bc1de5c
d65a889
%if %{?radicale_major} < 3
cd13139
install -D -p -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
d65a889
%endif
cd13139
install -D -p -m 644 %{SOURCE7} %{buildroot}%{_tmpfilesdir}/%{name}.conf
d65a889
mkdir -p %{buildroot}%{_rundir}/%{name}
16b9421
bc1de5c
# adjust _rundir
cd13139
sed -i 's|\(/var/run\)|%{_rundir}|' %{buildroot}%{_tmpfilesdir}/%{name}.conf
cd13139
sed -i 's|\(/var/run\)|%{_rundir}|' %{buildroot}%{_unitdir}/%{name}.service
cd13139
mkdir -p %{buildroot}%{_rundir}/%{name}
16b9421
d65a889
%if %{?radicale_major} < 3
cd13139
mkdir -p %{buildroot}%{_localstatedir}/log/%{name}
d65a889
%endif
16b9421
Juan Orti Alcaine 88f7379
for selinuxvariant in %{selinux_variants}
Juan Orti Alcaine 88f7379
do
Juan Orti Alcaine 88f7379
    install -d %{buildroot}%{_datadir}/selinux/${selinuxvariant}
cd13139
    install -p -m 644 SELinux/%{name}.pp.${selinuxvariant} \
cd13139
        %{buildroot}%{_datadir}/selinux/${selinuxvariant}/%{name}.pp
Juan Orti Alcaine 88f7379
done
f48bdd6
f48bdd6
%if 0%{?rhel}
f48bdd6
/usr/sbin/hardlink -cv %{buildroot}%{_datadir}/selinux
f48bdd6
%else
3a8d771
/usr/bin/hardlink -cv %{buildroot}%{_datadir}/selinux
f48bdd6
%endif
Juan Orti Alcaine 88f7379
0014f99
43a9593
%check
43a9593
# check whether radicale binary is at least displaying help
43a9593
echo "Check whether 'radicale' is at least able to display online help"
43a9593
PYTHONPATH=%{buildroot}%{python3_sitelib} %{buildroot}%{_bindir}/%{name} --help >/dev/null
43a9593
if [ $? -eq 0 ]; then
43a9593
  echo "Check whether 'radicale' is at least able to display online help - SUCCESSFUL"
43a9593
else
43a9593
  exit 1
43a9593
fi
43a9593
0014f99
# create radicale collections with examples
0014f99
mkdir -p %{buildroot}%{_sharedstatedir}/%{name}/collection-root/test-ics
0014f99
mkdir -p %{buildroot}%{_sharedstatedir}/%{name}/collection-root/test-vcf
0014f99
cp %{SOURCE50} %{buildroot}%{_sharedstatedir}/%{name}/collection-root/test-ics/
0014f99
cp %{SOURCE51} %{buildroot}%{_sharedstatedir}/%{name}/collection-root/test-vcf/
0014f99
echo '{"tag": "VADDRESSBOOK"}' >%{buildroot}%{_sharedstatedir}/%{name}/collection-root/test-vcf/.Radicale.props
0014f99
echo '{"tag": "VCALENDAR"}'    >%{buildroot}%{_sharedstatedir}/%{name}/collection-root/test-ics/.Radicale.props
0014f99
0014f99
PYTHONPATH=%{buildroot}%{python3_sitelib} %{buildroot}%{_bindir}/%{name} -D --verify-storage --storage-filesystem-folder /%{buildroot}%{_sharedstatedir}/%{name}
0014f99
if [ $? -eq 0 ]; then
0014f99
  echo "Check whether 'radicale' is able to verify example storage - SUCCESSFUL"
0014f99
else
0014f99
  exit 1
0014f99
fi
0014f99
0014f99
# cleanup before packaging
0014f99
rm -rf %{buildroot}%{_sharedstatedir}/%{name}/collection-root
0014f99
rm -rf %{buildroot}%{_sharedstatedir}/%{name}/.Radicale.lock
0014f99
43a9593
cd13139
%pre -n %{radicale_package_name}
cd13139
getent group %{name} >/dev/null || groupadd -r %{name}
cd13139
getent passwd %{name} >/dev/null || \
cd13139
    useradd -r -g %{name} -d %{_sharedstatedir}/%{name} -s /sbin/nologin \
cd13139
    -c "Radicale service account" %{name}
16b9421
exit 0
16b9421
43a9593
cd13139
%post -n %{radicale_package_name}
cd13139
%systemd_post %{name}.service
017bd66
017bd66
017bd66
%post -n %{radicale_package_name}-selinux
c432147
for selinuxvariant in %{selinux_variants}
c432147
do
cd13139
  if rpm -q selinux-policy-$selinuxvariant >/dev/null 2>&1; then
cd13139
    echo "SELinux semodule store for %{radicale_package_name} ($selinuxvariant)"
cd13139
    /usr/sbin/semodule -s ${selinuxvariant} -i \
cd13139
      %{_datadir}/selinux/${selinuxvariant}/%{name}.pp
cd13139
  else
cd13139
    echo "SELinux semodule store for %{radicale_package_name} ($selinuxvariant) SKIPPED - policy not installed"
cd13139
  fi
c432147
done
c432147
# http://danwalsh.livejournal.com/10607.html
cd13139
if semanage port -l | grep -q "^radicale_port_t\s*tcp\s*5232$"; then
cd13139
  echo "SELinux adjustments for %{radicale_package_name} port tcp/5232 already done"
cd13139
else
cd13139
  echo "SELinux adjustments for %{radicale_package_name} port tcp/5232"
cd13139
  semanage port -a -t radicale_port_t -p tcp 5232
cd13139
fi
cd13139
cd13139
echo "SELinux fixfiles for: %{radicale_package_name}"
cd13139
/usr/sbin/fixfiles -R %{radicale_package_name} restore >/dev/null
cd13139
1d852c7
if [ -d %{_localstatedir}/log/%{name} ]; then
1d852c7
  echo "SELinux restorecon for: %{_localstatedir}/log/%{name}"
1d852c7
  /usr/sbin/restorecon -R %{_localstatedir}/log/%{name}
1d852c7
fi
cd13139
cd13139
cd13139
%post -n %{radicale_package_name}-httpd
43a9593
# nothing related included so far in radicale.fc
43a9593
#echo "SELinux fixfiles for: %{radicale_package_name}-httpd"
43a9593
#/usr/sbin/fixfiles -R %{radicale_package_name}-httpd restore >/dev/null
Juan Orti Alcaine 88f7379
18d1e53
cd13139
%post -n python3-%{radicale_package_name}
43a9593
# nothing related included so far in radicale.fc
43a9593
#echo "SELinux fixfiles for: python3-%{radicale_package_name}"
43a9593
#/usr/sbin/fixfiles -R python3-%{radicale_package_name} restore >/dev/null
cd13139
cd13139
cd13139
%preun -n %{radicale_package_name}
cd13139
%systemd_preun %{name}.service
cd13139
017bd66
cd13139
%postun -n %{radicale_package_name}
cd13139
%systemd_postun_with_restart %{name}.service 
017bd66
017bd66
017bd66
%postun -n %{radicale_package_name}-selinux
Juan Orti Alcaine 88f7379
if [ $1 -eq 0 ] ; then
cd13139
  if semanage port -l | grep -q "^radicale_port_t\s*tcp\s*5232$"; then
cd13139
    echo "SELinux delete for %{radicale_package_name} port tcp/5232"
cd13139
    semanage port -d -p tcp 5232
cd13139
  fi
Juan Orti Alcaine 88f7379
  for selinuxvariant in %{selinux_variants}
Juan Orti Alcaine 88f7379
  do
cd13139
    if rpm -q selinux-policy-$selinuxvariant >/dev/null 2>&1; then
cd13139
      echo "SELinux semodule reset %{radicale_package_name} ($selinuxvariant)"
cd13139
      /usr/sbin/semodule -s ${selinuxvariant} -r %{name}
cd13139
    else
cd13139
      echo "SELinux semodule reset %{radicale_package_name} ($selinuxvariant) SKIPPED - policy not installed"
cd13139
    fi
Juan Orti Alcaine 88f7379
  done
cd13139
cd13139
  if [ -d %{_localstatedir}/log/%{name} ]; then
cd13139
    echo "SELinux restorecon for: %{_localstatedir}/log/%{name}"
cd13139
    /usr/sbin/restorecon -R %{_localstatedir}/log/%{name}
cd13139
  fi
Juan Orti Alcaine 88f7379
fi
Juan Orti Alcaine 88f7379
43a9593
1b69b46
%files -n %{radicale_package_name}
ff1ce95
%doc README.md NEWS.md
cd13139
%{_bindir}/%{name}
cd13139
%dir %{_sysconfdir}/%{name}/
cd13139
%config(noreplace) %attr(0640, root, %{name}) %{_sysconfdir}/%{name}/config
bc1de5c
%if %{?radicale_major} < 3
cd13139
%config(noreplace) %{_sysconfdir}/%{name}/logging
bc1de5c
%endif
cd13139
%config(noreplace) %{_sysconfdir}/%{name}/rights
d65a889
%if %{?radicale_major} < 3
cd13139
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
d65a889
%endif
cd13139
%{_unitdir}/%{name}.service
cd13139
%{_tmpfilesdir}/%{name}.conf
d65a889
%if %{?radicale_major} < 3
cd13139
%dir %attr(750, %{name}, %{name}) %{_localstatedir}/log/%{name}
d65a889
%endif
cd13139
%dir %attr(750, %{name}, %{name}) %{_sharedstatedir}/%{name}/
cd13139
%dir %{_datadir}/%{name}
d65a889
%dir %attr(755, %{name}, %{name}) %{_rundir}/%{name}
017bd66
017bd66
017bd66
%files -n %{radicale_package_name}-selinux
017bd66
%doc SELinux/*
cd13139
%{_datadir}/selinux/*/%{name}.pp
16b9421
43a9593
1b69b46
%files -n python3-%{radicale_package_name}
c432147
%license COPYING
cd13139
%{python3_sitelib}/%{name}
c432147
%{python3_sitelib}/Radicale-*.egg-info
c432147
43a9593
1b69b46
%files -n %{radicale_package_name}-httpd
cd13139
%{_datadir}/%{name}/%{name}.wsgi
bc1de5c
%if %{?radicale_major} < 3
cd13139
%{_datadir}/%{name}/%{name}.fcgi
bc1de5c
%endif
cd13139
%config(noreplace) %{_sysconfdir}/httpd/conf.d/%{name}.conf
16b9421
43a9593
16b9421
%changelog
a8b59ee
* Fri Mar 05 2021 Peter Bieringer <pb@bieringer.de> - 3.0.6-17
017bd66
- Move SELinux into dedicated subpackage and add as suggestion to main package (RHBZ#1934895)
017bd66
1d852c7
* Sun Nov 08 2020 Peter Bieringer <pb@bieringer.de> - 3.0.6-13
1d852c7
- Only SELinux relabel log directory if existing
1d852c7
fea2762
* Sat Nov 07 2020 Peter Bieringer <pb@bieringer.de> - 3.0.6-12
fea2762
- Remove no longer required/supported log directory from SELinux file context
fea2762
1e91d2f
* Tue Sep 22 2020 Peter Bieringer <pb@bieringer.de> - 3.0.6-11
4eb52c6
- Merge 3.0.6-10 from master
3237e2b
- Disable -D in systemd unit file for major version 3
3237e2b
- Toggle loglevel to info by default
3237e2b
- No longer package /var/log/radicale and the logrotate config for major version 3 (logs only to stdout/stderr now)
3237e2b
- Replace /var/run with _rundir (additional leftovers found)
3237e2b
- Add additional test with an example collection
3237e2b
- Cosmetic cleanup
3237e2b
- Do not use fixfiles in subpackages which have nothing related defined so far
3237e2b
- Enable -D in systemd unit file for major version 3
3237e2b
- Add 'check' section and related build requirements
3237e2b
- Remove additional failsafe checks to prevent manual upgrade from major version 2 (no longer needed)
3237e2b
- Revert use of radicale_package name (no no longer needed)
3237e2b
- Fix hidden SELinux post-install/post-uninstall issues
3237e2b
- Fix attributes for wsgi/fcgi
3237e2b
- Fix not working pre/post with new major version in package
3237e2b
- Include major version in package name
3237e2b
- Adjust systemd unit file for major version 3
3237e2b
- Version 3.0.6 (obsoletes fcgi and logging config file)
3237e2b
- Add additional failsafe checks to prevent manual upgrade from major version 2
3237e2b
- Replace /var/run with _rundir
bc1de5c
9e72e72
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.12-3
9e72e72
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
9e72e72
87e3639
* Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 2.1.12-2
87e3639
- Rebuilt for Python 3.9
87e3639
379a0d3
* Tue May 19 2020 Juan Orti Alcaine <jortialc@redhat.com> - 2.1.12-1
379a0d3
- Version 2.1.12
379a0d3
da0bc89
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.11-3
da0bc89
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
da0bc89
f48bdd6
* Sun Jan 12 2020 Juan Orti Alcaine <jortialc@redhat.com> - 2.1.11-2
f48bdd6
- Fix hardlink path on epel
f48bdd6
cbd9b0d
* Sun Jan 05 2020 Juan Orti Alcaine <jortialc@redhat.com> - 2.1.11-1
cbd9b0d
- Version 2.1.11
cbd9b0d
d2b1ee7
* Thu Oct 03 2019 Miro Hrončok <mhroncok@redhat.com> - 2.1.10-7
d2b1ee7
- Rebuilt for Python 3.8.0rc1 (#1748018)
d2b1ee7
105bbec
* Mon Aug 26 2019 Juan Orti Alcaine <jortialc@redhat.com> - 2.1.10-6
105bbec
- Use autogenerated python dependencies
105bbec
f9b2a65
* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 2.1.10-5
f9b2a65
- Rebuilt for Python 3.8
f9b2a65
de522cb
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.10-4
de522cb
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
de522cb
3a8d771
* Wed Jun 19 2019 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.1.10-3
3a8d771
- hardlink moved to /usr/bin
3a8d771
bbbf47b
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.10-2
bbbf47b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
bbbf47b
e3a659d
* Mon Sep 10 2018 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.1.10-1
e3a659d
- Version 2.1.10
e3a659d
2eaec43
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.9-5
2eaec43
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
2eaec43
e7b9562
* Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 2.1.9-4
e7b9562
- Rebuilt for Python 3.7
e7b9562
df24406
* Thu May 31 2018 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.1.9-3
df24406
- Add versioned dependencies
df24406
Juan Orti Alcaine 4a9c3bb
* Wed May 23 2018 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.1.9-2
Juan Orti Alcaine 4a9c3bb
- Recommends: python3-bcrypt, python3-passlib
Juan Orti Alcaine 4a9c3bb
Juan Orti Alcaine 7304bf1
* Wed May 16 2018 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.1.9-1
Juan Orti Alcaine 7304bf1
- Version 2.1.9
Juan Orti Alcaine 7304bf1
a945a3f
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.8-4
a945a3f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
a945a3f
283e4b3
* Thu Nov 16 2017 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.1.8-3
283e4b3
- SELinux rule to allow connection to POP port
283e4b3
54dccb6
* Sun Oct 08 2017 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.1.8-2
54dccb6
- Run in daemon mode so it creates the PID file
54dccb6
d93708c
* Mon Sep 25 2017 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.1.8-1
d93708c
- Version 2.1.8
d93708c
Juan Orti Alcaine b3634af
* Wed Sep 20 2017 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.1.7-1
Juan Orti Alcaine b3634af
- Version 2.1.7
Juan Orti Alcaine b3634af
e19a151
* Tue Sep 12 2017 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.1.6-2
e19a151
- Upload 2.1.6 sources
e19a151
c58082f
* Tue Sep 12 2017 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.1.6-1
c58082f
- Version 2.1.6
c58082f
59ae5f7
* Sun Aug 27 2017 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.1.5-1
59ae5f7
- Version 2.1.5
59ae5f7
d1471e0
* Mon Aug 07 2017 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.1.4-1
d1471e0
- Version 2.1.4
d1471e0
8e5f6db
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.2-2
8e5f6db
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
8e5f6db
0381b3b
* Mon Jul 24 2017 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.1.2-1
0381b3b
- Version 2.1.2
0381b3b
bfaea1b
* Sat Jul 01 2017 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.1.1-1
bfaea1b
- Version 2.1.1
bfaea1b
f4cd1ca
* Fri Jun 30 2017 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.1.0-3
f4cd1ca
- Update SELinux policy
f4cd1ca
b7ad1f0
* Fri Jun 30 2017 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.1.0-2
b7ad1f0
- Remove PrivateDevices=true (RHBZ#1452328)
b7ad1f0
ff1ce95
* Sun Jun 25 2017 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.1.0-1
ff1ce95
- Version 2.1.0
ff1ce95
409dda0
* Sun May 28 2017 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.0.0-1
409dda0
- Version 2.0.0
409dda0
acf65de
* Wed May 03 2017 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.0.0rc2-2
acf65de
- Run in foreground
acf65de
acf65de
* Wed May 03 2017 Juan Orti Alcaine <jorti@fedoraproject.org> - 2.0.0rc2-1
1b8ba54
- Version 2.0.0rc2
1b8ba54
- Drop python2 support
1b8ba54
a998054
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.1-11
a998054
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
a998054
b314235
* Mon Dec 19 2016 Miro Hrončok <mhroncok@redhat.com> - 1.1.1-10
b314235
- Rebuild for Python 3.6
b314235
089cc0d
* Fri Dec 09 2016 Juan Orti Alcaine <jorti@fedoraproject.org> - 1.1.1-9
089cc0d
- Allow radicale_t to execute bin_t in SELinux policy RHBZ#1393569
089cc0d
b5c28e9
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1.1-8
b5c28e9
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
b5c28e9
4629192
* Fri Jul 01 2016 Juan Orti Alcaine <jorti@fedoraproject.org> - 1.1.1-7
4629192
- Additional systemd hardening
4629192
5328bb0
* Fri Jun 24 2016 Juan Orti Alcaine <jorti@fedoraproject.org> - 1.1.1-6
5328bb0
- Correctly label the files
5328bb0
c432147
* Wed Jun 22 2016 Juan Orti Alcaine <jorti@fedoraproject.org> - 1.1.1-5
c432147
- Add /var/run/radicale directory
c432147
c432147
* Tue Jun 21 2016 Juan Orti Alcaine <jorti@fedoraproject.org> - 1.1.1-4
c432147
- Update dependencies
c432147
c432147
* Tue Jun 21 2016 Juan Orti Alcaine <jorti@fedoraproject.org> - 1.1.1-3
c432147
- Create python2 subpackage
c432147
473a845
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.1-2
473a845
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
473a845
37d4bc8
* Fri Jan 08 2016 Juan Orti Alcaine <jorti@fedoraproject.org> - 1.1.1-1
37d4bc8
- Update to 1.1.1 (#1296746)
37d4bc8
e3df4ab
* Fri Jan 01 2016 Juan Orti Alcaine <jorti@fedoraproject.org> - 1.1-1
e3df4ab
- Version 1.1
e3df4ab
2fa1499
* Tue Nov 10 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.1-4
2fa1499
- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5
2fa1499
a072a02
* Thu Nov 05 2015 Juan Orti Alcaine <jorti@fedoraproject.org> - 1.0.1-3
a072a02
- Fix radicale-httpd for python3
a072a02
8c1b00b
* Thu Sep 24 2015 Juan Orti Alcaine <jorti@fedoraproject.org> - 1.0.1-2
8c1b00b
- Unify spec for Fedora and epel7
8c1b00b
eb3f223
* Tue Sep 22 2015 Juan Orti Alcaine <jorti@fedoraproject.org> - 1.0.1-1
eb3f223
- Version 1.0.1
eb3f223
18d1e53
* Tue Sep 15 2015 Juan Orti Alcaine <jorti@fedoraproject.org> - 1.0-1
18d1e53
- Version 1.0
18d1e53
- Merge SELinux subpackage into the main package
18d1e53
b7a3686
* Mon Sep 07 2015 Juan Orti Alcaine <jorti@fedoraproject.org> - 0.10-7
b7a3686
- Drop old _selinux_policy_version hack
b7a3686
- Require radicale-selinux
b7a3686
687149b
* Fri Jul 24 2015 Tomas Radej <tradej@redhat.com> - 0.10-6
687149b
- Updated dep on policycoreutils-python-utils
687149b
71eb10f
* Wed Jun 17 2015 Juan Orti Alcaine <jorti@fedoraproject.org> - 0.10-5
71eb10f
- Switch to python3
71eb10f
Juan Orti Alcaine e17c2dd
* Thu Apr 09 2015 Juan Orti Alcaine <jorti@fedoraproject.org> - 0.10-4
Juan Orti Alcaine e17c2dd
- Use license macro
Juan Orti Alcaine e17c2dd
Juan Orti Alcaine 0f63bce
* Mon Apr 06 2015 Juan Orti Alcaine <jorti@fedoraproject.org> - 0.10-3
Juan Orti Alcaine 0f63bce
- Add patch1 to fix rhbz#1206813
Juan Orti Alcaine 0f63bce
Juan Orti Alcaine 883620c
* Tue Feb 24 2015 Juan Orti Alcaine <jorti@fedoraproject.org> - 0.10-2
Juan Orti Alcaine 883620c
- Add radicale_var_run_t to SELinux policy 1.0.3
Juan Orti Alcaine 883620c
Juan Orti Alcaine 36994a6
* Tue Jan 13 2015 Juan Orti Alcaine <jorti@fedoraproject.org> - 0.10-1
Juan Orti Alcaine 36994a6
- Version 0.10
Juan Orti Alcaine 36994a6
Juan Orti Alcaine e2fc547
* Mon Aug 18 2014 Juan Orti Alcaine <jorti@fedoraproject.org> - 0.9-2
Juan Orti Alcaine e2fc547
- Hide error when re-adding SELinux port label.
Juan Orti Alcaine e2fc547
Juan Orti Alcaine 7f477fe
* Thu Aug 14 2014 Juan Orti Alcaine <jorti@fedoraproject.org> - 0.9-1
Juan Orti Alcaine 7f477fe
- Version 0.9
Juan Orti Alcaine 7f477fe
- Automatically restart service if it dies.
Juan Orti Alcaine 7f477fe
- Update systemwide patch
Juan Orti Alcaine 7f477fe
Juan Orti Alcaine 0b326c3
* Mon Aug 04 2014 Juan Orti Alcaine <jorti@fedoraproject.org> - 0.8-11
Juan Orti Alcaine 0b326c3
- Handle PID file.
Juan Orti Alcaine 0b326c3
Juan Orti Alcaine 599aeb7
* Thu Jul 17 2014 Juan Orti Alcaine <jorti@fedoraproject.org> - 0.8-10
Juan Orti Alcaine 599aeb7
- Add network-online.target dependency. Bug #1119818
Juan Orti Alcaine 599aeb7
61fa7dc
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8-9
61fa7dc
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
61fa7dc
9a62e50
* Tue Apr 29 2014 Juan Orti Alcaine <jorti@fedoraproject.org> - 0.8-8
9a62e50
- Add PrivateDevices to unit file
9a62e50
Juan Orti Alcaine fee2ec8
* Wed Dec 25 2013 Juan Orti Alcaine <jorti@fedoraproject.org> - 0.8-7
Juan Orti Alcaine fee2ec8
- SELinux policy 1.0.2
Juan Orti Alcaine fee2ec8
Juan Orti Alcaine f75af5e
* Fri Nov 29 2013 Juan Orti Alcaine <jorti@fedoraproject.org> - 0.8-6
Juan Orti Alcaine f75af5e
- SELinux policy 1.0.1 fix bug #1035925
Juan Orti Alcaine f75af5e
Juan Orti Alcaine 1ddee5c
* Fri Nov 08 2013 Juan Orti Alcaine <jorti@fedoraproject.org> - 0.8-5
Juan Orti Alcaine 1ddee5c
- Hardcode _selinux_policy_version in F20 because of #999584
Juan Orti Alcaine 1ddee5c
Juan Orti Alcaine 597f8a4
* Thu Oct 03 2013 Juan Orti Alcaine <jorti@fedoraproject.org> - 0.8-4
Juan Orti Alcaine 88f7379
- Update httpd config file and add SELinux policy. Bug #1014408
Juan Orti Alcaine 597f8a4
16b9421
* Tue Aug 27 2013 Juan Orti Alcaine <jorti@fedoraproject.org> - 0.8-3
16b9421
- Move .wsgi and .fcgi to main package
16b9421
16b9421
* Sun Jul 21 2013 Juan Orti Alcaine <jorti@fedoraproject.org> - 0.8-2
16b9421
- BuildRequire python2-devel
16b9421
16b9421
* Thu Jul 18 2013 Juan Orti Alcaine <jorti@fedoraproject.org> - 0.8-1
16b9421
- Update to version 0.8
16b9421
- Merge Till Maas's spec file. Bug #922276
16b9421
16b9421
* Mon Jul 08 2013 Juan Orti Alcaine <jorti@fedoraproject.org> - 0.7.1-1
16b9421
- Initial packaging