Cross-platform development environment installation scripts that set up a complete modern development stack including VS Code, Git, PowerShell 7, Oh My Posh with beautiful theming, and optionally Docker.
- π Visual Studio Code - Latest version with essential extensions
- π¦ Git - Complete version control system
- π» PowerShell 7 - Cross-platform PowerShell (latest)
- π¨ Oh My Posh - Beautiful prompt themes (Dracula default)
- π€ Nerd Fonts - Icon support in terminal
- π VS Code Extensions - Automatic installation
- βοΈ Profile Configuration - Automatic PowerShell profile setup
- π³ Docker Integration - Optional Docker installation
- PowerShell - PowerShell language support
- GitLens - Supercharged Git capabilities
- Dev Containers - Container-based development (optional)
- Docker - Docker support and management (optional)
- Dracula theme by default (customizable)
- PSReadLine integration with history prediction
- Useful aliases pre-configured
- Cross-shell support (PowerShell, Bash, Zsh)
# Full installation (Administrator required)
.\scripts\windows\Install-VSCode.ps1
# Skip Docker installation
.\scripts\windows\Install-VSCode.ps1 -SkipDocker
# Skip specific components
.\scripts\windows\Install-VSCode.ps1 -SkipGit -SkipPowerShell
# Use different Oh My Posh theme
.\scripts\windows\Install-VSCode.ps1 -OhMyPoshTheme "paradox"
# Skip all optional components
.\scripts\windows\Install-VSCode.ps1 -SkipDocker -SkipDevContainers -SkipOhMyPosh
# Show help
.\scripts\windows\Install-VSCode.ps1 -HelpParameters:
| Parameter | Type | Default | Description |
|---|---|---|---|
-SkipDocker |
Switch | $false |
Skip Docker installation |
-SkipDevContainers |
Switch | $false |
Skip Dev Containers extension |
-SkipGit |
Switch | $false |
Skip Git installation |
-SkipPowerShell |
Switch | $false |
Skip PowerShell 7 installation |
-SkipOhMyPosh |
Switch | $false |
Skip Oh My Posh installation |
-OhMyPoshTheme |
String | "dracula" |
Oh My Posh theme name |
-Help |
Switch | $false |
Display help |
# Make executable (first time only)
chmod +x scripts/linux/install-vscode.sh
# Full installation (sudo required)
sudo ./scripts/linux/install-vscode.sh
# Skip Docker installation
sudo ./scripts/linux/install-vscode.sh --skip-docker
# Use different theme
sudo ./scripts/linux/install-vscode.sh --ohmyposh-theme "paradox"
# Skip multiple components
sudo ./scripts/linux/install-vscode.sh --skip-docker --skip-devcontainers
# Show help
./scripts/linux/install-vscode.sh --helpOptions:
| Option | Description |
|---|---|
--skip-docker |
Skip Docker installation |
--skip-devcontainers |
Skip Dev Containers extension |
--skip-git |
Skip Git installation |
--skip-powershell |
Skip PowerShell 7 installation |
--skip-ohmyposh |
Skip Oh My Posh installation |
--ohmyposh-theme NAME |
Oh My Posh theme (default: dracula) |
-h, --help |
Display help |
# Make executable (first time only)
chmod +x scripts/macos/install-vscode.zsh
# Full installation
./scripts/macos/install-vscode.zsh
# Skip Docker installation
./scripts/macos/install-vscode.zsh --skip-docker
# Use different theme
./scripts/macos/install-vscode.zsh --ohmyposh-theme "night-owl"
# Show help
./scripts/macos/install-vscode.zsh --helpOptions: Same as Linux
- OS: Windows 10/11
- Privileges: Administrator
- Prerequisites: Winget (App Installer from Microsoft Store)
- Distributions: Ubuntu, Debian, Fedora, CentOS, Arch Linux
- Privileges: Root/sudo
- Kernel: Modern kernel (3.10+)
- Version: macOS 11.0 (Big Sur) or later
- Internet: Required (Homebrew auto-installed if needed)
- Windows: Latest Git for Windows via Winget
- Linux: Git from distribution repositories
- macOS: Git via Homebrew
- Windows: Latest PowerShell 7 via Winget
- Linux: PowerShell from Microsoft repositories
- macOS: PowerShell via Homebrew Cask
- Windows: Oh My Posh via Winget
- Linux: Oh My Posh via install script
- macOS: Oh My Posh via Homebrew
Includes:
- Dracula theme configuration (customizable)
- CascadiaCode/CaskaydiaCove Nerd Font
- Automatic profile configuration
- Windows: VS Code via Winget
- Linux: VS Code from Microsoft repositories
- macOS: VS Code via Homebrew Cask
- ms-vscode.powershell - PowerShell language support
- eamodio.gitlens - Git supercharged
- ms-vscode-remote.remote-containers - Dev Containers (optional)
- ms-azuretools.vscode-docker - Docker support (optional)
- Calls the
Install-Dockerscript for complete Docker setup - Includes all Docker prerequisites (WSL2, Hyper-V on Windows)
The script creates/updates PowerShell profiles with:
# Oh My Posh initialization with Dracula theme
oh-my-posh init pwsh --config "path/to/dracula.omp.json" | Invoke-Expression
# PSReadLine configuration for better editing
Import-Module PSReadLine
Set-PSReadLineOption -PredictionSource History
Set-PSReadLineOption -PredictionViewStyle ListView
Set-PSReadLineKeyHandler -Key UpArrow -Function HistorySearchBackward
Set-PSReadLineKeyHandler -Key DownArrow -Function HistorySearchForward
# Useful aliases
Set-Alias -Name g -Value git
Set-Alias -Name d -Value docker
Set-Alias -Name dc -Value docker-compose- Windows PowerShell 7:
$HOME\Documents\PowerShell\Microsoft.PowerShell_profile.ps1 - Windows PowerShell 5.1:
$HOME\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1 - Linux/macOS:
~/.config/powershell/Microsoft.PowerShell_profile.ps1 - Bash:
~/.bashrc(Linux) - Zsh:
~/.zshrc(macOS)
Popular themes you can use:
dracula(default) - Dark theme with purple accentsparadox- Minimalist with Git statusagnoster- Powerline-stylepowerlevel10k_rainbow- Colorful segmentsnight-owl- Dark blue themejandedobbeleer- Creator's themeatomic- Minimal and cleancapr4n- Elegant and simple
Browse all themes: https://ohmyposh.dev/docs/themes
Change theme:
# Windows
.\Install-VSCode.ps1 -OhMyPoshTheme "night-owl"
# Linux/macOS
./install-vscode.zsh --ohmyposh-theme "night-owl"# Windows - Everything included
.\scripts\windows\Install-VSCode.ps1
# After installation:
# - Launch PowerShell 7 (pwsh)
# - Open VS Code (code .)
# - Start Docker Desktop# Linux - Skip Docker for lightweight setup
sudo ./scripts/linux/install-vscode.sh --skip-docker
# Perfect for development without containers# macOS - Use night-owl theme
./scripts/macos/install-vscode.zsh --ohmyposh-theme "night-owl"# Windows - Only VS Code and extensions
.\scripts\windows\Install-VSCode.ps1 -SkipGit -SkipPowerShell -SkipOhMyPosh -SkipDocker-
Restart Terminal
# Close and reopen terminal to apply changes -
Launch PowerShell 7
pwsh
-
Verify Oh My Posh
- You should see the Dracula-themed prompt
- Icons require Nerd Font in terminal
-
Configure Terminal Font
- Windows Terminal: Settings > Profiles > PowerShell > Font Face > "CaskaydiaCove Nerd Font"
- VS Code: Settings > Terminal > Font Family > "CaskaydiaCove Nerd Font"
- iTerm2: Preferences > Profiles > Text > Font > "CaskaydiaCove Nerd Font"
-
Open VS Code
code . -
Verify Extensions
- Open Extensions panel (Ctrl+Shift+X)
- Verify PowerShell, GitLens, Dev Containers, Docker are installed
Install code command if not available:
- Open VS Code
- Command Palette (Cmd+Shift+P)
- Type: "Shell Command: Install 'code' command in PATH"
Winget not found:
- Install "App Installer" from Microsoft Store
- Or download from: https://aka.ms/getwinget
Oh My Posh theme not showing:
- Verify font is set to Nerd Font in terminal
- Restart terminal after installation
- Check:
oh-my-posh --version
PowerShell profile not loading:
- Check execution policy:
Get-ExecutionPolicy - Set if needed:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser - Verify profile exists:
Test-Path $PROFILE
PowerShell installation failed:
- Verify distribution is supported
- Update package lists:
sudo apt update - Check Microsoft repository setup
VS Code extensions not installing:
- Run
codecommand manually first - Verify user permissions
- Install extensions manually:
code --install-extension <extension-id>
Oh My Posh not showing:
- Verify installation:
which oh-my-posh - Check PATH:
echo $PATH - Source profile:
source ~/.bashrcorsource ~/.config/powershell/profile.ps1
Homebrew installation fails:
- Install manually: https://brew.sh
- Check Xcode Command Line Tools:
xcode-select --install
Code command not found:
- Open VS Code
- Install shell command from Command Palette
- Or add to PATH:
export PATH="$PATH:/Applications/Visual Studio Code.app/Contents/Resources/app/bin"
Font not displaying correctly:
- Install font manually:
brew install --cask font-caskaydia-cove-nerd-font - Configure terminal to use installed font
- Restart terminal
- Scripts require elevated privileges
- Official repositories used for all installations
- No credentials stored or transmitted
- Logs stored in temporary directories
- Downloads via HTTPS
- v1.0 - Initial release with full cross-platform support
Author: PowerScripts
License: MIT
Repository: PowerScripts