tnet-misc/electrum: Add 3.0.1 - parlay - yet another gentoo overlay
 (HTM) git clone https://git.parazyd.org/parlay
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
       ---
 (DIR) commit b0600ca8a4cf41b214798c82439e39effcbfe9d9
 (DIR) parent d0dfb1b8ad410ec63eb83a19842882a1e6e7c892
 (HTM) Author: parazyd <parazyd@dyne.org>
       Date:   Mon, 13 Nov 2017 22:17:23 +0100
       
       net-misc/electrum: Add 3.0.1
       
       Diffstat:
         A net-misc/electrum/Manifest          |       1 +
         A net-misc/electrum/electrum-3.0.1.e… |     168 +++++++++++++++++++++++++++++++
         A net-misc/electrum/files/3.0.1-no-u… |      15 +++++++++++++++
         A net-misc/electrum/metadata.xml      |      19 +++++++++++++++++++
       
       4 files changed, 203 insertions(+), 0 deletions(-)
       ---
 (DIR) diff --git a/net-misc/electrum/Manifest b/net-misc/electrum/Manifest
       t@@ -0,0 +1 @@
       +DIST Electrum-3.0.1.tar.gz 2788127 SHA256 1aaabb1a89da659419c41ed68e55b0fe45c2afd69477117fd7833484751c0243 SHA512 46872a00e2b252c21e93ad6f2c8cfc655f5438cea22ad641b2ba303b7924d1e33bd3ab70e872d00f8cee65913e278152803b5e3a4917cbed636e3f81e9695ca7 WHIRLPOOL 26d2b859a1063a8107a8008012ff22a25a528e270322a79ca7531350438b739006fead5e0b3a674c7e558db6c16848791298b28e44c4a6927bb82d7e5ed3f5ad
 (DIR) diff --git a/net-misc/electrum/electrum-3.0.1.ebuild b/net-misc/electrum/electrum-3.0.1.ebuild
       t@@ -0,0 +1,168 @@
       +# 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
       +
       +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="~x86 ~amd64"
       +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 ledger trezor 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 )
       +        ledger? ( qt5 )
       +        trezor? ( qt5 )
       +        trustedcoin_com? ( qt5 )
       +        vkb? ( qt5 )
       +"
       +
       +RDEPEND="
       +        dev-python/ecdsa[${PYTHON_USEDEP}]
       +        dev-python/pbkdf2[${PYTHON_USEDEP}]
       +        dev-python/jsonrpclib[${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[python,v4l,${PYTHON_USEDEP}] )
       +        qt5? (
       +                dev-python/PyQt5[${PYTHON_USEDEP}]
       +        )
       +        ledger? ( dev-python/btchip-python[${PYTHON_USEDEP}] )
       +        trezor? ( dev-python/python-trezor[${PYTHON_USEDEP}] )
       +        ncurses? ( dev-lang/python )
       +"
       +
       +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
       +
       +        # 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 \
       +                $(usex ledger          '' ledger               ) \
       +                keepkey \
       +                $(usex sync            '' labels               ) \
       +                $(usex trezor          '' 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
       +}
       +
       +pkg_postrm() {
       +        gnome2_icon_cache_update
       +}
 (DIR) diff --git a/net-misc/electrum/files/3.0.1-no-user-root.patch b/net-misc/electrum/files/3.0.1-no-user-root.patch
       t@@ -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
       +@@ -23,12 +23,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']),
       +     ]
 (DIR) diff --git a/net-misc/electrum/metadata.xml b/net-misc/electrum/metadata.xml
       t@@ -0,0 +1,19 @@
       +<?xml version="1.0" encoding="UTF-8"?>
       +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
       +<pkgmetadata>
       +        <maintainer type="person">
       +                <email>parazyd@dyne.org</email>
       +        </maintainer>
       +        <use>
       +                <flag name="cli">Enables the CLI interface</flag>
       +                <flag name="audio_modem">Enable plugin to support Audio Modem</flag>
       +                <flag name="cosign">Enable plugin to support multisig wallets between multiple Electrum clients</flag>
       +                <flag name="digitalbitbox">Enable plugin to support Digital Bitbox hardware wallet</flag>
       +                <flag name="email">Enable plugin to support emailing invoices</flag>
       +                <flag name="greenaddress_it">Enable plugin to verify GreenAddress.it instant transactions</flag>
       +                <flag name="qrcode">Enable QR code scanning with <pkg>media-gfx/zbar</pkg></flag>
       +                <flag name="sync">Enable plugin to sync wallet metadata across multiple Electrum clients</flag>
       +                <flag name="trustedcoin_com">Enable plugin to use two-factor service by TrustedCoin.com</flag>
       +                <flag name="vkb">Enable plugin for virtual keyboard</flag>
       +        </use>
       +</pkgmetadata>