home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2007 January, February, March & April
/
Chip-Cover-CD-2007-02.iso
/
boot
/
i386
/
root
/
usr
/
share
/
YaST2
/
include
/
bootloader
/
ppc
/
prep.ycp
< prev
Wrap
Text File
|
2006-11-29
|
3KB
|
139 lines
/**
* File:
* bootloader/ppc/prep.ycp
*
* Module:
* Bootloader installation and configuration
*
* Summary:
* include containing specific functions for iSeries configuration
* and installation
*
* Authors:
* Jiri Srain <jsrain@suse.cz>
*
* $Id: prep.ycp 29688 2006-04-04 23:48:59Z odabrunz $
*
*/
{
textdomain "bootloader";
import "Kernel";
import "Installation";
import "Mode";
import "BootCommon";
include "bootloader/ppc/misc.ycp";
include "bootloader/routines/popups.ycp";
/**
* Propose bootloader settings
* @param initial boolean true if doing initial proposal
*/
global define void PRePPropose (boolean initial) ``{
if (BootCommon::was_proposed)
{
return;
}
if ( ! (size (prep_boot_partitions) > 0 || prep_boot_partition != ""))
{
BootCommon::activate = false;
prep_boot_partition = "";
}
else
{
BootCommon::activate = true;
}
}
/**
* Read the board-type-specific settings
* @return boolean true on success
*/
global define boolean PRePRead () ``{
prep_boot_partition = (string) BootCommon::globals["boot"]:"";
BootCommon::activate = prep_boot_partition != "";
return true;
}
/**
* Update the board-type-specific settings
* @return boolean true on success
*/
global define boolean PRePUpdate () ``{
return true;
}
/**
* Save the board-type-specific settings
* @return boolean true on success
*/
global define boolean PRePSave () ``{
BootCommon::globals["boot"] = prep_boot_partition;
return true;
}
/**
* retuen the board-type-specific part of summary
* @return a list of summary strings
*/
global define list<string> PRePSummary () ``{
list<string> ret = [];
if ((! Mode::config ()) && 0 == size (prep_boot_partitions))
{
ret = [
// summary part
_("There is no 41 PReP boot partition. You cannot boot from the hard disk."),
];
}
else if ( BootCommon::activate == false )
{
ret = [
// summary part
_("No boot configuration. Configure booting manually."),
];
}
else
{
ret = [
// summary part
_("The zImage.prep from CD1/boot must be written to a 41 PReP boot partition."),
];
}
return ret;
}
/**
* Install the board-type-specific part of bootloader
* @param requires_initrd boolean true if initrd is required
* @return boolean true on success
*/
global define boolean PRePWrite (boolean requires_initrd) ``{
if (! BootCommon::activate)
return true;
// the PReP boot file (the kernel) is not in k_deflt.rpm
// FIXME: this is one of the crudest hacks (cf #9718)
WFM::Execute (.local.bash, "/bin/cp -pv " + Installation::sourcedir
+ "/boot/mvlinuz-prep* /boot/zImage.prep");
WFM::Execute (.local.bash, "/bin/cp -pv " + Installation::sourcedir
+ "/boot/install-prep* /boot/zImage.initrd.prep");
return true;
}
/**
* Initialize attributes of the board type
*/
global define void PRePInit () ``{
y2milestone ("Initializing PReP attributes");
prep_only_active = true;
prep_only_iseries_vd = false;
prep_only_primary = true;
prep_same_disk_as_root = false;
table_items = [ "__prep_location" ];
}
}