diff options
author | Evils <evils.devils@protonmail.com> | 2023-05-22 17:43:24 +0200 |
---|---|---|
committer | Evils <evils.devils@protonmail.com> | 2023-05-22 17:43:27 +0200 |
commit | e1a80940a50ef7631d71497f9ff41817098fa092 (patch) | |
tree | 1db01e3d2893a3cc4374a91f635db8b2845aad50 /pkgs/applications/science/electronics/kicad | |
parent | 3005f20ce0aaa58169cdee57c8aa12e5f1b6e1b3 (diff) |
kicad: make KICAD7_TEMPLATE_DIR a single path
workaround for the upstream issue of not searching a : separated path
Diffstat (limited to 'pkgs/applications/science/electronics/kicad')
-rw-r--r-- | pkgs/applications/science/electronics/kicad/default.nix | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/pkgs/applications/science/electronics/kicad/default.nix b/pkgs/applications/science/electronics/kicad/default.nix index 50628a3e1f019..9b98a8231eb61 100644 --- a/pkgs/applications/science/electronics/kicad/default.nix +++ b/pkgs/applications/science/electronics/kicad/default.nix @@ -24,6 +24,7 @@ , with3d ? true , withI18n ? true , srcs ? { } +, symlinkJoin }: # The `srcs` parameter can be used to override the kicad source code @@ -136,6 +137,17 @@ stdenv.mkDerivation rec { ++ optionals (withScripting) [ python.pkgs.wrapPython ]; + # KICAD7_TEMPLATE_DIR only works with a single path (it does not handle : separated paths) + # but it's used to find both the templates and the symbol/footprint library tables + # https://gitlab.com/kicad/code/kicad/-/issues/14792 + template_dir = symlinkJoin { + name = "KiCad_template_dir"; + paths = with passthru.libraries; [ + "${templates}/share/kicad/template" + "${footprints}/share/kicad/template" + "${symbols}/share/kicad/template" + ]; + }; # We are emulating wrapGAppsHook, along with other variables to the wrapper makeWrapperArgs = with passthru.libraries; [ "--prefix XDG_DATA_DIRS : ${base}/share" @@ -150,9 +162,7 @@ stdenv.mkDerivation rec { "--set-default MOZ_DBUS_REMOTE 1" "--set-default KICAD7_FOOTPRINT_DIR ${footprints}/share/kicad/footprints" "--set-default KICAD7_SYMBOL_DIR ${symbols}/share/kicad/symbols" - "--set-default KICAD7_TEMPLATE_DIR ${templates}/share/kicad/template" - "--prefix KICAD7_TEMPLATE_DIR : ${symbols}/share/kicad/template" - "--prefix KICAD7_TEMPLATE_DIR : ${footprints}/share/kicad/template" + "--set-default KICAD7_TEMPLATE_DIR ${template_dir}" ] ++ optionals (with3d) [ |