Commit Graph

1026 Commits

Author SHA1 Message Date
Mario Limonciello
98cd40e09a trivial: shuffle the order of contrib/setup
By pre-commit getting setup early we were installing markdown and
meson into the virtual environment.  This might not be a bad thing
if we encouraged virtual environments for development, but we don't.
2022-07-23 14:01:31 -05:00
Mario Limonciello
1addd4d045 trivial: fixup setup helpers to install right version of meson
if meson wasn't installed by pip it won't have a version string
2022-07-23 14:01:31 -05:00
Bruno Pagani
757b03998c contrib/ci: do not upgrade Arch continuously
`yu` was added in 014e5526ff to solve cache issues.

But since then several other invocations of pacman have been added and doing so constantly is pointless, as you are unlikely to see new upgrades while the CI is running (and it might not be desired either). It also breaks testing older versions of fwupd as seen in GH-4860. So upgrade only once at the beginning and keep installing from the same cache afterwards.
2022-07-23 09:49:55 -05:00
Richard Hughes
fd458cd0de Migrate away from the deprecated distutils 2022-07-19 13:34:02 +01:00
Richard Hughes
62fc515714 Allow loading in emulated host profiles for debugging
This allows us to load sets of different host security attributes
for testing the various front end tools we have now. e.g.

    sudo FWUPD_HOST_EMULATE=thinkpad-p1-iommu.json.gz fwupd

or, using a non-compressed absolute path:

    sudo FWUPD_HOST_EMULATE=/tmp/test/thinkpad-p1-iommu.json fwupd

Data can be created with `./contrib/generate-emulation.py file.json`
and then can be manually modified if required. Running the script on
a file that already exists will just strip out any unneeded data, as
well as piping content into it using stdin.

As a precaution, the org.fwupd.hsi.HostEmulation attribute is added
so we do not ask the user to upload the HSI report. It also allows
the LVFS to ignore any HSI reports with this attribute for clients
that upload HSI reports regardless.

See https://github.com/fwupd/fwupd/discussions/4832
2022-07-18 16:27:59 +01:00
Mario Limonciello
7a9fffe3a6 Enable protobuf-c (and relevant plugins) based on them in Ubuntu
an MIR has been completed in Ubuntu for this.

https://bugs.launchpad.net/ubuntu/+source/protobuf-c/+bug/1956617
2022-07-13 14:38:04 -05:00
Richard Hughes
34ff01fdf5 trivial: Continue to install the index page to fix the docs deployment 2022-07-11 16:44:12 +01:00
Richard Hughes
74f6faa4a1 trivial: Sync spec file with downstream 2022-07-11 12:49:15 +01:00
Richard Hughes
8f3ebe62c2 trivial: Fix downstream spec file 2022-07-11 11:54:14 +01:00
Richard Hughes
ab9f27e6db Add a precommit script to check for missing GObject finalizers 2022-07-11 11:16:47 +01:00
Simon Glass
cbfda0739c vbe: Add a new plugin for writing Flat Image Trees
This adds the logic for the VBE plugin. It supports reading information
from the system to determine which VBE method (a device in fwupd) is in
use, then creating those devices to handle the actual update.

Verified Boot for Embedded (VBE) relies on FIT files to operate.
FIT is a way of packaging multiple images along with information about
them.

Signed-off-by: Simon Glass <sjg@chromium.org>
2022-07-11 08:28:42 +01:00
Richard Hughes
7a224007f2 Add support for Flat Image Tree aka FIT firmware 2022-07-08 14:05:20 +01:00
Richard Hughes
f3755ef708 Add support for Flattened Devicetree aka FDT firmware 2022-07-08 14:05:20 +01:00
Mario Limonciello
c0579edd98 trivial: fedora: don't require dell plugin for synaptics-mst anymore 2022-07-06 19:27:30 +01:00
Mario Limonciello
5f202fca1e trivial: drop plugin_thunderbolt configuration option
This isn't really needed anymore because the only dependency is
gudev which is already a feature that is disabled dynamicall.y
2022-07-05 11:23:02 -05:00
Mario Limonciello
9b30739d76 trivial: change docs to a meson feature (Fixes: #4791) 2022-07-01 10:56:12 +01:00
Richard Hughes
a61bb37881 Build the quirk files into the daemon as a GResource
Interestingly, this increases the `fwupd` binary size by ~30kb but
reduces the installed size of /usr/share/fwupd/quirks.d by ~330kb.
2022-06-30 18:52:24 +01:00
Richard Hughes
fefb034d32 trivial: Add deps when building on aarch64 2022-06-29 16:15:41 +01:00
Mario Limonciello
ac55012001 Revert "trivial: move some jobs back to Ubuntu 20.04 to fix CI"
This reverts commit 8035b48158.
2022-06-28 08:29:16 -05:00
Richard Hughes
96b423e04f Add support for IFWI Intel Flash Program Tool (aka FPT) firmware 2022-06-28 10:09:58 +01:00
Richard Hughes
08c7172168 Add support for parsing OptionROM firmware 2022-06-28 10:09:58 +01:00
Richard Hughes
f1542c3f9f Add support for IFWI Intel Code Partition (aka CPD) firmware 2022-06-28 10:09:58 +01:00
Mario Limonciello
39c9d9dd40 trivial: arch: generate locales in the container 2022-06-27 00:26:47 -05:00
Mario Limonciello
f3e520387a Revert "trivial: ci: switch libsystemd dependency to systemd"
This reverts commit f5c7f2b789.
2022-06-27 00:18:33 -05:00
Mario Limonciello
f0ea7e1717 trivial: upgrade/install pip, meson and markdown if necessary during setup
This is super important because the Ubuntu CI job publishes documentation.
2022-06-26 16:01:10 -05:00
Mario Limonciello
687ee06470 trivial: get test firmware after we install git 2022-06-26 16:01:10 -05:00
Mario Limonciello
b3014c2ebf trivial: drop command to install dependencies in Ubuntu CI
it's handled by ubuntu.sh now
2022-06-26 16:01:10 -05:00
Mario Limonciello
8035b48158 trivial: move some jobs back to Ubuntu 20.04 to fix CI 2022-06-26 16:01:10 -05:00
Mario Limonciello
e828ab4d19 trivial: explicitly install python3-apt for Debian container too 2022-06-26 16:01:10 -05:00
Mario Limonciello
7e007b3bfa trivial: add sudo for debian-i386 CI build 2022-06-26 16:01:10 -05:00
Mario Limonciello
f5c7f2b789 trivial: ci: switch libsystemd dependency to systemd 2022-06-23 16:45:06 -05:00
Mario Limonciello
0f07fe16b1 trivial: fix arch CI build 2022-06-21 03:27:38 -04:00
Mario Limonciello
6a2637c823 trivial: fix debian CI build 2022-06-21 03:27:38 -04:00
Gaël PORTAY
299b42fe96 trivial: Make meson.build indentation consistent 2022-06-21 03:27:38 -04:00
Mario Limonciello
bb2ea82473 trivial: validate packages exist before installing in helper script 2022-06-15 09:43:42 -05:00
Norbert Kamiński
7e6b77e12c qubes/test/fwupdmgr: Update cabinets checksums and URLs
Signed-off-by: Norbert Kamiński <norbert.kaminski@3mdeb.com>
2022-06-14 22:20:30 +01:00
Norbert Kamiński
c81094f0ba qubes/src/heads: Update Heads versioning
Signed-off-by: Norbert Kamiński <norbert.kaminski@3mdeb.com>
2022-06-14 22:20:30 +01:00
Richard Hughes
2dc6a7ef73 Remove fu_i2c_device_read_full()
Just use the version with the length specified.
2022-06-14 14:36:52 -05:00
Richard Hughes
bb577bdf04 f-fu_smbios_to_string 2022-06-14 14:36:52 -05:00
Richard Hughes
fc2da47b69 Remove fu_strtoull_full() 2022-06-14 14:36:52 -05:00
Richard Hughes
377bcb718f Remove the 'common' prefix from the volume creation methods 2022-06-14 14:36:52 -05:00
Richard Hughes
4105768a01 Remove the 'common' prefix when parsing version numbers 2022-06-14 14:36:52 -05:00
Richard Hughes
1d9d82ebc5 Use a common prefix for CPU-specific methods 2022-06-14 14:36:52 -05:00
Richard Hughes
3e0a4dc1c3 Be smarter and include less header files per source file 2022-06-14 14:36:52 -05:00
Richard Hughes
067d7d8088 Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
Richard Hughes
770a452132 Unexport fu_common_error_array_get_best()
Plugins should not be using this.
2022-06-14 14:36:52 -05:00
Richard Hughes
7f86ffab6f Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
Richard Hughes
72ca59653e Unexport fu_common_uri_get_scheme()
We don't want plugins to be using this.
2022-06-14 14:36:52 -05:00
Richard Hughes
2c5e4ff3ab Unexport fu_common_firmware_builder()
We don't want plugins to be using this.
2022-06-14 14:36:52 -05:00
Richard Hughes
3f77af3cd4 Split out the kernel helpers to a new source file 2022-06-14 14:36:52 -05:00