Subject: [PATCH v2 1/3] gnu: opencascade-occt: Update to 7.6.0.

From: phodina <[email-masked]>
Date: Fri, 28 Jan 2022 10:11:29 +0000

Hi Leo,

My apology for late reply. Yes, here are the updated patches.

Kicad is updated to 6.0.1 and I ran also guix style on the package.

----
Petr

From 01990cad35b709e8575e862640983348ad16e53e Mon Sep 17 00:00:00 2001
From: Petr Hodina <[email-masked]>
Date: Sun, 9 Jan 2022 23:00:13 +0100
Subject: [PATCH v2 1/3] gnu: opencascade-occt: Update to 7.6.0.

* gnu/packages/maths.scm (opencascade-occt): Update to 7.6.0.
  [native-inputs]: Add fontconfig.

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 9a0f913c5a..ea20f98116 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -2708,7 +2708,7 @@ (define-public opencascade-oce
 (define-public opencascade-occt
   (package
     (name "opencascade-occt")
-    (version "7.3.0p3")
+    (version "7.6.0")
     (source
       (origin
         (method git-fetch)
@@ -2720,7 +2720,7 @@ (define-public opencascade-occt
                                           version)))))
         (file-name (git-file-name name version))
         (sha256
-         (base32 "0bdywwxb6mk0ykbiajlvsb37295akqjp0a60y672qjfa67k0ljv4"))
+         (base32 "1rcwm9fkx0j4wrsyikb6g7qd611kpry7dand5dzdjvs5vzd13zvd"))
         (modules '((guix build utils)))
         (snippet
          '(begin
@@ -2757,6 +2757,7 @@ (define-public opencascade-occt
               "-DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON"
               "-DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON"
               "-UCMAKE_INSTALL_LIBDIR")))
+    (native-inputs (list fontconfig))
     (inputs
      (list doxygen
            ;("freeimage" ,freeimage)
-- 
2.34.0

From 1d50300c9ee20161d3e7be7f4b37d443f78b232e Mon Sep 17 00:00:00 2001
From: Petr Hodina <[email-masked]>
Date: Sun, 9 Jan 2022 23:08:42 +0100
Subject: [PATCH v2 3/3] gnu: Remove kicad-i18n.

* gnu/packages/engineering.scm (kicad-i18n): Remove variable. i18n is handled
  directly now in [email-masked] package source tree.

diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index e51d16c0ab..60abeb5a0f 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -1035,33 +1035,6 @@ (define-public kicad
 electrical diagrams), gerbview (viewing Gerber files) and others.")
     (license license:gpl3+)))
 
-(define kicad-i18n
-  (package
-    (name "kicad-i18n")
-    (version (package-version kicad))
-    (source (origin
-              (method git-fetch)
-              (uri (git-reference
-                    (url "https://gitlab.com/kicad/code/kicad-i18n.git")
-                    (commit version)))
-              (file-name (git-file-name name version))
-              (sha256
-               (base32
-                "0y51l0r62cnxkvpc21732p3cx7pjvaqjih8193502hlv9kv1j9p6"))))
-    (build-system cmake-build-system)
-    (arguments
-     `(#:phases
-       (modify-phases %standard-phases
-         (delete 'build)
-         (delete 'check))))
-    (native-inputs
-     `(("gettext" ,gettext-minimal)))
-    (home-page (package-home-page kicad))
-    (synopsis "KiCad GUI translations")
-    (description "This package contains the po files that are used for the GUI
-translations for KiCad.")
-    (license license:gpl3+)))
-
 (define-public kicad-doc
   (package
     (name "kicad-doc")
-- 
2.34.0

From 64195144def5a3dfdd593494523dd44df39be6f0 Mon Sep 17 00:00:00 2001
From: Petr Hodina <[email-masked]>
Date: Sun, 9 Jan 2022 23:04:57 +0100
Subject: [PATCH v2 2/3] gnu: kicad: Update to 6.0.1.

* gnu/packages/engineering.scm (kicad): Update to 6.0.1.
  Applied guix style command.
  [native-inputs]: Remove kicad-i18n. Use new syntax.
  [inputs]: Add bash-minimal, gtk+ and use opencascade-occt instead of
  opencascade-oce. Use new syntax.
  [arguments]: Remove phase install-translations.

diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index 23133a50eb..e51d16c0ab 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -25,7 +25,7 @@
 ;;; Copyright © 2021 Gerd Heber <[email-masked]>
 ;;; Copyright © 2021, 2022 Guillaume Le Vaillant <[email-masked]>
 ;;; Copyright © 2021 Ivan Gankevich <[email-masked]>
-;;; Copyright © 2021 Petr Hodina <[email-masked]>
+;;; Copyright © 2021, 2022 Petr Hodina <[email-masked]>
 ;;; Copyright © 2021 Foo Chuan Wei <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -64,6 +64,7 @@ (define-module (gnu packages engineering)
   #:use-module (gnu packages algebra)
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages base)
+  #:use-module (gnu packages bash)
   #:use-module (gnu packages bdw-gc)
   #:use-module (gnu packages bison)
   #:use-module (gnu packages boost)
@@ -925,37 +926,41 @@ (define-public inspekt3d
 (define-public kicad
   (package
     (name "kicad")
-    (version "5.1.12")
-    (source
-     (origin
-       (method git-fetch)
-       (uri (git-reference
-             (url "https://gitlab.com/kicad/code/kicad.git")
-             (commit version)))
-       (sha256
-        (base32 "0kgikchqxds3mp71nkg307mr4c1dgv8akbmksz4w9x8jg4i1mfqq"))
-       (file-name (git-file-name name version))))
+    (version "6.0.1")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://gitlab.com/kicad/code/kicad.git")
+                    (commit version)))
+              (sha256
+               (base32
+                "1vpcbhhw8844hm6vpk3kk405wak531pvcvcpc66z0b48iprk3imr"))
+              (file-name (git-file-name name version))))
     (build-system cmake-build-system)
     (arguments
      `(#:out-of-source? #t
-       #:tests? #f                      ; no tests
-       #:build-type "Release"
+       #:tests?
+       #f ;no tests
+       #:build-type
+       "Release"
        #:configure-flags
-       ,#~(list
-           "-DKICAD_SCRIPTING_PYTHON3=ON"
-           "-DKICAD_SCRIPTING_WXPYTHON_PHOENIX=ON"
-           "-DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE"
-           (string-append "-DOCC_INCLUDE_DIR="
-                          #$(this-package-input "opencascade-occt") "/include/opencascade"))
+       (list "-DKICAD_SCRIPTING_PYTHON3=ON"
+             (string-append "-DOCC_INCLUDE_DIR="
+                            (assoc-ref %build-inputs "opencascade-occt")
+                            "/include/opencascade")
+             "-DKICAD_SCRIPTING_WXPYTHON_PHOENIX=ON"
+             "-DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE")
        #:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'fix-ngspice-detection
            (lambda* (#:key inputs #:allow-other-keys)
              (substitute* "eeschema/CMakeLists.txt"
-               (("NGSPICE_DLL_FILE=\"\\$\\{NGSPICE_DLL_FILE\\}\"")
-                (string-append "NGSPICE_DLL_FILE=\""
-                               (assoc-ref inputs "libngspice")
-                               "/lib/libngspice.so\"")))))
+               (("NGSPICE_DLL_FILE=\"\\$\\{NGSPICE_DLL_FILE\\}\"") (string-append
+                                                                    "NGSPICE_DLL_FILE=\""
+                                                                    (assoc-ref
+                                                                     inputs
+                                                                     "libngspice")
+                                                                    "/lib/libngspice.so\"")))))
          (add-after 'unpack 'fix-python-detection
            (lambda _
              (substitute* "CMakeModules/FindPythonLibs.cmake"
@@ -964,72 +969,67 @@ (define-public kicad
          (add-after 'unpack 'add-missing-include
            (lambda _
              (substitute* "common/lib_tree_model.cpp"
-               (("#include <eda_pattern_match.h>" all)
-                (string-append "#include <algorithm>\n" all)))))
-         (add-after 'install 'install-translations
-           (lambda* (#:key inputs outputs #:allow-other-keys)
-             (copy-recursively (assoc-ref inputs "kicad-i18n")
-                               (assoc-ref outputs "out"))
-             #t))
+               (("#include <eda_pattern_match.h>" all) (string-append
+                                                        "#include <algorithm>
+"
+                                                        all)))))
          (add-after 'install 'wrap-program
            ;; Ensure correct Python at runtime.
            (lambda* (#:key inputs outputs #:allow-other-keys)
-             (let* ((out (assoc-ref outputs "out"))
-                    (python (assoc-ref inputs "python"))
+             (let* ((out (assoc-ref outputs "out")) (python (assoc-ref inputs
+                                                             "python"))
                     (file (string-append out "/bin/kicad"))
-                    (path (string-append
-                           out
-                           "/lib/python"
-                           ,(version-major+minor
-                             (package-version python))
-                           "/site-packages:"
-                           (getenv "GUIX_PYTHONPATH"))))
+                    (path (string-append out "/lib/python"
+                                         ,(version-major+minor (package-version
+                                                                python))
+                                         "/site-packages:"
+                                         (getenv "GUIX_PYTHONPATH"))))
                (wrap-program file
-                 `("GUIX_PYTHONPATH" ":" prefix (,path))
-                 `("PATH" ":" prefix
-                   (,(string-append python "/bin:")))))
-             #t)))))
+                             `("GUIX_PYTHONPATH" ":" prefix
+                               (,path))
+                             `("PATH" ":" prefix
+                               (,(string-append python "/bin:"))))) #t)))))
     (native-search-paths
      (list (search-path-specification
-            (variable "KICAD")          ; to find kicad-doc
+            (variable "KICAD") ;to find kicad-doc
             (files '("")))
            (search-path-specification
             (variable "KICAD_TEMPLATE_DIR")
             (files '("share/kicad/template")))
            (search-path-specification
-            (variable "KICAD_SYMBOL_DIR") ; symbol path
+            (variable "KICAD_SYMBOL_DIR") ;symbol path
             (files '("share/kicad/library")))
            (search-path-specification
-            (variable "KISYSMOD")       ; footprint path
+            (variable "KISYSMOD") ;footprint path
             (files '("share/kicad/modules")))
            (search-path-specification
-            (variable "KISYS3DMOD")     ; 3D model path
+            (variable "KISYS3DMOD") ;3D model path
             (files '("share/kicad/modules/packages3d")))))
-    (native-inputs
-     `(("boost" ,boost)
-       ("desktop-file-utils" ,desktop-file-utils)
-       ("gettext" ,gettext-minimal)
-       ("kicad-i18n" ,kicad-i18n)
-       ("pkg-config" ,pkg-config)
-       ("swig" ,swig)
-       ("zlib" ,zlib)))
-    (inputs
-     `(("cairo" ,cairo)
-       ("curl" ,curl)
-       ("glew" ,glew)
-       ("glm" ,glm)
-       ("hicolor-icon-theme" ,hicolor-icon-theme)
-       ("libngspice" ,libngspice)
-       ("libsm" ,libsm)
-       ("mesa" ,mesa)
-       ("opencascade-occt" ,opencascade-occt)
-       ("openssl" ,openssl)
-       ("python" ,python-wrapper)
-       ("wxwidgets" ,wxwidgets)
-       ("wxpython" ,python-wxpython)))
+    (native-inputs (list boost
+                         desktop-file-utils
+                         gettext-minimal
+                         pkg-config
+                         swig
+                         zlib))
+    (inputs (list bash-minimal
+                  cairo
+                  curl
+                  glew
+                  glm
+                  hicolor-icon-theme
+                  libngspice
+                  libsm
+                  mesa
+                  opencascade-occt
+                  openssl
+                  python-wrapper
+                  gtk+
+                  wxwidgets
+                  python-wxpython))
     (home-page "https://www.kicad.org/")
     (synopsis "Electronics Design Automation Suite")
-    (description "Kicad is a program for the formation of printed circuit
+    (description
+     "Kicad is a program for the formation of printed circuit
 boards and electrical circuits.  The software has a number of programs that
 perform specific functions, for example, pcbnew (Editing PCB), eeschema (editing
 electrical diagrams), gerbview (viewing Gerber files) and others.")
-- 
2.34.0