summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--perl-install/install/NEWS3
-rwxr-xr-xtools/drakx-in-chroot5
2 files changed, 6 insertions, 2 deletions
diff --git a/perl-install/install/NEWS b/perl-install/install/NEWS
index 4a1538a7f..d89aead32 100644
--- a/perl-install/install/NEWS
+++ b/perl-install/install/NEWS
@@ -1,3 +1,6 @@
+- drakx-in-chroot:
+ o just like stage1, handle <root of distrib> ending with current arch() so
+ that we can access main32 on x86_64
- do not rebuild rpmdb if it is ok
(will workaround #32547) (need perl-URPM 3.01)
- adapt to perl-URPM 3.00 API to parse pubkey files
diff --git a/tools/drakx-in-chroot b/tools/drakx-in-chroot
index 4f8b61c4f..a40fce56a 100755
--- a/tools/drakx-in-chroot
+++ b/tools/drakx-in-chroot
@@ -19,6 +19,7 @@ my $RPMSRATE_ROOTED = '/tmp/rpmsrate';
@ARGV >= 2 or die "usage: drakx-in-chroot <root of distrib> <dir to install to> [options]\n";
(my $repository, my $dir, @ARGV) = @ARGV;
+my ($repository_without_arch, $repository_arch) = basename($repository) eq arch() ? (dirname($repository), '/' . arch()) : ($repository, '');
my $STAGE2_LOCATION = $SLASH_LOCATION . $STAGE2_LOCATION_ROOTED;
my $sudo;
@@ -54,10 +55,10 @@ if ($remote_repository) {
}
sys("$sudo mount -o bind $dir $SLASH_LOCATION$prefix_ROOTED");
-sys("$sudo mount -o bind $repository $SLASH_LOCATION$MEDIA_LOCATION_ROOTED") if !$remote_repository;
+sys("$sudo mount -o bind $repository_without_arch $SLASH_LOCATION$MEDIA_LOCATION_ROOTED") if !$remote_repository;
sys("$sudo mount -t proc none $SLASH_LOCATION/proc");
sys("$sudo mount -t sysfs none $SLASH_LOCATION/sys");
-symlinkf('media', "$SLASH_LOCATION$IMAGE_LOCATION_ROOTED");
+symlinkf('media' . $repository_arch, "$SLASH_LOCATION$IMAGE_LOCATION_ROOTED");
create_initial_symlinks();
create_initial_devices();