summaryrefslogtreecommitdiffstats
path: root/perl-install
diff options
context:
space:
mode:
authorPascal Rigaux <pixel@mandriva.com>1999-07-29 15:18:54 +0000
committerPascal Rigaux <pixel@mandriva.com>1999-07-29 15:18:54 +0000
commit88a07c82cece62903ae68e1e2c482d810bbf8560 (patch)
tree5eee08b842d20f111fc82bba2e42425e253e8a50 /perl-install
parent5dc2835bfbf1f53ad51ba540f4423c22cc94b26c (diff)
downloaddrakx-88a07c82cece62903ae68e1e2c482d810bbf8560.tar
drakx-88a07c82cece62903ae68e1e2c482d810bbf8560.tar.gz
drakx-88a07c82cece62903ae68e1e2c482d810bbf8560.tar.bz2
drakx-88a07c82cece62903ae68e1e2c482d810bbf8560.tar.xz
drakx-88a07c82cece62903ae68e1e2c482d810bbf8560.zip
no_comment
Diffstat (limited to 'perl-install')
-rw-r--r--perl-install/Makefile5
-rw-r--r--perl-install/Xconfigurator.pm450
-rw-r--r--perl-install/Xconfigurator_consts.pm553
-rw-r--r--perl-install/common.pm31
-rw-r--r--perl-install/detect_devices.pm4
-rw-r--r--perl-install/install2.pm19
-rw-r--r--perl-install/install_any.pm3
-rw-r--r--perl-install/install_steps.pm4
-rw-r--r--perl-install/install_steps_stdio.pm148
-rw-r--r--perl-install/interactive.pm53
-rw-r--r--perl-install/interactive_gtk.pm37
-rw-r--r--perl-install/interactive_stdio.pm80
-rw-r--r--perl-install/keyboard.pm2
-rw-r--r--perl-install/log.pm4
-rw-r--r--perl-install/my_gtk.pm38
-rw-r--r--perl-install/partition_table.pm1
-rw-r--r--perl-install/partition_table_raw.pm4
-rw-r--r--perl-install/pkgs.pm24
-rw-r--r--perl-install/resize_fat/fat.pm2
-rw-r--r--perl-install/resize_fat/io.pm2
-rw-r--r--perl-install/share/diskdrake.rc2
21 files changed, 1270 insertions, 196 deletions
diff --git a/perl-install/Makefile b/perl-install/Makefile
index 3eaafc310..30ea0be7f 100644
--- a/perl-install/Makefile
+++ b/perl-install/Makefile
@@ -52,7 +52,7 @@ verify_c:
./verify_c $(PMS)
gendepslist: %: %.cc
- $(CXX) -I/usr/include/rpm $(CFLAGS) $< -lrpm -ldb -lz -o $@
+ $(CXX) -I/usr/include/rpm $(CFLAGS) $< -lrpm -ldb1 -lz -o $@
depslist: gendepslist
./gendepslist $(ROOTDEST)/Mandrake/base/depslist /tmp/rhimage/Mandrake/RPMS/*.rpm
@@ -88,6 +88,7 @@ get_needed_files: $(SO_FILES)
install -d $(DEST)/usr/bin
install -d $(DEST)/usr/lib
install -d $(DEST)/usr/share
+ install -d $(ROOTDEST)/Mandrake/base
install -s $(LOCALFILES) $(DEST)/usr/bin
for i in `cat /tmp/list`; do \
@@ -138,7 +139,7 @@ full_stage2:
stage2:
$(MAKE) install_pms
cd $(ROOTDEST) ; tar cfz /tmp/instimage-full.tgz Mandrake
- cd $(ROOTDEST) ; tar cfz /tmp/instimage-light.tgz Mandrake/base/depslist Mandrake/instimage/usr/[bl]*
+ cd $(ROOTDEST) ; tar cfz /tmp/instimage-light.tgz Mandrake/base/compss Mandrake/instimage/usr/[bl]*
@#rm -rf /mnt/initrd/*
@#cp -a $(DEST)/* /mnt/initrd
diff --git a/perl-install/Xconfigurator.pm b/perl-install/Xconfigurator.pm
new file mode 100644
index 000000000..9749884d2
--- /dev/null
+++ b/perl-install/Xconfigurator.pm
@@ -0,0 +1,450 @@
+package Xconfigurator;
+
+use diagnostics;
+use strict;
+use vars qw($in $resolution_wanted @depths @resolutions @accelservers @allservers %videomemory @ramdac_name @ramdac_id @clockchip_name @clockchip_id %keymap_translate @vsync_range %standard_monitors $intro_text $finalcomment_text $s3_comment $cirrus_comment $probeonlywarning_text $monitorintro_text $hsyncintro_text $vsyncintro_text $XF86firstchunk_text $keyboardsection_start $keyboardsection_part2 $keyboardsection_end $pointersection_text1 $pointersection_text2 $monitorsection_text1 $monitorsection_text2 $monitorsection_text3 $monitorsection_text4 $modelines_text_Trident_TG_96xx $modelines_text $devicesection_text $screensection_text1);
+
+use pci_probing::main;
+use common qw(:common :file);
+use log;
+
+use Xconfigurator_consts;
+
+1;
+
+sub setVirtual($) {
+ my $vt = '';
+ local *C;
+ sysopen C, "/dev/console", 2 or die "failed to open /dev/console: $!";
+ ioctl(C, c::VT_GETSTATE(), $vt) or die "ioctl VT_GETSTATE failed";
+ ioctl(C, c::VT_ACTIVATE(), $_[0]) or die "ioctl VT_ACTIVATE failed";
+ ioctl(C, c::VT_WAITACTIVE(), $_[0]) or die "ioctl VT_WAITACTIVE failed";
+ unpack "S", $vt;
+}
+
+sub readCardsDB {
+ my ($file) = @_;
+ my ($card, %cards);
+
+ local *F;
+ open F, $file or die "file $file not found";
+
+ my $lineno = 0; foreach (<F>) { $lineno++;
+ s/\s+$//;
+ /^#/ and next;
+ /^$/ and next;
+ /^END/ and last;
+
+ my ($cmd, $val) = /(\S+)\s*(.*)/ or log::l("bad line $lineno ($_)"), next;
+
+ my $f = $ {{
+ LINE => sub { push @{$card->{lines}}, $val unless $val eq "VideoRam" },
+ NAME => sub {
+ $cards{$card->{type}} = $card if $card;
+ $card = { type => $val };
+ },
+ SEE => sub {
+ my $c = $cards{$val} or die "Error in database, invalid reference $val at line $lineno";
+
+ push @{$card->{lines}}, @{$c->{lines} || []};
+ add2hash($card->{flags}, $c->{flags});
+ add2hash($card, $c);
+ },
+ CHIPSET => sub { $card->{chipset} = $val;
+ $card->{flags}->{needVideoRam} if member($val, qw(RIVA128));
+ },
+ SERVER => sub { $card->{server} = $val; },
+ RAMDAC => sub { $card->{ramdac} = $val; },
+ DACSPEED => sub { $card->{dacspeed} = $val; },
+ CLOCKCHIP => sub { $card->{clockchip} = $val; $card->{flags}->{noclockprobe} = 1; },
+ NOCLOCKPROBE => sub { $card->{flags}->{noclockprobe} = 1 },
+ UNSUPPORTED => sub { $card->{flags}->{unsupported} = 1 },
+ }}{$cmd};
+
+ $f ? &$f() : log::l("unknown line $lineno ($_)");
+ }
+ push @{$cards{S3}->{lines}}, $s3_comment;
+ push @{$cards{'CL-GD'}->{lines}}, $cirrus_comment;
+
+ # this entry is broken in X11R6 cards db
+ $cards{I128}->{flags}->{noclockprobe} = 1;
+
+ %cards;
+}
+
+sub readMonitorsDB {
+ my ($file) = @_;
+ my %monitors;
+
+ local *F;
+ open F, $file or die "can't open monitors database ($file): ?!";
+ my $lineno = 0; foreach (<F>) {
+ $lineno++;
+ s/\s+$//;
+ /^#/ and next;
+ /^$/ and next;
+
+ my @fields = qw(type bandwidth hsyncrange vsyncrange);
+ my @l = split /\s*;\s*/;
+ @l == @fields or log::l("bad line $lineno ($_)"), next;
+
+ my %l; @l{@fields} = @l;
+ $monitors{$l{type}} = \%l;
+ }
+ while (my ($k, $v) = each %standard_monitors) {
+ $monitors{$k} =
+ $monitors{$v->[0]} =
+ { hsyncrange => $v->[1], vsyncrange => $v->[2] };
+ }
+ %monitors;
+}
+
+sub rewriteInittab {
+ my ($runlevel) = @_;
+ {
+ local (*F, *G);
+ open F, "/etc/inittab" or die "cannot open /etc/inittab: $!";
+ open G, "> /etc/inittab-" or die "cannot write in /etc/inittab-: $!";
+
+ foreach (<F>) {
+ print G /^id:/ ? "id:$runlevel:initdefault:\n" : $_;
+ }
+ }
+ unlink("/etc/inittab");
+ rename("/etc/inittab-", "/etc/inittab");
+}
+
+sub findLegalModes {
+ my ($card) = @_;
+ my $mem = $card->{memory} || 1000000;
+
+ foreach (@resolutions) {
+ my ($h, $v) = split 'x';
+
+ foreach $_ (@depths) {
+ push @{$card->{depth}->{$_}}, [ $h, $v ] if 1024 * $mem >= $h * $v * $_ / 8;
+ }
+ }
+}
+
+sub cardConfigurationAuto() {
+ my $card;
+ if (my ($c) = pci_probing::main::probe('video')) {
+ local $_;
+ ($card->{identifier}, $_) = @$c;
+ $card->{type} = $1 if /Card:(.*)/;
+ $card->{server} = $1 if /Server:(.*)/;
+ }
+ $card;
+}
+
+sub cardConfiguration(;$) {
+ my $card = shift || {};
+
+ my %cards = readCardsDB("/usr/X11R6/lib/X11/Cards");
+
+ add2hash($card, cardConfigurationAuto()) unless $card->{type} || $card->{server} || $::expert;
+ add2hash($card, { type => $in->ask_from_list('', _("Choose a graphic card"), [keys %cards]) }) unless $card->{type} || $card->{server};
+ add2hash($card, $cards{$card->{type}}) if $card->{type};
+ add2hash($card, { vendor => "Unknown", board => "Unknown" });
+ $card;
+}
+
+sub monitorConfiguration(;$) {
+ my $monitor = shift || {};
+
+ my %monitors = readMonitorsDB("MonitorsDB");
+
+ add2hash($monitor, { type => $in->ask_from_list('', _("Choose a monitor"), [keys %monitors]) }) unless $monitor->{type};
+ add2hash($monitor, $monitors{$monitor->{type}});
+ add2hash($monitor, { vendor => "Unknown", model => "Unknown" });
+ $monitor;
+}
+
+sub testConfig($) {
+ my ($o) = @_;
+ my ($resolutions, $clocklines);
+
+ write_XF86Config($o, "/tmp/Xconfig");
+
+ local *F;
+ open F, "/etc/X11/X :9 -probeonly -pn -xf86config /tmp/Xconfig 2>&1 |";
+ foreach (<F>) {
+ #$videomemory = $2 if /(videoram|Video RAM):\s*(\d*)/;
+ # look for clocks
+ push @$clocklines, $1 if /clocks: (.*)/ && !/(pixel |num)clocks:/;
+
+ push @$resolutions, [ $1, $2 ] if /: Mode "(\d+)x(\d+)": mode clock/;
+ }
+ close F or die "X probeonly failed";
+
+ ($resolutions, $clocklines);
+}
+
+sub autoResolutions($) {
+ my ($o) = @_;
+ my $card = $o->{card};
+
+ my $hres_wanted = first(split 'x', $o->{resolution_wanted});
+
+ # For the mono and vga16 server, no further configuration is required.
+ return if member($card->{server}, "Mono", "VGA16");
+
+ # Configure the modes order.
+ my ($ok, $best);
+ foreach (@depths) {
+ local $card->{default_depth} = $_;
+
+ my ($resolutions, $clocklines) = eval { testConfig($o) };
+ if ($@) {
+ delete $card->{depth}->{$_};
+ } else {
+ $card->{clocklines} ||= $clocklines unless $card->{flags}->{noclockprobe};
+ $card->{depth}->{$_} = $resolutions;
+
+ $ok ||= $resolutions;
+ my ($b) = sort { $b->[0] <=> $a->[0] } @$resolutions;
+
+ # require $resolution_wanted, no matter what bpp this requires
+ $best = $_ if $b->[0] >= $hres_wanted;
+ }
+ }
+ $ok or die "no valid modes";
+
+ $card->{default_depth} = $best;
+}
+
+
+sub moreCardConfiguration {
+ my ($o) = @_;
+ my $card = $o->{card};
+
+ $card->{vendor} ||= "Unknown";
+ $card->{model} ||= "Unknown";
+
+ unless ($card->{type}) {
+ $card->{flags}->{noclockprobe} = member($card->{server}, qw(I128 S3 S3V Mach64));
+ }
+
+ my $manual;
+ # some of these guys hate to be poked
+ # if we dont know then its at the user's discretion
+ #my $manual =
+ # $card->{server} =~ /^(TGA|Mach32)/ ||
+ # $card->{name} =~ /^Riva 128/ ||
+ # $card->{chipset} =~ /^(RIVA128|mgag)/ ||
+ # $::expert;
+ #
+ #my $unknown =
+ # member($card->{server}, qw(S3 S3V I128 Mach64)) ||
+ # member($card->{type},
+ # "Matrox Millennium (MGA)",
+ # "Matrox Millennium II",
+ # "Matrox Millennium II AGP",
+ # "Matrox Mystique",
+ # "Matrox Mystique",
+ # "S3",
+ # "S3V",
+ # "I128",
+ # ) ||
+ # $card->{type} =~ /S3 ViRGE/;
+ #
+ #$unknown and $manual ||= !$in->ask_okcancel('', [ _("I can try to autodetect information about graphic card, but it may freeze :("),
+ # _("Do you want to try?") ]);
+
+ $card->{flags}->{needVideoRam} and
+ $card->{memory} ||=
+ $videomemory{$in->ask_from_list_('',
+ _("Give your graphic card memory size"),
+ [ sort { $videomemory{$a} <=> $videomemory{$b} }
+ keys %videomemory])};
+
+ findLegalModes($o->{card});
+
+ unless ($manual || $::expert) {
+ # swith to virtual console 1 (hopefully not X :)
+ my $vt = setVirtual(1);
+
+ autoMemoryAndClocksline($o);
+ autoResolutions($o);
+
+ # restore the virtual console
+ setVirtual($vt);
+ }
+}
+
+
+# * Create the XF86Config file.
+sub write_XF86Config {
+ my ($o, $file) = @_;
+ my $O;
+
+ local *F;
+ open F, ">$file" or die "can't write XF86Config in $file: $!";
+
+ print F $XF86firstchunk_text;
+
+ # Write keyboard section.
+ $O = $o->{keyboard};
+ print F $keyboardsection_start;
+
+ print F " RightAlt ", ($O->{altmeta} ? "ModeShift" : "Meta"), "\n";
+ print F $keyboardsection_part2;
+ print F qq( XkbLayout "$O->{xkb_keymap}"\n);
+ print F $keyboardsection_end;
+
+ # Write pointer section.
+ $O = $o->{mouse};
+ print F $pointersection_text1;
+ print F qq( Protocol "$O->{type}"\n);
+ print F qq( Device "$O->{device}"\n);
+ # this will enable the "wheel" or "knob" functionality if the mouse supports it
+ print F " ZAxisMapping 4 5\n" if
+ member($O->{type}, qw(IntelliMouse IMPS/2 ThinkingMousePS/2 NetScrollPS/2 NetMousePS/2 MouseManPlusPS/2));
+
+ print F $pointersection_text2;
+ print F "#" unless $O->{emulate3buttons};
+ print F " Emulate3Buttons\n";
+ print F "#" unless $O->{emulate3buttons};
+ print F " Emulate3Timeout 50\n\n";
+ print F "# ChordMiddle is an option for some 3-button Logitech mice\n\n";
+ print F "#" unless $O->{chordmiddle};
+ print F " ChordMiddle\n\n";
+ print F " ClearDTR\n" if $O->{cleardtrrts};
+ print F " ClearRTS\n\n" if $O->{cleardtrrts};
+ print F "EndSection\n\n\n";
+
+ # Write monitor section.
+ $O = $o->{monitor};
+ print F $monitorsection_text1;
+ print F qq( Identifier "$O->{type}"\n);
+ print F qq( VendorName "$O->{vendor}"\n);
+ print F qq( ModelName "$O->{model}"\n);
+ print F "\n";
+ print F $monitorsection_text2;
+ print F qq( HorizSync $O->{hsyncrange}\n);
+ print F "\n";
+ print F $monitorsection_text3;
+ print F qq( VertRefresh $O->{vsyncrange}\n);
+ print F "\n";
+ print F $monitorsection_text4;
+ print F ($o->{card}->{type} eq "TG 96" ?
+ $modelines_text_Trident_TG_96xx :
+ $modelines_text);
+ print F "EndSection\n\n\n";
+
+ # Write Device section.
+ $O = $o->{card};
+ print F $devicesection_text;
+ print F qq(Section "Device"\n);
+ print F qq( Identifier "$O->{type}"\n);
+ print F qq( VendorName "$O->{vendor}"\n);
+ print F qq( BoardName "$O->{board}"\n);
+
+ print F "#" if $O->{memory} && !$O->{flags}->{needVideoRam};
+ print F " VideoRam $O->{memory}\n" if $O->{memory};
+
+ print F map { " $_\n" } @{$O->{lines}};
+
+ print F qq( Ramdac "$O->{ramdac}"\n) if $O->{ramdac};
+ print F qq( Dacspeed "$O->{dacspeed}"\n) if $O->{dacspeed};
+
+ if ($O->{clockchip}) {
+ print F qq( Clockchip "$O->{clockchip}"\n);
+ } else {
+ print F " # Clock lines\n";
+ print F " Clocks $_\n" foreach (@{$O->{clocklines}});
+ }
+ print F "EndSection\n\n\n";
+
+ # Write Screen sections.
+ print F $screensection_text1;
+
+ my $screen = sub {
+ my ($server, $defdepth, $device, $depths) = @_;
+ print F qq(
+
+Section "Screen"
+ Driver "$server"
+ Device "$device"
+ Monitor "$o->{monitor}->{type}"
+);
+ print F " DefaultColorDepth $defdepth\n" if $defdepth;
+
+ foreach (sort { $a <=> $b } keys %$depths) {
+ my $m = join(" ",
+ map { '"' . join("x", @$_) . '"' }
+ sort { $b->[0] <=> $a->[0] } @{$depths->{$_}});
+ print F qq( Subsection "Display"\n);
+ print F qq( Depth $_\n) if $_;
+ print F qq( Modes $m\n);
+ print F qq( ViewPort 0 0\n);
+ print F qq( EndSubsection\n);
+ }
+ print F "EndSection\n";
+ };
+
+ # SVGA screen section.
+ print F qq(
+# The Colour SVGA server
+);
+
+ if ($O->{server} eq 'SVGA') {
+ &$screen("svga", $O->{default_depth}, $O->{type}, $O->{depth});
+ } else {
+ &$screen("svga", '', "Generic VGA", { 8 => [[ 320, 200 ]] });
+ }
+
+ &$screen("vga16", '',
+ (member($O->{server}, "Mono", "VGA16") ? $O->{type} : "Generic VGA"),
+ { '' => [[ 640, 480 ], [ 800, 600 ]]});
+
+ &$screen("vga2", '',
+ (member($O->{server}, "Mono", "VGA16") ? $O->{type} : "Generic VGA"),
+ { '' => [[ 640, 480 ], [ 800, 600 ]]});
+
+ &$screen("accel", $O->{default_depth}, $O->{type}, $O->{depth});
+}
+
+sub XF86check_link {
+ my ($void) = @_;
+
+ my $f = "/etc/X11/XF86Config";
+ touch($f);
+
+ my $l = "/usr/X11R6/lib/X11/XF86Config";
+
+ if (-e $l && (stat($f))[1] != (stat($l))[1]) { # compare the inode, must be the sames
+ -e $l and unlink($l) || die "can't remove bad $l";
+ symlink "../../../../etc/X11/XF86Config", $l;
+ }
+}
+
+# * Program entry point.
+sub main {
+ my ($default, $interact) = @_;
+ my $o = $default;
+ $in = $interact;
+
+ $o->{resolution_wanted} ||= $resolution_wanted;
+
+ XF86check_link();
+
+ $o->{card} = cardConfiguration($o->{card});
+
+ unless ($::testing) {
+ my $prog = "/usr/X11R6/bin/XF86_$o->{card}->{server}";
+ -x $prog or die "server $o->{card}->{server} is not available (should be in $prog)";
+ unlink("/etc/X11/X");
+ symlink("../../$prog", "/etc/X11/X");
+ }
+
+ $o->{monitor} = monitorConfiguration($o->{monitor});
+
+ moreCardConfiguration($o);
+
+ write_XF86Config($o, "/tmp/Xconfig");
+
+ # Success
+ rewriteInittab(rc & STARTX ? 5 : 3);
+}
diff --git a/perl-install/Xconfigurator_consts.pm b/perl-install/Xconfigurator_consts.pm
new file mode 100644
index 000000000..976f65d9e
--- /dev/null
+++ b/perl-install/Xconfigurator_consts.pm
@@ -0,0 +1,553 @@
+use common qw(:common);
+
+%keymap_translate = (
+ uk => "gb",
+);
+
+@depths = qw(8 15 16 24 32);
+
+$resolution_wanted = "1024x768";
+@resolutions = qw(640x480 800x600 1024x768 1152x864 1280x1024 1600x1200);
+
+
+@accelservers = qw(S3 Mach32 Mach8 8514 P9000 AGX W32 Mach64 I128 S3V 3DLabs);
+@allservers = (qw(Mono VGA16 SVGA), @accelservers);
+
+%videomemory = (
+ __("256 kb") => 256,
+ __("512 kb") => 512,
+ __("1 mb") => 1024,
+ __("2 mb") => 2048,
+ __("4 mb") => 4096,
+ __("8 mb") => 8192,
+ __("16 mb or more") => 16384,
+);
+
+%standard_monitors = (
+ __("Standard VGA, 640x480 in 60 Hz") => [ '640x480@60', "31.5" , "60" ],
+ __("Super VGA, 800x600 in 56 Hz") => [ '800x600@56', "31.5-35.1" , "55-60" ],
+ __("8514 Compatible, 1024x768 in 87 Hz interlaced (no 800x600)") => [ '8514 compatible', "31.5,35.5" , "60,70,87" ],
+ __("Super VGA, 1024x768 in 87 Hz interlaced, 800x600 in 56 Hz") => [ '1024x768@87i', "31.5,35.15,35.5" , "55-90" ],
+ __("Extended Super VGA, 800x600 in 60 Hz, 640x480 in 72 Hz") => [ '800x600@60', "31.5-37.9" , "55-90" ],
+ __("Non-Interlaced SVGA, 1024x768 in 60 Hz, 800x600 in 72 Hz") => [ '1024x768@60', "31.5-48.5" , "55-90" ],
+ __("High Frequency SVGA, 1024x768 in 70 Hz") => [ '1024x768@70', "31.5-57.0" , "50-90" ],
+ __("Multi-frequency that can do 1280x1024 in 60 Hz") => [ '1280x1024@60', "31.5-64.3" , "50-90" ],
+ __("Multi-frequency that can do 1280x1024 in 74 Hz") => [ '1280x1024@74', "31.5-79.0" , "50-100" ],
+ __("Multi-frequency that can do 1280x1024 in 76 Hz") => [ '1280x1024@76', "31.5-82.0" , "40-100" ],
+ __("Monitor that can do 1600x1200 in 70 Hz") => [ '1600x1200@70', "31.5-88.0" , "50-120" ],
+ __("Monitor that can do 1600x1200 in 76 Hz") => [ '1600x1200@76', "31.5-94.0" , "50-160" ],
+);
+
+# * Screen/video card configuration.
+%ramdacs = (
+ __("No RAMDAC Setting (recommended)") => '',
+ __("AT&T 20C490 (S3 and AGX servers, ARK driver)"), => 'att20c490',
+ __("AT&T 20C498/21C498/22C498 (S3, autodetected)"), => 'att20c498',
+ __("AT&T 20C409/20C499 (S3, autodetected)"), => 'att20c409',
+ __("AT&T 20C505 (S3)"), => 'att20c505',
+ __("BrookTree BT481 (AGX)"), => 'bt481',
+ __("BrookTree BT482 (AGX)"), => 'bt482',
+ __("BrookTree BT485/9485 (S3)"), => 'bt485',
+ __("Sierra SC15025 (S3, AGX)"), => 'sc15025',
+ __("S3 GenDAC (86C708) (autodetected)"), => 's3gendac',
+ __("S3 SDAC (86C716) (autodetected)"), => 's3_sdac',
+ __("STG-1700 (S3, autodetected)"), => 'stg1700',
+ __("STG-1703 (S3, autodetected)"), => 'stg1703',
+ __("TI 3020 (S3)"), => 'ti3020',
+ __("TI 3025 (S3, autodetected)"), => 'ti3025',
+ __("TI 3026 (S3, autodetected)"), => 'ti3026',
+ __("IBM RGB 514 (S3, autodetected)"), => 'ibm_rgb514',
+ __("IBM RGB 524 (S3, autodetected)"), => 'ibm_rgb524',
+ __("IBM RGB 525 (S3, autodetected)"), => 'ibm_rgb525',
+ __("IBM RGB 526 (S3)"), => 'ibm_rgb526',
+ __("IBM RGB 528 (S3, autodetected)"), => 'ibm_rgb528',
+ __("ICS5342 (S3, ARK)"), => 'ics5342',
+ __("ICS5341 (W32)"), => 'ics5341',
+ __("IC Works w30C516 ZoomDac (ARK)"), => 'zoomdac',
+ __("Normal DAC"), => 'normal',
+);
+
+@clockchip_name = (
+ __("No Clockchip Setting (recommended)") => '',
+ __("Chrontel 8391") => 'ch8391',
+ __("ICD2061A and compatibles (ICS9161A => DCS2824)") => 'icd2061a',
+ __("ICS2595") => 'ics2595',
+ __("ICS5342 (similar to SDAC, but not completely compatible)") => 'ics5342',
+ __("ICS5341") => 'ics5341',
+ __("S3 GenDAC (86C708) and ICS5300 (autodetected)") => 's3gendac',
+ __("S3 SDAC (86C716)") => 's3_sdac',
+ __("STG 1703 (autodetected)") => 'stg1703',
+ __("Sierra SC11412") => 'sc11412',
+ __("TI 3025 (autodetected)") => 'ti3025',
+ __("TI 3026 (autodetected)") => 'ti3026',
+ __("IBM RGB 51x/52x (autodetected)") => 'ibm_rgb5xx',
+);
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+$intro_text = "
+This program will create a basic XF86Config file, based on menu selections you make.
+
+The XF86Config file usually resides in /usr/X11R6/lib/X11 or /etc/X11. A
+sample XF86Config file is supplied with XFree86; it is configured for a
+standard VGA card and monitor with 640x480 resolution.
+
+You can either take the sample XF86Config as a base and edit it for your
+configuration, or let this program produce a base XF86Config file for your
+configuration and fine-tune it. Refer to /usr/X11R6/lib/X11/doc/README.Config
+for a detailed overview of the configuration process.
+
+For accelerated servers (including accelerated drivers in the SVGA server),
+there are many chipset and card-specific options and settings. This program
+does not know about these. On some configurations some of these settings must
+be specified. Refer to the server man pages and chipset-specific READMEs.
+
+Before continuing with this program, make sure you know the chipset and
+amount of video memory on your video card. SuperProbe can help with this.
+It is also helpful if you know what server you want to run.";
+
+$finalcomment_text = "
+configuration file has been written. Take a look at it before running 'startx'.
+Note that the XF86Config file must be in one of the directories searched by the
+server (e.g. /etc/X11/XF86Config) in order to be used. Within the server press
+ctrl, alt and '+' simultaneously to cycle video resolutions. Pressing ctrl, alt
+and backspace simultaneously immediately exits the server (use if the monitor
+doesn't sync for a particular mode).
+
+For further configuration, refer to /usr/X11R6/lib/X11/doc/README.Config.
+";
+
+$s3_comment = '
+# Use Option "nolinear" if the server doesn\'t start up correctly
+# (this avoids the linear framebuffer probe). If that fails try
+# option \"nomemaccess\".
+#
+# Refer to /usr/X11R6/lib/doc/README.S3, and the XF86_S3 man page.
+';
+
+$cirrus_comment = '
+# Use Option \"no_bitblt\" if you have graphics problems. If that fails
+# try Option \"noaccel\".
+# Refer to /usr/X11R6/lib/doc/README.cirrus.
+# To allow linear addressing, uncomment the Option line and the
+# address that the card maps the framebuffer to.
+';
+
+$probeonlywarning_text = '
+It is possible that the hardware detection routines in the server some how
+cause the system to crash and the screen to remain blank. If this is the
+case, skip this step the next time. The server may need a
+Ramdac, ClockChip or special option (e.g. "nolinear" for S3) to probe
+and start-up correctly.
+';
+
+$monitorintro_text = __('
+Now we want to set the specifications of the monitor. The two critical
+parameters are the vertical refresh rate, which is the rate at which the
+the whole screen is refreshed, and most importantly the horizontal sync rate,
+which is the rate at which scanlines are displayed.
+
+The valid range for horizontal sync and vertical sync should be documented
+in the manual of your monitor. If in doubt, check the monitor database
+/usr/X11R6/lib/X11/doc/Monitors to see if your monitor is there.
+');
+
+$hsyncintro_text = __('
+You must indicate the horizontal sync range of your monitor. You can either
+select one of the predefined ranges below that correspond to industry-
+standard monitor types, or give a specific range.
+
+It is VERY IMPORTANT that you do not specify a monitor type with a horizontal
+sync range that is beyond the capabilities of your monitor. If in doubt,
+choose a conservative setting.
+');
+
+$vsyncintro_text = __('
+You must indicate the vertical sync range of your monitor. You can either
+select one of the predefined ranges below that correspond to industry-
+standard monitor types, or give a specific range. For interlaced modes,
+the number that counts is the high one (e.g. 87 Hz rather than 43 Hz).
+');
+
+$XF86firstchunk_text = '
+# File generated by XConfigurator.
+
+# **********************************************************************
+# Refer to the XF86Config(4/5) man page for details about the format of
+# this file.
+# **********************************************************************
+
+# **********************************************************************
+# Files section. This allows default font and rgb paths to be set
+# **********************************************************************
+
+Section "Files"
+
+# The location of the RGB database. Note, this is the name of the
+# file minus the extension (like ".txt" or ".db"). There is normally
+# no need to change the default.
+
+ RgbPath "/usr/X11R6/lib/X11/rgb"
+
+# Multiple FontPath entries are allowed (they are concatenated together)
+# By default, Red Hat 6.0 and later now use a font server independent of
+# the X server to render fonts.
+
+ FontPath "unix/:-1"
+
+EndSection
+
+# **********************************************************************
+# Server flags section.
+# **********************************************************************
+
+Section "ServerFlags"
+
+ # Uncomment this to cause a core dump at the spot where a signal is
+ # received. This may leave the console in an unusable state, but may
+ # provide a better stack trace in the core dump to aid in debugging
+ #NoTrapSignals
+
+ # Uncomment this to disable the <Crtl><Alt><BS> server abort sequence
+ # This allows clients to receive this key event.
+ #DontZap
+
+ # Uncomment this to disable the <Crtl><Alt><KP_+>/<KP_-> mode switching
+ # sequences. This allows clients to receive these key events.
+ #DontZoom
+
+EndSection
+
+# **********************************************************************
+# Input devices
+# **********************************************************************
+';
+
+$keyboardsection_start = '
+# **********************************************************************
+# Keyboard section
+# **********************************************************************
+
+Section "Keyboard"
+
+ Protocol "Standard"
+
+ # when using XQUEUE, comment out the above line, and uncomment the
+ # following line
+ #Protocol "Xqueue"
+
+ AutoRepeat 500 5
+
+ # Let the server do the NumLock processing. This should only be
+ # required when using pre-R6 clients
+ #ServerNumLock
+
+ # Specify which keyboard LEDs can be user-controlled (eg, with xset(1))
+ #Xleds 1 2 3
+
+ #To set the LeftAlt to Meta, RightAlt key to ModeShift,
+ #RightCtl key to Compose, and ScrollLock key to ModeLock:
+
+ LeftAlt Meta
+';
+
+$keyboardsection_part2 = '
+ ScrollLock Compose
+ RightCtl Control
+
+# To disable the XKEYBOARD extension, uncomment XkbDisable.
+
+# XkbDisable
+
+# To customise the XKB settings to suit your keyboard, modify the
+# lines below (which are the defaults). For example, for a non-U.S.
+# keyboard, you will probably want to use:
+# XkbModel "pc102"
+# If you have a US Microsoft Natural keyboard, you can use:
+# XkbModel "microsoft"
+#
+# Then to change the language, change the Layout setting.
+# For example, a german layout can be obtained with:
+# XkbLayout "de"
+# or:
+# XkbLayout "de"
+# XkbVariant "nodeadkeys"
+#
+# If you\'d like to switch the positions of your capslock and
+# control keys, use:
+# XkbOptions "ctrl:swapcaps"
+
+# These are the default XKB settings for XFree86
+# XkbRules "xfree86"
+# XkbModel "pc101"
+# XkbLayout "us"
+# XkbVariant ""
+# XkbOptions ""
+
+ XkbKeycodes "xfree86"
+ XkbTypes "default"
+ XkbCompat "default"
+ XkbSymbols "us(pc101)"
+ XkbGeometry "pc"
+ XkbRules "xfree86"
+ XkbModel "pc101"
+';
+
+$keyboardsection_end = '
+EndSection
+';
+
+$pointersection_text1 = '
+# **********************************************************************
+# Pointer section
+# **********************************************************************
+
+Section "Pointer"
+';
+
+$pointersection_text2 = '
+
+# When using XQUEUE, comment out the above two lines, and uncomment
+# the following line.
+
+# Protocol "Xqueue"
+
+# Baudrate and SampleRate are only for some Logitech mice
+
+# BaudRate 9600
+# SampleRate 150
+
+# Emulate3Buttons is an option for 2-button Microsoft mice
+# Emulate3Timeout is the timeout in milliseconds (default is 50ms)
+';
+
+$monitorsection_text1 = '
+# **********************************************************************
+# Monitor section
+# **********************************************************************
+
+# Any number of monitor sections may be present
+
+Section "Monitor"
+';
+
+$monitorsection_text2 = '
+# HorizSync is in kHz unless units are specified.
+# HorizSync may be a comma separated list of discrete values, or a
+# comma separated list of ranges of values.
+# NOTE: THE VALUES HERE ARE EXAMPLES ONLY. REFER TO YOUR MONITOR\'S
+# USER MANUAL FOR THE CORRECT NUMBERS.
+';
+
+$monitorsection_text3 = '
+# VertRefresh is in Hz unless units are specified.
+# VertRefresh may be a comma separated list of discrete values, or a
+# comma separated list of ranges of values.
+# NOTE: THE VALUES HERE ARE EXAMPLES ONLY. REFER TO YOUR MONITOR\'S
+# USER MANUAL FOR THE CORRECT NUMBERS.
+';
+
+$monitorsection_text4 = '
+# Modes can be specified in two formats. A compact one-line format, or
+# a multi-line format.
+
+# These two are equivalent
+
+# ModeLine "1024x768i" 45 1024 1048 1208 1264 768 776 784 817 Interlace
+
+# Mode "1024x768i"
+# DotClock 45
+# HTimings 1024 1048 1208 1264
+# VTimings 768 776 784 817
+# Flags "Interlace"
+# EndMode
+';
+
+$modelines_text_Trident_TG_96xx = '
+# This is a set of standard mode timings. Modes that are out of monitor spec
+# are automatically deleted by the server (provided the HorizSync and
+# VertRefresh lines are correct), so there\'s no immediate need to
+# delete mode timings (unless particular mode timings don\'t work on your
+# monitor). With these modes, the best standard mode that your monitor
+# and video card can support for a given resolution is automatically
+# used.
+
+# These are special modelines for Trident Providia 9685. It is for VA Linux
+# systems only.
+# 640x480 @ 72 Hz, 36.5 kHz hsync
+Modeline "640x480" 31.5 640 680 720 864 480 488 491 521
+# 800x600 @ 72 Hz, 48.0 kHz hsync
+Modeline "800x600" 50 800 856 976 1040 600 637 643 666 +hsync +vsync
+# 1024x768 @ 60 Hz, 48.4 kHz hsync
+#Modeline "1024x768" 65 1024 1032 1176 1344 768 771 777 806 -hsync -vsync
+# 1024x768 @ 70 Hz, 56.5 kHz hsync
+Modeline "1024x768" 75 1024 1048 1184 1328 768 771 777 806 -hsync -vsync
+';
+$modelines_text = '
+# This is a set of standard mode timings. Modes that are out of monitor spec
+# are automatically deleted by the server (provided the HorizSync and
+# VertRefresh lines are correct), so there\'s no immediate need to
+# delete mode timings (unless particular mode timings don\'t work on your
+# monitor). With these modes, the best standard mode that your monitor
+# and video card can support for a given resolution is automatically
+# used.
+
+# 640x400 @ 70 Hz, 31.5 kHz hsync
+Modeline "640x400" 25.175 640 664 760 800 400 409 411 450
+# 640x480 @ 60 Hz, 31.5 kHz hsync
+Modeline "640x480" 25.175 640 664 760 800 480 491 493 525
+# 800x600 @ 56 Hz, 35.15 kHz hsync
+ModeLine "800x600" 36 800 824 896 1024 600 601 603 625
+# 1024x768 @ 87 Hz interlaced, 35.5 kHz hsync
+Modeline "1024x768" 44.9 1024 1048 1208 1264 768 776 784 817 Interlace
+
+# 640x400 @ 85 Hz, 37.86 kHz hsync
+Modeline "640x400" 31.5 640 672 736 832 400 401 404 445 -HSync +VSync
+# 640x480 @ 72 Hz, 36.5 kHz hsync
+Modeline "640x480" 31.5 640 680 720 864 480 488 491 521
+# 640x480 @ 75 Hz, 37.50 kHz hsync
+ModeLine "640x480" 31.5 640 656 720 840 480 481 484 500 -HSync -VSync
+# 800x600 @ 60 Hz, 37.8 kHz hsync
+Modeline "800x600" 40 800 840 968 1056 600 601 605 628 +hsync +vsync
+
+# 640x480 @ 85 Hz, 43.27 kHz hsync
+Modeline "640x480" 36 640 696 752 832 480 481 484 509 -HSync -VSync
+# 1152x864 @ 89 Hz interlaced, 44 kHz hsync
+ModeLine "1152x864" 65 1152 1168 1384 1480 864 865 875 985 Interlace
+
+# 800x600 @ 72 Hz, 48.0 kHz hsync
+Modeline "800x600" 50 800 856 976 1040 600 637 643 666 +hsync +vsync
+# 1024x768 @ 60 Hz, 48.4 kHz hsync
+Modeline "1024x768" 65 1024 1032 1176 1344 768 771 777 806 -hsync -vsync
+
+# 640x480 @ 100 Hz, 53.01 kHz hsync
+Modeline "640x480" 45.8 640 672 768 864 480 488 494 530 -HSync -VSync
+# 1152x864 @ 60 Hz, 53.5 kHz hsync
+Modeline "1152x864" 89.9 1152 1216 1472 1680 864 868 876 892 -HSync -VSync
+# 800x600 @ 85 Hz, 55.84 kHz hsync
+Modeline "800x600" 60.75 800 864 928 1088 600 616 621 657 -HSync -VSync
+
+# 1024x768 @ 70 Hz, 56.5 kHz hsync
+Modeline "1024x768" 75 1024 1048 1184 1328 768 771 777 806 -hsync -vsync
+# 1280x1024 @ 87 Hz interlaced, 51 kHz hsync
+Modeline "1280x1024" 80 1280 1296 1512 1568 1024 1025 1037 1165 Interlace
+
+# 800x600 @ 100 Hz, 64.02 kHz hsync
+Modeline "800x600" 69.65 800 864 928 1088 600 604 610 640 -HSync -VSync
+# 1024x768 @ 76 Hz, 62.5 kHz hsync
+Modeline "1024x768" 85 1024 1032 1152 1360 768 784 787 823
+# 1152x864 @ 70 Hz, 62.4 kHz hsync
+Modeline "1152x864" 92 1152 1208 1368 1474 864 865 875 895
+# 1280x1024 @ 61 Hz, 64.2 kHz hsync
+Modeline "1280x1024" 110 1280 1328 1512 1712 1024 1025 1028 1054
+
+# 1024x768 @ 85 Hz, 70.24 kHz hsync
+Modeline "1024x768" 98.9 1024 1056 1216 1408 768 782 788 822 -HSync -VSync
+# 1152x864 @ 78 Hz, 70.8 kHz hsync
+Modeline "1152x864" 110 1152 1240 1324 1552 864 864 876 908
+
+# 1280x1024 @ 70 Hz, 74.59 kHz hsync
+Modeline "1280x1024" 126.5 1280 1312 1472 1696 1024 1032 1040 1068 -HSync -VSync
+# 1600x1200 @ 60Hz, 75.00 kHz hsync
+Modeline "1600x1200" 162 1600 1664 1856 2160 1200 1201 1204 1250 +HSync +VSync
+# 1152x864 @ 84 Hz, 76.0 kHz hsync
+Modeline "1152x864" 135 1152 1464 1592 1776 864 864 876 908
+
+# 1280x1024 @ 74 Hz, 78.85 kHz hsync
+Modeline "1280x1024" 135 1280 1312 1456 1712 1024 1027 1030 1064
+
+# 1024x768 @ 100Hz, 80.21 kHz hsync
+Modeline "1024x768" 115.5 1024 1056 1248 1440 768 771 781 802 -HSync -VSync
+# 1280x1024 @ 76 Hz, 81.13 kHz hsync
+Modeline "1280x1024" 135 1280 1312 1416 1664 1024 1027 1030 1064
+
+# 1600x1200 @ 70 Hz, 87.50 kHz hsync
+Modeline "1600x1200" 189 1600 1664 1856 2160 1200 1201 1204 1250 -HSync -VSync
+# 1152x864 @ 100 Hz, 89.62 kHz hsync
+Modeline "1152x864" 137.65 1152 1184 1312 1536 864 866 885 902 -HSync -VSync
+# 1280x1024 @ 85 Hz, 91.15 kHz hsync
+Modeline "1280x1024" 157.5 1280 1344 1504 1728 1024 1025 1028 1072 +HSync +VSync
+# 1600x1200 @ 75 Hz, 93.75 kHz hsync
+Modeline "1600x1200" 202.5 1600 1664 1856 2160 1200 1201 1204 1250 +HSync +VSync
+# 1600x1200 @ 85 Hz, 105.77 kHz hsync
+Modeline "1600x1200" 220 1600 1616 1808 2080 1200 1204 1207 1244 +HSync +VSync
+# 1280x1024 @ 100 Hz, 107.16 kHz hsync
+Modeline "1280x1024" 181.75 1280 1312 1440 1696 1024 1031 1046 1072 -HSync -VSync
+
+# 1800x1440 @ 64Hz, 96.15 kHz hsync
+ModeLine "1800X1440" 230 1800 1896 2088 2392 1440 1441 1444 1490 +HSync +VSync
+# 1800x1440 @ 70Hz, 104.52 kHz hsync
+ModeLine "1800X1440" 250 1800 1896 2088 2392 1440 1441 1444 1490 +HSync +VSync
+
+# 512x384 @ 78 Hz, 31.50 kHz hsync
+Modeline "512x384" 20.160 512 528 592 640 384 385 388 404 -HSync -VSync
+# 512x384 @ 85 Hz, 34.38 kHz hsync
+Modeline "512x384" 22 512 528 592 640 384 385 388 404 -HSync -VSync
+
+# Low-res Doublescan modes
+# If your chipset does not support doublescan, you get a \'squashed\'
+# resolution like 320x400.
+
+# 320x200 @ 70 Hz, 31.5 kHz hsync, 8:5 aspect ratio
+Modeline "320x200" 12.588 320 336 384 400 200 204 205 225 Doublescan
+# 320x240 @ 60 Hz, 31.5 kHz hsync, 4:3 aspect ratio
+Modeline "320x240" 12.588 320 336 384 400 240 245 246 262 Doublescan
+# 320x240 @ 72 Hz, 36.5 kHz hsync
+Modeline "320x240" 15.750 320 336 384 400 240 244 246 262 Doublescan
+# 400x300 @ 56 Hz, 35.2 kHz hsync, 4:3 aspect ratio
+ModeLine "400x300" 18 400 416 448 512 300 301 302 312 Doublescan
+# 400x300 @ 60 Hz, 37.8 kHz hsync
+Modeline "400x300" 20 400 416 480 528 300 301 303 314 Doublescan
+# 400x300 @ 72 Hz, 48.0 kHz hsync
+Modeline "400x300" 25 400 424 488 520 300 319 322 333 Doublescan
+# 480x300 @ 56 Hz, 35.2 kHz hsync, 8:5 aspect ratio
+ModeLine "480x300" 21.656 480 496 536 616 300 301 302 312 Doublescan
+# 480x300 @ 60 Hz, 37.8 kHz hsync
+Modeline "480x300" 23.890 480 496 576 632 300 301 303 314 Doublescan
+# 480x300 @ 63 Hz, 39.6 kHz hsync
+Modeline "480x300" 25 480 496 576 632 300 301 303 314 Doublescan
+# 480x300 @ 72 Hz, 48.0 kHz hsync
+Modeline "480x300" 29.952 480 504 584 624 300 319 322 333 Doublescan
+
+';
+
+$devicesection_text = '
+# **********************************************************************
+# Graphics device section
+# **********************************************************************
+
+# Any number of graphics device sections may be present
+
+Section "Device"
+ Identifier "Generic VGA"
+ VendorName "Unknown"
+ BoardName "Unknown"
+ Chipset "generic"
+
+# VideoRam 256
+
+# Clocks 25.2 28.3
+
+EndSection
+
+# Device configured by Xconfigurator:
+';
+
+$screensection_text1 = '
+# **********************************************************************
+# Screen sections
+# **********************************************************************
+';
+
diff --git a/perl-install/common.pm b/perl-install/common.pm
index ce4d599e9..ec8f92366 100644
--- a/perl-install/common.pm
+++ b/perl-install/common.pm
@@ -6,8 +6,9 @@ use vars qw(@ISA %EXPORT_TAGS @EXPORT_OK $printable_chars $sizeof_int $bitof_int
@ISA = qw(Exporter);
%EXPORT_TAGS = (
- common => [ qw(_ __ min max bool member divide is_empty_array_ref set_new set_add round_up round_down first second top uniq translate untranslate) ],
- file => [ qw(dirname basename all glob_ cat_ chop_ mode) ],
+ common => [ qw(_ __ min max sum bool member divide is_empty_array_ref add2hash set_new set_add round_up round_down first second top uniq translate untranslate) ],
+ functional => [ qw(fold_left) ],
+ file => [ qw(dirname basename touch all glob_ cat_ chop_ mode) ],
system => [ qw(sync makedev unmakedev psizeof strcpy gettimeofday syscall_ crypt_) ],
constant => [ qw($printable_chars $sizeof_int $bitof_int $SECTORSIZE) ],
);
@@ -22,12 +23,14 @@ $SECTORSIZE = 512;
sub _ { my $s = shift @_; sprintf translate($s), @_ }
sub __ { $_[0] }
-sub min { my $min = shift; grep { $_ < $min and $min = $_; } @_; $min }
-sub max { my $max = shift; grep { $_ > $max and $max = $_; } @_; $max }
+sub min { fold_left(sub { $a < $b ? $a : $b }, @_) }
+sub max { fold_left(sub { $a > $b ? $a : $b }, @_) }
+sub sum { fold_left(sub { $a + $b }, @_) }
sub first { $_[0] }
sub second { $_[1] }
sub top { $_[$#_] }
sub uniq { my %l; @l{@_} = (); keys %l }
+sub add2hash { my ($a, $b) = @_; while (my ($k, $v) = each %{$b || {}}) { $a->{$k} ||= $v } }
sub member { my $e = shift; foreach (@_) { $e eq $_ and return 1 } 0 }
sub dirname { @_ == 1 or die "usage: dirname <name>\n"; local $_ = shift; s|[^/]*/*\s*$||; s|(.)/*$|$1|; $_ || '.' }
sub basename { @_ == 1 or die "usage: basename <name>\n"; local $_ = shift; s|/*\s*$||; s|.*/||; $_ }
@@ -50,6 +53,24 @@ sub remove_spaces { local $_ = shift; s/^ +//; s/ +$//; $_ }
sub mode { my @l = stat $_[0] or die "unable to get mode of file $_[0]: $!\n"; $l[2] }
sub psizeof { length pack $_[0] }
+sub touch {
+ my $f = shift;
+ unless (-e $f) {
+ local *F;
+ open F, ">$f";
+ }
+ my $now = time;
+ utime $now, $now, $f;
+}
+
+sub fold_left(&$@) {
+ my $f = shift;
+ local $a = shift;
+ foreach $b (@_) { $a = &$f() }
+ $a
+}
+
+
sub all {
my $d = shift;
@@ -89,7 +110,7 @@ sub unmakedev { $_[0] >> 8, $_[0] & 0xff }
sub translate {
my ($s) = @_;
unless (defined %po::I18N::I18N) {
- if (my ($lang) = ($ENV{LC_ALL} || $ENV{LANGUAGE} || $ENV{LC_MESSAGES} || $ENV{LANG}) =~ /(..)/) {
+ if (my ($lang) = substr($ENV{LC_ALL} || $ENV{LANGUAGE} || $ENV{LC_MESSAGES} || $ENV{LANG} || '', 0, 2)) {
local $SIG{__DIE__} = 'none';
eval { require "po/$lang.pm" };
}
diff --git a/perl-install/detect_devices.pm b/perl-install/detect_devices.pm
index 6cc170368..d226d033b 100644
--- a/perl-install/detect_devices.pm
+++ b/perl-install/detect_devices.pm
@@ -40,7 +40,7 @@ sub hasSCSI() {
log::l("scsi devices are available");
$scsiDeviceAvailable = 1;
}
-sub hasIDE() { 1 }
+sub hasIDE() { -e "/proc/ide" }
sub hasDAC960() { 1 }
sub hasCompaqSmartArray() {
@@ -82,8 +82,6 @@ sub getSCSI() {
sub getIDE() {
my @idi;
- -r "/proc/ide" or die "sorry, /proc/ide not available, seems like you have a pre-2.2 kernel\n => not handled yet :(";
-
# Great. 2.2 kernel, things are much easier and less error prone.
foreach my $d (glob_('/proc/ide/hd*')) {
my ($t) = chop_(cat_("$d/media"));
diff --git a/perl-install/install2.pm b/perl-install/install2.pm
index bb97fdbcf..13b587060 100644
--- a/perl-install/install2.pm
+++ b/perl-install/install2.pm
@@ -224,18 +224,9 @@ sub setupBootloader {
$o->{isUpgrade} or modules::read_conf("$o->{prefix}/etc/conf.modules");
$o->setupBootloader;
}
+sub configureX { $o->setupXfree }
+sub exitInstall { $o->exitInstall }
-sub configureX { $o->setupXfree; }
-
-sub exitInstall {
- $o->warn(
-_"Congratulations, installation is complete.
-Remove the boot media and press return to reboot.
-For information on fixes which are available for this release of Linux Mandrake,
-consult the Errata available from http://www.linux-mandrake.com/.
-Information on configuring your system is available in the post
-install chapter of the Official Linux Mandrake User's Guide.");
-}
sub main {
$SIG{__DIE__} = sub { chomp $_[0]; log::l("ERROR: $_[0]") };
@@ -271,8 +262,10 @@ sub main {
for (my $step = $o->{steps}->{first}; $step ne 'done'; $step = getNextStep($step)) {
$o->enteringStep($step);
- eval { &{$install2::{$step}}() };
- $@ and $o->warn($@);
+ #eval {
+ &{$install2::{$step}}();
+ #};
+ $o->errorInStep($@) if $@;
$o->leavingStep($step);
}
killCardServices();
diff --git a/perl-install/install_any.pm b/perl-install/install_any.pm
index 8d38cddc6..938323350 100644
--- a/perl-install/install_any.pm
+++ b/perl-install/install_any.pm
@@ -26,7 +26,8 @@ sub imageGetFile {
}
sub versionString {
- my $kernel = $::o->{packages}->{kernel} or die "I couldn't find the kernel package!";
+ my $kernel = $::o->{packages}->{kernel};
+ $kernel && $kernel->{header} or die "I couldn't find the kernel package!";
c::headerGetEntry($kernel->{header}, 'version') . "-" .
c::headerGetEntry($kernel->{header}, 'release');
diff --git a/perl-install/install_steps.pm b/perl-install/install_steps.pm
index b25997932..a80807c1b 100644
--- a/perl-install/install_steps.pm
+++ b/perl-install/install_steps.pm
@@ -22,8 +22,6 @@ my $o;
1;
-sub warn {}
-
sub new($$) {
my ($type, $o_) = @_;
@@ -39,6 +37,8 @@ sub leavingStep($$) {
log::l("step `$step' finished");
}
+sub errorInStep($$) {}
+
sub chooseLanguage($) {
$o->{default}->{lang};
}
diff --git a/perl-install/install_steps_stdio.pm b/perl-install/install_steps_stdio.pm
index 22e171c22..908d14080 100644
--- a/perl-install/install_steps_stdio.pm
+++ b/perl-install/install_steps_stdio.pm
@@ -4,78 +4,27 @@ use diagnostics;
use strict;
use vars qw(@ISA);
-@ISA = qw(install_steps);
+@ISA = qw(install_steps_interactive interactive_stdio);
use common qw(:common);
-use partition_table qw(:types);
use devices;
use run_program;
-use install_steps;
+use interactive_stdio;
+use install_steps_interactive;
use install_any;
-use diskdrake;
-use lang;
use log;
1;
sub enteringStep($$$) {
my ($o, $step) = @_;
- print "Starting step `$o->{steps}->{$step}->{text}'\n";
+ print _("Starting step `%s'\n", $o->{steps}->{$step}->{text});
}
sub leavingStep {
my ($o) = @_;
print "--------\n";
}
-sub chooseLanguage($) {
- my $lang = lang::text2lang(ask_from_list("Language", # no use translating this
- "Which language do you want?",
- [ lang::list() ]));
- run_program::run('xmodmap', "/usr/bin/$lang.map");
- $lang;
-}
-
-sub selectInstallOrUpgrade($) {
- ask_yesorno('Install/Upgrade', 'Do you want to upgrade an already installed Mandrake?');
-}
-
-sub selectInstallClass($@) {
- my ($o, @classes) = @_;
- my $c = ask_from_list(_("Install Class"),
- _("What type of user will you have?"),
- [ map { translate($_) } @classes ]);
- untranslate($c, @classes);
-}
-
-sub rebootNeeded($) {
- my ($o) = @_;
- ask_warn('', "You need to reboot for the partition table modifications to take place");
- $o->SUPER::rebootNeeded;
-}
-
-sub choosePartitionsToFormat($$) {
- my ($o, $fstab) = @_;
- my @l = grep { $_->{mntpoint} && (isExt2($_) || isSwap($_)) } @$fstab;
- my @r = ask_many_from_list('', "Choose the partitions you want to format",
- [ map { $_->{mntpoint} } @l ],
- [ map { $_->{notFormatted} } @l ]);
- for (my $i = 0; $i < @l; $i++) {
- $l[$i]->{toFormat} = $r[$i];
- }
-}
-
-sub choosePackages($$$) {
- my ($o, $packages, $compss) = @_;
- my @r = ask_many_from_list('',
- "Choose the packages you want to install",
- [ map { $_->{name} } @$compss ],
- [ map { $_->{selected} } @$compss ]);
-
- for (my $i = 0; $i < @$compss; $i++) {
- $compss->[$i]->{selected} = $r[$i];
- }
-}
-
sub installPackages {
my $o = shift;
@@ -97,9 +46,9 @@ sub setRootPassword($) {
my (%w);
do {
$w{password} and print "You must enter the same password, please try again\n";
- print "Password: "; $w{password} = readln();
+ print "Password: "; $w{password} = $o->readln();
print "Password (again for confirmation): ";
- } until ($w{password} eq readln());
+ } until ($w{password} eq $o->readln());
$o->{default}->{rootPassword} = $w{password};
$o->SUPER::setRootPassword;
@@ -109,91 +58,16 @@ sub addUser($) {
my ($o) = @_;
my %w;
print "\nCreating a normal user account:\n";
- print "Name: "; $w{name} = readln() or return;
+ print "Name: "; $w{name} = $o->readln() or return;
do {
$w{password} and print "You must enter the same password, please try again\n";
- print "Password: "; $w{password} = readln();
+ print "Password: "; $w{password} = $o->readln();
print "Password (again for confirmation): ";
- } until ($w{password} eq readln());
- print "Real name: "; $w{realname} = readln();
+ } until ($w{password} eq $o->readln());
+ print "Real name: "; $w{realname} = $o->readln();
- $w{shell} = ask_from_list('', 'Shell', $o->{default}->{shells});
+ $w{shell} = $o->ask_from_list('', 'Shell', $o->{default}->{shells}, "/bin/bash");
$o->{default}->{user} = { map { $_ => $w{$_}->get_text } qw(name password realname shell) };
$o->SUPER::addUser;
}
-
-sub createBootdisk($) {
- my ($o) = @_;
-
- $o->SUPER::createBootdisk if
- $o->{default}->{mkbootdisk} = ask_yesorno('',
-"A custom bootdisk provides a way of booting into your Linux system without
-depending on the normal bootloader. This is useful if you don't want to install
-lilo on your system, or another operating system removes lilo, or lilo doesn't
-work with your hardware configuration. A custom bootdisk can also be used with
-the Mandrake rescue image, making it much easier to recover from severe system
-failures. Would you like to create a bootdisk for your system?");
-}
-
-sub readln {
- my $l = <STDIN>;
- chomp $l;
- $l;
-}
-
-sub ask_warn {
- my ($title, @msgs) = @_;
- warn(@msgs);
-}
-
-sub ask_yesorno {
- my ($title, @msgs) = @_;
- print join("\n", @_);
- print " (yes/No) "; readln() =~ /y/i;
-
-}
-
-sub check_it {
- my ($i, $n) = @_;
- $i =~ /^\s*\d+\s*$/ && 1 <= $i && $i <= $n
-}
-
-sub ask_from_list {
- my ($title, @msgs) = @_;
- my $list = pop @msgs;
- print map { "$_\n" } @msgs;
- my $n = 0; foreach (@$list) { $n++; print "$n: $_\n"; }
- my $i;
- do {
- defined $i and print "Bad choice, try again\n";
- print "Your choice? (1/$n) ";
- $i = readln();
- } until (check_it($i, $n));
- $list->[$i - 1];
-}
-
-sub ask_many_from_list {
- my ($title, @msgs) = @_;
- my $default = pop @msgs;
- my $list = pop @msgs;
- my @defaults;
- print map { "$_\n" } @msgs;
- my $n = 0; foreach (@$list) {
- $n++;
- print "$n: $_\n";
- push @defaults, $n if $default->[$n - 1];
- }
- my $i;
- TRY_AGAIN:
- defined $i and print "Bad choice, try again\n";
- print "Your choice? (default ", join(',', @defaults), " enter `none' for none) ";
- $i = readln();
- my @t = split ',', $i;
- foreach (@t) { check_it($_, $n) or goto TRY_AGAIN }
-
- my @rr = (0) x @$list;
- $rr[$_ - 1] = 1 foreach @t;
- @rr;
-}
-
diff --git a/perl-install/interactive.pm b/perl-install/interactive.pm
new file mode 100644
index 000000000..977adea5a
--- /dev/null
+++ b/perl-install/interactive.pm
@@ -0,0 +1,53 @@
+package interactive;
+
+use diagnostics;
+use strict;
+
+use common qw(:common);
+
+1;
+
+sub new($$) {
+ my ($type) = @_;
+
+ bless {}, ref $type || $type;
+}
+
+
+sub ask_warn($$$) {
+ my ($o, $title, $message) = @_;
+ ask_from_list($o, $title, $message, [ _("Ok") ]);
+}
+sub ask_yesorno($$$) {
+ my ($o, $title, $message) = @_;
+ ask_from_list_($o, $title, $message, [ __("Yes"), __("No") ]) eq "Yes";
+}
+sub ask_okcancel($$$) {
+ my ($o, $title, $message) = @_;
+ ask_from_list_($o, $title, $message, [ __("Ok"), __("Cancel") ]) eq "Ok";
+}
+sub ask_from_list_($$$$;$) {
+ my ($o, $title, $message, $l, $def) = @_;
+ untranslate(
+ ask_from_list($o, $title, $message, [ map { translate($_) } @$l ], translate($def)),
+ @$l);
+}
+sub ask_from_list($$$$;$) {
+ my ($o, $title, $message, $l, $def) = @_;
+
+ $message = ref $message ? $message : [ $message ];
+
+ @$l > 10 and $l = [ sort @$l ];
+
+ $o->ask_from_listW($title, $message, $l, $def || $l->[0]);
+}
+sub ask_many_from_list($$$$;$) {
+ my ($o, $title, $message, $l, $def) = @_;
+
+ $message = ref $message ? $message : [ $message ];
+
+ $o->ask_many_from_listW($title, $message, $l, $def);
+}
+
+
+
diff --git a/perl-install/interactive_gtk.pm b/perl-install/interactive_gtk.pm
new file mode 100644
index 000000000..935766470
--- /dev/null
+++ b/perl-install/interactive_gtk.pm
@@ -0,0 +1,37 @@
+package interactive_gtk;
+
+use diagnostics;
+use strict;
+use vars qw(@ISA);
+
+@ISA = qw(interactive);
+
+use interactive;
+use common qw(:common);
+use my_gtk qw(:helpers :wrappers);
+
+1;
+
+sub ask_from_listW {
+ my ($o, $title, $messages, $l, $def) = @_;
+
+ if (@$l < 5 && sum(map { length $_ } @$l) < 70) {
+ my $w = my_gtk->new($title);
+ my $f = sub { $w->{retval} = $_[1]; Gtk->main_quit };
+ gtkadd($w->{window},
+ gtkpack(create_box_with_title($o, @$messages),
+ gtkadd(create_hbox(),
+ map {
+ my $b = new Gtk::Button($_);
+ $b->signal_connect(clicked => [ $f, $_ ]);
+ $_ eq $def and $def = $b;
+ $b;
+ } @$l),
+ ),
+ );
+ $def->grab_focus if $def;
+ $w->main;
+ } else {
+ my_gtk::ask_from_list($title, $messages, $l, $def);
+ }
+}
diff --git a/perl-install/interactive_stdio.pm b/perl-install/interactive_stdio.pm
new file mode 100644
index 000000000..40dcdbb7c
--- /dev/null
+++ b/perl-install/interactive_stdio.pm
@@ -0,0 +1,80 @@
+package interactive_stdio;
+
+use diagnostics;
+use strict;
+use vars qw(@ISA);
+
+@ISA = qw(interactive);
+
+use interactive;
+use common qw(:common);
+
+1;
+
+sub readln {
+ my $l = <STDIN>;
+ chomp $l;
+ $l;
+}
+
+sub check_it {
+ my ($i, $n) = @_;
+ $i =~ /^\s*\d+\s*$/ && 1 <= $i && $i <= $n
+}
+
+sub ask_from_listW {
+ my ($o, $title, $messages, $list, $def) = @_;
+ my $i;
+ print map { "$_\n" } @$messages;
+
+ if (@$list < 10 && sum(map { length $_ } @$list) < 50) {
+ my @l;
+ do {
+ if (defined $i) {
+ @l ? print _("Ambiguity (%s) be more precise\n", join(", ", @l)) :
+ print _("Bad choice, try again\n");
+ }
+ @$list == 1 ? print @$list :
+ print join("/", @$list), _(" ? (default %s) ", $def);
+ $i = readln() || $def;
+ @l = grep { /^$i/ } @$list;
+ } until (@l == 1);
+ $l[0];
+ } else {
+ my $n = 0; foreach (@$list) {
+ $n++;
+ $def eq $_ and $def = $n;
+ print "$n: $_\n";
+ }
+ do {
+ defined $i and print _("Bad choice, try again\n");
+ print _("Your choice? (default %s) ", $def);
+ $i = readln() || $def;
+ } until (check_it($i, $n));
+ $list->[$i - 1];
+ }
+}
+
+sub ask_many_from_listW {
+ my ($o, $title, $messages, $list, $default) = @_;
+ my @defaults;
+ print map { "$_\n" } @$messages;
+ my $n = 0; foreach (@$list) {
+ $n++;
+ print "$n: $_\n";
+ push @defaults, $n if $default->[$n - 1];
+ }
+ my $i;
+ TRY_AGAIN:
+ defined $i and print _("Bad choice, try again\n");
+ print _("Your choice? (default %s enter `none' for none) ", join(',', @defaults));
+ $i = readln();
+ my @t = split ',', $i;
+ foreach (@t) { check_it($_, $n) or goto TRY_AGAIN }
+
+ my @rr = (0) x @$list;
+ $rr[$_ - 1] = 1 foreach @t;
+ @rr;
+}
+
+
diff --git a/perl-install/keyboard.pm b/perl-install/keyboard.pm
index 2c6b84858..5b59bd2c3 100644
--- a/perl-install/keyboard.pm
+++ b/perl-install/keyboard.pm
@@ -86,7 +86,7 @@ sub read($) {
foreach (<F>) {
($_) = /^KEYTABLE=(.*)/ or log::l("unrecognized entry in keyboard configuration file ($_)"), next;
- s/\"//g;
+ s/^\s*"(.*)"\s*$/$1/;
s/\.[^.]*//; # remove extension
return basename($_);
}
diff --git a/perl-install/log.pm b/perl-install/log.pm
index 0fe696f07..640349b70 100644
--- a/perl-install/log.pm
+++ b/perl-install/log.pm
@@ -22,9 +22,9 @@ sub openLog(;$) {
if ($_[0]) { # useLocal
open LOG, "> $_[0]" or die "no log possible :(";
} else {
- open LOG, "> /dev/tty3" or open LOG, ">> /tmp/install.log" or die "no log possible :(";
+ open LOG, "> /dev/tty3" or open LOG, ">> /tmp/install.log";# or die "no log possible :(";
}
- open LOG2, ">> /tmp/ddebug.log" or die "no log possible :(";
+ open LOG2, ">> /tmp/ddebug.log";# or die "no log possible :(";
select((select(LOG), $| = 1)[0]);
select((select(LOG2), $| = 1)[0]);
exists $ENV{DEBUG} and $logDebugMessages = 1;
diff --git a/perl-install/my_gtk.pm b/perl-install/my_gtk.pm
index 78a308856..ff34324b0 100644
--- a/perl-install/my_gtk.pm
+++ b/perl-install/my_gtk.pm
@@ -6,8 +6,11 @@ use vars qw(@ISA %EXPORT_TAGS @EXPORT_OK);
@ISA = qw(Exporter);
%EXPORT_TAGS = (
- all => [ qw(ask_warn ask_okcancel ask_yesorno ask_from_entry ask_from_list create_okcancel createScrolledWindow create_menu create_notebook create_packtable create_hbox create_adjustment gtksignal_connect gtkpack gtkpack_ gtkappend gtkadd gtkset_usize gtkset_justify gtkset_active gtkshow gtkdestroy) ],
+ helpers => [ qw(create_okcancel createScrolledWindow create_menu create_notebook create_packtable create_hbox create_adjustment create_box_with_title) ],
+ wrappers => [ qw(gtksignal_connect gtkpack gtkpack_ gtkappend gtkadd gtkset_usize gtkset_justify gtkset_active gtkshow gtkdestroy) ],
+ ask => [ qw(ask_warn ask_okcancel ask_yesorno ask_from_entry ask_from_list ) ],
);
+$EXPORT_TAGS{all} = [ map { @$_ } values %EXPORT_TAGS ];
@EXPORT_OK = map { @$_ } values %EXPORT_TAGS;
use Gtk;
@@ -25,7 +28,6 @@ sub new {
my ($type, $title, @opts) = @_;
Gtk->init;
- parse Gtk::Rc "$ENV{HOME}/etc/any/Gtkrc";
my $o = bless { @opts }, $type;
$o->{window} = $o->_create_window($title);
$o;
@@ -136,9 +138,9 @@ sub create_okcancel($;$$) {
sub create_box_with_title($@) {
my $o = shift;
- $o->{box} = gtkpack(new Gtk::VBox(0,0),
- map({ new Gtk::Label(" $_ ") } @_),
- new Gtk::HSeparator,
+ $o->{box} = gtkpack_(new Gtk::VBox(0,0),
+ 0, map({ new Gtk::Label(" $_ ") } @_),
+ 0, new Gtk::HSeparator,
)
}
@@ -227,7 +229,7 @@ sub ask_warn { my $w = my_gtk->new(shift @_); $w->_ask_warn(@_); main($w);
sub ask_yesorno { my $w = my_gtk->new(shift @_); $w->_ask_okcancel(@_, _("Yes"), _("No")); main($w); }
sub ask_okcancel { my $w = my_gtk->new(shift @_); $w->_ask_okcancel(@_, _("Is it ok?"), _("Ok"), _("Cancel")); main($w); }
sub ask_from_entry { my $w = my_gtk->new(shift @_); $w->_ask_from_entry(@_); main($w); }
-sub ask_from_list { my $w = my_gtk->new(shift @_); $w->_ask_from_list(pop @_, @_); main($w); }
+sub ask_from_list { my $w = my_gtk->new(shift @_); $w->_ask_from_list(@_); main($w); }
sub _ask_from_entry($$@) {
my ($o, @msgs) = @_;
@@ -243,19 +245,19 @@ sub _ask_from_entry($$@) {
);
$entry->grab_focus();
}
-sub _ask_from_list($$$@) {
- my ($o, $l, @msgs) = @_;
+sub _ask_from_list($$$$) {
+ my ($o, $messages, $l, $def) = @_;
my $list = new Gtk::List;
my ($first_time, $starting_word) = (1, '');
my (@widgets, $timeout);
- my @sorted = sort @$l;
$list->signal_connect(select_child => sub {
- $o->{retval} = $sorted[$list->child_position($_[1])];
+ $o->{retval} = $l->[$list->child_position($_[1])];
Gtk->main_quit;
});
- for (my $i = 0; $i < @sorted; $i++) {
+ for (my $i = 0; $i < @$l; $i++) {
my $focused = $i;
- my $w = new Gtk::ListItem($sorted[$i]);
+ $def = $i if $l->[$i] eq $def;
+ my $w = new Gtk::ListItem($l->[$i]);
my $id = $w->signal_connect(key_press_event => sub {
my ($w, $e)= @_;
my $c = chr $e->{keyval};
@@ -271,12 +273,12 @@ sub _ask_from_list($$$@) {
my $curr = $focused + bool($starting_word eq '' || $starting_word eq $c);
$starting_word .= $c unless $starting_word eq $c;
- my $j; for ($j = 0; $j < @sorted; $j++) {
- $sorted[($j + $curr) % @sorted] =~ /^$starting_word/i and last;
+ my $j; for ($j = 0; $j < @$l; $j++) {
+ $l->[($j + $curr) % @$l] =~ /^$starting_word/i and last;
}
- $j == @sorted ?
+ $j == @$l ?
$starting_word = '' :
- $widgets[($j + $curr) % @sorted]->grab_focus;
+ $widgets[($j + $curr) % @$l]->grab_focus;
$w->{timeout} = $timeout = Gtk->timeout_add($forgetTime, sub { $timeout = $starting_word = ''; 0 } );
}
@@ -287,11 +289,11 @@ sub _ask_from_list($$$@) {
}
gtkadd($list, @widgets);
gtkadd($o->{window},
- gtkpack($o->create_box_with_title(@msgs),
+ gtkpack($o->create_box_with_title(@$messages),
@widgets > 15 ?
gtkset_usize(createScrolledWindow($list), 0, 300) :
$list));
- $widgets[0]->grab_focus;
+ $widgets[$def]->grab_focus;
}
sub _ask_warn($@) {
diff --git a/perl-install/partition_table.pm b/perl-install/partition_table.pm
index 1986e4dd9..a9f20cd10 100644
--- a/perl-install/partition_table.pm
+++ b/perl-install/partition_table.pm
@@ -78,6 +78,7 @@ my %fs2type = reverse %type2fs;
1;
+sub important_types { $_[0] and return sort values %types; @important_types }
sub type2name($) { $types{$_[0]} || 'unknown' }
sub type2fs($) { $type2fs{$_[0]} }
sub name2type($) { $types_rev{$_[0]} }
diff --git a/perl-install/partition_table_raw.pm b/perl-install/partition_table_raw.pm
index d85789a50..973961f5a 100644
--- a/perl-install/partition_table_raw.pm
+++ b/perl-install/partition_table_raw.pm
@@ -93,9 +93,9 @@ sub write($$$) {
compute_CHS($hd, $_);
local $_->{start} = $_->{local_start} || 0;
$_->{active} ||= 0; $_->{type} ||= 0; $_->{size} ||= 0; # for no warning
- syswrite F, pack($format, @$_{@fields}) or return 0;
+ syswrite F, pack($format, @$_{@fields}), psizeof($format) or return 0;
}
- syswrite F, $magic or return 0;
+ syswrite F, $magic, length $magic or return 0;
1;
}
sub zero_MBR($) { &write($_[0], 0, [ {} x $nb_primary ]); }
diff --git a/perl-install/pkgs.pm b/perl-install/pkgs.pm
index 7795a7f8a..f56e43cee 100644
--- a/perl-install/pkgs.pm
+++ b/perl-install/pkgs.pm
@@ -9,6 +9,7 @@ use install_any;
use log;
use smp;
use fs;
+use lang;
my @skipThesesPackages = qw(XFree86-8514 XFree86-AGX XFree86-FBDev XFree86-Mach32 XFree86-Mach64
XFree86-Mach8 XFree86-Mono XFree86-P9000 XFree86-S3 XFree86-S3V
@@ -31,9 +32,11 @@ sub select($$;$) {
my @l = @{$p->{deps}};
while (@l) {
my $n = shift @l;
+ $n =~ /|/ and $n = first(split '\|', $n); #TODO better handling of choice
my $i = Package($packages, $n);
$i->{base} = $base;
- push @l, @{$i->{deps}} unless $i->{selected};
+ $i->{deps} or log::l("missing deps for $n");
+ push @l, @{$i->{deps} || []} unless $i->{selected};
$i->{selected}++ unless $i->{selected} == -1;
}
}
@@ -56,7 +59,7 @@ sub unselect($$) {
$i->{selected} <= 0 and next;
if (--$i->{selected} == 0) {
- push @$l, @{$i->{deps}};
+ push @$l, @{$i->{deps} || []};
}
}
@@ -221,6 +224,17 @@ sub init_db {
$isUpgrade ? c::rpmdbRebuild($prefix) : c::rpmdbInit($prefix, 0644) or die "creation/rebuilding of rpm database failed: ", c::rpmErrorString();
}
+sub getHeader($) {
+ my ($p) = @_;
+
+ unless ($p->{header}) {
+ local *F;
+ open F, $p->{file} or die "error opening package $p->{name} (file $p->{file})";
+ $p->{header} = c::rpmReadPackageHeader(fileno F);
+ }
+ $p->{header};
+}
+
sub install {
my ($prefix, $toInstall, $isUpgrade, $force) = @_;
@@ -232,11 +246,7 @@ sub install {
my ($total, $nb);
foreach my $p (@$toInstall) {
- local *F;
- open F, $p->{file} or die "error opening package $p->{name} (file $p->{file})";
- $p->{header} = c::rpmReadPackageHeader(fileno F);
-
- c::rpmtransAddPackage($trans, $p->{header}, $p->{file}, $isUpgrade);
+ c::rpmtransAddPackage($trans, getHeader($p), $p->{file}, $isUpgrade);
$nb++;
$total += $p->{size};
}
diff --git a/perl-install/resize_fat/fat.pm b/perl-install/resize_fat/fat.pm
index 2b64bd6f7..371e90feb 100644
--- a/perl-install/resize_fat/fat.pm
+++ b/perl-install/resize_fat/fat.pm
@@ -36,7 +36,7 @@ sub write($) {
sysseek $fs->{fd}, $fs->{fat_offset}, 0 or die "write_fat: seek failed";
foreach (1..$fs->{nb_fats}) {
- syswrite $fs->{fd}, $fs->{fat}, $fs->{fat_size} or die "write_fat: write failed";
+ syswrite $fs->{fd}, $fs->{fat} or die "write_fat: write failed";
}
}
diff --git a/perl-install/resize_fat/io.pm b/perl-install/resize_fat/io.pm
index 8ffaa8355..4d1a37158 100644
--- a/perl-install/resize_fat/io.pm
+++ b/perl-install/resize_fat/io.pm
@@ -18,7 +18,7 @@ sub read($$$) {
sub write($$$$) {
my ($fs, $pos, $size, $buf) = @_;
sysseek $fs->{fd}, $pos, 0 or die "seeking to byte #$pos failed on device $fs->{fs_name}";
- syswrite $fs->{fd}, $buf, $size or die "writing at byte #$pos failed on device $fs->{fs_name}";
+ syswrite $fs->{fd}, $buf or die "writing at byte #$pos failed on device $fs->{fs_name}";
}
sub read_cluster($$) {
diff --git a/perl-install/share/diskdrake.rc b/perl-install/share/diskdrake.rc
index 13804f8ca..637b8f3b1 100644
--- a/perl-install/share/diskdrake.rc
+++ b/perl-install/share/diskdrake.rc
@@ -7,7 +7,7 @@ binding "bind"
style "font"
{
- font = "-adobe-helvetica-medium-r-normal--*-80-*-*-*-*-*-*"
+ font = "-adobe-helvetica-medium-r-normal-*-*-80-*-*-p-*-iso8859-1"
}
"\n" " * \"%s\": paigaldatakse minimaalselt graafiliseks töölauaks vajalikud " "paketid.\n" "\n" " * \"%s\": paigaldatakse baassüsteem ning põhilised utiliidid ja nende " "dokumentatsioon.\n" "See peaks sobima näiteks serverile.\n" "\n" " * \"%s\": paigaldatakse minimaalne hulk pakette,\n" "mida on vaja Linuxi töötamiseks (vaid käsurealt).\n" "See võtab ruumi umbes 65 MB." #: ../help.pm:149 ../help.pm:591 #, c-format msgid "Upgrade" msgstr "Uuendus" #: ../help.pm:149 #, c-format msgid "With basic documentation" msgstr "Baasdokumentatsiooniga" #: ../help.pm:149 #, c-format msgid "Truly minimal install" msgstr "Tõeliselt minimaalne paigaldus" #: ../help.pm:152 #, fuzzy, c-format msgid "" "If you choose to install packages individually, the installer will present\n" "a tree containing all packages classified by groups and subgroups. While\n" "browsing the tree, you can select entire groups, subgroups, or individual\n" "packages.\n" "\n" "Whenever you select a package on the tree, a description will appear on the\n" "right to let you know the purpose of that package.\n" "\n" "!! If a server package has been selected, either because you specifically\n" "chose the individual package or because it was part of a group of packages,\n" "you'll be asked to confirm that you really want those servers to be\n" "installed. By default Mageia will automatically start any installed\n" "services at boot time. Even if they are safe and have no known issues at\n" "the time the distribution was shipped, it is entirely possible that\n" "security holes were discovered after this version of Mageia was\n" "finalized. If you do not know what a particular service is supposed to do " "or\n" "why it's being installed, then click \"%s\". Clicking \"%s\" will install\n" "the listed services and they will be started automatically at boot time. !!\n" "\n" "The \"%s\" option is used to disable the warning dialog which appears\n" "whenever the installer automatically selects a package to resolve a\n" "dependency issue. Some packages depend on others and the installation of\n" "one particular package may require the installation of another package. The\n" "installer can determine which packages are required to satisfy a dependency\n" "to successfully complete the installation.\n" "\n" "The tiny floppy disk icon at the bottom of the list allows you to load a\n" "package list created during a previous installation. This is useful if you\n" "have a number of machines that you wish to configure identically. Clicking\n" "on this icon will ask you to insert the floppy disk created at the end of\n" "another installation. See the second tip of the last step on how to create\n" "such a floppy." msgstr "" "Sõltuvalt sellest, kas valisite individuaalse pakettide valiku või mitte,\n" "näidatakse Teile gruppidesse ja alamgruppidesse rühmitatult kõiki pakette\n" "sisaldavat puud. Seda mööda liikudes võite valida või etteantud valiku\n" "tühistada tervete gruppide, alamgruppide või üksikute pakettide kaupa.\n" "\n" "Kui valite puus mõne paketi, ilmub paremal selle kirjeldus,\n" "mis annab teada, milline on paketi ülesanne.\n" "\n" "NB! Kui tahtlikult või seetõttu, et asi kuulus gruppi,\n" "on valitud mõni serveripakett, palutakse Teilt kinnitust,\n" "et Te ikka tõesti soovite neid servereid paigaldada.\n" "Mageia käivitab kõik paigaldatud serverid vaikimisi alglaadimise " "ajal.\n" "Isegi kui nad olid turvalised ja teadaolevalt probleemivabad ajal,\n" "mis valmis distributsioon, võib kergesti juhtuda,\n" "et pärast Mageiai praeguse versiooni valmimist leiti neist " "turvaauke.\n" "Kui Te ei tea, mida konkreetne teenus pakub või miks see üldse " "paigaldatakse,\n" "klõpsake nupul \"%s\", sest klõps nupul \"%s\" paigaldab loetletud serverid\n" "ning nad käivituvad alglaadimise ajal automaatselt.\n" "\n" "Lisavõimalus \"%s\" lihtsalt keelab hoiatava dialoogi,\n" "mis ilmub alati, kui paigaldaja valib automaatselt mõne paketi.\n" "See juhtub siis, kui leitakse, et paigaldamise edukaks lõpetamiseks\n" "on vajalik paigaldada veel mõni muu pakett.\n" "\n" "Väike disketiikoon nimekirja all võimaldab avada\n" "eelmise paigaldamise ajal valitud pakettide nimekirja.\n" "Sellel klõpsamise järel palutakse Teil sisestada diskett,\n" "mille lõite eelmise paigaldamise lõpul.\n" "Vaadake ka eelmise sammu teist nõuannet selle kohta, kuidas sellist disketti " "luua." #: ../help.pm:183 #, c-format msgid "Automatic dependencies" msgstr "Automaatsõltuvused" #: ../help.pm:185 #, c-format msgid "" "This dialog is used to select which services you wish to start at boot\n" "time.\n" "\n" "DrakX will list all services available on the current installation. Review\n" "each one of them carefully and uncheck those which are not needed at boot\n" "time.\n" "\n" "A short explanatory text will be displayed about a service when it is\n" "selected. However, if you're not sure whether a service is useful or not,\n" "it is safer to leave the default behavior.\n" "\n" "!! At this stage, be very careful if you intend to use your machine as a\n" "server: you probably do not want to start any services which you do not " "need.\n" "Please remember that some services can be dangerous if they're enabled on a\n" "server. In general, select only those services you really need. !!" msgstr "" "Nüüd saate valida, millised teenused peaks käivitama alglaadimisel.\n" "\n" "Siin on üles loetud kõik teenused, mis on saadaval antud paigalduse puhul.\n" "Uurige neid hoolega ja jätke valimata kõik, mida ei ole alglaadimise ajal\n" "tingimata vajalik käivitada.\n" "\n" "Konkreetset teenust valides näete selle kohta lühikest seletavat teksti.\n" "Kui Te ei ole aga kindel, kas teenus on kasulik või mitte, on mõistlik\n" "jätta kehtima vaikevalik (olgu see siis lubav või mitte).\n" "\n" "NB! Kui kavatsete oma süsteemi kasutada serverina, olge eriti " "tähelepanelik:\n" "tõenäoliselt ei soovi Te käivitada mittevajalikke teenuseid. Pidage meeles,\n" "et mõned teenused võivad serveris kasutatuna olla isegi ohtlikud. Üldiselt\n" "tasub valida ainult neid teenuseid, mida Teil tõesti vaja läheb." #: ../help.pm:209 #, c-format msgid "" "GNU/Linux manages time in GMT (Greenwich Mean Time) and translates it to\n" "local time according to the time zone you selected. If the clock on your\n" "motherboard is set to local time, you may deactivate this by unselecting\n" "\"%s\", which will let GNU/Linux know that the system clock and the\n" "hardware clock are in the same time zone. This is useful when the machine\n" "also hosts another operating system.\n" "\n" "The \"%s\" option will automatically regulate the system clock by\n" "connecting to a remote time server on the Internet. For this feature to\n" "work, you must have a working Internet connection. We recommend that you\n" "choose a time server located near you. This option actually installs a time\n" "server which can be used by other machines on your local network as well." msgstr "" "GNU/Linux kasutab GMT (Greenwichi) aega ning teisendab selle\n" "kohalikuks ajaks vastavalt Teie valitud ajavööndile. Seda võib siiski\n" "ka välja lülitada, kui jätta märkimata \"%s\". Sellisel juhul kajastab\n" "arvutikell sama aega, mis süsteemi kell. See võib olla kasulik, kui\n" "masinas on veel mõni operatsioonisüsteem, näiteks Windows.\n" "\n" "Võimalus \"%s\" võimaldab kellaaega reguleerida,\n" "ühendudes Internetis mõne ajaserveriga. Pakutavas nimekirjas valige mõni\n" "lähemal asuv server. Mõistagi peab selle võimaluse kasutamiseks olema ka\n" "Internetiühendus. Tegelikult paigaldab see Teie arvutisse ajaserveri,\n" "mida saab kasutada isegi teiste kohtvõrgus olevate masinate aja\n" "täpsustamiseks." #: ../help.pm:213 #, c-format msgid "Hardware clock set to GMT" msgstr "Riistvaraline kell kasutab GMT aega" #: ../help.pm:213 #, c-format msgid "Automatic time synchronization" msgstr "Aja automaatne sünkroniseerimine" #: ../help.pm:223 #, c-format msgid "" "Graphic Card\n" "\n" " The installer will normally automatically detect and configure the\n" "graphic card installed on your machine. If this is not correct, you can\n" "choose from this list the card you actually have installed.\n" "\n" " In the situation where different servers are available for your card,\n" "with or without 3D acceleration, you're asked to choose the server which\n" "best suits your needs." msgstr "" "Videokaart\n" "\n" " Paigaldaja tuvastab ja seadistab tavaliselt automaatselt masinasse\n" "paigaldatud videokaardi. Kui see ei õnnestu, saate nimekirjast valida\n" "kaardi, mis tegelikult on masinass paigaldatud.\n" "\n" " Juhul, kui Teie kaardile peaks saada olema erinevaid servereid nii 3D\n" "kiirendusega kui ilma, saate valida serveri, mis Teie vajadustele\n" "kõige enam vastab." #: ../help.pm:234 #, fuzzy, c-format msgid "" "X (for X Window System) is the heart of the GNU/Linux graphical interface\n" "on which all the graphical environments (KDE, GNOME, AfterStep,\n" "WindowMaker, etc.) bundled with Mageia rely upon.\n" "\n" "You'll see a list of different parameters to change to get an optimal\n" "graphical display.\n" "\n" "Graphic Card\n" "\n" " The installer will normally automatically detect and configure the\n" "graphic card installed on your machine. If this is not correct, you can\n" "choose from this list the card you actually have installed.\n" "\n" " In the situation where different servers are available for your card,\n" "with or without 3D acceleration, you're asked to choose the server which\n" "best suits your needs.\n" "\n" "\n" "\n" "Monitor\n" "\n" " Normally the installer will automatically detect and configure the\n" "monitor connected to your machine. If it is not correct, you can choose\n" "from this list the monitor which is connected to your computer.\n" "\n" "\n" "\n" "Resolution\n" "\n" " Here you can choose the resolutions and color depths available for your\n" "graphics hardware. Choose the one which best suits your needs (you will be\n" "able to make changes after the installation). A sample of the chosen\n" "configuration is shown in the monitor picture.\n" "\n" "\n" "\n" "Test\n" "\n" " Depending on your hardware, this entry might not appear.\n" "\n" " The system will try to open a graphical screen at the desired\n" "resolution. If you see the test message during the test and answer \"%s\",\n" "then DrakX will proceed to the next step. If you do not see it, then it\n" "means that some part of the auto-detected configuration was incorrect and\n" "the test will automatically end after 12 seconds and return you to the\n" "menu. Change settings until you get a correct graphical display.\n" "\n" "\n" "\n" "Options\n" "\n" " This steps allows you to choose whether you want your machine to\n" "automatically switch to a graphical interface at boot. Obviously, you may\n" "want to check \"%s\" if your machine is to act as a server, or if you were\n" "not successful in getting the display configured." msgstr "" "X (ehk X Window System) kujutab endast GNU/Linuxi graafilise " "kasutajaliidese\n" "tuuma ja südant, millele toetuvad kõik Mageiaiga kaasas käivad\n" "graafilised töökeskkonnad (KDE, GNOME, AfterStep, WindowMaker jne).\n" "\n" "Siin näidatakse Teile tervet nimekirja parameetreid, mida saab muuta,\n" "et graafiline kasutajaliides oleks just Teile meelepärane:\n" "\n" "Videokaart\n" "\n" " Paigaldaja tuvastab ja seadistab tavaliselt automaatselt masinasse\n" "paigaldatud videokaardi. Kui see ei õnnestu, saate nimekirjast valida\n" "kaardi, mis tegelikult on masinas paigaldatud.\n" "\n" " Juhul, kui Teie kaardile peaks saada olema erinevaid servereid nii 3D\n" "kiirendusega kui ilma, saate valida serveri, mis Teie vajadustele\n" "kõige enam vastab.\n" "\n" "\n" "\n" "Monitor\n" "\n" " Paigaldaja tuvastab ja seadistab tavaliselt automaatselt Teie masinaga\n" "ühendatud monitori. Kui see ei peaks siiski õnnestuma, saate siin toodud\n" "nimekirjast valida monitori, mis Teil tegelikult on.\n" "\n" "\n" "\n" "Ekraanilahutus\n" "\n" " Siin saate valida Teie riistvaraga sobiva ekraanilahutuse ja " "värvisügavuse.\n" "Kui Te paigaldamise järel leiate, et siin valitu siiski ei kõlba, saate " "seda\n" "hiljem muuta. Valitud seadistust näidatakse monitoril.\n" "\n" "\n" "\n" "Test\n" "\n" " Sõltuvalt Teie riistvarast ei pruugi seda näha olla.\n" "\n" " süsteem püüab avada graafilist akent soovitud ekraanilahutusega. Kui " "näete\n" "testi ajal sõnumit ja vastate \"%s\", suundub DrakX järgmise sammu juurde.\n" "Kui Te sõnumit ei näe, tähendab see, et miski automaatselt tuvastatud\n" "seadistuses oli mäda ja test lõpeb automaatselt 12 sekundi pärast, tuues\n" "Teid menüüsse tagasi. Seal saate muuta seadistusi, kuni Teil õnnestub\n" "leida see, mis tagab korrektse ja meelepärase graaafilise kasutajaliidese.\n" "\n" "\n" "\n" "Eelistused\n" "\n" " Siin saab määrata, kas soovite, et masin käivitaks alglaadimise ajal\n" "automaatselt graafilise kasutajaliidese. Ilmselt on Teie vastus \"%s\",\n" "kui soovite, et masin toimiks serverina, või kui Teid ei kippunud\n" "seadistamise ajal edu saatma." #: ../help.pm:291 #, c-format msgid "" "Monitor\n" "\n" " Normally the installer will automatically detect and configure the\n" "monitor connected to your machine. If it is not correct, you can choose\n" "from this list the monitor which is connected to your computer." msgstr "" "Monitor\n" "\n" " Paigaldaja tuvastab ja seadistab tavaliselt automaatselt Teie masinaga\n" "ühendatud monitori. Kui see ei peaks siiski õnnestuma, saate siin toodud\n" "nimekirjast valida monitori, mis Teil tegelikult on." #: ../help.pm:298 #, c-format msgid "" "Resolution\n" "\n" " Here you can choose the resolutions and color depths available for your\n" "graphics hardware. Choose the one which best suits your needs (you will be\n" "able to make changes after the installation). A sample of the chosen\n" "configuration is shown in the monitor picture." msgstr "" "Ekraanilahutus\n" "\n" " Siin saate valida Teie riistvaraga sobiva ekraanilahutuse ja " "värvisügavuse.\n" "Kui Te paigaldamise järel leiate, et siin valitu siiski ei kõlba, saate " "seda\n" "hiljem muuta. Valitud seadistust näidatakse monitoril." #: ../help.pm:306 #, c-format msgid "" "In the situation where different servers are available for your card, with\n" "or without 3D acceleration, you're asked to choose the server which best\n" "suits your needs." msgstr "" "Juhul, kui Teie kaardile peaks saada olema erinevaid servereid nii 3D\n" "kiirendusega kui ilma, saate valida serveri, mis Teie vajadustele\n" "kõige enam vastab." #: ../help.pm:311 #, c-format msgid "" "Options\n" "\n" " This steps allows you to choose whether you want your machine to\n" "automatically switch to a graphical interface at boot. Obviously, you may\n" "want to check \"%s\" if your machine is to act as a server, or if you were\n" "not successful in getting the display configured." msgstr "" "Eelistused\n" "\n" " Siin saab valida, kas soovite kasutada graafilist töökeskkonda\n" "kohe alglaadimisel. Pange tähele, et seda päritakse ka siis, kui Te ei " "proovinudki\n" "seadistusi testida. On üsna ilmne, et vastus kõlab \"%s\", kui masina " "ülesanne\n" "on tegutseda serverina või kui Teid ei kippunud seadistamise ajal edu saatma." #: ../help.pm:319 #, fuzzy, c-format msgid "" "You now need to decide where you want to install the Mageia\n" "operating system on your hard disk drive. If your hard disk drive is empty or if an\n" "existing operating system is using all the available space you will have to\n" "partition the drive. Basically, partitioning a hard disk drive means to\n" "logically divide it to create the space needed to install your new\n" "Mageia system.\n" "\n" "Because the process of partitioning a hard disk drive is usually irreversible\n" "and can lead to data losses, partitioning can be intimidating and stressful\n" "for the inexperienced user. Fortunately, DrakX includes a wizard which\n" "simplifies this process. Before continuing with this step, read through the\n" "rest of this section and above all, take your time.\n" "\n" "Depending on the configuration of your hard disk drive, several options are\n" "available:\n" "\n" " * \"%s\". This option will perform an automatic partitioning of your blank\n" "drive(s). If you use this option there will be no further prompts.\n" "\n" " * \"%s\". The wizard has detected one or more existing Linux partitions on\n" "your hard disk drive. If you want to use them, choose this option. You will then\n" "be asked to choose the mount points associated with each of the partitions.\n" "The legacy mount points are selected by default, and for the most part it's\n" "a good idea to keep them.\n" "\n" " * \"%s\". If Microsoft Windows is installed on your hard disk drive and takes\n" "all the space available on it, you will have to create free space for\n" "GNU/Linux. To do so, you can delete your Microsoft Windows partition and\n" "data (see ``Erase entire disk'' solution) or resize your Microsoft Windows\n" "FAT or NTFS partition. Resizing can be performed without the loss of any\n" "data, provided you've previously defragmented the Windows partition.\n" "Backing up your data is strongly recommended. Using this option is\n" "recommended if you want to use both Mageia and Microsoft Windows on\n" "the same computer.\n" "\n" " Before choosing this option, please understand that after this\n" "procedure, the size of your Microsoft Windows partition will be smaller\n" "than when you started. You'll have less free space under Microsoft Windows\n" "to store your data or to install new software.\n" "\n" " * \"%s\". If you want to delete all data and all partitions present on\n" "your hard disk drive and replace them with your new Mageia system, choose\n" "this option. Be careful, because you will not be able to undo this " "operation\n" "after you confirm.\n" "\n" " !! If you choose this option, all data on your disk will be deleted. !!\n" "\n" " * \"%s\". This option appears when the hard disk drive is entirely taken by\n" "Microsoft Windows. Choosing this option will simply erase everything on the\n" "drive and begin fresh, partitioning everything from scratch.\n" "\n" " !! If you choose this option, all data on your disk will be lost. !!\n" "\n" " * \"%s\". Choose this option if you want to manually partition your hard\n" "drive. Be careful -- it is a powerful but dangerous choice and you can very\n" "easily lose all your data. That's why this option is really only\n" "recommended if you have done something like this before and have some\n" "experience. For more instructions on how to use the DiskDrake utility,\n" "refer to the ``Managing Your Partitions'' section in the ``Starter Guide''." msgstr "" "Olete jõudnud punkti, kus peate otsustama, kuhu täpselt Mageia\n" "oma kõvakettal paigaldada. Kui kõvaketas on tühi või mõni muu\n" "operatsioonisüsteem seda täielikult kasutab, on vaja see osadeks jagada\n" "ehk partitsioneerida.\n" "Partitsioneerimine on tegevus, mille käigus tekitatakse kettale loogilised\n" "piirkonnad Teie uue Mageiai süsteemi paigaldamiseks.\n" "\n" "Kuna kõvaketta jagamine on pöördumatu protsess, siis peab kogemusteta\n" "kasutaja olema iseäranis ettevaatlik! Selle tegevuse lihtsustamiseks ja\n" "vigade vähendamiseks on Teie jaoks loodudki käesolev nõustaja. Siiski,\n" "palun varuge natuke ettevalmistusaega.\n" "\n" "Sõltuvalt kõvaketta omadustest on ketta jagamiseks ehk partitsioneerimiseks\n" "mitmeid võimalusi.\n" "\n" " * \"%s\": see jagab lihtsalt Teie tühja(d) kõvaketta(d).\n" "Mingeid edasisi küsimusi ei esitata.\n" "\n" " * \"%s\": nõustaja leidis kõvakettalt vähemalt\n" "ühe Linuxi partitsiooni. Kui soovite seda/neid kasutada, valige see " "võimalus.\n" "Seejärel palutakse valida iga partitsiooniga seotud haakepunktid. Vaikimisi\n" "valitakse need juba ette ära ja üldiselt oleks mõistlik neid mitte muuta.\n" "\n" " * \"%s\": kui kõvakettale on paigaldatud\n" "Microsoft Windows ja see haarab enda alla kogu kõvaketta, tuleb Teil " "tekitada\n" "vaba ruum GNU/Linuxi andmetele. Selleks võib hävitada Microsoft Windowsi\n" "partitsiooni koos andmetega (vaata võimalusi \"Puhasta kogu ketas\" või\n" "\"Ekspertrežiim\") või selle suurust muuta. Viimast on võimalik sooritada " "ilma\n" "andmeid kaotamata, seda küll eeldusel, et olete varem Windowsi partitsiooni\n" "defragmenteerinud. Siiski ei tule kindlasti kahjuks ka andmetest varukoopia\n" "valmistamine... See lahendus on soovitatav, kui tahate kasutada ühes " "arvutis\n" "nii Mageiait kui Microsoft Windowsit.\n" "\n" " Enne selle valiku kasuks otsustamist pidage silmas, et kirjeldatud " "protseduuri\n" "järel on Teie Microsoft Windowsi partitsioon senisest väiksem, mis tähendab, " "et\n" "sellel on ka vähem ruumi andmete salvestamiseks või uue tarkvara " "paigaldamiseks.\n" "\n" " * \"%s\": kui soovite kustutada kõik andmed ja partitsioonid, mis\n" "kõvakettal parajasti on, ning asendada need uue Mageiai süsteemiga, " "on\n" "see õige valik. Aga tasub olla ettevaatlik, sest pärast selle valiku " "langetamist\n" "tagasiteed enam ei ole...\n" "\n" " NB! Kui valite selle võimaluse, kaotate kõik kõvakettal olevad " "andmed. !!\n" "\n" " * \"%s\": see puhastab kõvaketta senistest andmetest ja\n" "käivitab uue paigaldusprotsessi, luues kõik partitsioonid uuesti. Kaovad ka\n" "kõik kettal olnud andmed.\n" "\n" " NB! Kui valite selle võimaluse, kaotate kõik kõvakettal olevad " "andmed. !!\n" "\n" " * \"%s\": valige see, kui soovite ise kontrollida kõvaketta jagamist.\n" "Kuid olge ettevaatlik - see on küll võimas, aga ohte sisaldav\n" "valik, mille puhul võib kergesti kaotada olemasolevad andmed. Seepärast ei\n" "peaks seda valima, kui Te pole endas päris kindel. Täpsemalt saab teada,\n" "kuidas kasutada DiskDrake'i võimalusi, \"Põhiteadmiste käsiraamatu" "\" (\"Starter\n" "Guide\") alapeatükist \"Partitsioonide haldamine\"." #: ../help.pm:377 #, c-format msgid "Use existing partition" msgstr "Olemasolevate partitsioonide kasutamine" #: ../help.pm:370 #, c-format msgid "Use the free space on the Microsoft Windows® partition" msgstr "Vaba ruumi kasutamine Microsoft Windows® partitsioonil" #: ../help.pm:370 #, c-format msgid "Erase entire disk" msgstr "Kogu ketta tühjendamine" #: ../help.pm:380 #, c-format msgid "" "There you are. Installation is now complete and your GNU/Linux system is\n" "ready to be used. Just click on \"%s\" to reboot the system. Do not forget\n" "to remove the installation media (CD-ROM or floppy). The first thing you\n" "should see after your computer has finished doing its hardware tests is the\n" "boot-loader menu, giving you the choice of which operating system to start.\n" "\n" "The \"%s\" button shows two more buttons to:\n" "\n" " * \"%s\": enables you to create an installation floppy disk which will\n" "automatically perform a whole installation without the help of an operator,\n" "similar to the installation you've just configured.\n" "\n" " Note that two different options are available after clicking on that\n" "button:\n" "\n" " * \"%s\". This is a partially automated installation. The partitioning\n" "step is the only interactive procedure.\n" "\n" " * \"%s\". Fully automated installation: the hard disk is completely\n" "rewritten, all data is lost.\n" "\n" " This feature is very handy when installing on a number of similar\n" "machines. See the Auto install section on our web site for more\n" "information.\n" "\n" " * \"%s\"(*): saves a list of the packages selected in this installation.\n" "To use this selection with another installation, insert the floppy and\n" "start the installation. At the prompt, press the [F1] key, type >>linux\n" "defcfg=\"floppy\"<< and press the [Enter] key.\n" "\n" "(*) You need a FAT-formatted floppy. To create one under GNU/Linux, type\n" "\"mformat a:\", or \"fdformat /dev/fd0\" followed by \"mkfs.vfat\n" "/dev/fd0\"." msgstr "" "Ja nüüd ongi paigaldamine selja taga ning Teie GNU/Linuxi süsteem valmis " "tööks.\n" "Selleks tuleb vaid klõpsata \"%s\" ning arvuti teeb taaskäivituse. Ärge\n" "unustage eemaldamast paigaldus-andmekandjat (CD või diskett). Seejärel\n" "võite valida, kas käivitada GNU/Linux või Windows (kui Teie arvutis on mitu\n" "süsteemi).\n" "\n" "Nupp \"%s\" pakub veel kaks võimalust:\n" "\n" " * \"%s\": loob paigaldusdisketi, mis sooritab kogu\n" "paigaldamise ilma kasutajata, paigaldamine ise on samasugune nagu äsja\n" "seljataha jäänu.\n" "\n" " Selle valiku korral ilmub veel kaks erinevat võimalust:\n" "\n" " * \"%s\". See on osaliselt automaatne, sest kõvaketta jagamisel\n" "(aga ka ainult seal) on võimalik sekkuda.\n" "\n" " * \"%s\". Täisautomaatne paigaldus: kõvaketas kirjutatakse täielikult\n" "uuesti, kõik varasemad andmed kustutatakse.\n" "\n" " See võimalus võib olla kasulik, kui paigaldamine on kavas ette võtta " "paljudel\n" "ühesugustel masinatel. Lähemalt vaadake meie veebileheküljel\n" "automaatpaigalduse sektsiooni.\n" "\n" " * \"%s\"(*): salvestab paigaldamise käigus valitud pakettide\n" "nimekirja. Kui nüüd võtate ette uue paigalduse, asetage diskett seadmesse " "ning\n" "käivitage paigaldamine klahvile [F1] vajutades abiekraani vahendusel, andes " "käsu\n" ">>linux defcfg=\"floppy\"<< ja vajutades seejärel klahvi [Enter].\n" "\n" "(*) Teil läheb vaja FAT-vorminduses disketti. Sellise loomiseks GNU/Linuxi\n" "keskkonnas andke käsureal korraldus \"mformat a:\" või \"fdformat /dev/fd0" "\"\n" "ning seejärel \"mkfs.vfat /dev/fd0\"." #: ../help.pm:412 #, c-format msgid "Generate auto-install floppy" msgstr "Loo kiirpaigaldusdiskett" #: ../help.pm:405 #, c-format msgid "Replay" msgstr "Kordamine" #: ../help.pm:405 #, c-format msgid "Automated" msgstr "Automaatne" #: ../help.pm:405 #, c-format msgid "Save packages selection" msgstr "Paketivaliku salvestamine" #: ../help.pm:408 #, fuzzy, c-format msgid "" "If you chose to reuse some legacy GNU/Linux partitions, you may wish to\n" "reformat some of them and erase any data they contain. To do so, please\n" "select those partitions as well.\n" "\n" "Please note that it's not necessary to reformat all pre-existing\n" "partitions. You must reformat the partitions containing the operating\n" "system (such as \"/\", \"/usr\" or \"/var\") but you do not have to " "reformat\n" "partitions containing data that you wish to keep (typically \"/home\").\n" "\n" "Please be careful when selecting partitions. After the formatting is\n" "completed, all data on the selected partitions will be deleted and you\n" "will not be able to recover it.\n" "\n" "Click on \"%s\" when you're ready to format the partitions.\n" "\n" "Click on \"%s\" if you want to choose another partition for your new\n" "Mageia operating system installation.\n" "\n" "Click on \"%s\" if you wish to select partitions which will be checked for\n" "bad blocks on the disk." msgstr "" "Kõik värskelt loodud partitsioonid tuleb enne kasutamist vormindada\n" "ehk sinna tuleb luua failisüsteemid.\n" "\n" "Samuti võib vormindada varem olemas olnud partitsioonid, kui soovite\n" "seal leiduvad andmed ära kustutada.\n" "\n" "Pange tähele, et alati ei ole kõigi vanade partitsioonide vormindamine\n" "vajalik. Kindlasti tuleb vormindada partitsioonid, kus varem asus \"/\", \"/" "usr\"\n" "või \"/var\", aga kasutajate faile sisaldav \"/home\" võiks jääda alles.\n" "\n" "Olge partitsioonide valikul hoolas. Pärast vormindamist on kõik valitud\n" "partitsioonidel asunud andmed kustutatud ning neid ei ole võimalik " "taastada.\n" "\n" "Klõpsake \"%s\", kui olete vormindamiseks valmis.\n" "\n" "Klõpsake \"%s\", kui soovite valida oma uue Mageiai süsteemi\n" "paigaldamiseks mõne muu partitsiooni.\n" "\n" "Klõpsake \"%s\", kui soovite valida partitsioone, millel kontrollitaks\n" "vigaste plokkide olemasolu." #: ../help.pm:437 #, fuzzy, c-format msgid "" "By the time you install Mageia, it's likely that some packages will\n" "have been updated since the initial release. Bugs may have been fixed,\n" "security issues resolved. To allow you to benefit from these updates,\n" "you're now able to download them from the Internet. Check \"%s\" if you\n" "have a working Internet connection, or \"%s\" if you prefer to install\n" "updated packages later.\n" "\n" "Choosing \"%s\" will display a list of web locations from which updates can\n" "be retrieved. You should choose one near to you. A package-selection tree\n" "will appear: review the selection, and press \"%s\" to retrieve and install\n" "the selected package(s), or \"%s\" to abort." msgstr "" "On tõenäoline, et praegu, kui Te paigaldate Mageiait, on mõned\n" "paketid jõudnud pärast väljalaset juba uuenduskuuri üle elada. Mõnes on ära\n" "parandatud paar väiksemat viga, mõnes turvaprobleemid. Et võiksite neist\n" "uuendustest tulu lõigata, on Teil nüüd võimalik need Internetist alla " "laadida.\n" "Klõpsake \"%s\", kui Teie internetiühendus töötab, või \"%s\", kui " "eelistate\n" "pakette uuendada millalgi hiljem.\n" "\n" "Kui valite \"%s\", näidatakse Teile nimekirja kohtadega, kust uuendusi " "tõmmata\n" "saab. Valige endale lähim paik. Seejärel ilmub paketivaliku puu. Vaadake " "see\n" "üle ning klõpsake nupule \"%s\", kui soovite valitud paketi(d) alla laadida " "ja\n" "paigaldada, või \"%s\", kui Te ei soovi seda teha." #: ../help.pm:450 #, fuzzy, c-format msgid "" "At this point, DrakX will allow you to choose the security level you desire\n" "for your machine. As a rule of thumb, the security level should be set\n" "higher if the machine is to contain crucial data, or if it's to be directly\n" "exposed to the Internet. The trade-off that a higher security level is\n" "generally obtained at the expense of ease of use.\n" "\n" "If you do not know what to choose, keep the default option. You'll be able\n" "to change it later with the draksec tool, which is part of Mageia\n" "Control Center.\n" "\n" "Fill the \"%s\" field with the e-mail address of the person responsible for\n" "security. Security messages will be sent to that address." msgstr "" "Nüüd on aeg valida masinale sobiv turvatase. Rusikareeglina peaks\n" "turvatase olema seda kõrgem, mida ligipääsule avatum arvuti on ja mida " "rohkem\n" "leidub selles olulise tähtsusega andmeid. Samas muudab kõrgem turvatase\n" "enamasti kasutamise mõnevõrra keerukamaks.\n" "\n" "Kui Te ei tea, mida valida, jätke kehtima vaikimisi pakutud valik. Hiljem\n" "saate turvataset muuta Mageiai juhtimiskeskuses abivahendiga " "Draksec.\n" "\n" "Väli \"%s\" on mõeldud süsteemi turvalisuse eest vastutava kasutaja\n" "teavitamiseks. Turvalisusega seotud teated saadetakse sellele aadressile." #: ../help.pm:461 #, c-format msgid "Security Administrator" msgstr "Turvahaldur" #: ../help.pm:464 #, fuzzy, c-format msgid "" "At this point, you need to choose which partition(s) will be used for the\n" "installation of your Mageia system. If partitions have already been\n" "defined, either from a previous installation of GNU/Linux or by another\n" "partitioning tool, you can use existing partitions. Otherwise, hard disk drive\n" "partitions must be defined.\n" "\n" "To create partitions, you must first select a hard disk drive. You can select\n" "the disk for partitioning by clicking on ``hda'' for the first IDE drive,\n" "``hdb'' for the second, ``sda'' for the first SCSI drive and so on.\n" "\n" "To partition the selected hard disk drive, you can use these options:\n" "\n" " * \"%s\": this option deletes all partitions on the selected hard disk drive\n" "\n" " * \"%s\": this option enables you to automatically create ext3 and swap\n" "partitions in the free space of your hard disk drive\n" "\n" "\"%s\": gives access to additional features:\n" "\n" " * \"%s\": saves the partition table to a floppy. Useful for later\n" "partition-table recovery if necessary. It is strongly recommended that you\n" "perform this step.\n" "\n" " * \"%s\": allows you to restore a previously saved partition table from a\n" "floppy disk.\n" "\n" " * \"%s\": if your partition table is damaged, you can try to recover it\n" "using this option. Please be careful and remember that it does not always\n" "work.\n" "\n" " * \"%s\": discards all changes and reloads the partition table that was\n" "originally on the hard disk drive.\n" "\n" " * \"%s\": un-checking this option will force users to manually mount and\n" "unmount removable media such as floppies and CD-ROMs.\n" "\n" " * \"%s\": use this option if you wish to use a wizard to partition your\n" "hard disk drive. This is recommended if you do not have a good understanding of\n" "partitioning.\n" "\n" " * \"%s\": use this option to cancel your changes.\n" "\n" " * \"%s\": allows additional actions on partitions (type, options, format)\n" "and gives more information about the hard disk drive.\n" "\n" " * \"%s\": when you are finished partitioning your hard disk drive, this will\n" "save your changes back to disk.\n" "\n" "When defining the size of a partition, you can finely set the partition\n" "size by using the Arrow keys of your keyboard.\n" "\n" "Note: you can reach any option using the keyboard. Navigate through the\n" "partitions using [Tab] and the [Up/Down] arrows.\n" "\n" "When a partition is selected, you can use:\n" "\n" " * Ctrl-c to create a new partition (when an empty partition is selected)\n" "\n" " * Ctrl-d to delete a partition\n" "\n" " * Ctrl-m to set the mount point\n" "\n" "To get information about the different filesystem types available, please\n" "read the ext2FS chapter from the ``Reference Manual''.\n" "\n" "If you are installing on a PPC machine, you will want to create a small HFS\n" "``bootstrap'' partition of at least 1MB which will be used by the yaboot\n" "bootloader. If you opt to make the partition a bit larger, say 50MB, you\n" "may find it a useful place to store a spare kernel and ramdisk images for\n" "emergency boot situations." msgstr "" "Nüüd peate valima partitsiooni(d), kuhu soovite Mageiai paigaldada.\n" "Kui need on juba olemas kas GNU/Linuxi varasema paigalduse või mõne muu\n" "kettajagamisvahendi tegevuse tulemusena, võite kasutada olemasolevaid\n" "partitsioone. Vastasel juhul tuleb need luua.\n" "\n" "Partitsioon on loogiliselt eraldatud kõvaketta piirkond, mille suurust\n" "ei ole võimalik hiljem, töötavas süsteemis enam muuta. Samuti hävivad\n" "partitsiooni kustutamisel kõik selles leiduvad andmed.\n" "\n" "Kõvaketta jagamise lihtsustamiseks on loodud nõustaja, mille soovitused\n" "on harilikult mõistlikud.\n" "\n" "Partitsioonide loomiseks valige esmalt kõvaketas. \"hda\" tähendab siin " "esimest\n" "IDE-ketast, \"hdb\" teist IDE-ketast, \"sda\" esimest SCSI-ketast ja nii " "edasi.\n" "\n" "Valitud ketta jagamiseks on järgmised võimalused:\n" "\n" " * \"%s\": kustutatakse kõik olemasolevad partitsioonid\n" "sellel kettal.\n" "\n" " * \"%s\": sel juhul tekitatakse Linuxile vajalikud\n" "partitsioonid kõvaketta vabale osale automaatselt.\n" "\n" "\"%s\" pakub mõned lisavõimalused:\n" " * \"%s\": salvestab partitsioonitabeli disketile.\n" "Sellest on kasu hilisemal partitsioonitabeli taastamisel, kui seda vaja\n" "peaks olema. Igal juhul on äärmiselt soovitav see samm ette võtta.\n" "\n" " * \"%s\": võimaldab taastada disketilt varem\n" "salvestatud partitsioonitabeli.\n" "\n" " * \"%s\": kui partitsioonitabel on vigastatud, võib\n" "proovida seda parandada. Palun ärge selle peale siiski liiga palju lootke.\n" "\n" " * \"%s\": kui soovite tühistada kõik enda tehtud muutused ja alustada algse " "partitsioonitabeliga.\n" "\n" " * \"%s\": selle võimaluse\n" "tühistamine sunnib kasutajaid käsitsi haakima ja lahutama eemaldatavaid\n" "andmekandjaid, st diskette ja CD-sid.\n" "\n" " * \"%s\": kui soovite uue partitsioonitabeli loomisel samm-sammulist\n" "juhatust. See on soovitatav, kui Te ei ole varem midagi sellist teinud.\n" "\n" " * \"%s\": selle võimalusega saab tühistada kõik tehtud muudatused.\n" "\n" " * \"%s\": võimaldab partitsioonidega ette\n" "võtta lisaoperatsioone (tüüp, võtmed, vorming) ning pakub rohkem infot.\n" "\n" " * \"%s\": kui olete kõvaketta jagamise lõpetanud, saate sellele nupule\n" "klõpsates tehtud muudatused salvestada.\n" "\n" "Partitsiooni suurust määrates saate seda täpselt paika panna klaviatuuril\n" "asuvaid nooleklahve kasutades.\n" "\n" "Märkus: igale võimalusele pääseb ligi ka klaviatuuri abil. Partitsioonidel\n" "saab liikuda klahvidega [Tab] ning üles-alla nooleklahvidega.\n" "\n" "Partitsiooni valimisel saab ette võtta järgmisi toiminguid:\n" "\n" " * Ctrl+C uue partitsiooni loomine (kui valitud on tühi partitsioon).\n" "\n" " * Ctrl+D partitsiooni kustutamine.\n" "\n" " * Ctrl+M haakepunkti määramine.\n" "\n" "Lähemat infot erinevate failisüsteemitüüpide kohta leiab \"Süvateadmiste\n" "käsiraamatu\" (\"Reference Manual\") peatükist \"Linuxi failisüsteem\".\n" "\n" "Kui paigaldamine toimub PPC-masinas, tuleks luua vähemalt 1MB suurune\n" "väike HFS \"bootstrap\"-partitsioon, mida kasutab alglaadur yaboot. Kui Te\n" "aga teete selle partitsiooni natukene suuremaks (näiteks nii umbes 50MB),\n" "on see päris hea koht, kuhu hädaolukorraks paigutada tagavarakernel\n" "ja ramdisk-laadepildid." #: ../help.pm:526 #, c-format msgid "Save partition table" msgstr "Partitsioonitabeli salvestamine" #: ../help.pm:526 #, c-format msgid "Restore partition table" msgstr "Partitsioonitabeli taastamine" #: ../help.pm:526 #, c-format msgid "Rescue partition table" msgstr "Partitsioonitabeli päästmine" #: ../help.pm:526 #, c-format msgid "Removable media auto-mounting" msgstr "Eemaldatava andmekandja automaatne haakimine" #: ../help.pm:526 #, c-format msgid "Wizard" msgstr "Nõustaja" #: ../help.pm:526 #, c-format msgid "Undo" msgstr "Tagasi" #: ../help.pm:526 #, c-format msgid "Toggle between normal/expert mode" msgstr "Tava- ja ekspertrežiimi lülitamine" #: ../help.pm:536 #, fuzzy, c-format msgid "" "More than one Microsoft partition has been detected on your hard disk drive.\n" "Please choose the one which you want to resize in order to install your new\n" "Mageia operating system.\n" "\n" "Each partition is listed as follows: \"Linux name\", \"Windows name\"\n" "\"Capacity\".\n" "\n" "\"Linux name\" is structured: \"hard disk drive type\", \"hard disk drive number\",\n" "\"partition number\" (for example, \"hda1\").\n" "\n" "\"Hard disk drive type\" is \"hd\" if your hard dive is an IDE hard disk drive and\n" "\"sd\" if it is a SCSI hard disk drive.\n" "\n" "\"Hard disk drive number\" is always a letter after \"hd\" or \"sd\". With IDE\n" "hard disk drives:\n" "\n" " * \"a\" means \"master hard disk drive on the primary IDE controller\";\n" "\n" " * \"b\" means \"slave hard disk drive on the primary IDE controller\";\n" "\n" " * \"c\" means \"master hard disk drive on the secondary IDE controller\";\n" "\n" " * \"d\" means \"slave hard disk drive on the secondary IDE controller\".\n" "\n" "With SCSI hard disk drives, an \"a\" means \"lowest SCSI ID\", a \"b\" means\n" "\"second lowest SCSI ID\", etc.\n" "\n" "\"Windows name\" is the letter of your hard disk drive under Windows (the first\n" "disk or partition is called \"C:\")." msgstr "" "Teie arvuti kõvakettal on rohkem kui üks Microsoft Windowsi partitsioon.\n" "Palun valige välja see, mille suurust soovite Mageiai jaoks muuta.\n" "\n" "Teie abistamiseks on igal partitsioonil näidatud \"Nimi Linuxis\", \"Nimi " "Windowsis\" ja \"Mahutavus\".\n" "\n" "\"Nimi Linuxis\" koosneb kõvakettatüübist, selle numbrist ja partitsiooni\n" "numbrist (näiteks \"hda1\").\n" "\n" "Kõvaketta tüüp on \"hd\", kui on tegemist IDE-kettaga, ja \"sd\", kui on\n" "tegemist SCSI-kettaga.\n" "\n" "Kõvaketta number on alati täht \"hd\" või \"sd\" järel. IDE-ketastel:\n" "\n" " * \"a\" - esmase IDE kontrolleri ülem,\n" "\n" " * \"b\" - esmase IDE kontrolleri allutatu,\n" "\n" " * \"c\" - teisese IDE kontrolleri ülem,\n" "\n" " * \"d\" - teisese IDE kontrolleri allutatu.\n" "\n" "SCSI-ketaste puhul on \"a\" esimene, \"b\" teine ja nii edasi.\n" "\n" "\n" "\"Nimi Windowsis\" on täht, millega Microsoft Windows vastavat seadet\n" "tähistab (esimene ketas või partitsioon kannab nime \"C:\")." #: ../help.pm:567 #, c-format msgid "" "\"%s\": check the current country selection. If you're not in this country,\n" "click on the \"%s\" button and choose another. If your country is not in " "the\n" "list shown, click on the \"%s\" button to get the complete country list." msgstr "" "\"%s\": võimaldab kontrollida praegust riigi valikut. Kui see ei ole riik,\n" "kus Te viibite, klõpsake nupule \"%s\" ja valige mõni muu riik. Kui\n" "Teie riiki ei ole ilmuvas nimekirjas, klõpsake nupule \"%s\", mis avab\n" "riikide täisnimekirja." #: ../help.pm:572 #, fuzzy, c-format msgid "" "This step is activated only if an existing GNU/Linux partition has been\n" "found on your machine.\n" "\n" "DrakX now needs to know if you want to perform a new installation or an\n" "upgrade of an existing Mageia system:\n" "\n" " * \"%s\". For the most part, this completely wipes out the old system.\n" "However, depending on your partitioning scheme, you can prevent some of\n" "your existing data (notably \"home\" directories) from being over-written.\n" "If you wish to change how your hard disk drives are partitioned, or to change\n" "the filesystem, you should use this option.\n" "\n" " * \"%s\". This installation class allows you to update the packages\n" "currently installed on your Mageia system. Your current partitioning\n" "scheme and user data will not be altered. Most of the other configuration\n" "steps remain available and are similar to a standard installation.\n" "\n" "Using the ``Upgrade'' option should work fine on Mageia systems\n" "running version \"8.1\" or later. Performing an upgrade on versions prior\n" "to Mageia version \"8.1\" is not recommended." msgstr "" "Seda sammu on vaja ainult siis, kui masinas leiti varasem\n" "GNU/Linuxi partitsioon.\n" "\n" "DrakX soovib nüüd teada, kas tahate paigaldada uue süsteemi või uuendada\n" "olemasolevat Mageiai süsteemi:\n" "\n" " * \"%s\": üldiselt pühib see vana süsteemi täielikult minema. Kui\n" "soovite muuta praeguseid partitsioone või failisüsteemi, siis võiks seda " "võimalust\n" "kasutada. Sõltuvalt kettajagamise viisist on võimalik ka mõningaid andmeid\n" "ülekirjutamise eest päästa.\n" "\n" " * \"%s\": see paigaldamisviis võimaldab uuendada praegu olemasolevasse\n" "Mageiai süsteemi paigaldatud pakette. Kettajagamisskeemi ega " "kasutajate\n" "andmeid ei muudeta. Enamik seadistussamme on kasutatavad sarnaselt " "tavapärasele\n" "paigaldamisele.\n" "\n" "Võimalus \"Uuendus\" peaks toimima edukalt Mageiai süsteemides\n" "alates versioonist 8.1. Uuenduse proovimist varasemate versioonide peal\n" "me siiski ei soovita." #: ../help.pm:594 #, c-format msgid "" "Depending on the language you chose (), DrakX will automatically select a\n" "particular type of keyboard configuration. Check that the selection suits\n" "you or choose another keyboard layout.\n" "\n" "Also, you may not have a keyboard which corresponds exactly to your\n" "language: for example, if you are an English-speaking Swiss native, you may\n" "have a Swiss keyboard. Or if you speak English and are located in Quebec,\n" "you may find yourself in the same situation where your native language and\n" "country-set keyboard do not match. In either case, this installation step\n" "will allow you to select an appropriate keyboard from a list.\n" "\n" "Click on the \"%s\" button to be shown a list of supported keyboards.\n" "\n" "If you choose a keyboard layout based on a non-Latin alphabet, the next\n" "dialog will allow you to choose the key binding which will switch the\n" "keyboard between the Latin and non-Latin layouts." msgstr "" "Tavaliselt valib DrakX klaviatuuri Teie eest juba ära (sõltuvalt valitud\n" "keelest). Kuid see võib tekitada olukorra, kus Teil ikkagi pole just see\n" "klaviatuur, mida soovite: kui olete näiteks eesti keelt kõnelev\n" "hispaanlane, võite siiski soovida hispaania asetusega klaviatuuri. Teine " "kohe\n" "pähe tulev juhtum on läti keele kõneleja Eestis. Mõlemal juhul on\n" "mõtet naasta paigaldamise selle sammu juurde ja valida nimekirjast vajalik\n" "klaviatuur.\n" "\n" "Klõpsake nupul \"%s\", mis näitab kõiki toetatud klaviatuure.\n" "\n" "Kui valite mitte-ladina tähestikuga klaviatuuri, palutakse Teil järgmises\n" "dialoogis valida klahv või klahvikombinatsioon, mis vahetab ladina ja\n" "mitte-ladina asetusega klaviatuuri." #: ../help.pm:612 #, fuzzy, c-format msgid "" "The first step is to choose your preferred language.\n" "\n" "Your choice of preferred language will affect the installer, the\n" "documentation, and the system in general. First select the region you're\n" "located in, then the language you speak.\n" "\n" "Clicking on the \"%s\" button will allow you to select other languages to\n" "be installed on your workstation, thereby installing the language-specific\n" "files for system documentation and applications. For example, if Spanish\n" "users are to use your machine, select English as the default language in\n" "the tree view and \"%s\" in the Advanced section.\n" "\n" "About UTF-8 (unicode) support: Unicode is a new character encoding meant to\n" "cover all existing languages. However full support for it in GNU/Linux is\n" "still under development. For that reason, Mageia's use of UTF-8 will\n" "depend on the user's choices:\n" "\n" " * If you choose a language with a strong legacy encoding (latin1\n" "languages, Russian, Japanese, Chinese, Korean, Thai, Greek, Turkish, most\n" "iso-8859-2 languages), the legacy encoding will be used by default;\n" "\n" " * Other languages will use unicode by default;\n" "\n" " * If two or more languages are required, and those languages are not using\n" "the same encoding, then unicode will be used for the whole system;\n" "\n" " * Finally, unicode can also be forced for use throughout the system at a\n" "user's request by selecting the \"%s\" option independently of which\n" "languages were been chosen.\n" "\n" "Note that you're not limited to choosing a single additional language. You\n" "may choose several, or even install them all by selecting the \"%s\" box.\n" "Selecting support for a language means translations, fonts, spell checkers,\n" "etc. will also be installed for that language.\n" "\n" "To switch between the various languages installed on your system, you can\n" "launch the \"localedrake\" command as \"root\" to change the language used\n" "by the entire system. Running the command as a regular user will only\n" "change the language settings for that particular user." msgstr "" "Esimene samm on vajaliku keele valik. Siin saate valida keele,\n" "mida kasutada paigaldamisel ja hilisemas töös. Valige esmalt riik,\n" "kus asute, ning seejärel vajalik keel.\n" "\n" "Klõpsates nupul \"%s\", võite valida muid keeli, mida Teie tööjaamale\n" "paigaldada. Teiste keelte valikul paigaldatakse vastava keele rakenduste\n" "ja dokumentatsiooni failid. Kui Teie masinaga töötab näiteks kasutajaid\n" "Hispaaniast, valige puuvaates põhikeeleks eesti keel ning sektsioonis\n" "\"Muud\" märkige ära \"%s\".\n" "\n" "Mõni sõna UTF-8 (unicode) toetuse kohta. Unicode on uus kodeering, mis\n" "peaks hõlmama kõiki keeli. Selle täielik toetus ei ole GNU/Linuxis\n" "siiski veel täielikult teostatud. Seetõttu lähtub Mageia selle\n" "kasutamisel või mittekasutamisel järgmistest asjaoludest:\n" "\n" " * Kui valite keele, mis üldreeglina kasutab muud kodeeringut (latin1 \n" "keeled, vene, jaapani, hiina, korea, tai, kreeka, türgi keel, enamik\n" "ISO-8859-2 keeli), kasutatakse vaikimisi vastavat kodeeringut;\n" "\n" " * Muude keelte puhul võetakse vaikimisi kasutusele Unicode;\n" "\n" " * Kui valite mitu keelt, mis ei kasuta ühesugust kodeeringut,\n" "tarvitatakse vaikimisi Unicode'i;\n" " * Ja lõpuks: kui kasutaja seda soovib, võimaldab valik \"%s\"\n" "sõltumata valitud keelest kasutada kogu süsteemis Unicode'i.\n" "\n" "Te võite igal juhul valida soovi korral ka mitu keelt, märkides ära\n" "kasti \"%s\" Täiendavate keelte valimine tähendab, et süsteemi\n" "paigaldatakse ka neile keeltele vajalikud fondid, õigekirja\n" "kontrollijad, rakenduste ja dokumentatsiooni tõlked jms.\n" "\n" "Ühelt keelelt teisele lülitumiseks võite administraatorina anda käsu\n" "\"/usr/sbin/localedrake\", mis võimaldab muuta kogu süsteemi keelt,\n" "või tavakasutajana muuta ainult enda kohta käivat keeleseadistust." #: ../help.pm:650 #, c-format msgid "Espanol" msgstr "Hispaania" #: ../help.pm:643 #, c-format msgid "Use Unicode by default" msgstr "Vaikimisi Unicode kasutamine" #: ../help.pm:646 #, c-format msgid "" "Usually, DrakX has no problems detecting the number of buttons on your\n" "mouse. If it does, it assumes you have a two-button mouse and will\n" "configure it for third-button emulation. The third-button mouse button of a\n" "two-button mouse can be obtained by simultaneously clicking the left and\n" "right mouse buttons. DrakX will automatically know whether your mouse uses\n" "a PS/2, serial or USB interface.\n" "\n" "If you have a 3-button mouse without a wheel, you can choose a \"%s\"\n" "mouse. DrakX will then configure your mouse so that you can simulate the\n" "wheel with it: to do so, press the middle button and move your mouse\n" "pointer up and down.\n" "\n" "If for some reason you wish to specify a different type of mouse, select it\n" "from the list provided.\n" "\n" "You can select the \"%s\" entry to chose a ``generic'' mouse type which\n" "will work with nearly all mice.\n" "\n" "If you choose a mouse other than the default one, a test screen will be\n" "displayed. Use the buttons and wheel to verify that the settings are\n" "correct and that the mouse is working correctly. If the mouse is not\n" "working well, press the space bar or [Return] key to cancel the test and\n" "you will be returned to the mouse list.\n" "\n" "Occasionally wheel mice are not detected automatically, so you will need to\n" "select your mouse from a list. Be sure to select the one corresponding to\n" "the port that your mouse is attached to. After selecting a mouse and\n" "pressing the \"%s\" button, a mouse image will be displayed on-screen.\n" "Scroll the mouse wheel to ensure that it is activating correctly. As you\n" "scroll your mouse wheel, you will see the on-screen scroll wheel moving.\n" "Test the buttons and check that the mouse pointer moves on-screen as you\n" "move your mouse about." msgstr "" "Tavaliselt tuvastab DrakX hõlpsasti, mitme nupuga hiirt Te kasutate. Kui\n" "see välja ei tule, eeldatakse, et Teil on kahe nupuga hiir, ning " "kasutatakse\n" "kolmanda nupu emuleerimist. Kahenupulisel hiirel saab kolmandat nuppu\n" "\"klõpsata\" üheaegselt vasakut ja paremat nuppu alla vajutades. DrakX " "tuvastab\n" "automaatselt, kas tegemist on PS/2, jadapordi või USB-hiirega.\n" "\n" "Kui Teil on kolme nupuga, aga ilma rattata hiir, võite valida tüübiks\n" "\"%s\". DrakX seadistab seejärel hiire nii, et saate matkida hiireratast.\n" "Selleks klõpsake keskmist nuppu ja liigutage hiirt üles või alla.\n" "\n" "Kui soovite muuta hiiretüüpi, valige pakutud nimekirjast sobiv tüüp.\n" "\n" "Te võite alati valida võimaluse \"%s\", mis peaks toimima peaaegu igasuguse\n" "hiire korral.\n" "Kui valite mõne muu hiiretüübi kui vaikimisi määratu, palutakse Teil seda\n" "testida. Kasutage nuppe ja ratast kontrollimaks, et valik oli õige. Kui\n" "hiir ei käitu korralikult, vajutage tühikuklahvi või klahvi [Return], mis " "viib\n" "Teid tagasi dialoogi ja lubab uuesti valida.\n" "\n" "Vahel ei õnnestu rattaga hiirt automaatselt tuvastada. Siis tuleb see " "nimekirjast\n" "käsitsi valida. Kontrollige, et valite õigesse porti ühendatud hiiretüübi. " "Kui\n" "klõpsate nupule \"%s\", näidatakse hiire kujutist. Siis tuleb Teil " "liigutada\n" "hiireratast, et see korrektselt aktiveerida. Seejärel testige, kas kõik " "nupud\n" "ja liigutused toimivad korralikult." #: ../help.pm:684 #, c-format msgid "with Wheel emulation" msgstr "Ratta emuleerimisega" #: ../help.pm:684 #, c-format msgid "Universal | Any PS/2 & USB mice" msgstr "Universaalne | Suvaline PS/2 ja USB hiir" #: ../help.pm:687 #, c-format msgid "" "Please select the correct port. For example, the \"COM1\" port under\n" "Windows is named \"ttyS0\" under GNU/Linux." msgstr "" "Palun valige õige port. Näiteks MS Windowsi \"COM1\" kannab\n" "GNU/Linuxis nime \"ttyS0\"." #: ../help.pm:684 #, c-format msgid "" "A boot loader is a little program which is started by the computer at boot\n" "time. It's responsible for starting up the whole system. Normally, the boot\n" "loader installation is totally automated. DrakX will analyze the disk boot\n" "sector and act according to what it finds there:\n" "\n" " * if a Windows boot sector is found, it will replace it with a GRUB/LILO\n" "boot sector. This way you'll be able to load either GNU/Linux or any other\n" "OS installed on your machine.\n" "\n" " * if a GRUB or LILO boot sector is found, it'll replace it with a new one.\n" "\n" "If DrakX cannot determine where to place the boot sector, it'll ask you\n" "where it should place it. Generally, the \"%s\" is the safest place.\n" "Choosing \"%s\" will not install any boot loader. Use this option only if " "you\n" "know what you're doing." msgstr "" "Alglaadur on väike programm, mille arvuti käivitab alglaadimise ajal.\n" "Tavaliselt tuvastatakse see täiesti automaatselt.\n" "DrakX uurib ketta alglaadimissektorit ja talitab vastavalt sellele,\n" "mida ta sealt leiab:\n" "\n" " * kui leitakse Windowsi alglaadimissektor, asendatatakse see grub/LiLo\n" "alglaadimissektoriga. Nii võite laadida kas GNU/Linuxi või mõne muu OS-i.\n" "\n" " * kui leitakse grub-i või LiLo alglaadimissektor, asendatakse see uuega.\n" "\n" "Kui DrakX ei suuda asjast aru saada, küsitakse Teie käest, kuhu alglaadur\n" "paigutada. Üldiselt on \"%s\" kindlaim valik. Kui valida \"%s\", ei\n" "paigaldata alglaadurit üldse. Aga seda kasutage küll ainult siis, kui\n" "VÄGA TÄPSELT teate, mida teete!" #: ../help.pm:745 #, fuzzy, c-format msgid "" "Now, it's time to select a printing system for your computer. Other\n" "operating systems may offer you one, but Mageia offers two. Each of\n" "the printing systems is best suited to particular types of configuration.\n" "\n" " * \"%s\" -- which is an acronym for ``print, do not queue'', is the choice\n" "if you have a direct connection to your printer, you want to be able to\n" "panic out of printer jams, and you do not have networked printers. (\"%s\"\n" "will handle only very simple network cases and is somewhat slow when used\n" "within networks.) It's recommended that you use \"pdq\" if this is your\n" "first experience with GNU/Linux.\n" "\n" " * \"%s\" stands for `` Common Unix Printing System'' and is an excellent\n" "choice for printing to your local printer or to one halfway around the\n" "planet. It's simple to configure and can act as a server or a client for\n" "the ancient \"lpd\" printing system, so it's compatible with older\n" "operating systems which may still need print services. While quite\n" "powerful, the basic setup is almost as easy as \"pdq\". If you need to\n" "emulate a \"lpd\" server, make sure you turn on the \"cups-lpd\" daemon.\n" "\"%s\" includes graphical front-ends for printing or choosing printer\n" "options and for managing the printer.\n" "\n" "If you make a choice now, and later find that you do not like your printing\n" "system you may change it by running PrinterDrake from the Mageia\n" "Control Center and clicking on the \"%s\" button." msgstr "" "Siin saate valida oma arvuti trükkimissüsteemi. Teised " "operatsioonisüsteemid\n" "võivad Teile pakkuda vaid üht süsteemi, kuid Mageiai puhul saate\n" "valida tervelt kahe seast.\n" "\n" " * \"%s\" - mis tähendab \"trüki kohe\" (\"print, do not queue\") - tuleks " "valida siis,\n" "kui Teil on printeriga otseühendus, Te ei soovi näha mingeid järjekordi ja " "Teil\n" "ei ole võrgus asuvaid printereid. Võrkude puhul on \"%s\" mõnevõrra aeglane " "ja\n" "tal võib esineda tegutsemisraskusi. Kui see on Teie esimene retk GNU/Linuxi\n" "maailma, valige \"pdq\".\n" "\n" " * \"%s\" - \"tavaline UNIXi trükkimissüsteem\" (\"Common Unix Printing\n" "System\") - on hiilgav valik trükkimiseks Teie kohalikus printeris või ka " "mõnel teisel pool maakera asuvas\n" "printeris. See on lihtne süsteem, mis võib olla nii kliendiks kui serveriks " "iidsele\n" "trükkimissüsteemile \"lpd\". See on ka ühilduv varasemate süsteemidega.\n" "suudab teha palju asju, kuid põhitegutsemine on sama lihtne kui \"pdq\" " "puhul.\n" "Kui Teil on vajadus emuleerida \"lpd\"-serverit, tuleb sisse lülitada\n" "\"cups-lpd\"-deemon. \"%s\" pakub ka mitut graafilist kasutajaliidest\n" "trükkimiseks või printeri seadistamiseks.\n" "\n" "Kui leiate hiljem, et siinkohal langetatud valik polnud vahest kõige parem,\n" "siis saate seda muuta Mageiai juhtimiskeskuses PrinterDrake abil,\n" "klõpsates seal nupule \"%s\"." #: ../help.pm:768 #, c-format msgid "pdq" msgstr "pdq" #: ../help.pm:724 #, c-format msgid "CUPS" msgstr "CUPS" #: ../help.pm:724 #, c-format msgid "Expert" msgstr "Ekspertrežiim" #: ../help.pm:771 #, c-format msgid "" "DrakX will first detect any IDE devices present in your computer. It will\n" "also scan for one or more PCI SCSI cards on your system. If a SCSI card is\n" "found, DrakX will automatically install the appropriate driver.\n" "\n" "Because hardware detection is not foolproof, DrakX may fail in detecting\n" "your hard disk drives. If so, you'll have to specify your hardware by hand.\n" "\n" "If you had to manually specify your PCI SCSI adapter, DrakX will ask if you\n" "want to configure options for it. You should allow DrakX to probe the\n" "hardware for the card-specific options which are needed to initialize the\n" "adapter. Most of the time, DrakX will get through this step without any\n" "issues.\n" "\n" "If DrakX is not able to probe for the options to automatically determine\n" "which parameters need to be passed to the hardware, you'll need to manually\n" "configure the driver." msgstr "" "Esmalt otsib DrakX üles kõik Teie arvuti IDE-seadmed, püüdes samal ajal\n" "tuvastada ka PCI siini SCSI-liideseid. Kui viimaseid leitakse ja vastav(ad)\n" "draiver(id) on teada, siis laetakse ja paigaldatakse kõik vajalik " "automaatselt.\n" "\n" "Riistvara tuvastamine ei pruugi alati siiski õnnestuda ja kui see nii " "peaks \n" "minema, palub DrakX Teil teatada, kas masinas on mõni PCI SCSI-liides.\n" "\n" "Kui peate oma adapteri käsitsi määrama, küsib DrakX, kas soovite määrata\n" "ka selle parameetrid. Siin oleks mõtet lasta tegutseda DrakX'il, mis " "proovib\n" "järele liidese spetsiifilised omadused, mida see initsialiseerimiseks " "vajab.\n" "Tavaliselt õnnestub see edukalt.\n" "\n" "Kui automaatne parameetrite otsimine ei tööta, tuleb liides käsitsi " "seadistada.\n" "Selleks tutvuge palun lähemalt oma SCSI liidese dokumentatsiooniga\n" "või küsige abi riistvara müüjalt." #: ../help.pm:789 #, c-format msgid "" "\"%s\": if a sound card is detected on your system, it'll be displayed\n" "here. If you notice the sound card is not the one actually present on your\n" "system, you can click on the button and choose a different driver." msgstr "" "\"%s\": kui süsteemis leiti helikaart, näidatakse seda siin.\n" "Kui märkate, et näidatav helikaart ei ole mitte see, mis süsteemis\n" "Teie teada tegelikult on, klõpsake nuppu ja valige uus draiver." #: ../help.pm:794 #, fuzzy, c-format msgid "" "As a review, DrakX will present a summary of information it has gathered\n" "about your system. Depending on the hardware installed on your machine, you\n" "may have some or all of the following entries. Each entry is made up of the\n" "hardware item to be configured, followed by a quick summary of the current\n" "configuration. Click on the corresponding \"%s\" button to make the change.\n" "\n" " * \"%s\": check the current keyboard map configuration and change it if\n" "necessary.\n" "\n" " * \"%s\": check the current country selection. If you're not in this\n" "country, click on the \"%s\" button and choose another. If your country\n" "is not in the list shown, click on the \"%s\" button to get the complete\n" "country list.\n" "\n" " * \"%s\": by default, DrakX deduces your time zone based on the country\n" "you have chosen. You can click on the \"%s\" button here if this is not\n" "correct.\n" "\n" " * \"%s\": verify the current mouse configuration and click on the button\n" "to change it if necessary.\n" "\n" " * \"%s\": if a sound card is detected on your system, it'll be displayed\n" "here. If you notice the sound card is not the one actually present on your\n" "system, you can click on the button and choose a different driver.\n" "\n" " * \"%s\": if you have a TV card, this is where information about its\n" "configuration will be displayed. If you have a TV card and it is not\n" "detected, click on \"%s\" to try to configure it manually.\n" "\n" " * \"%s\": you can click on \"%s\" to change the parameters associated with\n" "the card if you feel the configuration is wrong.\n" "\n" " * \"%s\": by default, DrakX configures your graphical interface in\n" "\"800x600\" or \"1024x768\" resolution. If that does not suit you, click on\n" "\"%s\" to reconfigure your graphical interface.\n" "\n" " * \"%s\": if you wish to configure your Internet or local network access,\n" "you can do so now. Refer to the printed documentation or use the\n" "Mageia Control Center after the installation has finished to benefit\n" "from full in-line help.\n" "\n" " * \"%s\": allows to configure HTTP and FTP proxy addresses if the machine\n" "you're installing on is to be located behind a proxy server.\n" "\n" " * \"%s\": this entry allows you to redefine the security level as set in a\n" "previous step ().\n" "\n" " * \"%s\": if you plan to connect your machine to the Internet, it's a good\n" "idea to protect yourself from intrusions by setting up a firewall. Consult\n" "the corresponding section of the ``Starter Guide'' for details about\n" "firewall settings.\n" "\n" " * \"%s\": if you wish to change your bootloader configuration, click this\n" "button. This should be reserved to advanced users. Refer to the printed\n" "documentation or the in-line help about bootloader configuration in the\n" "Mageia Control Center.\n" "\n" " * \"%s\": through this entry you can fine tune which services will be run\n" "on your machine. If you plan to use this machine as a server it's a good\n" "idea to review this setup." msgstr "" "Siin näidatakse mitmeid Teie süsteemi puudutavaid parameetreid. Sõltuvalt\n" "riistvarast võite siin näha kõiki või osa järgmistest kirjetest. Iga kirje\n" "juures on ära toodud elemendid, mida on võimalik seadistada, ning Teie " "masinas\n" "praegu kehtiv seadistus. Selle muutmiseks klõpsake nupule \"%s\".\n" "\n" " * \"%s\": võimaldab kontrollida klaviatuuritabeli seadistusi\n" "ja neid vajaduse korral muuta.\n" "\n" " * \"%s\": võimaldab kontrollida asukohariigi valikut. Kui Te ei asu\n" "vaikimisi määratud riigis, klõpsake nupule \"%s\" ja valige uus\n" "riik. Kui Teie riiki ei ole ilmuvas nimekirjas, klõpsake nupule\n" "\"%s\", mis avab riikide täisnimekirja.\n" "\n" " * \"%s\": DrakX tuletab ajavööndi valitud riigi põhjal. Kui see ei peaks\n" "Teile sobima, klõpsake nupule \"%s\".\n" "\n" " * \"%s\": võimaldab kontrollida hiire seadistusi ja neid vajadusel muuta.\n" "\n" " * \"%s\": kui süsteemis leiti helikaart, näidatakse seda.\n" "Kui märkate, et siintoodud helikaart pole see, mis tegelikult on\n" "süsteemi paigaldatud, klõpsake nupule ja valige sobiv draiver.\n" "\n" " * \"%s\": kui süsteemis leiti TV-kaart, näidatakse seda.\n" "Kui Teil on TV-kaart, aga seda ei leitud, klõpsake nupule \"%s\"\n" "ning püüdke see käsitsi määrata.\n" "\n" " * \"%s\": nupule \"%s\" klõpsates saab muuta kaardiga seotud\n" "parameetreid, kui arvate, et need pole korrektsed.\n" "\n" " * \"%s\": vaikimisi määrab DrakX Teie graafilise liidese\n" "ekraanilahutuseks \"800x600\" või \"1024x768\". Kui see Teile ei sobi,\n" "klõpsake nupule \"%s\" ja valige mõni muu võimalus.\n" "\n" " * \"%s\": Kui soovite kohe seadistada juurdepääsu Internetti või\n" "kohtvõrku, saate seda teha nupule klõpsates. Täpsemalt kõnelevad\n" "võrgu seadistustest distributsiooniga kaasas olevad trükised või\n" "Mageiai juhtimiskeskuse abimaterjalid.\n" " * \"%s\": siin saab määrata HTTP ja FTP puhverserveri aadressid,\n" "kui Teie masin asub puhverserveri taga.\n" "\n" " * \"%s\": see võimaldab muuta eelmisel sammul paika pandud turvataset.\n" "\n" " * \"%s\": kui kavatsete oma süsteemi Internetti ühendada, kuluks\n" "ära enda kaitsmine rünnakute eest tulemüüriga. Vaadake\n" "üksikasju, kuidas tulemüüri seadistada, \"Põhiteadmiste käsiraamatu\" " "vastavast peatükist.\n" "\n" " * \"%s\": kui soovite muuta alglaaduri seadistusi, klõpsake\n" "sellele nupule. See on mõeldud siiski vaid kogenud kasutajatele.\n" "Täpsemat infot leiab käsiraamatust või Mageiai juhtimiskeskusest.\n" "\n" " * \"%s\": saate täpselt kontrollida, millised teenused Teie\n" "süsteemis töötavad. Kui kavatsete kasutada oma masinat serverina, kuluks\n" "ära seadistused üle vaadata." #: ../help.pm:809 #, c-format msgid "TV card" msgstr "TV-kaart" #: ../help.pm:809 #, c-format msgid "ISDN card" msgstr "ISDN kaart" #: ../help.pm:858 #, c-format msgid "Graphical Interface" msgstr "Graafiline kasutajaliides" #: ../help.pm:861 #, fuzzy, c-format msgid "" "Choose the hard disk drive you want to erase in order to install your new\n" "Mageia partition. Be careful, all data on this drive will be lost\n" "and will not be recoverable!" msgstr "" "Valige kõvaketas, mida soovite puhastada oma uue Mageiai\n" "paigaldamiseks. Ettevaatust, kõik sellel leiduvad andmed hävitatakse\n" "ja neid ei saa enam taastada." #: ../help.pm:866 #, c-format msgid "" "Click on \"%s\" if you want to delete all data and partitions present on\n" "this hard disk drive. Be careful, after clicking on \"%s\", you will not be able\n" "to recover any data and partitions present on this hard disk drive, including\n" "any Windows data.\n" "\n" "Click on \"%s\" to quit this operation without losing data and partitions\n" "present on this hard disk drive." msgstr "" "Valige \"%s\", kui soovite kustutada kõik sellel kettal asuvad\n" "partitsioonid. Ettevaatust, pärast \"%s\" klõpsamist ei ole enam\n" "võimalik sellelt kettalt andmeid taastada.\n" "\n" "Loobumiseks valige \"%s\", mis katkestab tegevuse ilma andmeid\n" "ja käesoleval kõvakettal olevaid partitsioone kustutamata." #: ../help.pm:872 #, c-format msgid "Next ->" msgstr "Järgmine ->" #: ../help.pm:872 #, c-format msgid "<- Previous" msgstr "<- Eelmine" #~ msgid "" #~ "\"%s\": clicking on the \"%s\" button will open the printer " #~ "configuration\n" #~ "wizard. Consult the corresponding chapter of the ``Starter Guide'' for " #~ "more\n" #~ "information on how to set up a new printer. The interface presented in " #~ "our\n" #~ "manual is similar to the one used during installation." #~ msgstr "" #~ "\"%s\": klõps nupul \"%s\" avab printeri seadistamise nõustaja.\n" #~ "Uurige lähemalt \"Põhiteadmiste käsiraamatu\" (\"Starter Guide\")\n" #~ "vastavast peatükist, kuidas uut printerit häälestada.\n" #~ "Siin näidatav sarnaneb sellele, mida võisite näha paigaldamise ajal." #~ msgid "" #~ "This is the most crucial decision point for the security of your GNU/" #~ "Linux\n" #~ "system: you must enter the \"root\" password. \"Root\" is the system\n" #~ "administrator and is the only user authorized to make updates, add " #~ "users,\n" #~ "change the overall system configuration, and so on. In short, \"root\" " #~ "can\n" #~ "do everything! That's why you must choose a password which is difficult " #~ "to\n" #~ "guess: DrakX will tell you if the password you chose is too simple. As " #~ "you\n" #~ "can see, you're not forced to enter a password, but we strongly advise\n" #~ "against this. GNU/Linux is just as prone to operator error as any other\n" #~ "operating system. Since \"root\" can overcome all limitations and\n" #~ "unintentionally erase all data on partitions by carelessly accessing the\n" #~ "partitions themselves, it is important that it be difficult to become\n" #~ "\"root\".\n" #~ "\n" #~ "The password should be a mixture of alphanumeric characters and at least " #~ "8\n" #~ "characters long. Never write down the \"root\" password -- it makes it " #~ "far\n" #~ "too easy to compromise your system.\n" #~ "\n" #~ "One caveat: do not make the password too long or too complicated because " #~ "you\n" #~ "must be able to remember it!\n" #~ "\n" #~ "The password will not be displayed on screen as you type it. To reduce " #~ "the\n" #~ "chance of a blind typing error you'll need to enter the password twice. " #~ "If\n" #~ "you do happen to make the same typing error twice, you'll have to use " #~ "this\n" #~ "``incorrect'' password the first time you'll try to connect as \"root\".\n" #~ "\n" #~ "If you want an authentication server to control access to your computer,\n" #~ "click on the \"%s\" button.\n" #~ "\n" #~ "If your network uses either LDAP, NIS, or PDC Windows Domain " #~ "authentication\n" #~ "services, select the appropriate one for \"%s\". If you do not know " #~ "which\n" #~ "one to use, you should ask your network administrator.\n" #~ "\n" #~ "If you happen to have problems with remembering passwords, or if your\n" #~ "computer will never be connected to the Internet and you absolutely " #~ "trust\n" #~ "everybody who uses your computer, you can choose to have \"%s\"." #~ msgstr "" #~ "Nüüd on kätte jõudnud kõige olulisem hetk Teie arvuti turvalisuse " #~ "tagamisel:\n" #~ "Teil tuleb määrata administraatori (\"root\") parool. Administraator " #~ "haldab kogu\n" #~ "süsteemi ja ainult temal on õigus seda uuendada, kasutajaid lisada, " #~ "muuta\n" #~ "kogu süsteemi seadistusi ja nii edasi. Ehk teisisõnu - administraator " #~ "võib teha\n" #~ "kõike! Seepärast tuleks parool valida selline, mida oleks raske ära " #~ "arvata.\n" #~ "DrakX ütleb Teile, kui parool tundub olevat liiga lihtne. Te võite " #~ "muidugi jätta\n" #~ "ka parooli sisestamata, aga me soovitame väga tungivalt seda siiski " #~ "teha.\n" #~ "Nagu iga muu operatsioonisüsteem, ei ole ka GNU/Linuxi süsteem " #~ "täielikult\n" #~ "kaitstud vigade eest. Kuna administraator võib kõiki piiranguid muuta " #~ "ning\n" #~ "vahel tahtmatultki kustutada oma hooletu tegevusega kõik andmed mingilt\n" #~ "partitsioonilt, on päris oluline, et administraatoriks saamine ei oleks\n" #~ "eriti lihtne.\n" #~ "\n" #~ "Parool võib koosneda nii tähtedest kui numbritest ja peab olema vähemalt\n" #~ "8 (kaheksa) märki pikk. Ärge pange kunagi administraatori parooli kirja - " #~ "see\n" #~ "võib muuta ligipääsu Teie süsteemile võõrastele liiga hõlpsaks.\n" #~ "\n" #~ "Väike soovitus - ärge siiski parooli liiga keeruliseks või pikaks ajage,\n" #~ "sest lõppeks peaksite seda ju suutma ka meelde jätta!\n" #~ "\n" #~ "Kui Te parooli sisestate, seda ekraanil ei näidata. Juhuslike näpuvigade\n" #~ "vältimiseks peate selle sisestama kaks korda järjest. Siiski, kui teete\n" #~ "mõlemal korral ühesuguse vea, on just see \"vigane\" parool, mida Teilt " #~ "oodatakse\n" #~ "administraatorina sisselogimisel.\n" #~ "\n" #~ "Kui soovite, et ligipääsu käesolevale arvutile kontrolliks mõni\n" #~ "autentimisserver, klõpsake nupul \"%s\".\n" #~ "\n" #~ "Kui Teie võrgus on kasutusel LDAP, NIS või PDC Windowsi domeeni " #~ "autentimise\n" #~ "teenused, valige neist sobilik \"%s\". Kui Te aga ei juhtu teadma,\n"