123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357 |
- #---------------------------------------------------------
- # Spec file to build a rpm file
- #
- # This is an example to build a rpm file. You can use this
- # file to build a package for your own distributions and
- # edit it if you need to match your rules.
- # --------------------------------------------------------
- Name: dolibarr
- 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, asociaciones o autónomos
- Summary(fr): Logiciel ERP & CRM de gestion de PME/PMI, auto-entrepreneurs ou associations
- Summary(it): Programmo gestionale per piccole imprese, fondazioni e liberi professionisti
- License: GPL-3.0+
- #Packager: Laurent Destailleur (Eldy) <eldy@users.sourceforge.net>
- Vendor: Dolibarr dev team
- URL: http://www.dolibarr.org
- Source0: http://www.dolibarr.org/files/lastbuild/package_rpm_opensuse/%{name}-%{version}.tgz
- Patch0: %{name}-forrpm.patch
- BuildArch: noarch
- BuildRoot: %{_tmppath}/%{name}-%{version}-build
- Group: Productivity/Office/Management
- Requires: apache2, apache2-mod_php5, php5 >= 5.3.0, php5-gd, php5-ldap, php5-imap, php5-mysql, php5-openssl, dejavu
- Requires: mysql-community-server, mysql-community-server-client
- %if 0%{?suse_version}
- BuildRequires: update-desktop-files fdupes
- %endif
- # Set yes to build test package, no for release (this disable need of /usr/bin/php not found by OpenSuse)
- AutoReqProv: no
- %description
- An easy to use CRM & ERP 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.
- 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.
-
- %description -l fr
- Logiciel ERP & CRM de gestion de PME/PMI, autoentrepreneurs,
- artisans ou associations. Il permet de gérer vos clients, prospect,
- fournisseurs, devis, factures, comptes bancaires, agenda, campagnes mailings
- et bien d'autres choses dans une interface pensée pour la simplicité.
- %description -l it
- 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à. Progettato per poter fornire solo ciò di cui hai bisogno
- ed essere facile da usare.
- Programmo web, progettato per poter fornire solo ciò di
- cui hai bisogno ed essere facile da usare.
- #---- prep
- %prep
- %setup -q
- %patch0 -p0 -b .patch
- #---- build
- %build
- # Nothing to build
- #---- install
- %install
- %{__rm} -rf $RPM_BUILD_ROOT
- %{__mkdir} -p $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
- %{__install} -m 644 build/rpm/conf.php $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/conf.php
- %{__install} -m 644 build/rpm/httpd-dolibarr.conf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/apache.conf
- %{__install} -m 644 build/rpm/file_contexts.dolibarr $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/file_contexts.dolibarr
- %{__install} -m 644 build/rpm/install.forced.php.opensuse $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/install.forced.php
- %{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}/pixmaps
- %{__install} -m 644 doc/images/dolibarr_48x48.png $RPM_BUILD_ROOT%{_datadir}/pixmaps/%{name}.png
- %{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}/applications
- #desktop-file-install --delete-original --dir=$RPM_BUILD_ROOT%{_datadir}/applications build/rpm/%{name}.desktop
- %{__install} -m 644 build/rpm/dolibarr.desktop $RPM_BUILD_ROOT%{_datadir}/applications/%{name}.desktop
- %{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}/%{name}/build/rpm
- %{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}/%{name}/build/tgz
- %{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}/%{name}/htdocs
- %{__mkdir} -p $RPM_BUILD_ROOT%{_datadir}/%{name}/scripts
- %{__cp} -pr build/rpm/* $RPM_BUILD_ROOT%{_datadir}/%{name}/build/rpm
- %{__cp} -pr build/tgz/* $RPM_BUILD_ROOT%{_datadir}/%{name}/build/tgz
- %{__cp} -pr htdocs $RPM_BUILD_ROOT%{_datadir}/%{name}
- %{__cp} -pr scripts $RPM_BUILD_ROOT%{_datadir}/%{name}
- %{__rm} -rf $RPM_BUILD_ROOT%{_datadir}/%{name}/htdocs/includes/ckeditor/_source
- %{__rm} -rf $RPM_BUILD_ROOT%{_datadir}/%{name}/htdocs/includes/fonts
- # Lang
- echo "%defattr(0644, root, root, 0755)" > %{name}.lang
- echo "%dir %{_datadir}/%{name}/htdocs/langs" >> %{name}.lang
- for i in $RPM_BUILD_ROOT%{_datadir}/%{name}/htdocs/langs/*_*
- do
- lang=$(basename $i)
- lang1=`expr substr $lang 1 2`;
- lang2=`expr substr $lang 4 2 | tr "[:upper:]" "[:lower:]"`;
- echo "%dir %{_datadir}/%{name}/htdocs/langs/${lang}" >> %{name}.lang
- if [ "$lang1" = "$lang2" ] ; then
- echo "%lang(${lang1}) %{_datadir}/%{name}/htdocs/langs/${lang}/*.lang"
- else
- echo "%lang(${lang}) %{_datadir}/%{name}/htdocs/langs/${lang}/*.lang"
- fi
- done >>%{name}.lang
- %if 0%{?suse_version}
- # Enable this command to tag desktop file for suse
- %suse_update_desktop_file dolibarr
- # Enable this command to allow suse detection of duplicate files and create hardlinks instead
- %fdupes $RPM_BUILD_ROOT%{_datadir}/%{name}/htdocs
- %endif
- #---- clean
- %clean
- %{__rm} -rf $RPM_BUILD_ROOT
- #---- files
- %files -f %{name}.lang
- %defattr(0755, root, root, 0755)
- %dir %_datadir/dolibarr
- %dir %_datadir/dolibarr/scripts
- %_datadir/dolibarr/scripts/*
- %defattr(-, root, root, 0755)
- %doc COPYING ChangeLog doc/index.html htdocs/langs/HOWTO-Translation.txt
- %_datadir/pixmaps/dolibarr.png
- %_datadir/applications/dolibarr.desktop
- %dir %_datadir/dolibarr/build
- %dir %_datadir/dolibarr/build/rpm
- %_datadir/dolibarr/build/rpm/*
- %dir %_datadir/dolibarr/build/tgz
- %_datadir/dolibarr/build/tgz/*
- %dir %_datadir/dolibarr/htdocs
- %_datadir/dolibarr/htdocs/accountancy
- %_datadir/dolibarr/htdocs/adherents
- %_datadir/dolibarr/htdocs/admin
- %_datadir/dolibarr/htdocs/asterisk
- %_datadir/dolibarr/htdocs/bookmarks
- %_datadir/dolibarr/htdocs/boutique
- %_datadir/dolibarr/htdocs/cashdesk
- %_datadir/dolibarr/htdocs/categories
- %_datadir/dolibarr/htdocs/comm
- %_datadir/dolibarr/htdocs/commande
- %_datadir/dolibarr/htdocs/compta
- %_datadir/dolibarr/htdocs/conf
- %_datadir/dolibarr/htdocs/contact
- %_datadir/dolibarr/htdocs/contrat
- %_datadir/dolibarr/htdocs/core
- %_datadir/dolibarr/htdocs/cron
- %_datadir/dolibarr/htdocs/ecm
- %_datadir/dolibarr/htdocs/expedition
- %_datadir/dolibarr/htdocs/exports
- %_datadir/dolibarr/htdocs/externalsite
- %_datadir/dolibarr/htdocs/fichinter
- %_datadir/dolibarr/htdocs/fourn
- %_datadir/dolibarr/htdocs/ftp
- %_datadir/dolibarr/htdocs/holiday
- %_datadir/dolibarr/htdocs/imports
- %_datadir/dolibarr/htdocs/includes
- %_datadir/dolibarr/htdocs/install
- %_datadir/dolibarr/htdocs/langs/HOWTO-Translation.txt
- %_datadir/dolibarr/htdocs/livraison
- %_datadir/dolibarr/htdocs/mailmanspip
- %_datadir/dolibarr/htdocs/margin
- %_datadir/dolibarr/htdocs/opensurvey
- %_datadir/dolibarr/htdocs/paybox
- %_datadir/dolibarr/htdocs/paypal
- %_datadir/dolibarr/htdocs/printipp
- %_datadir/dolibarr/htdocs/product
- %_datadir/dolibarr/htdocs/projet
- %_datadir/dolibarr/htdocs/public
- %_datadir/dolibarr/htdocs/societe
- %_datadir/dolibarr/htdocs/support
- %_datadir/dolibarr/htdocs/theme
- %_datadir/dolibarr/htdocs/user
- %_datadir/dolibarr/htdocs/webservices
- %_datadir/dolibarr/htdocs/*.ico
- %_datadir/dolibarr/htdocs/*.patch
- %_datadir/dolibarr/htdocs/*.php
- %_datadir/dolibarr/htdocs/*.txt
- %dir %{_sysconfdir}/dolibarr
- %defattr(0664, root, www)
- %config(noreplace) %{_sysconfdir}/dolibarr/conf.php
- %config(noreplace) %{_sysconfdir}/dolibarr/apache.conf
- %config(noreplace) %{_sysconfdir}/dolibarr/install.forced.php
- %config(noreplace) %{_sysconfdir}/dolibarr/file_contexts.dolibarr
- #---- post (after unzip during install)
- %post
- echo Run post script of packager dolibarr_opensuse.spec
- # Define vars
- export docdir="/var/lib/dolibarr/documents"
- export apachelink="%{_sysconfdir}/apache2/conf.d/dolibarr.conf"
- export apacheuser='wwwrun';
- export apachegroup='www';
- # Remove dolibarr install/upgrade lock file if it exists
- %{__rm} -f $docdir/install.lock
- # Create empty directory for uploaded files and generated documents
- echo Create document directory $docdir
- %{__mkdir} -p $docdir
- # Set correct owner on config files
- %{__chown} -R root:$apachegroup /etc/dolibarr/*
- # If a conf already exists and its content was already completed by installer
- export config=%{_sysconfdir}/dolibarr/conf.php
- if [ -s $config ] && grep -q "File generated by" $config
- then
- # File already exist. We add params not found.
- echo Add new params to overwrite path to use shared libraries/fonts
- grep -q -c "dolibarr_lib_ADODB_PATH" $config || [ ! -d "/usr/share/php/adodb" ] || echo "<?php \$dolibarr_lib_ADODB_PATH='/usr/share/php/adodb'; ?>" >> $config
- grep -q -c "dolibarr_lib_FPDI_PATH" $config || [ ! -d "/usr/share/php/fpdi" ] || echo "<?php \$dolibarr_lib_FPDI_PATH='/usr/share/php/fpdi'; ?>" >> $config
- #grep -q -c "dolibarr_lib_GEOIP_PATH" $config || echo "<?php \$dolibarr_lib_GEOIP_PATH=''; ?>" >> $config
- grep -q -c "dolibarr_lib_NUSOAP_PATH" $config || [ ! -d "/usr/share/php/nusoap" ] || echo "<?php \$dolibarr_lib_NUSOAP_PATH='/usr/share/php/nusoap'; ?>" >> $config
- grep -q -c "dolibarr_lib_ODTPHP_PATHTOPCLZIP" $config || [ ! -d "/usr/share/php/libphp-pclzip" ] || echo "<?php \$dolibarr_lib_ODTPHP_PATHTOPCLZIP='/usr/share/php/libphp-pclzip'; ?>" >> $config
- #grep -q -c "dolibarr_lib_PHPEXCEL_PATH" $config || echo "<?php \$dolibarr_lib_PHPEXCEL_PATH=''; ?>" >> $config
- #grep -q -c "dolibarr_lib_TCPDF_PATH" $config || echo "<?php \$dolibarr_lib_TCPDF_PATH=''; ?>" >> $config
- grep -q -c "dolibarr_js_CKEDITOR" $config || [ ! -d "/usr/share/javascript/ckeditor" ] || echo "<?php \$dolibarr_js_CKEDITOR='/javascript/ckeditor'; ?>" >> $config
- grep -q -c "dolibarr_js_JQUERY" $config || [ ! -d "/usr/share/javascript/jquery" ] || echo "<?php \$dolibarr_js_JQUERY='/javascript/jquery'; ?>" >> $config
- grep -q -c "dolibarr_js_JQUERY_UI" $config || [ ! -d "/usr/share/javascript/jquery-ui" ] || echo "<?php \$dolibarr_js_JQUERY_UI='/javascript/jquery-ui'; ?>" >> $config
- grep -q -c "dolibarr_js_JQUERY_FLOT" $config || [ ! -d "/usr/share/javascript/flot" ] || echo "<?php \$dolibarr_js_JQUERY_FLOT='/javascript/flot'; ?>" >> $config
- grep -q -c "dolibarr_font_DOL_DEFAULT_TTF_BOLD" $config || echo "<?php \$dolibarr_font_DOL_DEFAULT_TTF_BOLD='/usr/share/fonts/truetype/DejaVuSans-Bold.ttf'; ?>" >> $config
- fi
- # Create a config link dolibarr.conf
- if [ ! -L $apachelink ]; then
- apachelinkdir=`dirname $apachelink`
- if [ -d $apachelinkdir ]; then
- echo Create dolibarr web server config link from %{_sysconfdir}/dolibarr/apache.conf to $apachelink
- ln -fs %{_sysconfdir}/dolibarr/apache.conf $apachelink
- else
- echo Do not create link $apachelink - web server conf dir $apachelinkdir not found. web server package may not be installed
- fi
- fi
- echo Set permission to $apacheuser:$apachegroup on /var/lib/dolibarr
- %{__chown} -R $apacheuser:$apachegroup /var/lib/dolibarr
- %{__chmod} -R o-w /var/lib/dolibarr
- # Restart web server
- echo Restart web server
- if [ -f %{_sysconfdir}/init.d/httpd ]; then
- %{_sysconfdir}/init.d/httpd restart
- fi
- 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
- /sbin/service mysqld restart
- fi
- if [ -f /etc/init.d/mysql ]; then
- /sbin/service mysql restart
- fi
- # Show result
- echo
- echo "----- Dolibarr %version-%release - (c) Dolibarr dev team -----"
- echo "Dolibarr files are now installed (into /usr/share/dolibarr)."
- echo "To finish installation and use Dolibarr, click on the menu"
- echo "entry Dolibarr ERP-CRM or call the following page from your"
- echo "web browser:"
- echo "http://localhost/dolibarr/"
- echo "-------------------------------------------------------"
- echo
- #---- postun (after upgrade or uninstall)
- %postun
- if [ "x$1" = "x0" ] ;
- then
- # Remove
- echo "Removed package"
-
- # Define vars
- export apachelink="%{_sysconfdir}/apache2/conf.d/dolibarr.conf"
-
- # Remove apache link
- if [ -L $apachelink ] ;
- then
- echo "Delete apache config link for Dolibarr ($apachelink)"
- %{__rm} -f $apachelink
- status=purge
- fi
-
- # Restart web servers if required
- if [ "x$status" = "xpurge" ] ;
- then
- # Restart web server
- echo Restart web server
- if [ -f %{_sysconfdir}/init.d/httpd ]; then
- %{_sysconfdir}/init.d/httpd restart
- fi
- if [ -f %{_sysconfdir}/init.d/apache2 ]; then
- %{_sysconfdir}/init.d/apache2 restart
- fi
- fi
- else
- # Upgrade
- echo "No remove action done (this is an upgrade)"
- fi
- # version x.y.z-0.1.a for alpha, x.y.z-0.2.b for beta, x.y.z-0.3 for release
- %changelog
- * Fri Feb 14 2014 Laurent Destailleur 3.5.2-0.3
- - Upstream release
- * Fri Feb 7 2014 Laurent Destailleur 3.5.1-0.3
- - Upstream release
- * Mon Dec 30 2013 Laurent Destailleur 3.5.0-0.3
- - Initial version (#723326)
|