.\" -*- mode: troff; coding: utf-8 -*-
.\" Automatically generated by Podwrapper::Man 1.56.0 (Pod::Simple 3.45)
.\"
.\" Standard preamble:
.\" ========================================================================
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Vb \" Begin verbatim text
.ft CW
.nf
.ne \\$1
..
.de Ve \" End verbatim text
.ft R
.fi
..
.\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>.
.ie n \{\
. ds C` ""
. ds C' ""
'br\}
.el\{\
. ds C`
. ds C'
'br\}
.\"
.\" Escape single quotes in literal strings from groff's Unicode transform.
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\"
.\" If the F register is >0, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
.\" entries marked with X<> in POD. Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
.\"
.\" Avoid warning from groff about undefined register 'F'.
.de IX
..
.nr rF 0
.if \n(.g .if rF .nr rF 1
.if (\n(rF:(\n(.g==0)) \{\
. if \nF \{\
. de IX
. tm Index:\\$1\t\\n%\t"\\$2"
..
. if !\nF==2 \{\
. nr % 0
. nr F 2
. \}
. \}
.\}
.rr rF
.\"
.\" Required to disable full justification in groff 1.23.0.
.if n .ds AD l
.\" ========================================================================
.\"
.IX Title "guestfs-tools-release-notes-1.56 1"
.TH guestfs-tools-release-notes-1.56 1 2026-07-11 guestfs-tools-1.56.0 "Virtualization Support"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH NAME
guestfs\-tools\-release\-notes \- guestfs tools release Notes
.SH "RELEASE NOTES FOR GUESTFS TOOLS 1.56"
.IX Header "RELEASE NOTES FOR GUESTFS TOOLS 1.56"
These are the release notes for guestfs tools stable release 1.56.
This describes the major changes since 1.54.
.PP
Guestfs tools 1.56.0 was released on \fB9 July 2026\fR.
.SS virt\-builder
.IX Subsection "virt-builder"
Fix building of \f(CW\*(C`debian\-13\*(C'\fR template (pulsarrush).
.PP
Use HTTPS to fetch templates (Xiang Hua Chen).
.SS virt\-customize
.IX Subsection "virt-customize"
Fix SELinux relabelling of "split /usr" guests.
.PP
Fix Windows Update and \f(CW\*(C`pnputil /e\*(C'\fR command in Windows guests after
virtio\-win drivers are injected (Cole Robinson).
.PP
When injecting virtio\-win drivers in Windows guests, install
\&\fIblnsvr.exe\fR (the balloon server) (Cole Robinson).
.PP
Fix installation of Windows Vista and Windows 2008 Server R1 drivers
(Cole Robinson).
.PP
Remove the RHEL subscription\-manager feature (Cole Robinson).
.PP
In firstboot scripts, print Windows \f(CW\*(C`%USERNAME%\*(C'\fR and \f(CW\*(C`%USERDOMAIN%\*(C'\fR
which can be used to diagnose failures caused by insufficient
permissions (Ming Xie).
.PP
Windows firstboot scripts may now exit with code 250, meaning that no
reboot is required after the script. The next script in sequence runs
immediately (Srihari Parimi).
.PP
On Windows, a sentinel file is created after all firstboot scripts
have run, which may be used to indicate that firstboot has completed.
.SS virt\-inspector
.IX Subsection "virt-inspector"
Add \f(CW\*(C`\*(C'\fR if Windows Group Policy was
detected inside a guest.
.PP
New \f(CW\*(C`\*(C'\fR element used to indicate the category of
applications, such as antivirus.
.PP
For XFS filesystems, new \f(CW\*(C`\*(C'\fR to indicate
XFSv4 or XFSv5. (This is also displayed in \fBvirt\-filesystems\fR\|(1)
output.)
.PP
Add support for Kylin, NeoKylin and Anolis Linux (grass lu).
.SS virt\-sysprep
.IX Subsection "virt-sysprep"
Add a new operation to clean zsh history files (Fazle Arefin).
.SS "Common changes"
.IX Subsection "Common changes"
Some bash completion scripts that were no longer used by guestfs\-tools
were removed. Also new \f(CW\*(C`./configure \-\-with\-bash\-completion\*(C'\fR and
\&\f(CW\*(C`./configure \-\-with\-bash\-completion\-dir\*(C'\fR options were added
(Christopher Byrne).
.PP
All tools taking a LUKS key file now allow a binary file to be used.
.SS Documentation
.IX Subsection "Documentation"
Use qemu option \fI\-cpu max\fR in documentation about running
virt\-builder guests.
.PP
All information related to firstboot scripts was moved to and
consolidated in "FIRSTBOOT" in \fBvirt\-customize\fR\|(1) (Srihari Parimi).
.PP
Removed a lot of obsolete documentation in the \fBvirt\-sysprep\fR\|(1) man
page.
.SS "Build changes"
.IX Subsection "Build changes"
Fix Weblate (i18n) web hooks (Rafael Fontenelle).
.PP
Fixes for OCaml 5.
.PP
Add github CI (Cole Robinson).
.PP
Remove \f(CW\*(C`AM_GNU_GETTEXT\*(C'\fR macro and replace it with simpler \f(CW\*(C`LIBINTL\*(C'\fR
checks (Cole Robinson).
.PP
Build Bison\-based parser with \fI\-Wno\-yacc\fR to reduce yacc
compatibility warnings that we don\*(Aqt care about (Cole Robinson).
.PP
Various build warnings were cleaned up (Cole Robinson).
.PP
\&\f(CW\*(C`CFLAGS\*(C'\fR is now prepended to the default, allowing default flags to
be overridden. In addition \fI\-fPIC\fR is added to the default flags
(Cole Robinson).
.PP
Many memory leaks identified by Claude Code were fixed (shivanayak).
.SS Internals
.IX Subsection "Internals"
OCaml quoted string literals (\f(CW\*(C`{|..|}\*(C'\fR) are used throughout the code
to make it easier to include verbatim scripts, code, regexps etc.
.PP
The sources for \fBvirt\-cat\fR\|(1), \fBvirt\-filesystems\fR\|(1),
\&\fBvirt\-log\fR\|(1), \fBvirt\-ls\fR\|(1) and \fBvirt\-tail\fR\|(1) previously used a
single source directory (\fIcat/\fR) for no particular reason. These
were moved to separate directories.
.SS "Bugs fixed"
.IX Subsection "Bugs fixed"
.IP https://issues.redhat.com/browse/RHEL\-100682 4
.IX Item "https://issues.redhat.com/browse/RHEL-100682"
Installing drivers on firstboot sometimes fail with PnP service not available [rhel\-9.7]
.IP https://issues.redhat.com/browse/RHEL\-108174 4
.IX Item "https://issues.redhat.com/browse/RHEL-108174"
selinux\-relabel doesn\*(Aqt work across filesystem boundaries (because setfiles doesn\*(Aqt) [rhel\-9.7]
.IP https://issues.redhat.com/browse/RHEL\-125955 4
.IX Item "https://issues.redhat.com/browse/RHEL-125955"
virt\-inspector detect if AV/GPOs are present in a VM [guestfs tools]
.IP https://issues.redhat.com/browse/RHEL\-144074 4
.IX Item "https://issues.redhat.com/browse/RHEL-144074"
Expose XFS version in virt\-filesystems
.IP https://issues.redhat.com/browse/RHEL\-170706 4
.IX Item "https://issues.redhat.com/browse/RHEL-170706"
Virt\-customize firstboot scripts (on Windows) should be able to skip reboots
.IP https://issues.redhat.com/browse/RHEL\-170708 4
.IX Item "https://issues.redhat.com/browse/RHEL-170708"
Document that exit code 249 means we retry the firstboot script (Windows only)
.IP https://issues.redhat.com/browse/RHEL\-171896 4
.IX Item "https://issues.redhat.com/browse/RHEL-171896"
virt\-v2v failing with binary LUKS keys [guestfs\-tools]
.IP https://issues.redhat.com/browse/RHEL\-94873 4
.IX Item "https://issues.redhat.com/browse/RHEL-94873"
Need to update uri to https:// for conf file in /etc/virt\-builder/repos.d [rhel\-10.1]
.SH "SEE ALSO"
.IX Header "SEE ALSO"
http://libguestfs.org/
.SH AUTHORS
.IX Header "AUTHORS"
.IP "Christopher Byrne" 4
.IX Item "Christopher Byrne"
.PD 0
.IP "Cole Robinson" 4
.IX Item "Cole Robinson"
.IP "Fazle Arefin" 4
.IX Item "Fazle Arefin"
.IP "Fco. Javier F. Serrador" 4
.IX Item "Fco. Javier F. Serrador"
.IP pulsarrush 4
.IX Item "pulsarrush"
.IP "Rafael Fontenelle" 4
.IX Item "Rafael Fontenelle"
.IP "Richard W.M. Jones" 4
.IX Item "Richard W.M. Jones"
.IP "Srihari Parimi" 4
.IX Item "Srihari Parimi"
.IP "Temuri Doghonadze" 4
.IX Item "Temuri Doghonadze"
.IP "Yuri Chornoivan" 4
.IX Item "Yuri Chornoivan"
.PD
.SH COPYRIGHT
.IX Header "COPYRIGHT"
Copyright (C) 2009\-2026 Red Hat Inc.
.SH LICENSE
.IX Header "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.
.PP
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.
.PP
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.
.SH BUGS
.IX Header "BUGS"
To get a list of bugs against libguestfs, use this link:
https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools
.PP
To report a new bug against libguestfs, use this link:
https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools
.PP
When reporting a bug, please supply:
.IP \(bu 4
The version of libguestfs.
.IP \(bu 4
Where you got libguestfs (eg. which Linux distro, compiled from source, etc)
.IP \(bu 4
Describe the bug accurately and give a way to reproduce it.
.IP \(bu 4
Run \fBlibguestfs\-test\-tool\fR\|(1) and paste the \fBcomplete, unedited\fR
output into the bug report.