Skip to content

vblazenka/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

19 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Dotfiles

Cross-platform dotfiles for macOS, Linux, and Windows (WSL2).

Quick Start

git clone https://github.com/vblazenka/dotfiles.git ~/Documents/github/vblazenka/dotfiles
cd ~/Documents/github/vblazenka/dotfiles
./install.sh

The install script automatically detects your OS and:

  • Installs required packages (zsh, neovim, zellij, etc.)
  • Sets up Oh My Zsh with plugins
  • Creates symlinks for all configs
  • Installs development tools (UV, NVM)

Supported Systems

  • macOS - Uses Homebrew
  • Linux - Uses apt (Debian/Ubuntu-based, including Omarchy)
  • WSL2 - Windows Subsystem for Linux

Structure

dotfiles/
β”œβ”€β”€ install.sh           # Main entry point
β”œβ”€β”€ scripts/
β”‚   β”œβ”€β”€ detect_os.sh     # OS detection
β”‚   β”œβ”€β”€ setup_common.sh  # Shared functions
β”‚   β”œβ”€β”€ setup_symlinks.sh
β”‚   β”œβ”€β”€ setup_macos.sh
β”‚   β”œβ”€β”€ setup_linux.sh
β”‚   └── setup_wsl.sh
β”œβ”€β”€ shell/
β”‚   β”œβ”€β”€ zshrc            # Loader (sources others)
β”‚   β”œβ”€β”€ zshrc.common     # Shared config
β”‚   β”œβ”€β”€ zshrc.macos      # macOS-specific
β”‚   β”œβ”€β”€ zshrc.linux      # Linux-specific
β”‚   β”œβ”€β”€ zshrc.wsl        # WSL-specific
β”‚   └── hushlogin        # Suppress login message
β”œβ”€β”€ git/
β”‚   └── gitconfig
β”œβ”€β”€ zellij/
β”‚   └── config.kdl
└── nvim/
    └── (LazyVim config)

What Gets Installed

  • Shell: Zsh + Oh My Zsh + plugins (autosuggestions, syntax highlighting)
  • Editor: Neovim with LazyVim
  • Terminal: Zellij
  • Python: UV package manager
  • Node.js: NVM + LTS version
  • Packages: git, curl, wget, ripgrep, tree, htop, etc.

Manual Steps After Install

  1. Restart your terminal (or run zsh)
  2. Open Neovim - plugins will auto-install on first launch
  3. Configure any additional tools as needed

Customization

  • Add aliases to shell/zshrc.common (shared) or OS-specific files
  • Edit git/gitconfig for git settings
  • Modify zellij/config.kdl for terminal multiplexer
  • Neovim config is in nvim/ (LazyVim-based)

About

My dotfiles 🀘🏻

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •