diff --git a/localhost.yml b/localhost.yml index f1a62d2..2d5f50a 100644 --- a/localhost.yml +++ b/localhost.yml @@ -12,3 +12,4 @@ - signal - virtual - lutris + - prusa-slicer diff --git a/roles/prusa-slicer/tasks/main.yml b/roles/prusa-slicer/tasks/main.yml new file mode 100644 index 0000000..37784af --- /dev/null +++ b/roles/prusa-slicer/tasks/main.yml @@ -0,0 +1,38 @@ +- name: install jmespath for json_query + become: yes + apt: + update_cache: yes + pkg: + - python3-jmespath + +- name: "Get PrusaSlicer version" + uri: + url: https://api.github.com/repos/prusa3d/PrusaSlicer/releases/latest + body_format: json + register: git_info + +- name: "Download URL" + debug: + msg: "{{ (git_info.json | json_query('assets[*].browser_download_url') | select('match', '.*x64-GTK3.*AppImage'))[0] }}" + when: ansible_architecture == "x86_64" + +- name: Install on amd64 + become: yes + when: ansible_architecture == "x86_64" + get_url: + url: "{{ (git_info.json | json_query('assets[*].browser_download_url') | select('match', '.*x64-GTK3.*AppImage'))[0] }}" + dest: /usr/local/bin/prusa-slicer + mode: 0755 + +- name: "Download URL" + debug: + msg: "{{ (git_info.json | json_query('assets[*].browser_download_url') | select('match', '.*armv7l-GTK2.*AppImage'))[0] }}" + when: ansible_architecture == "arm64" + +- name: Install on arm64 + when: ansible_architecture == "arm64" + become: yes + get_url: + url: "{{ (git_info.json | json_query('assets[*].browser_download_url') | select('match', '.*armv7l-GTK2.*AppImage'))[0] }}" + dest: /usr/local/bin/prusa-slicer + mode: 0755