# Copyright 2010-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 RUST_MIN_VER="1.87" CRATES=" aho-corasick-1.1.5 android_system_properties-0.1.6 anyhow-1.0.104 arrayvec-0.7.8 autocfg-1.5.1 base58ck-0.1.101 bech32-0.11.1 bitcoin-0.32.102 bitcoin-consensus-encoding-1.1.0 bitcoin-internals-0.6.0 bitcoin-io-0.1.101 bitcoin-units-0.1.101 bitcoin_hashes-0.14.101 bitflags-2.13.1 bumpalo-3.20.3 bytecount-0.6.9 bytes-1.12.1 cc-1.4.2 cfg-if-1.0.4 chacha20-0.10.1 chrono-0.4.45 cln-plugin-0.7.0 cln-rpc-0.7.0 core-foundation-sys-0.8.7 cpufeatures-0.3.0 find-msvc-tools-0.1.10 fnv-1.0.7 futures-0.3.33 futures-channel-0.3.33 futures-core-0.3.33 futures-executor-0.3.33 futures-io-0.3.33 futures-macro-0.3.33 futures-sink-0.3.33 futures-task-0.3.33 futures-util-0.3.33 getrandom-0.4.3 heck-0.5.0 hex-0.4.3 hex-conservative-0.2.2 hex-conservative-1.2.0 hex_lit-0.1.1 iana-time-zone-0.1.65 iana-time-zone-haiku-0.1.2 itoa-1.0.18 js-sys-0.3.104 lazy_static-1.5.0 libc-0.2.189 libmimalloc-sys-0.1.49 lock_api-0.4.14 log-0.4.33 log-panics-2.1.0 matchers-0.2.0 memchr-2.8.3 mimalloc-0.1.52 mio-1.2.2 nu-ansi-term-0.50.3 num-format-0.4.4 num-traits-0.2.19 once_cell-1.21.4 papergrid-0.18.0 parking_lot-0.12.5 parking_lot_core-0.9.12 pin-project-lite-0.2.17 proc-macro-error-attr2-2.0.0 proc-macro-error2-2.0.1 proc-macro2-1.0.107 quote-1.0.47 r-efi-6.0.0 rand-0.10.2 rand_core-0.10.1 redox_syscall-0.5.18 regex-automata-0.4.18 regex-syntax-0.8.11 rustversion-1.0.23 scopeguard-1.2.0 secp256k1-0.29.1 secp256k1-sys-0.10.1 serde-1.0.229 serde_core-1.0.229 serde_derive-1.0.229 serde_json-1.0.151 sharded-slab-0.1.7 shlex-2.0.1 slab-0.4.12 smallvec-1.15.2 socket2-0.6.5 syn-2.0.119 syn-3.0.3 tabled-0.21.0 tabled_derive-0.11.0 testing_table-0.3.0 thread_local-1.1.10 tokio-1.53.1 tokio-macros-2.7.2 tokio-stream-0.1.19 tokio-util-0.7.19 tracing-0.1.44 tracing-attributes-0.1.31 tracing-core-0.1.36 tracing-log-0.2.0 tracing-subscriber-0.3.23 unicode-ident-1.0.24 unicode-width-0.2.2 valuable-0.1.1 wasi-0.11.1+wasi-snapshot-preview1 wasm-bindgen-0.2.127 wasm-bindgen-macro-0.2.127 wasm-bindgen-macro-support-0.2.127 wasm-bindgen-shared-0.2.127 windows-core-0.62.2 windows-implement-0.60.2 windows-interface-0.59.3 windows-link-0.2.1 windows-result-0.4.1 windows-strings-0.5.1 windows-sys-0.61.2 zmij-1.0.23 " inherit cargo eapi9-ver DESCRIPTION="A Core Lightning plugin to automatically rebalance multiple channels" HOMEPAGE="https://github.com/daywalker90/sling" SRC_URI="${HOMEPAGE}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz $(cargo_crate_uris)" LICENSE="MIT" SLOT="0" KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~x86" RDEPEND=" >=net-p2p/core-lightning-23.11 " efmt() { : ${1:?} ; local l ; while read -r l ; do "${!#}" "${l}" ; done < <(fmt "${@:1:$#-1}") } src_install() { cargo_src_install insinto /usr/libexec/c-lightning/plugins mv -- "${ED}/usr/bin/sling" "${ED}/usr/libexec/c-lightning/plugins/" || die } pkg_postinst() { if ver_replacing -lt 4.0.0 ; then efmt ewarn <<-EOF This version of ${CATEGORY}/${PN} drops the config variables sling-refresh-peers-interval and sling-refresh-gossmap-interval. You will need to remove these from your lightningd.conf if they are present. EOF fi }