How to distribute sketches with libraries to Openframe?

Yes – not many, but a few. For example, Geomerative and SVG EXport both use Batik, so they can’t be included in one sketch at the same time. They can both by installed in the libraries folder, however.

I’m not sure I understood the question. Do you mean, why does PDE not pre-download contributed libraries?

It depends on what you are trying to support with OpenFrame – I don’t understand the platform the way you do. Is it primarily meant to be a digital image frame that runs Processing sketches, or is it a base platform for building interactive installations? Should it support sound?

If a frame – starting with the libraries page Libraries / Processing.org it is pretty easy to cull all the things that wouldn’t make sense, like hardware and IO interface. Kinect cameras, motion detectors, thermal tape printers, leap motion, touch interfaces – none of that is relevant to a sketch running on an HDMI monitor. If there is no mouse interaction then you probably don’t need things like PeasyCam or Picking, which are interactive in concept. Without a cam you probably wouldn’t need a QRcode reader. With no interface you probably don’t need GUI packages like controlp5 or g4p. If the point is on-display output, you don’t need stereoscopic renderers like Camera3D, or data export support for OBJ or PDF. Et cetera. All these things could still be used by an OpenFrame sketch somehow in theory – for example, a controlP5 based dashboard that is non-interactive, or a peasycam gimbal that is scripted – but if base support is for a monitor running a no-interaction sketch without attached peripherals, that limits the scope of base library support a lot.

So if you wanted to preinstall (or provide a convenience installation script for) a base set of commonly useful libraries, it might looks something like this:

  • video: GL Video
    125M ./glvideo

  • graphics: Box2D, Geomerative, grafica, HE_Mesh, mesh, PixelFlow, Shapes3D, UnfoldingMaps
    36M ./hemesh
    15M ./PixelFlow
    8.5M ./geomerative
    4.1M ./Shapes3D
    1.2M ./grafica
    656K ./box2d_processing
    72K ./geoMap
    72K ./mesh

  • sound: Sound, minim, themidibus, Beads
    67M ./sound
    23M ./minim
    620K ./themidibus
    14M ./beads

  • frameworks: gicenreUtils, proscene, RiTa, ToxicLibs
    36M ./toxiclibs
    18M ./proscene
    15M ./RiTa
    5.6M ./gicentreUtils

…that’s about 370 MB – in particular because of using the Raspberry Pi video library, not Video which is 620 MB of mostly mac and windows stuff. You could throw a few dozen other math / timing / util libraries in there for another 5MB or so, or it might be best to keep it simple just have people add those to sketches. If you were going to add local network communication I might suggest oscP5 and ArtNet – although I suspect that wouldn’t be easily configurable to work with the generic distribution mechanism that OpenFrame uses.

This is based on my understanding of Java Processing and the most commonly used libraries on these forums in recent years – Raspberry Pi users on that channel of this forum may have more advice about what won’t work or is a must-have for running sketches on a Pi.

Edit

This lists the above libraries alongside their download URLs, sizes, and corresponding contribution manager install locations. The names/urls could be made into JSON / a js script, perhaps.