sys-apps/coolercontrold: add 3.0.2

Signed-off-by: Alfred Wingate <parona@protonmail.com>
Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com>
This commit is contained in:
Alfred Wingate
2025-11-04 01:29:37 +02:00
committed by Paul Zander
parent b2db2d6111
commit fb210a4ff3
3 changed files with 146 additions and 0 deletions

View File

@@ -2,8 +2,10 @@ DIST coolercontrol-2.2.2-dist.tar.xz 997364 BLAKE2B bc614c98382f9731df3ecf8922a0
DIST coolercontrol-2.2.2.tar.bz2 15870398 BLAKE2B ee26c65b702f934a2a2bc25b1443a0050596c6b10a7c11c40b4391a84aee2cc8d7d4063b082e9ebf39f002aa413c1a023030aebbf23c4a0fb346fa0e6a0a54a2 SHA512 550e323368ecf5131b96544173d36bf05d9e3b2c925d557146f0a3c325b70563fbec19e03918c0398a60749748e3e00d40a25669209009dca37dc2fdec3bbacc
DIST coolercontrol-3.0.1-dist.tar.xz 1103292 BLAKE2B 03accc9b4978026e8c8b6a558d83a89b21cec3e0230561e33d0cb5f35cfcca79a2d66394a66d901cb0be05370c646daf74d186780e478a79171dc8ddd36fbbf2 SHA512 32379e77ee4245b2a7046cfca9d8e5920fe4545c3fd35e787d03951a38a7ed6d9780ba20dcede92a91aeac578bdd25331d57b5f2e5a0cf080c116cd5750c81f7
DIST coolercontrol-3.0.1.tar.bz2 38188904 BLAKE2B 2d6d1e9d84797b85eeaf5cf4b6184db187eeea47c767caf39570576c644ecc65e1df18ea8906ce5a62c956ffc64c650cf7412421e3909edfe166963f1f6ce54e SHA512 b053758772e1a4f69f95c11bb640bc6404ef51b8682982296b413cb48c77f264f17117c7524d4f9ee736af619cd67a985a81f476fe736e86cd85d73cfa7f5a70
DIST coolercontrol-3.0.2.tar.gz 8937023 BLAKE2B 447705ef8f4347b3446802aada3d26a51cef97b09027822974ac175c8a8c7f47c30f8bb1a77c34f0efbda21f89e95828a4de7cf43d9eead3601ff25cf9aeb41a SHA512 45448cbbdd480272bf08af5aefc00a4704029831dc0983942a3f08f92a07c823e8c4458a5be247875f6214b8f469eedc5cde83d6815df37d1261fd7b6c534c71
DIST coolercontrold-2.2.2-crates.tar.xz 35507500 BLAKE2B 97e6a99d124d7c2546eb4cceafb6cc65870701e9b8a583209a8b67afd0d6773d842b688897259f9b8d42f0c4e71aaa976922f70ff4e928dd0f4865ebc61511ae SHA512 cccd1c4ff007ee5f0db6bf3250dd6408a2928d4536ca3b4395dd0b8ff4ea05ab858f40610b9fd7dff7bd859fbd3689d3bd5d7e2f5d382ad68885434ed23c0aae
DIST coolercontrold-3.0.1-crates.tar.xz 35903240 BLAKE2B de0f1661974e1de5317c7675b7b2c0844ddcce2e31d7fcd0750d4821a55d31749c5140bf5804fca8a3414289b9e0affdb79fad07a50d2948e324f36d0c65cacf SHA512 20ef9498190bf4c34bf81db9a71a878f9725049f9f66d575a869aaf97d881631361a0878aa52702a7ec178ed407b38633f1875c05a8442eb0eb52e0e9b5b08fb
DIST coolercontrold-3.0.2-vendor.tar.gz 69396637 BLAKE2B 9eb3217dba48ed3ecabcbd7018cefaeeb238421a8b427f7da3c2c7fcdc22f007b0b7ad321ab6675162f22f26f65d0d738958524af21fcc8b4664ed0c8462a94d SHA512 8b7d7a0e5c7ac74cb37de798cd4a0553e9b01d01af4755f8c1236be456d6d6272ca505625caa7e78669307a7d67fef2fb0c268e0a50508c91186432ce74633c0
DIST nvml-wrapper-572095f631da93be8d243c73820e581676969897.gh.tar.gz 234938 BLAKE2B 91820ff38212c176027ab6fb0552efb1544e539fc0dda29e1f7d82e2cec8dce1ecd6cc499c120049869cde638ecf3918db3f73f86ea73214135e83c4bccbf8b7 SHA512 1ead616cd59058e3c2f100cc0dff9b6f4f97aeb70d30ef7d9667eef3e8b272bfae487e1c68e042680c4be8667246b4048cf8124ffe6a7011899cd2b87d8e9ec2
DIST tower-governor-9cc5a4433fa4f5fc7ffaf82ac277471d056ceef4.gh.tar.gz 31666 BLAKE2B a5e28607537049aa4d2659cd85229205b7541993e3bfa72a414ebb7ee6ef0c8f00d60b3571dda5e1d6d5174768f53618991f9a0bbaa9801648f37f7e72e0ac70 SHA512 85e5818b75d26f7a2d61f7100bbbd8d80c15b5fed0fea95bc874b7de7a874c28286e53499e9ab23cbbeb31ec9370053d8a01174aab42ac7c3c49e5cc375bd277
DIST tower-governor-fd799d86418e58179468953c80ad7094a81a9e37.gh.tar.gz 31787 BLAKE2B 452d9423efbb4230bd88dfd58418850d0ccd53d5d7a45ff5f60005f292637c296c4c67d75397a7f4a59af51028b2fa95a2ef69b372c18b1dc02408437e8aac81 SHA512 40819f6d2dd7f1471af403e0314d261d043c6fddde12c55b797412d07f0ae6db3cfb640cbe3e2ebfea1be11794ed8ded20c39ca489784a4dbbbfdead3ff2f38c

View File

@@ -0,0 +1,110 @@
# Copyright 2024-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
CRATES="
"
RUST_MIN_VER=1.86
PYTHON_COMPAT=( python3_{11..13} )
inherit cargo eapi9-ver optfeature python-single-r1 systemd
DESCRIPTION="Monitor and control your cooling and other devices (daemon)"
HOMEPAGE="https://gitlab.com/coolercontrol/coolercontrol"
MY_P="coolercontrol-${PV}"
SRC_URI="
https://gitlab.com/coolercontrol/coolercontrol/-/releases/${PV}/downloads/packages/${MY_P}.tar.gz
https://gitlab.com/coolercontrol/coolercontrol/-/releases/${PV}/downloads/packages/coolercontrold-vendor.tar.gz
-> ${P}-vendor.tar.gz
${CARGO_CRATE_URIS}
"
S="${WORKDIR}/${MY_P}/${PN}"
LICENSE="GPL-3+"
# Dependent crate licenses
LICENSE+="
AGPL-3+ Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD GPL-3+
ISC MIT UoI-NCSA Unicode-3.0 ZLIB
"
SLOT="0"
KEYWORDS="~amd64"
IUSE="liquidctl"
REQUIRED_USE="liquidctl? ( ${PYTHON_REQUIRED_USE} )"
RDEPEND="
app-arch/zstd:=
liquidctl? (
${PYTHON_DEPS}
$(python_gen_cond_dep '
app-misc/liquidctl[${PYTHON_USEDEP}]
')
)
"
DEPEND="${RDEPEND}"
QA_FLAGS_IGNORED=".*"
PATCHES=(
"${FILESDIR}"/coolercontrold-3.0.2-liquidctl.patch
)
pkg_setup() {
rust_pkg_setup
use liquidctl && python-single-r1_pkg_setup
}
src_unpack() {
# trickery to avoid double unpacking :/
A="${A[@]/${P}-vendor.tar.gz/}" cargo_src_unpack
pushd "${S}" >/dev/null || die
unpack ${P}-vendor.tar.gz
popd >/dev/null || die
}
src_prepare() {
pushd .. >/dev/null || die
default
popd >/dev/null || die
if use liquidctl; then
# Upstream solution not suitable for Gentoo where multiple python targets are available.
sed -e "s|@@PYTHON@@|${PYTHON}|" \
-i src/repositories/liquidctl/liqctld_service.rs || die
fi
}
src_configure() {
export ZSTD_SYS_USE_PKG_CONFIG=1
cargo_src_configure
}
src_install() {
cargo_src_install
einstalldocs
doinitd ../packaging/openrc/init.d/coolercontrol
doconfd ../packaging/openrc/conf.d/coolercontrol
# Match documentation and systemd name to avoid confusion
newinitd ../packaging/openrc/init.d/coolercontrol coolercontrold
newconfd ../packaging/openrc/conf.d/coolercontrol coolercontrold
systemd_dounit ../packaging/systemd/coolercontrold.service
}
pkg_postinst() {
# libdrm[video_cards_amdgpu] dlopen'd, but the feature is not really noteworthy enough for optfeature
# (more accurate gpu names for amd)
optfeature "sensors support" sys-apps/lm-sensors
if ver_replacing -lt 3.0.0; then
elog "coolercontrol-liqctld isn't packaged separately anymore. It's behind the liqtctl use flag now."
fi
}

View File

@@ -0,0 +1,34 @@
Patch to make it easy to sed in the configured python interpeter and mention the liquidctl use flag in the error message.
diff --git a/coolercontrold/src/repositories/liquidctl/liqctld_service.rs b/coolercontrold/src/repositories/liquidctl/liqctld_service.rs
index 179745d3..8cfbceb4 100644
--- a/coolercontrold/src/repositories/liquidctl/liqctld_service.rs
+++ b/coolercontrold/src/repositories/liquidctl/liqctld_service.rs
@@ -122,7 +122,7 @@ fn create_command() -> (String, &'static str) {
info!("Running liqctld inside an AppImage");
(format!("{appdir}/usr/bin/python3"), "-I")
} else {
- ("python3".to_string(), "-q")
+ ("@@PYTHON@@".to_string(), "-q")
}
}
diff --git a/coolercontrold/src/repositories/liquidctl/liquidctl_repo.rs b/coolercontrold/src/repositories/liquidctl/liquidctl_repo.rs
index 230d6391..1dca6180 100644
--- a/coolercontrold/src/repositories/liquidctl/liquidctl_repo.rs
+++ b/coolercontrold/src/repositories/liquidctl/liquidctl_repo.rs
@@ -81,10 +81,10 @@ impl LiquidctlRepo {
}
if let Err(err) = liqctld_service::verify_env().await {
let msg = format!(
- "Python liquidctl system package not detected. If you want liquidctl device \
- support, please make sure the liquidctl package is installed with your \
- distribution's package manager. If not, you may disable liquidctl support \
- to no longer see this message. {err}"
+ "Python liquidctl system package not detected or liquidctl use flag is disabled \
+ for coolercontrold. If you want liquidctl device support, please make sure \
+ the liquidctl use flag is enabled for coolercontrold. If not, you may disable \
+ liquidctl support to no longer see this message. {err}"
);
return Err(InitError::PythonEnv { msg }.into());
}