mirror of
https://git.proxmox.com/git/fwupd
synced 2026-03-29 06:29:31 +00:00
This allows us to load sets of different host security attributes
for testing the various front end tools we have now. e.g.
sudo FWUPD_HOST_EMULATE=thinkpad-p1-iommu.json.gz fwupd
or, using a non-compressed absolute path:
sudo FWUPD_HOST_EMULATE=/tmp/test/thinkpad-p1-iommu.json fwupd
Data can be created with `./contrib/generate-emulation.py file.json`
and then can be manually modified if required. Running the script on
a file that already exists will just strip out any unneeded data, as
well as piping content into it using stdin.
As a precaution, the org.fwupd.hsi.HostEmulation attribute is added
so we do not ask the user to upload the HSI report. It also allows
the LVFS to ignore any HSI reports with this attribute for clients
that upload HSI reports regardless.
See https://github.com/fwupd/fwupd/discussions/4832
93 lines
3.9 KiB
Markdown
93 lines
3.9 KiB
Markdown
---
|
|
title: Environment Variables
|
|
---
|
|
|
|
When running fwupd reads some variables from your environment and changes some
|
|
behavior. This might be useful for debugging, or to make fwupd run somewhere
|
|
with a non-standard filesystem layout.
|
|
|
|
## fwupdmgr and fwupdtool
|
|
|
|
* `DISABLE_SSL_STRICT` disables strict SSL certificate checking, which may make
|
|
downloading files work when using some antisocial corporate firewalls.
|
|
* `FWUPD_CURL_VERBOSE` shows more information when downloading files
|
|
* `FWUPD_DEVICE_TESTS_BASE_URI` sets the base URI when downloading firmware for the device-tests
|
|
* `FWUPD_SUPPORTED` overrides the `-Dsupported_build` meson option at runtime
|
|
* `FWUPD_VERBOSE` is set when running `--verbose`
|
|
* `FWUPD_XMLB_VERBOSE` can be set to show Xmlb silo regeneration and quirk matches
|
|
* `FWUPD_DBUS_SOCKET` is used to set the socket filename if running without a dbus-daemon
|
|
* `FWUPD_DOWNLOAD_VERBOSE` can be used to show wget or curl output
|
|
* `FWUPD_PROFILE` can be used to set the profile traceback threshold value in ms
|
|
* standard glibc variables like `LANG` are also honored for CLI tools that are translated
|
|
* libcurl respects the session proxy, e.g. `http_proxy`, `all_proxy`, `sftp_proxy` and `no_proxy`
|
|
|
|
## daemon
|
|
|
|
* `FWUPD_MACHINE_KIND` can be used to override the detected machine type, e.g. `physical`, `virtual`, or `container`
|
|
* `FWUPD_HOST_EMULATE` can be used to load test data from `/usr/share/fwupd/host-emulate.d`, e.g. `thinkpad-p1-no-iommu.json.gz`
|
|
|
|
## Self Tests
|
|
|
|
* `CI_NETWORK` if CI is running with network access
|
|
* `TPM_SERVER_RUNNING` if an emulated TPM is running
|
|
|
|
## Shared libfwupdplugin
|
|
|
|
* `FU_HID_DEVICE_VERBOSE` shows HID traffic
|
|
* `FU_SREC_FIRMWARE_VERBOSE` shows more information about parsing
|
|
* `FU_UDEV_DEVICE_DEBUG` shows more information about UDEV devices, including parents
|
|
* `FU_USB_DEVICE_DEBUG` shows more information about USB devices
|
|
* `FWUPD_DEVICE_LIST_VERBOSE` display devices being added and removed from the list
|
|
* `FWUPD_PROBE_VERBOSE` dump the detected devices to the console, even if not supported by fwupd
|
|
|
|
## Plugins
|
|
|
|
Most plugins read a plugin-specific runtime key to increase verbosity more than the usual `VERBOSE`.
|
|
This can be also used when using fwupdtool e.g. using `--plugin-verbose=dell` will set the
|
|
environment variable of `FWUPD_DELL_VERBOSE` automatically.
|
|
|
|
Other variables, include:
|
|
|
|
* `FWUPD_DELL_FAKE_SMBIOS` if set, use fake SMBIOS information for tests
|
|
* `FWUPD_FORCE_TPM2` ignores a TPM 1.2 device detected in the TPM self tests
|
|
* `FWUPD_PLUGIN_TEST` used by the test plugin to pass data out-of-band to the loader
|
|
* `FWUPD_REDFISH_SELF_TEST` if set, do destructive tests on the actual device BMC
|
|
* `FWUPD_REDFISH_SMBIOS_DATA` use this filename to emulate a specific SMBIOS blob
|
|
* `FWUPD_SOLOKEY_EMULATE` emulates a fake device for testing
|
|
* `FWUPD_SUPERIO_DISABLE_MIRROR` disables the e-flash fixup to get byte-accurate hardware dumps
|
|
* `FWUPD_SUPERIO_RECOVER` allow recovery of a corrupted SuperIO by hardcoding the device size
|
|
* `FWUPD_TEST_PLUGIN_XML` used by the test plugin to load XML state out-of-band before startup
|
|
* `FWUPD_UEFI_CAPSULE_RECREATE_COD_DATA` if set, write the files in the example COD tree in srcdir
|
|
* `FWUPD_UEFI_TEST` used by the UEFI plugins to disable specific sanity checks during self tests
|
|
* `FWUPD_WAC_EMULATE` emulates a fake device for testing
|
|
|
|
## File system overrides
|
|
|
|
These are not fully documented here, see <https://github.com/fwupd/fwupd/blob/main/libfwupdplugin/fu-common.c>
|
|
for details.
|
|
|
|
* `CACHE_DIRECTORY`
|
|
* `CONFIGURATION_DIRECTORY`
|
|
* `FWUPD_ACPITABLESDIR`
|
|
* `FWUPD_DATADIR`
|
|
* `FWUPD_DATADIR_QUIRKS`
|
|
* `FWUPD_EFIAPPDIR`
|
|
* `FWUPD_FIRMWARESEARCH`
|
|
* `FWUPD_LOCALSTATEDIR`
|
|
* `FWUPD_LOCALSTATEDIR_QUIRKS`
|
|
* `FWUPD_OFFLINE_TRIGGER`
|
|
* `FWUPD_PLUGINDIR`
|
|
* `FWUPD_PROCFS`
|
|
* `FWUPD_SYSCONFDIR`
|
|
* `FWUPD_SYSFSDRIVERDIR`
|
|
* `FWUPD_SYSFSFWATTRIBDIR`
|
|
* `FWUPD_SYSFSFWDIR`
|
|
* `FWUPD_SYSFSSECURITYDIR`
|
|
* `FWUPD_SYSFSTPMDIR`
|
|
* `FWUPD_UEFI_ESP_PATH`
|
|
* `HOME`
|
|
* `RUNTIME_DIRECTORY`
|
|
* `SNAP`
|
|
* `SNAP_USER_DATA`
|
|
* `STATE_DIRECTORY`
|