Work on rpm package

This commit is contained in:
Laurent Destailleur 2011-08-06 19:17:00 +00:00
parent bb8db73125
commit cf393af750
5 changed files with 150 additions and 83 deletions

View File

@ -73,37 +73,33 @@ cui hai bisogno ed essere facile da usare.
%setup -q %setup -q
#---- build #---- build
%build %build
# Nothing to build # Nothing to build
#---- install #---- install
%install %install
%{__rm} -rf $RPM_BUILD_ROOT %{__rm} -rf $RPM_BUILD_ROOT
%{__mkdir} -p $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr %{__mkdir} -p $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr
%{__install} -m 644 etc/dolibarr/conf.php $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/conf.php
%{__install} -m 644 etc/dolibarr/install.forced.php $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/install.forced.php
%{__install} -m 644 etc/dolibarr/apache.conf $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/apache.conf %{__install} -m 644 etc/dolibarr/apache.conf $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/apache.conf
%{__install} -m 644 etc/dolibarr/file_contexts.dolibarr $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/file_contexts.dolibarr %{__install} -m 644 etc/dolibarr/file_contexts.dolibarr $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/file_contexts.dolibarr
%{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}/pixmaps %{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}/pixmaps
%{__install} -m 644 usr/share/dolibarr/doc/images/dolibarr_48x48.png $RPM_BUILD_ROOT%{_datadir}/pixmaps/dolibarr.png %{__install} -m 644 usr/share/dolibarr/doc/images/dolibarr_48x48.png $RPM_BUILD_ROOT%{_datadir}/pixmaps/dolibarr.png
%{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}/applications %{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}/applications
%{__desktop-file-install} -m 644 usr/share/dolibarr/build/rpm/dolibarr.desktop $RPM_BUILD_ROOT%{_datadir}/applications/dolibarr.desktop %{__desktop-file-install} -m 644 usr/share/dolibarr/build/rpmfedora/dolibarr.desktop $RPM_BUILD_ROOT%{_datadir}/applications/dolibarr.desktop
%{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/build %{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/build
%{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/htdocs %{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/htdocs
%{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/scripts %{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/scripts
%{__mkdir} -p $RPM_BUILD_ROOT/usr/share/doc/dolibarr %{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}/doc/dolibarr
%{__cp} -pr usr/share/dolibarr/build $RPM_BUILD_ROOT/usr/share/dolibarr %{__cp} -pr usr/share/dolibarr/build $RPM_BUILD_ROOT/usr/share/dolibarr
%{__cp} -pr usr/share/dolibarr/htdocs $RPM_BUILD_ROOT/usr/share/dolibarr %{__cp} -pr usr/share/dolibarr/htdocs $RPM_BUILD_ROOT/usr/share/dolibarr
%{__cp} -pr usr/share/dolibarr/scripts $RPM_BUILD_ROOT/usr/share/dolibarr %{__cp} -pr usr/share/dolibarr/scripts $RPM_BUILD_ROOT/usr/share/dolibarr
%{__cp} -pr usr/share/dolibarr/doc/* $RPM_BUILD_ROOT/usr/share/doc/dolibarr %{__cp} -pr usr/share/dolibarr/doc/* $RPM_BUILD_ROOT%{_datadir}/doc/dolibarr
%{__install} -m 644 usr/share/dolibarr/COPYRIGHT $RPM_BUILD_ROOT/usr/share/doc/dolibarr/COPYRIGHT %{__install} -m 644 usr/share/dolibarr/COPYRIGHT $RPM_BUILD_ROOT%{_datadir}/doc/dolibarr/COPYRIGHT
#---- clean #---- clean
@ -111,12 +107,11 @@ cui hai bisogno ed essere facile da usare.
%{__rm} -rf $RPM_BUILD_ROOT %{__rm} -rf $RPM_BUILD_ROOT
#---- files #---- files
%files %files
%defattr(-, root, root, 0755) %defattr(-, root, root, 0755)
%doc /usr/share/doc/dolibarr %doc /usr/share/doc/dolibarr/*
%dir /usr/share/dolibarr/build %dir /usr/share/dolibarr/build
%dir /usr/share/dolibarr/htdocs %dir /usr/share/dolibarr/htdocs
%dir /usr/share/dolibarr/scripts %dir /usr/share/dolibarr/scripts
@ -126,19 +121,19 @@ cui hai bisogno ed essere facile da usare.
/usr/share/dolibarr/htdocs/* /usr/share/dolibarr/htdocs/*
/usr/share/dolibarr/scripts/* /usr/share/dolibarr/scripts/*
%defattr(0664, -, -) %defattr(0664, -, -, 0755)
%config(noreplace) %{_sysconfdir}/dolibarr/conf.php
%config(noreplace) %{_sysconfdir}/dolibarr/apache.conf %config(noreplace) %{_sysconfdir}/dolibarr/apache.conf
%config(noreplace) %{_sysconfdir}/dolibarr/install.forced.php
%config(noreplace) %{_sysconfdir}/dolibarr/file_contexts.dolibarr %config(noreplace) %{_sysconfdir}/dolibarr/file_contexts.dolibarr
#---- post (after unzip during install) #---- post (after unzip during install)
%post %post
# Define vars # Define vars
export docdir="/var/lib/dolibarr/documents" export docdir="/var/lib/dolibarr/documents"
export installfileorig="/usr/share/dolibarr/build/rpmfedora/install.forced.php.install"
export installconfig="%{_sysconfdir}/dolibarr/install.forced.php"
export config="%{_sysconfdir}/dolibarr/conf.php"
export apachelink="%{_sysconfdir}/httpd/conf.d/dolibarr.conf" export apachelink="%{_sysconfdir}/httpd/conf.d/dolibarr.conf"
export apacheuser='apache'; export apacheuser='apache';
export apachegroup='apache'; export apachegroup='apache';
@ -150,7 +145,19 @@ export apachegroup='apache';
echo Create document directory $docdir echo Create document directory $docdir
%{__mkdir} -p $docdir %{__mkdir} -p $docdir
%{__chown} -R root:$apachegroup /etc/dolibarr/* # Create install.forced.php into Dolibarr install directory
%{__cat} $installfileorig | sed -e 's/__SUPERUSERLOGIN__/root/g' | sed -e 's/__SUPERUSERPASSWORD__//g' > $installconfig
%{__chown} -R root:$apachegroup $installconfig
%{__chmod} -R 660 $installconfig
# Create an empty conf.php with permission to web server
if [ ! -f $config ]
then
echo Create empty file $config
touch $config
%{__chown} -R root:$apachegroup $config
%{__chmod} -R 660 $config
fi
# Create config for se $seconfig # Create config for se $seconfig
echo Add SE Linux permissions for dolibarr echo Add SE Linux permissions for dolibarr
@ -163,7 +170,7 @@ restorecon -R -v /etc/dolibarr
restorecon -R -v /var/lib/dolibarr restorecon -R -v /var/lib/dolibarr
# Create a config link dolibarr.conf # Create a config link dolibarr.conf
if [ ! -L $apachelink ]; then if [ ! -f $apachelink ]; then
echo Create dolibarr web server config link $apachelink echo Create dolibarr web server config link $apachelink
ln -fs %{_sysconfdir}/dolibarr/apache.conf $apachelink ln -fs %{_sysconfdir}/dolibarr/apache.conf $apachelink
fi fi
@ -191,7 +198,7 @@ fi
echo echo
echo "----- Dolibarr %version - (c) Dolibarr dev team -----" echo "----- Dolibarr %version - (c) Dolibarr dev team -----"
echo "Dolibarr files are now installed (into /usr/share/dolibarr)." echo "Dolibarr files are now installed (into /usr/share/dolibarr)."
echo "To finish installation and use Dolibarr, click on the menu" echo "To finish installation and use Dolibarr, click on ne menu"
echo "entry Dolibarr ERP-CRM or call the following page from your" echo "entry Dolibarr ERP-CRM or call the following page from your"
echo "web browser:" echo "web browser:"
echo "http://localhost/dolibarr/" echo "http://localhost/dolibarr/"
@ -203,10 +210,16 @@ echo
%postun %postun
# Define vars # Define vars
export docdir="/var/lib/dolibarr/documents"
export installfileorig="/usr/share/dolibarr/build/rpmfedora/install.forced.php.install"
export installconfig="%{_sysconfdir}/dolibarr/install.forced.php"
export config="%{_sysconfdir}/dolibarr/conf.php"
export apachelink="%{_sysconfdir}/httpd/conf.d/dolibarr.conf" export apachelink="%{_sysconfdir}/httpd/conf.d/dolibarr.conf"
export apacheuser='apache';
export apachegroup='apache';
# Remove apache link # Remove apache link
if [ -L $apachelink ] ; if [ -f $apachelink ] ;
then then
echo Delete apache config link for Dolibarr echo Delete apache config link for Dolibarr
%{__rm} -f $apachelink %{__rm} -f $apachelink
@ -226,6 +239,11 @@ then
fi fi
fi fi
# Removed dirs after apache restart
echo Removed remaining $config
%{__rm} -f $config
echo Removed remaining $installconfig
%{__rm} -f $installconfig
%changelog %changelog

View File

@ -80,20 +80,16 @@ cui hai bisogno ed essere facile da usare.
%setup -q %setup -q
#---- build #---- build
%build %build
# Nothing to build # Nothing to build
#---- install #---- install
%install %install
%{__rm} -rf $RPM_BUILD_ROOT %{__rm} -rf $RPM_BUILD_ROOT
%{__mkdir} -p $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr %{__mkdir} -p $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr
%{__install} -m 644 etc/dolibarr/conf.php $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/conf.php
%{__install} -m 644 etc/dolibarr/install.forced.php $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/install.forced.php
%{__install} -m 644 etc/dolibarr/apache.conf $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/apache.conf %{__install} -m 644 etc/dolibarr/apache.conf $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/apache.conf
%{__install} -m 644 etc/dolibarr/file_contexts.dolibarr $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/file_contexts.dolibarr %{__install} -m 644 etc/dolibarr/file_contexts.dolibarr $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/file_contexts.dolibarr
@ -105,13 +101,12 @@ cui hai bisogno ed essere facile da usare.
%{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/build %{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/build
%{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/htdocs %{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/htdocs
%{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/scripts %{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/scripts
%{__mkdir} -p $RPM_BUILD_ROOT/usr/share/doc/dolibarr %{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}/doc/dolibarr
%{__cp} -pr usr/share/dolibarr/build $RPM_BUILD_ROOT/usr/share/dolibarr %{__cp} -pr usr/share/dolibarr/build $RPM_BUILD_ROOT/usr/share/dolibarr
%{__cp} -pr usr/share/dolibarr/htdocs $RPM_BUILD_ROOT/usr/share/dolibarr %{__cp} -pr usr/share/dolibarr/htdocs $RPM_BUILD_ROOT/usr/share/dolibarr
%{__cp} -pr usr/share/dolibarr/scripts $RPM_BUILD_ROOT/usr/share/dolibarr %{__cp} -pr usr/share/dolibarr/scripts $RPM_BUILD_ROOT/usr/share/dolibarr
%{__cp} -pr usr/share/dolibarr/doc/* $RPM_BUILD_ROOT/usr/share/doc/dolibarr %{__cp} -pr usr/share/dolibarr/doc/* $RPM_BUILD_ROOT%{_datadir}/doc/dolibarr
%{__install} -m 644 usr/share/dolibarr/COPYRIGHT $RPM_BUILD_ROOT/usr/share/doc/dolibarr/COPYRIGHT %{__install} -m 644 usr/share/dolibarr/COPYRIGHT $RPM_BUILD_ROOT%{_datadir}/doc/dolibarr/COPYRIGHT
#---- clean #---- clean
@ -119,12 +114,11 @@ cui hai bisogno ed essere facile da usare.
%{__rm} -rf $RPM_BUILD_ROOT %{__rm} -rf $RPM_BUILD_ROOT
#---- files #---- files
%files %files
%defattr(-, root, root, 0755) %defattr(-, root, root, 0755)
%doc /usr/share/doc/dolibarr %doc /usr/share/doc/dolibarr/*
%dir /usr/share/dolibarr/build %dir /usr/share/dolibarr/build
%dir /usr/share/dolibarr/htdocs %dir /usr/share/dolibarr/htdocs
%dir /usr/share/dolibarr/scripts %dir /usr/share/dolibarr/scripts
@ -156,20 +150,19 @@ cui hai bisogno ed essere facile da usare.
#lang(fr_CH) /usr/share/dolibarr/htdocs/langs/fr_CH #lang(fr_CH) /usr/share/dolibarr/htdocs/langs/fr_CH
#lang(fr) /usr/share/dolibarr/htdocs/langs/fr_FR #lang(fr) /usr/share/dolibarr/htdocs/langs/fr_FR
%defattr(0664, -, -) %defattr(0664, -, -, 0755)
%config(noreplace) %{_sysconfdir}/dolibarr/conf.php
%config(noreplace) %{_sysconfdir}/dolibarr/apache.conf %config(noreplace) %{_sysconfdir}/dolibarr/apache.conf
%config(noreplace) %{_sysconfdir}/dolibarr/install.forced.php
%config(noreplace) %{_sysconfdir}/dolibarr/file_contexts.dolibarr %config(noreplace) %{_sysconfdir}/dolibarr/file_contexts.dolibarr
#---- post (after unzip during install) #---- post (after unzip during install)
%post %post
# Define vars # Define vars
export docdir="/var/lib/dolibarr/documents" export docdir="/var/lib/dolibarr/documents"
export installfileorig="/usr/share/dolibarr/build/rpm/install.forced.php.install"
export installconfig="%{_sysconfdir}/dolibarr/install.forced.php" export installconfig="%{_sysconfdir}/dolibarr/install.forced.php"
export config="%{_sysconfdir}/dolibarr/conf.php"
# Detect OS # Detect OS
os='unknown'; os='unknown';
@ -207,20 +200,18 @@ echo Create document directory $docdir
%{__mkdir} -p $docdir %{__mkdir} -p $docdir
# Create install.forced.php into Dolibarr install directory # Create install.forced.php into Dolibarr install directory
if [ "x$os" = "xubuntu-debian" ] %{__cat} $installfileorig | sed -e 's/__SUPERUSERLOGIN__/root/g' | sed -e 's/__SUPERUSERPASSWORD__//g' > $installconfig
%{__chown} -R root:$apachegroup $installconfig
%{__chmod} -R 660 $installconfig
# Create an empty conf.php with permission to web server
if [ ! -f $config ]
then then
superuserlogin='' echo Create empty file $config
superuserpassword='' touch $config
if [ -f %{_sysconfdir}/mysql/debian.cnf ] ; then %{__chown} -R root:$apachegroup $config
# Load superuser login and pass %{__chmod} -R 660 $config
superuserlogin=$(/bin/grep --max-count=1 "user" %{_sysconfdir}/mysql/debian.cnf | /bin/sed -e 's/^user[ =]*//g')
superuserpassword=$(/bin/grep --max-count=1 "password" %{_sysconfdir}/mysql/debian.cnf | /bin/sed -e 's/^password[ =]*//g')
fi
echo Mysql superuser found to use is $superuserlogin
%{__cat} /usr/share/dolibarr/build/rpm/install.forced.php.install | sed -e 's/__SUPERUSERLOGIN__/'$superuserlogin'/g' | sed -e 's/__SUPERUSERPASSWORD__/'$superuserpassword'/g' > $installconfig
%{__chmod} -R 660 $installconfig
fi fi
%{__chown} -R root:$apachegroup /etc/dolibarr/*
# Create config for se $seconfig # Create config for se $seconfig
if [ "x$os" = "xfedora-redhat" -a -s /sbin/restorecon ]; then if [ "x$os" = "xfedora-redhat" -a -s /sbin/restorecon ]; then
@ -235,7 +226,7 @@ if [ "x$os" = "xfedora-redhat" -a -s /sbin/restorecon ]; then
fi fi
# Create a config link dolibarr.conf # Create a config link dolibarr.conf
if [ ! -L $apachelink ]; then if [ ! -f $apachelink ]; then
echo Create dolibarr web server config link $apachelink echo Create dolibarr web server config link $apachelink
ln -fs %{_sysconfdir}/dolibarr/apache.conf $apachelink ln -fs %{_sysconfdir}/dolibarr/apache.conf $apachelink
fi fi
@ -263,7 +254,7 @@ fi
echo echo
echo "----- Dolibarr %version - (c) Dolibarr dev team -----" echo "----- Dolibarr %version - (c) Dolibarr dev team -----"
echo "Dolibarr files are now installed (into /usr/share/dolibarr)." echo "Dolibarr files are now installed (into /usr/share/dolibarr)."
echo "To finish installation and use Dolibarr, click on the menu" echo "To finish installation and use Dolibarr, click on ne menu"
echo "entry Dolibarr ERP-CRM or call the following page from your" echo "entry Dolibarr ERP-CRM or call the following page from your"
echo "web browser:" echo "web browser:"
echo "http://localhost/dolibarr/" echo "http://localhost/dolibarr/"
@ -271,31 +262,46 @@ echo "--------------------------------------------------"
echo echo
#---- postun (after uninstall) #---- postun (after uninstall)
%postun %postun
# Define vars
export docdir="/var/lib/dolibarr/documents"
export installfileorig="/usr/share/dolibarr/build/rpm/install.forced.php.install"
export installconfig="%{_sysconfdir}/dolibarr/install.forced.php"
export config="%{_sysconfdir}/dolibarr/conf.php"
# Detect OS # Detect OS
os='unknown'; os='unknown';
if [ -d %{_sysconfdir}/httpd/conf.d ]; then if [ -d %{_sysconfdir}/httpd/conf.d ]; then
export os='fedora-redhat'; export os='fedora-redhat';
export apachelink="%{_sysconfdir}/httpd/conf.d/dolibarr.conf" export apachelink="%{_sysconfdir}/httpd/conf.d/dolibarr.conf"
export apacheuser='apache';
export apachegroup='apache';
fi fi
if [ -d %{_sysconfdir}/apache2/conf.d -a `grep ^wwwrun /etc/passwd | wc -l` -ge 1 ]; then if [ -d %{_sysconfdir}/apache2/conf.d -a `grep ^wwwrun /etc/passwd | wc -l` -ge 1 ]; then
export os='opensuse'; export os='opensuse';
export apachelink="%{_sysconfdir}/apache2/conf.d/dolibarr.conf" export apachelink="%{_sysconfdir}/apache2/conf.d/dolibarr.conf"
export apacheuser='wwwrun';
export apachegroup='www';
fi fi
if [ -d %{_sysconfdir}/httpd/conf.d -a `grep -i "^mageia\|mandriva" /etc/issue | wc -l` -ge 1 ]; then if [ -d %{_sysconfdir}/httpd/conf.d -a `grep -i "^mageia\|mandriva" /etc/issue | wc -l` -ge 1 ]; then
export os='mageia-mandriva'; export os='mageia-mandriva';
export apachelink="%{_sysconfdir}/httpd/conf.d/dolibarr.conf" export apachelink="%{_sysconfdir}/httpd/conf.d/dolibarr.conf"
export apacheuser='apache';
export apachegroup='apache';
fi fi
if [ -d %{_sysconfdir}/apache2/conf.d -a `grep ^www-data /etc/passwd | wc -l` -ge 1 ]; then if [ -d %{_sysconfdir}/apache2/conf.d -a `grep ^www-data /etc/passwd | wc -l` -ge 1 ]; then
export os='ubuntu-debian'; export os='ubuntu-debian';
export apachelink="%{_sysconfdir}/apache2/conf.d/dolibarr.conf" export apachelink="%{_sysconfdir}/apache2/conf.d/dolibarr.conf"
export apacheuser='www-data';
export apachegroup='www-data';
fi fi
echo OS detected: $os
# Remove apache link # Remove apache link
if [ -L $apachelink ] ; if [ -f $apachelink ] ;
then then
echo Delete apache config link for Dolibarr echo Delete apache config link for Dolibarr
%{__rm} -f $apachelink %{__rm} -f $apachelink
@ -315,6 +321,11 @@ then
fi fi
fi fi
# Removed dirs after apache restart
echo Removed remaining $config
%{__rm} -f $config
echo Removed remaining $installconfig
%{__rm} -f $installconfig
%changelog %changelog

View File

@ -73,20 +73,16 @@ cui hai bisogno ed essere facile da usare.
%setup -q %setup -q
#---- build #---- build
%build %build
# Nothing to build # Nothing to build
#---- install #---- install
%install %install
%{__rm} -rf $RPM_BUILD_ROOT %{__rm} -rf $RPM_BUILD_ROOT
%{__mkdir} -p $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr %{__mkdir} -p $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr
%{__install} -m 644 etc/dolibarr/conf.php $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/conf.php
%{__install} -m 644 etc/dolibarr/install.forced.php $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/install.forced.php
%{__install} -m 644 etc/dolibarr/apache.conf $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/apache.conf %{__install} -m 644 etc/dolibarr/apache.conf $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/apache.conf
%{__install} -m 644 etc/dolibarr/file_contexts.dolibarr $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/file_contexts.dolibarr %{__install} -m 644 etc/dolibarr/file_contexts.dolibarr $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/file_contexts.dolibarr
@ -98,12 +94,12 @@ cui hai bisogno ed essere facile da usare.
%{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/build %{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/build
%{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/htdocs %{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/htdocs
%{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/scripts %{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/scripts
%{__mkdir} -p $RPM_BUILD_ROOT/usr/share/doc/dolibarr %{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}/doc/dolibarr
%{__cp} -pr usr/share/dolibarr/build $RPM_BUILD_ROOT/usr/share/dolibarr %{__cp} -pr usr/share/dolibarr/build $RPM_BUILD_ROOT/usr/share/dolibarr
%{__cp} -pr usr/share/dolibarr/htdocs $RPM_BUILD_ROOT/usr/share/dolibarr %{__cp} -pr usr/share/dolibarr/htdocs $RPM_BUILD_ROOT/usr/share/dolibarr
%{__cp} -pr usr/share/dolibarr/scripts $RPM_BUILD_ROOT/usr/share/dolibarr %{__cp} -pr usr/share/dolibarr/scripts $RPM_BUILD_ROOT/usr/share/dolibarr
%{__cp} -pr usr/share/dolibarr/doc/* $RPM_BUILD_ROOT/usr/share/doc/dolibarr %{__cp} -pr usr/share/dolibarr/doc/* $RPM_BUILD_ROOT%{_datadir}/doc/dolibarr
%{__install} -m 644 usr/share/dolibarr/COPYRIGHT $RPM_BUILD_ROOT/usr/share/doc/dolibarr/COPYRIGHT %{__install} -m 644 usr/share/dolibarr/COPYRIGHT $RPM_BUILD_ROOT%{_datadir}/doc/dolibarr/COPYRIGHT
#---- clean #---- clean
@ -111,12 +107,11 @@ cui hai bisogno ed essere facile da usare.
%{__rm} -rf $RPM_BUILD_ROOT %{__rm} -rf $RPM_BUILD_ROOT
#---- files #---- files
%files %files
%defattr(-, root, root, 0755) %defattr(-, root, root, 0755)
%doc /usr/share/doc/dolibarr %doc /usr/share/doc/dolibarr/*
%dir /usr/share/dolibarr/build %dir /usr/share/dolibarr/build
%dir /usr/share/dolibarr/htdocs %dir /usr/share/dolibarr/htdocs
%dir /usr/share/dolibarr/scripts %dir /usr/share/dolibarr/scripts
@ -126,19 +121,19 @@ cui hai bisogno ed essere facile da usare.
/usr/share/dolibarr/htdocs/* /usr/share/dolibarr/htdocs/*
/usr/share/dolibarr/scripts/* /usr/share/dolibarr/scripts/*
%defattr(0664, -, -) %defattr(0664, -, -, 0755)
%config(noreplace) %{_sysconfdir}/dolibarr/conf.php
%config(noreplace) %{_sysconfdir}/dolibarr/apache.conf %config(noreplace) %{_sysconfdir}/dolibarr/apache.conf
%config(noreplace) %{_sysconfdir}/dolibarr/install.forced.php
%config(noreplace) %{_sysconfdir}/dolibarr/file_contexts.dolibarr %config(noreplace) %{_sysconfdir}/dolibarr/file_contexts.dolibarr
#---- post (after unzip during install) #---- post (after unzip during install)
%post %post
# Define vars # Define vars
export docdir="/var/lib/dolibarr/documents" export docdir="/var/lib/dolibarr/documents"
export installfileorig="/usr/share/dolibarr/build/rpm/install.forced.php.install"
export installconfig="%{_sysconfdir}/dolibarr/install.forced.php"
export config="%{_sysconfdir}/dolibarr/conf.php"
export apachelink="%{_sysconfdir}/httpd/conf.d/dolibarr.conf" export apachelink="%{_sysconfdir}/httpd/conf.d/dolibarr.conf"
export apacheuser='apache'; export apacheuser='apache';
export apachegroup='apache'; export apachegroup='apache';
@ -150,10 +145,22 @@ export apachegroup='apache';
echo Create document directory $docdir echo Create document directory $docdir
%{__mkdir} -p $docdir %{__mkdir} -p $docdir
%{__chown} -R root:$apachegroup /etc/dolibarr/* # Create install.forced.php into Dolibarr install directory
%{__cat} $installfileorig | sed -e 's/__SUPERUSERLOGIN__/root/g' | sed -e 's/__SUPERUSERPASSWORD__//g' > $installconfig
%{__chown} -R root:$apachegroup $installconfig
%{__chmod} -R 660 $installconfig
# Create an empty conf.php with permission to web server
if [ ! -f $config ]
then
echo Create empty file $config
touch $config
%{__chown} -R root:$apachegroup $config
%{__chmod} -R 660 $config
fi
# Create a config link dolibarr.conf # Create a config link dolibarr.conf
if [ ! -L $apachelink ]; then if [ ! -f $apachelink ]; then
echo Create dolibarr web server config link $apachelink echo Create dolibarr web server config link $apachelink
ln -fs %{_sysconfdir}/dolibarr/apache.conf $apachelink ln -fs %{_sysconfdir}/dolibarr/apache.conf $apachelink
fi fi
@ -181,7 +188,7 @@ fi
echo echo
echo "----- Dolibarr %version - (c) Dolibarr dev team -----" echo "----- Dolibarr %version - (c) Dolibarr dev team -----"
echo "Dolibarr files are now installed (into /usr/share/dolibarr)." echo "Dolibarr files are now installed (into /usr/share/dolibarr)."
echo "To finish installation and use Dolibarr, click on the menu" echo "To finish installation and use Dolibarr, click on ne menu"
echo "entry Dolibarr ERP-CRM or call the following page from your" echo "entry Dolibarr ERP-CRM or call the following page from your"
echo "web browser:" echo "web browser:"
echo "http://localhost/dolibarr/" echo "http://localhost/dolibarr/"
@ -193,10 +200,17 @@ echo
%postun %postun
# Define vars # Define vars
export docdir="/var/lib/dolibarr/documents"
export installfileorig="/usr/share/dolibarr/build/rpm/install.forced.php.install"
export installconfig="%{_sysconfdir}/dolibarr/install.forced.php"
export config="%{_sysconfdir}/dolibarr/conf.php"
export apachelink="%{_sysconfdir}/httpd/conf.d/dolibarr.conf" export apachelink="%{_sysconfdir}/httpd/conf.d/dolibarr.conf"
export apacheuser='apache';
export apachegroup='apache';
# Remove apache link # Remove apache link
if [ -L $apachelink ] ; if [ -f $apachelink ] ;
then then
echo Delete apache config link for Dolibarr echo Delete apache config link for Dolibarr
%{__rm} -f $apachelink %{__rm} -f $apachelink
@ -216,6 +230,11 @@ then
fi fi
fi fi
# Removed dirs after apache restart
echo Removed remaining $config
%{__rm} -f $config
echo Removed remaining $installconfig
%{__rm} -f $installconfig
%changelog %changelog

View File

@ -83,8 +83,6 @@ cui hai bisogno ed essere facile da usare.
%{__rm} -rf $RPM_BUILD_ROOT %{__rm} -rf $RPM_BUILD_ROOT
%{__mkdir} -p $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr %{__mkdir} -p $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr
%{__install} -m 644 etc/dolibarr/conf.php $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/conf.php
%{__install} -m 644 etc/dolibarr/install.forced.php $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/install.forced.php
%{__install} -m 644 etc/dolibarr/apache.conf $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/apache.conf %{__install} -m 644 etc/dolibarr/apache.conf $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/apache.conf
%{__install} -m 644 etc/dolibarr/file_contexts.dolibarr $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/file_contexts.dolibarr %{__install} -m 644 etc/dolibarr/file_contexts.dolibarr $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr/file_contexts.dolibarr
@ -96,13 +94,12 @@ cui hai bisogno ed essere facile da usare.
%{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/build %{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/build
%{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/htdocs %{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/htdocs
%{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/scripts %{__mkdir} -p $RPM_BUILD_ROOT/usr/share/dolibarr/scripts
%{__mkdir} -p $RPM_BUILD_ROOT/usr/share/doc/dolibarr %{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}/doc/dolibarr
%{__cp} -pr usr/share/dolibarr/build $RPM_BUILD_ROOT/usr/share/dolibarr %{__cp} -pr usr/share/dolibarr/build $RPM_BUILD_ROOT/usr/share/dolibarr
%{__cp} -pr usr/share/dolibarr/htdocs $RPM_BUILD_ROOT/usr/share/dolibarr %{__cp} -pr usr/share/dolibarr/htdocs $RPM_BUILD_ROOT/usr/share/dolibarr
%{__cp} -pr usr/share/dolibarr/scripts $RPM_BUILD_ROOT/usr/share/dolibarr %{__cp} -pr usr/share/dolibarr/scripts $RPM_BUILD_ROOT/usr/share/dolibarr
%{__cp} -pr usr/share/dolibarr/doc/* $RPM_BUILD_ROOT/usr/share/doc/dolibarr %{__cp} -pr usr/share/dolibarr/doc/* $RPM_BUILD_ROOT%{_datadir}/doc/dolibarr
%{__install} -m 644 usr/share/dolibarr/COPYRIGHT $RPM_BUILD_ROOT/usr/share/doc/dolibarr/COPYRIGHT %{__install} -m 644 usr/share/dolibarr/COPYRIGHT $RPM_BUILD_ROOT%{_datadir}/doc/dolibarr/COPYRIGHT
#---- clean #---- clean
@ -110,12 +107,11 @@ cui hai bisogno ed essere facile da usare.
%{__rm} -rf $RPM_BUILD_ROOT %{__rm} -rf $RPM_BUILD_ROOT
#---- files #---- files
%files %files
%defattr(-, root, root, 0755) %defattr(-, root, root, 0755)
%doc /usr/share/doc/dolibarr %doc /usr/share/doc/dolibarr/*
%dir /usr/share/dolibarr/build %dir /usr/share/dolibarr/build
%dir /usr/share/dolibarr/htdocs %dir /usr/share/dolibarr/htdocs
%dir /usr/share/dolibarr/scripts %dir /usr/share/dolibarr/scripts
@ -125,19 +121,19 @@ cui hai bisogno ed essere facile da usare.
/usr/share/dolibarr/htdocs/* /usr/share/dolibarr/htdocs/*
/usr/share/dolibarr/scripts/* /usr/share/dolibarr/scripts/*
%defattr(0664, -, -) %defattr(0664, -, -, 0755)
%config(noreplace) %{_sysconfdir}/dolibarr/conf.php
%config(noreplace) %{_sysconfdir}/dolibarr/apache.conf %config(noreplace) %{_sysconfdir}/dolibarr/apache.conf
%config(noreplace) %{_sysconfdir}/dolibarr/install.forced.php
%config(noreplace) %{_sysconfdir}/dolibarr/file_contexts.dolibarr %config(noreplace) %{_sysconfdir}/dolibarr/file_contexts.dolibarr
#---- post (after unzip during install) #---- post (after unzip during install)
%post %post
# Define vars # Define vars
export docdir="/var/lib/dolibarr/documents" export docdir="/var/lib/dolibarr/documents"
export installfileorig="/usr/share/dolibarr/build/rpm/install.forced.php.install"
export installconfig="%{_sysconfdir}/dolibarr/install.forced.php"
export config="%{_sysconfdir}/dolibarr/conf.php"
export apachelink="%{_sysconfdir}/apache2/conf.d/dolibarr.conf" export apachelink="%{_sysconfdir}/apache2/conf.d/dolibarr.conf"
export apacheuser='wwwrun'; export apacheuser='wwwrun';
export apachegroup='www'; export apachegroup='www';
@ -149,10 +145,22 @@ export apachegroup='www';
echo Create document directory $docdir echo Create document directory $docdir
%{__mkdir} -p $docdir %{__mkdir} -p $docdir
%{__chown} -R root:$apachegroup /etc/dolibarr/* # Create install.forced.php into Dolibarr install directory
%{__cat} $installfileorig | sed -e 's/__SUPERUSERLOGIN__/root/g' | sed -e 's/__SUPERUSERPASSWORD__//g' > $installconfig
%{__chown} -R root:$apachegroup $installconfig
%{__chmod} -R 660 $installconfig
# Create an empty conf.php with permission to web server
if [ ! -f $config ]
then
echo Create empty file $config
touch $config
%{__chown} -R root:$apachegroup $config
%{__chmod} -R 660 $config
fi
# Create a config link dolibarr.conf # Create a config link dolibarr.conf
if [ ! -L $apachelink ]; then if [ ! -f $apachelink ]; then
echo Create dolibarr web server config link $apachelink echo Create dolibarr web server config link $apachelink
ln -fs %{_sysconfdir}/dolibarr/apache.conf $apachelink ln -fs %{_sysconfdir}/dolibarr/apache.conf $apachelink
fi fi
@ -180,7 +188,7 @@ fi
echo echo
echo "----- Dolibarr %version - (c) Dolibarr dev team -----" echo "----- Dolibarr %version - (c) Dolibarr dev team -----"
echo "Dolibarr files are now installed (into /usr/share/dolibarr)." echo "Dolibarr files are now installed (into /usr/share/dolibarr)."
echo "To finish installation and use Dolibarr, click on the menu" echo "To finish installation and use Dolibarr, click on ne menu"
echo "entry Dolibarr ERP-CRM or call the following page from your" echo "entry Dolibarr ERP-CRM or call the following page from your"
echo "web browser:" echo "web browser:"
echo "http://localhost/dolibarr/" echo "http://localhost/dolibarr/"
@ -192,10 +200,16 @@ echo
%postun %postun
# Define vars # Define vars
export docdir="/var/lib/dolibarr/documents"
export installfileorig="/usr/share/dolibarr/build/rpm/install.forced.php.install"
export installconfig="%{_sysconfdir}/dolibarr/install.forced.php"
export config="%{_sysconfdir}/dolibarr/conf.php"
export apachelink="%{_sysconfdir}/apache2/conf.d/dolibarr.conf" export apachelink="%{_sysconfdir}/apache2/conf.d/dolibarr.conf"
export apacheuser='wwwrun';
export apachegroup='www';
# Remove apache link # Remove apache link
if [ -L $apachelink ] ; if [ -f $apachelink ] ;
then then
echo Delete apache config link for Dolibarr echo Delete apache config link for Dolibarr
%{__rm} -f $apachelink %{__rm} -f $apachelink
@ -215,6 +229,11 @@ then
fi fi
fi fi
# Removed dirs after apache restart
echo Removed remaining $config
%{__rm} -f $config
echo Removed remaining $installconfig
%{__rm} -f $installconfig
%changelog %changelog

View File

@ -10,8 +10,8 @@ $force_install_createdatabase='1';
$force_install_databaselogin='dolibarrrpm'; $force_install_databaselogin='dolibarrrpm';
$force_install_databasepass=''; $force_install_databasepass='';
$force_install_createuser='1'; $force_install_createuser='1';
$force_install_databaserootlogin='__SUPERUSERLOGIN__'; $force_install_databaserootlogin='root';
$force_install_databaserootpass='__SUPERUSERPASSWORD__'; $force_install_databaserootpass='';
$force_install_dolibarrlogin='admin'; $force_install_dolibarrlogin='admin';
$force_install_nophpinfo='1'; $force_install_nophpinfo='1';
$force_install_lockinstall='444'; $force_install_lockinstall='444';