My personal development environment configuration managed with chezmoi
This dotfiles repository provides a complete, reproducible development environment for Windows and Linux systems, featuring:
- 🪟 Windows Package Management - Automated installation via winget
- 🎨 Custom Window Manager - GlazeWM tiling window manager with Zebar status bar
- 💻 PowerShell Configuration - Enhanced prompt with Starship, PSReadLine customizations, and productivity aliases
- 🔧 Development Tools - Neovim (LazyVim), VS Code, Git, and language-specific setups
- 🖋️ Nerd Fonts - Ubuntu Mono Nerd Font patched for powerline and icons
- 🔵 Azure and Azure DevOps Integration - Custom Azure and Azure DevOps status proxy with system tray integration
- 📜 Utility Scripts - PowerShell automation scripts for common tasks
Run in PowerShell:
irm https://raw.githubusercontent.com/lukaszgasior/dotfiles/main/install.ps1 | iexRun in bash:
curl -fsSL https://raw.githubusercontent.com/lukaszgasior/dotfiles/main/install.sh | bashThe installation script will:
- ✅ Install Git (if not present)
- ✅ Install chezmoi (if not present)
- ✅ Initialize and apply dotfiles configuration
-
PowerShell Profile (Microsoft.PowerShell_profile.ps1)
- Starship prompt integration
- PSReadLine with history search and custom keybindings
- Gruvbox color scheme
- kubectl completion and aliases
- Neovim as default editor
- Useful functions:
projects,github,take,which,Get-PublicIP
-
Starship Prompt (starship.toml)
- Custom Gruvbox Dark theme
- Git status indicators
- Azure subscription display
- Language version indicators (Go, Node.js, Python, .NET, Terraform)
- Docker context awareness
-
Window Manager (GlazeWM config)
- Tiling window manager for Windows
- Custom Zebar widget with Azure and Azure DevOps status monitoring
- Pomodoro timer with preset durations (15/25/45/60 min) and custom input
- CPU/RAM top processes tooltips on hover
-
Neovim (LazyVim config)
- Full LazyVim distribution with custom plugins
- LSP, Treesitter, Telescope, Lualine configurations
-
VS Code (settings.json, keybindings.json)
- Editor preferences and custom keybindings
-
Windows Terminal (settings.json)
- Custom profiles and theme
-
Git (.gitconfig)
- User configuration template
PowerShell Scripts (scripts/)
- CleanupPodman.ps1 - Clean up Podman containers and images
- CompresVideo.ps1 - Video compression utility
- ConvertoToMp4.ps1 - Convert videos to MP4 format
- ConvertoToMp3.ps1 - Convert audio/video to MP3
- Convert-to-ssh.ps1 - Convert Git remotes to SSH
- Get-DuplicateModule.ps1 - Find duplicate PowerShell modules
- Uninstall-DuplicateModule.ps1 - Remove duplicate modules
- Uninstall-AzModule.ps1 - Uninstall Azure PowerShell modules
- Update-EveryModule.ps1 - Update all PowerShell modules
Azure Status Proxy (azure-status-proxy/)
A Go-based system tray application that:
- Provides local CORS proxy for Azure and Azure DevOps status RSS feeds
- Displays Azure status in system tray with quick access to status pages
- Serves top process data (CPU/RAM) for Zebar tooltips via gopsutil
- Integrates with Zebar widget for real-time status display
- Ubuntu Mono Nerd Font - Patched font with additional glyphs for powerline and icon support
If you prefer manual installation:
-
Install chezmoi:
# Windows winget install twpayne.chezmoi # Linux sh -c "$(curl -fsLS get.chezmoi.io)"
-
Initialize dotfiles:
chezmoi init lukaszgasior/dotfiles
-
Review changes:
chezmoi diff
-
Apply configuration:
chezmoi apply
To update your dotfiles to the latest version:
chezmoi updateOr manually:
chezmoi git pull && chezmoi applyFeel free to fork this repository and customize it for your own needs. If you find bugs or have suggestions, please open an issue.
This configuration is provided as-is for personal use. Individual tools and applications are subject to their respective licenses.
Note: This is a personal dotfiles repository. Review and test configurations before applying to your system.
