Gentoo Archives: gentoo-commits

From: "Anthony G. Basile" <blueness@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-misc/electrum/files/, net-misc/electrum/
Date: Sun, 01 Apr 2018 12:41:09
Message-Id: 1522586445.b3c25c04dda2159f680d11962a6a3644e7fb3ef4.blueness@gentoo
1 commit: b3c25c04dda2159f680d11962a6a3644e7fb3ef4
2 Author: Anthony G. Basile <blueness <AT> gentoo <DOT> org>
3 AuthorDate: Sun Apr 1 12:40:45 2018 +0000
4 Commit: Anthony G. Basile <blueness <AT> gentoo <DOT> org>
5 CommitDate: Sun Apr 1 12:40:45 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b3c25c04
7
8 net-misc/electrum: version bump to 3.1.2
9
10 Package-Manager: Portage-2.3.24, Repoman-2.3.6
11
12 net-misc/electrum/Manifest | 1 +
13 net-misc/electrum/electrum-3.1.2.ebuild | 175 +++++++++++++++++++++
14 net-misc/electrum/files/3.1.2-desktop.patch | 21 +++
15 net-misc/electrum/files/3.1.2-no-user-root.patch | 17 ++
16 .../electrum/files/3.1.2-pip-optional-pkgs.patch | 13 ++
17 5 files changed, 227 insertions(+)
18
19 diff --git a/net-misc/electrum/Manifest b/net-misc/electrum/Manifest
20 index 97ca961e31a..8295aa7dba2 100644
21 --- a/net-misc/electrum/Manifest
22 +++ b/net-misc/electrum/Manifest
23 @@ -1,3 +1,4 @@
24 DIST Electrum-3.0.5.tar.gz 2639766 BLAKE2B 28587ca056247a5671d84c0b79824e8eea8df8ca2e3204333e6edd7db98ecbeebdf81f4ac819de8b87c7593e83f948d091d48d55cdff08af76322d94bacec0fd SHA512 27cfa44ce8eeb5eef8038f1f68b4a42d173daaf7a940ffc9e9b1dad16a8f7f49bd53d5eefdbaf242e5e09aa2f887bce536f17941c2250225cd92c78f62c52e39
25 DIST Electrum-3.0.6.tar.gz 2640475 BLAKE2B 2e10417fb59629b9e3af8ba10893fb85b3b0d0ed9f7d7226a58dc7a2f91ed682423168092101565b00824bc62cae60d878de0d78271b716c027c8616419037a8 SHA512 4df9d81d954a008c3a14a89a7191b8af94393701b55651ad19acc75addb70fea942876a45c545c89b290cbdd7adb41b2d36e3cbcf73449eaa5d0a39e1529b2ef
26 DIST Electrum-3.1.1.tar.gz 2722902 BLAKE2B 31628d18a26f552469454c4f2712eee1aaba6ff5114a7cf0b7f261def5ed5731a267ae369ec3460c7f9bb5ad2b1713b2b464ef05fadb5e0e9ffd563adeee0ce8 SHA512 d7f987dde4a4fe5b2b0e576328c20b56ca650047321ac101dc6c3edd5bcbeedd569870d951262583a5ef1d1e40d6107ac46aa4fe031cc63d3a759d332db056cb
27 +DIST Electrum-3.1.2.tar.gz 2800714 BLAKE2B 0932932125f1fd7099c090806c669a998c00a70a8f34b20d0afe4b1f6c5c24ced8743a60923e466c3507d29c75ac58e2e3e01b422701be76bbcd8abf54497276 SHA512 e4e6d674817bacefaf9c64acfdf16c4c215264e825dd8b1bcf1d99429963b0da18d442b966ba986cf0ad2d621543c3e0e68e8ba023cca23b6626781c2e69a61e
28
29 diff --git a/net-misc/electrum/electrum-3.1.2.ebuild b/net-misc/electrum/electrum-3.1.2.ebuild
30 new file mode 100644
31 index 00000000000..a336ee7a3d3
32 --- /dev/null
33 +++ b/net-misc/electrum/electrum-3.1.2.ebuild
34 @@ -0,0 +1,175 @@
35 +# Copyright 1999-2018 Gentoo Foundation
36 +# Distributed under the terms of the GNU General Public License v2
37 +
38 +EAPI="6"
39 +
40 +PYTHON_COMPAT=( python3_{4,5,6} )
41 +PYTHON_REQ_USE="ncurses?"
42 +
43 +inherit desktop distutils-r1 gnome2-utils xdg-utils
44 +
45 +MY_P="Electrum-${PV}"
46 +DESCRIPTION="User friendly Bitcoin client"
47 +HOMEPAGE="https://electrum.org/"
48 +SRC_URI="https://download.electrum.org/${PV}/${MY_P}.tar.gz"
49 +
50 +LICENSE="MIT"
51 +SLOT="0"
52 +KEYWORDS="~amd64 ~x86"
53 +MY_LANGS="ar_SA bg_BG cs_CZ da_DK de_DE el_GR eo_UY es_ES fa_IR fr_FR hu_HU hy_AM id_ID it_IT ja_JP ko_KR ky_KG lv_LV nb_NO nl_NL pl_PL pt_BR pt_PT ro_RO ru_RU sk_SK sl_SI ta_IN th_TH tr_TR uk_UA vi_VN zh_CN zh_TW"
54 +
55 +my_langs_to_l10n() {
56 + # Map all except pt_* and zh_* to their generic codes
57 + case $1 in
58 + pt_*|zh_*) echo ${1/_/-} ;;
59 + *) echo ${1%%_*} ;;
60 + esac
61 +}
62 +
63 +IUSE="audio_modem cli cosign digitalbitbox email greenaddress_it ncurses qrcode +qt5 sync trustedcoin_com vkb"
64 +
65 +for lang in ${MY_LANGS}; do
66 + IUSE+=" l10n_$(my_langs_to_l10n ${lang})"
67 +done
68 +unset lang
69 +
70 +REQUIRED_USE="
71 + || ( cli ncurses qt5 )
72 + audio_modem? ( qt5 )
73 + cosign? ( qt5 )
74 + digitalbitbox? ( qt5 )
75 + email? ( qt5 )
76 + greenaddress_it? ( qt5 )
77 + qrcode? ( qt5 )
78 + sync? ( qt5 )
79 + trustedcoin_com? ( qt5 )
80 + vkb? ( qt5 )
81 +"
82 +
83 +RDEPEND="${PYTHON_DEPS}
84 + dev-python/ecdsa[${PYTHON_USEDEP}]
85 + dev-python/jsonrpclib[${PYTHON_USEDEP}]
86 + dev-python/pbkdf2[${PYTHON_USEDEP}]
87 + dev-python/pyaes[${PYTHON_USEDEP}]
88 + dev-python/PySocks[${PYTHON_USEDEP}]
89 + dev-python/qrcode[${PYTHON_USEDEP}]
90 + dev-python/requests[${PYTHON_USEDEP}]
91 + dev-python/setuptools[${PYTHON_USEDEP}]
92 + dev-python/six[${PYTHON_USEDEP}]
93 + dev-python/tlslite[${PYTHON_USEDEP}]
94 + || (
95 + dev-python/protobuf-python[${PYTHON_USEDEP}]
96 + dev-libs/protobuf[python,${PYTHON_USEDEP}]
97 + )
98 + virtual/python-dnspython[${PYTHON_USEDEP}]
99 + qrcode? ( media-gfx/zbar[v4l] )
100 + qt5? (
101 + dev-python/PyQt5[gui,widgets,${PYTHON_USEDEP}]
102 + )
103 + ncurses? ( dev-lang/python )
104 +"
105 +
106 +S="${WORKDIR}/${MY_P}"
107 +
108 +DOCS="RELEASE-NOTES"
109 +
110 +src_prepare() {
111 + eapply "${FILESDIR}/3.1.2-no-user-root.patch"
112 + eapply "${FILESDIR}/3.1.2-pip-optional-pkgs.patch"
113 + eapply "${FILESDIR}/3.1.2-desktop.patch"
114 +
115 + # Prevent icon from being installed in the wrong location
116 + sed -i '/icons/d' setup.py || die
117 +
118 + # Remove unrequested localization files:
119 + local lang
120 + for lang in ${MY_LANGS}; do
121 + use l10n_$(my_langs_to_l10n ${lang}) && continue
122 + rm -r "lib/locale/${lang}" || die
123 + done
124 +
125 + local wordlist=
126 + for wordlist in \
127 + $(usex l10n_ja '' japanese) \
128 + $(usex l10n_pt-BR '' $(usex l10n_pt-PT '' portuguese)) \
129 + $(usex l10n_es '' spanish) \
130 + $(usex l10n_zh-CN '' chinese_simplified) \
131 + ; do
132 + rm -f "lib/wordlist/${wordlist}.txt" || die
133 + sed -i "/${wordlist}\\.txt/d" lib/mnemonic.py || die
134 + done
135 +
136 + # Remove unrequested GUI implementations:
137 + local gui setup_py_gui
138 + for gui in \
139 + $(usex cli '' stdio) \
140 + kivy \
141 + $(usex qt5 '' qt ) \
142 + $(usex ncurses '' text ) \
143 + ; do
144 + rm gui/"${gui}"* -r || die
145 + done
146 +
147 + # And install requested ones...
148 + for gui in \
149 + $(usex qt5 qt '') \
150 + ; do
151 + setup_py_gui="${setup_py_gui}'electrum_gui.${gui}',"
152 + done
153 +
154 + sed -i "s/'electrum_gui\\.qt',/${setup_py_gui}/" setup.py || die
155 +
156 + local bestgui
157 + if use qt5; then
158 + bestgui=qt
159 + elif use ncurses; then
160 + bestgui=text
161 + else
162 + bestgui=stdio
163 + fi
164 + sed -i 's/^\([[:space:]]*\)\(config_options\['\''cwd'\''\] = .*\)$/\1\2\n\1config_options.setdefault("gui", "'"${bestgui}"'")\n/' electrum || die
165 +
166 + local plugin
167 + # trezor requires python trezorlib module
168 + # keepkey requires trezor
169 + for plugin in \
170 + $(usex audio_modem '' audio_modem ) \
171 + $(usex cosign '' cosigner_pool ) \
172 + $(usex digitalbitbox '' digitalbitbox ) \
173 + $(usex email '' email_requests ) \
174 + $(usex greenaddress_it '' greenaddress_instant ) \
175 + hw_wallet \
176 + ledger \
177 + keepkey \
178 + $(usex sync '' labels ) \
179 + trezor \
180 + $(usex trustedcoin_com '' trustedcoin ) \
181 + $(usex vkb '' virtualkeyboard ) \
182 + ; do
183 + rm -r plugins/"${plugin}"* || die
184 + sed -i "/${plugin}/d" setup.py || die
185 + done
186 +
187 + eapply_user
188 +
189 + distutils-r1_src_prepare
190 +}
191 +
192 +src_install() {
193 + doicon -s 128 icons/${PN}.png
194 + distutils-r1_src_install
195 +}
196 +
197 +pkg_preinst() {
198 + gnome2_icon_savelist
199 +}
200 +
201 +pkg_postinst() {
202 + gnome2_icon_cache_update
203 + xdg_desktop_database_update
204 +}
205 +
206 +pkg_postrm() {
207 + gnome2_icon_cache_update
208 + xdg_desktop_database_update
209 +}
210
211 diff --git a/net-misc/electrum/files/3.1.2-desktop.patch b/net-misc/electrum/files/3.1.2-desktop.patch
212 new file mode 100644
213 index 00000000000..2c271dd60d8
214 --- /dev/null
215 +++ b/net-misc/electrum/files/3.1.2-desktop.patch
216 @@ -0,0 +1,21 @@
217 +diff -Naur Electrum-3.1.2.orig/electrum.desktop Electrum-3.1.2/electrum.desktop
218 +--- Electrum-3.1.2.orig/electrum.desktop 2018-03-24 06:42:16.000000000 -0400
219 ++++ Electrum-3.1.2/electrum.desktop 2018-04-01 08:37:43.362027638 -0400
220 +@@ -3,7 +3,7 @@
221 +
222 + [Desktop Entry]
223 + Comment=Lightweight Bitcoin Client
224 +-Exec=sh -c 'PATH="$HOME/.local/bin:$PATH" electrum %u'
225 ++Exec=electrum %u
226 + GenericName[en_US]=Bitcoin Wallet
227 + GenericName=Bitcoin Wallet
228 + Icon=electrum
229 +@@ -14,8 +14,4 @@
230 + Terminal=false
231 + Type=Application
232 + MimeType=x-scheme-handler/bitcoin;
233 +-Actions=Testnet;
234 +
235 +-[Desktop Action Testnet]
236 +-Exec=sh -c 'PATH="$HOME/.local/bin:$PATH" electrum --testnet %u'
237 +-Name=Testnet mode
238
239 diff --git a/net-misc/electrum/files/3.1.2-no-user-root.patch b/net-misc/electrum/files/3.1.2-no-user-root.patch
240 new file mode 100644
241 index 00000000000..0d478171771
242 --- /dev/null
243 +++ b/net-misc/electrum/files/3.1.2-no-user-root.patch
244 @@ -0,0 +1,17 @@
245 +diff -Naur Electrum-3.1.2.orig/setup.py Electrum-3.1.2/setup.py
246 +--- Electrum-3.1.2.orig/setup.py 2018-03-28 04:51:11.000000000 -0400
247 ++++ Electrum-3.1.2/setup.py 2018-03-31 15:05:45.540757981 -0400
248 +@@ -28,13 +28,6 @@
249 + opts, _ = parser.parse_known_args(sys.argv[1:])
250 + usr_share = os.path.join(sys.prefix, "share")
251 + icons_dirname = 'pixmaps'
252 +- if not os.access(opts.root_path + usr_share, os.W_OK) and \
253 +- not os.access(opts.root_path, os.W_OK):
254 +- icons_dirname = 'icons'
255 +- if 'XDG_DATA_HOME' in os.environ.keys():
256 +- usr_share = os.environ['XDG_DATA_HOME']
257 +- else:
258 +- usr_share = os.path.expanduser('~/.local/share')
259 + data_files += [
260 + (os.path.join(usr_share, 'applications/'), ['electrum.desktop']),
261 + (os.path.join(usr_share, icons_dirname), ['icons/electrum.png'])
262
263 diff --git a/net-misc/electrum/files/3.1.2-pip-optional-pkgs.patch b/net-misc/electrum/files/3.1.2-pip-optional-pkgs.patch
264 new file mode 100644
265 index 00000000000..f5e0015a7df
266 --- /dev/null
267 +++ b/net-misc/electrum/files/3.1.2-pip-optional-pkgs.patch
268 @@ -0,0 +1,13 @@
269 +diff -Naur Electrum-3.1.2.orig/setup.py Electrum-3.1.2/setup.py
270 +--- Electrum-3.1.2.orig/setup.py 2018-03-31 15:08:48.919694817 -0400
271 ++++ Electrum-3.1.2/setup.py 2018-03-31 15:09:28.738594744 -0400
272 +@@ -37,9 +37,6 @@
273 + name="Electrum",
274 + version=version.ELECTRUM_VERSION,
275 + install_requires=requirements,
276 +- extras_require={
277 +- 'full': requirements_hw + ['pycryptodomex'],
278 +- },
279 + packages=[
280 + 'electrum',
281 + 'electrum_gui',