kicad: 7.0.10 -> 8.0.1#291134
Conversation
|
Thanks for handling this, @evils! |
|
i suggest this approach for KiKit: |
|
also @jfly i've edited your runtime data path patch's env var to use |
|
oh and on sway (wayland) with mixed DPI monitors this may have trouble getting an appropriate area |
There was a problem hiding this comment.
Thanks, @evils! For the record, kikit does not seem to be buildable on this branch. How I tested:
$ nix-build -E 'let pkgs = import (builtins.fetchTarball { url = "https://github.com/NixOS/nixpkgs/archive/e70e1370a88f86ea989902e140172e9cff0d379a.tar.gz"; }) {}; in pkgs.kicad.override {addons=[pkgs.kicadAddons.kikit pkgs.kicadAddons.kikit-library];}'
...
not ok 38 Dumping preset with plugin
# (in test file /build/source/test/system/panelize.bats, line 301)
# `kikit panelize --dump preset-plugin.json \' failed
# 01:58:47: Error: Directory '/homeless-shelter' couldn't be created (error 13: Permission denied)
# 01:58:47: Error: Directory '/homeless-shelter/.config/kicad/8.0' couldn't be created (error 2: No such file or directory)
# An error occurred: module 'pcbnewTransition.pcbnew' has no attribute 'EDA_RECT'
# No output files produced
# Traceback (most recent call last):
# File "/nix/store/79gz22x7k5q7755hzcnz501g0is7fsd3-kikit-1.4.0/lib/python3.11/site-packages/kikit/panelize_ui.py", line 217, in panelize
# doPanelization(input, output, preset, plugin)
# File "/nix/store/79gz22x7k5q7755hzcnz501g0is7fsd3-kikit-1.4.0/lib/python3.11/site-packages/kikit/panelize_ui.py", line 266, in doPanelization
# ki.buildLayout(preset, panel, input, sourceArea)
# File "/nix/store/79gz22x7k5q7755hzcnz501g0is7fsd3-kikit-1.4.0/lib/python3.11/site-packages/kikit/panelize_ui_impl.py", line 268, in buildLayout
# substrates = lPlugin.buildLayout(panel, sourceBoard, sourceArea)
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
# File "/build/source/test/resources/testplugin.py", line 33, in buildLayout
# panel.appendBoard(inputFile, pcbnew.wxPointMM(0, 0), sourceArea)
# File "/nix/store/79gz22x7k5q7755hzcnz501g0is7fsd3-kikit-1.4.0/lib/python3.11/site-packages/kikit/panelize.py", line 991, in appendBoard
# drawings = collectItems(board.GetDrawings(), enlargedSourceArea)
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
# File "/nix/store/79gz22x7k5q7755hzcnz501g0is7fsd3-kikit-1.4.0/lib/python3.11/site-packages/kikit/common.py", line 83, in collectItems
# return list([x for x in boardCollection if fitsIn(x.GetBoundingBox(), sourceArea)])
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
# File "/nix/store/79gz22x7k5q7755hzcnz501g0is7fsd3-kikit-1.4.0/lib/python3.11/site-packages/kikit/common.py", line 83, in <listcomp>
# return list([x for x in boardCollection if fitsIn(x.GetBoundingBox(), sourceArea)])
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
# File "/nix/store/79gz22x7k5q7755hzcnz501g0is7fsd3-kikit-1.4.0/lib/python3.11/site-packages/kikit/common.py", line 49, in fitsIn
# assert isinstance(what, (BOX2I, VECTOR2I, pcbnew.wxPoint, pcbnew.EDA_RECT))
# ^^^^^^^^^^^^^^^
# AttributeError: module 'pcbnewTransition.pcbnew' has no attribute 'EDA_RECT'
ok 39 Present a single board # skip PcbDraw is not available, skipping
ok 40 Steel stencils
ok 41 Steel stencils with cutout
ok 42 Printed stencils
make: *** [Makefile:40: test-system] Error 1
I see this is fixed upstream in yaqwsx/KiKit@c920ba3, which was released just 16 hours ago in kikit 1.5.0. Looking at the ryantm update logs, I think it just hasn't realized there's a new version of kikit yet: https://r.ryantm.com/log/kikit/ (the last run was 3 days ago on 2024-02-23). I did try upgrading locally, and I see a new test failure, though. If it's ok, I'd like to wait a day to see if the update bot sends in an update PR (I'm a quite new maintainer of nixpkgs and would like to learn how to fix a broken auto-update PR).
|
i don't believe the bot submits PRs if the package fails to build :) |
|
Ah, OK. How am I as a maintainer supposed to know that happened so I can intervene? |
|
good question, i don't believe it emits such indications one thing you can do is run this script once in a while |
|
Gotcha. That's a bummer, I thought I just had to look at my email to keep things up to date. For the record, I've created #291734 to get kikit upgraded. If we can get that merged first, then there shouldn't be a window of time in |
This includes support for KiCad 8 (see complete changelog [here](https://github.com/yaqwsx/KiKit/releases/tag/v1.5.0)), which should unblock NixOS#291134. With this upgrade, a test started failing: $ nix build .#kikit ... kikit> not ok 40 Steel stencils kikit> # (in test file /build/source/test/system/stencil.bats, line 6) kikit> # `kikit stencil create --jigsize 60 60 $RES/conn.kicad_pcb steelStencil' failed kikit> # 04:32:16: Error: Directory '/homeless-shelter' couldn't be created (error 13: Permission denied) kikit> # An error occurred: OpenSCAD is not available. kikit> # Did you install it? Program `openscad` has to be in PATH kikit> # No output files produced kikit> not ok 41 Steel stencils with cutout kikit> # (in test file /build/source/test/system/stencil.bats, line 10) kikit> # `kikit stencil create --jigsize 60 60 --cutout J4 $RES/conn.kicad_pcb steelStencil' failed kikit> # 04:32:17: Error: Directory '/homeless-shelter' couldn't be created (error 13: Permission denied) kikit> # An error occurred: OpenSCAD is not available. kikit> # Did you install it? Program `openscad` has to be in PATH kikit> # No output files produced kikit> not ok 42 Printed stencils kikit> # (in test file /build/source/test/system/stencil.bats, line 14) kikit> # `kikit stencil createprinted \' failed kikit> # 04:32:17: Error: Directory '/homeless-shelter' couldn't be created (error 13: Permission denied) kikit> # An error occurred: OpenSCAD is not available. kikit> # Did you install it? Program `openscad` has to be in PATH kikit> # No output files produced kikit> make: *** [Makefile:40: test-system] Error 1 kikit> /nix/store/3qnm3nwjajgqa771dmi2dnwxrw0kzq5m-stdenv-linux/setup: line 131: pop_var_context: head of shell_variables not a function context error: builder for '/nix/store/f3klmz0qvi6yr3qfy7cww434f2z4kjx5-kikit-1.5.0.drv' failed with exit code 2; This is failing in some pretty old kikit code, so I think this is just failing due to kikit now having more complete code coverage. While researching this, I discovered kikit's documentation about [optional dependencies], which I suppose we don't have good support for right now. Rather than invent a new option for that, I've opted to preserve the existing behavior and just do the bare minimum to keep the build passing. [optional dependencies]: https://github.com/yaqwsx/KiKit/blob/v1.5.0/docs/installation/intro.md#optional-dependencies
|
just a note in case anyone was holding off on reviewing or merging this |
jfly
left a comment
There was a problem hiding this comment.
Code LGTM, but I still can't successfully test out kikit on this branch because it doesn't have the latest changes from master.
I tried checking out this PR locally and rebasing on top of the latest in master and got a conflict in pkgs/development/libraries/log4cplus/default.nix that I'm stumped by.
|
@jfly if you run it will build you a merge of master and this PR |
|
Thanks, @kirillrdy. I just manually tested out kikit with this PR, and things seem to work! |
|
Result of 3 packages failed to build:
13 packages built:
3.12 build fails because of diffimg which also fails on master |
|
oh, i maintain |
|
Perhaps this PR can also cover the recent bugfix release as well? https://www.kicad.org/blog/2024/03/KiCad-8.0.1-Release/ |
|
pushed 8.0.1 |
|
Result of 16 packages failed to build:
|
|
|
|
it doesn't appear as if aarch64-linux is supported by upstream |
|
I can confirm that the Kicad (both 8.0.1 and testing 2024-03-16) GUI works fine on aarch64 NixOS. I disabled the tests completely ( Additionally, I get this build error when doing |
|
The |
disables failing qa_spice test suite for unstable upstream seems aware, have not reported it though
switch to KICAD8 env vars make the previously unstable dependencies stable reenable the qa_eeschema test and disable qa_spice also bump testing and unstable
|
i've added disabling the qa_cli test on aarch64-linux |
|
@evils thank you for PR |
|
note for completeness: someone from upstream successfully ran the qa_cli test on ubuntu on aarch64 |
Description of changes
7.0.11 release blog post
8.0.0 release blog post
8.0.1 release blog post
Things done
bump 7.0.10 to 7.0.11 (included separately to stay reachable and be backported to 23.11)
bump kicad-unstable to 2024-02-07 (fixes its build, adds dependencies that are now part of 8.0.0, update wrapper env vars)
bump 7.0.11 to 8.0.0 (uses the kicad-unstable new dependencies and env var wrappers)
(also bumps kicad-unstable and kicad-testing, should be almost exactly the same at the moment)
nix.conf? (See Nix manual)sandbox = relaxedsandbox = truenix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/)Add a 👍 reaction to pull requests you find important.