net-misc/electrum: version bump to 2.8.0
authorAnthony G. Basile <blueness@gentoo.org>
Sat, 11 Mar 2017 14:19:52 +0000 (09:19 -0500)
committerAnthony G. Basile <blueness@gentoo.org>
Sat, 11 Mar 2017 14:20:13 +0000 (09:20 -0500)
Package-Manager: Portage-2.3.3, Repoman-2.3.1

net-misc/electrum/Manifest
net-misc/electrum/electrum-2.8.0.ebuild [new file with mode: 0644]
net-misc/electrum/files/2.8.0-no-user-root.patch [new file with mode: 0644]
net-misc/electrum/metadata.xml

index 5a6109b6afaf25f95a9d1ff8ed1f7dc20c31fe05..89f17a1e3cdd391885ed180dd9a07f3293cac4a9 100644 (file)
@@ -1,2 +1,3 @@
 DIST Electrum-2.1.1.tar.gz 1778994 SHA256 958c7113072aa4a00a7e58a6e325d952fc35896a8678952cf6487636f74164e0 SHA512 06277a810a6533cc800c6813f874a0a6e3a7e598bdd47b73a6edb440bc5efefc56edacc44c15349e3d0c72d350700c67025f43e5478b4ae838af57acc1c91f52 WHIRLPOOL 2bf9392ebbd6e7b63e4e1e12cf72356dae1e1605a3c543c3a174229247fbb280412df5fac37a195b815018b8425d88618be54d4f3b58e37273ba40776f6b3765
 DIST Electrum-2.7.15.tar.gz 1967697 SHA256 1f237b394079ec5ced34ae09dc6b50472e51233dd1dfef580127168e293b9652 SHA512 2f4f5181dcf0b98ce34348c296e50383b677db1fd14fa0052a0168a7c880d18d04ebb9a91dbb7316e09adeda275cc87b5457c8f0925b3635a1c769c81f31165c WHIRLPOOL b7a85fd9a4f7fdf5f64dc1182630b9d5b1bb033e49ebb00f1dd421d93c02f8fab8a0679de9a2fae074fdda5932fbfd261d5c8a2d6be3940821f18f82d46f2e28
+DIST Electrum-2.8.0.tar.gz 2241359 SHA256 6343ae1732920734c45ebf899592c1c29123530ce027b4dcdd4a62e87663e9ef SHA512 dcef8c84677ff6045ee00a7b26aac7ded00b54753737c32a0c9b8939647a8467769ba93be3ce6beecdc5030c94dc6647121681ce22e84f487b36ede6d0d69e1c WHIRLPOOL 5f6f170306fa6c62e4fe4ebbfac1460b04e1a6606f1e3a2339b6d4284d9f884c2123f78401201511653402a3771b383fea7aed2b2c0fcb8b720472b80a4662a6
diff --git a/net-misc/electrum/electrum-2.8.0.ebuild b/net-misc/electrum/electrum-2.8.0.ebuild
new file mode 100644 (file)
index 0000000..01aecee
--- /dev/null
@@ -0,0 +1,161 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+PYTHON_COMPAT=( python2_7 )
+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="~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 no_NO 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 +qt4 sync trustedcoin_com vkb"
+
+for lingua in ${LINGUAS}; do
+       IUSE+=" linguas_${lingua}"
+done
+
+REQUIRED_USE="
+       || ( cli ncurses qt4 )
+       audio_modem? ( qt4 )
+       cosign? ( qt4 )
+       digitalbitbox? ( qt4 )
+       email? ( qt4 )
+       greenaddress_it? ( qt4 )
+       qrcode? ( qt4 )
+       sync? ( qt4 )
+       trustedcoin_com? ( qt4 )
+       vkb? ( qt4 )
+"
+
+RDEPEND="
+       dev-python/ecdsa[${PYTHON_USEDEP}]
+       dev-python/jsonrpclib[${PYTHON_USEDEP}]
+       dev-python/pbkdf2[${PYTHON_USEDEP}]
+       dev-python/PySocks[${PYTHON_USEDEP}]
+       dev-python/qrcode[${PYTHON_USEDEP}]
+       dev-python/requests[${PYTHON_USEDEP}]
+       dev-python/setuptools[${PYTHON_USEDEP}]
+       dev-python/slowaes[${PYTHON_USEDEP}]
+       dev-python/six[${PYTHON_USEDEP}]
+       dev-python/tlslite[${PYTHON_USEDEP}]
+       dev-libs/protobuf[python,${PYTHON_USEDEP}]
+       virtual/python-dnspython[${PYTHON_USEDEP}]
+       qrcode? ( media-gfx/zbar[python,v4l,${PYTHON_USEDEP}] )
+       qt4? (
+               dev-python/PyQt4[X,${PYTHON_USEDEP}]
+       )
+       ncurses? ( dev-lang/python )
+"
+
+S="${WORKDIR}/${MY_P}"
+
+DOCS="RELEASE-NOTES"
+
+src_prepare() {
+       eapply "${FILESDIR}/${PV}-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 qt4      '' qt   )  \
+               $(usex ncurses  '' text )  \
+       ; do
+               rm gui/"${gui}"* -r || die
+       done
+
+       # And install requested ones...
+       for gui in  \
+               $(usex qt4      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 qt4; 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               ) \
+               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
+}
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
new file mode 100644 (file)
index 0000000..2ca5363
--- /dev/null
@@ -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']),
+     ]
index 874d978cfbca65bfe0656fbaaa2c68b733a27f41..9a01eb105f48e78a7b6df9095a8117112fcb5ff3 100644 (file)
@@ -15,7 +15,9 @@
        </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="fiat">Enable plugin for looking up fiat values of bitcoin</flag>
                <flag name="greenaddress_it">Enable plugin to verify GreenAddress.it instant transactions</flag>