My dotfiles - Configurations for editors and more
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Ensar Sarajčić a8d6ce7b7f
Use neodev instead of nvim.nlua
3 weeks ago
.github/workflows Update ssh key generation to generate keys for all hosts 9 months ago
installed_packages Add kanshi for display management 8 months ago
symlinks Use neodev instead of nvim.nlua 3 weeks ago
tests Add some basic tests for bin commands 11 months ago
windows Fix windows boostrap ot include ideavimrc and vsvimrc 11 months ago
.gitattributes Add better behavior for godot nvim external editor 10 months ago
Makefile Fix user_systemd_services makefile recipe 6 months ago Update ssh key generation to generate keys for all hosts 9 months ago


Quick setup

Clone in ~/.dotfiles and run make:

make bootstrap


  1. installed_packages directory used in Linux and Mac installations to create groups of installed packages, which can easily be cloned using clone-installation script. List is generated using migrate-installation script and it can be compared with any other using compare-installation.
  2. symlinks directory containing many configuration files which are symlinked during installation process in their correct places to be used later
    • Git related files - global gitconfig and gitignore
    • Shell config files - bash/zsh/fish for linux/mac
    • Vim/Nvim config files
    • Arch config files - many configuration files controlling most of the setup
    • config directory, containing custom configurations for many apps (most of Linux apps and some of Mac OS apps)
    • bin director containing many useful scripts, many of them requiring Arch Linux and its setup
  3. tests directory contains various generic tests that are used in CI to confirm the custom tools and configuration work as expected

Installation manual

Linux (Arch)

  1. Install Arch based distribution of choice (Arch -
  2. Install git
  3. Clone this repo into $HOME
  4. Run make bootstrap
  5. (Optional) Run clone-installation and select installation to clone

Linux (Other)

  1. Install Linux distribution of choice
  2. Install git
  3. Clone this repo into $HOME
  4. Run make make bootstrap
  5. Everything should be fine. Many custom scripts may not work, since they rely on either pacman or some of the basic packages installed using clone-installation script, which is also using pacman

Mac OS

  1. Clone this repo into $HOME
  2. Run make make bootstrap
  3. If you need more homebrew packages, check installed_packages directory and choose your list. Install it by moving into specific packages set directory and running brew bundle (or clone-installation if you have sourced new ~/.profile)


  1. Clone this repo into user home
  2. Run make bootstrap or run windows/install_windows.bat directly with double click or through cmd
  3. This will only link vim and git configurations

Post installation steps

After installation optionally check out installed_packages directory for packages to install using clone-installation.

This repository also provides a simple way to generate personal ssh keys to be used with used git hosts:

make create_personal_ssh_keys

It is recommended to also clone vimwiki and use it (this is a private repository and applies only to owner):

make clone_personal_viwiki