Changeset: 0eedf06caacb for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=0eedf06caacb
Modified Files:
        MonetDB.spec
        buildtools/selinux/monetdb.fc
        buildtools/selinux/monetdb.te
        debian/monetdb5-sql.postinst
        debian/rules
Branch: Nov2019
Log Message:

Use _rundir macro in .spec file, use /run instead of /var/run everywhere.
Only CentOS 6 uses /var/run, but it doesn't use the selinux files that
are affected by using /run.


diffs (125 lines):

diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -41,6 +41,12 @@
 %global fedpkgs 1
 %endif
 
+%if %{?rhel:1}%{!?rhel:0} && 0%{?rhel} < 7
+# RedHat Enterprise Linux < 7
+# There is no macro _rundir, and no directory /run, instead use /var/run.
+%global _rundir %{_localstatedir}/run
+%endif
+
 # On Fedora, the geos library is available, and so we can require it
 # and build the geom modules.  On RedHat Enterprise Linux and
 # derivatives (CentOS, Scientific Linux), the geos library is not
@@ -756,14 +762,13 @@ use SQL with MonetDB, you will need to i
 %{_bindir}/monetdb
 %{_bindir}/monetdbd
 %dir %attr(775,monetdb,monetdb) %{_localstatedir}/log/monetdb
+%dir %attr(775,monetdb,monetdb) %{_rundir}/monetdb
 %if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
 # RHEL >= 7, and all current Fedora
-%dir %attr(775,monetdb,monetdb) /run/monetdb
 %{_tmpfilesdir}/monetdbd.conf
 %{_unitdir}/monetdbd.service
 %else
 # RedHat Enterprise Linux < 7
-%dir %attr(775,monetdb,monetdb) %{_localstatedir}/run/monetdb
 %exclude %{_sysconfdir}/tmpfiles.d/monetdbd.conf
 # no _unitdir macro
 %exclude %{_prefix}/lib/systemd/system/monetdbd.service
@@ -901,9 +906,7 @@ do
   /usr/sbin/semodule -s ${selinuxvariant} -i \
     %{_datadir}/selinux/${selinuxvariant}/monetdb.pp &> /dev/null || :
 done
-# use %{_localstatedir}/run/monetdb here for EPEL 6; on other systems,
-# %{_localstatedir}/run is a symlink to /run
-/sbin/restorecon -R %{_localstatedir}/monetdb5 %{_localstatedir}/log/monetdb 
%{_localstatedir}/run/monetdb %{_bindir}/monetdbd %{_bindir}/mserver5 
%{_unitdir}/monetdbd.service &> /dev/null || :
+/sbin/restorecon -R %{_localstatedir}/monetdb5 %{_localstatedir}/log/monetdb 
%{_rundir}/monetdb %{_bindir}/monetdbd %{_bindir}/mserver5 
%{_unitdir}/monetdbd.service &> /dev/null || :
 /usr/bin/systemctl try-restart monetdbd.service
 
 %postun selinux
@@ -916,9 +919,7 @@ if [ $1 -eq 0 ] ; then
   do
     /usr/sbin/semodule -s ${selinuxvariant} -r monetdb &> /dev/null || :
   done
-  # use %{_localstatedir}/run/monetdb here for EPEL 6; on other systems,
-  # %{_localstatedir}/run is a symlink to /run
-  /sbin/restorecon -R %{_localstatedir}/monetdb5 %{_localstatedir}/log/monetdb 
%{_localstatedir}/run/monetdb %{_bindir}/monetdbd %{_bindir}/mserver5 
%{_unitdir}/monetdbd.service &> /dev/null || :
+  /sbin/restorecon -R %{_localstatedir}/monetdb5 %{_localstatedir}/log/monetdb 
%{_rundir}/monetdb %{_bindir}/monetdbd %{_bindir}/mserver5 
%{_unitdir}/monetdbd.service &> /dev/null || :
   if [ $active = active ]; then
     /usr/bin/systemctl start monetdbd.service
   fi
@@ -955,6 +956,7 @@ export CFLAGS
 # do not use --enable-optimize or --disable-optimize: we don't want
 # any changes to optimization flags
 %{configure} \
+       --with-rundir=%{_rundir} \
        --enable-assert=no \
        --enable-debug=yes \
        --enable-developer=no \
@@ -1028,13 +1030,7 @@ rmdir %{buildroot}%{_sysconfdir}/tmpfile
 install -d -m 0750 %{buildroot}%{_localstatedir}/MonetDB
 install -d -m 0770 %{buildroot}%{_localstatedir}/monetdb5/dbfarm
 install -d -m 0775 %{buildroot}%{_localstatedir}/log/monetdb
-%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
-# RHEL >= 7, and all current Fedora
-install -d -m 0775 %{buildroot}/run/monetdb
-%else
-# RedHat Enterprise Linux < 7
-install -d -m 0775 %{buildroot}%{_localstatedir}/run/monetdb
-%endif
+install -d -m 0775 %{buildroot}%{_rundir}/monetdb
 
 # remove unwanted stuff
 # .la files
diff --git a/buildtools/selinux/monetdb.fc b/buildtools/selinux/monetdb.fc
--- a/buildtools/selinux/monetdb.fc
+++ b/buildtools/selinux/monetdb.fc
@@ -4,6 +4,6 @@
 /var/log/monetdb(/.*)?                                 
gen_context(system_u:object_r:monetdbd_log_t,s0)
 /var/monetdb5/dbfarm(/.*)?                             
gen_context(system_u:object_r:mserver5_db_t,s0)
 /var/monetdb5/dbfarm/\.merovingian_properties  --      
gen_context(system_u:object_r:monetdbd_etc_t,s0)
-/var/run/monetdb(/.*)?                                 
gen_context(system_u:object_r:monetdbd_var_run_t,s0)
+/run/monetdb(/.*)?                                     
gen_context(system_u:object_r:monetdbd_var_run_t,s0)
 /var/monetdb5/dbfarm/\.merovingian_lock                --      
gen_context(system_u:object_r:monetdbd_lock_t,s0)
 /var/monetdb5/dbfarm/.*/\.gdk_lock             --      
gen_context(system_u:object_r:mserver5_lock_t,s0)
diff --git a/buildtools/selinux/monetdb.te b/buildtools/selinux/monetdb.te
--- a/buildtools/selinux/monetdb.te
+++ b/buildtools/selinux/monetdb.te
@@ -1,4 +1,4 @@
-policy_module(monetdb, 0.7)
+policy_module(monetdb, 0.8)
 # The above line declares that this file is a SELinux policy file. Its
 # name is monetdb, so the file should be saved as monetdb.te
 
diff --git a/debian/monetdb5-sql.postinst b/debian/monetdb5-sql.postinst
--- a/debian/monetdb5-sql.postinst
+++ b/debian/monetdb5-sql.postinst
@@ -10,10 +10,10 @@ set -e
 
 case "$1" in
     configure)
-       mkdir -p /var/log/monetdb /var/run/monetdb
-       chown monetdb:monetdb /var/log/monetdb /var/run/monetdb
+       mkdir -p /var/log/monetdb /run/monetdb
+       chown monetdb:monetdb /var/log/monetdb /run/monetdb
        chmod ug=rwx,o= /var/log/monetdb
-       chmod ug=rwx,o=rx /var/run/monetdb
+       chmod ug=rwx,o=rx /run/monetdb
     ;;
 
     abort-upgrade|abort-remove|abort-deconfigure)
diff --git a/debian/rules b/debian/rules
--- a/debian/rules
+++ b/debian/rules
@@ -13,6 +13,7 @@ DH_VERBOSE=1
 
 override_dh_auto_configure:
        dh_auto_configure -- \
+       --with-rundir=/run \
        --enable-assert=no \
        --enable-debug=yes \
        --enable-developer=no \
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to