My personal development configuration files for:
- alacritty — Fast, cross-platform, OpenGL terminal emulator
- git — Distributed version control system
- neovim — Hyperextensible Vim-based text editor
- tmux — Terminal multiplexer
- vifm — File manager with curses interface providing a Vim-like environment
- zsh — Shell designed for interactive use
- ...
The configurations are maintained using Nix with Home Manager and are actively tested on Ubuntu (22.04 LTS, 23.04), Manjaro and macOS (Big Sur, Ventura), but should work on any other Linux or macOS system.
The configuration files provide a modern terminal-only development environment that is heavily focused on vim-style navigation with minimal mouse usage.
-
Alacritty
- Support for special keys on macOS so that key-bindings (e.g.
Alt
) work as expected
- Support for special keys on macOS so that key-bindings (e.g.
-
Git
-
Neovim
-
Tmux
<C-a>
as prefix- Plugin management using tpm
- Startup sessions are locally customizable
-
Vifm
- Change current shell directory to navigated directory
-
zsh
- Git — Distributed version control system
- Curl — URL based data transfer tool
- Home Manager — Declarative configuration management using Nix
- Nix — Package manager for declarative, reproducible builds
And of course the software related to the configuration packages of interest.
git clone [email protected]:dgrine/dotfiles.git ~/dotfiles
cd ~/dotfiles
./install-nix.sh
./install-home-manager.sh
The following program configurations are managed:
-
alacritty — Fast, cross-platform OpenGL terminal emulator
-
bat — Cat clone with syntax highlighting and Git integration
-
coc — Code completion server for Neovim
-
coc-marketplace — Marketplace for extensions
-
Extensions
- coc-clangd — Clangd
- coc-cmake — CMake
- coc-json — JSON
- coc-pyright — Python
- coc-snippets — Snippets
- coc-texlab — LaTeX
- coc-tsserver — TypeScript and JavaScript
-
-
exa — Modern replacement for
ls
-
fzf — General-purpose command-line fuzzy finder
-
git — Distributed version control system
-
icdiff — Command-line diff tool
-
meld — Visual diff and merge tool
-
neovim — Hyperextensible Vim-based text editor
-
ripgrep — Fast, line-oriented search tool for regex patterns
-
tldr — Simplified and community-driven man pages
-
tmux — Terminal multiplexer
-
vifm — File manager with curses interface providing a Vim-like environment
-
zoxide — Smarter
cd
command -
zsh — Shell designed for interactive use