Switching to Windows as a Unix developer

I made the decision to use Windows on my laptop, which was mostly occasioned by my Developing on a dedicated server (NixOS) lately. The idea is to experience the best of both worlds — a performant, flexible and open development environment to which I remote from a laptop that has great user experience as well as battery life.

Basics

  • Install WSL 2: Enables us to run Ubuntu, etc in a seamless manner.
  • Install Windows Terminal Preview: This will be our terminal app. Yes, Windows has an almost as good a terminal as Unix these days.

For power users

Nix

Follow instructions at https://github.com/srid/nix-config to get most software installed through Nix and home-manager.

Things to learn

  • WSL
  • PowerShell

Powershell for Unix users

  • Start an administrator shell (equivalent to sudo):
    Start-Process -Verb RunAs powershell
  • Manage services
    • Enable ssh-agent:
      Set-Service ssh-agent -StartupType Automatic
      Start-Service ssh-agent
  • Pretty prompts via Powerline: Tutorial: Set up Powerline in Windows Terminal (This works on Ubuntu as well, as long as Windows Terminal Preview is used)

Known issues

Created on: