64 lines
1.9 KiB
YAML
64 lines
1.9 KiB
YAML
- name: Remove existing install {{ pkg }}
|
|
when:
|
|
- hyprland_clean
|
|
become: "{{ ext_become }}"
|
|
loop: "{{ xdg_desktop_portal_hyprland.installed_files }}"
|
|
loop_control:
|
|
loop_var: file
|
|
ansible.builtin.file:
|
|
state: absent
|
|
path: "{{ hyprland.prefix }}/{{ file }}"
|
|
|
|
- name: Check for installed {{ pkg }}
|
|
register: stat_xdg_desktop_portal_hyprland_bin
|
|
ansible.builtin.stat:
|
|
path: "{{ hyprland.prefix }}/bin/hyprland-share-picker"
|
|
|
|
- name: Build and install {{ pkg }}
|
|
when:
|
|
- not stat_xdg_desktop_portal_hyprland_bin.stat.exists
|
|
block:
|
|
- name: Clone git repository {{ pkg }}
|
|
ansible.builtin.git:
|
|
depth: 1
|
|
dest: "{{ xdg_desktop_portal_hyprland.git_path }}"
|
|
recursive: true
|
|
repo: "{{ xdg_desktop_portal_hyprland.repo }}"
|
|
version: "{{ xdg_desktop_portal_hyprland.vers }}"
|
|
|
|
- name: Configure {{ pkg }}
|
|
ansible.builtin.command:
|
|
creates: "{{ xdg_desktop_portal_hyprland.git_path }}/build"
|
|
chdir: "{{ xdg_desktop_portal_hyprland.git_path }}"
|
|
argv:
|
|
- cmake
|
|
- -DCMAKE_INSTALL_LIBEXECDIR={{ hyprland.prefix }}/lib
|
|
- -DCMAKE_INSTALL_PREFIX={{ hyprland.prefix }}
|
|
- -B
|
|
- ./build
|
|
|
|
- name: Build {{ pkg }}
|
|
ansible.builtin.command:
|
|
creates: "{{ xdg_desktop_portal_hyprland.git_path }}/build/xdg-desktop-portal-hyprland"
|
|
chdir: "{{ xdg_desktop_portal_hyprland.git_path }}"
|
|
argv:
|
|
- cmake
|
|
- --build
|
|
- ./build
|
|
- --config
|
|
- Release
|
|
- --target
|
|
- all
|
|
- -j
|
|
- "{{ ansible_processor_nproc|int }}"
|
|
|
|
- name: Install {{ pkg }}
|
|
become: true
|
|
ansible.builtin.command:
|
|
creates: "{{ path.bin }}/hyprland-share-picker"
|
|
chdir: "{{ xdg_desktop_portal_hyprland.git_path }}"
|
|
argv:
|
|
- cmake
|
|
- --install
|
|
- ./build
|