Commit Graph

1037 Commits

Author SHA1 Message Date
Richard Hughes
5475427ca9 Remove the UpdateMetadata D-Bus method as the fallback is done client-side 2017-06-19 09:58:11 +01:00
Richard Hughes
1f162e2f16 Implement the GetDetails->GetDetailsLocal fallback client side
This allows us to get rid of some more complex daemon code.
2017-06-19 09:56:43 +01:00
Richard Hughes
cda1cdf606 Also watch the metadata cache filename for changes
If something changes the cache behind our back (e.g. deleting or updating the
file) we need to reload the list of remotes so that the age is correctly shown.
2017-06-16 21:49:37 +01:00
Richard Hughes
feb8027ee3 Show the age of the remote metadata in 'fwupdmgr get-remotes'
Note: we have to transfer the mtime (not the age) when creating the GVariant,
as we want calls to fwupd_remote_get_age() to update the value without getting
the remote from the daemon each time.
2017-06-16 20:24:41 +01:00
Richard Hughes
71e73ca048 trivial: Fix the installed tests
We ony want to replace the fake LVFS metadata with the real data after we've
downgraded the dummy device.
2017-06-16 17:21:17 +01:00
Richard Hughes
83fb8d95f4 Do not fall back to the default release when verifying
This is never going to be valid. What we want is to try and get a new AsApp and
AsRelease from the system store, not the verification store.
2017-06-16 17:13:05 +01:00
Richard Hughes
4a2e915e9a unifying: Use the UFY DeviceID prefix as the PID is not 'USB PIDs' at all.
Resolves: https://github.com/hughsie/fwupd/issues/144
2017-06-16 16:45:42 +01:00
Richard Hughes
0a87f6fb03 Store the metadata files rather than merging to one store
Now we have multiple remotes that can be enabled or changed at runtime we need
to do several things better:

* Only load components from remotes that are enabled

* Only load a component if a higher priority remote has not already added it

Rather than just appending all recieved metadata into one big XML file, save
the original metadata .xml.gz files in /var/lib/fwupd/remotes.d and only load
them in the correct priority order if the remote is known and enabled.

Remove the old /var/cache/app-info/xmls/fwupd.xml file, also noting it wasn't
really a cache file at all but actually something quite important.
2017-06-16 16:43:13 +01:00
Richard Hughes
5935ebda5a Check the remote exists and is enabled when using UpdateMetadataWithId 2017-06-16 15:40:31 +01:00
Richard Hughes
4c36970445 Move the remotes parsing from the client to the server
This allows us to load the metadata stores in a more sensible way in the future.
2017-06-16 15:31:40 +01:00
Richard Hughes
f0bde3e4af Add a get-remotes command to fwupdmgr
This allows the user to show the configured remotes.
2017-06-16 14:31:20 +01:00
Richard Hughes
980ef147eb Move the config file parsing out to a new object
This will allow us to move the remote parsing here soon.
2017-06-16 12:46:40 +01:00
Richard Hughes
81f96797f6 trivial: Do not remove all apps in the store when loading metadata 2017-06-16 12:40:49 +01:00
Richard Hughes
8a8425f7be Do not store the verify store in the cachedir
The list of verification hashes is certainly not a cache, it's important data
that needs to be kept for a long time somewhere important.

Move it from /var/cache/app-info/xmls to /var/lib/fwupd and delete the old file
as it may have now-incorrect contents.
2017-06-16 12:40:44 +01:00
Richard Hughes
a71e0a71f6 Allow ordering the metadata remotes
This allows us to load one metadata source file before or after another.
2017-06-16 12:40:24 +01:00
Richard Hughes
bbde1df44f Fix downgrades when version_lowest is set
Also, add some tests to test this with the dummy device.
2017-06-16 12:40:15 +01:00
Richard Hughes
8a870d0399 trivial: Ensure there are no updates after the update is applied 2017-06-16 12:40:10 +01:00
Richard Hughes
954de52612 trivial: Make --verbose work in fwupdmgr 2017-06-16 07:59:02 +01:00
Richard Hughes
19fdebf4f4 trivial: Install two extra packages for the fedora Travis build 2017-06-16 07:59:02 +01:00
Richard Hughes
40aeea4167 trivial: Show the release (not device) checksums in 'fwupdmgr get-updates' 2017-06-16 07:59:02 +01:00
Mario Limonciello
4ba3d25ba1 Drop the locale hack on the Debian docker file 2017-06-15 17:09:42 -05:00
Mario Limonciello
b692286690 deb packaging: cleaner locale fix 2017-06-15 17:09:42 -05:00
Richard Hughes
ababbb7ae1 trivial: Clear any device checksums before doing device::verify 2017-06-15 20:19:23 +01:00
Richard Hughes
f556d371da trivial: Clear any device checksums after the online update 2017-06-15 20:19:19 +01:00
Richard Hughes
b7bf715435 Add an installed test for device update
This also moves the tests into one file as gnome-desktop-testing-runner
intentionally randomizes the order and runs them in parallel where allowed.
Since tests like get-updates have to be run after the metadata injection simply
put these into one test that calls a simple script.
2017-06-15 20:19:03 +01:00
Richard Hughes
c2a20d7fff trivial: Show the release (not device) checksums in 'fwupdmgr get-releases' 2017-06-15 20:19:03 +01:00
Piotr Drąg
3e1146890c Add the AppStream metainfo file to POTFILES.in 2017-06-15 18:53:40 +01:00
Richard Hughes
ae7e0d21b2 Add an installed test for verification 2017-06-15 16:23:52 +01:00
Richard Hughes
038ab7dcb2 Add an AppStream metainfo file
This seems like the right thing to do, and also means we *could* move the NEWS
data in the future.
2017-06-15 12:53:33 +01:00
Richard Hughes
b75549287c trivial: Drop deps when compiling with enable-uefi-labels=false 2017-06-15 12:05:11 +01:00
Richard Hughes
8d1054eaf1 trivial: Enable the tests in the reference spec file 2017-06-15 12:05:11 +01:00
Richard Hughes
20d2d726e0 Fix the self tests when running on PPC64 big endian 2017-06-15 12:05:11 +01:00
Richard Hughes
109526bf34 trivial: Fix a harmless warning when building RPMs 2017-06-15 11:07:00 +01:00
Richard Hughes
925b13cc37 trivial: Do not use -Winline -- too many false positives 2017-06-15 11:03:39 +01:00
Richard Hughes
2396b33573 trivial: Do not generate the UEFI labels if the architecture does not support UEFI 2017-06-15 10:58:23 +01:00
Richard Hughes
a7fc23f657 trivial: post release version bump 2017-06-15 09:17:30 +01:00
Richard Hughes
3937fee732 Release fwupd 0.9.4 2017-06-15 09:15:37 +01:00
Richard Hughes
58de3dbe77 Run the installed tests in Travis CI 2017-06-14 17:34:10 -05:00
Mario Limonciello
3be2e295af deb: Don't strip firmware-example.xml.gz in dh_strip_nondeterminism 2017-06-14 17:34:09 -05:00
Mario Limonciello
b4cccb5150 trivial: Adjust build pass/fail badge to reflect master not pull all builds 2017-06-14 17:24:33 -05:00
Richard Hughes
bacbac1245 Add some installed tests that use the daemon
Functionality like this would have prevented the "(shh)" bug being included in
the last release.
2017-06-14 15:36:08 +01:00
Richard Hughes
18b73a4bdd trivial: Return with exist code 0 when there is nothing to do 2017-06-14 15:16:06 +01:00
Richard Hughes
402a438bae trivial: Show a better message when failing to connect to the system D-Bus 2017-06-14 15:15:41 +01:00
Richard Hughes
d424d0d193 Use the correct type signature in the D-Bus introspection file 2017-06-14 13:55:57 +01:00
Richard Hughes
4619f9f5c1 trivial: Use the 'message' level for normal events 2017-06-14 13:55:30 +01:00
Mario Limonciello
4ae8d9aa4d trivial: correct README url to render properly in markdown 2017-06-13 17:58:25 -05:00
Mario Limonciello
b9386372ca Copy RPMs into build root when done 2017-06-13 17:56:57 -05:00
Mario Limonciello
5a286f86c8 Add information on how to generate deb and rpm using docker 2017-06-13 17:52:38 -05:00
Bruno Pagani
30e3fa40d1 Fix typo in README (#138) 2017-06-13 16:24:47 -05:00
Mario Limonciello
0ff9d5307b drop travis CI generic build and test case (it's implied by testing packaging) 2017-06-13 15:35:45 -05:00