From cf033a03ca773b840f3ef8fcd6f717e6acd14ebd Mon Sep 17 00:00:00 2001 From: Kroese Date: Sun, 28 Jan 2024 19:02:03 +0100 Subject: [PATCH] feat: Initial Windows Server 2025 support (#123) --- assets/win2025-eval.xml | 331 ++++++++++++++++++++++++++++++++++++++++ src/install.sh | 2 + 2 files changed, 333 insertions(+) create mode 100644 assets/win2025-eval.xml diff --git a/assets/win2025-eval.xml b/assets/win2025-eval.xml new file mode 100644 index 0000000..3c633c3 --- /dev/null +++ b/assets/win2025-eval.xml @@ -0,0 +1,331 @@ + + + + + + en-US + + 0409:00000409 + en-US + en-US + en-US + en-US + + + + + 0 + true + + + + 1 + EFI + 128 + + + + 2 + MSR + 128 + + + + 3 + Primary + true + + + + + + 1 + 1 + + FAT32 + + + + 2 + 2 + + + + 3 + 3 + + C + NTFS + + + + + + + + + /IMAGE/NAME + Windows Server 2025 SERVERSTANDARD + + + + 0 + 3 + + OnError + false + + + + true + Never + + + false + Never + + + true + Docker + Windows for Docker + + + false + + false + + + + + + D:\viostor\2k22\amd64 + + + D:\NetKVM\2k22\amd64 + + + D:\Balloon\2k22\amd64 + + + D:\pvpanic\2k22\amd64 + + + D:\qemupciserial\2k22\amd64 + + + D:\qxldod\2k22\amd64 + + + D:\vioinput\2k22\amd64 + + + D:\viorng\2k22\amd64 + + + D:\vioscsi\2k22\amd64 + + + D:\vioserial\2k22\amd64 + + + D:\viogpudo\2k22\amd64 + + + D:\sriov\2k22\amd64 + + + D:\viofs\2k22\amd64 + + + + + + + false + + + + + true + + + 1 + + + + + true + + + * + + Dockur + Windows for Docker + 24/7 + + Dockur + https://github.com/dockur/windows/issues + + Windows for Docker + + + 1 + + + true + true + https://google.com + about:blank + + + true + true + https://google.com + about:blank + + + 0 + + + 1 + + + 0409:00000409 + en-US + en-US + en-US + en-US + + + true + + + true + + + false + + + 0 + + + + + true + Remote Desktop + all + + + + + + + true + + + 1 + + + + + + Docker + Administrators + + + true</PlainText> + </Password> + </LocalAccount> + </LocalAccounts> + <AdministratorPassword> + <Value>password</Value> + <PlainText>true</PlainText> + </AdministratorPassword> + </UserAccounts> + <AutoLogon> + <Username>Docker</Username> + <Enabled>true</Enabled> + <LogonCount>1</LogonCount> + <Password> + <Value /> + <PlainText>true</PlainText> + </Password> + </AutoLogon> + <OOBE> + <HideEULAPage>true</HideEULAPage> + <HideLocalAccountScreen>true</HideLocalAccountScreen> + <HideOEMRegistrationScreen>true</HideOEMRegistrationScreen> + <HideOnlineAccountScreens>true</HideOnlineAccountScreens> + <HideWirelessSetupInOOBE>true</HideWirelessSetupInOOBE> + <NetworkLocation>Other</NetworkLocation> + <ProtectYourPC>3</ProtectYourPC> + <SkipUserOOBE>true</SkipUserOOBE> + <SkipMachineOOBE>true</SkipMachineOOBE> + </OOBE> + <RegisteredOrganization>Dockur</RegisteredOrganization> + <RegisteredOwner>Windows for Docker</RegisteredOwner> + <FirstLogonCommands> + <SynchronousCommand wcm:action="add"> + <Order>1</Order> + <CommandLine>reg.exe add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v AutoLogonCount /t REG_DWORD /d 0 /f</CommandLine> + <Description>Set AutoLogonCount to 0</Description> + </SynchronousCommand> + <SynchronousCommand wcm:action="add"> + <Order>2</Order> + <CommandLine>reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\Lsa" /v LimitBlankPasswordUse /t REG_DWORD /d 0 /f</CommandLine> + <Description>Allow RDP login with blank password</Description> + </SynchronousCommand> + <SynchronousCommand wcm:action="add"> + <Order>3</Order> + <CommandLine>cmd /C wmic useraccount where name="Docker" set PasswordExpires=false</CommandLine> + <Description>Password Never Expires</Description> + </SynchronousCommand> + <SynchronousCommand wcm:action="add"> + <Order>4</Order> + <CommandLine>cmd /C POWERCFG -H OFF</CommandLine> + <Description>Disable Hibernation</Description> + </SynchronousCommand> + <SynchronousCommand wcm:action="add"> + <Order>5</Order> + <CommandLine>cmd /C POWERCFG -X -monitor-timeout-ac 0</CommandLine> + <Description>Disable monitor blanking</Description> + </SynchronousCommand> + <SynchronousCommand wcm:action="add"> + <Order>6</Order> + <CommandLine>reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\Network\NewNetworkWindowOff" /f</CommandLine> + <Description>Disable Network Discovery popup</Description> + </SynchronousCommand> + <SynchronousCommand wcm:action="add"> + <Order>7</Order> + <CommandLine>reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\Network\NetworkLocationWizard" /v "HideWizard" /t REG_DWORD /d 1 /f</CommandLine> + <Description>Disable Network Discovery popup</Description> + </SynchronousCommand> + <SynchronousCommand wcm:action="add"> + <Order>8</Order> + <CommandLine>reg.exe add "HKLM\SOFTWARE\Policies\Microsoft\Edge" /v "HideFirstRunExperience" /t REG_DWORD /d 1 /f</CommandLine> + <Description>Disable first-run experience in Edge</Description> + </SynchronousCommand> + <SynchronousCommand wcm:action="add"> + <Order>9</Order> + <CommandLine>reg.exe add "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v "HideFileExt" /t REG_DWORD /d 0 /f</CommandLine> + <Description>Show file extensions in Explorer</Description> + </SynchronousCommand> + <SynchronousCommand wcm:action="add"> + <Order>10</Order> + <CommandLine>reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\Power" /v "HibernateFileSizePercent" /t REG_DWORD /d 0 /f</CommandLine> + <Description>Zero Hibernation File</Description> + </SynchronousCommand> + <SynchronousCommand wcm:action="add"> + <Order>11</Order> + <CommandLine>reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\Power" /v "HibernateEnabled" /t REG_DWORD /d 0 /f</CommandLine> + <Description>Disable Hibernation Mode</Description> + </SynchronousCommand> + <SynchronousCommand wcm:action="add"> + <Order>12</Order> + <CommandLine>msiexec /i E:\virtio-win-gt-x64.msi /qb!</CommandLine> + <Description>Install VirtIO drivers</Description> + </SynchronousCommand> + </FirstLogonCommands> + </component> + </settings> +</unattend> diff --git a/src/install.sh b/src/install.sh index 4d026cc..9c4f09b 100644 --- a/src/install.sh +++ b/src/install.sh @@ -94,6 +94,7 @@ printVersion() { [[ "$id" == "win10"* ]] && desc="Windows 10" [[ "$id" == "win11"* ]] && desc="Windows 11" [[ "$id" == "winvista"* ]] && desc="Windows Vista" + [[ "$id" == "win2025"* ]] && desc="Windows Server 2025" [[ "$id" == "win2022"* ]] && desc="Windows Server 2022" [[ "$id" == "win2019"* ]] && desc="Windows Server 2019" [[ "$id" == "win2016"* ]] && desc="Windows Server 2016" @@ -353,6 +354,7 @@ getVersion() { [[ "${name,,}" == *"windows 8"* ]] && detected="win81x64" [[ "${name,,}" == *"windows 11"* ]] && detected="win11x64" [[ "${name,,}" == *"windows vista"* ]] && detected="winvistax64" + [[ "${name,,}" == *"server 2025"* ]] && detected="win2025-eval" [[ "${name,,}" == *"server 2022"* ]] && detected="win2022-eval" [[ "${name,,}" == *"server 2019"* ]] && detected="win2019-eval" [[ "${name,,}" == *"server 2016"* ]] && detected="win2016-eval"