You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

59 lines
1.6 KiB
YAML

---
- name: Set authorized SSH keys
authorized_key:
user: "{{ ansible_facts.user_id }}"
state: present
key: "{{ item }}"
with_file: authorized_keys
- name: Get current shell
shell: "getent passwd {{ ansible_facts.user_id }} | cut -d: -f7"
register: current_shell
changed_when: no
- name: Change shell to fish
command: chsh --shell /usr/bin/fish
when: "current_shell.stdout != '/usr/bin/fish'"
- name: Copy dotfiles to home directory
copy:
src: dotfiles/
dest: "{{ ansible_facts.env.HOME }}/"
mode: preserve
- name: Copy Git config to home directory
template:
src: gitconfig.j2
dest: "{{ ansible_facts.env.HOME }}/.config/git/config"
- name: Remove unneeded files
file:
path: "{{ item }}"
state: absent
loop:
- "{{ ansible_facts.env.HOME }}/.bash_history"
- "{{ ansible_facts.env.HOME }}/.bash_logout"
- "{{ ansible_facts.env.HOME }}/.bash_profile"
- "{{ ansible_facts.env.HOME }}/.bashrc"
- "{{ ansible_facts.env.HOME }}/.emacs"
- "{{ ansible_facts.env.HOME }}/.zcompdump"
- "{{ ansible_facts.env.HOME }}/.zshrc"
- name: Download and update iTerm2 shell integration
get_url:
url: https://iterm2.com/shell_integration/fish
dest: "{{ ansible_facts.env.HOME }}/.config/fish/conf.d/iterm2_integration.fish"
force: yes
- name: Download and update Oh My Fish! packages
git:
repo: "{{ item.value }}"
dest: "{{ ansible_facts.env.HOME }}/.config/fish/pkgs/{{ item.key }}"
loop: "{{ omf_pkgs | dict2items }}"
notify: Collect fish functions from packages
- name: Disable Cron MAILTO
cronvar:
name: MAILTO
value: ""