Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Huijiro/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

74 Commits

Repository files navigation

🏠 Dotfiles

I use Arch BTW

Personal configuration files managed with GNU Stow for a clean, modular dotfiles setup.

πŸš€ Quick Start

Automated Setup (Arch Linux)

# Clone dotfiles
git clone https://github.com/yourusername/dotfiles.git ~/dotfiles
cd ~/dotfiles
# Run automated setup (installs packages + configures everything)
./scripts/initial_setup

Manual Setup (Any Linux)

# Clone dotfiles
git clone https://github.com/yourusername/dotfiles.git ~/dotfiles
cd ~/dotfiles
# Install individual configs with stow
stow nvim # Neovim configuration
stow tmux # Tmux configuration 
stow zsh # Zsh shell configuration
stow starship # Starship prompt
stow alacritty # Terminal emulator (if desired)
# ... install only what you need

πŸ“¦ What's Included

πŸš€ Core Development Environment

  • nvim/ - Modern Neovim configuration with mini.nvim ecosystem
  • tmux/ - Terminal multiplexer with seamless Neovim integration
  • zsh/ - Enhanced shell with fuzzy history and smart completions

πŸ–₯️ Terminal Emulators

  • alacritty/ - GPU-accelerated terminal emulator
  • kitty/ - Feature-rich terminal with advanced capabilities
  • ghostty/ - Modern terminal emulator configuration

πŸͺŸ Window Managers & Desktop Environment

πŸ› οΈ Development & System Tools

  • starship/ - Cross-shell prompt configuration
  • lazydocker/ - Terminal UI for Docker management
  • walker/ - Application launcher configuration

πŸ€– Automation

  • scripts/ - Setup and maintenance scripts (includes Arch Linux auto-installer)

πŸ”§ Installation

Prerequisites

# Arch Linux
sudo pacman -S stow neovim tmux zsh fzf ripgrep fd git starship
# Ubuntu/Debian 
sudo apt install stow neovim tmux zsh fzf ripgrep fd-find git
curl -sS https://starship.rs/install.sh | sh

Step-by-step Setup

  1. Clone Repository

    git clone https://github.com/yourusername/dotfiles.git ~/dotfiles
    cd ~/dotfiles
  2. Backup Existing Configs (if any)

    mkdir ~/config-backup
    mv ~/.config/nvim ~/config-backup/ 2>/dev/null || true
    mv ~/.zshrc ~/config-backup/ 2>/dev/null || true
    mv ~/.config/tmux ~/config-backup/ 2>/dev/null || true
  3. Install Configurations

    # Individual components
    stow nvim
    stow tmux 
    stow zsh
    # Or all at once
    stow */
  4. Set Zsh as Default Shell

    chsh -s $(which zsh)
  5. Install Neovim Plugins

    nvim --headless "+Lazy! install" +qa
  6. Install Tmux Plugins (if using TPM)

    git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm
    # In tmux: prefix + I to install plugins

βš™οΈ Customization

Each configuration is organized in its own directory and can be installed independently with stow. Browse the individual directories for specific configuration details.

🎨 Theme

Consistent TokyoNight theming across all tools:

  • Neovim: TokyoNight colorscheme
  • Tmux: Custom TokyoNight status bar
  • Shell: Starship prompt with matching colors

πŸ”‘ Key Workflow Features

Consistent Keybindings

  • Ctrl+Y - Accept selection (works in Neovim pickers AND terminal suggestions)
  • Ctrl+h/j/k/l - Navigate seamlessly between tmux panes and vim splits
  • Ctrl+R - Fuzzy search history in terminal
  • <leader>tc - Toggle sensitive data censoring in Neovim

Smart Tooling

  • Formatters only activate when project config files exist
  • LSP servers attach based on project configuration
  • Sensitive data automatically censored in code files
  • History search works across tmux sessions

Security-First

  • Automatic password/API key censoring
  • .env file value protection
  • Easy toggle for temporary reveal

πŸ“ Recent Updates

See CHANGELOG.md for recent improvements including:

  • Plugin consolidation (dressing.nvim β†’ mini.pick)
  • Enhanced tmux navigation fixes
  • Fuzzy history search improvements
  • Smart formatting conditions

πŸ› οΈ Managing Configurations

Adding New Configurations

cd ~/dotfiles
mkdir -p newapp/.config/newapp
# Add your configs to newapp/.config/newapp/
stow newapp

Updating

cd ~/dotfiles
git pull
# Re-stow your installed configurations
stow --restow nvim tmux zsh starship # Example for core configs

Removing

cd ~/dotfiles 
stow -D nvim # Remove nvim stow links

🀝 Contributing

Feel free to fork and adapt these configurations! If you find improvements or fixes, pull requests are welcome.

πŸ“œ License

This project is licensed under the MIT License - feel free to use and modify as needed.


Note: These configurations are tailored for Arch Linux but should work on most Unix-like systems with minor adjustments.

Pi Integration: Includes a Pi ↔ Neovim bridge for non-intrusive AI-assisted editing. See pi/.pi/agent/extensions/pi-nvim-bridge/ for setup and usage.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

Contributors

AltStyle γ«γ‚ˆγ£γ¦ε€‰ζ›γ•γ‚ŒγŸγƒšγƒΌγ‚Έ (->γ‚ͺγƒͺγ‚ΈγƒŠγƒ«) /