--- - name: Fail if still using init.vim ansible.builtin.stat: path: ~/.config/nvim/init.vim register: init_vim failed_when: init_vim.stat.exists - name: Include Archlinux tasks ansible.builtin.include_tasks: archlinux.yml when: ansible_facts['distribution'] == 'Archlinux' - name: Include Debian tasks ansible.builtin.include_tasks: debian.yml when: ansible_facts['distribution'] == 'Debian' - name: Make sure needed directories exist ansible.builtin.file: path: "{{ item.path }}" state: directory mode: "{{ item.mode }}" with_items: - {path: '~/.config/nvim', mode: '0755'} - {path: '~/.config/nvim/lua', mode: '0755'} - {path: '~/.config/nvim/after', mode: '0755'} - name: Copy configs ansible.builtin.copy: src: "{{ item.src }}" dest: "{{ item.dest }}" mode: 0644 with_items: - {src: 'init.lua', dest: '~/.config/nvim/init.lua'} - {src: 'flake8', dest: '~/.flake8'} - {src: 'pylintrc', dest: '~/.pylintrc'} - name: Copy lua configs ansible.posix.synchronize: src: "{{ item }}" dest: ~/.config/nvim/ recursive: true delete: true with_items: - lua - after - name: Run PackerSync ansible.builtin.command: nvim --headless -c 'autocmd User PackerComplete quitall' -c PackerSync # TODO: changed_when changed_when: false - name: Run TSUpdate ansible.builtin.command: nvim --headless -c TSUpdate -c quitall changed_when: false