Kicad Github PCB footprint libraries


seems simple enough. will give it a try and see what happens.


I have a doubt. I used the Library Wizard in order to add libraries from Github and selected a directory to save a copy. The copy was madden, but all the global entries is pointing to Github through ${KIGITHUB}.

Today while I was without internet I got a failure message. Then I tried to append a saved local library, but kicad complained about a duplicated entry in the library.

What do I need to do in order to use the local saved libraries ?


Clear Lib table and run wizard again, this time select downloaded libraries (files on disk not GitHub repo).



humm, but this means that I will not be able to have the updated versions from github anymore unless I delete the table and run the process again, right?


In fact yes. But you can workaround this. Create two library tables: one with GitHub libraries, second with local libraries; both in separate files, for ex. fplibtable.github and fplibtable.local. With simple batch file or shell script you can overwite default fp-lib-table in case of Internet breakdown to easy switch between remote and local before start KiCad.
The only thing you have to remember is to periodically download libraries from GitHub on disk to keep it sync.


Yep, it is a easy workaround… trying it…
But strangely I’m not able to import “files on my computer” right now.
I can select that option in the first page of the wizard but in the next page (where I should select the directory to import from) the “next” button is disabled, no matter which directory I select. :confused:

— update
Figured it out. You can’t select the parent folder that contains all pretty dirs. You must select the pretty directories directly.


To be clear, you’re talking about keeping two text files and a script to choose which library (local or remote) writes over KiCad’s “fp-lib-table” file (on Ubuntu, this file is at /home/your_user_name/.config/kicad/fp-lib-table).

If switching to remote/a.k.a. GitHub libraries, the script may pull changes and then overwrite fp-lib-table with paths for remote. If you choose to work with local libraries, the script would then overwrite fp-lib-table with the appropriate paths?