--- - name: build neovim from source block: - name: create temp path ansible.builtin.tempfile: state: directory prefix: nvim. register: d_nvim_tmp - name: clone neovim git repository ansible.builtin.git: depth: 1 dest: "{{ d_nvim_tmp.path }}/neovim" repo: "{{ pkgconfig_neovim.git_repo }}" version: "{{ pkgconfig_neovim.version }}" - name: build and install neovim ansible.builtin.make: chdir: "{{ d_nvim_tmp.path }}/neovim" params: CMAKE_BUILD_TYPE: "{{ pkgconfig_neovim.build_type }}" CMAKE_INSTALL_PREFIX: "{{ pkgconfig_neovim.install_prefix }}" target: install become: "{{ pkgconfig_neovim.become }}" become_user: "{% if pkgconfig_neovim.become %}{{ pkgconfig_neovim.owner }}{% else %}~{% endif %}" when: not pkgconfig_neovim.use_appimage - name: install neovim appimage block: - ansible.builin.file: state: directory mode: "0755" path: "{{ pkgconfig_neovim.install_dir }}" owner: "{{ pkgconfig_neovim.owner }}" group: "{{ pkgconfig_neovim.group }}" - ansible.builtin.get_url: mode: "0755" decompress: false backup: true url: "{{ pkgconfig_neovim.appimage_url_pfx }}/{{ pkgconfig_neovim.version }}/nvim.appimage" checksum: "sha256:{{ pkgconfig_neovim.appimage_url_pfx }}/{{ pkgconfig_neovim.version }}/nvim.appimage.sha256sum" dest: "{{ pkgconfig_neovim.install_dir }}/nvim.appimage.{{ pkgconfig_neovim.version }}" owner: "{{ pkgconfig_neovim.owner }}" group: "{{ pkgconfig_neovim.group }}" - ansible.builtin.file: state: link src: "{{ pkgconfig_neovim.install_dir }}/nvim.appimage.{{ pkgconfig_neovim.version }}" path: "{{ pkgconfig_neovim.install_prefix }}/bin/nvim" when: - pkgconfig_neovim.use_appimage become: "{{ pkgconfig_neovim.become }}" become_user: "{% if pkgconfig_neovim.become %}{{ pkgconfig_neovim.owner }}{% else %}~{% endif %}"