Update Kicad to 6.0.0

  • Done
  • quality assurance status badge
Details
3 participants
  • Guillaume Le Vaillant
  • Leo Famulari
  • phodina
Owner
unassigned
Submitted by
phodina
Severity
normal
P
P
phodina wrote on 9 Jan 2022 23:45
(name . Guix Patches)(address . guix-patches@gnu.org)
19pc1sQZe7q77dBcvmMFNJ3D1N3AZxoRrMmkEg03_fFRK_E67EDc8aCaJNmfvr1pAjyQ8uxVyJugXe3SZFFBD5367YWTYLnqvoSGCRVs9mw=@protonmail.com
Hi,

this patch series updates Kicad to version 6.0.0. Guix lint shows newer version 6.99.0 but that's intended for development of the next major release.

The list of changes are described here [1].


----
Petr
Attachment: file
From c3dad9ac9e0d7139d80bd35f8c008fb3a9d4b04f Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Sun, 9 Jan 2022 23:00:13 +0100
Subject: [PATCH 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.

Toggle diff (32 lines)
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index b0944f307b..760444fb5c 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 3aeb8c51148b124dc499d3c2c8570ec519839a10 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Sun, 9 Jan 2022 23:08:42 +0100
Subject: [PATCH 3/3] gnu: Remove kicad-i18n.

* gnu/packages/engineering.scm (kicad-i18n): Remove variable. i18n is handled
directly now in kicad@6.0.0 package source tree.

Toggle diff (40 lines)
diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index d5a44cf648..9f4eccde03 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -1031,33 +1031,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 78751a56340b9cd3e267c67dbda920c0316a642d Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Sun, 9 Jan 2022 23:04:57 +0100
Subject: [PATCH 2/3] gnu: kicad: Update to 6.0.0.

* gnu/packages/engineering.scm (kicad): Update to 6.0.0.
[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.

Toggle diff (102 lines)
diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index eec835f97c..d5a44cf648 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -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,7 +926,7 @@ (define-public inspekt3d
(define-public kicad
(package
(name "kicad")
- (version "5.1.10")
+ (version "6.0.0")
(source
(origin
(method git-fetch)
@@ -933,7 +934,7 @@ (define-public kicad
(url "https://gitlab.com/kicad/code/kicad.git")
(commit version)))
(sha256
- (base32 "10ix560bqy0lprnik1bprxw9ix4g8w2ipvyikx551ak9ryvgwjcc"))
+ (base32 "1jrfwyi4zs0rpcpsj01z6687a433nnr56cxbnz12jfg2yafpxk23"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
@@ -942,6 +943,8 @@ (define-public kicad
#:build-type "Release"
#:configure-flags
(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
@@ -963,11 +966,6 @@ (define-public kicad
(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))
(add-after 'install 'wrap-program
;; Ensure correct Python at runtime.
(lambda* (#:key inputs outputs #:allow-other-keys)
@@ -1003,27 +1001,28 @@ (define-public kicad
(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)))
+ (list boost
+ desktop-file-utils
+ gettext-minimal
+ pkg-config
+ swig
+ zlib))
(inputs
- `(("cairo" ,cairo)
- ("curl" ,curl)
- ("glew" ,glew)
- ("glm" ,glm)
- ("hicolor-icon-theme" ,hicolor-icon-theme)
- ("libngspice" ,libngspice)
- ("libsm" ,libsm)
- ("mesa" ,mesa)
- ("opencascade-oce" ,opencascade-oce)
- ("openssl" ,openssl)
- ("python" ,python-wrapper)
- ("wxwidgets" ,wxwidgets)
- ("wxpython" ,python-wxpython)))
+ (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
--
2.34.0
L
L
Leo Famulari wrote on 11 Jan 2022 20:54
(name . phodina via Guix-patches via)(address . guix-patches@gnu.org)(address . 53149@debbugs.gnu.org)
Yd3gX4965VGq6YVw@jasmine.lan
On Sun, Jan 09, 2022 at 10:45:50PM +0000, phodina via Guix-patches via wrote:
Toggle quote (8 lines)
> Hi,
>
> this patch series updates Kicad to version 6.0.0. Guix lint shows newer version 6.99.0 but that's intended for development of the next major release.
>
> The list of changes are described here [1].
>
> [1] https://www.kicad.org/blog/2021/12/KiCad-6.0.0-Release/

Thanks for these patches!

They do not apply to the Guix master branch, because our Kicad package
is currently at version 5.1.12. Can you rebase your commits and send a
revised patch series?
P
P
phodina wrote on 28 Jan 2022 11:11
[PATCH v2 1/3] gnu: opencascade-occt: Update to 7.6.0.
(name . 53149@debbugs.gnu.org)(address . 53149@debbugs.gnu.org)
JbbsaV5axMU8dRjIqNgjFIkecqUJ9mBnzdxkwIjbbqwMIiCYZ5Z-oBCM4i4RPfBakNMzhBJ0LTS7jdCO_ostTMVYWxeBk0csSPOaVjx48Ao=@protonmail.com
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
Attachment: file
From 01990cad35b709e8575e862640983348ad16e53e Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
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.

Toggle diff (32 lines)
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 <phodina@protonmail.com>
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 kicad@6.0.0 package source tree.

Toggle diff (40 lines)
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
G
G
Guillaume Le Vaillant wrote on 28 Jan 2022 11:45
(name . phodina)(address . phodina@protonmail.com)(name . 53149@debbugs.gnu.org)(address . 53149@debbugs.gnu.org)
87y2302kp1.fsf@kitej
phodina via Guix-patches via <guix-patches@gnu.org> skribis:

Toggle quote (12 lines)
> From 64195144def5a3dfdd593494523dd44df39be6f0 Mon Sep 17 00:00:00 2001
> From: Petr Hodina <phodina@protonmail.com>
> 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.

Hi,

If the kicad-i18n package is not used anymore, I guess its definition
can be removed.
Also, the kicad-doc, kicad-symbols, kicad-footprints, kicad-packages3d
and kicad-templates packages inherit their version number from the kicad
package. So when the version of the kicad package changes, their base32
hashes usually have to be updated, or they may fail to build.
-----BEGIN PGP SIGNATURE-----

iIUEAREKAC0WIQTLxZxm7Ce5cXlAaz5r6CCK3yH+PwUCYfPLug8cZ2x2QHBvc3Rl
by5uZXQACgkQa+ggit8h/j8tXwEApG6WJfkk9SwL1lQEbt9V8xNRSRZFaN+EyUA3
xUirIGUBAIvvTPPyqjn66JuVgMEVR1Fvp5LKSWb7LjNMzJ/LL7Xr
=1Neb
-----END PGP SIGNATURE-----

P
P
phodina wrote on 9 Feb 2022 12:12
[PATCH v3 1/3] gnu: opencascade-occt: Update to 7.6.0.
(name . Guillaume Le Vaillant)(address . glv@posteo.net)(name . 53149@debbugs.gnu.org)(address . 53149@debbugs.gnu.org)
dpZBHoVLd_YwJ9aSm39j7J1u9dTTmDtBHiacwesq3aiC-sHyDom15SXMfx-aF_V8PqYlyCxOtsrNHlu_Xj-zSOTk7C43Lg_KoviKGgulQs0=@protonmail.com
Hi Guillaume,

On Friday, January 28th, 2022 at 11:45 AM, Guillaume Le Vaillant <glv@posteo.net> wrote:

Toggle quote (36 lines)
> phodina via Guix-patches via guix-patches@gnu.org skribis:
>
> > From 64195144def5a3dfdd593494523dd44df39be6f0 Mon Sep 17 00:00:00 2001
> >
> > From: Petr Hodina phodina@protonmail.com
> >
> > 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.
>
> Hi,
>
> If the kicad-i18n package is not used anymore, I guess its definition
>
> can be removed.
>
> Also, the kicad-doc, kicad-symbols, kicad-footprints, kicad-packages3d
>
> and kicad-templates packages inherit their version number from the kicad
>
> package. So when the version of the kicad package changes, their base32
>
> hashes usually have to be updated, or they may fail to build.

You're right about keeping the packages in sync. Here is an updated version + rebased on latest master.

The changes for the dependent packages are in one commit.

----
Petr
From f57cd1868b9ae986c27668e15e70c8b9da2113d3 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Sun, 9 Jan 2022 23:00:13 +0100
Subject: [PATCH v3 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.

Toggle diff (32 lines)
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index e37ed7dd35..06bf081a27 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 1dd6f6b81e646665d25f2a3b4e8585fc98a746e5 Mon Sep 17 00:00:00 2001
From: Petr Hodina <phodina@protonmail.com>
Date: Sun, 9 Jan 2022 23:08:42 +0100
Subject: [PATCH v3 3/3] gnu: Remove kicad-i18n.

* gnu/packages/engineering.scm (kicad-i18n): Remove variable. i18n is handled
directly now in kicad@6.0.0 package source tree.

Toggle diff (40 lines)
diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index e78a2c64d9..054291801a 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -1039,33 +1039,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
G
G
Guillaume Le Vaillant wrote on 11 Feb 2022 16:48
(name . phodina)(address . phodina@protonmail.com)(address . 53149-done@debbugs.gnu.org)
87bkzdcshr.fsf@kitej
Patches pushed as 4c1dff9abeb383ca58dbfcbc27e1bd464d2ad2ea and following
(with a few indentation fixes).
Thanks.
-----BEGIN PGP SIGNATURE-----

iIUEAREKAC0WIQTLxZxm7Ce5cXlAaz5r6CCK3yH+PwUCYgaFwA8cZ2x2QHBvc3Rl
by5uZXQACgkQa+ggit8h/j90EwD/WUVh4NMBsfTMEFMxYsWhlPJOCyGOBSXwCI7D
LvwosbQA/j2DeugQkt1zOMYP2qBEXhyEz60r2MGslVZuUId2J21M
=Mb8e
-----END PGP SIGNATURE-----

Closed
?