summaryrefslogtreecommitdiff
path: root/net-p2p
diff options
context:
space:
mode:
Diffstat (limited to 'net-p2p')
-rw-r--r--net-p2p/Manifest.gzbin6758 -> 6762 bytes
-rw-r--r--net-p2p/bitcoin-core/Manifest5
-rw-r--r--net-p2p/bitcoin-core/bitcoin-core-28.0_rc1.ebuild423
-rw-r--r--net-p2p/bitcoin-core/files/28.0-syslibs.patch296
-rw-r--r--net-p2p/bitcoin-core/metadata.xml1
-rw-r--r--net-p2p/classified-ads/Manifest11
-rw-r--r--net-p2p/classified-ads/classified-ads-0.13-r1.ebuild83
-rw-r--r--net-p2p/classified-ads/classified-ads-0.13-r2.ebuild87
-rw-r--r--net-p2p/classified-ads/classified-ads-0.14.ebuild84
-rw-r--r--net-p2p/classified-ads/classified-ads-0.15.ebuild84
-rw-r--r--net-p2p/classified-ads/files/classified-ads-0.13-examples-install-dir.patch52
-rw-r--r--net-p2p/ktorrent/Manifest2
-rw-r--r--net-p2p/ktorrent/ktorrent-24.05.2.ebuild2
13 files changed, 726 insertions, 404 deletions
diff --git a/net-p2p/Manifest.gz b/net-p2p/Manifest.gz
index 9de7dd998972..dfe79e9e7866 100644
--- a/net-p2p/Manifest.gz
+++ b/net-p2p/Manifest.gz
Binary files differ
diff --git a/net-p2p/bitcoin-core/Manifest b/net-p2p/bitcoin-core/Manifest
index e6348d89124b..d5ae81e880b8 100644
--- a/net-p2p/bitcoin-core/Manifest
+++ b/net-p2p/bitcoin-core/Manifest
@@ -4,6 +4,7 @@ AUX 26.0-init.patch 6487 BLAKE2B 22e7934a4eebc7cefa1ad0db7273f95a74e4e2605d9cc81
AUX 26.0-syslibs.patch 10109 BLAKE2B 0273b5c0a65fed9321b6af0196f4c5f80048eb5ff992cdd373999d0c29654f507b13556225c8b6ad1a71f512b4835ff133f55c5478755a1c2c567a2fb8e58e57 SHA512 42f071d8040cf68231a11ab296ea09b1f5cd658f4103aa1e07848ed63a6963e004570a121564da43079fb1830cd3f6c5ed865e1f8102a7050cb7c2aeca8b256d
AUX 27.0-gcc15.patch 5914 BLAKE2B f56c7404ea3d18de9c017561516c7a4dbcdd7798e027122ea1fe801125277761be2c1c698e398b8a45607500e8823d0907a75078057f97a5bffd15b8ed73bc10 SHA512 af888dc804fd5f935be247ae357395abc4c0412b1e976320b91816123d3c2af2830d35e83e649549caec87348baa8e1a399f127b9a89acb7ff9b3574b323989a
AUX 27.0-syslibs.patch 10150 BLAKE2B 4a6d15467f3893ee95a6fb33ec1e9f7725934e711033eff15fe41fc421724e6ff190bee854caf03edfd0d07e974ec363ba4c9ee6f3dc873a9acca1780ac13009 SHA512 25546325c758a812ac018ee14021ff2605ff904af5f4c0f6fe6c9694191c5127cf8957080309ecfcee9f4173a6ee8dabba9f88a0b2f6592e7a7e2c45c706e29b
+AUX 28.0-syslibs.patch 10157 BLAKE2B 83bb56a5168a38a3d048318565c96892b703aabc2adf21fe44355f2d2900aeb0742fe132ba389c03bb8feb8f3654b9af0577fc449ad9bce022bcf833bb91843b SHA512 590645ee78c1d463502884c20846fce420067bd9945920fb0049b1f81de952f7ddeae1f4bc37acf07e5e9e424e511b6184c0478358e6c76bf76c3b18528ee573
AUX bitcoin-qt.protocol 150 BLAKE2B b18645f52a6884fc0e475a85809d5b79e207adc346307623c5f1edececcb4564ac17bdb9a0deeb5c12c41409a34f83c1f22ab89f32852c58d948affa1de57edb SHA512 6b71d9d3fc9e05e6c6595aaaa307be9b5007c25f4b11162c5d873e200576d35156c2c660f229799400a3fba6dc8a9663ff8824371d83242d52ee6472687118ab
AUX bitcoind.logrotate-r1 113 BLAKE2B ad27bb7f4f136c17117ca1f149b504da13f7a4ed1f7dce04f1ada2723a8900e94a0e2611aaa0f6d7545fc11d5ca3ecd6925e41875a2c3ed8a4f3e778bfcfb2a4 SHA512 51c77cddd6ff1c852112669b0c4180b04a6a91d8bfdce9d1df6560ac5ef5ebdfcc3998d81a0a47f24834b7314fe132fd9e90386c7eb8933b9c14d59bcc95d876
AUX bitcoind.openrc 2690 BLAKE2B ef44f88f5d03e488ba4793954ff22949fdb293fac64c4264041a7ccd3e261e98ee0d8037f1b4f851a0753295a44168f9ed352a3d09b423d52ffa289fdf7fd1e1 SHA512 827f049acdfff90b3d7dc211a199e86c66c59780a0590d586b1cedf164bfdfc73223b3881001b75d3bc9e5350e41f08a867f3d8fb8b154b284e4ddb90f9c2dd9
@@ -16,6 +17,7 @@ DIST bitcoin-core-26.1.tar.gz 12822211 BLAKE2B 9093133f025a47cc93cc02056c2588be0
DIST bitcoin-core-26.2.tar.gz 12889171 BLAKE2B 9a0d5ed49eb4e14e9bd4c88fb5665536a82ad054c8a6756bed7eeff15be1fb15bca280e73ecd97a2a09d5a4bc9ae6c400f815a83e62959eac26a22d0803a2282 SHA512 4069a903423d58e29a49c638274f0916d6b8e6e8761b987e570a230ecb3b5f6ceaa499b1d6e3dd52bc16f2c3c229ad31ab2ce1d0c91e61d85a65fdc477b0e3ba
DIST bitcoin-core-27.0.tar.gz 13087956 BLAKE2B f625eaa2ce98cd8ed771f97d5a7e66733e94523d2ddda99cd858777bfb88a6e7eafae71e10fbf1ddadfcf629f2e3f790fb48c39f0e016d3fb22f1da7e7c93614 SHA512 0833fbd654570bc3e50efbe4da1f0bcab7744b92becc76d0dfea39a551325bd1b64ae746f7d9824d9e93fc53c95bc5eb5977869f0af04e26bd8ccb992d4c6e7c
DIST bitcoin-core-27.1.tar.gz 13146683 BLAKE2B 9df45ca67565aa1f1cb851e86302ab5e7edbc573642cbd66585910cbd20ecbe8b3a89f7441fc7f299bb3ff32cf687a617f7449cd1a4164e9ac78637501f619da SHA512 b3c2f90b125705401dbf1318db44be586f3609473a9aa3b7330d6c7f48bf5b31951f822e494ae607ebb96e5ffb62b909bea51be14fd91ed71ea62324d2736862
+DIST bitcoin-core-28.0_rc1.tar.gz 12588747 BLAKE2B dc1900ad2dd58c504092127d60db83e22cea67cbb693f6d827b9284e4ddaed9c447a0107fcbc7109dd98a465b239aee46b10496c40f40301d5e02d02b16d86a3 SHA512 6d123330d8b3f4f50b21f84463c754d8bf179b0298f1004ef3249655213fb37855665de6eb3b2e226c3127e0e83bdb93a4ee0992d300f37025c5f033dbb1891e
DIST bitcoin-core-miniupnpc-2.2.8-compat.patch 1130 BLAKE2B 4b1e8eaf4c7f13e9317fa4f69f6c2bce5f1663d8e4731bfe5ca5b4622fcd140e6532acdae544259727a59050b7f3f7bd7dab6f7f23dccebef4caf8fdef0f0c83 SHA512 ec0890d90a5ec3555b2e5477ead75ea5874c57aa3312dc64df5688224f51569f3f7c59593ed2f4336b283fff71c87b5d4fd786ab3cfecbb6407ef143b5018ba5
EBUILD bitcoin-core-25.1-r2.ebuild 12854 BLAKE2B e15f2672515a2fde2ef77ef30aac0a08e6582ae16179008ac1108fa2324f161d993aa152a6a2b6073e02ecc7a415feb33d60012a98a0816cbcd75438387d5656 SHA512 e943858d51be62ef615505e7d7d844da4132c31adf903b505d25330f05318be062cba50a48a444e859144efb0288a82e8c250846bd2d6c758d681b352f10f7c9
EBUILD bitcoin-core-25.2.ebuild 12958 BLAKE2B b3bc56661b766e19c3a961d625ee97a06b38de4eaba051a50703c207f94564690cf4fba81f43e682f56be9bed9ca8f3371826f8e553017f66b73af70fcd46c2d SHA512 bc26cf1770d75c6e6ef369305168349879c282a239e4fd7a458fbeab982fec1315af21321455af05c9e49d990a1f94956285f4a76c044fff4d4c40dbc701f3af
@@ -24,4 +26,5 @@ EBUILD bitcoin-core-26.1.ebuild 13216 BLAKE2B 27c56e56e63d87147229ee2d7a494f95a3
EBUILD bitcoin-core-26.2.ebuild 13027 BLAKE2B 3c25802a28e20f27730fa9f8141f921f2fecda009f6b3d7ccd2d94360a4278d3a99941497ae079529848af1cb5a6357a188268c2f2b46fa21e7fbe226236ac88 SHA512 52a2159874e28f8b1e0023bda34362b4cde7a873c7ad90a2abd0b6a9775a8aa4bcbe6091038628a5d1c586f6c7d5256f68a464d7b98347eee8d76a4e3ffbc889
EBUILD bitcoin-core-27.0.ebuild 13249 BLAKE2B 49b616304aebddb21844df04fdef65296beeb1ef3f148b82c76dbaf5c25ad27fadaac6762b034ec0e6596bc2145f178320d402bc2773813d1583c84a7031ecd0 SHA512 1213906b317cafe14ecd911443308aae090ef0df72b5dd78cf0c6352f786f1b07304778845effd4df3b6378ee0df91942547bc0a4a0f509e67734768314b87cc
EBUILD bitcoin-core-27.1.ebuild 13249 BLAKE2B 34f09bf89cc095e351ff610a1def6111911552f6f003a6b36cfdc00f4913e4af0bd1d0c25429eaf0025a537e617765ba16361e38d73a94aa72bc06a9bab864db SHA512 4451f5232be0588e3229455356865c1f11e2a6587084e9802ca21034a1d15d2742bf25dd453fb0d55f9819e4604cf075aa7d433d1ed15246fee4f31dd2cebe8c
-MISC metadata.xml 1731 BLAKE2B 0b4475c0bcb73a1aa07ac0f3c84319e7a1b4ef07a29a0de685eb5210685daae6c648ac86eaeb198b713a327f7a32d4af97fcdd32cdd27cf2354ae6089e3065b6 SHA512 8794f093ee5cde81cd58ecd8acdcfa8ea4df256a5d1a6cc59dba673d3f3961e3734460299f9ee9592ea82045a92ef5d5e8d0762d79d194401ad2866a9b5ebd1f
+EBUILD bitcoin-core-28.0_rc1.ebuild 12944 BLAKE2B c36feffb1e3231fa325f02ce33bb6f7e119e1591537e78ded137393a44f83cf835f43714c7ba29e591e11a203ba5f8ca6c6c8fa0d8803f0633a85dcb3200fdee SHA512 e37e1d05b2de7aca373c8e7a818ce3c7b160f449898052563d371608852982557c092f2c1763f2d5019975f2bf926197ddcf0e9d344de6188715daba43d152a7
+MISC metadata.xml 1795 BLAKE2B a419b3adc1bcde8add7583ae7118355d82e212a4f47dbac151d678285e321822826722b3028ccea8eff9abe0cc0cff9446c090d77c78f66eee0984f455d728fa SHA512 8864bccdd6f337c5d3bb6a18f7cefa0ec1edbf67b66addaa6ba346ef0f154cc7b1797c0c789bb0cff41bd413697ba791917a01fe3689889b09a08607806d0cbc
diff --git a/net-p2p/bitcoin-core/bitcoin-core-28.0_rc1.ebuild b/net-p2p/bitcoin-core/bitcoin-core-28.0_rc1.ebuild
new file mode 100644
index 000000000000..52d9e599d002
--- /dev/null
+++ b/net-p2p/bitcoin-core/bitcoin-core-28.0_rc1.ebuild
@@ -0,0 +1,423 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit autotools bash-completion-r1 check-reqs db-use desktop edo multiprocessing python-any-r1 systemd toolchain-funcs xdg-utils
+
+DESCRIPTION="Reference implementation of the Bitcoin cryptocurrency"
+HOMEPAGE="https://bitcoincore.org/"
+SRC_URI="
+ https://github.com/bitcoin/bitcoin/archive/v${PV/_rc/rc}.tar.gz -> ${P}.tar.gz
+"
+S="${WORKDIR}/${PN/-core}-${PV/_rc/rc}"
+
+LICENSE="MIT"
+SLOT="0"
+if [[ "${PV}" != *_rc* ]] ; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+fi
+IUSE="+asm +berkdb +cli +daemon dbus examples +external-signer gui kde +man nat-pmp +qrcode +sqlite system-leveldb +system-libsecp256k1 systemtap test test-full upnp zeromq"
+RESTRICT="!test? ( test )"
+
+REQUIRED_USE="
+ dbus? ( gui )
+ kde? ( gui )
+ qrcode? ( gui )
+ system-leveldb? ( || ( daemon gui ) )
+ test-full? ( test )
+"
+# dev-libs/univalue is now bundled, as upstream dropped support for system copy
+# and their version in the Bitcoin repo has deviated a fair bit from upstream.
+# Upstream also seems very inactive.
+RDEPEND="
+ !dev-util/bitcoin-tx
+ >=dev-libs/boost-1.81.0:=
+ >=dev-libs/libevent-2.1.12:=
+ berkdb? ( >=sys-libs/db-4.8.30:$(db_ver_to_slot 4.8)=[cxx] )
+ cli? ( !net-p2p/bitcoin-cli )
+ daemon? (
+ !net-p2p/bitcoind
+ acct-group/bitcoin
+ acct-user/bitcoin
+ )
+ gui? (
+ !net-p2p/bitcoin-qt
+ >=dev-qt/qtcore-5.15.14:5
+ >=dev-qt/qtgui-5.15.14:5
+ >=dev-qt/qtnetwork-5.15.14:5
+ >=dev-qt/qtwidgets-5.15.14:5
+ dbus? ( >=dev-qt/qtdbus-5.15.14:5 )
+ )
+ nat-pmp? ( >=net-libs/libnatpmp-20230423:= )
+ qrcode? ( >=media-gfx/qrencode-4.1.1:= )
+ sqlite? ( >=dev-db/sqlite-3.38.5:= )
+ system-leveldb? ( virtual/bitcoin-leveldb )
+ system-libsecp256k1? ( >=dev-libs/libsecp256k1-0.4.0:=[ellswift,extrakeys,recovery,schnorr] )
+ upnp? ( >=net-libs/miniupnpc-2.2.7:= )
+ zeromq? ( >=net-libs/zeromq-4.3.4:= )
+"
+DEPEND="
+ ${RDEPEND}
+ systemtap? ( >=dev-debug/systemtap-4.8 )
+"
+BDEPEND="
+ virtual/pkgconfig
+ daemon? (
+ acct-group/bitcoin
+ acct-user/bitcoin
+ )
+ gui? ( >=dev-qt/linguist-tools-5.15.14:5 )
+ test? ( ${PYTHON_DEPS} )
+"
+IDEPEND="
+ gui? ( dev-util/desktop-file-utils )
+"
+
+DOCS=(
+ doc/bips.md
+ doc/bitcoin-conf.md
+ doc/descriptors.md
+ doc/files.md
+ doc/i2p.md
+ doc/JSON-RPC-interface.md
+ doc/multisig-tutorial.md
+ doc/p2p-bad-ports.md
+ doc/psbt.md
+ doc/reduce-memory.md
+ doc/reduce-traffic.md
+ doc/REST-interface.md
+ doc/tor.md
+)
+
+PATCHES=(
+ "${FILESDIR}/28.0-syslibs.patch"
+ "${FILESDIR}/26.0-init.patch"
+)
+
+efmt() {
+ : ${1:?} ; local l ; while read -r l ; do "${!#}" "${l}" ; done < <(fmt "${@:1:$#-1}")
+}
+
+pkg_pretend() {
+ if ! use daemon && ! use gui && ! has_version "${CATEGORY}/${PN}[-daemon,-gui(-),-qt5(-)]" ; then
+ efmt ewarn <<-EOF
+ You are enabling neither USE="daemon" nor USE="gui". This is a valid
+ configuration, but you will be unable to run a Bitcoin node using this
+ installation.
+ EOF
+ fi
+ if use daemon && ! use cli && ! has_version "${CATEGORY}/${PN}[daemon,-bitcoin-cli(-),-cli(-)]" ; then
+ efmt ewarn <<-EOF
+ You are enabling USE="daemon" but not USE="cli". This is a valid
+ configuration, but you will be unable to interact with your bitcoind node
+ via the command line using this installation.
+ EOF
+ fi
+ if ! use berkdb && ! use sqlite &&
+ { { use daemon && ! has_version "${CATEGORY}/${PN}[daemon,-berkdb,-sqlite]" ; } ||
+ { use gui && ! has_version "${CATEGORY}/${PN}[gui,-berkdb,-sqlite]" ; } ; }
+ then
+ efmt ewarn <<-EOF
+ You are enabling neither USE="berkdb" nor USE="sqlite". This is a valid
+ configuration, but your Bitcoin node will be unable to open any wallets.
+ EOF
+ fi
+
+ # test/functional/feature_pruning.py requires 4 GB disk space
+ # test/functional/wallet_pruning.py requires 1.3 GB disk space
+ use test && CHECKREQS_DISK_BUILD="6G" check-reqs_pkg_pretend
+}
+
+pkg_setup() {
+ if use test ; then
+ CHECKREQS_DISK_BUILD="6G" check-reqs_pkg_setup
+ python-any-r1_pkg_setup
+ fi
+}
+
+src_prepare() {
+ default
+ ! use system-leveldb || rm -r src/leveldb || die
+ if use system-libsecp256k1 ; then
+ rm -r src/secp256k1 || die
+ sed -e '/^DIST_SUBDIRS *=/s/\bsecp256k1\b//' -i src/Makefile.am || die
+ else
+ pushd src/secp256k1 >/dev/null || die
+ AT_NOELIBTOOLIZE=yes eautoreconf
+ popd >/dev/null || die
+ fi
+ eautoreconf
+
+ # we say --disable-util-util, so we can't test bitcoin-util
+ sed -ne '/^ {/{h;:0;n;H;/^ }/!b0;g;\|"exec": *"\./bitcoin-util"|d};p' \
+ -i test/util/data/bitcoin-util-test.json || die
+
+ sed -e 's/^\(complete -F _bitcoind\b\).*$/\1'"$(usev daemon ' bitcoind')$(usev gui ' bitcoin-qt')/" \
+ -i contrib/completions/bash/bitcoind.bash || die
+}
+
+src_configure() {
+ local wallet ; if use berkdb || use sqlite ; then wallet=enable ; else wallet=disable ; fi
+ local myeconfargs=(
+ --disable-static
+ --${wallet}-wallet
+ $(use_with sqlite)
+ $(use_with berkdb bdb)
+ $(use_enable systemtap usdt)
+ $(use_with upnp miniupnpc)
+ $(use_with nat-pmp natpmp)
+ $(use_enable test tests)
+ --disable-bench
+ --disable-fuzz{,-binary}
+ $(use_with qrcode qrencode)
+ --disable-ccache
+ $(use_enable asm)
+ $(use_enable zeromq zmq)
+ $(use_enable man)
+ $(use_enable external-signer)
+ --with-utils
+ $(use_enable {,util-}cli)
+ --enable-util-tx
+ --${wallet}-util-wallet
+ --disable-util-util
+ $(use_with daemon)
+ $(use_with gui gui qt5)
+ $(use_with dbus qtdbus)
+ $(use_with system-leveldb)
+ $(use_with system-libsecp256k1)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+ default
+
+ if use daemon && ! tc-is-cross-compiler ; then
+ TOPDIR="${S}" bash contrib/devtools/gen-bitcoin-conf.sh || die
+ fi
+ sed -e 's/ To use, copy this file$//p;Tp;:0;n;/save the file\.$/!b0;d;:p;p' \
+ -ni share/examples/bitcoin.conf || die
+}
+
+src_test() {
+ emake check
+
+ use daemon && edo "${PYTHON}" test/functional/test_runner.py \
+ --ansi $(usev test-full --extended) --jobs="$(get_makeopts_jobs)" --timeout-factor="${TIMEOUT_FACTOR:-15}"
+}
+
+src_install() {
+ DOCS+=( doc/release-notes/*.md )
+ use external-signer && DOCS+=( doc/external-signer.md )
+ use berkdb || use sqlite && DOCS+=( doc/managing-wallets.md )
+ use systemtap && DOCS+=( doc/tracing.md )
+ use zeromq && DOCS+=( doc/zmq.md )
+
+ if use daemon ; then
+ # https://bugs.gentoo.org/757102
+ DOCS+=( share/rpcauth/rpcauth.py )
+ docompress -x "/usr/share/doc/${PF}/rpcauth.py"
+ fi
+
+ default
+
+ find "${ED}" -type f -name '*.la' -delete || die
+ ! use test || rm -f -- "${ED}"/usr/bin/test_bitcoin{,-qt} || die
+
+ newbashcomp contrib/completions/bash/bitcoin-tx.bash bitcoin-tx
+ use cli && newbashcomp contrib/completions/bash/bitcoin-cli.bash bitcoin-cli
+ if use daemon ; then
+ newbashcomp contrib/completions/bash/bitcoind.bash bitcoind
+ use gui && bashcomp_alias bitcoind bitcoin-qt
+ elif use gui ; then
+ newbashcomp contrib/completions/bash/bitcoind.bash bitcoin-qt
+ fi
+
+ if use daemon ; then
+ insinto /etc/bitcoin
+ doins share/examples/bitcoin.conf
+ fowners bitcoin:bitcoin /etc/bitcoin/bitcoin.conf
+ fperms 0660 /etc/bitcoin/bitcoin.conf
+
+ newconfd contrib/init/bitcoind.openrcconf bitcoind
+ newinitd "${FILESDIR}/bitcoind.openrc" bitcoind
+ systemd_newunit contrib/init/bitcoind.service bitcoind.service
+
+ keepdir /var/lib/bitcoind
+ fperms 0750 /var/lib/bitcoind
+ fowners bitcoin:bitcoin /var/lib/bitcoind
+ dosym -r {/etc/bitcoin,/var/lib/bitcoind}/bitcoin.conf
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/bitcoind.logrotate-r1" bitcoind
+ fi
+
+ if use gui ; then
+ insinto /usr/share/icons/hicolor/scalable/apps
+ newins src/qt/res/src/bitcoin.svg bitcoin128.svg
+
+ domenu "${FILESDIR}/org.bitcoin.bitcoin-qt.desktop"
+
+ if use kde ; then
+ insinto /usr/share/kservices5
+ doins "${FILESDIR}/bitcoin-qt.protocol"
+ fi
+ fi
+
+ if use examples ; then
+ docinto examples
+ dodoc -r contrib/{linearize,qos}
+ use zeromq && dodoc -r contrib/zmq
+ fi
+}
+
+pkg_preinst() {
+ if use daemon && [[ -d "${EROOT}/var/lib/bitcoin/.bitcoin" ]] ; then
+ if [[ -h "${EROOT}/var/lib/bitcoin/.bitcoin" ]] ; then
+ dosym -r /var/lib/bitcoin{d,/.bitcoin}
+ elif [[ ! -e "${EROOT}/var/lib/bitcoind" || -h "${EROOT}/var/lib/bitcoind" ]] ; then
+ efmt ewarn <<-EOF
+ Your bitcoind data directory is located at ${EPREFIX}/var/lib/bitcoin/.bitcoin,
+ a deprecated location. To perform an automated migration to
+ ${EPREFIX}/var/lib/bitcoind, first shut down any running bitcoind instances
+ that may be using the deprecated path, and then run:
+
+ # emerge --config ${CATEGORY}/${PN}
+ EOF
+ insinto /var/lib/bitcoin
+ mv -- "${ED}/var/lib/bitcoin"{d,/.bitcoin} || die
+ dosym -r {/etc/,/var/lib/bitcoin/.}bitcoin/bitcoin.conf
+ dosym -r /var/lib/bitcoin{/.bitcoin,d}
+ fi
+ fi
+
+ if use kde && [[ -d "${EROOT}/usr/share/kde4" ]] ; then
+ dosym -r /usr/share/{kservices5,kde4/services}/bitcoin-qt.protocol
+ fi
+}
+
+pkg_postinst() {
+ # we don't use xdg.eclass because it adds unconditional IDEPENDs
+ if use gui ; then
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+ fi
+
+ if use daemon && [[ -z "${REPLACING_VERSIONS}" ]] ; then
+ efmt -su elog <<-EOF
+ To have ${PN} automatically use Tor when it's running, be sure your \
+ 'torrc' config file has 'ControlPort' and 'CookieAuthentication' set up \
+ correctly, and:
+ - Using an init script: add the 'bitcoin' user to the 'tor' user group.
+ - Running bitcoind directly: add that user to the 'tor' user group.
+ EOF
+ fi
+
+ if use cli && use daemon ; then
+ efmt -su elog <<-EOF
+ To use bitcoin-cli with the /etc/init.d/bitcoind service:
+ - Add your user(s) to the 'bitcoin' group.
+ - Symlink ~/.bitcoin to /var/lib/bitcoind.
+ EOF
+ fi
+
+ if use berkdb ; then
+ # https://github.com/bitcoin/bitcoin/pull/28597
+ # https://bitcoincore.org/en/releases/26.0/#wallet
+ efmt ewarn <<-EOF
+ Creation of legacy (Berkeley DB) wallets is refused starting with Bitcoin
+ Core 26.0, pending the deprecation and eventual removal of support for
+ legacy wallets altogether in future releases. At present you can still
+ force support for the creation of legacy wallets by adding the following
+ line to your bitcoin.conf:
+
+ deprecatedrpc=create_bdb
+ EOF
+ fi
+}
+
+pkg_postrm() {
+ if use gui ; then
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+ fi
+}
+
+pkg_config() {
+ if [[ -d "${EROOT}/var/lib/bitcoin/.bitcoin" && ! -h "${EROOT}/var/lib/bitcoin/.bitcoin" ]] &&
+ [[ ! -e "${EROOT}/var/lib/bitcoind" || -h "${EROOT}/var/lib/bitcoind" ]]
+ then
+ in_use() {
+ : ${1:?} ; local each
+ if command -v fuser >/dev/null ; then
+ fuser "${@}" >/dev/null 2>&1
+ elif command -v lsof >/dev/null ; then
+ for each ; do
+ lsof -- "${each}" && return
+ done >/dev/null 2>&1
+ elif mountpoint -q /proc ; then
+ { find /proc/[0-9]*/{cwd,exe,fd} -type l -exec readlink -- {} +
+ awk '{ print $6 }' /proc/[0-9]*/maps
+ } 2>/dev/null | grep -Fqx -f <(printf '%s\n' "${@}" ; readlink -m -- "${@}")
+ else
+ return 13
+ fi
+ }
+ ebegin "Checking that ${EPREFIX}/var/lib/bitcoin/.bitcoin is not in use"
+ in_use "${EROOT}/var/lib/bitcoin/.bitcoin"{,/.lock}
+ case $? in
+ 0)
+ eend 1
+ efmt eerror <<-EOF
+ ${EPREFIX}/var/lib/bitcoin/.bitcoin is currently in use. Please stop any
+ running bitcoind instances that may be using this data directory, and then
+ retry this migration.
+ EOF
+ die "${EPREFIX}/var/lib/bitcoin/.bitcoin is in use"
+ ;;
+ 13)
+ eend 1
+ if [[ "${BITCOIND_IS_NOT_RUNNING}" != 1 ]] ; then
+ efmt eerror <<-EOF
+ Found no way to check whether ${EPREFIX}/var/lib/bitcoin/.bitcoin is in use.
+ Do you have /proc mounted? To force the migration without checking, re-run
+ this command with BITCOIND_IS_NOT_RUNNING=1.
+ EOF
+ die "could not check whether ${EPREFIX}/var/lib/bitcoin/.bitcoin is in use"
+ fi
+ ;;
+ *)
+ eend 0
+ ;;
+ esac
+
+ # find all relative symlinks that point outside the data dir
+ local -A symlinks
+ cd -- "${EROOT}/var/lib/bitcoin/.bitcoin" || die
+ local each ; while read -r -d '' each ; do
+ local target=$(readlink -- "${each}") && [[ "${target}" == ../* ]] &&
+ target=$(readlink -e -- "${each}") && [[ "${target}" != "${EROOT}/var/lib/bitcoin/.bitcoin/"* ]] &&
+ symlinks["${each}"]="${target}"
+ done < <(find -type l -print0)
+
+ einfo "Moving your ${EPREFIX}/var/lib/bitcoin/.bitcoin to ${EPREFIX}/var/lib/bitcoind."
+ rm -f -- "${EROOT}/var/lib/bitcoind" || die
+ mv --no-clobber --no-copy --no-target-directory -- "${EROOT}/var/lib/bitcoin"{/.bitcoin,d} ||
+ die "Failed to move your ${EPREFIX}/var/lib/bitcoin/.bitcoin to ${EPREFIX}/var/lib/bitcoind."
+
+ # fix up the relative symlinks
+ cd -- "${EROOT}/var/lib/bitcoind" || die
+ for each in "${!symlinks[@]}" ; do
+ ln -fnrs -- "${symlinks[${each}]}" "${each}" # keep going even if this fails
+ done
+
+ einfo 'Creating a transitional symlink for your convenience.'
+ ln -fnrsv -- "${EROOT}/var/lib/bitcoin"{d,/.bitcoin}
+ einfo 'You may remove this link when you no longer need it.'
+ else
+ einfo 'Nothing to do.'
+ fi
+}
diff --git a/net-p2p/bitcoin-core/files/28.0-syslibs.patch b/net-p2p/bitcoin-core/files/28.0-syslibs.patch
new file mode 100644
index 000000000000..ec52597a201e
--- /dev/null
+++ b/net-p2p/bitcoin-core/files/28.0-syslibs.patch
@@ -0,0 +1,296 @@
+From 19cd9d584f7bd7868898ae7592633e2eb255eb46 Mon Sep 17 00:00:00 2001
+From: Matt Whitlock <bitcoin@mattwhitlock.name>
+Date: Sun, 17 Sep 2023 10:29:27 -0400
+Subject: [PATCH] support linking against system-installed leveldb and
+ libsecp256k1
+
+- Abort if runtime leveldb != compiled-against leveldb.
+
+Originally based on 22.0-fix_build_without_leveldb.patch.
+---
+ configure.ac | 90 ++++++++++++++++++++++++++++++++++++++-
+ src/Makefile.am | 13 +++++-
+ src/Makefile.test.include | 2 +
+ src/dbwrapper.cpp | 27 +++++++++++-
+ src/dbwrapper.h | 8 ++++
+ src/kernel/checks.cpp | 7 +++
+ 6 files changed, 143 insertions(+), 4 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 3bc6b13efc..290f289bf7 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1141,6 +1141,41 @@ if test "$enable_fuzz_binary" = "yes"; then
+ ]])])
+ fi
+
++dnl Check for libsecp256k1, only if explicitly requested
++AC_ARG_WITH([system-libsecp256k1],
++ [AS_HELP_STRING([[--with-system-libsecp256k1[=PKG]]],
++ [build using system-installed libsecp256k1 instead of bundled, passing PKG (default: libsecp256k1) to pkg-config (default is no; DANGEROUS; NOT SUPPORTED)])],
++ [AS_IF([test "x$withval" = xyes], [with_system_libsecp256k1=libsecp256k1])],
++ [with_system_libsecp256k1=no])
++AM_CONDITIONAL([EMBEDDED_LIBSECP256K1],[test "x$with_system_libsecp256k1" = xno])
++AM_COND_IF([EMBEDDED_LIBSECP256K1], [
++ libsecp256k1_CFLAGS='-I$(srcdir)/secp256k1/include'
++ libsecp256k1_LIBS='secp256k1/libsecp256k1.la'
++], [
++ saved_CPPFLAGS=$CPPFLAGS
++ saved_LIBS=$LIBS
++ PKG_CHECK_MODULES([libsecp256k1], [$with_system_libsecp256k1])
++ CPPFLAGS="$libsecp256k1_CFLAGS $CPPFLAGS"
++ LIBS="$libsecp256k1_LIBS $LIBS"
++ missing_modules=
++ AC_DEFUN([CHECK_MODULE], [
++ AC_CHECK_HEADER([secp256k1_$1.h],
++ [AC_CHECK_FUNCS([$2], [], [missing_modules="${missing_modules} $1"])],
++ [missing_modules="${missing_modules} $1"])
++ ])
++ CHECK_MODULE([ellswift], [secp256k1_ellswift_encode])
++ CHECK_MODULE([extrakeys], [secp256k1_xonly_pubkey_parse])
++ CHECK_MODULE([recovery], [secp256k1_ecdsa_recover])
++ CHECK_MODULE([schnorrsig], [secp256k1_schnorrsig_verify])
++ AS_IF([test -n "${missing_modules}"], [
++ AC_MSG_ERROR([system-installed libsecp256k1 does not support these required modules:${missing_modules}])
++ ])
++ CPPFLAGS=$saved_CPPFLAGS
++ LIBS=$saved_LIBS
++])
++AC_SUBST(libsecp256k1_CFLAGS)
++AC_SUBST(libsecp256k1_LIBS)
++
+ if test "$enable_wallet" != "no"; then
+ dnl Check for libdb_cxx only if wallet enabled
+ if test "$use_bdb" != "no"; then
+@@ -1200,6 +1235,55 @@ if test "$build_bitcoind$bitcoin_enable_qt$use_bench$use_tests" = "nononono"; th
+ use_zmq=no
+ fi
+
++dnl Check for leveldb, only if explicitly requested
++AC_ARG_WITH([system-leveldb],
++ [AS_HELP_STRING([--with-system-leveldb],
++ [Build with system LevelDB (default is no; DANGEROUS; NOT SUPPORTED)])],
++ [system_leveldb=$withval],
++ [system_leveldb=no])
++AC_ARG_VAR([leveldb_CFLAGS],[C compiler flags for system-leveldb])
++AC_ARG_VAR([leveldb_LIBS],[linker flags for system-leveldb])
++AS_IF([test x$system_leveldb != xno],[
++ TEMP_CPPFLAGS="$CPPFLAGS"
++ TEMP_LIBS="$LIBS"
++ CPPFLAGS="$leveldb_CFLAGS"
++ LIBS="$leveldb_LIBS"
++ AC_SEARCH_LIBS([leveldb_open],[leveldb],[leveldb_LIBS="$LIBS"],
++ [AC_MSG_ERROR([leveldb library not found; using --with-system-leveldb is not supported anyway])])
++ AC_CHECK_HEADER([leveldb/filter_policy.h],[],
++ [AC_MSG_ERROR([LevelDB headers not found; using --with-system-leveldb is not supported anyway])])
++ AC_CHECK_HEADER([leveldb/helpers/memenv.h],[],
++ [AC_MSG_ERROR([LevelDB headers not found; using --with-system-leveldb is not supported anyway])])
++
++ AC_MSG_CHECKING([for library containing leveldb::NewMemEnv])
++ for searchlib in "" "-lmemenv" ERR; do
++ if test "x$searchlib" = "xERR"; then
++ AC_MSG_RESULT([no])
++ AC_MSG_ERROR([LevelDB's memenv helper not found; using --with-system-leveldb is not supported anyway])
++ fi
++ LIBS="$searchlib $leveldb_LIBS"
++ AC_LINK_IFELSE([AC_LANG_PROGRAM([
++ #include <leveldb/env.h>
++ #include <leveldb/helpers/memenv.h>
++ ],[
++ leveldb::Env *myenv = leveldb::NewMemEnv(leveldb::Env::Default());
++ delete myenv;
++ ])
++ ],[
++ AC_MSG_RESULT([$searchlib])
++ break
++ ])
++ done
++ leveldb_LIBS="$LIBS"
++ LIBS="$TEMP_LIBS"
++ CPPFLAGS="$TEMP_CPPFLAGS"
++],[
++ AC_DEFINE([EMBEDDED_LEVELDB],[1],[Define to use the bundled LevelDB sources])
++])
++AM_CONDITIONAL([EMBEDDED_LEVELDB],[test x$system_leveldb = xno])
++AC_SUBST(leveldb_CFLAGS)
++AC_SUBST(leveldb_LIBS)
++
+ dnl Check for libminiupnpc (optional)
+ if test "$use_upnp" != "no"; then
+ TEMP_CPPFLAGS="$CPPFLAGS"
+@@ -1693,8 +1777,10 @@ CPPFLAGS="$CPPFLAGS_TEMP"
+ if test -n "$use_sanitizers"; then
+ export SECP_CFLAGS="$SECP_CFLAGS $SANITIZER_CFLAGS"
+ fi
+-ac_configure_args="${ac_configure_args} --disable-shared --with-pic --enable-benchmark=no --enable-module-recovery --disable-module-ecdh"
+-AC_CONFIG_SUBDIRS([src/secp256k1])
++AM_COND_IF([EMBEDDED_LIBSECP256K1],[
++ ac_configure_args="${ac_configure_args} --disable-shared --with-pic --enable-benchmark=no --enable-module-recovery --disable-module-ecdh"
++ AC_CONFIG_SUBDIRS([src/secp256k1])
++])
+
+ AC_OUTPUT
+
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 1ccb5332c4..04e9d54962 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -25,7 +25,7 @@ check_PROGRAMS =
+ TESTS =
+ BENCHMARKS =
+
+-BITCOIN_INCLUDES=-I$(builddir) -I$(srcdir)/$(MINISKETCH_INCLUDE_DIR_INT) -I$(srcdir)/secp256k1/include -I$(srcdir)/$(UNIVALUE_INCLUDE_DIR_INT)
++BITCOIN_INCLUDES=-I$(builddir) -I$(srcdir)/$(MINISKETCH_INCLUDE_DIR_INT) $(libsecp256k1_CFLAGS) -I$(srcdir)/$(UNIVALUE_INCLUDE_DIR_INT)
+
+ LIBBITCOIN_NODE=libbitcoin_node.a
+ LIBBITCOIN_COMMON=libbitcoin_common.a
+@@ -34,7 +34,11 @@ LIBBITCOIN_CLI=libbitcoin_cli.a
+ LIBBITCOIN_UTIL=libbitcoin_util.a
+ LIBBITCOIN_CRYPTO_BASE=crypto/libbitcoin_crypto_base.la
+ LIBBITCOINQT=qt/libbitcoinqt.a
++if EMBEDDED_LIBSECP256K1
+ LIBSECP256K1=secp256k1/libsecp256k1.la
++else
++LIBSECP256K1=$(libsecp256k1_LIBS)
++endif
+
+ if ENABLE_ZMQ
+ LIBBITCOIN_ZMQ=libbitcoin_zmq.a
+@@ -66,8 +70,10 @@ LIBBITCOIN_CRYPTO += $(LIBBITCOIN_CRYPTO_ARM_SHANI)
+ endif
+ noinst_LTLIBRARIES += $(LIBBITCOIN_CRYPTO)
+
++if EMBEDDED_LIBSECP256K1
+ $(LIBSECP256K1): $(wildcard secp256k1/src/*.h) $(wildcard secp256k1/src/*.c) $(wildcard secp256k1/include/*)
+ $(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -C $(@D) $(@F)
++endif
+
+ # Make is not made aware of per-object dependencies to avoid limiting building parallelization
+ # But to build the less dependent modules first, we manually select their order here:
+@@ -1110,8 +1116,13 @@ endif
+
+ include Makefile.minisketch.include
+
++if EMBEDDED_LEVELDB
+ include Makefile.crc32c.include
+ include Makefile.leveldb.include
++else
++LEVELDB_CPPFLAGS = $(leveldb_CFLAGS)
++LIBLEVELDB = $(leveldb_LIBS)
++endif
+
+ include Makefile.test_util.include
+ include Makefile.test_fuzz.include
+diff --git a/src/Makefile.test.include b/src/Makefile.test.include
+index c396cc2ebf..233f1a1c21 100644
+--- a/src/Makefile.test.include
++++ b/src/Makefile.test.include
+@@ -449,7 +449,9 @@ if ENABLE_BENCH
+ $(BENCH_BINARY) -sanity-check -priority-level=high
+ endif
+ endif
++if EMBEDDED_LIBSECP256K1
+ $(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -C secp256k1 check
++endif
+
+ if ENABLE_TESTS
+ UNIVALUE_TESTS = univalue/test/object univalue/test/unitester
+diff --git a/src/dbwrapper.cpp b/src/dbwrapper.cpp
+index 479064d468..b476b42c85 100644
+--- a/src/dbwrapper.cpp
++++ b/src/dbwrapper.cpp
+@@ -22,7 +22,11 @@
+ #include <leveldb/db.h>
+ #include <leveldb/env.h>
+ #include <leveldb/filter_policy.h>
+-#include <leveldb/helpers/memenv/memenv.h>
++#if EMBEDDED_LEVELDB
++# include <leveldb/helpers/memenv/memenv.h>
++#else
++# include <leveldb/helpers/memenv.h>
++#endif
+ #include <leveldb/iterator.h>
+ #include <leveldb/options.h>
+ #include <leveldb/slice.h>
+@@ -51,6 +55,27 @@ static void HandleError(const leveldb::Status& status)
+ throw dbwrapper_error(errmsg);
+ }
+
++#if !EMBEDDED_LEVELDB
++#include <node/interface_ui.h>
++#include <util/translation.h>
++#include <leveldb/c.h>
++bool dbwrapper_SanityCheck()
++{
++ unsigned long header_version = (leveldb::kMajorVersion << 16) | leveldb::kMinorVersion;
++ unsigned long library_version = (leveldb_major_version() << 16) | leveldb_minor_version();
++
++ if (header_version != library_version) {
++ InitError(Untranslated(strprintf("Compiled with LevelDB %d.%d, but linked with LevelDB %d.%d (incompatible).",
++ leveldb::kMajorVersion, leveldb::kMinorVersion,
++ leveldb_major_version(), leveldb_minor_version()
++ )));
++ return false;
++ }
++
++ return true;
++}
++#endif
++
+ class CBitcoinLevelDBLogger : public leveldb::Logger {
+ public:
+ // This code is adapted from posix_logger.h, which is why it is using vsprintf.
+diff --git a/src/dbwrapper.h b/src/dbwrapper.h
+index 63c2f99d2a..406d03f1ea 100644
+--- a/src/dbwrapper.h
++++ b/src/dbwrapper.h
+@@ -5,6 +5,10 @@
+ #ifndef BITCOIN_DBWRAPPER_H
+ #define BITCOIN_DBWRAPPER_H
+
++#if defined(HAVE_CONFIG_H)
++#include <config/bitcoin-config.h>
++#endif
++
+ #include <attributes.h>
+ #include <serialize.h>
+ #include <span.h>
+@@ -46,6 +50,10 @@ struct DBParams {
+ DBOptions options{};
+ };
+
++#if !EMBEDDED_LEVELDB
++bool dbwrapper_SanityCheck();
++#endif
++
+ class dbwrapper_error : public std::runtime_error
+ {
+ public:
+diff --git a/src/kernel/checks.cpp b/src/kernel/checks.cpp
+index e4a13ee4cc..2ca51437bf 100644
+--- a/src/kernel/checks.cpp
++++ b/src/kernel/checks.cpp
+@@ -4,6 +4,7 @@
+
+ #include <kernel/checks.h>
+
++#include <dbwrapper.h>
+ #include <random.h>
+ #include <util/result.h>
+ #include <util/translation.h>
+@@ -14,6 +15,12 @@ namespace kernel {
+
+ util::Result<void> SanityChecks(const Context&)
+ {
++#if !EMBEDDED_LEVELDB
++ if (!dbwrapper_SanityCheck()) {
++ return util::Error{Untranslated("Database sanity check failure. Aborting.")};
++ }
++#endif
++
+ if (!Random_SanityCheck()) {
+ return util::Error{Untranslated("OS cryptographic RNG sanity check failure. Aborting.")};
+ }
+--
+2.46.0
+
diff --git a/net-p2p/bitcoin-core/metadata.xml b/net-p2p/bitcoin-core/metadata.xml
index 63568431d943..57e1f807773b 100644
--- a/net-p2p/bitcoin-core/metadata.xml
+++ b/net-p2p/bitcoin-core/metadata.xml
@@ -23,6 +23,7 @@
<flag name="system-leveldb">Link with <pkg>virtual/bitcoin-leveldb</pkg> rather than embedding an internal copy</flag>
<flag name="system-libsecp256k1">Link with <pkg>dev-libs/libsecp256k1</pkg> rather than embedding an internal copy</flag>
<flag name="systemtap">Enable SystemTap/DTrace tracing</flag>
+ <flag name="test-full">Run tests that take a long time</flag>
<flag name="upnp">Enable Universal Plug and Play</flag>
<flag name="zeromq">Report blocks and transactions via zeromq</flag>
</use>
diff --git a/net-p2p/classified-ads/Manifest b/net-p2p/classified-ads/Manifest
index c900f4ef5a3f..44180fc24faa 100644
--- a/net-p2p/classified-ads/Manifest
+++ b/net-p2p/classified-ads/Manifest
@@ -1,15 +1,4 @@
-AUX classified-ads-0.13-examples-install-dir.patch 2415 BLAKE2B 2f10693e7fc338a36cbd331bb53952a6983e2675bcbbc2561209f023f216b789bbbcfde9002f56d87ac79cb5a45ed754752ac2bb375637f82757de2bf7ded2c9 SHA512 e42d7b04a4fc7bf3b447ed46350b5c2cd6ca7ca7c72bad3f63f918ce19577d9236fd75a368a7007fed62e5c5bb3e1a23450f6ca6870489ae958a5affd8e5f79e
-DIST classified-ads-0.13.tar.gz 2656104 BLAKE2B d02f723d7371abc2a8c0a6bfde300c8a4f16e5fcc43a17c5d8b8cce4ab21371df82b734e5813ebded6672e8448b7e8ee19c68836926dcc7af1824bfa173de0ef SHA512 7b6114705ac5867223e4e74c13aad47a4a38c24cd5e062e50dd7c0a5829ff011151a93562b1a5ab37f04fe3d6a93258e9ca4845748bbb02db882818284fe4a3a
-DIST classified-ads-0.14.tar.gz 2657632 BLAKE2B e3b405cb4c706a17158871b571a28f8a024b87e73e758858cec2387a7889ddf1ee5af2ce84b151d31bb5271991531380a2f177028022e2f5e28d7720926ebf8e SHA512 1d68c494f1f680b36fd8997183d222c8c4fd852cb4278947aed1744ba49d49d1cbb04ee06d6952ab22096c6d8b87b940c66d518cb26757fe03f17b3d1ce6dddb
-DIST classified-ads-0.15.tar.gz 2657723 BLAKE2B 71d670d716aa8dd743a981fb29545117b3cdc68ac8777870182676c2a03ab7d86d3ec84ad30a283874f7d643e7776faabd1e2a481f2a265e677c07a52690bd40 SHA512 5d770b213db14fc33491223a880daae923b4dc60d2d75398bf4a272e28618a3d1198c1d949daf5e59de28b71f90627945bd9c39b96c44bfbb445d5d8f96ce15d
DIST classified-ads-0.16.tar.gz 2712434 BLAKE2B 09d541a80c4d0a8adfde0a34ee781f1ed02dfe632280f1928fd55f1aa6486364a45b94f88d5e5e0804d3c91cb3e2f8e7fa6a8477dab629d68f15a441ee404bf3 SHA512 1ca9ca0d3282f2e8230320f02eb405fc10b30b6f2b5f89e25105d71b64ff1d38616e8a48e7faca25643af9ce507d56c4b42022e7c2b90efe5d8e6d23e927d044
-DIST classified-ads-graphics-0.13.tar.gz 340476 BLAKE2B c9bac95f0e620a671959f0eb8c719cd70be5c9340ccb3bc3baa7eae669b5201d3127880b9006a4031e09be09e72754c8ec07824b3581e3af691c3944d5b32d21 SHA512 c59f65f37a8e4dddb753dbcdec835e946d9de021c5273319b3cd95ef1c3343715ce4b87d76b2d96264acc791a6cced32967521c74978131bd76fbcfc37bb344d
-DIST classified-ads-graphics-0.14.tar.gz 340476 BLAKE2B c9bac95f0e620a671959f0eb8c719cd70be5c9340ccb3bc3baa7eae669b5201d3127880b9006a4031e09be09e72754c8ec07824b3581e3af691c3944d5b32d21 SHA512 c59f65f37a8e4dddb753dbcdec835e946d9de021c5273319b3cd95ef1c3343715ce4b87d76b2d96264acc791a6cced32967521c74978131bd76fbcfc37bb344d
-DIST classified-ads-graphics-0.15.tar.gz 340476 BLAKE2B c9bac95f0e620a671959f0eb8c719cd70be5c9340ccb3bc3baa7eae669b5201d3127880b9006a4031e09be09e72754c8ec07824b3581e3af691c3944d5b32d21 SHA512 c59f65f37a8e4dddb753dbcdec835e946d9de021c5273319b3cd95ef1c3343715ce4b87d76b2d96264acc791a6cced32967521c74978131bd76fbcfc37bb344d
DIST classified-ads-graphics-0.16.tar.gz 340476 BLAKE2B c9bac95f0e620a671959f0eb8c719cd70be5c9340ccb3bc3baa7eae669b5201d3127880b9006a4031e09be09e72754c8ec07824b3581e3af691c3944d5b32d21 SHA512 c59f65f37a8e4dddb753dbcdec835e946d9de021c5273319b3cd95ef1c3343715ce4b87d76b2d96264acc791a6cced32967521c74978131bd76fbcfc37bb344d
-EBUILD classified-ads-0.13-r1.ebuild 1743 BLAKE2B 37043d2c89d545b86d18eb3c986fe252a24c1f536250179d3950f2e1c1c4147ec581912210818b821b64003e799e977149af91e95db2329b2e99d54e94265238 SHA512 5c974dd583b0c7b507b425cc655d13a5cee9e6cec3b3050048e325409e2fedb898872e83050d89d77d5e7e94844da5c45f74a79827d4f383344bbc1472f39be2
-EBUILD classified-ads-0.13-r2.ebuild 1837 BLAKE2B 81e9a675b51f5509bb38022b7a027823bde3fac767a07b730baa26fd77f6e4786ba75b6ff9fba3033225b2995dbf00de824c6b83bf8cd92907832cf6954013d5 SHA512 276d34a3712ffffbae72951167775cbf9c88077610f71ac06c11d10e5a28c57dd71ac18e0edccd04570457e4d29b80f8d5de93e3a9d2ca6e590293b918fa90a1
-EBUILD classified-ads-0.14.ebuild 1782 BLAKE2B bc505018c7f8fb52b55f541465abf45e6d3d52c46a8e312b3b0aa7cf333584bf0ef56e64398bfe05afc2020c783152926b4fd8bf9b6bf6d6340ff2147f4f36ba SHA512 a3d412091fe9c19440801227f67289082812ee5a35f80b1143015ecbbb1f1e30311155331e52838f5b9c6ffa0cb0bde0a63abbaa7fd354d9d1cecfef2cb8d307
-EBUILD classified-ads-0.15.ebuild 1782 BLAKE2B bc505018c7f8fb52b55f541465abf45e6d3d52c46a8e312b3b0aa7cf333584bf0ef56e64398bfe05afc2020c783152926b4fd8bf9b6bf6d6340ff2147f4f36ba SHA512 a3d412091fe9c19440801227f67289082812ee5a35f80b1143015ecbbb1f1e30311155331e52838f5b9c6ffa0cb0bde0a63abbaa7fd354d9d1cecfef2cb8d307
EBUILD classified-ads-0.16.ebuild 1782 BLAKE2B bc505018c7f8fb52b55f541465abf45e6d3d52c46a8e312b3b0aa7cf333584bf0ef56e64398bfe05afc2020c783152926b4fd8bf9b6bf6d6340ff2147f4f36ba SHA512 a3d412091fe9c19440801227f67289082812ee5a35f80b1143015ecbbb1f1e30311155331e52838f5b9c6ffa0cb0bde0a63abbaa7fd354d9d1cecfef2cb8d307
MISC metadata.xml 1810 BLAKE2B 84d8b3c4131a1b631798549fb2278485f33089fa6473c61e0174c33db5ed7223b0d408a80d50b64336183265d6c908e305a6d5a34359f328f2e016b6f095354c SHA512 55d8a50a3054cf23e5ca92377b448df83ce6c0c98f65c3044262f67b6928ce2d44b35771987a5524ecbf625848fb6ba10085462eeea0fef76ce2567ddaa7df0f
diff --git a/net-p2p/classified-ads/classified-ads-0.13-r1.ebuild b/net-p2p/classified-ads/classified-ads-0.13-r1.ebuild
deleted file mode 100644
index 5f9a72b28641..000000000000
--- a/net-p2p/classified-ads/classified-ads-0.13-r1.ebuild
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit qmake-utils virtualx xdg
-
-DESCRIPTION="Program for displaying classified advertisement items"
-HOMEPAGE="http://katiska.org/classified-ads/"
-SRC_URI="https://github.com/operatornormal/classified-ads/archive/${PV}.tar.gz
- -> classified-ads-${PV}.tar.gz
- https://github.com/operatornormal/classified-ads/blob/graphics/preprocessed.tar.gz?raw=true
- -> classified-ads-graphics-${PV}.tar.gz"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-IUSE="doc test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="app-arch/bzip2
- dev-lang/tcl:=
- dev-lang/tk:=
- dev-libs/openssl:0=
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtmultimedia:5[widgets]
- dev-qt/qtnetwork:5[ssl]
- dev-qt/qtprintsupport:5
- dev-qt/qtsql:5[sqlite]
- dev-qt/qtwidgets:5
- media-libs/opus
- net-libs/libnatpmp
- net-libs/miniupnpc
- sys-apps/file
- sys-libs/zlib
- virtual/libintl"
-
-DEPEND="${RDEPEND}
- sys-devel/gettext
- doc? ( app-text/doxygen[dot] )
- test? ( dev-libs/libgcrypt:0
- dev-qt/qttest:5
- dev-debug/gdb:0 )"
-
-src_prepare() {
- # preprocessed graphics are unpacked into wrong directory
- # so lets move them into correct location:
- mv ../ui/* ui/ || die
- # possible patches
- eapply_user
-}
-
-src_configure() {
- eqmake5
- if use test; then
- cd testca || die
- eqmake5
- fi
-}
-
-src_compile() {
- emake
- if use doc; then
- pushd doc > /dev/null || die
- doxygen || die
- popd > /dev/null || die
- fi
- if use test; then
- emake -C testca
- fi
-}
-
-src_test() {
- # testca will return 0 if all unit tests pass
- virtx ./testca/testca
-}
-
-src_install() {
- docompress -x /usr/share/doc/
- emake install INSTALL_ROOT="${D}" DESTDIR="${D}"
- use doc && dodoc -r doc/doxygen.generated/html/.
-}
diff --git a/net-p2p/classified-ads/classified-ads-0.13-r2.ebuild b/net-p2p/classified-ads/classified-ads-0.13-r2.ebuild
deleted file mode 100644
index 1f23776c5ef0..000000000000
--- a/net-p2p/classified-ads/classified-ads-0.13-r2.ebuild
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-inherit qmake-utils virtualx xdg
-
-DESCRIPTION="Program for displaying classified advertisement items"
-HOMEPAGE="http://katiska.org/classified-ads/"
-SRC_URI="https://github.com/operatornormal/classified-ads/archive/${PV}.tar.gz
- -> classified-ads-${PV}.tar.gz
- https://github.com/operatornormal/classified-ads/blob/graphics/preprocessed.tar.gz?raw=true
- -> classified-ads-graphics-${PV}.tar.gz"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-IUSE="doc test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="app-arch/bzip2
- dev-lang/tcl:=
- dev-lang/tk:=
- dev-libs/openssl:0=
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtmultimedia:5[widgets]
- dev-qt/qtnetwork:5[ssl]
- dev-qt/qtprintsupport:5
- dev-qt/qtsql:5[sqlite]
- dev-qt/qtwidgets:5
- media-libs/opus
- net-libs/libnatpmp
- net-libs/miniupnpc
- sys-apps/file
- sys-libs/zlib
- virtual/libintl"
-
-DEPEND="${RDEPEND}
- doc? ( app-text/doxygen[dot] )
- test? ( dev-libs/libgcrypt:0
- dev-qt/qttest:5
- dev-debug/gdb:0 )"
-
-BDEPEND="sys-devel/gettext"
-
-PATCHES=(
- "${FILESDIR}/${P}-examples-install-dir.patch"
-)
-
-src_prepare() {
- # preprocessed graphics are unpacked into wrong directory
- # so lets move them into correct location:
- mv ../ui/* ui/ || die
- default
-}
-
-src_configure() {
- eqmake5 examplefiles.path=/usr/share/doc/${PF}/examples
- if use test; then
- cd testca || die
- eqmake5
- fi
-}
-
-src_compile() {
- emake
- if use doc; then
- pushd doc > /dev/null || die
- doxygen || die
- popd > /dev/null || die
- fi
- if use test; then
- emake -C testca
- fi
-}
-
-src_test() {
- # testca will return 0 if all unit tests pass
- virtx ./testca/testca
-}
-
-src_install() {
- docompress -x /usr/share/doc/
- emake install INSTALL_ROOT="${D}" DESTDIR="${D}"
- use doc && dodoc -r doc/doxygen.generated/html/.
-}
diff --git a/net-p2p/classified-ads/classified-ads-0.14.ebuild b/net-p2p/classified-ads/classified-ads-0.14.ebuild
deleted file mode 100644
index 30c8a9c7dc71..000000000000
--- a/net-p2p/classified-ads/classified-ads-0.14.ebuild
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit qmake-utils virtualx xdg
-
-DESCRIPTION="Program for displaying classified advertisement items"
-HOMEPAGE="http://katiska.org/classified-ads/"
-SRC_URI="https://github.com/operatornormal/classified-ads/archive/${PV}.tar.gz
- -> classified-ads-${PV}.tar.gz
- https://github.com/operatornormal/classified-ads/blob/graphics/preprocessed.tar.gz?raw=true
- -> classified-ads-graphics-${PV}.tar.gz"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-IUSE="doc test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="app-arch/bzip2
- dev-lang/tcl:=
- dev-lang/tk:=
- dev-libs/openssl:0=
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtmultimedia:5[widgets]
- dev-qt/qtnetwork:5[ssl]
- dev-qt/qtprintsupport:5
- dev-qt/qtsql:5[sqlite]
- dev-qt/qtwidgets:5
- media-libs/opus
- net-libs/libnatpmp
- net-libs/miniupnpc:=
- sys-apps/file
- sys-libs/zlib
- virtual/libintl"
-
-DEPEND="${RDEPEND}
- test? ( dev-libs/libgcrypt:0
- dev-qt/qttest:5
- dev-debug/gdb:0 )"
-
-BDEPEND="sys-devel/gettext
- doc? ( app-text/doxygen )"
-
-src_prepare() {
- # preprocessed graphics are unpacked into wrong directory
- # so lets move them into correct location:
- mv ../ui/* ui/ || die
- default
-}
-
-src_configure() {
- eqmake5 examplefiles.path=/usr/share/doc/${PF}/examples
- if use test; then
- cd testca || die
- eqmake5
- fi
-}
-
-src_compile() {
- emake
- if use doc; then
- pushd doc > /dev/null || die
- doxygen || die
- popd > /dev/null || die
- fi
- if use test; then
- emake -C testca
- fi
-}
-
-src_test() {
- # testca will return 0 if all unit tests pass
- virtx ./testca/testca || die
-}
-
-src_install() {
- docompress -x /usr/share/doc/
- emake install INSTALL_ROOT="${D}" DESTDIR="${D}"
- use doc && dodoc -r doc/doxygen.generated/html/.
-}
diff --git a/net-p2p/classified-ads/classified-ads-0.15.ebuild b/net-p2p/classified-ads/classified-ads-0.15.ebuild
deleted file mode 100644
index 30c8a9c7dc71..000000000000
--- a/net-p2p/classified-ads/classified-ads-0.15.ebuild
+++ /dev/null
@@ -1,84 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit qmake-utils virtualx xdg
-
-DESCRIPTION="Program for displaying classified advertisement items"
-HOMEPAGE="http://katiska.org/classified-ads/"
-SRC_URI="https://github.com/operatornormal/classified-ads/archive/${PV}.tar.gz
- -> classified-ads-${PV}.tar.gz
- https://github.com/operatornormal/classified-ads/blob/graphics/preprocessed.tar.gz?raw=true
- -> classified-ads-graphics-${PV}.tar.gz"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-
-IUSE="doc test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="app-arch/bzip2
- dev-lang/tcl:=
- dev-lang/tk:=
- dev-libs/openssl:0=
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtmultimedia:5[widgets]
- dev-qt/qtnetwork:5[ssl]
- dev-qt/qtprintsupport:5
- dev-qt/qtsql:5[sqlite]
- dev-qt/qtwidgets:5
- media-libs/opus
- net-libs/libnatpmp
- net-libs/miniupnpc:=
- sys-apps/file
- sys-libs/zlib
- virtual/libintl"
-
-DEPEND="${RDEPEND}
- test? ( dev-libs/libgcrypt:0
- dev-qt/qttest:5
- dev-debug/gdb:0 )"
-
-BDEPEND="sys-devel/gettext
- doc? ( app-text/doxygen )"
-
-src_prepare() {
- # preprocessed graphics are unpacked into wrong directory
- # so lets move them into correct location:
- mv ../ui/* ui/ || die
- default
-}
-
-src_configure() {
- eqmake5 examplefiles.path=/usr/share/doc/${PF}/examples
- if use test; then
- cd testca || die
- eqmake5
- fi
-}
-
-src_compile() {
- emake
- if use doc; then
- pushd doc > /dev/null || die
- doxygen || die
- popd > /dev/null || die
- fi
- if use test; then
- emake -C testca
- fi
-}
-
-src_test() {
- # testca will return 0 if all unit tests pass
- virtx ./testca/testca || die
-}
-
-src_install() {
- docompress -x /usr/share/doc/
- emake install INSTALL_ROOT="${D}" DESTDIR="${D}"
- use doc && dodoc -r doc/doxygen.generated/html/.
-}
diff --git a/net-p2p/classified-ads/files/classified-ads-0.13-examples-install-dir.patch b/net-p2p/classified-ads/files/classified-ads-0.13-examples-install-dir.patch
deleted file mode 100644
index e6b0b4bab362..000000000000
--- a/net-p2p/classified-ads/files/classified-ads-0.13-examples-install-dir.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From: Antti Järvinen <antti.jarvinen@katiska.org>
-Bug: https://bugs.gentoo.org/809464
-
-Installs example TCL programs into correct path. Upon startup binary
-will check example files from path, this why this touches not only
-makefile but also the c++ code. Changes are possible to incorporate
-into next upstream release so this patch will become obsolete.
-
-diff -u -r classified-ads-0.13.orig/classified-ads.pro classified-ads-0.13/classified-ads.pro
---- classified-ads-0.13.orig/classified-ads.pro 2018-07-03 17:16:11.000000000 +0300
-+++ classified-ads-0.13/classified-ads.pro 2021-10-17 19:13:22.049743665 +0300
-@@ -186,7 +186,9 @@
- manpages.path = /usr/share/man/man1
- manpages.files = classified-ads.1
- # note this example file path appears also in file tclmodel.cpp
--examplefiles.path = /usr/share/doc/classified-ads/examples
-+isEmpty(examplefiles.path){
-+ examplefiles.path = /usr/share/doc/classified-ads/examples
-+}
- examplefiles.files = doc/sysinfo.tcl doc/luikero.tcl doc/calendar.tcl
- INSTALLS += target \
- desktopfiles \
-diff -u -r classified-ads-0.13.orig/datamodel/tclmodel.cpp classified-ads-0.13/datamodel/tclmodel.cpp
---- classified-ads-0.13.orig/datamodel/tclmodel.cpp 2018-07-03 17:16:11.000000000 +0300
-+++ classified-ads-0.13/datamodel/tclmodel.cpp 2021-10-17 19:28:39.084875578 +0300
-@@ -292,7 +292,13 @@
- #else
- // in unix this path appears in classified-ads.pro and
- // is used by "make install" phase.
-- QDir examplesDir ("/usr/share/doc/classified-ads/examples") ;
-+ QDir examplesDir ("/usr/share/doc/classified-ads/examples") ;
-+ if ( !examplesDir.exists() ) {
-+ // some linux distributions want version number inside path:
-+ examplesDir.setPath("/usr/share/doc/classified-ads-"+
-+ QString(CLASSIFIED_ADS_VERSION)+
-+ "/examples") ;
-+ }
- #endif
- if ( !examplesDir.exists() ) {
- return ; // no examples, obviously
-diff -u -r classified-ads-0.13.orig/mcontroller.h classified-ads-0.13/mcontroller.h
---- classified-ads-0.13.orig/mcontroller.h 2018-07-03 17:16:11.000000000 +0300
-+++ classified-ads-0.13/mcontroller.h 2021-10-18 20:38:39.495032595 +0300
-@@ -25,7 +25,7 @@
- #include "datamodel/netrequestexecutor.h"
- #include "datamodel/cadbrecord.h" // for CaDbRecord::SearchTerms
-
--#define CLASSIFIED_ADS_VERSION "0.13"
-+#define CLASSIFIED_ADS_VERSION "0.13-r2"
-
- class Node ;
- class Model ;
diff --git a/net-p2p/ktorrent/Manifest b/net-p2p/ktorrent/Manifest
index 8d0f9dedeb1c..a339960acdbc 100644
--- a/net-p2p/ktorrent/Manifest
+++ b/net-p2p/ktorrent/Manifest
@@ -2,6 +2,6 @@ DIST ktorrent-23.08.5.tar.xz 2170976 BLAKE2B 047614caebfbddb36a517f79bfee3d10b77
DIST ktorrent-24.05.2.tar.xz 2181476 BLAKE2B 6276eb27c37255cb0ecf72785c990c3dac93b178cba8a1425cfad82b596f8efb87dcc12a6ec09b81064e3e3e2c06e0acc9c8507394ac2e0e148a7591dfbf2617 SHA512 4dd106c1ff1068100d4694b8dbc2e2b2475b8cb4dfbbc892fac1a31d619fce87c1f96dab6137f9430357b4b462ce9a34f1a5ab1dcb35b319ce46df11747dfee7
DIST ktorrent-24.08.0.tar.xz 2183900 BLAKE2B f115afb180584379b9ac7f1c8524958a3a0f047d5c04643665afab18d9d56e13d7098c814d13b45ff8734314150a0c8955f41eb41ed89ac79c8d7b9d2c094bda SHA512 d64d61931e4fd793f6d044039438294f351da897c0420664cfb6a001a9557dcf35e81ad25888e223f24bf2fc835218a6a722ccb4d64870bdf635ea0c8f46bb32
EBUILD ktorrent-23.08.5.ebuild 2934 BLAKE2B ebb277d6a3f86dcdb7df236fbd7f25fd2c9d9b5533434b1ce605945992a97a8fc7cb35962b013bf48060ad7a94d42f59c34d824ef346b8731e43663db978664e SHA512 4f501f4f4e5eba7e490c54df89b06ce0b79d863b7b52c4c8f6b39056d00ec690f0ed5514a8b30dbc3fdf1a76485aa194ba0703f10b15a3feb994ee66fb10ceee
-EBUILD ktorrent-24.05.2.ebuild 2847 BLAKE2B f9df1e0666bcba52fee4523406591e038b69d087fc929c39d7c6338a0e10388568becde084ffe73164d09fe24176146b0a353a42fa7bccef27e765a2d90a2fd6 SHA512 9c9e44034bebe0a5cc7c727b4b7a5e53ac21ba7fbed0cd8b09c47663e8143c738ad2dc9f7e6d5118486e48018d511977cc6b6f4024e6a4ca24fb151092c18cb4
+EBUILD ktorrent-24.05.2.ebuild 2846 BLAKE2B 55476f81bca13041991417ace474c667a583de66a355f9250b1885a20e3bcfba0820179f6740b34d58e4c54d7970e6c2fd6ec69858c293a192e539b5da6bb5fb SHA512 13761c568cf5401263c93c23e467cb360c9ca2344ec43ff1e691520e30f96b6f4bc08e08feceb666207c4d2d1b4bc6f6936c4a6760f6a9b808c1f6465ed5b278
EBUILD ktorrent-24.08.0.ebuild 2848 BLAKE2B fdcbc221ae3ee9741b7f387339d1dbe78a3775317bd4a1012883b64af902ed3c83bfb94fdc3b6681cd50f678e39617edc07d7c533be9d6e6e657e799daff180a SHA512 df07a18ecbacea9c9f6fba8d738d6635c125dd156ee31aff96a32aa0366bdf651e7d9129ff035c811be078f6c43d67ae555e18f6633356190fed5d6ac5f6d44c
MISC metadata.xml 1460 BLAKE2B 51ebe2b5f66b522da72da170d514b03cfb03756c9006e1b722fa6346d693082dda487299d356a011484c7217bf94cda5233e7a561450114ee1be063bc2e850f9 SHA512 075e0d77256155dceacf5df0dd6e0ddab45c93d2914da9a16f2ca9895a563bf1cdced2931436c772d4915661d0bdff32bb531901b8b8e4b99af00b5ff45fab68
diff --git a/net-p2p/ktorrent/ktorrent-24.05.2.ebuild b/net-p2p/ktorrent/ktorrent-24.05.2.ebuild
index 51deb405322d..eae90f49400e 100644
--- a/net-p2p/ktorrent/ktorrent-24.05.2.ebuild
+++ b/net-p2p/ktorrent/ktorrent-24.05.2.ebuild
@@ -15,7 +15,7 @@ HOMEPAGE="https://apps.kde.org/ktorrent/"
LICENSE="GPL-2"
SLOT="6"
-KEYWORDS="amd64 ~arm64 ~ppc64 ~x86"
+KEYWORDS="amd64 arm64 ~ppc64 ~x86"
IUSE="+bwscheduler +downloadorder +infowidget +ipfilter +logviewer +magnetgenerator
+mediaplayer rss +scanfolder +shutdown +stats +upnp +webengine +zeroconf"