# Maintainer: Sébastien Luttringer pkgname=backuppc pkgver=4.4.0 _xsver=0.62 _rbpcver=3.1.3.0 pkgrel=6 pkgdesc='Enterprise-grade system for backing up Linux, Windows and MacOS PCs' url='https://github.com/backuppc/' license=('GPL2') arch=('x86_64') makedepends=('git') depends=('glibc' 'popt' 'perl' 'par2cmdline' 'perl-archive-zip' 'perl-io-dirent' 'perl-file-listing' 'perl-time-modules' 'perl-cgi' 'perl-xml-rss' 'perl-json-xs' 'smtp-forwarder') optdepends=('openssh: ssh transfert support' 'rsync: rsync transfert support' 'smbclient: smb/cifs transfert support' 'rrdtool: graphs of the pool usage ') source=("https://github.com/backuppc/backuppc/releases/download/$pkgver/BackupPC-$pkgver.tar.gz" "https://github.com/backuppc/backuppc-xs/releases/download/${_xsver}/BackupPC-XS-${_xsver}.tar.gz" "https://github.com/backuppc/rsync-bpc/releases/download/${_rbpcver}/rsync-bpc-${_rbpcver}.tar.gz" "$pkgname.service" "$pkgname.sysusers" "$pkgname.tmpfiles" "$pkgname.profile.sh" "$pkgname.profile.csh" "$pkgname.httpd" 'https://github.com/backuppc/backuppc/commit/2c9270b9b849b2c86ae6301dd722c97757bc9256.patch') install=$pkgname.install backup=("etc/$pkgname/config.pl" "etc/$pkgname/hosts" "etc/httpd/conf/extra/$pkgname.conf" "etc/$pkgname/$pkgname.users") sha256sums=('8bc04cd513d47629508bd2fd6f455ced38316974913638e971f44e37786c6365' '94d863083a466558f82f10b1b95db7742ea99ebce808214f20897b343dc32b18' '3eeb137319b608512b2d23c54ea8b52b511db806ffbd5fa730a394431d556f3f' '70b414d681b47b8b41a228d8155761eac5f67b63bcdc6e0e4da7a0d27f3b6810' '82598186b24b28d7e76c174ac90b046831954d3ebfe22219fa67a9011e306f3f' 'ef5c4fde24e14ab5828fed085a7dd8fd699dfdbbd875bc6c29b41ec2b0ae645b' 'daa9690efe856b01dc749be0dcc8f3daebf7c1c62500df2431eeb2762b446284' '2c96d3be7ce0f681ea4b34abab93154b086132166658a747a7a8ed8c7ed2757e' '97dbe6a0c8302d0e6ff6f97e77ca9fb4187272abb43dd01fff431170b6d39e6e' 'b4547f90f903d067fd09c4f2c168e204d818b69543defa8cad5dbdd2dfc258eb') prepare() { cd BackupPC-$pkgver # apply patch from the source array (should be a pacman feature) local filename for filename in "${source[@]}"; do if [[ "$filename" =~ \.patch$ ]]; then echo "Applying patch ${filename##*/}" patch -p1 -N -i "$srcdir/${filename##*/}" fi done : } build() { echo 'rsync-bpc' cd "$srcdir"/rsync-bpc-$_rbpcver ./configure --prefix=/usr/share/backuppc make } package() { echo 'rsync-bpc' cd "$srcdir"/rsync-bpc-$_rbpcver make install DESTDIR="$pkgdir" echo 'backuppc-xs' cd "$srcdir"/BackupPC-XS-$_xsver perl Makefile.PL INSTALLDIRS=vendor make -j1 # parallel build fail make install DESTDIR="$pkgdir" echo 'backuppc' cd "$srcdir"/BackupPC-$pkgver export PERLLIB=$(echo "$pkgdir"/usr/lib/perl5/*/vendor_perl/) perl configure.pl \ --batch \ --no-set-perms \ --uid-ignore \ --hostname __HOSTNAME__ \ --compress-level 5 \ --backuppc-user=backuppc \ --dest-dir "$pkgdir" \ --fhs \ --install-dir /usr/share/$pkgname \ --config-dir /etc/$pkgname \ --cgi-dir /usr/share/$pkgname/cgi-bin \ --html-dir /usr/share/$pkgname/html \ --html-dir-url /backuppc \ --data-dir /var/lib/$pkgname \ --log-dir /var/log/$pkgname \ --run-dir /run/$pkgname \ --bin-path rsync_bpc=/usr/share/backuppc/bin/rsync_bpc \ --bin-path smbclient=/usr/bin/smbclient \ --bin-path nmblookup=/usr/bin/nmblookup \ --bin-path rsync=/usr/bin/rsync \ --bin-path ssh=/usr/bin/ssh \ --bin-path sendmail=/usr/bin/sendmail \ --bin-path ping=/usr/bin/ping \ --bin-path ping6=/usr/bin/ping \ --bin-path rrdtool=/usr/bin/rrdtool \ -- cd "$srcdir" # systemd install -D -m 644 $pkgname.service "$pkgdir/usr/lib/systemd/system/$pkgname.service" install -D -m 644 $pkgname.sysusers "$pkgdir/usr/lib/sysusers.d/$pkgname.conf" install -D -m 644 $pkgname.tmpfiles "$pkgdir/usr/lib/tmpfiles.d/$pkgname.conf" # install shell profiles install -D -m 755 $pkgname.profile.sh "$pkgdir/etc/profile.d/$pkgname.sh" install -D -m 755 $pkgname.profile.csh "$pkgdir/etc/profile.d/$pkgname.csh" # install apache http install -D -m 644 $pkgname.httpd "$pkgdir/etc/httpd/conf/extra/$pkgname.conf" install -D -m 640 /dev/null "$pkgdir/etc/$pkgname/$pkgname.users" # set correct permissions cd "$pkgdir" chown 126:126 -R etc/$pkgname chown 126:126 -R var/{log,lib}/$pkgname chmod 755 etc chmod 755 -R var usr/share/$pkgname/{cgi-,}bin chmod 750 var/log/$pkgname etc/$pkgname chmod 750 -R var/lib/$pkgname chmod 640 etc/$pkgname/{config.pl,hosts} # no /run rm -rv "$pkgdir"/run # no core_perl directory rm -rv "$pkgdir"/usr/lib/perl5/*/core_perl } # vim:set ts=2 sw=2 et: