Richard Hughes
83528ccded
trivial: Remove the 8Bitdo noinst tool
2018-05-18 10:25:28 +01:00
Richard Hughes
17cd8bf9c3
trivial: Remove the CSR noinst tool
2018-05-18 10:25:04 +01:00
Richard Hughes
cf22df177f
trivial: Remove the synapticsmst noinst tool
2018-05-18 10:24:38 +01:00
Richard Hughes
98ca99355f
Allow fwupdtool to do common low-level operations without the daemon
2018-05-18 10:24:10 +01:00
Richard Hughes
026cdd8c17
trivial: Do not crash if trying to do fu_engine_install_blob() as OFFLINE
2018-05-18 10:23:19 +01:00
Richard Hughes
5b5f655e0b
trivial: Allow the daemon to run without any idle sources
...
We need this if we want to run plugins without a daemon process.
2018-05-18 10:22:39 +01:00
Richard Hughes
c2de52a5b8
trivial: Only allow installing without history if the version is supplied
2018-05-18 10:14:36 +01:00
Richard Hughes
6e7419db0a
trivial: Split up fu_engine_install()
...
This should allow the low-level tool to write unpackaged firmware.
2018-05-18 10:13:21 +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
3e3ac27216
trivial: Add attach() and detach() vfuncs to FuDevice
2018-05-18 10:08:10 +01:00
Richard Hughes
9b7ad9ad62
Do not use the system metainfo location
...
This means we can avoid loading a ton of non-fwupd files, and reduces our
running RSS from 5.4Mb to 2.8Mb. Old versions of appstream-glib caches a lot of
the localization string data which we just don't care about for firmware files.
2018-05-16 22:38:00 +01:00
Richard Hughes
76e0f94c86
Allow the client tools to avoid writing the history database
2018-05-14 18:54:15 +01:00
Richard Hughes
d5982a1144
trivial: Use bitshifts when defining FwupdInstallFlags
2018-05-14 18:54:15 +01:00
Richard Hughes
0b8c1e7e92
ebitdo: Move the bootloader fallback instructions
2018-05-14 17:09:23 +01:00
Richard Hughes
c48d0cfa0c
trivial: Add a read_firmware() vfunc to FuDevice
2018-05-14 17:07:20 +01:00
Richard Hughes
0a0483b2ce
trivial: Add a write_firmware() vfunc to FuDevice
2018-05-14 17:07:20 +01:00
Richard Hughes
12040b51fe
trivial: Fix fu_engine_get_device() to use the device list
...
This only worked when the device ID was already in the history database, and
was probably a copy-paste issue.
2018-05-14 13:38:58 +01:00
Richard Hughes
9f86ade6bf
Allow plugins to define the order composite firmwares are installed
2018-05-12 20:46:02 +01:00
Richard Hughes
1e456bcd39
Do not call fu_plugin_init() on blacklisted plugins
...
Fixes https://github.com/hughsie/fwupd/issues/503
2018-05-11 07:26:17 -05:00
Richard Hughes
7e77bf3116
trivial: Be consistent with 'name [id]' in debug output
...
Based on a patch by Mario Limonciello <mario.limonciello@dell.com>, many thanks.
2018-05-10 09:26:07 +01:00
Richard Hughes
4ad41f027c
Allow installing more than one firmware using 'fwupdmgr install'
...
When using failed to open firmware.cab we pass in a device ID of '*' which
tells the daemon to update anything that matches. The current implementation
will fail in two ways:
* If duplicate hardware is installed (for instance two Unifying receivers) then
only the first matching device will be updated.
* If the firmware archive contains two different images then we only try and
upgrade the first device that matches. This means we're unable to update
composite devices using one firmware file.
To fix both issues, carefully build a list of tasks that can be processed using
the given firmware and installed devices, request authentication using all the
different action IDs, then upgrade all the devices one-at-a-time.
Based on a patch by Mario Limonciello <mario.limonciello@dell.com>, many thanks.
2018-05-10 09:26:07 +01:00
Richard Hughes
27bf9ecfbb
trivial: Fix up all apps when building the store
2018-05-10 09:26:07 +01:00
Richard Hughes
7383ce263b
trivial: Split out some common keyring functionality
2018-05-10 09:26:07 +01:00
Richard Hughes
6813426cb5
trivial: Use new meson functionality to detect warning flags
2018-05-09 14:22:58 +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
Mario Limonciello
86b3bcf8c9
ebitdo: Stop matching Nintendo Switch Pro VID/PID
...
Unfortuantely similar to ead5bf392
this is causing problems with
real Nintendo Switch controllers.
2018-05-07 09:22:12 -05:00
Richard Hughes
5a878b2a08
libfwupd: Fix a crash in get-details where no device ID is set
...
Fixes https://github.com/hughsie/fwupd/issues/494
2018-05-04 20:44:29 +01:00
Mario Limonciello
1a60231658
trivial: synapticsmst: Recognize boardid 0x103
...
This board_id will be used in a new device in the future.
The enum and description will be updated later when more details
are ready.
2018-05-03 14:07:42 -05:00
Richard Hughes
185f4a4791
dfu: Allow parsing SREC files without the optional S5 record
2018-05-03 19:58:31 +01:00
Richard Hughes
df2b450b74
trivial: Copy the parent vendor when adding child devices
2018-05-03 19:58:04 +01:00
Richard Hughes
4f70833832
trivial: Add some padding to the FuDevice class struct
...
If we ever support out-of-tree plugins we will be glad of this.
2018-05-03 19:56:20 +01:00
Mario Limonciello
e9046e7207
synapticsmst: Set TB16/WD15 appropriately in topology
2018-05-03 08:07:04 +01:00
Mario Limonciello
542b97d19f
dell: Set parents for Dell WD15/TB16 docks
2018-05-03 08:07:04 +01:00
Mario Limonciello
4a981d599c
dell: Set TPM alternate mode device under regular mode
2018-05-03 08:07:04 +01:00
Richard Hughes
2c86dc0e9a
unifying: Set known parent for unifying peripherals
2018-05-03 08:07:04 +01:00
Richard Hughes
cc664d7d36
amt: Put the AMT device as a child under the system UEFI firmware
2018-05-03 08:07:04 +01:00
Mario Limonciello
6e0663ae6c
thunderbolt: Set known parent for Thunderbolt devices in Dell TB16
2018-05-03 08:07:04 +01:00
Richard Hughes
42728c4d5e
Add 'fwupdmgr get-topology' to show logical device tree
2018-05-03 08:07:04 +01:00
Richard Hughes
5e447293fa
Add the concept of logical mappings between different devices
...
This allows us to find out the logical parent device, for instance in composite
devices with more than one firmware image for a single device.
We also allow lazily specifying the device parent using a GUID and the engine
then automatically sets the parent object when the GUIDs match, which allows
children and parents to exist in different plugins.
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
Richard Hughes
8aa7239240
trivial: Fix some Gtk-Doc mistakes
...
Fixes https://github.com/hughsie/fwupd/issues/487
2018-05-02 08:39:36 +01:00
Mario Limonciello
f6949b4911
Look up bash-completion paths using pkg-config
2018-05-01 16:21:31 -05:00
Richard Hughes
3d71c16ed3
Allow specifying hwids with OR relationships
...
We don't want to use the version= attribute as the HWIDs are not versions, and
thinkgs like globbing just doesn't make sense given they are from hashes.
Fixes the client side part of https://github.com/hughsie/lvfs-website/issues/110
2018-05-01 14:33:23 +01:00
Richard Hughes
db211de617
dfu: Fix a potential DoS by limiting filling holes to 1MiB
2018-05-01 11:35:53 +01:00
Richard Hughes
d7a04f6e86
trivial: Add the generated SREC examples for easy fuzzing
2018-05-01 09:53:10 +01:00
Richard Hughes
7c6b94118c
Add support for parsing Motorola S-record files
2018-05-01 09:16:19 +01:00
Richard Hughes
2984d906b6
trivial: Fix example spec file with suggestions from downstream
2018-04-30 15:36:12 +01:00
Richard Hughes
f892a3b5bf
trivial: post release version bump
2018-04-30 14:10:19 +01:00
Richard Hughes
0d911b84f7
Release fwupd 1.0.7
2018-04-30 14:08:50 +01:00