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 / chrp.ycp next >
Text File  |  2006-11-29  |  3KB  |  140 lines

  1. /**
  2.  * File:
  3.  *      bootloader/ppc/prep.ycp
  4.  *
  5.  * Module:
  6.  *      Bootloader installation and configuration
  7.  *
  8.  * Summary:
  9.  *      include containing specific functions for iSeries configuration
  10.  *      and installation
  11.  *
  12.  * Authors:
  13.  *      Jiri Srain <jsrain@suse.cz>
  14.  *
  15.  * $Id: chrp.ycp 29688 2006-04-04 23:48:59Z odabrunz $
  16.  *
  17.  */
  18.  
  19. {
  20.     textdomain "bootloader";
  21.  
  22.     import "Kernel";
  23.     import "Mode";
  24.  
  25.     import "BootCommon";
  26.  
  27.     include "bootloader/ppc/misc.ycp";
  28.     include "bootloader/routines/popups.ycp";
  29.  
  30.     /**
  31.       * Propose bootloader settings
  32.       * @param initial boolean true if doing initial proposal
  33.       */
  34.     global define void CHRPPropose (boolean initial) ``{
  35.     if (BootCommon::was_proposed)
  36.     {
  37.         return;
  38.     }
  39.  
  40.         if ( ! (size (prep_boot_partitions) > 0 || prep_boot_partition != ""))
  41.         {
  42.             BootCommon::activate = false;
  43.         prep_boot_partition = "";
  44.         }
  45.     else
  46.     {
  47.         BootCommon::activate = true;
  48.     }
  49.     }
  50.  
  51.     /**
  52.       * Read the board-type-specific settings
  53.       * @return boolean true on success
  54.       */
  55.     global define boolean CHRPRead () ``{
  56.     prep_boot_partition = (string) BootCommon::globals["boot"]:"";
  57.     BootCommon::activate = prep_boot_partition != "";
  58.     of_defaultdevice = ( BootCommon::globals["activate"]:"false" == "true" ? true : false );
  59.     return true;
  60.     }
  61.  
  62.     /**
  63.       * Update the board-type-specific settings
  64.       * @return boolean true on success
  65.       */
  66.     global define boolean CHRPUpdate () ``{
  67.     return true;
  68.     }
  69.  
  70.     /**
  71.       * Save the board-type-specific settings
  72.       * @return boolean true on success
  73.       */
  74.     global define boolean CHRPSave () ``{
  75.     BootCommon::globals["boot"] = prep_boot_partition;
  76.     BootCommon::globals["activate"] = ( of_defaultdevice ? "true" : "false" );
  77.     return true;
  78.     }
  79.  
  80.     /**
  81.       * retuen the board-type-specific part of summary
  82.       * @return a list of summary strings
  83.       */
  84.     global define list<string> CHRPSummary () ``{
  85.     list<string> ret = [];
  86.     if ((! Mode::config ()) && 0 == size (prep_boot_partitions))
  87.     {
  88.         ret = [
  89.         // summary part
  90.         _("There is no 41 PReP boot nor a FAT16 partition. You cannot boot from the hard disk."),
  91.         ];
  92.     }
  93.     else if (BootCommon::activate == false)
  94.     {
  95.         ret = [
  96.         // summary part
  97.         _("No boot configuration. Configure booting manually.")
  98.         ];
  99.     }
  100.     else
  101.     {
  102.         ret = [
  103.         sformat(
  104.             // summary part
  105.             _("yaboot will be written to %1. A correct boot path will be prepended to boot-device variable."),
  106.             prep_boot_partition
  107.         )
  108.         ];
  109.     }
  110.     return ret;
  111.     // TODO of_defaultdevice ??
  112.     }
  113.  
  114.     /**
  115.       * Install the board-type-specific part of bootloader
  116.       * @param requires_initrd boolean true if initrd is required
  117.       * @return boolean true on success
  118.       */
  119.     global define boolean CHRPWrite (boolean requires_initrd) ``{
  120.     // just call lilo
  121.     return true;
  122.     }
  123.  
  124.     /**
  125.       * Initialize attributes of the board type
  126.       */
  127.     global define void CHRPInit () ``{
  128.     y2milestone ("Initializing CHRP attributes");
  129.     prep_only_active = true;
  130.     prep_only_iseries_vd = false;
  131.     prep_only_primary = true;
  132.     // On CHRP, if there is no bootable partition on the disk containing
  133.     // "/", there is CHRP-specific code in choosePrepBootPartition that
  134.     // takes the first prep partition in the system.
  135.     prep_same_disk_as_root = true;
  136.     table_items = [ "__chrp_location", "__set_default_of" ];
  137.     }
  138.  
  139. }
  140.