YaST Commits
Threads by month
- ----- 2024 -----
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
December 2008
- 24 participants
- 595 discussions
[yast-commit] r54284 - in /branches/SuSE-Code-11-Branch/bootloader: VERSION package/yast2-bootloader.changes
by juhliarik@svn.opensuse.org 19 Dec '08
by juhliarik@svn.opensuse.org 19 Dec '08
19 Dec '08
Author: juhliarik
Date: Fri Dec 19 11:10:13 2008
New Revision: 54284
URL: http://svn.opensuse.org/viewcvs/yast?rev=54284&view=rev
Log:
new version 2.17.48
Modified:
branches/SuSE-Code-11-Branch/bootloader/VERSION
branches/SuSE-Code-11-Branch/bootloader/package/yast2-bootloader.changes
Modified: branches/SuSE-Code-11-Branch/bootloader/VERSION
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-Branch/bootloade…
==============================================================================
--- branches/SuSE-Code-11-Branch/bootloader/VERSION (original)
+++ branches/SuSE-Code-11-Branch/bootloader/VERSION Fri Dec 19 11:10:13 2008
@@ -1 +1 @@
-2.17.47
+2.17.48
Modified: branches/SuSE-Code-11-Branch/bootloader/package/yast2-bootloader.changes
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-Branch/bootloade…
==============================================================================
--- branches/SuSE-Code-11-Branch/bootloader/package/yast2-bootloader.changes (original)
+++ branches/SuSE-Code-11-Branch/bootloader/package/yast2-bootloader.changes Fri Dec 19 11:10:13 2008
@@ -1,4 +1,10 @@
-------------------------------------------------------------------
+Fri Dec 19 11:00:09 CET 2008 - juhliarik(a)suse.cz
+
+- added fix for changinf EFI label in running system (bnc #269198)
+- 2.17.48
+
+-------------------------------------------------------------------
Wed Dec 17 14:24:57 CET 2008 - juhliarik(a)suse.cz
- added fix for problem with primary language in GRUB (bnc #447053)
--
To unsubscribe, e-mail: yast-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: yast-commit+help(a)opensuse.org
1
0
[yast-commit] r54283 - /branches/SuSE-Code-11-Branch/bootloader/src/modules/BootELILO.ycp
by juhliarik@svn.opensuse.org 19 Dec '08
by juhliarik@svn.opensuse.org 19 Dec '08
19 Dec '08
Author: juhliarik
Date: Fri Dec 19 10:59:22 2008
New Revision: 54283
URL: http://svn.opensuse.org/viewcvs/yast?rev=54283&view=rev
Log:
added fix for changing EFI label in running system
Modified:
branches/SuSE-Code-11-Branch/bootloader/src/modules/BootELILO.ycp
Modified: branches/SuSE-Code-11-Branch/bootloader/src/modules/BootELILO.ycp
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-Branch/bootloade…
==============================================================================
--- branches/SuSE-Code-11-Branch/bootloader/src/modules/BootELILO.ycp (original)
+++ branches/SuSE-Code-11-Branch/bootloader/src/modules/BootELILO.ycp Fri Dec 19 10:59:22 2008
@@ -479,6 +479,95 @@
}
+/** bnc #269198 change efi-label
+ * Function check if there exist same efi-label or different for
+ * same partition if efi-label is different delete it and create new one
+ * if it is same nothing to do it.
+ */
+
+boolean updateEFILabel()
+{
+ boolean ret = true;
+ string cmd = "";
+ map mp = Storage::GetMountPoints();
+ string boot_dev = mp[getEfiMountPoint (), 0]:"/boot/efi";
+ map splited = Storage::GetDiskPartition (boot_dev);
+ any boot_part = splited["nr"]:0;
+ any boot_disk = splited["disk"]:"";
+
+
+ // command for checking same boot entry in efi bnc #438215 (YaST creates efibootloader entry twice)
+ cmd = sformat("/usr/sbin/efibootmgr -v | grep -c \"%1.*HD(%2.*File(.\\efi.\\SuSE.\\elilo.efi)\"",
+ BootCommon::globals["boot_efilabel"]:"", tomyhexa(boot_part));
+
+ // check how many entries with same label and partition is actually in efi
+ y2milestone("run command %1", cmd);
+ map out = (map)SCR::Execute (.target.bash_output, cmd);
+ y2milestone("output of command %1", out);
+
+ // check number of same boot entries in efi
+ // if boot entry is added -> don't add it again
+ if (deletechars(out["stdout"]:"","\n") != "0")
+ {
+ if (out["exit"]:0 == 0)
+ y2milestone("Skip adding new boot entry - EFI Label exist");
+ else
+ y2error("Calling command %1 faild", cmd);
+ return ret;
+
+ } else {
+
+ cmd = sformat("/usr/sbin/efibootmgr -v | grep -c \"HD(%1.*File(.\\efi.\\SuSE.\\elilo.efi)\"", tomyhexa(boot_part));
+ // check how many entries with same label and partition is actually in efi
+ y2milestone("run command %1", cmd);
+ map out = (map)SCR::Execute (.target.bash_output, cmd);
+ y2milestone("output of command %1", out);
+
+ // check how many boot entries have same number of partitions
+ if (deletechars(out["stdout"]:"","\n") != "0")
+ {
+ // delete old boot entry
+
+ cmd = sformat("efibootmgr -v |grep \"HD(%1.*File(.\\efi.\\SuSE.\\elilo.efi)\" | cut -d \" \" -f 1",
+ tomyhexa(boot_part));
+ y2milestone("run command %1", cmd);
+ out = (map)SCR::Execute (.target.bash_output, cmd);
+ y2milestone("output of command %1", out);
+
+ string boot_entries = out["stdout"]:"";
+ y2milestone("EFI boot entries with \"same\" boot partition %1",boot_entries);
+
+ list<string> list_boot_entries = splitstring(boot_entries, "\n");
+
+ y2milestone("list_boot_entries=%1",list_boot_entries);
+
+ foreach(string entry, list_boot_entries,
+ {
+ if ((deletechars(entry, "\n*") != "") && (deletechars(entry, "\n*") != nil))
+ {
+ cmd = sformat("/usr/sbin/efibootmgr --delete-bootnum --bootnum %1 -q;",
+ substring (deletechars(entry, "\n*"),4, 4));
+ y2milestone("run command %1", cmd);
+ out = (map)SCR::Execute (.target.bash_output, cmd);
+ y2milestone("output of command %1", out);
+ }
+ });
+
+ }
+ // add new boot entry
+ string bl_logfile = "/var/log/YaST2/y2log_bootloader";
+ string bl_command = sformat ( "/usr/sbin/efibootmgr -v --create --label \"%1\" " +
+ "--disk %2 --part %3 " +
+ "--loader '\\efi\\SuSE\\elilo.efi' --write-signature >> %4 2>&1",
+ BootCommon::globals["boot_efilabel"]:"", boot_disk, boot_part, bl_logfile
+ );
+ ret = ret && installBootLoader (bl_command, bl_logfile);
+ }
+ return ret;
+}
+
+
+
/**
* Write bootloader settings to disk
* @return boolean true on success
@@ -496,6 +585,9 @@
computer, you need to load ELILO via the EFI shell."), 10);
}
+ if (Mode::normal())
+ updateEFILabel();
+
if (BootCommon::location_changed || create_efi_entry)
{
map mp = Storage::GetMountPoints();
--
To unsubscribe, e-mail: yast-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: yast-commit+help(a)opensuse.org
1
0
[yast-commit] r54282 - /tags/branch-Code-11-2_17_49/installation/
by locilka@svn.opensuse.org 18 Dec '08
by locilka@svn.opensuse.org 18 Dec '08
18 Dec '08
Author: locilka
Date: Thu Dec 18 18:09:19 2008
New Revision: 54282
URL: http://svn.opensuse.org/viewcvs/yast?rev=54282&view=rev
Log:
Created tag branch-Code-11-2_17_49 for installation
Added:
tags/branch-Code-11-2_17_49/installation/
- copied from r54281, branches/SuSE-Code-11-Branch/installation/
--
To unsubscribe, e-mail: yast-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: yast-commit+help(a)opensuse.org
1
0
18 Dec '08
Author: locilka
Date: Thu Dec 18 18:09:17 2008
New Revision: 54281
URL: http://svn.opensuse.org/viewcvs/yast?rev=54281&view=rev
Log:
Created tag branch-Code-11-2_17_49
Added:
tags/branch-Code-11-2_17_49/
--
To unsubscribe, e-mail: yast-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: yast-commit+help(a)opensuse.org
1
0
[yast-commit] r54280 - /branches/SuSE-Code-11-Branch/installation/VERSION
by locilka@svn.opensuse.org 18 Dec '08
by locilka@svn.opensuse.org 18 Dec '08
18 Dec '08
Author: locilka
Date: Thu Dec 18 18:09:10 2008
New Revision: 54280
URL: http://svn.opensuse.org/viewcvs/yast?rev=54280&view=rev
Log:
New version
Nadrazi!
Modified:
branches/SuSE-Code-11-Branch/installation/VERSION
Modified: branches/SuSE-Code-11-Branch/installation/VERSION
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-Branch/installat…
==============================================================================
--- branches/SuSE-Code-11-Branch/installation/VERSION (original)
+++ branches/SuSE-Code-11-Branch/installation/VERSION Thu Dec 18 18:09:10 2008
@@ -1 +1 @@
-2.17.48
+2.17.49
--
To unsubscribe, e-mail: yast-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: yast-commit+help(a)opensuse.org
1
0
[yast-commit] r54279 - in /trunk/installation: control/docs/ control/docs/examples/ package/
by locilka@svn.opensuse.org 18 Dec '08
by locilka@svn.opensuse.org 18 Dec '08
18 Dec '08
Author: locilka
Date: Thu Dec 18 18:06:00 2008
New Revision: 54279
URL: http://svn.opensuse.org/viewcvs/yast?rev=54279&view=rev
Log:
- Updated control file documentation (bnc #438678).
Added:
trunk/installation/control/docs/examples/update-difffileformat.xml
trunk/installation/control/docs/examples/update-oes-example.xml
trunk/installation/control/docs/update-section.xml
Modified:
trunk/installation/control/docs/Makefile.am
trunk/installation/control/docs/control-section.xml
trunk/installation/package/yast2-installation.changes
Modified: trunk/installation/control/docs/Makefile.am
URL: http://svn.opensuse.org/viewcvs/yast/trunk/installation/control/docs/Makefi…
==============================================================================
--- trunk/installation/control/docs/Makefile.am (original)
+++ trunk/installation/control/docs/Makefile.am Thu Dec 18 18:06:00 2008
@@ -13,7 +13,7 @@
pdf: control-doc.pdf
-html/index.html: control-doc.xml
+html/index.html: $(xml_files)
XML_CATALOG_FILES=@XML_CATALOG@ \
@XSLTPROC@ @XSLTPROC_FLAGS@ --xinclude \
@STYLESHEET_HTML@ $<
Modified: trunk/installation/control/docs/control-section.xml
URL: http://svn.opensuse.org/viewcvs/yast/trunk/installation/control/docs/contro…
==============================================================================
--- trunk/installation/control/docs/control-section.xml (original)
+++ trunk/installation/control/docs/control-section.xml Thu Dec 18 18:06:00 2008
@@ -1519,4 +1519,7 @@
<emphasis>ProductControl::GetTranslatedText (text_id)</emphasis> call.</para>
</section>
</section>
+
+ <xi:include href="update-section.xml" parse="xml"
+ xmlns:xi="http://www.w3.org/2001/XInclude"/>
</section>
Added: trunk/installation/control/docs/examples/update-difffileformat.xml
URL: http://svn.opensuse.org/viewcvs/yast/trunk/installation/control/docs/exampl…
==============================================================================
--- trunk/installation/control/docs/examples/update-difffileformat.xml (added)
+++ trunk/installation/control/docs/examples/update-difffileformat.xml Thu Dec 18 18:06:00 2008
@@ -0,0 +1,142 @@
+
+<?xml version="1.0"?>
+<productDefines xmlns="http://www.suse.com/1.0/yast2ns"
+ xmlns:config="http://www.suse.com/1.0/configns">
+ <!-- .mo-file must be in installation tarball -->
+ <textdomain>OES</textdomain>
+ <!-- these options override base product's ones -->
+ <globals>
+ <additional_kernel_parameters></additional_kernel_parameters>
+ </globals>
+ <software>
+ <selection_type config:type="symbol">auto</selection_type>
+ </software>
+ <partitioning>
+ <evms_config config:type="boolean">false</evms_config>
+ <root_max_size>10G</root_max_size>
+ </partitioning>
+ <network>
+ <force_static_ip config:type="boolean">false</force_static_ip>
+ <network_manager>laptop</network_manager>
+ </network>
+ <!-- base product's list is preserved, these are appended -->
+ <clone_modules config:type="list">
+ <clone_module>printer</clone_module>
+ </clone_modules>
+ <proposals config:type="list">
+<!-- put proposals for standalone product installation here -->
+ </proposals>
+<!-- workflow for standalone product installation -->
+ <workflows config:type="list">
+ <workflow>
+ <defaults>
+ <archs>all</archs>
+ </defaults>
+ <label>Preparation</label>
+ <!-- mode and stage must be set this way -->
+ <mode>installation</mode>
+ <stage>normal</stage>
+ <modules config:type="list">
+ <module>
+ <label>License Agreement</label>
+ <name>license</name>
+ <enable_back>no</enable_back>
+ <enable_next>yes</enable_next>
+ </module>
+ </modules>
+ </workflow>
+ </workflows>
+ <!-- stuff for installation together with base products -->
+ <update>
+ <proposals config:type="list">
+ <proposal>
+ <label>OES Installation Settings</label>
+ <mode>installation,demo,autoinstallation</mode>
+ <stage>initial</stage>
+ <name>initial</name>
+ <enable_skip>no</enable_skip>
+ <append_modules config:type="list">
+ <append_module>module_1</append_module>
+ <append_module>module_2</append_module>
+ </append_modules>
+ <remove_modules config:type="list">
+ <remove_module>module_3</remove_module>
+ <remove_module>module_4</remove_module>
+ </remove_modules>
+ <replace_modules config:type="list">
+ <replace_module>
+ <replace>old_module</replace>
+ <new_modules config:type="list">
+ <new_module>module_5</new_module>
+ <new_module>module_6</new_module>
+ </new_modules>
+ </replace_module>
+ </replace_modules>
+ </proposal>
+ </proposals>
+ <workflows config:type="list">
+ <workflow>
+ <defaults>
+ <archs>all</archs>
+ <enable_back>no</enable_back>
+ <enable_next>no</enable_next>
+ </defaults>
+ <mode>installation</mode>
+ <stage>initial</stage>
+ <append_modules config:type="list">
+ <module>
+ <heading>yes</heading>
+ <label>OES configuration</label>
+ </module>
+ <module>
+ <label>Perform Installation</label>
+ <name>a1_netsetup</name>
+ </module>
+ <module>
+ <label>Perform Installation</label>
+ <name>a2_netprobe</name>
+ </module>
+ </append_modules>
+ <remove_modules config:type="list">
+ <remove_module>finish</remove_module>
+ </remove_modules>
+ <insert_modules config:type="list">
+ <insert_module>
+ <before>perform</before>
+ <modules config:type="list">
+ <module>
+ <label>Perform Installation</label>
+ <name>i1_netprobe</name>
+ </module>
+ </modules>
+ </insert_module>
+ </insert_modules>
+ <replace_modules config:type="list">
+ <replace_module>
+ <replace>language</replace>
+ <modules config:type="list">
+ <module>
+ <label>Perform Installation</label>
+ <name>r1_language</name>
+ </module>
+ </modules>
+ </replace_module>
+ </replace_modules>
+ </workflow>
+ </workflows>
+ <inst_finish>
+ <before_chroot config:type=âlistâ>
+ <module>before_chroot_1</module>
+ <module>before_chroot_2</module>
+ </before_chroot>
+ <after_chroot config:type=âlistâ>
+ <module>after_chroot_1</module>
+ <module>after_chroot_2</module>
+ </after_chroot>
+ <before_umount config:type=âlistâ>
+ <module>before_umount_1</module>
+ <module>before_umount_2</module>
+ </before_umount>
+ </inst_finish>
+ </update>
+</productDefines>
Added: trunk/installation/control/docs/examples/update-oes-example.xml
URL: http://svn.opensuse.org/viewcvs/yast/trunk/installation/control/docs/exampl…
==============================================================================
--- trunk/installation/control/docs/examples/update-oes-example.xml (added)
+++ trunk/installation/control/docs/examples/update-oes-example.xml Thu Dec 18 18:06:00 2008
@@ -0,0 +1,122 @@
+
+<?xml version="1.0"?>
+<productDefines xmlns="http://www.suse.com/1.0/yast2ns"
+ xmlns:config="http://www.suse.com/1.0/configns">
+<textdomain>OES</textdomain>
+<network>
+ <force_static_ip config:type="boolean">true</force_static_ip>
+ <network_manager_is_default config:type="boolean">false</network_manager_is_default>
+</network>
+<proposals config:type="list">
+ <proposal>
+ <name>oes</name>
+ <stage>continue,normal</stage>
+ <mode>installation</mode>
+ <proposal_modules config:type="list">
+ <proposal_module>oes-ldap</proposal_module>
+ <proposal_module>imanager</proposal_module>
+ <proposal_module>lifeconsole</proposal_module>
+ <proposal_module>linux-user-mgmt</proposal_module>
+ <proposal_module>eguide</proposal_module>
+ <proposal_module>novell-samba</proposal_module>
+ <proposal_module>ifolder2</proposal_module>
+ <proposal_module>ifolder</proposal_module>
+ <proposal_module>ifolderwebaccess</proposal_module>
+ <proposal_module>iprint</proposal_module>
+ <proposal_module>nss</proposal_module>
+ <proposal_module>netstorage</proposal_module>
+ <proposal_module>novell-quickfinder</proposal_module>
+ <proposal_module>novell-vo</proposal_module>
+ <proposal_module>ncs</proposal_module>
+ <proposal_module>ncpserver</proposal_module>
+ <proposal_module>sms</proposal_module>
+ </proposal_modules>
+ </proposal>
+</proposals>
+<workflows config:type="list">
+ <workflow>
+ <label>Preparation</label>
+ <defaults>
+ <archs>all</archs>
+ </defaults>
+ <mode>installation</mode>
+ <stage>normal</stage>
+ <modules config:type="list">
+ <module>
+ <label>License Agreement</label>
+ <name>inst_license</name>
+ <enable_back>no</enable_back>
+ <enable_next>yes</enable_next>
+ </module>
+ <module>
+ <label>OES Configuration</label>
+ <name>inst_check_cert</name>
+ <enable_back>no</enable_back>
+ <enable_next>yes</enable_next>
+ </module>
+ <module>
+ <label>OES Configuration</label>
+ <name>inst_proposal</name>
+ <arguments>false,false,`product</arguments>
+ <enable_back>no</enable_back>
+ <enable_next>yes</enable_next>
+ </module>
+ <module>
+ <label>OES Configuration</label>
+ <name>inst_oes</name>
+ <enable_back>yes</enable_back>
+ <enable_next>yes</enable_next>
+ </module>
+ <module>
+ <label>OES Configuration</label>
+ <name>inst_oes_congratulate</name>
+ <enable_back>no</enable_back>
+ <enable_next>yes</enable_next>
+ </module>
+ </modules>
+ </workflow>
+</workflows>
+<update>
+ <workflows config:type="list">
+ <workflow>
+ <defaults>
+ <archs>all</archs>
+ <enable_back>no</enable_back>
+ <enable_next>no</enable_next>
+ </defaults>
+ <stage>continue</stage>
+ <mode>installation</mode>
+ <append_modules config:type="list">
+ <module>
+ <label>OES Configuration</label>
+ <name>inst_oes_congratulate</name>
+ </module>
+ </append_modules>
+ <insert_modules config:type="list">
+ <insert_module>
+ <before>suseconfig</before>
+ <modules config:type="list">
+ <module>
+ <label>OES Configuration</label>
+ <name>inst_check_cert</name>
+ </module>
+ <module>
+ <label>OES Configuration</label>
+ <name>inst_edirectory</name>
+ </module>
+ <module>
+ <label>OES Configuration</label>
+ <name>inst_proposal</name>
+ <arguments>false,true,`product</arguments>
+ </module>
+ <module>
+ <label>OES Configuration</label>
+ <name>inst_oes</name>
+ </module>
+ </modules>
+ </insert_module>
+ </insert_modules>
+ </workflow>
+ </workflows>
+ </update>
+</productDefines>
Added: trunk/installation/control/docs/update-section.xml
URL: http://svn.opensuse.org/viewcvs/yast/trunk/installation/control/docs/update…
==============================================================================
--- trunk/installation/control/docs/update-section.xml (added)
+++ trunk/installation/control/docs/update-section.xml Thu Dec 18 18:06:00 2008
@@ -0,0 +1,528 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!-- Section originally written by Jiri Srain /jsrain(a)suse.cz/ -->
+<section id="update">
+ <title>Add-on Product Installation Workflow Specification</title>
+ <section id="update-intro">
+ <title>Introduction</title>
+
+ <section id="update-intro-proddep">
+ <title>Product dependency</title>
+ <para>Everywhere, product B depends on product A, there is no dependency
+ related to product C. A, B and C are add-on products.</para>
+ </section>
+
+ <section id="update-intro-order">
+ <title>Order of updates of the workflow/wizard</title>
+ <para>If there are two add-on products which want to insert their steps
+ into the same location of the installation workflow (or proposal), they
+ are inserted in the same order as the products are added. A must be added
+ before B (otherwise adding B fails), steps of A are always prior to steps
+ of B.</para>
+ </section>
+
+ <section id="update-intro-items">
+ <title>Steps/Proposal Items Naming</title>
+ <para>In order to avoid collisions of internal names of proposal items or
+ sequence steps, all items should have its internal name prefixed by the
+ add-on product name.</para>
+ </section>
+
+ <section id="update-updposs">
+ <title>Update possibilities</title>
+
+ <section id="update-updposs-insert">
+ <title>Insert an item into proposal</title>
+ <para>Item is always added at the end of the proposal. Multiple
+ items are possible.</para>
+ </section>
+
+ <section id="update-updposs-remove">
+ <title>Remove an item from proposal</title>
+ <para>Specified item(s) are removed from proposal. Useful when
+ add-on product extends functionality of the base product. If
+ product B wants to remove an item of product A, must specify the
+ name of the product as well. Product C cannot remove items of
+ products A or B (and vice versa), product A cannot remove items
+ of product B.</para>
+ </section>
+
+ <section id="update-updposs-replace">
+ <title>Replace an item in proposal</title>
+ <para>Usable in the same cases as the case above. If an item has
+ been replaced by another item(s) of product A before applying
+ changes of product B, the item(s) of product A will be replaced
+ by item(s) of product B. Items of product C cannot be replaced by
+ items of product A or B (and vice versa), such combination of
+ products cannot be installed at the same time.</para>
+ </section>
+
+ <section id="update-updposs-insert">
+ <title>Insert steps to installation sequence</title>
+ <para>Before each step of base product installation, additional
+ step can be inserted (eg. another proposal). For the order of
+ additionally added steps, the same rules as for items of proposal
+ will be applied.</para>
+ </section>
+
+ <section id="update-updposs-append">
+ <title>Append steps to installation sequence</title>
+ <para>The steps can be appended at the end of installation
+ sequence.</para>
+ </section>
+
+ <section id="update-updposs-remoandrepl">
+ <title>Remove and replace steps in installation sequence</title>
+ <para>The same rules for removing and replacing steps of the
+ installation workflow as for proposal items will be applied.</para>
+ </section>
+
+ <section id="update-updposs-instfinish">
+ <title>Add, remove, replace items in inst_finish.ycp</title>
+ <para>The same rules as for steps of the installation workflow are
+ valid here. There will be some points in the inst_finish where
+ performing additional actions makes sense (at least one before
+ moving SCR to chroot and one after).</para>
+ </section>
+
+ <section id="update-updposs-replaceworkflow">
+ <title>Replace whole second-stage workflow</title>
+ <para>Add-on product may replace whole second stage of installation.
+ It should be used only in rare cases, as there is no possibility to
+ merge two workflows completely written from scratch. If a product
+ replaces the workflow, all changes of all products which replaced it
+ before (in case of installation of multiple products) are gone.
+ Add-on products selected after this product update the new workflow
+ (which may not work, as the steps usually have different naming).
+ This is perfectly OK if there are dependencies between add-on
+ products.</para>
+ <para>The workflow can be replaced only for specified installation
+ mode. If it is replaced, it must be replaced for all
+ architectures.</para>
+ </section>
+
+ <section id="update-updposs-addproposal">
+ <title>Adding a new proposal</title>
+ <para>New proposal can be added, as the proposal handling routines
+ are generic. The information which is for current product in control.xml
+ file has to be provided, and the proposal must be added as a step into
+ the installation workflow. Basically, adding proposal has two
+ steps:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>defining the proposal (name, items,...)</para>
+ </listitem>
+
+ <listitem>
+ <para>adding a new step to the workflow referring to the new
+ added proposal</para>
+ </listitem>
+ </itemizedlist>
+ </section>
+
+ <section id="update-updposs-replaceproposal">
+ <title>Replace or remove whole proposal</title>
+ <para>Is possible as replacing or removing a step of the installation
+ workflow.</para>
+ </section>
+ </section>
+
+ <section id="update-filelayout">
+ <title>File layout</title>
+ <section id="update-filelayout-addon">
+ <title>Add-on Product CD</title>
+ <para>There will be following files in the root directory of the
+ add-on product's CD:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>servicepack.tar.gz â tarball with files which are
+ needed for the installation, both together with base
+ product and separatelly. Special files inside this
+ tarball:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>installation.xml â the control file of the
+ add-on product</para>
+ </listitem>
+ <listitem>
+ <para>the whole tarball or installation.xml can be
+ missing if add-on product doesn't provide any custom
+ installer, in this case, only its packages are added
+ to the package manager dialog, and packages/patterns/...
+ required by the product are selected by the
+ solver</para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <para>(optional) setup.sh â script which starts the
+ installation automatically once the CD is in the
+ drive</para>
+ </listitem>
+
+ <listitem>
+ <para>(optional) files needed to make the CD bootable
+ (kernel, initrd, isolinux,...)</para>
+ </listitem>
+ </itemizedlist>
+ </section>
+
+ <section id="update-filelayout-wkfadapt">
+ <title>Workflow Adaptation</title>
+ <para>There is only a single control file to describe both an
+ add-on and standalone product installation. It is called
+ installation.xml. In principle, it contains a diff description
+ containing the changes to be applied to the installation workflow
+ plus a workflow, which is used for standalone product installation.
+ The reason why both installation methods are stored in a single
+ file is that the product features has to be shared as well as some
+ proposals and clients can be reused.</para>
+
+ <para>The proposals which are defined for standalone installation
+ are also available for the installation together with the base
+ product. They don't have to be defined twice.</para>
+
+ <para>The files are located in the top directory of the add-on
+ product installation source.</para>
+ </section>
+ </section>
+
+ <section id="update-difffileformat">
+ <title>Diff File Format</title>
+ <para>Because there are no really usable open source XML diff tools (the
+ existing ones are typically written in Java), we define a special purpose
+ file format aimed to cover the cases as described in the previous
+ chapter.</para>
+
+ <para>In principle, the format is a list of directives to be applied to
+ the existing control.xml. In principle, the file is a control file
+ defining its own proposals, workflows etc. The control file has a special
+ section, which defines changes to the existing workflow and
+ proposals.</para>
+
+ <programlisting>
+ <xi:include href="examples/update-difffileformat.xml" parse="text"
+ xmlns:xi="http://www.w3.org/2001/XInclude"/>
+ </programlisting>
+
+ </section>
+
+ <section id="update-textdomain">
+ <title>Setting a text domain</title>
+ <para>Text domain is important for YaST to handle translations
+ properly. The appropriate set of .mo-files must be present to have
+ the texts related to the control file translated.</para>
+
+ <programlisting>
+ <textdomain>OES</textdomain>
+ </programlisting>
+ </section>
+
+ <section id="update-standaloneinst">
+ <title>Defining proposals and workflow for standalone installation</title>
+ <para>The proposals are defined the same way as for the base product.
+ The workflow for the standalone installation must have the mode and stage
+ set</para>
+
+ <programlisting>
+ <mode>installation</mode>
+ <stage>normal</stage>
+ </programlisting>
+ </section>
+
+ <section id="update-proposalmodif">
+ <title>Proposal modification</title>
+ <para>The label of the proposal can be modified. The mode, stage, and
+ proposal name has to be specified, other options (enable_skip,
+ architecture) are optional. The modes, stages, and architectures
+ do not</para>
+
+ <programlisting>
+ <proposal>
+ <label>OES Installation Settings</label>
+ <mode>installation,demo,autoinstallation</mode>
+ <stage>initial</stage>
+ <name>initial</name>
+ <enable_skip>no</enable_skip>
+ [.....]
+ </proposal>
+ </programlisting>
+ </section>
+
+ <section id="update-append">
+ <title>Appending an item at the end of proposal</title>
+ <para>Adding an item to a proposal is possible at the end only.
+ If the proposal has tabs, the items are added to a new created
+ tab.</para>
+
+ <programlisting>
+ <append_modules config:type="list">
+ <append_module>module_1</append_module>
+ <append_module>module_2</append_module>
+ </append_modules>
+ </programlisting>
+ </section>
+
+ <section id="update-removeproposal">
+ <title>Removing an item from a proposal</title>
+ <programlisting>
+ <remove_modules config:type="list">
+ <remove_module>module_3</remove_module>
+ <remove_module>module_4</remove_module>
+ </remove_modules>
+ </programlisting>
+ </section>
+
+ <section id="update-replaceproposal">
+ <title>Replacing an item of a proposal</title>
+ <para>The replacement is available in 1:N mode â one client is to be
+ replaced by one or more new clients. If you need M:N use remove and
+ replace together.</para>
+
+ <programlisting>
+ <replace_modules config:type="list">
+ <replace_module>
+ <replace>old_module</replace>
+ <new_modules config:type="list">
+ <new_module>module_5</new_module>
+ <new_module>module_6</new_module>
+ </new_modules>
+ </replace_module>
+ </replace_modules>
+ </programlisting>
+ </section>
+
+ <section id="update-workflowupdates">
+ <title>Workflow updates</title>
+ <para>The workflow to update is identified the same way as other
+ workflows. The archs, modes, and installation don't need tobe
+ alligned to the same groups as in the base product
+ workflows.</para>
+
+ <programlisting>
+ <workflow>
+ <defaults>
+ <archs>all</archs>
+ <enable_back>no</enable_back>
+ <enable_next>no</enable_next>
+ </defaults>
+ <mode>installation</mode>
+ <stage>initial</stage>
+ [...]
+ </workflow>
+ </programlisting>
+ </section>
+
+ <section id="update-append">
+ <title>Append steps to the end of installation sequence</title>
+
+ <programlisting>
+ <append_modules config:type="list">
+ <module>
+ <heading>yes</heading>
+ <label>OES configuration</label>
+ </module>
+ <module>
+ <label>Perform Installation</label>
+ <name>a1_netsetup</name>
+ </module>
+ <module>
+ <label>Perform Installation</label>
+ <name>a2_netprobe</name>
+ </module>
+ [...]
+ </append_modules>
+ </programlisting>
+ </section>
+
+ <section id="update-insert">
+ <title>Insert steps to installation sequence</title>
+
+ <programlisting>
+ <insert_modules config:type="list">
+ <insert_module>
+ <before>perform</before>
+ <modules config:type="list">
+ <module>
+ <label>Perform Installation</label>
+ <name>i1_netprobe</name>
+ </module>
+ [...]
+ </modules>
+ </insert_module>
+ </insert_modules>
+ </programlisting>
+ </section>
+
+ <section id="update-removesteps">
+ <title>Remove steps from installation sequence</title>
+
+ <programlisting>
+ <remove_modules config:type="list">
+ <remove_module>finish</remove_module>
+ [...]
+ </remove_modules>
+ </programlisting>
+ </section>
+
+ <section id="update-replacesteps">
+ <title>Replace steps in installation sequence</title>
+
+ <programlisting>
+ <replace_modules config:type="list">
+ <replace_module>
+ <replace>language</replace>
+ <modules config:type="list">
+ <module>
+ <label>Perform Installation</label>
+ <name>r1_language</name>
+ </module>
+ [...]
+ </modules>
+ </replace_module>
+ </replace_modules>
+ </programlisting>
+ </section>
+
+ <section id="update-instfinish">
+ <title>Add items in inst_finish.ycp</title>
+ <para>In CODE 10, the last step of an installation commonly known
+ as inst_finish has been modularized, so it's possible to control
+ the clients started at the end of the 1st stage. In principle, this
+ phase runs in a chroot environment â all system access is done via
+ chrooted process.</para>
+
+ <para>There are 3 cases that an add-on product can modify the workflow...</para>
+
+ <section id="update-instfinish-beforechroot">
+ <title>Before chroot</title>
+
+ <programlisting>
+ <inst_finish_stages config:type="list">
+ <before_chroot>
+ <label>Copy Theme</label>
+ <steps config:type="list">
+ <step>copy_theme</step>
+ [...]
+ </steps>
+ </before_chroot>
+ </inst_finish_stages>
+ </programlisting>
+ </section>
+
+ <section id="update-instfinish-chroot">
+ <title>Running in chroot</title>
+
+ <programlisting>
+ <inst_finish_stages config:type="list">
+ <chroot>
+ <label>Update Configuration</label>
+ <steps config:type="list">
+ <step>pkg</step>
+ [...]
+ </steps>
+ </chroot>
+ </inst_finish_stages>
+ </programlisting>
+ </section>
+
+ <section id="update-instfinish-beforeumount">
+ <title>Before unmounting the system</title>
+
+ <programlisting>
+ <inst_finish_stages config:type="list">
+ <before_umount>
+ <label>Disconnect Network Disks</label>
+ <steps config:type="list">
+ <step>iscsi_disconnect</step>
+ [...]
+ </steps>
+ </before_umount>
+ </inst_finish_stages>
+ </programlisting>
+ </section>
+
+ <para>All new steps are added at the end of the current list in the
+ particular inst_finish workflow. It is not possible to remove any
+ other inst_finish clients or replace them.</para>
+ </section>
+
+ <section id="update-replaceworkflow">
+ <title>Replace whole second-stage workflow</title>
+ <para>To replace a workflow, just create workflows as in base
+ product control file. The important is that the stage of the
+ workflow is set to</para>
+
+ <programlisting>
+ <stage>continue</stage>
+ </programlisting>
+
+ <para>and the mode is set for the specified mode.</para>
+ </section>
+
+ <section id="update-algorithm">
+ <title>Algorith for Adapting Workflow</title>
+ <para>The algorithm is rather straightforward. Every time, remove
+ is applied first, then replace and the last step is add. This is
+ done per product, so first the changes by product A are applied,
+ then by product B etc.</para>
+ </section>
+
+ <section id="update-algorithm-features">
+ <title>Product Features</title>
+ <para>One of the most important data stored in the control.xml
+ file are the values to influence the behavior of YaST code,
+ like proposals etc. The idea is the same as for workflow/proposal
+ adaptation: by redefining a value, the resulting values are
+ changed. Within YaST, the options are accessible via
+ ProductFeatures module. No new option groups can be defined.
+ Options which are defined by the base product, but not by the
+ add-on product, are kept unchanged (base product's value is
+ used).</para>
+
+ <programlisting>
+ <globals>
+ <additional_kernel_parameters></additional_kernel_parameters>
+ </globals>
+ [...]
+ <software>
+ <selection_type config:type="symbol">auto</selection_type>
+ </software>
+ </programlisting>
+ </section>
+
+ <section>
+ <title>AutoYaST profile generation</title>
+ <para>At the end of the installation, a profile for AutoYaST can be
+ generated. The profile will be generated using modules from the base
+ product and modules specified in the add-on product control
+ file.</para>
+
+ <programlisting>
+ <clone_modules config:type="list">
+ <clone_module>printer</clone_module>
+ [...]
+ </clone_modules>
+ </programlisting>
+ </section>
+
+ <section>
+ <title>Example of OES 1.0</title>
+ <para>The network code is instructed to force a static IP
+ address.</para>
+
+ <para>The control file contains steps for both standalone installation
+ and installation together with the base product. In the standalone
+ installation workflow, selecting and installing packages is missing,
+ these steps need to be prepended to the workflow.</para>
+
+ <programlisting>
+ <xi:include href="examples/update-oes-example.xml" parse="text"
+ xmlns:xi="http://www.w3.org/2001/XInclude"/>
+ </programlisting>
+ </section>
+ </section>
+</section>
Modified: trunk/installation/package/yast2-installation.changes
URL: http://svn.opensuse.org/viewcvs/yast/trunk/installation/package/yast2-insta…
==============================================================================
--- trunk/installation/package/yast2-installation.changes (original)
+++ trunk/installation/package/yast2-installation.changes Thu Dec 18 18:06:00 2008
@@ -1,4 +1,9 @@
-------------------------------------------------------------------
+Thu Dec 18 18:04:47 CET 2008 - locilka(a)suse.cz
+
+- Updated control file documentation (bnc #438678).
+
+-------------------------------------------------------------------
Wed Dec 17 14:42:22 CET 2008 - locilka(a)suse.cz
- Added yet another xset call (bnc #455771 comment #40)
--
To unsubscribe, e-mail: yast-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: yast-commit+help(a)opensuse.org
1
0
[yast-commit] r54278 - in /branches/SuSE-Code-11-Branch/installation: control/docs/ control/docs/examples/ package/
by locilka@svn.opensuse.org 18 Dec '08
by locilka@svn.opensuse.org 18 Dec '08
18 Dec '08
Author: locilka
Date: Thu Dec 18 18:05:51 2008
New Revision: 54278
URL: http://svn.opensuse.org/viewcvs/yast?rev=54278&view=rev
Log:
- Updated control file documentation (bnc #438678).
Added:
branches/SuSE-Code-11-Branch/installation/control/docs/examples/update-difffileformat.xml
branches/SuSE-Code-11-Branch/installation/control/docs/examples/update-oes-example.xml
branches/SuSE-Code-11-Branch/installation/control/docs/update-section.xml
Modified:
branches/SuSE-Code-11-Branch/installation/control/docs/Makefile.am
branches/SuSE-Code-11-Branch/installation/control/docs/control-section.xml
branches/SuSE-Code-11-Branch/installation/package/yast2-installation.changes
Modified: branches/SuSE-Code-11-Branch/installation/control/docs/Makefile.am
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-Branch/installat…
==============================================================================
--- branches/SuSE-Code-11-Branch/installation/control/docs/Makefile.am (original)
+++ branches/SuSE-Code-11-Branch/installation/control/docs/Makefile.am Thu Dec 18 18:05:51 2008
@@ -13,7 +13,7 @@
pdf: control-doc.pdf
-html/index.html: control-doc.xml
+html/index.html: $(xml_files)
XML_CATALOG_FILES=@XML_CATALOG@ \
@XSLTPROC@ @XSLTPROC_FLAGS@ --xinclude \
@STYLESHEET_HTML@ $<
Modified: branches/SuSE-Code-11-Branch/installation/control/docs/control-section.xml
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-Branch/installat…
==============================================================================
--- branches/SuSE-Code-11-Branch/installation/control/docs/control-section.xml (original)
+++ branches/SuSE-Code-11-Branch/installation/control/docs/control-section.xml Thu Dec 18 18:05:51 2008
@@ -1519,4 +1519,7 @@
<emphasis>ProductControl::GetTranslatedText (text_id)</emphasis> call.</para>
</section>
</section>
+
+ <xi:include href="update-section.xml" parse="xml"
+ xmlns:xi="http://www.w3.org/2001/XInclude"/>
</section>
Added: branches/SuSE-Code-11-Branch/installation/control/docs/examples/update-difffileformat.xml
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-Branch/installat…
==============================================================================
--- branches/SuSE-Code-11-Branch/installation/control/docs/examples/update-difffileformat.xml (added)
+++ branches/SuSE-Code-11-Branch/installation/control/docs/examples/update-difffileformat.xml Thu Dec 18 18:05:51 2008
@@ -0,0 +1,142 @@
+
+<?xml version="1.0"?>
+<productDefines xmlns="http://www.suse.com/1.0/yast2ns"
+ xmlns:config="http://www.suse.com/1.0/configns">
+ <!-- .mo-file must be in installation tarball -->
+ <textdomain>OES</textdomain>
+ <!-- these options override base product's ones -->
+ <globals>
+ <additional_kernel_parameters></additional_kernel_parameters>
+ </globals>
+ <software>
+ <selection_type config:type="symbol">auto</selection_type>
+ </software>
+ <partitioning>
+ <evms_config config:type="boolean">false</evms_config>
+ <root_max_size>10G</root_max_size>
+ </partitioning>
+ <network>
+ <force_static_ip config:type="boolean">false</force_static_ip>
+ <network_manager>laptop</network_manager>
+ </network>
+ <!-- base product's list is preserved, these are appended -->
+ <clone_modules config:type="list">
+ <clone_module>printer</clone_module>
+ </clone_modules>
+ <proposals config:type="list">
+<!-- put proposals for standalone product installation here -->
+ </proposals>
+<!-- workflow for standalone product installation -->
+ <workflows config:type="list">
+ <workflow>
+ <defaults>
+ <archs>all</archs>
+ </defaults>
+ <label>Preparation</label>
+ <!-- mode and stage must be set this way -->
+ <mode>installation</mode>
+ <stage>normal</stage>
+ <modules config:type="list">
+ <module>
+ <label>License Agreement</label>
+ <name>license</name>
+ <enable_back>no</enable_back>
+ <enable_next>yes</enable_next>
+ </module>
+ </modules>
+ </workflow>
+ </workflows>
+ <!-- stuff for installation together with base products -->
+ <update>
+ <proposals config:type="list">
+ <proposal>
+ <label>OES Installation Settings</label>
+ <mode>installation,demo,autoinstallation</mode>
+ <stage>initial</stage>
+ <name>initial</name>
+ <enable_skip>no</enable_skip>
+ <append_modules config:type="list">
+ <append_module>module_1</append_module>
+ <append_module>module_2</append_module>
+ </append_modules>
+ <remove_modules config:type="list">
+ <remove_module>module_3</remove_module>
+ <remove_module>module_4</remove_module>
+ </remove_modules>
+ <replace_modules config:type="list">
+ <replace_module>
+ <replace>old_module</replace>
+ <new_modules config:type="list">
+ <new_module>module_5</new_module>
+ <new_module>module_6</new_module>
+ </new_modules>
+ </replace_module>
+ </replace_modules>
+ </proposal>
+ </proposals>
+ <workflows config:type="list">
+ <workflow>
+ <defaults>
+ <archs>all</archs>
+ <enable_back>no</enable_back>
+ <enable_next>no</enable_next>
+ </defaults>
+ <mode>installation</mode>
+ <stage>initial</stage>
+ <append_modules config:type="list">
+ <module>
+ <heading>yes</heading>
+ <label>OES configuration</label>
+ </module>
+ <module>
+ <label>Perform Installation</label>
+ <name>a1_netsetup</name>
+ </module>
+ <module>
+ <label>Perform Installation</label>
+ <name>a2_netprobe</name>
+ </module>
+ </append_modules>
+ <remove_modules config:type="list">
+ <remove_module>finish</remove_module>
+ </remove_modules>
+ <insert_modules config:type="list">
+ <insert_module>
+ <before>perform</before>
+ <modules config:type="list">
+ <module>
+ <label>Perform Installation</label>
+ <name>i1_netprobe</name>
+ </module>
+ </modules>
+ </insert_module>
+ </insert_modules>
+ <replace_modules config:type="list">
+ <replace_module>
+ <replace>language</replace>
+ <modules config:type="list">
+ <module>
+ <label>Perform Installation</label>
+ <name>r1_language</name>
+ </module>
+ </modules>
+ </replace_module>
+ </replace_modules>
+ </workflow>
+ </workflows>
+ <inst_finish>
+ <before_chroot config:type=âlistâ>
+ <module>before_chroot_1</module>
+ <module>before_chroot_2</module>
+ </before_chroot>
+ <after_chroot config:type=âlistâ>
+ <module>after_chroot_1</module>
+ <module>after_chroot_2</module>
+ </after_chroot>
+ <before_umount config:type=âlistâ>
+ <module>before_umount_1</module>
+ <module>before_umount_2</module>
+ </before_umount>
+ </inst_finish>
+ </update>
+</productDefines>
Added: branches/SuSE-Code-11-Branch/installation/control/docs/examples/update-oes-example.xml
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-Branch/installat…
==============================================================================
--- branches/SuSE-Code-11-Branch/installation/control/docs/examples/update-oes-example.xml (added)
+++ branches/SuSE-Code-11-Branch/installation/control/docs/examples/update-oes-example.xml Thu Dec 18 18:05:51 2008
@@ -0,0 +1,122 @@
+
+<?xml version="1.0"?>
+<productDefines xmlns="http://www.suse.com/1.0/yast2ns"
+ xmlns:config="http://www.suse.com/1.0/configns">
+<textdomain>OES</textdomain>
+<network>
+ <force_static_ip config:type="boolean">true</force_static_ip>
+ <network_manager_is_default config:type="boolean">false</network_manager_is_default>
+</network>
+<proposals config:type="list">
+ <proposal>
+ <name>oes</name>
+ <stage>continue,normal</stage>
+ <mode>installation</mode>
+ <proposal_modules config:type="list">
+ <proposal_module>oes-ldap</proposal_module>
+ <proposal_module>imanager</proposal_module>
+ <proposal_module>lifeconsole</proposal_module>
+ <proposal_module>linux-user-mgmt</proposal_module>
+ <proposal_module>eguide</proposal_module>
+ <proposal_module>novell-samba</proposal_module>
+ <proposal_module>ifolder2</proposal_module>
+ <proposal_module>ifolder</proposal_module>
+ <proposal_module>ifolderwebaccess</proposal_module>
+ <proposal_module>iprint</proposal_module>
+ <proposal_module>nss</proposal_module>
+ <proposal_module>netstorage</proposal_module>
+ <proposal_module>novell-quickfinder</proposal_module>
+ <proposal_module>novell-vo</proposal_module>
+ <proposal_module>ncs</proposal_module>
+ <proposal_module>ncpserver</proposal_module>
+ <proposal_module>sms</proposal_module>
+ </proposal_modules>
+ </proposal>
+</proposals>
+<workflows config:type="list">
+ <workflow>
+ <label>Preparation</label>
+ <defaults>
+ <archs>all</archs>
+ </defaults>
+ <mode>installation</mode>
+ <stage>normal</stage>
+ <modules config:type="list">
+ <module>
+ <label>License Agreement</label>
+ <name>inst_license</name>
+ <enable_back>no</enable_back>
+ <enable_next>yes</enable_next>
+ </module>
+ <module>
+ <label>OES Configuration</label>
+ <name>inst_check_cert</name>
+ <enable_back>no</enable_back>
+ <enable_next>yes</enable_next>
+ </module>
+ <module>
+ <label>OES Configuration</label>
+ <name>inst_proposal</name>
+ <arguments>false,false,`product</arguments>
+ <enable_back>no</enable_back>
+ <enable_next>yes</enable_next>
+ </module>
+ <module>
+ <label>OES Configuration</label>
+ <name>inst_oes</name>
+ <enable_back>yes</enable_back>
+ <enable_next>yes</enable_next>
+ </module>
+ <module>
+ <label>OES Configuration</label>
+ <name>inst_oes_congratulate</name>
+ <enable_back>no</enable_back>
+ <enable_next>yes</enable_next>
+ </module>
+ </modules>
+ </workflow>
+</workflows>
+<update>
+ <workflows config:type="list">
+ <workflow>
+ <defaults>
+ <archs>all</archs>
+ <enable_back>no</enable_back>
+ <enable_next>no</enable_next>
+ </defaults>
+ <stage>continue</stage>
+ <mode>installation</mode>
+ <append_modules config:type="list">
+ <module>
+ <label>OES Configuration</label>
+ <name>inst_oes_congratulate</name>
+ </module>
+ </append_modules>
+ <insert_modules config:type="list">
+ <insert_module>
+ <before>suseconfig</before>
+ <modules config:type="list">
+ <module>
+ <label>OES Configuration</label>
+ <name>inst_check_cert</name>
+ </module>
+ <module>
+ <label>OES Configuration</label>
+ <name>inst_edirectory</name>
+ </module>
+ <module>
+ <label>OES Configuration</label>
+ <name>inst_proposal</name>
+ <arguments>false,true,`product</arguments>
+ </module>
+ <module>
+ <label>OES Configuration</label>
+ <name>inst_oes</name>
+ </module>
+ </modules>
+ </insert_module>
+ </insert_modules>
+ </workflow>
+ </workflows>
+ </update>
+</productDefines>
Added: branches/SuSE-Code-11-Branch/installation/control/docs/update-section.xml
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-Branch/installat…
==============================================================================
--- branches/SuSE-Code-11-Branch/installation/control/docs/update-section.xml (added)
+++ branches/SuSE-Code-11-Branch/installation/control/docs/update-section.xml Thu Dec 18 18:05:51 2008
@@ -0,0 +1,528 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!-- Section originally written by Jiri Srain /jsrain(a)suse.cz/ -->
+<section id="update">
+ <title>Add-on Product Installation Workflow Specification</title>
+ <section id="update-intro">
+ <title>Introduction</title>
+
+ <section id="update-intro-proddep">
+ <title>Product dependency</title>
+ <para>Everywhere, product B depends on product A, there is no dependency
+ related to product C. A, B and C are add-on products.</para>
+ </section>
+
+ <section id="update-intro-order">
+ <title>Order of updates of the workflow/wizard</title>
+ <para>If there are two add-on products which want to insert their steps
+ into the same location of the installation workflow (or proposal), they
+ are inserted in the same order as the products are added. A must be added
+ before B (otherwise adding B fails), steps of A are always prior to steps
+ of B.</para>
+ </section>
+
+ <section id="update-intro-items">
+ <title>Steps/Proposal Items Naming</title>
+ <para>In order to avoid collisions of internal names of proposal items or
+ sequence steps, all items should have its internal name prefixed by the
+ add-on product name.</para>
+ </section>
+
+ <section id="update-updposs">
+ <title>Update possibilities</title>
+
+ <section id="update-updposs-insert">
+ <title>Insert an item into proposal</title>
+ <para>Item is always added at the end of the proposal. Multiple
+ items are possible.</para>
+ </section>
+
+ <section id="update-updposs-remove">
+ <title>Remove an item from proposal</title>
+ <para>Specified item(s) are removed from proposal. Useful when
+ add-on product extends functionality of the base product. If
+ product B wants to remove an item of product A, must specify the
+ name of the product as well. Product C cannot remove items of
+ products A or B (and vice versa), product A cannot remove items
+ of product B.</para>
+ </section>
+
+ <section id="update-updposs-replace">
+ <title>Replace an item in proposal</title>
+ <para>Usable in the same cases as the case above. If an item has
+ been replaced by another item(s) of product A before applying
+ changes of product B, the item(s) of product A will be replaced
+ by item(s) of product B. Items of product C cannot be replaced by
+ items of product A or B (and vice versa), such combination of
+ products cannot be installed at the same time.</para>
+ </section>
+
+ <section id="update-updposs-insert">
+ <title>Insert steps to installation sequence</title>
+ <para>Before each step of base product installation, additional
+ step can be inserted (eg. another proposal). For the order of
+ additionally added steps, the same rules as for items of proposal
+ will be applied.</para>
+ </section>
+
+ <section id="update-updposs-append">
+ <title>Append steps to installation sequence</title>
+ <para>The steps can be appended at the end of installation
+ sequence.</para>
+ </section>
+
+ <section id="update-updposs-remoandrepl">
+ <title>Remove and replace steps in installation sequence</title>
+ <para>The same rules for removing and replacing steps of the
+ installation workflow as for proposal items will be applied.</para>
+ </section>
+
+ <section id="update-updposs-instfinish">
+ <title>Add, remove, replace items in inst_finish.ycp</title>
+ <para>The same rules as for steps of the installation workflow are
+ valid here. There will be some points in the inst_finish where
+ performing additional actions makes sense (at least one before
+ moving SCR to chroot and one after).</para>
+ </section>
+
+ <section id="update-updposs-replaceworkflow">
+ <title>Replace whole second-stage workflow</title>
+ <para>Add-on product may replace whole second stage of installation.
+ It should be used only in rare cases, as there is no possibility to
+ merge two workflows completely written from scratch. If a product
+ replaces the workflow, all changes of all products which replaced it
+ before (in case of installation of multiple products) are gone.
+ Add-on products selected after this product update the new workflow
+ (which may not work, as the steps usually have different naming).
+ This is perfectly OK if there are dependencies between add-on
+ products.</para>
+ <para>The workflow can be replaced only for specified installation
+ mode. If it is replaced, it must be replaced for all
+ architectures.</para>
+ </section>
+
+ <section id="update-updposs-addproposal">
+ <title>Adding a new proposal</title>
+ <para>New proposal can be added, as the proposal handling routines
+ are generic. The information which is for current product in control.xml
+ file has to be provided, and the proposal must be added as a step into
+ the installation workflow. Basically, adding proposal has two
+ steps:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>defining the proposal (name, items,...)</para>
+ </listitem>
+
+ <listitem>
+ <para>adding a new step to the workflow referring to the new
+ added proposal</para>
+ </listitem>
+ </itemizedlist>
+ </section>
+
+ <section id="update-updposs-replaceproposal">
+ <title>Replace or remove whole proposal</title>
+ <para>Is possible as replacing or removing a step of the installation
+ workflow.</para>
+ </section>
+ </section>
+
+ <section id="update-filelayout">
+ <title>File layout</title>
+ <section id="update-filelayout-addon">
+ <title>Add-on Product CD</title>
+ <para>There will be following files in the root directory of the
+ add-on product's CD:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>servicepack.tar.gz â tarball with files which are
+ needed for the installation, both together with base
+ product and separatelly. Special files inside this
+ tarball:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>installation.xml â the control file of the
+ add-on product</para>
+ </listitem>
+ <listitem>
+ <para>the whole tarball or installation.xml can be
+ missing if add-on product doesn't provide any custom
+ installer, in this case, only its packages are added
+ to the package manager dialog, and packages/patterns/...
+ required by the product are selected by the
+ solver</para>
+ </listitem>
+ </itemizedlist>
+ </listitem>
+
+ <listitem>
+ <para>(optional) setup.sh â script which starts the
+ installation automatically once the CD is in the
+ drive</para>
+ </listitem>
+
+ <listitem>
+ <para>(optional) files needed to make the CD bootable
+ (kernel, initrd, isolinux,...)</para>
+ </listitem>
+ </itemizedlist>
+ </section>
+
+ <section id="update-filelayout-wkfadapt">
+ <title>Workflow Adaptation</title>
+ <para>There is only a single control file to describe both an
+ add-on and standalone product installation. It is called
+ installation.xml. In principle, it contains a diff description
+ containing the changes to be applied to the installation workflow
+ plus a workflow, which is used for standalone product installation.
+ The reason why both installation methods are stored in a single
+ file is that the product features has to be shared as well as some
+ proposals and clients can be reused.</para>
+
+ <para>The proposals which are defined for standalone installation
+ are also available for the installation together with the base
+ product. They don't have to be defined twice.</para>
+
+ <para>The files are located in the top directory of the add-on
+ product installation source.</para>
+ </section>
+ </section>
+
+ <section id="update-difffileformat">
+ <title>Diff File Format</title>
+ <para>Because there are no really usable open source XML diff tools (the
+ existing ones are typically written in Java), we define a special purpose
+ file format aimed to cover the cases as described in the previous
+ chapter.</para>
+
+ <para>In principle, the format is a list of directives to be applied to
+ the existing control.xml. In principle, the file is a control file
+ defining its own proposals, workflows etc. The control file has a special
+ section, which defines changes to the existing workflow and
+ proposals.</para>
+
+ <programlisting>
+ <xi:include href="examples/update-difffileformat.xml" parse="text"
+ xmlns:xi="http://www.w3.org/2001/XInclude"/>
+ </programlisting>
+
+ </section>
+
+ <section id="update-textdomain">
+ <title>Setting a text domain</title>
+ <para>Text domain is important for YaST to handle translations
+ properly. The appropriate set of .mo-files must be present to have
+ the texts related to the control file translated.</para>
+
+ <programlisting>
+ <textdomain>OES</textdomain>
+ </programlisting>
+ </section>
+
+ <section id="update-standaloneinst">
+ <title>Defining proposals and workflow for standalone installation</title>
+ <para>The proposals are defined the same way as for the base product.
+ The workflow for the standalone installation must have the mode and stage
+ set</para>
+
+ <programlisting>
+ <mode>installation</mode>
+ <stage>normal</stage>
+ </programlisting>
+ </section>
+
+ <section id="update-proposalmodif">
+ <title>Proposal modification</title>
+ <para>The label of the proposal can be modified. The mode, stage, and
+ proposal name has to be specified, other options (enable_skip,
+ architecture) are optional. The modes, stages, and architectures
+ do not</para>
+
+ <programlisting>
+ <proposal>
+ <label>OES Installation Settings</label>
+ <mode>installation,demo,autoinstallation</mode>
+ <stage>initial</stage>
+ <name>initial</name>
+ <enable_skip>no</enable_skip>
+ [.....]
+ </proposal>
+ </programlisting>
+ </section>
+
+ <section id="update-append">
+ <title>Appending an item at the end of proposal</title>
+ <para>Adding an item to a proposal is possible at the end only.
+ If the proposal has tabs, the items are added to a new created
+ tab.</para>
+
+ <programlisting>
+ <append_modules config:type="list">
+ <append_module>module_1</append_module>
+ <append_module>module_2</append_module>
+ </append_modules>
+ </programlisting>
+ </section>
+
+ <section id="update-removeproposal">
+ <title>Removing an item from a proposal</title>
+ <programlisting>
+ <remove_modules config:type="list">
+ <remove_module>module_3</remove_module>
+ <remove_module>module_4</remove_module>
+ </remove_modules>
+ </programlisting>
+ </section>
+
+ <section id="update-replaceproposal">
+ <title>Replacing an item of a proposal</title>
+ <para>The replacement is available in 1:N mode â one client is to be
+ replaced by one or more new clients. If you need M:N use remove and
+ replace together.</para>
+
+ <programlisting>
+ <replace_modules config:type="list">
+ <replace_module>
+ <replace>old_module</replace>
+ <new_modules config:type="list">
+ <new_module>module_5</new_module>
+ <new_module>module_6</new_module>
+ </new_modules>
+ </replace_module>
+ </replace_modules>
+ </programlisting>
+ </section>
+
+ <section id="update-workflowupdates">
+ <title>Workflow updates</title>
+ <para>The workflow to update is identified the same way as other
+ workflows. The archs, modes, and installation don't need tobe
+ alligned to the same groups as in the base product
+ workflows.</para>
+
+ <programlisting>
+ <workflow>
+ <defaults>
+ <archs>all</archs>
+ <enable_back>no</enable_back>
+ <enable_next>no</enable_next>
+ </defaults>
+ <mode>installation</mode>
+ <stage>initial</stage>
+ [...]
+ </workflow>
+ </programlisting>
+ </section>
+
+ <section id="update-append">
+ <title>Append steps to the end of installation sequence</title>
+
+ <programlisting>
+ <append_modules config:type="list">
+ <module>
+ <heading>yes</heading>
+ <label>OES configuration</label>
+ </module>
+ <module>
+ <label>Perform Installation</label>
+ <name>a1_netsetup</name>
+ </module>
+ <module>
+ <label>Perform Installation</label>
+ <name>a2_netprobe</name>
+ </module>
+ [...]
+ </append_modules>
+ </programlisting>
+ </section>
+
+ <section id="update-insert">
+ <title>Insert steps to installation sequence</title>
+
+ <programlisting>
+ <insert_modules config:type="list">
+ <insert_module>
+ <before>perform</before>
+ <modules config:type="list">
+ <module>
+ <label>Perform Installation</label>
+ <name>i1_netprobe</name>
+ </module>
+ [...]
+ </modules>
+ </insert_module>
+ </insert_modules>
+ </programlisting>
+ </section>
+
+ <section id="update-removesteps">
+ <title>Remove steps from installation sequence</title>
+
+ <programlisting>
+ <remove_modules config:type="list">
+ <remove_module>finish</remove_module>
+ [...]
+ </remove_modules>
+ </programlisting>
+ </section>
+
+ <section id="update-replacesteps">
+ <title>Replace steps in installation sequence</title>
+
+ <programlisting>
+ <replace_modules config:type="list">
+ <replace_module>
+ <replace>language</replace>
+ <modules config:type="list">
+ <module>
+ <label>Perform Installation</label>
+ <name>r1_language</name>
+ </module>
+ [...]
+ </modules>
+ </replace_module>
+ </replace_modules>
+ </programlisting>
+ </section>
+
+ <section id="update-instfinish">
+ <title>Add items in inst_finish.ycp</title>
+ <para>In CODE 10, the last step of an installation commonly known
+ as inst_finish has been modularized, so it's possible to control
+ the clients started at the end of the 1st stage. In principle, this
+ phase runs in a chroot environment â all system access is done via
+ chrooted process.</para>
+
+ <para>There are 3 cases that an add-on product can modify the workflow...</para>
+
+ <section id="update-instfinish-beforechroot">
+ <title>Before chroot</title>
+
+ <programlisting>
+ <inst_finish_stages config:type="list">
+ <before_chroot>
+ <label>Copy Theme</label>
+ <steps config:type="list">
+ <step>copy_theme</step>
+ [...]
+ </steps>
+ </before_chroot>
+ </inst_finish_stages>
+ </programlisting>
+ </section>
+
+ <section id="update-instfinish-chroot">
+ <title>Running in chroot</title>
+
+ <programlisting>
+ <inst_finish_stages config:type="list">
+ <chroot>
+ <label>Update Configuration</label>
+ <steps config:type="list">
+ <step>pkg</step>
+ [...]
+ </steps>
+ </chroot>
+ </inst_finish_stages>
+ </programlisting>
+ </section>
+
+ <section id="update-instfinish-beforeumount">
+ <title>Before unmounting the system</title>
+
+ <programlisting>
+ <inst_finish_stages config:type="list">
+ <before_umount>
+ <label>Disconnect Network Disks</label>
+ <steps config:type="list">
+ <step>iscsi_disconnect</step>
+ [...]
+ </steps>
+ </before_umount>
+ </inst_finish_stages>
+ </programlisting>
+ </section>
+
+ <para>All new steps are added at the end of the current list in the
+ particular inst_finish workflow. It is not possible to remove any
+ other inst_finish clients or replace them.</para>
+ </section>
+
+ <section id="update-replaceworkflow">
+ <title>Replace whole second-stage workflow</title>
+ <para>To replace a workflow, just create workflows as in base
+ product control file. The important is that the stage of the
+ workflow is set to</para>
+
+ <programlisting>
+ <stage>continue</stage>
+ </programlisting>
+
+ <para>and the mode is set for the specified mode.</para>
+ </section>
+
+ <section id="update-algorithm">
+ <title>Algorith for Adapting Workflow</title>
+ <para>The algorithm is rather straightforward. Every time, remove
+ is applied first, then replace and the last step is add. This is
+ done per product, so first the changes by product A are applied,
+ then by product B etc.</para>
+ </section>
+
+ <section id="update-algorithm-features">
+ <title>Product Features</title>
+ <para>One of the most important data stored in the control.xml
+ file are the values to influence the behavior of YaST code,
+ like proposals etc. The idea is the same as for workflow/proposal
+ adaptation: by redefining a value, the resulting values are
+ changed. Within YaST, the options are accessible via
+ ProductFeatures module. No new option groups can be defined.
+ Options which are defined by the base product, but not by the
+ add-on product, are kept unchanged (base product's value is
+ used).</para>
+
+ <programlisting>
+ <globals>
+ <additional_kernel_parameters></additional_kernel_parameters>
+ </globals>
+ [...]
+ <software>
+ <selection_type config:type="symbol">auto</selection_type>
+ </software>
+ </programlisting>
+ </section>
+
+ <section>
+ <title>AutoYaST profile generation</title>
+ <para>At the end of the installation, a profile for AutoYaST can be
+ generated. The profile will be generated using modules from the base
+ product and modules specified in the add-on product control
+ file.</para>
+
+ <programlisting>
+ <clone_modules config:type="list">
+ <clone_module>printer</clone_module>
+ [...]
+ </clone_modules>
+ </programlisting>
+ </section>
+
+ <section>
+ <title>Example of OES 1.0</title>
+ <para>The network code is instructed to force a static IP
+ address.</para>
+
+ <para>The control file contains steps for both standalone installation
+ and installation together with the base product. In the standalone
+ installation workflow, selecting and installing packages is missing,
+ these steps need to be prepended to the workflow.</para>
+
+ <programlisting>
+ <xi:include href="examples/update-oes-example.xml" parse="text"
+ xmlns:xi="http://www.w3.org/2001/XInclude"/>
+ </programlisting>
+ </section>
+ </section>
+</section>
Modified: branches/SuSE-Code-11-Branch/installation/package/yast2-installation.changes
URL: http://svn.opensuse.org/viewcvs/yast/branches/SuSE-Code-11-Branch/installat…
==============================================================================
--- branches/SuSE-Code-11-Branch/installation/package/yast2-installation.changes (original)
+++ branches/SuSE-Code-11-Branch/installation/package/yast2-installation.changes Thu Dec 18 18:05:51 2008
@@ -1,4 +1,10 @@
-------------------------------------------------------------------
+Thu Dec 18 18:04:47 CET 2008 - locilka(a)suse.cz
+
+- Updated control file documentation (bnc #438678).
+- 2.17.49
+
+-------------------------------------------------------------------
Wed Dec 17 14:42:22 CET 2008 - locilka(a)suse.cz
- Added yet another xset call (bnc #455771 comment #40)
--
To unsubscribe, e-mail: yast-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: yast-commit+help(a)opensuse.org
1
0
[yast-commit] r54277 - in /trunk/qt/src: QStyleEditor.ui QY2StyleEditor.cc QY2StyleEditor.h
by tgoettlicher@svn.opensuse.org 18 Dec '08
by tgoettlicher@svn.opensuse.org 18 Dec '08
18 Dec '08
Author: tgoettlicher
Date: Thu Dec 18 16:55:11 2008
New Revision: 54277
URL: http://svn.opensuse.org/viewcvs/yast?rev=54277&view=rev
Log:
addad missing files for style editor
Added:
trunk/qt/src/QStyleEditor.ui
trunk/qt/src/QY2StyleEditor.cc
trunk/qt/src/QY2StyleEditor.h
Added: trunk/qt/src/QStyleEditor.ui
URL: http://svn.opensuse.org/viewcvs/yast/trunk/qt/src/QStyleEditor.ui?rev=54277…
==============================================================================
--- trunk/qt/src/QStyleEditor.ui (added)
+++ trunk/qt/src/QStyleEditor.ui Thu Dec 18 16:55:11 2008
@@ -0,0 +1,85 @@
+<ui version="4.0" >
+ <class>QStyleEditor</class>
+ <widget class="QDialog" name="QStyleEditor" >
+ <property name="geometry" >
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>581</width>
+ <height>388</height>
+ </rect>
+ </property>
+ <property name="windowTitle" >
+ <string>Help</string>
+ </property>
+ <layout class="QVBoxLayout" >
+ <item>
+ <layout class="QVBoxLayout" >
+ <item>
+ <widget class="QTextEdit" name="textEdit" />
+ </item>
+ <item>
+ <layout class="QHBoxLayout" >
+ <item>
+ <widget class="QPushButton" name="applyButton" >
+ <property name="text" >
+ <string>&Apply</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QCheckBox" name="autoApply" >
+ <property name="enabled" >
+ <bool>true</bool>
+ </property>
+ <property name="text" >
+ <string>Auto Apply</string>
+ </property>
+ <property name="checked" >
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <spacer>
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0" >
+ <size>
+ <width>40</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item>
+ <widget class="QLabel" name="label" >
+ <property name="text" >
+ <string/>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QPushButton" name="loadButton" >
+ <property name="text" >
+ <string>&Load File</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QPushButton" name="closeButton" >
+ <property name="text" >
+ <string>&Close</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </widget>
+ <resources/>
+ <connections/>
+</ui>
Added: trunk/qt/src/QY2StyleEditor.cc
URL: http://svn.opensuse.org/viewcvs/yast/trunk/qt/src/QY2StyleEditor.cc?rev=542…
==============================================================================
--- trunk/qt/src/QY2StyleEditor.cc (added)
+++ trunk/qt/src/QY2StyleEditor.cc Thu Dec 18 16:55:11 2008
@@ -0,0 +1,104 @@
+/*---------------------------------------------------------------------\
+| |
+| __ __ ____ _____ ____ |
+| \ \ / /_ _/ ___|_ _|___ \ |
+| \ V / _` \___ \ | | __) | |
+| | | (_| |___) || | / __/ |
+| |_|\__,_|____/ |_| |_____| |
+| |
+| core system |
+| (c) SuSE Linux AG |
+\----------------------------------------------------------------------/
+
+ File: QY2StyleEditor.cc
+
+ Author: Thomas Goettlicher <tgoettlicher(a)suse.de>
+
+ Textdomain "qt"
+
+/-*/
+
+#include "QY2StyleEditor.h"
+#include "QY2Styler.h"
+#include "ui_QStyleEditor.h"
+#include <QDebug>
+#include <QFile>
+#include <QFileDialog>
+#include <QMessageBox>
+#include <QTextObject>
+#include "YQi18n.h"
+
+
+QY2StyleEditor::QY2StyleEditor( QWidget *parent )
+ : QDialog( parent )
+{
+ ui.setupUi(this);
+
+ ui.textEdit->setPlainText( "/* enter style sheet here */" );
+ ui.closeButton->setAutoDefault(false);
+ setWindowTitle( _( "Stylesheet Editor" ) );
+
+ connect( ui.applyButton, SIGNAL( clicked() ),
+ this, SLOT( slotApplyStyle() ));
+
+ connect( ui.closeButton, SIGNAL( clicked() ),
+ this, SLOT( close() ));
+
+ connect( ui.loadButton, SIGNAL( clicked() ),
+ this, SLOT( slotLoadFile() ));
+
+ connect( ui.textEdit, SIGNAL( textChanged() ),
+ this, SLOT( slotTextChanged() ));
+
+ connect( ui.autoApply, SIGNAL( stateChanged(int) ),
+ this, SLOT( slotTextChanged() ));
+}
+
+
+QY2StyleEditor::~QY2StyleEditor()
+{
+}
+
+void QY2StyleEditor::slotTextChanged()
+{
+ if ( ui.autoApply->isChecked() )
+ slotApplyStyle();
+}
+
+void QY2StyleEditor::slotApplyStyle()
+{
+ QY2Styler::styler()->setStyleSheet( ui.textEdit->toPlainText() );
+}
+
+
+void QY2StyleEditor::slotLoadFile()
+{
+
+ QString fileName = QFileDialog::getOpenFileName( this, // parent
+ QString( "Load stylesheet ..." ), // caption
+ QY2Styler::styler()->themeDir(), // dir
+ QString( "*.qss") ); // filter
+
+ if ( fileName.isEmpty() )
+ return; // user clicked cancel
+
+
+ QFile file( fileName);
+
+ if ( file.open( QFile::ReadOnly ) )
+ ui.textEdit->setPlainText( file.readAll() );
+ else
+ {
+ QMessageBox::warning( this, // parent
+ QString("Error") , // caption
+ QString( "Couldn't load file\n%1" ).arg( fileName ),
+ QMessageBox::Ok | QMessageBox::Default, // button0
+ Qt::NoButton, // button1
+ Qt::NoButton ); // button2
+ }
+
+}
+
+
+
+#include "QY2StyleEditor.moc"
Added: trunk/qt/src/QY2StyleEditor.h
URL: http://svn.opensuse.org/viewcvs/yast/trunk/qt/src/QY2StyleEditor.h?rev=5427…
==============================================================================
--- trunk/qt/src/QY2StyleEditor.h (added)
+++ trunk/qt/src/QY2StyleEditor.h Thu Dec 18 16:55:11 2008
@@ -0,0 +1,51 @@
+#ifndef _QY2StyleEditor_h
+#define _QY2StyleEditor_h
+
+#include <QDialog>
+#include "ui_QStyleEditor.h"
+
+
+/**
+ * @short Stylesheet Editor Dialog
+ **/
+
+class QY2StyleEditor : public QDialog
+{
+ Q_OBJECT
+
+public:
+
+ /**
+ * Constructor.
+ **/
+ QY2StyleEditor( QWidget *parent );
+
+ /**
+ * Destructor.
+ **/
+ ~QY2StyleEditor();
+
+private slots:
+
+ /**
+ * sets the text written in the text browser as style sheet
+ **/
+ void slotApplyStyle();
+
+ /**
+ * loads a style sheet form a file
+ **/
+ void slotLoadFile();
+
+ /**
+ * triggers style sheet auto apply if user has selected
+ **/
+ void slotTextChanged();
+
+private:
+ Ui_QStyleEditor ui;
+
+};
+
+#endif
+
--
To unsubscribe, e-mail: yast-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: yast-commit+help(a)opensuse.org
1
0
[yast-commit] r54276 - in /branches/tmp/tgoettlicher/yast2cc_rewrite/src: CMakeLists.txt kde/ kde/CMakeLists.txt kde/kcmyast.cpp kde/kcmyast.destop kde/kcmyast.h main_window.cpp
by dmacvicar@svn.opensuse.org 18 Dec '08
by dmacvicar@svn.opensuse.org 18 Dec '08
18 Dec '08
Author: dmacvicar
Date: Thu Dec 18 16:44:13 2008
New Revision: 54276
URL: http://svn.opensuse.org/viewcvs/yast?rev=54276&view=rev
Log:
- remove the delegate until we create our own without the kcm stuff
- add a kcm module
Added:
branches/tmp/tgoettlicher/yast2cc_rewrite/src/kde/
branches/tmp/tgoettlicher/yast2cc_rewrite/src/kde/CMakeLists.txt
branches/tmp/tgoettlicher/yast2cc_rewrite/src/kde/kcmyast.cpp
branches/tmp/tgoettlicher/yast2cc_rewrite/src/kde/kcmyast.destop
branches/tmp/tgoettlicher/yast2cc_rewrite/src/kde/kcmyast.h
Modified:
branches/tmp/tgoettlicher/yast2cc_rewrite/src/CMakeLists.txt
branches/tmp/tgoettlicher/yast2cc_rewrite/src/main_window.cpp
Modified: branches/tmp/tgoettlicher/yast2cc_rewrite/src/CMakeLists.txt
URL: http://svn.opensuse.org/viewcvs/yast/branches/tmp/tgoettlicher/yast2cc_rewr…
==============================================================================
--- branches/tmp/tgoettlicher/yast2cc_rewrite/src/CMakeLists.txt (original)
+++ branches/tmp/tgoettlicher/yast2cc_rewrite/src/CMakeLists.txt Thu Dec 18 16:44:13 2008
@@ -15,12 +15,12 @@
main.cpp
main_window.cpp
kcategorizedview.cpp
- menuitem.cpp
+ # menuitem.cpp
kcategorydrawer.cpp
kcategorizedsortfilterproxymodel.cpp
- kcmodulemodel.cpp
- moduleiconitem.cpp
- kcmoduleinfo.cpp
+ # kcmodulemodel.cpp
+ # moduleiconitem.cpp
+ # kcmoduleinfo.cpp
yqdesktopfilesmodel.cpp
yqmodulegroupsmodel.cpp
@@ -35,12 +35,12 @@
SET(yast2-control-center_HDRS
main_window.h
kcategorizedview.h
- menuitem.h
- kcmodulemodel.h
+ # menuitem.h
+ # kcmodulemodel.h
kcategorydrawer.h
kcategorizedsortfilterproxymodel.h
- moduleiconitem.h
- kcmoduleinfo.h
+ # moduleiconitem.h
+ # kcmoduleinfo.h
kcategorizedview_p.h
yqdesktopfilesmodel.h
@@ -71,6 +71,12 @@
yqmodulegroupsmodel.cpp
yqmodulesmodel.cpp )
+
QT4_AUTOMOC(${MODELS_TEST_SRCS})
ADD_EXECUTABLE(models_test ${MODELS_TEST_SRCS})
-TARGET_LINK_LIBRARIES(models_test ${QT_QTCORE_LIBRARIES} ${QT_QTGUI_LIBRARIES})
\ No newline at end of file
+TARGET_LINK_LIBRARIES(models_test ${QT_QTCORE_LIBRARIES} ${QT_QTGUI_LIBRARIES})
+
+FIND_PACKAGE(KDE4)
+IF ( KDE4_FOUND )
+ ADD_SUBDIRECTORY(kde)
+ENDIF ( KDE4_FOUND )
Added: branches/tmp/tgoettlicher/yast2cc_rewrite/src/kde/CMakeLists.txt
URL: http://svn.opensuse.org/viewcvs/yast/branches/tmp/tgoettlicher/yast2cc_rewr…
==============================================================================
--- branches/tmp/tgoettlicher/yast2cc_rewrite/src/kde/CMakeLists.txt (added)
+++ branches/tmp/tgoettlicher/yast2cc_rewrite/src/kde/CMakeLists.txt Thu Dec 18 16:44:13 2008
@@ -0,0 +1,13 @@
+
+set(kcmyast_SRCS kcmyast.cpp)
+
+include_directories(${KDE4_INCLUDES})
+
+kde4_add_plugin(kcm_yast ${kcmyast_SRCS})
+target_link_libraries(kcm_yast ${KDE4_KDEUI_LIBS} ${KDE4_KPARTS_LIBS} ${KDE4_KNEWSTUFF2_LIBS} ${KDE4_KUTILS_LIBRARY})
+
+install(TARGETS kcm_yast DESTINATION ${PLUGIN_INSTALL_DIR} )
+
+########### install files ###############
+install( FILES kcmyast.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
+install( FILES emoticons.knsrc DESTINATION ${CONFIG_INSTALL_DIR} )
Added: branches/tmp/tgoettlicher/yast2cc_rewrite/src/kde/kcmyast.cpp
URL: http://svn.opensuse.org/viewcvs/yast/branches/tmp/tgoettlicher/yast2cc_rewr…
==============================================================================
--- branches/tmp/tgoettlicher/yast2cc_rewrite/src/kde/kcmyast.cpp (added)
+++ branches/tmp/tgoettlicher/yast2cc_rewrite/src/kde/kcmyast.cpp Thu Dec 18 16:44:13 2008
@@ -0,0 +1,43 @@
+
+#include <KAboutData>
+
+#include <kdecore_export.h>
+#include <kgenericfactory.h>
+
+
+#include "kcmyast.h"
+
+K_PLUGIN_FACTORY(YaSTFactory, registerPlugin<KCMYaST>();)
+K_EXPORT_PLUGIN(YaSTFactory("yast", "kcm_yast"))
+
+KCMYaST::KCMYaST(QWidget *parent, const QVariantList &args)
+ : KCModule(YaSTFactory::componentData(), parent, args)
+{
+ KAboutData *about = new KAboutData("kcm_yast", 0, ki18n("YaST"), "1.0");
+ setAboutData(about);
+// setButtons(Apply | Help);
+}
+
+KCMYaST::~KCMYaST()
+{
+}
+
+bool caseInsensitiveLessThan(const QString &s1, const QString &s2)
+{
+ return (QString::localeAwareCompare(s1, s2) < 0);
+}
+
+void KCMYaST::load()
+{
+ emit changed(false);
+}
+
+void KCMYaST::save()
+{
+}
+
+void KCMYaST::defaults()
+{
+// emit changed(true);
+ emit changed(false);
+}
Added: branches/tmp/tgoettlicher/yast2cc_rewrite/src/kde/kcmyast.destop
URL: http://svn.opensuse.org/viewcvs/yast/branches/tmp/tgoettlicher/yast2cc_rewr…
==============================================================================
--- branches/tmp/tgoettlicher/yast2cc_rewrite/src/kde/kcmyast.destop (added)
+++ branches/tmp/tgoettlicher/yast2cc_rewrite/src/kde/kcmyast.destop Thu Dec 18 16:44:13 2008
@@ -0,0 +1,13 @@
+[Desktop Entry]
+Exec=kcmshell4 kcm_yast
+Icon=yast
+Type=Service
+X-DocPath=kcontrol/emoticons/index.html
+
+X-KDE-ServiceTypes=KCModule,KCModuleInit
+X-KDE-Library=kcm_yast
+X-KDE-ParentApp=kcontrol
+X-KDE-System-Settings-Parent-Category=computer-administration
+X-KDE-Weight=110
+
+Name=Advanced Administration (YaST)
Added: branches/tmp/tgoettlicher/yast2cc_rewrite/src/kde/kcmyast.h
URL: http://svn.opensuse.org/viewcvs/yast/branches/tmp/tgoettlicher/yast2cc_rewr…
==============================================================================
--- branches/tmp/tgoettlicher/yast2cc_rewrite/src/kde/kcmyast.h (added)
+++ branches/tmp/tgoettlicher/yast2cc_rewrite/src/kde/kcmyast.h Thu Dec 18 16:44:13 2008
@@ -0,0 +1,42 @@
+/*---------------------------------------------------------------------\
+| |
+| __ __ _____ _____ |
+| \ \ / / / ___|_ _| |
+| \ V /__ _\ `--. | | |
+| \ // _` |`--. \ | | |
+| | | (_| /\__/ / | | |
+| \_/\__,_\____/ \_/ |
+| |
+\---------------------------------------------------------------------*/
+
+#ifndef KCMYAST_H
+#define KCMYAST_H
+
+#include <QStringList>
+
+#include <kcmodule.h>
+
+/**
+ * Embeds the YaST main module list into
+ * a KDE KCM module
+ *
+ * @author Duncan Mac-Vicar P. <dmacvicar(a)suse.de>
+ */
+class KCMYaST : public KCModule
+{
+ Q_OBJECT
+
+public:
+ /**
+ * reimplemented from KCModule
+ */
+ KCMYaST(QWidget *parent, const QVariantList &args);
+ ~KCMYaST();
+ virtual void load();
+ virtual void save();
+ virtual void defaults();
+};
+
+#endif
+
+
Modified: branches/tmp/tgoettlicher/yast2cc_rewrite/src/main_window.cpp
URL: http://svn.opensuse.org/viewcvs/yast/branches/tmp/tgoettlicher/yast2cc_rewr…
==============================================================================
--- branches/tmp/tgoettlicher/yast2cc_rewrite/src/main_window.cpp (original)
+++ branches/tmp/tgoettlicher/yast2cc_rewrite/src/main_window.cpp Thu Dec 18 16:44:13 2008
@@ -28,7 +28,7 @@
#include "yqmodulesmodel.h"
#include "yqmodulegroupsmodel.h"
-#include "moduleiconitem.h"
+//#include "moduleiconitem.h"
class MainWindow::Private
{
@@ -89,7 +89,7 @@
// tv->setSpacing(KDialog::spacingHint());
d->modview->setCategoryDrawer( drawer );
d->modview->setViewMode( QListView::IconMode );
- d->modview->setItemDelegate( new ModuleIconItemDelegate( this ) );
+ //d->modview->setItemDelegate( new ModuleIconItemDelegate( this ) );
d->modview->setMouseTracking( true );
d->modview->viewport()->setAttribute( Qt::WA_Hover );
--
To unsubscribe, e-mail: yast-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: yast-commit+help(a)opensuse.org
1
0
[yast-commit] r54275 - /trunk/autoinstallation/doc/CreateProfileDetails.xml
by ug@svn.opensuse.org 18 Dec '08
by ug@svn.opensuse.org 18 Dec '08
18 Dec '08
Author: ug
Date: Thu Dec 18 15:15:26 2008
New Revision: 54275
URL: http://svn.opensuse.org/viewcvs/yast?rev=54275&view=rev
Log:
kdump docu fixed
Modified:
trunk/autoinstallation/doc/CreateProfileDetails.xml
Modified: trunk/autoinstallation/doc/CreateProfileDetails.xml
URL: http://svn.opensuse.org/viewcvs/yast/trunk/autoinstallation/doc/CreateProfi…
==============================================================================
--- trunk/autoinstallation/doc/CreateProfileDetails.xml (original)
+++ trunk/autoinstallation/doc/CreateProfileDetails.xml Thu Dec 18 15:15:26 2008
@@ -2512,7 +2512,7 @@
</title>
<note>
- This feature is only available since openSUSE 11.1 and SLES 11. It is not available
+ This feature is only available since SLES 11 (not openSUSE 11.1). It is not available
on the <emphasis>zSeries</emphasis> (<emphasis>s390x</emphasis>) architecture!
</note>
@@ -2686,6 +2686,7 @@
</para>
</section>
<!-- }}} -->
+
<!-- {{{ Dump Saving -->
<section id="CreateProfile.kdump.saving">
<title>
--
To unsubscribe, e-mail: yast-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: yast-commit+help(a)opensuse.org
1
0