development/tasks/dotfiles.yml

70 lines
1.9 KiB
YAML

---
- name: Clone dotfiles
ansible.builtin.git:
repo: "{{ dotfiles_repo }}"
dest: "{{ ansible_env.HOME }}/dotfiles"
version: master
update: true
- name: Create xdg configuration directories
ansible.builtin.file:
path: "{{ item }}"
state: directory
mode: "0755"
loop:
- "{{ xdg_config_dir }}/git"
- "{{ xdg_config_dir }}/tmux"
- name: Remove previous dotfiles
ansible.builtin.file:
path: "{{ item }}"
state: absent
loop:
- "{{ ansible_env.HOME }}/.tmux.conf"
- "{{ ansible_env.HOME }}/.gitconfig"
- name: Setup dotfiles
ansible.builtin.file:
path: "{{ item.dest }}"
src: "{{ item.src }}"
state: link
force: true
loop:
- src: "{{ ansible_env.HOME }}/dotfiles/.vimrc"
dest: "{{ ansible_env.HOME }}/.vimrc"
- src: "{{ ansible_env.HOME }}/dotfiles/.bashrc"
dest: "{{ ansible_env.HOME }}/.bashrc"
- src: "{{ ansible_env.HOME }}/dotfiles/.profile"
dest: "{{ ansible_env.HOME }}/.profile"
- src: "{{ ansible_env.HOME }}/dotfiles/tmux/tmux.conf"
dest: "{{ xdg_config_dir }}/tmux/tmux.conf"
- src: "{{ ansible_env.HOME }}/dotfiles/tmux/light.conf"
dest: "{{ xdg_config_dir }}/tmux/light.conf"
- src: "{{ ansible_env.HOME }}/dotfiles/tmux/dark.conf"
dest: "{{ xdg_config_dir }}/tmux/dark.conf"
- src: "{{ ansible_env.HOME }}/dotfiles/.gitignore"
dest: "{{ xdg_config_dir }}/git/ignore"
- name: Copy git configuration
ansible.builtin.template:
src: "templates/gitconfig.j2"
dest: "{{ xdg_config_dir }}/git/config"
mode: "0755"
- name: Create script directory
ansible.builtin.file:
path: "{{ ansible_env.HOME }}/.local/bin"
state: directory
mode: "0755"
- name: Copy tmux toggle script
ansible.builtin.template:
src: "templates/tmux-toggle.j2"
dest: "{{ ansible_env.HOME }}/.local/bin/tmux-toggle.sh"
mode: "0755"