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 / elilo / misc.ycp next >
Text File  |  2006-11-29  |  2KB  |  89 lines

  1. /**
  2.  * File:
  3.  *      include/bootloader/elilo/misc.ycp
  4.  *
  5.  * Module:
  6.  *      Bootloader installation and configuration
  7.  *
  8.  * Summary:
  9.  *      Miscelaneous functions for configuring and installing ELILO bootloader
  10.  *
  11.  * Authors:
  12.  *      Jiri Srain <jsrain@suse.cz>
  13.  *
  14.  * $Id: misc.ycp 28904 2006-03-13 15:35:23Z jplack $
  15.  *
  16.  */
  17.  
  18. {
  19.     textdomain "bootloader";
  20.  
  21.     import "Installation";
  22.     import "Mode";
  23.     import "Report";
  24.     import "Storage";
  25.  
  26.     /**
  27.       * Return mountpoint of partition holding EFI data
  28.       * @return mountpoint if partition holding EFI data
  29.       */
  30.     global define string getEfiMountPoint () {
  31.     string mountpoint = "/";
  32.     // FIXME: UGLY HACK because of testsuites
  33.     map mountpoints = $[];
  34.     if (Mode::test ())
  35.         mountpoints = $["/" : ["/dev/hda2"], "/boot" : ["/dev/hda1"]];
  36.     else
  37.         mountpoints = Storage::GetMountPoints();
  38.     if (haskey (mountpoints, "/boot/efi"))
  39.     {
  40.         mountpoint = "/boot/efi";
  41.     }
  42.     else if (haskey (mountpoints, "/boot"))
  43.     {
  44.         mountpoint = "/boot";
  45.     }
  46.     y2milestone ("Mountpoint of EFI: %1", mountpoint);
  47.     return mountpoint;
  48.     }
  49.  
  50.     /**
  51.       * Get used EFI vendor
  52.       * @return EFI vendor
  53.       */
  54.     global define string getEfiVendor () {
  55.     return "SuSE";
  56.     }
  57.  
  58.     /**
  59.       * Get directory containing elilo.conf relative to EFI partition's root
  60.       * @return directory containing elilo.conf relative to EFI root
  61.       */
  62.     global define string getEliloConfSubdir () {
  63.     return sformat ("/efi/%1", getEfiVendor ());
  64.     }
  65.  
  66.     /**
  67.       * Get path of elilo.conf relative to EFI partition's root
  68.       * @return string path of elilo.conf relative to EFI partition's root
  69.       */
  70.     global define string getEliloConfSubpath () {
  71.     return sformat ("%1/elilo.conf", getEliloConfSubdir ());
  72.     }
  73.  
  74.     /**
  75.       * Return path to elilo.conf file
  76.       * @return string path to elilo.conf
  77.       */
  78.     global define string getEliloConfFilename () {
  79.         // FIXME config file name location should be read from Library
  80.         //  and it should not be needed here!!!
  81.     string ret = sformat ("%1/efi/%2/elilo.conf", getEfiMountPoint (),
  82.         getEfiVendor ());
  83.     y2milestone ("elilo.conf sould be located at %1", ret);
  84.     return ret;
  85.     }
  86.  
  87.  
  88. }
  89.