bootstrap/bootstrap-Windows.ps1
Kenneth Benzie (Benie) 3606f4bbb9 Update Windows bootstrap scripts
* Add `bootstrap-Windows.ps1` sets up the bare minimum required to start
  Debian in WSL2 sharing SSH keys with the Windows host and enable SSH
  server for remote access.
* Add `bootstrap-Windows.sh` copies Windows host SSH keys, upgrades
  Debian to unstable, then installs Ansible and dependencies.
* Remove `bootstrap-Windows.cmd`.
2022-06-11 15:45:58 +01:00

27 lines
1023 B
PowerShell

[CmdletBinding()]
Param(
[Parameter(Mandatory=$true)]
[String]$email,
[String]$sshKeyType = "ed25519"
)
# Install Chocolatey
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
# Enable Hyper-V and containters
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
Enable-WindowsOptionalFeature -Online -FeatureName Containers -All
# Install OpenSSH and start service
choco install --yes "--package-parameters=/SSHServerFeature" openssh
Start-Service sshd
Set-Service -Name sshd -StartupType 'Automatic'
# generate keys and authorize them
ssh-keygen -t "$sshKeyType" -C "$email" -f "$env:USERPROFILE/.ssh/$sshKeyType"
# TODO: authorize public key for admin
# Install Windows-Terminal and Debian
choco install --yes microsoft-windows-terminal
wsl --install --distribution Debia