Commit Graph

2033 Commits

Author SHA1 Message Date
Mario Limonciello
a9d7c365d7 contrib: Install new arch keyring package immediately (Fixes #399)
Fixes problems with umockdev package signed with a key not in base.
2018-02-13 14:13:49 -06:00
Mario Limonciello
a076c81a07 uefi: Log the efivar library version too into the report 2018-02-13 19:19:11 +00:00
Mario Limonciello
b27639ae9f uefi: Save SecureBoot status into debug log and LVFS report 2018-02-13 09:18:30 -06:00
Mario Limonciello
335c30ebd2 fu-util: Add fwupdate version to --version output 2018-02-13 09:18:30 -06:00
Mario Limonciello
44ebdb82d4 fu-engine: Clarify which devices don't have upgrades (Fixes #397) 2018-02-12 16:26:01 -06:00
Richard Hughes
50aea367b7 thunderbolt: Enforce the thunderbolt version is xx.yy
Fixes: https://github.com/hughsie/fwupd/issues/387
2018-02-12 12:48:13 -06:00
Richard Hughes
c9cdf1dfc8 Show the user a URL when they report a known problem
Resolves half of https://github.com/hughsie/lvfs-website/issues/43
2018-02-12 16:08:43 +00:00
Richard Hughes
7ec355ed94 Support split cabinet archives as produced by Windows Update
I assume they're trying to avoid compressing the firmware, but compressing the
metadata. Not insane, but slightly odd given the metadata is typically tiny.

Fixes: https://github.com/hughsie/fwupd/issues/392
2018-02-09 21:09:09 +00:00
Mario Limonciello
1b907a7d25 Drop docbook dependencies 2018-02-09 17:26:18 +00:00
Mario Limonciello
2c43d3e6e6 use help2man for dfu-tool too 2018-02-09 17:26:18 +00:00
Richard Hughes
9b8eef4ccc trivial: Allow setting reported flags in the database 2018-02-09 16:55:09 +00:00
Richard Hughes
4082d3367b Correctly mark updates as successful even if the device version number is wrong
If the device firmware was set incorrectly make then set it to the release
version so the database update works correctly. We can't do any kind of vercmp
in the database, so use a daemon warning so we can either fix the plugin or
the XML.

This fixes up the issue that the hardware reports '28.00' and the AppStream
release specifies '28.0'.

Fixes: https://github.com/hughsie/fwupd/issues/387
2018-02-09 16:55:09 +00:00
Mario Limonciello
a31895b316 thunderbolt: Report safe mode and native in success/fail 2018-02-09 14:43:56 +00:00
Richard Hughes
c0cd023d31 Be more careful deleting and modifying device history
If this happens:

1.2.3 -> 1.2.4 = failure
1.2.3 -> 1.2.5 = success

...we want to preserve both in the history database so they can both be shared
with the LVFS. Use the device ID and the new and old firmware versions when
modifying and deleting entries.

This fix is made slightly more tricky as we have to drop the PRIMARY KEY
attribute on the device_id, and due to a limitation in SQLite, it means copying
the old history into a new table.
2018-02-07 10:20:19 +00:00
Richard Hughes
65e44cac96 Always return useful information when calling GetResults()
Previous to having the history database we could only notify about firmware that
as installed using the uefi plugin, as that had a few system-wide API calls to
say 'this update failed' or 'this was the error'.

Now we have the local history database not only can we report more details about
the UEFI update (e.g. the old version number) but we can also offer the same
functionality for all other plugins.

Although this does rework how the data for GetResults() is populated, it does
make the FuEngine object quite a lot less confused.

It also fixes a warning in the fwupd plugin for gnome-software, which was
expecting the FwupdRelease to be populated for the FwupdDevice.
2018-02-07 10:20:19 +00:00
Mario Limonciello
1fc8553bb8 synapticsmst: Correct the callback for progress
4a036018 broke the callback progress by putting the wrong device type in.

23:34:11:0715 GLib-GObject invalid cast from 'SynapticsMSTDevice' to 'FuDevice'
23:34:11:0715 Fu  fu_device_set_progress: assertion 'FU_IS_DEVICE (device)' failed
2018-02-07 03:42:58 +00:00
Mario Limonciello
0ce0558ad7 synapticsmst: Fix crasher with MST flashing (#385)
b6f79556 caused the device ID strings to change, which synaptics
MST plugin was relying upon.

Update to use metadata instead to communicate this information.
2018-02-07 03:42:58 +00:00
Mario Limonciello
65a61c7b6f uefi: Record the fwupdate library version in metadata
When creating a regex for https://github.com/hughsie/lvfs-website/issues/43
it would be useful to have this
2018-02-06 19:29:28 +00:00
Mario Limonciello
e37cd0d8ce dell: Report Libsmbios version in metadata 2018-02-06 19:29:28 +00:00
Mario Limonciello
ead5bf3929 plugins/ebitdo: Stop matching DS4 controller VID/PID
This causes problems with the real DS4 controller.
Furthermore in MacOS mode fwupd doesn't actually work properly
anyhow (Closes #381)
2018-02-05 20:30:18 +00:00
Richard Hughes
50a6f7095c Offer to reboot when processing an offline update
In real user tests this was a pain point where we had to manually explain that
they needed to reboot.
2018-02-03 12:12:15 +00:00
Mario Limonciello
0957f37ca2 trivial: correct docker url 2018-02-02 14:00:23 -06:00
Mario Limonciello
ca9a25e855 trivial: correct README rendering error 2018-02-02 13:59:01 -06:00
Mario Limonciello
95e75c1f4d contrib/ci: Simplify docker matrix
Building:
The Dockerfile really is just an intermediary file.  While building it the
container can be built too all in one shot. No need to git ignore the
intermediary file any more as a result.

Running:
Dockerfiles support default entry points which means one docker command
can be used for starting all of them.
2018-02-02 19:55:36 +00:00
Richard Hughes
d296a578ee trivial: Actually run the test plugin when doing the FuHistory tests
This does mean fixing up the version numbers. The idea is that we have a
virtual device that goes from 1.2.2->1.2.3 for an update, and 1.2.3->1.2.2 for
a downgrade.
2018-02-01 22:20:38 +00:00
Richard Hughes
38fb56cab1 trivial: Ensure the pending firmware has the new version set correctly
This is only important if the pending update fails to be scheduled, and then
we need the new version for the history database.
2018-02-01 22:18:45 +00:00
Richard Hughes
41c1548674 trivial: Add some trivial debugging for my sanity 2018-02-01 22:17:26 +00:00
Richard Hughes
734d7753d1 trivial: Split out the FwupdDeviceFlags filter function 2018-02-01 22:15:36 +00:00
Richard Hughes
ee7e764603 trivial: Do not return failure if a device flag is already set
If we have multiple versions of upgrades/downgrades we'll be setting the
REPORTED flags for multiple history entries at once.
2018-02-01 14:01:58 +00:00
Richard Hughes
1a24d9da90 Include the device VID and PID in the calculation of the device-id
If we plug in USB device A, remove it, plug in USB device B and get the same
autogenerated string all kinds of nasty things happen to the history database.
2018-02-01 14:01:50 +00:00
Richard Hughes
83e54e46ab trivial: Don't include the device-id in the plugin error string
It's not needed, or desired in the history database.
2018-02-01 14:01:39 +00:00
Richard Hughes
ad54f65f05 Add FWUPD_DEVICE_FLAG_NOTIFIED
This allows us to record whether we've shown the user a notification (either in
the terminal or in a GUI) that an update failed or was successful.

This can't be done in the session otherwise we'd get a notification for every
different user on the system. Notifying also isn't the same as reporting,
although one can certainly follow on from the latter.
2018-02-01 14:01:18 +00:00
Richard Hughes
15348f4e79 dfu: Fix detach with newer releases of libusb
In newer releases libusb has started returning LIBUSB_TRANSFER_ERROR (rather
than the arguably more correct LIBUSB_TRANSFER_STALL...) when the device is
removed before the control transfer has completed.
2018-02-01 10:08:59 +00:00
Mario Limonciello
7a4e082329 src/fu-common-cab.c: fix a build warning 2018-01-31 14:51:18 -06:00
Mario Limonciello
9f932edaca trivial: dell: blacklist another system when used with older libsmbios
The reporter confirmed that changes in libmsbios 2.4.0 fix the problem
however.
Bug: https://bugs.launchpad.net/ubuntu/+source/libsmbios/+bug/1744782
2018-01-31 13:59:42 -06:00
Mario Limonciello
cae59660d3 Update readme to explain history reporting 2018-01-29 17:27:04 -06:00
Mario Limonciello
14c5607dd3 trivial: contrib/debian: update standards version 2018-01-29 16:33:29 -06:00
Mario Limonciello
7873532368 Redirect all stderr from installed tests to stdout
The previous fix (db6ed9ede3) didn't
do a good enough job and autopkgtest was still failing on another
individual test.

This makes sure that stderr will never conflict with autopkgtest
in the future.
2018-01-29 14:35:11 -06:00
Mario Limonciello
951f2b548a Revert "data/installed_tests: Redirect stderr to stdout for one of the tests"
This reverts commit db6ed9ede3.
2018-01-29 14:34:57 -06:00
Richard Hughes
6b0e5c4f21 Fix a daemon warning when using fwupdmgr get-results
The FwupdRelease needs to be manually added in some circumstances.
2018-01-28 21:51:41 +00:00
Richard Hughes
534255cff3 Set the RemoteId when using GetDetails
This searches for the release container checksum in any enabled remote and
also sets the SUPPORTED flag if the local file matches.
2018-01-28 20:24:21 +00:00
Mario Limonciello
6b38dab94d trivial: try to disable arch test suite harder 2018-01-27 23:04:09 -06:00
Mario Limonciello
3780bb5c0d dell: Add a test for libsmbios version
This will be useful in the future for debugging crashes with known
problematic versions of libsmbios.

Also use this information to turn off the blacklist from previously
bad known combinations of libsmbios + certain systems
2018-01-27 22:48:36 -06:00
Mario Limonciello
651b2d925c contrib: Turn off test suite for Arch CI for now (#370)
There have been some problems with changes in systemd that will require
other changes to be made in umockdev.  These changes are being sorted
out upstream. For now this makes Travis CI fail every time on the Arch
job. Until we know that's fixed upstream, disabling the test suite in
Arch at least makes CI useful again.
2018-01-27 22:48:12 -06:00
Mario Limonciello
db6ed9ede3 data/installed_tests: Redirect stderr to stdout for one of the tests
The autopkgtest test cases in Debian and Ubuntu are failing due to
output present in stderr.

fwupdmgr behavior however is that it's expected that this test should
show output on stderr for this item.
2018-01-26 10:35:06 -06:00
Piotr Drąg
717ceb665d Remove po/Makevars
Damned Lies should be able to handle our po/meson.build now,
so this workaround is no longer needed.
2018-01-26 11:12:32 -05:00
Piotr Drąg
27cd91f559 Use ngettext for any strings with plurals 2018-01-26 10:09:06 +00:00
Richard Hughes
03fa8c1002 trivial: Don't upload the DeviceID when sharing history
We don't use it on the LVFS, and it's not useful for debugging problems.
2018-01-26 09:30:49 +00:00
Richard Hughes
c00eaf9435 trivial: post release version bump 2018-01-25 13:47:29 +00:00
Richard Hughes
116a966fe9 Release fwupd 1.0.4 2018-01-25 13:43:32 +00:00