Skip to content

karambir/dotfiles

Repository files navigation

Dotfiles

Personal development environment configuration including:

  • Fish shell customizations and aliases
  • Neovim as editor
  • Starship as shell prompt
  • Kitty and Terminator configurations
  • Tmux configuration
  • SSH configuration

These dotfiles are extended and copied from various sources with appropriate licenses. A big thanks to all of them.

Features:

  • Few Fish shell customizations and aliases
  • Some Bash shell customizations and aliases are also present in .bashrc, .bash_paths, and .bash_aliases
  • Modern and fast terminal emulator Kitty
  • Shell prompt configured with Starship
  • Neovim configuration using nvchad
  • A collection of helpful git aliases from here
  • SSH configuration for modern algorithms from Mozilla
  • A comprehensive list of development tools, CLI utilities, and GUI applications. See New Setup and Ansible Setup. Automated setup using Ansible with support for both Debian-based and Arch Linux systems

Usage:

  1. Clone this repo in your home directory: git clone https://github.com/karambir/dotfiles.git
  2. Run ansible-playbook -i inventory site.yml --ask-become-pass from the ansible-setup directory to install the programs
  3. Copy .config directories for fish, terminator, tmux, starship, and neovim
  4. On Linux, enable the SSH agent systemd service: systemctl --user enable --now ssh-agent
  5. For Kitty, get themes by running kitten themes
  6. For tmux configuration, we use tpm as plugin manager. Get it by running git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm

Arch Linux Notes:

ZFS update with yay

When updating ZFS packages, yay may fail with a dependency conflict like: installing zfs-utils (x.y.z) breaks dependency 'zfs-utils=x.y.z-old' required by zfs-dkms

Fix: update both packages together in one transaction:

yay -S zfs-dkms zfs-utils

macOS Note:

There is a macOS setup guide here with zshrc

License

See LICENSE.txt file in the repo