Skip to content

Repository files navigation

Dotfiles

A comprehensive collection of configurations for editors, terminals, shells, and development tools optimized for productivity and modern development workflows.

Overview

This repository contains configurations for:

  • Editors: Neovim, Vim, IDEAVim
  • Terminals: Alacritty, Ghostty
  • Shells: bash, zsh, nushell
  • Development Tools: starship prompt, tmux, and more
  • AI Tooling: Pi shared configuration (non-sensitive parts only)

All configurations are designed to work together seamlessly and can be installed individually or as a complete environment.

Prerequisites

  • Platform: Linux, macOS, or WSL (not tested on Windows)
  • Git: For cloning the repository
  • Just: Command runner for installation (installation guide)

Editor-Specific Requirements

  • Neovim: Version 0.8+ required
  • C compiler: Required for Neovim treesitter parsers
  • ripgrep: Enhanced grep for fuzzy finding (installation guide)

Quick Start

Clone the repository and install your preferred configurations:

# Clone the repository
git clone https://github.com/azzgo/dotfiles
cd dotfiles
# Install everything (recommended for first-time setup)
just install-all
# Or install specific components
just install-neovim # Neovim configuration
just install-vim # Vim configuration
just install-ideavim # IDEAVim configuration
just install-terminals # Terminal configurations
just install-shell # Shell configurations
just install-pi # Pi shared configuration
just install-herdr # herdr configuration (symlink config.toml)

Configurations

Editors

Neovim

Modern Neovim setup with Lua configuration, featuring:

  • Plugin management via Lazy.nvim
  • LSP support with autocompletion and diagnostics
  • Treesitter for enhanced syntax highlighting
  • Fuzzy finding with fzf-lua and telescope
  • Git integration and file management
  • AI Prompt Picker: Browse and insert AI prompt templates

Installation: just install-neovim

Vim

Classic Vim configuration with:

  • Essential plugins for productivity
  • Optimized key bindings and settings
  • Compatible with the Neovim setup

Installation: just install-vim

IDEAVim

Vim emulation for JetBrains IDEs with:

  • Essential Vim bindings and motions
  • IDE integration optimizations

Requirements: Install IdeaVim plugin from JetBrains Plugin Store Installation: just install-ideavim

Terminals

Alacritty

GPU-accelerated terminal with:

  • Catppuccin Macchiato theme
  • Optimized font configuration
  • Custom key bindings for copy/paste
  • Performance-focused settings

Ghostty

Modern terminal emulator with:

  • Fast rendering and low latency
  • Comprehensive configuration options

Installation: just install-terminals (installs all available terminal configs)

Shells

Bash

Enhanced bash configuration with:

  • Comprehensive git aliases for common workflows
  • Navigation shortcuts and productivity helpers
  • Color scheme integration

Zsh

Advanced zsh setup featuring:

  • Shared aliases with bash for consistency
  • Enhanced completion and history
  • Integration with development tools

Nushell

Modern shell with structured data support:

  • Intuitive command syntax
  • Built-in git workflow aliases
  • Editor integration (automatically detects nvim/vim)
  • File manager integration with lf

Installation: just install-shell

Development Tools

Starship Prompt

Cross-shell prompt with:

  • Git status and branch information
  • Command duration display
  • Customizable modules for various tools

Tmux

Terminal multiplexer configuration with:

  • Optimized key bindings
  • Session management
  • Integration with other tools

Pi

Shared Pi setup with:

  • Version-controlled settings.json, keybindings.json, mcp.json, prompts/, skills/, extensions/
  • pi/agent/APPEND_SYSTEM.md — appended to pi's system prompt globally (language rule + blocking-command guidance)
  • pi/agent/prompts/ is linked to Pi's global prompt templates directory: ~/.pi/agent/prompts/
  • models.json and auth.json remain local on each machine
  • Only cross-device-safe Pi config is linked by dotfiles

Installation: just install-pi or just link

Available Just Commands

CommandDescription
just install-allInstall all configurations
just install-neovimInstall Neovim configuration and plugins
just install-vimInstall Vim configuration and plugins
just install-ideavimInstall IDEAVim configuration
just install-terminalsInstall all terminal configurations
just install-shellInstall shell, tmux, and starship configurations
just install-piLink shared Pi configuration files
just install-herdrSymlink herdr config.toml into ~/.config/herdr
just linkAlias for install-pi
just nvim-healthCheck Neovim health and dependencies
just nvim-updateUpdate Neovim plugins
just nvim-leaderfInstall LeaderF C extension
just pack-linux64Package dotfiles for Linux x64 distribution
just infoDisplay system and configuration information
just cleanRemove temporary files

Installation Details

The installation scripts create symbolic links to configuration files in this repository, preserving your existing configurations by appending source commands where appropriate.

What Gets Installed

  • Neovim: Sources nvim/init.vim in ~/.config/nvim/init.vim
  • Vim: Sources vim/vimrc in ~/.vimrc
  • IDEAVim: Links .ideavimrc to home directory
  • Terminals: Links config directories to ~/.config/
  • Shells: Sources shell configs in respective rc files, links tmux and starship configs
  • Pi: Links shared Pi config into ~/.pi/agent/, including goal-runtime, code-mode, sub-dispatch, and global prompt templates under ~/.pi/agent/prompts/, while models.json and auth.json stay local per machine

Customization

All configurations are designed to be modular and customizable:

  • Local overrides: Most configurations support local customization files
  • Modular structure: Individual components can be used independently
  • Theme consistency: Coordinated color schemes across tools where supported

Troubleshooting

  • Neovim issues: Run just nvim-health to check configuration and dependencies
  • Plugin problems: Run just nvim-update to sync plugins
  • Permission errors: Ensure you have write access to configuration directories
  • Missing commands: Verify all prerequisites are installed for your platform

Contributing

Feel free to fork this repository and adapt the configurations to your needs. The modular structure makes it easy to add or remove components.

About

personal dotfiles

Topics

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages