blob: 0e33d2d1b33ab6263f7fa70fceb97205960e9909 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
|
# Maintainer: Matthew Tran <0e4ef622@gmail.com>
# Contributor: Marcel O'Neil <marcel at marceloneil dot com>
# Contributor: Andy Weidenbaum <archbaum@gmail.com>
# Contributor: RunningDroid <runningdroid AT zoho.com>
# Contributor: Sebastian Lindqvist <dunpin@gmail.com>
# Contributor: Dan Beste <dan.ray.beste@gmail.com>
pkgname='electron-cash'
pkgdesc='Lightweight Bitcoin Cash wallet'
pkgver=4.4.1
secp256k1ver=0.20.9
pkgrel=4
url='http://www.electroncash.org/'
arch=('any')
license=('MIT')
makedepends=(
'automake'
'autoconf'
'git'
'libtool'
'protobuf'
'python-requests'
'python-setuptools'
'python-tox'
)
depends=(
'hicolor-icon-theme'
'python'
'python-dateutil'
'python-dnspython'
'python-ecdsa'
'python-jsonrpclib-pelix'
'python-pathvalidate>=3.0.0'
'python-protobuf'
'python-pyaes'
'python-pyqt5'
'python-pysocks'
'python-qrcode'
'python-requests'
'python-six'
'python-stem'
'qt5-base'
'qt5-svg'
'ttf-bitstream-vera'
'python-certifi'
)
optdepends=(
'tor: Tor support'
'python-btchip: Ledger hardware wallet support'
'python-hidapi: Digital Bitbox hardware wallet support'
'python-matplotlib: plot transaction history in graphical mode'
'python-pycryptodomex: use PyCryptodome AES implementation instead of pyaes'
'python-qdarkstyle: optional dark theme in graphical mode'
'python-rpyc: send commands to Electrum Python console from an external script'
'python-trezor: Trezor hardware wallet support'
'python-keepkey: Trezor hardware wallet support'
'python-zxing-cpp: QR code reading support'
'gst-plugins-good: QR code reading support'
'qt5-multimedia: QR code reading support'
)
provides=("${pkgname}")
conflicts=("${pkgname}")
source=("${pkgname}-${pkgver}.tar.gz::https://github.com/Electron-Cash/Electron-Cash/archive/${pkgver}.tar.gz"
"secp256k1-${secp256k1ver}.tar.gz::https://github.com/Electron-Cash/secp256k1/archive/v${secp256k1ver}.tar.gz"
"fix-compilation.patch"
"make_locale.patch"
"fix-fusion.patch")
sha256sums=('2b4c0576c3bde1e863c4b0647e78987102f45c9fe36cc65387fcececb955e4b5'
'68e84775e57da77e19ccb6b0dde6ca0882377bdd48ecc6da0047a70201ec64c8'
'SKIP'
'SKIP'
'SKIP')
prepare() {
rmdir "Electron-Cash-${pkgver}/contrib/secp256k1"
ln -s "${PWD}/secp256k1-${secp256k1ver}" "Electron-Cash-${pkgver}/contrib/secp256k1"
patch -Np1 -d "Electron-Cash-${pkgver}" < fix-compilation.patch
patch -Np1 -d "Electron-Cash-${pkgver}" < make_locale.patch
patch -Np1 -d "Electron-Cash-${pkgver}" < fix-fusion.patch
sed -i 's/py\.test/pytest/' "Electron-Cash-${pkgver}/tox.ini"
}
build() {
export GIT_SUBMODULE_SKIP=1;
cd "Electron-Cash-${pkgver}"
# python2-pyqt5 and qt5-base are needed for _only_ the icons...
# Compile the icons file for Qt:
pyrcc5 icons.qrc -o electroncash_gui/qt/icons_rc.py
# Compile the protobuf description file:
protoc --proto_path=electroncash/ --python_out=electroncash/ electroncash/paymentrequest.proto
protoc --proto_path=electroncash_plugins/fusion/protobuf/ --python_out=electroncash_plugins/fusion/ electroncash_plugins/fusion/protobuf/fusion.proto
# Create translations (optional):
python contrib/make_locale
# Use libsecp
bash contrib/make_secp
# Build
python setup.py build
}
check() {
cd "Electron-Cash-${pkgver}"
tox -e py312 -- --ignore-glob='*regtest*'
}
package() {
cd "Electron-Cash-${pkgver}"
python setup.py install --root="${pkgdir}" --optimize=1
}
# vim: ts=2 sw=2 et:
|