diff --git a/src/define.sh b/src/define.sh index 270ca6f..97ac3fd 100644 --- a/src/define.sh +++ b/src/define.sh @@ -420,4 +420,125 @@ migrateFiles() { return 0 } +configXP() { + + local dir="$1" + local target="$2" + + # Windows XP Pro generic key (no activation) + local key="DR8GV-C8V6J-BYXHG-7PYJR-DB66Y" + + find "$target" -maxdepth 1 -type f -iname winnt.sif -exec rm {} \; + + { echo "[Data]" + echo "AutoPartition=1" + echo "MsDosInitiated=\"0\"" + echo "UnattendedInstall=\"Yes\"" + echo "AutomaticUpdates=\"Yes\"" + echo "" + echo "[Unattended]" + echo "UnattendSwitch=Yes" + echo "UnattendMode=FullUnattended" + echo "FileSystem=NTFS" + echo "OemSkipEula=Yes" + echo "OemPreinstall=Yes" + echo "Repartition=Yes" + echo "WaitForReboot=\"No\"" + echo "DriverSigningPolicy=\"Ignore\"" + echo "NonDriverSigningPolicy=\"Ignore\"" + echo "OemPnPDriversPath=\"Drivers\viostor;Drivers\NetKVM;Drivers\sata\"" + echo "NoWaitAfterTextMode=1" + echo "NoWaitAfterGUIMode=1" + echo "FileSystem-ConvertNTFS" + echo "ExtendOemPartition=0" + echo "Hibernation=\"No\"" + echo "" + echo "[GuiUnattended]" + echo "OEMSkipRegional=1" + echo "OemSkipWelcome=1" + echo "AdminPassword=*" + echo "TimeZone=0" + echo "AutoLogon=Yes" + echo "AutoLogonCount=65432" + echo "" + echo "[UserData]" + echo "FullName=\"Docker\"" + echo "ComputerName=\"*\"" + echo "OrgName=\"Windows for Docker\"" + echo "ProductKey=$key" + echo "" + echo "[Identification]" + echo "JoinWorkgroup = WORKGROUP" + echo "" + echo "[Networking]" + echo "InstallDefaultComponents=Yes" + echo "" + echo "[Branding]" + echo "BrandIEUsingUnattended=Yes" + echo "" + echo "[URL]" + echo "Home_Page = http://www.google.com" + echo "Search_Page = http://www.google.com" + echo "" + echo "[RegionalSettings]" + echo "Language=00000409" + echo "" + echo "[TerminalServices]" + echo "AllowConnections=1" + } | unix2dos > "$target/WINNT.SIF" + + { echo "Windows Registry Editor Version 5.00" + echo "" + echo "[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Security]" + echo "\"FirstRunDisabled\"=dword:00000001" + echo "\"AntiVirusOverride\"=dword:00000001" + echo "\"FirewallOverride\"=dword:00000001" + echo "\"FirewallDisableNotify\"=dword:00000001" + echo "\"UpdatesDisableNotify\"=dword:00000001" + echo "\"AntiVirusDisableNotify\"=dword:00000001" + echo "" + echo "[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\wscsvc]" + echo "\"Start\"=dword:00000004" + echo "" + echo "[HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\WindowsFirewall\StandardProfile]" + echo "\"EnableFirewall\"=dword:00000000" + echo "" + echo "[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess]" + echo "\"Start\"=dword:00000004" + echo + echo "[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\GloballyOpenPorts\List]" + echo "\"3389:TCP\"=\"3389:TCP:*:Enabled:@xpsp2res.dll,-22009\"" + echo "" + echo "[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa]" + echo "\"LimitBlankPasswordUse\"=dword:00000000" + echo "" + echo "[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Applets\Tour]" + echo "\"RunCount\"=dword:00000000" + echo "" + echo "[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced]" + echo "\"HideFileExt\"=dword:00000000" + echo "" + echo "[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]" + echo "\"DefaultUserName\"=\"Docker\"" + echo "\"DefaultDomainName\"=\"Dockur\"" + echo "\"AltDefaultUserName\"=\"Docker\"" + echo "\"AltDefaultDomainName\"=\"Dockur\"" + echo "\"AutoAdminLogon\"=\"1\"" + } | unix2dos > "$dir/\$OEM\$/install.reg" + + { echo "Set WshShell = WScript.CreateObject(\"WScript.Shell\")" + echo "Set WshNetwork = WScript.CreateObject(\"WScript.Network\")" + echo "Set oMachine = GetObject(\"WinNT://\" & WshNetwork.ComputerName)" + echo "Set oInfoUser = GetObject(\"WinNT://\" & WshNetwork.ComputerName & \"/Administrator,user\")" + echo "Set oUser = oMachine.MoveHere(oInfoUser.ADsPath,\"Docker\")" + } | unix2dos > "$dir/\$OEM\$/admin.vbs" + + { echo "[COMMANDS]" + echo "\"REGEDIT /s install.reg\"" + echo "\"Wscript admin.vbs\"" + } | unix2dos > "$dir/\$OEM\$/cmdlines.txt" + + return 0 +} + return 0