mirror of
				https://github.com/oSoWoSo/DistroHopper.git
				synced 2024-08-14 22:46:53 +00:00 
			
		
		
		
	Add unattended configuration for Windows 10 and 11
Automates some of the install/configuration steps for Windows 10 and 11, most notably essential drivers and disk formatting.
This commit is contained in:
		
							parent
							
								
									8106026fd0
								
							
						
					
					
						commit
						d191d0da44
					
				
					 3 changed files with 163 additions and 4 deletions
				
			
		
							
								
								
									
										156
									
								
								quickget
									
										
									
									
									
								
							
							
						
						
									
										156
									
								
								quickget
									
										
									
									
									
								
							|  | @ -81,6 +81,153 @@ function releases_windows() { | |||
|     11 | ||||
| } | ||||
| 
 | ||||
| function unattended_windows() { | ||||
|     cat << 'EOF' > "${1}" | ||||
| <?xml version="1.0" encoding="utf-8"?> | ||||
| <unattend xmlns="urn:schemas-microsoft-com:unattend" | ||||
|   xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" | ||||
|   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> | ||||
| 
 | ||||
|   <!-- | ||||
|        For documentation on components: | ||||
|        http://technet.microsoft.com/en-us/library/ff699038.aspx | ||||
|   --> | ||||
| 
 | ||||
|   <settings pass="generalize"> | ||||
|     <!-- | ||||
|          The PersistAllDeviceInstalls setting indicates whether all plug and | ||||
|          play devices on the destination computer remain installed during the | ||||
|          generalize configuration pass. | ||||
|     --> | ||||
|     <component name="Microsoft-Windows-PnPSysprep" | ||||
|       processorArchitecture="amd64" | ||||
|       publicKeyToken="31bf3856ad364e35" | ||||
|       language="neutral" | ||||
|       versionScope="nonSxS"> | ||||
|       <PersistAllDeviceInstalls>true</PersistAllDeviceInstalls> | ||||
|     </component> | ||||
|   </settings> | ||||
| 
 | ||||
|   <settings pass="windowsPE"> | ||||
|     <component name="Microsoft-Windows-Setup" processorArchitecture="amd64" | ||||
|       publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS"> | ||||
|       <DiskConfiguration> | ||||
|         <Disk wcm:action="add"> | ||||
|           <DiskID>0</DiskID> | ||||
|           <WillWipeDisk>true</WillWipeDisk> | ||||
|           <CreatePartitions> | ||||
|             <CreatePartition wcm:action="add"> | ||||
|               <Order>1</Order> | ||||
|               <Type>EFI</Type> | ||||
|               <Size>100</Size> | ||||
|             </CreatePartition> | ||||
|             <CreatePartition wcm:action="add"> | ||||
|               <Order>2</Order> | ||||
|               <Type>MSR</Type> | ||||
|               <Size>512</Size> | ||||
|             </CreatePartition> | ||||
|             <CreatePartition wcm:action="add"> | ||||
|               <Order>3</Order> | ||||
|               <Type>Primary</Type> | ||||
|               <Extend>true</Extend> | ||||
|             </CreatePartition> | ||||
|           </CreatePartitions> | ||||
|           <ModifyPartitions> | ||||
|             <ModifyPartition wcm:action="add"> | ||||
|               <Order>1</Order> | ||||
|               <PartitionID>1</PartitionID> | ||||
|               <Label>System</Label> | ||||
|               <Format>FAT32</Format> | ||||
|             </ModifyPartition> | ||||
|             <ModifyPartition wcm:action="add"> | ||||
|               <Order>2</Order> | ||||
|               <PartitionID>3</PartitionID> | ||||
|               <Label>Windows</Label> | ||||
|               <Letter>C</Letter> | ||||
|               <Format>NTFS</Format> | ||||
|             </ModifyPartition> | ||||
|           </ModifyPartitions> | ||||
|         </Disk> | ||||
|         <WillShowUI>OnError</WillShowUI> | ||||
|       </DiskConfiguration> | ||||
|       <ImageInstall> | ||||
|         <OSImage> | ||||
|           <WillShowUI>OnError</WillShowUI> | ||||
|           <InstallTo> | ||||
|             <DiskID>0</DiskID> | ||||
|             <PartitionID>3</PartitionID> | ||||
|           </InstallTo> | ||||
|           </OSImage> | ||||
|       </ImageInstall> | ||||
|       <UserData> | ||||
|         <AcceptEula>true</AcceptEula> | ||||
|         <ProductKey> | ||||
|           <key>VK7JG-NPHTM-C97JM-9MPGT-3V66T</key> | ||||
|           <WillShowUI>Never</WillShowUI> | ||||
|         </ProductKey> | ||||
|       </UserData> | ||||
|       <DynamicUpdate> | ||||
|         <Enable>true</Enable> | ||||
|         <WillShowUI>Never</WillShowUI> | ||||
|       </DynamicUpdate> | ||||
|     </component> | ||||
| 
 | ||||
|     <component name="Microsoft-Windows-PnpCustomizationsWinPE" | ||||
|       publicKeyToken="31bf3856ad364e35" language="neutral" | ||||
|       versionScope="nonSxS" processorArchitecture="amd64"> | ||||
| 
 | ||||
|       <!-- | ||||
|            This makes the VirtIO drivers available to Windows, assuming that | ||||
|            the VirtIO driver disk | ||||
|            (https://alt.fedoraproject.org/pub/alt/virtio-win/latest/images/bin/) | ||||
|            is available as drive E: | ||||
|       --> | ||||
|       <DriverPaths> | ||||
|         <PathAndCredentials wcm:action="add" wcm:keyValue="1"> | ||||
|           <Path>E:\amd64\w10</Path> | ||||
|         </PathAndCredentials> | ||||
|         <PathAndCredentials wcm:action="add" wcm:keyValue="2"> | ||||
|           <Path>E:\viogpudo\w10\amd64</Path> | ||||
|         </PathAndCredentials> | ||||
|         <PathAndCredentials wcm:action="add" wcm:keyValue="3"> | ||||
|           <Path>E:\viorng\w10\amd64</Path> | ||||
|         </PathAndCredentials> | ||||
|         <PathAndCredentials wcm:action="add" wcm:keyValue="4"> | ||||
|           <Path>E:\NetKVM\w10\amd64</Path> | ||||
|         </PathAndCredentials> | ||||
|       </DriverPaths> | ||||
|     </component> | ||||
|   </settings> | ||||
| 
 | ||||
|   <settings pass="specialize"> | ||||
|     <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" | ||||
|       publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS"> | ||||
|       <ComputerName>*</ComputerName> | ||||
|       <OEMInformation> | ||||
|         <Manufacturer>Wimpys World</Manufacturer> | ||||
|         <Model>Quickemu</Model> | ||||
|         <SupportHours>24/7</SupportHours> | ||||
|         <SupportPhone></SupportPhone> | ||||
|         <SupportProvider>Wimpys World</SupportProvider> | ||||
|         <SupportURL>https://github.com/wimpysworld/quickemu/issues</SupportURL> | ||||
|       </OEMInformation> | ||||
|       <OEMName>Wimpys World</OEMName> | ||||
|     </component> | ||||
|   </settings> | ||||
| 
 | ||||
|   <settings pass="oobeSystem"> | ||||
|     <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" | ||||
|       publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS"> | ||||
|       <OOBE> | ||||
|         <HideOEMRegistrationScreen>true</HideOEMRegistrationScreen> | ||||
|         <HideWirelessSetupInOOBE>true</HideWirelessSetupInOOBE> | ||||
|       </OOBE> | ||||
|     </component> | ||||
|   </settings> | ||||
| </unattend> | ||||
| EOF | ||||
| } | ||||
| 
 | ||||
| function web_get() { | ||||
|     local DIR="${2}" | ||||
|     local FILE="" | ||||
|  | @ -382,6 +529,15 @@ function get_windows() { | |||
|     echo "Downloading virtio-win.iso..." | ||||
|     web_get "https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/stable-virtio/virtio-win.iso" "${VM_PATH}" | ||||
| 
 | ||||
|     #if [ ! -e "${VM_PATH}/unattended.iso" ]; then | ||||
|         case ${RELEASE} in | ||||
|             10|11) | ||||
|                 echo "Making unattended.iso" | ||||
|                 unattended_windows "${VM_PATH}/unattended/autounattend.xml" | ||||
|                 mkisofs -quiet -l -o "${VM_PATH}/unattended.iso" "${VM_PATH}/unattended/" | ||||
|                 ;; | ||||
|         esac | ||||
|     #fi | ||||
|     make_vm_config "${FILE_NAME}" "virtio-win.iso" | ||||
| 
 | ||||
|     start_vm_info | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue