Subject: [bug#65932] [PATCH] gnu: Add blinkenlights.

From: "B. Wilson" <[email-masked]>
Date: Thu, 14 Sep 2023 14:10:47 +0900

* gnu/packages/assembly.scm (blinkenlights): New variable.
---
 gnu/packages/assembly.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/assembly.scm b/gnu/packages/assembly.scm
index 81e38c3f41..71271f3659 100644
--- a/gnu/packages/assembly.scm
+++ b/gnu/packages/assembly.scm
@@ -13,6 +13,7 @@
 ;;; Copyright © 2021 Guillaume Le Vaillant <[email-masked]>
 ;;; Copyright © 2022 Felix Gruber <[email-masked]>
 ;;; Copyright © 2022 Andy Tai <[email-masked]>
+;;; Copyright © 2023 B. Wilson <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -583,3 +584,37 @@ (define-public neon2sse
 SSE4.2) intrinsic functions as defined in corresponding x86 compilers headers
 files.")
       (license license:bsd-2))))
+
+(define-public blinkenlights
+  (package
+    (name "blinkenlights")
+    (version "1.0.0")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/jart/blink.git")
+               (commit version)))
+        (sha256
+          (base32 "0dgfqy5z1vbpgbf39f14ngkqmw4gi3hsyihi4sh1qcbp9gnqpg2v"))
+        (file-name (git-file-name name version))))
+    (build-system gnu-build-system)
+    (arguments
+      (list
+        #:tests? #f  ; Tests require network access
+        #:phases
+        #~(modify-phases %standard-phases
+          ;; Call ./configure without --enable-fast-install argument, which
+          ;; causes the script to fail with an "unsupported option" error.
+          (replace 'configure
+            (lambda* (#:key inputs outputs #:allow-other-keys)
+              (invoke "./configure"
+                      (string-append "CC=" #$(cc-for-target))
+                      (string-append "--prefix=" (assoc-ref outputs "out"))))))))
+    (home-page "https://justine.lol/blinkenlights/")
+    (synopsis "TUI emulator for x86-64-linux programs")
+    (description "Blinkenlights is a command line debugger that focuses on
+visualizing how software changes memory.  It's able to emulate statically
+linked i8086 and x86_64-pc-linux-gnu programs on the Linux, Mac, Windows,
+FreeBSD, NetBSD, and OpenBSD platforms.")
+    (license license:isc)))
-- 
2.41.0