Skip to content

Commit

Permalink
dev-util/0xtools: new package; add 1.2.4
Browse files Browse the repository at this point in the history
Signed-off-by: Maciej Barć <[email protected]>
  • Loading branch information
xgqt committed Sep 15, 2023
1 parent 76880cc commit 5912a2b
Show file tree
Hide file tree
Showing 3 changed files with 90 additions and 0 deletions.
62 changes: 62 additions & 0 deletions dev-util/0xtools/0xtools-1.2.4.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

PYTHON_COMPAT=( python3_{10..12} )

inherit python-single-r1 systemd toolchain-funcs

DESCRIPTION="Always-on profiling for production systems"
HOMEPAGE="https://0x.tools/
https://github.com/tanelpoder/0xtools/"

if [[ ${PV} == *9999* ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/tanelpoder/${PN}.git"
else
SRC_URI="https://github.com/tanelpoder/${PN}/archive/v${PV}.tar.gz
-> ${P}.tar.gz"
KEYWORDS="~amd64 ~x86"
fi

LICENSE="GPL-2+"
SLOT="0"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"

RDEPEND="${PYTHON_DEPS}"
BDEPEND="${RDEPEND}"

DOCS=( CHANGELOG.md README.md )

src_compile() {
emake CC="$(tc-getCC)" CFLAGS="${CFLAGS} ${LDFLAGS}"

sed -e "/^sys.path.append/s|(.*)|('$(python_get_sitedir)/${PN}')|" \
-i bin/psn -i bin/schedlat || die
}

src_install() {
# C executables and scripts
exeinto /usr/bin
doexe bin/{run_xcapture.sh,run_xcpu.sh,vmtop,xcapture}

# Python executables
python_domodule lib/${PN}
python_doscript bin/psn
python_doscript bin/schedlat

# Service
systemd_dounit xcapture.service
systemd_dounit xcapture-restart.service
systemd_dounit xcapture-restart.timer

# Service config
insinto /etc/default
newins xcapture.default xcapture

# Service logs
keepdir /var/log/xcapture

einstalldocs
}
1 change: 1 addition & 0 deletions dev-util/0xtools/Manifest
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
DIST 0xtools-1.2.4.tar.gz 61830 BLAKE2B 6221ded289bc4cf4c39527f35d1ad3ee43f41a60a4a9877056a5ff74fcdd203575d96edbf13af1d32bcc49465d87a2133a8dbec813ae9a5bb233b5fe2e4a36b3 SHA512 f835de65e783d9eb4b26f38be155961a2f4da91639c7e1e39df71cf8be17d27987c8749e44b7b6affe6cdc45c5f65c90be5b2cf22b2f37dcc2eb45452a384ff3
27 changes: 27 additions & 0 deletions dev-util/0xtools/metadata.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">

<pkgmetadata>
<maintainer type="person">
<email>[email protected]</email>
<name>Maciej Barć</name>
</maintainer>
<longdescription>
0x.tools is a set of open-source utilities for analyzing application
performance on Linux. It has a goal of deployment simplicity and minimal
dependencies, to reduce friction of systematic troubleshooting. There’s no
need to upgrade the OS, install kernel modules, heavy monitoring
frameworks, Java agents or databases. These tools also work on
over-decade-old Linux kernels, like version 2.6.18 from 14 years ago.
0x.tools allow you to measure individual thread level activity, like thread
sleep states, currently executing system calls and kernel wait locations.
Additionally, you can drill down into CPU usage of any thread or the system
as a whole. You can be systematic in your troubleshooting - no need for
guessing or clever metric-voodoo tricks with traditional system-level
statistics.
</longdescription>
<upstream>
<bugs-to>https://github.com/tanelpoder/0xtools/issues</bugs-to>
<remote-id type="github">tanelpoder/0xtools</remote-id>
</upstream>
</pkgmetadata>

0 comments on commit 5912a2b

Please sign in to comment.