{"id":20690533,"url":"https://github.com/notmyself/new-windows-dev-pc","last_synced_at":"2025-08-21T16:25:20.842Z","repository":{"id":255210612,"uuid":"848874147","full_name":"NotMyself/new-windows-dev-pc","owner":"NotMyself","description":"New dev pc setup and dotfiles","archived":false,"fork":false,"pushed_at":"2025-08-17T20:29:29.000Z","size":33,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-17T22:17:09.084Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PowerShell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NotMyself.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-08-28T15:04:05.000Z","updated_at":"2025-08-17T20:29:33.000Z","dependencies_parsed_at":"2025-05-19T17:32:31.770Z","dependency_job_id":null,"html_url":"https://github.com/NotMyself/new-windows-dev-pc","commit_stats":null,"previous_names":["notmyself/new-windows-dev-pc"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/NotMyself/new-windows-dev-pc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NotMyself%2Fnew-windows-dev-pc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NotMyself%2Fnew-windows-dev-pc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NotMyself%2Fnew-windows-dev-pc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NotMyself%2Fnew-windows-dev-pc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NotMyself","download_url":"https://codeload.github.com/NotMyself/new-windows-dev-pc/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NotMyself%2Fnew-windows-dev-pc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271507452,"owners_count":24771824,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-21T02:00:08.990Z","response_time":74,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-16T23:13:30.626Z","updated_at":"2025-08-21T16:25:20.834Z","avatar_url":"https://github.com/NotMyself.png","language":"PowerShell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Windows Developer Setup Automation\n\n[![PowerShell](https://img.shields.io/badge/PowerShell-5.1%2B-blue.svg)](https://github.com/PowerShell/PowerShell)\n[![Windows](https://img.shields.io/badge/Windows-10%2B-0078d4.svg)](https://www.microsoft.com/windows)\n[![License](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)\n\nA comprehensive Windows developer setup automation repository containing PowerShell scripts to install and configure development tools, IDEs, and environments for new developers. Features modular installation scripts and symbolic link-based configuration management.\n\n**Key Features:**\n- **Automated Tool Installation**: WinGet-based package management with progress tracking\n- **Configuration Management**: Symbolic links for centralized settings (Git, VSCode, PowerShell)\n- **Developer Fonts**: Cascadia Code font installation for optimal coding experience\n- **Modular Architecture**: Separate scripts for different installation components\n\n**Note:** All scripts automatically request Administrator privileges when needed - no need to \"Run as Administrator\" manually.\n\n## Table of Contents\n\n- [Prerequisites](#prerequisites)\n- [Quick Start](#quick-start)\n- [Installed Packages](#installed-packages)\n- [Configuration Management](#configuration-management)\n- [Troubleshooting](#troubleshooting)\n- [Repository Structure](#repository-structure)\n\n## Prerequisites\n\n- **Windows 10/11** - Modern Windows operating system\n- **PowerShell 5.1+** - Included with Windows (PowerShell 7+ will be installed)\n- **Administrator Access** - User account with elevation privileges (scripts handle elevation automatically)\n- **Internet Connection** - Required for downloading packages and tools\n\n## Quick Start\n\n### Two-Step Setup Process\n\n1. **Install Development Tools**\n   ```powershell\n   .\\install.ps1\n   ```\n   - Installs WinGet package manager (if not present)\n   - Installs development tools, IDEs, and utilities via WinGet\n   - Installs Cascadia Code developer fonts\n   - Installs curated VSCode extensions\n\n2. **Configure Development Environment**\n   ```powershell\n   .\\configure.ps1\n   ```\n   - Creates symbolic links for configuration files\n   - Sets up Git, VSCode, Windows Terminal, and PowerShell profiles\n   - Links custom hosts file and system configurations\n\n### Architecture Overview\n\nThis repository uses a **modular architecture** with clear separation of concerns:\n\n- **Core Scripts** (`install.ps1`, `configure.ps1`) - Main entry points with automatic elevation\n- **Installation Modules** (`installs/` directory) - Specialized installation scripts for different components\n- **Configuration Files** (`settings/` directory) - Centralized settings that get symlinked to user directories\n- **Symbolic Link Management** - Configuration files stay in the repository and are linked to system locations\n\n**💡 Tip**: You can run scripts from any PowerShell prompt or double-click them - they automatically request elevation when needed.\n\n## Installed Packages\n\nThe setup installs a comprehensive suite of development tools organized by category. All packages are installed via WinGet package manager for consistency and easy updates.\n\n### Windows \u0026 CLI Tools\n\n| Package | Description | Purpose |\n|---------|-------------|---------|\n| **WinGet** | CLI-based Windows package manager | Package installation and management |\n| **PowerToys** | Windows system utilities | Enhanced Windows functionality and productivity |\n| **Windows Terminal** | Modern terminal application | Enhanced terminal experience with dual-location configuration support |\n| **PowerShell** | Latest cross-platform PowerShell | Modern shell with enhanced scripting capabilities |\n| **Oh My Posh** | Custom PowerShell prompts | Customizable prompt themes with Git integration |\n\n### Development Environment\n\n| Package | Description | Purpose |\n|---------|-------------|---------|\n| **Git** | Version control system | Source code management and collaboration |\n| **Git LFS** | Large File System for Git | Handling large files in Git repositories |\n| **GitHub CLI** | Command-line interface for GitHub | GitHub operations from the command line |\n| **.NET** | Microsoft development framework | Cross-platform development runtime and SDK |\n| **fnm** | Fast Node.js version manager | Node.js version management and switching |\n| **Azure CLI** | Command-line interface for Azure | Azure cloud service management |\n| **Claude** | Anthropic's AI assistant | AI-powered development assistance |\n\n### IDEs \u0026 Editors\n\n| Package | Description | Purpose |\n|---------|-------------|---------|\n| **Visual Studio 2022 Professional** | Full-featured IDE | Comprehensive development environment for .NET |\n| **Visual Studio Code** | Lightweight code editor | Modern, extensible code editor |\n| **VSCode CLI** | Command-line interface for VSCode | VSCode operations from the command line |\n| **Azure Data Studio Insiders** | Database management tool | SQL Server and Azure database management |\n| **SQL Server Management Studio** | SQL Server administration | Advanced SQL Server database administration |\n| **JetBrains Toolbox** | JetBrains IDE manager | Management and installation of JetBrains IDEs |\n\n### Optional Browsers\n\n| Package | Description | Availability |\n|---------|-------------|--------------|\n| **Microsoft Edge Beta** | Beta version of Microsoft Edge | Available with `-IncludeBrowsers` parameter |\n| **Google Chrome Beta** | Beta version of Google Chrome | Available with `-IncludeBrowsers` parameter |\n| **Firefox Developer Edition** | Developer-focused Firefox version | Available with `-IncludeBrowsers` parameter |\n\n### Developer Fonts\n\n| Package | Description | Purpose |\n|---------|-------------|---------|\n| **Cascadia Code** | Microsoft's monospaced font | Optimized for programming and terminal use with ligatures |\n\n## Configuration Management\n\nThe setup uses **symbolic links** to centralize configuration management, keeping all settings in the repository while linking them to their expected system locations.\n\n### Included Configuration Files\n\n| Component | Configuration | Target Location |\n|-----------|---------------|-----------------|\n| **VSCode** | Settings and keybindings | `%APPDATA%\\Code\\User\\` |\n| **Windows Terminal** | Terminal configuration | `%LOCALAPPDATA%\\Microsoft\\Windows Terminal\\` |\n| **PowerShell** | Enhanced profile with Oh My Posh | `$PROFILE` |\n| **System Hosts** | Custom hosts file entries | `C:\\Windows\\System32\\drivers\\etc\\hosts` |\n\n### Configuration Benefits\n\n- **Version Control**: All configurations are tracked in Git\n- **Consistency**: Same settings across multiple machines\n- **Backup**: Configuration changes are automatically backed up\n- **Portability**: Easy to replicate development environment\n- **Centralized Management**: Update settings in one place\n\nFor detailed information about the symbolic link creation process, path validation, and multi-path support, see the [Installation Scripts documentation](installs/README.md#symbolic-link-management).\n\n\u003e **Note**: Git and Visual Studio configurations are referenced in configure.ps1 but the actual configuration files are not included in the repository to avoid overwriting personal settings.\n\n\n\n## Troubleshooting\n\n### Common Issues and Solutions\n\n| Issue | Symptoms | Solution |\n|-------|----------|----------|\n| **UAC Elevation** | Scripts fail to run with permissions error | Click \"Yes\" when UAC prompt appears (automatic elevation) |\n| **Execution Policy** | PowerShell blocks script execution | Scripts use `-ExecutionPolicy Bypass` during elevation |\n| **WinGet Installation** | Package installation fails | Script tries multiple installation methods with fallback |\n| **VSCode Extensions** | Extensions fail to install | Verify VSCode is installed and `code` command is in PATH |\n| **Symbolic Link Creation** | Configuration linking fails | Ensure target files exist in `settings/` directory |\n| **Path Not Found** | Scripts can't find components | Run scripts from repository root directory |\n\n\n## Repository Structure\n\n```\nnew-windows-dev-pc/\n├── 📄 install.ps1                    # Main installation script (auto-elevates)\n├── 📄 configure.ps1                  # Configuration symbolic links (auto-elevates)  \n├── 📄 README.md                      # This documentation file\n├── 📄 CLAUDE.md                      # Claude Code project documentation\n│\n├── 📁 fonts/\n│   └── 📦 CascadiaCode.zip           # Developer fonts for installation\n│\n├── 📁 installs/                      # Modular installation scripts\n│   ├── 📄 README.md               # Installation components documentation\n│   ├── 📄 winget.ps1              # WinGet package installations with browser options\n│   ├── 📄 vscode.ps1              # VSCode extension installer with progress tracking\n│   └── 📄 install-winget.ps1      # WinGet installer with error handling and fallback\n│\n└── 📁 settings/                      # Configuration files (symlinked to system locations)\n    ├── 📁 vscode/\n    │   ├── 📄 README.md              # VSCode configuration documentation\n    │   ├── 📄 settings.json          # VSCode settings optimized for development\n    │   ├── 📄 keybindings.json       # VSCode keybindings and shortcuts\n    │   └── 📄 extensions             # Curated VSCode extension list\n    │\n    ├── 📁 windows-terminal/\n    │   ├── 📄 README.md              # Windows Terminal configuration documentation\n    │   └── 📄 settings.json          # Windows Terminal configuration\n    │\n    ├── 📁 claude/                    # Claude Code configuration\n    │   ├── 📄 README.md              # Claude Code configuration documentation\n    │   ├── 📄 settings.json          # Global settings with PowerShell shell configuration\n    │   ├── 📁 agents/                # Specialized agent definitions\n    │   └── 📁 commands/              # Quick access slash commands\n    │\n    ├── 📁 git/\n    │   └── 📄 README.md              # Git configuration documentation\n    │\n    ├── 📁 pwsh/\n    │   ├── 📄 README.md              # PowerShell profile documentation\n    │   └── 📄 Microsoft.PowerShell_profile.ps1   # Enhanced PowerShell profile\n    │\n    └── 📁 etc/\n        ├── 📄 README.md              # System configuration documentation\n        └── 📄 hosts                  # Custom hosts file entries\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnotmyself%2Fnew-windows-dev-pc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnotmyself%2Fnew-windows-dev-pc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnotmyself%2Fnew-windows-dev-pc/lists"}