guestfs-release-notes-1.60(1)

NAME
guestfs-release-notes - libguestfs Release Notes

RELEASE NOTES FOR LIBGUESTFS 1.60
These are the release notes for libguestfs stable release 1.60. This describes the major changes since 1.58.

Libguestfs 1.60.0 was released on 9 July 2026.

  Inspection
Add support for Kylin, NeoKylin and Anolis Linux distributions (grass lu).

Guests using Veritas partition tables (reusing the Sun partition type) can now be inspected.

Windows Defender (antivirus) is now detected if present in Windows guests (Susant Sahani).

  API
New "guestfs_xfs_info2" API. This is similar to the existing "guestfs_xfs_info" API but returns a flexible hashtable allowing more fields to be added to the output in future.

"guestfs_get_hv" now returns the default hypervisor.

"guestfs_tar_in" adds a new option "keepdirlink" which controls the tar --keep-directory-symlink flag (Anders Roxell).

"guestfs_xfs_repair" "maxmem" option now produces better error messages if maxmem is too small.

All functions that take LUKS key parameters may now use either "text:..." or "base64:..." prefixes, allowing binary keys to be encoded as base64 and passed to these APIs. guestfish(1) and other tools taking a key file now allow a binary file to be used.

"guestfs_command*" and "guestfs_sh*" now use a bind mount to override "/etc/resolv.conf" inside the guest, allowing these commands to work even when this file is marked as immutable, a common change that system administrators make (Srihari Parimi).

  Tools
New guestfish(1) "not" subcommand, which negates the status of a command.

  Language bindings
GObject and Vala bindings were removed. They were previously deprecated in libguestfs 1.56 (Cole Robinson).

  Documentation
All information related to firstboot scripts was moved to and consolidated in "FIRSTBOOT" in virt-customize(1) (Srihari Parimi).

Fix documentation of "guestfs_copy_out" API.

  Build changes
Fix Weblate (i18n) web hooks (Rafael Fontenelle).

Fix build when libselinux is not available (David Runge).

Github CI is now used more comprehensively (Cole Robinson).

Fix "make dist" command when certain language bindings are disabled (Cole Robinson).

"./configure --with-qemu" was removed.

"CFLAGS" is now prepended to the default, allowing default flags to be overridden. In addition -fPIC is added to the default flags (Cole Robinson).

Some bash completion scripts that were no longer used by libguestfs (they moved to guestfs-tools) were removed. Also new "./configure --with-bash-completion" and "./configure --with-bash-completion-dir" options were added (Christopher Byrne).

No longer over-link Lua bindings with libxml2 and libvirt (David Runge).

  Internals
Simplify qemu property testing. Most of the code was eliminated completely, and also we no longer start up an empty guest when detecting if KVM is available (thanks Daniel Berrange). Also we now print stderr if qemu fails to start during detection (Hilko Bengen).

Use -cpu max on RISC-V (thanks Apache553).

Very minimal support for Apple Filesystem (APFS) was added on Fedora.

Many memory and file descriptor leaks found by Claude Code were fixed (shivanayak).

In the libguestfs appliance, increase the number of pre-process memory maps. This may allow xfs_repair to work on larger filesystems (Eric Sandeen).

Fix DHCP on fast machines by making it wait for an address when networking is enabled. In addition use "dhcpcd --debug" which makes it easier to see if DHCP requests are working (Cole Robinson).

Improvements to debug output (Surya Gupta, Srihari Parimi).

Fix Fedora bin/sbin symlinking to be less noisy (Cole Robinson).

Rewrite xfs_repair and luks_* implementations in the daemon in OCaml.

  Bugs fixed

https://issues.redhat.com/browse/RHEL-129145
    RFE: Detect Windows Defender antivirus when enabled in default Windows 11 installs

https://issues.redhat.com/browse/RHEL-143673
    Add new xfs_info2 API to expose XFS version information

https://issues.redhat.com/browse/RHEL-165220
    virt-v2v with sun partition table and Veritas storage failed with: parted exited with status 1: Warning: The disk CHS geometry reported by the operating system does not match the geometry stored on the disk label

https://issues.redhat.com/browse/RHEL-165677
    Stop using xfs_repair -m because memory required scales with filesystem size and has sharp edges

https://issues.redhat.com/browse/RHEL-170864
    virt-v2v failing with binary LUKS keys [virt-v2v]

https://issues.redhat.com/browse/RHEL-171895
    virt-v2v failing with binary LUKS keys [libguestfs]

https://issues.redhat.com/browse/RHEL-171896
    virt-v2v failing with binary LUKS keys [guestfs-tools]

https://issues.redhat.com/browse/RHEL-178287
    virt-v2v fails during migration of RHEL 7 VMs due to XFS filesystem errors, potentially related to RHEL 10.1 xfs_repair running against a RHEL 7 XFS filesystem.

https://issues.redhat.com/browse/RHEL-178556
    Use bind mount to overwrite /sysroot/etc/resolv.conf during "sh" operations

https://github.com/libguestfs/libguestfs/issues/290
    1.58.0: undefined reference to optgroup_selinuxrelabel_available

https://github.com/libguestfs/libguestfs/issues/292
    guestfs_int_get_cpu_model: use -cpu max for riscv

https://github.com/libguestfs/libguestfs/issues/312
    switch to po4a

https://github.com/libguestfs/libguestfs/issues/336
    flaky test network/test-network.sh

https://github.com/libguestfs/libguestfs/issues/359
    1.58.1: The Lua bindings link against libxml2 but don't seem to use it

SEE ALSO
guestfs-examples(1), guestfs-faq(1), guestfs-performance(1), guestfs-recipes(1), guestfs-testing(1), guestfs(3), guestfish(1), http://libguestfs.org/

AUTHORS

Adolfo Jayme Barrientos
Anders Roxell
Andi Chandler
Arif Budiman
Christopher Byrne
Cole Robinson
Emilio Herrera
Ettore Atalan
Fco. Javier F. Serrador
grimst
Hela Basa
Hilko Bengen
Jan Kuparinen
Krascovict Petrov
Léane GRASSER
Nathan95
Pavel Borecki
Piotr Drąg
Rafael Fontenelle
Richard W.M. Jones
Ricky Tigg
shivanayak
Srihari Parimi
Surya Gupta
Susant Sahani
Temuri Doghonadze
Tian Shixiong
Yuri Chornoivan
zhanchun li

COPYRIGHT
Copyright (C) 2009-2026 Red Hat Inc.

LICENSE
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

BUGS
To get a list of bugs against libguestfs, use this link: https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools

To report a new bug against libguestfs, use this link: https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools

When reporting a bug, please supply:

•   The version of libguestfs.

•   Where you got libguestfs (eg. which Linux distro, compiled from source, etc)

•   Describe the bug accurately and give a way to reproduce it.

•   Run libguestfs-test-tool(1) and paste the complete, unedited output into the bug report.