summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-process/htop')
-rw-r--r--sys-process/htop/Manifest1
-rw-r--r--sys-process/htop/files/htop-3.3.0-display-running-tasks.patch24
-rw-r--r--sys-process/htop/htop-3.3.0.ebuild109
3 files changed, 134 insertions, 0 deletions
diff --git a/sys-process/htop/Manifest b/sys-process/htop/Manifest
index a9d7f274d4ea..04591b8a57dd 100644
--- a/sys-process/htop/Manifest
+++ b/sys-process/htop/Manifest
@@ -1 +1,2 @@
DIST htop-3.2.2.tar.xz 384820 BLAKE2B da3b4aea4e5d32d4b432e0f45089e7795b59d9a947dc4af76cb6b7f9137e6d45901c8169c8d2c796a3f43162c1e3c8f1e18bd17f20750637e06fe4c3ebe22caa SHA512 59f3f06677076262e25a478552e4438ce37028e2f064d3fb78653d3213b48ae4d78c7e0d62ee785a4ed3c6c99b7faafd9afab94c4350a4e5c5843cef81aaf489
+DIST htop-3.3.0.tar.xz 337956 BLAKE2B dabad4a4e973c5e0e9478e3b6cd1002369a3a3c8f152dbb72f0294ea3b8d92bbb79ab21b23ee997f2c142d5095e81706f3dfac023f27d9b3c83739754c3bf011 SHA512 f98d4a4370954969d0ae16993d80ca5ce48670a711f17445de979513ac9caf2b197291732d937ae07d48709ded660ea09601b3a41ad7c48b3abb87e7a67deb65
diff --git a/sys-process/htop/files/htop-3.3.0-display-running-tasks.patch b/sys-process/htop/files/htop-3.3.0-display-running-tasks.patch
new file mode 100644
index 000000000000..ac03adec2998
--- /dev/null
+++ b/sys-process/htop/files/htop-3.3.0-display-running-tasks.patch
@@ -0,0 +1,24 @@
+https://github.com/htop-dev/htop/issues/1369
+https://github.com/htop-dev/htop/commit/b6b9384678fa111d47a8d3074c31490863619d12
+
+From b6b9384678fa111d47a8d3074c31490863619d12 Mon Sep 17 00:00:00 2001
+From: Benny Baumann <BenBE@geshi.org>
+Date: Thu, 11 Jan 2024 21:09:43 +0100
+Subject: [PATCH] Fix the display of number of running tasks
+
+This was broken by a logic change in 72235d8e.
+
+Fixes: #1369
+--- a/linux/LinuxMachine.c
++++ b/linux/LinuxMachine.c
+@@ -489,8 +489,7 @@ static void LinuxMachine_scanCPUTime(LinuxMachine* this) {
+ char buffer[PROC_LINE_LENGTH + 1];
+ while (fgets(buffer, sizeof(buffer), file)) {
+ if (String_startsWith(buffer, "procs_running")) {
+- ProcessTable* pt = (ProcessTable*) super->processTable;
+- pt->runningTasks = strtoul(buffer + strlen("procs_running"), NULL, 10);
++ this->runningTasks = strtoul(buffer + strlen("procs_running"), NULL, 10);
+ break;
+ }
+ }
+
diff --git a/sys-process/htop/htop-3.3.0.ebuild b/sys-process/htop/htop-3.3.0.ebuild
new file mode 100644
index 000000000000..511fff1b3fac
--- /dev/null
+++ b/sys-process/htop/htop-3.3.0.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# We avoid xdg.eclass here because it'll pull in glib, desktop utils on
+# htop which is often used on headless machines. bug #787470
+inherit linux-info optfeature xdg-utils
+
+DESCRIPTION="Interactive process viewer"
+HOMEPAGE="https://htop.dev/ https://github.com/htop-dev/htop"
+if [[ ${PV} == *9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/htop-dev/htop.git"
+ inherit autotools git-r3
+else
+ SRC_URI="https://github.com/htop-dev/htop/releases/download/${PV}/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+fi
+
+S="${WORKDIR}/${P/_}"
+
+LICENSE="BSD GPL-2+"
+SLOT="0"
+IUSE="caps debug delayacct hwloc lm-sensors llvm-libunwind openvz unicode unwind vserver"
+
+RDEPEND="
+ sys-libs/ncurses:=[unicode(+)?]
+ hwloc? ( sys-apps/hwloc:= )
+ unwind? (
+ !llvm-libunwind? ( sys-libs/libunwind:= )
+ llvm-libunwind? ( sys-libs/llvm-libunwind:= )
+ )
+ kernel_linux? (
+ caps? ( sys-libs/libcap )
+ delayacct? ( dev-libs/libnl:3 )
+ lm-sensors? ( sys-apps/lm-sensors )
+ )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+DOCS=( ChangeLog README )
+
+CONFIG_CHECK="~TASKSTATS ~TASK_XACCT ~TASK_IO_ACCOUNTING ~CGROUPS"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.3.0-display-running-tasks.patch
+)
+
+src_prepare() {
+ default
+
+ if [[ ${PV} == 9999 ]] ; then
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ if [[ ${CBUILD} != ${CHOST} ]] ; then
+ # bug #328971
+ export ac_cv_file__proc_{meminfo,stat}=yes
+ fi
+
+ local myeconfargs=(
+ --enable-unicode
+ $(use_enable debug)
+ $(use_enable hwloc)
+ $(use_enable !hwloc affinity)
+ $(use_enable openvz)
+ $(use_enable unicode)
+ $(use_enable unwind)
+ $(use_enable vserver)
+ )
+
+ if use kernel_linux ; then
+ myeconfargs+=(
+ $(use_enable caps capabilities)
+ $(use_enable delayacct)
+ $(use_enable lm-sensors sensors)
+ )
+ else
+ if use kernel_Darwin ; then
+ # Upstream default to checking but --enable-affinity
+ # overrides this. Simplest to just disable on Darwin
+ # given it works on BSD anyway.
+ myeconfargs+=( --disable-affinity )
+ fi
+
+ myeconfargs+=(
+ --disable-capabilities
+ --disable-delayacct
+ --disable-sensors
+ )
+ fi
+
+ econf "${myeconfargs[@]}"
+}
+
+pkg_postinst() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+
+ optfeature "Viewing processes accessing certain files" sys-process/lsof
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}