# .dotfiles ## Quick setup Clone in `~/.dotfiles` and run make: ``` make bootstrap ``` ## Contents 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 - https://wiki.archlinux.org/index.php/Installation_guide) 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) ### Windows 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 ```