Skip to content

thiru-mcw/woa-setup

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 

Repository files navigation

Windows ARM64 Setup from bare metal

This is on a Windows Pro 11 build 10.0.26100 machine.

Install Visual Studio community edition from https://visualstudio.microsoft.com with options:

A recent installation of Windows should have the App Installer application. This includes the winget command line installer.

Use winget search something to search for suitable installers.

Install some useful tools

winget install Mozilla.Firefox
winget install BurntSushi.ripgrep.GNU
winget install vim.vim

Put vim on PATH:

$prev_env = [Environment]::GetEnvironmentVariable("PATH", "User")
$vim_path = "$env:PROGRAMFILES\Vim\vim91"
[Environment]::SetEnvironmentVariable("PATH", "$prev_env;$vim_path", "User")

Vim keybindings for PowerShell

Install-Module PsReadline -Scope CurrentUser
# Find profile file.
echo $PROFILE

Edit, and add line:

Set-PSReadlineOption -EditMode vi

Perl

Needed for OpenBLAS build. You can use the Perl provided with the Git installation.

$git_usr_bin = (Split-Path (Split-Path (Get-Command git).Path)) + "\usr\bin"
$prev_path = [Environment]::GetEnvironmentVariable("PATH", "User")
[Environment]::SetEnvironmentVariable("PATH", "$git_usr_bin;$prev_path", "User")

SSH server

Set up SSH server: from an Administrator Terminal:

Add-WindowsCapability -Online -Name openssh.server
Start-Service sshd
Set-Service -Name sshd -StartupType 'Automatic'
New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22

Configure SSH shell as Powershell:

New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -PropertyType String -Force

Copy any authorized keys to file named below, then:

icacls.exe "C:\ProgramData\ssh\administrators_authorized_keys" /inheritance:r /grant "Administrators:F" /grant "SYSTEM:F"

Other useful setup

Enable remote desktop (search for remote desktop settings, enable).

Windows search for "lid" and select "Do Nothing" for close lid when powered (to use a server with lid closed).

Self-hosted runner

See https://github.com/matthew-brett/scipy-windows-arm/settings/actions/runners/new?arch=arm64&os=win. I chose the defaults througout.

The runner runs only on pushes to the main branch.

About

Setup for Windows on ARM machine

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published