fwupd/plugins
2019-11-27 12:45:35 +00:00
..
altos Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
amt Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
ata Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
colorhug Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
coreboot Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
csr trivial: Properly namespace the defines in the exported header 2019-11-27 12:45:35 +00:00
dell Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
dell-dock trivial: Properly namespace the defines in the exported header 2019-11-27 12:45:35 +00:00
dell-esrt Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
dfu Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
ebitdo Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
emmc Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
fastboot Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
flashrom Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
jabra Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
logitech-hidpp trivial: Properly namespace the defines in the exported header 2019-11-27 12:45:35 +00:00
modem-manager Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
nitrokey Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
nvme Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
optionrom Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
redfish Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
rts54hid trivial: Properly namespace the defines in the exported header 2019-11-27 12:45:35 +00:00
rts54hub Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
solokey Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
steelseries Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
superio Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
synaptics-cxaudio trivial: Properly namespace the defines in the exported header 2019-11-27 12:45:35 +00:00
synaptics-prometheus Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
synaptics-rmi Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
synapticsmst Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
test Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
thelio-io Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
thunderbolt Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
thunderbolt-power Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
uefi Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
uefi-recovery Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
upower Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
vli-usbhub Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
wacom-raw Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
wacom-usb trivial: Properly namespace the defines in the exported header 2019-11-27 12:45:35 +00:00
meson.build Make gudev a compile-time option 2019-11-25 09:29:46 +00:00
README.md trivial: plugins: clarify stance on afuefi.efi 2019-08-23 10:54:58 -05:00

Adding a new plugin

An extensible architecture allows for providing new plugin types (for reading and writing different firmware) as well as ways quirk their behavior.

You can find more information about the architecture in the developers section of the fwupd website.

You can use the fwupd developer documentation to assist with APIs available to write the plugin.

If you have a firmware specification and would like to see support in this project, please file an issue and share the spec. Patches are also welcome.

We will not accept plugins that upgrade hardware using a proprietary Linux executable, proprietary UEFI executable, proprietary library, or DBus interface.

Plugin interaction

Some plugins may be able to influence the behavior of other plugins. This includes things like one plugin turning on a device, or providing missing metadata to another plugin.

The ABI for these interactions is defined in: https://github.com/fwupd/fwupd/blob/master/src/fu-device-metadata.h

All interactions between plugins should have the interface defined in that file.