55 lines
2.0 KiB
YAML
55 lines
2.0 KiB
YAML
---
|
|
- 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 %}"
|