Subject: [bug#78425] [PATCH electronics-team v2] gnu: Add python-apycula.

From: Cayetano Santos <[email-masked]>
Date: Wed, 14 May 2025 14:24:12 +0200

From: Cayetano Santos via Guix-patches via <[email-masked]>

* gnu/packages/electronics.scm (python-apycula): New variable.

Change-Id: I8e65416c1a555be189e9b8433d1ec7165aee16e9
Signed-off-by: Cayetano Santos <[email-masked]>
---
 gnu/packages/electronics.scm | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm
index da37a9fb33..4dc9264fbf 100644
--- a/gnu/packages/electronics.scm
+++ b/gnu/packages/electronics.scm
@@ -29,6 +29,7 @@ (define-module (gnu packages electronics)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system pyproject)
+  #:use-module (guix build-system python)
   #:use-module (guix download)
   #:use-module (guix gexp)
   #:use-module (guix git-download)
@@ -563,6 +564,36 @@ (define-public pulseview
 for sigrok.")
     (license license:gpl3+)))
 
+(define-public python-apycula
+  (package
+    (name "python-apycula")
+    (version "0.18")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "Apycula" version))
+       (sha256
+        (base32 "167jif24568q5b9d9zdrp60c1qnjxmanhld6q3wx251i3sgrfilx"))))
+    (build-system pyproject-build-system)
+    (arguments
+     (list
+      #:tests? #f                       ;requires network
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'sanity-check-fix
+            (lambda _
+              (substitute* "setup.py"
+                (("'gowin_bba")
+                 "# 'gowin_bbva")))))))
+    (propagated-inputs (list python-crc))
+    (native-inputs (list python-setuptools python-wheel))
+    (home-page "https://github.com/YosysHQ/apicula/")
+    (synopsis "Gowin FPGA bitstream format")
+    (description
+     "The project Apycula provides tools to support development and
+generating bitstreams with Gowin FPGAs.")
+    (license license:expat)))
+
 (define-public python-edalize
   (package
     (name "python-edalize")

base-commit: 5f5d84beccc180f1b51474c0e47eb6e0d0c9175f
-- 
2.49.0