mikeanthonywild / hyperterm-hardware

An open-source laptop with maintainability and sustainability in mind. This repo contains hardware components (schematics, PCBs, SPICE models, simulations etc.).
https://mikeanthonywild.github.io/hyperterm-hardware/
MIT License
0 stars 0 forks source link

Package ngspice with shared lib #3

Closed mikeanthonywild closed 6 years ago

mikeanthonywild commented 6 years ago

The version of ngspice in the Ubuntu repos doesn't ship with the ngspice shared library (required for PySpice). Currently the Dockerfile downloads ngspice and builds from source, which adds a bunch of time to the build process.

We should create a PPA and package ngspice up with the shared library to speed up build time.

mikeanthonywild commented 6 years ago

Source uploaded to PPA here: https://launchpad.net/~mikewild/+archive/ubuntu/ngspice-shared. It's not immediately obvious whether this worked however. By default Ubuntu will try fetching ngspice from the multiverse repository – no doubt we'll need to change the pinning to get it to pick up the version from the PPA.

On the build box, it doesn't seem to pick up any packages from the PPA:

$ apt-cache policy ngspice
ngspice:
  Installed: (none)
  Candidate: 26-1.1
  Version table:
     26-1.1 500
        500 http://archive.ubuntu.com/ubuntu zesty/multiverse amd64 Packages

According to the Launchpad page, the package is pending publication for AMD64: https://launchpad.net/~mikewild/+archive/ubuntu/ngspice-shared/+packages.

mikeanthonywild commented 6 years ago

Launchpad has successfully built the AMD64 package and Ubuntu will install it by default once the PPA is added. However it doesn't look like the shared library was actually built:

$ dpkg-query -L ngspice | grep 'so'
/usr/share/ngspice/include/ngspice/lsort.h
mikeanthonywild commented 6 years ago

Seems like we're missing several additional steps required to get the library into the package. See this patch here: https://bugs.debian.org/cgi-bin/bugreport.cgi?att=4;bug=834335;filename=0004-ngsspice-adding-libngspice.so-to-the-package.patch;msg=10.

If all else fails, then there's a KiCAD PPA with libngspice-kicad: https://launchpad.net/~js-reynaud/+archive/ubuntu/ngspice.

mikeanthonywild commented 6 years ago

Closed in #5.