summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-debug/sysdig')
-rw-r--r--dev-debug/sysdig/Manifest2
-rw-r--r--dev-debug/sysdig/files/0.29.3-libs-gcc13.patch28
-rw-r--r--dev-debug/sysdig/metadata.xml20
-rw-r--r--dev-debug/sysdig/sysdig-0.29.3-r1.ebuild91
-rw-r--r--dev-debug/sysdig/sysdig-0.29.3-r2.ebuild96
5 files changed, 237 insertions, 0 deletions
diff --git a/dev-debug/sysdig/Manifest b/dev-debug/sysdig/Manifest
new file mode 100644
index 000000000000..234cd960eb7a
--- /dev/null
+++ b/dev-debug/sysdig/Manifest
@@ -0,0 +1,2 @@
+DIST falcosecurity-libs-e5c53d648f3c4694385bbe488e7d47eaa36c229a.tar.gz 816972 BLAKE2B b47ae6a7677935500ebdab8aea7f4c49ef50b7175ec097e7213a1f041ac2b5aa642379924927ec12c84271016e9ab9d191c0c1d4ffacd6ade58b7a03c37f9221 SHA512 65e5916e5f9507fd867a5e9ba3b2670a1b73b7672a22479d3019e948a52ad74441d7e2ce1c74ebd0fdbd1ce66808efa49f285bd5180bceae9d4e6730a60787ce
+DIST sysdig-0.29.3.tar.gz 306984 BLAKE2B 51e9a0a085fa91d65963fd33e00b139d97d22b551de8ca85e48b4af73991897378970dfde54754a970e79300f06a54bad1d9c8fdfdb44f24150d0b21077e423f SHA512 1dbe1195f245921c671ed2343325aee79fd0cde34681b9cab445135662d3ed7c84884e46b2270c0e868b5de1a3f2800b84e8bf9fcf0dfe581dd17e2e633f46d8
diff --git a/dev-debug/sysdig/files/0.29.3-libs-gcc13.patch b/dev-debug/sysdig/files/0.29.3-libs-gcc13.patch
new file mode 100644
index 000000000000..ce1a686cc65c
--- /dev/null
+++ b/dev-debug/sysdig/files/0.29.3-libs-gcc13.patch
@@ -0,0 +1,28 @@
+
+Manual backport of the upstream fix at:
+https://github.com/falcosecurity/libs/commit/1406858fa5223d980e66e2a5fb2c1b014c9db5c8
+
+diff --git libs-e5c53d648f3c4694385bbe488e7d47eaa36c229a-orig/userspace/libsinsp/filter_value.h libs-e5c53d648f3c4694385bbe488e7d47eaa36c229a/userspace/libsinsp/filter_value.h
+index 47f5367..6cc8b83 100644
+--- libs-e5c53d648f3c4694385bbe488e7d47eaa36c229a-orig/userspace/libsinsp/filter_value.h
++++ libs-e5c53d648f3c4694385bbe488e7d47eaa36c229a/userspace/libsinsp/filter_value.h
+@@ -17,6 +17,7 @@ limitations under the License.
+
+ #pragma once
+
++#include <cstdint>
+ #include <string.h>
+ #include <utility>
+
+diff --git libs-e5c53d648f3c4694385bbe488e7d47eaa36c229a-orig/userspace/libsinsp/sinsp.h libs-e5c53d648f3c4694385bbe488e7d47eaa36c229a/userspace/libsinsp/sinsp.h
+index c15c13c..f9f9f45 100644
+--- libs-e5c53d648f3c4694385bbe488e7d47eaa36c229a-orig/userspace/libsinsp/sinsp.h
++++ libs-e5c53d648f3c4694385bbe488e7d47eaa36c229a/userspace/libsinsp/sinsp.h
+@@ -56,6 +56,7 @@ limitations under the License.
+
+ #define __STDC_FORMAT_MACROS
+
++#include <cstdint>
+ #include <string>
+ #include <unordered_map>
+ #include <map>
diff --git a/dev-debug/sysdig/metadata.xml b/dev-debug/sysdig/metadata.xml
new file mode 100644
index 000000000000..c16f8ef41665
--- /dev/null
+++ b/dev-debug/sysdig/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>holger@applied-asynchrony.com</email>
+ <name>Holger Hoffstätte</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <use>
+ <flag name="modules">Build kernel modules needed for tracing local
+ events. Disable this only if you intend to use sysdig purely
+ to work with dumpfiles.</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">draios/sysdig</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-debug/sysdig/sysdig-0.29.3-r1.ebuild b/dev-debug/sysdig/sysdig-0.29.3-r1.ebuild
new file mode 100644
index 000000000000..c84381acb78b
--- /dev/null
+++ b/dev-debug/sysdig/sysdig-0.29.3-r1.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( luajit )
+
+inherit bash-completion-r1 cmake lua-single
+
+DESCRIPTION="A system exploration and troubleshooting tool"
+HOMEPAGE="https://sysdig.com/"
+
+# For now we need to bump this version of falcosecurity/libs manually;
+# check the used git revision in <src>/cmake/modules/falcosecurity-libs.cmake
+LIBS_COMMIT="e5c53d648f3c4694385bbe488e7d47eaa36c229a"
+
+SRC_URI="https://github.com/draios/sysdig/archive/${PV}.tar.gz -> ${P}.tar.gz
+ https://github.com/falcosecurity/libs/archive/${LIBS_COMMIT}.tar.gz -> falcosecurity-libs-${LIBS_COMMIT}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="+modules"
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+
+RDEPEND="${LUA_DEPS}
+ app-misc/jq
+ dev-cpp/tbb:=
+ dev-cpp/yaml-cpp:=
+ dev-libs/libb64:=
+ dev-libs/openssl:=
+ dev-libs/protobuf:=
+ net-dns/c-ares:=
+ net-libs/grpc:=
+ net-misc/curl
+ sys-libs/ncurses:=
+ sys-libs/zlib:="
+
+DEPEND="${RDEPEND}
+ dev-cpp/nlohmann_json
+ dev-cpp/valijson
+ virtual/os-headers"
+
+# for now pin the driver to the same ebuild version
+PDEPEND="modules? ( =dev-util/scap-driver-${PV}* )"
+
+src_prepare() {
+ # manually apply patch to falcosecurity-libs dependency
+ pushd "${WORKDIR}" && eapply -p0 "${FILESDIR}/${PV}-libs-gcc13.patch" && popd
+
+ sed -i -e 's:-ggdb::' CMakeLists.txt || die
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ # don't build driver
+ -DBUILD_DRIVER=OFF
+
+ # libscap examples are not installed or really useful
+ -DBUILD_LIBSCAP_EXAMPLES=OFF
+
+ # point to the falcosecurity-libs tree
+ -DFALCOSECURITY_LIBS_SOURCE_DIR="${WORKDIR}"/libs-${LIBS_COMMIT}
+
+ # explicitly set version
+ -DSYSDIG_VERSION=${PV}
+
+ # unbundle the deps
+ -DUSE_BUNDLED_DEPS=OFF
+
+ # add valijson include path to prevent downloading
+ -DVALIJSON_INCLUDE="${ESYSROOT}"/usr/include
+
+ # enable chisels
+ -DWITH_CHISEL=ON
+ )
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ # remove driver headers
+ rm -r "${ED}"/usr/src || die
+
+ # move bashcomp to the proper location
+ dobashcomp "${ED}"/usr/etc/bash_completion.d/sysdig || die
+ rm -r "${ED}"/usr/etc || die
+}
diff --git a/dev-debug/sysdig/sysdig-0.29.3-r2.ebuild b/dev-debug/sysdig/sysdig-0.29.3-r2.ebuild
new file mode 100644
index 000000000000..08c008f0da6e
--- /dev/null
+++ b/dev-debug/sysdig/sysdig-0.29.3-r2.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( luajit )
+
+inherit bash-completion-r1 cmake lua-single
+
+DESCRIPTION="A system exploration and troubleshooting tool"
+HOMEPAGE="https://sysdig.com/"
+
+# For now we need to bump this version of falcosecurity/libs manually;
+# check the used git revision in <src>/cmake/modules/falcosecurity-libs.cmake
+LIBS_COMMIT="e5c53d648f3c4694385bbe488e7d47eaa36c229a"
+
+SRC_URI="https://github.com/draios/sysdig/archive/${PV}.tar.gz -> ${P}.tar.gz
+ https://github.com/falcosecurity/libs/archive/${LIBS_COMMIT}.tar.gz -> falcosecurity-libs-${LIBS_COMMIT}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+modules"
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+
+RDEPEND="${LUA_DEPS}
+ app-misc/jq
+ dev-cpp/tbb:=
+ dev-cpp/yaml-cpp:=
+ dev-libs/libb64:=
+ dev-libs/openssl:=
+ dev-libs/protobuf:=
+ net-dns/c-ares:=
+ net-libs/grpc:=
+ net-misc/curl
+ sys-libs/ncurses:=
+ sys-libs/zlib:="
+
+DEPEND="${RDEPEND}
+ dev-cpp/nlohmann_json
+ dev-cpp/valijson
+ virtual/os-headers"
+
+# for now pin the driver to the same ebuild version
+PDEPEND="modules? ( =dev-util/scap-driver-${PV}* )"
+
+src_prepare() {
+ # manually apply patch to falcosecurity-libs dependency
+ pushd "${WORKDIR}" && \
+ eapply -p0 "${FILESDIR}/${PV}-libs-gcc13.patch" && \
+ popd
+
+ # force C++14 standard for libs & main
+ sed -i -e 's:-std=c++0x:-std=c++14:' "${WORKDIR}"/libs-${LIBS_COMMIT}/cmake/modules/CompilerFlags.cmake || die
+ sed -i -e 's:-std=c++0x:-std=c++14:' -e 's:-ggdb::' CMakeLists.txt || die
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ # don't build driver
+ -DBUILD_DRIVER=OFF
+
+ # libscap examples are not installed or really useful
+ -DBUILD_LIBSCAP_EXAMPLES=OFF
+
+ # point to the falcosecurity-libs tree
+ -DFALCOSECURITY_LIBS_SOURCE_DIR="${WORKDIR}"/libs-${LIBS_COMMIT}
+
+ # explicitly set version
+ -DSYSDIG_VERSION=${PV}
+
+ # unbundle the deps
+ -DUSE_BUNDLED_DEPS=OFF
+
+ # add valijson include path to prevent downloading
+ -DVALIJSON_INCLUDE="${ESYSROOT}"/usr/include
+
+ # enable chisels
+ -DWITH_CHISEL=ON
+ )
+
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+
+ # remove driver headers
+ rm -r "${ED}"/usr/src || die
+
+ # move bashcomp to the proper location
+ dobashcomp "${ED}"/usr/etc/bash_completion.d/sysdig || die
+ rm -r "${ED}"/usr/etc || die
+}