summaryrefslogtreecommitdiffstats
path: root/perl-install/install/media.pm
diff options
context:
space:
mode:
Diffstat (limited to 'perl-install/install/media.pm')
-rw-r--r--perl-install/install/media.pm126
1 files changed, 63 insertions, 63 deletions
diff --git a/perl-install/install/media.pm b/perl-install/install/media.pm
index 891a658c0..e4a81373f 100644
--- a/perl-install/install/media.pm
+++ b/perl-install/install/media.pm
@@ -43,7 +43,7 @@ use urpm::download;
our $postinstall_rpms = '';
my %mounted_media;
-sub free_medium_id {
+sub _free_medium_id {
my ($media) = @_;
int(@$media);
}
@@ -54,13 +54,13 @@ sub allMediums {
@{$packages->{media}};
}
-sub phys_media {
+sub _phys_media {
my ($packages) = @_;
uniq(map { $_->{phys_medium} } @{$packages->{media}});
}
-sub pkg2media {
+sub _pkg2media {
my ($media, $p) = @_;
$p or internal_error("invalid package");
@@ -73,7 +73,7 @@ sub pkg2media {
sub packageMedium {
my ($packages, $p) = @_;
- pkg2media($packages->{media}, $p) || {};
+ _pkg2media($packages->{media}, $p) || {};
}
sub packagesOfMedium {
my ($packages, $medium) = @_;
@@ -116,7 +116,7 @@ sub umount_phys_medium {
}
$ok;
}
-sub mount_phys_medium {
+sub _mount_phys_medium {
my ($phys_m, $o_rel_file, $b_force_change) = @_;
if (!$b_force_change) {
@@ -136,14 +136,14 @@ sub umount_media {
#- we don't bother umounting first phys medium if clp is not on disk
#- (this is mainly for nfs installs using install/stage2/live)
- my @l = phys_media($packages);
+ my @l = _phys_media($packages);
shift @l if !$install::any::compressed_image_on_disk && $l[0]{is_stage2_phys_medium};
umount_phys_medium($_) foreach @l;
umount_phys_medium($_) foreach grep { $_ } map { $_->{loopback_device} } @l;
}
-sub url_respect_privacy {
+sub _url_respect_privacy {
my ($url) = @_;
$url =~ s!ftp://.*?\@!ftp://xxx@!;
@@ -151,10 +151,10 @@ sub url_respect_privacy {
}
sub phys_medium_to_string {
my ($phys_m) = @_;
- url_respect_privacy($phys_m->{url}) . ($phys_m->{name} ? " ($phys_m->{name})" : '');
+ _url_respect_privacy($phys_m->{url}) . ($phys_m->{name} ? " ($phys_m->{name})" : '');
}
-sub stage2_mounted_medium {
+sub _stage2_mounted_medium {
my ($method, $rel_path) = @_;
my ($device, $real_mntpoint, $fs_type, $url);
@@ -197,8 +197,8 @@ sub stage2_phys_medium {
my $rel_iso = $ENV{ISOPATH} =~ m!media/*(/.*)! ? $1 : '';
my ($dir_url, $iso) = (dirname($rel_iso), basename($rel_iso));
- my $dir_medium = stage2_mounted_medium($dir_method, $dir_url eq '/' ? '' : $dir_url);
- my $phys_m = iso_phys_media($dir_medium, $iso, '');
+ my $dir_medium = _stage2_mounted_medium($dir_method, $dir_url eq '/' ? '' : $dir_url);
+ my $phys_m = _iso_phys_media($dir_medium, $iso, '');
$phys_m->{real_mntpoint} = '/tmp/loop';
$phys_m->{real_device} = cat_("/proc/mounts") =~ m!(/dev/\S+)\s+/tmp/loop\s! && $1;
$phys_m->{isMounted} = 1;
@@ -206,7 +206,7 @@ sub stage2_phys_medium {
$phys_m;
} else {
my $rel_path = readlink('/tmp/image') =~ m!media/*(/.*)! ? $1 : '';
- stage2_mounted_medium($method, $rel_path);
+ _stage2_mounted_medium($method, $rel_path);
}
}
@@ -226,16 +226,16 @@ sub change_phys_medium {
my $force_change = $phys_m->{method} eq 'cdrom' && $mounted_media{cdrom};
if (my $current = $mounted_media{$phys_m->{method}}) {
- setup_postinstall_rpms($::o, $o_packages, $current) if $o_packages && $phys_m->{method} eq 'cdrom' && $::o->isa('interactive');
+ _setup_postinstall_rpms($::o, $o_packages, $current) if $o_packages && $phys_m->{method} eq 'cdrom' && $::o->isa('interactive');
umount_phys_medium($current) or return;
delete $mounted_media{$phys_m->{method}};
}
- mount_phys_medium($phys_m, $o_rel_file, $force_change) or return;
- phys_medium_is_mounted($phys_m);
+ _mount_phys_medium($phys_m, $o_rel_file, $force_change) or return;
+ _phys_medium_is_mounted($phys_m);
1;
}
-sub phys_medium_is_mounted {
+sub _phys_medium_is_mounted {
my ($phys_m) = @_;
if (member($phys_m->{method}, 'cdrom', 'iso')) {
#- we can't have more than one cdrom mounted at once
@@ -244,16 +244,16 @@ sub phys_medium_is_mounted {
}
}
-sub associate_phys_media {
+sub _associate_phys_media {
my ($all_hds, $main_phys_medium, $hdlists) = @_;
my ($main_name, @other_names) = uniq(map { $_->{name} } @$hdlists);
my @other_phys_media =
$main_phys_medium->{method} eq 'iso' ?
- get_phys_media_iso($all_hds, $main_phys_medium, \@other_names) :
+ _get_phys_media_iso($all_hds, $main_phys_medium, \@other_names) :
$main_phys_medium->{method} eq 'cdrom' ?
- (map { get_phys_media_cdrom($main_phys_medium, $_) } @other_names) :
+ (map { _get_phys_media_cdrom($main_phys_medium, $_) } @other_names) :
();
if (@other_phys_media) {
@@ -278,14 +278,14 @@ sub associate_phys_media {
}
}
-sub get_phys_media_cdrom {
+sub _get_phys_media_cdrom {
my ($main_phys_m, $name) = @_;
#- exactly the same as $main_phys_m, but for {name}, {isMounted} and {real_mntpoint}
+{ %$main_phys_m, name => $name, isMounted => 0, real_mntpoint => undef };
}
-sub iso_phys_media {
+sub _iso_phys_media {
my ($dir_medium, $iso, $rel_path) = @_;
my $mntpoint = "/mnt/$iso";
@@ -302,19 +302,19 @@ sub iso_phys_media {
mntpoint => $mntpoint, rel_path => $rel_path,
};
}
-sub get_phys_media_iso {
+sub _get_phys_media_iso {
my ($all_hds, $main_phys_m, $names) = @_;
- my @ISOs = grep { member($_->{app_id}, @$names) } look_for_ISO_images($main_phys_m->{device});
+ my @ISOs = grep { member($_->{app_id}, @$names) } _look_for_ISO_images($main_phys_m->{device});
map {
- my $m = iso_phys_media($main_phys_m->{loopback_device}, $_->{file}, $main_phys_m->{rel_path});
+ my $m = _iso_phys_media($main_phys_m->{loopback_device}, $_->{file}, $main_phys_m->{rel_path});
$m->{name} = $_->{app_id};
push @{$all_hds->{loopbacks}}, $m;
$m;
} @ISOs;
}
-sub look_for_ISO_images {
+sub _look_for_ISO_images {
my ($main_iso) = @_;
my $iso_dir = dirname($main_iso);
@@ -339,12 +339,12 @@ sub look_for_ISO_images {
}
-sub getFile_media_info {
+sub _getFile_media_info {
my ($packages, $f) = @_;
getFile_(first_medium($packages)->{phys_medium}, $f);
}
-sub open_file_and_size {
+sub _open_file_and_size {
my ($f) = @_;
my $size = -s $f;
my $fh = common::open_file($f) or return;
@@ -370,34 +370,34 @@ sub get_file_and_size {
require install::http;
install::http::get_file_and_size_($f, $phys_m->{url});
} elsif ($f =~ m!^/!) {
- open_file_and_size($f);
+ _open_file_and_size($f);
} elsif ($postinstall_rpms && -e "$postinstall_rpms/$f") {
- open_file_and_size("$postinstall_rpms/$f");
+ _open_file_and_size("$postinstall_rpms/$f");
} else {
my $f2 = path($phys_m, $f);
if (! -f $f2) {
change_phys_medium($phys_m, $f, $::o->{packages});
}
- open_file_and_size($f2);
+ _open_file_and_size($f2);
}
}
sub getAndSaveFile_ {
my ($phys_m, $file, $local) = @_;
my $fh = getFile_($phys_m, $file) or return;
- getAndSaveFile_raw($fh, $local);
+ _getAndSaveFile_raw($fh, $local);
}
-sub getAndSaveFile_progress {
+sub _getAndSaveFile_progress {
my ($in_wait, $msg, $phys_m, $file, $local) = @_;
my ($size, $fh) = get_file_and_size($phys_m, $file) or return;
if ($size) {
- getAndSaveFile_progress_raw($in_wait, $msg, $size, $fh, $local);
+ _getAndSaveFile_progress_raw($in_wait, $msg, $size, $fh, $local);
} else {
- getAndSaveFile_raw($fh, $local);
+ _getAndSaveFile_raw($fh, $local);
}
}
-sub getAndSaveFile_raw {
+sub _getAndSaveFile_raw {
my ($fh, $local) = @_;
local $/ = \ (16 * 1024);
@@ -407,14 +407,14 @@ sub getAndSaveFile_raw {
while (<$fh>) { syswrite($F, $_) or unlink($local), die("getAndSaveFile($local): $!") }
1;
}
-sub getAndSaveFile_progress_raw {
+sub _getAndSaveFile_progress_raw {
my ($in_wait, $msg, $size, $fh, $local) = @_;
unlink $local;
open(my $out, ">$local") or log::l("getAndSaveFile(opening $local): $!"), return;
- print_with_progress($in_wait, $msg, $size, $fh, $out) or unlink($local), die("getAndSaveFile($local): $!");
+ _print_with_progress($in_wait, $msg, $size, $fh, $out) or unlink($local), die("getAndSaveFile($local): $!");
}
-sub print_with_progress {
+sub _print_with_progress {
my ($in_wait, $msg, $size, $in, $out) = @_;
my ($_wait, $wait_message) = $in_wait->wait_message_with_progress_bar(N("Please wait, retrieving file"));
@@ -451,7 +451,7 @@ sub hdlist_on_disk {
urpmidir() . "/hdlist.$m->{fakemedium}.cz";
}
-sub allow_copy_rpms_on_disk {
+sub _allow_copy_rpms_on_disk {
my ($medium, $hdlists) = @_;
$medium->{device} && $medium->{method} ne 'iso' or return;
@@ -470,7 +470,7 @@ sub allow_copy_rpms_on_disk {
}
}
-sub parse_media_cfg {
+sub _parse_media_cfg {
my ($cfg) = @_;
require MDV::Distribconf;
@@ -533,7 +533,7 @@ sub get_media {
my ($dir_url, $iso, $rel_path) = $_->{url} =~ m!(.*)/(.*\.iso):(/.*)! or die "bad media_cfg_isos url $_->{url}";
my $dir_medium = url2mounted_phys_medium($o, $dir_url);
$dir_medium->{options} =~ s/\bnoauto\b,?//;
- my $phys_m = iso_phys_media($dir_medium, $iso, $rel_path);
+ my $phys_m = _iso_phys_media($dir_medium, $iso, $rel_path);
push @{$o->{all_hds}{loopbacks}}, $phys_m;
($suppl_CDs, $copy_rpms_on_disk) = get_media_cfg($o, $phys_m, $packages, $_->{selected_names}, $_->{force_rpmsrate});
} else {
@@ -550,7 +550,7 @@ sub remove_from_fstab {
@{$all_hds->{nfss}} = grep { $_ != $phys_m } @{$all_hds->{nfss}} if $phys_m->{method} eq 'nfs';
}
-sub find_and_add_to_fstab {
+sub _find_and_add_to_fstab {
my ($all_hds, $phys_m, $b_force_mount) = @_;
if (my $existant = find { $_->{device} eq $phys_m->{device} } fs::get::really_all_fstab($all_hds)) {
@@ -580,24 +580,24 @@ sub find_and_add_to_fstab {
sub url2mounted_phys_medium {
my ($o, $url, $o_rel_file, $o_name) = @_;
- my $phys_m = url2phys_medium($o, $url);
+ my $phys_m = _url2phys_medium($o, $url);
$phys_m->{name} = $o_name if $o_name; #- useful for CDs which prompts a name in change_phys_medium
change_phys_medium($phys_m, $o_rel_file, $o->{packages}) or return;
$phys_m;
}
-sub url2phys_medium {
+sub _url2phys_medium {
my ($o, $url) = @_;
my ($method, $path) = $url =~ m!([^:]*)://(.*)! or internal_error("bad url $url");
if ($method eq 'drakx') {
my $m = { %{$o->{stage2_phys_medium}}, is_stage2_phys_medium => 1 };
if ($m->{loopback_device}) {
- $m->{loopback_device} = find_and_add_to_fstab($o->{all_hds}, $m->{loopback_device}, 'force_mount');
+ $m->{loopback_device} = _find_and_add_to_fstab($o->{all_hds}, $m->{loopback_device}, 'force_mount');
}
$m->{url} .= "/$path";
$m->{rel_path} .= "/$path" if $m->{device};
- $m = find_and_add_to_fstab($o->{all_hds}, $m) if $m->{device};
- phys_medium_is_mounted($m);
+ $m = _find_and_add_to_fstab($o->{all_hds}, $m) if $m->{device};
+ _phys_medium_is_mounted($m);
$m;
} elsif ($method eq 'cdrom') {
my $cdrom = first(detect_devices::cdroms());
@@ -605,10 +605,10 @@ sub url2phys_medium {
url => $url, method => $method, fs_type => 'iso9660', device => $cdrom->{device},
rel_path => "/$path",
};
- my $m_ = find_and_add_to_fstab($o->{all_hds}, $m);
+ my $m_ = _find_and_add_to_fstab($o->{all_hds}, $m);
if ($m_->{name}) {
#- we need a new phys medium, different from current CD
- $m_ = get_phys_media_cdrom($m_, '');
+ $m_ = _get_phys_media_cdrom($m_, '');
#- we also need to enforce what we want, especially rel_path
put_in_hash($m_, $m);
}
@@ -620,7 +620,7 @@ sub url2phys_medium {
url => $url, method => $method,
fs_type => 'nfs', device => "$server:$nfs_dir", faked_device => 1,
};
- find_and_add_to_fstab($o->{all_hds}, $m);
+ _find_and_add_to_fstab($o->{all_hds}, $m);
} else {
{ url => $url, method => $method };
}
@@ -631,7 +631,7 @@ sub get_media_cfg {
my ($distribconf, $hdlists);
if (getAndSaveFile_($phys_medium, 'media_info/media.cfg', '/tmp/media.cfg')) {
- ($distribconf, $hdlists) = parse_media_cfg('/tmp/media.cfg');
+ ($distribconf, $hdlists) = _parse_media_cfg('/tmp/media.cfg');
} else {
getAndSaveFile_($phys_medium, 'media_info/hdlists', '/tmp/hdlists')
or die "media.cfg not found";
@@ -648,15 +648,15 @@ sub get_media_cfg {
my $suppl_CDs = exists $o->{supplmedia} ? $o->{supplmedia} : $distribconf->{suppl} || 0;
my $deselectionAllowed = $distribconf->{askmedia} || $o->{askmedia} || 0;
- associate_phys_media($o->{all_hds}, $phys_medium, $hdlists);
+ _associate_phys_media($o->{all_hds}, $phys_medium, $hdlists);
if ($deselectionAllowed && !@{$packages->{media}}) {
- my $allow = allow_copy_rpms_on_disk($phys_medium, $hdlists);
+ my $allow = _allow_copy_rpms_on_disk($phys_medium, $hdlists);
$o->ask_deselect_media__copy_on_disk($hdlists, $allow && \$o->{copy_rpms_on_disk}) if $allow || @$hdlists > 1;
}
foreach my $h (@$hdlists) {
- get_medium($o, $phys_medium, $packages, $h);
+ _get_medium($o, $phys_medium, $packages, $h);
}
log::l("get_media_cfg read " . int(@{$packages->{depslist}}) . " headers");
@@ -678,10 +678,10 @@ sub get_standalone_medium {
my ($in, $phys_m, $packages, $m) = @_;
add2hash($m, { phys_medium => $phys_m, selected => 1, rel_hdlist => 'media_info/hdlist.cz' });
- get_medium($in, $phys_m, $packages, $m);
+ _get_medium($in, $phys_m, $packages, $m);
}
-sub get_medium {
+sub _get_medium {
my ($in_wait, $phys_m, $packages, $m) = @_;
$m->{selected} or log::l("ignoring packages in $m->{rel_hdlist}"), return;
@@ -700,7 +700,7 @@ sub get_medium {
#- for getting header of package during installation.
my $hdlist = hdlist_on_disk($m);
{
- getAndSaveFile_progress($in_wait, N("Downloading file %s...", $m->{rel_hdlist}),
+ _getAndSaveFile_progress($in_wait, N("Downloading file %s...", $m->{rel_hdlist}),
$phys_m, $m->{rel_hdlist}, $hdlist) or die "no $m->{rel_hdlist} found";
}
@@ -710,7 +710,7 @@ sub get_medium {
my $rel_synthesis = $m->{rel_hdlist};
$rel_synthesis =~ s!/hdlist!/synthesis.hdlist! or internal_error("bad {rel_hdlist} $m->{rel_hdlist}");
#- copy existing synthesis file too.
- getAndSaveFile_progress($in_wait, N("Downloading file %s...", $rel_synthesis),
+ _getAndSaveFile_progress($in_wait, N("Downloading file %s...", $rel_synthesis),
$phys_m, $rel_synthesis, $synthesis);
}
@@ -769,7 +769,7 @@ sub get_medium {
#-######################################################################################
#- Post installation RPMS from cdrom only, functions
#-######################################################################################
-sub setup_postinstall_rpms {
+sub _setup_postinstall_rpms {
my ($in, $packages, $current_phys_m) = @_;
$postinstall_rpms and return;
@@ -884,14 +884,14 @@ sub copy_rpms_on_disk {
our $copied_rpms_on_disk = 1;
}
-sub install_urpmi__generate_names {
+sub _install_urpmi__generate_names {
my ($packages, $medium) = @_;
#- build a names file
output("$::prefix/var/lib/urpmi/names.$medium->{fakemedium}",
map { $packages->{depslist}[$_]->name . "\n" } $medium->{start} .. $medium->{end});
}
-sub install_urpmi__generate_synthesis {
+sub _install_urpmi__generate_synthesis {
my ($packages, $medium) = @_;
my $synthesis = "/var/lib/urpmi/synthesis.hdlist.$medium->{fakemedium}.cz";
@@ -948,8 +948,8 @@ sub install_urpmi {
$dir = MDK::Common::File::concat_symlink($dir, $medium->{rpmsdir});
- install_urpmi__generate_names($packages, $medium);
- install_urpmi__generate_synthesis($packages, $medium);
+ _install_urpmi__generate_names($packages, $medium);
+ _install_urpmi__generate_synthesis($packages, $medium);
my ($qname, $qdir) = ($medium->{fakemedium}, $dir);