Work on 3.1 packaging
This commit is contained in:
parent
1c88de7e97
commit
faffaf5014
@ -2,7 +2,7 @@
|
||||
#----------------------------------------------------------------------------
|
||||
# \file build/makepack-dolibarr.pl
|
||||
# \brief Dolibarr package builder (tgz, zip, rpm, deb, exe, aps)
|
||||
# \version $Id: makepack-dolibarr.pl,v 1.123 2011/07/30 14:56:12 eldy Exp $
|
||||
# \version $Id: makepack-dolibarr.pl,v 1.124 2011/07/31 13:17:03 eldy Exp $
|
||||
# \author (c)2004-2011 Laurent Destailleur <eldy@users.sourceforge.net>
|
||||
#----------------------------------------------------------------------------
|
||||
|
||||
@ -48,7 +48,7 @@ if (-d "/usr/src/RPM") {
|
||||
|
||||
|
||||
use vars qw/ $REVISION $VERSION /;
|
||||
$REVISION='$Revision: 1.123 $'; $REVISION =~ /\s(.*)\s/; $REVISION=$1;
|
||||
$REVISION='$Revision: 1.124 $'; $REVISION =~ /\s(.*)\s/; $REVISION=$1;
|
||||
$VERSION="1.0 (build $REVISION)";
|
||||
|
||||
|
||||
@ -696,12 +696,12 @@ if ($nboftargetok) {
|
||||
if ($OS =~ /windows/i)
|
||||
{
|
||||
print "Move *_all.deb to $DESTI\n";
|
||||
$ret=`mv "$BUILDROOT/*_all.deb" "$DESTI/"`;
|
||||
$ret=`mv $BUILDROOT/*_all.deb "$DESTI/"`;
|
||||
}
|
||||
else
|
||||
{
|
||||
print "Move *_all.deb to $DESTI\n";
|
||||
$ret=`mv "$BUILDROOT/*_all.deb" "$DESTI/"`;
|
||||
$ret=`mv $BUILDROOT/*_all.deb "$DESTI/"`;
|
||||
}
|
||||
next;
|
||||
}
|
||||
|
||||
@ -5,11 +5,6 @@
|
||||
# file to build a package for your own distributions and
|
||||
# edit it if you need to match your rules.
|
||||
# --------------------------------------------------------
|
||||
|
||||
#%define is_mandrake %(test -e /etc/mandrake-release && echo 1 || echo 0)
|
||||
#%define is_suse %(test -e /etc/SuSE-release && echo 1 || echo 0)
|
||||
#%define is_fedora %(test -e /etc/fedora-release && echo 1 || echo 0)
|
||||
|
||||
%define name dolibarr
|
||||
%define version __VERSION__
|
||||
%define release __RELEASE__
|
||||
@ -17,18 +12,15 @@
|
||||
Name: %{name}
|
||||
Version: %{version}
|
||||
Release: %{release}
|
||||
Summary: ERP and CRM software for small and medium companies or foundations
|
||||
Summary(es): Software ERP y CRM para pequeñas y medianas empresas o, asociaciones o autónomos
|
||||
Summary(fr): Logiciel ERP & CRM de gestion de PME/PMI, autoentrepreneurs ou associations
|
||||
Summary(it): Programmo gestionale per piccole imprese, fondazioni e liberi professionisti
|
||||
Summary: Dolibarr
|
||||
|
||||
License: GPLv2+
|
||||
License: GPL
|
||||
Packager: Laurent Destailleur (Eldy) <eldy@users.sourceforge.net>
|
||||
Vendor: Dolibarr dev team
|
||||
|
||||
URL: http://www.%{name}.org
|
||||
Source: /usr/src/RPM/SOURCES/%{name}-%{version}.tgz
|
||||
BuildArch: noarch
|
||||
#BuildArch: noarch
|
||||
#BuildArchitectures: noarch
|
||||
BuildRoot: /tmp/%{name}-buildroot
|
||||
#Icon: dolibarr_logo1.gif
|
||||
@ -56,7 +48,7 @@ AutoReqProv: no
|
||||
|
||||
|
||||
%description
|
||||
An easy to use CRM & ERP open source/free software for small
|
||||
Dolibarr ERP & CRM is an easy to use open source/free software for small
|
||||
and medium companies, foundations or freelances. It includes different
|
||||
features for Enterprise Resource Planning (ERP) and Customer Relationship
|
||||
Management (CRM) but also for different other activities.
|
||||
@ -64,26 +56,27 @@ Dolibarr was designed to provide only features you need and be easy to
|
||||
use.
|
||||
|
||||
%description -l es
|
||||
Un software ERP y CRM para pequeñas y medianas empresas, asociaciones
|
||||
o autónomos. Incluye diferentes funcionalidades para la Planificación
|
||||
de Recursos Empresariales (ERP) y Gestión de la Relación con los
|
||||
Clientes (CRM) así como para para otras diferentes actividades.
|
||||
Dolibarr ha sido diseñado para suministrarle solamente las funcionalidades
|
||||
que necesita y haciendo hincapié en su facilidad de uso.
|
||||
Dolibarr ERP y CRM es un software open source/gratis para pequeñas y
|
||||
medianas empresas, asociaciones o autónomos. Incluye diferentes
|
||||
funcionalidades para la Planificación de Recursos Empresariales (ERP) y
|
||||
Gestión de la Relación con los Clientes (CRM) así como para para otras
|
||||
diferentes actividades. Dolibarr ha sido diseñado para suministrarle
|
||||
solamente las funcionalidades que necesita y haciendo hincapié en su
|
||||
facilidad de uso.
|
||||
|
||||
%description -l fr
|
||||
Logiciel ERP & CRM de gestion de PME/PMI, autoentrepreneurs,
|
||||
Dolibarr ERP & CRM est un logiciel de gestion de PME/PMI, autoentrepreneurs,
|
||||
artisans ou associations. Il permet de gérer vos clients, prospect,
|
||||
fournisseurs, devis, factures, comptes bancaires, agenda, campagne emailings
|
||||
et bien d'autres choses dans une interface pensée pour la simplicité.
|
||||
|
||||
%description -l it
|
||||
Un programmo gestionale per piccole e medie
|
||||
Dolibarr è un programma gestionale open source e gratuito per piccole e medie
|
||||
imprese, fondazioni e liberi professionisti. Include varie funzionalità per
|
||||
Enterprise Resource Planning e gestione dei clienti (CRM), ma anche ulteriori
|
||||
attività. Progettato per poter fornire solo ciò di cui hai bisogno
|
||||
attività. Dolibar è progettato per poter fornire solo ciò di cui hai bisogno
|
||||
ed essere facile da usare.
|
||||
Programmo web, progettato per poter fornire solo ciò di
|
||||
Dolibar è completamente web-based, progettato per poter fornire solo ciò di
|
||||
cui hai bisogno ed essere facile da usare.
|
||||
|
||||
|
||||
@ -101,51 +94,48 @@ echo Building %{name}-%{version}-%{release}
|
||||
|
||||
#---- install
|
||||
%install
|
||||
%{__rm} -rf $RPM_BUILD_ROOT
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%{__mkdir} -p $RPM_BUILD_ROOT%{_sysconfdir}/dolibarr
|
||||
%{__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
|
||||
mkdir -p $RPM_BUILD_ROOT/var/www/dolibarr/build
|
||||
mkdir -p $RPM_BUILD_ROOT/var/www/dolibarr/doc
|
||||
mkdir -p $RPM_BUILD_ROOT/var/www/dolibarr/htdocs
|
||||
mkdir -p $RPM_BUILD_ROOT/var/www/dolibarr/scripts
|
||||
|
||||
# %{_datadir} = /usr/share
|
||||
%{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}/pixmaps
|
||||
%{__install} -m 644 var/www/dolibarr/doc/images/dolibarr_48x48.png $RPM_BUILD_ROOT%{_datadir}/pixmaps/dolibarr.png
|
||||
%{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}/applications
|
||||
%{__install} -m 644 var/www/dolibarr/build/rpm/dolibarr.desktop $RPM_BUILD_ROOT%{_datadir}/applications/dolibarr.desktop
|
||||
mkdir -p $RPM_BUILD_ROOT%{_datadir}/pixmaps
|
||||
cp doc/images/dolibarr_48x48.png $RPM_BUILD_ROOT%{_datadir}/pixmaps/dolibarr.png
|
||||
mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications
|
||||
cp build/rpm/dolibarr.desktop $RPM_BUILD_ROOT/%{_datadir}/applications/dolibarr.desktop
|
||||
|
||||
%{__mkdir} -p $RPM_BUILD_ROOT/var/www/dolibarr/build
|
||||
%{__mkdir} -p $RPM_BUILD_ROOT/var/www/dolibarr/doc
|
||||
%{__mkdir} -p $RPM_BUILD_ROOT/var/www/dolibarr/htdocs
|
||||
%{__mkdir} -p $RPM_BUILD_ROOT/var/www/dolibarr/scripts
|
||||
%{__cp} -pr var/www/dolibarr/build $RPM_BUILD_ROOT/var/www/dolibarr
|
||||
%{__cp} -pr var/www/dolibarr/doc $RPM_BUILD_ROOT/var/www/dolibarr
|
||||
%{__cp} -pr var/www/dolibarr/htdocs $RPM_BUILD_ROOT/var/www/dolibarr
|
||||
%{__cp} -pr var/www/dolibarr/scripts $RPM_BUILD_ROOT/var/www/dolibarr
|
||||
%{__install} -m 644 var/www/dolibarr/COPYRIGHT $RPM_BUILD_ROOT/var/www/dolibarr/doc/COPYRIGHT
|
||||
install -m 444 README $RPM_BUILD_ROOT/var/www/dolibarr/README
|
||||
install -m 444 COPYRIGHT $RPM_BUILD_ROOT/var/www/dolibarr/COPYRIGHT
|
||||
cp -pr build $RPM_BUILD_ROOT/var/www/dolibarr
|
||||
cp -pr doc $RPM_BUILD_ROOT/var/www/dolibarr
|
||||
cp -pr htdocs $RPM_BUILD_ROOT/var/www/dolibarr
|
||||
cp -pr scripts $RPM_BUILD_ROOT/var/www/dolibarr
|
||||
|
||||
|
||||
#---- clean
|
||||
%clean
|
||||
%{__rm} -rf $RPM_BUILD_ROOT
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
|
||||
#---- files
|
||||
%files
|
||||
|
||||
%defattr(-,root,root)
|
||||
%doc README
|
||||
%doc COPYRIGHT
|
||||
%doc /var/www/dolibarr/doc/*
|
||||
%dir /var/www/dolibarr/build
|
||||
%dir /var/www/dolibarr/htdocs
|
||||
%dir /var/www/dolibarr/scripts
|
||||
%_datadir/pixmaps/dolibarr.png
|
||||
%_datadir/pixmaps/*
|
||||
%_datadir/applications/%{name}.desktop
|
||||
/var/www/dolibarr/build/*
|
||||
/var/www/dolibarr/htdocs/*
|
||||
/var/www/dolibarr/scripts/*
|
||||
|
||||
%defattr(0664, -, -, 0755)
|
||||
%config(noreplace) %{_sysconfdir}/dolibarr/apache.conf
|
||||
%config(noreplace) %{_sysconfdir}/dolibarr/file_contexts.dolibarr
|
||||
/var/www/dolibarr/README
|
||||
/var/www/dolibarr/COPYRIGHT
|
||||
#%config /var/www/dolibarr/htdocs/conf/conf.php
|
||||
|
||||
|
||||
#---- post (after unzip during install)
|
||||
@ -163,11 +153,9 @@ export installfileorig="$targetdir/build/rpm/install.forced.php.install"
|
||||
export installconfig="%{_sysconfdir}/dolibarr/install.forced.php"
|
||||
export apachefileorig="$targetdir/build/rpm/httpd-dolibarr.conf"
|
||||
export apacheconfig="%{_sysconfdir}/dolibarr/apache.conf"
|
||||
export sefileorig="%{_sysconfdir}/dolibarr/file_contexts.dolibarr"
|
||||
export seconfig="%{_sysconfdir}/selinux/targeted/contexts/files/file_contexts.dolibarr"
|
||||
#export config="/usr/share/dolibarr/htdocs/conf/conf.php"
|
||||
export config="%{_sysconfdir}/dolibarr/conf.php"
|
||||
export lockfile="/usr/share/dolibarr/install.lock"
|
||||
#config="/usr/share/dolibarr/htdocs/conf/conf.php"
|
||||
config="%{_sysconfdir}/dolibarr/conf.php"
|
||||
lockfile="/usr/share/dolibarr/install.lock"
|
||||
|
||||
|
||||
# Detect OS
|
||||
@ -201,8 +189,8 @@ echo OS detected: $os
|
||||
|
||||
# Create empty directory for uploaded files and generated documents
|
||||
echo Create document directory $docdir
|
||||
%{__mkdir} -p $docdir
|
||||
%{__mkdir} -p %{_sysconfdir}/dolibarr
|
||||
mkdir -p $docdir
|
||||
mkdir -p %{_sysconfdir}/dolibarr
|
||||
|
||||
# Create install.forced.php into Dolibarr install directory
|
||||
superuserlogin=''
|
||||
@ -214,42 +202,31 @@ if [ -f %{_sysconfdir}/mysql/debian.cnf ] ; then
|
||||
fi
|
||||
echo Mysql superuser found to use is $superuserlogin
|
||||
if [ -z "$superuserlogin" ] ; then
|
||||
%{__cat} $installfileorig | sed -e 's/__SUPERUSERLOGIN__/root/g' | sed -e 's/__SUPERUSERPASSWORD__//g' > $installconfig
|
||||
cat $installfileorig | sed -e 's/__SUPERUSERLOGIN__/root/g' | sed -e 's/__SUPERUSERPASSWORD__//g' > $installconfig
|
||||
else
|
||||
%{__cat} $installfileorig | sed -e 's/__SUPERUSERLOGIN__/'$superuserlogin'/g' | sed -e 's/__SUPERUSERPASSWORD__/'$superuserpassword'/g' > $installconfig
|
||||
cat $installfileorig | sed -e 's/__SUPERUSERLOGIN__/'$superuserlogin'/g' | sed -e 's/__SUPERUSERPASSWORD__/'$superuserpassword'/g' > $installconfig
|
||||
fi
|
||||
%{__chown} -R root:$apachegroup $installconfig
|
||||
%{__chmod} -R 660 $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
|
||||
chown -R root:$apachegroup $config
|
||||
chmod -R 660 $config
|
||||
fi
|
||||
|
||||
# Create config file for apache $apacheconfig
|
||||
#if [ ! -f $apacheconfig ]; then
|
||||
# echo Create dolibarr web server config file $apacheconfig
|
||||
# cp $apachefileorig $apacheconfig
|
||||
# chmod a-x $apacheconfig
|
||||
# chmod go-w $apacheconfig
|
||||
#fi
|
||||
|
||||
# Create config file for se $seconfig
|
||||
if [ "x$os" = "xfedora-redhat" -a -s /sbin/restorecon -a ! -f $seconfig ]; then
|
||||
echo Add SE Linux permission from file $sefileorig
|
||||
semanage fcontext -a -t httpd_sys_script_rw_t "/etc/dolibarr(/.*?)"
|
||||
semanage fcontext -a -t httpd_sys_script_rw_t "/usr/share/dolibarr(/.*?)"
|
||||
semanage fcontext -a -t httpd_sys_script_rw_t "/var/www/dolibarr/install.lock"
|
||||
restorecon -R -v /etc/dolibarr
|
||||
restorecon -R -v /usr/share/dolibarr
|
||||
restorecon -v /var/www/dolibarr/install.lock
|
||||
# Create a config file $apacheconfig
|
||||
if [ ! -f $apacheconfig ]; then
|
||||
echo Create dolibarr web server config file $apacheconfig
|
||||
cp $apachefileorig $apacheconfig
|
||||
chmod a-x $apacheconfig
|
||||
chmod go-w $apacheconfig
|
||||
fi
|
||||
|
||||
# Create a config link dolibarr.conf
|
||||
# Create a config link dolibarr.conf for Fedora or Redhat
|
||||
if [ ! -f $apachelink ]; then
|
||||
echo Create dolibarr web server config link $apachelink
|
||||
ln -fs $apacheconfig $apachelink
|
||||
@ -257,13 +234,25 @@ fi
|
||||
|
||||
# Set permissions
|
||||
echo Set permission to $apacheuser:$apachegroup on $targetdir
|
||||
%{__chown} -R $apacheuser:$apachegroup $targetdir
|
||||
%{__chmod} -R a-w $targetdir
|
||||
%{__chmod} u+w $targetdir
|
||||
chown -R $apacheuser:$apachegroup $targetdir
|
||||
chmod -R a-w $targetdir
|
||||
chmod u+w $targetdir
|
||||
|
||||
echo Set permission to $apacheuser:$apachegroup on $docdir
|
||||
%{__chown} -R $apacheuser:$apachegroup $docdir
|
||||
%{__chmod} -R o-w $docdir
|
||||
chown -R $apacheuser:$apachegroup $docdir
|
||||
chmod -R o-w $docdir
|
||||
|
||||
# Set SE Linux on OS SE is enabled
|
||||
if [ "x$os" = "xfedora-redhat" -a -s /usr/bin/chcon ]; then
|
||||
echo Set SELinux permissions
|
||||
# Warning: chcon seems not cumulative
|
||||
#chcon -R -h -t httpd_sys_content_t $targetdir
|
||||
#chcon -R -h -t httpd_sys_content_t $docdir
|
||||
chcon -R -h -t httpd_sys_script_rw_t $targetdir
|
||||
chcon -R -h -t httpd_sys_script_rw_t $docdir
|
||||
chcon -R -h -t httpd_sys_script_rw_t %{_sysconfdir}/dolibarr
|
||||
#chcon -R -h -t httpd_sys_script_exec_t $targetdir
|
||||
fi
|
||||
|
||||
# Restart web server
|
||||
echo Restart web server
|
||||
@ -274,12 +263,6 @@ if [ -f %{_sysconfdir}/init.d/apache2 ]; then
|
||||
%{_sysconfdir}/init.d/apache2 restart
|
||||
fi
|
||||
|
||||
# Restart mysql
|
||||
echo Restart mysql
|
||||
if [ -f /etc/init.d/mysqld ]; then
|
||||
/etc/init.d/mysqld restart
|
||||
fi
|
||||
|
||||
# Show result
|
||||
echo
|
||||
echo "----- Dolibarr %version - (c) Dolibarr dev team -----"
|
||||
@ -307,9 +290,9 @@ export installfileorig="$targetdir/build/rpm/install.forced.php.install"
|
||||
export installconfig="%{_sysconfdir}/dolibarr/install.forced.php"
|
||||
export apachefileorig="$targetdir/build/rpm/httpd-dolibarr.conf"
|
||||
export apacheconfig="%{_sysconfdir}/dolibarr/apache.conf"
|
||||
#export config="/usr/share/dolibarr/htdocs/conf/conf.php"
|
||||
export config="%{_sysconfdir}/dolibarr/conf.php"
|
||||
export lockfile="$targetdir/install.lock"
|
||||
#config="/usr/share/dolibarr/htdocs/conf/conf.php"
|
||||
config="%{_sysconfdir}/dolibarr/conf.php"
|
||||
lockfile="$targetdir/install.lock"
|
||||
|
||||
|
||||
# Detect OS
|
||||
@ -344,7 +327,7 @@ echo OS detected: $os
|
||||
if [ -f $apachelink ] ;
|
||||
then
|
||||
echo Delete apache config link for Dolibarr
|
||||
%{__rm} -f $apachelink
|
||||
rm -f $apachelink
|
||||
status=purge
|
||||
fi
|
||||
|
||||
@ -362,16 +345,12 @@ then
|
||||
fi
|
||||
|
||||
# Removed dirs after apache restart
|
||||
echo Removed remaining $config
|
||||
%{__rm} -f $config
|
||||
echo Removed remaining $installconfig
|
||||
%{__rm} -f $installconfig
|
||||
echo Removed remaining $lockfile
|
||||
%{__rm} -f $lockfile
|
||||
echo Removed remaining dir $targetdir/doc
|
||||
echo Removed remaining dirs
|
||||
rm -f $apacheconfig
|
||||
rm -f $config
|
||||
rm -f $installconfig
|
||||
rm -f $lockfile
|
||||
rmdir $targetdir/doc >/dev/null 2>&1
|
||||
|
||||
rmdir $targetdir/htdocs >/dev/null 2>&1
|
||||
|
||||
%changelog
|
||||
* Wed Jul 31 2011 Laurent Destailleur 3.1.0-0.2.beta1
|
||||
- Initial version (#723326)
|
||||
|
||||
@ -4,9 +4,9 @@ $force_install_message='KeepDefaultValuesDeb';
|
||||
$force_install_main_data_root='/usr/share/dolibarr/documents';
|
||||
$force_install_type='mysqli';
|
||||
$force_install_port='3306';
|
||||
$force_install_database='dolibarr';
|
||||
$force_install_database='dolibarrrpm';
|
||||
$force_install_createdatabase='1';
|
||||
$force_install_databaselogin='dolibarrmysql';
|
||||
$force_install_databaselogin='dolibarrrpm';
|
||||
$force_install_databasepass='';
|
||||
$force_install_createuser='1';
|
||||
$force_install_databaserootlogin='__SUPERUSERLOGIN__';
|
||||
|
||||
Loading…
Reference in New Issue
Block a user