aboutsummaryrefslogblamecommitdiffstats
path: root/main/bacula/APKBUILD
blob: 8b795d50ddf443826fc5b059730fe0f0a338e4f7 (plain) (tree)
1
2
3
4
5
6
7
8
9
                                                   
                                                     
                
            
        

                                                        
          
               
          
                                                                                    
                         
                          
                                                    
                                                                        

                  
                                
                                                                                                  





                       
                         
                                  
         

                                    
 
            








                                                                        



                                     




























                                                           
 
                                 







                                      



                                                                
            

                                                  
                             

                                                        

                                                                       




                                                                   




                                                                             
                                                                 





                                                           
                                          
                                                                        

                                                      

                                                         






                                                     





                                      
                           
                              




                                                                       




                                       
                           

 
                                                              
                                                 
                                                 
                                                
                                                
                                                
                                                

                                                             
                                                                                                 
                                                                                 




                                                                                 

                                                                                             
                                                                                                                                                                 
                                                                                                                                                 




                                                                                                                                                 

                                                                                                                                                             
# Contributor: Łukasz Jendrysik <scadu@yandex.com>
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
pkgname="bacula"
pkgver=7.0.5
pkgrel=5
pkgdesc="Enterprise ready, network based backup program"
url="http://www.bacula.org"
arch="all"
license="AGPL3"
depends=""
depends_dev="autoconf mariadb-dev ncurses-dev openssl-dev postgresql-dev sqlite-dev 
	zlib-dev lzo-dev"
makedepends="$depends_dev"
install="$pkgname.pre-install $pkgname.post-upgrade"
subpackages="$pkgname-doc $pkgname-mysql $pkgname-pgsql $pkgname-sqlite"
pkgusers="bacula"
pkggroups="bacula"
somask="libbaccats-${pkgver}.so"
source="http://downloads.sourceforge.net/project/$pkgname/$pkgname/$pkgver/$pkgname-$pkgver.tar.gz
	bacula-dir-init
	bacula-dir-conf
	bacula-sd-init
	bacula-sd-conf
	bacula-fd-init
	bacula-fd-conf
	fix-headers.patch
	configure-detect-gcc.patch
	"

_builddir="$srcdir/$pkgname-$pkgver"

prepare () {
	cd "$_builddir"
	for i in $source; do
		case $i in
		*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
		esac
	done

	cd "$_builddir"/autoconf
	autoconf && cp configure ../
}

build() {
	cd "$srcdir/$pkgname-$pkgver"
	./configure \
		--build=$CBUILD \
		--host=$CHOST \
		--prefix=/usr \
		--sysconfdir=/etc/bacula \
		--localstatedir=/var \
		--mandir=/usr/share/man \
		--docdir=/usr/share/doc \
		--infodir=/usr/share/info \
		--with-pid-dir=/var/run \
		--with-subsys-dir=/var/lock/subsys \
		--with-logdir=/var/log/bacula \
		--enable-largefile \
		--enable-smartalloc \
		--disable-nls \
		--with-openssl=/usr/include/openssl \
		--with-postgresql \
		--with-mysql \
		--with-sqlite3 \
		--with-scriptdir=/etc/bacula/scripts \
		--with-working-dir=/var/lib/bacula \
		--with-dir-user=bacula \
		--with-dir-group=bacula \
		--with-archivedir=/var/lib/bacula/archive \
		--with-sd-user=bacula \
		--with-sd-group=bacula \
		--with-fd-user=root \
		--with-fd-group=root \
		|| return 1

	make NO_ECHO= || return 1
}

package() {
	cd "$srcdir/$pkgname-$pkgver"
	make DESTDIR="$pkgdir" install

	for DAEMON in dir sd fd
	do
		install -Dm755 "$srcdir"/bacula-${DAEMON}-init \
		 "$pkgdir"/etc/init.d/bacula-${DAEMON}
		install -Dm644 "$srcdir"/bacula-${DAEMON}-conf \
		 "$pkgdir"/etc/conf.d/bacula-${DAEMON}
	done
	install -Dm644 examples/sample-query.sql \
	 "$pkgdir"/etc/bacula/scripts/query.sql
	# Fix correct log dir
	sed -i -e 's%/var/bacula/log%/var/log/bacula%' \
	 "$pkgdir"/etc/bacula/bacula-dir.conf
	# Install logrotate script
	install -Dm644 scripts/logrotate $pkgdir/etc/logrotate.d/bacula
	sed -i -e 's%/var/bacula/log%/var/log/bacula%' \
	 "$pkgdir"/etc/logrotate.d/bacula
	# Use shell script for catalog backup instead of perl
	sed -i -e 's/make_catalog_backup.pl/make_catalog_backup/' \
	 "$pkgdir"/etc/bacula/bacula-dir.conf
	for dir in /var/lib/bacula /etc/bacula/scripts/make_catalog_backup* \
	 /etc/bacula/scripts/mtx-changer*
	do
		chown bacula.bacula "$pkgdir"$dir || return 1
	done
	find "$pkgdir"/usr/lib -iname libbaccats* -type l -delete
}

_mv_backend() {
	mkdir -p "$subpkgdir"/usr/lib
	mkdir -p "$subpkgdir"/etc/bacula/scripts
	mv "$pkgdir"/usr/lib/libbaccats-${1}-${pkgver}.so \
	  "$subpkgdir"/usr/lib || return 1
	ln -s libbaccats-${pkgver}.so "$subpkgdir"/usr/lib/libbaccats.so
	ln -s libbaccats-${1}-${pkgver}.so \
	  "$subpkgdir"/usr/lib/libbaccats-${pkgver}.so
	#mv "$pkgdir"/usr/lib/libbaccats-${1}.so \
	#  "$subpkgdir"/usr/lib/libbaccats.so || return 1
	mv "$pkgdir"/etc/bacula/scripts/*_${1}_* \
	  "$subpkgdir"/etc/bacula/scripts || return 1
}

mysql() {
	pkgdesc="Bacula MySQL backend"
	depends="bacula"
	_mv_backend mysql
}

pgsql() {
	pkgdesc="Bacula PGSQL backend"
	depends="bacula"
	pkgusers="postgres"
	_mv_backend postgresql
	for file in create_postgresql_database make_postgresql_tables \
	 grant_postgresql_privileges
	do
		chown postgres "$subpkgdir"/etc/bacula/scripts/$file
	done
}

sqlite() {
	pkgdesc="Bacula SQLite backend"
	depends="bacula"
	_mv_backend sqlite3
}

md5sums="b4a99d673f5e1eaae8b257ccc610241f  bacula-7.0.5.tar.gz
3967099975a3eafe5811482b231b159f  bacula-dir-init
20f28a16f34e3f20ed18ed81b010e765  bacula-dir-conf
5ae1fba6860a320394d65744e5640bdb  bacula-sd-init
afe2f9a4d79d7d96eb9372d003d10f86  bacula-sd-conf
6ae93e570f95fa845fa534c2d2efaac0  bacula-fd-init
4500ce2d62bf9df33c07f70dc40f7b85  bacula-fd-conf
b84924f161f193d8441316ee4abc3064  fix-headers.patch
260871cf8415b6e6e3fa33d1103acffa  configure-detect-gcc.patch"
sha256sums="1457849eb33011b43371801b62ffa13d29bebe51be8d5a36da563b87bb094a49  bacula-7.0.5.tar.gz
3dcba6d60dd2c67b1378a791d730588ff7d29eb59024fc731d4f4be01660e293  bacula-dir-init
5891bdb3a8ec581f8a2fd404a5a8995d8950d80da71a3b732474fb45e80d22c2  bacula-dir-conf
7c08606bbd391fa73773ef52bcee2dd989530c8c44b9dfae0b82cfe73976a400  bacula-sd-init
88808b3b971825acffc9dc3b6d418e52d9bd89df8527052c555cba4336ead784  bacula-sd-conf
12a62dd9c7a7931060c2c21e52cb9069a3774ebe7c8370455068e2dded0c2f80  bacula-fd-init
64124036c19e849cc580b981887be35b5746acb584397190a0afe2797b2d1ace  bacula-fd-conf
f74d95cd0dab90326e0eeee45b30b4af52d61f9e8a16547ce879533d2e85d460  fix-headers.patch
ecf64bf8ea837c0f54d157b7b4b2dd49209d2f78e5d74a3a03696073ffb4ba79  configure-detect-gcc.patch"
sha512sums="df7908769fd13a1cb2e0491d3773577db40c0f1c010b887c6dc6d7e0bc0b408fbfc260e6d5a2a34975e5b424152c7f558b33aeedea45f366636739295641394b  bacula-7.0.5.tar.gz
852df12c6555ad65661345e15872ca75b99a9d3e5b9e6ed80d82021006c9716a04919dabe88ff672aa550ac0b00b31eaa2e739469557fc326e6bb4216e2308b9  bacula-dir-init
e06e5f8821d4a9a3f40cc8f11feeb5004780b82e2ad5e645f69a0f8faff78d8a8c6e66b36e105619b2a78d6b2f294dedd0e00e9bbf568af201cf299387135fef  bacula-dir-conf
ee8a9206d3e604f5ac81bc70bece97ec77dae87b463a6ff4d08fba9418bf37e99a30895f115b2e9fbba1ec5f92b5d9368fd155717fedae12792f255b02413208  bacula-sd-init
80f6cf74cc14e722747d92e6e7b073bdf32456d395c6b4b63daa1ddcaf75f3d76d1b9a0e8e2da512e8f82e4d59a4a93cc38117af91d974fe7db644516bdb9909  bacula-sd-conf
e4c09734ccf9e1ac197ac4684c8294dddae817cf764b168ce7357b2529d11314f948ed2807d501b3c7cd7725ba488981fe573d7b389fca7feedfa9c8a1cce6fa  bacula-fd-init
ff312e8952b31de27f22b257d12b570e151794d985f854ff19bab34363ea974d7583edced6b125518da3ecfe2b2a229b732473958b10484d988fcc8a67a372cc  bacula-fd-conf
215a0b5bc038658ed821a85c6e70df70cb66ca2a970f1e27ae9690c54372410f2d677f1b04b380dfedcff516c96ba91200850917b20454a871a99958d0d24604  fix-headers.patch
f6c0f79e270790d2f3564a76d58b6ce5b7b4348247ad31c782363e3a51604bc53d5b11b232469241ae59c1982f65fb5bbb744537a8b94a2bd2ce3395a57a344f  configure-detect-gcc.patch"