Compare commits

..

2 commits

Author SHA1 Message Date
3bf018bc38 Update roles/KCR-63550/meta/main.yml 2025-08-13 21:06:31 +00:00
76b14ee259 Update roles/KCR-63550/meta/main.yml 2025-08-13 21:05:35 +00:00
112 changed files with 355 additions and 1745 deletions

View file

@ -1,41 +1,5 @@
# Using the ansible scripts
Ansible playbooks for deploying classroom computers. Run with something like:
ansible-playbook --user <local admin> -k -K -i inventory.yml setup.py
or, for Apple computers:
ansible-playbook --user <local admin> -k -K -i inventory.yml macsetup.py
# How classroom computers are prepared at FRI
The computers are prepared as follows:
- Ask teachers to check their requirements.
- Fix ansible scripts according to the requirements.
- Set up a fresh Windows and Linux install on a VM, using files in unattended\_install.
- Use ansible to deploy the software, fixing fresh bugs due to changes in the install processes along the way.
- Fix root filesystem UUIDs to what they were last year so the network-booted menu still works.
- Create partition table image and partition images using [FRI Backup](https://github.com/UL-FRI/ansible_classroom_deploy/tree/main/fri_backup).
- Deploy the images on separate VMs - one for Linux, one for Windows.
- Have teachers check their software in the VMs, report any problems.
- Fix problems on the VMs.
- Create partition images for Windows on one VM, for Linux on the other.
- Deploy the images on a limited number of computers in the classrooms using FRI Backup.
- Test the newly deployed computers, fix identified problems on the VMs.
- Join the Linux VM into AD. One AD account is used for all computers.
- Deploy the partition tables and partitions to the classrooms using [custom ansible scripts](https://github.com/UL-FRI/ansible_classroom_deploy/tree/main/polz_scripts) running FRI Backup and [UDPCast](https://www.udpcast.linux.lu/cmd.html).
- Join Windows into AD.
# Immutable computers
Some pieces of modern software assume that a computer is only used by one user who has practically unlimited space in their home folder. Examples of such software are Android Studio, Visual Studio Code, Matlab, Windows Subsystem for Linux (WSUS) and others. Instead of trying to get the software to work, we might just give up and have everyone use the same account on each computer, then wipe all data after they log out / reboot.
## Windows
We intend to use [UWF](https://learn.microsoft.com/en-us/windows/configuration/wcd/wcd-unifiedwritefilter).
## Linux
We intend to use [snapper](https://wiki.archlinux.org/title/Snapper).
ansible-playbook --user <local admin> -k -K -i inventory.yml macsetup.py

View file

@ -1,8 +1,8 @@
- hosts: classroom
- hosts: ucilnice-prototip
become_method: sudo
become: true
vars:
# ansible_port: 1001
ansible_port: 1001
ansible_ssh_extra_args: '-o ForwardX11=yes'
# ansible_become_pass: '{{ lookup("env", "ANSIBLE_PASSWORD") }}'
# ansible_password: '{{ lookup("env", "ANSIBLE_PASSWORD") }}'
@ -12,8 +12,7 @@
- vars/credentials.yml
- vars/software_keys.yml
roles:
# - nodejs
# - qcadesigner-e
# - orange
- all_classes
# - fri_base
# - powerdesigner

View file

@ -1,8 +1,5 @@
# Digitalno načrtovanje
# ratko.pilipovic@fri.uni-lj.si
# Nejc.Ilc@fri.uni-lj.si
# Windows, Vivado 2022.1
dependencies:
- role: vivado
- role: iverilog
- role: cocotb
- role: surfer-project

View file

@ -1,11 +1,8 @@
# Digitalno procesiranje signalov
# Aleks.Huc@fri.uni-lj.si
# metod.celestina@dewesoft.si
# Windows, GNU/Linux, Matlab, wfdb, Octave, Audacity
dependencies:
- role: matlab
- role: wfdb
- role: octave
- role: audacity
- role: numpy
- role: matplotlib

View file

@ -1,8 +1,6 @@
# Komunikacija človek računalnik
# Ales.Smrdel@fri.uni-lj.si
# Java JDK, Matlab, wfdb, Apache NetBeans
# Ciril.Bohak@fri.uni-lj.si
# Luka.Cehovin@fri.uni-lj.si
# vscode
dependencies:
- role: jdk
- role: matlab
- role: wfdb
- role: netbeans
- role: vscode

View file

@ -5,5 +5,5 @@
# SageMath se se prevede za Ubutnu 24.04: https://github.com/sagemath/sage/issues/38051#issuecomment-2123452861
# - include_tasks: sagemath.yml
dependencies:
- role: jupyter
- role: openssl
- role: jupyter.yml
- role: openssl.yml

View file

@ -1,10 +1,10 @@
# Načrtovanje digitalnih naprav
# Miran.Koprivec@fri.uni-lj.si, Miha.Moskon@fri.uni-lj.si, ratko.pilipovic@fri.uni-lj.si
# Miran.Koprivec@fri.uni-lj.si, Miha.Moskon@fri.uni-lj.si
# Windows, Vivado 2022.1
# Načrtovanje digitalnih naprav
# Miha.Moskon@fri.uni-lj.si
# Windows, Vivado 2022.1
dependencies:
- role: putty
- role: vivado
- role: cp2102_driver
- role: cocotb
- role: iverilog
- role: surfer-project

View file

@ -3,7 +3,7 @@
# Windows, Logisim, Logisim Evolution, RAVINOR, CubeIDE + Tools, VSCode + ST plugin, Putty
dependencies:
- role: logisim
# - role: stm32cube
- role: stm32cube
- role: vscode
- role: putty
- role: stm32duino

View file

@ -6,4 +6,3 @@ dependencies:
- role: gedit
- role: mono
- role: vscode
- role: notepad++

View file

@ -1,18 +0,0 @@
# Podatkovno rudarjenje
# rok.gomiscek@fri.uni-lj.si
#
dependencies:
- role: jupyter
- role: pandas
- role: matplotlib
- role: plotly
- role: seaborn
- role: altair
- role: scikit-learn
- role: mlxtend
- role: networkx
- role: transformers
- role: datasets
- role: evaluate
- role: torch # includes torchvision
- role: streamlit

View file

@ -2,7 +2,7 @@
# Ziga.Pusnik@fri.uni-lj.si, Robert.Rozman@fri.uni-lj.si
# Windows, CubeIDE + tools, STMDuino, VSCode, WinIdea 9.21 + GCC + QEMU, Visual2
dependencies:
# - role: stm32cube # (CubeMonitor sem vzel samo exe)
- role: stm32cube (CubeMonitor sem vzel samo exe)
- role: stm32duino
- role: vscode
- role: putty
@ -10,7 +10,6 @@ dependencies:
- role: gcc-arm
- role: git
- role: visual2
# - role: winidea-frisms
#TODO Writable d:\RAVINOR directory

View file

@ -2,14 +2,13 @@
# Robert.Rozman@fri.uni-lj.si
# Windows, CubeIDE + Tools, STMDuino, VSCode, LTSpice, PulseView,Putty, STM32 Algobuilder & Unicleo GUI
dependencies:
#- role: stm32cube
- role: stm32cube
- role: stm32duino
- role: vscode
- role: ltspice
- role: pulseview
- role: putty
- role: stm32mems-studio # replaces algobuilder and unicleogui
# - role: stm32algobuilder #(ni še exe. Datoteke - ne dobim iz ST portala)
# - role: stm32unicleogui
- role: stm32algobuilder #(ni še exe. Datoteke - ne dobim iz ST portala)
- role: stm32unicleogui
#TODO Writable d:\RAVINOR directory

View file

@ -1,37 +0,0 @@
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE pam_mount SYSTEM "pam_mount.conf.xml.dtd">
<pam_mount>
<!-- Example using CIFS -->
<debug enable="0" />
<volume
fstype="cifs"
server="ucilnicesmb.fri1.uni-lj.si"
path="%(USER)"
mountpoint="~/"
options="sec=krb5i,cruid=%(USERUID)"
>
<not>
<or>
<user>local_admin</user>
<user>root</user>
<sgrp>sudo</sgrp>
</or>
</not>
</volume>
<volume
fstype="cifs"
server="ucilnicesmb.fri1.uni-lj.si"
path="profiles/%(DOMAIN_USER).V6"
mountpoint="~/win_profile"
options="sec=krb5i,cruid=%(USERUID)"
>
<not>
<or>
<user>local_admin</user>
<user>root</user>
<sgrp>sudo</sgrp>
</or>
</not>
</volume>
</pam_mount>

View file

@ -1,39 +1,25 @@
- name: Install required packages
apt:
name:
- realmd
- sssd
- libpam-mount
- heimdal-clients
- name: Remove krb5-user
apt:
name:
krb5-user
state: absent
- name: Set OU
set_fact:
ou_path: "OU={{locations[0]}},OU=Ucilnice"
- name: Show state
debug:
msg: "Host: {{inventory_hostname}}, OU: {{ou_path}}"
# - import_tasks: ne_sysprep.yaml
- name: "Rename"
# Racunalnik najprej preimenujmo, da ne bosta v domeni obenem 2 z istim imenom
hostname:
name: "{{inventory_hostname}}-linux"
register: hostname_res
- name: Enable create homedir on login
command: pam-auth-update --enable mkhomedir
become: true
- name: Check whether we already joined
command: /bin/bash -c "/usr/sbin/realm list"
register: realm_list_results
- name: Set OU
set_fact:
ou_path: "OU={{locations[0]}},OU=Ucilnice"
- name: Show state
debug:
msg: "Host: {{inventory_hostname}}, OU: {{ou_path}}"
# - import_tasks: ne_sysprep.yaml
- name: "Rename"
# Racunalnik najprej preimenujmo, da ne bosta v domeni obenem 2 z istim imenom
hostname:
name: "{{inventory_hostname}}"
register: hostname_res
- name: Join using realmd
expect:
command: realm join --user={{ad_join_user}} --computer-ou={{ou_path}} {{domain_name}}
command: realm join --user={{ad_join_user}} --computer-ou={{ou_path}} FRI1.UNI-LJ.SI
responses:
(?i)Password: "{{ad_join_password}}"
ignore_errors: yes
@ -46,20 +32,3 @@
owner: root
mode: 0600
- name: Configure libpam-mount
copy:
src: pam_mount.conf.xml
dest: /etc/security/pam_mount.conf.xml
- name: Enable libpam-mount
command: pam-auth-update --enable libpam-mount
become: true
- name: Disable libpam-mkhomedir
command: pam-auth-update --disable mkhomedir
become: true
- name: Restart sssd
service:
name: sssd
state: restarted

View file

@ -1,22 +1,18 @@
- name: Set OU
set_fact:
ou_path: "OU={{locations[0]}},OU=Ucilnice,DC=fri1,DC=uni-lj,DC=si"
- name: "Rename"
# Racunalnik najprej preimenujmo, da ne bosta v domeni obenem 2 z istim imenom
win_hostname:
name: "{{inventory_hostname}}"
register: hostname_res
- name: "Reboot after hostname change"
win_reboot:
when: hostname_res.reboot_required
- name: Stop Windows Update Service
win_service:
name: wuauserv
state: stopped
- name: Clear WSUS ID from registry
win_regedit:
path: HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate
@ -28,30 +24,25 @@
- AccountDomainSid
- SusClientId
- SusClientIDValidation
- name: Start Windows Update Service
win_service:
name: wuauserv
state: started
- name: "Join domain"
win_domain_membership:
domain_admin_user: "{{ad_join_user}}"
domain_admin_password: "{{ad_join_password}}"
domain_admin_user: "{{adjoin_user}}"
domain_admin_password: "{{adjoin_password}}"
dns_domain_name: "{{domain_name}}"
domain_ou_path: "{{ou_path}}"
hostname: "{{inventory_hostname}}"
state: domain
register: domain_state
- name: Reset WSUS authorization
win_command: wuauclt.exe /resetauthorization /detectnow
ignore_errors: yes
- name: Update windows
win_command: wuauclt.exe /updatenow
ignore_errors: yes
- name: Reboot
win_command: "shutdown /r"
when: domain_state.reboot_required

View file

@ -29,4 +29,3 @@ ldap_id_mapping = True
use_fully_qualified_names = True
fallback_homedir = /home/%u@%d
access_provider = ad
krb5_ccname_template = FILE:%d/krb5cc_%U

View file

@ -1,4 +0,0 @@
- import_tasks: main_win.yml
when: ansible_os_family == 'Windows'
- import_tasks: main_lin.yml
when: ansible_os_family == 'Debian'

View file

@ -1,4 +0,0 @@
- name: Install altair
apt:
name: python3-altair
state: latest

View file

@ -1,2 +0,0 @@
- name: Install altair
win_command: pip install altair

View file

@ -2,8 +2,9 @@ AndroidSDK_packages:
- add-ons;addon-google_apis-google-24
- add-ons;addon-google_apis-google-24
- build-tools;34.0.0-rc3
- build-tools;36.0.0
- cmake;4.0.3
- build-tools;35.0.0
- cmake;3.22.1
#- cmake;latest
- cmdline-tools;latest
- emulator
- extras;android;m2repository
@ -21,15 +22,15 @@ AndroidSDK_packages:
# - patcher;v4
- platform-tools
- platforms;android-34
- platforms;android-36
- platforms;android-35
- platforms;android-32
# - platforms;android-UpsideDownCakePrivacySandbox
- platforms;android-UpsideDownCakePrivacySandbox
- skiaparser;3
- sources;android-36
- sources;android-35
- sources;android-34
- system-images;android-36;google_apis;x86_64
- system-images;android-35;google_apis;x86_64
- system-images;android-34;google_apis;x86_64
- system-images;android-32;google_apis;x86_64
- system-images;android-36;google_apis_playstore;x86_64
- system-images;android-35;google_apis_playstore;x86_64
- system-images;android-34;google_apis_playstore;x86_64
# - system-images;android-UpsideDownCakePrivacySandbox;google_apis_playstore;x86_64
- system-images;android-UpsideDownCakePrivacySandbox;google_apis_playstore;x86_64

View file

@ -1,90 +1,63 @@
- name: Set Android Studio version
set_fact:
studio_path: "{{ large_prog_dir }}\\android-studio"
studio_version: "2025.1.2.13"
tools_version: "13114758_latest"
- name: Set Android command-line tools path
set_fact:
tools_path: "{{ studio_path }}\\cmdline-tools\\latest"
- name: Check Android Studio
win_stat:
path: "{{ studio_path }}\\bin\\studio64.exe"
register: studio
- when: not studio.stat.exists
block:
- name: Download Android Studio
win_get_url:
url: "https://redirector.gvt1.com/edgedl/android/studio/ide-zips/{{ studio_version }}/android-studio-{{ studio_version }}-windows.zip"
dest: "{{ large_prog_dir }}\\"
- name: Extract Android Studio
win_unzip:
src: "{{ large_prog_dir }}\\android-studio-{{ studio_version }}-windows.zip"
dest: "{{ large_prog_dir }}\\"
delete_archive: yes
sdk_path: C:\android-sdk
studio_version: "2025.1.2.11"
tools_version: "latest"
- name: Check Android Studio tools
win_stat:
path: "{{ tools_path }}\\bin\\sdkmanager.bat"
path: "{{ sdk_path }}\\cmdline-tools\\cmdline-tools\\bin\\sdkmanager.bat"
register: tools
- when: not tools.stat.exists
block:
- name: Download Android Studio tools
win_get_url:
url: "https://dl.google.com/android/repository/commandlinetools-win-{{ tools_version }}.zip"
# url: "https://dl.google.com/android/repository/platform-tools-{{ tools_version }}-windows.zip"
dest: "{{ studio_path }}"
# url: "https://dl.google.com/android/repository/commandlinetools-win-{{ tools_version }}.zip"
url: "https://dl.google.com/android/repository/platform-tools-{{ tools_version }}-windows.zip"
dest: C:\
- name: Extract Android Studio tools
win_unzip:
# src: "{{ large_prog_dir }}\\platform-tools-{{ tools_version }}-windows.zip"
src: "{{ studio_path}}\\commandlinetools-win-{{ tools_version }}.zip"
dest: "{{ studio_path }}\\cmdline-tools\\"
src: "C:\\commandlinetools-win-{{ tools_version }}.zip"
dest: "{{ sdk_path }}\\cmdline-tools"
delete_archive: yes
- name: Move cmdline-tools to expected location
ansible.windows.win_powershell:
script: move "{{ studio_path }}\\cmdline-tools\\cmdline-tools" "{{ tools_path }}"
- name: Create Android Studio data directory
win_file:
path: "{{ large_prog_dir }}\\.android"
state: directory
- name: Set Android Studio environment variables
win_environment:
level: machine
variables:
ANDROID_HOME: "{{ studio_path }}"
ANDROID_SDK_ROOT: "{{ studio_path }}"
ANDROID_PREFS_ROOT: "{{ large_prog_dir }}\\"
GRADLE_USER_HOME: "{{ large_prog_dir }}\\.gradle"
# - name: Accept Android SDK licenses
# win_shell: sh -c "yes | /c/android-sdk/cmdline-tools/cmdline-tools/bin/sdkmanager.bat --licenses"
- name: Accept Android SDK licenses
win_shell: sh -c "yes | /c/android-sdk/cmdline-tools/cmdline-tools/bin/sdkmanager.bat --licenses"
- name: Include Android SDK packages
include_vars: androidsdk_packages.yml
- name: Install Android SDK packages
- name: Install Android SDK
win_shell: |
{{ tools_path }}\bin\sdkmanager.bat --install "{{ item }}"
{{ sdk_path }}\\cmdline-tools\\cmdline-tools\\bin\\sdkmanager --install "{{ item }}"
loop: "{{ AndroidSDK_packages }}"
# {{ sdk_path }}\\cmdline-tools\\cmdline-tools\\bin\\sdkmanager --install "{{ AndroidSDK_packages | join(' ') }}"
# {{ sdk_path }}\\cmdline-tools\\cmdline-tools\\bin\\sdkmanager --install "build-tools;33.0.0" "cmdline-tools;latest" "emulator" "ndk-bundle" "ndk;25.1.8937393" "platform-tools" "platforms;android-33" "sources;android-33" "system-images;android-33;google_apis;arm64-v8a" "system-images;android-33;google_apis;x86_64"
#- name: Install Android Studio
# win_package:
# path: "https://redirector.gvt1.com/edgedl/android/studio/install/{{ studio_version }}/android-studio-{{ studio_version }}-windows.exe"
# arguments: /S /AllUsers
# expected_return_code: [0, 1223, 3010]
# creates_path: "%ProgramFiles%\\Android\\Android Studio\\bin\\studio64.exe"
- name: Install Android Studio
win_package:
path: "https://redirector.gvt1.com/edgedl/android/studio/install/{{ studio_version }}/android-studio-{{ studio_version }}-windows.exe"
arguments: /S /AllUsers
expected_return_code: [0, 1223, 3010]
creates_path: "%ProgramFiles%\\Android\\Android Studio\\bin\\studio64.exe"
- name: Create Android Studio data directory
win_file:
path: D:\.android
state: directory
- name: Set Android Studio environment variables
win_environment:
level: machine
variables:
ANDROID_HOME: "{{ sdk_path }}"
ANDROID_PREFS_ROOT: D:\
GRADLE_USER_HOME: D:\.gradle
#- name: Check HAXM install status
# win_stat:
# path: "%ProgramFiles%\\Intel\\HAXM"

View file

@ -8,9 +8,8 @@
- name: Install Arduino-cli
win_package:
# path: https://downloads.arduino.cc/arduino-ide/arduino-ide_2.0.0_Windows_64bit.exe
path: https://github.com/arduino/arduino-cli/releases/download/v1.3.0/arduino-cli_1.3.0_Windows_64bit.msi
# path: https://downloads.arduino.cc/arduino-cli/arduino-cli_latest_Windows_64bit.zip
# arguments: /S /AllUsers
path: https://downloads.arduino.cc/arduino-cli/arduino-cli_latest_Windows_64bit.zip
arguments: /S /AllUsers
# creates_path: "%ProgramFiles%\\Arduino IDE\\Arduino IDE.exe"

View file

@ -1,13 +1,9 @@
- name: Add Chromium not-a-snap repository
apt:
deb: https://launchpad.net/~xtradeb/+archive/ubuntu/apps/+files/xtradeb-apt-source_0.4_all.deb
apt_repository:
repo: ppa:xtradeb/apps
state: present
#apt_repository:
# repo: ppa:xtradeb/apps
# state: present
# update_cache: True
# validate_certs: False
update_cache: True
validate_certs: False
- name: Install Chromium instead of Chrome
apt:

View file

@ -1,4 +0,0 @@
- import_tasks: main_win.yml
when: ansible_os_family == 'Windows'
- import_tasks: main_lin.yml
when: ansible_os_family == 'Debian'

View file

@ -1,4 +0,0 @@
- name: Install Cocotb
pip:
executable: pipx
name: cocotb[bus]

View file

@ -1,2 +0,0 @@
- name: Install cocoTB
win_command: pip install cocotb[bus]

View file

@ -2,5 +2,3 @@
win_chocolatey:
ignore_checksums: true
name: cp210x-vcp-drivers-win10
#TODO remove ignore_errors once the package is repaired/updated
ignore_errors: true

View file

@ -1,4 +0,0 @@
- import_tasks: main_win.yml
when: ansible_os_family == 'Windows'
- import_tasks: main_lin.yml
when: ansible_os_family == 'Debian'

View file

@ -1,4 +0,0 @@
- name: Install datasets
pip:
executable: pipx
name: datasets

View file

@ -1,2 +0,0 @@
- name: Install datasets
win_command: pip install datasets

View file

@ -12,4 +12,4 @@
win_lineinfile:
path: "%ProgramFiles%\\Eclipse {{ target_version }}\\eclipse\\eclipse.ini"
regexp: "osgi.instance.area.default"
line: "-Dosgi.instance.area.default=D:/Documents/eclipse-workspace"
line: "-Dosgi.instance.area.default=H:/Documents/eclipse-workspace"

View file

@ -1,4 +0,0 @@
- import_tasks: main_win.yml
when: ansible_os_family == 'Windows'
- import_tasks: main_lin.yml
when: ansible_os_family == 'Debian'

View file

@ -1,4 +0,0 @@
- name: Install evaluate
pip:
executable: pipx
name: evaluate

View file

@ -1,2 +0,0 @@
- name: Install evaluate
win_command: pip install evaluate

View file

@ -1,21 +1,31 @@
- name: Send valid bash or ps command with different results
raw: |
echo \#\#
register: raw_result
- name: Try connecting to linux
ping:
register: lin_ping_data
ignore_unreachable: true
ignore_errors: true
- name: Set shell type
- name: Set shell to powershell
set_fact:
ansible_shell_type: "{% if raw_result['stdout'][-4] == '#' %}sh{% else %}powershell{%endif%}"
ansible_shell_type: powershell
when: lin_ping_data is undefined or lin_ping_data.unreachable is defined
- name: Try connecting to windows
win_ping:
register: win_ping_data
ignore_unreachable: true
ignore_errors: true
- name: Set connection parameters and paths for Windows
become: false
set_fact:
ansible_shell_type: powershell
ansible_connection: ssh
ansible_become_method: runas
ansible_become_flags: ""
ansible_become_user: "{{ windows_user }}"
logon_type: interactive
installers: \\ucilnicesmb.fri1.uni-lj.si\ucilnice_d\install
when: ansible_shell_type == "powershell"
when: win_ping_data is defined and win_ping_data.ping is defined
- name: Set connection parameters and paths for Ubuntu
set_fact:
@ -23,4 +33,4 @@
ansible_become_flags: ""
ansible_ssh_extra_args: '-o ForwardX11=yes'
installers: /mnt/ucilnice_d/install
when: ansible_shell_type == "sh"
when: lin_ping_data is defined and lin_ping_data.ping is defined

View file

@ -1,21 +1,5 @@
- name: Add Firefox not-a-snap repository
block:
- name: add Mozilla apt key
ansible.builtin.get_url:
url: https://packages.mozilla.org/apt/repo-signing-key.gpg
dest: /etc/apt/keyrings/packages.mozilla.org.asc
- name: add Mozilla apt source
ansible.builtin.apt_repository:
repo: "deb [signed-by=/etc/apt/keyrings/packages.mozilla.org.asc] https://packages.mozilla.org/apt mozilla main"
state: present
#- name: Add Firefox PPA
# apt_repository:
# repo: ppa:mozillateam/ppa
# state: present
# update_cache: True
# validate_certs: False
- name: Pin Firefox PPA package priority
template:
src: mozilla-firefox-apt-preferences
@ -24,6 +8,12 @@
template:
src: mozilla-firefox-unattended-upgrades
dest: /etc/apt/apt.conf.d/51unattended-upgrades-firefox
- name: Add Firefox PPA
apt_repository:
repo: ppa:mozillateam/ppa
state: present
update_cache: True
validate_certs: False
- name: Install Firefox
apt:

View file

@ -1,4 +0,0 @@
- import_tasks: main_win.yml
when: ansible_os_family == 'Windows'
- import_tasks: main_lin.yml
when: ansible_os_family == 'Debian'

View file

@ -1,7 +0,0 @@
- name: Install flask
apt:
name:
- python3-flask
- python-flask-doc
state: latest

View file

@ -27,7 +27,6 @@
- wine32:i386
- wine-binfmt
- dosbox
- snapper
# - webext-ublock-origin-chromium
# - webext-ublock-origin-firefox
- nethack-console
@ -50,8 +49,6 @@
- neovim-qt
- binwalk
- iotop
- evince
- okular
- htop
- jdupes
state: latest
@ -147,13 +144,3 @@
copy:
dest: /etc/udev/rules.d/
src: 99-wakeonlan.rules
- name: Shorten PS1 prompt
replace:
path: "{{ item }}"
regexp: 'PS1=(.*)\\u@\\h'
replace: PS1=\1${USER%@*}
loop:
- /etc/skel/.bashrc
- /etc/profile
- /etc/bash.bashrc

View file

@ -1,23 +1,9 @@
- name: Add GNS3 repository
block:
- name: add GNS3 apt key
ansible.builtin.get_url:
url: https://keyserver.ubuntu.com/pks/lookup?op=get&search=0xb83aaabffbd82d21b543c8ea86c22c2ec6a24d7f
dest: /etc/apt/keyrings/gns3-ppa.asc
- name: add GNS3 apt deb source
ansible.builtin.apt_repository:
repo: "deb [signed-by=/etc/apt/keyrings/gns3-ppa.asc] https://ppa.launchpadcontent.net/gns3/ppa/ubuntu {{ ansible_distribution_release }} main "
state: present
- name: add GNS3 apt deb-src source
ansible.builtin.apt_repository:
repo: "deb-src [signed-by=/etc/apt/keyrings/gns3-ppa.asc] https://ppa.launchpadcontent.net/gns3/ppa/ubuntu {{ ansible_distribution_release }} main "
state: present
# apt_repository:
# repo: ppa:gns3/ppa
# state: present
# update_cache: True
# validate_certs: False
apt_repository:
repo: ppa:gns3/ppa
state: present
update_cache: True
validate_certs: False
- name: Install gns3 server
ansible.builtin.apt:
name: gns3-server

View file

@ -1,20 +1,10 @@
- name: Add Inkscape repository
block:
- name: add Inkscape trunk apt key
ansible.builtin.get_url:
url: https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x1F46021FF9A0C56504CE42CD06E315A37AAEF27A
dest: /etc/apt/keyrings/inkscape-trunk-ppa.asc
- name: add Inkscape trunk apt deb source
ansible.builtin.apt_repository:
repo: "deb [signed-by=/etc/apt/keyrings/inkscape-trunk-ppa.asc] https://ppa.launchpadcontent.net/reviczky/inkscape-1.4/ubuntu {{ ansible_distribution_release }} main "
state: present
# apt_repository:
# repo: ppa:inkscape.dev/stable
# state: present
# update_cache: True
# validate_certs: False
apt_repository:
repo: ppa:inkscape.dev/stable
state: present
update_cache: True
validate_certs: False
- name: Install Inkscape
apt:
name: inkscape-trunk
name: inkscape
state: latest

View file

@ -1,4 +0,0 @@
- import_tasks: main_win.yml
when: ansible_os_family == 'Windows'
- import_tasks: main_lin.yml
when: ansible_os_family == 'Debian'

View file

@ -1,4 +0,0 @@
- name: Install Icarus
apt:
name: iverilog
state: latest

View file

@ -1,6 +0,0 @@
- name: Install Icarus Verilog
win_chocolatey:
name: iverilog
version: '11.0'
source: http://internal/odata/repo
state: present

View file

@ -1,11 +1,6 @@
- name: Install latest OpenJDK (25)
- name: Install OpenJDK 21
apt:
name: openjdk-25-jdk
state: latest
- name: Install latest Java docs
apt:
name: openjdk-25-doc
name: openjdk-21-jdk
state: latest
- name: Install OpenJDK 17
@ -36,7 +31,11 @@
- libc6-x32
state: latest
- name: Install Oracle JDK 24
- name: Install Oracle JDK 22
apt:
deb: "https://download.oracle.com/java/24/latest/jdk-24_linux-x64_bin.deb"
deb: "https://download.oracle.com/java/22/latest/jdk-22_linux-x64_bin.deb"
- name: Install Java docs
apt:
deb: "https://download.oracle.com/java/22/latest/jdk-22_linux-x64_bin.deb"

View file

@ -1,6 +1,6 @@
- name: Install Oracle JDK
win_package:
path: https://download.oracle.com/java/24/latest/jdk-24_windows-x64_bin.msi
path: https://download.oracle.com/java/22/latest/jdk-22_windows-x64_bin.msi
arguments: INSTALLLEVEL=3
- name: Find Java version
@ -28,13 +28,6 @@
state: present
scope: machine
- name: Add Java bin dir to PATH
win_path:
name: PATH
elements: "{{ reg['raw_value'] }}\\bin"
state: present
scope: machine
- name: Disable Java updates
win_regedit:
path: HKLM:\SOFTWARE\WOW6432Node\JavaSoft\Java Update\Policy

View file

@ -11,13 +11,3 @@
dest: /opt/logisim
remote_src: yes
creates: /opt/logisim/META-INF/MANIFEST.MF
- name: Create destination for Logisim - Evolution
file:
path: /opt/logisim-evolution
state: directory
- name: Download and unpack Logisim - Evolution
unarchive:
src: https://github.com/logisim-evolution/logisim-evolution/releases/download/v3.9.0/logisim-evolution-3.9.0-all.jar
dest: /opt/logisim-evolution
remote_src: yes
creates: /opt/logisim-evolution/META-INF/MANIFEST.MF

View file

@ -1,6 +1,6 @@
- name: Set Matlab version and destination
set_fact:
target_version: "R2025a_Update_1"
target_version: "R2024a_Update_5"
install_dir: "/mnt/ucilnice_d/install/matlab/"
license_path: "/mnt/ucilnice_d/install/matlab/network.lic"
dest_dir: /opt/matlab
@ -23,7 +23,7 @@
- name: Install Matlab
command:
cmd: /tmp/matlab_iso/install -inputFile "/tmp/matlab_installer_input.txt"
creates: "{{ dest_dir }}/licenses/license_info.xml"
# creates: "{{ dest_dir }}/VersionInfo.xml"
#- name: Unmount Matlab ISO
# win_disk_image:
# image_path: "{{ installers }}\\matlab\\matlab-{{ target_version }}_windows.iso"

View file

@ -2,7 +2,7 @@
set_fact:
target_version: "R2025a_Update_1"
license_path: \\ucilnicesmb.fri1.uni-lj.si\ucilnice_d\install\matlab\network.lic
dest_dir: "{{ large_prog_dir }}\\matlab"
dest_dir: D:\matlab
- name: Set ISO path
set_fact:
@ -17,27 +17,21 @@
- name: Prepare installer_input.txt
template:
src: installer_input.txt
dest: c:\matlab_installer_input.txt
dest: d:\matlab_installer_input.txt
- name: Install Matlab
win_package:
path: "{{ disk_image.mount_paths[0] }}\\setup.exe"
arguments: -inputFile "c:\\matlab_installer_input.txt"
arguments: -inputFile "d:\\matlab_installer_input.txt"
- name: Unmount Matlab ISO
win_disk_image:
image_path: "{{ iso_path }}"
state: absent
ignore_errors: true
- name: Create licenses directory
win_file:
dest: "{{ dest_dir }}\\licenses"
state: directory
# MATLAB will no longer be used with concurrent licenses - let them license their own!
#- name: Install Matlab license
# win_copy:
# dest: "{{ dest_dir }}\\licenses\\network.lic"
# src: "{{ installers }}\\matlab\\network.lic"
# remote_src: yes
# TODO MATLAB throws license error -83 when run
- name: Install Matlab license
win_copy:
dest: "{{ dest_dir }}\\licenses\\network.lic"
src: "{{ installers }}\\matlab\\network.lic"
remote_src: yes

View file

@ -13,8 +13,7 @@ agreeToLicense=yes
## Users must log in to their MathWorks Account when MATLAB starts.
##
## NOTE: This flag is valid in silent installations only.
# enableLNU=no
enableLNU=yes
enableLNU=no
improveMATLAB=no

View file

@ -1,11 +1,4 @@
- name: Install matplotlib
- name: Install maptplotlib
apt:
name:
- python3-matplotlib
- python3-matplotlib-inline
- python3-matplotlib-venn
- python3-mpl-animators
- python3-mpl-scatter-density
- python3-mplcursors
- python3-mplexporter
state: latest
name: matplotlib
state: latest

View file

@ -1,4 +0,0 @@
- import_tasks: main_win.yml
when: ansible_os_family == 'Windows'
- import_tasks: main_lin.yml
when: ansible_os_family == 'Debian'

View file

@ -1,4 +0,0 @@
- name: Install mlxtend
pip:
executable: pipx
name: mlxtend

View file

@ -1,2 +0,0 @@
- name: Install pandas
win_command: pip install mlxtend

View file

@ -1,104 +1,8 @@
- name: Create mysql workbench build directory
file:
path: /tmp/mysql-workbench
state: directory
- name: Download mysql workbench source
- name: Download mysql workbench
get_url:
url: https://dev.mysql.com/get/Downloads/MySQLGUITools/mysql-workbench-community-8.0.43-src.tar.gz
dest: /tmp/mysql-workbench/mysql-workbench.tgz
url: https://dev.mysql.com/get/Downloads/MySQLGUITools/mysql-workbench-community_8.0.38-1ubuntu24.04_amd64.deb
dest: /tmp/mysql-workbench-community_8.0.38-1ubuntu24.04_amd64.deb
http_agent: "Wget/1.21.3"
register: mysql_download
- name: Install mysql workbench build dependencies
- name: Install mysql workbench
apt:
package:
- build-essential
- cmake
- cmake-data
- autoconf
- automake
- pkg-config
- libtool
- libzip-dev
- libxml2-dev
- libsigc++-2.0-dev
- libglade2-dev
- libglu1-mesa-dev
- libgl1-mesa-dev
- mesa-common-dev
- libmysqlclient-dev
- libmysqlcppconn-dev
- uuid-dev
- libpixman-1-dev
- libpcre3-dev
- libpango1.0-dev
- libcairo2-dev
- python3-dev
- libboost-dev
- default-mysql-client
- libsqlite3-dev
- swig4.1
- libvsqlitepp-dev
- libgdal-dev
- libgtk-3-dev
- libgtkmm-3.0-dev
- libssl-dev
- libsecret-1-dev
- libproj-dev
- libssh-dev
- rapidjson-dev
- unixodbc-dev
- unixodbc
- name: Create /usr/local/share/java
file:
path: /usr/local/share/java
state: directory
- name: Download antlr jar
get_url:
url: https://www.antlr.org/download/antlr-4.13.2-complete.jar
dest: /usr/local/share/java/antlr-4.13.2-complete.jar
- name: Create antlr4 build dir
file:
path: /tmp/antlr4/build
state: directory
- name: Checkout antlr4 (cpp runtime)
git:
repo: https://github.com/antlr/antlr4/
dest: /tmp/antlr4/antlr4
- name: Build antlr4 cpp runtime
shell:
cmd: "cd /tmp/antlr4/build; cmake ../antlr4/runtime/Cpp; make; make install"
- name: Extract MySQL Workbench source
unarchive:
src: "{{ mysql_download.dest }}"
remote_src: true
dest: /tmp/mysql-workbench
- name: Create build dir
file:
path: /tmp/mysql-workbench/build
state: directory
- name: Build Mysql Workbench
shell:
cmd: "cd /tmp/mysql-workbench/build; cmake -DUSE_UNIXODBC=True -DODBC_LIBRARIES=-lodbc -DANTLR_JAR_PATH=/usr/local/share/java -DSWIG_EXECUTABLE=/usr/bin/swig4.1 -DSWIG_DIR=/usr/share/swig4.1 ../mysql-workbench-*-src; make; make install"
#- name: Download mysql workbench
# get_url:
# url: https://dev.mysql.com/get/Downloads/MySQLGUITools/mysql-workbench-community_8.0.38-1ubuntu24.04_amd64.deb
# dest: /tmp/mysql-workbench-community_8.0.38-1ubuntu24.04_amd64.deb
# http_agent: "Wget/1.21.3"
#- name: Install mysql workbench
# apt:
# deb: /tmp/mysql-workbench-community_8.0.38-1ubuntu24.04_amd64.deb
deb: /tmp/mysql-workbench-community_8.0.38-1ubuntu24.04_amd64.deb

View file

@ -2,22 +2,8 @@
set_fact:
target_version: "26"
#- name: Install Netbeans from Chocolatey
# win_chocolatey:
# name: NetBeans
# state: upgrade
# https://downloads.apache.org/netbeans/netbeans/26/netbeans-26-bin.zip
- name: Download Netbeans
win_get_url:
url: "https://github.com/Friends-of-Apache-NetBeans/netbeans-installers/releases/download/v{{ target_version }}-build1/Apache-NetBeans-{{ target_version }}.exe"
dest: "c:\\Apache-NetBeans-{{ target_version }}.exe"
- name: Install Netbeans
win_package:
path: "c:\\Apache-NetBeans-{{ target_version }}.exe"
# path: "https://github.com/Friends-of-Apache-NetBeans/netbeans-installers/releases/download/v{{ target_version }}-build1/Apache-NetBeans-{{ target_version }}.exe"
# path: "https://dlcdn.apache.org/netbeans/netbeans-installers/{{ target_version }}/Apache-NetBeans-{{ target_version }}-bin-windows-x64.exe"
arguments: "\"/DIR={{ ansible_env['ProgramFiles'] }}\\NetBeans-{{ target_version }}\" /SUPPRESSMSGBOXES /VERYSILENT /SP-"
creates_path: "%ProgramFiles%\\NetBeans-{{ target_version }}\\bin\\netbeans.exe"
win_package:
path: "https://dlcdn.apache.org/netbeans/netbeans-installers/{{ target_version }}/Apache-NetBeans-{{ target_version }}-bin-windows-x64.exe"
arguments: --silent
creates_path: "%ProgramFiles%\\NetBeans-{{ target_version }}\\netbeans\\bin\\netbeans.exe"

View file

@ -1,4 +0,0 @@
- import_tasks: main_win.yml
when: ansible_os_family == 'Windows'
- import_tasks: main_lin.yml
when: ansible_os_family == 'Debian'

View file

@ -1,4 +0,0 @@
- name: Install networkx
apt:
name: python3-networkx
state: latest

View file

@ -1,2 +0,0 @@
- name: Install networkx
win_command: pip install networkx

View file

@ -1,7 +1,7 @@
- name: Add NodeJS repo key
get_url:
apt_key:
url: https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key
dest: /etc/apt/keyrings/nodesource.asc
keyring: /etc/apt/keyrings/nodesource.gpg
#- name: Add NodeJS repo url
# apt_repository:
@ -9,5 +9,10 @@
- name: Add NodeJS LTS repo url
apt_repository:
repo: "deb [signed-by=/etc/apt/keyrings/nodesource.asc] https://deb.nodesource.com/node_22.x nodistro main"
repo: "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_18.x nodistro main"
- name: Install NodeJS
apt:
name: nodejs
state: latest

View file

@ -2,7 +2,6 @@
win_chocolatey:
name: nodejs
# Install fails if multiple versions are installed
# - name: Install NodeJS-LTS
# win_chocolatey:
# name: nodejs-lts
- name: Install NodeJS-LTS
win_chocolatey:
name: nodejs-lts

View file

@ -1,4 +0,0 @@
- import_tasks: main_win.yml
when: ansible_os_family == 'Windows'
- import_tasks: main_lin.yml
when: ansible_os_family == 'Debian'

View file

@ -1,5 +0,0 @@
- name: Install numpy
apt:
name:
- python3-numpy
state: latest

View file

@ -1,2 +0,0 @@
- name: Install numpy
win_command: pip install numpy

View file

@ -1,9 +1,7 @@
# TODO: omnetpp na Windows sedaj zahteva WSL. Premisli, kaj storiti glede tega
- name: Set OMNet++ version
set_fact:
target_version: "6.2.0"
target_dir: "{{large_prog_dir}}\\OMNeT++"
target_dir: "C:\\OMNeT++"
- name: Check OMNet++ install status
win_stat:
@ -14,24 +12,18 @@
block:
- name: Download OMNet++
win_get_url:
url: "https://github.com/omnetpp/omnetpp/releases/download/omnetpp-{{ target_version }}/omnetpp-{{ target_version }}-windows-x86_64.7z"
dest: "{{ large_prog_dir }}"
url: "https://github.com/omnetpp/omnetpp/releases/download/omnetpp-{{ target_version }}/omnetpp-{{ target_version }}-windows-x86_64.zip"
dest: C:\
register: download
- name: Unzip OMNet++
win_unzip:
src: "{{ download.dest }}"
dest: "{{ large_prog_dir }}"
dest: C:\
delete_archive: yes
- name: Move OMNet++ to final location
ansible.windows.win_powershell:
script: move "{{ large_prog_dir }}\omnetpp-{{ target_version }}" "{{ target_dir }}"
# win_robocopy:
# src: "{{ large_prog_dir }}\\omnetpp-{{ target_version }}"
# dest: "{{ target_dir }}"
# flags: "/move"
# win_command: cmd.exe /c move "c:\omnetpp-{{ target_version }}" "{{ target_dir }}"
win_command: cmd.exe /c move "C:\omnetpp-{{ target_version }}" "{{ target_dir }}"
- name: Create OMNet++ compile script
win_copy:
@ -46,7 +38,7 @@
line: call "%HOME%\\tools\\win32.x86_64\\msys2_shell.cmd" -mingw64 -c "./configure && make -j4" & exit
- name: Compile OMNet++
win_command: cmd.exe /c "{{ target_dir }}\mingwenv-install.cmd"
win_command: cmd.exe /c "{{ target_dir }}\\mingwenv-install.cmd"
- name: Copy OMNet++ shortcut
win_copy:

View file

@ -1,4 +0,0 @@
- import_tasks: main_win.yml
when: ansible_os_family == 'Windows'
- import_tasks: main_lin.yml
when: ansible_os_family == 'Debian'

View file

@ -1,4 +0,0 @@
- name: Install plotly
apt:
name: python3-plotly
state: latest

View file

@ -1,2 +0,0 @@
- name: Install plotly
win_command: pip install plotly

View file

@ -1,16 +1,4 @@
# The installer does not work from powershell in silent mode.
#
- name: Prepare PowerDesigner setup.iss
template:
src: setup.iss
dest: c:\powerdesigner_setup.iss
- name: Install PowerDesigner
win_shell: |
{{ installers }}\PowerDesigner_12.5\cd1\setup\setup.exe /s /f1"c:\powerdesigner_setup.iss" /f2"C:\powerdesigner_log.iss"
args:
executable: cmd
# path: "{{ installers }}\\PowerDesigner 12.5\\cd1\\setup\\setup.exe"
# arguments: "/hide_progress /hide_splash /hide_usd /s /f1\"{{ installers }}\\PowerDesigner 12.5\\setup.iss\" /f2\"C:\\powerdesigner_log.iss\""
win_package:
path: "{{ installers }}\\PowerDesigner 12.5\\cd1\\setup\\setup.exe"
arguments: "/s /f1\"{{ installers }}\\PowerDesigner 12.5\\setup.iss\" /f2\"C:\\powerdesigner_log.iss\""

View file

@ -3,37 +3,37 @@ Version=v7.00
File=Response File
[File Transfer]
OverwrittenReadOnly=NoToAll
[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-DlgOrder]
Dlg0={DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SdWelcome-0
[{{ powerdesigner_key }}-DlgOrder]
Dlg0={{ powerdesigner_key }}-SdWelcome-0
Count=10
Dlg1={DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SybSelectInstallMode-0
Dlg2={DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SybFlexLM-0
Dlg3={DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SybSelectPackage-0
Dlg4={DA53ABD7-6592-45DA-A6DD-287A48F74D37}-Sybase License-0
Dlg5={DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SdAskDestPath-0
Dlg6={DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SdComponentTree-0
Dlg7={DA53ABD7-6592-45DA-A6DD-287A48F74D37}-Graphic Select Folder-0
Dlg8={DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SdStartCopy-0
Dlg9={DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SdFinish-0
[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SdWelcome-0]
Dlg1={{ powerdesigner_key }}-SybSelectInstallMode-0
Dlg2={{ powerdesigner_key }}-SybFlexLM-0
Dlg3={{ powerdesigner_key }}-SybSelectPackage-0
Dlg4={{ powerdesigner_key }}-Sybase License-0
Dlg5={{ powerdesigner_key }}-SdAskDestPath-0
Dlg6={{ powerdesigner_key }}-SdComponentTree-0
Dlg7={{ powerdesigner_key }}-Graphic Select Folder-0
Dlg8={{ powerdesigner_key }}-SdStartCopy-0
Dlg9={{ powerdesigner_key }}-SdFinish-0
[{{ powerdesigner_key }}-SdWelcome-0]
Result=1
[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SybSelectInstallMode-0]
[{{ powerdesigner_key }}-SybSelectInstallMode-0]
Mode=3
Result=1
[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SybFlexLM-0]
LicenseServer=todo.fri.uni-lj.si
[{{ powerdesigner_key }}-SybFlexLM-0]
LicenseServer=todo.fri1.uni-lj.si
PortNumber=27000
Result=1
[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SybSelectPackage-0]
[{{ powerdesigner_key }}-SybSelectPackage-0]
Package=Studio Enterprise
Result=1
[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-Sybase License-0]
[{{ powerdesigner_key }}-Sybase License-0]
Sybase_License=accept
[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SdAskDestPath-0]
szDir={{ large_prog_dir }}\PowerDesigner 12
[{{ powerdesigner_key }}-SdAskDestPath-0]
szDir=C:\Program Files (x86)\Sybase\PowerDesigner 12
Result=1
[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SdComponentTree-0]
szDir={{ large_prog_dir }}\PowerDesigner 12
[{{ powerdesigner_key }}-SdComponentTree-0]
szDir=C:\Program Files (x86)\Sybase\PowerDesigner 12
CR\FRM-type=string
CR\FRM-count=2
CR\FRM-0=CR\FRM\FRM_Xem
@ -108,6 +108,11 @@ PDM-1=PDM\PDM_Examples
PDM-2=PDM\PDM_Report
PDM-3=PDM\PDM_Tools
PDM-4=PDM\PDM_Addins
RQM-type=string
RQM-count=3
RQM-0=RQM\RQM_License
RQM-1=RQM\RQM_Examples
RQM-2=RQM\RQM_Report
XSM-type=string
XSM-count=4
XSM-0=XSM\XSM_License
@ -130,19 +135,6 @@ PDF-5=PDF\PDF_PDM
PDF-6=PDF\PDF_RQM
PDF-7=PDF\PDF_XSM
PDF-8=PDF\PDF_RPY
VIDEO-type=string
VIDEO-count=11
VIDEO-0=VIDEO\Video_int
VIDEO-1=VIDEO\Video_Gen
VIDEO-2=VIDEO\Video_BPM
VIDEO-3=VIDEO\Video_CDM
VIDEO-4=VIDEO\Video_ILM
VIDEO-5=VIDEO\Video_OOM
VIDEO-6=VIDEO\Video_PDM
VIDEO-7=VIDEO\Video_RQM
VIDEO-8=VIDEO\Video_xsm
VIDEO-9=VIDEO\Video_RPY
VIDEO-10=VIDEO\Video_htm
Component-type=string
Component-count=10
Component-0=CR
@ -151,15 +143,15 @@ Component-2=CDM
Component-3=ILM
Component-4=OOM
Component-5=PDM
Component-6=XSM
Component-7=RPY
Component-8=PDF
Component-9=VIDEO
Component-6=RQM
Component-7=XSM
Component-8=RPY
Component-9=PDF
Result=1
[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-Graphic Select Folder-0]
[{{ powerdesigner_key }}-Graphic Select Folder-0]
szFolder=Sybase\PowerDesigner 12
Result=1
[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SdStartCopy-0]
[{{ powerdesigner_key }}-SdStartCopy-0]
Keep_Settings=0
Result=1
[Application]
@ -167,7 +159,7 @@ Name=Sybase PowerDesigner 12.5
Version=12.5.2169
Company=Sybase
Lang=0009
[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SdFinish-0]
[{{ powerdesigner_key }}-SdFinish-0]
Result=1
bOpt1=0
bOpt2=0

View file

@ -1,7 +1,7 @@
- name: Set Processing version
set_fact:
target_version: 4.4.6
target_build: 1306
target_version: 4.4.4
target_build: 1304
- name: Check Processing install status
win_stat:
@ -22,21 +22,20 @@
state: directory
- name: Download Processing
win_get_url:
dest: 'C:\Program Files\processing.zip'
url: https://github.com/processing/processing4/releases/download/processing-{{ target_build }}-{{ target_version }}/processing-{{ target_version }}-windows-x64-portable.zip
dest: 'C:\Program Files\Processing\processing.zip'
url: https://github.com/processing/processing4/releases/download/processing-{{ target_build }}-{{ target_version }}/processing-{{ target_version }}-windows-x64.zip
- name: Unzip Processing
win_unzip:
src: 'C:\Program Files\processing.zip'
dest: 'C:\Program Files\'
creates: 'C:\Program Files\Processing\Processing.exe'
#- name: Install Processing
# win_copy:
# dest: C:\Program Files\Processing\
# src: 'C:\Program Files\Processing\processing-{{ target_version }}\'
# remote_src: yes
dest: 'C:\Program Files\Processing'
src: 'C:\Program Files\Processing\processing.zip'
- name: Install Processing
win_copy:
dest: C:\Program Files\Processing\
src: 'C:\Program Files\Processing\processing-{{ target_version }}\'
remote_src: yes
- name: Disable telemetry
win_lineinfile:
path: C:\Program Files\Processing\app\resources\lib\defaults.txt
path: C:\Program Files\Processing\lib\defaults.txt
regexp: 'update.check'
line: 'update.check = false'
- name: Create Processing shortcut
@ -45,8 +44,8 @@
dest: "C:\\Users\\Public\\Desktop\\Processing.lnk"
- name: Remove temporary files
win_file:
# path: C:\Program Files\Processing\{{ item }}
path: C:\Program Files\processing.zip
path: C:\Program Files\Processing\{{ item }}
state: absent
loop:
- processing.zip
- processing-{{ target_version }}

View file

@ -8,4 +8,4 @@
state: upgrade
version: "{{ target_version }}"
# TODO set default project directory to {{large_prog_dir}}\something
# TODO set default project directory to H:\something

View file

@ -5,8 +5,6 @@
- name: Install ipython
apt:
name:
- python3-ipython
- ipython3
name: python3-ipython
state: latest

View file

@ -15,7 +15,7 @@
- name: Clone QCADesigner-E repo
#
ansible.builtin.git:
repo: https://github.com/polz113/QCADesigner-E
repo: https://github.com/FSillT/QCADesigner-E
force: yes
dest: /opt/QCADesigner-E
- name: Build QCADesigner-E

View file

@ -1,14 +1,13 @@
#- name: Add R repository
# block:
# - name: R repo - apt key
# ansible.builtin.get_url:
# url: https://cloud.r-project.org/bin/linux/ubuntu/marutter_pubkey.asc
# dest: /etc/apt/trusted.gpg.d/cran_ubuntu_key.asc
# - name: R repo - url
# ansible.builtin.apt_repository:
# repo: "deb https://cloud.r-project.org/bin/linux/ubuntu {{ansible_distribution_release}}-cran40/"
# state: present
# ignore_errors: true
- name: Add R repository
block:
- name: R repo - apt key
ansible.builtin.get_url:
url: https://cloud.r-project.org/bin/linux/ubuntu/marutter_pubkey.asc
dest: /etc/apt/trusted.gpg.d/cran_ubuntu_key.asc
- name: R repo - url
ansible.builtin.apt_repository:
repo: "deb https://cloud.r-project.org/bin/linux/ubuntu {{ansible_distribution_release}}-cran40/"
state: present
- name: Install R
ansible.builtin.apt:
name: r-base

View file

@ -1,4 +0,0 @@
- import_tasks: main_win.yml
when: ansible_os_family == 'Windows'
- import_tasks: main_lin.yml
when: ansible_os_family == 'Debian'

View file

@ -1,6 +0,0 @@
- name: Install scikit
apt:
name:
- python3-sklearn
- python3-sklearn-pandas
state: latest

View file

@ -1,2 +0,0 @@
- name: Install scikit
win_command: pip install scikit-learn

View file

@ -1,4 +0,0 @@
- import_tasks: main_win.yml
when: ansible_os_family == 'Windows'
- import_tasks: main_lin.yml
when: ansible_os_family == 'Debian'

View file

@ -1,4 +0,0 @@
- name: Install seaborn
apt:
name: python3-seaborn
state: latest

View file

@ -1,2 +0,0 @@
- name: Install seaborn
win_command: pip install seaborn

View file

@ -5,7 +5,7 @@
- name: Set SiFive Studio install location
set_fact:
download_filedest: "{{ large_prog_dir }}\\FreedomStudio-4.18.0.2021-04-1-x86_64-w64-mingw32.zip"
download_filedest: C:\FreedomStudio-4.18.0.2021-04-1-x86_64-w64-mingw32.zip
- name: Download SiFive
win_command: wget "https://unilj-my.sharepoint.com/:u:/g/personal/bulic_fri1_uni-lj_si/EdiSnJpoClJLtc3AtcAtEQ4BI76_PeDvL-ZmhxG4OEyvig?e=xBRYcb&download=1" -O "{{ download_filedest }}"
args:
@ -14,12 +14,12 @@
- name: Unzip SiFive Studio
win_unzip:
src: "{{ download_filedest }}"
dest: "{{ large_prog_dir }}\\SiFive\\"
creates: "{{ large_prog_dir }}\\SiFive\\plugins"
dest: C:\SiFive\
creates: C:\SiFive\plugins
delete_archive: yes
- name: Create desktop shortcut
win_shortcut:
description: "SiFive Freedom Studio"
src: "{{ large_prog_dir }}\\SiFive\\FreedomStudio.exe"
src: C:\SiFive\FreedomStudio.exe
dest: '%public%\Desktop\SiFive.lnk'

View file

@ -1,34 +1,31 @@
# Deprecated - replace by mems-studio
- name: Do not install AlgoBuilder
debug:
msg: "Do not install AlgoBuilder on Windows - deprecated"
# TODO check install status
# TODO: Exe file is missing - Problem on ST site
# - name: Check AlgoBuilder install status
# win_stat:
# path: C:\Program Files (x86)\Thonny\thonny.exe
# register: file
- name: Check AlgoBuilder install status
win_stat:
path: C:\Program Files (x86)\Thonny\thonny.exe
register: file
# - when: not file.stat.exists
# block:
# - name: Download AlgoBuilder
# win_command: wget "https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EdBQJN3I6fVFj7qgs6SjRp4BZ0QbWIV26NUlLv_4d9JsDQ?e=hA4Cbl&download=1" -O C:\AlgoBuilderSuite.exe
# args:
# creates: C:\AlgoBuilderSuite.exe
# #win_get_url:
# # follow_redirects: all
# # http_agent: Wget/1.21.3
# # url: https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EdBQJN3I6fVFj7qgs6SjRp4BZ0QbWIV26NUlLv_4d9JsDQ?e=hA4Cbl?download=1
# # dest: C:\AlgoBuilderSuite.exe
# #register: download
- when: not file.stat.exists
block:
- name: Download AlgoBuilder
win_command: wget "https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EdBQJN3I6fVFj7qgs6SjRp4BZ0QbWIV26NUlLv_4d9JsDQ?e=hA4Cbl&download=1" -O C:\AlgoBuilderSuite.exe
args:
creates: C:\AlgoBuilderSuite.exe
#win_get_url:
# follow_redirects: all
# http_agent: Wget/1.21.3
# url: https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EdBQJN3I6fVFj7qgs6SjRp4BZ0QbWIV26NUlLv_4d9JsDQ?e=hA4Cbl?download=1
# dest: C:\AlgoBuilderSuite.exe
#register: download
# - name: Install AlgoBuilder
# win_package:
# path: C:\AlgoBuilderSuite.exe
# # path: "{{ download.dest }}"
# arguments: /Verysilent /AllUsers
- name: Install AlgoBuilder
win_package:
path: C:\AlgoBuilderSuite.exe
# path: "{{ download.dest }}"
arguments: /Verysilent /AllUsers
# - name: Remove temporary files
# win_file:
# path: C:\AlgoBuilderSuite.exe
# # path: "{{ download.dest }}"
# state: absent
- name: Remove temporary files
win_file:
path: C:\AlgoBuilderSuite.exe
# path: "{{ download.dest }}"
state: absent

View file

@ -8,13 +8,13 @@
# register: download
- name: Set filename
set_fact:
dest_fname: /tmp/st-stm32cubeide_1.19.0_25607_20250703_0907_amd64.sh
dest_fname: /tmp/st-stm32cubeide_1.16.0_21983_20240628_1741_amd64.sh
- name: Download stm32
command:
cmd: wget 'https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/ERLZDFSgbO1Hm6TT9CLhyUIBZS-4anic7RWtvQliqN-thA?e=KZq4VJ' -O {{ dest_fname }}
cmd: wget 'https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EUrIkoWbod5OilNHLnReBvYBMK7mlwI-R1Qeqhb-ux7hjg?e=HGloHF&download=1' -O {{ dest_fname }}
creates: "{{ dest_fname }} "
# url: https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/ERLZDFSgbO1Hm6TT9CLhyUIBZS-4anic7RWtvQliqN-thA?e=KZq4VJ
# url: https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EUrIkoWbod5OilNHLnReBvYBMK7mlwI-R1Qeqhb-ux7hjg?e=HGloHF?download=1
- name: Change script permissions
file:

View file

@ -7,18 +7,18 @@
block:
- name: Set download filenames
set_fact:
# cubemx_download_file: C:\CubeMX.exe not needed separately
cubemx_download_file: C:\CubeMX.exe
cubeprogrammer_download_file: C:\CubeProgrammer.exe
cubemonitor_download_file: C:\CubeMonitor.exe
cufinder_download_file: C:\CUFinder.exe
cubeide_download_file: C:\st-stm32cubeide_1.19.0_25607_20250703_0907_x86_64.exe
# - name: Download CubeMX
# # # win_get_url:
# win_command: wget "https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EZhqHxJoAfdEjdlMu0uGWGcBOqrT0vTVv2_nhynWZ3fOwQ?e=ilAlzP&download=1" -O "{{ cubemx_download_file }}"
# # #dest: C:\CubeMX.exe
# # #register: cubemx_download
# args:
# creates: "{{ cubemx_download_file }}"
cubeide_download_file: C:\st-stm32cubeide_1.16.0_21983_20240628_1741_x86_64.exe
- name: Download CubeMX
# # win_get_url:
win_command: wget "https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EZhqHxJoAfdEjdlMu0uGWGcBOqrT0vTVv2_nhynWZ3fOwQ?e=ilAlzP&download=1" -O "{{ cubemx_download_file }}"
# #dest: C:\CubeMX.exe
# #register: cubemx_download
args:
creates: "{{ cubemx_download_file }}"
#- name: Install CubeMX
# win_package:
@ -26,7 +26,7 @@
# arguments: /S
- name: Download CubeProgrammer
win_command: wget "https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EXHsKDjM6hVAuEGwEWcMyBEBgx7D9i_M3QAkhpe9RR9zPQ?e=VcUvvu" -O "{{ cubeprogrammer_download_file }}"
win_command: wget "https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EXHsKDjM6hVAuEGwEWcMyBEB6bHd3HuOP38D7Wjt41vjTw?e=7jatnu&download=1" -O "{{ cubeprogrammer_download_file }}"
#win_get_url:
# dest: C:\CubeProgrammer.exe
#register: cubeprogrammer_download
@ -39,10 +39,10 @@
arguments: /S
- name: Download CubeMonitor
# TODO 2025: only zip distributions exists in zip file
# TODO 2025: URL: https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EcU8MQwONYZKuk22puks-IgBd1qLM94DH3AA_CEclIgTZg?e=jRcA3v
# TODO 2025: Have extracted setup exe - not sure if this is enough!
win_command: wget "https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EbVvZi3q7QRNqwocCSgMvGgB-eYM2mtb-IidD1UTaMgtbw?e=QDxd29" -O "{{ cubemonitor_download_file }}"
# TODO 2024: only zip distributions exists in zip file
# TODO 2024: URL: https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/ERUUr7knYFNNuv5rViOb-PgB596EvC3ev4P_Aa_MjRL57Q?e=tZssk4
# TODO 2024: Have extracted setup exe - not sure if this is enough!
win_command: wget "https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EQnm_b359Q5IpmfCUuDG-PABH10q94ixaLx4_CMrYKoNtQ?e=rKp3cV&download=1" -O "{{ cubemonitor_download_file }}"
#win_get_url:
# dest: C:\CubeMonitor.exe
#register: cubemonitor_download
@ -54,23 +54,23 @@
path: "{{ cubemonitor_download_file }}"
arguments: /S
# 2025: CUFinder not needed anymore
# - name: Download STM CUFinder
# win_command: wget "https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EfesbSW7EftDoSjtt-nr_eYBH_EBzXnysW0Lk1wnNzx2Mw?e=HSSmDz&download=1" -O "{{ cufinder_download_file }}"
# # #win_get_url:
# # # dest: C:\CUFinder.exe
# # #register: cubecufinder_download
# args:
# creates: "{{ cufinder_download_file }}"
- name: Download STM CUFinder
win_command: wget "https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EfesbSW7EftDoSjtt-nr_eYBH_EBzXnysW0Lk1wnNzx2Mw?e=HSSmDz&download=1" -O "{{ cufinder_download_file }}"
# #win_get_url:
# # dest: C:\CUFinder.exe
# #register: cubecufinder_download
args:
creates: "{{ cufinder_download_file }}"
- name: Install STM CUFinder
win_package:
path: "{{ cubecufinder_download_file }}"
arguments: /S
# - name: Install STM CUFinder
# win_package:
# path: "{{ cubecufinder_download_file }}"
# arguments: /S
- name: Download CubeIDE
# win_get_url:
win_command: wget "https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EZLOLK_5IxpPvnI_rYH6hSMBuQyH3EEq9bqZr9X_n6cgzA?e=P218RC" -O "{{ cubeide_download_file }}"
#dest: C:\st-stm32cubeide_1.19.0_25607_20250703_0907_x86_64.exe
win_command: wget "https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/ERpqeASbQ2hDrL9ANNWJf5QBJNhHieXoqaNtduppk42qwg?e=zI8rjI&download=1" -O "{{ cubeide_download_file }}"
#dest: C:\st-stm32cubeide_1.16.0_21983_20240628_1741_x86_64.exe
#register: cubeide_download
args:
creates: "{{ cubeide_download_file }}"
@ -83,13 +83,12 @@
- name: Set CubeIDE default workspace
win_lineinfile:
path: C:\ST\STM32CubeIDE_1.19.0\STM32CubeIDE\stm32cubeide.ini
path: C:\ST\STM32CubeIDE_1.10.1\STM32CubeIDE\stm32cubeide.ini
regexp: "osgi.instance.area.default"
line: "-Dosgi.instance.area.default=D:/RAVINOR/CubeIDE_Workspace"
# 2025: QEMU not needed anymore
# # Replace -installIU... with -list to get available packages.
# - name: Install QEMU
# win_command: stm32cubeidec.exe -application org.eclipse.equinox.p2.director -nosplash -repository https://download.eclipse.org/embed-cdt/updates/v6/ -installIU org.eclipse.embedcdt.debug.gdbjtag.qemu.feature.group
# args:
# chdir: C:\ST\STM32CubeIDE_1.19.0\STM32CubeIDE
# Replace -installIU... with -list to get available packages.
- name: Install QEMU
win_command: stm32cubeidec.exe -application org.eclipse.equinox.p2.director -nosplash -repository https://download.eclipse.org/embed-cdt/updates/v6/ -installIU org.eclipse.embedcdt.debug.gdbjtag.qemu.feature.group
args:
chdir: C:\ST\STM32CubeIDE_1.10.1\STM32CubeIDE

View file

@ -5,18 +5,18 @@
# arguments: /S /AllUsers
# creates_path: "%ProgramFiles%\\Arduino IDE\\Arduino IDE.exe"
# 2025: update: Full directory structure ready zip for Windows only on this URL:
# 2024: update: Full directory structure ready zip for Windows only on this URL:
# https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EYTFhlsJOFtFk9xsaViP0eYBtILVS24ZF_dlkgodu_L9Nw?e=geavvJ
- name: Create STM32Duino directory
win_file:
path: "{{large_prog_dir}}\\RAVINOR\\STM32Duino"
path: "D:\\RAVINOR\\STM32Duino"
state: directory
- name: Install preinstalled STM32Duino & Arduino environment
- name: Install Logisim
win_get_url:
url: "https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EYTFhlsJOFtFk9xsaViP0eYBtILVS24ZF_dlkgodu_L9Nw?e=geavvJ"
dest: "{{large_prog_dir}}\\RAVINOR\\STM32Duino"
dest: "D:\\RAVINOR\\STM32Duino"
# TODO Don't know if unzipping is required?

View file

@ -1,5 +0,0 @@
- import_tasks: main_win.yml
when: ansible_os_family == 'Windows'
- import_tasks: main_lin.yml
when: ansible_os_family == 'Debian'

View file

@ -1,3 +0,0 @@
- name: Do not install mems-studio
debug:
msg: "Do not install mems-studio on Linux"

View file

@ -1,31 +0,0 @@
# TODO
- name: Check MEMS-Studio install status
win_stat:
path: C:\Program Files (x86)\STMicroelectronics\Unicleo-GUI\Unicleo-GUI.exe
register: file
- when: not file.stat.exists
block:
- name: Download MEMS-Studio
win_command: wget "https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EXgZSDD5LgtMrikaKszPliwB1vXrwUxea3eYYObT3zXBaQ?e=eNJyLA" -O C:\mems-studio-2.1.2.exe
args:
creates: C:\mems-studio-2.1.2.exe
#win_get_url:
# follow_redirects: all
# http_agent: Wget/1.21.3
# url: https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EQG4vStF7ApBsN2TDm5AjGQBiU0iFbZZiz91UqGeHKX9FA?e=QOQky2?download=1
# dest: C:\Unicleo-GUI_Setup.exe
#register: download
- name: Install MEMS-Studio
win_package:
path: C:\mems-studio-2.1.2.exe
# path: "{{ download.dest }}"
arguments: /Verysilent /AllUsers
- name: Remove temporary files
win_file:
path: C:\mems-studio-2.1.2.exe
# path: "{{ download.dest }}"
state: absent

View file

@ -1,35 +1,31 @@
# Deprecated - replace by mems-studio
- name: Do not install UnicleoGUI
debug:
msg: "Do not install UnicleoGUI on Windows - deprecated"
# # TODO check install status
# - name: Check UnicleoGUI install status
# win_stat:
# path: C:\Program Files (x86)\STMicroelectronics\Unicleo-GUI\Unicleo-GUI.exe
# register: file
# - when: not file.stat.exists
# block:
# - name: Download UnicleoGUI
# win_command: wget "https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EQG4vStF7ApBsN2TDm5AjGQBiU0iFbZZiz91UqGeHKX9FA?e=QOQky2&download=1" -O C:\Unicleo-GUI_Setup.exe
# args:
# creates: C:\Unicleo-GUI_Setup.exe
# #win_get_url:
# # follow_redirects: all
# # http_agent: Wget/1.21.3
# # url: https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EQG4vStF7ApBsN2TDm5AjGQBiU0iFbZZiz91UqGeHKX9FA?e=QOQky2?download=1
# # dest: C:\Unicleo-GUI_Setup.exe
# #register: download
# TODO check install status
- name: Check UnicleoGUI install status
win_stat:
path: C:\Program Files (x86)\STMicroelectronics\Unicleo-GUI\Unicleo-GUI.exe
register: file
- when: not file.stat.exists
block:
- name: Download UnicleoGUI
win_command: wget "https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EQG4vStF7ApBsN2TDm5AjGQBiU0iFbZZiz91UqGeHKX9FA?e=QOQky2&download=1" -O C:\Unicleo-GUI_Setup.exe
args:
creates: C:\Unicleo-GUI_Setup.exe
#win_get_url:
# follow_redirects: all
# http_agent: Wget/1.21.3
# url: https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EQG4vStF7ApBsN2TDm5AjGQBiU0iFbZZiz91UqGeHKX9FA?e=QOQky2?download=1
# dest: C:\Unicleo-GUI_Setup.exe
#register: download
# - name: Install UnicleoGUI
# win_package:
# path: C:\Unicleo-GUI_Setup.exe
# # path: "{{ download.dest }}"
# arguments: /Verysilent /AllUsers
- name: Install UnicleoGUI
win_package:
path: C:\Unicleo-GUI_Setup.exe
# path: "{{ download.dest }}"
arguments: /Verysilent /AllUsers
# - name: Remove temporary files
# win_file:
# path: C:\Unicleo-GUI_Setup.exe
# # path: "{{ download.dest }}"
# state: absent
- name: Remove temporary files
win_file:
path: C:\Unicleo-GUI_Setup.exe
# path: "{{ download.dest }}"
state: absent

View file

@ -1,4 +0,0 @@
- import_tasks: main_win.yml
when: ansible_os_family == 'Windows'
- import_tasks: main_lin.yml
when: ansible_os_family == 'Debian'

View file

@ -1,4 +0,0 @@
- name: Install streamlit
pip:
executable: pipx
name: streamlit

View file

@ -1,2 +0,0 @@
- name: Install streamlit
win_command: pip install streamlit

View file

@ -1,4 +0,0 @@
- import_tasks: main_win.yml
when: ansible_os_family == 'Windows'
- import_tasks: main_lin.yml
when: ansible_os_family == 'Debian'

View file

@ -1,17 +0,0 @@
# https://surfer-project.org/
- name: create Surfer direcotry
file:
path: /opt/surfer
state: directory
- name: Download and unpack Surfer
unarchive:
src: https://gitlab.com/api/v4/projects/42073614/jobs/artifacts/main/raw/surfer_linux.zip?job=linux_build
dest: /opt/surfer
remote_src: yes
- name: Add symlink to /usr/local/bin
file:
src: /opt/surfer/surfer
path: /usr/local/bin/surfer
state: link

View file

@ -1,11 +0,0 @@
- name: Download Surfer
win_get_url:
dest: "{{ large_prog_dir }}"
url: https://gitlab.com/api/v4/projects/42073614/jobs/artifacts/main/raw/surfer_win.zip?job=windows_build
register: downloaded_surfer
- name: Unpack Surfer
win_unzip:
src: "{{ downloaded_surfer['dest']}}"
dest: "{{ large_prog_dir }}"
delete_archive: yes

View file

@ -1,6 +1,6 @@
- name: Set Thonny version
set_fact:
target_version: 4.1.7
target_version: 4.0.1
- name: Check Thonny install status
win_stat:

View file

@ -1,4 +0,0 @@
- import_tasks: main_win.yml
when: ansible_os_family == 'Windows'
- import_tasks: main_lin.yml
when: ansible_os_family == 'Debian'

View file

@ -1,12 +0,0 @@
- name: Install torch
apt:
name:
- python3-torch
- python3-skorch
- python3-torch-cluster
- python3-torch-geometric
- python3-ignite
- python3-sparse
- python3-torchaudio
- python3-torchvision
state: latest

View file

@ -1,2 +0,0 @@
- name: Install torch
win_command: pip install torch torchvision

Some files were not shown because too many files have changed in this diff Show more