Hello community,
here is the log from the commit of package yast2-bootloader
checked in at Fri Sep 12 01:54:32 CEST 2008.
--------
--- yast2-bootloader/yast2-bootloader.changes 2008-09-03 13:28:24.000000000 +0200
+++ /mounts/work_src_done/STABLE/yast2-bootloader/yast2-bootloader.changes 2008-09-11 15:29:54.000000000 +0200
@@ -1,0 +2,12 @@
+Thu Sep 11 15:27:43 CEST 2008 - locilka@suse.cz
+
+- Calling new reipl_bootloader_finish client from yast2-reipl
+ in bootloader_finish (FATE #304960).
+- 2.17.16
+
+-------------------------------------------------------------------
+Thu Sep 11 08:22:53 CEST 2008 - jsrain@suse.cz
+
+- merged texts from proofread
+
+-------------------------------------------------------------------
Old:
----
yast2-bootloader-2.17.15.tar.bz2
New:
----
yast2-bootloader-2.17.16.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-bootloader.spec ++++++
--- /var/tmp/diff_new_pack.O27458/_old 2008-09-12 01:54:22.000000000 +0200
+++ /var/tmp/diff_new_pack.O27458/_new 2008-09-12 01:54:22.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package yast2-bootloader (Version 2.17.15)
+# spec file for package yast2-bootloader (Version 2.17.16)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -19,12 +19,12 @@
Name: yast2-bootloader
-Version: 2.17.15
+Version: 2.17.16
Release: 1
License: GPL v2 or later
Group: System/YaST
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-Source0: yast2-bootloader-2.17.15.tar.bz2
+Source0: yast2-bootloader-2.17.16.tar.bz2
Prefix: /usr
BuildRequires: docbook-xsl-stylesheets doxygen gcc-c++ libxslt limal-perl perl-Bootloader perl-XML-Writer perl-gettext sgml-skel swig update-alternatives update-desktop-files yast2-devtools yast2-installation yast2-perl-bindings yast2-storage yast2-testsuite
# to eliminate a cyclic dependency in autobuild:
@@ -61,7 +61,7 @@
Daniel Fiser
%prep
-%setup -n yast2-bootloader-2.17.15
+%setup -n yast2-bootloader-2.17.16
%build
%{prefix}/bin/y2tool y2autoconf
@@ -106,6 +106,12 @@
/var/adm/fillup-templates/*
/usr/share/YaST2/schema/autoyast/rnc/bootloader.rnc
%changelog
+* Thu Sep 11 2008 locilka@suse.cz
+- Calling new reipl_bootloader_finish client from yast2-reipl
+ in bootloader_finish (FATE #304960).
+- 2.17.16
+* Thu Sep 11 2008 jsrain@suse.cz
+- merged texts from proofread
* Wed Sep 03 2008 jsrain@suse.cz
- added detection of EFI, proposing ELILO in that case
(fate #301882)
++++++ yast2-bootloader-2.17.15.tar.bz2 -> yast2-bootloader-2.17.16.tar.bz2 ++++++
++++ 2451 lines of diff (skipped)
++++ retrying with extended exclude list
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-bootloader-2.17.15/configure.in new/yast2-bootloader-2.17.16/configure.in
--- old/yast2-bootloader-2.17.15/configure.in 2008-09-03 13:27:08.000000000 +0200
+++ new/yast2-bootloader-2.17.16/configure.in 2008-09-11 15:30:13.000000000 +0200
@@ -1,9 +1,9 @@
dnl configure.in for yast2-bootloader
dnl
-dnl -- This file is generated by y2autoconf 2.16.7 - DO NOT EDIT! --
+dnl -- This file is generated by y2autoconf 2.17.6 - DO NOT EDIT! --
dnl (edit configure.in.in instead)
-AC_INIT(yast2-bootloader, 2.17.15, http://bugs.opensuse.org/, yast2-bootloader)
+AC_INIT(yast2-bootloader, 2.17.16, http://bugs.opensuse.org/, yast2-bootloader)
dnl Check for presence of file 'RPMNAME'
AC_CONFIG_SRCDIR([RPMNAME])
@@ -18,7 +18,7 @@
AM_INIT_AUTOMAKE(tar-ustar -Wno-portability)
dnl Important YaST2 variables
-VERSION="2.17.15"
+VERSION="2.17.16"
RPMNAME="yast2-bootloader"
MAINTAINER="Jozef Uhliarik "
@@ -161,8 +161,14 @@
AC_PROG_CC
AC_PROG_CPP
-CFLAGS="${CFLAGS} -Wall -Wformat=2 -Wmissing-prototypes"
-CXXFLAGS="${CXXFLAGS} -Wall -Wformat=2"
+# If we have core, get its Y2CORE_CFLAGS.
+# When building core itself, it has set Y2CORE_CFLAGS elsewhere already
+PKG_CHECK_EXISTS([yast2-core],[
+ PKG_CHECK_MODULES(Y2CORE, yast2-core)
+])
+
+CFLAGS="${CFLAGS} ${Y2CORE_CFLAGS} -Wall -Wformat=2 -Wmissing-prototypes"
+CXXFLAGS="${CXXFLAGS} ${Y2CORE_CFLAGS} -Wall -Wformat=2"
: ${AGENT_LIBADD:='-L$(libdir) -lscr'}
AC_SUBST(AGENT_LIBADD)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-bootloader-2.17.15/src/clients/bootloader_finish.ycp new/yast2-bootloader-2.17.16/src/clients/bootloader_finish.ycp
--- old/yast2-bootloader-2.17.15/src/clients/bootloader_finish.ycp 2008-09-02 13:27:27.000000000 +0200
+++ new/yast2-bootloader-2.17.16/src/clients/bootloader_finish.ycp 2008-09-11 15:30:05.000000000 +0200
@@ -9,7 +9,7 @@
* Jiri Srain
* Olaf Dabrunz
*
- * $Id: bootloader_finish.ycp 50458 2008-08-28 13:34:25Z locilka $
+ * $Id: bootloader_finish.ycp 51038 2008-09-11 13:30:04Z locilka $
*
*/
@@ -95,32 +95,43 @@
if (Arch::s390 ())
{
- if (Linuxrc::usessh ())
- // for s390:
- // Message that will be displayed along with information
- // how the boot loader was installed
- Misc::boot_msg = _("
-Your system will now shut down.
-After shutdown, reload the system
-with the load address of your root DASD or
-the load adress of your zFCP device.
-Then reconnect and run the following:
+ map finish_ret = nil;
+ string reipl_client = "reipl_bootloader_finish";
+
+ // Calling a special reIPL client
+ // it returns a result map (keys: (boolean) different, (string) ipl_msg)
+ if (WFM::ClientExists (reipl_client)) {
+ finish_ret = (map) WFM::call (reipl_client);
+ } else {
+ y2error ("No such client: %1", reipl_client);
+ }
+
+ // reIPL message
+ string ipl_msg = "";
+ if (finish_ret["different"]:false == true) {
+ ipl_msg = finish_ret["ipl_msg"]:"";
+ }
+
+ // SSH modification
+ string usessh_msg = "";
+ if (Linuxrc::usessh ()) {
+ // TRANSLATORS: part of the reboot message
+ // (message ID#SSH)
+ usessh_msg = _("Then reconnect and run the following:
/usr/lib/YaST2/startup/YaST2.ssh
-For details, read the related chapter
-in the documentation.
-");
- else
- // for s390:
- // Message that will be displayed along with information
- // how the boot loader was installed
- Misc::boot_msg = _("
-Your system will shut down now.
-After shutdown, reload the system
-with the load address of your root DASD or
-the load address of your zFCP device.
-For details, read the relevant chapter
-in the documentation.
");
+ }
+
+ // TRANSLATORS: reboot message
+ // %1 is replaced with additional message from reIPL
+ // %2 is replaced with additional message when using SSH
+ // See message ID#SSH
+ Misc::boot_msg = sformat(_("
+Your system will now shut down.%1%2
+For details, read the related chapter
+in the documentation.
+"), ipl_msg, usessh_msg);
+
}
else
{
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-bootloader-2.17.15/src/clients/bootloader_proposal.ycp new/yast2-bootloader-2.17.16/src/clients/bootloader_proposal.ycp
--- old/yast2-bootloader-2.17.15/src/clients/bootloader_proposal.ycp 2008-08-18 10:19:51.000000000 +0200
+++ new/yast2-bootloader-2.17.16/src/clients/bootloader_proposal.ycp 2008-09-11 12:48:55.000000000 +0200
@@ -1,7 +1,7 @@
/**
* Module: bootloader_proposal.ycp
*
- * $Id: bootloader_proposal.ycp 49778 2008-08-06 14:05:58Z juhliarik $
+ * $Id: bootloader_proposal.ycp 50999 2008-09-11 06:24:26Z jsrain $
*
* Author: Klaus Kaempf
*
@@ -113,9 +113,9 @@
"warning_level" : `blocker,
"warning" :
ret["warning"]:"" +
- _("Configure a valid boot loader location before continuing.<br>
-The device map includes more than 8 devices and the boot device is out of range.
-The range is the first 8 devices by BIOS."),
+ _("Configure a valid boot loader location before continuing.<br/>
+The device map includes more than 8 devices and the boot device is out of range.
+The range is limited by BIOS to the first 8 devices."),
]
);
return ret;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-bootloader-2.17.15/src/config/bootloader.rnc new/yast2-bootloader-2.17.16/src/config/bootloader.rnc
--- old/yast2-bootloader-2.17.15/src/config/bootloader.rnc 2008-08-18 10:19:51.000000000 +0200
+++ new/yast2-bootloader-2.17.16/src/config/bootloader.rnc 2008-09-08 17:53:16.000000000 +0200
@@ -43,6 +43,7 @@
element global {
element boot_custom { text }? &
element generic_mbr { text }? &
+ element trusted_grub{ text }? &
element serial { text }? &
element terminal { text }? &
lines_cache_id? &
@@ -55,6 +56,7 @@
boot_mbr? &
stage1_dev?
}
+
lines_cache_id = element lines_cache_id { text }
stage1_dev = element stage1_dev { text }
bl_timeout = element timeout { INTEGER }
@@ -88,6 +90,7 @@
element sectors {text}? &
element blockoffset {text}? &
element vgamode {text}? &
+ element measures ? &
element xen {text}? &
element xen_append {text}? &
element noverifyroot { "true" | "false" }? &
@@ -97,3 +100,15 @@
element image {text}?
}
kernel_parameters = element kernel_parameters { text }
+
+measure =
+ element measure {
+ element file { text } &
+ element pcr { text }
+ }
+
+measures =
+ element measures {
+ LIST,
+ measure+
+}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-bootloader-2.17.15/src/elilo/helps.ycp new/yast2-bootloader-2.17.16/src/elilo/helps.ycp
--- old/yast2-bootloader-2.17.15/src/elilo/helps.ycp 2007-11-09 17:24:39.000000000 +0100
+++ new/yast2-bootloader-2.17.16/src/elilo/helps.ycp 2008-09-11 12:48:55.000000000 +0200
@@ -25,20 +25,23 @@
"boot" : _("<p><b>Boot Image Location</b></p>"),
"default" : _("<p><b>Default Boot Section</b></p>"),
"timeout" :
- _("<p><b>Timeout in tenth of seconds</b><br> Specifies the the time the
-bootloader will wait in interactive mode until the default entry is
-booted.</p>"),
+ _("<p><b>Timeout in tenths of a second</b><br> Specifies the time the
+bootloader will wait in interactive mode until booting the default
+entry.</p>
+"),
"verbose" :
_("<p><b>Set level of verbosity [0-5]</b><br> Increase verbosity of ELILO
in case of boot problems.</p>"),
"append" :
- _("<p><b>Global Append string of options to kernel command line</b><br>
-Lets you define global, additional parameters to pass to the kernel. These are
-used if no 'append' appears in a given section.</p>"),
+ _("<p><b>Append string for.global options to pass to kernel command line</b><br>
+Lets you define additional global parameters to pass to the kernel. These are
+used if no 'append' appears in a given section.</p>
+"),
"initrd" :
- _("<p><b>Name of default initrd file</b>, if non-empty, defines the initial
+ _("<p><b>Name of the default initrd file</b>, if not empty, defines the initial
ramdisk to use. Either enter the path and file name directly or choose by using
-<b>Browse</b></p>"),
+<b>Browse</b></p>
+"),
"image" :
_("<p><b>Name of default image file</b></p>"),
"chooser" :
@@ -46,10 +49,11 @@
Beware: 'textmenu' has occasionally caused problems on some machines.</p>"),
"noedd30" :
_("<p><b>Prevent EDD30 mode</b><br>
-By default, if EDD30 is off, elilo will try and set the variable to TRUE.
+By default, if EDD30 is off, ELILO will try and set the variable to TRUE.
However, some controllers do not support EDD30 and forcing the variable
-may cause problems. Therefore as of elilo-3.2, there is an option to
-avoid forcing the variable.</p>"),
+may cause problems. Therefore, as of elilo-3.2, there is an option to
+avoid forcing the variable.</p>
+"),
"relocatable" :
_("<p><b>Allow attempt to relocate</b><br>
In case of memory allocation error at initial load point of
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-bootloader-2.17.15/src/generic/boot_loader_locations_widget.ycp new/yast2-bootloader-2.17.16/src/generic/boot_loader_locations_widget.ycp
--- old/yast2-bootloader-2.17.15/src/generic/boot_loader_locations_widget.ycp 2007-05-18 10:05:48.000000000 +0200
+++ new/yast2-bootloader-2.17.16/src/generic/boot_loader_locations_widget.ycp 2008-09-08 17:53:16.000000000 +0200
@@ -11,7 +11,7 @@
* Authors:
* Joachim Plack
*
- * $Id: boot_loader_locations_widget.ycp 35128 2007-01-05 18:04:27Z jplack $
+ * $Id: boot_loader_locations_widget.ycp 50815 2008-09-08 15:01:09Z juhliarik $
*
*/
@@ -32,6 +32,12 @@
map _bll_options = nil;
/**
+ * option once propose
+ */
+
+boolean once_to_mbr = true;
+
+/**
* return map of boot loader options from global_options, cache them if
* necessary
*/
@@ -53,6 +59,13 @@
* @param widget string widget key
*/
void BLL_Init (string widget) {
+ // propose install grub to MBR if trusted GRUB is selected (only once)
+
+ if ((BootCommon::globals["trusted_grub"]:"" == "true") && (once_to_mbr))
+ {
+ BootCommon::globals["boot_mbr"] = "true";
+ once_to_mbr = false;
+ }
generic_Init(widget, BLL_options(), BootCommon::globals);
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-bootloader-2.17.15/src/generic/global_options_widget.ycp new/yast2-bootloader-2.17.16/src/generic/global_options_widget.ycp
--- old/yast2-bootloader-2.17.15/src/generic/global_options_widget.ycp 2007-05-18 10:05:48.000000000 +0200
+++ new/yast2-bootloader-2.17.16/src/generic/global_options_widget.ycp 2008-09-08 17:53:16.000000000 +0200
@@ -11,7 +11,7 @@
* Authors:
* Joachim Plack
*
- * $Id: global_options_widget.ycp 35128 2007-01-05 18:04:27Z jplack $
+ * $Id: global_options_widget.ycp 50815 2008-09-08 15:01:09Z juhliarik $
*
*/
@@ -30,6 +30,21 @@
map _gow_options = nil;
map GOW_options () {
+ // HACK add checkbox for enabling trusted GRUB
+ if (BootCommon::getLoaderType (false) == "grub")
+ {
+ BootCommon::global_options["trusted_grub"] = "bool:Use Trusted Grub:true";
+ } else {
+ if (haskey(BootCommon::global_options, "trusted_grub"))
+ BootCommon::global_options = remove(BootCommon::global_options, "trusted_grub");
+ }
+ // HACK delete fallback and former_default_image_flavor
+ if (haskey(BootCommon::global_options, "former_default_image_flavor"))
+ BootCommon::global_options = remove(BootCommon::global_options, "former_default_image_flavor");
+
+ if (haskey(BootCommon::global_options, "fallback"))
+ BootCommon::global_options = remove(BootCommon::global_options, "fallback");
+
if ( _gow_options == nil)
{
_gow_options = filter( string key, any value, BootCommon::global_options, {
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-bootloader-2.17.15/src/generic/wizards.ycp new/yast2-bootloader-2.17.16/src/generic/wizards.ycp
--- old/yast2-bootloader-2.17.15/src/generic/wizards.ycp 2008-08-18 10:19:51.000000000 +0200
+++ new/yast2-bootloader-2.17.16/src/generic/wizards.ycp 2008-09-08 17:53:16.000000000 +0200
@@ -11,7 +11,7 @@
* Authors:
* Joachim Plack
*
- * $Id: wizards.ycp 49756 2008-08-06 10:52:37Z juhliarik $
+ * $Id: wizards.ycp 50815 2008-09-08 15:01:09Z juhliarik $
*
*/
@@ -54,13 +54,12 @@
}
string se_type = "section_edit_" + type;
map > widget_descr = (map >)
- union (CommonSectionWidgets (), Bootloader::blWidgetMaps ());
+ union (CommonSectionWidgets (), Bootloader::blWidgetMaps ());
if (! haskey(widget_descr, se_type) ) {
y2error("Could not find a dialog %1", se_type);
return nil;
}
-
term contents = `HBox (
`HSpacing (2),
`VBox (
@@ -78,6 +77,8 @@
`HSpacing (2)
)
),
+ "trusted",
+
`VStretch ()
),
`HSpacing (2)
@@ -85,7 +86,7 @@
return CWM::ShowAndRun ($[
"widget_descr" : widget_descr,
- "widget_names" : ["name", se_type],
+ "widget_names" : ["name", "trusted", se_type],
"contents" : contents,
"caption" : _("Boot Loader Settings: Section Management"),
"back_button" : Label::BackButton (),
@@ -135,6 +136,7 @@
"main" : ``(MainDialog ()),
"installation_details" : ``(DetailsDialog ("installation")),
"loader_details" : ``(DetailsDialog ("loader")),
+ "t_grub" : ``(DetailsDialog ("trusted_grub")),
"add_new_section" : ``(AddNewSectionDialog ()),
"store_section" : [``(GenericStoreSection ()), true],
"manual_edit" : ``(runEditFilesDialog ()),
@@ -178,8 +180,15 @@
],
"section_edit" : $[
`next : "store_section",
+ `trusted_details : "t_grub",
+ `abort : `abort,
+ ],
+ "t_grub" : $[
+ `next : "section_edit",
+ //FIXME kokso: it is good idea handle abort via "section_edit" not `abort
`abort : `abort,
],
+
];
foreach (string st, section_types(), {
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-bootloader-2.17.15/src/grub/helps.ycp new/yast2-bootloader-2.17.16/src/grub/helps.ycp
--- old/yast2-bootloader-2.17.15/src/grub/helps.ycp 2008-08-18 10:19:50.000000000 +0200
+++ new/yast2-bootloader-2.17.16/src/grub/helps.ycp 2008-09-11 12:48:55.000000000 +0200
@@ -29,14 +29,16 @@
if the boot loader is installed in the MBR.</p>"),
"timeout" :
_("<p><b>Timeout in Seconds</b><br>
-Specifies the the time the bootloader will wait until the default kernel is loaded.</p>"),
+Specifies the time the bootloader will wait until the default kernel is loaded.</p>
+"),
"default" :
- _("<p> By pressing <b>Set as Default</b> you mark the selected
-section as default. When booting, the boot loader will provide
-a boot menu and wait for the user to select the kernel or another
-OS to boot. If no key is pressed before the time-out, the default
-kernel or OS will be booted. The order of the sections in the boot loader
-menu can be changed using the <b>Up</b> and <b>Down</b> buttons.</p>"),
+ _("<p> By pressing <b>Set as Default</b> you mark the selected section as
+the default. When booting, the boot loader will provide a boot menu and
+wait for the user to select a kernel or OS to boot. If no
+key is pressed before the timeout, the default kernel or OS will
+boot. The order of the sections in the boot loader menu can be changed
+using the <b>Up</b> and <b>Down</b> buttons.</p>
+"),
"generic_mbr" :
_("<p><big><b>Write generic Boot Code to MBR</b></big><br>
To replace the master boot record of your disk with generic code (OS independent code which
@@ -44,6 +46,9 @@
"boot_boot" :
_("<p><b>Boot from Boot Partition</b> is one of the recommended options, the other is
<b>Boot from Root Partition</b>.</p>"),
+ "trusted_grub" :
+_("<p><b>Use Trusted Grub</b> means install trusted grub and use it. Option <i>Grafical Menu File</i> will be ignored.
+It is recommended to install grub to MBR</p>"),
"boot_mbr" :
_("<p><b>Boot from Master Boot Record</b> is not recommended if you have another operating system
installed on your computer</p>"),
@@ -53,7 +58,7 @@
in <b>Boot Loader Options</b> to update the master boot record if that is needed or configure your other boot manager
to start this section.</p>"),
"boot_custom" :
- _("<p><b>Custom Boot Partition</b> lets you choose a partition to boot from</p>"),
+ _("<p><b>Custom Boot Partition</b> lets you choose a partition to boot from.</p>"),
"serial" :
_("<p><b>Serial Connection Parameters</b> lets you define the paramters to use
for a serial console. Please see the grub documentation (<code>info grub</code>) for details.</p>"),
@@ -67,7 +72,7 @@
_("<p><b>Fallback Sections if default Fails</b> contains a list of section numbers
that will be used for booting in case the default section is unbootable.</p>"),
"hiddenmenu" :
- _("<p>Selecting <b>Hide Menu on Boot</b> will hide the boot menu</p>"),
+ _("<p>Selecting <b>Hide Menu on Boot</b> will hide the boot menu.</p>"),
"gfxmenu" :
_("<p><b>Graphical Menu File</b> defines the file to use for the graphical boot menu.</p>"),
"password" :
@@ -77,45 +82,49 @@
"type_image" :
_("<p><b>Image Section</b></p>"),
"image_image" :
- _("<p><b>Kernel Image</b> defines the kernel to boot. Either enter the name directly or choose via <b>Browse</b></p>"),
+ _("<p><b>Kernel Image</b> defines the kernel to boot. Either enter the name directly or choose via <b>Browse</b>.</p>"),
"image_root" :
_("<p><b>Root Device</b> sets the device to pass to the kernel as root device.</p>"),
"image_vgamode" :
- _("<p><b>Vga Mode</b> defines the VGA mode for the <i>console</i> the kernel should set when booting</p>"),
+ _("<p><b>Vga Mode</b> defines the VGA mode the kernel should set the <i>console</i> to when booting.</p>"),
"image_append" :
- _("<p><b>Optional Kernel Command Line Parameter</b> lets you define additional parameters to pass to the kernel</p>"),
+ _("<p><b>Optional Kernel Command Line Parameter</b> lets you define additional parameters to pass to the kernel.</p>"),
"image_initrd" :
- _("<p><b>Initial RAM Disk</b>, if non-empty, defines the initial ramdisk to use. Either enter the path and file name
-directly or choose by using <b>Browse</b></p>"),
+ _("<p><b>Initial RAM Disk</b>, if not empty, defines the initial ramdisk to use. Either enter the path and file name
+directly or choose by using <b>Browse</b>.</p>
+"),
"image_noverifyroot" :
_("<p>Selecting <b>Do not verify Filesystem before Booting</b> will skip all file system checks.</p>"),
"type_other" :
- _("<p>Select <b>Chainloader Section</b> if you want to define a section for booting an OS other than Linux</p>"),
+ _("<p>Select <b>Chainloader Section</b> if you want to define a section for booting an OS other than Linux.</p>"),
"other_lock" :
- _("<p>Setting <b>Use Password Protection</p> will require a password to select this section</p>"),
+ _("<p>Setting <b>Use Password Protection</p> will require a password to select this section.</p>"),
"other_chainloader" :
_("<p><b>Other System</b> lets you choose among the non-Linux operating systems found on your computer.</p>"),
"other_makeactive" :
_("<p>Select <b>Activate this Partition when selected for Boot</b> if your BIOS needs this flag set in order to boot it</p>"),
"other_blockoffset" :
_("<p><b>Block Offset for Chainloading</b> lets you specify the list of blocks to boot. In most cases you want
-to specify <code>+1</code> here. For specifics on blocklist notation see the grub documentation</p>"),
+to specify <code>+1</code> here. For specifics on blocklist notation see the grub documentation.</p>
+"),
"type_xen" :
- _("<p>Select <b>Xen Section</b> to add a new Linux kernel or other image,
-but to start it in a XEN environment.</p>"),
+ _("<p>Select <b>Xen Section</b> if you want to add a new Linux kernel or other image
+and start it in a XEN environment.</p>
+"),
"xen_image" :
- _("<p><b>Kernel Image</b> defines the kernel to boot. Either enter the name directly or choose via <b>Browse</b></p>"),
+ _("<p><b>Kernel Image</b> defines the kernel to boot. Either enter the name directly or choose via <b>Browse</b>.</p>"),
"xen_append" :
- _("<p><b>Optional Kernel Command Line Parameter</b> lets you define additional parameters to pass to the kernel</p>"),
+ _("<p><b>Optional Kernel Command Line Parameter</b> lets you define additional parameters to pass to the kernel.</p>"),
"xen_xen" :
_("<p><b>Hypervisor</b> specifies the Hypervisor to use.</p>"),
"xen_root" :
_("<p><b>Root Device</b> sets the device to pass to the kernel as root device.</p>"),
"xen_vgamode" :
- _("<p><b>Vga Mode</b> defines the VGA mode for the <i>console</i> the kernel should set when booting</p>"),
+ _("<p><b>Vga Mode</b> defines the VGA mode the kernel should set the <i>console</i> to when booting.</p>"),
"xen_initrd" :
- _("<p><b>Initial RAM Disk</b>,if non-empty, defines the initial ramdisk to use. Either enter the path and file name
-directly or choose by using <b>Browse</b></p>"),
+ _("<p><b>Initial RAM Disk</b>,if not empty, defines the initial ramdisk to use. Either enter the path and file name
+directly or choose by using <b>Browse</b>.</p>
+"),
"type_menu" :
_("<p><b>Menu Section</b></p>"),
"menu_root" :
@@ -124,6 +133,16 @@
_("<p><b>Menu Description File<b></p>"),
"other_remap" :
_("<p><b>Map Section to the First Disk from Device Map</b> Windows usually need to be on the first disk.</p>"),
+ "MeasuresTableHelp" :
+ _("<p><b>Measures</b> includes measured files with PCR. Change table is possible via buttons: <b>Add</b> ,
+<b>Edit</b> and <b>Delete</b></p>"),
+ "PCRKernelHelp" :
+ _("<p><b>PCR Index of Kernel<b> is Platform Configuration Register for kernel</p>"),
+ "PCRInitrdHelp" :
+ _("<p><b>PCR Index of Kernel<b> is Platform Configuration Register for initrd</p>"),
+ "PCRChainloaderHelp" :
+ _("<p><b>PCR Index of Kernel<b> is Platform Configuration Register for chainloader</p>"),
+
];
@@ -133,6 +152,7 @@
"timeout" : _("Timeout in Seconds"),
"default" : _("Default Boot Section"),
"generic_mbr" : _("Write generic Boot Code to MBR"),
+ "trusted_grub" : _("Use Trusted Grub"),
"boot_custom" : _("Custom Boot Partition"),
"boot_mbr" : _("Boot from Master Boot Record"),
"boot_root" : _("Boot from Root Partition"),
@@ -141,7 +161,7 @@
"former_default_image_flavor": _("Former default Image Flavor"),
"serial" : _("Serial Connection Parameters"),
"terminal" : _("Terminal Definition"),
- "fallback" : _("Fallback Sections if default Fails"),
+ "fallback" : _("Fallback Sections if Default fails"),
"hiddenmenu" : _("Hide Menu on Boot"),
"gfxmenu" : _("Graphical Menu File"),
"password" : _("Password for the Menu Interface"),
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-bootloader-2.17.15/src/grub/Makefile.am new/yast2-bootloader-2.17.16/src/grub/Makefile.am
--- old/yast2-bootloader-2.17.15/src/grub/Makefile.am 2008-09-02 13:32:43.000000000 +0200
+++ new/yast2-bootloader-2.17.16/src/grub/Makefile.am 2008-09-08 17:53:16.000000000 +0200
@@ -6,7 +6,8 @@
ynclude_DATA = \
helps.ycp \
- misc.ycp
+ misc.ycp \
+ trusted_grub_edit.ycp
EXTRA_DIST = \
$(ynclude_DATA)
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-bootloader-2.17.15/src/grub/trusted_grub_edit.ycp new/yast2-bootloader-2.17.16/src/grub/trusted_grub_edit.ycp
--- old/yast2-bootloader-2.17.15/src/grub/trusted_grub_edit.ycp 1970-01-01 01:00:00.000000000 +0100
+++ new/yast2-bootloader-2.17.16/src/grub/trusted_grub_edit.ycp 2008-09-08 17:53:16.000000000 +0200
@@ -0,0 +1,356 @@
+{
+
+textdomain "bootloader";
+
+import "CWM";
+import "Label";
+import "BootCommon";
+import "Popup";
+
+include "bootloader/grub/helps.ycp";
+
+
+/**
+ * Init function of widget
+ * @param widget string id of the widget
+ */
+
+void InitMeasuresTable(string widget)
+{
+ map meas = BootCommon::current_section["measure"]:$[];
+ list measures = [];
+
+ foreach(string file, string pcr, meas, {
+ measures = add(measures, `item(`id(file), file, pcr));
+ });
+
+ UI::ChangeWidget (`id (`measures), `Items, measures);
+}
+
+
+
+void AddEditMeasure (string file, string pcr)
+{
+ map meas = BootCommon::current_section["measure"]:$[];
+ string orig_file = file;
+ any ret = nil;
+
+ if (pcr == "")
+ pcr ="8";
+
+ UI::OpenDialog( (file != "") ? `Label( _("Edit Measure")): `Label( _("Add New Measure") ),
+ `VBox(
+ `HBox(
+ `InputField(`id(`measur), _("Measure File"), file),
+ `VBox ( `Label(""),
+ `PushButton(`id(`br), Label::BrowseButton())
+ )
+ ),
+ `Left(`IntField(`id(`pcr), _("PCR Index of File"),0, 100, tointeger(pcr))),
+ `HBox(
+ `PushButton(`id(`cancel), Label::CancelButton()),
+ `PushButton(`id(`ok), Label::OKButton())
+ )
+ )
+ ); // end of UI::OpenDialog(
+
+ while (true) {
+ ret = UI::UserInput();
+ if (ret == `br) {
+ string val = UI::AskForExistingFile ("/","*.*",_("Please Select File"));
+ UI::ChangeWidget(`id(`measur), `Value, val);
+ } else if ( ret == `ok ) {
+ string new_file = tostring(UI::QueryWidget(`id(`measur), `Value));
+ string new_pcr = tostring(UI::QueryWidget(`id(`pcr), `Value));
+ if (file != "")
+ {
+ meas = remove(meas, file);
+ }
+ meas[new_file] = new_pcr;
+ break;
+ } else if (ret == `cancel) {
+ break;
+ }
+ };
+ BootCommon::current_section["measure"] = meas;
+
+ UI::CloseDialog();
+}
+
+/**
+ * Handle function of a widget
+ * @param widget string widget key
+ * @param event map event description of event that occured
+ * @return symbol to return to wizard sequencer, or nil
+ */
+symbol HandleMeasuresTable (string widget, map event)
+{
+
+ any op = event["ID"]:nil;
+ if (event["ID"]:nil == `measures
+ && event["EventReason"]:"" == "Activated"
+ && event["EventType"]:"" == "WidgetEvent")
+ {
+ op = `edit;
+ }
+ map meas = BootCommon::current_section["measure"]:$[];
+
+ string current = (string)UI::QueryWidget (`id (`measures), `CurrentItem);
+ string act_file = "";
+ string act_pcr = "";
+
+ if ((current != nil) && (current != ""))
+ {
+ act_file = current;
+ act_pcr = meas[current]:"";
+ }
+ if (op == `add)
+ {
+ AddEditMeasure("", "");
+ InitMeasuresTable(widget);
+ } else if (op == `edit) {
+
+ AddEditMeasure(act_file, act_pcr);
+ InitMeasuresTable(widget) ;
+ } else if (op == `delete) {
+ string message = sformat(_("Really delete measured file: %1 with PCR: %2 ?"), act_file, act_pcr);
+ if (Popup::YesNo(message))
+ {
+ meas = remove(meas,act_file);
+ BootCommon::current_section["measure"] = meas;
+ InitMeasuresTable(widget);
+ }
+ }
+
+}
+/**
+ * Store function of a widget
+ * @param widget string widget key
+ * @param event map event that caused the operation
+ */
+void StoreMeasuresTable (string widget, map event)
+{
+ if ((size(BootCommon::current_section["measure"]:$[]) == 0) &&
+ (haskey(BootCommon::current_section, "measure")))
+ BootCommon::current_section = remove(BootCommon::current_section, "measure");
+}
+
+/**
+ * Init function of widget
+ * @param widget string id of the widget
+ */
+
+void InitPCRKernel (string widget) {
+ if ((BootCommon::current_section["type"]:"" == "image") || (BootCommon::current_section["type"]:"" == "xen"))
+ {
+ UI::ChangeWidget (`id ("PCRKernel"), `Enabled, true);
+ UI::ChangeWidget (`id ("PCRKernel"), `Value, tointeger(BootCommon::current_section["imagepcr"]:"8"));
+ } else {
+ UI::ChangeWidget (`id ("PCRKernel"), `Enabled, false);
+ }
+}
+
+
+/**
+ * Store function of a widget
+ * @param widget string widget key
+ * @param event map event that caused the operation
+ */
+void StorePCRKernel (string widget, map event) {
+ if ((BootCommon::current_section["type"]:"" == "image") ||
+ (BootCommon::current_section["type"]:"" == "xen"))
+ BootCommon::current_section["imagepcr"] = tostring(UI::QueryWidget (`id ("PCRKernel"), `Value));
+}
+
+/**
+ * Init function of widget
+ * @param widget string id of the widget
+ */
+
+void InitPCRInitrd (string widget) {
+ if ((BootCommon::current_section["type"]:"" == "image") || (BootCommon::current_section["type"]:"" == "xen"))
+ {
+ UI::ChangeWidget (`id ("PCRInitrd"), `Enabled, true);
+ UI::ChangeWidget (`id ("PCRInitrd"), `Value, tointeger(BootCommon::current_section["initrdpcr"]:"8"));
+ } else {
+ UI::ChangeWidget (`id ("PCRInitrd"), `Enabled, false);
+ }
+}
+
+
+/**
+ * Store function of a widget
+ * @param widget string widget key
+ * @param event map event that caused the operation
+ */
+void StorePCRInitrd (string widget, map event) {
+ if ((BootCommon::current_section["type"]:"" == "image") ||
+ (BootCommon::current_section["type"]:"" == "xen"))
+ BootCommon::current_section["initrdpcr"] = tostring(UI::QueryWidget (`id ("PCRInitrd"), `Value));
+}
+
+
+
+/**
+ * Init function of widget
+ * @param widget string id of the widget
+ */
+
+void InitPCRChainloader (string widget) {
+ if (BootCommon::current_section["type"]:"" != "other")
+ UI::ChangeWidget (`id ("PCRChainloader"), `Enabled, false);
+ else
+ UI::ChangeWidget (`id ("PCRChainloader"), `Value, tointeger(BootCommon::current_section["chainloaderpcr"]:"8"));
+}
+
+
+/**
+ * Store function of a widget
+ * @param widget string widget key
+ * @param event map event that caused the operation
+ */
+void StorePCRChainloader (string widget, map event) {
+ if (BootCommon::current_section["type"]:"" == "other")
+ BootCommon::current_section["chainloaderpcr"] = tostring(UI::QueryWidget (`id ("PCRChainloader"), `Value));
+}
+
+
+
+map > wid_handling = $[
+
+
+ "MeasuresTable" : $[
+ //TRANSLATORS: RadioButtonGroup Label
+ "label" : _("Measurement of Grub"),
+ "widget" : `custom,
+ "custom_widget" : `VBox(`Frame (_("Measures"),
+ `HBox (`HSpacing (2), `VBox (
+ `VSpacing (1),
+ `Table (`id (`measures),
+ `opt (`keepSorting, `notify),
+ `header (
+ // table header, Measure
+ _("Measure"),
+ // table header, PCR
+ _("PCR")
+ ), []
+ ),
+
+ `HBox (
+ `HStretch (),
+ `PushButton (`id (`add), `opt (`key_F3), Label::AddButton ()),
+ `PushButton (`id (`edit), `opt(`key_F5), Label::EditButton ()),
+ `PushButton (`id (`delete), `opt(`key_F5), Label::DeleteButton ()),
+ `HStretch ()
+ ),
+ `VSpacing (1)
+ )
+
+ )
+ )),
+ "init" : InitMeasuresTable,
+ "handle" : HandleMeasuresTable,
+ "store" : StoreMeasuresTable,
+ "help" : grub_help_messages["MeasuresTableHelp"]:"",
+
+ ],
+
+ "PCRKernel" : $[
+ //TRANSLATORS: IntField Label
+ "label" : _("PCR Index of &Kernel"),
+ "widget" : `intfield,
+ "minimum" : 0,
+ "maximum" : 100,
+ "init" : InitPCRKernel,
+ //"handle" :
+ "store" : StorePCRKernel,
+ "help" : grub_help_messages["PCRKernelHelp"]:"",
+ ],
+
+
+
+ "PCRInitrd" : $[
+ //TRANSLATORS: IntField Label
+ "label" : _("PCR Index of &Initrd"),
+ "widget" : `intfield,
+ "minimum" : 0,
+ "maximum" : 100,
+ "init" : InitPCRInitrd,
+ //"handle" :
+ "store" : StorePCRInitrd,
+ "help" : grub_help_messages["PCRInitrdHelp"]:"",
+ ],
+
+
+ "PCRChainloader" : $[
+ //TRANSLATORS: IntField Label
+ "label" : _("PCR &Index of Chainloader"),
+ "widget" : `intfield,
+ "minimum" : 0,
+ "maximum" : 100,
+ "init" : InitPCRChainloader,
+ //"handle" :
+ "store" : StorePCRChainloader,
+ "help" : grub_help_messages["PCRChainloaderHelp"]:"",
+ ],
+
+];
+
+
+
+
+symbol TrustedGrubDetails () {
+ y2milestone ("Running i386 loader details dialog");
+
+ term contents = `HBox (`HSpacing (2), `VBox (
+ "MeasuresTable",
+ `VSpacing (1),
+ "PCRKernel",
+ `VSpacing (1),
+ "PCRInitrd",
+ `VSpacing (1),
+ "PCRChainloader",
+ `VStretch ()
+ ), `HSpacing (2));
+
+ list<string> widget_names = ["MeasuresTable", "PCRKernel", "PCRInitrd", "PCRChainloader",];
+ map > widget_descr = wid_handling;
+ // dialog caption
+ string caption = _("Trusted GRUB Options");
+ return CWM::ShowAndRun ($[
+ "widget_descr" : widget_descr,
+ "widget_names" : widget_names,
+ "contents" : contents,
+ "caption" : caption,
+ "back_button" : Label::BackButton (),
+ "abort_button" : Label::CancelButton (),
+ "next_button" : Label::OKButton (),
+ ]);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-bootloader-2.17.15/src/modules/BootCommon.ycp new/yast2-bootloader-2.17.16/src/modules/BootCommon.ycp
--- old/yast2-bootloader-2.17.15/src/modules/BootCommon.ycp 2008-09-03 12:02:19.000000000 +0200
+++ new/yast2-bootloader-2.17.16/src/modules/BootCommon.ycp 2008-09-08 17:53:16.000000000 +0200
@@ -15,7 +15,7 @@
* Joachim Plack
* Olaf Dabrunz
*
- * $Id: BootCommon.ycp 50600 2008-09-03 10:02:18Z jsrain $
+ * $Id: BootCommon.ycp 50815 2008-09-08 15:01:09Z juhliarik $
*
*/
@@ -118,6 +118,13 @@
*/
global string BootPartitionDevice = "";
+
+/**
+ * The variable indicate using of trusted GRUB
+ */
+
+global boolean isTrustedGrub = true;
+
/**
* string representing device name of / partition
*/
@@ -654,7 +661,8 @@
*/
global define boolean Import (map settings) {
globals = settings["global"]:$[];
- sections = settings["sections"]:[];
+ sections = importSections(settings["sections"]:[]);
+
// FIXME: for grub, repl_mbr is replaced by globals["generic_mbr"]; same
// for activate; remove the following when no bootloader uses these
// variables any more
@@ -792,11 +800,12 @@
// FATE: #110038: Serial console
// check and add console key with value for sections
addConsole();
+ /*
list