commit: 74ea05a214c27e2efe5d0036b0ad0a7f121bfa60 Author: Adam Pimentel <adam.pimentel <AT> protonmail <DOT> com> AuthorDate: Sat Feb 4 09:01:51 2023 +0000 Commit: Adam Pimentel <adam.pimentel <AT> protonmail <DOT> com> CommitDate: Sat Feb 4 09:20:28 2023 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=74ea05a2
net-p2p/feather: version bump to 2.3.0 Signed-off-by: Adam Pimentel <adam.pimentel <AT> protonmail.com> net-p2p/feather/Manifest | 8 ++ net-p2p/feather/feather-2.3.0.ebuild | 144 +++++++++++++++++++++ .../files/feather_remove_cflags-2.3.0.patch | 18 +++ .../feather/files/monero_remove_cflags-2.3.0.patch | 25 ++++ 4 files changed, 195 insertions(+) diff --git a/net-p2p/feather/Manifest b/net-p2p/feather/Manifest index 69f9a5353..e1be7e09d 100644 --- a/net-p2p/feather/Manifest +++ b/net-p2p/feather/Manifest @@ -6,3 +6,11 @@ DIST feather-2.2.3-monero-trezorcommon.tar.gz 1327782 BLAKE2B 738f2833317d5b5f52 DIST feather-2.2.3-monero.tar.gz 11615445 BLAKE2B b30f7e8b72989f14a482997a17e925afaef4ac198ecfe57e545f72f4923e26d3352db5bcb393252ab2488040b8fe82dba2c7be05c2c59cb5dff2499c6dd306a2 SHA512 cdb4f0634f50319622920faf56484f975fef7e94caf01f276118552ba7de284ec3ec06e43b1476de3255710f7bb47a47d75d974174a3c30657074943fa1f415a DIST feather-2.2.3-singleapplication.tar.gz 21630 BLAKE2B 403e187d0c9f5c591741ab1bdf879ae700cd255e0bcf3cc6e71aa2f6b9dcaf462aaa4e2142b5978d5e69c7660b1d094ac47cac3912c1b49a1dd003eebc641d6f SHA512 d16127412a97289edcb2bf86d2e4229d11408095ca6be6f2d7d63a6df573b31aa2e100382da3b12b93b45380fe68586c91cf3e774d1aedfeb88e151bc13bb4c4 DIST feather-2.2.3.tar.gz 2197323 BLAKE2B 413b6acfbb1eaa55844a01c324325707a25b99f78e52c882c1b57e66ff0f85a0535811568c43f0746818592a8775341678c1f565abdff2eefa25a81ac8d1c97b SHA512 96f5e3a3bd401bea1c15b77b9180da8cfddecfff85138a7cace27876ebe56558e1cf884ef28d9b466bfbf5b7beaa4232d96144e71d458c0d4c647129406199a9 +DIST feather-2.3.0-monero-miniupnp.tar.gz 446961 BLAKE2B 802e3a99f2e129492be547eba0f7f87c0e0c7024b4a322fbabf973dab26cd33601d99b29d422f8bb2ebae078982ef25efcdfe7ce66149360ba974abcb80b95d4 SHA512 c544148b2f110a84dbc69b0de2a6ff95ea3b8ad49354320c557b29a548de3e87ac52e37566b7f809bbcf0afa395e5150049dde15383d8180a52a38fd8738fdc5 +DIST feather-2.3.0-monero-randomx.tar.gz 164390 BLAKE2B 704792f22d7e3e9e789b42f77176ef4687b7d599387edfa42f854ad7b0f692d704480a6c7e43a291acac0dde2adae12923ea11e615d132baf10c7cb8f59f5801 SHA512 959a8399ae85bbb57e875e0383e448b10241badcd6682c7b6dec9d172f489ccbf3bb9b8b9b657bf977b3f2280597eb99cef2270159dc77142615dfe8d6f438ad +DIST feather-2.3.0-monero-rapidjson.tar.gz 1054330 BLAKE2B 5d18961b86a27516e42441ba46317ba811e06305dc754b5765b4fbfb697d93bc31ae9457fa2c3f213396909af726f775a7b371874ef1a0dc56a8577ed077a610 SHA512 dd4f103f84c4f32683ca9ccc82c35db3a60012c35acbb79405905c8b4e382389c52422b1a514e6128ae71f90f5eedb158f2a4f72f7c0f6025c2ef0787130bbe7 +DIST feather-2.3.0-monero-supercop.tar.gz 346604 BLAKE2B 10e48076acb2e5de5acb2efee61b2fac40fdfec3bc4037a94199d56ee2446466126e1b9dade56ee69598f4bd3c64b45d86d0810f24f461f6e09fb84c87e1ef93 SHA512 06cca8d1def31aa11bf5aa42d861c4a027786f7cc494fa3ab53a2bc4bd9d1f55b2389020ba5fd1816ed277b6e4320ad8edbb3117dcf4981fc7fba655c4bbe648 +DIST feather-2.3.0-monero-trezorcommon.tar.gz 1327782 BLAKE2B 738f2833317d5b5f52c21582160c1bee331fda38615c7e2c29d68cec600e849209111aaa75cce059596e87b2711c5a5749d965c91f1cf15cbe98fc86a049b5a5 SHA512 9955aa160e9a969decee598584f788e4d36e9c65f2ee730cd8f128669e86175f2189e804ca53e405871ab698ae5e683f146e59e832d8ec58fa1cb46328665ddf +DIST feather-2.3.0-monero.tar.gz 11624682 BLAKE2B cf4e53e4ba08d51a8b8b36181437ff531a37aa04888e0987152f7bc33e71acd8378848ad54caf3184494bf5071f0041fd8059c55047957dc4a973d7519165342 SHA512 a5246e5c1cc65cbc7c719979f07054f55016e8fcb9401b96809b1867d09f262850c7b24d42580f4aad2b0a2d25063b5c405dbc6537f72d87bd3109e52dc3196c +DIST feather-2.3.0-singleapplication.tar.gz 21630 BLAKE2B 403e187d0c9f5c591741ab1bdf879ae700cd255e0bcf3cc6e71aa2f6b9dcaf462aaa4e2142b5978d5e69c7660b1d094ac47cac3912c1b49a1dd003eebc641d6f SHA512 d16127412a97289edcb2bf86d2e4229d11408095ca6be6f2d7d63a6df573b31aa2e100382da3b12b93b45380fe68586c91cf3e774d1aedfeb88e151bc13bb4c4 +DIST feather-2.3.0.tar.gz 2204981 BLAKE2B d2635a52b092e4f90783074b1041a7256fcaa0ae66ae25bd1e19e04e4112a2a5bfb043d78aeeb62e2ce508498d531e4eb9677d6f4f223a298c5fac5d020c434a SHA512 b85f9932ed347cd78f9153a1e50e4374836f5d169efeb0a21e1d319c7f10b3f027a28384cad6fbc322c7bad8766bd30da6cbaf4b64a7a0e501634fe02f5cded0 diff --git a/net-p2p/feather/feather-2.3.0.ebuild b/net-p2p/feather/feather-2.3.0.ebuild new file mode 100644 index 000000000..02e20aa06 --- /dev/null +++ b/net-p2p/feather/feather-2.3.0.ebuild @@ -0,0 +1,144 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake desktop xdg + +SINGLEAPPLICATION_DIST_COMIT="3e8e85d1a487e433751711a8a090659684d42e3b" +MONERO_DIST_COMIT="18bdad879d9f25f35f065354aedf1236e6b0a60b" + MINIUPNP_DIST_COMIT="544e6fcc73c5ad9af48a8985c94f0f1d742ef2e0" + RANDOMX_DIST_COMIT="261d58c77fc5547c0aa7fdfeb58421ba7e0e6e1c" + RAPIDJSON_DIST_COMIT="129d19ba7f496df5e33658527a7158c79b99c21c" + SUPERCOP_DIST_COMIT="633500ad8c8759995049ccd022107d1fa8a1bbc9" + TREZORCOMMON_DIST_COMIT="bff7fdfe436c727982cc553bdfb29a9021b423b0" + +DESCRIPTION="A free, open-source Monero wallet" +HOMEPAGE="https://featherwallet.org" +SRC_URI="https://github.com/feather-wallet/feather/archive/refs/tags/${PV}.tar.gz -> \ +${P}.tar.gz + https://github.com/itay-grudev/SingleApplication/archive/${SINGLEAPPLICATION_DIST_COMIT}.tar.gz -> \ +${P}-singleapplication.tar.gz + https://github.com/feather-wallet/monero/archive/${MONERO_DIST_COMIT}.tar.gz -> \ +${P}-monero.tar.gz + https://github.com/miniupnp/miniupnp/archive/${MINIUPNP_DIST_COMIT}.tar.gz -> \ +${P}-monero-miniupnp.tar.gz + https://github.com/tevador/RandomX/archive/${RANDOMX_DIST_COMIT}.tar.gz -> \ +${P}-monero-randomx.tar.gz + https://github.com/Tencent/rapidjson/archive/${RAPIDJSON_DIST_COMIT}.tar.gz -> \ +${P}-monero-rapidjson.tar.gz + https://github.com/monero-project/supercop/archive/${SUPERCOP_DIST_COMIT}.tar.gz -> \ +${P}-monero-supercop.tar.gz + https://github.com/trezor/trezor-common/archive/${TREZORCOMMON_DIST_COMIT}.tar.gz -> \ +${P}-monero-trezorcommon.tar.gz +" + +# Feather is released under the terms of the BSD license, but it vendors +# code from Monero and Tor too. +LICENSE="BSD MIT" +SLOT="0" +KEYWORDS="~amd64" +IUSE="qrcode xmrig localmonero" + +DEPEND=" + dev-libs/libsodium:= + media-gfx/qrencode:= + media-gfx/zbar:=[v4l] + >=dev-libs/polyseed-1.0.0 + dev-libs/libzip:= + dev-libs/boost:=[nls] + >=dev-qt/qtcore-5.15:5 + >=dev-qt/qtwidgets-5.15:5 + >=dev-qt/qtgui-5.15:5 + >=dev-qt/qtnetwork-5.15:5 + >=dev-qt/qtsvg-5.15:5 + >=dev-qt/qtxml-5.15:5 + >=dev-qt/qtwebsockets-5.15:5 + >=dev-qt/qtmultimedia-5.15:5[widgets] + >=dev-qt/qtconcurrent-5.15:5 + dev-libs/libgcrypt:= + sys-libs/zlib + dev-libs/openssl:= + net-dns/unbound:=[threads] + net-libs/czmq:= +" +RDEPEND=" + ${DEPEND} + net-vpn/tor + xmrig? ( net-misc/xmrig ) +" +BDEPEND="virtual/pkgconfig" + +src_unpack() { + unpack ${P}.tar.gz \ + ${P}-singleapplication.tar.gz \ + ${P}-monero.tar.gz \ + ${P}-monero-miniupnp.tar.gz \ + ${P}-monero-randomx.tar.gz \ + ${P}-monero-rapidjson.tar.gz \ + ${P}-monero-supercop.tar.gz \ + ${P}-monero-trezorcommon.tar.gz + mv -T "${WORKDIR}"/SingleApplication-${SINGLEAPPLICATION_DIST_COMIT} \ + "${WORKDIR}"/${P}/src/third-party/singleapplication || die + mv -T "${WORKDIR}"/monero-${MONERO_DIST_COMIT} \ + "${WORKDIR}"/${P}/monero || die + mv -T "${WORKDIR}"/miniupnp-${MINIUPNP_DIST_COMIT} \ + "${WORKDIR}"/${P}/monero/external/miniupnp || die + mv -T "${WORKDIR}"/RandomX-${RANDOMX_DIST_COMIT} \ + "${WORKDIR}"/${P}/monero/external/randomx || die + mv -T "${WORKDIR}"/rapidjson-${RAPIDJSON_DIST_COMIT} \ + "${WORKDIR}"/${P}/monero/external/rapidjson || die + mv -T "${WORKDIR}"/supercop-${SUPERCOP_DIST_COMIT} \ + "${WORKDIR}"/${P}/monero/external/supercop || die + mv -T "${WORKDIR}"/trezor-common-${TREZORCOMMON_DIST_COMIT} \ + "${WORKDIR}"/${P}/monero/external/trezor-common || die +} + +src_prepare() { + default + echo "#define FEATHER_VERSION \"${PV}\"" > "${WORKDIR}"/${PF}/src/config-feather.h || die + echo "#define TOR_VERSION \"NOT_EMBEDDED\"" >> "${WORKDIR}"/${PF}/src/config-feather.h || die + eapply "${FILESDIR}"/feather_remove_cflags-${PV}.patch + pushd monero || die + eapply "${FILESDIR}"/monero_remove_cflags-${PV}.patch + popd || die + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DCMAKE_BUILD_TYPE=Release + -DBUILD_SHARED_LIBS=OFF + -DARCH=x86-64 + -DBUILD_TAG="linux-x64" + -DBUILD_64=ON + -DSELF_CONTAINED=OFF + -DLOCALMONERO=$(usex localmonero) + -DXMRIG=$(usex xmrig) + -DCHECK_UPDATES=OFF + -DPLATFORM_INSTALLER=OFF + -DUSE_DEVICE_TREZOR=OFF + -DDONATE_BEG=OFF + -DWITH_SCANNER=$(usex qrcode) + ) + + cmake_src_configure +} + +src_compile() { + cmake_build feather +} + +src_install() { + dobin "${BUILD_DIR}/bin/feather" + + doicon "${WORKDIR}"/${PF}/src/assets/images/feather.png + domenu "${WORKDIR}"/${PF}/src/assets/feather.desktop +} + +pkg_postinst() { + xdg_pkg_postinst + + einfo "Ensure that Tor is running with 'rc-service tor start' before" + einfo "using Feather." +} diff --git a/net-p2p/feather/files/feather_remove_cflags-2.3.0.patch b/net-p2p/feather/files/feather_remove_cflags-2.3.0.patch new file mode 100644 index 000000000..a3dbbb06e --- /dev/null +++ b/net-p2p/feather/files/feather_remove_cflags-2.3.0.patch @@ -0,0 +1,18 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -262,12 +262,8 @@ + add_c_flag_if_supported(-fPIC C_SECURITY_FLAGS) + add_cxx_flag_if_supported(-fPIC CXX_SECURITY_FLAGS) + +-message(STATUS "Using C security hardening flags: ${C_SECURITY_FLAGS}") +-message(STATUS "Using C++ security hardening flags: ${CXX_SECURITY_FLAGS}") +-message(STATUS "Using linker security hardening flags: ${LD_SECURITY_FLAGS}") +- +-set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c11 ${C_SECURITY_FLAGS}") +-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 ${CXX_SECURITY_FLAGS}") +-set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${LD_SECURITY_FLAGS} ${STATIC_FLAGS}") ++set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c11 -Wa,--noexecstack") ++set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wa,--noexecstack") ++set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-z,noexecstack ${STATIC_FLAGS}") + + add_subdirectory(src) diff --git a/net-p2p/feather/files/monero_remove_cflags-2.3.0.patch b/net-p2p/feather/files/monero_remove_cflags-2.3.0.patch new file mode 100644 index 000000000..869a7bdc8 --- /dev/null +++ b/net-p2p/feather/files/monero_remove_cflags-2.3.0.patch @@ -0,0 +1,25 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -773,9 +773,6 @@ + message(STATUS "AES support disabled") + endif() + +- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${ARCH_FLAG}") +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${ARCH_FLAG}") +- + set(WARNINGS "-Wall -Wextra -Wpointer-arith -Wundef -Wvla -Wwrite-strings -Wno-error=extra -Wno-error=deprecated-declarations -Wno-unused-parameter -Wno-error=unused-variable -Wno-error=undef -Wno-error=uninitialized") + if(CMAKE_C_COMPILER_ID MATCHES "Clang" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang") + if(ARM) +@@ -901,9 +898,9 @@ + message(STATUS "Using C++ security hardening flags: ${CXX_SECURITY_FLAGS}") + message(STATUS "Using linker security hardening flags: ${LD_SECURITY_FLAGS}") + +- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D_GNU_SOURCE ${MINGW_FLAG} ${STATIC_ASSERT_FLAG} ${WARNINGS} ${C_WARNINGS} ${PIC_FLAG} ${C_SECURITY_FLAGS}") +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_GNU_SOURCE ${MINGW_FLAG} ${STATIC_ASSERT_CPP_FLAG} ${WARNINGS} ${CXX_WARNINGS} ${PIC_FLAG} ${CXX_SECURITY_FLAGS}") +- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${LD_SECURITY_FLAGS} ${LD_BACKCOMPAT_FLAGS}") ++ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D_GNU_SOURCE ${MINGW_FLAG} ${STATIC_ASSERT_FLAG} ${WARNINGS} ${C_WARNINGS} ${PIC_FLAG}") ++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_GNU_SOURCE ${MINGW_FLAG} ${STATIC_ASSERT_CPP_FLAG} ${WARNINGS} ${CXX_WARNINGS} ${PIC_FLAG}") ++ set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${LD_BACKCOMPAT_FLAGS}") + + # With GCC 6.1.1 the compiled binary malfunctions due to aliasing. Until that + # is fixed in the code (Issue #847), force compiler to be conservative.