diff options
-rw-r--r-- | net-misc/electron-cash/Manifest | 1 | ||||
-rw-r--r-- | net-misc/electron-cash/electron-cash-4.2.9.ebuild | 155 |
2 files changed, 156 insertions, 0 deletions
diff --git a/net-misc/electron-cash/Manifest b/net-misc/electron-cash/Manifest index a58a2b1edc16..a30bdd058ddc 100644 --- a/net-misc/electron-cash/Manifest +++ b/net-misc/electron-cash/Manifest @@ -1,2 +1,3 @@ DIST electron-cash-4.0.2.tar.gz 8967992 BLAKE2B 081546d148dbc7da5e192154818831e125437c00093e1fe434ef0a67f8c06ceb1d2b1f44de9e71aac5786f995aeffd8fb6b74c64f6aa249f5cc9c06c9a276845 SHA512 dad17906f1dc2e53d4c6bff15a38d3276d16377f71b4d4e260b7b667f2b045da49f504483606d4515cdf71300b67108301b6cce971d1cca16c3856023b3e3f3a DIST electron-cash-4.2.3.tar.gz 7593885 BLAKE2B 902e1b93958b2796e2679327e81c9c5637f57ac1a840291b30a515bcd8c2b12724dfa075e38f1265eebc2a734bc715ddcbd98eaf13903d99b78fa3dd4f704d03 SHA512 0917d67501bb29dc49be25d7845a892c42f08718e7ff0560c27e34a6ba093acfd7ccf15cd1f5d09b03ff01b41c8d9cce84a9968388fae3d52f6a13f1cfb01a0a +DIST electron-cash-4.2.9.tar.gz 8023098 BLAKE2B 37a55e2161a8f7c2d9b11c1bc564d77ace84ad745be677bb41f07af2b8c18c223e6cf37c7df42dea170341f276babd8eda4bd9564e9069fc9623a059cc92f09b SHA512 e27dda4a4c8b81ad7b303652fdb2d893c3d53e76eb0f7e295753a7f92676c895ea8087e424a43bbb2d32db9a4f0e8c03b779cf9daf2ff8e51d4813a097ac9c6c diff --git a/net-misc/electron-cash/electron-cash-4.2.9.ebuild b/net-misc/electron-cash/electron-cash-4.2.9.ebuild new file mode 100644 index 000000000000..5798da537b10 --- /dev/null +++ b/net-misc/electron-cash/electron-cash-4.2.9.ebuild @@ -0,0 +1,155 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +PYTHON_COMPAT=( python3_{8..10} ) + +PYTHON_REQ_USE="ncurses?" + +inherit desktop distutils-r1 gnome2-utils xdg-utils + +MY_P="Electron-Cash-${PV}" +DESCRIPTION="Lightweight Bitcoin Cash client (BCH fork of Electrum)" +HOMEPAGE="https://github.com/Electron-Cash/Electron-Cash" +SRC_URI="https://github.com/Electron-Cash/Electron-Cash/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="amodem audio_modem cli cosign digitalbitbox email ncurses qrcode +qt5 sync vkb + l10n_es l10n_ja l10n_pt l10n_zh-CN" + +REQUIRED_USE=" + !audio_modem + || ( cli ncurses qt5 ) + amodem? ( qt5 ) + cosign? ( qt5 ) + digitalbitbox? ( qt5 ) + email? ( qt5 ) + qrcode? ( qt5 ) + sync? ( qt5 ) + vkb? ( qt5 ) +" + +RDEPEND=" + dev-python/dnspython[${PYTHON_USEDEP}] + dev-python/ecdsa[${PYTHON_USEDEP}] + dev-python/jsonrpclib[${PYTHON_USEDEP}] + dev-python/pathvalidate[${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/protobuf-python[${PYTHON_USEDEP}] + net-libs/stem[${PYTHON_USEDEP}] + amodem? ( dev-python/amodem[${PYTHON_USEDEP}] ) + qrcode? ( media-gfx/zbar[v4l] ) + qt5? ( + dev-python/PyQt5[gui,widgets,${PYTHON_USEDEP}] + ) + ncurses? ( dev-lang/python ) + dev-libs/libsecp256k1 +" + +S="${WORKDIR}/${MY_P}" + +DOCS="RELEASE-NOTES" + +src_prepare() { + eapply "${FILESDIR}/3.3.6-no-user-root.patch" + + # Prevent icon from being installed in the wrong location + sed -i '/icons/d' setup.py || die + + if use qt5; then + pyrcc5 icons.qrc -o electroncash_gui/qt/icons_rc.py || die + else + sed "s|'electroncash_gui.qt',||" -i setup.py || die + fi + + local wordlist= + for wordlist in \ + $(usex l10n_ja '' japanese) \ + $(usex l10n_pt '' portuguese) \ + $(usex l10n_es '' spanish) \ + $(usex l10n_zh-CN '' chinese_simplified) \ + ; do + rm -f "electroncash/wordlist/${wordlist}.txt" || die + sed -i "/${wordlist}\\.txt/d" electroncash/mnemonic.py || die + done + + # Remove unrequested GUI implementations: + local gui setup_py_gui + for gui in \ + $(usex cli '' stdio) \ + $(usex qt5 '' qt ) \ + $(usex ncurses '' text ) \ + ; do + rm electroncash_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/' "${PN}" || die + + local plugin + # trezor requires python trezorlib module + # keepkey requires trezor + for plugin in \ + $(usex amodem '' audio_modem ) \ + $(usex cosign '' cosigner_pool ) \ + $(usex digitalbitbox '' digitalbitbox ) \ + $(usex email '' email_requests ) \ + hw_wallet \ + ledger \ + keepkey \ + $(usex sync '' labels ) \ + trezor \ + $(usex vkb '' virtualkeyboard ) \ + ; do + rm -r electroncash_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 +} |