summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docs/TODO262
-rw-r--r--perl-install/Newt/Av_CharPtrPtr.c2
-rw-r--r--perl-install/Xconfigurator.pm26
-rwxr-xr-xperl-install/do_resize_fat4
-rw-r--r--perl-install/install2.pm7
-rw-r--r--perl-install/install_any.pm4
-rw-r--r--perl-install/install_steps.pm6
-rw-r--r--perl-install/install_steps_gtk.pm4
-rw-r--r--perl-install/install_steps_interactive.pm8
-rw-r--r--perl-install/lang.pm12
-rw-r--r--perl-install/modules.pm3
-rw-r--r--perl-install/my_gtk.pm4
-rw-r--r--perl-install/pkgs.pm24
-rw-r--r--perl-install/resize_fat/io.pm18
-rw-r--r--perl-install/share/compssList16
-rw-r--r--perl-install/share/list2
16 files changed, 220 insertions, 182 deletions
diff --git a/docs/TODO b/docs/TODO
index fa54aee84..d3b6c9363 100644
--- a/docs/TODO
+++ b/docs/TODO
@@ -1,66 +1,88 @@
-(done,pix)bug: DrakConf don't follow the charset -> add setlocale(LC_ALL, "")
-(done,pix)for ko|ja|zh, gnome-terminal should point to rxvt (-CLE)
-(done,pix)group cdrom in /etc/group (gid=22)
-(done,pix)drakxtools should require urpmi
-(done,pix)bug: gdm unset LANG
-(done,pix) zip with automount -> ppa not autoloaded
-(done,pix)when you set the kde icons to Large, maybe it'd be good to chown the .kderc
-(done,pix)lilo in russian/japaneese is horrible
-(ok,pix)test ide burners
-(ok)test check bad blocks optional for mke2fs
-(done,pix)hd install: no umount is done at the end of install :(
+-choices--------------------------------------------------------------------------------
+index/compress hdlist?
-just before release:
-(done,pix)- mandrake_doc-xx, the symlink is no good in /usr/doc/mandrake as
-(done,pix)- crypto dependencies to update
-(done,pix)- update kudzu's pcitable
-(done,pix)- update pcitable for 86C368 if 3.3.6 (and other S3 3D's)
- ("ATI|3D Rage P/M Mobility AGP 2x" -> changed to Server:Mach64)
+checkboxes in groups based on compssList (and availableSpace?)
---------------------------------------------------------------------------------
-ask package installation languages (must be put in RPM_INSTALL_LANG)
+PPPoE install and configuration (SuSE includes it, DHCP-like)
-remount ro before X test.
+standalone applications for configuration (netdrake, authentificationconf, soundcard)
-checkboxes in groups based on compssList (and availableSpace?)
+feature missing: cancel installation
-rpmdrake and same name packages
+crypto: add a cancel & progress bar while downloading
-(workaround)with 2MB of video ram, chooses 8bpp instead of 16bpp
+error handling (like reading hdlist)
-the XFdrake test does not handle the fontset
+get the error when reading .rpm files fail
+diskdrake in text mode
-replace
- { device => "loop7", type => 0x83, size => cat_('/dos/lnx4win/size.txt') * 2048, mntpoint => "/", isFormatted => 1, isMounted => 1 },
-by
- { device => "loop7", type => 0x83, size => ((cat_('/dos/lnx4win/size.txt'))[0]*2048), mntpoint => "/", isFormatted => 1, isMounted => 1 },
+add fdisk using the zvt widget (taken in gnome-libs)
+see what can be done with nvram (50 bytes to save information)
---------------------------------------------------------------------------------
-mandrake_desk has not installed while kdebase it there on upgrade
+Tree -> CTree, ``all'' branch with all packages
+show the value associated (100->a must, 90->great, 80->nice, ... 10->useless, 0->do not install)
-(done,pix)bug (by dadou): Si la partition racine est trop petite pour installer le syst�me, un
-message d'erreur appara�t pour signaler le probl�me (bien) mais on ne
-peut en sortir. La seule solution est de red�marrer.
+sound config
+
+grub, chos, gag
+
+enable the testing of the mouse type (under X) (wheel)
+
+using setxkb, enable the testing of the keyboard
+
+----
+paride in stage1
+
+msec custom
+
+stage1 & network: add ability to choose the network interface to use
+stage1 & cdrom: add ability in expert to choose the scsi cdrom drive to use
+
+ability to add nfs/weird_fs entries in fstab
+
+(fpons)pb with dependencies ``missing'': icewm do not require XFree86 and so you can have icewm but no X server
-Je viens de faire une installation sur une machine o� seul Be �tait
+auto ppp-configure with free provider
+
+
+-easy fixes-----------------------------------------------------------------------------
+remove every << and >> (doesn't handle > 32bits)
+
+usb module not removed if no mouse found
+
+(small)urpmi: handle many args on cmd-line
+
+fstab must be sorted (/usr/local after /usr)
+
+configure DHCP for newbies if ethernet & DHCP card available
+
+rpmdrake proposition for cdrom labels
+
+fix any // in path to ftp server otherwise windobe server bug :(
+
+(?) Je viens de faire une installation sur une machine o� seul Be �tait
install�. Je l'ai supprim� et install� (mode recommand�) Oxygen. Au
red�marrage, le boot manager de Be appara�t et il est impossible de
d�marrer Linux.
Pourquoi ne pas installer LILO si on supprime toutes les partitions ?
-fix any // in path to ftp server otherwise windobe server bug :(
+(?) Xconfiguration: if "can't open fixed font", relaunch xfs.
+
+(?) in chooseResolutions: display the graphic card found
+
+(?) diskdrake should warn if nb_ide_parts > 63, nb_scsi_parts > 15
+
+
+-fixes needing thinking-----------------------------------------------------------------
+handle not enough room for update
+(fpons)verify the free space is big enough.
missing feature in lilo configuration: can't give hda2 with /boot/vmlinuz if
already hda1 with /boot/vmlinuz
-I have Mandrake 6.1 installed and working on a ThinkPad 770.
-To enable the PCMCIA Token ring I have to append the following line to
-/etc/pcmcia/config.opts
-module "ibmtr_cs" opts "mmiobase=0xd2000 srambase=0xd4000"
-
-configure DHCP for newbies if ethernet & DHCP card available
+the XFdrake test does not handle the fontset
> Here I go into the printer configuration select 'HP Deskjet 722C Colour',
> print a test ASCII page, pressing 'No' when prompted to indicate the page did
@@ -68,137 +90,101 @@ configure DHCP for newbies if ethernet & DHCP card available
> again.
> ask_from_list cancel at /usr/lib/libDrakX/my_gtk.pm line 504.
-refresh the kde desktop after package installation in rpmdrake
-(restart kpanel)
-
bug in ext2resizing (no sparse superbloc, don't finish properly)
diskdrake: take from parted mklabel, hide(?)
-error handling (like reading hdlist)
-
-smp not detected (mhoward@memphisonline.com on cooker, bios=BP6PW)
-
-UDMA66 (ultra66.o for promise)
-
bug in kde desktop if keeps home but not an upgrade
bug in users: mandrake user is added twice in strange installs
(mixed of security 0 + ???)
-(obsolete)bug when selecting compssUsers, do not deselect after (if u deselect)
-
-(done,fpons)in ftp install, bug with X server install with wu-ftpd 2.6 (see http://www.wu-ftpd.org/broken-clients.html)
-
-bug rpmdrake: just after installing a package, switch to `Installed', the package has wrong name
+bugs rpmdrake:
+- just after installing a package, switch to `Installed', the package has wrong name
+- refresh the kde desktop after package installation in rpmdrake
+(restart kpanel)
+- rpmdrake and same name packages
urpmi: pb if XXX-devel requires XXX = 1.2.3 and we updgrade XXX-1.2.3
-PPPoE install and configuration (SuSE includes it, DHCP-like)
-
-auto ppp-configure with free provider
-
-standalone applications for configuration (netdrake, authentificationconf, soundcard)
-
-Xconfiguration: if "can't open fixed font", relaunch xfs.
-
bug in defcfg in with lang=fr_FR, display is buggy
-feature missing: cancel installation
-cancel button in packages installation
-
-crypto: add a cancel while downloading
-
bug keyboard focus: after switch in console at Xconfig step
-rpmdrake proposition for cdrom labels
-
-(done,pix)detect ide burners and then add hdX=ide-scsi to kernel cmdline
-bug in upgrade: install from hda1:/usr/local/blah with hda1:/
-
-msec custom
-
-paride in stage1
+-to look at--------------------------------------------------------------------------
bug in diskdrake: can in strange cases create a primary partition at sector #0
(done,pix(partly, protection against bugging))bug in diskdrake:
in expert: blank, create hda5 at beginning, create hda6 at the end, create hda7
in the middle, remove the first one. Result hda5 at the end and bug.
-(pix)add paride.o (and the others)
-
-(pix)install text on mem=8M, mem=16M?
-
(fpons)bug: CANON BJC 4X00 do not work with current rhs-printfilters
(work with magicfilters (debian))
(should be handled by ghostscript BJC600's driver)
-(pix)see what can be done with nvram (50 bytes to save information)
-
-i18n
-
-stage1 & network: add ability to choose the network interface to use
-stage1 & cdrom: add ability in expert to choose the scsi cdrom drive to use
-
-ability to add nfs/weird_fs entries in fstab
-
-(pix)diskdrake in text mode
-
-is configureNetworkNet needed with dhcp/bootp?
+(pix)install text on mem=8M, mem=16M?
(pix)kickstart
partitioning? raid?
X configuration and bootloader in kickstart
-(pix)Tree -> CTree, ``all'' branch with all packages
+XFdrake chooseResolutions with ask_from_list do not permit ``Show all''
-(fpons)verify the free space is big enough.
+have a better time estimation of the remaining time in install packages
-(fpons)pb with dependencies ``missing'': icewm do not require XFree86 and so you can have icewm but no X server
+(?) options in mkfs, progress bar when formatting
-XFdrake chooseResolutions with ask_from_list do not permit ``Show all''
-have a better time estimation of the remaining time in install packages
+-hardware-------------------------------------------------------------------------------
+I have Mandrake 6.1 installed and working on a ThinkPad 770.
+To enable the PCMCIA Token ring I have to append the following line to
+/etc/pcmcia/config.opts
+module "ibmtr_cs" opts "mmiobase=0xd2000 srambase=0xd4000"
-smaller zsh (or ash in initrd)
+smp not detected (mhoward@memphisonline.com on cooker, bios=BP6PW)
-initrd in bzip2
+UDMA66 (ultra66.o for promise)
-(pix)options in mkfs, progress bar when formatting
+bug if ide-scsi, no more hdX, but scd0 (aka sr0)
aha152x needs "insmod aha152x.o aha152x=0x140,11,7"
try detect_devices::floppies (and how are scsi floppies handled?)
maybe: do a iotcl FDGETPRM to detect fd1, fd0.
-grub, chos, gag
+(fpons)handle dat drives
-(?)when clicking on X configuration, installation of packages is not displayed
+hibernation on laptop -> clock not restored
-(?)maybe remove commented lines in /usr/lib/perl5/... files
+XFree: handle by card options
+eg: SIS6326 needs "no_bitblt" "no_bltimage" and 24bpp instead of 32bpp
-(?)timezone using a picture (pb: how to delimit zones)
-when asking GMT or not, display the time for each possibility
-the list is too big for USA
+# in 2.3.15 "Silicon Integrated Systems [SiS]|SiS900 10/100 Ethernet" is handled
-(fpons)handle dat drives
-sound config
+-(?)---------------------------------------------------------------------------------
+(?)initrd in bzip2
-(?)ability to select the type of install when booting of cdrom
-(?)use the ability of el torito to handle 2.88MB or more
+(?)smaller zsh (or ash in initrd)
-add fdisk using the zvt widget (taken in gnome-libs)
+(?)is configureNetworkNet needed with dhcp/bootp?
-using setxkb, enable the testing of the keyboard
+(?)bug in upgrade: install from hda1:/usr/local/blah with hda1:/
-enable the testing of the mouse type (under X) (wheel)
+(?)mandrake_desk was not installed while kdebase it there on upgrade
-in chooseResolutions: display the graphic card found
+(?)when clicking on X configuration, installation of packages is not displayed
+
+(?)maybe remove commented lines in /usr/lib/perl5/... files
+
+(?)timezone using a picture (pb: how to delimit zones)
+when asking GMT or not, display the time for each possibility
+the list is too big for USA
-diskdrake should warn if nb_ide_parts > 63, nb_scsi_parts > 15
+(?)ability to select the type of install when booting of cdrom
+(?)use the ability of el torito to handle 2.88MB or more
(obsolete)lilo-deinstallation in case of lilo auto-installation for beginners
@@ -206,21 +192,16 @@ diskdrake should warn if nb_ide_parts > 63, nb_scsi_parts > 15
(obsolete)trash on the screen when X first starts
-(?)get the error when reading .rpm files fail
-
(?)remove the gray line surrounding the logo
(?)cleanup /etc/services & /etc/protocols
-# in 2.3.15 "Silicon Integrated Systems [SiS]|SiS900 10/100 Ethernet" is handled
-
(?)strange: no scsi of type 'fd', only 'tape'
-XFree: handle by card options
-eg: SIS6326 needs "no_bitblt" "no_bltimage" and 24bpp instead of 32bpp
+(?)remount ro before X test.
-compress hdlist?
+-done---------------------------------------------------------------------------------
(done,fpons)rewrite mouseconfig in perl?
(done,pix)kudzu or not in miscellaneous
@@ -364,3 +345,40 @@ contient la variable � default � positionn�e sur autre chose que
(done,pix)kde's icons: 28 horiz and 25 vert grid for big icons
+(done,pix)bug: DrakConf don't follow the charset -> add setlocale(LC_ALL, "")
+(done,pix)for ko|ja|zh, gnome-terminal should point to rxvt (-CLE)
+(done,pix)group cdrom in /etc/group (gid=22)
+(done,pix)drakxtools should require urpmi
+(done,pix)bug: gdm unset LANG
+(done,pix) zip with automount -> ppa not autoloaded
+(done,pix)when you set the kde icons to Large, maybe it'd be good to chown the .kderc
+(done,pix)lilo in russian/japaneese is horrible
+(ok,pix)test ide burners
+(ok)test check bad blocks optional for mke2fs
+(done,pix)hd install: no umount is done at the end of install :(
+
+just before release:
+(done,pix)- mandrake_doc-xx, the symlink is no good in /usr/doc/mandrake as
+(done,pix)- crypto dependencies to update
+(done,pix)- update kudzu's pcitable
+(done,pix)- update pcitable for 86C368 if 3.3.6 (and other S3 3D's)
+ ("ATI|3D Rage P/M Mobility AGP 2x" -> changed to Server:Mach64)
+
+(done,pix)with 2MB of video ram, chooses 8bpp instead of 16bpp
+
+(done,pix) replace
+ { device => "loop7", type => 0x83, size => ((cat_('/dos/lnx4win/size.txt'))[0]*2048), mntpoint => "/", isFormatted => 1, isMounted => 1 },
+by
+ { device => "loop7", type => 0x83, size => cat_('/dos/lnx4win/size.txt') * 2048, mntpoint => "/", isFormatted => 1, isMounted => 1 },
+
+(done,fpons)in ftp install, bug with X server install with wu-ftpd 2.6 (see http://www.wu-ftpd.org/broken-clients.html)
+
+(done,pix)ask package installation languages (must be put in RPM_INSTALL_LANG)
+
+(done,pix)bug (by dadou): Si la partition racine est trop petite pour installer le syst�me, un
+message d'erreur appara�t pour signaler le probl�me (bien) mais on ne
+peut en sortir. La seule solution est de red�marrer.
+
+(obsolete)bug when selecting compssUsers, do not deselect after (if u deselect)
+
+(done,pix)detect ide burners and then add hdX=ide-scsi to kernel cmdline
diff --git a/perl-install/Newt/Av_CharPtrPtr.c b/perl-install/Newt/Av_CharPtrPtr.c
index d108ef5d0..f28fa6315 100644
--- a/perl-install/Newt/Av_CharPtrPtr.c
+++ b/perl-install/Newt/Av_CharPtrPtr.c
@@ -52,7 +52,7 @@ SV *rv;
if( s[x] == NULL )
warn("XS_unpack_charPtrPtr: unable to malloc char*");
else
- strcpy( s[x], SvPV( *ssv, na ) );
+ strcpy( s[x], SvPV( *ssv, PL_na ) );
}
else
warn("XS_unpack_charPtrPtr: array elem %d was not a string.", x );
diff --git a/perl-install/Xconfigurator.pm b/perl-install/Xconfigurator.pm
index c8d94f082..fd73f0a3f 100644
--- a/perl-install/Xconfigurator.pm
+++ b/perl-install/Xconfigurator.pm
@@ -327,20 +327,20 @@ sub testFinalConfig($;$$) {
my $b = before_leaving { unlink $f_err };
- local $_;
- local *F; open F, $f_err;
- i: while (<F>) {
- if (/\b(error|not supported)\b/i) {
- my @msg = !/error/ && $_ ;
- while (<F>) {
- /not fatal/ and last i;
- /^$/ and last;
- push @msg, $_;
+ unless (c::Xtest(":9")) {
+ local $_;
+ local *F; open F, $f_err;
+ i: while (<F>) {
+ if (/\b(error|not supported)\b/i) {
+ my @msg = !/error/ && $_ ;
+ while (<F>) {
+ /not fatal/ and last i;
+ /^$/ and last;
+ push @msg, $_;
+ }
+ $in->ask_warn('', [ _("An error occurred:"), " ", @msg, _("\ntry changing some parameters") ]);
+ return 0;
}
- $in->ask_warn('', [ _("An error occurred:"), " ",
- @msg,
- _("\ntry changing some parameters") ]);
- return 0;
}
}
diff --git a/perl-install/do_resize_fat b/perl-install/do_resize_fat
index 239446841..41ebf1b83 100755
--- a/perl-install/do_resize_fat
+++ b/perl-install/do_resize_fat
@@ -3,13 +3,13 @@
use diagnostics;
use strict;
-use lib qw(.);
+use lib qw(/usr/lib/libDrakX);
use common;
use resize_fat::main;
local *log::l = sub { print join(' ', @_), "\n" };
-@ARGV = qw(/tmp/dd +0);
+@ARGV = qw(/mnt/iso/w +0);
@ARGV == 2 or die "usage: fatresize <device> <size>\n <size> = 100 means `resize to 100Mb'\n <size> = +10 means `keep 10Mb of free space'\n";
diff --git a/perl-install/install2.pm b/perl-install/install2.pm
index 2bcd3ba97..9ad6af9b6 100644
--- a/perl-install/install2.pm
+++ b/perl-install/install2.pm
@@ -252,6 +252,7 @@ sub selectKeyboard {
#- if we go back to the selectKeyboard, you must rewrite
addToBeDone {
+ lang::write($o->{prefix});
keyboard::write($o->{prefix}, $o->{keyboard});
} 'doInstallStep' unless $::g_auto_install;
}
@@ -287,7 +288,7 @@ sub setupSCSI {
sub partitionDisks {
return
$o->{fstab} = [
- { device => "loop7", type => 0x83, size => ((cat_('/dos/lnx4win/size.txt'))[0]*2048), mntpoint => "/", isFormatted => 1, isMounted => 1 },
+ { device => "loop7", type => 0x83, size => 2048 * cat_('/dos/lnx4win/size.txt'), mntpoint => "/", isFormatted => 1, isMounted => 1 },
{ device => "/initrd/dos/lnx4win/swapfile", type => 0x82, mntpoint => "swap", isFormatted => 1, isMounted => 1 },
] if $o->{lnx4win};
return if $o->{isUpgrade};
@@ -361,7 +362,6 @@ sub choosePackages {
if ($_[1] == 1) {
$o->{compssUsersChoice}{$_} = 1 foreach @{$o->{compssUsersSorted}}, 'Miscellaneous';
$o->{compssUsersChoice}{KDE} = 0 if $o->{lang} =~ /ja|el|ko|th|vi|zh/; #- gnome handles much this fonts much better
-
}
$o->choosePackages($o->{packages}, $o->{compss},
$o->{compssUsers}, $o->{compssUsersSorted}, $_[1] == 1);
@@ -617,8 +617,7 @@ sub main {
modules::read_stage1_conf("/tmp/conf.modules");
modules::read_already_loaded();
- eval { modules::load("ide-disk") };
- eval { modules::load("sd_mod") };
+ eval { modules::load($_) } foreach qw(ide-probe ide-disk sd_mod af_packet);
install_any::lnx4win_preinstall() if $o->{lnx4win};
#-the main cycle
diff --git a/perl-install/install_any.pm b/perl-install/install_any.pm
index e690c7e32..1d4c324a2 100644
--- a/perl-install/install_any.pm
+++ b/perl-install/install_any.pm
@@ -445,7 +445,7 @@ sub g_auto_install(;$) {
}
}
-#- local $o->{partitioning}{clearall} = 1;
+ local $o->{partitioning}{auto_allocate} = 1;
$_ = { %{$_ || {}} }, delete @$_{qw(oldu oldg password password2)} foreach $o->{superuser}, @{$o->{users} || []};
@@ -479,8 +479,8 @@ sub loadO {
local $/ = "\0";
no strict;
eval <F>;
+ $@ and log::l("Bad kickstart file $f (failed $@)");
}
- $@ and log::l _("Bad kickstart file %s (failed %s)", $f, $@);
add2hash_($o ||= {}, $O);
}
bless $o, ref $O;
diff --git a/perl-install/install_steps.pm b/perl-install/install_steps.pm
index 84c4918c5..777b24205 100644
--- a/perl-install/install_steps.pm
+++ b/perl-install/install_steps.pm
@@ -84,7 +84,7 @@ sub set_help { 1 }
#------------------------------------------------------------------------------
sub selectLanguage {
my ($o) = @_;
- lang::set($o->{lang});
+ lang::set($o->{lang}, $o->{langs});
if ($o->{keyboard_unsafe} || !$o->{keyboard}) {
$o->{keyboard_unsafe} = 1;
@@ -261,6 +261,10 @@ sub afterInstallPackages($) {
#- remove the nasty acon...
run_program::rooted($o->{prefix}, "chkconfig", "--del", "acon") unless $ENV{LANGUAGE} =~ /ar/;
+ #- make the mdk fonts last in available fonts for buggy kde
+ run_program::rooted($o->{prefix}, "chkfontpath", "--remove", "/usr/X11R6/lib/X11/fonts/mdk");
+ run_program::rooted($o->{prefix}, "chkfontpath", "--add", "/usr/X11R6/lib/X11/fonts/mdk");
+
#- create /etc/sysconfig/desktop file according to user choice and presence of /usr/bin/kdm or /usr/bin/gdm.
my $f = "$o->{prefix}/etc/sysconfig/desktop";
if ($o->{compssUsersChoice}{KDE} && -x "$o->{prefix}/usr/bin/kdm") {
diff --git a/perl-install/install_steps_gtk.pm b/perl-install/install_steps_gtk.pm
index d3b3954b4..0b8303954 100644
--- a/perl-install/install_steps_gtk.pm
+++ b/perl-install/install_steps_gtk.pm
@@ -718,7 +718,7 @@ sub create_steps_window {
gtkadd($w->{window},
gtkpack_(new Gtk::VBox(0,0),
- (map { 1, $_ } map {
+ (map {; 1, $_ } map {
my $step = $o->{steps}{$_};
my $circle =
$step->{done} && \@green_circle ||
@@ -807,7 +807,7 @@ END
open F, ">$file" or die "can't create X configuration file $file";
print F <<END;
Section "Files"
- FontPath "/usr/X11R6/lib/X11/fonts:unscaled,/usr/X11R6/lib/X11/fonts"
+ FontPath "/usr/X11R6/lib/X11/fonts:unscaled"
EndSection
Section "Keyboard"
diff --git a/perl-install/install_steps_interactive.pm b/perl-install/install_steps_interactive.pm
index c30e5d74b..ddafab251 100644
--- a/perl-install/install_steps_interactive.pm
+++ b/perl-install/install_steps_interactive.pm
@@ -71,6 +71,14 @@ sub selectKeyboard($) {
keyboard::keyboard2text($o->{keyboard})));
delete $o->{keyboard_unsafe};
install_steps::selectKeyboard($o);
+
+
+ if ($::expert) {
+ my $langs = $o->ask_many_from_list('',
+ _("You can choose other languages that will be available after install"),
+ [ lang::list() ]) or goto &selectLanguage if $::expert;
+ lang::set_langs($o->{langs} = grep_index { $langs->[$::i] } lang::list());
+ }
}
#------------------------------------------------------------------------------
sub selectPath($) {
diff --git a/perl-install/lang.pm b/perl-install/lang.pm
index e100e6a44..6ceabf918 100644
--- a/perl-install/lang.pm
+++ b/perl-install/lang.pm
@@ -200,7 +200,7 @@ sub text2lang {
}
sub set {
- my ($lang, $prefix) = @_;
+ my ($lang, $langs) = @_;
if ($lang) {
$ENV{LC_ALL} = $lang;
@@ -208,7 +208,7 @@ sub set {
$ENV{LANGUAGE} = $languages{$lang}[3];
#- apparently autoconf/automake doesn't like LINGUAS having a list of values
#- $ENV{LINGUAS} = $languages{$lang}[3];
- $ENV{RPM_INSTALL_LANG} = $languages{$lang}[3];
+ set_langs($langs || [$lang]);
local $_ = $languages{$lang}[1];
s/iso-8859-1$/iso-8859-15/;
@@ -226,6 +226,14 @@ sub set {
}
}
+sub set_langs {
+ my ($l) = @_;
+ $ENV{RPM_INSTALL_LANG} = member('all', @$l) ? 'all' :
+ join ':', uniq(map { substr($languages{$_}[2], 0, 2) } @$l);
+
+# $ENV{RPM_INSTALL_LANG} = join ':', uniq(map { split ':', $languages{$_}[3] } @{$_[0]});
+}
+
sub write {
my ($prefix) = @_;
my $lang = $ENV{LC_ALL};
diff --git a/perl-install/modules.pm b/perl-install/modules.pm
index 5dd266d99..4afacb5d3 100644
--- a/perl-install/modules.pm
+++ b/perl-install/modules.pm
@@ -88,6 +88,7 @@ arch() =~ /^sparc/ ? (
"8390" => "8390",
"dummy" => "dummy",
+ "af_packet" => "packet socket",
"nfs" => "Network File System (nfs)",
"lockd" => "lockd",
"sunrpc" => "sunrpc",
@@ -132,6 +133,8 @@ arch() =~ /^sparc/ ? (
"qlogicisp" => "Qlogic ISP",
"sym53c8xx" => "Symbios 53c8xx",
"scsi_mod" => "scsi_mod",
+ "ide-mod" => "ide-mod",
+ "ide-probe" => "ide-probe",
}],
[ 'disk', {
arch() =~ /^sparc/ ? (
diff --git a/perl-install/my_gtk.pm b/perl-install/my_gtk.pm
index 4ad473202..fe940e3d7 100644
--- a/perl-install/my_gtk.pm
+++ b/perl-install/my_gtk.pm
@@ -92,11 +92,11 @@ sub gtksignal_connect($@) {
}
sub gtkpack($@) {
my $box = shift;
- gtkpack_($box, map { 1, $_} @_);
+ gtkpack_($box, map {; 1, $_ } @_);
}
sub gtkpack__($@) {
my $box = shift;
- gtkpack_($box, map { 0, $_} @_);
+ gtkpack_($box, map {; 0, $_ } @_);
}
sub gtkpack_($@) {
my $box = shift;
diff --git a/perl-install/pkgs.pm b/perl-install/pkgs.pm
index 4d8c591f4..02b571c25 100644
--- a/perl-install/pkgs.pm
+++ b/perl-install/pkgs.pm
@@ -25,18 +25,18 @@ autoirpm autoirpm-icons numlock
my %by_lang = (
ar => [ 'acon' ],
- cs => [ 'XFree86-ISO8859-2' ],
- hr => [ 'XFree86-ISO8859-2' ],
- hu => [ 'XFree86-ISO8859-2' ],
+ cs => [ 'XFree86-ISO8859-2', 'XFree86-ISO8859-2-75dpi-fonts' ],
+ hr => [ 'XFree86-ISO8859-2', 'XFree86-ISO8859-2-75dpi-fonts' ],
+ hu => [ 'XFree86-ISO8859-2', 'XFree86-ISO8859-2-75dpi-fonts' ],
ja => [ 'rxvt-CLE', 'fonts-ttf-japanese', 'kterm' ],
ko => [ 'rxvt-CLE', 'fonts-ttf-korean' ],
- pl => [ 'XFree86-ISO8859-2' ],
- ro => [ 'XFree86-ISO8859-2' ],
+ pl => [ 'XFree86-ISO8859-2', 'XFree86-ISO8859-2-75dpi-fonts' ],
+ ro => [ 'XFree86-ISO8859-2', 'XFree86-ISO8859-2-75dpi-fonts' ],
ru => [ 'XFree86-cyrillic-fonts' ],
- sk => [ 'XFree86-ISO8859-2' ],
- sl => [ 'XFree86-ISO8859-2' ],
- sr => [ 'XFree86-ISO8859-2' ],
- tr => [ 'XFree86-ISO8859-9' ],
+ sk => [ 'XFree86-ISO8859-2', 'XFree86-ISO8859-2-75dpi-fonts' ],
+ sl => [ 'XFree86-ISO8859-2', 'XFree86-ISO8859-2-75dpi-fonts' ],
+ sr => [ 'XFree86-ISO8859-2', 'XFree86-ISO8859-2-75dpi-fonts' ],
+ 'tr' => [ 'XFree86-ISO8859-9', 'XFree86-ISO8859-9-75dpi-fonts' ],
zh_CN => [ 'rxvt-CLE', 'fonts-ttf-gb2312' ],
'zh_TW.Big5' => [ 'rxvt-CLE', 'fonts-ttf-big5' ],
);
@@ -262,9 +262,9 @@ sub readCompssList($$$) {
}
my %done;
- my $locales = "locales-" . substr($ENV{LANG}, 0, 2);
- if (my $p = $packages->{$locales}) {
- foreach ($locales, @{$p->{provides} || []}, @{$by_lang{$ENV{LANG}} || []}) {
+ foreach (split ':', $ENV{RPM_INSTALL_LANG}) {
+ my $p = $packages->{"locales-$_"} || {};
+ foreach ("locales-$_", @{$p->{provides} || []}, @{$by_lang{$_} || []}) {
next if $done{$_}; $done{$_} = 1;
my $p = $packages->{$_} or next;
$p->{values} = [ map { $_ + 90 } @{$p->{values} || [ (0) x $nb_values ]} ];
diff --git a/perl-install/resize_fat/io.pm b/perl-install/resize_fat/io.pm
index cbe0033ca..2c106b87c 100644
--- a/perl-install/resize_fat/io.pm
+++ b/perl-install/resize_fat/io.pm
@@ -4,6 +4,7 @@ use diagnostics;
use strict;
use resize_fat::fat;
+use c;
1;
@@ -24,23 +25,18 @@ sub write($$$$) {
sub read_cluster($$) {
my ($fs, $cluster) = @_;
my $buf;
+ my $pos = $fs->{cluster_offset} / 512 + $cluster * ($fs->{cluster_size} / 512);
- eval {
- $buf = &read($fs,
- $fs->{cluster_offset} + $cluster * $fs->{cluster_size},
- $fs->{cluster_size});
- }; @$ and die "reading cluster #$cluster failed on device $fs->{fs_name}";
+ c::lseek_sector(fileno $fs->{fd}, $pos, 0) or die "seeking to sector #$pos failed on device $fs->{fs_name}";
+ sysread $fs->{fd}, $buf, $fs->{cluster_size} or die "reading at sector #$pos failed on device $fs->{fs_name}";
$buf;
}
sub write_cluster($$$) {
my ($fs, $cluster, $buf) = @_;
+ my $pos = $fs->{cluster_offset} / 512 + $cluster * ($fs->{cluster_size} / 512);
- eval {
- &write($fs,
- $fs->{cluster_offset} + $cluster * $fs->{cluster_size},
- $fs->{cluster_size},
- $buf);
- }; @$ and die "writing cluster #$cluster failed on device $fs->{fs_name}";
+ c::lseek_sector(fileno $fs->{fd}, $pos, 0) or die "seeking to sector #$pos failed on device $fs->{fs_name}";
+ syswrite $fs->{fd}, $buf or die "writing at sector #$pos failed on device $fs->{fs_name}";
}
sub read_file($$) {
diff --git a/perl-install/share/compssList b/perl-install/share/compssList
index 1263203b1..c4f9f5299 100644
--- a/perl-install/share/compssList
+++ b/perl-install/share/compssList
@@ -34,8 +34,8 @@ SysVinit 15 52 45
TiMidity++ 51 0 54
WMRack 40 0 32
WindowMaker 59 0 57
-Wnn 0 0 0
-Wnn-devel 0 0 0
+Wnn -20 -20 -20
+Wnn-devel -70 -60 -40
X11R6-contrib 55 0 47
XFree86-100dpi-fonts 56 0 30
XFree86 88 0 81
@@ -46,9 +46,9 @@ XFree86-8514 -30 -30 -30
XFree86-AGX -30 -30 -30
XFree86-FBDev -30 -30 -30
XFree86-I128 -30 -30 -30
-XFree86-ISO8859-9-100dpi-fonts -10 -20 -10
-XFree86-ISO8859-9 -10 -20 -10
-XFree86-ISO8859-9-75dpi-fonts -10 -20 -10
+XFree86-ISO8859-9-100dpi-fonts -20 -30 -20
+XFree86-ISO8859-9 -20 -30 -20
+XFree86-ISO8859-9-75dpi-fonts -20 -30 -20
XFree86-Mach32 -30 -30 -30
XFree86-Mach64 -30 -30 -30
XFree86-Mach8 -30 -30 -30
@@ -63,7 +63,7 @@ XFree86-W32 -30 -30 -30
XFree86-XF86Setup 71 0 58
XFree86-Xnest 0 0 55
XFree86-Xvfb 25 0 31
-XFree86-cyrillic-fonts 25 0 29
+XFree86-cyrillic-fonts -20 -30 -20
XFree86-devel 12 0 55
XFree86-libs 10 0 0
XFree86-xfs 0 0 0
@@ -73,11 +73,11 @@ Xconfigurator 0 0 0
aalib 25 0 15
aalib-devel 0 0 25
abisuite 69 0 45
-acon 0 0 0
+acon -10 -10 -10
adjtimex 22 35 87
aktion 76 0 15
am-utils 0 25 19
-ami -10 -10 -10
+ami -20 -20 -20
ami-gnome -20 -20 -20
anacron 85 70 85
anonftp 0 86 13
diff --git a/perl-install/share/list b/perl-install/share/list
index cd22b741a..fe0578b7e 100644
--- a/perl-install/share/list
+++ b/perl-install/share/list
@@ -46,6 +46,7 @@
/usr/lib/perl5/5.00503/Carp.pm
/usr/lib/perl5/5.00503/Data/Dumper.pm
/usr/lib/perl5/5.00503/Exporter.pm
+/usr/lib/perl5/5.00503/Exporter/Heavy.pm
/usr/lib/perl5/5.00503/FileHandle.pm
/usr/lib/perl5/5.00503/SelectSaver.pm
/usr/lib/perl5/5.00503/SelfLoader.pm
@@ -55,6 +56,7 @@
/usr/lib/perl5/5.00503/ARCH-linux/Config.pm
/usr/lib/perl5/5.00503/ARCH-linux/DynaLoader.pm
/usr/lib/perl5/5.00503/ARCH-linux/Fcntl.pm
+/usr/lib/perl5/5.00503/ARCH-linux/XSLoader.pm
/usr/lib/perl5/5.00503/ARCH-linux/auto/Fcntl/Fcntl.bs
/usr/lib/perl5/5.00503/ARCH-linux/auto/Fcntl/Fcntl.so
/usr/lib/perl5/5.00503/ARCH-linux/IO/File.pm