summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docs/SHORTCUTS6
-rw-r--r--perl-install/Makefile2
-rw-r--r--perl-install/c/Makefile.PL2
-rw-r--r--perl-install/c/README3
-rw-r--r--perl-install/c/stuff.xs.pm5
-rw-r--r--perl-install/commands.pm4
-rw-r--r--perl-install/common.pm13
-rw-r--r--perl-install/detect_devices.pm24
-rw-r--r--perl-install/devices.pm1
-rw-r--r--perl-install/fs.pm2
-rw-r--r--perl-install/install2.pm124
-rw-r--r--perl-install/install_any.pm92
-rw-r--r--perl-install/install_steps.pm52
-rw-r--r--perl-install/install_steps_auto_install.pm34
-rw-r--r--perl-install/install_steps_interactive.pm43
-rw-r--r--perl-install/install_steps_stdio.pm6
-rw-r--r--perl-install/partition_table.pm2
-rw-r--r--perl-install/partition_table_raw.pm6
-rw-r--r--perl-install/pkgs.pm15
-rw-r--r--perl-install/resize_fat/io.pm2
-rw-r--r--perl-install/run_program.pm3
-rw-r--r--perl-install/share/compssList2007
-rw-r--r--perl-install/share/po/DrakX.pot386
-rw-r--r--perl-install/swap.pm2
24 files changed, 1464 insertions, 1372 deletions
diff --git a/docs/SHORTCUTS b/docs/SHORTCUTS
index 47ff9661a..89d0c87df 100644
--- a/docs/SHORTCUTS
+++ b/docs/SHORTCUTS
@@ -1,4 +1,10 @@
********************************************************************************
+main shortcuts
+
+F11 -> previous step
+F12 -> next (reachable) step
+
+********************************************************************************
diskdrake
taken directly from diskdrake.pm:
diff --git a/perl-install/Makefile b/perl-install/Makefile
index fa479d9f8..23eb0253c 100644
--- a/perl-install/Makefile
+++ b/perl-install/Makefile
@@ -27,7 +27,7 @@ tags:
clean:
for i in $(DIRS); do $(MAKE) -C $$i clean; done
rm -rf gendepslist auto ../diskdrake*
- find . -name "*~" -o -name "TAGS" -o -name "*.old" | xargs rm -f
+ find . -name "*~" -o -name ".#*" -o -name "TAGS" -o -name "*.old" | xargs rm -f
tar: clean
cd .. ; tar cfy perl-install.tar.bz2 $(EXCLUDE:%=--exclude %) perl-install
diff --git a/perl-install/c/Makefile.PL b/perl-install/c/Makefile.PL
index a8d6df7b8..aa4032bb3 100644
--- a/perl-install/c/Makefile.PL
+++ b/perl-install/c/Makefile.PL
@@ -10,7 +10,7 @@ WriteMakefile(
'NAME' => 'stuff',
'OPTIMIZE' => '-Os',
'MAKEFILE' => 'Makefile_c',
- 'OBJECT' => 'stuff.o smp.o',
+ 'OBJECT' => 'stuff.o smp.o md5.o md5_crypt.o',
'VERSION_FROM' => 'stuff.pm', # finds $VERSION
'LIBS' => [$libs], # e.g., '-lm'
'DEFINE' => '', # e.g., '-DHAVE_SOMETHING'
diff --git a/perl-install/c/README b/perl-install/c/README
new file mode 100644
index 000000000..b5ad1224f
--- /dev/null
+++ b/perl-install/c/README
@@ -0,0 +1,3 @@
+md5.c, md5_crypt.c and md5.h are taken from pam (dir modules/pam_pwdb)
+
+smp.c is taken from RedHat's install
diff --git a/perl-install/c/stuff.xs.pm b/perl-install/c/stuff.xs.pm
index db07893a1..c7b0ed82e 100644
--- a/perl-install/c/stuff.xs.pm
+++ b/perl-install/c/stuff.xs.pm
@@ -109,6 +109,11 @@ setsid()
int
detectSMP()
+char*
+crypt_md5(pw, salt)
+ char *pw
+ char *salt
+
unsigned int
getpagesize()
diff --git a/perl-install/commands.pm b/perl-install/commands.pm
index 805647215..bb64fc180 100644
--- a/perl-install/commands.pm
+++ b/perl-install/commands.pm
@@ -281,7 +281,7 @@ sub dd {
my $u = "usage: dd [-h] [-p] [if=<file>] [of=<file>] [bs=<number>] [count=<number>]\n";
my ($help, $percent) = getopts(\@_, qw(hp));
die $u if $help;
- my %h = (if => \*STDIN, of => \*STDOUT, bs => 512, count => undef);
+ my %h = (if => *STDIN, of => *STDOUT, bs => 512, count => undef);
foreach (@_) {
/(.*?)=(.*)/ && exists $h{$1} or die $u;
$h{$1} = $2;
@@ -308,7 +308,7 @@ sub head_tail {
my ($h, $n) = getopts(\@_, qw(hn));
$h || @_ > 1 + bool($n) and die "usage: $0 [-h] [-n lines] [<file>]\n";
$n = $n ? shift : 10;
- local *F; @_ ? open(F, $_[0]) || die "error: can't open file $_[0]\n" : (*F = \*STDIN);
+ local *F; @_ ? open(F, $_[0]) || die "error: can't open file $_[0]\n" : (*F = *STDIN);
if ($0 eq 'head') {
foreach (<F>) { $n-- or return; print }
diff --git a/perl-install/common.pm b/perl-install/common.pm
index aab938f2f..e7c85ec2f 100644
--- a/perl-install/common.pm
+++ b/perl-install/common.pm
@@ -9,7 +9,7 @@ use vars qw(@ISA %EXPORT_TAGS @EXPORT_OK $printable_chars $sizeof_int $bitof_int
common => [ qw(__ even odd min max sqr sum sign product bool invbool listlength bool2text text2bool to_int to_float ikeys member divide is_empty_array_ref is_empty_hash_ref add2hash add2hash_ set_new set_add round round_up round_down first second top uniq translate untranslate warp_text formatAlaTeX formatLines) ],
functional => [ qw(fold_left compose map_index grep_index map_each grep_each map_tab_hash mapn mapn_ difference2 before_leaving catch_cdie cdie) ],
file => [ qw(dirname basename touch all glob_ cat_ symlinkf chop_ mode typeFromMagic) ],
- system => [ qw(sync makedev unmakedev psizeof strcpy gettimeofday syscall_ crypt_ getVarsFromSh setVarsInSh) ],
+ system => [ qw(sync makedev unmakedev psizeof strcpy gettimeofday syscall_ salt getVarsFromSh setVarsInSh) ],
constant => [ qw($printable_chars $sizeof_int $bitof_int $SECTORSIZE) ],
);
@EXPORT_OK = map { @$_ } values %EXPORT_TAGS;
@@ -222,11 +222,14 @@ sub syscall_ {
syscall(&{$common::{"SYS_$f"}}, @_) == 0;
}
-
-sub crypt_ {
- local $_ = sprintf("%2d", (gettimeofday())[1] % 0x40); #- make sure it is 2 char long.
+sub salt($) {
+ my ($nb) = @_;
+ require 'devices.pm';
+ open F, devices::make("random") or die "missing random";
+ my $s; read F, $s, $nb;
+ local $_ = pack "b8" x $nb, unpack "b6" x $nb, $s;
tr [\0-\x3f] [0-9a-zA-Z./];
- crypt($_[0], $_)
+ $_;
}
sub makedev { ($_[0] << 8) | $_[1] }
diff --git a/perl-install/detect_devices.pm b/perl-install/detect_devices.pm
index af856e7ef..7119fbd84 100644
--- a/perl-install/detect_devices.pm
+++ b/perl-install/detect_devices.pm
@@ -15,8 +15,6 @@ use c;
#- Globals
#-#####################################################################################
my @netdevices = map { my $l = $_; map { "$l$_" } (0..3) } qw(eth tr plip fddi);
-my $scsiDeviceAvailable;
-my $CSADeviceAvailable;
#-######################################################################################
#- Functions
@@ -49,24 +47,17 @@ sub isZipDrive() { $_[0]->{info} =~ /ZIP\s+\d+/ } #- accept ZIP 100, untested fo
sub isRemovableDrive() { &isZipDrive } #-or &isJazzDrive }
sub hasSCSI() {
- defined $scsiDeviceAvailable and return $scsiDeviceAvailable;
local *F;
open F, "/proc/scsi/scsi" or log::l("failed to open /proc/scsi/scsi: $!"), return 0;
foreach (<F>) {
- /devices: none/ and log::l("no scsi devices are available"), return $scsiDeviceAvailable = 0;
+ /devices: none/ and log::l("no scsi devices are available"), return 0;
}
log::l("scsi devices are available");
- $scsiDeviceAvailable = 1;
+ 1;
}
sub hasIDE() { -e "/proc/ide" }
sub hasDAC960() { 1 }
-
-sub hasCompaqSmartArray() {
- defined $CSADeviceAvailable and return $CSADeviceAvailable;
- -r "/proc/array/ida0" or log::l("failed to open /proc/array/ida0: $!"), return $CSADeviceAvailable = 0;
- log::l("Compaq Smart Array controllers available");
- $CSADeviceAvailable = 1;
-}
+sub hasCompaqSmartArray() { -r "/proc/array/ida0" }
sub getSCSI() {
my @drives;
@@ -174,12 +165,12 @@ sub hasNetDevice($) { c::hasNetDevice($_[0]) }
sub tryOpen($) {
local *F;
- sysopen F, devices::make($_[0]), c::O_NONBLOCK() and \*F;
+ sysopen F, devices::make($_[0]), c::O_NONBLOCK() and *F;
}
sub tryWrite($) {
local *F;
- sysopen F, devices::make($_[0]), 1 | c::O_NONBLOCK() and \*F;
+ sysopen F, devices::make($_[0]), 1 | c::O_NONBLOCK() and *F;
}
sub syslog {
@@ -188,8 +179,9 @@ sub syslog {
}
sub hasSMP {
- my $nb = grep { /^processor/ } cat_("/proc/cpuinfo");
- $nb > 1;
+#- my $nb = grep { /^processor/ } cat_("/proc/cpuinfo");
+#- $nb > 1;
+ c::detectSMP();
}
sub whatParport() {
diff --git a/perl-install/devices.pm b/perl-install/devices.pm
index b7f3a54d9..53351d3ee 100644
--- a/perl-install/devices.pm
+++ b/perl-install/devices.pm
@@ -92,6 +92,7 @@ sub make($) {
"mcd" => [ c::S_IFBLK(), 23, 0 ],
"mcdx" => [ c::S_IFBLK(), 20, 0 ],
"nst0" => [ c::S_IFCHR(), 9, 128 ],
+ "random" => [ c::S_IFCHR(), 1, 8 ],
"optcd" => [ c::S_IFBLK(), 17, 0 ],
"sbpcd" => [ c::S_IFBLK(), 25, 0 ],
"scd0" => [ c::S_IFBLK(), 11, 0 ],
diff --git a/perl-install/fs.pm b/perl-install/fs.pm
index f25858d01..5625e0f80 100644
--- a/perl-install/fs.pm
+++ b/perl-install/fs.pm
@@ -232,7 +232,7 @@ sub write_fstab($;$$) {
#- keep in mind the new line for fstab.
@new{($_->{mntpoint}, $_->{"$dir$_->{device}"})} = undef;
- devices::make("$prefix/$dir$_->{device}") if $_->{device} && $dir;
+ eval { devices::make("$prefix/$dir$_->{device}") } if $_->{device} && $dir;
[ "$dir$_->{device}", $_->{mntpoint}, type2fs($_->{type}), $options, $freq, $passno ];
diff --git a/perl-install/install2.pm b/perl-install/install2.pm
index 688bf1894..026994dae 100644
--- a/perl-install/install2.pm
+++ b/perl-install/install2.pm
@@ -28,7 +28,7 @@ use printer;
use modules;
use detect_devices;
use modparm;
-use install_steps_graphical;
+#-use install_steps_graphical;
use run_program;
#-######################################################################################
@@ -120,9 +120,9 @@ my %suggestedPartitions = (
$o = $::o = {
# bootloader => { linear => 0, message => 1, timeout => 5, restricted => 0 },
autoSCSI => 0,
- mkbootdisk => 1, #- no mkbootdisk if 0 or undef, find a floppy with 1
+ mkbootdisk => 1, #- no mkbootdisk if 0 or undef, find a floppy with 1, or fd1
#- packages => [ qw() ],
- partitioning => { clearall => 0, eraseBadPartitions => 0, auto_allocate => 0, autoformat => 0, readonly => 1 },
+ partitioning => { clearall => 0, eraseBadPartitions => 0, auto_allocate => 0, autoformat => 0, readonly => 0 },
#- partitions => [
#- { mntpoint => "/boot", size => 16 << 11, type => 0x83 },
#- { mntpoint => "/", size => 256 << 11, type => 0x83 },
@@ -136,6 +136,7 @@ $o = $::o = {
#- { mntpoint => "/usr", size => 400 << 11, type => 0x83, growable => 1 },
#- ],
shells => [ map { "/bin/$_" } qw(bash tcsh zsh ash ksh) ],
+ authentification => { md5 => 1, shadow => 1 },
lang => 'en',
isUpgrade => 0,
installClass => "beginner",
@@ -179,7 +180,7 @@ $o = $::o = {
steps => \%installSteps,
orderedSteps => \@orderedInstallSteps,
- base => [ qw(basesystem sed initscripts console-tools mkbootdisk anacron rhs-hwdiag utempter ldconfig chkconfig ntsysv mktemp setup filesystem SysVinit bdflush crontabs dev e2fsprogs etcskel fileutils findutils getty_ps grep groff gzip hdparm info initscripts isapnptools kbdconfig kernel less ldconfig lilo logrotate losetup man mkinitrd mingetty modutils mount net-tools passwd procmail procps psmisc mandrake-release rootfiles rpm sash sed setconsole setserial shadow-utils sh-utils slocate stat sysklogd tar termcap textutils time tmpwatch util-linux vim-minimal vixie-cron which cpio perl) ],
+ base => [ qw(basesystem sed initscripts console-tools mkbootdisk anacron rhs-hwdiag utempter ldconfig chkconfig ntsysv mktemp setup filesystem SysVinit bdflush crontabs dev e2fsprogs etcskel fileutils findutils getty_ps grep groff gzip hdparm info initscripts isapnptools kernel less ldconfig lilo logrotate losetup man mkinitrd mingetty modutils mount net-tools passwd procmail procps psmisc mandrake-release rootfiles rpm sash sed setconsole setserial shadow-utils sh-utils slocate stat sysklogd tar termcap textutils time tmpwatch util-linux vim-minimal vixie-cron which cpio perl) ],
#- for the list of fields available for user and superuser, see @etc_pass_fields in install_steps.pm
#- intf => [ { DEVICE => "eth0", IPADDR => '1.2.3.4', NETMASK => '255.255.255.128' } ],
@@ -215,8 +216,7 @@ sub selectLanguage {
sub selectMouse {
my ($clicked) = $_[0];
- $o->{mouse} ||= {};
- add2hash($o->{mouse}, { mouse::read($o->{prefix}) }) if $o->{isUpgrade} && !$clicked;
+ add2hash($o->{mouse} ||= {}, { mouse::read($o->{prefix}) }) if $o->{isUpgrade} && !$clicked;
$o->selectMouse($clicked);
addToBeDone { mouse::write($o->{prefix}, $o->{mouse}); } 'formatPartitions';
@@ -228,7 +228,7 @@ sub selectKeyboard {
return unless $o->{isUpgrade} || !$::beginner || $clicked;
- $o->{keyboard} = (keyboard::read($o->{prefix}))[0] if $o->{isUpgrade} && !$clicked && !$o->{keyboard_force};
+ $o->{keyboard} = (keyboard::read($o->{prefix}))[0] if $o->{isUpgrade} && !$clicked && $o->{keyboard_unsafe};
$o->selectKeyboard if !$::beginner || $clicked;
#- if we go back to the selectKeyboard, you must rewrite
@@ -277,7 +277,7 @@ sub partitionDisks {
$::o->{steps}{formatPartitions}{done} = 0;
eval { fs::umount_all($o->{fstab}, $o->{prefix}) } if $o->{fstab} && !$::testing;
- my $ok = is_empty_array_ref($o->{hds}) ? install_any::getHds($o) : 1;
+ my $ok = fsedit::get_root($o->{fstab} || []) ? 1 : install_any::getHds($o);
my $auto = $ok && !$o->{partitioning}{readonly} &&
($o->{partitioning}{auto_allocate} || $::beginner && fsedit::get_fstab(@{$o->{hds}}) < 4);
@@ -352,15 +352,16 @@ sub configureNetwork {
$o->configureNetwork($entered == 1 && !$clicked)
}
#------------------------------------------------------------------------------
-#-PADTODO
sub configureTimezone {
my ($clicked) = $_[0];
my $f = "$o->{prefix}/etc/sysconfig/clock";
- return if ((-s $f) || 0) > 0 && $_[1] == 1 && !$clicked && !$::testing;
- add2hash($o->{timezone}, { timezone::read($f) }) if $o->{isUpgrade} && !$clicked;
+ if ($o->{isUpgrade} && -r $f && -s $f > 0) {
+ return if $_[1] == 1 && !$clicked;
+ #- can't be done in install cuz' timeconfig %post creates funny things
+ add2hash($o->{timezone}, { timezone::read($f) });
+ }
$o->{timezone}{GMT} = 1 unless exists $o->{timezone}{GMT}; #- take GMT by default if nothing else.
-
$o->timeConfig($f);
}
#------------------------------------------------------------------------------
@@ -376,17 +377,14 @@ sub setRootPassword {
return if $o->{isUpgrade};
$o->setRootPassword;
+ addToBeDone { install_any::setAuthentication() } 'doInstallStep';
}
#------------------------------------------------------------------------------
sub addUser {
return if $o->{isUpgrade};
$o->addUser;
-
- addToBeDone {
- install_any::enableMD5($o->{prefix});
- run_program::rooted($o->{prefix}, "pwconv") or log::l("pwconv failed"); #- use shadow passwords
- } 'doInstallStep';
+ install_any::setAuthentication();
}
#------------------------------------------------------------------------------
@@ -400,7 +398,7 @@ sub createBootdisk {
#------------------------------------------------------------------------------
sub setupBootloader {
- return if $o->{lnx4win};
+ return if $o->{lnx4win} || $::g_auto_install;
$o->setupBootloaderBefore if $_[1] == 1;
$o->setupBootloader($_[1] - 1);
@@ -421,29 +419,42 @@ sub main {
$SIG{__DIE__} = sub { chomp $_[0]; log::l("ERROR: $_[0]") };
$::beginner = $::expert = $::g_auto_install = 0;
- while (@_) {
- local $_ = shift;
- if (/--method/) {
- $o->{method} = shift;
- } elsif (/--step/) {
- $o->{steps}{first} = shift;
- } elsif (/--expert/) {
- $::expert = 1;
- } elsif (/--beginner/) {
- $::beginner = 1;
- #} elsif (/--ks/ || /--kickstart/) {
- # $::auto_install = 1;
- } elsif (/--g_auto_install/) {
- $::testing = $::g_auto_install = 1;
- $o->{partitioning}{auto_allocate} = 1;
- } elsif (/--pcmcia/) {
- $o->{pcmcia} = shift;
- } elsif (/--readonly/) {
- $o->{partitioning}{readonly} = 1;
- } elsif (/--lnx4win/) {
- $o->{lnx4win} = 1;
+
+ my %cmdline; map {
+ my ($n, $v) = split '=';
+ $cmdline{$n} = $v || 1;
+ } split ' ', cat_("/proc/cmdline");
+
+ my $opt; foreach (@_) {
+ if (/^--?(.*)/) {
+ $cmdline{$opt} = 1 if $opt;
+ $opt = $1;
+ } else {
+ $cmdline{$opt} = $_ if $opt;
+ $opt = '';
}
- }
+ } $cmdline{$opt} = 1 if $opt;
+
+ map_each {
+ my ($n, $v) = @_;
+ my $f = ${{
+ method => sub { $o->{method} = $v },
+ pcmcia => sub { $o->{pcmcia} = $v },
+ step => sub { $o->{steps}{first} = $v },
+ expert => sub { $o->{installClass} = 'expert'; $::expert = 1 },
+ beginner => sub { $o->{installClass} = 'beginner'; $::beginner = 1 },
+ lnx4win => sub { $o->{lnx4win} = 1 },
+ readonly => sub { $o->{partitioning}{readonly} = 1 },
+ test => sub { $::testing = 1 },
+ display => sub { $o->{display} = $v },
+# ks => sub { $::auto_install = 1 },
+# kickstart => sub { $::auto_install = 1 },
+# auto_install => sub { $::auto_install = 1 },
+ defaultcfg => sub { $o = install_any::loadO($o, $v) },
+ alawindows => sub { $o->{partitioning}{clearall} = 1; $o->{bootloader}{crushMbr} = 1 },
+ g_auto_install => sub { $::testing = $::g_auto_install = 1; $o->{partitioning}{auto_allocate} = 1 },
+ }}{lc $n}; &$f if $f;
+ } %cmdline;
unlink "/sbin/insmod" unless $::testing;
unlink "/modules/pcmcia_core.o" unless $::testing; #- always use module from archive.
@@ -470,21 +481,14 @@ sub main {
$ENV{LD_LIBRARY_PATH} = "";
if ($::auto_install) {
- require 'install_steps.pm';
- fs::mount(devices::make("fd0"), "/mnt", "vfat", 0);
-
- my $O = $o;
- my $f = "/mnt/auto_inst.cfg";
- {
- local *F;
- open F, $f or die _("Error reading file $f");
-
- local $/ = "\0";
- eval <F>;
+ require 'install_steps_auto_install.pm';
+ my $f = "auto_inst.cfg";
+ unless ($::testing) {
+ fs::mount(devices::make("fd0"), "/mnt", "vfat", 0);
+ $f = "/mnt/$f";
}
- $@ and die _("Bad kickstart file %s (failed %s)", $f, $@);
- fs::umount("/mnt");
- add2hash($o, $O);
+ $o = install_any::loadO($o, $f);
+ fs::umount("/mnt") unless $::testing;
} else {
require 'install_steps_graphical.pm';
}
@@ -500,7 +504,7 @@ sub main {
eval { $o->{mouse} ||= mouse::detect() };
$::o = $o = $::auto_install ?
- install_steps->new($o) :
+ install_steps_auto_install->new($o) :
install_steps_graphical->new($o);
$o->{netc} = network::read_conf("/tmp/network");
@@ -553,15 +557,7 @@ sub main {
log::l("installation complete, leaving");
print "\n" x 30;
- if ($::g_auto_install) {
- my $h = $o; $o = {};
- $h->{$_} and $o->{$_} = $h->{$_} foreach qw(lang autoSCSI printer mouse netc timezone bootloader superuser intf keyboard mkbootdisk base user modules installClass partitions);
-
- delete $o->{user}{password2};
- delete $o->{superuser}{password2};
-
- print Data::Dumper->Dump([$o], ['$o']), "\0";
- }
+ install_any::g_auto_install() if $::g_auto_install;
}
#-######################################################################################
diff --git a/perl-install/install_any.pm b/perl-install/install_any.pm
index 1575db050..bd63f664c 100644
--- a/perl-install/install_any.pm
+++ b/perl-install/install_any.pm
@@ -43,7 +43,7 @@ sub getFile($) {
} else {
*install_any::getFile = sub($) {
open getFile, "/tmp/rhimage/" . relGetFile($_[0]) or return;
- \*getFile;
+ *getFile;
};
}
goto &getFile;
@@ -118,6 +118,8 @@ sub setPackages($$) {
eval { $o->{packages} = pkgs::psUsingHdlist() } if $useHdlist;
$o->{packages} = pkgs::psUsingDirectory() if !$useHdlist || $@;
+ $o->{packages}{$_}{selected} = 1 foreach @{$o->{default_packages} || []};
+
pkgs::getDeps($o->{packages});
my $c; ($o->{compss}, $c) = pkgs::readCompss($o->{packages});
@@ -135,6 +137,7 @@ sub setPackages($$) {
pkgs::select($o->{packages}, $p, 1);
} foreach @{$o->{base}};
}
+ return if $::auto_install;
($o->{packages_}{ind}, $o->{packages_}{select_level}) = pkgs::setSelectedFromCompssList($o->{compssListLevels}, $o->{packages}, getAvailableSpace($o) * 0.7, $o->{installClass}, $o->{lang}, $o->{isUpgrade});
}
@@ -189,6 +192,7 @@ I'll try to go on blanking bad partitions")) unless $o->{partitioning}{readonly}
fs::check_mounted($o->{fstab});
+ $o->{partitioning}{clearall} and return 1;
$o->ask_warn('',
_("DiskDrake failed to read correctly the partition table.
Continue at your own risk!")) if !$ok2 && $ok && !$o->{partitioning}{readonly};
@@ -260,19 +264,51 @@ sub write_ldsoconf {
}
}
-sub enableMD5 {
- my ($prefix) = @_;
- local @ARGV = map { "$prefix/etc/pam.d/$_" } qw(login rlogin passwd);
+sub setAuthentication() {
+ my ($shadow, $md5) = @{$::o->{authentification} || {}}{qw(shadow md5)};
+ enableMD5Shadow($::o->{prefix}, $shadow, $md5);
+ enableShadow() if $shadow;
+}
+
+sub enableShadow() {
+ my $p = $::o->{prefix};
+ run_program::rooted($p, "pwconv") or log::l("pwconv failed");
+ run_program::rooted($p, "grpconv") or log::l("grpconv failed");
+
+#- my $chpasswd = sub {
+#- my ($name, $password) = @_;
+#- $password =~ s/"/\\"/;
+#-
+#- local *log::l = sub {}; #- disable the logging (otherwise password visible in the log)
+#- run_program::rooted($p, qq((echo "$password" ; sleep 1 ; echo "$password") | passwd $name));
+#-#- run_program::rooted($p, "echo $name:$password | chpasswd");
+#- };
+#- &$chpasswd("root", $::o->{superuser}{password});
+#- &$chpasswd($_->{name}, $_->{password}) foreach @{$::o->{users} || []};
+}
+
+sub enableMD5Shadow($$$) {
+ my ($prefix, $shadow, $md5) = @_;
+ local @ARGV = grep { -r $_ } map { "$prefix/etc/pam.d/$_" } qw(login rlogin passwd) or return;
local $^I = '';
while (<>) {
if (/^password.*pam_pwdb.so/) {
- /\s*shadow/ or s/$/ shadow/;
- /\s*md5/ or s/$/ md5/;
+ s/\s*shadow//; s/\s*md5//;
+ s/$/ shadow/ if $shadow;
+ s/$/ md5/ if $md5;
}
print;
}
}
+sub crypt($) {
+ my ($password) = @_;
+
+ $::o->{authentification}{md5} ?
+ c::crypt_md5($password, salt(8)) :
+ crypt ($password, salt(2));
+}
+
sub lnx4win_postinstall {
my ($prefix) = @_;
my $dir = "/dos/lnx4win";
@@ -291,6 +327,48 @@ sub killCardServices {
}
sub unlockCdroms {
- ioctl detect_devices::tryOpen($_), c::CDROM_LOCKDOOR(), 0
+ ioctl detect_devices::tryOpen($_->{device}), c::CDROM_LOCKDOOR(), 0
foreach detect_devices::cdroms();
}
+
+sub g_auto_install {
+ my $o = {};
+
+ $o->{default_packages} = [ map { $_->{name} } grep { $_->{selected} && !$_->{base} } values %{$::o->{packages}} ];
+
+ my @fields = qw(mntpoint type size);
+ $o->{partitions} = [ map { my %l; @l{@fields} = @$_{@fields}; \%l } grep { $_->{mntpoint} } @{$::o->{fstab}} ];
+
+ exists $::o->{$_} and $o->{$_} = $::o->{$_} foreach qw(lang autoSCSI authentification printer mouse netc timezone superuser intf keyboard mkbootdisk base users installClass partitioning); #- TODO modules bootloader
+
+ $o->{partitioning}{clearall} = 1;
+
+ delete @$_{qw(oldu oldg pw password2)} foreach $o->{superuser}, @{$o->{users} || []};
+
+ local *F;
+ open F, ">auto_inst.cfg.pl" or die;
+ print F Data::Dumper->Dump([$o], ['$o']), "\0";
+}
+
+sub loadO {
+ my ($O, $f) = @_;
+ my $o;
+ -e $f or $f .= ".pl";
+ {
+ local *F;
+ open F, $f or die _("Error reading file $f");
+
+ local $/ = "\0";
+ eval <F>;
+ }
+ $@ and log::l _("Bad kickstart file %s (failed %s)", $f, $@);
+ add2hash_($o, $O);
+ $o;
+}
+
+sub pkg_install {
+ my ($o, $name) = @_;
+ my $p = $o->{packages}{$name} or die "$name rpm not found";
+ pkgs::install($o->{prefix}, [ $p ]);
+}
+
diff --git a/perl-install/install_steps.pm b/perl-install/install_steps.pm
index 41d7a59cb..6a5005d8e 100644
--- a/perl-install/install_steps.pm
+++ b/perl-install/install_steps.pm
@@ -38,11 +38,11 @@ sub new($$) {
#-######################################################################################
#- In/Out Steps Functions
#-######################################################################################
-sub enteringStep($$) {
+sub enteringStep {
my ($o, $step) = @_;
log::l("starting step `$step'");
}
-sub leavingStep($$) {
+sub leavingStep {
my ($o, $step) = @_;
log::l("step `$step' finished");
@@ -82,7 +82,8 @@ sub selectLanguage {
my ($o) = @_;
lang::set($o->{lang});
- unless ($o->{keyboard_force}) {
+ if ($o->{keyboard_unsafe} || !$o->{keyboard}) {
+ $o->{keyboard_unsafe} = 1;
$o->{keyboard} = keyboard::lang2keyboard($o->{lang});
selectKeyboard($o);
}
@@ -221,6 +222,9 @@ sub configureNetwork($) {
network::add2hosts("$etc/hosts", $o->{netc}{HOSTNAME}, map { $_->{IPADDR} } @{$o->{intf}});
network::sethostname($o->{netc}) unless $::testing;
network::addDefaultRoute($o->{netc}) unless $::testing;
+
+ install_any::pkg_install($o, "dhcpcd") if grep { $_->{BOOTPROTO} eq "dhcp" } @{$o->{intf}};
+ install_any::pkg_install($o, "pump") if grep { $_->{BOOTPROTO} eq "bootp" } @{$o->{intf}};
#-res_init(); #- reinit the resolver so DNS changes take affect
}
@@ -263,10 +267,10 @@ sub printerConfig {
my @etc_pass_fields = qw(name password uid gid realname home shell);
sub setRootPassword($) {
my ($o) = @_;
- my %u = %{$o->{superuser}};
my $p = $o->{prefix};
+ my %u = %{$o->{superuser} ||= {}};
- $u{password} = crypt_($u{password}) if $u{password};
+ $u{password} = install_any::crypt($u{password}) if $u{password};
my @lines = cat_(my $f = "$p/etc/passwd") or log::l("missing passwd file"), return;
@@ -284,37 +288,43 @@ sub setRootPassword($) {
}
#------------------------------------------------------------------------------
+
sub addUser($) {
my ($o) = @_;
- my %u = %{$o->{user}};
my $p = $o->{prefix};
- my @passwd = cat_("$p/etc/passwd");;
-
- return if !$u{name} || getpwnam($u{name});
- $u{home} ||= "/home/$u{name}";
my (%uids, %gids);
foreach (glob_("$p/home")) { my ($u, $g) = (stat($_))[4,5]; $uids{$u} = 1; $gids{$g} = 1; }
- my ($old_uid, $old_gid) = ($u{uid}, $u{gid}) = (stat("$p$u{home}"))[4,5];
- if (getpwuid($u{uid})) { for ($u{uid} = 500; getpwuid($u{uid}) || $uids{$u{uid}}; $u{uid}++) {} }
- if (getgrgid($u{gid})) { for ($u{gid} = 500; getgrgid($u{gid}) || $gids{$u{gid}}; $u{gid}++) {} }
- $u{password} = crypt_($u{password}) if $u{password};
+ my @l = @{$o->{users} || []};
+ foreach (@l) {
+ next if !$_->{name} || getpwnam($_->{name});
- return if $::testing;
+ my $u = $_->{uid} || ($_->{oldu} = (stat("$p$_->{home}"))[4]);
+ my $g = $_->{gid} || ($_->{oldg} = (stat("$p$_->{home}"))[5]);
+ if (!$u || getpwuid($u)) { for ($u = 500; getpwuid($u) || $uids{$u}; $u++) {} }
+ if (!$g || getgrgid($g)) { for ($g = 500; getgrgid($g) || $gids{$g}; $g++) {} }
+
+ $_->{home} ||= "/home/$_->{name}";
+ @$_{qw(uid gid pw)} = ($u, $g, $_->{password} && install_any::crypt($_->{password}));
+ }
+ my @passwd = cat_("$p/etc/passwd");;
local *F;
open F, ">> $p/etc/passwd" or die "can't append to passwd file: $!";
- print F join(':', @u{@etc_pass_fields}), "\n";
+ print F join(':', @$_{@etc_pass_fields}), "\n" foreach @l;
open F, ">> $p/etc/group" or die "can't append to group file: $!";
- print F "$u{name}::$u{gid}:\n";
+ print F "$_->{name}::$_->{gid}:\n" foreach @l;
- unless (-d "$p$u{home}") {
- eval { commands::cp("-f", "$p/etc/skel", "$p$u{home}") };
- if ($@) { log::l("copying of skel failed: $@"); mkdir("$p$u{home}", 0750); }
+ foreach (@l) {
+ if (! -d "$p$_->{home}") {
+ eval { commands::cp("-f", "$p/etc/skel", "$p$_->{home}") };
+ if ($@) { log::l("copying of skel failed: $@"); mkdir("$p$_->{home}", 0750); }
+ }
+ commands::chown_("-r", "$_->{uid}.$_->{gid}", "$p$_->{home}")
+ if $_->{uid} != $_->{oldu} || $_->{gid} != $_->{oldg};
}
- commands::chown_("-r", "$u{uid}.$u{gid}", "$p$u{home}") if $u{uid} != $old_uid || $u{gid} != $old_gid;
}
#------------------------------------------------------------------------------
diff --git a/perl-install/install_steps_auto_install.pm b/perl-install/install_steps_auto_install.pm
new file mode 100644
index 000000000..254f092ff
--- /dev/null
+++ b/perl-install/install_steps_auto_install.pm
@@ -0,0 +1,34 @@
+package install_steps_auto_install;
+
+use diagnostics;
+use strict;
+use vars qw(@ISA);
+
+@ISA = qw(install_steps);
+
+#-######################################################################################
+#- misc imports
+#-######################################################################################
+use common qw(:common);
+use install_steps;
+use log;
+
+sub enteringStep($$$) {
+ my ($o, $step) = @_;
+ print _("Entering step `%s'\n", $o->{steps}{$step}{text});
+ $o->SUPER::enteringStep($step);
+}
+
+sub ask_warn {
+ log::l(ref $_[1] ? join " ", @{$_[1]} : $_[1]);
+}
+
+sub errorInStep {
+ print "error :(\n";
+ print "switch to console f2 for a shell\n";
+ print "press to return to reboot\n";
+ <STDIN>;
+ exec "true";
+}
+
+1;
diff --git a/perl-install/install_steps_interactive.pm b/perl-install/install_steps_interactive.pm
index e5368da7c..9afea0269 100644
--- a/perl-install/install_steps_interactive.pm
+++ b/perl-install/install_steps_interactive.pm
@@ -69,7 +69,7 @@ sub selectKeyboard($) {
_("What is your keyboard layout?"),
[ keyboard::list() ],
keyboard::keyboard2text($o->{keyboard})));
- $o->{keyboard_force} = 1;
+ delete $o->{keyboard_unsafe};
install_steps::selectKeyboard($o);
}
#------------------------------------------------------------------------------
@@ -502,14 +502,17 @@ wish to access and any applicable user name and password."),
#------------------------------------------------------------------------------
sub setRootPassword($) {
my ($o) = @_;
- $o->{superuser}{password2} ||= $o->{user}{password} ||= "";
- my $sup = $o->{superuser};
+ my $sup = $o->{superuser} ||= {};
+ $sup->{password2} ||= $sup->{password} ||= "";
$o->ask_from_entries_ref([_("Set root password"), _("Ok"), _("No password")],
_("Set root password"),
- [_("Password:"), _("Password (again):")],
- [{ val => \$sup->{password}, hidden => 1},
- { val => \$sup->{password2}, hidden => 1}],
+ [_("Password:"), _("Password (again):"), $o->{installClass} eq "server" || $::expert ? (_("Use shadow file"), _("Use MD5 passwords")) : () ],
+ [{ val => \$sup->{password}, hidden => 1 },
+ { val => \$sup->{password2}, hidden => 1 },
+ { val => \$o->{authentification}{shadow}, type => 'bool', text => _("shadow") },
+ { val => \$o->{authentification}{md5}, type => 'bool', text => _("MD5") },
+ ],
complete => sub {
$sup->{password} eq $sup->{password2} or $o->ask_warn('', [ _("The passwords do not match"), _("Please try again") ]), return (1,1);
(length $sup->{password} < 6) and $o->ask_warn('', _("This password is too simple")), return (1,0);
@@ -524,14 +527,14 @@ sub setRootPassword($) {
#------------------------------------------------------------------------------
sub addUser($) {
my ($o) = @_;
- $o->{user}{password2} ||= $o->{user}{password} ||= "";
- my $u = $o->{user};
+ my $u = $o->{user} ||= {};
+ $u->{password2} ||= $u->{password} ||= "";
my @fields = qw(realname name password password2);
my @shells = install_any::shells($o);
- $o->ask_from_entries_ref(
+ if ($o->ask_from_entries_ref(
[ _("Add user"), _("Add user"), _("Done") ],
- _("Enter a user\n%s", $o->{users} ? _("(already added %s)", join(", ", @{$o->{users}})) : ''),
+ _("Enter a user\n%s", $o->{users} ? _("(already added %s)", join(", ", map { $_->{realname} } @{$o->{users}})) : ''),
[ _("Real name"), _("User name"), _("Password"), _("Password (again)"), _("Shell") ],
[ \$u->{realname}, \$u->{name},
{val => \$u->{password}, hidden => 1}, {val => \$u->{password2}, hidden => 1},
@@ -549,11 +552,12 @@ sub addUser($) {
$u->{name} =~ /^[a-z0-9_-]+$/ or $o->ask_warn('', _("The user name must contain only lower cased letters, numbers, `-' and `_'")), return (1,0);
return 0;
},
- ) or return;
+ )) {
+ push @{$o->{users}}, $o->{user};
+ $o->{user} = {};
+ goto &addUser;#- if $::expert;
+ }
install_steps::addUser($o);
- push @{$o->{users}}, $o->{user}{realname};
- $o->{user} = {};
- goto &addUser;#- if $::expert;
}
@@ -571,7 +575,8 @@ 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?"), $o->{mkbootdisk}) or return;
+failures. Would you like to create a bootdisk for your system?"),
+ $o->{mkbootdisk}) or return $o->{mkbootdisk} = '';
$o->{mkbootdisk} = $l[0] if !$o->{mkbootdisk} || $o->{mkbootdisk} eq "1";
} else {
@l or die _("Sorry, no floppy drive available");
@@ -579,7 +584,7 @@ failures. Would you like to create a bootdisk for your system?"), $o->{mkbootdis
$o->{mkbootdisk} = $o->ask_from_list_('',
_("Choose the floppy drive you want to use to make the bootdisk"),
[ @l, 'Cancel' ], $o->{mkbootdisk});
- return if $o->{mkbootdisk} eq 'Cancel';
+ return $o->{mkbootdisk} = '' if $o->{mkbootdisk} eq 'Cancel';
}
$o->ask_warn('', _("Insert a floppy in drive %s", $o->{mkbootdisk}));
@@ -664,7 +669,7 @@ _("Append") => \$e->{append},
_("Initrd") => { val => \$e->{initrd}, list => [ eval { glob_("/boot/initrd*") } ] },
_("Read-write") => { val => \$e->{'read-write'}, type => 'bool' }
);
- @l = @l[0..3] if $::beginner;
+ @l = @l[0..5] if $::beginner;
} else {
@l = (
_("Root") => { val => \$name, list => [ map { "/dev/$_->{device}" } @{$o->{fstab}} ], not_edit => !$::expert },
@@ -710,6 +715,8 @@ _("Some steps are not completed.
Do you really want to quit now?"), 0);
+ $o->SUPER::exitInstall;
+
$o->ask_warn('',
_("Congratulations, installation is complete.
Remove the boot media and press return to reboot.
@@ -718,7 +725,7 @@ 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.")) if $alldone;
+install chapter of the Official Linux-Mandrake User's Guide.")) if $alldone && !$::g_auto_install;
}
diff --git a/perl-install/install_steps_stdio.pm b/perl-install/install_steps_stdio.pm
index 1dbf94dae..a3c634b4d 100644
--- a/perl-install/install_steps_stdio.pm
+++ b/perl-install/install_steps_stdio.pm
@@ -16,12 +16,14 @@ use log;
1;
-sub enteringStep($$$) {
+sub enteringStep {
my ($o, $step) = @_;
print _("Entering step `%s'\n", $o->{steps}{$step}{text});
+ $o->SUPER::enteringStep($step);
}
sub leavingStep {
- my ($o) = @_;
+ my ($o, $step) = @_;
+ $o->SUPER::leavingStep($step);
print "--------\n";
}
diff --git a/perl-install/partition_table.pm b/perl-install/partition_table.pm
index 7107f4345..9a75983c5 100644
--- a/perl-install/partition_table.pm
+++ b/perl-install/partition_table.pm
@@ -35,7 +35,7 @@ my %types = (
10 => "OS/2 Boot Manager",
0xb => "Win98 FAT32 0xb",
0xc => "Win98 FAT32",
- 0xe => "Win98 FAT32 0xd",
+ 0xe => "Win95 FAT16",
0xf => "Win95 Ext'd (LBA)",
0x12 => "Compaq setup",
0x40 => "Venix 80286",
diff --git a/perl-install/partition_table_raw.pm b/perl-install/partition_table_raw.pm
index b73b43590..56b28e36e 100644
--- a/perl-install/partition_table_raw.pm
+++ b/perl-install/partition_table_raw.pm
@@ -69,7 +69,7 @@ sub openit($$;$) { sysopen $_[1], $_[0]{file}, $_[2] || 0; }
# cause kernel to re-read partition table
sub kernel_read($) {
my ($hd) = @_;
- local *F; openit($hd, \*F) or return 0;
+ local *F; openit($hd, *F) or return 0;
$hd->{rebootNeeded} = !ioctl(F, c::BLKRRPART(), 0);
}
@@ -77,7 +77,7 @@ sub read($$) {
my ($hd, $sector) = @_;
my $tmp;
- local *F; openit($hd, \*F) or return;
+ local *F; openit($hd, *F) or return;
c::lseek_sector(fileno(F), $sector, $offset) or die "reading of partition in sector $sector failed";
my @pt = map {
@@ -98,7 +98,7 @@ sub read($$) {
sub write($$$) {
my ($hd, $sector, $pt) = @_;
- local *F; openit($hd, \*F, 2) or die "error opening device $hd->{device} for writing";
+ local *F; openit($hd, *F, 2) or die "error opening device $hd->{device} for writing";
c::lseek_sector(fileno(F), $sector, $offset) or return 0;
@$pt == $nb_primary or die "partition table does not have $nb_primary entries";
diff --git a/perl-install/pkgs.pm b/perl-install/pkgs.pm
index e12d2b4b3..e32d8c8f4 100644
--- a/perl-install/pkgs.pm
+++ b/perl-install/pkgs.pm
@@ -19,7 +19,7 @@ XFree86-Sun XFree86-SunMono XFree86-Sun24 XFree86-3DLabs kernel-BOOT
MySQL MySQL_GPL mod_php3 midgard postfix metroess metrotmpl
hackkernel hackkernel-BOOT hackkernel-fb hackkernel-headers
hackkernel-pcmcia-cs hackkernel-smp hackkernel-smp-fb
-);#)
+);
sub correctSize { (20471 - $_[0])*$_[0]/16258 } #- size correction in MB.
@@ -396,6 +396,7 @@ sub selectPackagesToUpgrade($$$) {
sub install($$) {
my ($prefix, $toInstall) = @_;
+ my %packages;
return if $::g_auto_install;
@@ -413,7 +414,8 @@ sub install($$) {
$p->{file} ||= sprintf "%s-%s-%s.%s.rpm",
$p->{name}, $p->{version}, $p->{release},
c::headerGetEntry(getHeader($p), 'arch');
- c::rpmtransAddPackage($trans, getHeader($p), $p->{file}, $p->{name} !~ /kernel/); #- TODO: replace `named kernel' by `provides kernel'
+ $packages{$p->{name}} = $p;
+ c::rpmtransAddPackage($trans, getHeader($p), $p->{name}, $p->{name} !~ /kernel/); #- TODO: replace `named kernel' by `provides kernel'
# c::rpmtransAddPackage($trans, getHeader($p), $p->{file}, 1); #- TODO: replace `named kernel' by `provides kernel'
$nb++;
$total += $p->{size};
@@ -433,11 +435,12 @@ sub install($$) {
#- !! do not translate these messages, they are used when catched (cf install_steps_graphical)
my $callbackOpen = sub {
- print LOG "$_[0]\n";
- my $fd = install_any::getFile($_[0]) or log::l("bad file $_[0]");
+ my $f = (my $p = $packages{$_[0]})->{file};
+ print LOG "$f\n";
+ my $fd = install_any::getFile($f) or log::l("bad file $f");
$fd ? fileno $fd : -1;
};
- my $callbackClose = sub { };
+ my $callbackClose = sub { $packages{$_[0]}{installed} = 1; };
my $callbackStart = sub { log::ld("starting installing package ", $_[0]) };
my $callbackProgress = sub { log::ld("progressing installation ", $_[0], "/", $_[1]) };
@@ -454,8 +457,6 @@ sub install($$) {
c::rpmtransFree($trans);
c::rpmdbClose($db);
log::l("rpm database closed");
-
- $_->{installed} = 1 foreach @$toInstall;
}
1;
diff --git a/perl-install/resize_fat/io.pm b/perl-install/resize_fat/io.pm
index 7255bc437..8cf21d929 100644
--- a/perl-install/resize_fat/io.pm
+++ b/perl-install/resize_fat/io.pm
@@ -70,5 +70,5 @@ sub open($) {
check_mounted($fs->{device});
sysopen F, $fs->{fs_name}, 2 or sysopen F, $fs->{fs_name}, 0 or die "error opening device $fs->{fs_name} for writing\n";
- $fs->{fd} = \*F;
+ $fs->{fd} = *F;
}
diff --git a/perl-install/run_program.pm b/perl-install/run_program.pm
index 7e91437e7..593b270d8 100644
--- a/perl-install/run_program.pm
+++ b/perl-install/run_program.pm
@@ -13,6 +13,9 @@ sub rooted {
my ($root, $name, @args) = @_;
my $str = ref $name ? $name->[0] : $name;
log::l("running: $str @args" . ($root ? " with root $root" : ""));
+
+ return 1 if $root && $<;
+
$root ? $root .= '/' : ($root = '');
fork and wait, return $? == 0;
diff --git a/perl-install/share/compssList b/perl-install/share/compssList
index 7e3eab3ac..f0eedf98e 100644
--- a/perl-install/share/compssList
+++ b/perl-install/share/compssList
@@ -2,1044 +2,975 @@
packages
-adjtimex 0 99 95
-AfterStep 42 0 0
-AfterStep-APPS 0 0 0
-aktion 85 0 15
-am-utils 0 0 0
-anacron 70 0 98
-anonftp 50 99 0
-AnotherLevel 80 0 0
-apache 0 99 25
-apache-devel 37 0 25
-apmd 50 99 25
-arpwatch 0 0 0
-ash 70 99 99
-at 37 99 98
-audiofile 50 0 26
-audiofile-devel 50 0 26
-aumix 90 0 2
-authconfig 50 99 50
-autoconf 10 0 98
-autofs 0 0 50
-automake 10 0 98
-awesfx 90 0 0
-basesystem 95 99 99
-bash 95 99 99
-bash1 0 0 0
-bash-doc 0 0 75
-bc 20 0 25
-bdflush 99 99 0
-bdflush-lowmem 0 99 0
-BeroFTPD 0 99 10
-BeroList 0 99 0
-BeroList-CGI 0 99 0
-bin86 40 0 97
-bind 0 99 0
-bind-devel 0 0 0
-bind-utils 35 99 0
-binutils 50 0 95
-bison 10 0 90
-BitchX 0 0 0
-blt 0 0 85
-bootparamd 0 0 0
-byacc 50 0 90
-bzip2 68 99 85
-caching-nameserver 0 99 0
-cbb 15 0 0
-cdecl 10 0 70
-cdp 90 0 0
-cdparanoia 0 0 0
-cdrecord 0 0 0
-cdrecord-cdda2wav 0 0 0
-cdrecord-devel 0 0 0
-cervisia 0 0 0
-chkconfig 22 0 10
-chkfontpath 44 0 50
-chos 0 0 0
-chos-vchos 0 0 0
-cleanfeed 0 99 0
-colorgcc 0 0 99
-comanche 0 80 0
-compat-glibc 0 0 99
-comsat 0 0 0
-console-tools 40 99 99
-control-center 78 0 10
-control-center-devel 25 0 10
-control-panel 91 0 0
-cpio 80 99 97
-cpp 50 0 98
-cproto 50 0 90
-cracklib 50 99 35
-cracklib-dicts 50 99 35
-crontabs 75 98 98
-ctags 50 0 90
-cvs 50 99 80
-cxhextris 0 0 0
-defrag 0 0 0
-desktop-backgrounds 90 0 0
-desktopcfg 99 0 0
-dev 99 99 99
-dhcp 0 99 0
-dhcpcd 0 99 0
-dialog 20 0 75
-diffstat 0 0 95
-diffutils 50 0 95
-dip 0 0 0
-dosemu 0 0 0
-dosemu-freedos 0 0 0
-dosfstools 0 0 0
-dump 0 0 95
-e2fsprogs 80 99 99
-e2fsprogs-devel 0 0 25
-econf 0 0 0
-ed 40 0 5
-ee 82 0 0
-efax 0 99 0
-eject 80 0 0
-ElectricFence 0 0 99
-elm 30 0 0
-emacs 40 0 85
-emacs-el 0 0 50
-emacs-leim 0 0 50
-emacs-nox 50 0 50
-emacs-X11 50 0 50
-enlightenment 75 0 0
-enlightenment-conf 75 0 0
-enscript 0 0 75
-esound 79 0 0
-esound-devel 25 0 0
-etcskel 95 99 0
-ethemes 0 0 0
-exmh 50 0 0
-expect 0 0 75
-faces 0 0 0
-faces-devel 25 0 0
-face-xface 0 0 0
-faq 75 0 0
-fbset 0 0 0
-fdutils 0 0 0
-fetchmail 25 99 0
-fetchmailconf 0 0 0
-file 50 0 98
-filesystem 95 99 99
-fileutils 75 99 99
-findutils 75 99 95
-finger 50 0 0
-flash 82 0 0
-flex 50 0 80
-fmirror 0 0 0
-fnlib 75 0 0
-fnlib-devel 25 0 0
-fortune-mod 95 99 0
-freeciv 92 0 0
-freetype 65 0 0
-freetype-devel 0 0 0
-fribidi 0 0 0
-ftp 75 0 0
-fvwm 75 0 0
-fvwm2 40 0 0
-fvwm2-icons 45 0 0
-fwhois 0 0 0
-gaddr 56 0 0
-gated 0 99 0
-gatos 65 0 0
-gawk 50 0 95
-gcc-fr 0 0 0
-gd 75 0 75
-gdb 50 0 98
-gdbm 50 0 80
-gdbm-devel 50 0 80
-gd-devel 50 0 75
-gdm 70 0 0
-gedit 35 0 0
-gedit-devel 0 0 0
-genromfs 0 0 0
-gettext 10 0 75
-getty_ps 60 0 0
-gfcc 0 0 0
-gftp 75 0 0
-ghostscript 55 99 85
-ghostscript-fonts 0 99 85
-giftrans 0 0 75
-gimp 80 0 50
-gimp-data-extras 50 0 0
-gimp-devel 0 0 40
-gimp-libgimp 60 0 50
-gimp-manual 0 0 25
-git 70 0 0
-glade 0 0 70
-glib 45 0 99
-glib10 45 0 99
-glibc 75 99 99
-glibc-devel 40 0 99
-glibc-localedata 45 0 98
-glibc-profile 0 0 98
-glib-devel 50 0 98
-gmc 35 0 0
-gmp 18 0 75
-gmp-devel 0 0 75
-gnomba 0 0 0
-gnome-admin 0 0 60
-gnome-audio 80 0 60
-gnome-center 0 0 60
-gnome-core 80 0 60
-gnome-core-devel 0 0 60
-gnome-games 90 0 0
-gnome-games-devel 25 0 0
-gnome-guile 0 0 50
-gnome-guile-devel 0 0 50
-gnomehack 89 0 0
-gnomeicu 76 0 0
-gnome-libs 87 0 60
-gnome-libs-devel 25 0 60
-gnome-linuxconf 70 0 0
-gnome-media 80 0 0
-gnome-objc 50 0 40
-gnome-objc-devel 25 0 40
-gnome-pim 74 0 70
-gnome-pim-devel 25 0 70
-gnome-print 77 0 60
-gnome-print-devel 0 0 60
-gnome-toaster 0 0 0
-gnome-users-guide 75 0 0
-gnome-utils 86 0 50
-gnorpm 50 0 0
-gnotepad+ 42 0 40
-gnuchess 85 0 0
-gnumeric 0 0 0
-gnuplot 25 0 0
-gperf 0 0 90
-gpm 85 0 95
-gpm-devel 50 0 60
-g-print 0 0 0
-gqview 65 0 0
-grep 80 0 98
-groff 60 0 0
-groff-gxditview 0 0 0
-grpmi 35 0 0
-gscript 0 0 0
-gsl 0 0 0
-gsu 50 0 0
-gtk+ 50 0 70
-gtk+-devel 25 0 70
-gtk-engines 40 0 70
-gtkglarea 0 0 0
-gtkzip 0 0 0
-gtop 85 0 0
-guavac 0 0 90
-guile 0 0 85
-guile-devel 0 0 85
-gv 65 0 0
-GXedit 0 0 60
-gzip 70 99 98
-hdparm 75 99 99
-helptool 75 0 0
-hexedit 0 0 95
-howto 75 0 0
-howot-croatian 0 0 0
-howto-chinese 0 0 0
-howto-french 0 0 0
-howto-german 0 0 0
-howto-greek 0 0 0
-howto-html 0 0 0
-howto-indonesian 0 0 0
-howto-italian 0 0 0
-howto-japanese 0 0 0
-howto-korean 0 0 0
-howto-polish 0 0 0
-howto-serbian 0 0 0
-howto-sgml 0 0 0
-howto-slovenian 0 0 0
-howto-spanish 0 0 0
-howto-swedish 0 0 0
-howto-turkish 0 0 0
-ibtk 0 0 0
-ical 35 0 0
-iceconf 0 0 0
-icewm 80 0 0
-icewm-themes 62 0 0
-ImageMagick 0 0 65
-ImageMagick-devel 0 0 65
-imap 0 99 0
-imlib 50 0 75
-imbib-cfgeditor 0 0 75
-imlib-devel 25 0 50
-imwheel 85 0 0
-indent 40 0 97
-indexhtml 99 99 99
-inews 0 0 0
-info 95 0 0
-initscripts 99 99 99
-inn 0 99 20
-inn-devel 0 99 20
-install-guide 0 0 0
-interconfig 0 99 99
-intimed 0 99 0
-ipchains 0 99 0
-ipxutils 0 99 0
-irssi 79 0 0
-isapnptools 91 99 99
-isdn4k-utils 0 0 0
-isicom 0 0 0
-ispell 30 0 0
-ispell-francais 0 0 0
-ispell-rus 0 0 0
-itcl 0 0 65
-jed 0 0 0
-jed-common 0 0 0
-jed-xjed 0 0 0
-joe 0 0 0
-kaffe 0 0 50
-kapm 0 0 0
-kbatmon 0 0 0
-kBeroFTPD 0 99 0
-kblade 0 0 0
-kblindsel 0 0 0
-kcdwrite 0 0 0
-kcmclock 0 0 0
-kcmlaptop 1 0 0
-kcpumon 0 0 0
-kbdconfig 99 99 99
-kdbg 0 0 0
-kdeadmin 70 0 0
-kdebase 85 0 0
-kdegames 95 0 0
-kdegames 95 0 0
-kdegraphics 80 0 0
-kdelibs 75 0 0
-kdemultimedia 85 0 0
-kdenetwork 90 0 0
-kderadio 0 0 0
-kdesu 90 0 0
-kdesupport 75 0 0
-kde-themes 0 0 0
-kdetoys 57 0 0
-kdeutils 85 0 0
-kdevelop 0 0 0
-kdf 75 0 0
-kdiff 0 0 0
-kdiskcat 0 0 0
-kdpms 78 0 0
-keasycd 0 0 0
-kencoder 0 0 0
-kernelcfg 0 0 0
-kernel 99 99 99
-kernel-BOOT 0 0 0
-kernel-doc 0 0 75
-kernel-headers 0 0 99
-kernel-ibcs 0 0 0
-kernel-pcmcia-cs 0 0 0
-kernel-smp 0 0 0
-kernel-smp-fb 0 0 0
-kernel-source 0 0 99
-kernelcfg 90 90 90
-kfortune 94 0 0
-kfsstatus 0 0 0
-kfun21 0 0 0
-kgoldrunne 0 0 0
-kgoodstuff 0 0 0
-kgredit 0 0 0
-khotkeys 0 0 0
-khylafax 0 0 0
-killustrator 89 0 0
-kimon 0 0 0
-kinterruptinfo 0 0 0
-kisdnload 0 0 0
-kjumpingcube 0 0 0
-kless 0 0 0
-klibreta 0 0 0
-klilo 0 0 0
-klyx 80 0 0
-kmag 0 0 0
-kmemmon 0 0 0
-kmol 0 0 0
-kmp3te-devel 90 90 90
-kmpg 80 0 0
-kmsgmodem 0 0 0
-knc 0 0 0
-knetload 0 0 0
-knewmail 0 0 0
-knfsd 40 0 0
-knfsd-clients 0 0 0
-knsbookmark 0 0 0
-korganizer 35 0 0
-kover 0 0 0
-kpackage 79 0 0
-kpacman 0 0 0
-kpilot 50 0 0
-kmp3te 0 0 0
-kmp3te-devel 0 0 0
-kpppload 49 0 0
-krubik 68 0 0
-ksendfax 11 0 0
-kshow 0 0 0
-kslide 0 0 0
-ksnuffle 0 0 0
-ksysctrl 0 0 0
-ktail 0 0 0
-kteatime 0 0 0
-ktelnet 75 0 0
-kterm 0 0 0
-kthememgr 0 0 0
-ktimemon 0 0 0
-ktop 0 0 0
-ktron 0 0 0
-kuickshow 0 0 0
-kvirc 0 0 0
-kvncviewer 90 90 90
-kvoice 11 0 0
-kweather 0 0 0
-kwvdial 0 0 0
-ltrace 0 0 0
-ldconfig 0 0 98
-ld.so 70 0 98
-less 10 0 97
-lftp 0 0 0
-lha 0 0 80
-libc 30 99 85
-libelf 0 99 90
-libghttp 50 0 60
-libghttp-devel 25 0 60
-libglade 60 0 60
-libglade-devel 0 0 40
-libgr 80 0 75
-libgr-devel 25 0 70
-libgr-progs 55 0 0
-libgtop 87 0 60
-libgtop-devel 25 0 60
-libgtop-examples 0 0 55
-libjpeg 80 0 75
-libjpeg6a 0 0 75
-libjpeg-devel 25 0 70
-libmikmod 0 0 60
-libmikmod-devel 0 0 60
-libpcap 0 0 80
-libpng 75 0 75
-libpng-devel 25 0 75
-libPropList 60 0 90
-libstdc++ 50 0 90
-libstdc++-devel 0 0 90
-libtermcap 50 99 95
-libtermcap-devel 0 0 95
-libtiff 75 0 80
-libtiff-devel 25 0 80
-libtool 10 0 94
-libungif 80 0 80
-libungif-devel 25 0 80
-libungif-progs 0 0 0
-libunicode 0 0 90
-libxml 70 0 75
-libxml-devel 0 0 75
-lilo 98 99 99
-linuxconf 80 0 99
-linuxconf-devel 0 0 70
-linux_logo 80 0 0
-logrotate 75 99 99
-losetup 11 99 99
-lout 0 0 10
-lout-doc 0 0 10
-lpg 75 0 90
-lpr 75 99 99
-lrzsz 0 0 0
-lslk 0 0 0
-lsof 0 0 0
-lynx 10 99 80
-m4 5 0 90
-macutils 0 0 0
-mailcap 50 0 0
-mailx 50 99 0
-make 10 0 98
-MAKEDEV 90 99 99
-man 93 0 90
-mandrake_desk 97 0 0
-mandrake_doc 95 0 0
-mandrake-release 75 99 99
-MandrakeUpdate 85 0 0
-man-pages 75 0 80
-man-pages-cs 0 0 0
-man-pages-de 0 0 0
-man-pages-es 0 0 0
-man-pages-fr 0 0 0
-man-pages-it 0 0 0
-man-pages-ja 0 0 0
-man-pages-ko 0 0 0
-man-pages-pl 0 0 0
-man-pages-ru 0 0 0
-mars-nwe 0 0 0
-mawk 0 0 90
-maxwell 34 0 0
-mc 35 0 0
-mcserv 0 99 0
-Mesa 0 0 70
-Mesa-demos 0 0 60
-Mesa-devel 0 0 70
-metamail 50 99 50
-mgetty 10 0 0
-mgetty-sendfax 10 0 0
-mgetty-viewfax 10 0 0
-mgetty-voice 10 0 0
-mikmod 80 0 0
-mingetty 24 0 0
-minicom 0 0 0
-mirrordir 0 99 0
-mkbootdisk 66 0 0
-mkdosfs-ygg 0 0 0
-mkinitrd 50 0 0
-mkisofs 0 0 0
-mkkickstart 0 0 0
-mktemp 50 0 95
-mkxauth 70 99 0
-modemtool 75 0 0
-mod_perl 0 99 0
-mod_php3 0 99 0
-modutils 75 0 99
-mount 50 99 99
-mouseconfig 85 0 0
-mpage 50 0 90
-mpg123 95 0 0
-mswordview 0 0 0
-mtools 90 0 0
-mt-st 65 0 0
-multimedia 75 0 0
-mutt 60 0 0
-mxp 0 0 0
-MySQL-shared-libs 0 0 0
-MySQL_GPL-shared-libs 0 0 0
-nag 0 0 25
-nc 0 0 0
-ncftp 75 0 0
-ncompress 70 99 97
-ncpfs 0 0 0
-ncurses 75 0 90
-ncurses-devel 25 0 90
-netcfg 75 0 0
-netkit-base 80 99 80
-netscape-castellano
-netscape-common 90 0 0
-netscape-communicator 95 0 0
-netscape-francais 90 90 90
-netscape-navigator 0 0 0
-netscape-walon
-net-tools 50 99 90
-newt 60 0 85
-newt-devel 25 0 85
-nmh 50 0 0
-npxanim 90 0 0
-nscd 0 0 0
-ntsysv 70 0 0
-open 0 0 90
-ORBit 0 0 60
-ORBit-devel 0 0 60
-p2c 0 0 75
-p2c-devel 0 0 60
-pam 45 99 97
-passwd 70 99 98
-patch 80 0 80
-pciutils 0 0 0
-pdksh 0 0 0
-perl 60 99 90
-perlftlib 0 0 0
-perl-GTK 0 0 80
-perl-MD5 0 99 85
-perl-Parse-RecDescent 0 0 85
-perl-PDL 0 0 85
-pgcc 60 0 95
-pgcc-c++ 60 0 93
-pgcc-g77 0 0 85
-pgcc-objc 60 0 85
-pidentd 0 99 95
-pilot-link 25 0 0
-pilot-link-devel 25 0 0
-pine 60 0 0
-playmidi 65 0 0
-playmidi-X11 0 0 0
-pmake 10 0 85
-pmake-customs 0 0 80
-popt 50 0 90
-portmap 32 99 0
-postfix 0 0 0
-postgresql 0 99 0
-postgresql-clients 0 0 0
-postgresql-devel 0 99 0
-postgresql-server 0 99 0
-postgresql-tcl 0 0 0
-ppp 0 0 0
-printtool 0 0 0
-procinfo 0 0 99
-procmail 35 99 0
-procps 75 0 0
-procps-X11 0 0 0
-psacct 0 0 95
-psmisc 80 0 90
-pump 40 0 0
-pwdb 49 0 85
-pws 0 0 0
-pygnome 0 0 50
-pygtk 0 0 50
-pygtk-libglade 0 0 50
-python-docs 0 0 40
-pythonlib 25 0 85
-qt 40 0 60
-qt-devel 25 0 60
-qt-qgl 0 0 50
-qt-qimgio 21 0 50
-qt-qxt 0 0 50
-quota 75 99 0
-raidtools 0 99 0
-rcs 40 0 75
-rdate 10 99 0
-rdist 10 99 0
-readline 50 0 70
-recode 0 0 80
-rgrep 0 0 85
-rhl-install-guide-en 0 0 0
-rhmask 0 0 0
-rhsound 50 0 0
-rhs-printfilters 0 99 0
-rmt 37 0 0
-rootfiles 75 99 0
-routed 50 99 0
-rpm 90 99 98
-rpm-devel 25 0 90
-rsh 75 99 85
-rsync 0 99 85
-rusers 50 0 0
-rwall 0 0 0
-rwho 50 0 0
-rxvt 09 0 99
-sag 65 0 25
-sash 0 0 0
-samba 0 99 0
-sane 75 0 0
-sane-devel 0 0 0
-screen 0 0 0
-sed 5 0 98
-sendmail 0 99 0
-sendmail-cf 0 99 0
-sendmail-doc 0 0 0
-setconsole 58 0 0
-setserial 80 0 0
-setup 80 0 0
-setuptool 0 0 0
-sgml-tools 0 0 85
-shadow-utils 0 99 0
-shapecfg 0 0 0
-sharutils 75 99 0
-sh-utils 85 99 98
-slang 50 0 85
-slang-devel 25 0 70
-sliplogin 0 0 0
-slocate 75 99 90
-slrn 75 0 0
-sndconfig 40 0 0
-sox 82 99 90
-sox-devel 0 0 70
-space_sounds 65 0 0
-specspo 0 0 0
-squid 0 0 0
-stat 40 0 85
-statserial 0 0 0
-strace 50 0 95
-svgalib 94 0 75
-svgalib-devel 25 0 75
-SVGATextMode 0 0 0
-swatch 0 0 0
-switchdesk 0 0 0
-switchdesk-gnome 0 0 0
-switchdesk-kde 85 0 0
-symlinks 0 0 0
-sysklogd 50 0 0
-SysVinit 99 99 99
-t1lib-devel 0 0 96
-talk 75 0 0
-taper 0 0 0
-tar 90 99 98
-tcl 60 0 70
-tclx 60 0 70
-tcpdump 0 85 0
-tcp_wrappers 50 99 0
-tcsh 70 0 0
-telnet 80 99 95
-telnet-server 80 99 0
-termcap 75 99 98
-tetex 15 0 50
-tetex-afm 15 0 40
-tetex-dvilj 15 0 40
-tetex-dvips 15 0 40
-tetex-latex 15 0 40
-tetex-xdvi 0 0 50
-texinfo 0 0 50
-textutils 50 99 90
-tftp 35 0 0
-thud 0 0 0
-time 50 0 95
-timeconfig 75 0 0
-timed 50 0 0
-timex 0 0 0
-timetool 85 0 0
-TiMidity++ 0 0 0
-timidity-instruments 0 0 0
-tin 65 0 0
-tix 60 0 65
-tk 60 0 65
-tkinter 60 0 65
-tksysv 75 0 65
-tmpwatch 46 99 0
-traceroute 20 99 0
-transfig 0 0 0
-tree 0 0 0
-trn 65 0 0
-trojka 70 0 0
-ttfonts 19 0 0
-tunelp 0 0 0
-ucd-snmp 0 0 85
-ucd-snmp-devel 0 0 85
-ucd-snmp-utils 0 0 85
-umb-scheme 0 0 85
-unarj 0 0 0
-units 0 0 0
-unzip 90 99 97
-urlview 0 0 0
-urw-fonts 48 0 0
-usermode 80 0 0
-usernet 70 0 0
-utempter 0 0 0
-util-linux 90 99 98
-uucp 0 99 0
-vigmeup 0 0 0
-vim-common 5 99 0
-vim-enhanced 0 0 0
-vim-minimal 5 99 0
-vim-X11 0 0 0
-vixie-cron 75 99 99
-vlock 0 99 90
-vnc 0 0 0
-vnc-java 0 0 0
-vnc-server 0 0 0
-vnc-SVGALIB 0 0 0
-w3c-libwww 0 0 0
-w3c-libwww-apps 0 0 0
-w3c-libwww-devel 0 0 0
-wget 75 99 0
-which 75 0 99
-WindowMaker 85 0 0
-wine 0 0 0
-wine-debug 0 0 0
-wmakerconf 0 0 0
-wmconfig 75 0 0
-wmnet 20 0 0
-WMRack 0 0 0
-words 60 0 0
-wu-ftpd 0 99 0
-X11R6-contrib 75 0 75
-x3270 0 0 0
-xanim 75 0 0
-Xaw3d 65 0 70
-Xaw3d-devel 0 0 65
-xbanner 90 0 70
-xbill 97 0 0
-xboard 90 0 0
-xboing 85 0 0
-xcdroast 0 0 0
-xchat 70 0 0
-Xconfigurator 85 0 0
-xcpustate 0 0 0
-xdaliclock 0 0 0
-xdelta 0 0 0
-xdelta-devel 0 0 0
-xdosemu 0 0 0
-xearth 0 0 0
-xemacs 85 0 80
-xemacs-el 0 0 80
-xemacs-extras 85 0 68
-xemacs-info 0 0 50
-xemacs-mule 0 0 0
-xemacs-noX 0 0 0
-xemacs-static 0 0 0
-xemacs-X11 0 0 70
-xfce 0 0 0
-xfig 0 0 0
-xfishtank 0 0 0
-xfm 5 0 0
-XFree86 97 0 70
-XFree86-100dpi-fonts 70 0 70
-XFree86-75dpi-fonts 96 0 70
-XFree86-cyrillic-fonts 0 0 0
-XFree86-devel 0 0 60
-XFree86-doc 0 0 50
-XFree86-FBDev 0 0 0
-XFree86-ISO8859-2 0 0 0
-XFree86-ISO8859-2-100dpi-fonts 0 0 0
-XFree86-ISO8859-2-75dpi-fonts 0 0 0
-XFree86-ISO8859-2-Type1-fonts 0 0 0
-XFree86-ISO8859-9 0 0 0
-XFree86-ISO8859-9-100dpi-fonts 0 0 0
-XFree86-ISO8859-9-75dpi-fonts 0 0 0
-XFree86-libs 0 0 70
-XFree86-Mach64 0 0 0
-XFree86-VGA16 0 0 0
-XFree86-XF86Setup 0 0 0
-XFree86-xfs 0 0 70
-XFree86-Xnest 0 0 60
-XFree86-Xvfb 0 0 0
-xgammon 70 0 0
-xinitrc 65 0 70
-xjewel 70 0 0
-xkobo 89 0 0
-xlipstat 0 0 0
-xloadimage 0 0 0
-xlockmore 0 0 0
-xmailbox 70 0 0
-xmms 82 0 0
-xmms-devel 35 0 0
-xmms-esd 0 0 0
-xmms-gnome 0 0 0
-xmms-mikmod 65 0 0
-xmorph 85 0 0
-xntp3 0 0 0
-xosview 0 0 0
-xpaint 75 0 0
-xpat2 70 0 0
-xpdf 0 0 0
-xpilot 85 0 0
-xplorer 79 0 0
-xpm 66 0 69
-xpm-devel 25 0 61
-xpuzzles 70 0 0
-xrn 70 0 0
-xscreensaver 90 0 0
-xsoldier 0 0 0
-xsysinfo 0 0 61
-xtoolwait 0 0 0
-xtrojka 70 0 0
-xv 77 0 0
-xwpick 0 0 0
-xxgdb 0 0 0
-ypbind 20 0 0
-ypserv 0 0 0
-yp-tools 05 0 0
-ytalk 0 0 0
-yudit 0 0 0
-zgv 0 0 0
-zip 90 0 95
-zlib 75 0 98
-zlib-devel 25 0 80
-zsh 35 0 80
+adjtimex 1 40 87
+AfterStep 65 20 53
+AfterStep-APPS 62 18 55
+aktion 79 12 15
+am-utils 22 0 19
+anonftp 15 99 13
+AnotherLevel 30 0 27
+apache 15 99 25
+apache-devel 1 0 25
+apmd 11 99 25
+arpwatch 1 0 0
+ash 10 10 10
+at 30 99 94
+audiofile 15 0 26
+audiofile-devel 8 0 26
+aumix 15 0 2
+authconfig 90 99 90
+autoconf 5 0 94
+autofs 22 0 50
+automake 5 0 94
+awesfx 15 0 13
+bash1 15 0 13
+bash-doc 30 0 71
+bc 17 0 25
+BeroFTPD 25 99 10
+BeroList 17 99 15
+BeroList-CGI 17 99 15
+bin86 5 0 91
+bind 12 99 10
+bind-devel 1 0 0
+bind-utils 16 99 14
+binutils 50 0 87
+bison 3 0 80
+BitchX 17 0 15
+blt 1 0 75
+bootparamd 1 0 0
+byacc 1 0 80
+bzip2 0 99 75
+caching-nameserver 1 99 0
+cbb 15 0 13
+cdecl 10 0 70
+cdp 30 0 27
+cdparanoia 50 0 45
+cdrecord 51 0 45
+cdrecord-cdda2wav 51 0 45
+cdrecord-devel 1 0 0
+cervisia 12 0 10
+chkconfig 0 0 10
+chkfontpath 0 0 50
+chos 0 0 0
+chos-vchos 0 0 0
+cleanfeed 24 99 21
+colorgcc 1 0 84
+comanche 1 80 0
+compat-glibc 0 0 96
+comsat 0 0 0
+control-center 70 0 10
+control-center-devel 5 0 10
+control-panel 60 0 54
+cpp 5 0 94
+cproto 15 0 80
+cracklib 1 99 35
+cracklib-dicts 1 99 35
+ctags 1 0 80
+cvs 5 99 72
+cxhextris 40 0 36
+defrag 0 0 0
+desktop-backgrounds 66 0 54
+desktopcfg 72 0 72
+dhcp 17 99 15
+dhcpcd 1 99 0
+dialog 1 0 71
+diffstat 3 0 87
+diffutils 25 0 87
+dip 15 0 13
+dosemu 55 0 49
+dosemu-freedos 55 0 49
+dosfstools 25 0 22
+dump 9 0 87
+e2fsprogs-devel 1 0 25
+ed 45 0 5
+ee 66 0 54
+efax 34 99 30
+eject 72 83 59
+ElectricFence 1 0 96
+elm 15 0 13
+emacs 30 0 0
+emacs-el 20 0 43
+emacs-leim 20 0 50
+emacs-nox 20 0 14
+emacs-X11 41 0 83
+enlightenment 65 0 53
+enlightenment-conf 65 0 53
+enscript 17 0 71
+esound 62 0 55
+esound-devel 5 0 4
+ethemes 58 0 52
+exmh 40 0 36
+expect 1 0 71
+faces 17 0 15
+faces-devel 1 0 0
+face-xface 25 0 22
+faq 65 0 53
+fbset 1 0 0
+fdutils 1 0 0
+fetchmail 35 99 31
+fetchmailconf 45 0 40
+file 72 0 94
+finger 30 0 27
+flash 72 0 59
+flex 1 0 72
+fmirror 45 0 40
+fnlib 8 0 7
+fnlib-devel 1 0 0
+fortune-mod 55 99 49
+freeciv 65 0 53
+freetype 5 0 4
+freetype-devel 1 0 0
+fribidi 1 0 0
+ftp 55 0 49
+fvwm 40 0 36
+fvwm2 40 0 36
+fvwm2-icons 40 0 36
+fwhois 40 0 36
+gaddr 45 0 40
+gated 1 99 0
+gatos 55 0 49
+gawk 1 0 87
+gcc-fr 0 0 0
+gd 25 0 71
+gdb 25 0 94
+gdbm 25 0 72
+gdbm-devel 1 0 72
+gd-devel 1 0 71
+gdm 67 0 55
+gedit 75 0 62
+gedit-devel 1 0 0
+genromfs 10 0 9
+gettext 10 0 71
+gfcc 35 0 31
+gftp 75 0 62
+ghostscript 40 99 75
+ghostscript-fonts 1 99 75
+giftrans 1 0 71
+gimp 79 0 50
+gimp-data-extras 70 0 58
+gimp-devel 1 0 40
+gimp-libgimp 1 0 50
+gimp-manual 60 0 25
+git 60 0 54
+glade 17 0 57
+glib 1 0 0
+glib10 1 0 0
+glibc 1 99 96
+glibc-devel 1 0 96
+glibc-localedata 1 0 94
+glibc-profile 1 0 94
+glib-devel 1 0 94
+gmc 72 0 59
+gmp 17 0 71
+gmp-devel 1 0 71
+gnomba 77 0 64
+gnome-admin 75 0 55
+gnome-audio 70 0 55
+gnome-center 70 0 55
+gnome-core 0 0 55
+gnome-core-devel 1 0 55
+gnome-games 72 0 59
+gnome-games-devel 1 0 0
+gnome-guile 0 0 50
+gnome-guile-devel 1 0 50
+gnomehack 50 0 45
+gnomeicu 71 0 58
+gnome-libs 0 0 55
+gnome-libs-devel 1 0 55
+gnome-linuxconf 65 0 53
+gnome-media 70 0 58
+gnome-objc 0 0 40
+gnome-objc-devel 1 0 40
+gnome-pim 71 0 70
+gnome-pim-devel 1 0 70
+gnome-print 72 0 55
+gnome-print-devel 1 0 55
+gnome-toaster 74 0 61
+gnome-users-guide 70 0 58
+gnome-utils 70 0 50
+gnorpm 70 0 58
+gnotepad+ 70 0 40
+gnuchess 35 0 31
+gnumeric 70 0 58
+gnuplot 65 0 53
+gperf 1 0 80
+gpm 0 0 87
+gpm-devel 1 0 55
+g-print 70 0 58
+gqview 55 0 49
+grep 0 0 94
+groff-gxditview 22 0 19
+grpmi 0 0 0
+gscript 0 0 0
+gsl 1 0 0
+gsu 65 0 53
+gtk+ 0 0 70
+gtk+-devel 1 0 70
+gtk-engines 0 0 70
+gtkglarea 1 0 0
+gtkzip 70 0 58
+gtop 70 0 58
+guavac 1 0 80
+guile 1 0 75
+guile-devel 1 0 75
+gv 55 0 49
+GXedit 70 0 55
+helptool 65 0 53
+hexedit 17 0 87
+howto 55 0 49
+howto-html 65 0 53
+howto-sgml 25 0 22
+ibtk 15 0 13
+ical 30 0 27
+iceconf 60 0 54
+icewm 90 0 80
+icewm-themes 60 0 54
+ImageMagick 42 0 60
+ImageMagick-devel 1 0 60
+imap 40 99 36
+imlib 1 0 71
+imbib-cfgeditor 70 0 71
+imlib-devel 1 0 50
+imwheel 70 0 58
+indent 20 0 91
+indexhtml 0 99 96
+inews 17 0 15
+inn 39 99 20
+inn-devel 1 99 20
+install-guide 40 0 36
+intimed 12 99 10
+ipchains 15 99 13
+ipxutils 10 99 9
+irssi 69 0 57
+isapnptools 73 73 73
+isdn4k-utils 12 0 10
+isicom 15 0 13
+ispell 25 0 22
+ispell-francais 24 0 21
+ispell-rus 24 0 21
+itcl 1 0 60
+jed 16 0 14
+jed-common 0 0 0
+jed-xjed 25 0 22
+joe 17 0 15
+kaffe 10 0 50
+kapm 82 0 60
+kbatmon 82 0 60
+kBeroFTPD 59 99 53
+kcmclock 82 0 60
+kcmlaptop 82 0 60
+kcpumon 82 0 60
+kdbg 30 0 27
+kdeadmin 82 0 60
+kdebase 0 0 0
+kdegames 80 0 59
+kdegraphics 88 0 66
+kdelibs 0 0 0
+kdemultimedia 88 0 66
+kdenetwork 82 0 60
+kdesu 82 0 60
+kdesupport 0 0 0
+kde-themes 82 0 60
+kdetoys 87 0 65
+kdeutils 89 0 67
+kdevelop 30 0 27
+kdf 88 0 66
+kdiff 82 0 60
+kdiskcat 82 0 60
+kdpms 82 0 60
+kernel-doc 1 0 71
+kernel-headers 1 0 77
+kernel-ibcs 1 0 0
+kernel-pcmcia-cs 0 0 0
+kernel-smp 0 0 0
+kernel-smp-fb 1 0 0
+kernel-source 1 0 68
+kernelcfg 15 90 80
+kfortune 82 0 60
+kfsstatus 82 0 60
+kfun21 82 0 60
+kgoodstuff 82 0 60
+khotkeys 82 0 60
+khylafax 82 0 60
+killustrator 82 0 60
+kimon 82 0 60
+kinterruptinfo 82 0 60
+kisdnload 82 0 60
+kjumpingcube 87 0 65
+kless 82 0 60
+klilo 82 0 60
+klyx 70 0 58
+kmag 82 0 60
+kmemmon 82 0 60
+kmol 82 0 60
+kmpg 82 0 60
+knetload 82 0 60
+knewmail 82 0 60
+knfsd 15 0 13
+knfsd-clients 15 0 13
+knsbookmark 82 0 60
+korganizer 81 0 59
+kover 82 0 60
+kpackage 89 0 67
+kpacman 80 0 59
+kpilot 82 0 60
+kmp3te 82 0 60
+kpppload 82 0 60
+krubik 82 0 60
+ksendfax 82 0 60
+kshow 82 0 60
+kslide 82 0 60
+ksnuffle 63 0 56
+ktail 84 0 62
+kteatime 79 0 54
+ktelnet 82 0 60
+kterm 52 0 46
+kthememgr 82 0 60
+ktimemon 82 0 60
+ktop 82 0 60
+ktron 82 0 60
+kuickshow 81 0 59
+kvirc 79 0 60
+kvncviewer 60 90 60
+kvoice 79 0 56
+kweather 82 0 59
+kwvdial 79 0 56
+ltrace 1 0 0
+ld.so 0 0 94
+lftp 70 0 58
+lha 10 0 72
+libc 0 99 75
+libelf 0 99 80
+libghttp 0 0 55
+libghttp-devel 1 0 55
+libglade 2 0 55
+libglade-devel 1 0 40
+libgr 2 0 71
+libgr-devel 1 0 70
+libgr-progs 10 0 9
+libgtop 0 0 55
+libgtop-devel 1 0 55
+libgtop-examples 1 0 55
+libjpeg 1 0 71
+libjpeg6a 1 0 71
+libjpeg-devel 1 0 70
+libmikmod 3 0 55
+libmikmod-devel 1 0 55
+libpcap 2 0 72
+libpng 3 0 71
+libpng-devel 1 0 71
+libPropList 0 0 80
+libstdc++ 2 0 80
+libstdc++-devel 1 0 80
+libtermcap 2 99 87
+libtermcap-devel 1 0 87
+libtiff 5 0 72
+libtiff-devel 1 0 72
+libtool 2 0 85
+libungif 5 0 72
+libungif-devel 1 0 72
+libungif-progs 3 0 2
+libunicode 1 0 80
+libxml 0 0 71
+libxml-devel 3 0 71
+linuxconf 82 0 96
+linuxconf-devel 1 0 70
+linux_logo 1 0 0
+lout 15 0 10
+lout-doc 15 0 10
+lpg 60 0 80
+lpr 0 80 39
+lrzsz 12 0 10
+lslk 3 0 2
+lsof 2 0 1
+lynx 35 99 84
+m4 20 0 80
+macutils 22 0 19
+mailcap 5 0 4
+mailx 46 99 41
+make 20 0 94
+MAKEDEV 10 99 96
+mandrake_desk 82 0 70
+mandrake_doc 82 0 70
+MandrakeUpdate 82 0 70
+man-pages 82 0 72
+man-pages-cs 60 0 54
+man-pages-de 60 0 54
+man-pages-es 60 0 54
+man-pages-fr 60 0 54
+man-pages-it 60 0 54
+man-pages-ja 60 0 54
+man-pages-ko 60 0 54
+man-pages-pl 60 0 54
+man-pages-ru 60 0 54
+mars-nwe 0 0 0
+mawk 0 0 80
+mc 35 0 31
+mcserv 10 99 9
+Mesa 0 0 70
+Mesa-demos 25 0 55
+Mesa-devel 1 0 70
+metamail 40 99 50
+mgetty 10 0 9
+mgetty-sendfax 17 0 15
+mgetty-viewfax 17 0 15
+mgetty-voice 17 0 15
+mikmod 12 0 10
+minicom 5 0 4
+mirrordir 1 99 0
+mkdosfs-ygg 15 0 13
+mkisofs 15 0 13
+mkkickstart 2 0 1
+mkxauth 2 99 1
+modemtool 50 0 45
+mod_perl 2 99 1
+mod_php3 2 99 1
+mouseconfig 90 0 90
+mpage 55 0 80
+mpg123 47 0 42
+mswordview 60 0 54
+mtools 79 0 70
+mt-st 55 0 49
+multimedia 65 0 53
+mutt 50 0 45
+mxp 0 0 0
+MySQL-shared-libs 1 0 0
+MySQL_GPL-shared-libs 1 0 0
+nag 55 0 25
+nc 0 0 0
+ncftp 55 0 49
+ncompress 42 99 91
+ncpfs 0 0 0
+ncurses 0 0 80
+ncurses-devel 6 0 80
+netcfg 82 82 82
+netkit-base 82 99 82
+netscape-common 82 0 70
+netscape-communicator 90 0 73
+netscape-navigator 60 0 54
+newt 20 0 75
+newt-devel 5 0 75
+nmh 0 0 0
+npxanim 82 0 61
+nscd 1 0 0
+open 6 0 80
+ORBit 0 0 55
+ORBit-devel 2 0 55
+p2c 10 0 71
+p2c-devel 3 0 55
+pam 7 99 91
+patch 32 0 72
+pciutils 16 0 14
+pdksh 10 0 9
+perl 0 99 80
+perlftlib 1 0 0
+perl-GTK 1 0 72
+perl-MD5 1 99 75
+perl-Parse-RecDescent 1 0 75
+perl-PDL 1 0 75
+pgcc 35 0 90
+pgcc-c++ 35 0 84
+pgcc-g77 32 0 67
+pgcc-objc 31 0 75
+pidentd 25 99 87
+pilot-link 30 0 27
+pilot-link-devel 28 0 25
+pine 31 0 27
+playmidi 22 0 19
+playmidi-X11 23 0 20
+pmake 22 0 75
+pmake-customs 21 0 72
+popt 26 0 80
+portmap 22 99 19
+postfix 35 0 31
+postgresql 26 99 23
+postgresql-clients 26 0 23
+postgresql-devel 26 99 23
+postgresql-server 26 99 23
+postgresql-tcl 26 0 23
+ppp 1 0 0
+printtool 52 0 46
+procinfo 32 0 96
+procps-X11 36 0 32
+psacct 19 0 87
+pump 30 0 27
+pwdb 13 0 75
+pws 82 0 70
+pygnome 12 0 50
+pygtk 25 0 50
+pygtk-libglade 22 0 50
+python 15 0 74
+python-docs 21 0 40
+pythonlib 17 0 75
+qt 0 0 55
+qt-devel 6 0 55
+qt-qgl 1 0 50
+qt-qimgio 2 0 50
+qt-qxt 3 0 50
+quota 42 99 37
+raidtools 5 99 4
+rcs 12 0 71
+rdate 10 99 9
+rdist 10 99 9
+readline 11 0 70
+recode 6 0 72
+rgrep 55 0 75
+rhl-install-guide-en 0 0 0
+rhmask 12 0 10
+rhsound 40 0 36
+rhs-printfilters 1 1 0
+rmt 27 0 24
+routed 22 99 19
+rpm-devel 6 0 80
+rsh 46 99 75
+rsync 39 99 75
+rusers 38 0 34
+rwall 37 0 33
+rwho 36 0 32
+rxvt 35 0 96
+sag 55 0 25
+samba 34 99 30
+sane 59 0 53
+sane-devel 3 0 2
+screen 22 0 19
+sendmail 41 99 36
+sendmail-cf 41 99 36
+sendmail-doc 41 0 36
+setserial 62 0 55
+setuptool 90 0 90
+sgml-tools 16 0 75
+shapecfg 9 0 8
+sharutils 43 99 38
+slang 31 0 75
+slang-devel 7 0 70
+sliplogin 19 0 17
+slrn 56 0 50
+sndconfig 90 0 90
+sox 56 99 80
+sox-devel 8 0 70
+space_sounds 62 0 55
+specspo 16 0 14
+squid 12 0 10
+statserial 15 0 13
+strace 11 0 87
+svgalib 3 0 63
+svgalib-devel 2 0 63
+SVGATextMode 1 0 0
+swatch 5 0 4
+switchdesk 82 0 70
+switchdesk-gnome 82 0 70
+switchdesk-kde 82 0 70
+symlinks 33 0 29
+t1lib-devel 2 0 89
+talk 44 0 39
+taper 30 0 27
+tcl 12 0 70
+tclx 12 0 70
+tcpdump 3 85 2
+tcp_wrappers 0 99 0
+tcsh 1 0 0
+telnet 64 99 87
+telnet-server 42 99 37
+tetex 55 0 50
+tetex-afm 55 0 40
+tetex-dvilj 50 0 40
+tetex-dvips 55 0 40
+tetex-latex 55 0 40
+tetex-xdvi 55 0 50
+texinfo 57 0 50
+tftp 3 0 2
+thud 82 0 70
+time 40 0 87
+timed 40 0 36
+timex 35 0 31
+timetool 64 0 57
+TiMidity++ 61 0 54
+timidity-instruments 61 0 54
+tin 44 0 39
+tix 31 0 60
+tk 31 0 60
+tkinter 31 0 60
+tksysv 65 0 60
+traceroute 33 99 29
+transfig 16 0 14
+tree 12 0 10
+trn 46 0 41
+trojka 54 0 48
+ttfonts 57 0 51
+tunelp 32 0 28
+ucd-snmp 13 0 75
+ucd-snmp-devel 6 0 75
+ucd-snmp-utils 12 0 75
+umb-scheme 10 0 65
+unarj 18 0 16
+units 12 0 10
+unzip 70 99 91
+urlview 53 0 47
+urw-fonts 38 0 34
+usermode 71 0 58
+usernet 42 0 37
+utempter 90 0 73
+uucp 16 99 14
+vigmeup 13 0 11
+vim-common 0 99 0
+vim-enhanced 26 78 83
+vim-X11 29 0 26
+vlock 38 99 80
+vnc 44 0 39
+vnc-java 38 0 34
+vnc-server 43 0 38
+vnc-SVGALIB 43 0 38
+w3c-libwww 18 0 16
+w3c-libwww-apps 22 0 19
+w3c-libwww-devel 8 0 7
+wget 65 99 53
+WindowMaker 69 0 57
+wine 64 0 57
+wine-debug 63 0 56
+wmakerconf 69 0 57
+wmconfig 66 0 54
+wmnet 24 0 21
+WMRack 36 0 32
+words 47 0 42
+wu-ftpd 25 99 22
+X11R6-contrib 65 0 47
+x3270 1 0 0
+xanim 66 0 54
+Xaw3d 9 0 70
+Xaw3d-devel 2 0 60
+xbanner 43 0 12
+xbill 54 0 48
+xboard 54 0 48
+xboing 53 0 47
+xcdroast 59 0 53
+xchat 58 0 52
+Xconfigurator 90 0 81
+xcpustate 53 0 47
+xdaliclock 57 0 51
+xdelta 6 0 5
+xdelta-devel 3 0 2
+xdosemu 64 0 57
+xearth 63 0 56
+xemacs 0 0 0
+xemacs-el 38 0 34
+xemacs-extras 59 0 36
+xemacs-info 64 0 42
+xemacs-mule 27 0 13
+xemacs-noX 34 0 12
+xemacs-static 4 0 2
+xemacs-X11 69 0 54
+xfce 64 0 34
+xfig 59 0 53
+xfishtank 51 0 45
+xfm 40 0 36
+XFree86 98 0 81
+XFree86-100dpi-fonts 56 0 30
+XFree86-75dpi-fonts 98 0 81
+XFree86-cyrillic-fonts 55 0 29
+XFree86-devel 9 0 55
+XFree86-doc 12 0 30
+XFree86-FBDev 11 0 9
+XFree86-ISO8859-2 55 0 49
+XFree86-ISO8859-2-100dpi-fonts 55 0 49
+XFree86-ISO8859-2-75dpi-fonts 55 0 49
+XFree86-ISO8859-2-Type1-fonts 55 0 49
+XFree86-ISO8859-9 55 0 49
+XFree86-ISO8859-9-100dpi-fonts 55 0 49
+XFree86-ISO8859-9-75dpi-fonts 55 0 49
+XFree86-libs 0 0 0
+XFree86-Mach64 0 0 0
+XFree86-VGA16 0 0 0
+XFree86-XF86Setup 71 0 58
+XFree86-xfs 0 0 0
+XFree86-Xnest 0 0 55
+XFree86-Xvfb 35 0 31
+xgammon 35 0 31
+xinitrc 55 0 70
+xjewel 58 0 52
+xkobo 57 0 51
+xlipstat 54 0 48
+xloadimage 51 0 45
+xlockmore 58 0 52
+xmailbox 53 0 47
+xmms 64 0 57
+xmms-devel 9 0 8
+xmms-esd 46 0 41
+xmms-gnome 71 0 58
+xmms-mikmod 43 0 38
+xmorph 49 0 44
+xntp3 46 0 41
+xosview 51 0 45
+xpaint 53 0 47
+xpat2 43 0 38
+xpdf 57 0 51
+xpilot 59 0 53
+xplorer 69 0 57
+xpm 41 0 64
+xpm-devel 3 0 56
+xpuzzles 48 0 43
+xrn 55 0 49
+xscreensaver 69 0 57
+xsoldier 51 0 45
+xsysinfo 48 0 56
+xtoolwait 39 0 35
+xtrojka 51 0 45
+xv 53 0 47
+xwpick 55 0 49
+xxgdb 53 0 47
+ypbind 16 0 14
+ypserv 15 0 13
+yp-tools 15 0 13
+ytalk 21 0 18
+yudit 43 0 38
+zgv 15 0 13
+zip 70 0 87
+zlib 24 0 94
+zlib-devel 8 0 72
+zsh 31 0 72
categories
-administration:rpm:console 90 90 90
-administration:rpm:x11 90 00 90
-administration:system:console 00 00 90
-administration:utilities:console 90 90 90
-administration:utilities:x11 90 00 90
-amusement:console 00 00 90
-amusement:x11 90 00 90
-archiving:console 00 90 90
-archiving:x11 90 00 90
-base 00 00 90
-cd-burning:console 00 00 90
-cd-burning:x11 00 00 90
-communications:modem:console 90 90 90
-communications:modem:x11 90 90 90
-communications:pilot:console 00 90 90
-communications:pilot:x11 90 00 90
-compression:console 10 20 30
-compression:x11 40 50 60
-configuration:kernel:console 50 60 70
-configuration:kernel:x11 50 10 70
-configuration:keyboard:console 60 10 60
-configuration:identification:console 70 80 90
-configuration:identification:x11 90 01 10
-configuration:libs:x11 40 50 60
-configuration:mail:console 50 80 60
-configuration:network:firewall:console 70 80 90
-configuration:network:firewall:x11 00 10 20
-configuration:network:ftp:x11 60 70 80
-configuration:network:http:x11 20 30 40
-configuration:network:mail:console 50 60 70
-configuration:network:mail:x11 80 90 10
-configuration:power:x11 40 60 60
-configuration:time:console 70 90 90
-configuration:time:x11 00 10 20
-configuration:sound:console 30 40 50
-configuration:system:console 90 10 10
-configuration:system:x11 20 30 40
-configuration:xfree:console 50 60 70
-configuration:xfree:x11 80 90 10
-daemons:administartion 00 30 10
-daemons:console 00 00 30
-daemons:database 00 00 80
-daemons:disk 00 00 40
-daemons:kernel 00 00 30
-daemons:network:base 00 00 90
-daemons:network:corba 00 00 70
-daemons:network:dhcp 00 00 60
-daemons:network:ftp 00 00 60
-daemons:network:http 00 00 60
-daemons:network:mail 00 00 10
-daemons:network:midnight_commander 00 00 30
-daemons:network:name_server 00 00 20
-daemons:network:netware 00 00 50
-daemons:network:nfs 00 00 50
-daemons:network:nis 00 00 10
-daemons:network:routing 00 00 60
-daemons:network:samba 00 00 10
-daemons:network:snmp 00 00 50
-daemons:network:slip 00 00 00
-daemons:network:telnet 00 00 00
-daemons:network:uucp 00 00 00
-daemons:network:usenet 00 00 00
-daemons:network:vnc 00 00 00
-daemons:power 00 00 00
-daemons:print 00 00 00
-daemons:security 00 00 00
-daemons:sound 00 00 00
-daemons:time 00 00 00
-daemons:xfree86 00 00 00
-database 10 80 00
-developpment:debuggers:console 00 00 90
-developpment:debuggers:x11 10 10 90
-developpment:libs:cdrecord 00 00 90
-developpment:libs:compression 00 00 90
-developpment:libs:database 00 00 90
-developpment:libs:fonts 00 00 90
-developpment:libs:gnome 00 00 90
-developpment:libs:graphics 00 00 90
-developpment:libs:gtk 00 00 90
-developpment:libs:filesystems 00 00 90
-developpment:libs:kde 00 00 90
-developpment:libs:language 00 10 90
-developpment:libs:misc 00 00 90
-developpment:libs:mouse 00 00 90
-developpment:libs:network 00 00 90
-developpment:libs:qt 00 00 90
-developpment:libs:sound 00 00 90
-developpment:libs:user-interface 00 00 90
-developpment:language 00 00 90
-developpment:tools:console 00 00 90
-developpment:tools:x11 00 00 90
-disks 00 50 70
-documentation:languages:chinese 90 90 90
-documentation:languages:croatian 90 90 90
-documentation:languages:czech 90 90 90
-documentation:languages:en 90 90 90
-documentation:languages:french 90 90 90
-documentation:languages:german 90 90 90
-documentation:languages:greek 90 90 90
-documentation:languages:indonesian 90 90 90
-documentation:languages:italian 90 90 90
-documentation:languages:japanese 90 90 90
-documentation:languages:korean 90 90 90
-documentation:languages:polish 90 90 90
-documentation:languages:russian 90 90 90
-documentation:languages:serbian 90 90 90
-documentation:languages:slovenian 90 90 90
-documentation:languages:spanish 90 90 90
-documentation:languages:swedish 90 90 90
-documentation:languages:turkish 90 90 90
-documentation:misc 90 90 90
-documentation:tools:console 70 80 80
-documentation:tools:x11 90 10 50
-editors:console 30 80 80
-editors:x11 80 10 80
-emulators:console 50 10 50
-emulators 80 10 50
-filemanagers:console 40 80 80
-filemanagers:x11 70 00 70
-files:console 00 50 10
-files:x11 80 10 50
-finances 00 00 00
-games:console 40 10 40
-games:x11 60 10 60
-gnome 80 10 40
-identification:x11 10 40 30
-info:console 40 90 90
-info:x11 60 20 90
-kde 90 10 90
-kernel 00 50 90
-libs:application 00 10 90
-libs:compression 00 10 90
-libs:database 00 10 90
-libs:fonts:console 00 10 90
-libs:fonts:x11 00 10 90
-libs:gnome 00 10 90
-libs:graphics 00 10 90
-libs:gtk 00 10 90
-libs:kde 00 10 90
-libs:math 00 10 90
-libs:misc:console 00 10 90
-libs:misc:x11 00 10 90
-libs:network 00 10 90
-libs:qt 00 10 90
-libs:sound 00 10 90
-libs:user_interface 00 10 90
-misc:console 50 80 80
-monitoring:cpu:x11 50 80 90
-monitoring:disks:x11 50 80 90
-monitoring:misc:console 30 90 90
-monitoring:misc:x11 50 80 90
-monitoring:memory:console 30 90 90
-monitoring:memory:x11 50 80 90
-monitoring:network:console 30 90 90
-monitoring:network:x11 50 80 90
-monitoring:power:x11 50 80 90
-multimedia:graphic:acquisition 70 20 70
-multimedia:graphic:console 70 20 70
-multimedia:graphic:image-viewer 90 10 80
-multimedia:graphic:x11 90 10 80
-multimedia:sound:players:console 80 10 70
-multimedia:sound:players:x11 90 10 70
-multimedia:sounds:sounds 90 10 60
-multimedia:video 90 10 60
-network:ftp:console 70 60 70
-network:ftp:x11 80 10 70
-network:irc&co:console 80 60 70
-network:irc&co:x11 80 10 70
-network:mail:console 60 90 80
-network:mail:x11 70 10 80
-network:misc:console 50 90 80
-network:misc:x11 60 10 80
-network:netware:console 30 90 80
-network:nfs:console 30 90 80
-network:nis:console 30 90 80
-network:tools:console 30 90 80
-network:tools:x11 40 10 80
-network:usenet:console 40 90 80
-network:usenet:x11 80 10 80
-network:web:console 10 90 80
-network:web:x11 90 10 90
-office:dictionary:console 80 50 80
-office:textviewer:x11 80 10 80
-office:word_processor:console 50 50 80
-office:word_processor:x11 90 10 80
-print:console 60 90 60
-print:x11 70 10 70
-productivity:console 60 50 50
-productivity:x11 90 00 80
-science:chemistry:x11 80 00 80
-science:math:console 20 00 80
-science:math:x11 80 00 80
-science:meteo:console 70 00 80
-science:meteo:x11 80 00 80
-shells 00 90 90
-terminal:console 50 90 90
-terminal:x11 70 10 80
-text:console 40 90 90
-text:x11 80 90 90
-time:console 80 90 90
-time:x11 90 10 90
-translations 90 90 90
-updates:console 00 90 90
-updates:x11 90 00 90
-utilities:console:kernel 00 80 90
-utilities:console:misc 50 80 80
-utilities:x11:misc 80 00 80
-window-managers:configuration:console 70 10 70
-window-managers:configuration:x11 90 00 90
-window-managers:themes 90 00 90
-window-managers:window-managers 90 00 90
-xfree86:backgrounds 90 10 90
-xfree86:base 00 00 00
-xfree86:fonts 00 00 00
+administration:rpm:console 90 90 80
+administration:rpm:x11 90 00 80
+administration:system:console 00 00 80
+administration:utilities:console 90 90 80
+administration:utilities:x11 90 00 80
+amusement:console 00 00 80
+amusement:x11 90 00 80
+archiving:console 50 90 80
+archiving:x11 90 00 80
+base 00 00 80
+cd-burning:console 60 00 80
+cd-burning:x11 70 00 80
+communications:modem:console 60 90 80
+communications:modem:x11 70 90 80
+communications:pilot:console 50 90 80
+communications:pilot:x11 70 00 80
+compression:console 60 20 30
+compression:x11 60 50 55
+configuration:kernel:console 50 60 70
+configuration:kernel:x11 50 10 70
+configuration:keyboard:console 60 10 55
+configuration:identification:console 70 80 80
+configuration:identification:x11 90 01 10
+configuration:libs:x11 40 50 55
+configuration:mail:console 50 80 55
+configuration:network:firewall:console 70 80 80
+configuration:network:firewall:x11 00 10 20
+configuration:network:ftp:x11 60 70 72
+configuration:network:http:x11 20 30 40
+configuration:network:mail:console 50 60 70
+configuration:network:mail:x11 80 90 10
+configuration:power:x11 40 60 55
+configuration:time:console 70 90 80
+configuration:time:x11 00 10 20
+configuration:sound:console 30 40 50
+configuration:system:console 90 10 10
+configuration:system:x11 20 30 40
+configuration:xfree:console 50 60 70
+configuration:xfree:x11 80 90 10
+daemons:administartion 00 30 10
+daemons:console 00 00 30
+daemons:database 00 00 72
+daemons:disk 00 00 40
+daemons:kernel 00 00 30
+daemons:network:base 00 00 80
+daemons:network:corba 00 00 70
+daemons:network:dhcp 00 00 55
+daemons:network:ftp 00 00 55
+daemons:network:http 00 00 55
+daemons:network:mail 00 00 10
+daemons:network:midnight_commander 00 00 30
+daemons:network:name_server 00 00 20
+daemons:network:netware 00 00 50
+daemons:network:nfs 00 00 50
+daemons:network:nis 00 00 10
+daemons:network:routing 00 00 55
+daemons:network:samba 00 00 10
+daemons:network:snmp 00 00 50
+daemons:network:slip 00 00 00
+daemons:network:telnet 00 00 00
+daemons:network:uucp 00 00 00
+daemons:network:usenet 00 00 00
+daemons:network:vnc 00 00 00
+daemons:power 00 00 00
+daemons:print 00 00 00
+daemons:security 00 00 00
+daemons:sound 00 00 00
+daemons:time 00 00 00
+daemons:xfree86 00 00 00
+database 10 80 00
+developpment:debuggers:console 00 00 80
+developpment:debuggers:x11 10 10 80
+developpment:libs:cdrecord 00 00 80
+developpment:libs:compression 00 00 80
+developpment:libs:database 00 00 80
+developpment:libs:fonts 00 00 80
+developpment:libs:gnome 00 00 80
+developpment:libs:graphics 00 00 80
+developpment:libs:gtk 00 00 80
+developpment:libs:filesystems 00 00 80
+developpment:libs:kde 00 00 80
+developpment:libs:language 00 10 80
+developpment:libs:misc 00 00 80
+developpment:libs:mouse 00 00 80
+developpment:libs:network 00 00 80
+developpment:libs:qt 00 00 80
+developpment:libs:sound 00 00 80
+developpment:libs:user-interface 00 00 80
+developpment:language 00 00 80
+developpment:tools:console 00 00 80
+developpment:tools:x11 00 00 80
+disks 00 50 70
+documentation:languages:chinese 90 90 80
+documentation:languages:croatian 90 90 80
+documentation:languages:czech 90 90 80
+documentation:languages:en 90 90 80
+documentation:languages:french 90 90 80
+documentation:languages:german 90 90 80
+documentation:languages:greek 90 90 80
+documentation:languages:indonesian 90 90 80
+documentation:languages:italian 90 90 80
+documentation:languages:japanese 90 90 80
+documentation:languages:korean 90 90 80
+documentation:languages:polish 90 90 80
+documentation:languages:russian 90 90 80
+documentation:languages:serbian 90 90 80
+documentation:languages:slovenian 90 90 80
+documentation:languages:spanish 90 90 80
+documentation:languages:swedish 90 90 80
+documentation:languages:turkish 90 90 80
+documentation:misc 90 90 80
+documentation:tools:console 70 80 72
+documentation:tools:x11 90 10 50
+editors:console 30 80 72
+editors:x11 80 10 72
+emulators:console 50 10 50
+emulators 80 10 50
+filemanagers:console 40 80 72
+filemanagers:x11 70 00 70
+files:console 00 50 10
+files:x11 80 10 50
+finances 00 00 00
+games:console 40 10 40
+games:x11 60 10 55
+gnome 80 10 40
+identification:x11 10 40 30
+info:console 40 90 80
+info:x11 60 20 80
+kde:administration:utilities 90 81 -13
+kde:administration:rpm 90 81 -13
+kde:amusement 90 81 -13
+kde:base 00 0
+kde:cd-burning 90 81 -13
+kde:communications:fax 90 81 -13
+kde:communications:modem 90 81 -13
+kde:communications:pilot 90 81 -13
+kde:configuration:network 90 81 -13
+kde:configuration:power 90 81 -13
+kde:configuration:time 90 81 -13
+kde:configuration:system 90 81 -13
+kde:deloppment:tools 60 54
+kde:filemanagers 90 81 -13
+kde:games 90 81 -13
+kde:identification 90 81 -13
+kde:monitoring 90 81 -13
+kde:monitoring:cpu 90 81 -13
+kde:monitoring:disks 90 81 -13
+kde:monitoring:mail 90 81 -13
+kde:monitoring:network 90 81 -13
+kde:monitoring:memory 90 81 -13
+kde:multimedia:graphics 90 81 -13
+kde:multimedia:image-viewer 90 81 -13
+kde:multimedia:sound 90 81 -13
+kde:multimedia:video 90 81 -13
+kde:network 90 81 -13
+kde:office 90 81 -13
+kde:science 90 81 -13
+kde:themes 90 81 -13
+kde:utilities 90 81 -13
+kernel 00 50 80
+libs:application 00 10 80
+libs:compression 00 10 80
+libs:database 00 10 80
+libs:fonts:console 00 10 80
+libs:fonts:x11 00 10 80
+libs:gnome 00 10 80
+libs:graphics 00 10 80
+libs:gtk 00 10 80
+libs:kde 00 10 80
+libs:math 00 10 80
+libs:misc:console 00 10 80
+libs:misc:x11 00 10 80
+libs:network 00 10 80
+libs:qt 00 10 80
+libs:sound 00 10 80
+libs:user_interface 00 10 80
+misc:console 50 80 72
+monitoring:cpu:x11 50 80 80
+monitoring:disks:x11 50 80 80
+monitoring:misc:console 30 90 80
+monitoring:misc:x11 50 80 80
+monitoring:memory:console 30 90 80
+monitoring:memory:x11 50 80 80
+monitoring:network:console 30 90 80
+monitoring:network:x11 50 80 80
+monitoring:power:x11 50 80 80
+multimedia:graphic:acquisition 70 20 70
+multimedia:graphic:console 70 20 70
+multimedia:graphic:image-viewer 90 10 72
+multimedia:graphic:x11 90 10 72
+multimedia:sound:players:console 80 10 70
+multimedia:sound:players:x11 90 10 70
+multimedia:sounds:sounds 90 10 55
+multimedia:video 90 10 55
+network:ftp:console 70 60 70
+network:ftp:x11 80 10 70
+network:irc&co:console 80 60 70
+network:irc&co:x11 80 10 70
+network:mail:console 60 90 72
+network:mail:x11 70 10 72
+network:misc:console 50 90 72
+network:misc:x11 60 10 72
+network:netware:console 30 90 72
+network:nfs:console 30 90 72
+network:nis:console 30 90 72
+network:tools:console 30 90 72
+network:tools:x11 40 10 72
+network:usenet:console 40 90 72
+network:usenet:x11 80 10 72
+network:web:console 10 90 72
+network:web:x11 90 10 80
+office:dictionary:console 80 50 72
+office:textviewer:x11 80 10 72
+office:word_processor:console 50 50 72
+office:word_processor:x11 90 10 72
+print:console 60 90 55
+print:x11 70 10 70
+productivity:console 60 50 50
+productivity:x11 90 00 72
+science:chemistry:x11 80 00 72
+science:math:console 20 00 72
+science:math:x11 80 00 72
+science:meteo:console 70 00 72
+science:meteo:x11 80 00 72
+shells 00 90 80
+terminal:console 50 90 80
+terminal:x11 70 10 72
+text:console 40 90 80
+text:x11 80 90 80
+time:console 80 90 80
+time:x11 90 10 80
+translations 90 90 80
+updates:console 00 90 80
+updates:x11 90 00 80
+utilities:console:kernel 00 80 80
+utilities:console:misc 50 80 72
+utilities:x11:misc 80 00 72
+window-managers:configuration:console 70 10 70
+window-managers:configuration:x11 90 00 80
+window-managers:themes 90 00 80
+window-managers:window-managers 90 00 80
+xfree86:backgrounds 90 10 80
+xfree86:base 00 00 00
+xfree86:fonts 00 00 00
diff --git a/perl-install/share/po/DrakX.pot b/perl-install/share/po/DrakX.pot
index f6c57d806..74481736a 100644
--- a/perl-install/share/po/DrakX.pot
+++ b/perl-install/share/po/DrakX.pot
@@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 1999-10-22 19:05+0200\n"
+"POT-Creation-Date: 1999-10-26 00:52+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -350,15 +350,15 @@ msgstr ""
msgid "Format"
msgstr ""
-#: ../diskdrake.pm_.c:17 ../diskdrake.pm_.c:380
+#: ../diskdrake.pm_.c:17 ../diskdrake.pm_.c:382
msgid "Move"
msgstr ""
-#: ../diskdrake.pm_.c:17 ../diskdrake.pm_.c:438
+#: ../diskdrake.pm_.c:17 ../diskdrake.pm_.c:440
msgid "Resize"
msgstr ""
-#: ../diskdrake.pm_.c:17 ../diskdrake.pm_.c:329
+#: ../diskdrake.pm_.c:17 ../diskdrake.pm_.c:331
msgid "Type"
msgstr ""
@@ -394,8 +394,8 @@ msgstr ""
msgid "Save on floppy"
msgstr ""
-#: ../diskdrake.pm_.c:39 ../install_steps_interactive.pm_.c:533
-#: ../install_steps_interactive.pm_.c:643
+#: ../diskdrake.pm_.c:39 ../install_steps_interactive.pm_.c:536
+#: ../install_steps_interactive.pm_.c:648
msgid "Done"
msgstr ""
@@ -437,130 +437,134 @@ msgstr ""
msgid "Write partition table"
msgstr ""
-#: ../diskdrake.pm_.c:94
+#: ../diskdrake.pm_.c:53
+msgid "Reload"
+msgstr ""
+
+#: ../diskdrake.pm_.c:95
msgid "Details"
msgstr ""
-#: ../diskdrake.pm_.c:98
+#: ../diskdrake.pm_.c:99
msgid "Legend:"
msgstr ""
-#: ../diskdrake.pm_.c:102
+#: ../diskdrake.pm_.c:103
msgid "Empty"
msgstr ""
-#: ../diskdrake.pm_.c:102
+#: ../diskdrake.pm_.c:103
msgid "Ext2"
msgstr ""
-#: ../diskdrake.pm_.c:102
+#: ../diskdrake.pm_.c:103
msgid "FAT"
msgstr ""
-#: ../diskdrake.pm_.c:102
+#: ../diskdrake.pm_.c:103
msgid "Other"
msgstr ""
-#: ../diskdrake.pm_.c:102
+#: ../diskdrake.pm_.c:103
msgid "Swap"
msgstr ""
-#: ../diskdrake.pm_.c:122
+#: ../diskdrake.pm_.c:123
#, c-format
msgid "After %s partition %s,"
msgstr ""
-#: ../diskdrake.pm_.c:122 ../diskdrake.pm_.c:371 ../diskdrake.pm_.c:398
+#: ../diskdrake.pm_.c:123 ../diskdrake.pm_.c:373 ../diskdrake.pm_.c:400
msgid "Read carefully!"
msgstr ""
-#: ../diskdrake.pm_.c:122
+#: ../diskdrake.pm_.c:123
msgid "all data on this partition will be lost"
msgstr ""
-#: ../diskdrake.pm_.c:140 ../install_any.pm_.c:177 ../install_steps.pm_.c:67
+#: ../diskdrake.pm_.c:142 ../install_any.pm_.c:180 ../install_steps.pm_.c:67
#: ../install_steps_interactive.pm_.c:38
msgid "Error"
msgstr ""
-#: ../diskdrake.pm_.c:161 ../diskdrake.pm_.c:515
+#: ../diskdrake.pm_.c:163 ../diskdrake.pm_.c:517
msgid "Mount point: "
msgstr ""
-#: ../diskdrake.pm_.c:162 ../diskdrake.pm_.c:184
+#: ../diskdrake.pm_.c:164 ../diskdrake.pm_.c:186
msgid "Device: "
msgstr ""
-#: ../diskdrake.pm_.c:163
+#: ../diskdrake.pm_.c:165
#, c-format
msgid "DOS drive letter: %s (just a guess)\n"
msgstr ""
-#: ../diskdrake.pm_.c:164 ../diskdrake.pm_.c:187
+#: ../diskdrake.pm_.c:166 ../diskdrake.pm_.c:189
msgid "Type: "
msgstr ""
-#: ../diskdrake.pm_.c:165
+#: ../diskdrake.pm_.c:167
#, c-format
msgid "Start: sector %s\n"
msgstr ""
-#: ../diskdrake.pm_.c:166
+#: ../diskdrake.pm_.c:168
msgid "Size: %s MB (%s%%)"
msgstr ""
-#: ../diskdrake.pm_.c:167
+#: ../diskdrake.pm_.c:169
#, c-format
msgid ", %s sectors"
msgstr ""
-#: ../diskdrake.pm_.c:169
+#: ../diskdrake.pm_.c:171
#, c-format
msgid "Cylinder %d to cylinder %d\n"
msgstr ""
-#: ../diskdrake.pm_.c:170
+#: ../diskdrake.pm_.c:172
msgid "Formatted\n"
msgstr ""
-#: ../diskdrake.pm_.c:171
+#: ../diskdrake.pm_.c:173
msgid "Not formatted\n"
msgstr ""
-#: ../diskdrake.pm_.c:172
+#: ../diskdrake.pm_.c:174
msgid "Mounted\n"
msgstr ""
-#: ../diskdrake.pm_.c:173
+#: ../diskdrake.pm_.c:175
msgid ""
"Partition booted by default\n"
" (for MS-DOS boot, not for lilo)\n"
msgstr ""
-#: ../diskdrake.pm_.c:185
+#: ../diskdrake.pm_.c:187
#, c-format
msgid "Size: %d MB\n"
msgstr ""
-#: ../diskdrake.pm_.c:186
+#: ../diskdrake.pm_.c:188
#, c-format
msgid "Geometry: %s cylinders, %s heads, %s sectors\n"
msgstr ""
-#: ../diskdrake.pm_.c:188
+#: ../diskdrake.pm_.c:190
#, c-format
msgid "on bus %d id %d\n"
msgstr ""
-#: ../diskdrake.pm_.c:200
+#: ../diskdrake.pm_.c:202
msgid "Mount"
msgstr ""
-#: ../diskdrake.pm_.c:202
+#: ../diskdrake.pm_.c:204
msgid "Active"
msgstr ""
-#: ../diskdrake.pm_.c:291
+#: ../diskdrake.pm_.c:293
msgid ""
"Sorry I won't accept to create /boot so far onto the drive (on a cylinder > "
"1024).\n"
@@ -568,7 +572,7 @@ msgid ""
"need /boot"
msgstr ""
-#: ../diskdrake.pm_.c:295
+#: ../diskdrake.pm_.c:297
msgid ""
"The partition you've selected to add as root (/) is physically located "
"beyond\n"
@@ -576,137 +580,137 @@ msgid ""
"If you plan to use the LILO boot manager, be careful to add a /boot partition"
msgstr ""
-#: ../diskdrake.pm_.c:309
+#: ../diskdrake.pm_.c:311
msgid "Quit without saving"
msgstr ""
-#: ../diskdrake.pm_.c:309
+#: ../diskdrake.pm_.c:311
msgid "Quit without writing the partition table?"
msgstr ""
-#: ../diskdrake.pm_.c:324
+#: ../diskdrake.pm_.c:326
msgid "changing type of"
msgstr ""
-#: ../diskdrake.pm_.c:327
+#: ../diskdrake.pm_.c:329
msgid "Change partition type"
msgstr ""
-#: ../diskdrake.pm_.c:328
+#: ../diskdrake.pm_.c:330
msgid "Which partition type do you want?"
msgstr ""
-#: ../diskdrake.pm_.c:343
+#: ../diskdrake.pm_.c:345
#, c-format
msgid "Where do you want to mount device %s?"
msgstr ""
-#: ../diskdrake.pm_.c:344
+#: ../diskdrake.pm_.c:346
msgid "Mount point"
msgstr ""
-#: ../diskdrake.pm_.c:365
+#: ../diskdrake.pm_.c:367
msgid "formatting"
msgstr ""
-#: ../diskdrake.pm_.c:371
+#: ../diskdrake.pm_.c:373
msgid "After formatting all partitions,"
msgstr ""
-#: ../diskdrake.pm_.c:371
+#: ../diskdrake.pm_.c:373
msgid "all data on these partitions will be lost"
msgstr ""
-#: ../diskdrake.pm_.c:381
+#: ../diskdrake.pm_.c:383
msgid "Which disk do you want to move to?"
msgstr ""
-#: ../diskdrake.pm_.c:385
+#: ../diskdrake.pm_.c:387
msgid "Sector"
msgstr ""
-#: ../diskdrake.pm_.c:386
+#: ../diskdrake.pm_.c:388
msgid "Which sector do you want to move to?"
msgstr ""
-#: ../diskdrake.pm_.c:389
+#: ../diskdrake.pm_.c:391
msgid "Moving"
msgstr ""
-#: ../diskdrake.pm_.c:389
+#: ../diskdrake.pm_.c:391
msgid "Moving partition..."
msgstr ""
-#: ../diskdrake.pm_.c:398
+#: ../diskdrake.pm_.c:400
#, c-format
msgid "Partition table of drive %s is going to be written to disk!"
msgstr ""
-#: ../diskdrake.pm_.c:400
+#: ../diskdrake.pm_.c:402
msgid "You'll need to reboot before the modification can take place"
msgstr ""
-#: ../diskdrake.pm_.c:421
+#: ../diskdrake.pm_.c:423
msgid "Computing fat filesystem bounds"
msgstr ""
-#: ../diskdrake.pm_.c:421 ../diskdrake.pm_.c:466
+#: ../diskdrake.pm_.c:423 ../diskdrake.pm_.c:468
msgid "Resizing"
msgstr ""
-#: ../diskdrake.pm_.c:435
+#: ../diskdrake.pm_.c:437
msgid "resizing"
msgstr ""
-#: ../diskdrake.pm_.c:445
+#: ../diskdrake.pm_.c:447
msgid "Choose the new size"
msgstr ""
-#: ../diskdrake.pm_.c:445 ../install_steps_graphical.pm_.c:302
+#: ../diskdrake.pm_.c:447 ../install_steps_graphical.pm_.c:301
msgid "MB"
msgstr ""
-#: ../diskdrake.pm_.c:492
+#: ../diskdrake.pm_.c:494
msgid "Create a new partition"
msgstr ""
-#: ../diskdrake.pm_.c:508
+#: ../diskdrake.pm_.c:510
msgid "Start sector: "
msgstr ""
-#: ../diskdrake.pm_.c:511
+#: ../diskdrake.pm_.c:513
msgid "Size in MB: "
msgstr ""
-#: ../diskdrake.pm_.c:514
+#: ../diskdrake.pm_.c:516
msgid "Filesystem type: "
msgstr ""
-#: ../diskdrake.pm_.c:516
+#: ../diskdrake.pm_.c:518
msgid "Preference: "
msgstr ""
-#: ../diskdrake.pm_.c:559 ../diskdrake.pm_.c:575
+#: ../diskdrake.pm_.c:560 ../diskdrake.pm_.c:576
msgid "Select file"
msgstr ""
-#: ../diskdrake.pm_.c:568
+#: ../diskdrake.pm_.c:569
msgid ""
"The backup partition table has not the same size\n"
"Still continue?"
msgstr ""
-#: ../diskdrake.pm_.c:576
+#: ../diskdrake.pm_.c:577
msgid "Warning"
msgstr ""
-#: ../diskdrake.pm_.c:577
+#: ../diskdrake.pm_.c:578
msgid ""
"Insert a floppy in drive\n"
"All data on this floppy will be lost"
msgstr ""
-#: ../diskdrake.pm_.c:591
+#: ../diskdrake.pm_.c:592
msgid "Trying to rescue partition table"
msgstr ""
@@ -1170,146 +1174,151 @@ msgstr ""
msgid "Partitioning failed: no root filesystem"
msgstr ""
-#: ../install2.pm_.c:480
-msgid "Error reading file $f"
-msgstr ""
-
-#: ../install2.pm_.c:485
-#, c-format
-msgid "Bad kickstart file %s (failed %s)"
-msgstr ""
-
-#: ../install_any.pm_.c:178
+#: ../install_any.pm_.c:181
msgid ""
"I can't read your partition table, it's too corrupted for me :(\n"
"I'll try to go on blanking bad partitions"
msgstr ""
-#: ../install_any.pm_.c:193
+#: ../install_any.pm_.c:197
msgid ""
"DiskDrake failed to read correctly the partition table.\n"
"Continue at your own risk!"
msgstr ""
-#: ../install_any.pm_.c:232
+#: ../install_any.pm_.c:236
msgid "Information"
msgstr ""
-#: ../install_any.pm_.c:233
+#: ../install_any.pm_.c:237
#, c-format
msgid "%s: This is not a root partition, please select another one."
msgstr ""
-#: ../install_any.pm_.c:235
+#: ../install_any.pm_.c:239
msgid "No root partition found"
msgstr ""
+#: ../install_any.pm_.c:359
+msgid "Error reading file $f"
+msgstr ""
+
+#: ../install_any.pm_.c:364
+#, c-format
+msgid "Bad kickstart file %s (failed %s)"
+msgstr ""
+
#: ../install_steps.pm_.c:68
msgid ""
"An error occurred, but I don't know how to handle it nicely.\n"
"Continue at your own risk."
msgstr ""
-#: ../install_steps.pm_.c:123
+#: ../install_steps.pm_.c:124
#, c-format
msgid "Duplicate mount point %s"
msgstr ""
-#: ../install_steps.pm_.c:327
+#: ../install_steps.pm_.c:337
msgid "No floppy drive available"
msgstr ""
-#: ../install_steps_graphical.pm_.c:257
+#: ../install_steps_auto_install.pm_.c:18 ../install_steps_stdio.pm_.c:21
+#, c-format
+msgid "Entering step `%s'\n"
+msgstr ""
+
+#: ../install_steps_graphical.pm_.c:256
msgid "You must have a swap partition"
msgstr ""
-#: ../install_steps_graphical.pm_.c:260
+#: ../install_steps_graphical.pm_.c:259
msgid ""
"You don't have a swap partition\n"
"\n"
"Continue anyway?"
msgstr ""
-#: ../install_steps_graphical.pm_.c:302
+#: ../install_steps_graphical.pm_.c:301
msgid "Total size: "
msgstr ""
-#: ../install_steps_graphical.pm_.c:314
+#: ../install_steps_graphical.pm_.c:313
#, c-format
msgid "Version: %s\n"
msgstr ""
-#: ../install_steps_graphical.pm_.c:315
+#: ../install_steps_graphical.pm_.c:314
#, c-format
msgid "Size: %d KB\n"
msgstr ""
-#: ../install_steps_graphical.pm_.c:430
+#: ../install_steps_graphical.pm_.c:429
msgid "Choose the packages you want to install"
msgstr ""
-#: ../install_steps_graphical.pm_.c:433
+#: ../install_steps_graphical.pm_.c:432
msgid "Info"
msgstr ""
-#: ../install_steps_graphical.pm_.c:441 ../install_steps_interactive.pm_.c:81
+#: ../install_steps_graphical.pm_.c:440 ../install_steps_interactive.pm_.c:81
msgid "Install"
msgstr ""
-#: ../install_steps_graphical.pm_.c:442
+#: ../install_steps_graphical.pm_.c:441
msgid "Select less"
msgstr ""
-#: ../install_steps_graphical.pm_.c:443
+#: ../install_steps_graphical.pm_.c:442
msgid "Select more"
msgstr ""
-#: ../install_steps_graphical.pm_.c:444
+#: ../install_steps_graphical.pm_.c:443
msgid "Show less"
msgstr ""
-#: ../install_steps_graphical.pm_.c:445
+#: ../install_steps_graphical.pm_.c:444
msgid "Show more"
msgstr ""
-#: ../install_steps_graphical.pm_.c:462
+#: ../install_steps_graphical.pm_.c:461
msgid "Installing"
msgstr ""
-#: ../install_steps_graphical.pm_.c:468
+#: ../install_steps_graphical.pm_.c:467
msgid "Please wait, "
msgstr ""
-#: ../install_steps_graphical.pm_.c:470
+#: ../install_steps_graphical.pm_.c:469
msgid "Time remaining "
msgstr ""
-#: ../install_steps_graphical.pm_.c:471
+#: ../install_steps_graphical.pm_.c:470
msgid "Total time "
msgstr ""
-#: ../install_steps_graphical.pm_.c:476
+#: ../install_steps_graphical.pm_.c:475
msgid "Preparing installation"
msgstr ""
-#: ../install_steps_graphical.pm_.c:497
+#: ../install_steps_graphical.pm_.c:496
#, c-format
msgid "Installing package %s"
msgstr ""
-#: ../install_steps_graphical.pm_.c:522
+#: ../install_steps_graphical.pm_.c:521
msgid "Go on anyway?"
msgstr ""
-#: ../install_steps_graphical.pm_.c:522
+#: ../install_steps_graphical.pm_.c:521
msgid "There was an error ordering packages:"
msgstr ""
-#: ../install_steps_graphical.pm_.c:546
+#: ../install_steps_graphical.pm_.c:545
msgid "Use existing configuration for X11?"
msgstr ""
-#: ../install_steps_graphical.pm_.c:620 ../install_steps_interactive.pm_.c:508
+#: ../install_steps_graphical.pm_.c:618 ../install_steps_interactive.pm_.c:508
#: ../interactive.pm_.c:47 ../interactive.pm_.c:57 ../my_gtk.pm_.c:194
#: ../my_gtk.pm_.c:431 ../my_gtk.pm_.c:521
msgid "Ok"
@@ -1685,67 +1694,83 @@ msgstr ""
msgid "Password (again):"
msgstr ""
+#: ../install_steps_interactive.pm_.c:510
+msgid "Use MD5 passwords"
+msgstr ""
+
+#: ../install_steps_interactive.pm_.c:510
+msgid "Use shadow file"
+msgstr ""
+
+#: ../install_steps_interactive.pm_.c:513
+msgid "shadow"
+msgstr ""
+
#: ../install_steps_interactive.pm_.c:514
-#: ../install_steps_interactive.pm_.c:546
+msgid "MD5"
+msgstr ""
+
+#: ../install_steps_interactive.pm_.c:517
+#: ../install_steps_interactive.pm_.c:549
msgid "Please try again"
msgstr ""
-#: ../install_steps_interactive.pm_.c:514
-#: ../install_steps_interactive.pm_.c:546
+#: ../install_steps_interactive.pm_.c:517
+#: ../install_steps_interactive.pm_.c:549
msgid "The passwords do not match"
msgstr ""
-#: ../install_steps_interactive.pm_.c:515
+#: ../install_steps_interactive.pm_.c:518
msgid "This password is too simple"
msgstr ""
-#: ../install_steps_interactive.pm_.c:533
+#: ../install_steps_interactive.pm_.c:536
msgid "Add user"
msgstr ""
-#: ../install_steps_interactive.pm_.c:534
+#: ../install_steps_interactive.pm_.c:537
#, c-format
msgid "(already added %s)"
msgstr ""
-#: ../install_steps_interactive.pm_.c:534
+#: ../install_steps_interactive.pm_.c:537
#, c-format
msgid ""
"Enter a user\n"
"%s"
msgstr ""
-#: ../install_steps_interactive.pm_.c:535
-#: ../install_steps_interactive.pm_.c:621
+#: ../install_steps_interactive.pm_.c:538
+#: ../install_steps_interactive.pm_.c:626
msgid "Password"
msgstr ""
-#: ../install_steps_interactive.pm_.c:535
+#: ../install_steps_interactive.pm_.c:538
msgid "Password (again)"
msgstr ""
-#: ../install_steps_interactive.pm_.c:535
+#: ../install_steps_interactive.pm_.c:538
msgid "Real name"
msgstr ""
-#: ../install_steps_interactive.pm_.c:535
+#: ../install_steps_interactive.pm_.c:538
msgid "Shell"
msgstr ""
-#: ../install_steps_interactive.pm_.c:535
+#: ../install_steps_interactive.pm_.c:538
msgid "User name"
msgstr ""
-#: ../install_steps_interactive.pm_.c:548
+#: ../install_steps_interactive.pm_.c:551
msgid "Please give a user name"
msgstr ""
-#: ../install_steps_interactive.pm_.c:549
+#: ../install_steps_interactive.pm_.c:552
msgid ""
"The user name must contain only lower cased letters, numbers, `-' and `_'"
msgstr ""
-#: ../install_steps_interactive.pm_.c:569
+#: ../install_steps_interactive.pm_.c:573
msgid ""
"A custom bootdisk provides a way of booting into your Linux system without\n"
"depending on the normal bootloader. This is useful if you don't want to "
@@ -1759,151 +1784,151 @@ msgid ""
"failures. Would you like to create a bootdisk for your system?"
msgstr ""
-#: ../install_steps_interactive.pm_.c:577
+#: ../install_steps_interactive.pm_.c:582
msgid "Sorry, no floppy drive available"
msgstr ""
-#: ../install_steps_interactive.pm_.c:580
+#: ../install_steps_interactive.pm_.c:585
msgid "Choose the floppy drive you want to use to make the bootdisk"
msgstr ""
-#: ../install_steps_interactive.pm_.c:585
+#: ../install_steps_interactive.pm_.c:590
#, c-format
msgid "Insert a floppy in drive %s"
msgstr ""
-#: ../install_steps_interactive.pm_.c:586
+#: ../install_steps_interactive.pm_.c:591
msgid "Creating bootdisk"
msgstr ""
-#: ../install_steps_interactive.pm_.c:593
+#: ../install_steps_interactive.pm_.c:598
msgid "Preparing bootloader"
msgstr ""
-#: ../install_steps_interactive.pm_.c:605
+#: ../install_steps_interactive.pm_.c:610
msgid "First sector of boot partition"
msgstr ""
-#: ../install_steps_interactive.pm_.c:605
+#: ../install_steps_interactive.pm_.c:610
msgid "First sector of drive (MBR)"
msgstr ""
-#: ../install_steps_interactive.pm_.c:609
+#: ../install_steps_interactive.pm_.c:614
msgid "LILO Installation"
msgstr ""
-#: ../install_steps_interactive.pm_.c:610
+#: ../install_steps_interactive.pm_.c:615
msgid "Where do you want to install the bootloader?"
msgstr ""
-#: ../install_steps_interactive.pm_.c:613
+#: ../install_steps_interactive.pm_.c:618
msgid "Do you want to use LILO?"
msgstr ""
-#: ../install_steps_interactive.pm_.c:616
+#: ../install_steps_interactive.pm_.c:621
msgid "Boot device"
msgstr ""
-#: ../install_steps_interactive.pm_.c:617
+#: ../install_steps_interactive.pm_.c:622
msgid "Linear (needed for some SCSI drives)"
msgstr ""
-#: ../install_steps_interactive.pm_.c:617
+#: ../install_steps_interactive.pm_.c:622
msgid "linear"
msgstr ""
-#: ../install_steps_interactive.pm_.c:618
+#: ../install_steps_interactive.pm_.c:623
msgid "Compact"
msgstr ""
-#: ../install_steps_interactive.pm_.c:618
+#: ../install_steps_interactive.pm_.c:623
msgid "compact"
msgstr ""
-#: ../install_steps_interactive.pm_.c:619
+#: ../install_steps_interactive.pm_.c:624
msgid "Delay before booting default image"
msgstr ""
-#: ../install_steps_interactive.pm_.c:620
+#: ../install_steps_interactive.pm_.c:625
msgid "Video mode"
msgstr ""
-#: ../install_steps_interactive.pm_.c:622
+#: ../install_steps_interactive.pm_.c:627
msgid "Restrict command line options"
msgstr ""
-#: ../install_steps_interactive.pm_.c:622
+#: ../install_steps_interactive.pm_.c:627
msgid "restrict"
msgstr ""
-#: ../install_steps_interactive.pm_.c:628
+#: ../install_steps_interactive.pm_.c:633
msgid "LILO main options"
msgstr ""
-#: ../install_steps_interactive.pm_.c:632
+#: ../install_steps_interactive.pm_.c:637
msgid ""
"Option ``Restrict command line options'' is of no use without a password"
msgstr ""
-#: ../install_steps_interactive.pm_.c:641
+#: ../install_steps_interactive.pm_.c:646
msgid ""
"Here are the following entries in LILO.\n"
"You can add some more or change the existent ones."
msgstr ""
-#: ../install_steps_interactive.pm_.c:643
+#: ../install_steps_interactive.pm_.c:648
msgid "Add"
msgstr ""
-#: ../install_steps_interactive.pm_.c:661
+#: ../install_steps_interactive.pm_.c:666
msgid "Image"
msgstr ""
-#: ../install_steps_interactive.pm_.c:662
-#: ../install_steps_interactive.pm_.c:670
+#: ../install_steps_interactive.pm_.c:667
+#: ../install_steps_interactive.pm_.c:675
msgid "Root"
msgstr ""
-#: ../install_steps_interactive.pm_.c:663
+#: ../install_steps_interactive.pm_.c:668
msgid "Append"
msgstr ""
-#: ../install_steps_interactive.pm_.c:664
+#: ../install_steps_interactive.pm_.c:669
msgid "Initrd"
msgstr ""
-#: ../install_steps_interactive.pm_.c:665
+#: ../install_steps_interactive.pm_.c:670
msgid "Read-write"
msgstr ""
-#: ../install_steps_interactive.pm_.c:671
+#: ../install_steps_interactive.pm_.c:676
msgid "Table"
msgstr ""
-#: ../install_steps_interactive.pm_.c:672
+#: ../install_steps_interactive.pm_.c:677
msgid "Unsafe"
msgstr ""
-#: ../install_steps_interactive.pm_.c:677
+#: ../install_steps_interactive.pm_.c:682
msgid "Label"
msgstr ""
-#: ../install_steps_interactive.pm_.c:679
+#: ../install_steps_interactive.pm_.c:684
msgid "Default"
msgstr ""
-#: ../install_steps_interactive.pm_.c:698
+#: ../install_steps_interactive.pm_.c:703
msgid "Installation of LILO failed. The following error occured:"
msgstr ""
-#: ../install_steps_interactive.pm_.c:709
+#: ../install_steps_interactive.pm_.c:714
msgid ""
"Some steps are not completed.\n"
"\n"
"Do you really want to quit now?"
msgstr ""
-#: ../install_steps_interactive.pm_.c:714
+#: ../install_steps_interactive.pm_.c:721
msgid ""
"Congratulations, installation is complete.\n"
"Remove the boot media and press return to reboot.\n"
@@ -1916,22 +1941,22 @@ msgid ""
"install chapter of the Official Linux-Mandrake User's Guide."
msgstr ""
-#: ../install_steps_interactive.pm_.c:733
+#: ../install_steps_interactive.pm_.c:740
#, c-format
msgid "Installing driver for %s card %s"
msgstr ""
-#: ../install_steps_interactive.pm_.c:734
+#: ../install_steps_interactive.pm_.c:741
#, c-format
msgid "(module %s)"
msgstr ""
-#: ../install_steps_interactive.pm_.c:744
+#: ../install_steps_interactive.pm_.c:751
#, c-format
msgid "What %s card do you have?"
msgstr ""
-#: ../install_steps_interactive.pm_.c:751
+#: ../install_steps_interactive.pm_.c:758
#, c-format
msgid ""
"In some cases, the %s driver needs to have extra information to work\n"
@@ -1943,20 +1968,20 @@ msgid ""
"not cause any damage."
msgstr ""
-#: ../install_steps_interactive.pm_.c:756
+#: ../install_steps_interactive.pm_.c:763
msgid "Autoprobe"
msgstr ""
-#: ../install_steps_interactive.pm_.c:756
+#: ../install_steps_interactive.pm_.c:763
msgid "Specify options"
msgstr ""
-#: ../install_steps_interactive.pm_.c:760
+#: ../install_steps_interactive.pm_.c:767
#, c-format
msgid "You may now provide its options to module %s."
msgstr ""
-#: ../install_steps_interactive.pm_.c:766
+#: ../install_steps_interactive.pm_.c:773
#, c-format
msgid ""
"You may now provide its options to module %s.\n"
@@ -1964,68 +1989,63 @@ msgid ""
"For instance, ``io=0x300 irq=7''"
msgstr ""
-#: ../install_steps_interactive.pm_.c:769
+#: ../install_steps_interactive.pm_.c:776
msgid "Module options:"
msgstr ""
-#: ../install_steps_interactive.pm_.c:779
+#: ../install_steps_interactive.pm_.c:786
#, c-format
msgid ""
"Loading module %s failed.\n"
"Do you want to try again with other parameters?"
msgstr ""
-#: ../install_steps_interactive.pm_.c:792
+#: ../install_steps_interactive.pm_.c:799
#, c-format
msgid "Skip %s PCMCIA probing"
msgstr ""
-#: ../install_steps_interactive.pm_.c:793
+#: ../install_steps_interactive.pm_.c:800
msgid "Configuring PCMCIA cards..."
msgstr ""
-#: ../install_steps_interactive.pm_.c:793
+#: ../install_steps_interactive.pm_.c:800
msgid "PCMCIA"
msgstr ""
-#: ../install_steps_interactive.pm_.c:800
+#: ../install_steps_interactive.pm_.c:807
#, c-format
msgid "Skip %s PCI probing"
msgstr ""
-#: ../install_steps_interactive.pm_.c:804
+#: ../install_steps_interactive.pm_.c:811
#, c-format
msgid "Found %s %s interfaces"
msgstr ""
-#: ../install_steps_interactive.pm_.c:805
+#: ../install_steps_interactive.pm_.c:812
msgid "Do you have another one?"
msgstr ""
-#: ../install_steps_interactive.pm_.c:806
+#: ../install_steps_interactive.pm_.c:813
#, c-format
msgid "Do you have an %s interface?"
msgstr ""
-#: ../install_steps_interactive.pm_.c:808 ../interactive.pm_.c:52
+#: ../install_steps_interactive.pm_.c:815 ../interactive.pm_.c:52
#: ../my_gtk.pm_.c:430
msgid "No"
msgstr ""
-#: ../install_steps_interactive.pm_.c:808 ../interactive.pm_.c:52
+#: ../install_steps_interactive.pm_.c:815 ../interactive.pm_.c:52
#: ../my_gtk.pm_.c:430
msgid "Yes"
msgstr ""
-#: ../install_steps_interactive.pm_.c:809
+#: ../install_steps_interactive.pm_.c:816
msgid "See hardware info"
msgstr ""
-#: ../install_steps_stdio.pm_.c:21
-#, c-format
-msgid "Entering step `%s'\n"
-msgstr ""
-
#: ../interactive.pm_.c:57 ../my_gtk.pm_.c:195 ../my_gtk.pm_.c:431
msgid "Cancel"
msgstr ""
diff --git a/perl-install/swap.pm b/perl-install/swap.pm
index c14e67092..a7f122bec 100644
--- a/perl-install/swap.pm
+++ b/perl-install/swap.pm
@@ -92,7 +92,7 @@ sub make($;$) {
}
if ($checkBlocks) {
- $badpages = check_blocks(\*F, $version, $nbpages);
+ $badpages = check_blocks(*F, $version, $nbpages);
} elsif ($version == 0) {
for (my $i = 0; $i < $nbpages; $i++) { vec($signature_page, $i, 1) = 1; }
}