]> TLD Linux GIT Repositories - packages/mysql.git/blobdiff - mysql.spec
- fix too restrictive permissions on shared directories
[packages/mysql.git] / mysql.spec
index ed861ef2644dfef4fc7f214deddb8a1315a558c8..5fdde4876368a65feabed97c461c67f006bec027 100644 (file)
@@ -120,7 +120,6 @@ BuildRoot:  %{tmpdir}/mysql-%{version}-root-%(id -u -n)
 
 %define                _libexecdir     %{_sbindir}
 %define                _localstatedir  /var/lib/%{name}
-%define                _mysqlhome      /home/services/%{name}
 
 %define                mysqldatadir    share/mysql/%{mysqlversion}
 %define                mysqllibdir     %{_lib}/mysql/%{mysqlversion}
@@ -548,7 +547,6 @@ CPPFLAGS="%{rpmcppflags}" \
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT/etc/{logrotate.d,rc.d/init.d,sysconfig,mysql/%{mysqlversion},skel} \
           $RPM_BUILD_ROOT/var/{log/{archive,}/mysql/%{mysqlversion},lib/{mysql,mysql-files}/%{mysqlversion}} \
-          $RPM_BUILD_ROOT%{_mysqlhome} \
           $RPM_BUILD_ROOT%{_libdir}
 
 %{__make} -C build install \
@@ -647,10 +645,6 @@ sed -i -e '/libs/s/-lprobes_mysql//' $RPM_BUILD_ROOT%{_libdir}/mysql/%{mysqlvers
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-%pre
-%groupadd -g 89 mysql
-%useradd -u 89 -d %{_mysqlhome} -s /bin/false -g mysql -c "%{name} Server" mysql
-
 %post
 /sbin/ldconfig
 /sbin/chkconfig --add %{name}
@@ -723,6 +717,14 @@ if [ "$1" = "0" ]; then
        update-alternatives --remove mysql_upgrade %{_libdir}/mysql/%{mysqlversion}/sbin/mysql_upgrade || :
        update-alternatives --remove mysqlcheck %{_libdir}/mysql/%{mysqlversion}/sbin/mysqlcheck || :
        update-alternatives --remove mysqld %{_libdir}/mysql/%{mysqlversion}/sbin/mysqld || :
+fi
+
+%pre -n mysql-common
+%groupadd -g 89 mysql
+%useradd -u 89 -d /var/lib/mysql -s /bin/false -g mysql -c "MySQL Server" mysql
+
+%postun -n mysql-common
+if [ "$1" = "0" ]; then
        %userremove mysql
        %groupremove mysql
 fi
@@ -801,6 +803,16 @@ if [ $1 -eq 0 ]; then
        update-alternatives --remove mysqldumpslow %{_libdir}/mysql/%{mysqlversion}/bin/mysqldumpslow || :
 fi
 
+%posttrans -n mysql-devel
+update-alternatives \
+       --install %{_bindir}/mysql_config mysql_config %{_libdir}/mysql/%{mysqlversion}/bin/mysql_config %{mysqlpriority} \
+       --slave %{_mandir}/man1/mysql_config.1 mysql_config.1 %{_datadir}/mysql/%{mysqlversion}/man/man1/mysql_config.1* || :
+
+%postun -n mysql-devel
+if [ $1 -eq 0 ]; then
+       update-alternatives --remove mysql_config %{_libdir}/mysql/%{mysqlversion}/bin/mysql_config || :
+fi
+
 %post ndb
 /sbin/chkconfig --add %{name}-ndb
 %service %{name}-ndb restart "%{name} NDB engine"
@@ -1038,7 +1050,6 @@ fi
 %{_datadir}/mysql/%{mysqlversion}/man/man1/*resolve_stack_dump.1*
 %endif
 
-%attr(700,mysql,mysql) %{_mysqlhome}
 %attr(640,mysql,mysql) %ghost /var/log/mysql/%{mysqlversion}/*
 
 # This is template for configuration file which is created after 'service mysql init'
@@ -1081,13 +1092,17 @@ fi
 %{_datadir}/mysql/%{mysqlversion}/lang/charsets
 
 %files -n mysql-common
+%defattr(644,root,root,755)
 %attr(751,root,root) %dir %{_sysconfdir}/mysql
-%attr(751,root,root) %dir %{_libdir}/mysql
-%attr(751,root,root) %dir %{_datadir}/mysql
+%dir %{_libdir}/mysql
+%dir %{_datadir}/mysql
 %attr(751,root,root) %dir /var/lib/mysql
 %attr(751,root,root) %dir /var/lib/mysql-files
+%attr(751,root,root) %dir /var/log/mysql
+%attr(751,root,root) %dir /var/log/archive/mysql
 
 %files dirs
+%defattr(644,root,root,755)
 %attr(751,root,root) %dir %{_sysconfdir}/mysql/%{mysqlversion}
 # root:root is proper here for mysql.rpm while mysql:mysql is potential security hole
 %attr(751,root,root) %dir /var/lib/mysql/%{mysqlversion}