ACC SHELL
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
<head>
<title>
Bootloader installation and configuration
</title>
<style type="text/css">body { background-color: #c8c8c8 }
h1 { color: #e00000 }
table { width: 100%/ border: none }
img { border: 0px }
.sigbox { background-color: #ffc080; border: solid thin #f96500 }
.sig { font: larger monospace }
.padtbl { background-color: #ffc080; padding: 10px; margin: 10px }
/* arrow */
.a { color: #606060 }
/* type, parameter */
.t, .p { color: #c05000 }
.pbox { width: 20% }
.descbox { }
.right { align: right }
.header {}
.footer { clear: both}
.menu { width: 10%; float: left }
.main { width: 90%; float: left }
</style>
</head>
<body>
<div class="header">
<i>YaST2 Developers Documentation:</i>
<a href="index.html">
<b>
Bootloader installation and configuration
</b>
</a>
<img class="right" alt="" src="/usr/share/doc/packages/yast2-devtools/images/yast2-mini.png" />
<hr />
</div>
<div class="menu">
<img alt="YaST" src="/usr/share/doc/packages/yast2-devtools/images/yast2-half.png" />
<br />
<br />
<a href="index.html">functions</a>
<br />
<a href="files.html">files</a>
<br />
<a href="intro.html">intro</a>
</div>
<div class="main">
<div class="sigbox">
<table class="padtbl">
<tr>
<td>
<h1>
Bootloader installation and configuration
</h1>
</td>
<td class="filecell">
include/bootloader/routines/lib-iface.ycp
</td>
</tr>
<tr>
<td>
Functions to interface the bootloader library
</td>
</tr>
<tr>
<td>
<ul>
<li> Jiri Srain <jsrain@suse.cz></li>
</ul>
</td>
</tr>
<tr>
<td>
<p>This module has an unstable interface.</p>
</td>
</tr>
</table>
<table class="padtbl">
<tr>
<td>
WARNING:
To be included to BootCommon.ycp only
Use import "BootCommon" instead.
<h1>Imports</h1>
<ul>
<li>Mode</li>
<li>Storage</li>
<li>System::Bootloader_API</li>
</ul>
<h1>Global Functions</h1>
<ul>
<li>
<a href="#CommitSettings">CommitSettings ()</a>
</li>
<li>
<a href="#DefineMultipath">DefineMultipath (map<string,string> multipath_map)</a>
</li>
<li>
<a href="#DefineMultipath">DefineMultipath (map<string,string> multipath_map)</a>
</li>
<li>
<a href="#GetDeviceMap">GetDeviceMap ()</a>
</li>
<li>
<a href="#GetFilesContents">GetFilesContents ()</a>
</li>
<li>
<a href="#GetGlobal">GetGlobal ()</a>
</li>
<li>
<a href="#GetMetaData">GetMetaData ()</a>
</li>
<li>
<a href="#GetSections">GetSections ()</a>
</li>
<li>
<a href="#InitializeBootloader">InitializeBootloader ()</a>
</li>
<li>
<a href="#InitializeLibrary">InitializeLibrary (boolean force, string loader)</a>
</li>
<li>
<a href="#ReadFiles">ReadFiles (boolean avoid_reading_device_map)</a>
</li>
<li>
<a href="#SetDeviceMap">SetDeviceMap (map<string,string> device_map)</a>
</li>
<li>
<a href="#SetFilesContents">SetFilesContents (map<string,string> files)</a>
</li>
<li>
<a href="#SetGlobal">SetGlobal (map<string,string> globals)</a>
</li>
<li>
<a href="#SetSections">SetSections (list<map<string,any> > sections)</a>
</li>
<li>
<a href="#UpdateBootloader">UpdateBootloader ()</a>
</li>
<li>
<a href="#UpdateSerialConsole">UpdateSerialConsole (string append, string console)</a>
</li>
<li>
<a href="#examineMBR">examineMBR (string device)</a>
</li>
</ul>
<h1>Local Variables</h1>
<ul>
<li>
<a href="#library_initialized">library_initialized</a>
</li>
</ul>
</td>
</tr>
</table>
</div>
<p />
<div class="sigbox">
<span class="sig" id="library_initialized">local
<b>library_initialized
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Loader the library has been initialized to use</p>
<div class="sigbox">
<span class="sig" id="DefineMultipath">global
<b>DefineMultipath (map<string,string> multipath_map)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Declarations...</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">multipath_map</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">Info:</div>
<p>
Retrieve the data for perl-Bootloader library from Storage module
and pass it along</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">nothing</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="InitializeLibrary">global
<b>InitializeLibrary (boolean force, string loader)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Initialize the bootloader library</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">force</span>
</td>
<td class="descbox">boolean true if the initialization is to be forced</td>
</tr>
<tr>
<td class="pbox">
<span class="p">loader</span>
</td>
<td class="descbox">string the loader to initialize the library for</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">true on success</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="SetSections">global
<b>SetSections (list<map<string,any> > sections)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Set boot loader sections</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">sections</span>
</td>
<td class="descbox">a list of all loader sections (as maps)</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">true on success</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="GetSections">global
<b>GetSections ()
<span class="a"> -> </span>
<span class="t">list<map<string,any> ></span>
</b>
</span>
</div>
<p>
Get boot loader sections</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">a list of all loader sections (as maps)</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="SetGlobal">global
<b>SetGlobal (map<string,string> globals)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Set global bootloader options</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">globals</span>
</td>
<td class="descbox">a map of global bootloader options</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">true on success</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="GetGlobal">global
<b>GetGlobal ()
<span class="a"> -> </span>
<span class="t">map<string,string></span>
</b>
</span>
</div>
<p>
Get global bootloader options</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">a map of global bootloader options</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="GetMetaData">global
<b>GetMetaData ()
<span class="a"> -> </span>
<span class="t">map<string,string></span>
</b>
</span>
</div>
<p>
Get bootloader configuration meta data such as field type descriptions</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">a map of meta data for global and section entries</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="SetDeviceMap">global
<b>SetDeviceMap (map<string,string> device_map)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Set the device mapping (Linux <-> Firmware)</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">device_map</span>
</td>
<td class="descbox">a map from Linux device to Firmware device identification</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">true on success</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="DefineMultipath">global
<b>DefineMultipath (map<string,string> multipath_map)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Set the mapping (real device <-> multipath)</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">multipath_map</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">true on success</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="GetDeviceMap">global
<b>GetDeviceMap ()
<span class="a"> -> </span>
<span class="t">map<string,string></span>
</b>
</span>
</div>
<p>
Get the device mapping (Linux <-> Firmware)</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">a map from Linux device to Firmware device identification</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="ReadFiles">global
<b>ReadFiles (boolean avoid_reading_device_map)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Read the files from the system to internal cache of the library</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">avoid_reading_device_map</span>
</td>
<td class="descbox">do not read the device map, but use internal
data</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">true on success</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="CommitSettings">global
<b>CommitSettings ()
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Flush the internal cache of the library to the disk</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">true on success</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="UpdateBootloader">global
<b>UpdateBootloader ()
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Update the bootloader settings, make updated saved settings active</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">true on success</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="UpdateSerialConsole">global
<b>UpdateSerialConsole (string append, string console)
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Update append in from boot section, it means take value from "console"
and add it to "append" </p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">append</span>
</td>
<td class="descbox"></td>
</tr>
<tr>
<td class="pbox">
<span class="p">console</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">updated append with console</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="InitializeBootloader">global
<b>InitializeBootloader ()
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Initialize the boot loader (eg. modify firmware, depending on architecture)</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">true on success</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="GetFilesContents">global
<b>GetFilesContents ()
<span class="a"> -> </span>
<span class="t">map<string,string></span>
</b>
</span>
</div>
<p>
Get contents of files from the library cache</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">a map filename -> contents, empty map in case of fail</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="SetFilesContents">global
<b>SetFilesContents (map<string,string> files)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Set the contents of all files to library cache</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">files</span>
</td>
<td class="descbox">a map filename -> contents</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">true on success</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="examineMBR">global
<b>examineMBR (string device)
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Analyse content of MBR</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">device</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">result of analyse ("GRUB stage1", "uknown",...)</td>
</tr>
</table>
</dd>
</dl>
</div>
<div class="footer">
<hr />
<i>YaST2 Developers Documentation</i>
<img class="right" alt="" src="/usr/share/doc/packages/yast2-devtools/images/yast2-mini.png" />
</div>
</body>
</html>
ACC SHELL 2018