Prepare packaging for debian

This commit is contained in:
Laurent Destailleur 2011-07-09 02:41:36 +00:00
parent 68c7c39be1
commit 56a5cc4ff0
5 changed files with 40 additions and 54 deletions

View File

@ -1,6 +1,17 @@
#!/bin/sh #!/bin/sh
# Debian install package run: config, preinst, prerm, postinst, postrm # Debian install package run: config, preinst, prerm, postinst, postrm
# #
# lintian package To test a package
#
# dpkg -l list all packages
# dpkg -b is to build package
# dpkg -c package.deb list content of package
# dpkg -I package.deb give informations on package
# dpkg -i package.deb install a package
#
# dpkg -L packagename list content of installed package
# dpkg --purge remove interactive saved answers
#
set -e set -e

View File

@ -3,39 +3,35 @@ Version: __VERSION__
Architecture: all Architecture: all
Maintainer: Laurent Destailleur <eldy@users.sourceforge.net> Maintainer: Laurent Destailleur <eldy@users.sourceforge.net>
Essential: no Essential: no
Installed-Size: 61200 Installed-Size: 31200
Depends: apache2, libapache2-mod-php5, php5, php5-cli, php5-cgi, php5-curl, php5-gd, php5-ldap, php5-mysql, mysql-server, perl Depends: apache2, libapache2-mod-php5, php5, php5-cli, php5-cgi, php5-curl, php5-gd, php5-ldap, php5-mysql, mysql-server, perl
Section: web Section: web
Priority: optional Priority: optional
Recommends: firefox Recommends: mozilla | netscape
Homepage: http://www.dolibarr.org Homepage: http://www.dolibarr.org
Description: Easy to use ERP & CRM software to manage your activity. Description: An ERP & CRM software to manage your activity.
Dolibarr ERP & CRM is an easy to use 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 and medium companies, foundations or freelances. It includes different
features for Enterprise Resource Planning (ERP) and Customer Relationship features for Enterprise Resource Planning (ERP) and Customer Relationship
Management (CRM) but also for different other activities. Management (CRM) but also other features for different activities.
It's a web software you can install as a standalone program or on any web
hosting provider to use it from anywhere with any web browser.
Dolibarr was designed to provide only features you need and be easy to use.
. .
Only features you need are visible, depending on which module were activated. Dolibarr features are activated by modules. Most common modules are:
Most common used modules are:
. .
* Products and services catalog
* Stock management
* Bank accounts management
* Customers, Suppliers or Prospects directory * Customers, Suppliers or Prospects directory
* Contacts directory * Contacts directory
* Orders management * Orders management
* Commercial proposals management * Commercial proposals management
* Invoices management * Invoices management
* Products and services catalog
* Stock management
* Foundations members management
* Bank accounts management
* Point of Sale * Point of Sale
* Payments management * Payments management
* Commercial actions management * Commercial actions management
* Contracts management * Contracts management
* Standing orders management * Standing orders management
* Shipping management * Shipping management
* Foundations members management
* Donations management * Donations management
* Bookmarks management * Bookmarks management
* Mass Emailings * Mass Emailings
@ -43,7 +39,4 @@ Description: Easy to use ERP & CRM software to manage your activity.
* Data export and import tools * Data export and import tools
* LDAP connectivity * LDAP connectivity
* PDF exports * PDF exports
* And a lot of more modules... * And a lot of other modules
.
You can also add third parties external modules or develop yours.

View File

@ -1,4 +1 @@
Copyright 2011 Laurent Destailleur <eldy@users.sourceforge.net>
This software is distributed under GPL v2 licence.
See file /usr/share/common-licenses/GPL-2 See file /usr/share/common-licenses/GPL-2

View File

@ -15,7 +15,7 @@ Description: Package configuration note
Template: dolibarr/webserver Template: dolibarr/webserver
Type: select Type: select
Choices: Apache, Apache-ssl, Both, None Choices: Apache, Apache-ssl, Both, None
Description: Which Web Server are you running ? Description: Which Web Server are you running?
Dolibarr supports any web server with PHP capabilities, but this Dolibarr supports any web server with PHP capabilities, but this
configuration process only supports Apache and Apache-SSL. configuration process only supports Apache and Apache-SSL.
@ -91,15 +91,6 @@ Template: dolibarr/postrm
Type: boolean Type: boolean
Default: true Default: true
Description: Delete database ? Description: Delete database ?
Delete the Dolibarr MySQL database and all its datas (datas related Do I have to delete also the Dolibarr MySQL database and all its datas
to this quetion are the Dolibarr DBMS account and all (datas subjected to this quetion are the Dolibarr DBMS account and all
Dolibarr tables) ? Dolibarr tables) ?
Template: dolibarr/postrmfile
Type: boolean
Default: true
Description: Delete attached files ?
Delete also all uploaded and generated files (datas related
to this quetion are all files found into /usr/share/dolibarr/documents,
uploaded or generated when using Dolibarr) ?

View File

@ -2,7 +2,7 @@
#---------------------------------------------------------------------------- #----------------------------------------------------------------------------
# \file build/makepack-dolibarr.pl # \file build/makepack-dolibarr.pl
# \brief Dolibarr package builder (tgz, zip, rpm, deb, exe, aps) # \brief Dolibarr package builder (tgz, zip, rpm, deb, exe, aps)
# \version $Id: makepack-dolibarr.pl,v 1.109 2011/07/11 11:09:02 eldy Exp $ # \version $Id: makepack-dolibarr.pl,v 1.106 2011/07/09 02:41:37 eldy Exp $
# \author (c)2004-2011 Laurent Destailleur <eldy@users.sourceforge.net> # \author (c)2004-2011 Laurent Destailleur <eldy@users.sourceforge.net>
#---------------------------------------------------------------------------- #----------------------------------------------------------------------------
@ -48,7 +48,7 @@ if (-d "/usr/src/RPM") {
use vars qw/ $REVISION $VERSION /; use vars qw/ $REVISION $VERSION /;
$REVISION='$Revision: 1.109 $'; $REVISION =~ /\s(.*)\s/; $REVISION=$1; $REVISION='$Revision: 1.106 $'; $REVISION =~ /\s(.*)\s/; $REVISION=$1;
$VERSION="1.0 (build $REVISION)"; $VERSION="1.0 (build $REVISION)";
@ -98,7 +98,7 @@ if (! $TEMP || ! -d $TEMP) {
$BUILDROOT="$TEMP/buildroot"; $BUILDROOT="$TEMP/buildroot";
my $copyalreadydone=0; # Use - before number of choice to avoid copy my $copyalreadydone=0;
my $batch=0; my $batch=0;
for (0..@ARGV-1) { for (0..@ARGV-1) {
@ -262,7 +262,6 @@ if ($nboftargetok) {
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/conf/conf.php.old`; $ret=`rm -f $BUILDROOT/$PROJECT/htdocs/conf/conf.php.old`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/conf/conf.php.postgres`; $ret=`rm -f $BUILDROOT/$PROJECT/htdocs/conf/conf.php.postgres`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/conf/conf*sav*`; $ret=`rm -f $BUILDROOT/$PROJECT/htdocs/conf/conf*sav*`;
$ret=`rm -f $BUILDROOT/$PROJECT/htdocs/install/install.lock`;
$ret=`rm -fr $BUILDROOT/$PROJECT/documents`; $ret=`rm -fr $BUILDROOT/$PROJECT/documents`;
$ret=`rm -fr $BUILDROOT/$PROJECT/document`; $ret=`rm -fr $BUILDROOT/$PROJECT/document`;
@ -458,6 +457,7 @@ if ($nboftargetok) {
print "Copy $BUILDROOT/$PROJECT to $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT\n"; print "Copy $BUILDROOT/$PROJECT to $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT\n";
$cmd="cp -pr \"$BUILDROOT/$PROJECT\" \"$BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT\""; $cmd="cp -pr \"$BUILDROOT/$PROJECT\" \"$BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT\"";
$ret=`$cmd`; $ret=`$cmd`;
print "Create directory $BUILDROOT/$PROJECT.tmp/DEBIAN\n"; print "Create directory $BUILDROOT/$PROJECT.tmp/DEBIAN\n";
$ret=`mkdir "$BUILDROOT/$PROJECT.tmp/DEBIAN"`; $ret=`mkdir "$BUILDROOT/$PROJECT.tmp/DEBIAN"`;
print "Copy $SOURCE/build/deb/* to $BUILDROOT/$PROJECT.tmp/DEBIAN\n"; print "Copy $SOURCE/build/deb/* to $BUILDROOT/$PROJECT.tmp/DEBIAN\n";
@ -498,11 +498,13 @@ if ($nboftargetok) {
$ret=`mkdir -p "$BUILDROOT/$PROJECT.tmp/usr/share/applications"`; $ret=`mkdir -p "$BUILDROOT/$PROJECT.tmp/usr/share/applications"`;
print "Copy desktop file into $BUILDROOT/$PROJECT.tmp/usr/share/applications/dolibarr.desktop\n"; print "Copy desktop file into $BUILDROOT/$PROJECT.tmp/usr/share/applications/dolibarr.desktop\n";
$ret=`cp "$SOURCE/build/deb/dolibarr.desktop" "$BUILDROOT/$PROJECT.tmp/usr/share/applications/dolibarr.desktop"`; $ret=`cp "$SOURCE/build/deb/dolibarr.desktop" "$BUILDROOT/$PROJECT.tmp/usr/share/applications/dolibarr.desktop"`;
$ret=`chmod 444 $BUILDROOT/$PROJECT.tmp/usr/share/applications/dolibarr.desktop`;
print "Create directory $BUILDROOT/$PROJECT.tmp/usr/share/pixmaps\n"; print "Create directory $BUILDROOT/$PROJECT.tmp/usr/share/pixmaps\n";
$ret=`mkdir -p "$BUILDROOT/$PROJECT.tmp/usr/share/pixmaps"`; $ret=`mkdir -p "$BUILDROOT/$PROJECT.tmp/usr/share/pixmaps"`;
print "Copy pixmap file into $BUILDROOT/$PROJECT.tmp/usr/share/pixmaps/dolibarr.xpm\n"; print "Copy pixmap file into $BUILDROOT/$PROJECT.tmp/usr/share/pixmaps/dolibarr.xpm\n";
$ret=`cp "$SOURCE/doc/images/dolibarr.xpm" "$BUILDROOT/$PROJECT.tmp/usr/share/pixmaps/dolibarr.xpm"`; $ret=`cp "$SOURCE/doc/images/dolibarr.xpm" "$BUILDROOT/$PROJECT.tmp/usr/share/pixmaps/dolibarr.xpm"`;
$ret=`chmod 444 $BUILDROOT/$PROJECT.tmp/usr/share/pixmaps/dolibarr.xpm`;
print "Create directory $BUILDROOT/$PROJECT.tmp/usr/share/doc/$PROJECT\n"; print "Create directory $BUILDROOT/$PROJECT.tmp/usr/share/doc/$PROJECT\n";
$ret=`mkdir -p "$BUILDROOT/$PROJECT.tmp/usr/share/doc/$PROJECT"`; $ret=`mkdir -p "$BUILDROOT/$PROJECT.tmp/usr/share/doc/$PROJECT"`;
@ -514,28 +516,20 @@ if ($nboftargetok) {
print "Copy copyright file into $BUILDROOT/$PROJECT.tmp/usr/share/doc/$PROJECT/copyright\n"; print "Copy copyright file into $BUILDROOT/$PROJECT.tmp/usr/share/doc/$PROJECT/copyright\n";
$ret=`cp "$BUILDROOT/$PROJECT.tmp/DEBIAN/copyright" "$BUILDROOT/$PROJECT.tmp/usr/share/doc/$PROJECT/copyright"`; $ret=`cp "$BUILDROOT/$PROJECT.tmp/DEBIAN/copyright" "$BUILDROOT/$PROJECT.tmp/usr/share/doc/$PROJECT/copyright"`;
#$ret=`gzip -9 -c $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/ChangeLog > $BUILDROOT/$PROJECT.tmp/usr/share/doc/$PROJECT/changelog.Debian.gz`; $ret=`gzip -c $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/ChangeLog > $BUILDROOT/$PROJECT.tmp/usr/share/doc/$PROJECT/changelog.Debian.gz`;
$ret=`gzip -9 -c $BUILDROOT/$PROJECT.tmp/DEBIAN/changelog > $BUILDROOT/$PROJECT.tmp/usr/share/doc/$PROJECT/changelog.Debian.gz`;
print "Set owners on files/dir\n"; print "Create directory $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/documents\n";
$ret=`mkdir -p "$BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/documents"`;
print "Set permissions/owners on files/dir\n";
$ret=`chown -R root.root $BUILDROOT/$PROJECT.tmp`; $ret=`chown -R root.root $BUILDROOT/$PROJECT.tmp`;
$ret=`chown -R www-data.www-data $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/documents`;
print "Set permissions on files/dir\n"; $ret=`chmod -R 555 $BUILDROOT/$PROJECT.tmp`;
$ret=`chmod -R 755 $BUILDROOT/$PROJECT.tmp`; $ret=`chmod 755 $BUILDROOT/$PROJECT.tmp`;
$cmd="find $BUILDROOT/$PROJECT.tmp -type f -exec chmod 644 {} \\; "; $ret=`chmod -R 755 $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/documents`;
$ret=`$cmd`; $ret=`chmod -R 755 $BUILDROOT/$PROJECT.tmp/DEBIAN`;
$cmd="find $BUILDROOT/$PROJECT.tmp/DEBIAN -type f -exec chmod 755 {} \\; ";
$ret=`$cmd`;
$ret=`chmod 644 $BUILDROOT/$PROJECT.tmp/DEBIAN/control`; $ret=`chmod 644 $BUILDROOT/$PROJECT.tmp/DEBIAN/control`;
$ret=`chmod 644 $BUILDROOT/$PROJECT.tmp/DEBIAN/templates`; $ret=`chmod 644 $BUILDROOT/$PROJECT.tmp/DEBIAN/templates`;
$cmd="find $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/build -name *.php -type f -exec chmod 755 {} \\; ";
$ret=`$cmd`;
#$cmd="find $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/build -name *.pl -type f -exec chmod 755 {} \\; ";
#$ret=`$cmd`;
$cmd="find $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/dev -name *.php -type f -exec chmod 755 {} \\; ";
$ret=`$cmd`;
$cmd="find $BUILDROOT/$PROJECT.tmp/usr/share/$PROJECT/scripts -name *.php -type f -exec chmod 755 {} \\; ";
$ret=`$cmd`;
print "Go to directory $BUILDROOT\n"; print "Go to directory $BUILDROOT\n";
$olddir=getcwd(); $olddir=getcwd();