I am confused, the library table should be per operating system user (after all it is in ~/.config/kicad). So how can the libs of one user appear in the one of the others? Is it possible you add the user specific libs to the project library table?
If you however want all users to work on the same projects and have access to the same libs then make a special directory somewhere under /home/ where you give all users access rights (example by adding all users to the same group and give that group ownership). Then instruct all users to add these libs to their personal global library table.
By the way i made the assumption that you are under version 5
I’m not saying that the libraries of one user appears in the list of another, but that KiCAD looks for the other users’ library files and thus generates error messages.
Did I add the user specific libraries to the project? Yes, it’s possible, but I don’t know where or when I might have done that.
The scenario is that each user should have an own environment, it’s not about collaboration.
I’ll read your links, thanks, perhaps that’ll give me a clue.
EDIT: I think you’re right about the user libraries saved with the project. Now I just need to find out how to avoid this.
Check the symbol library manager. It has two tabs. One for the libraries added specifically to that project and one for the global libs. My guess is the lib in question was added to the project library table. For details see the lectures posted above.
This is however not the solution here. The project lib tables should never ever have a library in them that is not referenced via the KIPRJMOD variable. In other words project local libs should (possibly must) be placed under the project root directory or a subfolder within it.
The global tables can not be the source of the issue as they are not shared between users. (Unless of course they use symbolic links or some other dirty tricks to get different users to point to the same global user specific config files)
Your suspicion that some libraries were stored with the projects turned out to be correct.
I’ve now cleaned my setup, and all libraries are now either in:
The errors are gone as well.
This still leaves a problem: the personalized libraries are defined and stored with the current user, but have to be defined as “Global” to avoid the problems (making them available to all).
I’m missing a level here, perhaps specific to *NIX systems.
To my mind, libraries should be classified as “Global”, “User” and “Project”, not just “Global” or “Project”. And you can even forget the “Project” part, who needs it?
In that way, every user would have access to the default library integrated with her/his own, instead of being overwhelmed with the libararies of all users.