Commit Graph

482 Commits

Author SHA1 Message Date
Richard Hughes
8ef261af32 mtd: Add some self tests using mtdram 2022-03-18 12:55:44 +00:00
Richard Hughes
2012a42a1e Do not use /var/run for the socket
The FHS says to use /run everywhere now, so use that to avoid confusion.
See https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch05s13.html
2022-03-07 13:24:58 +00:00
Richard Hughes
14cc2e7ee4 Do not hardcode the libexecdir to /usr/libexec
Fixes https://github.com/fwupd/fwupd/issues/4360
2022-03-07 13:24:58 +00:00
Mario Limonciello
8281e17a4b trivial: update variable reading to the method in meson 0.56 or later 2022-02-28 08:34:48 -06:00
Mario Limonciello
6896e0ab52 trivial: switch from meson.source_root to meson.project_source_root
The former is deprecated in meson 0.56 or later.
2022-02-28 08:34:48 -06: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
Richard Hughes
171ecdf3ef Release fwupd 1.7.6 2022-02-25 13:38:35 +00:00
Richard Hughes
15cefb0d95 trivial: Fix KH08P device test 2022-02-23 10:25:46 +00:00
Mario Limonciello
fbac66b964 Don't let stderr fail the fwupdmgr-p2p test 2022-02-18 11:36:24 -06:00
Mario Limonciello
e5c00a8e98 trivial: quit fwupdmgr-p2p.sh on command failures
This will prevent a lingering daemon from influencing future tests
2022-02-18 11:36:24 -06:00
Simon Deziel
f5da94c473 systemd: don't run fwupd/fwupd-refresh in containers
Signed-off-by: Simon Deziel <simon@sdeziel.info>
2022-02-17 15:23:33 +00:00
Richard Hughes
33aed8c7fb Release fwupd 1.7.5 2022-02-07 16:24:38 +00:00
Richard Hughes
bb1bcce863 Allow fwupd to operate without a D-Bus daemon
This adds support for optionally using a UNIX domain socket where a
D-Bus daemon may not be running.

To use this, launch the daemon and clients with something like
`FWUPD_DBUS_SOCKET=/var/run/fwupd.sock fwupdmgr get-devices`
2022-01-31 14:05:23 +00:00
Richard Hughes
02d8753097 Move the clear-history command to fwupdtool
This is perhaps a useful thing to do when debugging, but isn't the sort
of thing we need users to understand.
2022-01-21 15:25:05 +00:00
Richard Hughes
ffac7d6024 Merge the little-used clear-offline action into clear-results
Fixes https://github.com/fwupd/fwupd/issues/3581
2022-01-21 15:25:05 +00:00
Denis Pynkin
e08ead31f5 plugins/nordic-hid: fix the bootloader type detection
The initial name of the varianle has been changed upon review in
[nrf_desktop DFU PR](https://github.com/nrfconnect/sdk-nrf/pull/6343)

This commit align the naming with NRF desktop upstream and fix testing
images URLs for device testing.
2022-01-20 03:16:47 +03:00
Crag Wang
fbcc031ae4 trivial: refresh bash completion to reflect recent changes 2022-01-17 13:41:20 -06:00
Richard Hughes
99d21d576d Release fwupd 1.7.4 2022-01-13 13:09:02 +00:00
Richard Hughes
e6dc11a205 trivial: Update all the device test URLs to reflect reality 2022-01-12 14:23:44 +00:00
Richard Hughes
c30f491001 trivial: Add a device test for the Servo Micro hardware 2022-01-07 20:18:30 +00:00
Richard Hughes
f885ab6d2a Allow patching firmware files at known offsets
This allows us to replace the 'dfu-tool replace' with a much more
controlled 'fwupdtool firmware-patch' command that patches at a set of
specific offsets.

Drop in the new functionality into the existing firmware ->write()
vfuncs so that the image headers, footers and/or checksums are correct.
2022-01-05 09:51:45 +00:00
Denis Pynkin
6fdaeb8f99 nordic-hid: add device test
Added the test for nRF52840-DK board with MCUBoot variant.
Images based on MCUBoot may be used for test automation since this
bootloader type does not have version dependencies.

To prepare the board for testing it should be flashed with MCUBoot
image variant with `nrfjprog` initially.
2021-12-30 10:24:22 +00:00
Richard Hughes
054fb04860 Release fwupd 1.7.3 2021-12-13 12:15:42 +00:00
Richard Hughes
ca221927ff trivial: Include the CfiDeviceCmdReadId value in the quirk data
If we're getting the flash ID out-of-band we might not have this set.
2021-12-09 13:09:43 +00:00
Richard Hughes
ea5cae7c41 Enable the MOTD integration when using pam_motd
This has to be a file, not a file-in-a-directory.

Fixes https://github.com/fwupd/fwupd/issues/4047
2021-12-01 20:55:15 +00:00
Richard Hughes
20d57b9ae6 trivial: Update subproject versions to latest 2021-12-01 20:46:20 +00:00
Richard Hughes
beb29ff698 Add a sync-bkc subcommand to ensure a known set of firmware versions
Install or downgrade firmware on all devices to make the system match
a well known set. This allows two things:

 * Factory recovery where a device in the field has been upgraded
 * Ensuring a consistent set of tested firmware for a specific workload

A tag is assigned either during upload or added post-upload on the LVFS
which is included in the metadata. A single firmware can be marked with
multiple tags, and tags can be duplicated for different firmwares.
2021-11-29 15:16:14 +00:00
Richard Hughes
677c80eb64 trivial: Use string comparisons for new libjcat versions
This regressed in 7b865f213c
2021-11-24 22:18:17 +00:00
Richard Hughes
7b865f213c trivial: Only install files that are going to be used 2021-11-23 15:14:14 +00:00
Richard Hughes
a15a50bc5c Release fwupd 1.7.2 2021-11-19 09:54:57 +00:00
Richard Hughes
7e386f8791 trivial: Do not install the fwupdtpmevlog debugging cli to save 50Kb 2021-11-15 15:01:22 +00:00
Richard Hughes
5f01678daa Use -Doffline=false to reduce the install size by over 100Kb
If there's no SuperIO chip then there's no need to support this.
2021-11-12 21:06:34 +00:00
Richard Hughes
e840e9c23b Use -Dfish_completion=false to reduce the install size by a few more Kb 2021-11-12 21:06:34 +00:00
Richard Hughes
34d531074c Use -Dmetainfo=false to reduce the install size by over 100Kb 2021-11-12 21:06:34 +00:00
Richard Hughes
4f3e2c3a57 Allow overriding HwId data from the config file
To use this on a immutable system like ChromeOS you can create a file
in /var/lib/fwupd/daemon.conf which is used as an override.
2021-11-10 17:59:52 +00:00
Ross Burton
a346c582cc installed-tests: use sh instead of bash
fwupdmgr.sh uses [[ ]] tests, but none of the functionality offered by
them.

Use traditional [ ] tests, and switch the interpreter to /bin/sh.
2021-11-05 12:16:23 +00:00
Richard Hughes
1c7b4ef223 Release fwupd 1.7.1 2021-11-01 11:55:09 +00:00
Richard Hughes
2d00cda464 Remove PLUGINBUILDDIR and use G_TEST_SRCDIR and G_TEST_BUILDDIR instead
This allows us to override the location we load data files from, which
allows us to do more kinds of installed tests in the future.

Also, move the global data/tests content into the place that it is used
as it was getting impossible to manage.
2021-10-21 18:36:22 +01:00
Richard Hughes
6235a8222a Share the Common Flash Memory Interface quirks between plugins
Now two plugins are using hardcoded SPI constants for various CFI chips,
and it makes sense to have some common quirk data that can be used by
both.

Add a FuSpiChip helper object that can be used by FuDevice subclasses
to get the specific SPI commands to use for each flash ID.
2021-10-20 12:19:39 +01:00
Richard Hughes
be1879fa4d trivial: Delete some unused test data 2021-10-20 09:55:44 +01:00
Richard Hughes
fcb5257e16 Allow OnlyTrusted=false in the non-polkit case 2021-10-17 14:29:58 +01:00
Richard Hughes
644ac0ea05 Only installing firmwares with signatures by default
99.9999% of users are consuming firmware updates from the LVFS or
another trusted remote. It's far too easy to get a user to enter the
password to install an untrusted firmware, where the security
consequences are pretty dire.

Provide an escape-hatch for firmware engineers, but it does mean
editing a file in /etc as root. This seems like an acceptable level of
inconvenience.
2021-10-15 15:54:44 +01:00
Richard Hughes
88592df086 rts54hub: Use demo firmware on the evaluation board for the tests
This avoids clashing with real-world devices that have the same VID/PID.
Many thanks to Ricky WU <ricky_wu@realtek.com> for all the help.

Fixes: https://github.com/fwupd/fwupd/issues/3835
2021-10-13 20:07:15 +08:00
Richard Hughes
24cc4d9d30 trivial: Set the systemd timeout to match the client proxy
The systemd default of 90 seconds is uncomfortably close to the
worst-case Redfish startup time. Give ourselves some more headroom.
2021-10-08 17:22:45 +01:00
Richard Hughes
0afe353e05 Release fwupd 1.7.0 2021-10-06 16:09:38 +01:00
Mario Limonciello
70b327c41f trivial: drop fish-completion for ignore-power 2021-10-06 14:57:05 +01:00
Richard Hughes
204da7a775 trivial: Remove one case of master that snuck in 2021-09-24 19:13:44 +01:00
Richard Hughes
494fd2736f Allow installing the LVFS remote, but disabled
This is a patch that I have to regenerate almost every rebase. Just
move it upstream as it's probably not RHEL specific.
2021-09-24 16:55:04 +01:00
Richard Hughes
90ea3453c3 trivial: Do not install the device tests when using -Dtests=false 2021-09-24 06:51:09 -05:00
Mario Limonciello
6ebccf1e1e Remove support for --ignore-power by frontends
This functionality broke a number of releases ago as part of
implementing device inhibition and was just noticed now.

Instead of fixing it, the preference seems to be to remove the
functionality as it exists today as inhibitions can happen for
a number of reasons.

To still allow people to override these power warnings (such as during
development) add a new daemon configuration item that can be used.

Fixes: #3778
2021-09-21 13:13:52 -05:00