dot.umeru.ma

Windows

Overview

Windows setup uses:

macOS and Linux continue to use GNU Stow with home/.

install-win

This repository is installed at ~/Codes/dotfiles.

Review the script before running:
https://dot.umeru.ma/install-win

Before running install-win, enable Developer Mode (required for symlink creation).

Open the Settings page directly:

Start-Process "ms-settings:developers"

In PowerShell (Windows PowerShell 5.1 is OK for the bootstrap; it will re-launch in PowerShell 7):

irm https://dot.umeru.ma/install-win | iex

What it does:

  1. Installs PowerShell 7 if needed
  2. Clones the repo to ~/Codes/dotfiles
  3. Runs winget configure with win/bootstrap.winget (PowerShell 7, Git, mise)
  4. Installs the PSDotFiles module from the PowerShell Gallery
  5. Runs mise run deploy to link home-win/

Deploy dotfiles

From the repo root in PowerShell 7:

cd $env:USERPROFILE\Codes\dotfiles
mise run deploy

This runs Install-DotFiles home-win via script/deploy.ps1.

Remove symlinks:

mise run clean

Install applications

GUI and other apps are listed in win/apps.winget:

mise run install-apps

Edit that file to add or remove packages. Each entry uses Microsoft.WinGet.DSC/WinGetPackage with a winget package id.

Preview a configuration file:

winget configure show -f win/apps.winget

Requires WinGet v1.6.2631 or later for winget configure.

PowerShell profile and mise

home-win/Documents/PowerShell/Microsoft.PowerShell_profile.ps1 sets:

  • $env:DOTFILES
  • dot to jump to the repo
  • mise activate pwsh on shell start

Use PowerShell 7 (pwsh). mise activation on Windows PowerShell 5.1 is not supported; see mise PowerShell discussion.

PSDotFiles creates symbolic links. Enable Developer Mode:

Settings → System → For developers → Developer Mode

Or run the deploy shell as Administrator.

If $PROFILE already exists, back it up before the first deploy. On conflict, PSDotFiles reports an error; resolve manually or use PSDotFiles -WhatIf first:

$DotFilesPath = "$HOME\Codes\dotfiles"
Import-Module PSDotFiles
Install-DotFiles home-win -WhatIf

home/ vs home-win/

DirectoryUsed onTool
home/macOS, LinuxGNU Stow
home-win/WindowsPSDotFiles

Keep Windows-specific files in home-win/ so mac-only tools (Karabiner, Ghostty, etc.) are not deployed on Windows.

On this page