From patchwork Fri Jul 29 15:26:53 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Artyom V. Poptsov" X-Patchwork-Id: 41054 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 8B8C127BBEA; Fri, 29 Jul 2022 16:28:12 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI, SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id D771627BBE9 for ; Fri, 29 Jul 2022 16:28:11 +0100 (BST) Received: from localhost ([::1]:37908 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oHRuN-0002LM-1o for patchwork@mira.cbaines.net; Fri, 29 Jul 2022 11:28:11 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:45204) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oHRuF-0002LD-Ep for guix-patches@gnu.org; Fri, 29 Jul 2022 11:28:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:43493) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oHRuE-0004Dm-LT for guix-patches@gnu.org; Fri, 29 Jul 2022 11:28:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1oHRuE-0001Jh-HQ for guix-patches@gnu.org; Fri, 29 Jul 2022 11:28:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#56768] [PATCH] gnu: engineering: Add qucs-s. Resent-From: "Artyom V. Poptsov" Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 29 Jul 2022 15:28:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 56768 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Maxime Devos Cc: 56768@debbugs.gnu.org Received: via spool by 56768-submit@debbugs.gnu.org id=B56768.16591084345003 (code B ref 56768); Fri, 29 Jul 2022 15:28:02 +0000 Received: (at 56768) by debbugs.gnu.org; 29 Jul 2022 15:27:14 +0000 Received: from localhost ([127.0.0.1]:33242 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oHRtP-0001IX-6W for submit@debbugs.gnu.org; Fri, 29 Jul 2022 11:27:14 -0400 Received: from mail-lj1-f170.google.com ([209.85.208.170]:37701) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oHRtN-0001IJ-1t for 56768@debbugs.gnu.org; Fri, 29 Jul 2022 11:27:10 -0400 Received: by mail-lj1-f170.google.com with SMTP id e11so5551428ljl.4 for <56768@debbugs.gnu.org>; Fri, 29 Jul 2022 08:27:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:user-agent:message-id:in-reply-to:date:references :subject:cc:to:from:from:to:cc; bh=+SQiFstci9UY35zfI4yLFuJZHMbc+cqa8Gv2bpAEuVU=; b=UHwo6snJRtXAud/A0c0RoSyJCb6mEOJzvmVbQXYykG6MCnb2g7WFeD//83UPbbelGQ qU8oPWPU0rGhtbYaRaLEBLLYdOSUrvLiYginwxz9ozE5tKUoqTJXIheP/Ui0Ov+ciBoB nE+ZJwzn2194jSIzUdsEkcCm3DAE7vTxVY+0R3OQWDiuhFY8F9xpMGTK0uQYY+yerVfi fyShAm3hQNQclHGFgxy/IdHBq3PjIhJbnHZ+e4opgOVa9TdSaDDUcIYg1ASxvFTJwV5P OQPYmPDlWh5fwuLutm39hIF7orKz2kngAOrl351cWk8uCDpiVkCXjHCFqN13jeZpc+JC uLIg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:message-id:in-reply-to:date:references :subject:cc:to:from:x-gm-message-state:from:to:cc; bh=+SQiFstci9UY35zfI4yLFuJZHMbc+cqa8Gv2bpAEuVU=; b=iO0HapPilgejhkL3ftbgHWWJunRahXamqPciposEhAbHyBNCN/MUayKCEe4/j7yawk h/TRh4+9bpc2YYxVdN/4BWi2oLQwfNLYuhyYHrfpKAD2PYoz97e6LMblQMBUOneEpdKl KyysT2REhjiq0v7ofF1ZOSjOOlqrGEszS+7+7O9sX4XpH2e6x2HFguROP8vdQ11NH2BN KW5ZZPhKO8iqLONSjqAjmBTgrXXo5kwMZA4xTFI7dmR78ONKCDgRWAfnd5x/qFQqtwHO PxNUgFR5wyUIzbZtW9pUPHQTVuQC8D5k9MHm25P/JW+Dk+GpJma9p1mUSoxBg85Fefti UcUw== X-Gm-Message-State: ACgBeo0DcAJ0XJycz1/0IaRmL7gxwU9C/FY64CR3JOegzdihF0Kcw7T4 m+7bA3T1MNixvXP789fSxHInGgQW3cvAPg== X-Google-Smtp-Source: AA6agR7qPVCuvscBZOGo3KhAqOnpbIcgdV/2er0Rx1+3b/PDz38xNM+vdiZU9skWZ83xcBScERgZyw== X-Received: by 2002:a2e:a4d6:0:b0:25e:439e:39d0 with SMTP id p22-20020a2ea4d6000000b0025e439e39d0mr35625ljm.169.1659108421609; Fri, 29 Jul 2022 08:27:01 -0700 (PDT) Received: from elephant ([5.164.203.220]) by smtp.gmail.com with ESMTPSA id bp23-20020a056512159700b0048a835a60f6sm688036lfb.251.2022.07.29.08.26.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 29 Jul 2022 08:26:59 -0700 (PDT) From: "Artyom V. Poptsov" References: <87ilnlgduf.fsf@gmail.com> Date: Fri, 29 Jul 2022 18:26:53 +0300 In-Reply-To: (Maxime Devos's message of "Tue, 26 Jul 2022 20:07:46 +0200") Message-ID: <87fsik0wjm.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.1 (gnu/linux) MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches Hello Maxime, thanks you for the patch review! > Often GUIs have problems with finding icons, could you check whether > qucs-s works in a pure environment? I tried to run Qucs-S installed through Guix, like the follows: --8<---------------cut here---------------start------------->8--- guix shell -D guix ./pre-inst-env guix shell -D --pure qucs-s qucs-s --8<---------------cut here---------------end--------------->8--- And all the icons seem to be fine Although it can be that I don't fully understand what you mean by "pure environment" in that case. > Propagation is not very robust (e.g. if run directly from the store with $(guix > build qucs-s)/bin/the-binary), would it be possible to not propagate this? E.g., > if you are propagating it because of not finding a binary, you could use > substitute* to insert an appropriate absolute file name. Okay, that's a good point. I checked the sources for the places where Qucs-S uses executable paths and added substitutions for that. I kept NGSpice in "propagated-inputs" because Qucs-S requires it to do the simulations in runtime. Also I've added GNU Octave to the "propagated-inputs" and substituted the path to Octave too. I tried to run simulations from the examples provided with the Qucs-S and it seems to me that Qucs-S mostly works as it should. I should note here that I'm not very good at electronics and such simulations yet, so you should take what I said above with a grain of salt indeed. ;-) Please check the updated patch. Thanks, - Artyom From a4d83e1d5652654db4b6de7bc272ec4a0bfb114f Mon Sep 17 00:00:00 2001 From: "Artyom V. Poptsov" Date: Mon, 25 Jul 2022 22:57:14 +0300 Subject: [PATCH] gnu: Add qucs-s. * gnu/packages/engineering.scm (qucs-s): New variable. --- gnu/packages/engineering.scm | 54 ++++++++++++++++++++++++++++++++++-- 1 file changed, 52 insertions(+), 2 deletions(-) diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index 6eefd14d7e..95c6c012a3 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -3470,8 +3470,7 @@ (define-public libnest2d-for-cura (build-system cmake-build-system) (inputs (list boost clipper nlopt)) - (arguments - `(#:tests? #f + (arguments `(#:tests? #f #:phases (modify-phases %standard-phases (add-before 'configure 'fix-clipper-detection @@ -3757,3 +3756,54 @@ (define-public candle @item Visualizing G-code files. @end itemize") (license license:gpl3+)))) + +(define-public qucs-s + (package + (name "qucs-s") + (version "0.0.24") + (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 + "1lbkaw0grw9w7d37z5dbhaqi8p57cpf9yp071zp6xrairkgimdx8")))) + (build-system cmake-build-system) + (native-inputs (list qttools)) + (inputs (list qtbase-5 qtscript qtsvg)) + (propagated-inputs (list ngspice octave)) + (arguments + (list #:tests? #f ; no tests + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "qucs/main.cpp" + (("QucsSettings.NgspiceExecutable = ngsp_exe") + (string-append "QucsSettings.NgspiceExecutable = \"" + (assoc-ref inputs "ngspice") + "/bin/ngspice" + "\"")) + (("QucsSettings.OctaveExecutable = \"octave\" + QString(executableSuffix)") + (string-append "QucsSettings.OctaveExecutable = \"" + (assoc-ref inputs "octave") + "/bin/octave" + "\"")))))))) + (synopsis "GUI for different circuit simulation kernels") + (description + "@code{Qucs-S} 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 +") + (home-page "https://ra3xdh.github.io/") + (license license:gpl2+))) -- 2.34.1