summaryrefslogtreecommitdiffstats
path: root/help-install/it/main::opt::o_splash.html
diff options
context:
space:
mode:
authorCosmin Humeniuc <cosmin@mandriva.org>2008-09-17 12:53:27 +0000
committerCosmin Humeniuc <cosmin@mandriva.org>2008-09-17 12:53:27 +0000
commita333aed661f17998a8b491871fa8c0239c23a1d6 (patch)
tree02150758eebc7a2f56438fd227cef3d42102c304 /help-install/it/main::opt::o_splash.html
parent336aa7afc8a43ac2abffcf9f2d2e30e592ee4942 (diff)
downloadbootloader-theme-a333aed661f17998a8b491871fa8c0239c23a1d6.tar
bootloader-theme-a333aed661f17998a8b491871fa8c0239c23a1d6.tar.gz
bootloader-theme-a333aed661f17998a8b491871fa8c0239c23a1d6.tar.bz2
bootloader-theme-a333aed661f17998a8b491871fa8c0239c23a1d6.tar.xz
bootloader-theme-a333aed661f17998a8b491871fa8c0239c23a1d6.zip
Updated Romanian translation
Diffstat (limited to 'help-install/it/main::opt::o_splash.html')
0 files changed, 0 insertions, 0 deletions
>58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133
#!/usr/bin/perl

use MDK::Common;
use lib "../perl-install";
use keyboard;

use Config;
Config->import;
my ($arch) = $Config{archname} =~ /(.*)-/;

$tmp = "/tmp/rescue_tmp";
$mnt = "/tmp/rescue_stage2_img";
$mke2fs = "/sbin/mke2fs -q -m 0 -F -s 1";
$rescue = "rescue_stage2";

if ($>) {
    $sudo = "sudo";
    $ENV{PATH} = "/sbin:/usr/sbin:$ENV{PATH}";
}

BEGIN { undef *_; }
sub __ { print @_, "\n"; system(@_); }
sub _ { __ @_; $? and die; }

sub install_raw {
    s|^/|| foreach @_;
    _ "tar c -C / @_ | tar x -C $tmp" if @_;
}
sub install_lib {
    s|^/|| foreach @_;
    _ "tar c -C / --dereference @_ | tar x -C $tmp" if @_;
}

sub install_l {
    my @l = @_;

    @l = uniq(map { chomp_($_) } @l);
    push @l, 
      `ldd @l 2>/dev/null | grep "=>" | sed -e 's/.*=> //' -e 's/ .*//'`;

    @l = uniq(map { chomp_($_) } @l);
    install_raw(grep { !/lib.*\.so/ } @l);
    install_lib(grep {  /lib.*\.so/ } @l);
}

sub installown($$) {
    my ($own, $dir) = @_;
    return if -e "$tmp$dir$own";
    mkdir_p("$tmp$dir");
    _ "cp -a $own $tmp$dir";
}

_ "$sudo rm -rf $tmp" if -e $tmp;
_ "mkdir $tmp";
_ 'find . -name "*~" | xargs rm -f';
foreach (cat_("dirs")) {
    chomp;
    mkdir_p("$tmp$_");
}
_ "cp -a tree/* $tmp";
_ "find $tmp -name 'CVS*' | xargs rm -rf";
_ "perl devices.pl $tmp/dev";

install_raw(keyboard::loadkeys_files());
my %keytable_conflicts;
my @less_important_keytables = qw(am_old am_phonetic no-dvorak fr_CH-latin1);
foreach (keyboard::loadkeys_files()) {
    my ($dir, $fname) = (dirname($_), basename($_));
    my ($name) = $fname =~ /(.*)\.kmap\.gz/ or next;
    next if member($name, @less_important_keytables);
    if (my ($short) = $name =~ m|(.+?)[\W_]|) {
	$keytable_conflicts{$short} and warn("conflict between $keytable_conflicts{$short} and $name for short name $short (choosing the first)\n"), next;
	$keytable_conflicts{$short} = $name;
	# create the short name based on the long one
	symlinkf($fname, "$tmp$dir/$short.kmap.gz");
    }
}

my $perl_version = join ".", unpack "C3", $^V;
@files = map { chomp; s/PERL_VERSION/$perl_version/g; $_ } (cat_("list"), cat_(`../tools/specific_arch list`));
@files = `ls -d @files`; 
$? == 0 or exit 1;

install_l(@files);

foreach (cat_("aliases")) {
    chomp; my ($f, $dest) = split;
    symlink $dest, "$tmp$f";
}

chomp($main = `cat ../all.kernels/.main`);

_ "cp ../all.modules/modules.cz-$main $tmp/modules/modules.cz";
_ "cp ../all.modules/$main/modules.dep $tmp/modules";

installown("drvinst", "/usr/bin");
installown("guessmounts", "/usr/bin");
installown("install_bootloader", "/usr/bin");
if ($arch =~ /^i.86/) {
    installown("restore_ms_boot", "/usr/bin");
}
installown("lsparts", "/usr/bin");
installown("rescue-doc", "/usr/bin");
_ "cd ../mdk-stage1 && make rescue-gui";
installown("../mdk-stage1/rescue-gui", "/usr/bin");

__ "strip $tmp/{lib,bin,sbin}/* $tmp/usr/{bin,sbin}/* 2>/dev/null";

exit 0 if $ARGV[0];

if ($arch =~ /ppc/) {
    #- xfs module on PPC is 4MB! - need room to unpack it
    $size = `du -s $tmp | cut -f1` + 4096; #- add 4MB of free space
} else {
    $size = `du -s $tmp | cut -f1` + 2048; #- add 2MB of free space
}

mkdir_p($mnt);
__ "$sudo umount $rescue 2>/dev/null";

_ "dd if=/dev/zero of=$rescue bs=1k count=$size";
_ "$mke2fs $rescue";
_ "$sudo mount -t ext2 $rescue $mnt -o loop";
_ "rmdir $mnt/lost+found";

_ "$sudo chown -R root.root $tmp";
_ "$sudo cp -a $tmp/* $mnt";
_ "$sudo rm -rf $tmp";

_ "$sudo umount $rescue";
_ "rmdir $mnt";

_ "bzip2 -f -9 $rescue";