Commit Graph

7391 Commits

Author SHA1 Message Date
Gaël PORTAY
d893b80bbc trivial: Fix missing bash-completion for firmware-read 2022-06-20 12:57:40 -04:00
Gaël PORTAY
c8987ab100 trivial: Allow mixing modifiers/parameters in bash-completion scripts 2022-06-20 12:57:40 -04:00
Gaël PORTAY
5bdbf0dd0a trivial: Add missing comments in bash-completion scripts
For the sake of consistency.
2022-06-20 12:57:40 -04:00
Gaël PORTAY
4b3352e2f5 trivial: Add bash-completion for device-id
The four commands `get-details`, `install`, `install-blob`, and
`firmware-plugin` use device-id as second command argument but the
fwupdtool bash completion script does not completed it yet.

This calls function `_show_device_ids` to add completion for device-id
if completion the second argument of the commands mention above.
2022-06-20 12:57:40 -04:00
Gaël PORTAY
b670404127 trivial: Fix fwupdtool bash-completion script
The commands `attach`, `detach`, `activate`, `verify-update`,
`reinstall`, and `get-updates` calls `_show_device_ids` but that
function is not defined in the fwduptool bash-completion script.

This defines the function `_show_device_ids` by reusing the function
of the name in the fwupdmgr bash-completion script.

Fixes:

	$ sudo fwupdtool attach
	                        ^-- tabulation
	bash: _show_device_ids: command not found
2022-06-20 12:57:40 -04:00
Gaël PORTAY
2454753cf7 trivial: progress: Fix documentation
This commit cf9ebdb703.
2022-06-20 12:00:40 -04:00
Daniil Lunev
38fb424246 Fix setting version for udev devices
Change-Id: I907bb3958b624ff5f887cbc192f54448354d9d5c
2022-06-17 07:03:58 +01:00
Richard Hughes
87c4163993 trivial: Fix typo when setting the parent status 2022-06-16 19:54:46 +01:00
Richard Hughes
1e31507e82 Allow front-end clients to read the Percentage property 2022-06-16 19:54:46 +01:00
Richard Hughes
b3800609b6 Ensure FuDevice->set_progress() always sets 4 steps 2022-06-16 19:54:46 +01:00
Richard Hughes
60eeb9bd73 Fix a progress regression when installing archives with fwupdtool
Fixes https://github.com/fwupd/fwupd/issues/4749
2022-06-16 19:54:46 +01:00
Mario Limonciello
bb2ea82473 trivial: validate packages exist before installing in helper script 2022-06-15 09:43:42 -05:00
Richard Hughes
362ee83e1b trivial: Fix progress warning if ->backend_device_added failed 2022-06-15 13:09:11 +01:00
Richard Hughes
700ea6cf0d Do not add 'unset' UDev vendor or model information 2022-06-15 13:09:11 +01:00
Richard Hughes
bf256a7ca7 Read the UDev vendor and model as a uint16_t 2022-06-15 13:09:11 +01: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
cf9ebdb703 Add startup profiling functionality
Using `sudo FWUPD_PROFILE=10 ./src/fwupd --verbose` will print a
dump of startup times onto the console so that we can debug which
plugin is slowing down system startup. For example:

    ../src/fu-engine.c:5409:plugins-coldplug [108.55ms]:
        ../plugins/amt/fu-plugin-amt.c:437:amt [27.14ms]:
            :create-context [12.66ms]
            :get-version [8.44ms]
            :add-device [3.95ms]
2022-06-14 22:08:02 +01:00
Richard Hughes
7a5964435f Add startup profiling support to FuPlugin->init() 2022-06-14 22:08:02 +01:00
Richard Hughes
faa7871b08 Remove duplicate ->probe() calls to speed up startup by 150ms
Now incorporate is fixed to copy across the properties we need in the
superclass, we don't need to do the subclass ->probe().

Note, we still need to do the subclassed ->probe() when using
FU_UDEV_DEVICE_FLAG_VENDOR_FROM_PARENT or when looking at properties
on the parent device.

This also removes the spurious 'already set GType to FuVliUsbhubDevice,
ignoring FuVliUsbhubDevice' messages when running the daemon.
2022-06-14 21:01:57 +01:00
Richard Hughes
21e3ef4347 optionrom: Reorder plugins FuDevice->probe() to speed up daemon startup
There's no point scanning the baseclass again if we can quickly check
if the device is valid.
2022-06-14 21:01:57 +01:00
Richard Hughes
4655e028a6 Copy more properties when doing FuUdevDevice->incorporate
We're supposed to be copying any private data derived during ->probe()
so we can create a superclass with the same attributes.
2022-06-14 21:01:57 +01:00
Richard Hughes
db01004cd4 Copy the possible plugins when incorporating
I don't think this is required, but seems safer.
2022-06-14 21:01:57 +01:00
Richard Hughes
30aab6f564 Copy the instance ID strings when incorporating
Also, add a test.
2022-06-14 21:01:57 +01:00
Richard Hughes
599e67cd2c trivial: More efficiently incorporate metadata 2022-06-14 21:01:57 +01:00
Richard Hughes
8b3f7a1a52 trivial: Add some self tests for fwupd_device_incorporate()
This was based on a hunch that was proved wrong, but the tests still
seem useful anyway.
2022-06-14 21:01:57 +01:00
Richard Hughes
2203b3ce7b trivial: gi-docgenize some of the function comments 2022-06-14 14:36:52 -05: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
d4d0ba0faf Unexport fu_common_cab_build_silo()
There's no reason this needs to be in the shared library.
2022-06-14 14:36:52 -05:00
Richard Hughes
3eaa907534 Remove the now unnecessary 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
2822d724b2 Unexport the nearly-unused FuAppFlags 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
14cc9b2064 Unexport fu_common_reverse_uint8()
It's only used in one little-used plugin.
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
518ba8b6f7 Unexport fu_common_realpath()
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
Richard Hughes
fd9b9db5b3 Unexport fu_common_instance_id_strsafe()
We want plugins to use the instance ID builder instead now.
2022-06-14 14:36:52 -05:00
Richard Hughes
f759569a9f Unexport fu_common_extract_archive()
We have a FuFirmware helper now, which doesn't use a temp dir.
2022-06-14 14:36:52 -05:00
Richard Hughes
25dccf09f7 Unexport fu_common_spawn_sync()
This isn't something we want plugins to use.
2022-06-14 14:36:52 -05:00
Richard Hughes
425fedcca1 trivial: Remove fu_byte_array_set_size_full() 2022-06-14 14:36:52 -05:00
Richard Hughes
ed1b13da28 Split out the memory helpers to a new source file 2022-06-14 14:36:52 -05:00