summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wendler <polynomial-c@gentoo.org>2022-05-21 10:20:22 +0200
committerLars Wendler <polynomial-c@gentoo.org>2022-05-21 10:34:59 +0200
commit5325dae5e32f45af0a3c9805d7e37ba3b594f1b6 (patch)
tree89ed1b254f3462da4bd3b0af3121f4fd52b8382b
parentdev-util/cucumber-wire: sparc stable wrt bug #846524 (diff)
downloadgentoo-5325dae5.tar.gz
gentoo-5325dae5.tar.bz2
gentoo-5325dae5.zip
sys-process/htop: Added live ebuild
Introducing cap_sys_ptrace file capability for htop Bug: https://bugs.gentoo.org/846635 Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
-rw-r--r--sys-process/htop/htop-9999.ebuild113
1 files changed, 113 insertions, 0 deletions
diff --git a/sys-process/htop/htop-9999.ebuild b/sys-process/htop/htop-9999.ebuild
new file mode 100644
index 000000000000..f8aa53177141
--- /dev/null
+++ b/sys-process/htop/htop-9999.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} )
+
+inherit autotools fcaps linux-info python-any-r1 xdg-utils
+
+DESCRIPTION="interactive process viewer"
+HOMEPAGE="https://htop.dev/ https://github.com/htop-dev/htop"
+if [[ ${PV} == *9999 ]] ; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/htop-dev/htop.git"
+else
+ SRC_URI="https://github.com/htop-dev/${PN}/archive/${PV/_}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+fi
+
+LICENSE="BSD GPL-2+"
+SLOT="0"
+IUSE="caps debug delayacct hwloc lm-sensors llvm-libunwind openvz unicode unwind vserver"
+
+BDEPEND="virtual/pkgconfig"
+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}
+ ${PYTHON_DEPS}"
+
+DOCS=( ChangeLog README )
+
+CONFIG_CHECK="~TASKSTATS ~TASK_XACCT ~TASK_IO_ACCOUNTING ~CGROUPS"
+
+S="${WORKDIR}/${P/_}"
+
+pkg_setup() {
+ if ! has_version sys-process/lsof ; then
+ ewarn "To use lsof features in htop (what processes are accessing"
+ ewarn "what files), you must have sys-process/lsof installed."
+ fi
+
+ python-any-r1_pkg_setup
+ linux-info_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ eautoreconf
+}
+
+src_configure() {
+ if [[ ${CBUILD} != ${CHOST} ]] ; then
+ export ac_cv_file__proc_{meminfo,stat}=yes #328971
+ 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
+
+ fcaps cap_sys_ptrace /usr/bin/${PN}
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}