From 2cfae1561821267e7b7bd8ce45458c9b66c52209 Mon Sep 17 00:00:00 2001 From: Thomas Kramer Date: Wed, 14 Jan 2026 22:44:24 +0000 Subject: [PATCH] gnu: Add gdstk and python-gdstk. * gnu/packages/electronics.scm (python-gdstk): New variable. * gnu/packages/electronics.scm (gdstk): New variable. Change-Id: I7bacf68b82bc6ad4e920a4936bd1660d5626e826 --- gnu/packages/electronics.scm | 37 ++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm index 7fc49aa8bd8..0cc00fc6b46 100644 --- a/gnu/packages/electronics.scm +++ b/gnu/packages/electronics.scm @@ -2203,6 +2203,43 @@ programming language, as well as evaluation board definitions and a System on Chip toolkit.") (license license:bsd-3))) +(define-public gdstk + (package + (name "gdstk") + (version "0.9.62") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/heitzmann/gdstk") + (commit (string-append "v" version)))) + (sha256 + (base32 "0q07g7h613yqszgs49vbnran3pz6yayc0hyisdnp4fi60cyzsz1l")) + (file-name (git-file-name name version)))) + (build-system cmake-build-system) + (inputs (list zlib qhull)) + (home-page "https://heitzmann.github.io/gdstk/") + (synopsis "Library for creation and manipulation of GDSII files") + (description + "@code{gdstk} is a library for creation and manipulation of GDSII layout files +which are commonly used for @acronym{EDA, elecronic design automation} and chip design.") + (license license:boost1.0))) + +(define-public python-gdstk + (package + (inherit gdstk) + (name "python-gdstk") + (build-system pyproject-build-system) + (arguments + '(#:tests? #f)) ;TODO fix tests + ;; (propagated-inputs (list python-numpy python-typing-extensions)) + (native-inputs (list cmake-minimal python-scikit-build-core)) + (inputs (list zlib python-numpy qhull)) + (synopsis "Python module for creation and manipulation of GDSII files") + (description + "@code{python-gdstk} is a Python library for creation and manipulation of GDSII layout files +which are commonly used for @acronym{EDA, elecronic design automation} and chip design."))) + (define-public python-klayout (package (name "python-klayout")