# vim: set filetype=yaml.ansible : --- - name: Configure neovim when: - "'neovim' not in __configured" block: - name: Set neovim install method when: - neovim_install_method is undefined ansible.builtin.set_fact: neovim_install_method: "{{ install_method if install_method in neovim.install_methods else neovim.install_methods[0] }}" - name: Configure neovim source install when: - neovim_install_method == "source" block: - name: Queue pkg build deps when: - neovim.build_pkgdeps is defined loop: "{{ neovim.build_pkgdeps }}" loop_control: loop_var: dep ansible.builtin.include_tasks: "pkgs/{{ dep }}.yml" - name: Set helper facts ansible.builtin.set_fact: neovim_src_install: path: "{{ d_cache.path }}/neovim" repo: "{{ neovim.git_repo }}" version: "{{ neovim_version }}" targets: - name: "" do_become: false params: CMAKE_BUILD_TYPE: Release CMAKE_EXTRA_FLAGS: "-DCMAKE_INSTALL_PREFIX={{ install_prefix }}" - name: install do_become: true - name: Append neovim to source install list ansible.builtin.set_fact: pkg_make: "{{ pkg_make + [neovim_src_install] }}" - name: Finalized neovim configuration ansible.builtin.set_fact: __configured: "{{ __configured | combine( { 'neovim': neovim_install_method } ) }}"