Commit Graph

18 Commits

Author SHA1 Message Date
Richard Hughes
29a524fdfb Add FuUsbDevice helper object
This allows us to move a lot of duplicated functionality out of each plugin.
2017-11-24 14:04:51 +00:00
Richard Hughes
49fafec020 Set environment variables to allow easy per-plugin debugging
This allows end-users testing a specific plugin to start fwupd with an extra
command line parameter, e.g. `--plugin-verbose=unifying` to output a lot of
debugging information to the console for that specific plugin.

This replaces a lot of ad-hoc environment variables with different naming
conventions.
2017-11-14 14:22:02 +00:00
Richard Hughes
0d7fdb3110 Split out the update detach and attach phases as explicit optional vfuncs
This allows us to do two things:

* Attach after a failed update, so the user isn't left with 'dead' hardware
* Split the detach and attach actions into different plugins in the future

This also allows us to have a separate vfunc to get the new version number
after flashing the firmware, as this may be handled in a different plugin to
the detach phase.
2017-11-14 10:49:43 +00:00
Richard Hughes
9c028f06b5 Move the database of supported devices out into runtime loaded files
When fwupd is installed in long-term support distros it's very hard to backport
new versions as new hardware is released.

There are several reasons why we can't just include the mapping and quirk
information in the AppStream metadata:

 * The extra data is hugely specific to the installed fwupd plugin versions
 * The device-id is per-device, and the mapping is usually per-plugin
 * Often the information is needed before the FuDevice is created
 * There are security implications in allowing plugins to handle new devices

The idea with quirks is that the end user can drop an additional (or replace
an existing) file in a .d director with a simple format and the hardware will
magically start working. This assumes no new quirks are required, as this would
obviously need code changes, but allows us to get most existing devices working
in an easy way without the user compiling anything.

This allows us to fix issues like https://github.com/hughsie/fwupd/issues/265
2017-11-02 19:08:51 +00:00
Richard Hughes
839099418f trivial: Add the start of a plugin tutorial 2017-10-12 22:07:44 +01:00
Richard Hughes
deae3a779d Add the plugin documentation to the main gtk-doc
It's only small, and trivial to include. In the future we can include a plugin
tutorial and some more examples.
2017-10-05 10:32:05 +01:00
Richard Hughes
80893e29fe trivial: Remove FwupdResult from libfwupd 2017-09-28 09:23:52 +01:00
Richard Hughes
4022700bc8 Do not install the libdfu helper library
In reality fwupd is the only user and we don't want to hold this library to the
same kind of API and ABI guarantees of libfwupd.
2017-09-06 16:21:32 +01:00
Richard Hughes
492131daa5 trivial: Include all the GTypes in the generated docs 2017-07-10 21:02:52 +01:00
Richard Hughes
1fdb335025 Remove the automake build system 2017-04-13 18:42:08 +01:00
Richard Hughes
57746cb839 Add the Meson build system as an alternate to autotools
Automake and autoconf are impossible to fully understand and Meson now provides
everything we need for a much smaller, faster, and more understandable build.

See http://mesonbuild.com/ for more information.
2017-04-12 16:35:18 +01:00
Richard Hughes
82dcdfeec6 trivial: Don't change the documentation output every time the version changes
This was added for cosmetic reasons, and including the version makes the
generated html documentation change every release even if there were no API
changes.
2017-04-12 14:53:55 +01:00
Richard Hughes
a985781308 trivial: No not list the API version indexes
We've been really bad at keeping these up to date, so just drop them.
2017-04-12 14:53:55 +01:00
Richard Hughes
16e2b4cc0f trivial: Do not try to load tree_index.sgml in the documentation
We don't have a hierarchy file, so it's somewhat of a mystery how this ever was
generated.
2017-04-12 14:53:54 +01:00
Ting-Wei Lan
9b928832c3 build: Fix gtk-doc build when srcdir != builddir 2016-08-01 12:02:03 +08:00
Mario Limonciello
308d8dd348 Embed fwupd version in generated libfwupd and libdfu documentation 2016-07-29 13:25:05 -05:00
Ting-Wei Lan
da63e94199 build: Fix gtk-doc build when srcdir != builddir 2016-06-14 10:47:32 +08:00
Richard Hughes
5ac25f32e0 Generate gtk-doc documentation for libfwupd 2016-04-01 11:22:31 +01:00