Library management (3D and symbol)

Thanks for the info.[quote=“Rene_Poschl, post:2, topic:6118”]
Well this will be your own responsibility. But there is help availible. The symbol repo is taged for each kicad release. so you can just checkout the library tagged with your desired version number.
[/quote]

I have no problem setting the repositories the way I want. I can set up repos like this Symbols repo, Footprints repo. For footprints this works great. Official footprint repositories are included as submodules. This means I am synced with official repositories. Further more I can change official footprints (e.g. path to 3D models) locally and still merge changes on official repository to my local copy automatically and keeping the changes I’ve made (unless there is a conflict). It would be even better if there would be only one official repository, but that will happen sooner or later.

With symbols there is really no way to have the same setup. The official repo is fetched into (and not added as a submodule) and only symbols are retained. Consequently 3D files and other stuff is kept in repo history, making the repo big. Also repos are synced only locally and remote Symbols repo has no synchronization with official repo. I could sync them locally and upload the changes, but I would have to do this periodically. This calls for a dedicated machine and full automation. Not hard to do, but my thoughts were that this might be of use to somebody else also, thus it makes sense (at least in my head) that it should be located on official Kicad Github page.

Why all this hassle? I do understand that accessing libraries directly form github makes Kicad truly platform and installation independent. But I do prefer to keep my libraries local. Even if that means, that I have to deal with all the path issues. Now to sync the different machines I work on and to sync multiple developers Git is a pretty good substitution for a database. And since official libraries are available on Github I can connect (as as submodule or any other way) them to our library repositories. If I map local repository folder to a drive (on Windows) using subst and psubs I can also keep the paths the same on each machine (similar as in Kicad Classrom). Using Git hooks (post-merge) one could probably make this setup even platform independent.

TL;DR

Thanks for the info. I can see that given enough time Kicad will reorganize repositories in a saner way. Until then I will make do with my own solution. Everything else is just me talking about my process mainly to help me and maybe even somebody else.

1 Like