dotfiles/config/automatrop/roles/dotfiles/tasks/main.yml

37 lines
1.2 KiB
YAML

- name: Ensure directories for applications are present
file:
state: directory
path: "{{ ansible_user_dir }}/{{ item }}"
mode: "u=rwx,g=rx,o=rx"
with_items:
- ".cache/zsh"
- ".cache/mpd"
- ".ssh"
- ".local/bin"
- ".ansible/collections/ansible_collections/geoffreyfrogeye"
- name: Install dotfiles repository
git:
repo: "{% if has_forge_access %}git@git.frogeye.fr:{% else %}https://git.frogeye.fr/{% endif %}geoffrey/dotfiles.git"
dest: "{{ ansible_user_dir }}/.dotfiles"
update: "{{ not has_forge_access }}"
notify: install dotfiles
# TODO Put actual dotfiles in a subdirectory of the repo, so we don't have to put everything in config
- name: Register as Ansible collection
file:
state: link
src: "{{ ansible_user_dir }}/.dotfiles/config/automatrop"
path: "{{ ansible_user_dir }}/.ansible/collections/ansible_collections/geoffreyfrogeye/automatrop"
- name: Install python dependencies for scripts
pip:
requirements: "{{ ansible_user_dir }}/.dotfiles/config/scripts/requirements.txt"
- name: Install Neovim plugins
command: "nvim +PlugUpgrade +PlugUpdate +PlugInstall +qall"
failed_when: no
changed_when: yes
# TODO Build Neovim configuration better