Modular Vendor-OS Extensions

There is preliminary support for OS-plugins by now. An OS-plugin is an extension that:
1. has to be installed into a vendor-OS with the new script slxos-plugin
2. will add some files (may involve installing packages) to /opt/openslx/plugin-repo/<plugin-name> within the stage1 filesystem
3. provides a configuration hash, which is stored into the ConfTGZ by the slxconfig-demuxer
4. provides a configuration script that is copied into the ConfTGZ by the slxconfig-demuxer and which will be invoked by SLX init automatically. This script will then look at the configuration and at the available hardware and decide what to do in order to activate the plugin (like for instance prepares and loads the graphics driver or prepares the virtualization environment #135)

Anyone interested can find the new code (and an explanatory 'Example'-plugin) below the os-plugins-folder in project trunk.

The implementation is not complete yet, but it was proved to execute the 'Example' plugin all the way from stage1 to stage3.

Planned Extensions

  • proprietary X server stuff (kernel modules, Xorg modules and opengl libraries), for discussion see #92
  • virtualization environment (not simply the tools, but the integration of virtualization tools and guest OS as e.g. alternative desktop sessions)
  • local stuff extension - a simple copy module might be handy, where an avarage admin can list a set of files/directories, which should be copied into the stage1. By this means there would be an "official" way to add stuff, which is not lost with either vendor-os-update or slx toolset is updated ...