Even when supplied with $SUPERMIN_MODULES, supermin tries to access
/lib/modules. This directory does not exist by default in all the
environments.
---
src/format_ext2.ml | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/src/format_ext2.ml b/src/format_ext2.ml
index e311ea6..2888ed8 100644
--- a/src/format_ext2.ml
+++ b/src/format_ext2.ml
@@ -95,8 +95,18 @@ let build_ext2 debug basedir files modpath kernel_version appliance
size
printf "supermin: ext2: copying kernel modules\n%!";
(* Import the kernel modules. *)
- ext2fs_copy_file_from_host fs "/lib" "/lib";
- ext2fs_copy_file_from_host fs "/lib/modules" "/lib/modules";
+ (try
+ ext2fs_copy_file_from_host fs "/lib" "/lib";
+ with Unix_error _ ->
+ ext2fs_copy_file_from_host fs "/" "/lib";
+ );
+
+ (try
+ ext2fs_copy_file_from_host fs "/lib/modules" "/lib/modules";
+ with Unix_error _ ->
+ ext2fs_copy_file_from_host fs "/" "/lib/modules";
+ );
+
ext2fs_copy_dir_recursively_from_host fs
modpath ("/lib/modules/" ^ kernel_version);
--
2.35.1