Merge branch 'prusa-slicer' into 'main'
Prusa slicer See merge request fablab/labsync!81
This commit is contained in:
commit
f4eee886e9
10 changed files with 203 additions and 73 deletions
|
|
@ -12,6 +12,7 @@
|
||||||
- role: windowmanager
|
- role: windowmanager
|
||||||
- role: inkscape
|
- role: inkscape
|
||||||
- role: lightburn
|
- role: lightburn
|
||||||
|
- role: prusa-slicer
|
||||||
- role: fablab
|
- role: fablab
|
||||||
- role: hardware
|
- role: hardware
|
||||||
- role: docker
|
- role: docker
|
||||||
|
|
@ -45,51 +46,6 @@
|
||||||
version: 3.3.1
|
version: 3.3.1
|
||||||
lightburn:
|
lightburn:
|
||||||
dockerimage: r.jalr.de/fablab/lightburn
|
dockerimage: r.jalr.de/fablab/lightburn
|
||||||
prusa_slicer:
|
|
||||||
settings: |
|
|
||||||
no_controller = 1
|
|
||||||
no_defaults = 1
|
|
||||||
preset_update = 0
|
|
||||||
show_splash_screen = 0
|
|
||||||
use_inches = 0
|
|
||||||
version_check = 0
|
|
||||||
view_mode = expert
|
|
||||||
|
|
||||||
[filaments]
|
|
||||||
AmazonBasics TPU @MINI = 1
|
|
||||||
Das Filament PLA = 1
|
|
||||||
Generic PETG = 1
|
|
||||||
Generic PETG @MINI = 1
|
|
||||||
Generic PETG @MMU2 = 1
|
|
||||||
Generic PLA = 1
|
|
||||||
Generic PLA @MMU2 = 1
|
|
||||||
Prusament ASA = 1
|
|
||||||
Prusament ASA @MINI = 1
|
|
||||||
Prusament ASA @MMU2 = 1
|
|
||||||
Prusament PC Blend = 1
|
|
||||||
Prusament PC Blend @MINI = 1
|
|
||||||
Prusament PC Blend @MMU2 = 1
|
|
||||||
Prusament PETG = 1
|
|
||||||
Prusament PETG @MINI = 1
|
|
||||||
Prusament PETG @MMU2 = 1
|
|
||||||
Prusament PLA = 1
|
|
||||||
Prusament PLA @MMU2 = 1
|
|
||||||
Prusament PVB = 1
|
|
||||||
Prusament PVB @MMU2 = 1
|
|
||||||
Verbatim BVOH = 1
|
|
||||||
Verbatim BVOH @MMU2 = 1
|
|
||||||
|
|
||||||
[presets]
|
|
||||||
filament = Prusament PLA
|
|
||||||
physical_printer =
|
|
||||||
print = 0.15mm QUALITY @MK3
|
|
||||||
printer = Original Prusa i3 MK3
|
|
||||||
sla_material =
|
|
||||||
sla_print =
|
|
||||||
|
|
||||||
[vendor:PrusaResearch]
|
|
||||||
model:MK3 = 0.4
|
|
||||||
model:MK3SMMU2S = 0.4
|
|
||||||
firefox:
|
firefox:
|
||||||
language_packs:
|
language_packs:
|
||||||
- de
|
- de
|
||||||
|
|
@ -113,3 +69,53 @@
|
||||||
lightburn:
|
lightburn:
|
||||||
devices:
|
devices:
|
||||||
- https://raw.githubusercontent.com/fablab-nea/LaserKutter/main/lightburn/LaserKutter.lbdev
|
- https://raw.githubusercontent.com/fablab-nea/LaserKutter/main/lightburn/LaserKutter.lbdev
|
||||||
|
prusa_slicer:
|
||||||
|
settings: |
|
||||||
|
no_controller = 1
|
||||||
|
no_defaults = 1
|
||||||
|
preset_update = 0
|
||||||
|
show_splash_screen = 0
|
||||||
|
use_inches = 0
|
||||||
|
version_check = 0
|
||||||
|
view_mode = expert
|
||||||
|
tls_accepted_cert_store_location = /etc/ssl/certs/ca-certificates.crt
|
||||||
|
tls_cert_store_accepted = yes
|
||||||
|
|
||||||
|
[filaments]
|
||||||
|
AmazonBasics TPU @MINI = 1
|
||||||
|
Das Filament PLA = 1
|
||||||
|
Generic PETG = 1
|
||||||
|
Generic PETG @MINI = 1
|
||||||
|
Generic PETG @MMU2 = 1
|
||||||
|
Generic PLA = 1
|
||||||
|
Generic PLA @MMU2 = 1
|
||||||
|
Prusament ASA = 1
|
||||||
|
Prusament ASA @MINI = 1
|
||||||
|
Prusament ASA @MMU2 = 1
|
||||||
|
Prusament PC Blend = 1
|
||||||
|
Prusament PC Blend @MINI = 1
|
||||||
|
Prusament PC Blend @MMU2 = 1
|
||||||
|
Prusament PETG = 1
|
||||||
|
Prusament PETG @MINI = 1
|
||||||
|
Prusament PETG @MMU2 = 1
|
||||||
|
Prusament PLA = 1
|
||||||
|
Prusament PLA @MMU2 = 1
|
||||||
|
Prusament PVB = 1
|
||||||
|
Prusament PVB @MMU2 = 1
|
||||||
|
Verbatim BVOH = 1
|
||||||
|
Verbatim BVOH @MMU2 = 1
|
||||||
|
|
||||||
|
[presets]
|
||||||
|
filament = Prusament PLA
|
||||||
|
physical_printer =
|
||||||
|
print = 0.15mm QUALITY @MK3
|
||||||
|
printer = Original Prusa i3 MK3
|
||||||
|
sla_material =
|
||||||
|
sla_print =
|
||||||
|
|
||||||
|
[vendor:PrusaResearch]
|
||||||
|
model:MK3 = 0.4
|
||||||
|
model:MK3SMMU2S = 0.4
|
||||||
|
|
||||||
|
[vendor:Ultimaker]
|
||||||
|
model:ULTIMAKER2 = 0.4
|
||||||
|
|
|
||||||
|
|
@ -18,9 +18,6 @@
|
||||||
- import_tasks: visicut.yml
|
- import_tasks: visicut.yml
|
||||||
tags:
|
tags:
|
||||||
- fablab:visicut
|
- fablab:visicut
|
||||||
- import_tasks: prusa.yml
|
|
||||||
tags:
|
|
||||||
- fablab:prusa
|
|
||||||
# - import_tasks: platformio.yml
|
# - import_tasks: platformio.yml
|
||||||
# tags:
|
# tags:
|
||||||
# - fablab:platformio
|
# - fablab:platformio
|
||||||
|
|
|
||||||
|
|
@ -1,25 +0,0 @@
|
||||||
---
|
|
||||||
- name: install slic3r-prusa
|
|
||||||
apt:
|
|
||||||
name: slic3r-prusa
|
|
||||||
state: present
|
|
||||||
|
|
||||||
- name: create skel directories
|
|
||||||
file:
|
|
||||||
path: "/etc/skel/{{ item }}"
|
|
||||||
state: directory
|
|
||||||
loop:
|
|
||||||
- .config
|
|
||||||
- .config/PrusaSlicer
|
|
||||||
- .config/PrusaSlicer/vendor
|
|
||||||
|
|
||||||
- name: create symlink to vendor profiles
|
|
||||||
file:
|
|
||||||
src: /usr/share/PrusaSlicer/profiles/PrusaResearch.ini
|
|
||||||
dest: /etc/skel/.config/PrusaSlicer/vendor/PrusaResearch.ini
|
|
||||||
state: link
|
|
||||||
|
|
||||||
- name: Copy Prusa slicer settings
|
|
||||||
copy:
|
|
||||||
content: "{{ fablab.prusa_slicer.settings }}"
|
|
||||||
dest: /etc/skel/.config/PrusaSlicer/PrusaSlicer.ini
|
|
||||||
2
packer/ansible/roles/prusa-slicer/defaults/main.yml
Normal file
2
packer/ansible/roles/prusa-slicer/defaults/main.yml
Normal file
|
|
@ -0,0 +1,2 @@
|
||||||
|
---
|
||||||
|
prusa_slicer_use_package: false
|
||||||
|
|
@ -0,0 +1,9 @@
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=Prusa GCode viewer
|
||||||
|
Exec=/opt/PrusaSlicer/bin/prusa-slicer --gcodeviewer %F
|
||||||
|
Icon=/opt/PrusaSlicer/resources/icons/PrusaSlicer-gcodeviewer.svg
|
||||||
|
Terminal=false
|
||||||
|
Type=Application
|
||||||
|
MimeType=text/x.gcode;
|
||||||
|
Categories=Graphics;3DGraphics;
|
||||||
|
Keywords=3D;Printing;Slicer;
|
||||||
12
packer/ansible/roles/prusa-slicer/files/PrusaSlicer.desktop
Normal file
12
packer/ansible/roles/prusa-slicer/files/PrusaSlicer.desktop
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=PrusaSlicer
|
||||||
|
GenericName=3D Printing Software
|
||||||
|
Terminal=false
|
||||||
|
Exec=/opt/PrusaSlicer/bin/prusa-slicer %F
|
||||||
|
Icon=/opt/PrusaSlicer/resources/icons/PrusaSlicer.png
|
||||||
|
Type=Application
|
||||||
|
MimeType=model/stl;application/vnd.ms-3mfdocument;application/prs.wavefront-obj;application/x-amf;
|
||||||
|
Categories=Graphics;3DGraphics;Engineering;
|
||||||
|
Keywords=3D;Printing;Slicer;slice;3D;printer;convert;gcode;stl;obj;amf;SLA
|
||||||
|
StartupNotify=false
|
||||||
|
StartupWMClass=prusa-slicer
|
||||||
46
packer/ansible/roles/prusa-slicer/tasks/configure.yml
Normal file
46
packer/ansible/roles/prusa-slicer/tasks/configure.yml
Normal file
|
|
@ -0,0 +1,46 @@
|
||||||
|
---
|
||||||
|
- set_fact:
|
||||||
|
prusa_slicer_profiles_directory: /usr/share/PrusaSlicer/profiles
|
||||||
|
when: prusa_slicer_use_package | bool
|
||||||
|
|
||||||
|
- set_fact:
|
||||||
|
prusa_slicer_profiles_directory: /opt/PrusaSlicer/resources/profiles
|
||||||
|
when: not prusa_slicer_use_package | bool
|
||||||
|
|
||||||
|
- name: create skel directories
|
||||||
|
file:
|
||||||
|
path: "/etc/skel/{{ item }}"
|
||||||
|
state: directory
|
||||||
|
loop:
|
||||||
|
- .config
|
||||||
|
- .config/PrusaSlicer
|
||||||
|
- .config/PrusaSlicer/vendor
|
||||||
|
|
||||||
|
- name: create symlink to vendor profiles
|
||||||
|
file:
|
||||||
|
src: "{{ prusa_slicer_profiles_directory }}/{{ item }}.ini"
|
||||||
|
dest: /etc/skel/.config/PrusaSlicer/vendor/{{ item }}.ini
|
||||||
|
state: link
|
||||||
|
loop:
|
||||||
|
- PrusaResearch
|
||||||
|
- Ultimaker
|
||||||
|
|
||||||
|
- name: Stat /opt/PrusaSlicer
|
||||||
|
stat:
|
||||||
|
path: /opt/PrusaSlicer
|
||||||
|
register: prusa_slicer_stat
|
||||||
|
|
||||||
|
- name: Set version
|
||||||
|
set_fact:
|
||||||
|
prusa_slicer_version: "{{ prusa_slicer_stat.stat.lnk_target | regex_replace('^/opt/PrusaSlicer-(.*)-[0-9]{12}$', '\\1') }}"
|
||||||
|
when: prusa_slicer_stat.stat.exists and prusa_slicer_stat.stat.islnk
|
||||||
|
|
||||||
|
- debug:
|
||||||
|
var: prusa_slicer_version
|
||||||
|
|
||||||
|
- name: Copy Prusa slicer settings
|
||||||
|
copy:
|
||||||
|
content: |
|
||||||
|
version_system_info_sent = {{ prusa_slicer_version | default('') }}
|
||||||
|
{{ prusa_slicer.settings }}
|
||||||
|
dest: /etc/skel/.config/PrusaSlicer/PrusaSlicer.ini
|
||||||
|
|
@ -0,0 +1,60 @@
|
||||||
|
---
|
||||||
|
- name: Get latest release
|
||||||
|
uri:
|
||||||
|
url: https://api.github.com/repos/prusa3d/PrusaSlicer/releases/latest
|
||||||
|
return_content: true
|
||||||
|
register: prusa_slicer_release
|
||||||
|
|
||||||
|
- name: Create tarball tempfile
|
||||||
|
tempfile:
|
||||||
|
state: file
|
||||||
|
suffix: .tar.gz
|
||||||
|
register: prusa_slicer_tarball
|
||||||
|
|
||||||
|
- name: Select asset
|
||||||
|
set_fact:
|
||||||
|
prusa_slicer_asset: "{{ asset }}"
|
||||||
|
when: "asset.name | regex_search('PrusaSlicer-.*linux-x64-GTK3.*\\.tar\\.bz2$')"
|
||||||
|
loop: "{{ prusa_slicer_release.json.assets }}"
|
||||||
|
loop_control:
|
||||||
|
loop_var: asset
|
||||||
|
label: "{{ asset.name }}"
|
||||||
|
|
||||||
|
- name: Download release file
|
||||||
|
get_url:
|
||||||
|
url: "{{ prusa_slicer_asset.browser_download_url }}"
|
||||||
|
dest: "{{ prusa_slicer_tarball.path }}"
|
||||||
|
force: true
|
||||||
|
|
||||||
|
- name: Extract tarball
|
||||||
|
unarchive:
|
||||||
|
src: "{{ prusa_slicer_tarball.path }}"
|
||||||
|
dest: /opt
|
||||||
|
remote_src: true
|
||||||
|
|
||||||
|
- name: Remove tarball
|
||||||
|
ansible.builtin.file:
|
||||||
|
path: "{{ prusa_slicer_tarball.path }}"
|
||||||
|
state: absent
|
||||||
|
when: prusa_slicer_tarball.path is defined
|
||||||
|
|
||||||
|
- name: Create symlink
|
||||||
|
file:
|
||||||
|
src: "/opt/{{ prusa_slicer_directory }}"
|
||||||
|
dest: "/opt/PrusaSlicer"
|
||||||
|
state: link
|
||||||
|
vars:
|
||||||
|
prusa_slicer_directory: "{{ prusa_slicer_asset.name | regex_replace('\\.tar\\.bz2$', '') }}"
|
||||||
|
|
||||||
|
- name: Create applications directory
|
||||||
|
file:
|
||||||
|
path: /usr/local/share/applications/
|
||||||
|
state: directory
|
||||||
|
|
||||||
|
- name: Copy desktop files
|
||||||
|
copy:
|
||||||
|
src: "{{ item }}.desktop"
|
||||||
|
dest: /usr/local/share/applications/{{ item }}.desktop
|
||||||
|
loop:
|
||||||
|
- PrusaSlicer
|
||||||
|
- PrusaGcodeviewer
|
||||||
18
packer/ansible/roles/prusa-slicer/tasks/main.yml
Normal file
18
packer/ansible/roles/prusa-slicer/tasks/main.yml
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
---
|
||||||
|
- block:
|
||||||
|
- import_tasks: package.yml
|
||||||
|
when: prusa_slicer_use_package | bool
|
||||||
|
tags:
|
||||||
|
- prusa-slicer:install
|
||||||
|
|
||||||
|
- import_tasks: install_from_github.yml
|
||||||
|
when: not prusa_slicer_use_package | bool
|
||||||
|
tags:
|
||||||
|
- prusa-slicer:install
|
||||||
|
|
||||||
|
- import_tasks: configure.yml
|
||||||
|
tags:
|
||||||
|
- prusa-slicer:configure
|
||||||
|
|
||||||
|
tags:
|
||||||
|
- prusa-slicer
|
||||||
5
packer/ansible/roles/prusa-slicer/tasks/package.yml
Normal file
5
packer/ansible/roles/prusa-slicer/tasks/package.yml
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
---
|
||||||
|
- name: install slic3r-prusa
|
||||||
|
apt:
|
||||||
|
name: slic3r-prusa
|
||||||
|
state: present
|
||||||
Loading…
Add table
Add a link
Reference in a new issue