Work on debian package

This commit is contained in:
Laurent Destailleur 2011-08-03 00:47:15 +00:00
parent dae4ed2909
commit 4f065b9c93
6 changed files with 170 additions and 150 deletions

View File

@ -3,10 +3,14 @@
# It must be saved into directory /usr/share/applications
Version=1.0
Name=Dolibarr ERP & CRM
Name[es]=Dolibarr ERP & CRM
Name[fr]=Dolibarr ERP & CRM
Name[it]=Dolibarr ERP & CRM
GenericName=Dolibarr ERP & CRM
Comment=The easy to use manager (ERP & CRM) for small and medium enterprises or foundations
Comment[es]=Software para gestión de PYMES, profesionales independientes, auto emprendedores ó asociaciones
Comment[fr]=L'ERP & CRM simple pour la gestion des PME et associations
Comment[it]=Programma gestionale open source e gratuito per piccole e medie imprese, fondazioni e liberi professionisti
# Command to open an URL
# For Fedora: xdg-open
# For Debian/Ubuntu: xdg-open or x-www-browser

View File

@ -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.129 2011/08/01 18:22:26 eldy Exp $
# \version $Id: makepack-dolibarr.pl,v 1.130 2011/08/03 00:47:37 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.129 $'; $REVISION =~ /\s(.*)\s/; $REVISION=$1;
$REVISION='$Revision: 1.130 $'; $REVISION =~ /\s(.*)\s/; $REVISION=$1;
$VERSION="1.0 (build $REVISION)";
@ -306,21 +306,23 @@ if ($nboftargetok) {
$ret=`rm -fr $BUILDROOT/$PROJECT/Thumbs.db $BUILDROOT/$PROJECT/*/Thumbs.db $BUILDROOT/$PROJECT/*/*/Thumbs.db $BUILDROOT/$PROJECT/*/*/*/Thumbs.db $BUILDROOT/$PROJECT/*/*/*/*/Thumbs.db`;
$ret=`rm -fr $BUILDROOT/$PROJECT/CVS* $BUILDROOT/$PROJECT/*/CVS* $BUILDROOT/$PROJECT/*/*/CVS* $BUILDROOT/$PROJECT/*/*/*/CVS* $BUILDROOT/$PROJECT/*/*/*/*/CVS* $BUILDROOT/$PROJECT/*/*/*/*/*/CVS* $BUILDROOT/$PROJECT/*/*/*/*/*/*/CVS* $BUILDROOT/$PROJECT/*/*/*/*/*/*/*/CVS* $BUILDROOT/$PROJECT/*/*/*/*/*/*/*/*/CVS* $BUILDROOT/$PROJECT/*/*/*/*/*/*/*/*/*/CVS* $BUILDROOT/$PROJECT/*/*/*/*/*/*/*/*/*/*/CVS*`;
$ret=`rm -fr $BUILDROOT/$PROJECT/.cvsignore $BUILDROOT/$PROJECT/*/.cvsignore $BUILDROOT/$PROJECT/*/*/.cvsignore $BUILDROOT/$PROJECT/*/*/*/.cvsignore $BUILDROOT/$PROJECT/*/*/*/*/.cvsignore $BUILDROOT/$PROJECT/*/*/*/*/*/.cvsignore $BUILDROOT/$PROJECT/*/*/*/*/*/*/.cvsignore`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.pl`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/fckeditor/editor/dialog/fck_spellerpages/spellerpages/blank.html`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/jquery/plugins/flot/jquery.js`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/jquery/plugins/flot/jquery.min.js`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/jquery/plugins/jcrop/js/jquery.min.js`;
$ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/odtphp/zip/.svn`;
$ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/odtphp/zip/pclzip/.svn`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/php_writeexcel/php.bmp`;
$ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/phpexcel`;
$ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/smarty`;
$ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/phpexcel`;
#$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/fonts/utils/freetype6.dll`;
#$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/fonts/utils/zlib1.dll`;
#$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/fonts/utils/pfm2afm`;
#$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/phpexcel/PHPExcel/Shared/PDF/fonts/utils/ttf2ufm`;
$ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/smarty`;
$ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/tcpdf/fonts/dejavu-fonts-ttf-2.33`;
$ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/tcpdf/fonts/freefont-20100919`;
$ret=`rm -fr $BUILDROOT/$PROJECT/htdocs/includes/tcpdf/fonts/utils`;
#$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/tcpdf/fonts/utils/pfm2afm`;
#$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/tcpdf/fonts/utils/ttf2ufm`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/jquery/plugins/flot/jquery.js`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/jquery/plugins/flot/jquery.min.js`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/includes/jquery/plugins/jcrop/js/jquery.min.js`;
}
# Build package for each target
@ -443,57 +445,61 @@ if ($nboftargetok) {
#rmdir "$BUILDROOT/$FILENAMETGZ2";
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2`;
print "Copy $BUILDROOT/$PROJECT to $BUILDROOT/$FILENAMETGZ2\n";
$cmd="cp -pr \"$BUILDROOT/$PROJECT\" \"$BUILDROOT/$FILENAMETGZ2\"";
print "Create directory $BUILDROOT/$FILENAMETGZ2/var/www\n";
$ret=`mkdir -p "$BUILDROOT/$FILENAMETGZ2/var/www"`;
print "Copy $BUILDROOT/$PROJECT to $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT\n";
$cmd="cp -pr \"$BUILDROOT/$PROJECT\" \"$BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT\"";
$ret=`$cmd`;
print "Remove other files\n";
$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/htdocs/includes/barcode/php-barcode/genbarcode/genbarcode`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/README`;
$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/$PROJECT/build/README`;
$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/$PROJECT/build/README-FR`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/build/aps`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/build/deb`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/build/dmg`;
$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/$PROJECT/build/pad/README`;
$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/$PROJECT/build/tgz/README`;
$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/$PROJECT/build/deb/README`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/build/doap`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/build/exe`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/build/live`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/build/patch`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/build/zip`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/build/perl`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/dev/dbmodel`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/dev/fpdf`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/dev/initdata`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/dev/iso-normes`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/dev/phpcheckstyle`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/dev/phpunit`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/doc/flyer`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/doc/font`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/doc/tshirt`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/doc/rollup`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/test`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/htdocs/cashdesk/include/jscalendar/doc/html/CVS`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/htdocs/cashdesk/include/jscalendar/skins/aqua/CVS`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/htdocs/includes/ckeditor/plugins/*/dialogs/CVS`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/htdocs/includes/ckeditor/plugins/*/images/CVS`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/htdocs/includes/fpdf/fpdf`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/htdocs/includes/nusoap/lib/Mail`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/htdocs/includes/odtphp/zip/.svn`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/htdocs/includes/odtphp/zip/pclzip/.svn`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/htdocs/includes/smarty`;
$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/htdocs/includes/barcode/php-barcode/genbarcode/genbarcode`;
$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/README`;
$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/README-FR`;
$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/build/README`;
$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/build/README-FR`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/build/aps`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/build/deb`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/build/dmg`;
$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/build/pad/README`;
$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/build/tgz/README`;
$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/build/deb/README`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/build/doap`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/build/exe`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/build/live`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/build/patch`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/build/zip`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/build/perl`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/dev/dbmodel`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/dev/fpdf`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/dev/initdata`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/dev/iso-normes`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/dev/phpcheckstyle`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/dev/phpunit`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/doc/flyer`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/doc/font`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/doc/tshirt`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/doc/rollup`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/test`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/htdocs/cashdesk/include/jscalendar/doc/html/CVS`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/htdocs/cashdesk/include/jscalendar/skins/aqua/CVS`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/htdocs/includes/ckeditor/plugins/*/dialogs/CVS`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/htdocs/includes/ckeditor/plugins/*/images/CVS`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/htdocs/includes/fpdf/fpdf`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/htdocs/includes/nusoap/lib/Mail`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/htdocs/includes/odtphp/zip/.svn`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/htdocs/includes/odtphp/zip/pclzip/.svn`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/htdocs/includes/smarty`;
$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/$PROJECT/COPYING`;
$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/$PROJECT/htdocs/includes/barcode/php-barcode/genbarcode/genbarcode`;
$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/COPYING`;
$ret=`rm -f $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/htdocs/includes/barcode/php-barcode/genbarcode/genbarcode`;
# To remove once stable
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/$PROJECT/htdocs/htdocs/theme/bureau2crea`;
$ret=`rm -fr $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/htdocs/htdocs/theme/bureau2crea`;
# Apache conf files
#print "Copy apache.conf file into $BUILDROOT/$FILENAMETGZ2/etc/$PROJECT/apache.conf\n";
#$ret=`mkdir -p "$BUILDROOT/$FILENAMETGZ2/etc/$PROJECT"`;
#$ret=`cp "$SOURCE/build/deb/apache.conf" "$BUILDROOT/$FILENAMETGZ2/etc/$PROJECT/apache.conf"`;
print "Copy apache.conf file into $BUILDROOT/$FILENAMETGZ2/etc/$PROJECT/httpd-dolibarr.conf\n";
$ret=`mkdir -p "$BUILDROOT/$FILENAMETGZ2/etc/$PROJECT"`;
$ret=`cp "$SOURCE/build/rpm/httpd-dolibarr.conf" "$BUILDROOT/$FILENAMETGZ2/etc/$PROJECT/apache.conf"`;
$ret=`cp "$SOURCE/build/rpm/file_contexts.dolibarr" "$BUILDROOT/$FILENAMETGZ2/etc/$PROJECT/file_contexts.dolibarr"`;
# Dolibarr conf files
# TODO
@ -518,21 +524,21 @@ if ($nboftargetok) {
$ret=`chmod -R 755 $BUILDROOT/$FILENAMETGZ2`;
$cmd="find $BUILDROOT/$FILENAMETGZ2 -type f -exec chmod 644 {} \\; ";
$ret=`$cmd`;
$cmd="find $BUILDROOT/$FILENAMETGZ2/build -name '*.php' -type f -exec chmod 755 {} \\; ";
$cmd="find $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/build -name '*.php' -type f -exec chmod 755 {} \\; ";
$ret=`$cmd`;
$cmd="find $BUILDROOT/$FILENAMETGZ2/build -name '*.pl' -type f -exec chmod 755 {} \\; ";
$cmd="find $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/build -name '*.pl' -type f -exec chmod 755 {} \\; ";
$ret=`$cmd`;
$cmd="find $BUILDROOT/$FILENAMETGZ2/dev -name '*.php' -type f -exec chmod 755 {} \\; ";
$cmd="find $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/dev -name '*.php' -type f -exec chmod 755 {} \\; ";
$ret=`$cmd`;
$ret=`chmod -R 644 $BUILDROOT/$FILENAMETGZ2/dev/translation/langAutoParser.class.php`;
$ret=`chmod -R 644 $BUILDROOT/$FILENAMETGZ2/dev/skeletons/skeleton_page.php`;
$ret=`chmod -R 644 $BUILDROOT/$FILENAMETGZ2/dev/skeletons/modMyModule.class.php`;
$ret=`chmod -R 644 $BUILDROOT/$FILENAMETGZ2/dev/skeletons/skeleton_class.class.php`;
$cmd="find $BUILDROOT/$FILENAMETGZ2/scripts -name '*.php' -type f -exec chmod 755 {} \\; ";
$ret=`chmod -R 644 $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/dev/translation/langAutoParser.class.php`;
$ret=`chmod -R 644 $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/dev/skeletons/skeleton_page.php`;
$ret=`chmod -R 644 $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/dev/skeletons/modMyModule.class.php`;
$ret=`chmod -R 644 $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/dev/skeletons/skeleton_class.class.php`;
$cmd="find $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/scripts -name '*.php' -type f -exec chmod 755 {} \\; ";
$ret=`$cmd`;
$cmd="find $BUILDROOT/$FILENAMETGZ2/htdocs/includes/geoip -name 'sample*.php' -type f -exec chmod 755 {} \\; ";
$cmd="find $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/htdocs/includes/geoip -name 'sample*.php' -type f -exec chmod 755 {} \\; ";
$ret=`$cmd`;
$cmd="find $BUILDROOT/$FILENAMETGZ2/htdocs/includes/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts -name '*.pl' -type f -exec chmod 755 {} \\; ";
$cmd="find $BUILDROOT/$FILENAMETGZ2/var/www/$PROJECT/htdocs/includes/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts -name '*.pl' -type f -exec chmod 755 {} \\; ";
$ret=`$cmd`;
# Build tgz
@ -569,7 +575,7 @@ if ($nboftargetok) {
next;
}
if ($target eq 'DEB')
{
$olddir=getcwd();
@ -608,7 +614,7 @@ if ($nboftargetok) {
$ret=`rm -fr "$BUILDROOT/$PROJECT.tmp/DEBIAN/po/CVS*"`;
print "Edit version in file $BUILDROOT/$PROJECT.tmp/DEBIAN/control\n";
open (SPECFROM,"<$SOURCE/build/deb/control.DEBIAN") || die "Error";
open (SPECFROM,"<$SOURCE/build/deb/control.debianbin") || die "Error";
open (SPECTO,">$BUILDROOT/$PROJECT.tmp/DEBIAN/control") || die "Error";
while (<SPECFROM>) {
$_ =~ s/__VERSION__/$MAJOR.$MINOR.$newbuild/;
@ -662,6 +668,7 @@ if ($nboftargetok) {
$ret=`rm -fr $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/dev/iso-normes`;
$ret=`rm -fr $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/dev/phpcheckstyle`;
$ret=`rm -fr $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/dev/phpunit`;
$ret=`rm -f $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/doc/*/README`;
$ret=`rm -fr $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/doc/flyer`;
$ret=`rm -fr $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/doc/font`;
$ret=`rm -fr $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/doc/tshirt`;

View File

@ -5,17 +5,24 @@ RPM Package tools
This directory contains files used by makepack-dolibarr.pl
script to build a package, ready to be distributed,
with format RPM (for Redhat, Mandriva, ...).
with format RPM (for Redhat, OpenSuse, Mandriva, ...).
# This is standard command to work on Debian packaging:
# This is standard command to work on RPM packaging:
#
# yum -y install rpmlint
# yum -y install hunspell-en hunspell-es hunspell-fr hunspell-it
#
# rpmlint file.rpm Test a package
# mock -r fedora-15-i386 --rebuild ../SRPMS/hello-2.7-1.fc15.src.rpm
#
# On Fedora
# rpm -i --test dolibarr-...rpm To list dependencies of RPM
# yum install dolibarr-...rpm To install package and dependencies
# yum erase dolibarr To remove package
# yum erase dolibarr To remove package
# chcon -R -h -t httpd_sys_script_rw_t /file To add temporary context rw for httpd on /file
# semanage fcontext -a -t httpd_sys_script_rw_t "/dir/(.*)?" To add persistent context rw for httpd on /dir (this add file_contexts.local)
# restorecon -R -v /file Restore values into files (cancel chcon, validate semanage)
#
# On OpenSuse
# yast --install dolibarr-...rpm To install package and dependencies

View File

@ -4,13 +4,14 @@
Version=1.0
Encoding=UTF-8
Name=Dolibarr ERP & CRM
Name[es]=Dolibarr ERP & CRM
Name[fr]=Dolibarr ERP & CRM
Name[it]=Dolibarr ERP & CRM
GenericName=Dolibarr ERP & CRM
Comment=The easy to use manager (ERP & CRM) for small and medium enterprises or foundations
Comment[es]=Software para gestión de PYMES, profesionales independientes, auto emprendedores ó asociaciones
Comment[fr]=L'ERP & CRM simple pour la gestion des TPE, PME, associations et auto-entrepreneurs
Comment[it]=Programma gestionale open source e gratuito per piccole e medie imprese, fondazioni e liberi professionisti
Comment[es]=Software para gestión de PYMES, profesionales independientes, auto emprendedores ó asociaciones
# Command to open an URL
# For Fedora: xdg-open
# For Debian/Ubuntu: xdg-open or x-www-browser

View File

@ -5,6 +5,11 @@
# 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__
@ -12,9 +17,12 @@
Name: %{name}
Version: %{version}
Release: %{release}
Summary: Dolibarr
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
License: GPL
License: GPLv2+
Packager: Laurent Destailleur (Eldy) <eldy@users.sourceforge.net>
Vendor: Dolibarr dev team
@ -56,13 +64,12 @@ Dolibarr was designed to provide only features you need and be easy to
use.
%description -l es
Un software ERP y CRM 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.
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.
%description -l fr
Logiciel ERP & CRM de gestion de PME/PMI, autoentrepreneurs,
@ -71,12 +78,12 @@ 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 programma gestionale open source e gratuito per piccole e medie
Un programmo gestionale 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à. Dolibar è progettato per poter fornire solo ciò di cui hai bisogno
attività. Progettato per poter fornire solo ciò di cui hai bisogno
ed essere facile da usare.
Dolibar è completamente web-based, progettato per poter fornire solo ciò di
Programmo web, progettato per poter fornire solo ciò di
cui hai bisogno ed essere facile da usare.
@ -94,49 +101,51 @@ echo Building %{name}-%{version}-%{release}
#---- install
%install
rm -rf $RPM_BUILD_ROOT
%{__rm} -rf $RPM_BUILD_ROOT
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
%{__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
# %{_datadir} = /usr/share
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%{_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
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
%{__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
#---- 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/*
%_datadir/pixmaps/dolibarr.png
%_datadir/applications/%{name}.desktop
/var/www/dolibarr/build/*
/var/www/dolibarr/htdocs/*
/var/www/dolibarr/scripts/*
/var/www/dolibarr/README
/var/www/dolibarr/COPYRIGHT
#%config /var/www/dolibarr/htdocs/conf/conf.php
%defattr(0664, -, -, 0755)
%config(noreplace) %{_sysconfdir}/dolibarr/apache.conf
%config(noreplace) %{_sysconfdir}/dolibarr/file_contexts.dolibarr
#---- post (after unzip during install)
@ -154,11 +163,11 @@ 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="$targetdir/build/rpm/file_contexts.dolibarr"
export sefileorig="%{_sysconfdir}/dolibarr/file_contexts.dolibarr"
export seconfig="%{_sysconfdir}/selinux/targeted/contexts/files/file_contexts.dolibarr"
#config="/usr/share/dolibarr/htdocs/conf/conf.php"
config="%{_sysconfdir}/dolibarr/conf.php"
lockfile="/usr/share/dolibarr/install.lock"
#export config="/usr/share/dolibarr/htdocs/conf/conf.php"
export config="%{_sysconfdir}/dolibarr/conf.php"
export lockfile="/usr/share/dolibarr/install.lock"
# Detect OS
@ -192,8 +201,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=''
@ -205,12 +214,12 @@ 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 ]
@ -222,19 +231,20 @@ then
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 [ ! -f $seconfig ]; then
echo Create se config file $seconfig
cp $sefileorig $seconfig
#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
# cp $sefileorig $seconfig
restorecon -R -v /etc/dolibarr
restorecon -R -v /var/www/dolibarr
restorecon -R -v /usr/share/dolibarr
fi
# Create a config link dolibarr.conf
@ -253,18 +263,6 @@ echo Set permission to $apacheuser:$apachegroup on $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
if [ -f %{_sysconfdir}/init.d/httpd ]; then
@ -274,6 +272,12 @@ 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 -----"
@ -301,9 +305,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"
#config="/usr/share/dolibarr/htdocs/conf/conf.php"
config="%{_sysconfdir}/dolibarr/conf.php"
lockfile="$targetdir/install.lock"
#export config="/usr/share/dolibarr/htdocs/conf/conf.php"
export config="%{_sysconfdir}/dolibarr/conf.php"
export lockfile="$targetdir/install.lock"
# Detect OS
@ -338,7 +342,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
@ -356,18 +360,15 @@ then
fi
# Removed dirs after apache restart
echo Removed remaining $apacheconfig
rm -f $apacheconfig
echo Removed remaining $config
rm -f $config
%{__rm} -f $config
echo Removed remaining $installconfig
rm -f $installconfig
%{__rm} -f $installconfig
echo Removed remaining $lockfile
rm -f $lockfile
%{__rm} -f $lockfile
echo Removed remaining dir $targetdir/doc
rmdir $targetdir/doc >/dev/null 2>&1
#echo Removed remaining dir $targetdir/htdocs
#rmdir $targetdir/htdocs >/dev/null 2>&1 # Already removed by rpm
%changelog
* Wed Jul 31 2011 Laurent Destailleur 3.1.0-0.2.beta1

View File

@ -1,3 +1,3 @@
/etc/dolibarr/.* system_u:object_r:httpd_sys_script_rw_t:s0
/var/www/dolibarr/.* system_u:object_r:httpd_sys_script_rw_t:s0
/usr/share/dolibarr/.* system_u:object_r:httpd_sys_script_rw_t:s0
/etc/dolibarr(/.*?) system_u:object_r:httpd_sys_script_rw_t:s0
/var/www/dolibarr(/.*?) system_u:object_r:httpd_sys_script_rw_t:s0
/usr/share/dolibarr(/.*?) system_u:object_r:httpd_sys_script_rw_t:s0