From 01a9c43ecaee76d39e579d713b82765abe95f719 Mon Sep 17 00:00:00 2001
From: Pkill -9 <pkill9@runbox.com>
Date: Sun, 17 Feb 2019 10:09:52 +0000
Subject: [PATCH] gnu: Add scanmem.
* gnu/packages/debug.scm (scanmem): New variable.
---
gnu/packages/debug.scm | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)
@@ -30,11 +30,13 @@
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages flex)
+ #:use-module (gnu packages glib)
#:use-module (gnu packages golang)
#:use-module (gnu packages code)
#:use-module (gnu packages llvm)
#:use-module (gnu packages perl)
#:use-module (gnu packages pretty-print)
+ #:use-module (gnu packages readline)
#:use-module (gnu packages virtualization)
#:use-module (ice-9 match)
#:use-module (srfi srfi-1))
@@ -336,3 +338,36 @@ conditions.")
intercepting file operations and changing random bits in the program's
input. Zzuf's behaviour is deterministic, making it easy to reproduce bugs.")
(license (non-copyleft "http://www.wtfpl.net/txt/copying/"))))
+
+(define-public scanmem
+ (package
+ (name "scanmem")
+ (version "0.17")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/scanmem/scanmem")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "17p8sh0rj8yqz36ria5bp48c8523zzw3y9g8sbm2jwq7sc27i7s9"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("libtool" ,libtool)
+ ("intltool" ,intltool)
+ ("automake" ,automake)
+ ("autoconf" ,autoconf)))
+ (inputs
+ `(("readline" ,readline)))
+ (home-page "https://github.com/scanmem/scanmem")
+ (synopsis "Memory scanner")
+ (description "Scanmem is a debugging utility designed to isolate the address
+ of an arbitrary variable in an executing process. scanmem simply needs to be
+told the pid of the process and the value of the variable at several different
+ times.
+
+After several scans of the process, scanmem isolates the position of the
+variable and allows you to modify its value.")
+ (license gpl3)))
--
2.20.1