Commit Graph

235 Commits

Author SHA1 Message Date
Richard Hughes
06a2dcf62b Remove gtkdoc build option
We've seen that gi-docgen is active and other projects are switching to
it. Remove the legacy (and slow) gtk-doc build support.
2022-06-11 21:26:46 +01:00
Richard Hughes
cfd128a649 Break libfwupdplugin ABI so we can tidy up some vfuncs and symbols 2022-06-03 13:47:11 -05:00
Lukas Märdian
8702600928 debian: debci: don't stderr-fail the autopkgtest on modprobe error
it's optional as tests can be skipped, if mtdram module isn't there

Signed-off-by: Lukas Märdian <slyon@ubuntu.com>
2022-05-18 06:56:02 -05:00
Lukas Märdian
16ef6a3a4a debian: debci: load the 'mtdram' module, to make it execute the mtd-self-test 2022-05-17 08:57:05 -05:00
Mario Limonciello
f818404d81 trivial: debian: set up fwupd-refresh.service/fwupd-refresh.timer
Create a dedicated user account for these to use, and set the preset
to leave it as enabled by default.

Fixes: https://github.com/fwupd/fwupd/issues/3037
2022-04-25 14:06:04 -05:00
Richard Hughes
2d5186622c Add FuProgress to ->prepare and ->cleanup
Some plugins were creating local versions (which were not attached to
the daemon progress in any way) as a workaround as they needed to do
actions that took a long time to complete.
2022-04-15 16:50:06 +01:00
Richard Hughes
92515d193a Add coSWID and uSWID parsers to libfwupdplugin
These parse the structures as defined in:

 * https://datatracker.ietf.org/doc/draft-ietf-sacm-coswid/
 * https://github.com/hughsie/python-uswid
2022-03-15 14:37:02 +00:00
Mario Limonciello
661990ed98 Convert build system to use meson tristate features
tristate features will automatically disable if dependencies marked
as required are missing.

Packagers can manually override using `auto_features`.

Link: https://mesonbuild.com/Build-options.html#features
2022-02-28 08:34:48 -06:00
Mario Limonciello
cc19be590a trivial: allow fwupd.service to be run in containers for autopkgtest
Generally we don't want this - but for the autopkgtest case it's OK.
Fixes: #4299
2022-02-19 06:56:24 -06:00
Yuan-Chen Cheng
4642e7694e fall back to signed EFI app as secure boot is off.
Some distribution hopes to not install the not-signed EFI app by default.
However, for the corner case, the user might still want to use not-signed
one (maybe to work around bugs or do testing). This implements
a logic that uses the not-signed EFI app as the secure boot is off, and
if it does not exist, then we fall back to using the signed one.

Also drop fwupd-unsigned from Recommends of fwupd in debian/control.
2022-02-15 08:15:56 -06:00
henry-nicolas
a89e4ae2fc debian/rules: enable modem-manager plugin support 2022-01-31 10:18:46 +00:00
Crag Wang
fbcc031ae4 trivial: refresh bash completion to reflect recent changes 2022-01-17 13:41:20 -06:00
Mario Limonciello
c1b2377782 trivial: disable logitech bulk controller on ubuntu by default
It needs to go through a MIR
2022-01-06 10:52:10 -06:00
Mario Limonciello
ab7a5fc569 trvial:debian: Add Rules-Requires-Root clause 2022-01-04 14:38:16 -06:00
Mario Limonciello
12fed692e3 trivial: debian: drop unused debian/source/include-binaries 2022-01-04 14:38:16 -06:00
Mario Limonciello
07623cafa3 trivial: debian: use wildcards in lintian override for library-not-linked-against-libc 2022-01-04 14:38:16 -06:00
Mario Limonciello
7c3c796d3a trivial: debian: drop lintian overrides for EFI binary, gone from the split 2022-01-04 14:38:16 -06:00
Mario Limonciello
312ac307cb trivial: debian: Update symbols and shared library name 2022-01-04 14:38:16 -06:00
Mario Limonciello
0f35f44cb2 trivial: debian: ignore subprojects and build directory from upstream builds in same folder 2022-01-04 14:38:16 -06:00
Mario Limonciello
eff0b60b98 trivial: debian: fix my uploader email address 2022-01-04 14:38:16 -06:00
Richard Hughes
3291bd40ce Make Upower and powerd support optional
In some cases you really know that the daemon is never going to exist.
2021-11-27 18:46:27 +00:00
Richard Hughes
9d37e447a1 Convert the device test script to a fwupdmgr subcommand
This allows us to do a few things:

 * Remove the runtime dep on Python 3, which is tricky for ChromeOS
 * Test composite devices more efficiently, only writing once per test
 * Automatically upload signed reports for successful device tests.
2021-09-16 15:01:36 +01:00
Richard Hughes
a5a978b3f6 Rename some confusing API
More than one person has asked about 'why call fu_plugin_update() for a
reinstall or downgrade' and I didn't have a very good answer.

The plugin API is not officially stable, and we should fix things to be
less confusing. Use the same verbs as the FuDevice vfuncs instead.
2021-08-06 19:49:53 +01:00
Richard Hughes
65b3115b48 trivial: Move the builder docs to docdir
Fixes https://github.com/fwupd/fwupd/issues/3464
2021-07-09 16:40:36 +01:00
William Wilson
238e8b8781 Compile with the flashrom plugin in Ubuntu now that flashrom is being included in main (https://bugs.launchpad.net/ubuntu/+source/flashrom/+bug/1912371) 2021-07-01 17:45:32 +01:00
Mario Limonciello
1e17457b16 Allow building the documentation with gi-docgen and gtk-doc
Until gi-docgen is declared stable support either of them.
This effectively means that hand builds and CI builds will use
gi-docgen, but distro builds use gtk-doc-tools.
2021-06-09 22:21:53 +01:00
Mario Limonciello
6ab897f66b disable wrap mode for debian (if deps are missing we don't run packaging) 2021-06-09 21:21:06 +01:00
Richard Hughes
b94a7b507b trivial: Do not generate fwupdplugin.vapi
We don't want applications to use libfwupdplugin, and we don't want to
support plugins written in Vala either.
2021-05-17 09:27:54 +01:00
Mario Limonciello
99832622e1 uefi-capsule: Move EFI binary into a subproject
This will allow distributions to package and distribute the unsigned
EFI binary separately, similar to what has been done for GRUB.
2021-04-23 13:59:10 -05:00
Mario Limonciello
1f9c035788 trivial: fix some trailing whitespace problems across the project 2021-04-09 16:02:20 +01:00
Norbert Kamiński
60e84c617f contrib/qubes: Add Qubes wrapper source and create packages
This patch is adding the fwupd wrapper for Qubes.
The wrapper provides fwupd functionalities for Qubes R4.1.
It creates three packages (two RPMs and one Debian package):
fwupd-qubes-dom0 (RPM)
fwupd-qubes-vm (RPM)
fwupd-qubes-vm-whonix (deb)
More information about the wrapper could be found in the
contrib/qubes/README.md

Signed-off-by: Norbert Kamiński <norbert.kaminski@3mdeb.com>
2021-02-26 06:40:21 +00:00
Richard Hughes
a76de3279b Add a test BLE plugin for a demo 2021-02-22 16:53:41 +01:00
Mario Limonciello
c52079f3eb trivial: don't hardcode expected plugins list for CI
Let these get turned on no matter what we change in daemon.conf
2021-02-19 14:27:28 -06:00
Mario Limonciello
a862473928 trivial: debian: update signing template to match downstream 2021-02-16 08:05:49 -06:00
Richard Hughes
124f2295ee trivial: Untie efi_os_dir from the SBAT distro ID
We happily fallback with an unset -Defi_os_dir and it gets confusing explaining
why the EFI dir needs to be set on a non-supported system.

In practice they'll probably have the same eventual value on most supported
distributions.

Fixes https://github.com/fwupd/fwupd/issues/2873
2021-02-12 16:01:00 +00:00
Javier Martinez Canillas
378b00018b uefi-capsule: Add SBAT metadata to the fwupd EFI binary
The Secure Boot Advanced Targeting (SBAT) [0] is a Generation Number Based
Revocation mechanism that is meant to replace the DBX revocation file list.

Binaries must contain a .sbat data section that has a set entries, each of
them consisting of UTF-8 strings as comma separated values. Allow to embed
this information into the fwupd EFI binary at build time.

The SBAT metadata must contain at least two entries. One that defines the
SBAT version used and another one that defines the component generation.

Downstream users can add additional entries if have changes that make them
diverge from the upstream code and potentially add other vulnerabilities.

[0]: https://github.com/rhboot/shim/blob/sbat/SBAT.md
2021-02-10 16:40:59 +00:00
Mario Limonciello
c794b754a6 trivial: Make it easier to know what packages to install to let
helper scripts run.

Fixes: #2836
2021-02-01 16:13:32 -06:00
Mario Limonciello
fcc9dcc0e5 trivial: drop Jared from signing template uploaders 2021-01-25 20:23:47 -06:00
Simon McVittie
4289c1665c trivial: debian: Add trivial compile/link/run test for libfwupd-dev
Tests like these are a surprisingly effective way to detect packaging
mistakes.

Reproduces: #980691, #980684
2021-01-21 09:57:25 -06:00
Simon McVittie
fe36968d5e trivial: debian: d/control.in: Add missing -dev dependencies
Each -dev package needs to depend on all dependencies' -dev packages
that are required when linking against the included library with
pkg-config.

Closes: #980691, #980684
2021-01-21 09:57:14 -06:00
Mario Limonciello
5791b3df94 trivial: debian: remove ata.conf on upgrade (Closes: #980570) 2021-01-20 14:16:47 -06:00
Mario Limonciello
ac5d2c5370 trivial: debian: fwupd.postinst: Adjust to read /etc/os-release instead
`/etc/lsb-release` isn't in modern debian installations
2021-01-19 15:47:50 -06:00
Mario Limonciello
5c04b4f4bd trivial: debian: read /etc/lsb-release instead of dpkg-dev (Closes: #977860, #977861, #970783) 2021-01-19 12:47:46 -06:00
Mario Limonciello
924c7080fc trivial: debian: add dbus to recommends (Closes: #980049) 2021-01-13 14:16:00 -06:00
Mario Limonciello
dcd154881a trivial: debian: fix modules-load.d directory
Fixes: #2755
2021-01-13 11:46:07 -06:00
Mario Limonciello
cf9a74ec35 trivial: debian: migrate uefi->uefi_capsule in uefi.conf
Fixes: #2748
2021-01-12 13:34:11 -06:00
Richard Hughes
5c9b1fcc81 Only include the start year in the copyright header
The end year is legally and functionally redundant, and more importantly causes
cherry-pick conflicts when trying to maintain old branches. Use git for history.
2021-01-07 14:48:16 +00:00
Richard Hughes
ee2e2c3674 uefi: Rename to uefi-capsule
Rename the plugin to make it clearer of the scope.

Based on a patch from Mario Limonciello <mario.limonciello@dell.com>
2021-01-05 15:31:22 +00:00
Mario Limonciello
9547d7a4b3 trivial: debian: only install fwupd-msr.conf if needed
Fix FTBFS on !x86
2020-12-08 10:47:46 -06:00
Mario Limonciello
4036d4f9e2 trivial: debian: migrate modules-load.d files to correct location
They shouldn't be conffiles.
Fixes: #2592
2020-12-08 09:42:54 -06:00