summary refs log tree commit diff
diff options
context:
space:
mode:
authorAndy Tai <atai@atai.org>2023-04-30 18:06:54 -0700
committerLudovic Courtès <ludo@gnu.org>2023-06-14 23:23:12 +0200
commit489d14c12e11cdfeb1730f043dc144f7e60c3d26 (patch)
tree608945f3ec63342bf6db8da3675bc7a987359d7b
parentc1ef5df61d1ef81780dcf063eab65f2463b9c762 (diff)
downloadguix-489d14c12e11cdfeb1730f043dc144f7e60c3d26.tar.gz
gnu: Add systemtap
* gnu/packages/instrumentation.scm (systemtap): New variable

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r--gnu/packages/instrumentation.scm36
1 files changed, 36 insertions, 0 deletions
diff --git a/gnu/packages/instrumentation.scm b/gnu/packages/instrumentation.scm
index 9bb633bcce..5d862b5df1 100644
--- a/gnu/packages/instrumentation.scm
+++ b/gnu/packages/instrumentation.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2021, 2022 Olivier Dion <olivier.dion@polymtl.ca>
+;;; Copyright © 2023 Andy Tai <atai@atai.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -24,6 +25,7 @@
   #:use-module (gnu packages boost)
   #:use-module (gnu packages commencement)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages cpio)
   #:use-module (gnu packages datastructures)
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages elf)
@@ -498,6 +500,40 @@ analysis and instrumentation based on Linux perf_events (aka perf) and
 ftrace.")
     (license (list license:gpl2))))
 
+(define-public systemtap
+  (package
+    (name "systemtap")
+    (version "4.9")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://sourceware.org/ftp/systemtap/releases/" name "-"
+                    version ".tar.gz"))
+              (sha256
+               (base32
+                "161smpv4ajqfncmgylvs89bbix1id60nf0g7clmga2lxxax3646h"))))
+    (build-system gnu-build-system)
+    (native-inputs (list cpio python))
+    (inputs (list elfutils))
+
+    (home-page "https://sourceware.org/systemtap/")
+    (synopsis "GNU/Linux trace/probe tool")
+    (description
+     "SystemTap provides infrastructure to simplify the
+gathering of information about the running Linux system.  This assists
+diagnosis of a performance or functional problem.  SystemTap eliminates the
+need for the developer to go through the tedious and disruptive
+instrument, recompile, install, and reboot sequence that may be otherwise
+required to collect data.
+
+SystemTap provides a simple command line interface and scripting language for
+writing instrumentation for a live running kernel plus user-space applications.
+We are publishing samples, as well as enlarging the internal \"tapset\" script
+library to aid reuse and abstraction.  SystemTap is a tool for complex
+tasks that may require live analysis, programmable on-line response, and
+whole-system symbolic access, and can also handle simple tracing jobs.")
+    (license license:gpl2+)))
+
 (define-public uftrace
   (package
     (name "uftrace")