A modular configuration bank for building reproducible development environments across platforms.
This repository provides automated setup scripts and dotfiles for macOS, Ubuntu Server, and Windows, enabling consistent development environments with a single command.
Bootstrap your entire development environment with one command:
curl -fsSL https://raw.githubusercontent.com/ZiedYousfi/myconfig/main/bootstrap.sh | bash -s -- macoscurl -fsSL https://raw.githubusercontent.com/ZiedYousfi/myconfig/main/bootstrap.sh | bash -s -- ubuntupowershell -NoProfile -ExecutionPolicy Bypass -Command "& { $p = Join-Path $env:TEMP 'bootstrap.ps1'; Invoke-WebRequest 'https://raw.githubusercontent.com/ZiedYousfi/myconfig/main/bootstrap.ps1' -OutFile $p; Unblock-File $p; & $p }"/!\ This does not work on Windows. Use the Windows command above instead.
curl -fsSL https://raw.githubusercontent.com/ZiedYousfi/myconfig/main/bootstrap.sh | bashThe bootstrap script will:
- Download the latest release
- Extract all configuration files
- Run the appropriate platform installer
- Set up dotfiles using GNU Stow (macOS/Ubuntu) or copy to Windows locations
- Install all necessary tools and packages
- Idempotent: Safe to run multiple times without side effects
- Modular: Shared dotfiles with platform-specific additions
- Automated: Installs all dependencies and tools
- Documented: Full specifications in SPECS.md
- Backed Up: Automatically backs up existing configurations
Each platform has an uninstall script:
./macos/uninstall.sh # macOS
./ubuntu-server/uninstall.sh # Ubuntu Server
./windows/uninstall.ps1 # Windows (PowerShell)See SPECS.md for complete configuration specifications and details about all installed components.
Minimal requirements - the bootstrap script handles everything else:
macOS/Ubuntu:
curl- for downloading- Internet connection
Windows:
- Winget (pre-installed on Windows 10 1709+)
- Internet connection