60 lines
1.4 KiB
YAML
60 lines
1.4 KiB
YAML
- name: clone dotfiles
|
|
git:
|
|
repo: '{{ dotfiles_repo }}'
|
|
dest: '{{ ansible_env.HOME }}/dotfiles'
|
|
version: master
|
|
update: yes
|
|
register: dotfile_ssh_clone
|
|
ignore_errors: true
|
|
|
|
- name: clone dotfiles
|
|
git:
|
|
repo: '{{ public_dotfiles_repo }}'
|
|
dest: '{{ ansible_env.HOME }}/dotfiles'
|
|
version: master
|
|
update: yes
|
|
when: dotfile_ssh_clone.failed
|
|
|
|
- name: Create xdg configuration directories
|
|
ansible.builtin.file:
|
|
path: '{{ item }}'
|
|
state: directory
|
|
mode: '644'
|
|
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'
|
|
|
|
- name: setup dotfiles
|
|
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.conf',
|
|
dest: '{{ xdg_config_dir }}/tmux/tmux.conf',
|
|
}
|
|
- {
|
|
src: '{{ ansible_env.HOME }}/dotfiles/.gitignore',
|
|
dest: '{{ xdg_config_dir }}/git/ignore',
|
|
}
|