parlay

yet another gentoo overlay
git clone https://git.parazyd.org/parlay
Log | Files | Refs | README

commit 95cd147b683ead997d10f6f1f83a3cffa59302f7
parent 306ddc7afe0e416cfd6c80d5986062536486744a
Author: parazyd <parazyd@dyne.org>
Date:   Sun, 17 Dec 2017 21:18:40 +0100

net-misc/electrum: Add 3.0.3

Diffstat:
Mnet-misc/electrum/Manifest | 1+
Mnet-misc/electrum/electrum-3.0.2.ebuild | 23++++++++++++++---------
Anet-misc/electrum/electrum-3.0.3.ebuild | 164+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Anet-misc/electrum/files/2.8.0-no-user-root.patch | 15+++++++++++++++
4 files changed, 194 insertions(+), 9 deletions(-)

diff --git a/net-misc/electrum/Manifest b/net-misc/electrum/Manifest @@ -1 +1,2 @@ DIST Electrum-3.0.2.tar.gz 2567070 SHA256 4dff75bc5f496f03ad7acbe33f7cec301955ef592b0276f2c518e94e47284f53 SHA512 66fdad6102dd27baa77316b6c6411b9a48875d746492d05b63c2e6fb3229f4e3f2694a5eef16f2d5725b37a4484bedd0e64fb2443a0a2dbe49ba71d6d258cf66 WHIRLPOOL ff468785a2240c0d1328b07c67b00cb5c2c920908a672e6286d55a4c3e38a6a89037438fb7be777ef37456f32a104ea72d1700127bd0de28066ec0c12176db22 +DIST Electrum-3.0.3.tar.gz 2590410 SHA256 e55cb8b29a2ee1442f0873787e54b52b85aac76c2b5f540e823cd2b96ad00326 SHA512 6628b6621e3502bb9782ec7ce0fd11a657c10dfaab6a5c4de4e4bae5bc1207fa55f642a92fcca08e1f342e0ecf8dd0c72134db7020e03df2ed6f81b27c49aa30 WHIRLPOOL 6812e300c12761acffd811852f72b530b1e40884f12045cc001bb5624c3df887a3d055eabe44e4ff671f1344c0f4db34f3b002642aaf1fd3a56764803322a256 diff --git a/net-misc/electrum/electrum-3.0.2.ebuild b/net-misc/electrum/electrum-3.0.2.ebuild @@ -6,7 +6,7 @@ EAPI="6" PYTHON_COMPAT=( python3_{4,5,6} ) PYTHON_REQ_USE="ncurses?" -inherit distutils-r1 gnome2-utils +inherit distutils-r1 gnome2-utils xdg-utils MY_P="Electrum-${PV}" DESCRIPTION="User friendly Bitcoin client" @@ -15,7 +15,7 @@ SRC_URI="https://download.electrum.org/${PV}/${MY_P}.tar.gz" LICENSE="MIT" SLOT="0" -KEYWORDS="x86 amd64" +KEYWORDS="~amd64 ~x86" LINGUAS="ar_SA bg_BG cs_CZ da_DK de_DE el_GR eo_UY es_ES 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 vi_VN zh_CN" IUSE="audio_modem cli cosign digitalbitbox email greenaddress_it ncurses qrcode +qt5 sync trustedcoin_com vkb" @@ -39,8 +39,8 @@ REQUIRED_USE=" RDEPEND=" dev-python/ecdsa[${PYTHON_USEDEP}] - dev-python/pbkdf2[${PYTHON_USEDEP}] dev-python/jsonrpclib[${PYTHON_USEDEP}] + dev-python/pbkdf2[${PYTHON_USEDEP}] dev-python/pyaes[${PYTHON_USEDEP}] dev-python/PySocks[${PYTHON_USEDEP}] dev-python/qrcode[${PYTHON_USEDEP}] @@ -53,9 +53,9 @@ RDEPEND=" dev-libs/protobuf[python,${PYTHON_USEDEP}] ) virtual/python-dnspython[${PYTHON_USEDEP}] - qrcode? ( media-gfx/zbar[python,v4l,${PYTHON_USEDEP}] ) + qrcode? ( media-gfx/zbar[v4l] ) qt5? ( - dev-python/PyQt5[${PYTHON_USEDEP}] + dev-python/PyQt5[gui,widgets,${PYTHON_USEDEP}] ) ncurses? ( dev-lang/python ) " @@ -65,10 +65,7 @@ S="${WORKDIR}/${MY_P}" DOCS="RELEASE-NOTES" src_prepare() { - eapply "${FILESDIR}/3.0.1-no-user-root.patch" - - # Don't advise using PIP - sed -i "s/On Linux, try 'sudo pip install zbar'/Re-emerge Electrum with the qrcode USE flag/" lib/qrscanner.py || die + eapply "${FILESDIR}/2.8.0-no-user-root.patch" # Prevent icon from being installed in the wrong location sed -i '/icons/d' setup.py || die @@ -121,6 +118,8 @@ src_prepare() { sed -i 's/^\([[:space:]]*\)\(config_options\['\''cwd'\''\] = .*\)$/\1\2\n\1config_options.setdefault("gui", "'"${bestgui}"'")\n/' electrum || die local plugin + # trezor requires python trezorlib module + # keepkey requires trezor for plugin in \ $(usex audio_modem '' audio_modem ) \ $(usex cosign '' cosigner_pool ) \ @@ -128,7 +127,11 @@ src_prepare() { $(usex email '' email_requests ) \ $(usex greenaddress_it '' greenaddress_instant ) \ hw_wallet \ + ledger \ + keepkey \ $(usex sync '' labels ) \ + revealer \ + trezor \ $(usex trustedcoin_com '' trustedcoin ) \ $(usex vkb '' virtualkeyboard ) \ ; do @@ -152,8 +155,10 @@ pkg_preinst() { pkg_postinst() { gnome2_icon_cache_update + xdg_desktop_database_update } pkg_postrm() { gnome2_icon_cache_update + xdg_desktop_database_update } diff --git a/net-misc/electrum/electrum-3.0.3.ebuild b/net-misc/electrum/electrum-3.0.3.ebuild @@ -0,0 +1,164 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="6" + +PYTHON_COMPAT=( python3_{4,5,6} ) +PYTHON_REQ_USE="ncurses?" + +inherit distutils-r1 gnome2-utils xdg-utils + +MY_P="Electrum-${PV}" +DESCRIPTION="User friendly Bitcoin client" +HOMEPAGE="https://electrum.org/" +SRC_URI="https://download.electrum.org/${PV}/${MY_P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86" +LINGUAS="ar_SA bg_BG cs_CZ da_DK de_DE el_GR eo_UY es_ES 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 vi_VN zh_CN" + +IUSE="audio_modem cli cosign digitalbitbox email greenaddress_it ncurses qrcode +qt5 sync trustedcoin_com vkb" + +for lingua in ${LINGUAS}; do + IUSE+=" linguas_${lingua}" +done + +REQUIRED_USE=" + || ( cli ncurses qt5 ) + audio_modem? ( qt5 ) + cosign? ( qt5 ) + digitalbitbox? ( qt5 ) + email? ( qt5 ) + greenaddress_it? ( qt5 ) + qrcode? ( qt5 ) + sync? ( qt5 ) + trustedcoin_com? ( qt5 ) + vkb? ( qt5 ) +" + +RDEPEND=" + dev-python/ecdsa[${PYTHON_USEDEP}] + dev-python/jsonrpclib[${PYTHON_USEDEP}] + dev-python/pbkdf2[${PYTHON_USEDEP}] + dev-python/pyaes[${PYTHON_USEDEP}] + dev-python/PySocks[${PYTHON_USEDEP}] + dev-python/qrcode[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/setuptools[${PYTHON_USEDEP}] + dev-python/six[${PYTHON_USEDEP}] + dev-python/tlslite[${PYTHON_USEDEP}] + || ( + dev-python/protobuf-python[${PYTHON_USEDEP}] + dev-libs/protobuf[python,${PYTHON_USEDEP}] + ) + virtual/python-dnspython[${PYTHON_USEDEP}] + qrcode? ( media-gfx/zbar[v4l] ) + qt5? ( + dev-python/PyQt5[gui,widgets,${PYTHON_USEDEP}] + ) + ncurses? ( dev-lang/python ) +" + +S="${WORKDIR}/${MY_P}" + +DOCS="RELEASE-NOTES" + +src_prepare() { + eapply "${FILESDIR}/2.8.0-no-user-root.patch" + + # Prevent icon from being installed in the wrong location + sed -i '/icons/d' setup.py || die + + # Remove unrequested localization files: + for lang in ${LINGUAS}; do + use "linguas_${lang}" && continue + rm -r "lib/locale/${lang}" || die + done + + local wordlist= + for wordlist in \ + $(usex linguas_ja_JP '' japanese) \ + $(usex linguas_pt_BR '' $(usex linguas_pt_PT '' portuguese)) \ + $(usex linguas_es_ES '' spanish) \ + $(usex linguas_zh_CN '' chinese_simplified) \ + ; do + rm -f "lib/wordlist/${wordlist}.txt" || die + sed -i "/${wordlist}\\.txt/d" lib/mnemonic.py || die + done + + # Remove unrequested GUI implementations: + local gui setup_py_gui + for gui in \ + $(usex cli '' stdio) \ + kivy \ + $(usex qt5 '' qt ) \ + $(usex ncurses '' text ) \ + ; do + rm gui/"${gui}"* -r || die + done + + # And install requested ones... + for gui in \ + $(usex qt5 qt '') \ + ; do + setup_py_gui="${setup_py_gui}'electrum_gui.${gui}'," + done + + sed -i "s/'electrum_gui\\.qt',/${setup_py_gui}/" setup.py || die + + local bestgui + if use qt5; then + bestgui=qt + elif use ncurses; then + bestgui=text + else + bestgui=stdio + fi + sed -i 's/^\([[:space:]]*\)\(config_options\['\''cwd'\''\] = .*\)$/\1\2\n\1config_options.setdefault("gui", "'"${bestgui}"'")\n/' electrum || die + + local plugin + # trezor requires python trezorlib module + # keepkey requires trezor + for plugin in \ + $(usex audio_modem '' audio_modem ) \ + $(usex cosign '' cosigner_pool ) \ + $(usex digitalbitbox '' digitalbitbox ) \ + $(usex email '' email_requests ) \ + $(usex greenaddress_it '' greenaddress_instant ) \ + hw_wallet \ + ledger \ + keepkey \ + $(usex sync '' labels ) \ + revealer \ + trezor \ + $(usex trustedcoin_com '' trustedcoin ) \ + $(usex vkb '' virtualkeyboard ) \ + ; do + rm -r plugins/"${plugin}"* || die + sed -i "/${plugin}/d" setup.py || die + done + + eapply_user + + distutils-r1_src_prepare +} + +src_install() { + doicon -s 128 icons/${PN}.png + distutils-r1_src_install +} + +pkg_preinst() { + gnome2_icon_savelist +} + +pkg_postinst() { + gnome2_icon_cache_update + xdg_desktop_database_update +} + +pkg_postrm() { + gnome2_icon_cache_update + xdg_desktop_database_update +} diff --git a/net-misc/electrum/files/2.8.0-no-user-root.patch b/net-misc/electrum/files/2.8.0-no-user-root.patch @@ -0,0 +1,15 @@ +--- ./setup.py.orig 2017-01-06 19:17:44.294137848 +0000 ++++ ./setup.py 2017-01-06 19:17:50.093161327 +0000 +@@ -21,12 +21,6 @@ + parser.add_argument('--root=', dest='root_path', metavar='dir', default='/') + opts, _ = parser.parse_known_args(sys.argv[1:]) + usr_share = os.path.join(sys.prefix, "share") +- if not os.access(opts.root_path + usr_share, os.W_OK) and \ +- not os.access(opts.root_path, os.W_OK): +- if 'XDG_DATA_HOME' in os.environ.keys(): +- usr_share = os.environ['XDG_DATA_HOME'] +- else: +- usr_share = os.path.expanduser('~/.local/share') + data_files += [ + (os.path.join(usr_share, 'applications/'), ['electrum.desktop']), + ]