I have published an “easy to use” installer for KiCad data, called kipi (KiCad Package Installer). It should be considered as “alpha test” or experimental status.
kipi is a PyPI package which can be installed using “pip install kipi”. kipi is a command line tool currently.
The model used is based on Arduino packages, although it is similar to many other schemes.
- There is a file on the interweb somewhere, which describes a data package.
- The user runs kipi, giving the URL of the data package
- kipi downloads the package info URL. The URL gives further info about how to get the data, either as a git repository, or via zip files. Each package has a publisher and zip files also have a version, which together identify the package and version.
- The zips are unpacked, or a git repo cloned.
- Depending on the content type, kipi copies files to appropriate folders, or for footprints and symbols, updates the global lib-tables.
- A local config file keeps track of what has been installed and where.
Removing packages is simple, since kipi tracks of what has been installed and where.
Updating is also easy, because kipi remembers the URL of the package. The URL is fetched again to determine if new versions are available (or remote git repo checked). If needed new zips are downloaded, or a git repo is updated.
KiCad must not be running when packages are modified. Some features are not available in KiCad v4. Installing 3dmodels requires the user to configure KiCad with a writable location for KISYS3DMOD.
I have created package info files for kicad official footprints, symbols, 3dmodels and templates. I have also created info files for SparkFun, DigiKey and Walter Lain libraries. These can be found at https://github.com/bobc/kicad-getlibs/tree/master/packages.