[Libosinfo] [PATCH 2/2] win8: Add install script

Zeeshan Ali (Khattak) zeeshanak at gnome.org
Wed Jan 2 21:11:57 UTC 2013


From: "Zeeshan Ali (Khattak)" <zeeshanak at gnome.org>

Alternative patch to add Windows 8 installer that makes use of
'xi:include' nodes to save space. However I failed to make it work.
Either the xpointer is wrong and/or (more likely) this node is not
automatically substituted by libxml2.

There is special xinclude API in libxml2 that probably solves our
problem but it works on DOM API and we are using XPath to load/parse our
XML files.
---
 data/install-scripts/Makefile.am            |  1 +
 data/install-scripts/windows-8-unattend.xml | 45 +++++++++++++++++++++++++++++
 data/oses/windows.xml.in                    |  3 +-
 3 files changed, 48 insertions(+), 1 deletion(-)
 create mode 100644 data/install-scripts/windows-8-unattend.xml

diff --git a/data/install-scripts/Makefile.am b/data/install-scripts/Makefile.am
index cb24e09..29715d2 100644
--- a/data/install-scripts/Makefile.am
+++ b/data/install-scripts/Makefile.am
@@ -6,6 +6,7 @@ database_DATA =     \
   windows-cmd.xml   \
   windows-reg.xml   \
   windows-unattend.xml \
+  windows-8-unattend.xml \
   $(NULL)
 
 EXTRA_DIST = $(database_DATA)
diff --git a/data/install-scripts/windows-8-unattend.xml b/data/install-scripts/windows-8-unattend.xml
new file mode 100644
index 0000000..fe7ea7b
--- /dev/null
+++ b/data/install-scripts/windows-8-unattend.xml
@@ -0,0 +1,45 @@
+<libosinfo version="0.0.1" xmlns:xi="http://www.w3.org/2001/XInclude">
+  <install-script id='http://microsoft.com/windows/8/unattend/jeos'>
+    <profile>jeos</profile>
+    <path-format>dos</path-format>
+    <product-key-format>$$$$$-$$$$$-$$$$$-$$$$$-$$$$$</product-key-format>
+   <expected-filename>autounattend.xml</expected-filename>
+   <can-pre-install-drivers>true</can-pre-install-drivers>
+    <config>
+      <param name="admin-password" policy="optional"/>
+      <param name="hardware-arch" policy="optional"/>
+      <param name="l10n-language" policy="optional"/>
+      <param name="user-login" policy="optional"/>
+      <param name="user-password" policy="optional"/>
+      <param name="user-realname" policy="optional"/>
+      <param name="reg-product-key" policy="required"/>
+      <param name="target-disk" policy="optional"/>
+      <param name="pre-install-drivers-disk" policy="optional"/>
+      <param name="pre-install-drivers-location" policy="optional"/>
+    </config>
+    <xi:include href="windows-unattend.xml" parse="xml" xpointer="xpointer(/libosinfo/install-script[1]/template)"/>
+  </install-script>
+
+  <!-- DESKTOP PROFILE -->
+  <install-script id='http://microsoft.com/windows/8/unattend/desktop'>
+   <profile>desktop</profile>
+   <path-format>dos</path-format>
+   <product-key-format>$$$$$-$$$$$-$$$$$-$$$$$-$$$$$</product-key-format>
+   <expected-filename>autounattend.xml</expected-filename>
+   <can-pre-install-drivers>true</can-pre-install-drivers>
+   <config>
+    <param name="admin-password" policy="optional"/>
+    <param name="hardware-arch" policy="required"/>
+    <param name="l10n-language" policy="optional"/>
+    <param name="user-login" policy="optional"/>
+    <param name="user-password" policy="optional"/>
+    <param name="user-realname" policy="optional"/>
+    <param name="hostname" policy="required"/>
+    <param name="reg-product-key" policy="required"/>
+    <param name="target-disk" policy="optional"/>
+    <param name="pre-install-drivers-disk" policy="optional"/>
+    <param name="pre-install-drivers-location" policy="optional"/>
+   </config>
+   <xi:include href="windows-unattend.xml" parse="xml" xpointer="xpointer(/libosinfo/install-script[2]/template)"/>
+  </install-script>
+</libosinfo>
diff --git a/data/oses/windows.xml.in b/data/oses/windows.xml.in
index 310de62..364fcaa 100644
--- a/data/oses/windows.xml.in
+++ b/data/oses/windows.xml.in
@@ -822,7 +822,8 @@
     </devices>
 
     <installer>
-      <script id='http://microsoft.com/windows/unattend'/>
+      <script id='http://microsoft.com/windows/8/unattend/jeos'/>
+      <script id='http://microsoft.com/windows/8/unattend/desktop'/>
     </installer>
   </os>
 
-- 
1.8.0.2




More information about the Libosinfo mailing list