2221 Commits
Author SHA1 Message Date
Nimish Jain 5b00c9b282 Add bhyve as a default hypervisor
Updated set_default_hypervisor() to match bhyve
2026-09-02 19:53:19 +02:00
Roman Bogorodskiy fad29e937a serialcon: add 'nmdm' console support
The 'nmdm' is a console type used by the bhyve driver.
It works like a pty console, so adding support is just
a matter of adding it to the 'usable_types' list.

Signed-off-by: Roman Bogorodskiy <bogorodskiy@gmail.com>
2026-03-26 21:07:17 +01:00
Cole Robinson 20d375a043 details: Fix TPM label from Customize wizard
version isn't filled in, so it is formatted as `TPM vNone`. Make
it just `TPM` instead

Signed-off-by: Cole Robinson <crobinso@redhat.com>
2026-02-24 11:34:36 -05:00
Cole Robinson d306fb6b21 uitests: Add coverage exclusions
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2026-02-09 20:56:38 +01:00
Cole Robinson b3daef7efa testmock: add --test-options=disable-name-validation
Use this to fix uitests testNewVMInstallFail and friends.
Now that we catch / in object names which took away our easy way to
make libvirt domain creation fail and hit some important error
code paths

Signed-off-by: Cole Robinson <crobinso@redhat.com>
2026-02-09 20:56:38 +01:00
6543 90e425b59a ui: Show NVMe Controller details
display serial and atached disks
2026-01-11 18:36:09 +01:00
6543 08b547366f virtManager: Add NVMe disk type 2026-01-11 18:36:09 +01:00
Pavel Hrdina 97505a9fea virtinst: implement NVMe disk target generation
In libvirt NVMe disk targets are based on what linux uses for device
names.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2026-01-11 18:36:09 +01:00
Akihiko Odaki 10014e1505 addhardware: Add usb as a recommended sound device
usb is an architecture-independent sound device and useful for
Windows on Arm, which does not support PC sound devices.

Signed-off-by: Akihiko Odaki <odaki@rsg.ci.i.u-tokyo.ac.jp>
2026-01-10 19:25:58 +01:00
Pavel Hrdina 3985b0746f virtinst: remove legacy attribute from set_boot_order/get_boot_order
Only tests used manual value for the attribute, otherwise we always used
what was detected by conn_device_boot_order() function.

Remove that attribute and update tests to use unittest.mock.patch where
needed.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2025-12-04 16:55:51 +01:00
Pavel Hrdina 3a25792d90 virtinst: guest: introduce can_use_device_boot_order
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2025-12-04 16:55:51 +01:00
Pavel Hrdina 161fb1baaf maint: use constants instead of strings for boot devices
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2025-12-04 16:55:51 +01:00
Pavel Hrdina 57e6f96f9a virtManager: wrapped details hw-panel with GtkScrolledWindow
Using GtkScrolledWindow allows VM window with hardware details displayed
to resize it to smaller size than hardware details content.

Resolves: https://github.com/virt-manager/virt-manager/issues/1007
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2025-11-17 12:56:57 +01:00
ropbear f907ede75b Calling loader.close() before pixbuf assignment to avoid NoneType pixbuf
In the case loader.close() has more parsing to do, get_pixbuf() can
return a NoneType which causes issues in the snapshot view. Calling
loader.close() before this allows for proper cleanup before calling
get_pixbuf().

https://docs.gtk.org/gdk-pixbuf/method.PixbufLoader.close.html
https://docs.gtk.org/gdk-pixbuf/method.PixbufLoader.get_pixbuf.html
2025-11-11 08:48:15 +01:00
Roman Bogorodskiy ecd280d592 addhardware: network: adjust supported network devices for bhyve
- Add bhyve to a list of guest types that support virtio device type
 - Do not include rtl8139 for bhyve

Signed-off-by: Roman Bogorodskiy <bogorodskiy@gmail.com>
2025-09-26 14:12:38 -04:00
Lin Ma 00a9046a96 details: Add support for startup policy for USB passed through devices
Signed-off-by: Lin Ma <lma@suse.de>
2025-08-25 19:43:44 +02:00
Lin Ma 6fefb9ee03 addhardware: Add support for startup policy for USB passed through devices
Signed-off-by: Lin Ma <lma@suse.de>
2025-08-25 19:43:44 +02:00
Lin Ma e518ad262c addhardware: Add a function build_hostdev_usb_startup_policy_combo
The next two patches will call it.

Signed-off-by: Lin Ma <lma@suse.de>
2025-08-25 19:43:44 +02:00
Pino Toscano 988b513923 virt-manager: improve feedback for unavailable system tray icon
In case the system tray icon is not available on Wayland (because of the
lack of Ayatana AppIndicator), the only notification of that is an
untranslated message shown only as tooltip on the check box of the
option.

To make that notification a bit more visible, use the same approach for
the libguestfs option change: add a row below the check box with a
warning icon and text next to it. This row is shown only in case there
is an error message to show, and it is used instead of setting the
tooltop of the check box.

Also, reword the error message to make it a bit less technical, and make
it translatable.

Signed-off-by: Pino Toscano <ptoscano@redhat.com>
2025-06-30 11:32:47 +02:00
Pino Toscano 7bd89f7cdf chore: add inline noqa for E501 (long lines)
Add inline markers in few files for the specific lines that are longer
than the current limit (100), and that neither black nor ruff can
shorten.

Signed-off-by: Pino Toscano <ptoscano@redhat.com>
2025-06-20 14:09:50 +02:00
Pino Toscano 85c43959ca chore: avoid using 'l' as variable/parameter name
According to PEP8 [1], 'l' (lowercase 'L') is name to avoid, as
potentially hard to read.

Switch the occurrences to more clear names representing better what the
variables/parameters represent (e.g. "tunnel", "data", etc). In case the
variable/parameter is really a list, use "lst" to not use "list" and
override the builtin.

Additionally, a 'w' variable was changed for consistency with the 'l'
changed in the line above it.

There should be no behaviour changes.

[1] https://peps.python.org/pep-0008/#names-to-avoid

Signed-off-by: Pino Toscano <ptoscano@redhat.com>
2025-06-19 21:21:11 +02:00
Pino Toscano 44c9aa3741 chore: remove extra parentheses
Drop extra parentheses in contexts where tuples are not used.

Signed-off-by: Pino Toscano <ptoscano@redhat.com>
2025-06-18 15:31:37 +02:00
Pino Toscano c3df2ba5d7 chore: drop "object" inheritance
It was needed to get the "new style" classes in Python 2, and Python 3
has only that style of classes. Hence the inheritance from "object" is
not needed and thus obsolete, so drop it.

Signed-off-by: Pino Toscano <ptoscano@redhat.com>
2025-06-18 15:31:37 +02:00
Pino Toscano c814183ba2 chore: concatenate strings in the same line
As a result of the reformatting with black, few strings that were in
different lines are now in the same line, still as separate strings that
are implicitly concatenated. Merge them in a single string instead.

Signed-off-by: Pino Toscano <ptoscano@redhat.com>
2025-06-18 15:31:37 +02:00
Pino Toscano d074f56e58 fix: move parameter out of gettext calls
Move the placeholder replacements/formatting outside the gettext
function calls: this way the gettext calls work as expected, looking up
the actual string with placeholders and not the one with the
replacements already done (which will not work).

Signed-off-by: Pino Toscano <ptoscano@redhat.com>
2025-06-18 15:31:37 +02:00
Pino Toscano e5cd614ca2 chore: use "not in/is" rather than "not .. in/is"
Both are equivalent, and the former is the preferred way.

Signed-off-by: Pino Toscano <ptoscano@redhat.com>
2025-06-18 15:31:37 +02:00
n3rdopolis 4b89c39eea Add Ctrl+Alt+Shift+Esc key command for logind's SecureAttentionKey
logind now supports a new key binding https://github.com/systemd/systemd/pull/29542
Ctrl+Alt+Shift+Esc that emits SecureAttentionKey to allow login managers to start
or switch back to the greeter
2025-06-11 09:32:34 +02:00
Zahid Kizmaz 62f976a61b fix: default start_folder to None 2025-06-10 09:22:10 +02:00
Pavel Hrdina e39e0ad5f0 virt-manager: add support for vDPA network device
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2025-03-18 20:34:22 +01:00
Pavel Hrdina 714d5f1afd virt-manager: list virtual networks when creating new QEMU Session VM
Using qemu-bridge-helper QEMU Session VMs are now able to use host
bridge interfaces. Currently only interface named virbr0 is allowed by
default but it is possible to change it in `/etc/qemu/bridge.conf`.

We will still keep the usermode network as default.

Resolves: https://github.com/virt-manager/virt-manager/issues/863
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2025-03-18 20:33:33 +01:00
Pino Toscano af07c39b13 chore: format the code with black
(crobinso: compress to one commit, and adjust string concat issues)

Signed-off-by: Pino Toscano <ptoscano@redhat.com>
2025-03-03 11:40:37 -05:00
Heinrich Schuchardt 6c6c39be2f createvm: prioritize riscv64
As all major distros support the riscv64 architecture, add it to the
list of prioritized architectures. This will move it up in the
architecture drop-down menu and thereby easier to find when creating
a new VM.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2025-03-03 10:13:14 -05:00
Pavel Hrdina 5ddd3456a0 virtManager: domain: fix indentation
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2025-01-29 10:50:03 +01:00
Pavel Hrdina 54dc858f79 snapshots: warn users to not mix snapshot modes
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2025-01-27 22:59:56 +01:00
Pavel Hrdina 40d86086b6 snapshots: default to same snapshot mode as currently used snapshot
Using internal and external snapshot mode for the same VM has some
limitations. When creating new snapshot default to the same mode as
already existing currently used snapshot. If there is no existing
snapshot default to external snapshot.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2025-01-27 22:59:56 +01:00
tinyboxvk 412c5d1ad3 Fix typos
Signed-off-by: tinyboxvk <13696594+tinyboxvk@users.noreply.github.com>
2025-01-09 15:45:48 +01:00
Andrea Bolognani c3debb4eda cli, man: Always list --osinfo before --os-variant
The former is the preferred spelling and it should always be
presented first to the user.

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
2024-12-10 14:06:12 +01:00
Lin Ma f92c25749b addhardware: panic: Fill in model combo with advertised values by libvirt
The commit c5a46646 asks libvirt to fill in a default panic model for us.
Now libvirt domcaps can advertise panic models, Let's fill in the panic
model combo with the advertised values.

Signed-off-by: Lin Ma <lma@suse.de>
2024-12-10 14:05:20 +01:00
Andrea Bolognani 11b70218d3 gui: Support maximum CPU mode
Allow the user to set it and recognize it correctly when the
domain is already using it.

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
2024-12-10 14:01:32 +01:00
Cole Robinson 2f8f0e8151 virt-xml: implement --edit --boot uefi=off
Disable all UEFI config bits for an existing VM

Signed-off-by: Cole Robinson <crobinso@redhat.com>
2024-11-21 21:51:24 +01:00
Pavel Hrdina 3247dab74c meson: add virtManager files
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2024-11-12 23:18:32 +01:00
Cole Robinson 0755711372 tests: uitests: cover cli changes
Signed-off-by: Cole Robinson <crobinso@redhat.com>
2024-11-12 23:12:36 +01:00
Cole Robinson 408a39a777 virt-manager: Switch to --no-fork by default
The reason we fork by default, is to force ssh to invoke
ssh-askpass when a password is required, rather than prompt on
 a terminal no one is looking at. There's a more thorough
explanation here:
https://github.com/virt-manager/virt-manager/issues/731

With SSH_ASKPASS_REQUIRE=force, we now have a way to force ssh
to use askpass in the above scenario, when ssh and libvirt are new
enough.

The default forking behavior has caused maintenance pain in the
past, and is currently causing issues on macos:
https://github.com/virt-manager/virt-manager/issues/620

Let's flip the default to `--no-fork`. The VIRT_MANAGER_DEFAULT_FORK
env variable is there as an escape hatch incase I really miscalculated.

I don't expect many people are depending on use of askpass either
way, or if they are, they are launching virt-manager from their
desktop and not a terminal, which already gives us the correct
behavior AFAICT>

My suspicion is barely anyone will notice, which is why
I'm ok with changing this now, despite the libvirt support being
brand new.

If this doesn't raise any issues, then we can eventually drop
the forking behavior all together.

Signed-off-by: Cole Robinson <crobinso@redhat.com>
2024-11-12 23:12:36 +01:00
Cole Robinson 5de632700f virt-manager: add VIRT_MANAGER_DEFAULT_FORK=yes|no env variable
Allows users to choose default fork behavior via an environment
variable.

Signed-off-by: Cole Robinson <crobinso@redhat.com>
2024-11-12 23:12:36 +01:00
Cole Robinson 7ff899b85e virt-manager: Add --fork option
This is a no-op for now, since this is already the default behavior

Signed-off-by: Cole Robinson <crobinso@redhat.com>
2024-11-12 23:12:36 +01:00
Cole Robinson 17e39de021 virt-manager: Set SSH_ASKPASS_REQUIRE=force
openssh 8.4p1 released in Sep 2020 finally added a feature
to force using SSH_ASKPASS instead of prompting on the commandline
for password, if a password would be required.

https://man.openbsd.org/ssh.1#SSH_ASKPASS_REQUIRE

Getting this behavior is basically what our whole fork dance is
about. Now we can do it with an environment variable

Let the user override it from the environment though, so there's
an escape hatch incase this causes unforseen problems

Signed-off-by: Cole Robinson <crobinso@redhat.com>
2024-11-12 23:12:36 +01:00
Cole Robinson c5a4664676 addhardware: panic: default to asking libvirt for default model
Drop our hardcoded model lists, and just ask libvirt to fill in
a model for us. Add an entry to the combo box so users can type
in a non-default value if they want one.

Long term libvirt should be providing all this info to us via
domcapabilities

Signed-off-by: Cole Robinson <crobinso@redhat.com>
2024-11-12 09:55:20 -05:00
Cole Robinson dc1c998265 console: Handle autoconnect=off for serial console too
Fixes: https://github.com/virt-manager/virt-manager/issues/584

Signed-off-by: Cole Robinson <crobinso@redhat.com>
2024-11-11 14:06:42 -05:00
Pavel Hrdina 3006c5a1d5 virtManager: drop libappindicator usage
Latest upstream release was back in 2012 and the new
libayatana-appindicator project is present in all distribution supported
by libvirt.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2024-10-14 08:51:07 +02:00
Pavel Hrdina 31eab9b46a pylint: fix false positive errors
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
2024-10-13 17:11:06 +02:00