- name: Download Neovim PPA signing key become: true apt_key: keyserver: keyserver.ubuntu.com id: 9DBB0BE9366964F134855E2255F96FCF8231B6DD keyring: /etc/apt/keyrings/neovim.gpg - name: Install Neovim PPA become: true apt_repository: repo: "deb [signed-by=/etc/apt/keyrings/neovim.gpg] https://ppa.launchpadcontent.net/neovim-ppa/stable/ubuntu {{ ansible_distribution_release }} main" register: apt_repository - name: Update APT cache become: true apt: update_cache: true when: apt_repository.changed - name: Install Neovim become: true apt: name: neovim - name: Create configuration directory file: path: ~/.config/nvim state: directory - name: Copy init.lua copy: src: "{{ role_path }}/files/init.lua" dest: ~/.config/nvim/init.lua - name: Create plugin directory file: path: ~/.config/nvim/plugin state: directory recurse: true - name: Copy plugin configuration files copy: src: "{{ role_path }}/files/plugin/" dest: ~/.config/nvim/plugin - name: Create lua directory file: path: ~/.config/nvim/lua state: directory recurse: true - name: Copy lua files copy: src: "{{ role_path }}/files/lua/" dest: ~/.config/nvim/lua - name: Install python-lsp-server pip: name: - "python-lsp-server[all]" - name: Install terraform-ls become: true apt: pkg: terraform-ls - name: Set default applications ini_file: path: ~/.config/mimeapps.list section: "Default Applications" option: "{{ item }}" value: "nvim.desktop" loop: "{{ default_apps }}"