diff options
-rw-r--r-- | docs/diskdrake.TODO | 1 | ||||
-rw-r--r-- | perl-install/Xconfigurator.pm | 20 | ||||
-rw-r--r-- | perl-install/Xconfigurator_consts.pm | 18 | ||||
-rw-r--r-- | perl-install/fsedit.pm | 2 | ||||
-rw-r--r-- | perl-install/help.pm | 332 | ||||
-rw-r--r-- | perl-install/install2.pm | 145 | ||||
-rw-r--r-- | perl-install/share/themes-blackwhite.rc | 3 | ||||
-rw-r--r-- | perl-install/share/themes-blue.rc | 1 | ||||
-rw-r--r-- | perl-install/share/themes-savane.rc | 1 |
9 files changed, 378 insertions, 145 deletions
diff --git a/docs/diskdrake.TODO b/docs/diskdrake.TODO index f7dd1a1a5..0a5fd6db2 100644 --- a/docs/diskdrake.TODO +++ b/docs/diskdrake.TODO @@ -17,6 +17,7 @@ - add comments in the code - add documentation - handle the `luke' case (main extended partition must be extended) +- ability to batch actions (like chained moves) - add a verification after fdiskReadPartitionTable that the start_cyl, end_cyl... do correspond to start and start+size. For the moment, this information is just discarded :( diff --git a/perl-install/Xconfigurator.pm b/perl-install/Xconfigurator.pm index 33a06bed8..41edd3e3d 100644 --- a/perl-install/Xconfigurator.pm +++ b/perl-install/Xconfigurator.pm @@ -2,7 +2,7 @@ package Xconfigurator; use diagnostics; use strict; -use vars qw($in $install $resolution_wanted @depths %depths @resolutions @svgaservers @accelservers @allservers %videomemory @ramdac_name @ramdac_id @clockchip_name @clockchip_id %keymap_translate @vsync_range %standard_monitors $intro_text $finalcomment_text $s3_comment $cirrus_comment $probeonlywarning_text $monitorintro_text $hsyncintro_text $vsyncintro_text $XF86firstchunk_text $keyboardsection_start $keyboardsection_part2 $keyboardsection_end $pointersection_text1 $pointersection_text2 $monitorsection_text1 $monitorsection_text2 $monitorsection_text3 $monitorsection_text4 $modelines_text_Trident_TG_96xx $modelines_text $devicesection_text $screensection_text1); +use vars qw($in $install $resolution_wanted @depths @hsyncranges @vsyncranges %depths @resolutions @svgaservers @accelservers @allservers %videomemory @ramdac_name @ramdac_id @clockchip_name @clockchip_id %keymap_translate %standard_monitors $intro_text $finalcomment_text $s3_comment $cirrus_comment $probeonlywarning_text $monitorintro_text $hsyncintro_text $vsyncintro_text $XF86firstchunk_text $keyboardsection_start $keyboardsection_part2 $keyboardsection_end $pointersection_text1 $pointersection_text2 $monitorsection_text1 $monitorsection_text2 $monitorsection_text3 $monitorsection_text4 $modelines_text_Trident_TG_96xx $modelines_text $devicesection_text $screensection_text1); use pci_probing::main; use common qw(:common :file); @@ -190,8 +190,22 @@ sub monitorConfiguration(;$) { readMonitorsDB(-e "MonitorsDB" ? "MonitorsDB" : "/usr/share/MonitorsDB"); - add2hash($monitor, { type => $in->ask_from_list('', _("Choose a monitor"), [keys %monitors]) }) unless $monitor->{type}; - add2hash($monitor, $monitors{$monitor->{type}}); + add2hash($monitor, { type => $in->ask_from_list('', _("Choose a monitor"), ['Unlisted', keys %monitors]) }) unless $monitor->{type}; + if ($monitor->{type} eq 'Unlisted') { + $in->ask_from_entries_ref('', +_("The two critical parameters are the vertical refresh rate, which is the rate +at which the whole screen is refreshed, and most importantly the horizontal +sync rate, which is the rate at which scanlines are displayed. + +It is VERY IMPORTANT that you do not specify a monitor type with a sync range +that is beyond the capabilities of your monitor. If in doubt, choose a +conservative setting."), + [ _("Horizontal refresh rate"), _("Vertical refresh rate") ], + [ { val => \$monitor->{hsyncrange}, list => \@hsyncranges }, + { val => \$monitor->{vsyncrange}, list => \@vsyncranges }, ]); + } else { + add2hash($monitor, $monitors{$monitor->{type}}); + } add2hash($monitor, { type => "Unknown", vendor => "Unknown", model => "Unknown" }); $monitor; diff --git a/perl-install/Xconfigurator_consts.pm b/perl-install/Xconfigurator_consts.pm index 17ecb02f8..9429342eb 100644 --- a/perl-install/Xconfigurator_consts.pm +++ b/perl-install/Xconfigurator_consts.pm @@ -42,6 +42,24 @@ $resolution_wanted = "1024x768"; __("Monitor that can do 1600x1200 at 76 Hz") => [ '1600x1200@76', "31.5-94.0" , "50-160" ], ); +@vsyncranges = ("50-70", "50-90", "50-100", "40-150"); + +@hsyncranges = ( + "31.5", + "31.5-35.1", + "31.5, 35.5", + "31.5, 35.15, 35.5", + "31.5-37.9", + "31.5-48.5", + "31.5-57.0", + "31.5-64.3", + "31.5-79.0", + "31.5-82.0", + "31.5-88.0", + "31.5-94.0", +); + + #- * Screen/video card configuration. %ramdacs = ( __("No RAMDAC Setting (recommended)") => '', diff --git a/perl-install/fsedit.pm b/perl-install/fsedit.pm index 390ce2d7d..96dc6edac 100644 --- a/perl-install/fsedit.pm +++ b/perl-install/fsedit.pm @@ -311,6 +311,8 @@ sub rescuept($) { $_->{start}--; $_->{size}++; } + local $b->{notFormatted}; + partition_table::add($hd, $_, ($b ? 'Extended' : 'Primary'), 1); } } diff --git a/perl-install/help.pm b/perl-install/help.pm new file mode 100644 index 000000000..1967f35b5 --- /dev/null +++ b/perl-install/help.pm @@ -0,0 +1,332 @@ +package help; + +use common qw(:common); + +%steps = ( +selectLanguage => + __("Choose preferred language for install and system usage."), + +selectKeyboard => + __("Choose on the list of keyboards, the one corresponding to yours"), + +selectPath => + __("Choose \"Installation\" if there are no previous versions of Linux +installed, or if you wish use to multiple distributions or versions. + +Choose \"Update\" if you wish to update a previous version of Mandrake +Linux: 5.1 (Venice), 5.2 (Leeloo), 5.3 (Festen) or 6.0 (Venus)."), + +selectInstallClass => + __("Select: + - Beginner: If you have not installed Linux before, or wish to install +the distribution elected \"Product of the year\" for 1999, click here. + - Developer: If you are familiar with Linux and will be using the +computer primarily for software development, you will find happiness +here. + - Server: If you wish to install a general purpose server, or the +Linux distribution elected \"Distribution/Server\" for 1999, select +this. + - Expert: If you know GNU/Linux and want to perform a highly +customized installation, this Install Class is for you."), + +setupSCSI => + __("The system did not detect a SCSI card. If you have one (or several) +click on \"Yes\" and choose the module(s) to be tested. Otherwise, +select \"No\". + +If you don't know if your computer has SCSI interfaces, consult the +original documentation delivered with the computer, or if you use +Microsoft Windows 95/98, inspect the information available via the \"Control +panel\", \"System's icon, \"Device Manager\" tab."), + +partitionDisks => + __("At this point, hard drive partitions must be defined. (Unless you +are overwriting a previous install of Linux and have already defined +your hard drives partitions as desired.) This operation consists of +logically dividing the computer's hard drive capacity into separate +areas for use. Two common partition are: \"root\" which is the point at +which the filesystem's directory structure starts, and \"boot\", which +contains those files necessary to start the operating system when the +computer is first turned on. Because the effects of this process are +usually irreversible, partitioning can be intimidating and stressful to +the inexperienced. DiskDrake simplifies the process so that it need not +be. Consult the documentation and take your time before proceeding."), + +formatPartitions => + __("Any partitions that have been newly defined must be formatted for +use. At this time, you may wish to re-format some pre-existing +partitions to erase the data they contain. Note: it is not necessary to +re-format pre-existing partitions, particularly if they contain files or +data you wish to keep. Typically retained are: /home and /usr/local."), + +choosePackages => + __("You may now select the packages you wish to install. + +Please note that some packages require the installation of others. These +are referred to as package dependencies. The packages you select, and +the packages they require will automatically be added to the +installation configuration. It is impossible to install a package +without installing all of its dependencies. + +Information on each category and specific package is available in the +area titled \"Info\". This is located above the buttons: [confirmation] +[selection] [unselection]."), + +doInstallStep => + __("The packages selected are now being installed. This operation +should only take a few minutes."), + +configureMouse => + __("Help"), + +configureNetwork => + __("Help"), + +configureTimezone => + __("Help"), + +configureServices => + __("Help"), + +configurePrinter => + __("Help"), + +setRootPassword => + __("An administrator password for your Linux system must now be +assigned. The password must be entered twice to verify that both +password entries are identical. + +Choose this password carefully. Only persons with access to an +administrator account can maintain and administer the system. +Alternatively, unauthorized use of an administrator account can be +extremely dangerous to the integrity of the system, the data upon it, +and other systems with which it is interfaced. The password should be a +mixture of alphanumeric characters and a least 8 characters long. It +should never be written down. Do not make the password too long or +complicated that it will be difficult to remember. + +When you login as Administrator, at \"login\" type \"root\" and at +\"password\", type the password that was created here."), + +addUser => + __("You can now authorize one or more people to use your Linux +system. Each user account will have their own customizable environment. + +It is very important that you create a regular user account, even if +there will only be one principle user of the system. The administrative +\"root\" account should not be used for day to day operation of the +computer. It is a security risk. The use of a regular user account +protects you and the system from yourself. The root account should only +be used for administrative and maintenance tasks that can not be +accomplished from a regular user account."), + +createBootdisk => + __("Help"), + +setupBootloader => + __("You need to indicate where you wish +to place the information required to boot to Linux. + +Unless you know exactly what you are doing, choose \"First sector of +drive\"."), + +configureX => + __("It is now time to configure the video card and monitor +configuration for the X Window Graphic User Interface (GUI). First +select your monitor. Next, you may test the configuration and change +your selections if necessary."), +exitInstall => + __("Help"), +); + +#- ################################################################################ +%steps_long = ( +selectLanguage => + __("Choose preferred language for install and system usage."), + +selectKeyboard => + __("Choose on the list of keyboards, the one corresponding to yours"), + +selectPath => + __("Choose \"Installation\" if there are no previous versions of Linux +installed, or if you wish use to multiple distributions or versions. + - Beginner: If you have not installed Linux before, or wish to install +the distribution elected \"Product of the year\" for 1999, click here. + - Developer: If you are familiar with Linux and will be using the +computer primarily for software development, you will find happiness +here. + - Server: If you wish to install a general purpose server, or the +Linux distribution elected \"Distribution/Server\" for 1999, select +this. + - Expert: If you know GNU/Linux and want to perform a highly + - Beginner: If you have not installed Linux before, or wish to install +the distribution elected \"Product of the year\" for 1999, click here. + - Developer: If you are familiar with Linux and will be using the +computer primarily for software development, you will find happiness +here. + - Server: If you wish to install a general purpose server, or the +Linux distribution elected \"Distribution/Server\" for 1999, select +this. + - Expert: If you know GNU/Linux and want to perform a highly + - Beginner: If you have not installed Linux before, or wish to install +the distribution elected \"Product of the year\" for 1999, click here. + - Developer: If you are familiar with Linux and will be using the +computer primarily for software development, you will find happiness +here. + - Server: If you wish to install a general purpose server, or the +Linux distribution elected \"Distribution/Server\" for 1999, select +this. + - Expert: If you know GNU/Linux and want to perform a highly + - Beginner: If you have not installed Linux before, or wish to install +the distribution elected \"Product of the year\" for 1999, click here. + - Developer: If you are familiar with Linux and will be using the +computer primarily for software development, you will find happiness +here. + - Server: If you wish to install a general purpose server, or the +Linux distribution elected \"Distribution/Server\" for 1999, select +this. + - Expert: If you know GNU/Linux and want to perform a highly + - Beginner: If you have not installed Linux before, or wish to install +the distribution elected \"Product of the year\" for 1999, click here. + - Developer: If you are familiar with Linux and will be using the +computer primarily for software development, you will find happiness +here. + - Server: If you wish to install a general purpose server, or the +Linux distribution elected \"Distribution/Server\" for 1999, select +this. + - Expert: If you know GNU/Linux and want to perform a highly + - Beginner: If you have not installed Linux before, or wish to install +the distribution elected \"Product of the year\" for 1999, click here. + - Developer: If you are familiar with Linux and will be using the +computer primarily for software development, you will find happiness +here. + - Server: If you wish to install a general purpose server, or the +Linux distribution elected \"Distribution/Server\" for 1999, select +this. + - Expert: If you know GNU/Linux and want to perform a highly + +Choose \"Update\" if you wish to update a previous version of Mandrake +Linux: 5.1 (Venice), 5.2 (Leeloo), 5.3 (Festen) or 6.0 (Venus)."), + +selectInstallClass => + __("Select: + - Beginner: If you have not installed Linux before, or wish to install +the distribution elected \"Product of the year\" for 1999, click here. + - Developer: If you are familiar with Linux and will be using the +computer primarily for software development, you will find happiness +here. + - Server: If you wish to install a general purpose server, or the +Linux distribution elected \"Distribution/Server\" for 1999, select +this. + - Expert: If you know GNU/Linux and want to perform a highly +customized installation, this Install Class is for you."), + +setupSCSI => + __("The system did not detect a SCSI card. If you have one (or several) +click on \"Yes\" and choose the module(s) to be tested. Otherwise, +select \"No\". + +If you don't know if your computer has SCSI interfaces, consult the +original documentation delivered with the computer, or if you use +Microsoft Windows 95/98, inspect the information available via the \"Control +panel\", \"System's icon, \"Device Manager\" tab."), + +partitionDisks => + __("At this point, hard drive partitions must be defined. (Unless you +are overwriting a previous install of Linux and have already defined +your hard drives partitions as desired.) This operation consists of +logically dividing the computer's hard drive capacity into separate +areas for use. Two common partition are: \"root\" which is the point at +which the filesystem's directory structure starts, and \"boot\", which +contains those files necessary to start the operating system when the +computer is first turned on. Because the effects of this process are +usually irreversible, partitioning can be intimidating and stressful to +the inexperienced. DiskDrake simplifies the process so that it need not +be. Consult the documentation and take your time before proceeding."), + +formatPartitions => + __("Any partitions that have been newly defined must be formatted for +use. At this time, you may wish to re-format some pre-existing +partitions to erase the data they contain. Note: it is not necessary to +re-format pre-existing partitions, particularly if they contain files or +data you wish to keep. Typically retained are: /home and /usr/local."), + +choosePackages => + __("You may now select the packages you wish to install. + +Please note that some packages require the installation of others. These +are referred to as package dependencies. The packages you select, and +the packages they require will automatically be added to the +installation configuration. It is impossible to install a package +without installing all of its dependencies. + +Information on each category and specific package is available in the +area titled \"Info\". This is located above the buttons: [confirmation] +[selection] [unselection]."), + +doInstallStep => + __("The packages selected are now being installed. This operation +should only take a few minutes."), + +configureMouse => + __("Help"), + +configureNetwork => + __("Help"), + +configureTimezone => + __("Help"), + +configureServices => + __("Help"), + +configurePrinter => + __("Help"), + +setRootPassword => + __("An administrator password for your Linux system must now be +assigned. The password must be entered twice to verify that both +password entries are identical. + +Choose this password carefully. Only persons with access to an +administrator account can maintain and administer the system. +Alternatively, unauthorized use of an administrator account can be +extremely dangerous to the integrity of the system, the data upon it, +and other systems with which it is interfaced. The password should be a +mixture of alphanumeric characters and a least 8 characters long. It +should never be written down. Do not make the password too long or +complicated that it will be difficult to remember. + +When you login as Administrator, at \"login\" type \"root\" and at +\"password\", type the password that was created here."), + +addUser => + __("You can now authorize one or more people to use your Linux +system. Each user account will have their own customizable environment. + +It is very important that you create a regular user account, even if +there will only be one principle user of the system. The administrative +\"root\" account should not be used for day to day operation of the +computer. It is a security risk. The use of a regular user account +protects you and the system from yourself. The root account should only +be used for administrative and maintenance tasks that can not be +accomplished from a regular user account."), + +createBootdisk => + __("Help"), + +setupBootloader => + __("You need to indicate where you wish +to place the information required to boot to Linux. + +Unless you know exactly what you are doing, choose \"First sector of +drive\"."), + +configureX => + __("It is now time to configure the video card and monitor +configuration for the X Window Graphic User Interface (GUI). First +select your monitor. Next, you may test the configuration and change +your selections if necessary."), +exitInstall => + __("Help"), +); diff --git a/perl-install/install2.pm b/perl-install/install2.pm index d668b4b4a..50809e007 100644 --- a/perl-install/install2.pm +++ b/perl-install/install2.pm @@ -12,6 +12,7 @@ use vars qw($o); use common qw(:common :file :system :functional); use install_any qw(:all); use log; +use help; use network; use lang; use keyboard; @@ -24,150 +25,12 @@ use printer; use modules; use detect_devices; use modparm; +use install_steps_graphical; use run_program; #-###################################################################################### #- Steps table #-###################################################################################### -my %stepsHelp = ( - -selectLanguage => - __("Choose preferred language for install and system usage."), - -selectKeyboard => - __("Choose on the list of keyboards, the one corresponding to yours"), - -selectPath => - __("Choose \"Installation\" if there are no previous versions of Linux -installed, or if you wish use to multiple distributions or versions. - -Choose \"Update\" if you wish to update a previous version of Mandrake -Linux: 5.1 (Venice), 5.2 (Leeloo), 5.3 (Festen) or 6.0 (Venus)."), - -selectInstallClass => - __("Select: - - Beginner: If you have not installed Linux before, or wish to install -the distribution elected \"Product of the year\" for 1999, click here. - - Developer: If you are familiar with Linux and will be using the -computer primarily for software development, you will find happiness -here. - - Server: If you wish to install a general purpose server, or the -Linux distribution elected \"Distribution/Server\" for 1999, select -this. - - Expert: If you know GNU/Linux and want to perform a highly -customized installation, this Install Class is for you."), - -setupSCSI => - __("The system did not detect a SCSI card. If you have one (or several) -click on \"Yes\" and choose the module(s) to be tested. Otherwise, -select \"No\". - -If you don't know if your computer has SCSI interfaces, consult the -original documentation delivered with the computer, or if you use -Microsoft Windows 95/98, inspect the information available via the \"Control -panel\", \"System's icon, \"Device Manager\" tab."), - -partitionDisks => - __("At this point, hard drive partitions must be defined. (Unless you -are overwriting a previous install of Linux and have already defined -your hard drives partitions as desired.) This operation consists of -logically dividing the computer's hard drive capacity into separate -areas for use. Two common partition are: \"root\" which is the point at -which the filesystem's directory structure starts, and \"boot\", which -contains those files necessary to start the operating system when the -computer is first turned on. Because the effects of this process are -usually irreversible, partitioning can be intimidating and stressful to -the inexperienced. DiskDrake simplifies the process so that it need not -be. Consult the documentation and take your time before proceeding."), - -formatPartitions => - __("Any partitions that have been newly defined must be formatted for -use. At this time, you may wish to re-format some pre-existing -partitions to erase the data they contain. Note: it is not necessary to -re-format pre-existing partitions, particularly if they contain files or -data you wish to keep. Typically retained are: /home and /usr/local."), - -choosePackages => - __("You may now select the packages you wish to install. - -Please note that some packages require the installation of others. These -are referred to as package dependencies. The packages you select, and -the packages they require will automatically be added to the -installation configuration. It is impossible to install a package -without installing all of its dependencies. - -Information on each category and specific package is available in the -area titled \"Info\". This is located above the buttons: [confirmation] -[selection] [unselection]."), - -doInstallStep => - __("The packages selected are now being installed. This operation -should only take a few minutes."), - -configureMouse => - __("Help"), - -configureNetwork => - __("Help"), - -configureTimezone => - __("Help"), - -configureServices => - __("Help"), - -configurePrinter => - __("Help"), - -setRootPassword => - __("An administrator password for your Linux system must now be -assigned. The password must be entered twice to verify that both -password entries are identical. - -Choose this password carefully. Only persons with access to an -administrator account can maintain and administer the system. -Alternatively, unauthorized use of an administrator account can be -extremely dangerous to the integrity of the system, the data upon it, -and other systems with which it is interfaced. The password should be a -mixture of alphanumeric characters and a least 8 characters long. It -should never be written down. Do not make the password too long or -complicated that it will be difficult to remember. - -When you login as Administrator, at \"login\" type \"root\" and at -\"password\", type the password that was created here."), - -addUser => - __("You can now authorize one or more people to use your Linux -system. Each user account will have their own customizable environment. - -It is very important that you create a regular user account, even if -there will only be one principle user of the system. The administrative -\"root\" account should not be used for day to day operation of the -computer. It is a security risk. The use of a regular user account -protects you and the system from yourself. The root account should only -be used for administrative and maintenance tasks that can not be -accomplished from a regular user account."), - -createBootdisk => - __("Help"), - -setupBootloader => - __("You need to indicate where you wish -to place the information required to boot to Linux. - -Unless you know exactly what you are doing, choose \"First sector of -drive\"."), - -configureX => - __("It is now time to configure the video card and monitor -configuration for the X Window Graphic User Interface (GUI). First -select your monitor. Next, you may test the configuration and change -your selections if necessary."), -exitInstall => - __("Help"), -); - - my @installStepsFields = qw(text redoable onError needs entered reachable toBeDone help next done); my @installSteps = ( selectLanguage => [ __("Choose your language"), 1, 1 ], @@ -196,7 +59,7 @@ my (%installSteps, %upgradeSteps, @orderedInstallSteps, @orderedUpgradeSteps); for (my $i = 0; $i < @installSteps; $i += 2) { my %h; @h{@installStepsFields} = @{ $installSteps[$i + 1] }; - $h{help} = $stepsHelp{$installSteps[$i]} || __("Help"); + $h{help} = $help::steps{$installSteps[$i]} || __("Help"); $h{next} = $installSteps[$i + 2]; $h{onError} = $installSteps[$i + 2 * $h{onError}]; $installSteps{ $installSteps[$i] } = \%h; @@ -585,7 +448,7 @@ sub main { modules::load_deps("/modules/modules.dep"); $o->{modules} = modules::get_stage1_conf($o->{modules}, "/tmp/conf.modules"); modules::read_already_loaded(); - modparm::read_modparm_file(($::testing ? "/tmp" : "/usr/share") . "/modparm.lst"); + modparm::read_modparm_file(-e "modparm.lst" ? "modparm.lst" : "/usr/share/modparm.lst"); #-the main cycle my $clicked = 0; diff --git a/perl-install/share/themes-blackwhite.rc b/perl-install/share/themes-blackwhite.rc index f0d87e3c4..b662185fb 100644 --- a/perl-install/share/themes-blackwhite.rc +++ b/perl-install/share/themes-blackwhite.rc @@ -31,7 +31,8 @@ style "button" style "background" { - bg[NORMAL] = { 0.67, 0.67, 0.67 } + bg[NORMAL] = { 1.0, 1.0, 1.0 } + bg[PRELIGHT] = { 0.67, 0.67, 0.67 } } widget_class "*" style "any" diff --git a/perl-install/share/themes-blue.rc b/perl-install/share/themes-blue.rc index 609e54edc..2db67f43b 100644 --- a/perl-install/share/themes-blue.rc +++ b/perl-install/share/themes-blue.rc @@ -29,6 +29,7 @@ style "button" = "any" style "background" { bg[NORMAL] = { 0, 0.67, 1.0 } + bg[PRELIGHT] = { 0, 0, 0.67 } } widget_class "*" style "any" diff --git a/perl-install/share/themes-savane.rc b/perl-install/share/themes-savane.rc index 61032c63e..52845bf94 100644 --- a/perl-install/share/themes-savane.rc +++ b/perl-install/share/themes-savane.rc @@ -32,6 +32,7 @@ style "button" style "background" { bg[NORMAL] = { 1.0, 0.67, 0 } + bg[PRELIGHT] = { 0.67, 0.33, 0 } } widget_class "*" style "any" |