- defaults:
    link:
      relink: true

- clean: ['~']

- create:
    # Common organizational dirs
    - ~/Downloads
    - ~/bin
    - ~/projects
    - ~/src
    - ~/www
    - ~/pkg
    # Config dirs
    - ~/.config/nvim
    - ~/.config/termux
    - ~/.cargo
    # Program plugins
    - ~/.local/share/nautilus/scripts/
    
- link:
    # Git
    ~/.gitconfig: configs/git/.gitconfig
    ~/.ssh/allowed_signers: configs/ssh/allowed_signers

    # Shell
    ~/.zshrc: 
      path: configs/zsh/.zshrc
      force: true

    # Vim
    ~/.config/nvim/init.vim: configs/nvim/init.vim
    ~/.config/nvim/pack: configs/nvim/pack
    # ~/.config/nvim/spell: configs/nvim/en.utf-8.add

    # Scripts
    ~/bin/catto:
      path: configs/scripts/catto
      mode: 755
    ~/bin/aspath:
      path: configs/scripts/aspath
      mode: 755
    ~/bin/fetch-steamdeck-screenshots:
      path: configs/scripts/fetch-steamdeck-screenshots
      mode: 755
    ~/.local/share/nautilus/scripts/Copy to web:
      path: configs/nautilus/scripts/Copy to web
      mode: 755

    # Others
    ~/.config/tabset: configs/tabset
    ~/.config/rofi: configs/rofi
    # ~/.local/share/remmina: configs/remmina/hosts
    ~/.cargo/config.toml: configs/cargo/config.toml
    ~/.config/termux/termux.properties: configs/termux/termux.properties

- shell:
  - [git submodule update --init --recursive, Installing submodules]
  - [sh ./helpers/install-ssh-config.sh, Installing SSH config]
  - [chmod +x configs/scripts/catto, Making catto executable]
  - [chmod +x configs/scripts/aspath, Making aspath executable]
  - [chmod +x configs/scripts/fetch-steamdeck-screenshots, Making fetch-steamdeck-screenshots executable]
  - [sh ./helpers/configure-gnome.sh, Configuring GNOME]
  - [termux-reload-settings || true, Trying to reload Termux]