diff options
-rw-r--r-- | perl-install/ChangeLog | 26 | ||||
-rw-r--r-- | perl-install/install_any.pm | 14 |
2 files changed, 24 insertions, 16 deletions
diff --git a/perl-install/ChangeLog b/perl-install/ChangeLog index 042d899e3..8e92626ca 100644 --- a/perl-install/ChangeLog +++ b/perl-install/ChangeLog @@ -1,7 +1,22 @@ +2000-03-14 François Pons <fpons@mandrakesoft.com> + + * install_any.pm: corrected for duplicate file on other CD. + 2000-03-13 Pixel <pixel@mandrakesoft.com> * detect_devices.pm (floppies): don't return hash but the device name +2000-03-13 François Pons <fpons@mandrakesoft.com> + + * pkgs.pm, install_any.pm: small correction for multiple media + installation. + * tools/syncrpms: added for handling synchronisation of multiple source + rpm directories (and multiple target), include cleaning. + * tools/closurepkgs: tools to get rpm that may be installed by DrakX + after normal packages installation (printer, network, X11...), may + be used to duplicate on other CD some important stuff of the first + one. + 2000-03-12 Pixel <pixel@mandrakesoft.com> * install_steps_interactive.pm (choosePackages): compute the @@ -16,17 +31,6 @@ * pkgs.pm (install): remove the $prefix of mountpoints for not enough room to install error message -2000-03-13 François Pons <fpons@mandrakesoft.com> - - * pkgs.pm, install_any.pm: small correction for multiple media - installation. - * tools/syncrpms: added for handling synchronisation of multiple source - rpm directories (and multiple target), include cleaning. - * tools/closurepkgs: tools to get rpm that may be installed by DrakX - after normal packages installation (printer, network, X11...), may - be used to duplicate on other CD some important stuff of the first - one. - 2000-03-11 Pixel <pixel@mandrakesoft.com> * my_gtk.pm (_create_window): add callback on focus to diff --git a/perl-install/install_any.pm b/perl-install/install_any.pm index f4840f637..382e13c78 100644 --- a/perl-install/install_any.pm +++ b/perl-install/install_any.pm @@ -46,13 +46,13 @@ sub relGetFile($) { /\.img$/ and return "images/$_"; my $dir = m|/| ? "mdkinst" : /^(?:compss|compssList|compssUsers|depslist.*|hdlist.*)$/ ? "base/": "RPMS$asked_medium/"; $_ = "Mandrake/$dir$_"; - s/i386/i586/; + #- s/i386/i586/; avoid using such thing as package have to be correctly rebuild $_; } -sub errorOpeningFile($) { - my ($file) = @_; +sub errorOpeningFile($;$) { + my ($file, $absent) = @_; $file eq 'XXX' and return; #- special case to force closing file after rpmlib transaction. - $current_medium eq $asked_medium and return; #- nothing to do in such case. + $current_medium eq $asked_medium && !$absent and return; #- nothing to do in such case. $refused_media{$asked_medium} and return; #- refused forever... my $max = 32; #- always refuse after $max tries. @@ -92,7 +92,11 @@ sub getFile { *install_any::getFile = sub { http::getFile($_[0]) or errorOpeningFile($_[0]) }; } else { *install_any::getFile = sub { - open getFile, "/tmp/rhimage/" . relGetFile($_[0]) or return errorOpeningFile($_[0]); + #- try to open the file, but examine if it is present in the repository, this allow + #- handling changing a media when some of the file on the first CD has been copied + #- to other to avoid media change... + open getFile, "/tmp/rhimage/" . relGetFile($_[0]) or + return errorOpeningFile($_[0], !(-e "/tmp/rhimage/" . relGetFile($_[0]))); *getFile; }; } |