[Nightly] [SOLVED] configured paths (for symbols / footprints / templates) do not point to /usr/share

Looks like some environment variables visible under 'preferences-> configure paths are fixed to values starting /usr/lib while the symbols / footprints / templates dirs in the current nightly are actually located at /usr/share/kicad-nightly/…

i located kicad_common.json where the paths are defined, but had to understand that these settings are not taken into consideration by kicad.

any hint on how to solve this problem?

my settings:

  • Ubuntu 20.04 (up-to-date)
  • kicad-nightly (just checked if there are any updates available)
    in detail:
    Application: KiCad

Version: 5.99.0-unknown-f88d39b4f0~125~ubuntu20.04.1, release build

Libraries:
wxWidgets 3.0.4
libcurl/7.68.0 OpenSSL/1.1.1f zlib/1.2.11 brotli/1.0.7 libidn2/2.2.0 libpsl/0.21.0 (+libidn2/2.2.0) libssh/0.9.3/openssl/zlib nghttp2/1.40.0 librtmp/2.3

Platform: Linux 5.8.0-45-generic x86_64, 64 bit, Little endian, wxGTK, ubuntu, x11

Build Info:
Date: Apr 2 2021 08:04:12
wxWidgets: 3.0.4 (wchar_t,wx containers,compatible with 2.8) GTK+ 3.24
Boost: 1.71.0
OCC: 7.3.0
Curl: 7.68.0
ngspice: 31
Compiler: GCC 9.3.0 with C++ ABI 1013

Build settings:
KICAD_SCRIPTING=ON
KICAD_SCRIPTING_MODULES=ON
KICAD_SCRIPTING_PYTHON3=ON
KICAD_SCRIPTING_WXPYTHON=ON
KICAD_SCRIPTING_WXPYTHON_PHOENIX=ON
KICAD_SCRIPTING_ACTION_MENU=ON
KICAD_USE_OCC=ON
KICAD_SPICE=ON

Maybe some of your paths are missing?
What do you mean by “fixed”?

Below a screenshot of my current path variables.


I added a new var just for you, and KiCad accepts it.

I’m note sure what your problem is. You make a statement then ask: “how to solve this problem?” But what is the problem?

Application: KiCad

Version: 5.99.0-unknown-0a0935e0f3~125~ubuntu20.04.1, release build

Libraries:
	wxWidgets 3.0.4
	libcurl/7.68.0 OpenSSL/1.1.1f zlib/1.2.11 brotli/1.0.7 libidn2/2.2.0 libpsl/0.21.0 (+libidn2/2.2.0) libssh/0.9.3/openssl/zlib nghttp2/1.40.0 librtmp/2.3

Platform: Linux 5.4.0-70-generic x86_64, 64 bit, Little endian, wxGTK, mate, x11

Build Info:
	Date: Mar 31 2021 08:08:13
	wxWidgets: 3.0.4 (wchar_t,wx containers,compatible with 2.8) GTK+ 3.24
	Boost: 1.71.0
	OCC: 7.3.0
	Curl: 7.68.0
	ngspice: 31
	Compiler: GCC 9.3.0 with C++ ABI 1013

Build settings:
	KICAD_SCRIPTING=ON
	KICAD_SCRIPTING_MODULES=ON
	KICAD_SCRIPTING_PYTHON3=ON
	KICAD_SCRIPTING_WXPYTHON=ON
	KICAD_SCRIPTING_WXPYTHON_PHOENIX=ON
	KICAD_SCRIPTING_ACTION_MENU=ON
	KICAD_USE_OCC=ON
	KICAD_SPICE=ON

I’m guessing that because it’s a nightly some rules are broken. On Linux /usr/share is intended to be shareable to other machines so should not contain arch specific files, only files like documentation, non-arch libraries. (/usr/share is used on my 5.1.9 system.) On the other hand /usr/lib will contain arch specific libraries. This kind of sharing usually via NFS was more prevalent in the past when disc space was more expensive.

Anyway you should wait for v6 before judging if /usr/lib is still used then and appropriate.

If I change some of the paths prefixed KIKCAD6 then KiCad tells me that my changes are temporary and will disappear when I quit the GUI.

BTW: I do not have entries likeKICAD_…, just the KICAD6_… entries

Meanwhile …

  • I found out that if I add a path it will end up in ${HOME}/.config/kicad/5.99/kicad_common.json instead of ${HOME}/.config/kicadnightly/5.99/kicad_common.json . What a surprise!!!
  • I updated to the latest nightly available for Ubuntu focal to see if the “feature” get settled, but I was not successful.
  • I suppose the “feature” is to be seen with builds after March 31st. No prove there though as I have not used KiCad for a while. I did updates to KiCad though when other Ubuntu updates were offered. So I cannot pin down my problem to a specific build of KiCad. :anguished:

My version info now:
Application: KiCad

Version: 5.99.0-unknown-a8896ebd73~125~ubuntu20.04.1, release build

Libraries:
wxWidgets 3.0.4
libcurl/7.68.0 OpenSSL/1.1.1f zlib/1.2.11 brotli/1.0.7 libidn2/2.2.0 libpsl/0.21.0 (+libidn2/2.2.0) libssh/0.9.3/openssl/zlib nghttp2/1.40.0 librtmp/2.3

Platform: Linux 5.8.0-45-generic x86_64, 64 bit, Little endian, wxGTK, ubuntu, x11

Build Info:
Date: Apr 3 2021 08:04:16
wxWidgets: 3.0.4 (wchar_t,wx containers,compatible with 2.8) GTK+ 3.24
Boost: 1.71.0
OCC: 7.3.0
Curl: 7.68.0
ngspice: 31
Compiler: GCC 9.3.0 with C++ ABI 1013

Build settings:
KICAD_SCRIPTING=ON
KICAD_SCRIPTING_MODULES=ON
KICAD_SCRIPTING_PYTHON3=ON
KICAD_SCRIPTING_WXPYTHON=ON
KICAD_SCRIPTING_WXPYTHON_PHOENIX=ON
KICAD_SCRIPTING_ACTION_MENU=ON
KICAD_USE_OCC=ON
KICAD_SPICE=ON

I probably have the KICAD_ and KICAD6_ entries because I have both V5.1.9 and V5.99 installed.

I also get this warning if I try to change such a path:

But I’ve never had a problem with it. Why would you want to change such a path? They are just for KiCad’s default libraries installed at default locations.

If you want to manage personal libraries, then do so with custom environment variable names. In my previous screenshot for example the is a “KIDATASHEET” which I made myself, and it is used as a path to where I keep local copies of datasheets.

Apparently this is some kind of problem for you, because otherwise you would not have started this thread. What is your reason for even wanting to change those paths? It’s possible you are looking for the wrong solution to your problem.

Once I had a 5.x stable of KiCad installed and then I removed it. Now I have KiCad nightly installed only and the files for symbols and footprint coming along with the nightly are not to be found as the KICAD6_… variables point to the wrong directories. I found out about the feature by accident when I opened the scheme file of a project where I use a pin header (conn…) located in the symbol files provided by the nightly. Normally I copy things over to files I control so it took a while to discover that KiCad had a problem at all.

So if I understand you correctly: You have some enviroment variables, for example KICAD6_FOOTPRINT_DIR which points to the same path as I have: /usr/lib/kicad-nightly/share/kicad/modules, but your actual libraries are in a different location: /usr/share/… Correct?

You have an Ubuntu (derivative), what is the output of:

i   kicad-nightly                                      - Electronic schematic and PCB design software                 
p   kicad-nightly-dbg                                  - Debug symbols for kicad                                      
i A kicad-nightly-demos                                - Common files used by kicad                                   
i   kicad-nightly-footprints                           - Kicad footprints (modules)                                   
i   kicad-nightly-libraries                            - meta-package for dep to all KiCad libraries (symbols, footpri
i   kicad-nightly-packages3d                           - Kicad packages3d (3d models for footprints)                  
i   kicad-nightly-symbols                              - Kicad symbols (schematic)                                    
i   kicad-nightly-templates                            - Kicad templates 

The i in the first column shows that the packages are installed. Do you have these installed? (You are possibly trying to work with libraries for another KiCad version).
If footprints are not installed, you can do so with:

sudo apt install kicad-nightly-footprints

You are also writing stories about uninteresting subjects such as:

This has zero.zero relevant information for me.

Also text as:

have very little useful information. It does not say which paths point to where. Compare that with the screenshot I posted previously, which lists all my environment variables and where they point to.
For example, even though this thread is getting quite long, you still have not posted what all your paths are, and what you want them to be.

For some homework, read:
http://catb.org/~esr/faqs/smart-questions.html

1 Like

Summary: Some purge / installs and a reboot later the problem is gone. :thinking:

Long story:
After installing the latest nightly the wrong paths were still stored in env vars. A reboot later the problem was gone.

AFAIK my problem was related to the issue mentioned by user @eelik wrote at [Nightly] [SOLVED] configured paths (for symbols / footprints / templates) do not point to /usr/share .