# Maintainer: mrxx # Contributor: Andy Weidenbaum pkgname=bitcoin-core pkgver=0.17.1 pkgrel=1 pkgdesc="Bitcoin Core headless P2P node" arch=('aarch64' 'armv6h' 'armv7h' 'i686' 'x86_64') url="https://bitcoincore.org" depends=('boost' 'boost-libs' 'zeromq' 'libevent') checkdepends=('python') makedepends=('autoconf' 'automake' 'binutils' 'libtool' 'm4' 'make' 'pkg-config' 'systemd') license=('MIT') source=(https://bitcoincore.org/bin/bitcoin-core-$pkgver/bitcoin-$pkgver.tar.gz bitcoin.conf bitcoin.logrotate bitcoin.service bitcoin-reindex.service bitcoin-sysusers.conf bitcoin-core-01-systemd-sysusers.hook bitcoin-core-01-userdel.hook bitcoin-core-02-chown.hook bitcoin-core-02-rm-rf.hook) sha256sums=('3e564fb5cf832f39e930e19c83ea53e09cfe6f93a663294ed83a32e194bda42a' 'b1908344281498d39bfa40c3b9725f9c95bf22602cd46e6120a1f17bad9dae35' '8f05207b586916d489b7d25a68eaacf6e678d7cbb5bfbac551903506b32f904f' 'e56dc913b82097acdc20374a2ae1b08323af74ccbbf63c829d4d13c9cb63ad8d' '4d5053ba94fa647abc6abe8b90f46d4c61d706de8fb0151f6aefed772adf317e' 'f126b4824e43d9760ab2021460a37d859986f07e1ac9245ee4938e832739f73a' '0b4f7ec41cf88aa1278d089a03f116c33bac62dec038903f4ced58da67afb980' 'f1c3727220df06993a61cc9f4ef25c83cdaf3624179b5ead8383bc9ef7109e70' 'ae31040f0cc57df976c6ed41e8f69ed4b947db32ba713c7a0b7410108dbf5581' 'b8e574f4b56c81a05a05f5bf59b28120b782d00354b08bd43c641038704e07a5') backup=('etc/bitcoin/bitcoin.conf' 'etc/logrotate.d/bitcoin') provides=('bitcoin-cli' 'bitcoin-daemon' 'bitcoin-tx') conflicts=('bitcoin-cli' 'bitcoin-daemon' 'bitcoin-qt' 'bitcoin-tx') install=bitcoin.install # half of available processing units or one if only one is available _nproc=$(($(nproc)/2)) [[ ${_nproc} < 1 ]] && _nproc=1 build() { cd "$srcdir/${pkgname%-core}-$pkgver" msg2 'Building...' ./autogen.sh ./configure \ --prefix=/usr \ --sbindir=/usr/bin \ --libexecdir=/usr/lib/bitcoin \ --sysconfdir=/etc \ --sharedstatedir=/usr/share/bitcoin \ --localstatedir=/var/lib/bitcoin \ --enable-hardening \ --with-gui=no \ --disable-wallet \ --without-miniupnpc \ --with-gnu-ld make -j$_nproc } check() { cd "$srcdir/${pkgname%-core}-$pkgver" msg2 'Testing...' make -j$_nproc check } package() { cd "$srcdir/${pkgname%-core}-$pkgver" msg2 'Installing license...' install -Dm 644 COPYING -t "$pkgdir/usr/share/licenses/${pkgname%-core}" msg2 'Installing documentation...' install -dm 755 "$pkgdir/usr/share/doc/bitcoin" for _doc in \ $(find doc -maxdepth 1 -type f -name "*.md" -printf '%f\n') \ release-notes; do cp -dpr --no-preserve=ownership "doc/$_doc" \ "$pkgdir/usr/share/doc/bitcoin/$_doc" done msg2 'Installing essential directories' install -dm 700 "$pkgdir/etc/bitcoin" install -dm 755 "$pkgdir/srv/bitcoin" msg2 'Installing bitcoin...' make DESTDIR="$pkgdir" install msg2 'Installing bitcoin.conf...' install -Dm 600 "$srcdir/bitcoin.conf" -t "$pkgdir/etc/bitcoin" msg2 'Installing bitcoin.service...' install -Dm 644 "$srcdir/bitcoin.service" -t "$pkgdir/usr/lib/systemd/system" install -Dm 644 "$srcdir/bitcoin-reindex.service" \ -t "$pkgdir/usr/lib/systemd/system" msg2 'Installing bitcoin-sysusers.conf...' install -Dm 644 "$srcdir/bitcoin-sysusers.conf" \ "$pkgdir/usr/lib/sysusers.d/bitcoin.conf" msg2 'Installing bitcoin.logrotate...' install -Dm 644 "$srcdir/bitcoin.logrotate" "$pkgdir/etc/logrotate.d/bitcoin" msg2 'Installing bash completion...' for _compl in bitcoin-cli bitcoin-tx bitcoind; do install -Dm 644 "contrib/${_compl}.bash-completion" \ "$pkgdir/usr/share/bash-completion/completions/$_compl" done # XXX: pacman hook on Remove event not firing msg2 'Installing pacman hooks...' install -Dm 644 "$srcdir"/*.hook -t "$pkgdir/usr/share/libalpm/hooks" }