Skip to content

Personal dotfiles - Starship, shell configs,db docker config, nvm and ble

Notifications You must be signed in to change notification settings

ki11e6/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dotfiles

Personal dotfiles for a Full-Stack AI Developer setup.

Components

Directory Description
nvim/ Neovim config with AI integration (Avante, Codeium)
starship/ Starship prompt with 14 theme palettes
ble/ ble.sh - Bash Line Editor with transient prompts
global-databases/ Docker-based development databases
git/ Git config with Delta pager and useful aliases
ssh/ SSH config example (manual setup)

Quick Start

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

The installer works on fresh systems (creates ~/.bashrc if missing) and will:

  • Install and configure ble.sh (Bash Line Editor)
  • Set up Starship prompt with custom themes
  • Configure Neovim with LazyVim and AI plugins
  • Optionally install Atuin for shell history sync

Requirements

Required

  • Neovim 0.10+ - Modern text editor
  • Starship - Cross-shell prompt
  • Nerd Font - For icons (JetBrainsMono, FiraCode, or Hack)
  • ripgrep - For search in Neovim

Optional

  • Docker - For global databases
  • Atuin - Shell history sync (offered during install)
  • fzf - Fuzzy finder (Ctrl+T, Alt+C)

CLI Commands

./install.sh [OPTIONS]
Option Description
(no options) Fresh install with interactive prompts
-u, --update Update dotfiles from remote and re-link
-f, --force Force overwrite without prompts
--backup Backup current configs before installing
--restore FILE Restore configs from a backup archive
--uninstall Remove all symlinks and undo config changes
--check Verify dependencies, symlinks, and configurations
--update-plugins Update Neovim plugins via Lazy.nvim
-h, --help Show help message

Examples

# Fresh install (interactive)
./install.sh

# Backup configs, then install
./install.sh --backup

# Force install without prompts
./install.sh -f

# Verify installation health
./install.sh --check

# Remove all dotfiles configs
./install.sh --uninstall

# Restore from backup
./install.sh --restore backups/dotfiles-backup-20240115.tar.gz

# Update from remote
./install.sh --update

# Update Neovim plugins
./install.sh --update-plugins

Neovim Highlights

The Neovim config includes:

  • AI Integration: Avante.nvim (Claude, DeepSeek) + Codeium completions
  • Modern UI: Custom dashboard, transparent background, Snacks.nvim
  • Productivity: oil.nvim file manager, mini.surround, extended picker
  • LSP: Enhanced keybindings, fidget.nvim progress, inlay hints

See nvim/README.md for full documentation.

Bash Enhancements (ble.sh)

The ble/ module provides:

  • Transient Prompt - Old prompts collapse to minimal form
  • Syntax Highlighting - Commands colored as you type
  • Auto-suggestions - Ghost text from history
  • Abbreviations - Type gst + space → git status
  • Atuin Integration - Encrypted shell history sync (optional)

See ble/README.md for full documentation.

Key Bindings

Key Action
Ctrl+R Search history (Atuin if installed, fzf fallback)
Ctrl+T Fuzzy file finder (fzf)
Alt+C Fuzzy cd into directory (fzf)

Backup & Restore

Backup

Creates a timestamped archive of your current configs:

./install.sh --backup

Backs up: ~/.bashrc, ~/.blerc, ~/.gdbinit, ~/.config/starship.toml, ~/.config/nvim/

Backups are stored in backups/ (git-ignored).

Restore

./install.sh --restore backups/dotfiles-backup-20240115.tar.gz

Automatically creates a safety backup before restoring.

Uninstall

Cleanly removes all dotfiles:

./install.sh --uninstall

This will:

  • Remove all symlinks created by the installer
  • Remove ble.sh, Starship, and Atuin config blocks from .bashrc
  • Optionally remove installed binaries (ble.sh, Atuin)

Health Check

Verify your installation:

./install.sh --check

Checks:

  • Required dependencies (nvim, starship, ripgrep)
  • Optional dependencies (docker, fzf, atuin)
  • Symlink integrity
  • Configuration files

Troubleshooting

Installation fails on fresh system

The installer handles fresh systems automatically. If issues persist:

# Ensure you're not running as root
./install.sh  # NOT: sudo ./install.sh

# Check for errors
./install.sh --check

Prompt not showing correctly

  1. Ensure a Nerd Font is installed and selected in your terminal
  2. Restart your terminal after installation
  3. Run ./install.sh --check to verify Starship is installed

ble.sh not loading

Check your ~/.bashrc has these lines:

# Near TOP
[[ $- == *i* ]] && source ~/.local/share/blesh/ble.sh --noattach

# At BOTTOM
[[ ! ${BLE_VERSION-} ]] || ble-attach

License

MIT

About

Personal dotfiles - Starship, shell configs,db docker config, nvm and ble

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published