Commit Graph

411 Commits

Author SHA1 Message Date
Richard Hughes
4105768a01 Remove the 'common' prefix when parsing version numbers 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
06a2dcf62b Remove gtkdoc build option
We've seen that gi-docgen is active and other projects are switching to
it. Remove the legacy (and slow) gtk-doc build support.
2022-06-11 21:26:46 +01:00
Richard Hughes
9f8d75ad37 trivial: Disable the win32 msi install CI test
Wine 7.9 make installing and removing msi packages *intermittently*
fail, and that's now being shipped in Fedora updates. :/
2022-06-08 17:26:30 +01:00
Richard Hughes
7ce625fddd Fix windows CI using the latest meson version 2022-06-08 15:24:25 +01:00
Richard Hughes
3107bdc004 trivial: Remove no-longer-required msitools manual install step 2022-06-08 15:24:25 +01:00
Richard Hughes
3c30072b77 trivial: Use the packaged version of gi-docgen in Fedora CI 2022-05-17 09:46:17 +01:00
Richard Hughes
4a46376137 Always be arch-explicit for OS deps, harder
This fixes d8ba0bd178 to also add the
variant when the package name is not specfied.

Fixes https://github.com/fwupd/fwupd/issues/4636
2022-05-17 09:46:17 +01:00
Richard Hughes
7ce3820b07 Use exe_wrapper = '/usr/bin/wine' when cross-compiling
This should probably move to /usr/share/mingw/toolchain-mingw64.meson
and this patch can be reverted when that happens.
2022-05-13 14:50:03 +01:00
Richard Hughes
812562c6b4 Do not install ca-bundle.crt on win32 as it's no longer required 2022-05-11 09:07:48 -05:00
Mario Limonciello
9633e555e2 trivial: use double quote for motd sed statement 2022-05-10 18:57:17 +01:00
Mario Limonciello
00b115d85d trivial: don't run check-license on headers in dist/ 2022-05-10 18:57:17 +01:00
Mario Limonciello
23bead8a56 trivial: don't check for null/false returns on dist or subprojects 2022-05-10 18:57:17 +01:00
Mario Limonciello
20fb170607 trivial: ci: generate NEWS and VERSION after MSI is done
These files don't need to be in the MSI, they're just used for CI
to add to the release on Github.
2022-05-10 18:57:17 +01:00
Richard Hughes
b149300a9f Download in-process when using fwupdtool
This also means we get progress completion.
2022-05-10 09:13:45 -05:00
Richard Hughes
6535a686a5 trivial: Reduce the size of the MSI by removing static libraries 2022-05-10 12:58:29 +01:00
Mario Limonciello
ebb5d7f6a7 trivial: add libgusb into dist package for Win32 2022-05-09 15:54:51 -05:00
Richard Hughes
77bb1ff479 Switch the Windows installer from NSIS to MSI
This means we get a few bugs fixed:

 * We appear in the Add/Remove Programs UI
 * We have an uninstaller that works on Windows 10
 * The installation is pretty, and scriptable
 * We actually install the translations
2022-05-09 15:49:40 +01:00
Richard Hughes
e76587ce95 Use ubuntu:rolling to fix longstanding CI issue 2022-05-09 11:33:38 +01:00
Richard Hughes
d8ba0bd178 Always be arch-explicit for OS deps
Before we were only being explcit for Debian and Ubuntu and that meant
the missing attribute meant different things depending on the OS.
2022-05-08 10:18:59 -05:00
Richard Hughes
ba08d6f276 Use the system-provided mingw64 cross file 2022-05-06 14:37:43 +01:00
Richard Hughes
517dc88f4f trivial: Fix the win32 CI tests 2022-05-06 13:55:51 +01:00
Mario Limonciello
5055c5e3e0 trivial: win32: disable compat cli tools 2022-05-05 15:38:43 -05:00
Mario Limonciello
532dfd54b1 trivial: install fwupd.exe into bindir for Windows
In Windows we'll be placing everything in the same directory so that
libraries can be resolved.
2022-05-05 15:38:43 -05:00
Mario Limonciello
97aa7b2eb6 trivial: build windows daemon too in CI
This won't actually work yet (and hence we won't package it), but we
can at least make sure we don't regress the support by any code
changes.
2022-05-05 11:51:22 -05:00
Richard Hughes
6f6f83ee46 trivial: Disable the safe directory feature for CI 2022-04-23 08:27:34 +01:00
Richard Hughes
95022acffb trivial: Fix Fedora CI 2022-04-22 11:58:05 +01:00
Mario Limonciello
f3fe9ac40c trivial: don't make TSS directory in debian CI
The TSS issue has been fixed for a while, and this change
means that the script otherwise needs to run as root.
2022-04-11 20:05:14 +01:00
Richard Hughes
8a349e17af Include macos-10.15 and macos-11 in CI builds 2022-03-22 14:57:08 +00:00
Richard Hughes
92515d193a Add coSWID and uSWID parsers to libfwupdplugin
These parse the structures as defined in:

 * https://datatracker.ietf.org/doc/draft-ietf-sacm-coswid/
 * https://github.com/hughsie/python-uswid
2022-03-15 14:37:02 +00:00
Mario Limonciello
661990ed98 Convert build system to use meson tristate features
tristate features will automatically disable if dependencies marked
as required are missing.

Packagers can manually override using `auto_features`.

Link: https://mesonbuild.com/Build-options.html#features
2022-02-28 08:34:48 -06:00
Mario Limonciello
513e75b628 trivial: Add libqrtr-glib-dev to build dependencies
It's needed in debian unstable now for Modem Manager plugin
2022-02-28 06:53:19 -06:00
Richard Hughes
a3efbe51f6 scsi: Add a simple plugin to enumerate SCSI hardware
We might want this to tag insecure or broken SAS drives, cough.
2022-02-24 17:21:51 +00:00
Richard Hughes
da90fca348 trivial: Turn off GPIO support by default
We can swap the default to auto-detection once the auto-features branch
has landed.
2022-02-21 20:37:30 +00:00
Ricardo Cañuelo
9466e778f5 Add a new plugin to handle HP M2xfd monitors
Added support for genesys logic devices.
2022-02-21 08:30:43 +00:00
Richard Hughes
c71ca76235 Add a plugin to set GPIOs for the duration of an update 2022-02-16 14:01:07 +00:00
Richard Hughes
02f003a195 trivial: Build pcre when building static CI tools 2022-02-09 11:58:50 +00:00
Richard Hughes
740bddf7dd trivial: Do not use use sudo to use firmware-build
It's not needed anymore.
2022-02-09 11:58:50 +00:00
Richard Hughes
c716cac45c trivial: Move the CI to Fedora 35 2022-01-30 20:02:32 +00:00
Mario Limonciello
e742e4fc10 trivial: ci: fix ubuntu ci 2022-01-27 15:02:19 -06:00
Crag Wang
fbcc031ae4 trivial: refresh bash completion to reflect recent changes 2022-01-17 13:41:20 -06:00
Mario Limonciello
8918a4f168 trivial: ci: don't enable debian unstable apt pins 2022-01-02 12:28:54 -06:00
Richard Hughes
60d266cbc6 Add support for UF2 devices
A UF2 device exposes a VFAT block device (sometimes called a Mass
Storage Device) which has a virtual file called `INFO_UF2.TXT` where
metadata can be read. It may also have a the current firmware exported
as a file called `CURRENT.UF2` which is in a 512 byte-block UF2 format.

Writing any file to the MSD will cause the firmware to be written.
Sometimes the device will restart and the volume will be unmounted
and then mounted again. In some cases the volume may not “come back”
until the user manually puts the device back in programming mode.

Match the block devices using the VID*PID, UUID or label, and then
create a UF2 device which can be used to flash firmware.

Note: We only read metadata from allow-listed IDs to avoid causing
regressions on non-UF2 volumes. To get the UUID and label you can
use commands like:

    udisksctl info -b /dev/sda1
2021-12-21 10:06:18 +00:00
Mario Limonciello
db94a995bd trivial: contrib/setup: if markdown isn't installed don't show an error
```
Install developer-friendly **unsafe** PolicyKit rules into /etc/polkit-1/rules.d? (y/N) n
Traceback (most recent call last):
  File "/home/supermario/fwupd/./contrib/ci/fwupd_setup_helpers.py", line 154, in <module>
    test_markdown()
  File "/home/supermario/fwupd/./contrib/ci/fwupd_setup_helpers.py", line 34, in test_markdown
    import markdown
ModuleNotFoundError: No module named 'markdown'
Collecting markdown
  Downloading Markdown-3.3.6-py3-none-any.whl (97 kB)
     |████████████████████████████████| 97 kB 1.1 MB/s
Collecting importlib-metadata>=4.4
  Downloading importlib_metadata-4.8.2-py3-none-any.whl (17 kB)
Collecting zipp>=0.5
  Downloading zipp-3.6.0-py3-none-any.whl (5.3 kB)
Installing collected packages: zipp, importlib-metadata, markdown
Successfully installed importlib-metadata-4.8.2 markdown-3.3.6 zipp-3.6.0
```
2021-12-16 07:07:33 -06:00
Mario Limonciello
dabfac661e trivial: win32: disable motd writing by default 2021-12-15 06:46:27 -06:00
Richard Hughes
251f6348aa trivial: Add the missing plugin_cpu
I think using the plugin_uefi_pk option was probably a typo.
2021-12-10 12:00:33 +00:00
Richard Hughes
c47446c411 trivial: Add liblzma-dev the deps in case we're building a subproject 2021-12-06 17:57:23 +00:00
Richard Hughes
02eac5c75f Make more plugins optional 2021-11-29 09:30:57 +00:00
Richard Hughes
dc1d5de057 Make the HSI tests optional for embedded targets
70% of the plugins installed on OpenBMC are not being used...
2021-11-29 09:30:57 +00:00
Richard Hughes
3291bd40ce Make Upower and powerd support optional
In some cases you really know that the daemon is never going to exist.
2021-11-27 18:46:27 +00:00