diff options
| author | Oleg Pykhalov <go.wigust@gmail.com> | 2025-09-30 03:12:08 +0300 |
|---|---|---|
| committer | Oleg Pykhalov <go.wigust@gmail.com> | 2025-10-07 14:18:04 +0300 |
| commit | dad7b8d70da67be321d700719769f846411ecf4c (patch) | |
| tree | 873614cfc9f1509a4a34d1428994343a76e3a891 | |
| parent | 382b901f2411a6f805b4e8ccf8c39088a80a93b1 (diff) | |
services: libvirt: Make dmidecode available to fix SMBIOS error.
The libvirt daemon requires 'dmidecode' to provide Host SMBIOS information
to virtual machines. Without it in the PATH, it fails with the error:
"Host SMBIOS information is not available".
* gnu/services/virtualization.scm (libvirt-configuration): Add 'dmidecode'
field to specify the dmidecode package.
(libvirt-service-type): Add dmidecode to system profile to ensure it's
available in PATH.
* doc/guix.texi (Virtualization Services): Document the new 'dmidecode'
option.
Change-Id: I8e5e565e95149c5aeba2dc0c5c757046efa6de2d
| -rw-r--r-- | doc/guix.texi | 5 | ||||
| -rw-r--r-- | gnu/services/virtualization.scm | 9 |
2 files changed, 11 insertions, 3 deletions
diff --git a/doc/guix.texi b/doc/guix.texi index 7162a5f06b7..a83560b53f9 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -56,7 +56,7 @@ Copyright @copyright{} 2017 Andy Wingo@* Copyright @copyright{} 2017, 2018, 2019, 2020, 2023, 2024, 2025 Arun Isaac@* Copyright @copyright{} 2017 nee@* Copyright @copyright{} 2018 Rutger Helling@* -Copyright @copyright{} 2018, 2021, 2023 Oleg Pykhalov@* +Copyright @copyright{} 2018, 2021, 2023, 2025 Oleg Pykhalov@* Copyright @copyright{} 2018 Mike Gerwitz@* Copyright @copyright{} 2018 Pierre-Antoine Rouby@* Copyright @copyright{} 2018, 2019 Gábor Boskovits@* @@ -39640,6 +39640,9 @@ Libvirt package. @item @code{qemu} (default: @code{qemu}) (type: file-like) The QEMU package to use. +@item @code{dmidecode} (default: @code{dmidecode}) (type: file-like) +The Dmidecode package to use. + @item @code{firmwares} (default: @code{(ovmf-x86-64)}) (type: list-of-file-likes) List of UEFI/BIOS firmware packages to make available. Each firmware package should contain a @file{share/qemu/firmware/@var{NAME}.json} QEMU diff --git a/gnu/services/virtualization.scm b/gnu/services/virtualization.scm index 122e2715dcb..f369c29c76d 100644 --- a/gnu/services/virtualization.scm +++ b/gnu/services/virtualization.scm @@ -3,7 +3,7 @@ ;;; Copyright © 2018, 2020-2025 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2020, 2021, 2023, 2024 Janneke Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2021 Timotej Lazar <timotej.lazar@araneo.si> -;;; Copyright © 2022 Oleg Pykhalov <go.wigust@gmail.com> +;;; Copyright © 2022, 2025 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2022 Leo Nikkilä <hello@lnikki.la> ;;; Copyright © 2023 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2024 Raven Hallsby <karl@hallsby.com> @@ -111,6 +111,7 @@ libvirt-configuration-ca-file libvirt-configuration-cert-file libvirt-configuration-crl-file + libvirt-configuration-dmidecode libvirt-configuration-firmwares libvirt-configuration-host-uuid libvirt-configuration-host-uuid-source @@ -220,6 +221,9 @@ (qemu (file-like qemu) "The QEMU package to use.") + (dmidecode + (file-like dmidecode) + "The Dmidecode package to use.") (firmwares (list-of-file-likes (list ovmf-x86-64)) "List of UEFI/BIOS firmware packages to make available. Each firmware @@ -529,7 +533,8 @@ avoid potential infinite waits blocking libvirt.")) (compose list libvirt-configuration-libvirt)) (service-extension profile-service-type (lambda (config) - (list (libvirt-configuration-libvirt config) + (list (libvirt-configuration-dmidecode config) + (libvirt-configuration-libvirt config) (libvirt-configuration-qemu config)))) ;; Libvirt only considers the $libvirt/share/qemu/firmware and ;; /etc/qemu/firmware directories to locate the QEMU firmware metadata |
