index : dotfiles.git

ascending towards madness

#!/bin/env zsh

DOTFILES_DIR=.

sync() {
  # dir structure
  mkdir -p "${DOTFILES_DIR}/.config/gtk-3.0"
  mkdir -p "${DOTFILES_DIR}/.config/helix"
  mkdir -p "${DOTFILES_DIR}/.config/kitty"
  mkdir -p "${DOTFILES_DIR}/.config/zellij"
  mkdir -p "${DOTFILES_DIR}/.scripts"

  # configs
  cp -v $HOME/.zshrc $DOTFILES_DIR/.zshrc
  cp -v $HOME/.config/gtk-3.0/gtk.css $DOTFILES_DIR/.config/gtk-3.0/gtk.css
  cp -v $HOME/.config/helix/config.toml $DOTFILES_DIR/.config/helix/config.toml
  cp -v $HOME/.config/kitty/kitty.conf $DOTFILES_DIR/.config/kitty/kitty.conf
  cp -vr $HOME/.config/zellij/ $DOTFILES_DIR/.config/

  # scripts
  cp -v $SCRIPTS/calendar.sh $DOTFILES_DIR/.scripts/calendar.sh
  cp -v $SCRIPTS/zellij-launcher.zsh $DOTFILES_DIR/.scripts/zellij-launcher.zsh

  echo "done."
}

clean() {
  # dirs
  rm -rfv "${DOTFILES_DIR}/.config"
  rm -rfv "${DOTFILES_DIR}/.scripts"

  # files
  rm -fv "${DOTFILES_DIR}/.zshrc"
}

main() {
  if [[ "$1" == "clean" ]]; then
    clean
  else
    sync
  fi

  echo "goodbye."
  exit 0
}

main "$@"