Skip to content

Latest commit

 

History

History
86 lines (50 loc) · 2.3 KB

Readme.rst

File metadata and controls

86 lines (50 loc) · 2.3 KB

Dotfiles

This is my collection of configuration files for bash, vim, zsh, tmux and plenty others.

Configurations are managed by dotstow or simply stow (if you don't have dotstow installed or want to get it installed!)

To setup:

  • Install gnu stow

    # For Ubuntu users
    sudo apt update -y; sudo apt install stow -y
    
    # For redhat (dnf managed distros)
    sudo dnf install stow -y
  • Upgrade nodejs to the minimum version of 12. (You can use nvm to configure as well). This step is optional if you want to configure dotstow.

    # For ubuntu
    sudo apt install build-essential apt-transport-https lsb-release ca-certificates curl
    curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
    which node npm
  • Install dotstow

    npm install dotstow
  • Download your dotfiles and bootstrap the environment

    ~/node_modules/.bin/dotstow bootstrap --remote https://github.com/sreerajkksd/dotfiles.git
  • Set the configs

    ~/node_modules/.bin/dotstow stow bash git i3 systems tmux vim vscode zsh -f

And we are done. You should see symlinks on your home directory for all the dotfiles and others.

  • To pull the configs from the remote
    ~/node_modules/.bin/dotstow pull
  • To update the configs
    • Upload changes the repository and commit the changes.
    • Run dotstow sync

Note:

  • If you only have stow installed and want only to update certain configs (without touching others eg: on a work environment), you can do the following

    # Clone the repository
    git clone -q --depth 1 https://github.com/sreerajkksd/dotfiles.git ~/.dotfiles
    
    #Initialize the configs
    $HOME/.dotfiles/manual-init.sh
    
    # Check available environments and packages
    tree $HOME/.dotfiles/ -L 2
    
    # Stow the packages as you like
    stow -t $HOME -d $HOME/.dotfiles/<Environment>/ <Package>
    
    # example: stow -t $HOME -d $HOME/.dotfiles/linux bash zsh vscode vim tmuxh systems i3 git

Credits