import OL
This commit is contained in:
parent
d939921ef6
commit
2f60772781
@ -1,4 +1,4 @@
|
|||||||
From 60785259a8bea65663da270b25ea6f46be42aa0f Mon Sep 17 00:00:00 2001
|
From 55abb960d633c6d9f959eef5b766daa4402bb314 Mon Sep 17 00:00:00 2001
|
||||||
From: "Richard W.M. Jones" <rjones@redhat.com>
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
Date: Sun, 9 Feb 2025 17:35:14 +0000
|
Date: Sun, 9 Feb 2025 17:35:14 +0000
|
||||||
Subject: [PATCH] Update common submodule
|
Subject: [PATCH] Update common submodule
|
||||||
@ -39,13 +39,14 @@ Pulls in the following fix:
|
|||||||
Fixes: https://issues.redhat.com/browse/RHEL-77989
|
Fixes: https://issues.redhat.com/browse/RHEL-77989
|
||||||
Related: https://issues.redhat.com/browse/RHEL-32099
|
Related: https://issues.redhat.com/browse/RHEL-32099
|
||||||
(cherry picked from commit 17610d1c9b37424fec55c39fbf83c971a843f45f)
|
(cherry picked from commit 17610d1c9b37424fec55c39fbf83c971a843f45f)
|
||||||
|
(cherry picked from commit 60785259a8bea65663da270b25ea6f46be42aa0f)
|
||||||
---
|
---
|
||||||
common | 2 +-
|
common | 2 +-
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
Submodule common faee2645..2bb8c83c:
|
Submodule common 94619ded..084ea740:
|
||||||
diff --git a/common/mldrivers/linux_bootloaders.ml b/common/mldrivers/linux_bootloaders.ml
|
diff --git a/common/mldrivers/linux_bootloaders.ml b/common/mldrivers/linux_bootloaders.ml
|
||||||
index 91c5ab9e..a821a3f3 100644
|
index 91c5ab9e..25afcc59 100644
|
||||||
--- a/common/mldrivers/linux_bootloaders.ml
|
--- a/common/mldrivers/linux_bootloaders.ml
|
||||||
+++ b/common/mldrivers/linux_bootloaders.ml
|
+++ b/common/mldrivers/linux_bootloaders.ml
|
||||||
@@ -410,6 +410,28 @@ let detect_bootloader (g : G.guestfs) root i_firmware =
|
@@ -410,6 +410,28 @@ let detect_bootloader (g : G.guestfs) root i_firmware =
|
@ -1,4 +1,4 @@
|
|||||||
From 1d3017a30a2f831ee1461c1828c63c9a196805dd Mon Sep 17 00:00:00 2001
|
From c7d1809f4b57cb3161800d6fa1499029176f4fd1 Mon Sep 17 00:00:00 2001
|
||||||
From: Cole Robinson <crobinso@redhat.com>
|
From: Cole Robinson <crobinso@redhat.com>
|
||||||
Date: Mon, 10 Feb 2025 10:53:00 -0500
|
Date: Mon, 10 Feb 2025 10:53:00 -0500
|
||||||
Subject: [PATCH] convert: Use yum/apt/... for package removals, not rpm/dpkg
|
Subject: [PATCH] convert: Use yum/apt/... for package removals, not rpm/dpkg
|
||||||
@ -15,12 +15,13 @@ Just print a warning when package removal goes sideways.
|
|||||||
Fixes: https://issues.redhat.com/browse/RHEL-71522
|
Fixes: https://issues.redhat.com/browse/RHEL-71522
|
||||||
Signed-off-by: Cole Robinson <crobinso@redhat.com>
|
Signed-off-by: Cole Robinson <crobinso@redhat.com>
|
||||||
(cherry picked from commit b3268a13beca4da218e7ffe4648a18420296103a)
|
(cherry picked from commit b3268a13beca4da218e7ffe4648a18420296103a)
|
||||||
|
(cherry picked from commit 1d3017a30a2f831ee1461c1828c63c9a196805dd)
|
||||||
---
|
---
|
||||||
convert/convert_linux.ml | 26 +++++++++++++++++++++-----
|
convert/convert_linux.ml | 26 +++++++++++++++++++++-----
|
||||||
1 file changed, 21 insertions(+), 5 deletions(-)
|
1 file changed, 21 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
diff --git a/convert/convert_linux.ml b/convert/convert_linux.ml
|
diff --git a/convert/convert_linux.ml b/convert/convert_linux.ml
|
||||||
index 3d0e2b88..cbae5e3d 100644
|
index 94dd7428..e4042d1f 100644
|
||||||
--- a/convert/convert_linux.ml
|
--- a/convert/convert_linux.ml
|
||||||
+++ b/convert/convert_linux.ml
|
+++ b/convert/convert_linux.ml
|
||||||
@@ -131,6 +131,23 @@ let convert (g : G.guestfs) source inspect i_firmware _ keep_serial_console _ =
|
@@ -131,6 +131,23 @@ let convert (g : G.guestfs) source inspect i_firmware _ keep_serial_console _ =
|
||||||
@ -47,7 +48,7 @@ index 3d0e2b88..cbae5e3d 100644
|
|||||||
let rec do_convert () =
|
let rec do_convert () =
|
||||||
augeas_grub_configuration ();
|
augeas_grub_configuration ();
|
||||||
|
|
||||||
@@ -237,7 +254,7 @@ let convert (g : G.guestfs) source inspect i_firmware _ keep_serial_console _ =
|
@@ -239,7 +256,7 @@ let convert (g : G.guestfs) source inspect i_firmware _ keep_serial_console _ =
|
||||||
else
|
else
|
||||||
None
|
None
|
||||||
) inspect.i_apps in
|
) inspect.i_apps in
|
||||||
@ -56,7 +57,7 @@ index 3d0e2b88..cbae5e3d 100644
|
|||||||
|
|
||||||
(* Undo related nastiness if kmod-xenpv was installed. *)
|
(* Undo related nastiness if kmod-xenpv was installed. *)
|
||||||
if xenmods <> [] then (
|
if xenmods <> [] then (
|
||||||
@@ -310,7 +327,7 @@ let convert (g : G.guestfs) source inspect i_firmware _ keep_serial_console _ =
|
@@ -312,7 +329,7 @@ let convert (g : G.guestfs) source inspect i_firmware _ keep_serial_console _ =
|
||||||
fun { G.app2_name = name } -> name = package_name
|
fun { G.app2_name = name } -> name = package_name
|
||||||
) inspect.i_apps in
|
) inspect.i_apps in
|
||||||
if has_guest_additions then
|
if has_guest_additions then
|
||||||
@ -65,7 +66,7 @@ index 3d0e2b88..cbae5e3d 100644
|
|||||||
|
|
||||||
(* Guest Additions might have been installed from a tarball. The
|
(* Guest Additions might have been installed from a tarball. The
|
||||||
* above code won't detect this case. Look for the uninstall tool
|
* above code won't detect this case. Look for the uninstall tool
|
||||||
@@ -455,8 +472,7 @@ let convert (g : G.guestfs) source inspect i_firmware _ keep_serial_console _ =
|
@@ -457,8 +474,7 @@ let convert (g : G.guestfs) source inspect i_firmware _ keep_serial_console _ =
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -75,7 +76,7 @@ index 3d0e2b88..cbae5e3d 100644
|
|||||||
|
|
||||||
(* VMware Tools may have been installed from a tarball, so the
|
(* VMware Tools may have been installed from a tarball, so the
|
||||||
* above code won't remove it. Look for the uninstall tool and run
|
* above code won't remove it. Look for the uninstall tool and run
|
||||||
@@ -503,7 +519,7 @@ let convert (g : G.guestfs) source inspect i_firmware _ keep_serial_console _ =
|
@@ -505,7 +521,7 @@ let convert (g : G.guestfs) source inspect i_firmware _ keep_serial_console _ =
|
||||||
let pkgs = List.map (fun { G.app2_name = name } -> name) pkgs in
|
let pkgs = List.map (fun { G.app2_name = name } -> name) pkgs in
|
||||||
|
|
||||||
if pkgs <> [] then (
|
if pkgs <> [] then (
|
||||||
@ -84,4 +85,3 @@ index 3d0e2b88..cbae5e3d 100644
|
|||||||
|
|
||||||
(* Installing these guest utilities automatically unconfigures
|
(* Installing these guest utilities automatically unconfigures
|
||||||
* ttys in /etc/inittab if the system uses it. We need to put
|
* ttys in /etc/inittab if the system uses it. We need to put
|
||||||
|
|
@ -0,0 +1,142 @@
|
|||||||
|
From 00550a9ff230ab28d7306d881f923778cccf9e90 Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Wed, 19 Feb 2025 15:15:30 +0000
|
||||||
|
Subject: [PATCH] test-data: phony fedora: Add simple static /bin/sh
|
||||||
|
|
||||||
|
This is able to do enough to run commands via g#sh and related calls
|
||||||
|
inside the phony Fedora image.
|
||||||
|
|
||||||
|
(cherry picked from
|
||||||
|
guestfs-tools commit 4c5854f54e1da0d96807acb1b047bbf34694a0bb)
|
||||||
|
|
||||||
|
(cherry picked from commit de073524ec9fbfa179f2721c36013b2bb312e73f)
|
||||||
|
(cherry picked from commit 453e38ce02118fc81fe9ec9ca8f81ae341c93fe7)
|
||||||
|
---
|
||||||
|
test-data/phony-guests/fedora.c | 76 +++++++++++++++++++++--
|
||||||
|
test-data/phony-guests/make-fedora-img.pl | 6 +-
|
||||||
|
2 files changed, 75 insertions(+), 7 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/test-data/phony-guests/fedora.c b/test-data/phony-guests/fedora.c
|
||||||
|
index c74976d6..0e324d21 100644
|
||||||
|
--- a/test-data/phony-guests/fedora.c
|
||||||
|
+++ b/test-data/phony-guests/fedora.c
|
||||||
|
@@ -16,13 +16,14 @@
|
||||||
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
*/
|
||||||
|
|
||||||
|
-/* This is "just enough" of a binary to look like RPM and dracut, as
|
||||||
|
- * far as virt-v2v is concerned.
|
||||||
|
+/* This is "just enough" of a binary to look like /bin/sh, RPM and
|
||||||
|
+ * dracut, as far as virt-v2v is concerned.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <string.h>
|
||||||
|
+#include <unistd.h>
|
||||||
|
|
||||||
|
/* NB: This is also defined in make-fedora-img.pl */
|
||||||
|
#define KVER "5.19.0-0.rc1.14.fc37.x86_64"
|
||||||
|
@@ -34,6 +35,27 @@ get_basename (const char *str)
|
||||||
|
return ret == NULL ? str : ret + 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
+static void
|
||||||
|
+add_str (char ***argv, size_t *argc, char *str)
|
||||||
|
+{
|
||||||
|
+ (*argc)++;
|
||||||
|
+ (*argv) = realloc (*argv, *argc * sizeof (char *));
|
||||||
|
+ (*argv)[*argc-1] = str;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+static void
|
||||||
|
+add_null (char ***argv, size_t *argc)
|
||||||
|
+{
|
||||||
|
+ add_str (argv, argc, NULL);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+static void
|
||||||
|
+add (char ***argv, size_t *argc, const char *s, size_t len)
|
||||||
|
+{
|
||||||
|
+ char *copy = strndup (s, len);
|
||||||
|
+ add_str (argv, argc, copy);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
int
|
||||||
|
main (int argc, char *argv[])
|
||||||
|
{
|
||||||
|
@@ -57,10 +79,54 @@ main (int argc, char *argv[])
|
||||||
|
strcmp (get_basename (argv[0]), "dracut") == 0) {
|
||||||
|
// do nothing, pretend to rebuild the initramfs
|
||||||
|
}
|
||||||
|
+ else if (argc == 3 &&
|
||||||
|
+ strcmp (get_basename (argv[0]), "sh") == 0 &&
|
||||||
|
+ strcmp (argv[1], "-c") == 0) {
|
||||||
|
+ /* Split the command and execute it. Only handles trivial cases. */
|
||||||
|
+ char *cmd = argv[2];
|
||||||
|
+ char **cmdv = NULL;
|
||||||
|
+ size_t i, cmdvlen = 0, n;
|
||||||
|
+ const size_t len = strlen (cmd);
|
||||||
|
+
|
||||||
|
+ for (i = 0; i < len;) {
|
||||||
|
+ switch (cmd[i]) {
|
||||||
|
+ case ' ': case '\t':
|
||||||
|
+ i++;
|
||||||
|
+ continue;
|
||||||
|
+
|
||||||
|
+ case '"':
|
||||||
|
+ n = strcspn (&cmd[i+1], "\"");
|
||||||
|
+ add (&cmdv, &cmdvlen, &cmd[i+1], n);
|
||||||
|
+ i += n+2;
|
||||||
|
+ break;
|
||||||
|
+
|
||||||
|
+ case '\'':
|
||||||
|
+ n = strcspn (&cmd[i+1], "'");
|
||||||
|
+ add (&cmdv, &cmdvlen, &cmd[i+1], n);
|
||||||
|
+ i += n+2;
|
||||||
|
+ break;
|
||||||
|
+
|
||||||
|
+ default:
|
||||||
|
+ n = strcspn (&cmd[i], " \t");
|
||||||
|
+ add (&cmdv, &cmdvlen, &cmd[i], n);
|
||||||
|
+ i += n;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+ add_null (&cmdv, &cmdvlen);
|
||||||
|
+
|
||||||
|
+ execvp (cmdv[0], cmdv);
|
||||||
|
+ perror (cmdv[0]);
|
||||||
|
+ exit (EXIT_FAILURE);
|
||||||
|
+ }
|
||||||
|
else {
|
||||||
|
- fprintf (stderr, "phony Fedora: unknown command\n");
|
||||||
|
- exit (1);
|
||||||
|
+ int i;
|
||||||
|
+
|
||||||
|
+ fprintf (stderr, "ERROR: test-data/phony-guests/fedora.c: "
|
||||||
|
+ "unexpected command:\n");
|
||||||
|
+ for (i = 0; i < argc; ++i)
|
||||||
|
+ fprintf (stderr, "argv[%d] = %s\n", i, argv[i]);
|
||||||
|
+ exit (EXIT_FAILURE);
|
||||||
|
}
|
||||||
|
|
||||||
|
- exit (0);
|
||||||
|
+ exit (EXIT_SUCCESS);
|
||||||
|
}
|
||||||
|
diff --git a/test-data/phony-guests/make-fedora-img.pl b/test-data/phony-guests/make-fedora-img.pl
|
||||||
|
index 188cdd75..f661e8ec 100755
|
||||||
|
--- a/test-data/phony-guests/make-fedora-img.pl
|
||||||
|
+++ b/test-data/phony-guests/make-fedora-img.pl
|
||||||
|
@@ -369,8 +369,10 @@ $g->ln_s ('/bin/test1', '/bin/test5');
|
||||||
|
$g->mkfifo (0777, '/bin/test6');
|
||||||
|
$g->mknod (0777, 10, 10, '/bin/test7');
|
||||||
|
|
||||||
|
-# Virt-v2v needs an RPM command, or at least something which acts
|
||||||
|
-# similarly, and also a dracut command.
|
||||||
|
+# Virt-v2v needs a /bin/sh, an RPM command and a dracut command, or at
|
||||||
|
+# least something which acts similarly to those.
|
||||||
|
+$g->upload ('fedora-static-bin', '/bin/sh');
|
||||||
|
+$g->chmod (0777, '/bin/sh');
|
||||||
|
$g->upload ('fedora-static-bin', '/bin/rpm');
|
||||||
|
$g->chmod (0777, '/bin/rpm');
|
||||||
|
$g->upload ('fedora-static-bin', '/sbin/dracut');
|
@ -0,0 +1,343 @@
|
|||||||
|
From b75bde1767c3ec64e44992742a837b26dffe3566 Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Richard W.M. Jones" <rjones@redhat.com>
|
||||||
|
Date: Wed, 19 Feb 2025 14:16:13 +0000
|
||||||
|
Subject: [PATCH] convert: Handle large output from 'rpm -ql' command
|
||||||
|
|
||||||
|
This requires the new guestfs_sh_out API from libguestfs 1.55.6.
|
||||||
|
|
||||||
|
Update common submodule to include:
|
||||||
|
|
||||||
|
Richard W.M. Jones (3):
|
||||||
|
mlstdutils: Reimplement String.find, add String.find_from
|
||||||
|
mlstdutils: Reimplement String.nsplit tail recursively
|
||||||
|
mldrivers: Handle large output from 'rpm -ql' command
|
||||||
|
|
||||||
|
Fixes: https://issues.redhat.com/browse/RHEL-80080
|
||||||
|
Reported-by: Nijin Ashok
|
||||||
|
(cherry picked from commit 5dfe62885bc7d81c7d3c9260ba6def5cb477b5fd)
|
||||||
|
(cherry picked from commit 0a5fb62a2816d16cbdd7452c8bd95a8fcd2d4a02)
|
||||||
|
---
|
||||||
|
common | 2 +-
|
||||||
|
m4/guestfs-libraries.m4 | 4 +++-
|
||||||
|
2 files changed, 4 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
Submodule common 084ea740..521f27c9:
|
||||||
|
diff --git a/common/mldrivers/linux.ml b/common/mldrivers/linux.ml
|
||||||
|
index 4e30a8e1..0dec1549 100644
|
||||||
|
--- a/common/mldrivers/linux.ml
|
||||||
|
+++ b/common/mldrivers/linux.ml
|
||||||
|
@@ -58,76 +58,84 @@ and do_remove g root packages =
|
||||||
|
|
||||||
|
let file_list_of_package (g : Guestfs.guestfs) root app =
|
||||||
|
let package_format = g#inspect_get_package_format root in
|
||||||
|
- match package_format with
|
||||||
|
- | "deb" ->
|
||||||
|
- let cmd = [| "dpkg"; "-L"; app.G.app2_name |] in
|
||||||
|
- debug "%s" (String.concat " " (Array.to_list cmd));
|
||||||
|
- let files = g#command_lines cmd in
|
||||||
|
- let files = Array.to_list files in
|
||||||
|
+
|
||||||
|
+ let cmd =
|
||||||
|
+ match package_format with
|
||||||
|
+ | "deb" -> sprintf "dpkg -L %s" (quote app.G.app2_name)
|
||||||
|
+
|
||||||
|
+ | "rpm" ->
|
||||||
|
+ (* Since RPM allows multiple packages installed with the same
|
||||||
|
+ * name, always check the full NEVR here (RHBZ#1161250).
|
||||||
|
+ *
|
||||||
|
+ * In RPM < 4.11 query commands that use the epoch number in the
|
||||||
|
+ * package name did not work.
|
||||||
|
+ *
|
||||||
|
+ * For example:
|
||||||
|
+ * RHEL 6 (rpm 4.8.0):
|
||||||
|
+ * $ rpm -q tar-2:1.23-11.el6.x86_64
|
||||||
|
+ * package tar-2:1.23-11.el6.x86_64 is not installed
|
||||||
|
+ * Fedora 20 (rpm 4.11.2):
|
||||||
|
+ * $ rpm -q tar-2:1.26-30.fc20.x86_64
|
||||||
|
+ * tar-1.26-30.fc20.x86_64
|
||||||
|
+ *)
|
||||||
|
+ let is_rpm_lt_4_11 () =
|
||||||
|
+ let ver =
|
||||||
|
+ try
|
||||||
|
+ (* Since we're going to run 'rpm' below anyway, seems safe
|
||||||
|
+ * to run it here and assume the binary works.
|
||||||
|
+ *)
|
||||||
|
+ let cmd = [| "rpm"; "--version" |] in
|
||||||
|
+ debug "%s" (String.concat " " (Array.to_list cmd));
|
||||||
|
+ let ver = g#command_lines cmd in
|
||||||
|
+ let ver =
|
||||||
|
+ if Array.length ver > 0 then ver.(0) else raise Not_found in
|
||||||
|
+ debug "%s" ver;
|
||||||
|
+ let ver = String.nsplit " " ver in
|
||||||
|
+ let ver =
|
||||||
|
+ match ver with
|
||||||
|
+ | [ "RPM"; "version"; ver ] -> ver
|
||||||
|
+ | _ -> raise Not_found in
|
||||||
|
+ if not (PCRE.matches re_version ver) then raise Not_found;
|
||||||
|
+ (int_of_string (PCRE.sub 1), int_of_string (PCRE.sub 2))
|
||||||
|
+ with Not_found ->
|
||||||
|
+ (* 'rpm' not installed? Hmm... *)
|
||||||
|
+ (0, 0) in
|
||||||
|
+ ver < (4, 11)
|
||||||
|
+ in
|
||||||
|
+ let pkg_name =
|
||||||
|
+ if app.G.app2_epoch = Int32.zero || is_rpm_lt_4_11 () then
|
||||||
|
+ sprintf "%s-%s-%s" app.G.app2_name app.G.app2_version
|
||||||
|
+ app.G.app2_release
|
||||||
|
+ else
|
||||||
|
+ sprintf "%s-%ld:%s-%s" app.G.app2_name app.G.app2_epoch
|
||||||
|
+ app.G.app2_version app.G.app2_release in
|
||||||
|
+ sprintf "rpm -ql %s" (quote pkg_name)
|
||||||
|
+
|
||||||
|
+ | format ->
|
||||||
|
+ error (f_"don’t know how to get list of files from package using %s")
|
||||||
|
+ format in
|
||||||
|
+
|
||||||
|
+ debug "file_list_of_package: running: %s" cmd;
|
||||||
|
+
|
||||||
|
+ (* Some packages have a lot of files, too many to list without
|
||||||
|
+ * breaking the maximum message size assumption in libguestfs.
|
||||||
|
+ * To cope with this, use guestfs_sh_out, added in 1.55.6.
|
||||||
|
+ * https://issues.redhat.com/browse/RHEL-80080
|
||||||
|
+ *)
|
||||||
|
+ let tmpfile = Filename.temp_file "v2vcmd" ".out" in
|
||||||
|
+ On_exit.unlink tmpfile;
|
||||||
|
+ g#sh_out cmd tmpfile;
|
||||||
|
+ let files = read_whole_file tmpfile in
|
||||||
|
+
|
||||||
|
+ (* RPM prints "(contains no files)" on stdout when a package
|
||||||
|
+ * has no files in it:
|
||||||
|
+ * https://github.com/rpm-software-management/rpm/issues/962
|
||||||
|
+ *)
|
||||||
|
+ if String.is_prefix files "(contains no files)" then []
|
||||||
|
+ else (
|
||||||
|
+ let files = String.nsplit "\n" files in
|
||||||
|
List.sort compare files
|
||||||
|
-
|
||||||
|
- | "rpm" ->
|
||||||
|
- (* Since RPM allows multiple packages installed with the same
|
||||||
|
- * name, always check the full NEVR here (RHBZ#1161250).
|
||||||
|
- *
|
||||||
|
- * In RPM < 4.11 query commands that use the epoch number in the
|
||||||
|
- * package name did not work.
|
||||||
|
- *
|
||||||
|
- * For example:
|
||||||
|
- * RHEL 6 (rpm 4.8.0):
|
||||||
|
- * $ rpm -q tar-2:1.23-11.el6.x86_64
|
||||||
|
- * package tar-2:1.23-11.el6.x86_64 is not installed
|
||||||
|
- * Fedora 20 (rpm 4.11.2):
|
||||||
|
- * $ rpm -q tar-2:1.26-30.fc20.x86_64
|
||||||
|
- * tar-1.26-30.fc20.x86_64
|
||||||
|
- *)
|
||||||
|
- let is_rpm_lt_4_11 () =
|
||||||
|
- let ver =
|
||||||
|
- try
|
||||||
|
- (* Since we're going to run 'rpm' below anyway, seems safe
|
||||||
|
- * to run it here and assume the binary works.
|
||||||
|
- *)
|
||||||
|
- let cmd = [| "rpm"; "--version" |] in
|
||||||
|
- debug "%s" (String.concat " " (Array.to_list cmd));
|
||||||
|
- let ver = g#command_lines cmd in
|
||||||
|
- let ver = if Array.length ver > 0 then ver.(0) else raise Not_found in
|
||||||
|
- debug "%s" ver;
|
||||||
|
- let ver = String.nsplit " " ver in
|
||||||
|
- let ver =
|
||||||
|
- match ver with
|
||||||
|
- | [ "RPM"; "version"; ver ] -> ver
|
||||||
|
- | _ -> raise Not_found in
|
||||||
|
- if not (PCRE.matches re_version ver) then raise Not_found;
|
||||||
|
- (int_of_string (PCRE.sub 1), int_of_string (PCRE.sub 2))
|
||||||
|
- with Not_found ->
|
||||||
|
- (* 'rpm' not installed? Hmm... *)
|
||||||
|
- (0, 0) in
|
||||||
|
- ver < (4, 11)
|
||||||
|
- in
|
||||||
|
- let pkg_name =
|
||||||
|
- if app.G.app2_epoch = Int32.zero || is_rpm_lt_4_11 () then
|
||||||
|
- sprintf "%s-%s-%s" app.G.app2_name app.G.app2_version
|
||||||
|
- app.G.app2_release
|
||||||
|
- else
|
||||||
|
- sprintf "%s-%ld:%s-%s" app.G.app2_name app.G.app2_epoch
|
||||||
|
- app.G.app2_version app.G.app2_release in
|
||||||
|
- let cmd = [| "rpm"; "-ql"; pkg_name |] in
|
||||||
|
- debug "%s" (String.concat " " (Array.to_list cmd));
|
||||||
|
- let files = g#command_lines cmd in
|
||||||
|
- (* RPM prints "(contains no files)" on stdout when a package
|
||||||
|
- * has no files in it:
|
||||||
|
- * https://github.com/rpm-software-management/rpm/issues/962
|
||||||
|
- *)
|
||||||
|
- if files = [| "(contains no files)" |] then
|
||||||
|
- []
|
||||||
|
- else (
|
||||||
|
- let files = Array.to_list files in
|
||||||
|
- List.sort compare files
|
||||||
|
- )
|
||||||
|
-
|
||||||
|
- | format ->
|
||||||
|
- error (f_"don’t know how to get list of files from package using %s")
|
||||||
|
- format
|
||||||
|
+ )
|
||||||
|
|
||||||
|
let is_file_owned (g : G.guestfs) root path =
|
||||||
|
let package_format = g#inspect_get_package_format root in
|
||||||
|
diff --git a/common/mlstdutils/std_utils.ml b/common/mlstdutils/std_utils.ml
|
||||||
|
index 86b21a7c..1a36ab77 100644
|
||||||
|
--- a/common/mlstdutils/std_utils.ml
|
||||||
|
+++ b/common/mlstdutils/std_utils.ml
|
||||||
|
@@ -98,24 +98,27 @@ module String = struct
|
||||||
|
and len = length str in
|
||||||
|
len >= sufflen && sub str (len - sufflen) sufflen = suffix
|
||||||
|
|
||||||
|
- let rec find s sub =
|
||||||
|
- let len = length s in
|
||||||
|
+ let find_from str pos sub =
|
||||||
|
let sublen = length sub in
|
||||||
|
- let rec loop i =
|
||||||
|
- if i <= len-sublen then (
|
||||||
|
- let rec loop2 j =
|
||||||
|
- if j < sublen then (
|
||||||
|
- if s.[i+j] = sub.[j] then loop2 (j+1)
|
||||||
|
- else -1
|
||||||
|
- ) else
|
||||||
|
- i (* found *)
|
||||||
|
- in
|
||||||
|
- let r = loop2 0 in
|
||||||
|
- if r = -1 then loop (i+1) else r
|
||||||
|
- ) else
|
||||||
|
- -1 (* not found *)
|
||||||
|
- in
|
||||||
|
- loop 0
|
||||||
|
+ if sublen = 0 then
|
||||||
|
+ 0
|
||||||
|
+ else (
|
||||||
|
+ let found = ref 0 in
|
||||||
|
+ let len = length str in
|
||||||
|
+ try
|
||||||
|
+ for i = pos to len - sublen do
|
||||||
|
+ let j = ref 0 in
|
||||||
|
+ while unsafe_get str (i + !j) = unsafe_get sub !j do
|
||||||
|
+ incr j;
|
||||||
|
+ if !j = sublen then begin found := i; raise Exit; end;
|
||||||
|
+ done;
|
||||||
|
+ done;
|
||||||
|
+ -1
|
||||||
|
+ with
|
||||||
|
+ Exit -> !found
|
||||||
|
+ )
|
||||||
|
+
|
||||||
|
+ let find str sub = find_from str 0 sub
|
||||||
|
|
||||||
|
let rec replace s s1 s2 =
|
||||||
|
let len = length s in
|
||||||
|
@@ -145,7 +148,7 @@ module String = struct
|
||||||
|
else if n >= len then str, ""
|
||||||
|
else sub str 0 n, sub str n (len-n)
|
||||||
|
|
||||||
|
- let rec split sep str =
|
||||||
|
+ let split sep str =
|
||||||
|
let seplen = length sep in
|
||||||
|
let strlen = length str in
|
||||||
|
let i = find str sep in
|
||||||
|
@@ -154,20 +157,36 @@ module String = struct
|
||||||
|
sub str 0 i, sub str (i + seplen) (strlen - i - seplen)
|
||||||
|
)
|
||||||
|
|
||||||
|
- and nsplit ?(max = 0) sep str =
|
||||||
|
+ let nsplit ?(max = 0) sep str =
|
||||||
|
if max < 0 then
|
||||||
|
invalid_arg "String.nsplit: max parameter should not be negative";
|
||||||
|
|
||||||
|
- (* If we reached the limit, OR if the pattern does not match the string
|
||||||
|
- * at all, return the rest of the string as a single element list.
|
||||||
|
- *)
|
||||||
|
- if max = 1 || find str sep = -1 then
|
||||||
|
- [str]
|
||||||
|
- else (
|
||||||
|
- let s1, s2 = split sep str in
|
||||||
|
- let max = if max = 0 then 0 else max - 1 in
|
||||||
|
- s1 :: nsplit ~max sep s2
|
||||||
|
- )
|
||||||
|
+ let len = String.length str in
|
||||||
|
+ let seplen = String.length sep in
|
||||||
|
+
|
||||||
|
+ let rec loop iters posn acc =
|
||||||
|
+ (* If we reached the limit, OR if the pattern does not match
|
||||||
|
+ * the string at all, return the rest of the string.
|
||||||
|
+ *)
|
||||||
|
+ if max > 0 && iters = max then (
|
||||||
|
+ let rest =
|
||||||
|
+ if posn = 0 then str else String.sub str posn (len-posn) in
|
||||||
|
+ List.rev (rest :: acc)
|
||||||
|
+ )
|
||||||
|
+ else (
|
||||||
|
+ let end_ = find_from str posn sep in
|
||||||
|
+ if end_ = -1 then (
|
||||||
|
+ let rest =
|
||||||
|
+ if posn = 0 then str else String.sub str posn (len-posn) in
|
||||||
|
+ List.rev (rest :: acc)
|
||||||
|
+ )
|
||||||
|
+ else (
|
||||||
|
+ let acc = String.sub str posn (end_-posn) :: acc in
|
||||||
|
+ loop (iters+1) (end_+seplen) acc
|
||||||
|
+ )
|
||||||
|
+ )
|
||||||
|
+ in
|
||||||
|
+ loop 1 0 []
|
||||||
|
|
||||||
|
let rec lines_split str =
|
||||||
|
let buf = Buffer.create 16 in
|
||||||
|
diff --git a/common/mlstdutils/std_utils.mli b/common/mlstdutils/std_utils.mli
|
||||||
|
index a39ac5f3..7bd55fba 100644
|
||||||
|
--- a/common/mlstdutils/std_utils.mli
|
||||||
|
+++ b/common/mlstdutils/std_utils.mli
|
||||||
|
@@ -82,6 +82,10 @@ module String : sig
|
||||||
|
val find : string -> string -> int
|
||||||
|
(** [find str sub] searches for [sub] as a substring of [str]. If
|
||||||
|
found it returns the index. If not found, it returns [-1]. *)
|
||||||
|
+ val find_from : string -> int -> string -> int
|
||||||
|
+ (** [find_from str start sub] searches for [sub] as a substring of [str],
|
||||||
|
+ starting at index [start]. If found it returns the index.
|
||||||
|
+ If not found, it returns [-1]. *)
|
||||||
|
val replace : string -> string -> string -> string
|
||||||
|
(** [replace str s1 s2] replaces all instances of [s1] appearing in
|
||||||
|
[str] with [s2]. *)
|
||||||
|
diff --git a/common/mlstdutils/std_utils_tests.ml b/common/mlstdutils/std_utils_tests.ml
|
||||||
|
index 3f5bb1a8..4e368152 100644
|
||||||
|
--- a/common/mlstdutils/std_utils_tests.ml
|
||||||
|
+++ b/common/mlstdutils/std_utils_tests.ml
|
||||||
|
@@ -113,13 +113,19 @@ let test_string_nsplit ctx =
|
||||||
|
assert_equal_stringlist [""] (String.nsplit " " "");
|
||||||
|
assert_equal_stringlist ["abc"] (String.nsplit " " "abc");
|
||||||
|
assert_equal_stringlist ["a"; "b"; "c"] (String.nsplit " " "a b c");
|
||||||
|
+ assert_equal_stringlist ["abc"; "d"; "e"] (String.nsplit " " "abc d e");
|
||||||
|
assert_equal_stringlist ["a"; "b"; "c"; ""] (String.nsplit " " "a b c ");
|
||||||
|
assert_equal_stringlist [""; "a"; "b"; "c"] (String.nsplit " " " a b c");
|
||||||
|
assert_equal_stringlist [""; "a"; "b"; "c"; ""] (String.nsplit " " " a b c ");
|
||||||
|
assert_equal_stringlist ["a b c d"] (String.nsplit ~max:1 " " "a b c d");
|
||||||
|
assert_equal_stringlist ["a"; "b c d"] (String.nsplit ~max:2 " " "a b c d");
|
||||||
|
assert_equal_stringlist ["a"; "b"; "c d"] (String.nsplit ~max:3 " " "a b c d");
|
||||||
|
- assert_equal_stringlist ["a"; "b"; "c"; "d"] (String.nsplit ~max:10 " " "a b c d")
|
||||||
|
+ assert_equal_stringlist ["a"; "b"; "c"; "d"] (String.nsplit ~max:10 " " "a b c d");
|
||||||
|
+
|
||||||
|
+ (* Test that nsplit can handle large strings. *)
|
||||||
|
+ let xs = Array.to_list (Array.make 10_000_000 "xyz") in
|
||||||
|
+ let xs_concat = String.concat " " xs in
|
||||||
|
+ assert_equal_stringlist xs (String.nsplit " " xs_concat)
|
||||||
|
|
||||||
|
(* Test Std_utils.String.lines_split. *)
|
||||||
|
let test_string_lines_split ctx =
|
||||||
|
diff --git a/m4/guestfs-libraries.m4 b/m4/guestfs-libraries.m4
|
||||||
|
index 6789a2cb..1cc10d5b 100644
|
||||||
|
--- a/m4/guestfs-libraries.m4
|
||||||
|
+++ b/m4/guestfs-libraries.m4
|
||||||
|
@@ -18,7 +18,9 @@
|
||||||
|
dnl Any C libraries required by virt-v2v.
|
||||||
|
|
||||||
|
dnl Of course we need libguestfs.
|
||||||
|
-PKG_CHECK_MODULES([LIBGUESTFS], [libguestfs >= 1.44])
|
||||||
|
+dnl
|
||||||
|
+dnl We need libguestfs >= 1:1.50.2-1.el9_5 for guestfs_sh_out.
|
||||||
|
+PKG_CHECK_MODULES([LIBGUESTFS], [libguestfs >= 1.50.2])
|
||||||
|
|
||||||
|
dnl And libnbd.
|
||||||
|
PKG_CHECK_MODULES([LIBNBD], [libnbd >= 1.10])
|
304
SOURCES/1001-replaced-upstream-references.patch
Normal file
304
SOURCES/1001-replaced-upstream-references.patch
Normal file
@ -0,0 +1,304 @@
|
|||||||
|
From a0b0015b884015b20a86cbc896ba55448f05e855 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Craig Guiller <craig.guiller@oracle.com>
|
||||||
|
Date: Fri, 5 Apr 2024 12:34:09 +0100
|
||||||
|
Subject: [PATCH] replaced upstream references
|
||||||
|
Signed-off-by: Craig Guiller <craig.guiller@oracle.com>
|
||||||
|
---
|
||||||
|
po/Makefile.am | 2 +-
|
||||||
|
po/cs.po | 3 +--
|
||||||
|
po/de.po | 3 +--
|
||||||
|
po/es.po | 3 +--
|
||||||
|
po/fr.po | 3 +--
|
||||||
|
po/gu.po | 3 +--
|
||||||
|
po/hi.po | 3 +--
|
||||||
|
po/ja.po | 3 +--
|
||||||
|
po/kn.po | 3 +--
|
||||||
|
po/ml.po | 3 +--
|
||||||
|
po/mr.po | 3 +--
|
||||||
|
po/nl.po | 3 +--
|
||||||
|
po/or.po | 3 +--
|
||||||
|
po/pa.po | 3 +--
|
||||||
|
po/pl.po | 3 +--
|
||||||
|
po/uk.po | 3 +--
|
||||||
|
po/virt-v2v.pot | 3 +--
|
||||||
|
podwrapper.pl.in | 4 ++--
|
||||||
|
website/index.html.in | 6 +++---
|
||||||
|
19 files changed, 22 insertions(+), 38 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/po/Makefile.am b/po/Makefile.am
|
||||||
|
index f1509d6..db4a502 100644
|
||||||
|
--- a/po/Makefile.am
|
||||||
|
+++ b/po/Makefile.am
|
||||||
|
@@ -19,7 +19,7 @@ include $(top_srcdir)/subdir-rules.mk
|
||||||
|
|
||||||
|
DOMAIN = $(PACKAGE_NAME)
|
||||||
|
COPYRIGHT_HOLDER = Red Hat Inc.
|
||||||
|
-MSGID_BUGS_ADDRESS = https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools
|
||||||
|
+MSGID_BUGS_ADDRESS = https://github.com/oracle/oracle-linux
|
||||||
|
|
||||||
|
# Languages.
|
||||||
|
# Don't use LINGUAS (uppercase) as Gentoo defines it (RHBZ#804464).
|
||||||
|
diff --git a/po/cs.po b/po/cs.po
|
||||||
|
index 415a9b9..bf996ff 100644
|
||||||
|
--- a/po/cs.po
|
||||||
|
+++ b/po/cs.po
|
||||||
|
@@ -2,8 +2,7 @@
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libguestfs 1.39.12\n"
|
||||||
|
-"Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?"
|
||||||
|
-"component=libguestfs&product=Virtualization+Tools\n"
|
||||||
|
+"Report-Msgid-Bugs-To: https://github.com/oracle/oracle-linux\n"
|
||||||
|
"POT-Creation-Date: 2024-01-04 17:06+0000\n"
|
||||||
|
"PO-Revision-Date: 2023-04-08 18:20+0000\n"
|
||||||
|
"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>\n"
|
||||||
|
diff --git a/po/de.po b/po/de.po
|
||||||
|
index 19a5513..7b64f55 100644
|
||||||
|
--- a/po/de.po
|
||||||
|
+++ b/po/de.po
|
||||||
|
@@ -9,8 +9,7 @@
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libguestfs 1.39.12\n"
|
||||||
|
-"Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?"
|
||||||
|
-"component=libguestfs&product=Virtualization+Tools\n"
|
||||||
|
+"Report-Msgid-Bugs-To: https://github.com/oracle/oracle-linux\n"
|
||||||
|
"POT-Creation-Date: 2024-01-04 17:06+0000\n"
|
||||||
|
"PO-Revision-Date: 2015-02-21 10:48+0000\n"
|
||||||
|
"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
|
||||||
|
diff --git a/po/es.po b/po/es.po
|
||||||
|
index 065cd2b..051af40 100644
|
||||||
|
--- a/po/es.po
|
||||||
|
+++ b/po/es.po
|
||||||
|
@@ -10,8 +10,7 @@
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libguestfs 1.39.12\n"
|
||||||
|
-"Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?"
|
||||||
|
-"component=libguestfs&product=Virtualization+Tools\n"
|
||||||
|
+"Report-Msgid-Bugs-To: https://github.com/oracle/oracle-linux\n"
|
||||||
|
"POT-Creation-Date: 2024-01-04 17:06+0000\n"
|
||||||
|
"PO-Revision-Date: 2015-03-16 07:04+0000\n"
|
||||||
|
"Last-Translator: Alex Puchades <alex94puchades@gmail.com>\n"
|
||||||
|
diff --git a/po/fr.po b/po/fr.po
|
||||||
|
index 7b0864b..41b9db7 100644
|
||||||
|
--- a/po/fr.po
|
||||||
|
+++ b/po/fr.po
|
||||||
|
@@ -10,8 +10,7 @@
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libguestfs 1.39.12\n"
|
||||||
|
-"Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?"
|
||||||
|
-"component=libguestfs&product=Virtualization+Tools\n"
|
||||||
|
+"Report-Msgid-Bugs-To: https://github.com/oracle/oracle-linux\n"
|
||||||
|
"POT-Creation-Date: 2024-01-04 17:06+0000\n"
|
||||||
|
"PO-Revision-Date: 2023-03-21 09:20+0000\n"
|
||||||
|
"Last-Translator: grimst <grimaitres@gmail.com>\n"
|
||||||
|
diff --git a/po/gu.po b/po/gu.po
|
||||||
|
index 02643ec..d53329c 100644
|
||||||
|
--- a/po/gu.po
|
||||||
|
+++ b/po/gu.po
|
||||||
|
@@ -8,8 +8,7 @@
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libguestfs 1.39.12\n"
|
||||||
|
-"Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?"
|
||||||
|
-"component=libguestfs&product=Virtualization+Tools\n"
|
||||||
|
+"Report-Msgid-Bugs-To: https://github.com/oracle/oracle-linux\n"
|
||||||
|
"POT-Creation-Date: 2024-01-04 17:06+0000\n"
|
||||||
|
"PO-Revision-Date: 2015-02-21 10:49+0000\n"
|
||||||
|
"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
|
||||||
|
diff --git a/po/hi.po b/po/hi.po
|
||||||
|
index 11f334c..303063d 100644
|
||||||
|
--- a/po/hi.po
|
||||||
|
+++ b/po/hi.po
|
||||||
|
@@ -8,8 +8,7 @@
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libguestfs 1.39.12\n"
|
||||||
|
-"Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?"
|
||||||
|
-"component=libguestfs&product=Virtualization+Tools\n"
|
||||||
|
+"Report-Msgid-Bugs-To: https://github.com/oracle/oracle-linux\n"
|
||||||
|
"POT-Creation-Date: 2024-01-04 17:06+0000\n"
|
||||||
|
"PO-Revision-Date: 2015-02-21 10:49+0000\n"
|
||||||
|
"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
|
||||||
|
diff --git a/po/ja.po b/po/ja.po
|
||||||
|
index 7c806c1..227b17e 100644
|
||||||
|
--- a/po/ja.po
|
||||||
|
+++ b/po/ja.po
|
||||||
|
@@ -9,8 +9,7 @@
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libguestfs 1.39.12\n"
|
||||||
|
-"Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?"
|
||||||
|
-"component=libguestfs&product=Virtualization+Tools\n"
|
||||||
|
+"Report-Msgid-Bugs-To: https://github.com/oracle/oracle-linux\n"
|
||||||
|
"POT-Creation-Date: 2024-01-04 17:06+0000\n"
|
||||||
|
"PO-Revision-Date: 2017-02-24 07:33+0000\n"
|
||||||
|
"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
|
||||||
|
diff --git a/po/kn.po b/po/kn.po
|
||||||
|
index 430af05..66b794b 100644
|
||||||
|
--- a/po/kn.po
|
||||||
|
+++ b/po/kn.po
|
||||||
|
@@ -7,8 +7,7 @@
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libguestfs 1.39.12\n"
|
||||||
|
-"Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?"
|
||||||
|
-"component=libguestfs&product=Virtualization+Tools\n"
|
||||||
|
+"Report-Msgid-Bugs-To: https://github.com/oracle/oracle-linux\n"
|
||||||
|
"POT-Creation-Date: 2024-01-04 17:06+0000\n"
|
||||||
|
"PO-Revision-Date: 2015-02-21 10:50+0000\n"
|
||||||
|
"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
|
||||||
|
diff --git a/po/ml.po b/po/ml.po
|
||||||
|
index 172994f..0195197 100644
|
||||||
|
--- a/po/ml.po
|
||||||
|
+++ b/po/ml.po
|
||||||
|
@@ -7,8 +7,7 @@
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libguestfs 1.39.12\n"
|
||||||
|
-"Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?"
|
||||||
|
-"component=libguestfs&product=Virtualization+Tools\n"
|
||||||
|
+"Report-Msgid-Bugs-To: https://github.com/oracle/oracle-linux\n"
|
||||||
|
"POT-Creation-Date: 2024-01-04 17:06+0000\n"
|
||||||
|
"PO-Revision-Date: 2015-02-21 10:50+0000\n"
|
||||||
|
"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
|
||||||
|
diff --git a/po/mr.po b/po/mr.po
|
||||||
|
index cfa072d..49e5e6d 100644
|
||||||
|
--- a/po/mr.po
|
||||||
|
+++ b/po/mr.po
|
||||||
|
@@ -8,8 +8,7 @@
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libguestfs 1.39.12\n"
|
||||||
|
-"Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?"
|
||||||
|
-"component=libguestfs&product=Virtualization+Tools\n"
|
||||||
|
+"Report-Msgid-Bugs-To: https://github.com/oracle/oracle-linux\n"
|
||||||
|
"POT-Creation-Date: 2024-01-04 17:06+0000\n"
|
||||||
|
"PO-Revision-Date: 2015-02-21 10:51+0000\n"
|
||||||
|
"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
|
||||||
|
diff --git a/po/nl.po b/po/nl.po
|
||||||
|
index 7757ba3..c91e1b0 100644
|
||||||
|
--- a/po/nl.po
|
||||||
|
+++ b/po/nl.po
|
||||||
|
@@ -9,8 +9,7 @@
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libguestfs 1.39.12\n"
|
||||||
|
-"Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?"
|
||||||
|
-"component=libguestfs&product=Virtualization+Tools\n"
|
||||||
|
+"Report-Msgid-Bugs-To: https://github.com/oracle/oracle-linux\n"
|
||||||
|
"POT-Creation-Date: 2024-01-04 17:06+0000\n"
|
||||||
|
"PO-Revision-Date: 2015-02-21 10:51+0000\n"
|
||||||
|
"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
|
||||||
|
diff --git a/po/or.po b/po/or.po
|
||||||
|
index cb0b6f9..11ee73f 100644
|
||||||
|
--- a/po/or.po
|
||||||
|
+++ b/po/or.po
|
||||||
|
@@ -7,8 +7,7 @@
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libguestfs 1.39.12\n"
|
||||||
|
-"Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?"
|
||||||
|
-"component=libguestfs&product=Virtualization+Tools\n"
|
||||||
|
+"Report-Msgid-Bugs-To: https://github.com/oracle/oracle-linux\n"
|
||||||
|
"POT-Creation-Date: 2024-01-04 17:06+0000\n"
|
||||||
|
"PO-Revision-Date: 2015-02-21 10:51+0000\n"
|
||||||
|
"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
|
||||||
|
diff --git a/po/pa.po b/po/pa.po
|
||||||
|
index 9b4e9bc..c34e00d 100644
|
||||||
|
--- a/po/pa.po
|
||||||
|
+++ b/po/pa.po
|
||||||
|
@@ -8,8 +8,7 @@
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libguestfs 1.39.12\n"
|
||||||
|
-"Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?"
|
||||||
|
-"component=libguestfs&product=Virtualization+Tools\n"
|
||||||
|
+"Report-Msgid-Bugs-To: https://github.com/oracle/oracle-linux\n"
|
||||||
|
"POT-Creation-Date: 2024-01-04 17:06+0000\n"
|
||||||
|
"PO-Revision-Date: 2015-02-21 10:52+0000\n"
|
||||||
|
"Last-Translator: Copied by Zanata <copied-by-zanata@zanata.org>\n"
|
||||||
|
diff --git a/po/pl.po b/po/pl.po
|
||||||
|
index d46571c..01f5206 100644
|
||||||
|
--- a/po/pl.po
|
||||||
|
+++ b/po/pl.po
|
||||||
|
@@ -11,8 +11,7 @@
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libguestfs 1.39.12\n"
|
||||||
|
-"Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?"
|
||||||
|
-"component=libguestfs&product=Virtualization+Tools\n"
|
||||||
|
+"Report-Msgid-Bugs-To: https://github.com/oracle/oracle-linux\n"
|
||||||
|
"POT-Creation-Date: 2024-01-04 17:06+0000\n"
|
||||||
|
"PO-Revision-Date: 2024-01-15 13:36+0000\n"
|
||||||
|
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||||
|
diff --git a/po/uk.po b/po/uk.po
|
||||||
|
index 5a80267..043d1c8 100644
|
||||||
|
--- a/po/uk.po
|
||||||
|
+++ b/po/uk.po
|
||||||
|
@@ -12,8 +12,7 @@
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: libguestfs 1.39.12\n"
|
||||||
|
-"Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?"
|
||||||
|
-"component=libguestfs&product=Virtualization+Tools\n"
|
||||||
|
+"Report-Msgid-Bugs-To: https://github.com/oracle/oracle-linux\n"
|
||||||
|
"POT-Creation-Date: 2024-01-04 17:06+0000\n"
|
||||||
|
"PO-Revision-Date: 2023-06-05 07:20+0000\n"
|
||||||
|
"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
|
||||||
|
diff --git a/podwrapper.pl.in b/podwrapper.pl.in
|
||||||
|
index c99563c..14198cf 100755
|
||||||
|
--- a/podwrapper.pl.in
|
||||||
|
+++ b/podwrapper.pl.in
|
||||||
|
@@ -432,10 +432,10 @@ my $reporting_bugs =
|
||||||
|
"=head1 BUGS
|
||||||
|
|
||||||
|
To get a list of bugs against libguestfs, use this link:
|
||||||
|
-L<https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools>
|
||||||
|
+L<https://github.com/oracle/oracle-linux>
|
||||||
|
|
||||||
|
To report a new bug against libguestfs, use this link:
|
||||||
|
-L<https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools>
|
||||||
|
+L<https://github.com/oracle/oracle-linux>
|
||||||
|
|
||||||
|
When reporting a bug, please supply:
|
||||||
|
|
||||||
|
diff --git a/website/index.html.in b/website/index.html.in
|
||||||
|
index f578523..e1e1592 100644
|
||||||
|
--- a/website/index.html.in
|
||||||
|
+++ b/website/index.html.in
|
||||||
|
@@ -160,12 +160,12 @@ For testers:
|
||||||
|
<h2>Bug reports</h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
-<a href="https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools">List of bugs in libguestfs</a> and
|
||||||
|
-<a href="https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Fedora">in Fedora packaging of libguestfs</a>
|
||||||
|
+<a href="https://github.com/oracle/oracle-linux">List of bugs in libguestfs</a> and
|
||||||
|
+<a href="https://github.com/oracle/oracle-linux">in Community packaging of libguestfs</a>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
-<a href="https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools">Enter a new bug report</a>
|
||||||
|
+<a href="https://github.com/oracle/oracle-linux">Enter a new bug report</a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
diff --git a/po/virt-v2v.pot b/po/virt-v2v.pot
|
||||||
|
index 9642515..a82187a 100644
|
||||||
|
--- a/po/virt-v2v.pot
|
||||||
|
+++ b/po/virt-v2v.pot
|
||||||
|
@@ -7,8 +7,7 @@
|
||||||
|
msgid ""
|
||||||
|
msgstr ""
|
||||||
|
"Project-Id-Version: virt-v2v 2.5.6\n"
|
||||||
|
-"Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?"
|
||||||
|
-"component=libguestfs&product=Virtualization+Tools\n"
|
||||||
|
+"Report-Msgid-Bugs-To: https://github.com/oracle/oracle-linux\n"
|
||||||
|
"POT-Creation-Date: 2024-07-30 16:57+0100\n"
|
||||||
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
|
--
|
||||||
|
2.31.1
|
||||||
|
|
@ -8,7 +8,7 @@
|
|||||||
Name: virt-v2v
|
Name: virt-v2v
|
||||||
Epoch: 1
|
Epoch: 1
|
||||||
Version: 2.5.6
|
Version: 2.5.6
|
||||||
Release: 8%{?dist}
|
Release: 9.0.1%{?dist}
|
||||||
Summary: Convert a virtual machine to run on KVM
|
Summary: Convert a virtual machine to run on KVM
|
||||||
|
|
||||||
License: GPL-2.0-or-later AND LGPL-2.0-or-later
|
License: GPL-2.0-or-later AND LGPL-2.0-or-later
|
||||||
@ -50,9 +50,13 @@ Patch0019: 0019-RHEL-9-Remove-block-driver-option.patch
|
|||||||
Patch0020: 0020-RHEL-Add-warning-about-virt-v2v-in-place-not-being-s.patch
|
Patch0020: 0020-RHEL-Add-warning-about-virt-v2v-in-place-not-being-s.patch
|
||||||
Patch0021: 0021-convert-windows-Online-all-virtio-disks-at-first-boo.patch
|
Patch0021: 0021-convert-windows-Online-all-virtio-disks-at-first-boo.patch
|
||||||
Patch0022: 0022-convert-windows-Ignore-sriov-drivers-on-virtio-win-d.patch
|
Patch0022: 0022-convert-windows-Ignore-sriov-drivers-on-virtio-win-d.patch
|
||||||
Patch0023: 0023-convert-Use-yum-apt-.-for-package-removals-not-rpm-d.patch
|
Patch0023: 0023-Update-common-submodule.patch
|
||||||
# https://gitlab.com/redhat/centos-stream/rpms/virt-v2v/-/commit/7e0bcda907e5f2b69566387f5b283186cb7ed62e
|
Patch0024: 0024-convert-Use-yum-apt-.-for-package-removals-not-rpm-d.patch
|
||||||
Patch0024: 0024-Update-common-submodule.patch
|
Patch0025: 0025-test-data-phony-fedora-Add-simple-static-bin-sh.patch
|
||||||
|
Patch0026: 0026-convert-Handle-large-output-from-rpm-ql-command.patch
|
||||||
|
|
||||||
|
# Oracle patch
|
||||||
|
Patch1001: 1001-replaced-upstream-references.patch
|
||||||
|
|
||||||
%if !0%{?rhel}
|
%if !0%{?rhel}
|
||||||
# libguestfs hasn't been built on i686 for a while since there is no
|
# libguestfs hasn't been built on i686 for a while since there is no
|
||||||
@ -77,7 +81,7 @@ BuildRequires: /usr/bin/pod2man
|
|||||||
BuildRequires: gcc
|
BuildRequires: gcc
|
||||||
BuildRequires: ocaml >= 4.04
|
BuildRequires: ocaml >= 4.04
|
||||||
|
|
||||||
BuildRequires: libguestfs-devel >= 1:1.49.8-1
|
BuildRequires: libguestfs-devel >= 1:1.50.2-2.el9_5
|
||||||
BuildRequires: augeas-devel
|
BuildRequires: augeas-devel
|
||||||
BuildRequires: bash-completion
|
BuildRequires: bash-completion
|
||||||
BuildRequires: file-devel
|
BuildRequires: file-devel
|
||||||
@ -121,7 +125,7 @@ BuildRequires: sqlite
|
|||||||
BuildRequires: gnupg2
|
BuildRequires: gnupg2
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
Requires: libguestfs%{?_isa} >= 1:1.49.8-1
|
Requires: libguestfs%{?_isa} >= 1:1.50.2-2.el9_5
|
||||||
Requires: guestfs-tools >= 1.49.7-1
|
Requires: guestfs-tools >= 1.49.7-1
|
||||||
|
|
||||||
# XFS is the default filesystem in Fedora and RHEL.
|
# XFS is the default filesystem in Fedora and RHEL.
|
||||||
@ -356,14 +360,19 @@ make -C tests TESTS=test-v2v-fedora-luks-on-lvm-conversion.sh check
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Wed Feb 19 2025 Eduard Abdullin <eabdullin@almalinux.org> - 1:2.5.6-8
|
* Mon Mar 17 2025 EL Errata <el-errata_ww@oracle.com> - 2.5.6-9.0.1
|
||||||
- Update common submodule
|
- Replaced bugzilla.oracle.com references [Orabug: 34202300]
|
||||||
|
- replaced upstream references [Orabug:34089586]
|
||||||
|
|
||||||
* Mon Feb 17 2025 Darren Archibald <darren.archibald@oracle.com> - 1:2.5.6-8
|
* Thu Feb 27 2025 Richard W.M. Jones <rjones@redhat.com> - 1:2.5.6-9
|
||||||
- Migration Plan / vddk pod cannot remove open-vm-tools in case of dependencies
|
- Fix failure if the kernel-source package is installed in the source VM
|
||||||
Resolves: RHEL-78842
|
resolves: RHEL-81083
|
||||||
- CentOS 9 Migration from VMWare to Openshift Virt fails
|
|
||||||
Resolves: RHEL-78844
|
* Tue Feb 11 2025 Richard W.M. Jones <rjones@redhat.com> - 1:2.5.6-8
|
||||||
|
- mldrivers/linux_bootloaders.ml: Don't overwrite EFI grub2 wrapper
|
||||||
|
resolves: RHEL-78844
|
||||||
|
- convert: Use yum/apt/... for package removals
|
||||||
|
resolves: RHEL-78842
|
||||||
|
|
||||||
* Thu Sep 12 2024 Richard W.M. Jones <rjones@redhat.com> - 1:2.5.6-7
|
* Thu Sep 12 2024 Richard W.M. Jones <rjones@redhat.com> - 1:2.5.6-7
|
||||||
- Bump and rebuild to resolve rhel-9.5.0 branch issue
|
- Bump and rebuild to resolve rhel-9.5.0 branch issue
|
||||||
|
Loading…
Reference in New Issue
Block a user