Subject: [bug#76463] [PATCH] gnu: Add aacircuit.

From: Evgeny Pisemsky <[email-masked]>
Date: Fri, 21 Feb 2025 12:12:07 +0300

* gnu/packages/engineering.scm (aacircuit): New variable.

Change-Id: I0f44b1037866c729fe1d29a52d9447f6cbea6704
---
 gnu/packages/engineering.scm | 50 ++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index 234f4a2b03..40309f45f4 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -176,6 +176,56 @@ (define-module (gnu packages engineering)
   #:use-module (gnu packages xorg)
   #:use-module ((srfi srfi-1) #:hide (zip)))
 
+(define-public aacircuit
+  (let ((commit "18635c846754b6219da1a2ceb8977714f70004d0")
+        (revision "0"))
+    (package
+      (name "aacircuit")
+      (version (git-version "0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/Blokkendoos/AACircuit")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "07agb7fbpbq74zm27j9b00imr46q6kpwhxzmmffw2s9scv80c1km"))))
+      (build-system pyproject-build-system)
+      (arguments
+       (list
+        #:phases
+        #~(modify-phases %standard-phases
+            (replace 'check
+              (lambda* (#:key tests? #:allow-other-keys)
+                (when tests?
+                  ;; Exclude tests intended for visual review.
+                  (setenv "NOSE_EXCLUDE"
+                          (string-join '("test_export_pdf"
+                                         "test_import_aacircuit_export_pdf")
+                                       ","))
+                  (setenv "HOME" "/tmp")
+                  (invoke "xvfb-run" "./testrunner.sh")))))))
+      (native-inputs (list python-flake8
+                           python-nose
+                           python-setuptools
+                           python-wheel
+                           xvfb-run))
+      (propagated-inputs (list gtk+
+                               python-bresenham
+                               python-platformdirs
+                               python-pycairo
+                               python-pyclip
+                               python-pygobject
+                               python-pypubsub))
+      (home-page "https://github.com/Blokkendoos/AACircuit")
+      (synopsis "Draw electronic circuits with ASCII characters")
+      (description
+       "This is a pythonized, kind of reverse engineered version of original AACircuit
+written by Andreas Weber in Borland Delphi.  The idea and GUI layout are also
+taken from the original.")
+      (license license:gpl3+))))
+
 (define-public cutecom
   (package
     (name "cutecom")

base-commit: 38b4358f4d84cafa54deff77dee6fafac3e03864
-- 
2.48.1