From 0c458e27df528a3f8f4273e8739564e7f71b0692 Mon Sep 17 00:00:00 2001 From: Cayetano Santos Date: Mon, 4 Aug 2025 21:11:12 +0200 Subject: [PATCH] gnu: qucs-s: Move to electronics. * gnu/packages/engineering.scm (qucs-s): Move from here ... * gnu/packages/electronics.scm: ... to here. Change-Id: I6a4827b674a4eab9668cacea9fa0076bc9f887cf Signed-off-by: Maxim Cournoyer --- gnu/packages/electronics.scm | 60 ++++++++++++++++++++++++++++++++++-- gnu/packages/engineering.scm | 57 ---------------------------------- 2 files changed, 58 insertions(+), 59 deletions(-) diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm index 89d8604c9d95d11347b5203e322b973193da4dea..6061b968ba04e30b84e707625df9265e5092ddab 100644 --- a/gnu/packages/electronics.scm +++ b/gnu/packages/electronics.scm @@ -1,16 +1,17 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2017 Theodoros Foradis +;;; Copyright © 2016, 2017, 2018 Theodoros Foradis ;;; Copyright © 2018–2021 Tobias Geerinckx-Rice ;;; Copyright © 2019 Clément Lassieur ;;; Copyright © 2021 Efraim Flashner ;;; Copyright © 2021 Leo Famulari -;;; Copyright © 2022, 2023 Maxim Cournoyer +;;; Copyright © 2022, 2023, 2025 Maxim Cournoyer ;;; Copyright © 2024 Juliana Sims ;;; Copyright © 2025 Cayetano Santos ;;; Copyright © 2025 Sharlatan Hellseher ;;; Copyright © 2022 Konstantinos Agiannis ;;; Copyright © 2018-2021 Tobias Geerinckx-Rice ;;; Copyright © 2015-2025 Ricardo Wurmus +;;; Copyright © 2022, 2024, 2025 Artyom V. Poptsov ;;; ;;; This file is part of GNU Guix. ;;; @@ -33,6 +34,7 @@ #:use-module (guix build-system glib-or-gtk) #:use-module (guix build-system gnu) #:use-module (guix build-system pyproject) + #:use-module (guix build-system qt) #:use-module (guix download) #:use-module (guix gexp) #:use-module (guix git-download) @@ -42,6 +44,7 @@ #:use-module (gnu packages algebra) #:use-module (gnu packages autotools) #:use-module (gnu packages base) + #:use-module (gnu packages bash) #:use-module (gnu packages bison) #:use-module (gnu packages boost) #:use-module (gnu packages c) @@ -973,6 +976,59 @@ input and outputs an XML dataset.") (home-page "https://ra3xdh.github.io//") (license license:gpl2+))) +(define-public qucs-s + (package + (name "qucs-s") + (version "25.1.2") ;update qucsator-rf accordingly + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ra3xdh/qucs_s") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "07wrpqgbj77rmh1yxy233lk1y4ys1x0721b3jsldp058dcgf24zv")))) + (build-system qt-build-system) + (arguments + (list + #:qtbase qtbase ;for Qt 6 + #:tests? #f ;no tests + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'adjust-default-settings + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "qucs/settings.cpp" + (("\"ngspice\"") + (format #f "~s" (search-input-file inputs "bin/ngspice"))) + (("\"octave\"") + (format #f "~s" (search-input-file inputs "bin/octave")))))) + (add-after 'install 'wrap-program + (lambda _ + (wrap-program (string-append #$output "/bin/qucs-s") + `("PATH" ":" prefix + (,(string-append #$(this-package-input "ngspice") "/bin") + ,(string-append + #$(this-package-input "qucsator-rf") "/bin"))))))))) + (native-inputs (list qttools)) + (inputs + ;; TODO Add xyce-serial to the list. + (list bash-minimal octave qtbase qtcharts qtsvg qtwayland qucsator-rf ngspice)) + (synopsis "GUI for different circuit simulation kernels") + (description + "@acronym{Qucs-S, Quite universal circuit simulator with SPICE} provides +a fancy graphical user interface for a number of popular circuit simulation +engines. The package contains libraries for schematic capture, visualization +and components. The following simulation kernels are supported: +@itemize +@item Ngspice (recommended) +@item Xyce +@item SpiceOpus +@item Qucsator (non-SPICE) +@end itemize\n") + (home-page "https://ra3xdh.github.io/") + (license license:gpl2+))) + (define-public xschem (package (name "xschem") diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index d12059c05e8b029a7c27309ecbda9dccbfc8af7e..94a5f0406eac6775861d6f9da5a570d83e57b82a 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -102,13 +102,11 @@ #:use-module (gnu packages digest) #:use-module (gnu packages docbook) #:use-module (gnu packages documentation) - #:use-module (gnu packages electronics) #:use-module (gnu packages emacs-build) #:use-module (gnu packages emacs-xyz) #:use-module (gnu packages file) #:use-module (gnu packages flex) #:use-module (gnu packages fontutils) - #:use-module (gnu packages fpga) #:use-module (gnu packages freedesktop) #:use-module (gnu packages gawk) #:use-module (gnu packages gcc) @@ -119,7 +117,6 @@ #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) - #:use-module (gnu packages gperf) #:use-module (gnu packages graphics) #:use-module (gnu packages graphviz) #:use-module (gnu packages groff) @@ -165,7 +162,6 @@ #:use-module (gnu packages qt) #:use-module (gnu packages readline) #:use-module (gnu packages ruby-check) - #:use-module (gnu packages textutils) #:use-module (gnu packages sagemath) #:use-module (gnu packages serialization) #:use-module (gnu packages sqlite) @@ -937,59 +933,6 @@ such as those made in pneumatics, hydraulics, process industries, electronics, and others.") (license license:gpl2+))) -(define-public qucs-s - (package - (name "qucs-s") - (version "25.1.2") ;update qucsator-rf accordingly - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/ra3xdh/qucs_s") - (commit version))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "07wrpqgbj77rmh1yxy233lk1y4ys1x0721b3jsldp058dcgf24zv")))) - (build-system qt-build-system) - (arguments - (list - #:qtbase qtbase ;for Qt 6 - #:tests? #f ;no tests - #:phases - #~(modify-phases %standard-phases - (add-after 'unpack 'adjust-default-settings - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "qucs/settings.cpp" - (("\"ngspice\"") - (format #f "~s" (search-input-file inputs "bin/ngspice"))) - (("\"octave\"") - (format #f "~s" (search-input-file inputs "bin/octave")))))) - (add-after 'install 'wrap-program - (lambda _ - (wrap-program (string-append #$output "/bin/qucs-s") - `("PATH" ":" prefix - (,(string-append #$(this-package-input "ngspice") "/bin") - ,(string-append - #$(this-package-input "qucsator-rf") "/bin"))))))))) - (native-inputs (list qttools)) - (inputs - ;; TODO Add xyce-serial to the list. - (list bash-minimal octave qtbase qtcharts qtsvg qtwayland qucsator-rf ngspice)) - (synopsis "GUI for different circuit simulation kernels") - (description - "@acronym{Qucs-S, Quite universal circuit simulator with SPICE} provides -a fancy graphical user interface for a number of popular circuit simulation -engines. The package contains libraries for schematic capture, visualization -and components. The following simulation kernels are supported: -@itemize -@item Ngspice (recommended) -@item Xyce -@item SpiceOpus -@item Qucsator (non-SPICE) -@end itemize\n") - (home-page "https://ra3xdh.github.io/") - (license license:gpl2+))) - (define-public gerbv (package (name "gerbv")