
plugin ships as source. 2.2.0.0 is the first public release — previously it lived only as an internal dependency inside FFS, where it loads the .ffs plugins.
Each archive is a git archive snapshot at the release tag: the full source tree — src/dso/, src/plugin/, src/sign/, the apps/ CLI tools, their shell completions, the example/plugin Shape demo, the CMake build files, the Conan recipe, and the licence. Extract and follow the installation guide.
OpenSSL is resolved by conan install . in the extracted tree, or make it available to CMake yourself. Without it, dsold and the header-only plugin still build; plugin-sign, the tools, and the signed-load overloads are skipped.
sha256sum -c plugin-2.2.0.0.tar.gz.sha256
# plugin-2.2.0.0.tar.gz: OK
2.2.0.0 — first public release. Three pieces that work together, or on their own:
dsold — a thread-safe dlopen wrapper (fedem::dso::DSOLoader). Load one shared object, every file in a directory, or every entry on LD_LIBRARY_PATH; every handle is kept for the process lifetime and access is serialised with a mutex.plugin:: — self-registering factory templates. A plugin translation unit adds one line (REGISTER(Circle, Shape) or REGISTER_WITH_CONFIG(...)), and a factory for that name appears in the host's catalog the moment the DSO loads — no linking against the concrete type.plugin-sign — Ed25519 manifest signing for when "load anything on the path" is too much trust. dso-sign embeds a JSON manifest and a 64-byte signature as ELF sections; DSOLoader::loadVerified checks them against a trusted-keys directory at load time and throws SignatureRejected below the requested trust floor. The dso-keygen / dso-sign / dso-verify CLI tools and their shell completions ship alongside the libraries.PLUGIN_STANDALONE so an embedding host never clashes on the docs target name.--target testShape used to build the host without the Circle/Square/Ellipse MODULEs it dlopens at runtime.plugin, dsold, plugin-sign and the dso-* tools are MIT-licensed — see the License page. OpenSSL (Apache-2.0) is a build and link dependency of the signing half only.