I automated my development setup with Ansible.
- Shell: fish
- Terminal: WezTerm / Ghostty
- Prompt: Starship
- Editor: Neovim
- Notes: Obsidian integrated in Neovim with obsidian.nvim
git clone https://github.com/bnidev/dotfiles.git ~/.dotfiles
~/.dotfiles/bin/dotfilesThe wrapper script will:
- Detect your OS and install dependencies
- Clone/pull the dotfiles repository
- Prompt to generate SSH keys if needed
- Copy the config template to
~/.config/dotfiles/config.yml - Run the full playbook
Target one or more roles (comma-separated):
~/.dotfiles/bin/dotfiles -t neovim
~/.dotfiles/bin/dotfiles -t neovim,fish,gitPreview changes without applying:
dotfiles --check --diff| Role | Description |
|---|---|
bat |
Cat clone with syntax highlighting |
cargo |
Rust package manager |
docker |
Docker and Docker Compose |
eza |
Modern ls replacement |
fd |
Fast find alternative |
fish |
Fish shell setup |
fonts |
Nerd Fonts installation |
fzf |
Fuzzy finder |
ghostty |
Terminal emulator |
git |
Git configuration |
go |
Go programming language |
lazydocker |
Docker TUI |
lazygit |
Git TUI |
mattermost |
Team chat |
mercurial |
Version control |
neovim |
Neovim configuration |
nvm |
Node version manager |
opencode |
AI coding agent |
obsidian |
Obsidian integration |
pnpm |
Package manager |
posting |
HTTP client |
ripgrep |
Grep alternative |
sshfs |
SSH filesystem |
sshs |
SSH TUI |
starship |
Prompt |
tldr |
Simplified man pages |
tokei |
Code statistics |
wezterm |
Terminal emulator |
wireguard |
VPN |
system |
Base system packages |
- Ubuntu 22.04 and later
- Arch Linux
For detailed documentation, see docs/:
The Ansible setup is inspired by TechDufus and Alt-F4-LLC.