Richard Hughes
ebbb13c2b4
Remove the libfwup dependency from fwupd
...
In Fedora the only user of libfwupdate is fwupd and the fwupdate command line
tool. It makes sense to absorb the libfwupdate library interface into the
uefi plugin in fwupd. Benefits I can see include:
* fwupd and fwupdate are very similar names; a lot of OEMs are confused
* fwupd already depends on efivar for other things
* We are maintaining an artificial library interface
* The CI and translation hooks are already in place for fwupd
* We don't need to check for features or versions in fwupd, we can just develop
the feature (e.g. BGRT) all in one place.
2018-06-28 15:51:11 +01:00
Richard Hughes
8848675f9b
trivial: Show supported device without using --show-all-devices
...
In the case of a device that is unlockable, but is not updatable we want to
show it by default.
2018-06-27 14:07:11 +01:00
Mario Limonciello
51308e648a
Adjust all licensing to LGPL 2.1+ ( Closes : #526 )
2018-05-29 09:03:13 +01:00
Mario Limonciello
ba9e5b94ff
Bring get-topology to fwupdtool
...
Also ammend the behavior of get-devices to match fwupdmgr
2018-05-22 05:44:52 +01:00
Richard Hughes
a7689dab33
trivial: Fix a compile warning when ConsoleKit and systemd are disabled
2018-05-21 14:18:52 +01:00
Richard Hughes
db7dfae566
trivial: Fix a build warning when building without ConsoleKit support
2018-05-21 14:18:48 +01:00
Richard Hughes
b597683113
Add a low-level firmware diagnostic tool
...
This is designed to be run as root accessing the hardware directly rather than
using the daemon. This would allow a snap or flatpak package to write firmware
even when the host fwupd daemon is too old.
Also, move the SMBIOS parsing code here as this is not needed in fwupdmgr.
2018-05-18 10:08:10 +01:00
Richard Hughes
f761640aa1
trivial: Split out some CLI functionality for future use
2018-05-18 10:08:10 +01:00
Richard Hughes
76e0f94c86
Allow the client tools to avoid writing the history database
2018-05-14 18:54:15 +01:00
Mario Limonciello
78956cc9ff
fwupdmgr: Hide devices that aren't updatable by default
...
They are hidden from get-devices, get-updates, and get-topology
They can be viewed by adding '--show-all-devices' to command line
2018-05-07 14:08:39 -05:00
Richard Hughes
42728c4d5e
Add 'fwupdmgr get-topology' to show logical device tree
2018-05-03 08:07:04 +01:00
Richard Hughes
a30d933ac4
Show a translated warning when the server is limiting downloads
2018-05-02 13:23:49 +01:00
Mario Limonciello
5a25653177
Improve the update report message ( Closes : #437 )
2018-04-23 10:30:27 -05:00
Mario Limonciello
a98df55d82
Disable -Wunused-function on clang builds ( Closes #467 )
...
GLib creates two static inline functions for paramaters that may
not be used that set off warnings in clang but not gcc.
Ignore these on clang builds everywhere that
G_DEFINE_AUTOPTR_CLEANUP_FUNC is used.
2018-04-17 10:10:43 +01:00
Mario Limonciello
5e13aecef8
trivial: fu-util fix mismanaged memory
...
Caught by clang:
../src/fu-util.c:473:17: warning: assigning to 'gchar *' (aka 'char *') from 'const gchar *' (aka 'const char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
warning_markup = fwupd_remote_get_agreement (remote);
2018-04-17 10:10:43 +01:00
Richard Hughes
1fd3ecf7a3
Export fwupd_remote_get_agreement()
...
We need to show this agreement text in every fwupd frontend and exporting a
helper function allows us to do two things:
* Share the semi-complicated code (and fallback) to avoid copy and pasting
* Easily change the code in the future, for instance allowing merging Metainfo
and AppStream metadata without updating all the front ends with new logic.
2018-04-16 16:44:27 +01:00
Richard Hughes
64da68a33b
trivial: Use the same get-remotes output as the daemon expects for modify-repo
2018-04-12 08:17:08 +01:00
Richard Hughes
972f6eaba5
Allow customising the warning shown when enabling the remote
2018-04-12 08:17:08 +01:00
Richard Hughes
9e7d69ccb1
Show a warning with interactive prompt when enabling a remote
2018-04-12 08:17:08 +01:00
Richard Hughes
dfd228a132
Add enable-remote and disable-remote commands to fwupdmgr
...
This makes it easier to enable the LVFS on distributions where it is disabled
by default.
2018-04-12 08:17:08 +01:00
Mario Limonciello
336158a355
If no remotes are enabled try to enable the LVFS
...
Signed-off-by: Richard Hughes <richard@hughsie.com>
2018-04-10 20:28:36 +01:00
Richard Hughes
1901093431
Reboot using logind, not directly using systemd
...
This allows us to use PolicyKit, which means we will get prompted for
authorization if logged in as a user without permissions.
Fixes https://github.com/hughsie/fwupd/issues/455
2018-04-09 15:01:34 -05:00
Mario Limonciello
5dbdd0b243
Allow exiting device prompt with a "0" device too
...
This makes it more obvious for people that don't know about ctrl-d
2018-03-01 10:28:48 -06:00
Mario Limonciello
80d1a294d1
Allow ctrl-d out of the prompt for devices
...
Currently this will segfault fwupdmgr
Choose a device:
1. 8a21cacfb0a8d2b30c5ee9290eb71db021619f8b (XPS 13 9370 System Firmware)
2. cb52b4cd86255a70d1d9e6b09c6bf00b9f876b61 (XPS 9370 Thunderbolt Controller)
<ctrl-d>
Thread 1 "fwupdmgr" received signal SIGSEGV, Segmentation fault.
fu_util_prompt_for_device (priv=<optimized out>, error=<optimized out>) at ../src/fu-util.c:315
315 return g_object_ref (dev);
2018-03-01 09:27:29 -06:00
Mario Limonciello
9e965ada49
Allow all functions that take device arguments to be prompted
...
As part of this ignore extra string arguments other than the device
ID for these methods.
This has two benefits:
1) No more copying and pasting device ID's for any of these methods
2) Bash completion can now show nicer output for these methods
2018-03-01 09:27:29 -06:00
Mario Limonciello
a667bfb76e
Fix a crash related to when passing device to downgrade in command line
...
(fwupdmgr:15071): Fwupd-CRITICAL **: 09:08:55.248: fwupd_client_get_device_by_id: assertion 'device_id != NULL' failed
Thread 1 "fwupdmgr" received signal SIGSEGV, Segmentation fault.
0x000055555555c5b1 in main (argc=<optimized out>, argv=<optimized out>) at ../src/fu-util.c:2401
2401 g_print ("%s\n", error->message);
2018-03-01 09:27:29 -06:00
Richard Hughes
3f0b3f8f24
Only send success and failure reports to the server
...
We were getting some composite reports with 'needs-reboot' which isn't useful.
2018-02-23 12:55:51 +00:00
Richard Hughes
271f68b740
trivial: Fix critical warning when reporting history against a broken server
2018-02-14 12:45:40 +00:00
Richard Hughes
29a9e4f105
trivial: Show the 'known issue' URI by searching the message
...
If the report replaces an existing report we'll get two messages.
2018-02-13 20:36:58 +00:00
Mario Limonciello
a076c81a07
uefi: Log the efivar library version too into the report
2018-02-13 19:19:11 +00:00
Mario Limonciello
335c30ebd2
fu-util: Add fwupdate version to --version output
2018-02-13 09:18:30 -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
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
Piotr Drąg
27cd91f559
Use ngettext for any strings with plurals
2018-01-26 10:09:06 +00:00
Richard Hughes
c269e64584
trivial: Make a string extractable with xgettext
2018-01-25 12:36:01 +00:00
Richard Hughes
f06ba475b1
Ask the user to refresh metadata when it is very old
...
Also allow skipping the questions for non-interactive scripts.
2018-01-17 20:22:18 +00:00
Richard Hughes
0d2320735d
Nag the user to upload reports when doing common operations
...
This is supposed to be a gentle nag, rather than being obnoxious. To disable
this, simply remove the ReportURI key from the relevant remote.
2018-01-11 21:31:29 +00:00
Richard Hughes
0a7bc97317
Add a 'report-history' command to fwupdmgr
...
This shares your history with a reporting server, typically the LVFS.
NOTE: no data is sent without the user opting-in, and the data sent is shown to
the user before upload.
2018-01-11 21:31:29 +00:00
Richard Hughes
d29df0819f
Allow specifying the reporting server in the remote key files
2018-01-11 20:20:00 +00:00
Richard Hughes
476363ac19
Add a D-Bus method to get the history information
2018-01-11 10:08:58 +00:00
Richard Hughes
af54a0778a
trivial: Add a 'clear-history' command to fwupdmgr
...
This needs to be run as the root user to work.
2018-01-11 10:04:50 +00:00
Richard Hughes
bc3a4e1f57
Store firmware update success and failure to a local database
...
Rename FuPending to FuHistory to better represent what the object is now doing.
Also, while we're here, switch to using SQLite prepared statements to avoid a
possible invalid read on i386 hardware.
2018-01-11 09:59:34 +00:00
Richard Hughes
696e6fdcf3
trivial: Don't allow deleting the pending database
...
If we're going to use this for history we have to be a little more subtle.
2018-01-11 08:16:25 +00:00
Richard Hughes
718be2de6b
trivial: Prefer https_proxy for metadata downloads
2018-01-11 08:16:18 +00:00
Richard Hughes
74fa2ca635
Fix firmware downloading using gnome-software compiled against fwupd 1.0.x
...
Always set the AppStream app properties on the FwupdRelease. In some cases we
were returning FwupdRelease objects with no name or summary which gnome-software
was ignoring.
2018-01-10 21:37:43 +00:00
Richard Hughes
d980ccb757
trivial: Do the fwupdmgr network setup in a new function
...
This is for future use by other commands.
2018-01-08 16:57:01 +00:00
Richard Hughes
054b68457d
trivial: Use the shared FwupdClient when monitoring
2018-01-08 16:56:56 +00:00
Richard Hughes
8f89cf04fb
Add more metadata to the user-agent string
2017-12-21 08:25:29 +00:00
Richard Hughes
86914c52da
trivial: Fix whitespace issue
2017-11-28 14:14:36 +00:00
Richard Hughes
78c8411253
Use the correct remote-specified username and passord when using fwupdmgr
...
Spotted by clang, many thanks.
2017-11-09 12:17:24 +00:00