aboutsummaryrefslogtreecommitdiffstats
path: root/el/selectLanguage.html
blob: 5114e78123228192ce47590209bd09fa1331d067 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
<html>
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
   
      <title>&#928;&#945;&#961;&#945;&#954;&#945;&#955;&#974; &#949;&#960;&#953;&#955;&#941;&#958;&#964;&#949; &#964;&#951; &#947;&#955;&#974;&#963;&#963;&#945; &#960;&#959;&#965; &#952;&#945; &#967;&#961;&#951;&#963;&#953;&#956;&#959;&#960;&#959;&#953;&#951;&#952;&#949;&#943;</title>
      <meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
      <link rel="home" href="index.html" title="&#917;&#947;&#954;&#945;&#964;&#940;&#963;&#964;&#945;&#963;&#951; &#956;&#949; &#964;&#959; DrakX">
      <link rel="up" href="index.html" title="&#917;&#947;&#954;&#945;&#964;&#940;&#963;&#964;&#945;&#963;&#951; &#956;&#949; &#964;&#959; DrakX">
      <link rel="prev" href="installer.html" title="DrakX, &#959; &#959;&#948;&#951;&#947;&#972;&#962; &#949;&#947;&#954;&#945;&#964;&#940;&#963;&#964;&#945;&#963;&#951;&#962; &#964;&#951;&#962; Mageia">
      <link rel="next" href="acceptLicense.html" title="&#902;&#948;&#949;&#953;&#945; &#967;&#961;&#942;&#963;&#951;&#962; &#954;&#945;&#953; &#931;&#951;&#956;&#949;&#953;&#974;&#963;&#949;&#953;&#962; &#941;&#954;&#948;&#959;&#963;&#951;&#962;"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
         <!--
      body { font-family: sans-serif; font-size: 13px }
      table { font-family: sans-serif; font-size: 13px }
    --></style></head>
   <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
      <div lang="" class="section" title="&#928;&#945;&#961;&#945;&#954;&#945;&#955;&#974; &#949;&#960;&#953;&#955;&#941;&#958;&#964;&#949; &#964;&#951; &#947;&#955;&#974;&#963;&#963;&#945; &#960;&#959;&#965; &#952;&#945; &#967;&#961;&#951;&#963;&#953;&#956;&#959;&#960;&#959;&#953;&#951;&#952;&#949;&#943;">
         <div class="titlepage">
            <div>
               <div>
                  <h2 class="title"><a name="selectLanguage"></a>&#928;&#945;&#961;&#945;&#954;&#945;&#955;&#974; &#949;&#960;&#953;&#955;&#941;&#958;&#964;&#949; &#964;&#951; &#947;&#955;&#974;&#963;&#963;&#945; &#960;&#959;&#965; &#952;&#945;
                         &#967;&#961;&#951;&#963;&#953;&#956;&#959;&#960;&#959;&#953;&#951;&#952;&#949;&#943;
                  </h2>
               </div>
            </div>
         </div>
         
         
         
         
         
           
         
           
         
           
         
           
         
           
         
           
         
           
         <p>&#917;&#960;&#953;&#955;&#941;&#958;&#964;&#949; &#964;&#951;&#957; &#947;&#955;&#974;&#963;&#963;&#945; &#960;&#959;&#965; &#960;&#961;&#959;&#964;&#953;&#956;&#940;&#964;&#949;, &#945;&#957;&#945;&#960;&#964;&#973;&#963;&#963;&#959;&#957;&#964;&#945;&#962; &#960;&#961;&#974;&#964;&#945; &#964;&#951; &#955;&#943;&#963;&#964;&#945; &#964;&#951;&#962;
              &#951;&#960;&#949;&#943;&#961;&#959;&#965; &#963;&#945;&#962;. &#919; <span class="application">Mageia</span> &#952;&#945; &#967;&#961;&#951;&#963;&#953;&#956;&#959;&#960;&#959;&#953;&#942;&#963;&#949;&#953; &#945;&#965;&#964;&#942; &#964;&#951;&#957;
              &#949;&#960;&#953;&#955;&#959;&#947;&#942; &#947;&#953;&#945; &#964;&#959;&#957; &#959;&#948;&#951;&#947;&#972; &#949;&#947;&#954;&#945;&#964;&#940;&#963;&#964;&#945;&#963;&#951;&#962; &#954;&#945;&#953; &#947;&#953;&#945; &#964;&#959; &#949;&#947;&#954;&#945;&#964;&#949;&#963;&#964;&#951;&#956;&#941;&#957;&#959; &#963;&#973;&#963;&#964;&#951;&#956;&#945;.
         </p>
         
           
         <p>&#913;&#957; &#965;&#960;&#940;&#961;&#967;&#949;&#953; &#960;&#953;&#952;&#945;&#957;&#972;&#964;&#951;&#964;&#945; &#957;&#945; &#967;&#961;&#949;&#953;&#945;&#963;&#964;&#949;&#943;&#964;&#949; &#960;&#949;&#961;&#953;&#963;&#963;&#972;&#964;&#949;&#961;&#949;&#962; &#947;&#955;&#974;&#963;&#963;&#949;&#962;
              &#949;&#947;&#954;&#945;&#964;&#949;&#963;&#964;&#951;&#956;&#941;&#957;&#949;&#962; &#963;&#964;&#959; &#963;&#973;&#963;&#964;&#951;&#956;&#940; &#963;&#945;&#962;, &#947;&#953;&#945; &#949;&#963;&#940;&#962; &#942; &#947;&#953;&#945; &#940;&#955;&#955;&#959;&#965;&#962; &#967;&#961;&#942;&#963;&#964;&#949;&#962;, &#964;&#972;&#964;&#949; &#952;&#945;
              &#960;&#961;&#941;&#960;&#949;&#953; &#957;&#945; &#967;&#961;&#951;&#963;&#953;&#956;&#959;&#960;&#959;&#953;&#942;&#963;&#949;&#964;&#949; &#964;&#951;&#957; &#949;&#960;&#953;&#955;&#959;&#947;&#942; <span class="guibutton">&#928;&#959;&#955;&#955;&#945;&#960;&#955;&#941;&#962;
                 &#947;&#955;&#974;&#963;&#963;&#949;&#962;</span> &#974;&#963;&#964;&#949; &#957;&#945; &#964;&#953;&#962; &#960;&#961;&#959;&#963;&#952;&#941;&#963;&#949;&#964;&#949; &#964;&#974;&#961;&#945;. &#916;&#949;&#957; &#949;&#943;&#957;&#945;&#953; &#948;&#965;&#957;&#945;&#964;&#942; &#951; &#960;&#961;&#959;&#963;&#952;&#942;&#954;&#951;
              &#965;&#960;&#959;&#963;&#964;&#942;&#961;&#953;&#958;&#951;&#962; &#949;&#960;&#953;&#960;&#955;&#941;&#959;&#957; &#947;&#955;&#969;&#963;&#963;&#974;&#957; &#956;&#949; &#945;&#965;&#964;&#972;&#956;&#945;&#964;&#959; &#964;&#961;&#972;&#960;&#959; &#956;&#949;&#964;&#940; &#964;&#951;&#957; &#949;&#947;&#954;&#945;&#964;&#940;&#963;&#964;&#945;&#963;&#951;.
         </p>
         
           
         
           
         <div class="warning" title="Warning" style="margin-left: 0.5in; margin-right: 0.5in;">
            <table border="0" summary="Warning">
               <tr>
                  <td rowspan="2" align="center" valign="top" width="25"><img alt="[Warning]" src="warning.png"></td>
                  <th align="left"></th>
               </tr>
               <tr>
                  <td align="left" valign="top">
                         
                     <p>&#928;&#945;&#961;&#972;&#955;&#959; &#964;&#951;&#957; &#949;&#960;&#953;&#955;&#959;&#947;&#942; &#960;&#949;&#961;&#953;&#963;&#963;&#959;&#964;&#941;&#961;&#969;&#957; &#947;&#955;&#969;&#963;&#963;&#974;&#957;, &#952;&#945; &#960;&#961;&#941;&#960;&#949;&#953; &#957;&#945; &#949;&#960;&#953;&#955;&#941;&#958;&#949;&#964;&#949; &#956;&#953;&#945;
                            &#945;&#960;&#972; &#945;&#965;&#964;&#941;&#962; &#969;&#962; &#964;&#951;&#957; &#960;&#961;&#959;&#964;&#953;&#956;&#974;&#956;&#949;&#957;&#951; &#947;&#955;&#974;&#963;&#963;&#945; &#963;&#964;&#951;&#957; &#960;&#961;&#974;&#964;&#951; &#959;&#952;&#972;&#957;&#951; &#949;&#960;&#953;&#955;&#959;&#947;&#942;&#962; &#947;&#955;&#974;&#963;&#963;&#945;&#962;. &#920;&#945;
                            &#963;&#951;&#956;&#949;&#953;&#969;&#952;&#949;&#943; &#949;&#960;&#943;&#963;&#951;&#962; &#969;&#962; &#949;&#960;&#953;&#955;&#949;&#947;&#956;&#941;&#957;&#951; &#963;&#964;&#951;&#957; &#959;&#952;&#972;&#957;&#951; &#960;&#959;&#955;&#955;&#945;&#960;&#955;&#974;&#957; &#947;&#955;&#969;&#963;&#963;&#974;&#957; .
                     </p>
                       
                  </td>
               </tr>
            </table>
         </div>
         
           
         <div class="itemizedlist">
            <ul class="itemizedlist">
               <li class="listitem">
                        
                  <p>&#913;&#957; &#951; &#947;&#955;&#974;&#963;&#963;&#945; &#964;&#951;&#962; &#948;&#953;&#940;&#964;&#945;&#958;&#951;&#962; &#964;&#959;&#965; &#960;&#955;&#951;&#954;&#964;&#961;&#959;&#955;&#959;&#947;&#943;&#959;&#965; &#963;&#945;&#962; &#948;&#949;&#957; &#949;&#943;&#957;&#945;&#953; &#951; &#943;&#948;&#953;&#945; &#956;&#949;
                           &#964;&#951;&#957; &#960;&#961;&#959;&#964;&#953;&#956;&#974;&#956;&#949;&#957;&#951; &#947;&#955;&#974;&#963;&#963;&#945;, &#964;&#972;&#964;&#949; &#949;&#943;&#957;&#945;&#953; &#959;&#961;&#952;&#972; &#957;&#945; &#949;&#947;&#954;&#945;&#964;&#945;&#963;&#964;&#942;&#963;&#949;&#964;&#949; &#954;&#945;&#953; &#964;&#951; &#947;&#955;&#974;&#963;&#963;&#945;
                           &#964;&#959;&#965; &#960;&#955;&#951;&#954;&#964;&#961;&#959;&#955;&#959;&#947;&#943;&#959;&#965; &#963;&#945;&#962;.
                  </p>
                      
               </li>
               <li class="listitem">
                        
                  <p>&#919; Mageia &#967;&#961;&#951;&#963;&#953;&#956;&#959;&#960;&#959;&#953;&#949;&#943; &#964;&#951;&#957; &#965;&#960;&#959;&#963;&#964;&#942;&#961;&#953;&#958;&#951; UTF-8 (Unicode) &#945;&#960;&#972;
                           &#960;&#961;&#959;&#949;&#960;&#953;&#955;&#959;&#947;&#942;. &#913;&#965;&#964;&#972; &#956;&#960;&#959;&#961;&#949;&#943; &#957;&#945; &#945;&#960;&#949;&#957;&#949;&#961;&#947;&#959;&#960;&#959;&#953;&#951;&#952;&#949;&#943; &#963;&#964;&#951;&#957; &#959;&#952;&#972;&#957;&#951; &laquo;&#928;&#959;&#955;&#955;&#945;&#960;&#955;&#941;&#962;
                           &#947;&#955;&#974;&#963;&#963;&#949;&#962;&raquo; &#945;&#957; &#947;&#957;&#969;&#961;&#943;&#950;&#949;&#964;&#949; &#972;&#964;&#953; &#948;&#949;&#957; &#949;&#943;&#957;&#945;&#953; &#954;&#945;&#964;&#940;&#955;&#955;&#951;&#955;&#959; &#947;&#953;&#945; &#964;&#951; &#947;&#955;&#974;&#963;&#963;&#945; &#963;&#945;&#962;. &#919;
                           &#945;&#960;&#949;&#957;&#949;&#961;&#947;&#959;&#960;&#959;&#943;&#951;&#963;&#951; &#964;&#951;&#962; &#965;&#960;&#959;&#963;&#964;&#942;&#961;&#953;&#958;&#951;&#962; UTF-8 &#952;&#945; &#949;&#966;&#945;&#961;&#956;&#959;&#963;&#964;&#949;&#943; &#963;&#949; &#972;&#955;&#949;&#962; &#964;&#953;&#962;
                           &#947;&#955;&#974;&#963;&#963;&#949;&#962;.
                  </p>
                      
               </li>
               <li class="listitem">
                        
                  <p>&#924;&#960;&#959;&#961;&#949;&#943;&#964;&#949; &#957;&#945; &#945;&#955;&#955;&#940;&#958;&#949;&#964;&#949; &#964;&#951; &#947;&#955;&#974;&#963;&#963;&#945; &#964;&#959;&#965; &#963;&#965;&#963;&#964;&#942;&#956;&#945;&#964;&#972;&#962; &#963;&#945;&#962; &#956;&#949;&#964;&#940; &#964;&#951;&#957;
                           &#949;&#947;&#954;&#945;&#964;&#940;&#963;&#964;&#945;&#963;&#951; &#945;&#960;&#972; &#964;&#959; &#922;&#941;&#957;&#964;&#961;&#959; &#917;&#955;&#941;&#947;&#967;&#959;&#965; Mageia -&gt; &#931;&#973;&#963;&#964;&#951;&#956;&#945; -&gt;
                           &#916;&#953;&#945;&#967;&#949;&#953;&#961;&#953;&#963;&#964;&#949;&#943;&#964;&#949; &#964;&#951;&#957; &#964;&#959;&#960;&#953;&#954;&#972;&#964;&#951;&#964;&#945; &#964;&#959;&#965; &#963;&#965;&#963;&#964;&#942;&#956;&#945;&#964;&#972;&#962; &#963;&#945;&#962;.
                  </p>
                      
               </li>
            </ul>
         </div>
         
      </div>
   </body>
</html>
tdisk => 0, #- no mkbootdisk if 0 or undef, find a floppy with 1, or fd1 #- packages => [ qw() ], partitioning => { clearall => 0, eraseBadPartitions => 0, auto_allocate => 0 }, #-, readonly => 0 }, authentication => { md5 => 1, shadow => 1 }, lang => 'en_US', #- isUpgrade => 0, toRemove => [], toSave => [], #- simple_themes => 1, timezone => { #- timezone => "Europe/Paris", #- UTC => 1, }, #- superuser => { password => 'a', shell => '/bin/bash', realname => 'God' }, #- user => { name => 'foo', password => 'bar', home => '/home/foo', shell => '/bin/bash', realname => 'really, it is foo' }, #- keyboard => 'de', #- display => "192.168.1.19:1", steps => \%steps::installSteps, orderedSteps => \@steps::orderedInstallSteps, #- for the list of fields available for user and superuser, see @etc_pass_fields in install_steps.pm #- intf => { eth0 => { DEVICE => "eth0", IPADDR => '1.2.3.4', NETMASK => '255.255.255.128' } }, #-step : the current one #-prefix #-mouse #-keyboard #-netc #-methods #-packages compss #-printer haveone entry(cf printer.pm) }; sub installStepsCall { my ($o, $auto, $fun, @args) = @_; $fun = "install_steps::$fun" if $auto; $o->$fun(@args); } #-###################################################################################### #- Steps Functions #- each step function are called with two arguments : clicked(because if you are a #- beginner you can force the the step) and the entered number #-###################################################################################### #------------------------------------------------------------------------------ sub selectLanguage { my ($clicked, $ent_number, $auto) = @_; installStepsCall($o, $auto, 'selectLanguage', $ent_number == 1); installStepsCall($o, $auto, 'acceptLicence'); } #------------------------------------------------------------------------------ sub selectMouse { my ($clicked, $ent_number, $auto) = @_; require pkgs; my ($first_time) = $ent_number == 1; installStepsCall($o, $auto, 'selectMouse', !$first_time || $clicked); addToBeDone { mouse::write($o, $o->{mouse}) } 'installPackages' if !$o->{isUpgrade} || $clicked; } #------------------------------------------------------------------------------ sub setupSCSI { my ($clicked, $ent_number, $auto) = @_; if (!$::live && !$::g_auto_install && !$o->{blank} && !$::testing) { -s modules::cz_file() or die _("Can't access kernel modules corresponding to your kernel (file %s is missing), this generally means your boot floppy in not in sync with the Installation medium (please create a newer boot floppy)", modules::cz_file()); } installStepsCall($o, $auto, 'setupSCSI', $clicked); } #------------------------------------------------------------------------------ sub selectKeyboard { my ($clicked, $first_time, $auto) = ($_[0], $_[1] == 1, $_[2]); installStepsCall($o, $auto, 'selectKeyboard', $clicked); #- read keyboard ASAP (so that summary displays ok) addToBeDone { $o->{keyboard}{unsafe} or return; if (my $keyboard = keyboard::read()) { $o->{keyboard} = $keyboard; } } 'formatPartitions' if $o->{isUpgrade}; } #------------------------------------------------------------------------------ sub selectInstallClass { my ($clicked, $ent_number, $auto) = @_; installStepsCall($o, $auto, 'selectInstallClass', $clicked); if ($o->{isUpgrade}) { @{$o->{orderedSteps}} = map { /setupSCSI/ ? ($_, "doPartitionDisks") : $_ } grep { !/doPartitionDisks/ } @{$o->{orderedSteps}}; $o->{keepConfiguration} and @{$o->{orderedSteps}} = grep { !/selectMouse|selectKeyboard|miscellaneous|setRootPassword|addUser|configureNetwork|installUpdates|summary|configureServices|configureX/ } @{$o->{orderedSteps}}; my $s; foreach (@{$o->{orderedSteps}}) { $s->{next} = $_ if $s; $s = $o->{steps}{$_}; } } } #------------------------------------------------------------------------------ sub doPartitionDisks { my ($clicked, $ent_number, $auto) = @_; $o->{steps}{formatPartitions}{done} = 0; installStepsCall($o, $auto, 'doPartitionDisksBefore'); installStepsCall($o, $auto, 'doPartitionDisks'); installStepsCall($o, $auto, 'doPartitionDisksAfter'); } sub formatPartitions { my ($clicked, $ent_number, $auto) = @_; $o->{steps}{choosePackages}{done} = 0; installStepsCall($o, $auto, 'choosePartitionsToFormat', $o->{fstab}) if !$o->{isUpgrade}; my $want_root_formated = fsedit::get_root($o->{fstab})->{toFormat}; if ($want_root_formated) { foreach ('/usr') { my $part = fsedit::mntpoint2part($_, $o->{fstab}) or next; $part->{toFormat} or die _("You must also format %s", $_); } } installStepsCall($o, $auto, 'formatMountPartitions', $o->{fstab}) if !$::testing; if ($want_root_formated) { #- we formatted /, ensure /var/lib/rpm is cleaned otherwise bad things can happen #- (especially when /var is *not* formatted) eval { rm_rf("$o->{prefix}/var/lib/rpm") }; } mkdir "$o->{prefix}/$_", 0755 foreach qw(dev etc etc/profile.d etc/rpm etc/sysconfig etc/sysconfig/console etc/sysconfig/network-scripts etc/sysconfig/console/consolefonts etc/sysconfig/console/consoletrans home mnt tmp var var/tmp var/lib var/lib/rpm var/lib/urpmi); mkdir "$o->{prefix}/$_", 0700 foreach qw(root root/tmp root/drakx); devices::make("$o->{prefix}/dev/null"); chmod 0666, "$o->{prefix}/dev/null"; common::screenshot_dir__and_move(); any::rotate_logs($o->{prefix}); require raid; raid::prepare_prefixed($o->{all_hds}{raids}, $o->{prefix}); } #------------------------------------------------------------------------------ sub choosePackages { my ($clicked, $ent_number, $auto) = @_; require pkgs; #- always setPackages as it may have to copy hdlist files and synthesis files. installStepsCall($o, $auto, 'setPackages', $o->{isUpgrade} && $ent_number == 1); installStepsCall($o, $auto, 'choosePackages', $o->{packages}, $o->{compssUsers}, $ent_number == 1); log::l("compssUsersChoice's: ", join(" ", grep { $o->{compssUsersChoice}{$_} } keys %{$o->{compssUsersChoice}})); #- check pre-condition where base backage has to be selected. pkgs::packageByName($o->{packages}, 'basesystem')->flag_available or die "basesystem package not selected"; #- check if there are package that need installation. $o->{steps}{installPackages}{done} = 0 if $o->{steps}{installPackages}{done} && pkgs::packagesToInstall($o->{packages}) > 0; } #------------------------------------------------------------------------------ sub installPackages { my ($clicked, $ent_number, $auto) = @_; installStepsCall($o, $auto, 'readBootloaderConfigBeforeInstall') if $ent_number == 1; installStepsCall($o, $auto, 'beforeInstallPackages'); installStepsCall($o, $auto, 'installPackages'); installStepsCall($o, $auto, 'afterInstallPackages'); } #------------------------------------------------------------------------------ sub miscellaneous { my ($clicked, $ent_number, $auto) = @_; installStepsCall($o, $auto, 'miscellaneousBefore', $clicked); installStepsCall($o, $auto, 'miscellaneous', $clicked); installStepsCall($o, $auto, 'miscellaneousAfter', $clicked); } #------------------------------------------------------------------------------ sub summary { my ($clicked, $ent_number, $auto) = @_; installStepsCall($o, $auto, 'summary', $ent_number == 1); } #------------------------------------------------------------------------------ sub configureNetwork { my ($clicked, $ent_number, $auto) = @_; #- get current configuration of network device. require network; eval { network::read_all_conf($o->{prefix}, $o->{netc} ||= {}, $o->{intf} ||= {}) }; installStepsCall($o, $auto, 'configureNetwork', $ent_number == 1, $clicked); } #------------------------------------------------------------------------------ sub installCrypto { my ($clicked, $ent_number, $auto) = @_; installStepsCall($o, $auto, 'installCrypto'); } #------------------------------------------------------------------------------ sub installUpdates { my ($clicked, $ent_number, $auto) = @_; installStepsCall($o, $auto, 'installUpdates'); } #------------------------------------------------------------------------------ sub configureServices { my ($clicked, $ent_number, $auto) = @_; installStepsCall($o, $auto, 'configureServices', $clicked); } #------------------------------------------------------------------------------ sub setRootPassword { my ($clicked, $ent_number, $auto) = @_; return if $o->{isUpgrade}; installStepsCall($o, $auto, 'setRootPassword', $clicked); addToBeDone { install_any::setAuthentication($o) } 'installPackages'; } #------------------------------------------------------------------------------ sub addUser { my ($clicked, $ent_number, $auto) = @_; return if $o->{isUpgrade} && !$clicked; installStepsCall($o, $auto, 'addUser', $clicked); } #------------------------------------------------------------------------------ sub createBootdisk { my ($clicked, $ent_number, $auto) = @_; modules::write_conf($o->{prefix}); installStepsCall($o, $auto, 'createBootdisk', $ent_number == 1, $clicked); } #------------------------------------------------------------------------------ sub setupBootloader { my ($clicked, $ent_number, $auto) = @_; return if $::g_auto_install; modules::write_conf($o->{prefix}); installStepsCall($o, $auto, 'setupBootloaderBefore') if $ent_number == 1; installStepsCall($o, $auto, 'setupBootloader', $ent_number-1 + $clicked*2); #- gore :-( local $ENV{DRAKX_PASSWORD} = $o->{bootloader}{password}; local $ENV{DURING_INSTALL} = 1; run_program::rooted($o->{prefix}, "/usr/sbin/msec", "-o", "run_commands=0", "-o", "log=stderr", $o->{security}); any::config_libsafe($o->{prefix}, $o->{libsafe}); } #------------------------------------------------------------------------------ sub configureX { my ($clicked, $ent_number, $auto) = @_; #- done here and also at the end of install2.pm, just in case... install_any::write_fstab($o); modules::write_conf($o->{prefix}); require pkgs; installStepsCall($o, $auto, 'configureX', $clicked) if pkgs::packageByName($o->{packages}, 'XFree86')->flag_installed && !$o->{X}{disabled} || $clicked || $::testing; } #------------------------------------------------------------------------------ sub exitInstall { my ($clicked, $ent_number, $auto) = @_; installStepsCall($o, $auto, 'exitInstall', getNextStep() eq 'exitInstall'); } sub start_i810fb { my ($vga) = cat_('/proc/cmdline') =~ /vga=(\S+)/; return if !$vga || listlength(cat_('/proc/fb')); my %vga_to_xres = (0x311 => '640', 0x314 => '800', 0x317 => '1024'); my $xres = $vga_to_xres{$vga} || '800'; log::l("trying to load i810fb module with xres <$xres> (vga was <$vga>)"); eval { any::ddcxinfos(); # keep the result otherwise ddcxinfos doesn't return good results afterwards modules::load([ 'i810fb', "xres=$xres", 'hsync1=32', 'hsync2=48', 'vsync1=50', 'vsync2=70', #- this sucking i810fb does not accept floating point numbers in hsync! 'vram=2', 'bpp=16', 'accel=1', 'mtrr=1', 'hwcur=1', 'xcon=4' ]); }; } #-###################################################################################### #- MAIN #-###################################################################################### sub main { $SIG{__DIE__} = sub { chomp(my $err = $_[0]); log::l("warning: $err") }; $SIG{SEGV} = sub { my $msg = "segmentation fault: seems like memory is missing as the install crashes"; print "$msg\n"; log::l($msg); $o->ask_warn('', $msg); setVirtual(1); require install_steps_auto_install; install_steps_auto_install_non_interactive::errorInStep (); }; $ENV{PERL_BADLANG} = 1; umask 022; $::isInstall = 1; $::no_ugtk_init = 1; $::expert = $::g_auto_install = 0; #- c::unlimit_core() unless $::testing; my ($cfg, $patch, @auto); 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 = ${{ oem => sub { $::oem = $v }, lang => sub { $o->{lang} = $v }, flang => sub { $o->{lang} = $v ; push @auto, 'selectLanguage' }, method => sub { $o->{method} = $v }, pcmcia => sub { $o->{pcmcia} = $v }, vga16 => sub { $o->{vga16} = $v }, vga => sub { $o->{vga} = $v }, step => sub { $o->{steps}{first} = $v }, expert => sub { $::expert = $v }, fbeginner => sub { $::expert = 0; push @auto, 'selectInstallClass' }, fexpert => sub { $::expert = 1; push @auto, 'selectInstallClass' }, meta_class => sub { $o->{meta_class} = $v },