Gentoo Archives: gentoo-commits

From: Zac Medico <zmedico@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-misc/electron-cash/
Date: Sat, 28 May 2022 18:59:59
Message-Id: 1653764355.be2405cdcb375edabfa0d5ff55abf80758996fb3.zmedico@gentoo
1 commit: be2405cdcb375edabfa0d5ff55abf80758996fb3
2 Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
3 AuthorDate: Sat May 28 18:59:15 2022 +0000
4 Commit: Zac Medico <zmedico <AT> gentoo <DOT> org>
5 CommitDate: Sat May 28 18:59:15 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=be2405cd
7
8 net-misc/electron-cash: add 4.2.10
9
10 Signed-off-by: Zac Medico <zmedico <AT> gentoo.org>
11
12 net-misc/electron-cash/Manifest | 1 +
13 net-misc/electron-cash/electron-cash-4.2.10.ebuild | 157 +++++++++++++++++++++
14 2 files changed, 158 insertions(+)
15
16 diff --git a/net-misc/electron-cash/Manifest b/net-misc/electron-cash/Manifest
17 index b4e99b7f9172..7d6de4e7a6ff 100644
18 --- a/net-misc/electron-cash/Manifest
19 +++ b/net-misc/electron-cash/Manifest
20 @@ -1 +1,2 @@
21 +DIST electron-cash-4.2.10.tar.gz 8023055 BLAKE2B e79c000f4278c323a8f14aa8d960c25c2971a8c5736e31a6f18f4b5faae11a8ff5339de3193e191c21373075bd6472570770d14262c9b5d41e3eca2b91e633d3 SHA512 f90a11f6a5d79024f982f8ab148c9c079049114bcb0c405da9f54b62620afbda462e074abde01bed7fa12d0090a842e393e24e66ff74031a87f0c79f6323895a
22 DIST electron-cash-4.2.9.tar.gz 8023098 BLAKE2B 37a55e2161a8f7c2d9b11c1bc564d77ace84ad745be677bb41f07af2b8c18c223e6cf37c7df42dea170341f276babd8eda4bd9564e9069fc9623a059cc92f09b SHA512 e27dda4a4c8b81ad7b303652fdb2d893c3d53e76eb0f7e295753a7f92676c895ea8087e424a43bbb2d32db9a4f0e8c03b779cf9daf2ff8e51d4813a097ac9c6c
23
24 diff --git a/net-misc/electron-cash/electron-cash-4.2.10.ebuild b/net-misc/electron-cash/electron-cash-4.2.10.ebuild
25 new file mode 100644
26 index 000000000000..fc56ca7c306e
27 --- /dev/null
28 +++ b/net-misc/electron-cash/electron-cash-4.2.10.ebuild
29 @@ -0,0 +1,157 @@
30 +# Copyright 1999-2022 Gentoo Authors
31 +# Distributed under the terms of the GNU General Public License v2
32 +
33 +EAPI="7"
34 +
35 +PYTHON_COMPAT=( python3_{8..10} )
36 +
37 +PYTHON_REQ_USE="ncurses?"
38 +
39 +inherit desktop distutils-r1 xdg-utils
40 +
41 +MY_P="Electron-Cash-${PV}"
42 +DESCRIPTION="Lightweight Bitcoin Cash client (BCH fork of Electrum)"
43 +HOMEPAGE="https://github.com/Electron-Cash/Electron-Cash"
44 +SRC_URI="https://github.com/Electron-Cash/Electron-Cash/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
45 +
46 +LICENSE="MIT"
47 +SLOT="0"
48 +KEYWORDS="~amd64 ~x86"
49 +IUSE="amodem cli cosign digitalbitbox email ncurses qrcode +qt5 sync vkb
50 + l10n_es l10n_ja l10n_pt l10n_zh-CN"
51 +RESTRICT+=" test"
52 +
53 +REQUIRED_USE="
54 + || ( cli ncurses qt5 )
55 + amodem? ( qt5 )
56 + cosign? ( qt5 )
57 + digitalbitbox? ( qt5 )
58 + email? ( qt5 )
59 + qrcode? ( qt5 )
60 + sync? ( qt5 )
61 + vkb? ( qt5 )
62 +"
63 +
64 +RDEPEND="
65 + dev-python/dnspython[${PYTHON_USEDEP}]
66 + dev-python/ecdsa[${PYTHON_USEDEP}]
67 + dev-python/jsonrpclib[${PYTHON_USEDEP}]
68 + dev-python/pathvalidate[${PYTHON_USEDEP}]
69 + dev-python/pbkdf2[${PYTHON_USEDEP}]
70 + dev-python/pyaes[${PYTHON_USEDEP}]
71 + dev-python/PySocks[${PYTHON_USEDEP}]
72 + dev-python/qrcode[${PYTHON_USEDEP}]
73 + dev-python/requests[${PYTHON_USEDEP}]
74 + dev-python/setuptools[${PYTHON_USEDEP}]
75 + dev-python/six[${PYTHON_USEDEP}]
76 + dev-python/protobuf-python[${PYTHON_USEDEP}]
77 + net-libs/stem[${PYTHON_USEDEP}]
78 + amodem? ( dev-python/amodem[${PYTHON_USEDEP}] )
79 + qrcode? ( media-gfx/zbar[v4l] )
80 + qt5? (
81 + dev-python/PyQt5[gui,widgets,${PYTHON_USEDEP}]
82 + )
83 + ncurses? ( dev-lang/python )
84 + dev-libs/libsecp256k1
85 +"
86 +
87 +distutils_enable_tests pytest
88 +
89 +S="${WORKDIR}/${MY_P}"
90 +
91 +DOCS="RELEASE-NOTES"
92 +
93 +src_prepare() {
94 + eapply "${FILESDIR}/3.3.6-no-user-root.patch"
95 +
96 + # Prevent icon from being installed in the wrong location
97 + sed -i '/icons/d' setup.py || die
98 +
99 + if use qt5; then
100 + pyrcc5 icons.qrc -o electroncash_gui/qt/icons_rc.py || die
101 + else
102 + sed "s|'electroncash_gui.qt',||" -i setup.py || die
103 + fi
104 +
105 + local wordlist=
106 + for wordlist in \
107 + $(usex l10n_ja '' japanese) \
108 + $(usex l10n_pt '' portuguese) \
109 + $(usex l10n_es '' spanish) \
110 + $(usex l10n_zh-CN '' chinese_simplified) \
111 + ; do
112 + rm -f "electroncash/wordlist/${wordlist}.txt" || die
113 + sed -i "/${wordlist}\\.txt/d" electroncash/mnemonic.py || die
114 + done
115 +
116 + # Remove unrequested GUI implementations:
117 + local gui setup_py_gui
118 + for gui in \
119 + $(usex cli '' stdio) \
120 + $(usex qt5 '' qt ) \
121 + $(usex ncurses '' text ) \
122 + ; do
123 + rm electroncash_gui/"${gui}"* -r || die
124 + done
125 +
126 + # And install requested ones...
127 + for gui in \
128 + $(usex qt5 qt '') \
129 + ; do
130 + setup_py_gui="${setup_py_gui}'electrum_gui.${gui}',"
131 + done
132 +
133 + sed -i "s/'electrum_gui\\.qt',/${setup_py_gui}/" setup.py || die
134 +
135 + local bestgui
136 + if use qt5; then
137 + bestgui=qt
138 + elif use ncurses; then
139 + bestgui=text
140 + else
141 + bestgui=stdio
142 + fi
143 + sed -i 's/^\([[:space:]]*\)\(config_options\['\''cwd'\''\] = .*\)$/\1\2\n\1config_options.setdefault("gui", "'"${bestgui}"'")\n/' "${PN}" || die
144 +
145 + local plugin
146 + # trezor requires python trezorlib module
147 + # keepkey requires trezor
148 + for plugin in \
149 + $(usex amodem '' audio_modem ) \
150 + $(usex cosign '' cosigner_pool ) \
151 + $(usex digitalbitbox '' digitalbitbox ) \
152 + $(usex email '' email_requests ) \
153 + hw_wallet \
154 + ledger \
155 + keepkey \
156 + $(usex sync '' labels ) \
157 + trezor \
158 + $(usex vkb '' virtualkeyboard ) \
159 + ; do
160 + rm -r electroncash_plugins/"${plugin}"* || die
161 + sed -i "/${plugin}/d" setup.py || die
162 + done
163 +
164 + eapply_user
165 +
166 + distutils-r1_src_prepare
167 +}
168 +
169 +src_install() {
170 + doicon -s 128 icons/${PN}.png
171 + distutils-r1_src_install
172 +}
173 +
174 +pkg_preinst() {
175 + gnome2_icon_savelist
176 +}
177 +
178 +pkg_postinst() {
179 + xdg_icon_cache_update
180 + xdg_desktop_database_update
181 +}
182 +
183 +pkg_postrm() {
184 + xdg_icon_cache_update
185 + xdg_desktop_database_update
186 +}