Initial import (RHBZ#1942114).
Created as a split from libguestfs, see: https://bugzilla.redhat.com/show_bug.cgi?id=1942114
This commit is contained in:
parent
fb9b7b85f8
commit
6f2364b74b
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
/guestfs-tools-*.tar.gz
|
||||||
|
/guestfs-tools-*.tar.gz.sig
|
@ -0,0 +1,53 @@
|
|||||||
|
From 3bcb261f69dab9121a30aa452ef5bb6001c2f58e Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Tue, 23 Mar 2021 14:09:44 +0000
|
||||||
|
Subject: [PATCH 1/7] po-docs/podfiles: Fix bogus directories in this file.
|
||||||
|
|
||||||
|
These were caused by a partial dist directory having been created, and
|
||||||
|
then "make podfiles" being run at the wrong moment.
|
||||||
|
|
||||||
|
Fixes: commit 3e6e0b4fd4365118bdc011aaa76347272fa16abd
|
||||||
|
---
|
||||||
|
po-docs/podfiles | 26 --------------------------
|
||||||
|
1 file changed, 26 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/po-docs/podfiles b/po-docs/podfiles
|
||||||
|
index bf7091320c..d7ef138938 100644
|
||||||
|
--- a/po-docs/podfiles
|
||||||
|
+++ b/po-docs/podfiles
|
||||||
|
@@ -19,32 +19,6 @@ diff/virt-diff.pod
|
||||||
|
edit/virt-edit.pod
|
||||||
|
format/virt-format.pod
|
||||||
|
get-kernel/virt-get-kernel.pod
|
||||||
|
-guestfs-tools-1.45.2/align/virt-alignment-scan.pod
|
||||||
|
-guestfs-tools-1.45.2/builder/virt-builder-repository.pod
|
||||||
|
-guestfs-tools-1.45.2/builder/virt-builder.pod
|
||||||
|
-guestfs-tools-1.45.2/builder/virt-index-validate.pod
|
||||||
|
-guestfs-tools-1.45.2/cat/virt-cat.pod
|
||||||
|
-guestfs-tools-1.45.2/cat/virt-filesystems.pod
|
||||||
|
-guestfs-tools-1.45.2/cat/virt-log.pod
|
||||||
|
-guestfs-tools-1.45.2/cat/virt-ls.pod
|
||||||
|
-guestfs-tools-1.45.2/cat/virt-tail.pod
|
||||||
|
-guestfs-tools-1.45.2/common/mlcustomize/customize-options.pod
|
||||||
|
-guestfs-tools-1.45.2/common/mlcustomize/customize-synopsis.pod
|
||||||
|
-guestfs-tools-1.45.2/common/options/blocksize-option.pod
|
||||||
|
-guestfs-tools-1.45.2/common/options/key-option.pod
|
||||||
|
-guestfs-tools-1.45.2/common/options/keys-from-stdin-option.pod
|
||||||
|
-guestfs-tools-1.45.2/customize/virt-customize.pod
|
||||||
|
-guestfs-tools-1.45.2/df/virt-df.pod
|
||||||
|
-guestfs-tools-1.45.2/dib/virt-dib.pod
|
||||||
|
-guestfs-tools-1.45.2/diff/virt-diff.pod
|
||||||
|
-guestfs-tools-1.45.2/edit/virt-edit.pod
|
||||||
|
-guestfs-tools-1.45.2/format/virt-format.pod
|
||||||
|
-guestfs-tools-1.45.2/get-kernel/virt-get-kernel.pod
|
||||||
|
-guestfs-tools-1.45.2/inspector/virt-inspector.pod
|
||||||
|
-guestfs-tools-1.45.2/make-fs/virt-make-fs.pod
|
||||||
|
-guestfs-tools-1.45.2/resize/virt-resize.pod
|
||||||
|
-guestfs-tools-1.45.2/sparsify/virt-sparsify.pod
|
||||||
|
-guestfs-tools-1.45.2/sysprep/virt-sysprep.pod
|
||||||
|
inspector/virt-inspector.pod
|
||||||
|
make-fs/virt-make-fs.pod
|
||||||
|
resize/virt-resize.pod
|
||||||
|
--
|
||||||
|
2.29.0.rc2
|
||||||
|
|
@ -0,0 +1,26 @@
|
|||||||
|
From cba4cc0f5148fae6a8ba34c03559b9328749cbf1 Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Tue, 23 Mar 2021 12:19:01 +0000
|
||||||
|
Subject: [PATCH 2/7] po-docs: Don't try to install *.3 and *.5 files which
|
||||||
|
don't exist.
|
||||||
|
|
||||||
|
Fixes: commit 4354a3126152a2748cc9097cba139b3908ccc342
|
||||||
|
---
|
||||||
|
po-docs/language.mk | 4 ----
|
||||||
|
1 file changed, 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/po-docs/language.mk b/po-docs/language.mk
|
||||||
|
index 2c8f7aff6b..ee05183c57 100644
|
||||||
|
--- a/po-docs/language.mk
|
||||||
|
+++ b/po-docs/language.mk
|
||||||
|
@@ -117,7 +117,3 @@ virt-sysprep.1: virt-sysprep.pod sysprep-extra-options.pod sysprep-operations.po
|
||||||
|
install-data-hook:
|
||||||
|
$(MKDIR_P) $(DESTDIR)$(mandir)/$(LINGUA)/man1
|
||||||
|
$(INSTALL) -m 0644 $(srcdir)/*.1 $(DESTDIR)$(mandir)/$(LINGUA)/man1
|
||||||
|
- $(MKDIR_P) $(DESTDIR)$(mandir)/$(LINGUA)/man3
|
||||||
|
- $(INSTALL) -m 0644 $(srcdir)/*.3 $(DESTDIR)$(mandir)/$(LINGUA)/man3
|
||||||
|
- $(MKDIR_P) $(DESTDIR)$(mandir)/$(LINGUA)/man5
|
||||||
|
- $(INSTALL) -m 0644 $(srcdir)/*.5 $(DESTDIR)$(mandir)/$(LINGUA)/man5
|
||||||
|
--
|
||||||
|
2.29.0.rc2
|
||||||
|
|
129
0003-build-Remove-dependency-on-gobject-introspection.patch
Normal file
129
0003-build-Remove-dependency-on-gobject-introspection.patch
Normal file
@ -0,0 +1,129 @@
|
|||||||
|
From 6bfe41474937bbaabd7c953ac62dc9a28aa6fa30 Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Tue, 23 Mar 2021 13:38:56 +0000
|
||||||
|
Subject: [PATCH 3/7] build: Remove dependency on gobject-introspection.
|
||||||
|
|
||||||
|
Only required for libguestfs GObject bindings, not for these tools.
|
||||||
|
|
||||||
|
Fixes: commit 4354a3126152a2748cc9097cba139b3908ccc342
|
||||||
|
---
|
||||||
|
Makefile.am | 1 -
|
||||||
|
m4/introspection.m4 | 94 ---------------------------------------------
|
||||||
|
2 files changed, 95 deletions(-)
|
||||||
|
delete mode 100644 m4/introspection.m4
|
||||||
|
|
||||||
|
diff --git a/Makefile.am b/Makefile.am
|
||||||
|
index 382f2db130..b5c1bc0b87 100644
|
||||||
|
--- a/Makefile.am
|
||||||
|
+++ b/Makefile.am
|
||||||
|
@@ -75,7 +75,6 @@ EXTRA_DIST = \
|
||||||
|
common/README \
|
||||||
|
lib/guestfs-internal-all.h \
|
||||||
|
m4/.gitignore \
|
||||||
|
- m4/introspection.m4 \
|
||||||
|
podcheck.pl \
|
||||||
|
test-functions.sh \
|
||||||
|
tmp/.gitignore \
|
||||||
|
diff --git a/m4/introspection.m4 b/m4/introspection.m4
|
||||||
|
deleted file mode 100644
|
||||||
|
index 586d679eea..0000000000
|
||||||
|
--- a/m4/introspection.m4
|
||||||
|
+++ /dev/null
|
||||||
|
@@ -1,94 +0,0 @@
|
||||||
|
-dnl -*- mode: autoconf -*-
|
||||||
|
-dnl Copyright 2009 Johan Dahlin
|
||||||
|
-dnl
|
||||||
|
-dnl This file is free software; the author(s) gives unlimited
|
||||||
|
-dnl permission to copy and/or distribute it, with or without
|
||||||
|
-dnl modifications, as long as this notice is preserved.
|
||||||
|
-dnl
|
||||||
|
-
|
||||||
|
-# serial 1
|
||||||
|
-
|
||||||
|
-m4_define([_GOBJECT_INTROSPECTION_CHECK_INTERNAL],
|
||||||
|
-[
|
||||||
|
- AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first
|
||||||
|
- AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first
|
||||||
|
- AC_BEFORE([LT_INIT],[$0])dnl setup libtool first
|
||||||
|
-
|
||||||
|
- dnl enable/disable introspection
|
||||||
|
- m4_if([$2], [require],
|
||||||
|
- [dnl
|
||||||
|
- enable_introspection=yes
|
||||||
|
- ],[dnl
|
||||||
|
- AC_ARG_ENABLE(introspection,
|
||||||
|
- AS_HELP_STRING([--enable-introspection[=@<:@no/auto/yes@:>@]],
|
||||||
|
- [enable introspection for this build]),,
|
||||||
|
- [enable_introspection=auto])
|
||||||
|
- ])dnl
|
||||||
|
-
|
||||||
|
- AC_MSG_CHECKING([for gobject-introspection])
|
||||||
|
-
|
||||||
|
- dnl presence/version checking
|
||||||
|
- AS_CASE([$enable_introspection],
|
||||||
|
- [no], [dnl
|
||||||
|
- found_introspection="no (disabled, use --enable-introspection to enable)"
|
||||||
|
- ],dnl
|
||||||
|
- [yes],[dnl
|
||||||
|
- PKG_CHECK_EXISTS([gobject-introspection-1.0],,
|
||||||
|
- AC_MSG_ERROR([gobject-introspection-1.0 is not installed]))
|
||||||
|
- PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1],
|
||||||
|
- found_introspection=yes,
|
||||||
|
- AC_MSG_ERROR([You need to have gobject-introspection >= $1 installed to build AC_PACKAGE_NAME]))
|
||||||
|
- ],dnl
|
||||||
|
- [auto],[dnl
|
||||||
|
- PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1], found_introspection=yes, found_introspection=no)
|
||||||
|
- ],dnl
|
||||||
|
- [dnl
|
||||||
|
- AC_MSG_ERROR([invalid argument passed to --enable-introspection, should be one of @<:@no/auto/yes@:>@])
|
||||||
|
- ])dnl
|
||||||
|
-
|
||||||
|
- AC_MSG_RESULT([$found_introspection])
|
||||||
|
-
|
||||||
|
- INTROSPECTION_SCANNER=
|
||||||
|
- INTROSPECTION_COMPILER=
|
||||||
|
- INTROSPECTION_GENERATE=
|
||||||
|
- INTROSPECTION_GIRDIR=
|
||||||
|
- INTROSPECTION_TYPELIBDIR=
|
||||||
|
- if test "x$found_introspection" = "xyes"; then
|
||||||
|
- INTROSPECTION_SCANNER=`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0`
|
||||||
|
- INTROSPECTION_COMPILER=`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0`
|
||||||
|
- INTROSPECTION_GENERATE=`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0`
|
||||||
|
- INTROSPECTION_GIRDIR=`$PKG_CONFIG --variable=girdir gobject-introspection-1.0`
|
||||||
|
- INTROSPECTION_TYPELIBDIR="$($PKG_CONFIG --variable=typelibdir gobject-introspection-1.0)"
|
||||||
|
- INTROSPECTION_CFLAGS=`$PKG_CONFIG --cflags gobject-introspection-1.0`
|
||||||
|
- INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0`
|
||||||
|
- INTROSPECTION_MAKEFILE=`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection
|
||||||
|
- fi
|
||||||
|
- AC_SUBST(INTROSPECTION_SCANNER)
|
||||||
|
- AC_SUBST(INTROSPECTION_COMPILER)
|
||||||
|
- AC_SUBST(INTROSPECTION_GENERATE)
|
||||||
|
- AC_SUBST(INTROSPECTION_GIRDIR)
|
||||||
|
- AC_SUBST(INTROSPECTION_TYPELIBDIR)
|
||||||
|
- AC_SUBST(INTROSPECTION_CFLAGS)
|
||||||
|
- AC_SUBST(INTROSPECTION_LIBS)
|
||||||
|
- AC_SUBST(INTROSPECTION_MAKEFILE)
|
||||||
|
-
|
||||||
|
- AM_CONDITIONAL(HAVE_INTROSPECTION, test "x$found_introspection" = "xyes")
|
||||||
|
-])
|
||||||
|
-
|
||||||
|
-
|
||||||
|
-dnl Usage:
|
||||||
|
-dnl GOBJECT_INTROSPECTION_CHECK([minimum-g-i-version])
|
||||||
|
-
|
||||||
|
-AC_DEFUN([GOBJECT_INTROSPECTION_CHECK],
|
||||||
|
-[
|
||||||
|
- _GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1])
|
||||||
|
-])
|
||||||
|
-
|
||||||
|
-dnl Usage:
|
||||||
|
-dnl GOBJECT_INTROSPECTION_REQUIRE([minimum-g-i-version])
|
||||||
|
-
|
||||||
|
-
|
||||||
|
-AC_DEFUN([GOBJECT_INTROSPECTION_REQUIRE],
|
||||||
|
-[
|
||||||
|
- _GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1], [require])
|
||||||
|
-])
|
||||||
|
--
|
||||||
|
2.29.0.rc2
|
||||||
|
|
30
0004-build-Remove-dependency-on-perl-Sys-Virt.patch
Normal file
30
0004-build-Remove-dependency-on-perl-Sys-Virt.patch
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
From 47efe06984ae1e0ba914ebcf9306d348a5ecd366 Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Tue, 23 Mar 2021 13:52:19 +0000
|
||||||
|
Subject: [PATCH 4/7] build: Remove dependency on perl Sys::Virt.
|
||||||
|
|
||||||
|
In libguestfs this used to be required to run tests against local
|
||||||
|
guests, but it's not needed in either libguestfs or guestfs-tools any
|
||||||
|
longer.
|
||||||
|
|
||||||
|
Fixes: commit 4354a3126152a2748cc9097cba139b3908ccc342
|
||||||
|
---
|
||||||
|
m4/guestfs-perl.m4 | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/m4/guestfs-perl.m4 b/m4/guestfs-perl.m4
|
||||||
|
index 4c889d843a..c8337ed9b5 100644
|
||||||
|
--- a/m4/guestfs-perl.m4
|
||||||
|
+++ b/m4/guestfs-perl.m4
|
||||||
|
@@ -66,7 +66,7 @@ AM_CONDITIONAL([HAVE_PERL],
|
||||||
|
dnl Check for Perl modules needed by Perl virt tools (virt-df, etc.)
|
||||||
|
AS_IF([test "x$PERL" != "xno"],[
|
||||||
|
missing_perl_modules=no
|
||||||
|
- for pm in Pod::Usage Getopt::Long Sys::Virt Locale::TextDomain Win::Hivex Win::Hivex::Regedit ; do
|
||||||
|
+ for pm in Pod::Usage Getopt::Long Locale::TextDomain Win::Hivex Win::Hivex::Regedit ; do
|
||||||
|
AC_MSG_CHECKING([for $pm])
|
||||||
|
if ! $PERL -M$pm -e1 >&AS_MESSAGE_LOG_FD 2>&1; then
|
||||||
|
AC_MSG_RESULT([no])
|
||||||
|
--
|
||||||
|
2.29.0.rc2
|
||||||
|
|
203
0005-builder-Get-rid-of-etc-xdg-and-XDG_CONFIG_DIRS-nonse.patch
Normal file
203
0005-builder-Get-rid-of-etc-xdg-and-XDG_CONFIG_DIRS-nonse.patch
Normal file
@ -0,0 +1,203 @@
|
|||||||
|
From f66af6b6ddfefcbd6ecd6f4d47e0fa4ca231b125 Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Tue, 23 Mar 2021 14:06:12 +0000
|
||||||
|
Subject: [PATCH 5/7] builder: Get rid of /etc/xdg and XDG_CONFIG_DIRS
|
||||||
|
nonsense.
|
||||||
|
|
||||||
|
Put the configuration in /etc/virt-builder as god intended.
|
||||||
|
---
|
||||||
|
builder/Makefile.am | 8 ++------
|
||||||
|
builder/libguestfs.conf.in | 4 ++--
|
||||||
|
builder/opensuse.conf.in | 2 +-
|
||||||
|
builder/paths.ml | 4 ++--
|
||||||
|
builder/paths.mli | 4 ++--
|
||||||
|
builder/test-virt-builder-cacheall.sh | 2 +-
|
||||||
|
builder/test-virt-builder-list-simplestreams.sh | 2 +-
|
||||||
|
builder/test-virt-builder-list.sh | 2 +-
|
||||||
|
builder/test-virt-builder-planner.sh | 2 +-
|
||||||
|
builder/test-virt-builder.sh | 2 +-
|
||||||
|
builder/virt-builder.pod | 8 ++++----
|
||||||
|
run.in | 6 +++---
|
||||||
|
12 files changed, 21 insertions(+), 25 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/builder/Makefile.am b/builder/Makefile.am
|
||||||
|
index d67c8e0ded..4d2e07843c 100644
|
||||||
|
--- a/builder/Makefile.am
|
||||||
|
+++ b/builder/Makefile.am
|
||||||
|
@@ -423,12 +423,8 @@ endif
|
||||||
|
|
||||||
|
# virt-builder's default repository
|
||||||
|
|
||||||
|
-repoconfdir = $(sysconfdir)/xdg/virt-builder/repos.d
|
||||||
|
-repoconf_DATA = libguestfs.conf libguestfs.gpg \
|
||||||
|
- opensuse.conf opensuse.gpg
|
||||||
|
-
|
||||||
|
-install-exec-hook:
|
||||||
|
- $(LN_S) -f xdg/virt-builder $(DESTDIR)$(sysconfdir)/virt-builder
|
||||||
|
+repoconfdir = $(sysconfdir)/virt-builder/repos.d
|
||||||
|
+repoconf_DATA = libguestfs.conf libguestfs.gpg opensuse.conf opensuse.gpg
|
||||||
|
|
||||||
|
# Build a small C index validator program.
|
||||||
|
bin_PROGRAMS += virt-index-validate
|
||||||
|
diff --git a/builder/libguestfs.conf.in b/builder/libguestfs.conf.in
|
||||||
|
index 412079df64..8d8feab756 100644
|
||||||
|
--- a/builder/libguestfs.conf.in
|
||||||
|
+++ b/builder/libguestfs.conf.in
|
||||||
|
@@ -1,7 +1,7 @@
|
||||||
|
[libguestfs.org]
|
||||||
|
uri=http://builder.libguestfs.org/index.asc
|
||||||
|
-gpgkey=file://@SYSCONFDIR@/xdg/virt-builder/repos.d/libguestfs.gpg
|
||||||
|
+gpgkey=file://@SYSCONFDIR@/virt-builder/repos.d/libguestfs.gpg
|
||||||
|
|
||||||
|
[archive.libguestfs.org]
|
||||||
|
uri=http://archive.libguestfs.org/builder/index.asc
|
||||||
|
-gpgkey=file://@SYSCONFDIR@/xdg/virt-builder/repos.d/libguestfs.gpg
|
||||||
|
+gpgkey=file://@SYSCONFDIR@/virt-builder/repos.d/libguestfs.gpg
|
||||||
|
diff --git a/builder/opensuse.conf.in b/builder/opensuse.conf.in
|
||||||
|
index 80db267113..19f9796992 100644
|
||||||
|
--- a/builder/opensuse.conf.in
|
||||||
|
+++ b/builder/opensuse.conf.in
|
||||||
|
@@ -1,3 +1,3 @@
|
||||||
|
[opensuse.org]
|
||||||
|
uri=http://download.opensuse.org/repositories/Virtualization:/virt-builder-images/images/index
|
||||||
|
-gpgkey=file://@SYSCONFDIR@/xdg/virt-builder/repos.d/opensuse.gpg
|
||||||
|
+gpgkey=file://@SYSCONFDIR@/virt-builder/repos.d/opensuse.gpg
|
||||||
|
diff --git a/builder/paths.ml b/builder/paths.ml
|
||||||
|
index b8ce57191e..a7b1f4cc63 100644
|
||||||
|
--- a/builder/paths.ml
|
||||||
|
+++ b/builder/paths.ml
|
||||||
|
@@ -35,8 +35,8 @@ let xdg_config_home () =
|
||||||
|
|
||||||
|
let xdg_config_dirs () =
|
||||||
|
let dirs =
|
||||||
|
- try Sys.getenv "XDG_CONFIG_DIRS"
|
||||||
|
- with Not_found -> "/etc/xdg" in
|
||||||
|
+ try Sys.getenv "VIRT_BUILDER_DIRS"
|
||||||
|
+ with Not_found -> "/etc" in
|
||||||
|
let dirs = String.nsplit ":" dirs in
|
||||||
|
let dirs = List.filter (fun x -> x <> "") dirs in
|
||||||
|
List.map (fun x -> x // prog) dirs
|
||||||
|
diff --git a/builder/paths.mli b/builder/paths.mli
|
||||||
|
index 566c323e57..f4897da952 100644
|
||||||
|
--- a/builder/paths.mli
|
||||||
|
+++ b/builder/paths.mli
|
||||||
|
@@ -23,6 +23,6 @@ val xdg_config_home : unit -> string option
|
||||||
|
(** [$XDG_CONFIG_HOME/prog] or [$HOME/.config/prog] or [None]. *)
|
||||||
|
|
||||||
|
val xdg_config_dirs : unit -> string list
|
||||||
|
-(** [$XDG_CONFIG_DIRS] (which is a colon-separated path), split. Empty
|
||||||
|
+(** [$VIRT_BUILDER_DIRS] (which is a colon-separated path), split. Empty
|
||||||
|
elements are removed from the list. If the environment variable
|
||||||
|
- is not set [["/etc/xdg"]] is returned instead. *)
|
||||||
|
+ is not set [["/etc/virt-builder"]] is returned instead. *)
|
||||||
|
diff --git a/builder/test-virt-builder-cacheall.sh b/builder/test-virt-builder-cacheall.sh
|
||||||
|
index c80d9ecd2a..26298228a0 100755
|
||||||
|
--- a/builder/test-virt-builder-cacheall.sh
|
||||||
|
+++ b/builder/test-virt-builder-cacheall.sh
|
||||||
|
@@ -68,7 +68,7 @@ uri=$indexfile
|
||||||
|
EOF
|
||||||
|
|
||||||
|
export XDG_CONFIG_HOME=
|
||||||
|
-export XDG_CONFIG_DIRS="$tmpdir"
|
||||||
|
+export VIRT_BUILDER_DIRS="$tmpdir"
|
||||||
|
export XDG_CACHE_HOME="$cachedir"
|
||||||
|
|
||||||
|
short_list=$($VG virt-builder --no-check-signature --no-cache --list)
|
||||||
|
diff --git a/builder/test-virt-builder-list-simplestreams.sh b/builder/test-virt-builder-list-simplestreams.sh
|
||||||
|
index 3158066b16..4467971a90 100755
|
||||||
|
--- a/builder/test-virt-builder-list-simplestreams.sh
|
||||||
|
+++ b/builder/test-virt-builder-list-simplestreams.sh
|
||||||
|
@@ -22,7 +22,7 @@ $TEST_FUNCTIONS
|
||||||
|
skip_if_skipped
|
||||||
|
|
||||||
|
export XDG_CONFIG_HOME=
|
||||||
|
-export XDG_CONFIG_DIRS="$abs_builddir/test-simplestreams"
|
||||||
|
+export VIRT_BUILDER_DIRS="$abs_builddir/test-simplestreams"
|
||||||
|
|
||||||
|
short_list=$($VG virt-builder --no-check-signature --no-cache --list)
|
||||||
|
|
||||||
|
diff --git a/builder/test-virt-builder-list.sh b/builder/test-virt-builder-list.sh
|
||||||
|
index 66910fcc3d..a66c1b5d0f 100755
|
||||||
|
--- a/builder/test-virt-builder-list.sh
|
||||||
|
+++ b/builder/test-virt-builder-list.sh
|
||||||
|
@@ -24,7 +24,7 @@ $TEST_FUNCTIONS
|
||||||
|
skip_if_skipped
|
||||||
|
|
||||||
|
export XDG_CONFIG_HOME=
|
||||||
|
-export XDG_CONFIG_DIRS="$abs_builddir/test-config"
|
||||||
|
+export VIRT_BUILDER_DIRS="$abs_builddir/test-config"
|
||||||
|
|
||||||
|
short_list=$($VG virt-builder --no-check-signature --no-cache --list)
|
||||||
|
|
||||||
|
diff --git a/builder/test-virt-builder-planner.sh b/builder/test-virt-builder-planner.sh
|
||||||
|
index 108b70e95f..135319398c 100755
|
||||||
|
--- a/builder/test-virt-builder-planner.sh
|
||||||
|
+++ b/builder/test-virt-builder-planner.sh
|
||||||
|
@@ -24,7 +24,7 @@ skip_if_skipped
|
||||||
|
skip_if_backend uml
|
||||||
|
|
||||||
|
export XDG_CONFIG_HOME=
|
||||||
|
-export XDG_CONFIG_DIRS="$abs_builddir/test-config"
|
||||||
|
+export VIRT_BUILDER_DIRS="$abs_builddir/test-config"
|
||||||
|
|
||||||
|
if [ ! -f fedora.xz -o ! -f fedora.qcow2 -o ! -f fedora.qcow2.xz ]; then
|
||||||
|
echo "$0: test skipped because there is no fedora.xz, fedora.qcow2 or fedora.qcow2.xz in the build directory"
|
||||||
|
diff --git a/builder/test-virt-builder.sh b/builder/test-virt-builder.sh
|
||||||
|
index 18673874a3..fe06071370 100755
|
||||||
|
--- a/builder/test-virt-builder.sh
|
||||||
|
+++ b/builder/test-virt-builder.sh
|
||||||
|
@@ -22,7 +22,7 @@ $TEST_FUNCTIONS
|
||||||
|
skip_if_skipped
|
||||||
|
|
||||||
|
export XDG_CONFIG_HOME=
|
||||||
|
-export XDG_CONFIG_DIRS="$abs_builddir/test-config"
|
||||||
|
+export VIRT_BUILDER_DIRS="$abs_builddir/test-config"
|
||||||
|
|
||||||
|
if [ ! -f fedora.xz ]; then
|
||||||
|
echo "$0: test skipped because there is no fedora.xz in the build directory"
|
||||||
|
diff --git a/builder/virt-builder.pod b/builder/virt-builder.pod
|
||||||
|
index eddadc7962..a56fa89cb1 100644
|
||||||
|
--- a/builder/virt-builder.pod
|
||||||
|
+++ b/builder/virt-builder.pod
|
||||||
|
@@ -1146,9 +1146,9 @@ F<$HOME/.config> if not set).
|
||||||
|
|
||||||
|
=item *
|
||||||
|
|
||||||
|
-$XDG_CONFIG_DIRS/virt-builder/repos.d/ (where C<$XDG_CONFIG_DIRS>
|
||||||
|
-means any of the directories in that environment variable, or just F</etc/xdg>
|
||||||
|
-if not set)
|
||||||
|
+$VIRT_BUILDER_DIRS/virt-builder/repos.d/ (where C<$VIRT_BUILDER_DIRS>
|
||||||
|
+means any of the directories in that environment variable, or just F</etc>
|
||||||
|
+if not set).
|
||||||
|
|
||||||
|
=back
|
||||||
|
|
||||||
|
@@ -1866,7 +1866,7 @@ Used to determine the location of the template cache. See L</CACHING>.
|
||||||
|
Used to determine the location of the user' sources. See
|
||||||
|
L</SOURCES OF TEMPLATES>.
|
||||||
|
|
||||||
|
-=item C<XDG_CONFIG_DIRS>
|
||||||
|
+=item C<VIRT_BUILDER_DIRS>
|
||||||
|
|
||||||
|
Used to determine the location of the system sources. See
|
||||||
|
L</SOURCES OF TEMPLATES>.
|
||||||
|
diff --git a/run.in b/run.in
|
||||||
|
index 5e36aa819b..7b401870d5 100755
|
||||||
|
--- a/run.in
|
||||||
|
+++ b/run.in
|
||||||
|
@@ -95,9 +95,9 @@ export PATH
|
||||||
|
|
||||||
|
# Make virt-builder use the local website copy to avoid hitting
|
||||||
|
# the network all the time.
|
||||||
|
-if [ -z "$XDG_CONFIG_DIRS" ]; then
|
||||||
|
- prepend XDG_CONFIG_DIRS "$b/builder/test-website"
|
||||||
|
- export XDG_CONFIG_DIRS
|
||||||
|
+if [ -z "$VIRT_BUILDER_DIRS" ]; then
|
||||||
|
+ prepend VIRT_BUILDER_DIRS "$b/builder/test-website"
|
||||||
|
+ export VIRT_BUILDER_DIRS
|
||||||
|
fi
|
||||||
|
|
||||||
|
# This is a cheap way to find some use-after-free and uninitialized
|
||||||
|
--
|
||||||
|
2.29.0.rc2
|
||||||
|
|
64
0006-builder-Use-correct-ounit2-module.patch
Normal file
64
0006-builder-Use-correct-ounit2-module.patch
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
From b470270d44e8dc37a2417c1157eefdd9c3d65dd1 Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Wed, 24 Mar 2021 18:30:45 +0000
|
||||||
|
Subject: [PATCH 6/7] builder: Use correct ounit2 module.
|
||||||
|
|
||||||
|
Fixes: commit 4354a3126152a2748cc9097cba139b3908ccc342
|
||||||
|
---
|
||||||
|
builder/Makefile.am | 2 +-
|
||||||
|
m4/guestfs-ocaml.m4 | 10 +++++-----
|
||||||
|
2 files changed, 6 insertions(+), 6 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/builder/Makefile.am b/builder/Makefile.am
|
||||||
|
index 4d2e07843c..f49a3b0aaa 100644
|
||||||
|
--- a/builder/Makefile.am
|
||||||
|
+++ b/builder/Makefile.am
|
||||||
|
@@ -192,7 +192,7 @@ if HAVE_OCAML_PKG_GETTEXT
|
||||||
|
OCAMLPACKAGES += -package gettext-stub
|
||||||
|
endif
|
||||||
|
if HAVE_OCAML_PKG_OUNIT
|
||||||
|
-OCAMLPACKAGES_TESTS += -package oUnit
|
||||||
|
+OCAMLPACKAGES_TESTS += -package ounit2
|
||||||
|
endif
|
||||||
|
|
||||||
|
OCAMLCLIBS = \
|
||||||
|
diff --git a/m4/guestfs-ocaml.m4 b/m4/guestfs-ocaml.m4
|
||||||
|
index a2f6cada9f..f5ac7eff29 100644
|
||||||
|
--- a/m4/guestfs-ocaml.m4
|
||||||
|
+++ b/m4/guestfs-ocaml.m4
|
||||||
|
@@ -105,7 +105,7 @@ if test "x$OCAML_PKG_guestfs" = "xno"; then
|
||||||
|
fi
|
||||||
|
|
||||||
|
OCAML_PKG_gettext=no
|
||||||
|
-OCAML_PKG_oUnit=no
|
||||||
|
+OCAML_PKG_ounit2=no
|
||||||
|
ounit_is_v2=no
|
||||||
|
have_Bytes_module=no
|
||||||
|
AS_IF([test "x$OCAMLC" != "xno"],[
|
||||||
|
@@ -117,11 +117,11 @@ AS_IF([test "x$OCAMLC" != "xno"],[
|
||||||
|
|
||||||
|
GUESTFS_CREATE_COMMON_GETTEXT_ML([common/mlgettext/common_gettext.ml])
|
||||||
|
|
||||||
|
- AC_CHECK_OCAML_PKG(oUnit)
|
||||||
|
+ AC_CHECK_OCAML_PKG(ounit2)
|
||||||
|
|
||||||
|
# oUnit >= 2 is required, so check that it has OUnit2.
|
||||||
|
- if test "x$OCAML_PKG_oUnit" != "xno"; then
|
||||||
|
- AC_CHECK_OCAML_MODULE(ounit_is_v2,[OUnit.OUnit2],OUnit2,[+oUnit])
|
||||||
|
+ if test "x$OCAML_PKG_ounit2" != "xno"; then
|
||||||
|
+ AC_CHECK_OCAML_MODULE(ounit_is_v2,[OUnit.OUnit2],OUnit2,[+ounit2])
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Check if we have the 'Bytes' module. If not (OCaml < 4.02) then
|
||||||
|
@@ -141,7 +141,7 @@ AS_IF([test "x$OCAMLC" != "xno"],[
|
||||||
|
AM_CONDITIONAL([HAVE_OCAML_PKG_GETTEXT],
|
||||||
|
[test "x$OCAML_PKG_gettext" != "xno"])
|
||||||
|
AM_CONDITIONAL([HAVE_OCAML_PKG_OUNIT],
|
||||||
|
- [test "x$OCAML_PKG_oUnit" != "xno" && test "x$ounit_is_v2" != "xno"])
|
||||||
|
+ [test "x$OCAML_PKG_ounit2" != "xno" && test "x$ounit_is_v2" != "xno"])
|
||||||
|
|
||||||
|
AC_CHECK_PROG([OCAML_GETTEXT],[ocaml-gettext],[ocaml-gettext],[no])
|
||||||
|
AM_CONDITIONAL([HAVE_OCAML_GETTEXT],
|
||||||
|
--
|
||||||
|
2.29.0.rc2
|
||||||
|
|
95
0007-Update-common-submodule-to-latest.patch
Normal file
95
0007-Update-common-submodule-to-latest.patch
Normal file
@ -0,0 +1,95 @@
|
|||||||
|
From 6e80a33b70f89c18cd2fbde739243e8c5a7efc25 Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Thu, 25 Mar 2021 08:14:49 +0000
|
||||||
|
Subject: [PATCH 7/7] Update common submodule to latest.
|
||||||
|
|
||||||
|
---
|
||||||
|
common | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
Submodule common ca8a16a926..7c39a06fe3:
|
||||||
|
diff --git a/common/mlstdutils/Makefile.am b/common/mlstdutils/Makefile.am
|
||||||
|
index 2b4aed8..650f18c 100644
|
||||||
|
--- a/common/mlstdutils/Makefile.am
|
||||||
|
+++ b/common/mlstdutils/Makefile.am
|
||||||
|
@@ -85,7 +85,7 @@ OCAMLPACKAGES = \
|
||||||
|
-I $(builddir)
|
||||||
|
OCAMLPACKAGES_TESTS = $(MLSTDUTILS_CMA)
|
||||||
|
if HAVE_OCAML_PKG_OUNIT
|
||||||
|
-OCAMLPACKAGES_TESTS += -package oUnit
|
||||||
|
+OCAMLPACKAGES_TESTS += -package ounit2
|
||||||
|
endif
|
||||||
|
|
||||||
|
OCAMLFLAGS = $(OCAML_FLAGS) $(OCAML_WARN_ERROR) -ccopt '$(CFLAGS)'
|
||||||
|
diff --git a/common/mltools/Makefile.am b/common/mltools/Makefile.am
|
||||||
|
index 6bb2b88..5cec178 100644
|
||||||
|
--- a/common/mltools/Makefile.am
|
||||||
|
+++ b/common/mltools/Makefile.am
|
||||||
|
@@ -129,7 +129,7 @@ if HAVE_OCAML_PKG_GETTEXT
|
||||||
|
OCAMLPACKAGES += -package gettext-stub
|
||||||
|
endif
|
||||||
|
if HAVE_OCAML_PKG_OUNIT
|
||||||
|
-OCAMLPACKAGES_TESTS += -package oUnit
|
||||||
|
+OCAMLPACKAGES_TESTS += -package ounit2
|
||||||
|
endif
|
||||||
|
|
||||||
|
OCAMLCLIBS = \
|
||||||
|
@@ -263,7 +263,8 @@ tools_utils_tests_DEPENDENCIES = \
|
||||||
|
$(MLTOOLS_CMA) \
|
||||||
|
$(top_srcdir)/ocaml-link.sh
|
||||||
|
tools_utils_tests_LINK = \
|
||||||
|
- $(top_srcdir)/ocaml-link.sh -cclib '-lutils $(LIBXML2_LIBS) -lgnu' -- \
|
||||||
|
+ $(top_srcdir)/ocaml-link.sh \
|
||||||
|
+ -cclib '-pthread -lpthread -lutils $(LIBXML2_LIBS) -lgnu' -- \
|
||||||
|
$(OCAMLFIND) $(BEST) $(OCAMLFLAGS) $(OCAMLLINKFLAGS) \
|
||||||
|
$(OCAMLPACKAGES) $(OCAMLPACKAGES_TESTS) \
|
||||||
|
$(tools_utils_tests_THEOBJECTS) -o $@
|
||||||
|
@@ -290,7 +291,8 @@ JSON_tests_DEPENDENCIES = \
|
||||||
|
$(MLTOOLS_CMA) \
|
||||||
|
$(top_srcdir)/ocaml-link.sh
|
||||||
|
JSON_tests_LINK = \
|
||||||
|
- $(top_srcdir)/ocaml-link.sh -- \
|
||||||
|
+ $(top_srcdir)/ocaml-link.sh \
|
||||||
|
+ -cclib '-pthread -lpthread' -- \
|
||||||
|
$(OCAMLFIND) $(BEST) $(OCAMLFLAGS) $(OCAMLLINKFLAGS) \
|
||||||
|
$(OCAMLPACKAGES) $(OCAMLPACKAGES_TESTS) \
|
||||||
|
$(JSON_tests_THEOBJECTS) -o $@
|
||||||
|
@@ -303,7 +305,8 @@ JSON_parser_tests_DEPENDENCIES = \
|
||||||
|
$(MLTOOLS_CMA) \
|
||||||
|
$(top_srcdir)/ocaml-link.sh
|
||||||
|
JSON_parser_tests_LINK = \
|
||||||
|
- $(top_srcdir)/ocaml-link.sh -cclib '$(OCAMLCLIBS)' -- \
|
||||||
|
+ $(top_srcdir)/ocaml-link.sh \
|
||||||
|
+ -cclib '-pthread -lpthread $(OCAMLCLIBS)' -- \
|
||||||
|
$(OCAMLFIND) $(BEST) $(OCAMLFLAGS) $(OCAMLLINKFLAGS) \
|
||||||
|
$(OCAMLPACKAGES) $(OCAMLPACKAGES_TESTS) \
|
||||||
|
$(JSON_parser_tests_THEOBJECTS) -o $@
|
||||||
|
diff --git a/common/mlutils/Makefile.am b/common/mlutils/Makefile.am
|
||||||
|
index e86d7bb..17dfac3 100644
|
||||||
|
--- a/common/mlutils/Makefile.am
|
||||||
|
+++ b/common/mlutils/Makefile.am
|
||||||
|
@@ -112,10 +112,10 @@ c_utils_unit_tests_CFLAGS = $(libmlcutils_a_CFLAGS)
|
||||||
|
if !HAVE_OCAMLOPT
|
||||||
|
# Can't call this c_utils_unit_tests_OBJECTS because automake gets confused.
|
||||||
|
c_utils_unit_tests_THEOBJECTS = $(c_utils_unit_tests_BOBJECTS)
|
||||||
|
-c_utils_unit_tests.cmo: OCAMLPACKAGES += -package oUnit
|
||||||
|
+c_utils_unit_tests.cmo: OCAMLPACKAGES += -package ounit2
|
||||||
|
else
|
||||||
|
c_utils_unit_tests_THEOBJECTS = $(c_utils_unit_tests_XOBJECTS)
|
||||||
|
-c_utils_unit_tests.cmx: OCAMLPACKAGES += -package oUnit
|
||||||
|
+c_utils_unit_tests.cmx: OCAMLPACKAGES += -package ounit2
|
||||||
|
endif
|
||||||
|
|
||||||
|
OCAMLLINKFLAGS = \
|
||||||
|
@@ -131,7 +131,7 @@ c_utils_unit_tests_DEPENDENCIES = \
|
||||||
|
c_utils_unit_tests_LINK = \
|
||||||
|
$(top_srcdir)/ocaml-link.sh -cclib '-lutils -lgnu' -- \
|
||||||
|
$(OCAMLFIND) $(BEST) $(OCAMLFLAGS) \
|
||||||
|
- $(OCAMLPACKAGES) -package oUnit \
|
||||||
|
+ $(OCAMLPACKAGES) -package ounit2 \
|
||||||
|
$(OCAMLLINKFLAGS) \
|
||||||
|
$(c_utils_unit_tests_THEOBJECTS) -o $@
|
||||||
|
|
||||||
|
--
|
||||||
|
2.29.0.rc2
|
||||||
|
|
406
guestfs-tools.spec
Normal file
406
guestfs-tools.spec
Normal file
@ -0,0 +1,406 @@
|
|||||||
|
# Architectures that we run the test suite on.
|
||||||
|
#
|
||||||
|
# As the test suite takes a very long time to run and is somewhat
|
||||||
|
# unreliable on !x86 architectures, only run it on x86-64.
|
||||||
|
%if !0%{?rhel}
|
||||||
|
%global test_arches x86_64
|
||||||
|
%else
|
||||||
|
# RHEL 9 only:
|
||||||
|
# x86-64: "/lib64/libc.so.6: CPU ISA level is lower than required"
|
||||||
|
# (RHBZ#1919389)
|
||||||
|
%global test_arches NONE
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# Verify tarball signature with GPGv2.
|
||||||
|
%global verify_tarball_signature 1
|
||||||
|
|
||||||
|
# If there are patches which touch autotools files, set this to 1.
|
||||||
|
%global patches_touch_autotools 1
|
||||||
|
|
||||||
|
# The source directory.
|
||||||
|
%global source_directory 1.45-development
|
||||||
|
|
||||||
|
# Filter perl provides.
|
||||||
|
%{?perl_default_filter}
|
||||||
|
|
||||||
|
Summary: Tools to access and modify virtual machine disk images
|
||||||
|
Name: guestfs-tools
|
||||||
|
Version: 1.45.2
|
||||||
|
Release: 4%{?dist}
|
||||||
|
License: GPLv2+
|
||||||
|
|
||||||
|
# Build only for architectures that have a kernel
|
||||||
|
ExclusiveArch: %{kernel_arches}
|
||||||
|
|
||||||
|
# Source and patches.
|
||||||
|
URL: http://libguestfs.org/
|
||||||
|
Source0: http://download.libguestfs.org/guestfs-tools/%{source_directory}/%{name}-%{version}.tar.gz
|
||||||
|
%if 0%{verify_tarball_signature}
|
||||||
|
Source1: http://download.libguestfs.org/guestfs-tools/%{source_directory}/%{name}-%{version}.tar.gz.sig
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# Keyring used to verify tarball signature.
|
||||||
|
%if 0%{verify_tarball_signature}
|
||||||
|
Source2: libguestfs.keyring
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# Upstream patches to fix various build issues discovered while
|
||||||
|
# packaging this for Fedora.
|
||||||
|
Patch1: 0001-po-docs-podfiles-Fix-bogus-directories-in-this-file.patch
|
||||||
|
Patch2: 0002-po-docs-Don-t-try-to-install-.3-and-.5-files-which-d.patch
|
||||||
|
Patch3: 0003-build-Remove-dependency-on-gobject-introspection.patch
|
||||||
|
Patch4: 0004-build-Remove-dependency-on-perl-Sys-Virt.patch
|
||||||
|
Patch5: 0005-builder-Get-rid-of-etc-xdg-and-XDG_CONFIG_DIRS-nonse.patch
|
||||||
|
Patch6: 0006-builder-Use-correct-ounit2-module.patch
|
||||||
|
Patch7: 0007-Update-common-submodule-to-latest.patch
|
||||||
|
|
||||||
|
%if 0%{patches_touch_autotools}
|
||||||
|
BuildRequires: autoconf, automake, libtool, gettext-devel
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# Basic build requirements.
|
||||||
|
BuildRequires: gcc, gcc-c++
|
||||||
|
BuildRequires: make
|
||||||
|
BuildRequires: libguestfs-devel >= 1.44.0
|
||||||
|
BuildRequires: libguestfs-xfs
|
||||||
|
BuildRequires: perl(Pod::Simple)
|
||||||
|
BuildRequires: perl(Pod::Man)
|
||||||
|
BuildRequires: perl(Module::Build)
|
||||||
|
BuildRequires: perl(Test::More)
|
||||||
|
BuildRequires: /usr/bin/pod2text
|
||||||
|
BuildRequires: po4a
|
||||||
|
BuildRequires: pcre2-devel
|
||||||
|
BuildRequires: libxml2-devel
|
||||||
|
BuildRequires: jansson-devel
|
||||||
|
BuildRequires: libvirt-devel
|
||||||
|
BuildRequires: libxcrypt-devel
|
||||||
|
BuildRequires: ncurses-devel
|
||||||
|
BuildRequires: ocaml-libguestfs-devel
|
||||||
|
BuildRequires: ocaml-findlib-devel
|
||||||
|
BuildRequires: ocaml-gettext-devel
|
||||||
|
%if !0%{?rhel}
|
||||||
|
BuildRequires: ocaml-ounit-devel
|
||||||
|
%endif
|
||||||
|
BuildRequires: flex
|
||||||
|
BuildRequires: bison
|
||||||
|
BuildRequires: xz-devel
|
||||||
|
%if !0%{?rhel}
|
||||||
|
BuildRequires: zip
|
||||||
|
BuildRequires: unzip
|
||||||
|
%endif
|
||||||
|
%if !0%{?rhel}
|
||||||
|
BuildRequires: perl(Expect)
|
||||||
|
%endif
|
||||||
|
BuildRequires: bash-completion
|
||||||
|
BuildRequires: /usr/bin/qemu-img
|
||||||
|
BuildRequires: perl(Locale::TextDomain)
|
||||||
|
BuildRequires: perl(Sys::Guestfs)
|
||||||
|
BuildRequires: perl(Win::Hivex)
|
||||||
|
BuildRequires: perl(Win::Hivex::Regedit)
|
||||||
|
|
||||||
|
%if 0%{verify_tarball_signature}
|
||||||
|
BuildRequires: gnupg2
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# For virt-builder:
|
||||||
|
Requires: curl
|
||||||
|
Requires: gnupg2
|
||||||
|
Requires: /usr/bin/qemu-img
|
||||||
|
Requires: xz
|
||||||
|
|
||||||
|
# For virt-builder-repository:
|
||||||
|
Suggests: osinfo-db
|
||||||
|
|
||||||
|
# For virt-inspector, since Fedora and RHEL >= 7 use XFS:
|
||||||
|
Recommends: libguestfs-xfs
|
||||||
|
|
||||||
|
# For virt-edit and virt-customize:
|
||||||
|
Suggests: perl
|
||||||
|
|
||||||
|
# This replaces the libguestfs-tools-c package.
|
||||||
|
Provides: libguestfs-tools-c = 1:%{version}-%{release}
|
||||||
|
Obsoletes: libguestfs-tools-c <= 1:1.45.2-1
|
||||||
|
|
||||||
|
|
||||||
|
%description
|
||||||
|
guestfs-tools is a set of tools that can be used to make batch
|
||||||
|
configuration changes to guests, get disk used/free statistics
|
||||||
|
(virt-df), perform backups and guest clones, change
|
||||||
|
registry/UUID/hostname info, build guests from scratch (virt-builder)
|
||||||
|
and much more.
|
||||||
|
|
||||||
|
Virt-alignment-scan scans virtual machines looking for partition
|
||||||
|
alignment problems.
|
||||||
|
|
||||||
|
Virt-builder is a command line tool for rapidly making disk images
|
||||||
|
of popular free operating systems.
|
||||||
|
|
||||||
|
Virt-cat is a command line tool to display the contents of a file in a
|
||||||
|
virtual machine.
|
||||||
|
|
||||||
|
Virt-customize is a command line tool for customizing virtual machine
|
||||||
|
disk images.
|
||||||
|
|
||||||
|
Virt-df is a command line tool to display free space on virtual
|
||||||
|
machine filesystems. Unlike other tools, it doesn’t just display the
|
||||||
|
amount of space allocated to a virtual machine, but can look inside
|
||||||
|
the virtual machine to see how much space is really being used. It is
|
||||||
|
like the df(1) command, but for virtual machines, except that it also
|
||||||
|
works for Windows virtual machines.
|
||||||
|
|
||||||
|
Virt-diff shows the differences between virtual machines.
|
||||||
|
|
||||||
|
Virt-edit is a command line tool to edit the contents of a file in a
|
||||||
|
virtual machine.
|
||||||
|
|
||||||
|
Virt-filesystems is a command line tool to display the filesystems,
|
||||||
|
partitions, block devices, LVs, VGs and PVs found in a disk image
|
||||||
|
or virtual machine. It replaces the deprecated programs
|
||||||
|
virt-list-filesystems and virt-list-partitions with a much more
|
||||||
|
capable tool.
|
||||||
|
|
||||||
|
Virt-format is a command line tool to erase and make blank disks.
|
||||||
|
|
||||||
|
Virt-get-kernel extracts a kernel/initrd from a disk image.
|
||||||
|
|
||||||
|
Virt-inspector examines a virtual machine and tries to determine the
|
||||||
|
version of the OS, the kernel version, what drivers are installed,
|
||||||
|
whether the virtual machine is fully virtualized (FV) or
|
||||||
|
para-virtualized (PV), what applications are installed and more.
|
||||||
|
|
||||||
|
Virt-log is a command line tool to display the log files from a
|
||||||
|
virtual machine.
|
||||||
|
|
||||||
|
Virt-ls is a command line tool to list out files in a virtual machine.
|
||||||
|
|
||||||
|
Virt-make-fs is a command line tool to build a filesystem out of
|
||||||
|
a collection of files or a tarball.
|
||||||
|
|
||||||
|
Virt-resize can resize existing virtual machine disk images.
|
||||||
|
|
||||||
|
Virt-sparsify makes virtual machine disk images sparse (thin-provisioned).
|
||||||
|
|
||||||
|
Virt-sysprep lets you reset or unconfigure virtual machines in
|
||||||
|
preparation for cloning them.
|
||||||
|
|
||||||
|
Virt-tail follows (tails) a log file within a guest, like 'tail -f'.
|
||||||
|
|
||||||
|
|
||||||
|
%package -n virt-win-reg
|
||||||
|
Summary: Access and modify the Windows Registry of a Windows VM
|
||||||
|
License: GPLv2+
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
# This replaces the libguestfs-tools package.
|
||||||
|
Provides: libguestfs-tools = 1:%{version}-%{release}
|
||||||
|
Obsoletes: libguestfs-tools <= 1:1.45.2-1
|
||||||
|
|
||||||
|
|
||||||
|
%description -n virt-win-reg
|
||||||
|
Virt-win-reg lets you look at and modify the Windows Registry of
|
||||||
|
Windows virtual machines.
|
||||||
|
|
||||||
|
|
||||||
|
%if !0%{?rhel}
|
||||||
|
%package -n virt-dib
|
||||||
|
Summary: Safe and secure diskimage-builder replacement
|
||||||
|
License: GPLv2+
|
||||||
|
|
||||||
|
Requires: libguestfs-dib >= 1:1.45.2-1
|
||||||
|
|
||||||
|
|
||||||
|
%description -n virt-dib
|
||||||
|
Virt-dib is a safe and secure alternative to the OpenStack
|
||||||
|
diskimage-builder command. It is compatible with most
|
||||||
|
diskimage-builder elements.
|
||||||
|
%endif
|
||||||
|
|
||||||
|
|
||||||
|
%package bash-completion
|
||||||
|
Summary: Bash tab-completion scripts for %{name}
|
||||||
|
BuildArch: noarch
|
||||||
|
Requires: bash-completion >= 2.0
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
|
||||||
|
|
||||||
|
%description bash-completion
|
||||||
|
Install this package if you want intelligent bash tab-completion
|
||||||
|
for the virt-* tools.
|
||||||
|
|
||||||
|
|
||||||
|
%package man-pages-ja
|
||||||
|
Summary: Japanese (ja) man pages for %{name}
|
||||||
|
BuildArch: noarch
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
|
||||||
|
%description man-pages-ja
|
||||||
|
%{name}-man-pages-ja contains Japanese (ja) man pages
|
||||||
|
for %{name}.
|
||||||
|
|
||||||
|
|
||||||
|
%package man-pages-uk
|
||||||
|
Summary: Ukrainian (uk) man pages for %{name}
|
||||||
|
BuildArch: noarch
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
|
||||||
|
%description man-pages-uk
|
||||||
|
%{name}-man-pages-uk contains Ukrainian (uk) man pages
|
||||||
|
for %{name}.
|
||||||
|
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%if 0%{verify_tarball_signature}
|
||||||
|
%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}'
|
||||||
|
%endif
|
||||||
|
%setup -q
|
||||||
|
%autopatch -p1
|
||||||
|
|
||||||
|
%if 0%{patches_touch_autotools}
|
||||||
|
autoreconf -i
|
||||||
|
%endif
|
||||||
|
|
||||||
|
|
||||||
|
%build
|
||||||
|
%{configure}
|
||||||
|
|
||||||
|
# Building index-parse.c by hand works around a race condition in the
|
||||||
|
# autotools cruft, where two or more copies of yacc race with each
|
||||||
|
# other, resulting in a corrupted file.
|
||||||
|
make -j1 -C builder index-parse.c
|
||||||
|
|
||||||
|
make V=1 %{?_smp_mflags}
|
||||||
|
|
||||||
|
|
||||||
|
%check
|
||||||
|
%ifarch %{test_arches}
|
||||||
|
# Enable debugging.
|
||||||
|
export LIBGUESTFS_DEBUG=1
|
||||||
|
export LIBGUESTFS_TRACE=1
|
||||||
|
|
||||||
|
# This test is currently broken and needs further investigation.
|
||||||
|
export SKIP_TEST_MACHINE_READABLE_SH=1
|
||||||
|
|
||||||
|
# This test fails for me in local mock and Koji, but not when running
|
||||||
|
# in an unrestricted environment.
|
||||||
|
export SKIP_TEST_VIRT_FORMAT_SH=1
|
||||||
|
|
||||||
|
if ! make check -k ; then
|
||||||
|
# Dump out the log files of any failing tests to make
|
||||||
|
# debugging test failures easier.
|
||||||
|
for f in `find -name test-suite.log | xargs grep -l ^FAIL:`; do
|
||||||
|
echo '*****' $f '*****'
|
||||||
|
cat $f
|
||||||
|
echo
|
||||||
|
done
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
%endif
|
||||||
|
|
||||||
|
|
||||||
|
%install
|
||||||
|
make DESTDIR=$RPM_BUILD_ROOT install
|
||||||
|
|
||||||
|
# Delete libtool files.
|
||||||
|
find $RPM_BUILD_ROOT -name '*.la' -delete
|
||||||
|
|
||||||
|
# Move installed documentation back to the source directory so
|
||||||
|
# we can install it using a %%doc rule.
|
||||||
|
mv $RPM_BUILD_ROOT%{_docdir}/%{name} installed-docs
|
||||||
|
gzip --best installed-docs/*.xml
|
||||||
|
|
||||||
|
|
||||||
|
# Find locale files.
|
||||||
|
%find_lang %{name}
|
||||||
|
|
||||||
|
|
||||||
|
%files -f %{name}.lang
|
||||||
|
%license COPYING
|
||||||
|
%doc README
|
||||||
|
%doc installed-docs/*
|
||||||
|
%dir %{_sysconfdir}/virt-builder
|
||||||
|
%dir %{_sysconfdir}/virt-builder/repos.d
|
||||||
|
%config(noreplace) %{_sysconfdir}/virt-builder/repos.d/*
|
||||||
|
%{_bindir}/virt-alignment-scan
|
||||||
|
%{_bindir}/virt-builder
|
||||||
|
%{_bindir}/virt-builder-repository
|
||||||
|
%{_bindir}/virt-cat
|
||||||
|
%{_bindir}/virt-customize
|
||||||
|
%{_bindir}/virt-df
|
||||||
|
%{_bindir}/virt-diff
|
||||||
|
%{_bindir}/virt-edit
|
||||||
|
%{_bindir}/virt-filesystems
|
||||||
|
%{_bindir}/virt-format
|
||||||
|
%{_bindir}/virt-get-kernel
|
||||||
|
%{_bindir}/virt-index-validate
|
||||||
|
%{_bindir}/virt-inspector
|
||||||
|
%{_bindir}/virt-log
|
||||||
|
%{_bindir}/virt-ls
|
||||||
|
%{_bindir}/virt-make-fs
|
||||||
|
%{_bindir}/virt-resize
|
||||||
|
%{_bindir}/virt-sparsify
|
||||||
|
%{_bindir}/virt-sysprep
|
||||||
|
%{_bindir}/virt-tail
|
||||||
|
%{_mandir}/man1/virt-alignment-scan.1*
|
||||||
|
%{_mandir}/man1/virt-builder-repository.1*
|
||||||
|
%{_mandir}/man1/virt-builder.1*
|
||||||
|
%{_mandir}/man1/virt-cat.1*
|
||||||
|
%{_mandir}/man1/virt-customize.1*
|
||||||
|
%{_mandir}/man1/virt-df.1*
|
||||||
|
%{_mandir}/man1/virt-diff.1*
|
||||||
|
%{_mandir}/man1/virt-edit.1*
|
||||||
|
%{_mandir}/man1/virt-filesystems.1*
|
||||||
|
%{_mandir}/man1/virt-format.1*
|
||||||
|
%{_mandir}/man1/virt-get-kernel.1*
|
||||||
|
%{_mandir}/man1/virt-index-validate.1*
|
||||||
|
%{_mandir}/man1/virt-inspector.1*
|
||||||
|
%{_mandir}/man1/virt-log.1*
|
||||||
|
%{_mandir}/man1/virt-ls.1*
|
||||||
|
%{_mandir}/man1/virt-make-fs.1*
|
||||||
|
%{_mandir}/man1/virt-resize.1*
|
||||||
|
%{_mandir}/man1/virt-sparsify.1*
|
||||||
|
%{_mandir}/man1/virt-sysprep.1*
|
||||||
|
%{_mandir}/man1/virt-tail.1*
|
||||||
|
|
||||||
|
|
||||||
|
%files -n virt-win-reg
|
||||||
|
%license COPYING
|
||||||
|
%doc README
|
||||||
|
%{_bindir}/virt-win-reg
|
||||||
|
%{_mandir}/man1/virt-win-reg.1*
|
||||||
|
|
||||||
|
|
||||||
|
%if !0%{?rhel}
|
||||||
|
%files -n virt-dib
|
||||||
|
%license COPYING
|
||||||
|
%doc README
|
||||||
|
%{_bindir}/virt-dib
|
||||||
|
%{_mandir}/man1/virt-dib.1*
|
||||||
|
%endif
|
||||||
|
|
||||||
|
|
||||||
|
%files bash-completion
|
||||||
|
%license COPYING
|
||||||
|
%dir %{_datadir}/bash-completion/completions
|
||||||
|
%{_datadir}/bash-completion/completions/virt-*
|
||||||
|
|
||||||
|
|
||||||
|
%files man-pages-ja
|
||||||
|
%lang(ja) %{_mandir}/ja/man1/*.1*
|
||||||
|
|
||||||
|
|
||||||
|
%files man-pages-uk
|
||||||
|
%lang(uk) %{_mandir}/uk/man1/*.1*
|
||||||
|
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Thu Mar 25 2021 Richard W.M. Jones <rjones@redhat.com> - 1.45.2-4
|
||||||
|
- Add perl(Test::More) dependency for the Perl test suite.
|
||||||
|
- Add perl(Module::Build) dependency for the Perl bindings.
|
||||||
|
- Fix ounit2 dependency again.
|
||||||
|
|
||||||
|
* Wed Mar 24 2021 Richard W.M. Jones <rjones@redhat.com> - 1.45.2-2
|
||||||
|
- Add perl(Locale::TextDomain) dependency for virt-win-reg.
|
||||||
|
- Fix ounit2 dependency upstream.
|
||||||
|
|
||||||
|
* Tue Mar 23 2021 Richard W.M. Jones <rjones@redhat.com> - 1.45.2-1
|
||||||
|
- New guestfs-tools package, split off from libguestfs.
|
BIN
libguestfs.keyring
Normal file
BIN
libguestfs.keyring
Normal file
Binary file not shown.
2
sources
Normal file
2
sources
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
SHA512 (guestfs-tools-1.45.2.tar.gz) = 8cf9a77209ad5f724b68dba8865cd5ea1d2d65f22a7c6c85796eccbff9fd9591cc9cf9d95c5426c60d15005b7bb4e23ce392cefc641e46fa4c0dfca4a6541edd
|
||||||
|
SHA512 (guestfs-tools-1.45.2.tar.gz.sig) = 52a49d652766e896390e135dd9efa5d109b4094cc1e4a34e5ec8540f992b491754e10c889e3d545a5e4d08bafe3f0ec64af69d494fb39221a4a0f5e74ff18268
|
Loading…
Reference in New Issue
Block a user