diff --git a/README.md b/README.md index 70343400..1347d3c7 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,41 @@ +# Using the ansible scripts + Ansible playbooks for deploying classroom computers. Run with something like: - ansible-playbook --user --ask-pass \ - --become-user= - --inventory hosts winsetup.yml + ansible-playbook --user -k -K -i inventory.yml setup.py + +or, for Apple computers: + + ansible-playbook --user -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 --ask-pass \ - --inventory hosts linsetup.yml diff --git a/join_ad.yml b/join_ad.yml new file mode 100644 index 00000000..68ba724e --- /dev/null +++ b/join_ad.yml @@ -0,0 +1,19 @@ +- name: Gather facts / setup connection + hosts: '*' + gather_facts: false + become: false + vars_files: + - vars/credentials.yml + roles: + - facts + +- name: Join AD + hosts: '*' + become: true + debugger: on_failed + vars_files: + - vars/credentials.yml + vars: + domain_name: "FRI1.UNI-LJ.SI" + roles: + - ad_joined diff --git a/linsetup.yml b/linsetup.yml index ba5ac238..8fcfe2b3 100644 --- a/linsetup.yml +++ b/linsetup.yml @@ -1,8 +1,8 @@ -- hosts: ucilnice-prototip +- hosts: classroom 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,7 +12,8 @@ - vars/credentials.yml - vars/software_keys.yml roles: - # - orange + # - nodejs + # - qcadesigner-e - all_classes # - fri_base # - powerdesigner diff --git a/roles/AAHRP-63263/meta/main.yml b/roles/AAHRP-63263/meta/main.yml index 814de576..c2717a3a 100644 --- a/roles/AAHRP-63263/meta/main.yml +++ b/roles/AAHRP-63263/meta/main.yml @@ -1,7 +1,6 @@ # Analiza algoritmov in hevristično reševanje problemov -# matej.piculin@fri.uni-lj.si +# octavian.machidon@fri.uni-lj.si # Windows, Java JDK, Eclipse, R, RStudio dependencies: - - role: rstudio - - role: eclipse - - role: jdk + - role: python3 + - role: pycharm diff --git a/roles/APS1-63711/main.yaml b/roles/APS1-63711/main.yaml new file mode 100644 index 00000000..ac141478 --- /dev/null +++ b/roles/APS1-63711/main.yaml @@ -0,0 +1,7 @@ +# Algoritmi in podatkovne strukture 1 +# jurij.mihelic@fri.uni-lj.si +# JDK, vscode, gedit +dependencies: + - role: jdk + - role: vscode + - role: gedit diff --git a/roles/DN-63260/meta/main.yml b/roles/DN-63260/meta/main.yml index aaa0ce9e..c87e3ff6 100644 --- a/roles/DN-63260/meta/main.yml +++ b/roles/DN-63260/meta/main.yml @@ -1,5 +1,8 @@ # Digitalno načrtovanje -# Nejc.Ilc@fri.uni-lj.si +# ratko.pilipovic@fri.uni-lj.si # Windows, Vivado 2022.1 dependencies: - role: vivado + - role: iverilog + - role: cocotb + - role: surfer-project diff --git a/roles/DPS-63744/meta/main.yml b/roles/DPS-63744/meta/main.yml index 1ebf218d..bd30f3d3 100644 --- a/roles/DPS-63744/meta/main.yml +++ b/roles/DPS-63744/meta/main.yml @@ -1,8 +1,11 @@ # 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 diff --git a/roles/IS-63266/meta/main.yml b/roles/IS-63266/meta/main.yml new file mode 100644 index 00000000..3c867f34 --- /dev/null +++ b/roles/IS-63266/meta/main.yml @@ -0,0 +1,7 @@ +# Inteligentni sistemi +# tadej.skvorc@fri.uni-lj.si +# +dependencies: + - role: python3 + - role: jupyter + - role: vscode diff --git a/roles/KRV-63528/meta/main.yml b/roles/KRV-63528/meta/main.yml index 9d48639d..200842b5 100644 --- a/roles/KRV-63528/meta/main.yml +++ b/roles/KRV-63528/meta/main.yml @@ -5,5 +5,8 @@ # SageMath se se prevede za Ubutnu 24.04: https://github.com/sagemath/sage/issues/38051#issuecomment-2123452861 # - include_tasks: sagemath.yml dependencies: - - role: jupyter.yml - - role: openssl.yml + - role: jupyter + - role: openssl + - role: cryptodome + - role: pwntools + - role: python3 diff --git a/roles/NDN-63729/meta/main.yml b/roles/NDN-63729/meta/main.yml index 12b4f3e0..21edf8f6 100644 --- a/roles/NDN-63729/meta/main.yml +++ b/roles/NDN-63729/meta/main.yml @@ -1,10 +1,10 @@ # Načrtovanje digitalnih naprav -# 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 +# Miran.Koprivec@fri.uni-lj.si, Miha.Moskon@fri.uni-lj.si, ratko.pilipovic@fri.uni-lj.si # Windows, Vivado 2022.1 dependencies: - role: putty - role: vivado - role: cp2102_driver + - role: cocotb + - role: iverilog + - role: surfer-project diff --git a/roles/OR-63717/meta/main.yml b/roles/OR-63717/meta/main.yml index 91b97d49..465e6d21 100644 --- a/roles/OR-63717/meta/main.yml +++ b/roles/OR-63717/meta/main.yml @@ -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 diff --git a/roles/OS-63217/main.yaml b/roles/OS-63217/main.yaml new file mode 100644 index 00000000..de42bde1 --- /dev/null +++ b/roles/OS-63217/main.yaml @@ -0,0 +1,9 @@ +# Operacijski sistemi +# jurij.mihelic@fri.uni-lj.si +# C, JDK, vscode, gedit +dependencies: + - role: c_development + - role: jdk + - role: vscode + - role: gedit + - role: virtualbox diff --git a/roles/OUI-63214/meta/main.yml b/roles/OUI-63214/meta/main.yml index 09170052..3f52ec64 100644 --- a/roles/OUI-63214/meta/main.yml +++ b/roles/OUI-63214/meta/main.yml @@ -1,7 +1,12 @@ # Osnove umetne inteligence -# Jure.Zabkar@fri.uni-lj.si, Ales.Papic@fri.uni-lj.si, matej.piculin@fri.uni-lj.si, Marko.Zeman@fri.uni-lj.si, bojan.zunkovic@fri.uni-lj.si -# Orange, Weka 3, BayesFusion +# matej.piculin@fri.uni-lj.si, petar.vracar@fri.uin-lj.si +# Orange, Weka 3, BayesFusion, Python3 dependencies: - role: orange - role: weka - role: bayesfusion + - role: python3 + - role: pycharm + - role: pandas + - role: scipy + - role: matplotlib diff --git a/roles/P1-63277/meta/main.yml b/roles/P1-63277/meta/main.yml index 6c586093..7f729a83 100644 --- a/roles/P1-63277/meta/main.yml +++ b/roles/P1-63277/meta/main.yml @@ -6,3 +6,4 @@ dependencies: - role: gedit - role: mono - role: vscode + - role: notepad++ diff --git a/roles/PJC-63769/meta/main.yml b/roles/PJC-63769/meta/main.yml index 0c5fab11..caa22988 100644 --- a/roles/PJC-63769/meta/main.yml +++ b/roles/PJC-63769/meta/main.yml @@ -2,4 +2,4 @@ # Tomaz.Dobravec@fri.uni-lj.si # Windows, Pelles C dependencies: - - role: pelles-c + - role: clion diff --git a/roles/PR-63765/meta/main.yml b/roles/PR-63765/meta/main.yml new file mode 100644 index 00000000..6c638e40 --- /dev/null +++ b/roles/PR-63765/meta/main.yml @@ -0,0 +1,18 @@ +# 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 diff --git a/roles/RA-63703/meta/main.yml b/roles/RA-63703/meta/main.yml index 74089231..655325db 100644 --- a/roles/RA-63703/meta/main.yml +++ b/roles/RA-63703/meta/main.yml @@ -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,6 +10,7 @@ dependencies: - role: gcc-arm - role: git - role: visual2 +# - role: winidea-frisms #TODO Writable d:\RAVINOR directory diff --git a/roles/README.md b/roles/README.md index 3013d5d8..93c7c44c 100644 --- a/roles/README.md +++ b/roles/README.md @@ -1,25 +1,17 @@ # Recepti za nameščanje programske opreme -Recepti za nameščanje programske opreme v učilnicah FRI se nahajajo v: +V tem imeniku naj bi za vsak predmet obstajal podimenik oblike ABC-63999, pri čemer je ABC okrajšava, 63999 pa šifra predmeta. +Na primer, za predmet Komunikacijski protokoli in omrežna varnost obstaja imenik KPOV-63716. - - linroom/tasks za GNU/Linux - - windows/tasks za Microsoft Windows +Katere programe potrebujete za svoj predmet, navedete v datoteki meta/main.yml, na primer KPOV-63716/meta/main.yml. + +Večino programov namestimo tako pod GNU/Linux kot windows. Recept za namestitev programa "mojprogram" je tako v: + - mojprogram/tasks/main\_lin.yml za GNU/Linux, ki ga trenutno uporabljamo, + - mojprogram/tasks/main\_win.yml za Windows. + +Na primer, za Microsofteov VSCode obstaja imenik vscode in datoteki vscode/tasks/main\_lin.yml ter + vscode/tasks/main\_win.yml Vsako leto predvidoma popravimo recepte - sezname potrebnih programov in recepte za nameščanje le-teh. -## Zahteve za predmet - -V imeniku tasks za vsak predmet obstaja YAML datoteka s seznamom zahtevanih programov. -Na primer, za predmet Komunikacijski protokoli in omrežna varnost obstaja datoteka KPOV-63716.yml. -V datoteki je po ena vrstica z besedo "include" za vsak program, ki ga pri predmetu potrebujemo. - -Trenutno za vsak predmet obstajata po dve datoteki - ena pod linroom/tasks, druga pod winroom/tasks. - -## Nameščanje posameznega programa - -Datoteke za nameščanje programov se prav tako nahajajo v imeniku tasks. -Na primer, za nameščanje Microsoftovega VSCode, obstaja datoteka vscode.yml. - -Za nameščanje pod GNU/Linux in Windows sta datoteki seveda različni. - Ker nekateri programi niso javno dostopni, se pri nekaterih receptih uporabljajo datoteke z datotečnega strežnika UcilniceSMB. Kako to popraviti, je zaenkrat odprto vprašanje. diff --git a/roles/SU-63519/meta/main.yml b/roles/SU-63519/meta/main.yml index c1f84bf3..fa1204ac 100644 --- a/roles/SU-63519/meta/main.yml +++ b/roles/SU-63519/meta/main.yml @@ -1,5 +1,5 @@ # Strojno učenje -# matej.piculin@fri.uni-lj.si, Petar.Vracar@fri.uni-lj.si +# jana.faganelipucer@fri.uni-lj.si. # Windows, R, RStudio dependencies: - role: python3 @@ -7,5 +7,5 @@ dependencies: - role: scipy - role: xgboost - role: statsmodels - - role: tensorflow + - role: pytorch - role: statsmodels diff --git a/roles/VN-63728/meta/main.yml b/roles/VN-63728/meta/main.yml index 04abccab..411c38db 100644 --- a/roles/VN-63728/meta/main.yml +++ b/roles/VN-63728/meta/main.yml @@ -2,13 +2,14 @@ # 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: stm32algobuilder #(ni še exe. Datoteke - ne dobim iz ST portala) - - role: stm32unicleogui - + - role: stm32mems-studio # replaces algobuilder and unicleogui +# - role: stm32algobuilder #(ni še exe. Datoteke - ne dobim iz ST portala) +# - role: stm32unicleogui + #TODO Writable d:\RAVINOR directory diff --git a/roles/VP-63774/meta/main.yml b/roles/VP-63774/meta/main.yml index 7f2ec2b1..a9a08920 100644 --- a/roles/VP-63774/meta/main.yml +++ b/roles/VP-63774/meta/main.yml @@ -2,3 +2,8 @@ # matevz.pesek@fri.uni-lj.si dependencies: - c_development + - docker + - pwntools + - netcat + - ropr + - pwndbg diff --git a/roles/VP-63775/meta/main.yml b/roles/VP-63775/meta/main.yml index 4bf1623a..ea90757a 100644 --- a/roles/VP-63775/meta/main.yml +++ b/roles/VP-63775/meta/main.yml @@ -3,6 +3,8 @@ # Python (in standardno pripadajoča šara jupyter lab) in IntelliJ IDEA PyCharm CE # PyCharm # Java (kar je bilo lani bo ok) in IntelliJ IDEA CE +# cryptography +# flask # maven # git dependencies: @@ -12,3 +14,5 @@ dependencies: - role: jdk - role: jupyter - role: pycharm + - role: cryptography + - role: flask diff --git a/roles/ad_joined/files/kstart.service b/roles/ad_joined/files/kstart.service new file mode 100644 index 00000000..42469ac3 --- /dev/null +++ b/roles/ad_joined/files/kstart.service @@ -0,0 +1,3 @@ +[Service] +Type=forking +ExecStart=/usr/bin/k5start -f /etc/krb5.keytab -U -k /tmp/krb5cc_0 -o root -b -K 60 -v -L diff --git a/roles/ad_joined/files/pam_mount.conf.xml b/roles/ad_joined/files/pam_mount.conf.xml new file mode 100644 index 00000000..1bddbd5d --- /dev/null +++ b/roles/ad_joined/files/pam_mount.conf.xml @@ -0,0 +1,38 @@ + + + + + + + + + + local_admin + root + lightdm + users + + + + + diff --git a/roles/ad_joined/tasks/main_lin.yml b/roles/ad_joined/tasks/main_lin.yml index d1cadbb7..cfb19ef3 100644 --- a/roles/ad_joined/tasks/main_lin.yml +++ b/roles/ad_joined/tasks/main_lin.yml @@ -1,25 +1,40 @@ -- name: Enable create homedir on login - command: pam-auth-update --enable mkhomedir - become: true +- name: Install required packages + apt: + name: + - realmd + - sssd + - libpam-mount + - kstart + - 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: 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}} FRI1.UNI-LJ.SI + command: realm join --user={{ad_join_user}} --computer-ou={{ou_path}} {{domain_name}} responses: (?i)Password: "{{ad_join_password}}" ignore_errors: yes @@ -32,3 +47,55 @@ owner: root mode: 0600 +- name: Fix apparmor HOMEDIRS + template: + src: apparmor_cifs_homes + dest: "/etc/apparmor.d/tunables/home.d/cifs_homes" + +#- 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: Use sssd for cifs idmap + file: + state: link + src: /usr/lib/x86_64-linux-gnu/cifs-utils/cifs_idmap_sss.so + path: /etc/alternatives/idmap-plugin + +- name: Create service to get and renew machine kerberos tickets + copy: + src: kstart.service + dest: /etc/systemd/system/kstart.service + +- name: Start kstart service to enable cifs mount + copy: + src: kstart.service + dest: /etc/systemd/system/kstart.service + +- name: Create profiles directory + file: + path: /home/profiles + state: directory + +- name: Add mount - cifs_home + mount: + boot: true + fstype: cifs + src: "//ucilnicesmb.fri1.uni-lj.si/ucilnice_d" + path: /remote_home + state: mounted + opts: "cruid=0,username={{ inventory_hostname }}-linux@FRI1.UNI-LJ.SI,sec=krb5i,nobrl,sfu,cifsacl,setuids,fsc,multiuser,actimeo=65536,nostrictsync,cache=loose,resilienthandles,noatime,x-systemd.requires=kstart.service" + +- name: Restart sssd + service: + name: sssd + state: restarted diff --git a/roles/ad_joined/tasks/main_win.yml b/roles/ad_joined/tasks/main_win.yml index 79481e36..2ac93df7 100644 --- a/roles/ad_joined/tasks/main_win.yml +++ b/roles/ad_joined/tasks/main_win.yml @@ -1,18 +1,22 @@ - 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 @@ -24,25 +28,40 @@ - AccountDomainSid - SusClientId - SusClientIDValidation + - name: Start Windows Update Service win_service: name: wuauserv state: started + - name: "Join domain" win_domain_membership: - domain_admin_user: "{{adjoin_user}}" - domain_admin_password: "{{adjoin_password}}" + domain_admin_user: "{{ad_join_user}}" + domain_admin_password: "{{ad_join_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: Fix broken display settings - start CDPSvc + win_regedit: + path: "{{item}}" + name: "Start" + type: dword + data: 0x00000002 + with_items: + - HKLM:\SYSTEM\CurrentControlSet\Services\CDPSvc + - HKLM:\SYSTEM\CurrentControlSet\Services\CDPUserSvc + - name: Reboot win_command: "shutdown /r" when: domain_state.reboot_required diff --git a/roles/ad_joined/templates/apparmor_cifs_homes b/roles/ad_joined/templates/apparmor_cifs_homes new file mode 100644 index 00000000..eada9946 --- /dev/null +++ b/roles/ad_joined/templates/apparmor_cifs_homes @@ -0,0 +1 @@ +@{HOMEDIRS}+=/home/profiles/ diff --git a/roles/ad_joined/templates/sssd.conf b/roles/ad_joined/templates/sssd.conf index 117793c1..777cda5c 100644 --- a/roles/ad_joined/templates/sssd.conf +++ b/roles/ad_joined/templates/sssd.conf @@ -3,6 +3,7 @@ config_file_version = 2 domains = fri1.uni-lj.si enable_files_domain = False services = nss, pam +default_domain_suffix = student.uni-lj.si [nss] filtered_groups = root @@ -27,5 +28,12 @@ krb5_store_password_if_offline = True default_shell = /bin/bash ldap_id_mapping = True use_fully_qualified_names = True -fallback_homedir = /home/%u@%d +full_name_format = %1$s@%3$s +# fallback_homedir = /home/%u@%d +fallback_homedir = /home/profiles/%u.%F +subdomain_homedir = /home/profiles/%u.%F access_provider = ad +krb5_ccname_template = FILE:%d/krb5cc_%U +krb5_lifetime = 86400 +krb5_renewable_lifetime = 604800 +krb5_renew_interval = 7200 diff --git a/roles/all_classes/meta/main.yml b/roles/all_classes/meta/main.yml index e572f0e1..b50b0b3e 100644 --- a/roles/all_classes/meta/main.yml +++ b/roles/all_classes/meta/main.yml @@ -2,6 +2,7 @@ dependencies: - role: fri_base - role: AAHRP-63263 - role: APS1-63279 + - role: APS1-63711 - role: ARP1-63545C - role: BMO-63259 - role: DF-63530 @@ -11,6 +12,7 @@ dependencies: - role: EP-63249 - role: FP-63507 - role: GO-63715 + - role: IS-63266 - role: IS-63714 - role: IVZ-63521 - role: KCR-63550 @@ -24,17 +26,22 @@ dependencies: - role: NRG-63553 - role: OBSS-63514 - role: ODV-63204 + - role: OIS-63215 - role: OO-63271 + - role: OPB-63208 - role: OR-63717 - role: ORS-63218 + - role: OS-63217 - role: OS-63709 - role: OS-63741 - role: OUI-63214 + - role: P1-63277 + - role: P1-63702 - role: P2-63278 - role: P2-63706 - role: PA-63737 - - role: PB2-63713 - role: PB-63707 + - role: PB2-63713 - role: PJC-63769 - role: PPJ-63220 - role: PS-63261 diff --git a/roles/winroom/tasks/main.yml b/roles/altair/tasks/main.yml similarity index 100% rename from roles/winroom/tasks/main.yml rename to roles/altair/tasks/main.yml diff --git a/roles/altair/tasks/main_lin.yml b/roles/altair/tasks/main_lin.yml new file mode 100644 index 00000000..72354a15 --- /dev/null +++ b/roles/altair/tasks/main_lin.yml @@ -0,0 +1,4 @@ +- name: Install altair + apt: + name: python3-altair + state: latest diff --git a/roles/altair/tasks/main_win.yml b/roles/altair/tasks/main_win.yml new file mode 100644 index 00000000..74d82191 --- /dev/null +++ b/roles/altair/tasks/main_win.yml @@ -0,0 +1,2 @@ +- name: Install altair + win_command: pip install altair diff --git a/roles/android_studio/tasks/androidsdk_packages.yml b/roles/android_studio/tasks/androidsdk_packages.yml index 2705a0ff..bfd9d778 100644 --- a/roles/android_studio/tasks/androidsdk_packages.yml +++ b/roles/android_studio/tasks/androidsdk_packages.yml @@ -2,9 +2,8 @@ AndroidSDK_packages: - add-ons;addon-google_apis-google-24 - add-ons;addon-google_apis-google-24 - build-tools;34.0.0-rc3 - - build-tools;35.0.0 - - cmake;3.22.1 - #- cmake;latest + - build-tools;36.0.0 + - cmake;4.0.3 - cmdline-tools;latest - emulator - extras;android;m2repository @@ -22,15 +21,15 @@ AndroidSDK_packages: # - patcher;v4 - platform-tools - platforms;android-34 - - platforms;android-35 + - platforms;android-36 - platforms;android-32 - - platforms;android-UpsideDownCakePrivacySandbox + # - platforms;android-UpsideDownCakePrivacySandbox - skiaparser;3 - - sources;android-35 + - sources;android-36 - sources;android-34 - - system-images;android-35;google_apis;x86_64 + - system-images;android-36;google_apis;x86_64 - system-images;android-34;google_apis;x86_64 - system-images;android-32;google_apis;x86_64 - - system-images;android-35;google_apis_playstore;x86_64 + - system-images;android-36;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 diff --git a/roles/android_studio/tasks/main_win.yml b/roles/android_studio/tasks/main_win.yml index 11999138..60ab8507 100644 --- a/roles/android_studio/tasks/main_win.yml +++ b/roles/android_studio/tasks/main_win.yml @@ -1,63 +1,102 @@ - name: Set Android Studio version set_fact: - sdk_path: C:\android-sdk - studio_version: "2025.1.2.11" - tools_version: "latest" + studio_path: "{{ large_prog_dir }}\\android-studio" + sdk_path: "{{ large_prog_dir }}\\android-sdk" + 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 - name: Check Android Studio tools win_stat: - path: "{{ sdk_path }}\\cmdline-tools\\cmdline-tools\\bin\\sdkmanager.bat" + path: "{{ tools_path }}\\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: C:\ + 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 }}" - name: Extract Android Studio tools win_unzip: - src: "C:\\commandlinetools-win-{{ tools_version }}.zip" - dest: "{{ sdk_path }}\\cmdline-tools" + # src: "{{ large_prog_dir }}\\platform-tools-{{ tools_version }}-windows.zip" + src: "{{ studio_path}}\\commandlinetools-win-{{ tools_version }}.zip" + dest: "{{ studio_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: Accept Android SDK licenses - win_shell: sh -c "yes | /c/android-sdk/cmdline-tools/cmdline-tools/bin/sdkmanager.bat --licenses" +- name: Create Android Studio data directory + win_file: + path: "{{ large_prog_dir }}\\.android" + state: directory + +- name: Create Android Studio SDK directory + win_file: + path: "{{ sdk_path }}" + state: directory + + +- name: Create Android Studio shortcut + win_shortcut: + dest: "C:\\ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\\Android Studio\\Android Studio.lnk" + src: "{{ studio_path }}\\bin\\studio64.exe" + +- name: Set Android Studio environment variables + win_environment: + level: machine + variables: + ANDROID_HOME: "{{ studio_path }}" + ANDROID_SDK_ROOT: "{{ sdk_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: Include Android SDK packages include_vars: androidsdk_packages.yml -- name: Install Android SDK +- name: Install Android SDK packages win_shell: | - {{ sdk_path }}\\cmdline-tools\\cmdline-tools\\bin\\sdkmanager --install "{{ item }}" + {{ tools_path }}\bin\sdkmanager.bat --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: 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: 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: Check HAXM install status # win_stat: # path: "%ProgramFiles%\\Intel\\HAXM" diff --git a/roles/arduino/tasks/main_win.yml b/roles/arduino/tasks/main_win.yml index a607b377..ab4558aa 100644 --- a/roles/arduino/tasks/main_win.yml +++ b/roles/arduino/tasks/main_win.yml @@ -8,8 +8,9 @@ - name: Install Arduino-cli win_package: # path: https://downloads.arduino.cc/arduino-ide/arduino-ide_2.0.0_Windows_64bit.exe - path: https://downloads.arduino.cc/arduino-cli/arduino-cli_latest_Windows_64bit.zip - arguments: /S /AllUsers + 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 # creates_path: "%ProgramFiles%\\Arduino IDE\\Arduino IDE.exe" diff --git a/roles/autoupdate/files/frib_autoupdate.service b/roles/autoupdate/files/frib_autoupdate.service new file mode 100644 index 00000000..dce8afd4 --- /dev/null +++ b/roles/autoupdate/files/frib_autoupdate.service @@ -0,0 +1,9 @@ +[Unit] +Description=Update btrfs filesystems + +[Service] +User=root +Group=root +Type=oneshot +ExecStart=/home/partimag/fri_live_upgrade/frib_update.py + diff --git a/roles/autoupdate/files/frib_autoupdate.timer b/roles/autoupdate/files/frib_autoupdate.timer new file mode 100644 index 00000000..580a7f62 --- /dev/null +++ b/roles/autoupdate/files/frib_autoupdate.timer @@ -0,0 +1,12 @@ +[Unit] +Description=Frib Autoupdate Timer + + +[Timer] +OnBootSec=5m +OnUnitActiveSec=30m +Persistent=true + +[Install] +WantedBy=timers.target + diff --git a/roles/autoupdate/files/rsync_ucilnicesmb_d.service b/roles/autoupdate/files/rsync_ucilnicesmb_d.service new file mode 100644 index 00000000..29e830e4 --- /dev/null +++ b/roles/autoupdate/files/rsync_ucilnicesmb_d.service @@ -0,0 +1,9 @@ +[Unit] +Description=rsync D: + +[Service] +User=root +Group=root +Type=oneshot +ExecStart=/bin/bash /mnt/ucilnice_d/skupno/porini_na_d.sh + diff --git a/roles/autoupdate/files/rsync_ucilnicesmb_d.timer b/roles/autoupdate/files/rsync_ucilnicesmb_d.timer new file mode 100644 index 00000000..ad6cae5e --- /dev/null +++ b/roles/autoupdate/files/rsync_ucilnicesmb_d.timer @@ -0,0 +1,12 @@ +[Unit] +Description=Rsync D: timer + + +[Timer] +OnBootSec=5m +OnUnitActiveSec=30m +Persistent=true + +[Install] +WantedBy=timers.target + diff --git a/roles/autoupdate/tasks/main.yml b/roles/autoupdate/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/autoupdate/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/autoupdate/tasks/main_lin.yml b/roles/autoupdate/tasks/main_lin.yml new file mode 100644 index 00000000..1e9ecd03 --- /dev/null +++ b/roles/autoupdate/tasks/main_lin.yml @@ -0,0 +1,39 @@ +- name: Create frib_autoupdate systemd unit + ansible.builtin.copy: + src: frib_autoupdate.service + dest: /etc/systemd/system/ + owner: root + group: root + +- name: Create frib_autoupdate timer + ansible.builtin.copy: + src: frib_autoupdate.timer + dest: /etc/systemd/system/ + owner: root + group: root + +- name: Enable frib_autoupdate timer + ansible.builtin.systemd_service: + name: frib_autoupdate.timer + state: started + enabled: true + +- name: Create rsync_ucilnicesmb_d systemd unit + ansible.builtin.copy: + src: rsync_ucilnicesmb_d.service + dest: /etc/systemd/system/ + owner: root + group: root + +- name: Create rsync_ucilnicesmb_d timer + ansible.builtin.copy: + src: rsync_ucilnicesmb_d.timer + dest: /etc/systemd/system/ + owner: root + group: root + +- name: Enable rsync_ucilnicesmb_d timer + ansible.builtin.systemd_service: + name: rsync_ucilnicesmb_d.timer + state: started + enabled: true diff --git a/roles/linroom/tasks/vmware_player.yml b/roles/autoupdate/tasks/main_win.yml similarity index 100% rename from roles/linroom/tasks/vmware_player.yml rename to roles/autoupdate/tasks/main_win.yml diff --git a/roles/blender/tasks/main_lin.yml b/roles/blender/tasks/main_lin.yml index 7a3281e4..9e82934a 100644 --- a/roles/blender/tasks/main_lin.yml +++ b/roles/blender/tasks/main_lin.yml @@ -1,4 +1,32 @@ -- name: Install blender - apt: - name: blender - state: latest +#- name: Add blender PPA +# command: add-apt-repository -y ppa:savoury1/blender + +#- name: Add blender PPA +# apt_repository: +# repo: ppa:savoury1/blender +# state: present +# update_cache: True + +#- name: Install blender +# apt: +# name: blender +# state: latest +- name: Download and unpack blender + unarchive: + src: https://download.blender.org/release/Blender4.5/blender-4.5.3-linux-x64.tar.xz + dest: /usr/local/lib/ + remote_src: yes + creates: /usr/local/lib/blender-4.5.3-linux-x64/blender-launcher + +- name: Create blender symlink + file: + src: /usr/local/lib/blender-4.5.3-linux-x64/blender-launcher + dest: /usr/local/bin/blender + state: link + +- name: Copy blender .desktop file + copy: + src: "/usr/local/lib/blender-4.5.3-linux-x64/blender.desktop" + dest: "/usr/local/share/applications" + remote_src: yes + diff --git a/roles/blender/tasks/main_win.yml b/roles/blender/tasks/main_win.yml index 8985fd2d..fa91d4f1 100644 --- a/roles/blender/tasks/main_win.yml +++ b/roles/blender/tasks/main_win.yml @@ -1,3 +1,3 @@ - name: Install Blender win_package: - path: https://ftp.nluug.nl/pub/graphics/blender/release/Blender3.3/blender-3.3.0-windows-x64.msi + path: https://ftp.nluug.nl/pub/graphics/blender/release/Blender4.5/blender-4.5.3-windows-x64.msi diff --git a/roles/chrome/tasks/main_lin.yml b/roles/chrome/tasks/main_lin.yml index 390d25c3..3d07a4fe 100644 --- a/roles/chrome/tasks/main_lin.yml +++ b/roles/chrome/tasks/main_lin.yml @@ -1,9 +1,17 @@ - name: Add Chromium not-a-snap repository - apt_repository: - repo: ppa:xtradeb/apps + apt: + deb: https://launchpad.net/~xtradeb/+archive/ubuntu/apps/+files/xtradeb-apt-source_0.4_all.deb state: present - update_cache: True - validate_certs: False + + #apt_repository: + # repo: ppa:xtradeb/apps + # state: present + # update_cache: True + # validate_certs: False +- name: Remove Chromium snap + community.general.snap: + name: chromium + state: absent - name: Install Chromium instead of Chrome apt: diff --git a/roles/clion/files/clion.desktop b/roles/clion/files/clion.desktop new file mode 100644 index 00000000..001239c5 --- /dev/null +++ b/roles/clion/files/clion.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Name=CLion +GenericName=CLion +Comment=JetBrains CLion IDE +MimeType=text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-moc;text/x-c;text/x-c++; +Exec=/opt/CLion/bin/clion.sh +Icon=clion +Terminal=false +Type=Application +Categories=Education;Development;ComputerScience; +StartupNotify=true diff --git a/roles/clion/tasks/main.yml b/roles/clion/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/clion/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/clion/tasks/main_lin.yml b/roles/clion/tasks/main_lin.yml new file mode 100644 index 00000000..6b33b9fb --- /dev/null +++ b/roles/clion/tasks/main_lin.yml @@ -0,0 +1,32 @@ +- name: Install CLion + block: + - name: Create destination for JetBrains CLion + file: + path: /opt/CLion + state: directory + - name: Download and unpack JetBrains CLion + unarchive: + src: https://data.services.jetbrains.com/products/download?code=CL&platform=linux + dest: /opt/CLion + extra_opts: --strip-components=1 + creates: /opt/CLion/build.txt + remote_src: yes + +- name: Install icon + block: + - file: + path: /usr/local/share/icons + state: directory + - copy: + src: /opt/CLion/bin/clion.svg + remote_src: true + dest: /usr/local/share/icons/clion.svg + +- name: Create .desktop file + block: + - file: + path: /usr/local/share/applications + state: directory + - copy: + dest: /usr/local/share/applications/clion.desktop + src: clion.desktop diff --git a/roles/clion/tasks/main_win.yml b/roles/clion/tasks/main_win.yml new file mode 100644 index 00000000..f66ef505 --- /dev/null +++ b/roles/clion/tasks/main_win.yml @@ -0,0 +1,7 @@ + +# TODO fix / test this +- name: Install Clion + win_package: + path: "https://data.services.jetbrains.com/products/download?code=CL&platform=windows" + arguments: /S + creates_path: "%ProgramFiles(x86)%\\JetBrains\\IntelliJ IDEA Community Edition {{ target_version }}\\bin\\idea64.exe" diff --git a/roles/cocotb/tasks/main.yml b/roles/cocotb/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/cocotb/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/cocotb/tasks/main_lin.yml b/roles/cocotb/tasks/main_lin.yml new file mode 100644 index 00000000..94db275b --- /dev/null +++ b/roles/cocotb/tasks/main_lin.yml @@ -0,0 +1,4 @@ +- name: Install Cocotb + pip: + executable: pipx + name: cocotb[bus] diff --git a/roles/cocotb/tasks/main_win.yml b/roles/cocotb/tasks/main_win.yml new file mode 100644 index 00000000..54148f48 --- /dev/null +++ b/roles/cocotb/tasks/main_win.yml @@ -0,0 +1,2 @@ +- name: Install cocoTB + win_command: pip install cocotb[bus] diff --git a/roles/cp2102_driver/tasks/main_win.yml b/roles/cp2102_driver/tasks/main_win.yml index 7f30792f..5dcc415f 100644 --- a/roles/cp2102_driver/tasks/main_win.yml +++ b/roles/cp2102_driver/tasks/main_win.yml @@ -2,3 +2,5 @@ win_chocolatey: ignore_checksums: true name: cp210x-vcp-drivers-win10 + #TODO remove ignore_errors once the package is repaired/updated + ignore_errors: true diff --git a/roles/cryptodome/tasks/main.yml b/roles/cryptodome/tasks/main.yml new file mode 100644 index 00000000..66e93fef --- /dev/null +++ b/roles/cryptodome/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' \ No newline at end of file diff --git a/roles/cryptodome/tasks/main_lin.yml b/roles/cryptodome/tasks/main_lin.yml new file mode 100644 index 00000000..de920ed8 --- /dev/null +++ b/roles/cryptodome/tasks/main_lin.yml @@ -0,0 +1,5 @@ +- name: Install python-pycryptodome + apt: + name: + - python3-pycryptodome + state: latest diff --git a/roles/cryptodome/tasks/main_win.yml b/roles/cryptodome/tasks/main_win.yml new file mode 100644 index 00000000..1b9bc482 --- /dev/null +++ b/roles/cryptodome/tasks/main_win.yml @@ -0,0 +1,2 @@ +- name: Install python3-pycryptodome + win_command: pip install pycryptodome diff --git a/roles/cryptography/tasks/main.yml b/roles/cryptography/tasks/main.yml new file mode 100644 index 00000000..66e93fef --- /dev/null +++ b/roles/cryptography/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' \ No newline at end of file diff --git a/roles/cryptography/tasks/main_lin.yml b/roles/cryptography/tasks/main_lin.yml new file mode 100644 index 00000000..eb361bba --- /dev/null +++ b/roles/cryptography/tasks/main_lin.yml @@ -0,0 +1,5 @@ +- name: Install python-cryptography + apt: + name: + - python3-cryptography + state: latest diff --git a/roles/cryptography/tasks/main_win.yml b/roles/cryptography/tasks/main_win.yml new file mode 100644 index 00000000..b5759efb --- /dev/null +++ b/roles/cryptography/tasks/main_win.yml @@ -0,0 +1,2 @@ +- name: Install python3-cryptography + win_command: pip install cryptography diff --git a/roles/datasets/tasks/main.yml b/roles/datasets/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/datasets/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/datasets/tasks/main_lin.yml b/roles/datasets/tasks/main_lin.yml new file mode 100644 index 00000000..e2e237b2 --- /dev/null +++ b/roles/datasets/tasks/main_lin.yml @@ -0,0 +1,4 @@ +- name: Install datasets + pip: + executable: pipx + name: datasets diff --git a/roles/datasets/tasks/main_win.yml b/roles/datasets/tasks/main_win.yml new file mode 100644 index 00000000..a614c330 --- /dev/null +++ b/roles/datasets/tasks/main_win.yml @@ -0,0 +1,2 @@ +- name: Install datasets + win_command: pip install datasets diff --git a/roles/eclipse/tasks/main_win.yml b/roles/eclipse/tasks/main_win.yml index 5e39d7cf..f26c8095 100644 --- a/roles/eclipse/tasks/main_win.yml +++ b/roles/eclipse/tasks/main_win.yml @@ -12,4 +12,4 @@ win_lineinfile: path: "%ProgramFiles%\\Eclipse {{ target_version }}\\eclipse\\eclipse.ini" regexp: "osgi.instance.area.default" - line: "-Dosgi.instance.area.default=H:/Documents/eclipse-workspace" + line: "-Dosgi.instance.area.default=D:/Documents/eclipse-workspace" diff --git a/roles/evaluate/tasks/main.yml b/roles/evaluate/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/evaluate/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/evaluate/tasks/main_lin.yml b/roles/evaluate/tasks/main_lin.yml new file mode 100644 index 00000000..104c9daa --- /dev/null +++ b/roles/evaluate/tasks/main_lin.yml @@ -0,0 +1,4 @@ +- name: Install evaluate + pip: + executable: pipx + name: evaluate diff --git a/roles/evaluate/tasks/main_win.yml b/roles/evaluate/tasks/main_win.yml new file mode 100644 index 00000000..7698d3f3 --- /dev/null +++ b/roles/evaluate/tasks/main_win.yml @@ -0,0 +1,2 @@ +- name: Install evaluate + win_command: pip install evaluate diff --git a/roles/facts/tasks/main.yml b/roles/facts/tasks/main.yml new file mode 100644 index 00000000..4b5c6fe0 --- /dev/null +++ b/roles/facts/tasks/main.yml @@ -0,0 +1,26 @@ +- name: Send valid bash or ps command with different results + raw: | + echo \#\# + register: raw_result + +- name: Set shell type + set_fact: + ansible_shell_type: "{% if raw_result['stdout'][-4] == '#' %}sh{% else %}powershell{%endif%}" + +- name: Set connection parameters and paths for Windows + become: false + set_fact: + 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" + +- name: Set connection parameters and paths for Ubuntu + set_fact: + ansible_become_method: sudo + ansible_become_flags: "" + ansible_ssh_extra_args: '-o ForwardX11=yes' + installers: /mnt/ucilnice_d/install + when: ansible_shell_type == "sh" diff --git a/roles/firefox/files/policies.json b/roles/firefox/files/policies.json new file mode 100644 index 00000000..1d48a1da --- /dev/null +++ b/roles/firefox/files/policies.json @@ -0,0 +1,17 @@ +{ + "policies": { + "OverrideFirstRunPage": "https://ucilnica.fri.uni-lj.si", + "OverridePostUpdatePage": "https://ucilnica.fri.uni-lj.si", + "DisableAppUpdate": true, + "DisableSystemAddonUpdate": true, + "DisableTelemetry": true, + "UserMessaging": { + "WhatsNew": false, + "ExtensionRecommendations": false, + "FeatureRecommendations": false, + "UrlbarInterventions": false, + "SkipOnboarding": true, + "MoreFromMozilla": false + } + } +} diff --git a/roles/firefox/files/syspref.js b/roles/firefox/files/syspref.js new file mode 100644 index 00000000..9617a8fc --- /dev/null +++ b/roles/firefox/files/syspref.js @@ -0,0 +1,2 @@ +pref("browser.sessionstore.interval", 300000); +pref("browser.cache.disk.enable", false); diff --git a/roles/firefox/tasks/main_lin.yml b/roles/firefox/tasks/main_lin.yml index eb729c07..9cc1e51b 100644 --- a/roles/firefox/tasks/main_lin.yml +++ b/roles/firefox/tasks/main_lin.yml @@ -1,5 +1,21 @@ - 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 @@ -8,12 +24,6 @@ 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: @@ -21,3 +31,18 @@ - firefox state: latest allow_downgrade: True + +- name: Create Firefox policies directory + file: + path: /etc/firefox/policies + state: directory + +- name: Set Firefox policies + copy: + dest: /etc/firefox/policies/policies.json + src: policies.json + +- name: Set Firefox settings + copy: + dest: /etc/firefox/syspref.js + src: syspref.js diff --git a/roles/firefox/tasks/main_win.yml b/roles/firefox/tasks/main_win.yml index 53987a98..a1c24b3c 100644 --- a/roles/firefox/tasks/main_win.yml +++ b/roles/firefox/tasks/main_win.yml @@ -8,19 +8,4 @@ - name: Set Firefox policies copy: dest: C:\Program Files\Mozilla Firefox\distribution\policies.json - content: | - { - "policies": { - "DisableAppUpdate": true, - "DisableSystemAddonUpdate": true, - "DisableTelemetry": true, - "UserMessaging": { - "WhatsNew": false, - "ExtensionRecommendations": false, - "FeatureRecommendations": false, - "UrlbarInterventions": false, - "SkipOnboarding": true, - "MoreFromMozilla": false - } - } - } + src: policies.json diff --git a/roles/flask/meta/main.yml b/roles/flask/meta/main.yml new file mode 100644 index 00000000..b783143b --- /dev/null +++ b/roles/flask/meta/main.yml @@ -0,0 +1,2 @@ +dependencies: + - role: python3 diff --git a/roles/flask/tasks/main.yml b/roles/flask/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/flask/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/flask/tasks/main_lin.yml b/roles/flask/tasks/main_lin.yml new file mode 100644 index 00000000..1d7c92fb --- /dev/null +++ b/roles/flask/tasks/main_lin.yml @@ -0,0 +1,7 @@ +- name: Install flask + apt: + name: + - python3-flask + - python-flask-doc + state: latest + diff --git a/roles/flask/tasks/main_win.yml b/roles/flask/tasks/main_win.yml new file mode 100644 index 00000000..3e7f27ae --- /dev/null +++ b/roles/flask/tasks/main_win.yml @@ -0,0 +1,3 @@ +- name: Install flask + win_command: pip install flask + diff --git a/roles/fri_base/files/authorized_keys b/roles/fri_base/files/authorized_keys new file mode 100644 index 00000000..57dc2c02 --- /dev/null +++ b/roles/fri_base/files/authorized_keys @@ -0,0 +1,5 @@ +ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIM2Tn8+rH+fkFkBycxYrJ7TzhXQhuf3U+w23JFlZoRiX polz@povzpetnik" +ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDRpoWIH5u2g12IM39WNRzLsPksfSjfL/82fPnuZwZ7H polz@it-polz" +ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCq7NrrDD53pe9Zpn/dRSPxWQLDIZ9INS0kz/ps/9fGsM8/H/J7jr/ecj0j0jfYig6QdV8G7VnpLWjcuJ65ul3u2rnQSN78Ms/hxlAhmyahQtBA2q2D2zqI2PDWsKAySWmfFg+2W5fYmE1+F9GEB0OWNOuClmfo2A1c8Ve76qSiehHgjYo0G1CQrXkmE00GBLqyqkbyyStLa9DUfaDwrbOu4tJChHo4jDGuLH5QCYcN+RRXjwPQKgk0L2yfu1479L0XqhbEo+KHoIZH501fkoE+gUKVyLERvkhKSiCgPhJmAgRN1bRsiyTwvQzoED4q1RwFmG0AKg0U5bHnAAOd77uyuIYmcFiaRGHROQ9ZbyB9tJ07QrFlzRkderDd5Z18mO7LtgDjFZ2B2DlRY6zxMiUqJyDRnHjDF3+3DTlHIUCC3aEtoYS8MPyRL1b8XenIqswXkM+vkYFeKh2ynjNu3C6VqDCXZFvIi6f1X0ojZXRrDmbiON8Y74HjxP0z6TB1U30= polz@ucilnicenfs-2020 + +ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDRpoWIH5u2g12IM39WNRzLsPksfSjfL/82fPnuZwZ7H polz@it-polz diff --git a/roles/fri_base/files/hide_users.conf b/roles/fri_base/files/hide_users.conf new file mode 100644 index 00000000..b3a9f7e8 --- /dev/null +++ b/roles/fri_base/files/hide_users.conf @@ -0,0 +1,4 @@ +[Users] +MinimumUid=999 +MaximumUid=999 +RememberLastUser=false diff --git a/roles/fri_base/files/kscreenlockerrc b/roles/fri_base/files/kscreenlockerrc new file mode 100644 index 00000000..e49ea4e6 --- /dev/null +++ b/roles/fri_base/files/kscreenlockerrc @@ -0,0 +1,4 @@ +[Daemon] +Autolock=false +LockOnResume=false +Timeout=0 diff --git a/roles/fri_base/files/powerdevilrc b/roles/fri_base/files/powerdevilrc new file mode 100644 index 00000000..6e3ec047 --- /dev/null +++ b/roles/fri_base/files/powerdevilrc @@ -0,0 +1,6 @@ +[AC][RunScript] +IdleTimeoutCommand=qdbus org.kde.Shutdown /Shutdown logout +RunScriptIdleTimeoutSec=7200 + +[AC][SuspendAndShutdown] +PowerButtonAction=8 diff --git a/roles/fri_base/files/user.dconf b/roles/fri_base/files/user.dconf new file mode 100644 index 00000000..9cef8c75 --- /dev/null +++ b/roles/fri_base/files/user.dconf @@ -0,0 +1 @@ +service-db:keyfile/user diff --git a/roles/fri_base/meta/main.yml b/roles/fri_base/meta/main.yml index ca40277c..54b3e1e9 100644 --- a/roles/fri_base/meta/main.yml +++ b/roles/fri_base/meta/main.yml @@ -9,3 +9,4 @@ dependencies: - role: sumatrapdf - role: vlc - role: wget + - role: prometheus-exporter diff --git a/roles/fri_base/tasks/main_lin.yml b/roles/fri_base/tasks/main_lin.yml index 1cc6e959..0e9673d4 100644 --- a/roles/fri_base/tasks/main_lin.yml +++ b/roles/fri_base/tasks/main_lin.yml @@ -1,6 +1,55 @@ - name: Enable multiarch command: dpkg --add-architecture i386 +- name: Create swap btrfs subvolume + command: btrfs subvolume create /swap + ignore_errors: True + +- name: Create swap directory if it does not exist + file: + path: /swap + state: directory + +- name: Create btrfs swap + command: btrfs filesystem mkswapfile --size 4g /swap/swap.img + ignore_errors: True + +- name: Create swap image if it does not exist + shell: fallocate -l 4G /swap/swap.img && mkswap /swap/swap.img + args: + creates: /swap/swap.img + ignore_errors: True + +- name: Change swap file permissions + file: path="/swap/swap.img" + owner=root + group=root + mode=0600 + +- name: Write swap entry in fstab + mount: name=none + src=/swap/swap.img + fstype=swap + opts=sw + passno=0 + dump=0 + state=present + +- name: Activate swap + command: "swapon /swap/swap.img" + ignore_errors: True + +- name: Make sure default swap entry does not exist + mount: + path: none + src: /swap.img + fstype: swap + state: absent + +- name: Make sure default swap is not used + command: swapoff /swap/swap.img + ignore_errors: True + - name: Install generally useful packages apt: name: @@ -13,7 +62,6 @@ - kwrite - kate - krita - - blender - inkscape - pcmanfm-qt - qutebrowser @@ -24,11 +72,15 @@ - qemu-utils - virt-manager - wine + - wine64 - wine32:i386 - wine-binfmt - dosbox - - webext-ublock-origin-chromium - - webext-ublock-origin-firefox + - htop + - btop + - iotop + # - webext-ublock-origin-chromium + # - webext-ublock-origin-firefox - nethack-console - zsh - tmux @@ -49,8 +101,11 @@ - neovim-qt - binwalk - iotop + - evince + - okular - htop - jdupes + - nvidia-driver-580-open state: latest update_cache: yes @@ -59,8 +114,33 @@ name: - xfce4-screensaver - xscreensaver + - thunderbird + - kmail state: absent +- name: Set volumes for snapper + set_fact: + snapper_volumes: + - { confname: 'root', subvolume: '/'} + - { confname: 'opt', subvolume: '/opt'} + +- name: Create snapper configs + command: snapper -c {{item.confname}} create-config {{item.subvolume}} + ignore_errors: true + loop: "{{snapper_volumes}}" + +- name: Overwrite snapper configs + template: + src: snapper + dest: /etc/snapper/configs/{{item.confname}} + loop: "{{ snapper_volumes }}" + +- name: Disable APT snapshots for snapper + lineinfile: + path: /etc/default/snapper + regexp: '^DISABLE_APT_SNAPSHOT=' + line: 'DISABLE_APT_SNAPSHOT="yes"' + - name: Set up additional groups for students vars: additional_groups: @@ -100,7 +180,7 @@ mount: boot: true fstype: ntfs-3g - src: UUID=A09E30889E30594C + src: "PARTLABEL=Basic\\040data\\040partition" path: /mnt/C state: mounted opts: defaults,nofail @@ -109,7 +189,7 @@ mount: boot: true fstype: ntfs-3g - src: "LABEL=D:" + src: "PARTLABEL=D:" path: /mnt/D state: mounted opts: defaults,nofail @@ -132,8 +212,8 @@ state: mounted opts: guest,soft,nofail -- name: Set time to local RTC - shell: "timedatectl set-local-rtc 1 --adjust-system-clock" +# - name: Set time to local RTC +# shell: "timedatectl set-local-rtc 1 --adjust-system-clock" - name: Install ethtool apt: @@ -144,3 +224,58 @@ copy: dest: /etc/udev/rules.d/ src: 99-wakeonlan.rules + +- name: Put dconf files in XDG_RUNTIME_DIR so dconf works on network-mounted homes + block: + - file: + path: /etc/dconf/profile + state: directory + - copy: + dest: /etc/dconf/profile/user + src: user.dconf + +- name: Turn off KDE screen locking + copy: + dest: /etc/xdg + src: kscreenlockerrc + +- name: Log off KDE after 120m + copy: + dest: /etc/xdg + src: powerdevilrc + +- name: Shorten PS1 prompt + replace: + path: "{{ item }}" + regexp: 'PS1=(.*)\\u@\\h' + replace: PS1=\1${USER%@*} + loop: + - /etc/skel/.bashrc + - /etc/profile + - /etc/bash.bashrc + +- name: Hide users in lightdm + lineinfile: + path: /etc/lightdm/lightdm.conf + regexp: "#?greeter-hide-users=" + line: greeter-hide-users=true + +- name: Hide users in sddm + copy: + dest: /etc/sddm.conf.d/ + src: hide_users.conf + +- name: Prevent sddm from enumerating all users + lineinfile: + path: /usr/share/sddm/themes/breeze/metadata.desktop + insertafter: EOF + state: present + line: needsFullUserModel=false + +- name: Copy authorized_keys + become: false + ansible.posix.authorized_key: + user: "{{ ansible_user }}" + key: "{{ lookup('file', 'authorized_keys') }}" + state: present + exclusive: true diff --git a/roles/fri_base/tasks/main_win.yml b/roles/fri_base/tasks/main_win.yml index 40d9e2fd..9e3b5e58 100644 --- a/roles/fri_base/tasks/main_win.yml +++ b/roles/fri_base/tasks/main_win.yml @@ -1,18 +1,34 @@ +- name: Set RTC to UTC + win_regedit: + path: HKLM:\SYSTEM\CurrentControlSet\Control\TimeZoneInformation + name: RealTimeIsUniversal + data: 1 + type: dword + - name: Set timezone win_timezone: timezone: Central Europe Standard Time + - name: Show file extensions in Explorer win_regedit: path: HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced name: HideFileExt data: 0 type: dword + - name: Allow SMB insecure guest access win_regedit: path: HKLM:\Software\Policies\Microsoft\Windows\LanmanWorkstation name: AllowInsecureGuestAuth data: 1 type: dword + +- name: Enable Unified Write Filter + win_optional_feature: + include_parent: true + name: Client-UnifiedWriteFilter + state: present + - name: Install PSCX community.windows.win_psmodule: name: Pscx @@ -20,5 +36,15 @@ allow_clobber: true state: present +- name: Copy admin ssh keys to authorized_keys + win_copy: + src: authorized_keys + dest: "%USERPROFILE%\\.ssh" + +- name: Copy admin keys to administrators_authorized_keys + win_copy: + src: authorized_keys + dest: C:\ProgramData\ssh\administrators_authorized_keys + # TODO: turn on GPO to allow guest SMB logins # TODO: open firewall for Samba diff --git a/roles/gns3/tasks/main_lin.yml b/roles/gns3/tasks/main_lin.yml index df2807d8..7b8fb8ab 100644 --- a/roles/gns3/tasks/main_lin.yml +++ b/roles/gns3/tasks/main_lin.yml @@ -1,9 +1,23 @@ - name: Add GNS3 repository - apt_repository: - repo: ppa:gns3/ppa - state: present - update_cache: True - validate_certs: False + 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 + - name: Install gns3 server ansible.builtin.apt: name: gns3-server diff --git a/roles/idea/files/idea.desktop b/roles/idea/files/idea.desktop new file mode 100644 index 00000000..1c69ffed --- /dev/null +++ b/roles/idea/files/idea.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Name=IDEA +GenericName=IDEA +Comment=JetBrains IDEA +MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++; +Exec=/opt/IDEA/bin/idea.sh +Icon=idea +Terminal=false +Type=Application +Categories=Development;ComputerScience; +StartupNotify=true diff --git a/roles/idea/tasks/main_lin.yml b/roles/idea/tasks/main_lin.yml index 89023cd8..e70fb5e9 100644 --- a/roles/idea/tasks/main_lin.yml +++ b/roles/idea/tasks/main_lin.yml @@ -6,7 +6,27 @@ state: directory - name: Download and unpack JetBrains IDEA unarchive: - src: https://download.jetbrains.com/idea/ideaIC-2023.2.1.tar.gz + src: https://data.services.jetbrains.com/products/download?code=IIU&platform=linux dest: /opt/IDEA - creates: /opt/IDEA/idea-IC-232.9559.62/build.txt + extra_opts: --strip-components=1 + creates: /opt/IDEA/build.txt remote_src: yes + +- name: Install icon + block: + - file: + path: /usr/local/share/icons + state: directory + - copy: + src: /opt/IDEA/bin/idea.svg + remote_src: true + dest: /usr/local/share/icons/idea.svg + +- name: Create .desktop file + block: + - file: + path: /usr/local/share/applications + state: directory + - copy: + dest: /usr/local/share/applications/idea.desktop + src: idea.desktop diff --git a/roles/inkscape/tasks/main_lin.yml b/roles/inkscape/tasks/main_lin.yml index 4c8441a7..69a9e9c0 100644 --- a/roles/inkscape/tasks/main_lin.yml +++ b/roles/inkscape/tasks/main_lin.yml @@ -1,10 +1,20 @@ - name: Add Inkscape repository - apt_repository: - repo: ppa:inkscape.dev/stable - state: present - update_cache: True - validate_certs: False + 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 - name: Install Inkscape apt: - name: inkscape + name: inkscape-trunk state: latest diff --git a/roles/iverilog/tasks/main.yml b/roles/iverilog/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/iverilog/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/iverilog/tasks/main_lin.yml b/roles/iverilog/tasks/main_lin.yml new file mode 100644 index 00000000..fc76453c --- /dev/null +++ b/roles/iverilog/tasks/main_lin.yml @@ -0,0 +1,4 @@ +- name: Install Icarus + apt: + name: iverilog + state: latest diff --git a/roles/iverilog/tasks/main_win.yml b/roles/iverilog/tasks/main_win.yml new file mode 100644 index 00000000..d8d6d03a --- /dev/null +++ b/roles/iverilog/tasks/main_win.yml @@ -0,0 +1,5 @@ +- name: Install Icarus Verilog + win_chocolatey: + name: iverilog + version: '11.0' + state: present diff --git a/roles/jdk/tasks/main_lin.yml b/roles/jdk/tasks/main_lin.yml index eaaa1b31..8c2a94e7 100644 --- a/roles/jdk/tasks/main_lin.yml +++ b/roles/jdk/tasks/main_lin.yml @@ -1,6 +1,11 @@ -- name: Install OpenJDK 21 +- name: Install latest OpenJDK (25) apt: - name: openjdk-21-jdk + name: openjdk-25-jdk + state: latest + +- name: Install latest Java docs + apt: + name: openjdk-25-doc state: latest - name: Install OpenJDK 17 @@ -31,11 +36,7 @@ - libc6-x32 state: latest -- name: Install Oracle JDK 22 +- name: Install Oracle JDK 24 apt: - 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" + deb: "https://download.oracle.com/java/24/latest/jdk-24_linux-x64_bin.deb" diff --git a/roles/jdk/tasks/main_win.yml b/roles/jdk/tasks/main_win.yml index ceb19968..be8ea090 100644 --- a/roles/jdk/tasks/main_win.yml +++ b/roles/jdk/tasks/main_win.yml @@ -1,6 +1,6 @@ - name: Install Oracle JDK win_package: - path: https://download.oracle.com/java/22/latest/jdk-22_windows-x64_bin.msi + path: https://download.oracle.com/java/24/latest/jdk-24_windows-x64_bin.msi arguments: INSTALLLEVEL=3 - name: Find Java version @@ -28,6 +28,13 @@ 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 diff --git a/roles/jupyter/tasks/main_lin.yml b/roles/jupyter/tasks/main_lin.yml index c0dc1edb..55388ebe 100644 --- a/roles/jupyter/tasks/main_lin.yml +++ b/roles/jupyter/tasks/main_lin.yml @@ -2,15 +2,25 @@ apt: name: jupyter state: latest + - name: Install Jupyter Console apt: name: jupyter-console state: latest + - name: Install Jupyter QT Console apt: name: jupyter-qtconsole state: latest + - name: Install Jupyter Notebook apt: name: jupyter-notebook state: latest + +- name: Install Jupyter Lab + apt: + name: jupyterlab + state: latest + + diff --git a/roles/linroom/files/99-wakeonlan.rules b/roles/linroom/files/99-wakeonlan.rules deleted file mode 100644 index d4729ace..00000000 --- a/roles/linroom/files/99-wakeonlan.rules +++ /dev/null @@ -1 +0,0 @@ -ACTION=="add", SUBSYSTEM=="net", NAME=="e*", RUN+="/usr/sbin/ethtool -s $name wol g" diff --git a/roles/linroom/handlers/main.yml b/roles/linroom/handlers/main.yml deleted file mode 100644 index 70c210e5..00000000 --- a/roles/linroom/handlers/main.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Mark everything in bin/ directories executable. Some extensions do -# this on activation, but non-root users don’t have permission for it. -- name: fix VS code extensions - command: find /usr/share/code/resources/app -name bin -exec chmod -R +x '{}' ';' diff --git a/roles/linroom/tasks/7zip.yml b/roles/linroom/tasks/7zip.yml deleted file mode 100644 index 94c08d4a..00000000 --- a/roles/linroom/tasks/7zip.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install 7zip - apt: - name: 7zip - state: latest diff --git a/roles/linroom/tasks/AAHRP-63263.yml b/roles/linroom/tasks/AAHRP-63263.yml deleted file mode 100644 index 0e66b326..00000000 --- a/roles/linroom/tasks/AAHRP-63263.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Analiza algoritmov in hevristično reševanje problemov -# matej.piculin@fri.uni-lj.si -# Windows, Java JDK, Eclipse, R, RStudio -- include_tasks: rstudio.yml -- include_tasks: eclipse.yml -- include_tasks: jdk.yml diff --git a/roles/linroom/tasks/APS1-63279.yml b/roles/linroom/tasks/APS1-63279.yml deleted file mode 100644 index b35fcad4..00000000 --- a/roles/linroom/tasks/APS1-63279.yml +++ /dev/null @@ -1,8 +0,0 @@ -# Algoritmi in podatkovne strukture 1 -# tomaz.hocevar@fri.uni-lj.si, bojan.zunkovic@fri.uni-lj.si, polz@fri.uni-lj.si -# Windows, Java JDK, Eclipse -# - include_tasks: JDK.yml -# - include_tasks: Eclipse.yml -- include_tasks: c_development.yml -- include_tasks: vscode.yml - diff --git a/roles/linroom/tasks/ARP1-63545C.yml b/roles/linroom/tasks/ARP1-63545C.yml deleted file mode 100644 index 4c50bf00..00000000 --- a/roles/linroom/tasks/ARP1-63545C.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Aktualno raziskovalno področje 1 -# Veljko.Pejovic@fri.uni-lj.si -# Android Studio -- include_tasks: android_studio.yml diff --git a/roles/linroom/tasks/BMO-63259.yml b/roles/linroom/tasks/BMO-63259.yml deleted file mode 100644 index 10c9e001..00000000 --- a/roles/linroom/tasks/BMO-63259.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Brezžična in mobilna omrežja -# Ziga.Pusnik@fri.uni-lj.si, Miran.Koprivec@fri.uni-lj.si -# Windows, VMware Workstation 16.2.4 Player, wireshark -- include_tasks: wireshark.yml -- include_tasks: vmware_player.yml diff --git a/roles/linroom/tasks/DF-63530.yml b/roles/linroom/tasks/DF-63530.yml deleted file mode 100644 index ae8557c0..00000000 --- a/roles/linroom/tasks/DF-63530.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Digitalna forenzika -# Aleks.Huc@fri.uni-lj.si, Gasper.FeleZorz@fri.uni-lj.si -# Windows, GNU/Linux, GNS3, VirtualBox -- include_tasks: gns3.yml -- include_tasks: virtualbox.yml diff --git a/roles/linroom/tasks/DN-63260.yml b/roles/linroom/tasks/DN-63260.yml deleted file mode 100644 index ff2006a5..00000000 --- a/roles/linroom/tasks/DN-63260.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Digitalno načrtovanje -# Nejc.Ilc@fri.uni-lj.si -# Windows, Vivado 2022.1 -- include_tasks: vivado.yml diff --git a/roles/linroom/tasks/DPS-63744.yml b/roles/linroom/tasks/DPS-63744.yml deleted file mode 100644 index c389a452..00000000 --- a/roles/linroom/tasks/DPS-63744.yml +++ /dev/null @@ -1,7 +0,0 @@ -# Digitalno procesiranje signalov -# Aleks.Huc@fri.uni-lj.si -# Windows, GNU/Linux, Matlab, wfdb, Octave, Audacity -- include_tasks: matlab.yml -- include_tasks: wfdb.yml -- include_tasks: octave.yml -- include_tasks: audacity.yml diff --git a/roles/linroom/tasks/DV-63718.yml b/roles/linroom/tasks/DV-63718.yml deleted file mode 100644 index b7303807..00000000 --- a/roles/linroom/tasks/DV-63718.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Digitalna vezja -# Miha.Moskon@fri.uni-lj.si -# Windows, Logisim, Logisim Evolution -- include_tasks: logisim.yml diff --git a/roles/linroom/tasks/EP-63249.yml b/roles/linroom/tasks/EP-63249.yml deleted file mode 100644 index 1cc049d7..00000000 --- a/roles/linroom/tasks/EP-63249.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Elektronsko poslovanje -# David.Jelenc@fri.uni-lj.si -# Windows, VirtualBox, Android Studio -# -- include_tasks: virtualbox.yml -- include_tasks: android_studio.yml diff --git a/roles/linroom/tasks/FP-63507.yml b/roles/linroom/tasks/FP-63507.yml deleted file mode 100644 index 6c333c42..00000000 --- a/roles/linroom/tasks/FP-63507.yml +++ /dev/null @@ -1,11 +0,0 @@ -# Funkcijsko programiranje -# Klemen.Klanjscek@fri.uni-lj.si, Matjaz.Kukar@fri.uni-lj.si -# Windows, GNU/Linux, VS Code, Python 3, Racket (z DrRacket), SML/NJ, Emacs, rlwrap -# -- include_tasks: vscode.yml -- include_tasks: python3.yml -- include_tasks: racket.yml -- include_tasks: emacs.yml -- include_tasks: smlnj.yml - - diff --git a/roles/linroom/tasks/GO-63715.yml b/roles/linroom/tasks/GO-63715.yml deleted file mode 100644 index 926fc4ae..00000000 --- a/roles/linroom/tasks/GO-63715.yml +++ /dev/null @@ -1,9 +0,0 @@ -# Grafično oblikovanje -# Blaz.Meden@fri.uni-lj.si, ilb@fri.uni-lj.si -# Blender, Adobe paket (Illustrator, Photoshop, After Effects, Premiere), Processing (orodje za vizualno in interaktivno grafično programiranje), Inkscape (zastonjsko orodje za vektorsko risanje), GIMP (program za urejanje slik in rastrsko risanje) -# -- include_tasks: blender.yml -- include_tasks: adobe_cs.yml -- include_tasks: inkscape.yml -- include_tasks: gimp.yml - diff --git a/roles/linroom/tasks/IS-63714.yml b/roles/linroom/tasks/IS-63714.yml deleted file mode 100644 index 2dd62b01..00000000 --- a/roles/linroom/tasks/IS-63714.yml +++ /dev/null @@ -1,10 +0,0 @@ -# Informacijski sistemi -# Miha.Grohar@fri.uni-lj.si -# Windows, GNU/Linux, Docker, VS Code, dotnet6 SDK, GIT, Android Studio - -- include_tasks: docker.yml -- include_tasks: vscode.yml -- include_tasks: dotnet6.yml -- include_tasks: git.yml -- include_tasks: android_studio.yml - diff --git a/roles/linroom/tasks/IVZ-63521.yml b/roles/linroom/tasks/IVZ-63521.yml deleted file mode 100644 index ca0a4196..00000000 --- a/roles/linroom/tasks/IVZ-63521.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Informacijska varnost in zasebnost -# David.Jelenc@fri.uni-lj.si -# Java JDK, IntelliJ IDEA, VirtualBox -- include_tasks: jdk.yml -- include_tasks: idea.yml -- include_tasks: virtualbox.yml diff --git a/roles/linroom/tasks/KCR-63550.yml b/roles/linroom/tasks/KCR-63550.yml deleted file mode 100644 index 9fa8298d..00000000 --- a/roles/linroom/tasks/KCR-63550.yml +++ /dev/null @@ -1,7 +0,0 @@ -# Komunikacija človek računalnik -# Ales.Smrdel@fri.uni-lj.si -# Java JDK, Matlab, wfdb, Apache NetBeans -- include_tasks: jdk.yml -- include_tasks: matlab.yml -- include_tasks: wfdb.yml -- include_tasks: netbeans.yml diff --git a/roles/linroom/tasks/KPOV-63716.yml b/roles/linroom/tasks/KPOV-63716.yml deleted file mode 100644 index 19bfd45d..00000000 --- a/roles/linroom/tasks/KPOV-63716.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Komunikacijski protokoli in omrežna varnost -# Aleks.Huc@fri.uni-lj.si, Gasper.FeleZorz@fri.uni-lj.si -# Windows, GNU/Linux, GNS3, VirtualBox -- include_tasks: gns3.yml -- include_tasks: virtualbox.yml diff --git a/roles/linroom/tasks/KRV-63528.yml b/roles/linroom/tasks/KRV-63528.yml deleted file mode 100644 index 36b64c63..00000000 --- a/roles/linroom/tasks/KRV-63528.yml +++ /dev/null @@ -1,8 +0,0 @@ -# Kriptografija in računalniška varnost -# Klemen.Klanjscek@fri.uni-lj.si -# GNU/Linux, SageMath, Python 3, Jupyter Notebook, OpenSSL, OpenSSH client - -# SageMath se se prevede za Ubutnu 24.04: https://github.com/sagemath/sage/issues/38051#issuecomment-2123452861 -# - include_tasks: sagemath.yml -- include_tasks: jupyter.yml -- include_tasks: openssl.yml diff --git a/roles/linroom/tasks/MRO-63257.yml b/roles/linroom/tasks/MRO-63257.yml deleted file mode 100644 index 617f9e23..00000000 --- a/roles/linroom/tasks/MRO-63257.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Modeliranje računalniških omrežij -# Miha.Janez@fri.uni-lj.si -# OMNeT++, INET Framework -- include_tasks: omnetpp.yml diff --git a/roles/linroom/tasks/MV-63288.yml b/roles/linroom/tasks/MV-63288.yml deleted file mode 100644 index 288fc103..00000000 --- a/roles/linroom/tasks/MV-63288.yml +++ /dev/null @@ -1,9 +0,0 @@ -# Multimedijske vsebine -# Blaz.Meden@fri.uni-lj.si -# Blender, Adobe paket (Illustrator, Photoshop, After Effects, Premiere), Processing (orodje za vizualno in interaktivno grafično programiranje), Inkscape (zastonjsko orodje za vektorsko risanje), GIMP (program za urejanje slik in rastrsko risanje) - -- include_tasks: blender.yml -- include_tasks: adobe_cs.yml -- include_tasks: processing.yml -- include_tasks: inkscape.yml -- include_tasks: gimp.yml diff --git a/roles/linroom/tasks/NDN-63729.yml b/roles/linroom/tasks/NDN-63729.yml deleted file mode 100644 index c4c5ed31..00000000 --- a/roles/linroom/tasks/NDN-63729.yml +++ /dev/null @@ -1,7 +0,0 @@ -# Načrtovanje digitalnih naprav -# 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 -- include_tasks: vivado.yml diff --git a/roles/linroom/tasks/NM-63522.yml b/roles/linroom/tasks/NM-63522.yml deleted file mode 100644 index abc64377..00000000 --- a/roles/linroom/tasks/NM-63522.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Numerična matematika -# Martin.Vuk@fri.uni-lj.si -# VS Code, Julia -- include_tasks: vscode.yml -- include_tasks: julia.yml diff --git a/roles/linroom/tasks/NPMP-63512.yml b/roles/linroom/tasks/NPMP-63512.yml deleted file mode 100644 index caa30401..00000000 --- a/roles/linroom/tasks/NPMP-63512.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Nekonvencionalne platforme in metode procesiranja -# Miha.Janez@fri.uni-lj.si, Miha.Moskon@fri.uni-lj.si -# QCADesigner-E - -- include_tasks: qcadesigner-e.yml diff --git a/roles/linroom/tasks/NRG-63553.yml b/roles/linroom/tasks/NRG-63553.yml deleted file mode 100644 index 2533fcad..00000000 --- a/roles/linroom/tasks/NRG-63553.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Napredna računalniška grafika -# Ziga.Lesar@fri.uni-lj.si -# Windows, Build Tools for Visual Studio 2022 - -- include_tasks: visual_studio.yml diff --git a/roles/linroom/tasks/OBSS-63514.yml b/roles/linroom/tasks/OBSS-63514.yml deleted file mode 100644 index daaa24cb..00000000 --- a/roles/linroom/tasks/OBSS-63514.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Obdelava biomedicinskih signalov in slik -# Ziga.Pirnar@fri.uni-lj.si -# GNU/Linux, Matlab, wfdb -- include_tasks: matlab.yml -- include_tasks: wfdb.yml diff --git a/roles/linroom/tasks/ODV-63204.yml b/roles/linroom/tasks/ODV-63204.yml deleted file mode 100644 index 401665b0..00000000 --- a/roles/linroom/tasks/ODV-63204.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Osnove digitalnih vezij -# Ziga.Pusnik@fri.uni-lj.si, Miran.Koprivec@fri.uni-lj.si -# Windows, Logisim, Logisim Evolution -- include_tasks: logisim.yml diff --git a/roles/linroom/tasks/OO-63271.yml b/roles/linroom/tasks/OO-63271.yml deleted file mode 100644 index 50cdbdb1..00000000 --- a/roles/linroom/tasks/OO-63271.yml +++ /dev/null @@ -1,8 +0,0 @@ -# Osnove oblikovanja -# Blaz.Meden@fri.uni-lj.si, Narvika.Bovcon@fri.uni-lj.si -# Blender, Adobe paket (Illustrator, Photoshop, After Effects, Premiere), Processing (orodje za vizualno in interaktivno grafično programiranje), Inkscape (zastonjsko orodje za vektorsko risanje), GIMP (program za urejanje slik in rastrsko risanje) -- include_tasks: blender.yml -- include_tasks: adobe_cs.yml -- include_tasks: inkscape.yml -- include_tasks: gimp.yml - diff --git a/roles/linroom/tasks/OR-63717.yml b/roles/linroom/tasks/OR-63717.yml deleted file mode 100644 index 7bac823d..00000000 --- a/roles/linroom/tasks/OR-63717.yml +++ /dev/null @@ -1,9 +0,0 @@ -# Organizacija računalnikov -# Robert.Rozman@fri.uni-lj.si -# Windows, Logisim, Logisim Evolution, RAVINOR, CubeIDE + QEMU Embedded plugin -- include_tasks: logisim.yml -- include_tasks: stm32cube.yml -- include_tasks: ninja.yml -- include_tasks: cmake.yml -- include_tasks: gcc-arm.yml -# TODO: RAVINOR, CubeIDE diff --git a/roles/linroom/tasks/ORS-63218.yml b/roles/linroom/tasks/ORS-63218.yml deleted file mode 100644 index 525ca933..00000000 --- a/roles/linroom/tasks/ORS-63218.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Osnove Računalniških Sistemov -# Patricio.Bulic@fri.uni-lj.si -# - -- include_tasks: vscode.yml -- include_tasks: sifive.yml diff --git a/roles/linroom/tasks/OS-63709.yml b/roles/linroom/tasks/OS-63709.yml deleted file mode 100644 index 44edcd6f..00000000 --- a/roles/linroom/tasks/OS-63709.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Operacijski sistemi -# Borut.Batagelj@fri.uni-lj.si, Ziga.Emersic@fri.uni-lj.si, Bojan.Klemenc@fri.uni-lj.si, Matej.Vitek@fri.uni-lj.si -# VirtualBox -- include_tasks: virtualbox.yml diff --git a/roles/linroom/tasks/OS-63741.yml b/roles/linroom/tasks/OS-63741.yml deleted file mode 100644 index 9e56fad2..00000000 --- a/roles/linroom/tasks/OS-63741.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Odločitveni sistemi -# Martin.Mozina@fri.uni-lj.si -# Windows -- name: Odlocitveni sistemi - debug: - msg: "Odločitveni sistemi 63741 - brez zahtev" diff --git a/roles/linroom/tasks/OUI-63214.yml b/roles/linroom/tasks/OUI-63214.yml deleted file mode 100644 index 10db3209..00000000 --- a/roles/linroom/tasks/OUI-63214.yml +++ /dev/null @@ -1,7 +0,0 @@ -# Osnove umetne inteligence -# Jure.Zabkar@fri.uni-lj.si, Ales.Papic@fri.uni-lj.si, matej.piculin@fri.uni-lj.si, Marko.Zeman@fri.uni-lj.si, bojan.zunkovic@fri.uni-lj.si -# Orange, Weka 3, BayesFusion - -- include_tasks: orange.yml -- include_tasks: weka.yml -- include_tasks: bayesfusion.yml diff --git a/roles/linroom/tasks/P2-63278.yml b/roles/linroom/tasks/P2-63278.yml deleted file mode 100644 index 45b8e252..00000000 --- a/roles/linroom/tasks/P2-63278.yml +++ /dev/null @@ -1,8 +0,0 @@ -# Programiranje 2 -# bostjan.slivnik@fri.uni-lj.si -# gedit, vscode, pdf viewer (evince), gcc, g++, make, JDK - -- include_tasks: jdk.yml -- include_tasks: gedit.yml -- include_tasks: vscode.yml -- include_tasks: c_development.yml diff --git a/roles/linroom/tasks/P2-63706.yml b/roles/linroom/tasks/P2-63706.yml deleted file mode 100644 index f704f51b..00000000 --- a/roles/linroom/tasks/P2-63706.yml +++ /dev/null @@ -1,7 +0,0 @@ -# Programiranje 2 -# Tomaz.Dobravec@fri.uni-lj.si -# Windows, Java JDK, IntelliJ IDEA, Apache NetBeans - -- include_tasks: jdk.yml -- include_tasks: idea.yml -- include_tasks: netbeans.yml diff --git a/roles/linroom/tasks/PA-63737.yml b/roles/linroom/tasks/PA-63737.yml deleted file mode 100644 index 27258be6..00000000 --- a/roles/linroom/tasks/PA-63737.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Procesna avtomatika -# Nejc.Ilc@fri.uni-lj.si -# Windows, VMware Workstation 16.2.4 Player - -- include_tasks: vmware_player.yml diff --git a/roles/linroom/tasks/PB-63707.yml b/roles/linroom/tasks/PB-63707.yml deleted file mode 100644 index c1428396..00000000 --- a/roles/linroom/tasks/PB-63707.yml +++ /dev/null @@ -1,12 +0,0 @@ -# Podatkovne baze -# Ales.Jaklic@fri.uni-lj.si, matej.piculin@fri.uni-lj.si, Luka.Sajn@fri.uni-lj.si -# Windows, Power designer 12.5, Java JDK, Python 3, dotnet6 SDK, Jupyter Notebook, Eclipse, MySql Workbench, MySQL ODBC Connector, Notepad++ -- include_tasks: eclipse.yml -- include_tasks: dotnet6.yml -- include_tasks: jupyter.yml -- include_tasks: jdk.yml -- include_tasks: powerdesigner.yml -- include_tasks: pyodbc.yml -- include_tasks: mysql_workbench.yml -- include_tasks: mysql-odbc-connector.yml -- include_tasks: notepad++.yml diff --git a/roles/linroom/tasks/PB2-63713.yml b/roles/linroom/tasks/PB2-63713.yml deleted file mode 100644 index 4959d526..00000000 --- a/roles/linroom/tasks/PB2-63713.yml +++ /dev/null @@ -1,7 +0,0 @@ -# Podatkovne baze 2 -# Aljaz.Zrnec@fri.uni-lj.si -# Windows -# Podatkovne baze 2 -# Aljaz.Zrnec@fri.uni-lj.si -# Power designer 12.5 -- include_tasks: powerdesigner.yml diff --git a/roles/linroom/tasks/PJC-63769.yml b/roles/linroom/tasks/PJC-63769.yml deleted file mode 100644 index 3dd3ac53..00000000 --- a/roles/linroom/tasks/PJC-63769.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Programski jezik C -# Tomaz.Dobravec@fri.uni-lj.si -# Windows, Pelles C - -- include_tasks: pelles-c.yml diff --git a/roles/linroom/tasks/PPJ-63220.yml b/roles/linroom/tasks/PPJ-63220.yml deleted file mode 100644 index 19f2ee38..00000000 --- a/roles/linroom/tasks/PPJ-63220.yml +++ /dev/null @@ -1,11 +0,0 @@ -# Principi programskih jezikov -# Klemen.Klanjscek@fri.uni-lj.si -# Windows, GNU/Linux, VS Code, Ocaml, Eclipse, Haskell, SWI-Prolog, rlwrap - -- include_tasks: vscode.yml -- include_tasks: ocaml.yml -- include_tasks: eclipse.yml -- include_tasks: swi-prolog.yml -- include_tasks: rlwrap.yml -- include_tasks: utop.yml - diff --git a/roles/linroom/tasks/PS-63261.yml b/roles/linroom/tasks/PS-63261.yml deleted file mode 100644 index 4b01beba..00000000 --- a/roles/linroom/tasks/PS-63261.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Porazdeljeni sistemi -# Davor.Sluga@fri.uni-lj.si -# Windows, VS Code, golang -- include_tasks: vscode.yml -- include_tasks: golang.yml diff --git a/roles/linroom/tasks/PSP-63287.yml b/roles/linroom/tasks/PSP-63287.yml deleted file mode 100644 index 6e869179..00000000 --- a/roles/linroom/tasks/PSP-63287.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Programiranje specifičnih platform -# Veljko.Pejovic@fri.uni-lj.si -# Android Studio, Arduino IDE - -- include_tasks: android_studio.yml -- include_tasks: arduino.yml diff --git a/roles/linroom/tasks/PUI-63768.yml b/roles/linroom/tasks/PUI-63768.yml deleted file mode 100644 index be36b179..00000000 --- a/roles/linroom/tasks/PUI-63768.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Planiranje in upravljanje informatike -# damjan.fujs@fri.uni-lj.si -# Planiranje in upravljanje informatike (VS) -- include_tasks: projectlibre.yml diff --git a/roles/linroom/tasks/RA-63703.yml b/roles/linroom/tasks/RA-63703.yml deleted file mode 100644 index 9fd78454..00000000 --- a/roles/linroom/tasks/RA-63703.yml +++ /dev/null @@ -1,7 +0,0 @@ -# Računalniška arhitektura -# Ziga.Pusnik@fri.uni-lj.si, Rok.Cesnovar@fri.uni-lj.si, Robert.Rozman@fri.uni-lj.si, Mira.Trebar@fri.uni-lj.si -# Windows, RAVINOR, CubeIDE + QEMU Embedded plugin, WinIdea 9.21 + GCC + QEMU, WinIdea 9.12.256 (FRISMS kompatibilna), Visual2 - -- include_tasks: stm32cube.yml -- include_tasks: winidea.yml -- include_tasks: visual2.yml diff --git a/roles/linroom/tasks/RGTI-63269.yml b/roles/linroom/tasks/RGTI-63269.yml deleted file mode 100644 index 099919c9..00000000 --- a/roles/linroom/tasks/RGTI-63269.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Računalniška grafika in tehnologija iger -# Ziga.Lesar@fri.uni-lj.si -# Windows, Unity -- include_tasks: unity.yml diff --git a/roles/linroom/tasks/RIS-63252.yml b/roles/linroom/tasks/RIS-63252.yml deleted file mode 100644 index 698f7cea..00000000 --- a/roles/linroom/tasks/RIS-63252.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Razvoj informacijskih sistemov -# Aljaz.Zrnec@fri.uni-lj.si -# Power designer 12.5 -- include_tasks: powerdesigner.yml diff --git a/roles/linroom/tasks/RK-63209.yml b/roles/linroom/tasks/RK-63209.yml deleted file mode 100644 index fe7a9b82..00000000 --- a/roles/linroom/tasks/RK-63209.yml +++ /dev/null @@ -1,9 +0,0 @@ -# Računalniške komunikacije -# Ales.Jaklic@fri.uni-lj.si, Matjaz.Pancur@fri.uni-lj.si, Jure.Tuta@fri.uni-lj.si, Domen.Kosir@fri.uni-lj.si -# GNU/Linux, GNS3, Docker, VS Code, wireshark, Java JDK, Python 3 -- include_tasks: docker.yml -- include_tasks: gns3.yml -- include_tasks: vscode.yml -- include_tasks: wireshark.yml -- include_tasks: jdk.yml - diff --git a/roles/linroom/tasks/RK-63708.yml b/roles/linroom/tasks/RK-63708.yml deleted file mode 100644 index d03d8c0f..00000000 --- a/roles/linroom/tasks/RK-63708.yml +++ /dev/null @@ -1,9 +0,0 @@ -# Računalniške komunikacije -# Matjaz.Pancur@fri.uni-lj.si, Miha.Grohar@fri.uni-lj.si -# GNU/Linux, GNS3, Docker, VS Code, wireshark, Java JDK, Python 3 -- include_tasks: docker.yml -- include_tasks: gns3.yml -- include_tasks: vscode.yml -- include_tasks: wireshark.yml -- include_tasks: jdk.yml - diff --git a/roles/linroom/tasks/RPOI-90066.yml b/roles/linroom/tasks/RPOI-90066.yml deleted file mode 100644 index fc153334..00000000 --- a/roles/linroom/tasks/RPOI-90066.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Računalniška podpora oblikovanju I (ALUO) -# Matija.Marolt@fri.uni-lj.si -# SolidWorks -# Računalniška podpora oblikovanju I (ALUO) -# Matija.Marolt@fri.uni-lj.si -# SolidWorks diff --git a/roles/linroom/tasks/RZP-63523.yml b/roles/linroom/tasks/RZP-63523.yml deleted file mode 100644 index ecaf9412..00000000 --- a/roles/linroom/tasks/RZP-63523.yml +++ /dev/null @@ -1,7 +0,0 @@ -# Računalniška zvočna produkcija -# Aleks.Huc@fri.uni-lj.si -# IntelliJ IDEA, Audacity, GIT -- include_tasks: git.yml -- include_tasks: audacity.yml -- include_tasks: IDEA.yml - diff --git a/roles/linroom/tasks/SP-63255.yml b/roles/linroom/tasks/SP-63255.yml deleted file mode 100644 index f0a42a44..00000000 --- a/roles/linroom/tasks/SP-63255.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Spletno Programiranje -# dejan.lavbic@fri.uni-lj.si -# git, docker, Node.js + npm, Visual Studio Code -- include_tasks: git.yml -- include_tasks: docker.yml -- include_tasks: nodejs.yml diff --git a/roles/linroom/tasks/ST-63727.yml b/roles/linroom/tasks/ST-63727.yml deleted file mode 100644 index 5fa86f81..00000000 --- a/roles/linroom/tasks/ST-63727.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Spletne tehnologije -# David.Jelenc@fri.uni-lj.si -# Windows, VS Code, XAMPP -- include_tasks: vscode.yml -- include_tasks: xampp.yml diff --git a/roles/linroom/tasks/SU-63519.yml b/roles/linroom/tasks/SU-63519.yml deleted file mode 100644 index 8eb82b13..00000000 --- a/roles/linroom/tasks/SU-63519.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Strojno učenje -# matej.piculin@fri.uni-lj.si, Petar.Vracar@fri.uni-lj.si -# Windows, R, RStudio -- include_tasks: rstudio.yml diff --git a/roles/linroom/tasks/TINR-63740.yml b/roles/linroom/tasks/TINR-63740.yml deleted file mode 100644 index c8663a71..00000000 --- a/roles/linroom/tasks/TINR-63740.yml +++ /dev/null @@ -1,3 +0,0 @@ -# Tehnologija iger in navidezna resničnost -# Bojan.Klemenc@fri.uni-lj.si -# macOS, Xcode diff --git a/roles/linroom/tasks/TIS-63216.yml b/roles/linroom/tasks/TIS-63216.yml deleted file mode 100644 index 1b05a8ed..00000000 --- a/roles/linroom/tasks/TIS-63216.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Teorija informacij in sistemov -# Davor.Sluga@fri.uni-lj.si -# Windows, VS Code, Python 3 -- include_tasks: vscode.yml -- include_tasks: thonny.yml diff --git a/roles/linroom/tasks/TUP-63226.yml b/roles/linroom/tasks/TUP-63226.yml deleted file mode 100644 index 3239da9c..00000000 --- a/roles/linroom/tasks/TUP-63226.yml +++ /dev/null @@ -1,12 +0,0 @@ -# Tehnologija upravljanja podatkov -# Luka.Sajn@fri.uni-lj.si -# Windows, Power designer 12.5, Java JDK, Python 3, dotnet6 SDK, Jupyter Notebook, Eclipse, MySql Workbench, MySQL ODBC Connector, Notepad++ -- include_tasks: eclipse.yml -- include_tasks: dotnet6.yml -- include_tasks: jupyter.yml -- include_tasks: jdk.yml -- include_tasks: powerdesigner.yml -- include_tasks: mysql_workbench.yml -- include_tasks: mysql-odbc-connector.yml -- include_tasks: notepad++.yml - diff --git a/roles/linroom/tasks/UI-63720.yml b/roles/linroom/tasks/UI-63720.yml deleted file mode 100644 index 3019f307..00000000 --- a/roles/linroom/tasks/UI-63720.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Umetna inteligenca -# Petar.Vracar@fri.uni-lj.si -# Windows, R, RStudio -- include_tasks: rstudio.yml diff --git a/roles/linroom/tasks/UV-63721.yml b/roles/linroom/tasks/UV-63721.yml deleted file mode 100644 index 419849d6..00000000 --- a/roles/linroom/tasks/UV-63721.yml +++ /dev/null @@ -1,8 +0,0 @@ -# Uporabniški vmesniki -# Ales.Smrdel@fri.uni-lj.si -# Windows, GNU/Linux, Java JDK, IntelliJ IDEA, javafx, SceneBuilder, X11 development, Wayland development, gtk+ development, glade, python -- include_tasks: jdk.yml -- include_tasks: idea.yml -- include_tasks: javafx.yml -- include_tasks: gui_development.yml -- include_tasks: scenebuilder.yml diff --git a/roles/linroom/tasks/UZ-63267.yml b/roles/linroom/tasks/UZ-63267.yml deleted file mode 100644 index ee2c9847..00000000 --- a/roles/linroom/tasks/UZ-63267.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Umetno zaznavanje -# jon.muhovic@fe.uni-lj.si -# Python3, Python 3 -- include_tasks: python3.yml diff --git a/roles/linroom/tasks/VN-63728.yml b/roles/linroom/tasks/VN-63728.yml deleted file mode 100644 index 3fb8d446..00000000 --- a/roles/linroom/tasks/VN-63728.yml +++ /dev/null @@ -1,9 +0,0 @@ -# Vhodno-izhodne naprave -# Robert.Rozman@fri.uni-lj.si -# Windows, Logisim Evolution, RAVINOR, WinIdea 9.12.256 (FRISMS kompatibilna), LTSpice - -- include_tasks: logisim.yml -- include_tasks: winidea-frisms.yml -- include_tasks: winidea.yml -- include_tasks: ltspice.yml - diff --git a/roles/linroom/tasks/VP-63775.yml b/roles/linroom/tasks/VP-63775.yml deleted file mode 100644 index e7c34e31..00000000 --- a/roles/linroom/tasks/VP-63775.yml +++ /dev/null @@ -1,13 +0,0 @@ -# Varnost Podatkov -# david.jelenc@fri.uni-lj.si -# Python (in standardno pripadajoča šara jupyter lab) in IntelliJ IDEA PyCharm CE -# PyCharm -# Java (kar je bilo lani bo ok) in IntelliJ IDEA CE -# maven -# git -- include_tasks: git.yml -- include_tasks: maven.yml -- include_tasks: idea.yml -- include_tasks: jdk.yml -- include_tasks: jupyter.yml -- include_tasks: pycharm.yml diff --git a/roles/linroom/tasks/VPSA-63735.yml b/roles/linroom/tasks/VPSA-63735.yml deleted file mode 100644 index ba8d41d7..00000000 --- a/roles/linroom/tasks/VPSA-63735.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Vzporedni in porazdeljeni sistemi in algoritmi -# Davor.Sluga@fri.uni-lj.si, Rok.Cesnovar@fri.uni-lj.si -# Windows, VS Code, Build Tools for Visual Studio 2022 -- include_tasks: vscode.yml -- include_tasks: visual_studio.yml diff --git a/roles/linroom/tasks/VZR-63543.yml b/roles/linroom/tasks/VZR-63543.yml deleted file mode 100644 index d8474622..00000000 --- a/roles/linroom/tasks/VZR-63543.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Visoko zmogljivo računanje -# Davor.Sluga@fri.uni-lj.si -# Windows, VS Code -- include_tasks: vscode.yml diff --git a/roles/linroom/tasks/adobe_cs.yml b/roles/linroom/tasks/adobe_cs.yml deleted file mode 100644 index a033864b..00000000 --- a/roles/linroom/tasks/adobe_cs.yml +++ /dev/null @@ -1 +0,0 @@ -# TODO ugotovi, kaj narediti z Adobe CS diff --git a/roles/linroom/tasks/all_classes.yml b/roles/linroom/tasks/all_classes.yml deleted file mode 100644 index 1fee6d2b..00000000 --- a/roles/linroom/tasks/all_classes.yml +++ /dev/null @@ -1,60 +0,0 @@ -- import_tasks: AAHRP-63263.yml -- import_tasks: APS1-63279.yml -- import_tasks: ARP1-63545C.yml -- import_tasks: BMO-63259.yml -- import_tasks: DF-63530.yml -- import_tasks: DN-63260.yml -- import_tasks: DPS-63744.yml -- import_tasks: DV-63718.yml -- import_tasks: EP-63249.yml -- import_tasks: FP-63507.yml -- import_tasks: GO-63715.yml -- import_tasks: IS-63714.yml -- import_tasks: IVZ-63521.yml -- import_tasks: KCR-63550.yml -- import_tasks: KPOV-63716.yml -- import_tasks: KRV-63528.yml -- import_tasks: MRO-63257.yml -- import_tasks: MV-63288.yml -- import_tasks: NDN-63729.yml -- import_tasks: NM-63522.yml -- import_tasks: NPMP-63512.yml -- import_tasks: NRG-63553.yml -- import_tasks: OBSS-63514.yml -- import_tasks: ODV-63204.yml -- import_tasks: OO-63271.yml -- import_tasks: OR-63717.yml -- import_tasks: ORS-63218.yml -- import_tasks: OS-63709.yml -- import_tasks: OS-63741.yml -- import_tasks: OUI-63214.yml -- import_tasks: P2-63278.yml -- import_tasks: P2-63706.yml -- import_tasks: PA-63737.yml -- import_tasks: PB-63707.yml -- import_tasks: PB2-63713.yml -- import_tasks: PJC-63769.yml -- import_tasks: PPJ-63220.yml -- import_tasks: PS-63261.yml -- import_tasks: PSP-63287.yml -- import_tasks: PUI-63768.yml -- import_tasks: RA-63703.yml -- import_tasks: RGTI-63269.yml -- import_tasks: RIS-63252.yml -- import_tasks: RK-63209.yml -- import_tasks: RK-63708.yml -- import_tasks: RPOI-90066.yml -- import_tasks: RZP-63523.yml -- import_tasks: SP-63255.yml -- import_tasks: ST-63727.yml -- import_tasks: SU-63519.yml -- import_tasks: TINR-63740.yml -- import_tasks: TIS-63216.yml -- import_tasks: TUP-63226.yml -- import_tasks: UI-63720.yml -- import_tasks: UV-63721.yml -- import_tasks: UZ-63267.yml -- import_tasks: VN-63728.yml -- import_tasks: VP-63775.yml -- import_tasks: VPSA-63735.yml -- import_tasks: VZR-63543.yml diff --git a/roles/linroom/tasks/android_studio.yml b/roles/linroom/tasks/android_studio.yml deleted file mode 100644 index da7ceee1..00000000 --- a/roles/linroom/tasks/android_studio.yml +++ /dev/null @@ -1,13 +0,0 @@ -- name: Install Android Studio - block: - - name: Create destination for Android Studio - file: - path: /opt/Android_Studio - state: directory - - name: Download and unpack Android Studio - unarchive: - # src: https://redirector.gvt1.com/edgedl/android/studio/ide-zips/2021.3.1.16/android-studio-2021.3.1.16-linux.tar.gz - src: https://redirector.gvt1.com/edgedl/android/studio/ide-zips/2022.3.1.19/android-studio-2022.3.1.19-linux.tar.gz - creates: /opt/Android_Studio/android-studio/build.txt - dest: /opt/Android_Studio - remote_src: yes diff --git a/roles/linroom/tasks/arduino.yml b/roles/linroom/tasks/arduino.yml deleted file mode 100644 index 1a7c6f5b..00000000 --- a/roles/linroom/tasks/arduino.yml +++ /dev/null @@ -1,10 +0,0 @@ -- name: create destination - file: - path: /opt/Arduino - state: directory - -- name: unpack Arduino - unarchive: - src: https://downloads.arduino.cc/arduino-ide/arduino-ide_2.0.0_Linux_64bit.zip - dest: /opt/Arduino - remote_src: yes diff --git a/roles/linroom/tasks/audacity.yml b/roles/linroom/tasks/audacity.yml deleted file mode 100644 index 1481dd75..00000000 --- a/roles/linroom/tasks/audacity.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: Install Audacity - apt: - name: audacity - state: latest - diff --git a/roles/linroom/tasks/bayesfusion.yml b/roles/linroom/tasks/bayesfusion.yml deleted file mode 100644 index d6903b41..00000000 --- a/roles/linroom/tasks/bayesfusion.yml +++ /dev/null @@ -1,10 +0,0 @@ -# TODO install BayesFusion.yml -# https://download.bayesfusion.com/files.html?category=Academia#GeNIe -- name: Install Wine - apt: - name: wine-development - state: latest -- name: Install Wine binfmt support - apt: - name: wine-binfmt - state: latest diff --git a/roles/linroom/tasks/blender.yml b/roles/linroom/tasks/blender.yml deleted file mode 100644 index 7a3281e4..00000000 --- a/roles/linroom/tasks/blender.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install blender - apt: - name: blender - state: latest diff --git a/roles/linroom/tasks/c_development.yml b/roles/linroom/tasks/c_development.yml deleted file mode 100644 index b201e3da..00000000 --- a/roles/linroom/tasks/c_development.yml +++ /dev/null @@ -1,10 +0,0 @@ -- name: Install C/C++ development tools - apt: - name: - - gcc - - make - - automake - - g++ - - gdb - - cmake - state: latest diff --git a/roles/linroom/tasks/chrome.yml b/roles/linroom/tasks/chrome.yml deleted file mode 100644 index 21a141ab..00000000 --- a/roles/linroom/tasks/chrome.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Do NOT install Chrome - apt: - name: chromium - state: latest diff --git a/roles/linroom/tasks/cmake.yml b/roles/linroom/tasks/cmake.yml deleted file mode 100644 index 30bebe48..00000000 --- a/roles/linroom/tasks/cmake.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install cmake - apt: - name: cmake - state: latest diff --git a/roles/linroom/tasks/docker.yml b/roles/linroom/tasks/docker.yml deleted file mode 100644 index 7daef924..00000000 --- a/roles/linroom/tasks/docker.yml +++ /dev/null @@ -1,23 +0,0 @@ - -- name: "Install Podman" - apt: - name: podman - state: latest - -- name: "Install containerd" - apt: - name: containerd - state: latest - -- name: "Install docker" - apt: - name: docker - state: latest - -- name: "Install docker-compose" - apt: - name: docker-compose - state: latest - - -# TODO uredi skupine, da bodo studentje lahko docker tudi uporabljali diff --git a/roles/linroom/tasks/dotnet6.yml b/roles/linroom/tasks/dotnet6.yml deleted file mode 100644 index 08fc2da5..00000000 --- a/roles/linroom/tasks/dotnet6.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: "Install Dotnet 6.0" - apt: - name: dotnet6 - state: latest diff --git a/roles/linroom/tasks/eclipse.yml b/roles/linroom/tasks/eclipse.yml deleted file mode 100644 index 1bba73fe..00000000 --- a/roles/linroom/tasks/eclipse.yml +++ /dev/null @@ -1,16 +0,0 @@ -- name: Install Eclipse snap - community.general.snap: - name: - - eclipse - classic: true -# - name: Install Eclipse from tarball -# block: -# - name: Create destination for Eclipse -# file: -# path: /opt/Eclipse -# state: directory -# - name: Download and unpack Eclipse -# unarchive: -# src: https://www.eclipse.org/downloads/download.php?file=/oomph/epp/2022-09/R/eclipse-inst-jre-linux64.tar.gz -# dest: /opt/Eclipse -# remote_src: yes diff --git a/roles/linroom/tasks/emacs.yml b/roles/linroom/tasks/emacs.yml deleted file mode 100644 index ee13e14e..00000000 --- a/roles/linroom/tasks/emacs.yml +++ /dev/null @@ -1,14 +0,0 @@ -- name: Install emacs - apt: - name: emacs - state: latest - -- name: Install emacs-nox - apt: - name: emacs-nox - state: latest - -- name: Install emacs-gtk - apt: - name: emacs-gtk - state: latest diff --git a/roles/linroom/tasks/firefox.yml b/roles/linroom/tasks/firefox.yml deleted file mode 100644 index c80124aa..00000000 --- a/roles/linroom/tasks/firefox.yml +++ /dev/null @@ -1,22 +0,0 @@ -- name: Add Firefox not-a-snap repository - block: - - name: Pin Firefox PPA package priority - template: - src: mozilla-firefox-apt-preferences - dest: /etc/apt/preferences.d/mozilla-firefox - - name: Enable Firefox unattended upgrades - 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: - name: - - firefox - state: latest diff --git a/roles/linroom/tasks/fri_base.yml b/roles/linroom/tasks/fri_base.yml deleted file mode 100644 index 4c28da62..00000000 --- a/roles/linroom/tasks/fri_base.yml +++ /dev/null @@ -1,147 +0,0 @@ -- name: Install firefox - - include_tasks: firefox.yml - -- name: Install Libre Office - - include_tasks: libreoffice.yml - -- name: Install 7zip - - include_tasks: 7zip.yml - -- name: Install generally useful packages - apt: - name: - - build-essential - - chromium-browser - - cifs-utils - - curl - - emacs - - ffmpeg - - firefox - - gdb - - git - - inkscape - - ipcalc - - jq - - mpv - - ncat - - nethack-console - - nfs-common - - nmap - - overlayroot - - qemu - - qemu-utils - - qutebrowser - - rsync - - screen - - strace - - sway - - thonny - - tmux - - ttf-mscorefonts-installer - - vim - - vlc - - webext-ublock-origin-chromium - - webext-ublock-origin-firefox - - zsh - state: latest - update_cache: yes - -- name: Remove broken or unnecessary packages - apt: - name: - - xfce4-screensaver - - xscreensaver - state: absent - -- name: Set up additional groups for students - vars: - additional_groups: - - wireshark - - kvm - - dialout - - libvirt - - vboxusers - - ubridge - - docker - block: - - name: create user@.service.d - file: - path: /etc/systemd/system/user@.service.d - state: directory - - name: override groups in systemd - template: - src: systemd_group_override.conf - dest: /etc/systemd/system/user@.service.d/override.conf - - name: create /etc/security/group.conf - template: - src: security_group.conf - dest: /etc/security/group.conf - - name: create pam config for libpam_group - template: - src: pamconfig_groups - dest: /usr/share/pam-configs/groups - - name: enable libpam_group - shell: pam-auth-update --enable groups - -- name: Set default keyboard layout to SI - template: - src: default_keyboard - dest: /etc/default/keyboard - -- name: Add mount - C - mount: - boot: true - fstype: ntfs3 - src: UUID=A09E30889E30594C - path: /mnt/C - state: mounted - opts: defaults,nofail - -- name: Add mount - D - mount: - boot: true - fstype: ntfs3 - src: "LABEL=D:" - path: /mnt/D - state: mounted - opts: defaults,nofail - -- name: Add mount - F - mount: - boot: true - fstype: ntfs3 - src: "LABEL=F:" - path: /mnt/F - state: mounted - opts: defaults,nofail - -- name: Add mount - partimag - mount: - boot: true - fstype: nfs - src: "10.32.254.16:/srv/nfs/clonezilla_images" - path: /home/partimag - state: mounted - opts: defaults,nofail - -- name: Add mount - ucilnice_d - mount: - boot: true - fstype: cifs - src: "//ucilnicesmb.fri1.uni-lj.si/ucilnice_d" - path: /mnt/ucilnice_d - state: mounted - opts: guest,soft,nofail - -- name: Set time to local RTC - shell: "timedatectl set-local-rtc 1 --adjust-system-clock" - -- name: Install ethtool - apt: - name: ethtool - state: latest - -- name: Add udev rule to enable wake-on-lan for ethernet interfaces - copy: - dest: /etc/udev/rules.d/ - src: 99-wakeonlan.rules diff --git a/roles/linroom/tasks/gcc-arm.yml b/roles/linroom/tasks/gcc-arm.yml deleted file mode 100644 index fe8c316e..00000000 --- a/roles/linroom/tasks/gcc-arm.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: install GCC for ARM - apt: - name: gcc-12-arm-linux-gnueabi - state: latest diff --git a/roles/linroom/tasks/gedit.yml b/roles/linroom/tasks/gedit.yml deleted file mode 100644 index 7df70415..00000000 --- a/roles/linroom/tasks/gedit.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install Gedit - apt: - name: gedit - state: latest diff --git a/roles/linroom/tasks/gimp.yml b/roles/linroom/tasks/gimp.yml deleted file mode 100644 index 5461c3e0..00000000 --- a/roles/linroom/tasks/gimp.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install GIMP - apt: - name: gimp - state: latest diff --git a/roles/linroom/tasks/git.yml b/roles/linroom/tasks/git.yml deleted file mode 100644 index 5a5a1df0..00000000 --- a/roles/linroom/tasks/git.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install git - apt: - name: git - state: latest diff --git a/roles/linroom/tasks/gns3.yml b/roles/linroom/tasks/gns3.yml deleted file mode 100644 index df2807d8..00000000 --- a/roles/linroom/tasks/gns3.yml +++ /dev/null @@ -1,15 +0,0 @@ -- name: Add GNS3 repository - apt_repository: - repo: ppa:gns3/ppa - state: present - update_cache: True - validate_certs: False -- name: Install gns3 server - ansible.builtin.apt: - name: gns3-server - state: latest -- name: Install gns3 GUI - ansible.builtin.apt: - name: gns3-gui - state: latest - diff --git a/roles/linroom/tasks/golang.yml b/roles/linroom/tasks/golang.yml deleted file mode 100644 index e699dba0..00000000 --- a/roles/linroom/tasks/golang.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: Install the GO programming language - apt: - name: golang - state: latest - diff --git a/roles/linroom/tasks/gui_development.yml b/roles/linroom/tasks/gui_development.yml deleted file mode 100644 index a47bfc0d..00000000 --- a/roles/linroom/tasks/gui_development.yml +++ /dev/null @@ -1,35 +0,0 @@ -- name: Install X11 development - apt: - name: - - libx11-dev - - libxext-dev - - x11-utils - state: latest - -- name: Install GTK development - apt: - name: - - libgtk-4-dev - - libgtk-3-dev - - libgtkmm-3.0-dev - state: latest - -- name: Install Wayland development - apt: - name: - - libwayland-dev - - libwlroots-dev - - qt6-wayland-dev - - qt6-wayland-dev-tools - - weston - state: latest - -- name: Install Glade - apt: - name: glade - state: latest - -- name: Install QT Creator - apt: - name: qtcreator - state: latest diff --git a/roles/linroom/tasks/haskell.yml b/roles/linroom/tasks/haskell.yml deleted file mode 100644 index a5f48186..00000000 --- a/roles/linroom/tasks/haskell.yml +++ /dev/null @@ -1,14 +0,0 @@ -- name: install Haskell platform - apt: - name: haskell-platform - state: latest - -- name: install Haskell Tool Stack - apt: - name: haskell-stack - state: latest - -- name: install Haskell compiler - apt: - name: ghc - state: latest diff --git a/roles/linroom/tasks/htop.yml b/roles/linroom/tasks/htop.yml deleted file mode 100644 index e69de29b..00000000 diff --git a/roles/linroom/tasks/idea.yml b/roles/linroom/tasks/idea.yml deleted file mode 100644 index 89023cd8..00000000 --- a/roles/linroom/tasks/idea.yml +++ /dev/null @@ -1,12 +0,0 @@ -- name: Install IDEA - block: - - name: Create destination for JetBrains IDEA - file: - path: /opt/IDEA - state: directory - - name: Download and unpack JetBrains IDEA - unarchive: - src: https://download.jetbrains.com/idea/ideaIC-2023.2.1.tar.gz - dest: /opt/IDEA - creates: /opt/IDEA/idea-IC-232.9559.62/build.txt - remote_src: yes diff --git a/roles/linroom/tasks/inkscape.yml b/roles/linroom/tasks/inkscape.yml deleted file mode 100644 index bb5f7496..00000000 --- a/roles/linroom/tasks/inkscape.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install Inkscape - apt: - name: inkscape - state: latest diff --git a/roles/linroom/tasks/javafx.yml b/roles/linroom/tasks/javafx.yml deleted file mode 100644 index dd530f30..00000000 --- a/roles/linroom/tasks/javafx.yml +++ /dev/null @@ -1,8 +0,0 @@ -- name: Install JavaFX - apt: - name: openjfx - state: latest -- name: Install JavaFX source - apt: - name: openjfx-source - state: latest diff --git a/roles/linroom/tasks/jdk.yml b/roles/linroom/tasks/jdk.yml deleted file mode 100644 index c393c2fd..00000000 --- a/roles/linroom/tasks/jdk.yml +++ /dev/null @@ -1,32 +0,0 @@ -- name: Install OpenJDK 18 - apt: - name: openjdk-18-jdk - state: latest - -- name: Install OpenJDK 19 - apt: - name: openjdk-19-jdk - state: latest - -- name: Install OpenJDK 11 - apt: - name: openjdk-11-jdk - state: latest - -- name: Install default JDK - apt: - name: default-jdk - state: latest - - -- name: Install Oracle Java dependencies - apt: - name: - - libc6-i386 - - libc6-x32 - state: latest - -- name: Install Oracle JDK 20 - apt: - deb: "https://download.oracle.com/java/20/latest/jdk-20_linux-x64_bin.deb" - diff --git a/roles/linroom/tasks/jlink.yml b/roles/linroom/tasks/jlink.yml deleted file mode 100644 index 2d7cb3f8..00000000 --- a/roles/linroom/tasks/jlink.yml +++ /dev/null @@ -1,2 +0,0 @@ -apt: - deb: https://www.segger.com/downloads/jlink/JLink_Linux_x86_64.deb diff --git a/roles/linroom/tasks/julia.yml b/roles/linroom/tasks/julia.yml deleted file mode 100644 index 160dbfe0..00000000 --- a/roles/linroom/tasks/julia.yml +++ /dev/null @@ -1,12 +0,0 @@ -- name: Install Julia from tarball - block: - - name: Create destination for Julia - file: - path: /opt/Julia - state: directory - - name: Download and unpack Julia - unarchive: - src: https://julialang-s3.julialang.org/bin/linux/x64/1.10/julia-1.10.4-linux-x86_64.tar.gz - dest: /opt/Julia - remote_src: yes - diff --git a/roles/linroom/tasks/jupyter.yml b/roles/linroom/tasks/jupyter.yml deleted file mode 100644 index c0dc1edb..00000000 --- a/roles/linroom/tasks/jupyter.yml +++ /dev/null @@ -1,16 +0,0 @@ -- name: Install Jupyter - apt: - name: jupyter - state: latest -- name: Install Jupyter Console - apt: - name: jupyter-console - state: latest -- name: Install Jupyter QT Console - apt: - name: jupyter-qtconsole - state: latest -- name: Install Jupyter Notebook - apt: - name: jupyter-notebook - state: latest diff --git a/roles/linroom/tasks/libreoffice.yml b/roles/linroom/tasks/libreoffice.yml deleted file mode 100644 index c478e25e..00000000 --- a/roles/linroom/tasks/libreoffice.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install LibreOffice - apt: - name: libreoffice - state: latest diff --git a/roles/linroom/tasks/logisim.yml b/roles/linroom/tasks/logisim.yml deleted file mode 100644 index bb46c196..00000000 --- a/roles/linroom/tasks/logisim.yml +++ /dev/null @@ -1,12 +0,0 @@ -# TODO install logisim for linux -- name: Install Logisim - block: - - name: Create destination for Logisim - file: - path: /opt/logisim - state: directory - - name: Download and unpack Logisim - unarchive: - src: https://altushost-swe.dl.sourceforge.net/project/circuit/2.7.x/2.7.1/logisim-generic-2.7.1.jar - dest: /opt/logisim - remote_src: yes diff --git a/roles/linroom/tasks/ltspice.yml b/roles/linroom/tasks/ltspice.yml deleted file mode 100644 index dec3a3f8..00000000 --- a/roles/linroom/tasks/ltspice.yml +++ /dev/null @@ -1 +0,0 @@ -# TODO install LTSPice diff --git a/roles/linroom/tasks/main.yml b/roles/linroom/tasks/main.yml deleted file mode 100644 index e69de29b..00000000 diff --git a/roles/linroom/tasks/matlab.yml b/roles/linroom/tasks/matlab.yml deleted file mode 100644 index 13a29e32..00000000 --- a/roles/linroom/tasks/matlab.yml +++ /dev/null @@ -1,6 +0,0 @@ -# TODO: usposobi install Matlaba na D: -# TODO: zamenjaj podvojene datoteke s symlinki -- name: Matlab - debug: - msg: "Matlab" - diff --git a/roles/linroom/tasks/maven.yml b/roles/linroom/tasks/maven.yml deleted file mode 100644 index cff5d45f..00000000 --- a/roles/linroom/tasks/maven.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install maven - apt: - name: maven - state: latest diff --git a/roles/linroom/tasks/minecraft-education.yml b/roles/linroom/tasks/minecraft-education.yml deleted file mode 100644 index ced1d4b8..00000000 --- a/roles/linroom/tasks/minecraft-education.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Do not install Minecraft - debug: - msg: "Do not install Minecraft" diff --git a/roles/linroom/tasks/msys2.yml b/roles/linroom/tasks/msys2.yml deleted file mode 100644 index e387d21d..00000000 --- a/roles/linroom/tasks/msys2.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Do not install Msys2 - debug: - msg: "Do not install Msys2" diff --git a/roles/linroom/tasks/mysql-odbc-connector.yml b/roles/linroom/tasks/mysql-odbc-connector.yml deleted file mode 100644 index ec89cef5..00000000 --- a/roles/linroom/tasks/mysql-odbc-connector.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: Install MariaDB ODBC connector - apt: - name: odbc-mariadb - state: latest - diff --git a/roles/linroom/tasks/mysql_workbench.yml b/roles/linroom/tasks/mysql_workbench.yml deleted file mode 100644 index 8290fa64..00000000 --- a/roles/linroom/tasks/mysql_workbench.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Install mysql workbench - apt: - deb: https://dev.mysql.com/get/Downloads/MySQLGUITools/mysql-workbench-community_8.0.34-1ubuntu22.04_amd64.deb diff --git a/roles/linroom/tasks/netbeans.yml b/roles/linroom/tasks/netbeans.yml deleted file mode 100644 index 91184a4d..00000000 --- a/roles/linroom/tasks/netbeans.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Install NetBeans from .deb - apt: - deb: https://github.com/codelerity/netbeans-installers/releases/download/v19-build1/apache-netbeans_19-1_amd64.deb diff --git a/roles/linroom/tasks/ninja.yml b/roles/linroom/tasks/ninja.yml deleted file mode 100644 index aa207cb7..00000000 --- a/roles/linroom/tasks/ninja.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install Ninja - apt: - name: ninja-build - state: latest diff --git a/roles/linroom/tasks/nodejs.yml b/roles/linroom/tasks/nodejs.yml deleted file mode 100644 index f94b808a..00000000 --- a/roles/linroom/tasks/nodejs.yml +++ /dev/null @@ -1,14 +0,0 @@ -- name: Add NodeJS repo key - apt_key: - url: https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key - keyring: /etc/apt/keyrings/nodesource.gpg - -- name: Add NodeJS repo url - apt_repository: - repo: "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_20.x nodistro main" - -- name: Install NodeJS - apt: - name: nodejs - state: latest - diff --git a/roles/linroom/tasks/notepad++.yml b/roles/linroom/tasks/notepad++.yml deleted file mode 100644 index b45c1a2a..00000000 --- a/roles/linroom/tasks/notepad++.yml +++ /dev/null @@ -1,18 +0,0 @@ -# TODO install Notepad++ -# ansible_os_family: "Windows" / "Debian" -- name: Install notepad++ - debug: - msg: "Install Notepad++" -- name: Install Wine - apt: - name: wine-development - state: latest -- name: Install Wine binfmt support - apt: - name: wine-binfmt - state: latest -- name: Download and unpack Notepad++ - unarchive: - src: https://github.com/notepad-plus-plus/notepad-plus-plus/releases/download/v8.5.7/npp.8.5.7.portable.x64.7z - dest: /opt/notepad++ - remote_src: yes diff --git a/roles/linroom/tasks/ocaml.yml b/roles/linroom/tasks/ocaml.yml deleted file mode 100644 index 66959092..00000000 --- a/roles/linroom/tasks/ocaml.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install Ocaml - apt: - name: ocaml - state: latest diff --git a/roles/linroom/tasks/octave.yml b/roles/linroom/tasks/octave.yml deleted file mode 100644 index 0c6f8d05..00000000 --- a/roles/linroom/tasks/octave.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install Octave - apt: - name: octave - state: latest diff --git a/roles/linroom/tasks/omnetpp.yml b/roles/linroom/tasks/omnetpp.yml deleted file mode 100644 index c65404db..00000000 --- a/roles/linroom/tasks/omnetpp.yml +++ /dev/null @@ -1,24 +0,0 @@ -- name: Install OMNet++ - block: - - name: Create destination for Omnet++ - file: - path: /opt/omnetpp - state: directory - - name: Download and unpack Omnet++ - unarchive: - src: https://github.com/omnetpp/omnetpp/releases/download/omnetpp-6.0.1/omnetpp-6.0.1-linux-x86_64.tgz - dest: /opt/omnetpp - remote_src: yes - -# TODO install inet system-wide -- name: Install INET Framework - block: - - name: Create destination for INET Framework - file: - path: /opt/omnetpp-inet - state: directory - - name: Download and unpack INET Framework - unarchive: - src: https://github.com/inet-framework/inet/releases/download/v4.4.1/inet-4.4.1-src.tgz - dest: /opt/omnetpp-inet - remote_src: yes diff --git a/roles/linroom/tasks/openssl.yml b/roles/linroom/tasks/openssl.yml deleted file mode 100644 index c2de789b..00000000 --- a/roles/linroom/tasks/openssl.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install OpenSSL - apt: - name: openssl - state: latest diff --git a/roles/linroom/tasks/orange.yml b/roles/linroom/tasks/orange.yml deleted file mode 100644 index 1ffba8a6..00000000 --- a/roles/linroom/tasks/orange.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install orange - pip: - executable: pip3 - name: orange3 diff --git a/roles/linroom/tasks/pandas.yml b/roles/linroom/tasks/pandas.yml deleted file mode 100644 index 9c260954..00000000 --- a/roles/linroom/tasks/pandas.yml +++ /dev/null @@ -1,7 +0,0 @@ -- name: Install python3-pandas - apt: - name: - - python3-pandas - - python3-sklearn-pandas - state: latest - diff --git a/roles/linroom/tasks/pelles-c.yml b/roles/linroom/tasks/pelles-c.yml deleted file mode 100644 index 15f1a9c0..00000000 --- a/roles/linroom/tasks/pelles-c.yml +++ /dev/null @@ -1,12 +0,0 @@ -# TODO install Pelles -- name: Install Pelles - debug: - msg: "Install Pelles-C" -- name: Install Wine - apt: - name: wine-development - state: latest -- name: Install Wine binfmt support - apt: - name: wine-binfmt - state: latest diff --git a/roles/linroom/tasks/powerdesigner.yml b/roles/linroom/tasks/powerdesigner.yml deleted file mode 100644 index 4f8cb091..00000000 --- a/roles/linroom/tasks/powerdesigner.yml +++ /dev/null @@ -1,12 +0,0 @@ -# TODO install PowerDesigner -- name: PowerDesigner - debug: - msg: "Install PowerDesigner" -- name: Install Wine - apt: - name: wine-development - state: latest -- name: Install Wine binfmt support - apt: - name: wine-binfmt - state: latest diff --git a/roles/linroom/tasks/processing.yml b/roles/linroom/tasks/processing.yml deleted file mode 100644 index 7ef2847b..00000000 --- a/roles/linroom/tasks/processing.yml +++ /dev/null @@ -1,12 +0,0 @@ -- name: Install Processing - block: - - name: Create destination for Processing - file: - path: /opt/processing - state: directory - - name: Download and unpack processing - unarchive: - src: https://github.com/processing/processing4/releases/download/processing-1286-4.0.1/processing-4.0.1-linux-x64.tgz - dest: /opt/processing - remote_src: yes - diff --git a/roles/linroom/tasks/projectlibre.yml b/roles/linroom/tasks/projectlibre.yml deleted file mode 100644 index 518d2092..00000000 --- a/roles/linroom/tasks/projectlibre.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Install projectlibre - apt: - deb: https://downloads.sourceforge.net/project/projectlibre/ProjectLibre/1.9.3/projectlibre_1.9.3-1.deb diff --git a/roles/linroom/tasks/pycharm.yml b/roles/linroom/tasks/pycharm.yml deleted file mode 100644 index b85c36b8..00000000 --- a/roles/linroom/tasks/pycharm.yml +++ /dev/null @@ -1,12 +0,0 @@ -- name: Install PyCharm - block: - - name: Create destination for JetBrains PyCharm - file: - path: /opt/PyCharm - state: directory - - name: Download and unpack JetBrains PyCharm - unarchive: - src: https://download.jetbrains.com/python/pycharm-community-2023.2.1.tar.gz - dest: /opt/PyCharm - creates: /opt/PyCharm/pycharm-community-2023.2.1/build.txt - remote_src: yes diff --git a/roles/linroom/tasks/pyodbc.yml b/roles/linroom/tasks/pyodbc.yml deleted file mode 100644 index 117bfabb..00000000 --- a/roles/linroom/tasks/pyodbc.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install pyodbc - apt: - name: python3-pyodbc - state: latest diff --git a/roles/linroom/tasks/python3.yml b/roles/linroom/tasks/python3.yml deleted file mode 100644 index 56ce94f2..00000000 --- a/roles/linroom/tasks/python3.yml +++ /dev/null @@ -1,10 +0,0 @@ -- name: Install python3 - apt: - name: python3 - state: latest - -- name: Install ipython - apt: - name: python3-ipython - state: latest - diff --git a/roles/linroom/tasks/pytorch.yml b/roles/linroom/tasks/pytorch.yml deleted file mode 100644 index 992b04e0..00000000 --- a/roles/linroom/tasks/pytorch.yml +++ /dev/null @@ -1,8 +0,0 @@ -- name: Install pytorch - apt: - name: - - python3-torch - - python3-skorch - - python3-torch-ignite - state: latest - diff --git a/roles/linroom/tasks/qcadesigner-e.yml b/roles/linroom/tasks/qcadesigner-e.yml deleted file mode 100644 index dd955bc7..00000000 --- a/roles/linroom/tasks/qcadesigner-e.yml +++ /dev/null @@ -1,30 +0,0 @@ -- name: Install QCADesigner-E build deps - block: - - name: Install automake - apt: - name: automake - state: latest - - name: Install automake - apt: - name: libgtk2.0-dev - state: latest -- name: Create QCADesigner-E destination - file: - path: /opt/QCADesigner-E - state: directory -- name: Clone QCADesigner-E repo - # - ansible.builtin.git: - repo: https://github.com/FSillT/QCADesigner-E - force: yes - dest: /opt/QCADesigner-E -- name: Build QCADesigner-E - shell: - cmd: cd /opt/QCADesigner-E/QCADesignerE && chmod +x ./configure && ./configure && make -- name: Create QCADesigner-e symlink - file: - src: /opt/QCADesigner-E/QCADesignerE/src/QCADesigner - dest: /usr/local/bin/QCADesigner - state: link -# TODO create .desktop file - diff --git a/roles/linroom/tasks/racket.yml b/roles/linroom/tasks/racket.yml deleted file mode 100644 index a2ec494a..00000000 --- a/roles/linroom/tasks/racket.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: Install racket - apt: - name: racket - state: latest - diff --git a/roles/linroom/tasks/rlwrap.yml b/roles/linroom/tasks/rlwrap.yml deleted file mode 100644 index f8433508..00000000 --- a/roles/linroom/tasks/rlwrap.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install rlwrap - apt: - name: rlwrap - state: latest diff --git a/roles/linroom/tasks/rstudio.yml b/roles/linroom/tasks/rstudio.yml deleted file mode 100644 index a21785b6..00000000 --- a/roles/linroom/tasks/rstudio.yml +++ /dev/null @@ -1,14 +0,0 @@ -- 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 - state: latest diff --git a/roles/linroom/tasks/sagemath.yml b/roles/linroom/tasks/sagemath.yml deleted file mode 100644 index f7607d83..00000000 --- a/roles/linroom/tasks/sagemath.yml +++ /dev/null @@ -1,10 +0,0 @@ -# # SageMath se se prevede za Ubutnu 24.04: https://github.com/sagemath/sage/issues/38051#issuecomment-2123452861 -# - name: Install SageMath -# apt: -# name: sagemath -# state: latest - -# - name: Install SageMath - Jupyter -# apt: -# name: sagemath-jupyter -# state: latest diff --git a/roles/linroom/tasks/scenebuilder.yml b/roles/linroom/tasks/scenebuilder.yml deleted file mode 100644 index 861edcda..00000000 --- a/roles/linroom/tasks/scenebuilder.yml +++ /dev/null @@ -1 +0,0 @@ -# TODO install SceneBuilder diff --git a/roles/linroom/tasks/scipy.yml b/roles/linroom/tasks/scipy.yml deleted file mode 100644 index df18069f..00000000 --- a/roles/linroom/tasks/scipy.yml +++ /dev/null @@ -1,7 +0,0 @@ -- name: Install python3-scipy, scikit-learn - apt: - name: - - python3-scipy - - python3-sklearn - state: latest - diff --git a/roles/linroom/tasks/settings.yml b/roles/linroom/tasks/settings.yml deleted file mode 100644 index c648b581..00000000 --- a/roles/linroom/tasks/settings.yml +++ /dev/null @@ -1,8 +0,0 @@ -- name: Install ethtool - apt: - name: ethtool - -- name: Add udev rule to enable wake-on-lan for ethernet interfaces - copy: - dest: /etc/udev/rules.d/ - src: 99-wakeonlan.rules diff --git a/roles/linroom/tasks/sifive.yml b/roles/linroom/tasks/sifive.yml deleted file mode 100644 index 0a887bdd..00000000 --- a/roles/linroom/tasks/sifive.yml +++ /dev/null @@ -1,4 +0,0 @@ -# SiFive je bil nekoc prosto dostopen. -# Sedaj hocejo, da se registriras... da prides do kode -# Potem pa ti ne dajo izvorne kode. -# ucilnice_install/2022-23/ORS_VGRS_Bulic diff --git a/roles/linroom/tasks/smlnj.yml b/roles/linroom/tasks/smlnj.yml deleted file mode 100644 index 04e9ce06..00000000 --- a/roles/linroom/tasks/smlnj.yml +++ /dev/null @@ -1,18 +0,0 @@ -- name: Install SML/NJ - apt: - name: smlnj - state: latest -- name: Install SML/NJ - apt: - name: smlnj - state: latest -- name: Install Emacs extension for SML - apt: - name: elpa-sml-mode - state: latest - -# - name: Readline for SML -# lineinfile: -# dest: "$HOME/.bashrc" -# line: "alias smlnj='rlwrap sml'" -# insertafter: EOF diff --git a/roles/linroom/tasks/statsmodels.yml b/roles/linroom/tasks/statsmodels.yml deleted file mode 100644 index ff72e374..00000000 --- a/roles/linroom/tasks/statsmodels.yml +++ /dev/null @@ -1,6 +0,0 @@ -- name: Install statsmodels - apt: - name: - - python3-statsmodels - state: latest - diff --git a/roles/linroom/tasks/stm32cube.yml b/roles/linroom/tasks/stm32cube.yml deleted file mode 100644 index 05a9768b..00000000 --- a/roles/linroom/tasks/stm32cube.yml +++ /dev/null @@ -1,3 +0,0 @@ -# TODO download stm32; deb install -# https://www.st.com/en/development-tools/stm32cubeide.html#get-software - diff --git a/roles/linroom/tasks/sublime-text.yml b/roles/linroom/tasks/sublime-text.yml deleted file mode 100644 index f7dd75b8..00000000 --- a/roles/linroom/tasks/sublime-text.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Do not install Sublime - debug: - msg: "Do not install Sublime" diff --git a/roles/linroom/tasks/sumatrapdf.yml b/roles/linroom/tasks/sumatrapdf.yml deleted file mode 100644 index 6359ff15..00000000 --- a/roles/linroom/tasks/sumatrapdf.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Do not install SumatraPDF - debug: - msg: "Do not install SumatraPDF" diff --git a/roles/linroom/tasks/swi-prolog.yml b/roles/linroom/tasks/swi-prolog.yml deleted file mode 100644 index f1357e4d..00000000 --- a/roles/linroom/tasks/swi-prolog.yml +++ /dev/null @@ -1,8 +0,0 @@ -- name: Install SWI-Prolog - apt: - name: swi-prolog - state: latest -- name: Install SWI-Prolog - X support - apt: - name: swi-prolog-x - state: latest diff --git a/roles/linroom/tasks/tensorflow.yml b/roles/linroom/tasks/tensorflow.yml deleted file mode 100644 index e7cb9071..00000000 --- a/roles/linroom/tasks/tensorflow.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install tensorflow - pip: - executable: pip3 - name: tensorflow diff --git a/roles/linroom/tasks/thonny.yml b/roles/linroom/tasks/thonny.yml deleted file mode 100644 index 769384bc..00000000 --- a/roles/linroom/tasks/thonny.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install cmake - apt: - name: thonny - state: latest diff --git a/roles/linroom/tasks/unity.yml b/roles/linroom/tasks/unity.yml deleted file mode 100644 index c13b36c4..00000000 --- a/roles/linroom/tasks/unity.yml +++ /dev/null @@ -1,12 +0,0 @@ -# TODO install Unity -- name: PowerDesigner - debug: - msg: "Unity" -- name: Install Wine - apt: - name: wine-development - state: latest -- name: Install Wine binfmt support - apt: - name: wine-binfmt - state: latest diff --git a/roles/linroom/tasks/utop.yml b/roles/linroom/tasks/utop.yml deleted file mode 100644 index 38e38d2a..00000000 --- a/roles/linroom/tasks/utop.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install utop - apt: - name: utop - state: latest diff --git a/roles/linroom/tasks/virtualbox.yml b/roles/linroom/tasks/virtualbox.yml deleted file mode 100644 index 4ee58e40..00000000 --- a/roles/linroom/tasks/virtualbox.yml +++ /dev/null @@ -1,12 +0,0 @@ -- name: "Install VirtualBox" - apt: - name: virtualbox - state: latest -- name: "Install VirtualBox GUI" - apt: - name: virtualbox-qt - state: latest -- name: "Install VirtualBox kernel module" - apt: - name: virtualbox-dkms - state: latest diff --git a/roles/linroom/tasks/visual2.yml b/roles/linroom/tasks/visual2.yml deleted file mode 100644 index d2d8620c..00000000 --- a/roles/linroom/tasks/visual2.yml +++ /dev/null @@ -1,13 +0,0 @@ -# TODO install PowerDesigner -- name: Install VisUAL2 - debug: - msg: "Install Visual2" -- name: Create dest dir - file: - path: /opt/VisUAL2 - state: directory -- name: Install AppImage - get_url: - url: https://github.com/scc416/Visual2/releases/download/1.7.0/VisUAL2.1.7.0.AppImage - dest: /opt/VisUAL2/VisUAL2.1.7.0.AppImage - mode: 'u=rwx,g=rx,o=rx' diff --git a/roles/linroom/tasks/visual_studio.yml b/roles/linroom/tasks/visual_studio.yml deleted file mode 100644 index b62bc896..00000000 --- a/roles/linroom/tasks/visual_studio.yml +++ /dev/null @@ -1,2 +0,0 @@ -# TODO kako namestiti Visual Studio + build tools -# diff --git a/roles/linroom/tasks/vivado.yml b/roles/linroom/tasks/vivado.yml deleted file mode 100644 index 64a9d545..00000000 --- a/roles/linroom/tasks/vivado.yml +++ /dev/null @@ -1,5 +0,0 @@ -# TODO pripravi install Vivado -# https://www.xilinx.com/member/forms/download/xef.html?filename=Xilinx_Unified_2022.1_0420_0327_Lin64.bin -- name: Install Vivado - debug: - msg: "Install Vivado, rodistvori dodatnih 70+G diska na računalnik" diff --git a/roles/linroom/tasks/vlc.yml b/roles/linroom/tasks/vlc.yml deleted file mode 100644 index 58c2b91f..00000000 --- a/roles/linroom/tasks/vlc.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install VLC - apt: - name: vlc - state: latest diff --git a/roles/linroom/tasks/vscode.yml b/roles/linroom/tasks/vscode.yml deleted file mode 100644 index 08ae21dd..00000000 --- a/roles/linroom/tasks/vscode.yml +++ /dev/null @@ -1,21 +0,0 @@ -- name: Add VS repo key - apt_key: - url: https://packages.microsoft.com/keys/microsoft.asc - keyring: /etc/apt/trusted.gpg.d/microsoft.gpg - -- name: Add VS repo url - apt_repository: - repo: "deb https://packages.microsoft.com/repos/vscode stable main" - -- name: Install VSCode - apt: - name: code - state: latest - -- name: Include VS code extension list - include_vars: vscode_extensions.yml - -- name: Install VS Code extensions - command: code --no-sandbox --user-data-dir "/usr/share/code/resources/app" --extensions-dir "/usr/share/code/resources/app/extensions" --install-extension "{{ item }}" - loop: "{{VSCode_Extensions}}" - notify: fix VS code extensions diff --git a/roles/linroom/tasks/vscode_extensions.yml b/roles/linroom/tasks/vscode_extensions.yml deleted file mode 100644 index be886a8c..00000000 --- a/roles/linroom/tasks/vscode_extensions.yml +++ /dev/null @@ -1,17 +0,0 @@ -VSCode_Extensions: - - VisualStudioExptTeam.vscodeintellicode - - AmauryRabouan.new-vsc-prolog - - eamodio.gitlens - - ms-dotnettools.csdevkit # IS-63714 - - ms-python.python - - ms-vscode.cpptools - - ocamllabs.ocaml-platform - - stonebuddha.vscode-better-sml - - vscode-icons-team.vscode-icons - - vscjava.vscode-java-pack - - dan-c-underwood.arm # RA-63703 - - marus25.cortex-debug # RA-63703 - - NateAGeek.memory-viewer # RA-63703 - - ms-vscode.cpptools-extension-pack # RA-63703 - - platformio.platformio-ide # ORS-63218 - - stmicroelectronics.stm32-vscode-extension # RA-63703 diff --git a/roles/linroom/tasks/weka.yml b/roles/linroom/tasks/weka.yml deleted file mode 100644 index ff4a71ab..00000000 --- a/roles/linroom/tasks/weka.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install Weka 3.6+ - apt: - name: weka - state: latest diff --git a/roles/linroom/tasks/wfdb.yml b/roles/linroom/tasks/wfdb.yml deleted file mode 100644 index 3235389c..00000000 --- a/roles/linroom/tasks/wfdb.yml +++ /dev/null @@ -1,27 +0,0 @@ -# Dobi se jo na: https://www.physionet.org/content/wfdb/10.7.0/ 1. razpakiraj arhiv 2. pojdi v direktorij. 3. poženi .-configure lahko z dodatnimi parametri glede na željeno lokacijo knjižnice 4. poženi make 5. poženi sudo make install -- name: Install libFLAC - apt: - name: libflac-dev - state: latest -- name: Install libcurl - apt: - name: libcurl4-openssl-dev -- name: Install GCC - apt: - name: gcc -- name: Install make - apt: - name: make -- name: Create WFDB destination - file: - path: /opt/wfdb - state: directory -- name: Download WFDB - unarchive: - src: https://www.physionet.org/physiotools/archives/wfdb-10.7/wfdb-10.7.0.tar.gz - dest: /opt/wfdb - creates: /opt/wfdb/wfdb-10.7.0/README - remote_src: yes -- name: Build and install WFDB - shell: - cmd: cd /opt/wfdb/wfdb-10.7.0 && ./configure && make && make install diff --git a/roles/linroom/tasks/winidea-frisms.yml b/roles/linroom/tasks/winidea-frisms.yml deleted file mode 100644 index f4d43128..00000000 --- a/roles/linroom/tasks/winidea-frisms.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Do not install WinIdea for FRISMS - debug: - msg: "Do not install WinIdea for FRISMS" diff --git a/roles/linroom/tasks/winidea.yml b/roles/linroom/tasks/winidea.yml deleted file mode 100644 index 543373a7..00000000 --- a/roles/linroom/tasks/winidea.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: Install WinIdea snap - community.general.snap: - name: - - winidea - classic: true diff --git a/roles/linroom/tasks/wireshark.yml b/roles/linroom/tasks/wireshark.yml deleted file mode 100644 index fe4e91c4..00000000 --- a/roles/linroom/tasks/wireshark.yml +++ /dev/null @@ -1,10 +0,0 @@ -- name: Enable non-privileged users to run wireshark - ansible.builtin.debconf: - name: wireshark - question: wireshark-common/install-setuid - value: true - vtype: boolean -- name: "Install Wireshark" - apt: - name: wireshark-qt - state: latest diff --git a/roles/linroom/tasks/xampp.yml b/roles/linroom/tasks/xampp.yml deleted file mode 100644 index 4a7facfc..00000000 --- a/roles/linroom/tasks/xampp.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Install XAMPP - debug: - msg: Namesto XAMPP bi verjetno LAMP? diff --git a/roles/linroom/tasks/xgboost.yml b/roles/linroom/tasks/xgboost.yml deleted file mode 100644 index 7046677c..00000000 --- a/roles/linroom/tasks/xgboost.yml +++ /dev/null @@ -1,7 +0,0 @@ -- name: Install xgboost - apt: - name: - - xgboost - - python3-xgboost - state: latest - diff --git a/roles/linroom/templates/default_keyboard b/roles/linroom/templates/default_keyboard deleted file mode 100644 index 7477e81f..00000000 --- a/roles/linroom/templates/default_keyboard +++ /dev/null @@ -1,10 +0,0 @@ -# KEYBOARD CONFIGURATION FILE - -# Consult the keyboard(5) manual page. - -XKBMODEL="pc105" -XKBLAYOUT="si" -XKBVARIANT="" -XKBOPTIONS="" - -BACKSPACE="guess" diff --git a/roles/linroom/templates/mozilla-firefox-apt-preferences b/roles/linroom/templates/mozilla-firefox-apt-preferences deleted file mode 100644 index f8540444..00000000 --- a/roles/linroom/templates/mozilla-firefox-apt-preferences +++ /dev/null @@ -1,3 +0,0 @@ -Package: * -Pin: release o=LP-PPA-mozillateam -Pin-Priority: 1001 diff --git a/roles/linroom/templates/mozilla-firefox-unattended-upgrades b/roles/linroom/templates/mozilla-firefox-unattended-upgrades deleted file mode 100644 index 358d8334..00000000 --- a/roles/linroom/templates/mozilla-firefox-unattended-upgrades +++ /dev/null @@ -1 +0,0 @@ -Unattended-Upgrade::Allowed-Origins:: "LP-PPA-mozillateam:${distro_codename}"; diff --git a/roles/linroom/templates/pamconfig_groups b/roles/linroom/templates/pamconfig_groups deleted file mode 100644 index ebde502c..00000000 --- a/roles/linroom/templates/pamconfig_groups +++ /dev/null @@ -1,6 +0,0 @@ -Name: Additional group management through /etc/security/groups.conf -Default: yes -Priority: 0 -Auth-Type: Additional -Auth-Final: - optional pam_group.so diff --git a/roles/linroom/templates/security_group.conf b/roles/linroom/templates/security_group.conf deleted file mode 100644 index 0568a163..00000000 --- a/roles/linroom/templates/security_group.conf +++ /dev/null @@ -1,108 +0,0 @@ -# -# This is the configuration file for the pam_group module. -# - -# -# *** Please note that giving group membership on a session basis is -# *** NOT inherently secure. If a user can create an executable that -# *** is setgid a group that they are infrequently given membership -# *** of, they can basically obtain group membership any time they -# *** like. Example: games are allowed between the hours of 6pm and 6am -# *** user joe logs in at 7pm writes a small C-program toplay.c that -# *** invokes their favorite shell, compiles it and does -# *** "chgrp play toplay; chmod g+s toplay". They are basically able -# *** to play games any time... You have been warned. AGM -# - -*;*;*;Al0000-2400;{{ additional_groups|join(',') }} - -# -# The syntax of the lines is as follows: -# -# services;ttys;users;times;groups -# -# white space is ignored and lines maybe extended with '\\n' (escaped -# newlines). From reading these comments, it is clear that -# text following a '#' is ignored to the end of the line. -# -# the combination of individual users/terminals etc is a logic list -# namely individual tokens that are optionally prefixed with '!' (logical -# not) and separated with '&' (logical and) and '|' (logical or). -# -# services -# is a logic list of PAM service names that the rule applies to. -# -# ttys -# is a logic list of terminal names that this rule applies to. -# -# users -# is a logic list of users or a netgroup of users to whom this -# rule applies. -# -# NB. For these items the simple wildcard '*' may be used only once. -# With netgroups no wildcards or logic operators are allowed. -# -# times -# It is used to indicate "when" these groups are to be given to the -# user. The format here is a logic list of day/time-range -# entries the days are specified by a sequence of two character -# entries, MoTuSa for example is Monday Tuesday and Saturday. Note -# that repeated days are unset MoMo = no day, and MoWk = all weekdays -# bar Monday. The two character combinations accepted are -# -# Mo Tu We Th Fr Sa Su Wk Wd Al -# -# the last two being week-end days and all 7 days of the week -# respectively. As a final example, AlFr means all days except Friday. -# -# Each day/time-range can be prefixed with a '!' to indicate "anything -# but" -# -# The time-range part is two 24-hour times HHMM separated by a hyphen -# indicating the start and finish time (if the finish time is smaller -# than the start time it is deemed to apply on the following day). -# -# groups -# The (comma or space separated) list of groups that the user -# inherits membership of. These groups are added if the previous -# fields are satisfied by the user's request -# -# For a rule to be active, ALL of service+ttys+users must be satisfied -# by the applying process. -# - -# -# Note, to get this to work as it is currently typed you need -# -# 1. to run an application as root -# 2. add the following groups to the /etc/group file: -# floppy, play, sound -# - -# -# Here is a simple example: running 'xsh' on tty* (any ttyXXX device), -# the user 'us' is given access to the floppy (through membership of -# the floppy group) -# - -#xsh;tty*&!ttyp*;us;Al0000-2400;floppy - -# -# another example: running 'xsh' on tty* (any ttyXXX device), -# the user 'sword' is given access to games (through membership of -# the sound and play group) after work hours. -# - -#xsh; tty* ;sword;!Wk0900-1800;sound, play -#xsh; tty* ;*;Al0900-1800;floppy - -# -# yet another example: any member of the group 'admin' running -# 'xsh' on tty*, is granted access (at any time) to the group 'plugdev' -# - -#xsh; tty* ;%admin;Al0000-2400;plugdev - -# -# End of group.conf file -# diff --git a/roles/linroom/templates/sssd.conf b/roles/linroom/templates/sssd.conf deleted file mode 100644 index cd745fa7..00000000 --- a/roles/linroom/templates/sssd.conf +++ /dev/null @@ -1,30 +0,0 @@ -[sssd] -config_file_version = 2 -domains = fri1.uni-lj.si -enable_files_domain = False -services = nss, pam - -[nss] -filtered_groups = root -filtered_users = root -reconnection_retries = 3 - -[pam] -reconnection_retries = 3 - -[domain/fri1.uni-lj.si] -ad_domain = fri1.uni-lj.si -ad_server = dcv1fri1.fri1.uni-lj.si,dcv2fri1.fri1.uni-lj.si -ad_maximum_machine_account_password_age = 0 -ad_gpo_access_control = permissive -ad_enabled_domains = fri1.uni-lj.si, student.uni-lj.si, fkkt1.uni-lj.si, ef1.uni-lj.si, fe1.uni-lj.si, ff.uni-lj.si, fmf.uni-lj.si, fu.uni-lj.si, pef.uni-lj.si -krb5_realm = FRI1.UNI-LJ.SI -realmd_tags = manages-system joined-with-adcli -cache_credentials = True -id_provider = ad -krb5_store_password_if_offline = True -default_shell = /bin/bash -ldap_id_mapping = True -use_fully_qualified_names = True -fallback_homedir = /home/%u@%d -access_provider = ad diff --git a/roles/linroom/templates/systemd_group_override.conf b/roles/linroom/templates/systemd_group_override.conf deleted file mode 100644 index f3d177b4..00000000 --- a/roles/linroom/templates/systemd_group_override.conf +++ /dev/null @@ -1,2 +0,0 @@ -[Service] -SupplementaryGroups={{ additional_groups|join(' ') }} diff --git a/roles/linroom_ad/tasks/main.yml b/roles/linroom_ad/tasks/main.yml deleted file mode 100644 index bb9b362e..00000000 --- a/roles/linroom_ad/tasks/main.yml +++ /dev/null @@ -1,40 +0,0 @@ -- name: Install sssd + samba + keyutil - apt: - name: - - sssd - - sssd-ad - - realmd - - samba-common-bin - - smbclient - - cifs-utils - - smbclient - state: latest -- name: Install kerberos utils - apt: - name: - - keyutils - - krb5-user -- name: Install PAM modules - apt: - name: libpam-modules - state: latest -- 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: Join using realmd - expect: - command: realm join --user=ad.join@FRI1.UNI-LJ.SI --computer-ou=OU=Ucilnice FRI1.UNI-LJ.SI - responses: - (?i)Password: "{{ad_join_password}}" - ignore_errors: yes - when: realm_list_results.stdout == "" - -- name: Copy sssd config - template: - src: sssd.conf - dest: "/etc/sssd/sssd.conf" - owner: root - mode: 0600 diff --git a/roles/linroom_ad/templates/lightdm-10-hide-users.conf b/roles/linroom_ad/templates/lightdm-10-hide-users.conf deleted file mode 100644 index bd043149..00000000 --- a/roles/linroom_ad/templates/lightdm-10-hide-users.conf +++ /dev/null @@ -1,2 +0,0 @@ -[Seat:*] -greeter-hide-users=true diff --git a/roles/linroom_ad/templates/sssd.conf b/roles/linroom_ad/templates/sssd.conf deleted file mode 100644 index 6ac320ff..00000000 --- a/roles/linroom_ad/templates/sssd.conf +++ /dev/null @@ -1,31 +0,0 @@ -[sssd] -config_file_version = 2 -domains = fri1.uni-lj.si -enable_files_domain = False -services = nss, pam - -[nss] -filtered_groups = root -filtered_users = root -reconnection_retries = 3 - -[pam] -reconnection_retries = 3 - -[domain/fri1.uni-lj.si] -ad_domain = fri1.uni-lj.si -ad_server = dcv1fri1.fri1.uni-lj.si,dcv2fri1.fri1.uni-lj.si -ad_maximum_machine_account_password_age = 0 -ad_gpo_access_control = permissive -ad_enabled_domains = fri1.uni-lj.si, student.uni-lj.si, fkkt1.uni-lj.si, ef1.uni-lj.si, fe1.uni-lj.si, ff.uni-lj.si, fmf.uni-lj.si, fu.uni-lj.si, pef.uni-lj.si -krb5_realm = FRI1.UNI-LJ.SI -realmd_tags = manages-system joined-with-adcli -cache_credentials = True -id_provider = ad -krb5_store_password_if_offline = True -default_shell = /bin/bash -ldap_id_mapping = True -use_fully_qualified_names = True -fallback_homedir = /home/%u@%d -access_provider = ad -ad_gpo_ignore_unreadable = True diff --git a/roles/logisim/tasks/main_lin.yml b/roles/logisim/tasks/main_lin.yml index d35c8f5f..c9a2213d 100644 --- a/roles/logisim/tasks/main_lin.yml +++ b/roles/logisim/tasks/main_lin.yml @@ -11,3 +11,13 @@ 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 diff --git a/roles/matlab/tasks/main_lin.yml b/roles/matlab/tasks/main_lin.yml index 200fd194..2942237b 100644 --- a/roles/matlab/tasks/main_lin.yml +++ b/roles/matlab/tasks/main_lin.yml @@ -1,6 +1,6 @@ - name: Set Matlab version and destination set_fact: - target_version: "R2024a_Update_5" + target_version: "R2025a_Update_1" 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 }}/VersionInfo.xml" + creates: "{{ dest_dir }}/licenses/license_info.xml" #- name: Unmount Matlab ISO # win_disk_image: # image_path: "{{ installers }}\\matlab\\matlab-{{ target_version }}_windows.iso" diff --git a/roles/matlab/tasks/main_win.yml b/roles/matlab/tasks/main_win.yml index ee89c989..4fd79ff4 100644 --- a/roles/matlab/tasks/main_win.yml +++ b/roles/matlab/tasks/main_win.yml @@ -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: D:\matlab + dest_dir: "{{ large_prog_dir }}\\matlab" - name: Set ISO path set_fact: @@ -17,21 +17,27 @@ - name: Prepare installer_input.txt template: src: installer_input.txt - dest: d:\matlab_installer_input.txt + dest: c:\matlab_installer_input.txt - name: Install Matlab win_package: path: "{{ disk_image.mount_paths[0] }}\\setup.exe" - arguments: -inputFile "d:\\matlab_installer_input.txt" + arguments: -inputFile "c:\\matlab_installer_input.txt" - name: Unmount Matlab ISO win_disk_image: image_path: "{{ iso_path }}" state: absent + ignore_errors: true -# 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 +- 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 diff --git a/roles/matlab/templates/installer_input.txt b/roles/matlab/templates/installer_input.txt index 4207b6d8..7ce76e96 100644 --- a/roles/matlab/templates/installer_input.txt +++ b/roles/matlab/templates/installer_input.txt @@ -13,7 +13,8 @@ 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=no +enableLNU=yes improveMATLAB=no diff --git a/roles/matplotlib/tasks/main.yml b/roles/matplotlib/tasks/main.yml new file mode 100644 index 00000000..66e93fef --- /dev/null +++ b/roles/matplotlib/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' \ No newline at end of file diff --git a/roles/matplotlib/tasks/main_lin.yml b/roles/matplotlib/tasks/main_lin.yml new file mode 100644 index 00000000..a509286d --- /dev/null +++ b/roles/matplotlib/tasks/main_lin.yml @@ -0,0 +1,11 @@ +- name: Install matplotlib + apt: + name: + - python3-matplotlib + - python3-matplotlib-inline + - python3-matplotlib-venn + - python3-mpl-animators + - python3-mpl-scatter-density + - python3-mplcursors + - python3-mplexporter + state: latest diff --git a/roles/matplotlib/tasks/main_win.yml b/roles/matplotlib/tasks/main_win.yml new file mode 100644 index 00000000..38be21f5 --- /dev/null +++ b/roles/matplotlib/tasks/main_win.yml @@ -0,0 +1,2 @@ +- name: Install matplotlib + win_command: pip install matplotlib \ No newline at end of file diff --git a/roles/mlxtend/tasks/main.yml b/roles/mlxtend/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/mlxtend/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/mlxtend/tasks/main_lin.yml b/roles/mlxtend/tasks/main_lin.yml new file mode 100644 index 00000000..393f093d --- /dev/null +++ b/roles/mlxtend/tasks/main_lin.yml @@ -0,0 +1,4 @@ +- name: Install mlxtend + pip: + executable: pipx + name: mlxtend diff --git a/roles/mlxtend/tasks/main_win.yml b/roles/mlxtend/tasks/main_win.yml new file mode 100644 index 00000000..a486f76e --- /dev/null +++ b/roles/mlxtend/tasks/main_win.yml @@ -0,0 +1,2 @@ +- name: Install pandas + win_command: pip install mlxtend diff --git a/roles/mysql_workbench/tasks/main_lin.yml b/roles/mysql_workbench/tasks/main_lin.yml index 27c4fa3a..f5dea854 100644 --- a/roles/mysql_workbench/tasks/main_lin.yml +++ b/roles/mysql_workbench/tasks/main_lin.yml @@ -1,8 +1,104 @@ -- name: Download mysql workbench +- name: Create mysql workbench build directory + file: + path: /tmp/mysql-workbench + state: directory + +- name: Download mysql workbench source 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 + url: https://dev.mysql.com/get/Downloads/MySQLGUITools/mysql-workbench-community-8.0.43-src.tar.gz + dest: /tmp/mysql-workbench/mysql-workbench.tgz http_agent: "Wget/1.21.3" -- name: Install mysql workbench + register: mysql_download + +- name: Install mysql workbench build dependencies apt: - deb: /tmp/mysql-workbench-community_8.0.38-1ubuntu24.04_amd64.deb + 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 diff --git a/roles/netbeans/tasks/main_win.yml b/roles/netbeans/tasks/main_win.yml index 72b26594..afb91343 100644 --- a/roles/netbeans/tasks/main_win.yml +++ b/roles/netbeans/tasks/main_win.yml @@ -2,8 +2,22 @@ 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: "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" + 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" diff --git a/roles/netcat/tasks/main.yml b/roles/netcat/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/netcat/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/netcat/tasks/main_lin.yml b/roles/netcat/tasks/main_lin.yml new file mode 100644 index 00000000..5a02200e --- /dev/null +++ b/roles/netcat/tasks/main_lin.yml @@ -0,0 +1,4 @@ +- name: Install netcat + apt: + name: netcat-openbsd + state: latest diff --git a/roles/netcat/tasks/main_win.yml b/roles/netcat/tasks/main_win.yml new file mode 100644 index 00000000..834f5bd9 --- /dev/null +++ b/roles/netcat/tasks/main_win.yml @@ -0,0 +1,4 @@ +- name: Install netcat + win_chocolatey: + name: netcat + state: latest diff --git a/roles/networkx/tasks/main.yml b/roles/networkx/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/networkx/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/networkx/tasks/main_lin.yml b/roles/networkx/tasks/main_lin.yml new file mode 100644 index 00000000..17ef5700 --- /dev/null +++ b/roles/networkx/tasks/main_lin.yml @@ -0,0 +1,4 @@ +- name: Install networkx + apt: + name: python3-networkx + state: latest diff --git a/roles/networkx/tasks/main_win.yml b/roles/networkx/tasks/main_win.yml new file mode 100644 index 00000000..a66ad83a --- /dev/null +++ b/roles/networkx/tasks/main_win.yml @@ -0,0 +1,2 @@ +- name: Install networkx + win_command: pip install networkx diff --git a/roles/nodejs/tasks/main_lin.yml b/roles/nodejs/tasks/main_lin.yml index 601d7618..76f3fb28 100644 --- a/roles/nodejs/tasks/main_lin.yml +++ b/roles/nodejs/tasks/main_lin.yml @@ -1,7 +1,7 @@ - name: Add NodeJS repo key - apt_key: + get_url: url: https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key - keyring: /etc/apt/keyrings/nodesource.gpg + dest: /etc/apt/keyrings/nodesource.asc #- name: Add NodeJS repo url # apt_repository: @@ -9,10 +9,5 @@ - name: Add NodeJS LTS repo url apt_repository: - 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 + repo: "deb [signed-by=/etc/apt/keyrings/nodesource.asc] https://deb.nodesource.com/node_22.x nodistro main" diff --git a/roles/nodejs/tasks/main_win.yml b/roles/nodejs/tasks/main_win.yml index 80cb1607..177e2ec4 100644 --- a/roles/nodejs/tasks/main_win.yml +++ b/roles/nodejs/tasks/main_win.yml @@ -2,6 +2,7 @@ win_chocolatey: name: nodejs -- name: Install NodeJS-LTS - win_chocolatey: - name: nodejs-lts +# Install fails if multiple versions are installed +# - name: Install NodeJS-LTS +# win_chocolatey: +# name: nodejs-lts diff --git a/roles/notepad++/files/notepad++.desktop b/roles/notepad++/files/notepad++.desktop new file mode 100644 index 00000000..7a27f964 --- /dev/null +++ b/roles/notepad++/files/notepad++.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Name=Notepad++ +GenericName=Notepad++ +Comment=A simple IDE +Exec=wine "/opt/notepad++/notepad++.exe" +Icon=notepad++ +Terminal=false +Type=Application +MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++; +Categories=Education;Development;ComputerScience; +StartupNotify=true diff --git a/roles/notepad++/files/notepad++.png b/roles/notepad++/files/notepad++.png new file mode 100644 index 00000000..0c3791e8 Binary files /dev/null and b/roles/notepad++/files/notepad++.png differ diff --git a/roles/notepad++/tasks/main_lin.yml b/roles/notepad++/tasks/main_lin.yml index 3e194fff..3eb005d9 100644 --- a/roles/notepad++/tasks/main_lin.yml +++ b/roles/notepad++/tasks/main_lin.yml @@ -19,6 +19,24 @@ - name: Download and unpack Notepad++ unarchive: - src: https://github.com/notepad-plus-plus/notepad-plus-plus/releases/download/v8.5.7/npp.8.5.7.portable.x64.zip + src: https://github.com/notepad-plus-plus/notepad-plus-plus/releases/download/v8.8.5/npp.8.8.5.portable.x64.zip dest: /opt/notepad++ remote_src: yes + +- name: Install icon + block: + - file: + path: /usr/local/share/icons + state: directory + - copy: + src: notepad++.png + dest: /usr/local/share/icons/notepad++.png + +- name: Create .desktop file + block: + - file: + path: /usr/local/share/applications + state: directory + - copy: + dest: /usr/local/share/applications/notepad++.desktop + src: notepad++.desktop diff --git a/roles/numpy/tasks/main.yml b/roles/numpy/tasks/main.yml new file mode 100644 index 00000000..66e93fef --- /dev/null +++ b/roles/numpy/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' \ No newline at end of file diff --git a/roles/numpy/tasks/main_lin.yml b/roles/numpy/tasks/main_lin.yml new file mode 100644 index 00000000..66e66b2b --- /dev/null +++ b/roles/numpy/tasks/main_lin.yml @@ -0,0 +1,5 @@ +- name: Install numpy + apt: + name: + - python3-numpy + state: latest diff --git a/roles/numpy/tasks/main_win.yml b/roles/numpy/tasks/main_win.yml new file mode 100644 index 00000000..ee12580d --- /dev/null +++ b/roles/numpy/tasks/main_win.yml @@ -0,0 +1,2 @@ +- name: Install numpy + win_command: pip install numpy diff --git a/roles/ocaml/tasks/main_lin.yml b/roles/ocaml/tasks/main_lin.yml index 66959092..4d0e80c7 100644 --- a/roles/ocaml/tasks/main_lin.yml +++ b/roles/ocaml/tasks/main_lin.yml @@ -2,3 +2,14 @@ apt: name: ocaml state: latest + +- name: Install opam + apt: + name: opam + state: latest + +- name: Init opam home + command: opam init --reinit --root=/opt/opam --dot-profile=/etc/profile.d/opam.sh --comp=4.14.2 -a + +- name: Install required opam packages + shell: source /etc/profile.d/opam.sh; eval $(opam env --root=/opt/opam --set-root --switch=4.14.2); opam install --yes ocaml-lsp-server odoc ocamlformat utop dune menhir diff --git a/roles/omnetpp/tasks/main_win.yml b/roles/omnetpp/tasks/main_win.yml index 17ebf56e..d17b337b 100644 --- a/roles/omnetpp/tasks/main_win.yml +++ b/roles/omnetpp/tasks/main_win.yml @@ -1,7 +1,9 @@ +# 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: "C:\\OMNeT++" + target_dir: "{{large_prog_dir}}\\OMNeT++" - name: Check OMNet++ install status win_stat: @@ -12,18 +14,24 @@ block: - name: Download OMNet++ win_get_url: - url: "https://github.com/omnetpp/omnetpp/releases/download/omnetpp-{{ target_version }}/omnetpp-{{ target_version }}-windows-x86_64.zip" - dest: C:\ + url: "https://github.com/omnetpp/omnetpp/releases/download/omnetpp-{{ target_version }}/omnetpp-{{ target_version }}-windows-x86_64.7z" + dest: "{{ large_prog_dir }}" register: download - name: Unzip OMNet++ win_unzip: src: "{{ download.dest }}" - dest: C:\ + dest: "{{ large_prog_dir }}" delete_archive: yes - name: Move OMNet++ to final location - win_command: cmd.exe /c move "C:\omnetpp-{{ target_version }}" "{{ target_dir }}" + 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 }}" - name: Create OMNet++ compile script win_copy: @@ -38,7 +46,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: diff --git a/roles/plotly/tasks/main.yml b/roles/plotly/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/plotly/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/plotly/tasks/main_lin.yml b/roles/plotly/tasks/main_lin.yml new file mode 100644 index 00000000..60b4d6ed --- /dev/null +++ b/roles/plotly/tasks/main_lin.yml @@ -0,0 +1,4 @@ +- name: Install plotly + apt: + name: python3-plotly + state: latest diff --git a/roles/plotly/tasks/main_win.yml b/roles/plotly/tasks/main_win.yml new file mode 100644 index 00000000..3e6e29db --- /dev/null +++ b/roles/plotly/tasks/main_win.yml @@ -0,0 +1,2 @@ +- name: Install plotly + win_command: pip install plotly diff --git a/roles/powerdesigner/tasks/main_win.yml b/roles/powerdesigner/tasks/main_win.yml index 9bd6760c..2e45bca5 100644 --- a/roles/powerdesigner/tasks/main_win.yml +++ b/roles/powerdesigner/tasks/main_win.yml @@ -1,4 +1,16 @@ +# 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_package: - path: "{{ installers }}\\PowerDesigner 12.5\\cd1\\setup\\setup.exe" - arguments: "/s /f1\"{{ installers }}\\PowerDesigner 12.5\\setup.iss\" /f2\"C:\\powerdesigner_log.iss\"" + 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\"" diff --git a/roles/powerdesigner/templates/setup.iss b/roles/powerdesigner/templates/setup.iss index 85036703..7519aaf5 100755 --- a/roles/powerdesigner/templates/setup.iss +++ b/roles/powerdesigner/templates/setup.iss @@ -3,37 +3,37 @@ Version=v7.00 File=Response File [File Transfer] OverwrittenReadOnly=NoToAll -[{{ powerdesigner_key }}-DlgOrder] -Dlg0={{ powerdesigner_key }}-SdWelcome-0 +[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-DlgOrder] +Dlg0={DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SdWelcome-0 Count=10 -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] +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] Result=1 -[{{ powerdesigner_key }}-SybSelectInstallMode-0] +[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SybSelectInstallMode-0] Mode=3 Result=1 -[{{ powerdesigner_key }}-SybFlexLM-0] -LicenseServer=todo.fri1.uni-lj.si +[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SybFlexLM-0] +LicenseServer=todo.fri.uni-lj.si PortNumber=27000 Result=1 -[{{ powerdesigner_key }}-SybSelectPackage-0] +[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SybSelectPackage-0] Package=Studio Enterprise Result=1 -[{{ powerdesigner_key }}-Sybase License-0] +[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-Sybase License-0] Sybase_License=accept -[{{ powerdesigner_key }}-SdAskDestPath-0] -szDir=C:\Program Files (x86)\Sybase\PowerDesigner 12 +[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SdAskDestPath-0] +szDir={{ large_prog_dir }}\PowerDesigner 12 Result=1 -[{{ powerdesigner_key }}-SdComponentTree-0] -szDir=C:\Program Files (x86)\Sybase\PowerDesigner 12 +[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SdComponentTree-0] +szDir={{ large_prog_dir }}\PowerDesigner 12 CR\FRM-type=string CR\FRM-count=2 CR\FRM-0=CR\FRM\FRM_Xem @@ -108,11 +108,6 @@ 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 @@ -135,6 +130,19 @@ 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 @@ -143,15 +151,15 @@ Component-2=CDM Component-3=ILM Component-4=OOM Component-5=PDM -Component-6=RQM -Component-7=XSM -Component-8=RPY -Component-9=PDF +Component-6=XSM +Component-7=RPY +Component-8=PDF +Component-9=VIDEO Result=1 -[{{ powerdesigner_key }}-Graphic Select Folder-0] +[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-Graphic Select Folder-0] szFolder=Sybase\PowerDesigner 12 Result=1 -[{{ powerdesigner_key }}-SdStartCopy-0] +[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SdStartCopy-0] Keep_Settings=0 Result=1 [Application] @@ -159,7 +167,7 @@ Name=Sybase PowerDesigner 12.5 Version=12.5.2169 Company=Sybase Lang=0009 -[{{ powerdesigner_key }}-SdFinish-0] +[{DA53ABD7-6592-45DA-A6DD-287A48F74D37}-SdFinish-0] Result=1 bOpt1=0 bOpt2=0 diff --git a/roles/processing/tasks/main_win.yml b/roles/processing/tasks/main_win.yml index 2caf84ab..e8fda8a2 100644 --- a/roles/processing/tasks/main_win.yml +++ b/roles/processing/tasks/main_win.yml @@ -1,7 +1,7 @@ - name: Set Processing version set_fact: - target_version: 4.4.4 - target_build: 1304 + target_version: 4.4.6 + target_build: 1306 - name: Check Processing install status win_stat: @@ -22,20 +22,21 @@ state: directory - name: Download Processing win_get_url: - 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 + 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 - name: Unzip Processing win_unzip: - 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 + 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 - name: Disable telemetry win_lineinfile: - path: C:\Program Files\Processing\lib\defaults.txt + path: C:\Program Files\Processing\app\resources\lib\defaults.txt regexp: 'update.check' line: 'update.check = false' - name: Create Processing shortcut @@ -44,8 +45,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\{{ item }} + path: C:\Program Files\processing.zip state: absent loop: - processing.zip - - processing-{{ target_version }} diff --git a/roles/prometheus-exporter/tasks/main.yml b/roles/prometheus-exporter/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/prometheus-exporter/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/prometheus-exporter/tasks/main_lin.yml b/roles/prometheus-exporter/tasks/main_lin.yml new file mode 100644 index 00000000..98b29230 --- /dev/null +++ b/roles/prometheus-exporter/tasks/main_lin.yml @@ -0,0 +1,5 @@ +- name: Install prometheus-exporter + apt: + name: + - prometheus-node-exporter + state: latest diff --git a/roles/prometheus-exporter/tasks/main_win.yml b/roles/prometheus-exporter/tasks/main_win.yml new file mode 100644 index 00000000..41358763 --- /dev/null +++ b/roles/prometheus-exporter/tasks/main_win.yml @@ -0,0 +1,13 @@ +- name: Install prometheus exporter + win_chocolatey: + name: prometheus-windows-exporter.install + package_params: "/ListenPort:9100" + +- name: Allow access to metrics + win_firewall_rule: + name: "Allow access to Prometheus metrics" + enabled: true + action: allow + direction: in + protocol: tcp + localport: 9100 diff --git a/roles/pulseview/tasks/main_win.yml b/roles/pulseview/tasks/main_win.yml index 1fa7568f..469843f3 100644 --- a/roles/pulseview/tasks/main_win.yml +++ b/roles/pulseview/tasks/main_win.yml @@ -10,6 +10,10 @@ path: "{{ download.dest }}" arguments: /S /Verysilent /AllUsers +- name: Create PulseView Shortcut + win_shortcut: + src: "C:\\Program Files (x86)\\sigrok\\PulseView\\pulseview.exe" + dest: "C:\\Users\\Public\\Desktop\\PulseView.lnk" #- name: Remove temporary files # win_file: # path: "{{ download.dest }}" diff --git a/roles/pwndbg/meta/main.yml b/roles/pwndbg/meta/main.yml new file mode 100644 index 00000000..93ee277f --- /dev/null +++ b/roles/pwndbg/meta/main.yml @@ -0,0 +1,2 @@ +dependencies: + - c_development diff --git a/roles/pwndbg/tasks/main.yml b/roles/pwndbg/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/pwndbg/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/pwndbg/tasks/main_lin.yml b/roles/pwndbg/tasks/main_lin.yml new file mode 100644 index 00000000..ae979488 --- /dev/null +++ b/roles/pwndbg/tasks/main_lin.yml @@ -0,0 +1,25 @@ +- name: Install dependencies + apt: + name: + - git + +- name: Download pwndbg + command: + cmd: git clone https://github.com/pwndbg/pwndbg + creates: /opt/pwndbg + chdir: /opt + +- name: Pull latest pwndbg + command: + cmd: git pull + chdir: /opt/pwndbg + +- name: Install pwndbg + command: + cmd: ./setup.sh + chdir: /opt/pwndbg + +- name: Update folder permissions (to allow lock files) + file: + mode: '0777' + path: /opt/pwndbg/.venv diff --git a/roles/pwndbg/tasks/main_win.yml b/roles/pwndbg/tasks/main_win.yml new file mode 100644 index 00000000..b530adbc --- /dev/null +++ b/roles/pwndbg/tasks/main_win.yml @@ -0,0 +1,3 @@ +- name: pwndbg uninstallable + debug: + msg: "This task is not installable on Windows. Skipping." diff --git a/roles/pwntools/tasks/main.yml b/roles/pwntools/tasks/main.yml new file mode 100644 index 00000000..66e93fef --- /dev/null +++ b/roles/pwntools/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' \ No newline at end of file diff --git a/roles/pwntools/tasks/main_lin.yml b/roles/pwntools/tasks/main_lin.yml new file mode 100644 index 00000000..009cd6f9 --- /dev/null +++ b/roles/pwntools/tasks/main_lin.yml @@ -0,0 +1,5 @@ +- name: Install python-pwntools + apt: + name: + - python3-pwntools + state: latest diff --git a/roles/pwntools/tasks/main_win.yml b/roles/pwntools/tasks/main_win.yml new file mode 100644 index 00000000..6b254c88 --- /dev/null +++ b/roles/pwntools/tasks/main_win.yml @@ -0,0 +1,2 @@ +- name: Install python3-pwntools + win_command: pip install pwntools diff --git a/roles/pycharm/files/pycharm.desktop b/roles/pycharm/files/pycharm.desktop new file mode 100644 index 00000000..5a90f0a8 --- /dev/null +++ b/roles/pycharm/files/pycharm.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Name=PyCharm +GenericName=PyCharm +Comment=JetBrains PyCharm IDE +MimeType=text/x-python; +Exec=/opt/PyCharm/bin/pycharm.sh +Icon=pycharm +Terminal=false +Type=Application +Categories=Development;ComputerScience; +StartupNotify=true diff --git a/roles/pycharm/tasks/main_lin.yml b/roles/pycharm/tasks/main_lin.yml index b85c36b8..7e8fe1d2 100644 --- a/roles/pycharm/tasks/main_lin.yml +++ b/roles/pycharm/tasks/main_lin.yml @@ -6,7 +6,27 @@ state: directory - name: Download and unpack JetBrains PyCharm unarchive: - src: https://download.jetbrains.com/python/pycharm-community-2023.2.1.tar.gz + src: https://data.services.jetbrains.com/products/download?code=PCP&platform=linux dest: /opt/PyCharm - creates: /opt/PyCharm/pycharm-community-2023.2.1/build.txt + extra_opts: --strip-components=1 + creates: /opt/PyCharm/build.txt remote_src: yes + +- name: Install icon + block: + - file: + path: /usr/local/share/icons + state: directory + - copy: + src: /opt/PyCharm/bin/pycharm.svg + remote_src: true + dest: /usr/local/share/icons/clion.svg + +- name: Create .desktop file + block: + - file: + path: /usr/local/share/applications + state: directory + - copy: + dest: /usr/local/share/applications/pycharm.desktop + src: pycharm.desktop diff --git a/roles/pycharm/tasks/main_win.yml b/roles/pycharm/tasks/main_win.yml index ae51dbd7..2b4516a3 100644 --- a/roles/pycharm/tasks/main_win.yml +++ b/roles/pycharm/tasks/main_win.yml @@ -8,4 +8,4 @@ state: upgrade version: "{{ target_version }}" -# TODO set default project directory to H:\something +# TODO set default project directory to {{large_prog_dir}}\something diff --git a/roles/python3/tasks/main_lin.yml b/roles/python3/tasks/main_lin.yml index 56ce94f2..8c13a70d 100644 --- a/roles/python3/tasks/main_lin.yml +++ b/roles/python3/tasks/main_lin.yml @@ -5,6 +5,12 @@ - name: Install ipython apt: - name: python3-ipython + name: + - python3-ipython + - ipython3 state: latest +- name: Install generally useful libraries + apt: + name: + - python3-tqdm diff --git a/roles/qcadesigner-e/tasks/main_lin.yml b/roles/qcadesigner-e/tasks/main_lin.yml index dd955bc7..78f8f49e 100644 --- a/roles/qcadesigner-e/tasks/main_lin.yml +++ b/roles/qcadesigner-e/tasks/main_lin.yml @@ -15,7 +15,7 @@ - name: Clone QCADesigner-E repo # ansible.builtin.git: - repo: https://github.com/FSillT/QCADesigner-E + repo: https://github.com/polz113/QCADesigner-E force: yes dest: /opt/QCADesigner-E - name: Build QCADesigner-E diff --git a/roles/ropr/meta/main.yml b/roles/ropr/meta/main.yml new file mode 100644 index 00000000..ad01fbb3 --- /dev/null +++ b/roles/ropr/meta/main.yml @@ -0,0 +1,2 @@ +dependencies: + - rust diff --git a/roles/ropr/tasks/main.yml b/roles/ropr/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/ropr/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/ropr/tasks/main_lin.yml b/roles/ropr/tasks/main_lin.yml new file mode 100644 index 00000000..7c427954 --- /dev/null +++ b/roles/ropr/tasks/main_lin.yml @@ -0,0 +1,4 @@ +- name: Install ropr + ansible.builtin.command: + cmd: cargo install ropr --root /usr/local + creates: /usr/local/bin/ropr diff --git a/roles/ropr/tasks/main_win.yml b/roles/ropr/tasks/main_win.yml new file mode 100644 index 00000000..2a379d01 --- /dev/null +++ b/roles/ropr/tasks/main_win.yml @@ -0,0 +1,3 @@ +- name: Uninstallable + debug: + msg: "This task is not installable on Windows. Skipping." diff --git a/roles/rstudio/tasks/main_lin.yml b/roles/rstudio/tasks/main_lin.yml index a21785b6..423cd117 100644 --- a/roles/rstudio/tasks/main_lin.yml +++ b/roles/rstudio/tasks/main_lin.yml @@ -1,13 +1,14 @@ -- 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: 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: Install R ansible.builtin.apt: name: r-base diff --git a/roles/rust/tasks/main.yml b/roles/rust/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/rust/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/rust/tasks/main_lin.yml b/roles/rust/tasks/main_lin.yml new file mode 100644 index 00000000..b3eb4069 --- /dev/null +++ b/roles/rust/tasks/main_lin.yml @@ -0,0 +1,7 @@ +- name: Install rust tools + apt: + name: + - rustc + - cargo + - rustfmt + state: latest diff --git a/roles/rust/tasks/main_win.yml b/roles/rust/tasks/main_win.yml new file mode 100644 index 00000000..3cbe0efe --- /dev/null +++ b/roles/rust/tasks/main_win.yml @@ -0,0 +1,4 @@ +- name: Install rust + win_chocolatey: + name: rust + state: latest diff --git a/roles/scikit/tasks/main.yml b/roles/scikit/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/scikit/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/scikit/tasks/main_lin.yml b/roles/scikit/tasks/main_lin.yml new file mode 100644 index 00000000..1db37055 --- /dev/null +++ b/roles/scikit/tasks/main_lin.yml @@ -0,0 +1,6 @@ +- name: Install scikit + apt: + name: + - python3-sklearn + - python3-sklearn-pandas + state: latest diff --git a/roles/scikit/tasks/main_win.yml b/roles/scikit/tasks/main_win.yml new file mode 100644 index 00000000..3b59e53c --- /dev/null +++ b/roles/scikit/tasks/main_win.yml @@ -0,0 +1,2 @@ +- name: Install scikit + win_command: pip install scikit-learn diff --git a/roles/seaborn/tasks/main.yml b/roles/seaborn/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/seaborn/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/seaborn/tasks/main_lin.yml b/roles/seaborn/tasks/main_lin.yml new file mode 100644 index 00000000..23b99fab --- /dev/null +++ b/roles/seaborn/tasks/main_lin.yml @@ -0,0 +1,4 @@ +- name: Install seaborn + apt: + name: python3-seaborn + state: latest diff --git a/roles/seaborn/tasks/main_win.yml b/roles/seaborn/tasks/main_win.yml new file mode 100644 index 00000000..4ff22ad9 --- /dev/null +++ b/roles/seaborn/tasks/main_win.yml @@ -0,0 +1,2 @@ +- name: Install seaborn + win_command: pip install seaborn diff --git a/roles/sifive/tasks/main_win.yml b/roles/sifive/tasks/main_win.yml index 1030ce16..e8741413 100644 --- a/roles/sifive/tasks/main_win.yml +++ b/roles/sifive/tasks/main_win.yml @@ -5,7 +5,7 @@ - name: Set SiFive Studio install location set_fact: - download_filedest: C:\FreedomStudio-4.18.0.2021-04-1-x86_64-w64-mingw32.zip + download_filedest: "{{ large_prog_dir }}\\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: C:\SiFive\ - creates: C:\SiFive\plugins + dest: "{{ large_prog_dir }}\\SiFive\\" + creates: "{{ large_prog_dir }}\\SiFive\\plugins" delete_archive: yes - name: Create desktop shortcut win_shortcut: description: "SiFive Freedom Studio" - src: C:\SiFive\FreedomStudio.exe + src: "{{ large_prog_dir }}\\SiFive\\FreedomStudio.exe" dest: '%public%\Desktop\SiFive.lnk' diff --git a/roles/smlnj/files/ml b/roles/smlnj/files/ml new file mode 100644 index 00000000..31caf231 --- /dev/null +++ b/roles/smlnj/files/ml @@ -0,0 +1,2 @@ +#!/bin/bash +rlwrap sml "$@" diff --git a/roles/smlnj/tasks/main_lin.yml b/roles/smlnj/tasks/main_lin.yml index 7096389a..eb464129 100644 --- a/roles/smlnj/tasks/main_lin.yml +++ b/roles/smlnj/tasks/main_lin.yml @@ -10,4 +10,8 @@ apt: name: elpa-sml-mode state: latest - +- name: Create ml wrapper + copy: + src: ml + dest: /usr/local/bin/ml + mode: 775 diff --git a/roles/stm32algobuilder/tasks/main_win.yml b/roles/stm32algobuilder/tasks/main_win.yml index ff0e92ed..c707e812 100644 --- a/roles/stm32algobuilder/tasks/main_win.yml +++ b/roles/stm32algobuilder/tasks/main_win.yml @@ -1,31 +1,34 @@ -# TODO check install status +# Deprecated - replace by mems-studio +- name: Do not install AlgoBuilder + debug: + msg: "Do not install AlgoBuilder on Windows - deprecated" # 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 diff --git a/roles/stm32cube/tasks/main_lin.yml b/roles/stm32cube/tasks/main_lin.yml index 01ba7fcf..2c2f7ab4 100644 --- a/roles/stm32cube/tasks/main_lin.yml +++ b/roles/stm32cube/tasks/main_lin.yml @@ -8,13 +8,14 @@ # register: download - name: Set filename set_fact: - dest_fname: /tmp/st-stm32cubeide_1.16.0_21983_20240628_1741_amd64.sh + dest_fname: /tmp/st-stm32cubeide_1.19.0_25607_20250703_0907_amd64.sh - name: Download stm32 command: - 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 }} + # 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 {{ installers }}\RAVINOR\2025\st-stm32cubeide_1.19.0_25607_20250703_0907_amd64.sh -O {{ dest_fname }} creates: "{{ dest_fname }} " - # url: https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/EUrIkoWbod5OilNHLnReBvYBMK7mlwI-R1Qeqhb-ux7hjg?e=HGloHF?download=1 + # url: https://unilj-my.sharepoint.com/:u:/g/personal/rozman_fri1_uni-lj_si/ERLZDFSgbO1Hm6TT9CLhyUIBZS-4anic7RWtvQliqN-thA?e=KZq4VJ - name: Change script permissions file: diff --git a/roles/stm32cube/tasks/main_win.yml b/roles/stm32cube/tasks/main_win.yml index 752db87f..c01c4bc1 100644 --- a/roles/stm32cube/tasks/main_win.yml +++ b/roles/stm32cube/tasks/main_win.yml @@ -7,18 +7,18 @@ block: - name: Set download filenames set_fact: - cubemx_download_file: C:\CubeMX.exe + # cubemx_download_file: C:\CubeMX.exe not needed separately 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.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 }}" + 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 }}" #- name: Install CubeMX # win_package: @@ -26,7 +26,8 @@ # arguments: /S - name: Download CubeProgrammer - 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_command: wget "{{ installers }}\RAVINOR\2025\SetupSTM32CubeProgrammer_win64.exe" -O "{{ cubeprogrammer_download_file }}" + #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_get_url: # dest: C:\CubeProgrammer.exe #register: cubeprogrammer_download @@ -39,10 +40,11 @@ arguments: /S - name: Download CubeMonitor - # 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 }}" + # 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 }}" + win_command: wget "{{ installers }}\RAVINOR\2025\setupSTM32CubeMonitor_1.10.0.exe" -O "{{ cubemonitor_download_file }}" #win_get_url: # dest: C:\CubeMonitor.exe #register: cubemonitor_download @@ -54,23 +56,24 @@ path: "{{ cubemonitor_download_file }}" arguments: /S - - 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 + # 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: 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/ERpqeASbQ2hDrL9ANNWJf5QBJNhHieXoqaNtduppk42qwg?e=zI8rjI&download=1" -O "{{ cubeide_download_file }}" - #dest: C:\st-stm32cubeide_1.16.0_21983_20240628_1741_x86_64.exe + #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 }}" + win_command: wget "{{ installers }}\RAVINOR\2025\st-stm32cubeide_1.19.0_25607_20250703_0907_x86_64.exe" -O "{{ cubeide_download_file }}" + #dest: C:\st-stm32cubeide_1.19.0_25607_20250703_0907_x86_64.exe #register: cubeide_download args: creates: "{{ cubeide_download_file }}" @@ -83,12 +86,13 @@ - name: Set CubeIDE default workspace win_lineinfile: - path: C:\ST\STM32CubeIDE_1.10.1\STM32CubeIDE\stm32cubeide.ini + path: C:\ST\STM32CubeIDE_1.19.0\STM32CubeIDE\stm32cubeide.ini regexp: "osgi.instance.area.default" line: "-Dosgi.instance.area.default=D:/RAVINOR/CubeIDE_Workspace" - # 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 + # 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 diff --git a/roles/stm32duino/tasks/main_win.yml b/roles/stm32duino/tasks/main_win.yml index 63b56ed4..7022561c 100644 --- a/roles/stm32duino/tasks/main_win.yml +++ b/roles/stm32duino/tasks/main_win.yml @@ -5,19 +5,17 @@ # arguments: /S /AllUsers # creates_path: "%ProgramFiles%\\Arduino IDE\\Arduino IDE.exe" -# 2024: update: Full directory structure ready zip for Windows only on this URL: +# 2025: 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: "D:\\RAVINOR\\STM32Duino" + path: "{{large_prog_dir}}\\RAVINOR\\STM32Duino" state: directory -- 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: "D:\\RAVINOR\\STM32Duino" - # TODO Don't know if unzipping is required? - +- name: Install preinstalled STM32Duino & Arduino environment + win_unzip: + src: {{ installers }}\RAVINOR\2025\arduino-1.8.19.zip + dest: "{{large_prog_dir}}\\RAVINOR\\STM32Duino" # TODO check if anything else is needed (esp8266com)? diff --git a/roles/stm32mems-studio/tasks/main.yml b/roles/stm32mems-studio/tasks/main.yml new file mode 100644 index 00000000..146eef84 --- /dev/null +++ b/roles/stm32mems-studio/tasks/main.yml @@ -0,0 +1,5 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' + diff --git a/roles/stm32mems-studio/tasks/main_lin.yml b/roles/stm32mems-studio/tasks/main_lin.yml new file mode 100644 index 00000000..fca47736 --- /dev/null +++ b/roles/stm32mems-studio/tasks/main_lin.yml @@ -0,0 +1,3 @@ +- name: Do not install mems-studio + debug: + msg: "Do not install mems-studio on Linux" diff --git a/roles/stm32mems-studio/tasks/main_win.yml b/roles/stm32mems-studio/tasks/main_win.yml new file mode 100644 index 00000000..7e514234 --- /dev/null +++ b/roles/stm32mems-studio/tasks/main_win.yml @@ -0,0 +1,32 @@ +# 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 + win_command: copy "{{ installers }}\RAVINOR\2025\mems-studio-2.1.2.exe" -O { large_prog_dir }\mems-studio-2.1.2.exe + args: + creates: {large_prog_dir}\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: {large_prog_dir}\mems-studio-2.1.2.exe + # path: "{{ download.dest }}" + arguments: /Verysilent /AllUsers + + - name: Remove temporary files + win_file: + path: {large_prog_dir}\mems-studio-2.1.2.exe + # path: "{{ download.dest }}" + state: absent + + diff --git a/roles/stm32unicleogui/tasks/main_win.yml b/roles/stm32unicleogui/tasks/main_win.yml index 53976075..b40d13c7 100644 --- a/roles/stm32unicleogui/tasks/main_win.yml +++ b/roles/stm32unicleogui/tasks/main_win.yml @@ -1,31 +1,35 @@ -# 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 +# 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 - - 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 diff --git a/roles/streamlit/tasks/main.yml b/roles/streamlit/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/streamlit/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/streamlit/tasks/main_lin.yml b/roles/streamlit/tasks/main_lin.yml new file mode 100644 index 00000000..6068e2d5 --- /dev/null +++ b/roles/streamlit/tasks/main_lin.yml @@ -0,0 +1,4 @@ +- name: Install streamlit + pip: + executable: pipx + name: streamlit diff --git a/roles/streamlit/tasks/main_win.yml b/roles/streamlit/tasks/main_win.yml new file mode 100644 index 00000000..56e74a64 --- /dev/null +++ b/roles/streamlit/tasks/main_win.yml @@ -0,0 +1,2 @@ +- name: Install streamlit + win_command: pip install streamlit diff --git a/roles/surfer-project/tasks/main.yml b/roles/surfer-project/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/surfer-project/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/surfer-project/tasks/main_lin.yml b/roles/surfer-project/tasks/main_lin.yml new file mode 100644 index 00000000..707d76c1 --- /dev/null +++ b/roles/surfer-project/tasks/main_lin.yml @@ -0,0 +1,17 @@ +# 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 diff --git a/roles/surfer-project/tasks/main_win.yml b/roles/surfer-project/tasks/main_win.yml new file mode 100644 index 00000000..fd75ce37 --- /dev/null +++ b/roles/surfer-project/tasks/main_win.yml @@ -0,0 +1,11 @@ +- 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 diff --git a/roles/thonny/tasks/main_win.yml b/roles/thonny/tasks/main_win.yml index 6a14128f..bb7cb8c2 100644 --- a/roles/thonny/tasks/main_win.yml +++ b/roles/thonny/tasks/main_win.yml @@ -1,6 +1,6 @@ - name: Set Thonny version set_fact: - target_version: 4.0.1 + target_version: 4.1.7 - name: Check Thonny install status win_stat: diff --git a/roles/torch/tasks/main.yml b/roles/torch/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/torch/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/torch/tasks/main_lin.yml b/roles/torch/tasks/main_lin.yml new file mode 100644 index 00000000..51cf087d --- /dev/null +++ b/roles/torch/tasks/main_lin.yml @@ -0,0 +1,12 @@ +- 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 diff --git a/roles/torch/tasks/main_win.yml b/roles/torch/tasks/main_win.yml new file mode 100644 index 00000000..4d1b27b2 --- /dev/null +++ b/roles/torch/tasks/main_win.yml @@ -0,0 +1,2 @@ +- name: Install torch + win_command: pip install torch torchvision diff --git a/roles/transformers/tasks/main.yml b/roles/transformers/tasks/main.yml new file mode 100644 index 00000000..3077b7ec --- /dev/null +++ b/roles/transformers/tasks/main.yml @@ -0,0 +1,4 @@ +- import_tasks: main_win.yml + when: ansible_os_family == 'Windows' +- import_tasks: main_lin.yml + when: ansible_os_family == 'Debian' diff --git a/roles/transformers/tasks/main_lin.yml b/roles/transformers/tasks/main_lin.yml new file mode 100644 index 00000000..c9ece9ba --- /dev/null +++ b/roles/transformers/tasks/main_lin.yml @@ -0,0 +1,4 @@ +- name: Install transformers + pip: + executable: pipx: + name: transformers diff --git a/roles/transformers/tasks/main_win.yml b/roles/transformers/tasks/main_win.yml new file mode 100644 index 00000000..1b4f207b --- /dev/null +++ b/roles/transformers/tasks/main_win.yml @@ -0,0 +1,2 @@ +- name: Install transformers + win_command: pip install transformers diff --git a/roles/vivado/tasks/main_win.yml b/roles/vivado/tasks/main_win.yml index 46409041..72884994 100644 --- a/roles/vivado/tasks/main_win.yml +++ b/roles/vivado/tasks/main_win.yml @@ -1 +1,10 @@ -# TODO +- name: Add firewall rules for Vitis + win_firewall_rule: + name: "Allow inbound traffic for Vitis: {{ item }}" + program: "{{ large_prog_dir }}\\{{ item }}" + action: allow + direction: in + protocol: tcp + loop: + - "xilinx\\2025.1\\vitis\\bin\\unwrapped\\win64.o\\hw_server.exe" + - "xilinx\\2025.1\\vitis\\bin\\unwrapped\\win64.o\\cs_server.exe" diff --git a/roles/vscode/tasks/main_lin.yml b/roles/vscode/tasks/main_lin.yml index 08ae21dd..9c5eab8a 100644 --- a/roles/vscode/tasks/main_lin.yml +++ b/roles/vscode/tasks/main_lin.yml @@ -1,11 +1,11 @@ - name: Add VS repo key - apt_key: + get_url: url: https://packages.microsoft.com/keys/microsoft.asc - keyring: /etc/apt/trusted.gpg.d/microsoft.gpg + dest: /etc/apt/keyrings/microsoft.asc - name: Add VS repo url apt_repository: - repo: "deb https://packages.microsoft.com/repos/vscode stable main" + repo: "deb [arch=amd64 signed-by=/etc/apt/keyrings/microsoft.asc] https://packages.microsoft.com/repos/vscode stable main" - name: Install VSCode apt: @@ -16,6 +16,6 @@ include_vars: vscode_extensions.yml - name: Install VS Code extensions - command: code --no-sandbox --user-data-dir "/usr/share/code/resources/app" --extensions-dir "/usr/share/code/resources/app/extensions" --install-extension "{{ item }}" + command: code --no-sandbox --user-data-dir "/usr/share/code/resources/app" --extensions-dir "/usr/share/code/resources/app/extensions" --install-extension "{{ item }}" --force loop: "{{VSCode_Extensions}}" notify: fix VS code extensions diff --git a/roles/vscode/tasks/vscode_extensions.yml b/roles/vscode/tasks/vscode_extensions.yml index 5c47d870..1cf3fef1 100644 --- a/roles/vscode/tasks/vscode_extensions.yml +++ b/roles/vscode/tasks/vscode_extensions.yml @@ -13,11 +13,29 @@ VSCode_Extensions: - stonebuddha.vscode-better-sml - vscode-icons-team.vscode-icons - vscjava.vscode-java-pack + - shd101wyy.markdown-preview-enhanced + # - oracle.oracle-java - dan-c-underwood.arm # RA-63703 - marus25.cortex-debug # RA-63703 - NateAGeek.memory-viewer # RA-63703 - ms-vscode.cpptools-extension-pack # RA-63703, Dobravec - platformio.platformio-ide # ORS-63218 - - stmicroelectronics.stm32-vscode-extension # RA-63703 + # - stmicroelectronics.stm32-vscode-extension # RA-63703 - danielpinto8zz6.c-cpp-compile-run + - danielraggi.sml-environment-2024 + - ocamllabs.ocaml-platform + - pedrosantos.stm32cubemx-file-opener # RA-63703, ORS-63738, RAVINOR + - mcu-debug.peripheral-viewer # RA-63703, ORS-63738, RAVINOR + - mcu-debug.debug-tracker-vscode # RA-63703, ORS-63738, RAVINOR + - mcu-debug.memory-view # RA-63703, ORS-63738, RAVINOR + - mcu-debug.rtos-views # RA-63703, ORS-63738, RAVINOR + - marus25.cortex-debug # RA-63703, ORS-63738, RAVINOR + - ms-vscode.cmake-tools # RA-63703, ORS-63738, RAVINOR + - vadimcn.vscode-lldb # RA-63703, ORS-63738, RAVINOR + - zixuanwang.linkerscript # RA-63703, ORS-63738, RAVINOR + - josetr.cmake-language-support-vscode # RA-63703, ORS-63738, RAVINOR + - twxs.cmake # RA-63703, ORS-63738, RAVINOR + - ms-azuretools.vscode-containers + - ms-vscode-remote.remote-containers + - ms-kubernetes-tools.vscode-kubernetes-tools # - vadimcn.vscode-lldb diff --git a/roles/winidea/tasks/main_win.yml b/roles/winidea/tasks/main_win.yml index ff8e2c2f..6900fc83 100644 --- a/roles/winidea/tasks/main_win.yml +++ b/roles/winidea/tasks/main_win.yml @@ -7,7 +7,8 @@ block: - name: Install WinIDEA win_package: - path: "https://www.isystem.com/downloads/winIDEA/setup/winIDEA_x64_9_21_253_178621.exe" + path: "https://www.isystem.com/downloads/winIDEA/setup/winIDEA_x64_9_21_351_224956.exe" +# 2024: path: "https://www.isystem.com/downloads/winIDEA/setup/winIDEA_x64_9_21_253_178621.exe" arguments: /q - name: Download QEMU diff --git a/roles/winroom/defaults/main.yml b/roles/winroom/defaults/main.yml deleted file mode 100644 index af909610..00000000 --- a/roles/winroom/defaults/main.yml +++ /dev/null @@ -1,6 +0,0 @@ -ansible_connection: winrm -ansible_winrm_transport: ntlm -ansible_winrm_server_cert_validation: ignore -ansible_port: 5985 -logon_type: interactive -installers: \\ucilnicesmb.fri1.uni-lj.si\ucilnice_d\install diff --git a/roles/winroom/tasks/7zip.yml b/roles/winroom/tasks/7zip.yml deleted file mode 100644 index 05aebff5..00000000 --- a/roles/winroom/tasks/7zip.yml +++ /dev/null @@ -1,18 +0,0 @@ -- name: Install 7-zip - win_chocolatey: - name: 7zip - register: install - -- when: install.changed - block: - - name: Create 7-zip filetype - win_command: cmd.exe /c ftype 7-zip=%ProgramFiles%\7-zip\7zFM.exe - - - name: Associate 7-zip with archive filetypes - win_command: cmd.exe /c assoc .{{ item }}=7-zip - loop: - - gz - - tar - - targz - - rar - - 7z diff --git a/roles/winroom/tasks/AAHRP-63263.yml b/roles/winroom/tasks/AAHRP-63263.yml deleted file mode 100644 index 0e66b326..00000000 --- a/roles/winroom/tasks/AAHRP-63263.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Analiza algoritmov in hevristično reševanje problemov -# matej.piculin@fri.uni-lj.si -# Windows, Java JDK, Eclipse, R, RStudio -- include_tasks: rstudio.yml -- include_tasks: eclipse.yml -- include_tasks: jdk.yml diff --git a/roles/winroom/tasks/APS1-63279.yml b/roles/winroom/tasks/APS1-63279.yml deleted file mode 100644 index b35fcad4..00000000 --- a/roles/winroom/tasks/APS1-63279.yml +++ /dev/null @@ -1,8 +0,0 @@ -# Algoritmi in podatkovne strukture 1 -# tomaz.hocevar@fri.uni-lj.si, bojan.zunkovic@fri.uni-lj.si, polz@fri.uni-lj.si -# Windows, Java JDK, Eclipse -# - include_tasks: JDK.yml -# - include_tasks: Eclipse.yml -- include_tasks: c_development.yml -- include_tasks: vscode.yml - diff --git a/roles/winroom/tasks/ARP1-63545C.yml b/roles/winroom/tasks/ARP1-63545C.yml deleted file mode 100644 index 4c50bf00..00000000 --- a/roles/winroom/tasks/ARP1-63545C.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Aktualno raziskovalno področje 1 -# Veljko.Pejovic@fri.uni-lj.si -# Android Studio -- include_tasks: android_studio.yml diff --git a/roles/winroom/tasks/BMO-63259.yml b/roles/winroom/tasks/BMO-63259.yml deleted file mode 100644 index 10c9e001..00000000 --- a/roles/winroom/tasks/BMO-63259.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Brezžična in mobilna omrežja -# Ziga.Pusnik@fri.uni-lj.si, Miran.Koprivec@fri.uni-lj.si -# Windows, VMware Workstation 16.2.4 Player, wireshark -- include_tasks: wireshark.yml -- include_tasks: vmware_player.yml diff --git a/roles/winroom/tasks/DF-63530.yml b/roles/winroom/tasks/DF-63530.yml deleted file mode 100644 index ae8557c0..00000000 --- a/roles/winroom/tasks/DF-63530.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Digitalna forenzika -# Aleks.Huc@fri.uni-lj.si, Gasper.FeleZorz@fri.uni-lj.si -# Windows, GNU/Linux, GNS3, VirtualBox -- include_tasks: gns3.yml -- include_tasks: virtualbox.yml diff --git a/roles/winroom/tasks/DN-63260.yml b/roles/winroom/tasks/DN-63260.yml deleted file mode 100644 index ff2006a5..00000000 --- a/roles/winroom/tasks/DN-63260.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Digitalno načrtovanje -# Nejc.Ilc@fri.uni-lj.si -# Windows, Vivado 2022.1 -- include_tasks: vivado.yml diff --git a/roles/winroom/tasks/DPS-63744.yml b/roles/winroom/tasks/DPS-63744.yml deleted file mode 100644 index c389a452..00000000 --- a/roles/winroom/tasks/DPS-63744.yml +++ /dev/null @@ -1,7 +0,0 @@ -# Digitalno procesiranje signalov -# Aleks.Huc@fri.uni-lj.si -# Windows, GNU/Linux, Matlab, wfdb, Octave, Audacity -- include_tasks: matlab.yml -- include_tasks: wfdb.yml -- include_tasks: octave.yml -- include_tasks: audacity.yml diff --git a/roles/winroom/tasks/DV-63718.yml b/roles/winroom/tasks/DV-63718.yml deleted file mode 100644 index b7303807..00000000 --- a/roles/winroom/tasks/DV-63718.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Digitalna vezja -# Miha.Moskon@fri.uni-lj.si -# Windows, Logisim, Logisim Evolution -- include_tasks: logisim.yml diff --git a/roles/winroom/tasks/EP-63249.yml b/roles/winroom/tasks/EP-63249.yml deleted file mode 100644 index 1cc049d7..00000000 --- a/roles/winroom/tasks/EP-63249.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Elektronsko poslovanje -# David.Jelenc@fri.uni-lj.si -# Windows, VirtualBox, Android Studio -# -- include_tasks: virtualbox.yml -- include_tasks: android_studio.yml diff --git a/roles/winroom/tasks/FP-63507.yml b/roles/winroom/tasks/FP-63507.yml deleted file mode 100644 index 6c333c42..00000000 --- a/roles/winroom/tasks/FP-63507.yml +++ /dev/null @@ -1,11 +0,0 @@ -# Funkcijsko programiranje -# Klemen.Klanjscek@fri.uni-lj.si, Matjaz.Kukar@fri.uni-lj.si -# Windows, GNU/Linux, VS Code, Python 3, Racket (z DrRacket), SML/NJ, Emacs, rlwrap -# -- include_tasks: vscode.yml -- include_tasks: python3.yml -- include_tasks: racket.yml -- include_tasks: emacs.yml -- include_tasks: smlnj.yml - - diff --git a/roles/winroom/tasks/GO-63715.yml b/roles/winroom/tasks/GO-63715.yml deleted file mode 100644 index 926fc4ae..00000000 --- a/roles/winroom/tasks/GO-63715.yml +++ /dev/null @@ -1,9 +0,0 @@ -# Grafično oblikovanje -# Blaz.Meden@fri.uni-lj.si, ilb@fri.uni-lj.si -# Blender, Adobe paket (Illustrator, Photoshop, After Effects, Premiere), Processing (orodje za vizualno in interaktivno grafično programiranje), Inkscape (zastonjsko orodje za vektorsko risanje), GIMP (program za urejanje slik in rastrsko risanje) -# -- include_tasks: blender.yml -- include_tasks: adobe_cs.yml -- include_tasks: inkscape.yml -- include_tasks: gimp.yml - diff --git a/roles/winroom/tasks/IS-63714.yml b/roles/winroom/tasks/IS-63714.yml deleted file mode 100644 index 2dd62b01..00000000 --- a/roles/winroom/tasks/IS-63714.yml +++ /dev/null @@ -1,10 +0,0 @@ -# Informacijski sistemi -# Miha.Grohar@fri.uni-lj.si -# Windows, GNU/Linux, Docker, VS Code, dotnet6 SDK, GIT, Android Studio - -- include_tasks: docker.yml -- include_tasks: vscode.yml -- include_tasks: dotnet6.yml -- include_tasks: git.yml -- include_tasks: android_studio.yml - diff --git a/roles/winroom/tasks/IVZ-63521.yml b/roles/winroom/tasks/IVZ-63521.yml deleted file mode 100644 index ca0a4196..00000000 --- a/roles/winroom/tasks/IVZ-63521.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Informacijska varnost in zasebnost -# David.Jelenc@fri.uni-lj.si -# Java JDK, IntelliJ IDEA, VirtualBox -- include_tasks: jdk.yml -- include_tasks: idea.yml -- include_tasks: virtualbox.yml diff --git a/roles/winroom/tasks/KCR-63550.yml b/roles/winroom/tasks/KCR-63550.yml deleted file mode 100644 index 9fa8298d..00000000 --- a/roles/winroom/tasks/KCR-63550.yml +++ /dev/null @@ -1,7 +0,0 @@ -# Komunikacija človek računalnik -# Ales.Smrdel@fri.uni-lj.si -# Java JDK, Matlab, wfdb, Apache NetBeans -- include_tasks: jdk.yml -- include_tasks: matlab.yml -- include_tasks: wfdb.yml -- include_tasks: netbeans.yml diff --git a/roles/winroom/tasks/KPOV-63716.yml b/roles/winroom/tasks/KPOV-63716.yml deleted file mode 100644 index 248eefc2..00000000 --- a/roles/winroom/tasks/KPOV-63716.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Komunikacijski protokoli in omrežna varnost -# Aleks.Huc@fri.uni-lj.si, Gasper.FeleZorz@fri.uni-lj.si -# Windows, GNU/Linux, GNS3, VirtualBox -- include_tasks: gns.yml -- include_tasks: virtualbox.yml diff --git a/roles/winroom/tasks/MRO-63257.yml b/roles/winroom/tasks/MRO-63257.yml deleted file mode 100644 index 617f9e23..00000000 --- a/roles/winroom/tasks/MRO-63257.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Modeliranje računalniških omrežij -# Miha.Janez@fri.uni-lj.si -# OMNeT++, INET Framework -- include_tasks: omnetpp.yml diff --git a/roles/winroom/tasks/MV-63288.yml b/roles/winroom/tasks/MV-63288.yml deleted file mode 100644 index 288fc103..00000000 --- a/roles/winroom/tasks/MV-63288.yml +++ /dev/null @@ -1,9 +0,0 @@ -# Multimedijske vsebine -# Blaz.Meden@fri.uni-lj.si -# Blender, Adobe paket (Illustrator, Photoshop, After Effects, Premiere), Processing (orodje za vizualno in interaktivno grafično programiranje), Inkscape (zastonjsko orodje za vektorsko risanje), GIMP (program za urejanje slik in rastrsko risanje) - -- include_tasks: blender.yml -- include_tasks: adobe_cs.yml -- include_tasks: processing.yml -- include_tasks: inkscape.yml -- include_tasks: gimp.yml diff --git a/roles/winroom/tasks/NDN-63729.yml b/roles/winroom/tasks/NDN-63729.yml deleted file mode 100644 index c4c5ed31..00000000 --- a/roles/winroom/tasks/NDN-63729.yml +++ /dev/null @@ -1,7 +0,0 @@ -# Načrtovanje digitalnih naprav -# 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 -- include_tasks: vivado.yml diff --git a/roles/winroom/tasks/NM-63522.yml b/roles/winroom/tasks/NM-63522.yml deleted file mode 100644 index abc64377..00000000 --- a/roles/winroom/tasks/NM-63522.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Numerična matematika -# Martin.Vuk@fri.uni-lj.si -# VS Code, Julia -- include_tasks: vscode.yml -- include_tasks: julia.yml diff --git a/roles/winroom/tasks/NPMP-63512.yml b/roles/winroom/tasks/NPMP-63512.yml deleted file mode 100644 index caa30401..00000000 --- a/roles/winroom/tasks/NPMP-63512.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Nekonvencionalne platforme in metode procesiranja -# Miha.Janez@fri.uni-lj.si, Miha.Moskon@fri.uni-lj.si -# QCADesigner-E - -- include_tasks: qcadesigner-e.yml diff --git a/roles/winroom/tasks/NRG-63553.yml b/roles/winroom/tasks/NRG-63553.yml deleted file mode 100644 index 2533fcad..00000000 --- a/roles/winroom/tasks/NRG-63553.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Napredna računalniška grafika -# Ziga.Lesar@fri.uni-lj.si -# Windows, Build Tools for Visual Studio 2022 - -- include_tasks: visual_studio.yml diff --git a/roles/winroom/tasks/OBSS-63514.yml b/roles/winroom/tasks/OBSS-63514.yml deleted file mode 100644 index daaa24cb..00000000 --- a/roles/winroom/tasks/OBSS-63514.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Obdelava biomedicinskih signalov in slik -# Ziga.Pirnar@fri.uni-lj.si -# GNU/Linux, Matlab, wfdb -- include_tasks: matlab.yml -- include_tasks: wfdb.yml diff --git a/roles/winroom/tasks/ODV-63204.yml b/roles/winroom/tasks/ODV-63204.yml deleted file mode 100644 index 401665b0..00000000 --- a/roles/winroom/tasks/ODV-63204.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Osnove digitalnih vezij -# Ziga.Pusnik@fri.uni-lj.si, Miran.Koprivec@fri.uni-lj.si -# Windows, Logisim, Logisim Evolution -- include_tasks: logisim.yml diff --git a/roles/winroom/tasks/OO-63271.yml b/roles/winroom/tasks/OO-63271.yml deleted file mode 100644 index 50cdbdb1..00000000 --- a/roles/winroom/tasks/OO-63271.yml +++ /dev/null @@ -1,8 +0,0 @@ -# Osnove oblikovanja -# Blaz.Meden@fri.uni-lj.si, Narvika.Bovcon@fri.uni-lj.si -# Blender, Adobe paket (Illustrator, Photoshop, After Effects, Premiere), Processing (orodje za vizualno in interaktivno grafično programiranje), Inkscape (zastonjsko orodje za vektorsko risanje), GIMP (program za urejanje slik in rastrsko risanje) -- include_tasks: blender.yml -- include_tasks: adobe_cs.yml -- include_tasks: inkscape.yml -- include_tasks: gimp.yml - diff --git a/roles/winroom/tasks/OR-63717.yml b/roles/winroom/tasks/OR-63717.yml deleted file mode 100644 index 7bac823d..00000000 --- a/roles/winroom/tasks/OR-63717.yml +++ /dev/null @@ -1,9 +0,0 @@ -# Organizacija računalnikov -# Robert.Rozman@fri.uni-lj.si -# Windows, Logisim, Logisim Evolution, RAVINOR, CubeIDE + QEMU Embedded plugin -- include_tasks: logisim.yml -- include_tasks: stm32cube.yml -- include_tasks: ninja.yml -- include_tasks: cmake.yml -- include_tasks: gcc-arm.yml -# TODO: RAVINOR, CubeIDE diff --git a/roles/winroom/tasks/ORS-63218.yml b/roles/winroom/tasks/ORS-63218.yml deleted file mode 100644 index 525ca933..00000000 --- a/roles/winroom/tasks/ORS-63218.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Osnove Računalniških Sistemov -# Patricio.Bulic@fri.uni-lj.si -# - -- include_tasks: vscode.yml -- include_tasks: sifive.yml diff --git a/roles/winroom/tasks/OS-63709.yml b/roles/winroom/tasks/OS-63709.yml deleted file mode 100644 index 44edcd6f..00000000 --- a/roles/winroom/tasks/OS-63709.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Operacijski sistemi -# Borut.Batagelj@fri.uni-lj.si, Ziga.Emersic@fri.uni-lj.si, Bojan.Klemenc@fri.uni-lj.si, Matej.Vitek@fri.uni-lj.si -# VirtualBox -- include_tasks: virtualbox.yml diff --git a/roles/winroom/tasks/OS-63741.yml b/roles/winroom/tasks/OS-63741.yml deleted file mode 100644 index 9e56fad2..00000000 --- a/roles/winroom/tasks/OS-63741.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Odločitveni sistemi -# Martin.Mozina@fri.uni-lj.si -# Windows -- name: Odlocitveni sistemi - debug: - msg: "Odločitveni sistemi 63741 - brez zahtev" diff --git a/roles/winroom/tasks/OUI-63214.yml b/roles/winroom/tasks/OUI-63214.yml deleted file mode 100644 index 10db3209..00000000 --- a/roles/winroom/tasks/OUI-63214.yml +++ /dev/null @@ -1,7 +0,0 @@ -# Osnove umetne inteligence -# Jure.Zabkar@fri.uni-lj.si, Ales.Papic@fri.uni-lj.si, matej.piculin@fri.uni-lj.si, Marko.Zeman@fri.uni-lj.si, bojan.zunkovic@fri.uni-lj.si -# Orange, Weka 3, BayesFusion - -- include_tasks: orange.yml -- include_tasks: weka.yml -- include_tasks: bayesfusion.yml diff --git a/roles/winroom/tasks/P2-63278.yml b/roles/winroom/tasks/P2-63278.yml deleted file mode 100644 index 45b8e252..00000000 --- a/roles/winroom/tasks/P2-63278.yml +++ /dev/null @@ -1,8 +0,0 @@ -# Programiranje 2 -# bostjan.slivnik@fri.uni-lj.si -# gedit, vscode, pdf viewer (evince), gcc, g++, make, JDK - -- include_tasks: jdk.yml -- include_tasks: gedit.yml -- include_tasks: vscode.yml -- include_tasks: c_development.yml diff --git a/roles/winroom/tasks/P2-63706.yml b/roles/winroom/tasks/P2-63706.yml deleted file mode 100644 index f704f51b..00000000 --- a/roles/winroom/tasks/P2-63706.yml +++ /dev/null @@ -1,7 +0,0 @@ -# Programiranje 2 -# Tomaz.Dobravec@fri.uni-lj.si -# Windows, Java JDK, IntelliJ IDEA, Apache NetBeans - -- include_tasks: jdk.yml -- include_tasks: idea.yml -- include_tasks: netbeans.yml diff --git a/roles/winroom/tasks/PA-63737.yml b/roles/winroom/tasks/PA-63737.yml deleted file mode 100644 index 27258be6..00000000 --- a/roles/winroom/tasks/PA-63737.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Procesna avtomatika -# Nejc.Ilc@fri.uni-lj.si -# Windows, VMware Workstation 16.2.4 Player - -- include_tasks: vmware_player.yml diff --git a/roles/winroom/tasks/PB-63707.yml b/roles/winroom/tasks/PB-63707.yml deleted file mode 100644 index c1428396..00000000 --- a/roles/winroom/tasks/PB-63707.yml +++ /dev/null @@ -1,12 +0,0 @@ -# Podatkovne baze -# Ales.Jaklic@fri.uni-lj.si, matej.piculin@fri.uni-lj.si, Luka.Sajn@fri.uni-lj.si -# Windows, Power designer 12.5, Java JDK, Python 3, dotnet6 SDK, Jupyter Notebook, Eclipse, MySql Workbench, MySQL ODBC Connector, Notepad++ -- include_tasks: eclipse.yml -- include_tasks: dotnet6.yml -- include_tasks: jupyter.yml -- include_tasks: jdk.yml -- include_tasks: powerdesigner.yml -- include_tasks: pyodbc.yml -- include_tasks: mysql_workbench.yml -- include_tasks: mysql-odbc-connector.yml -- include_tasks: notepad++.yml diff --git a/roles/winroom/tasks/PB2-63713.yml b/roles/winroom/tasks/PB2-63713.yml deleted file mode 100644 index 4959d526..00000000 --- a/roles/winroom/tasks/PB2-63713.yml +++ /dev/null @@ -1,7 +0,0 @@ -# Podatkovne baze 2 -# Aljaz.Zrnec@fri.uni-lj.si -# Windows -# Podatkovne baze 2 -# Aljaz.Zrnec@fri.uni-lj.si -# Power designer 12.5 -- include_tasks: powerdesigner.yml diff --git a/roles/winroom/tasks/PJC-63769.yml b/roles/winroom/tasks/PJC-63769.yml deleted file mode 100644 index 3dd3ac53..00000000 --- a/roles/winroom/tasks/PJC-63769.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Programski jezik C -# Tomaz.Dobravec@fri.uni-lj.si -# Windows, Pelles C - -- include_tasks: pelles-c.yml diff --git a/roles/winroom/tasks/PS-63261.yml b/roles/winroom/tasks/PS-63261.yml deleted file mode 100644 index 4b01beba..00000000 --- a/roles/winroom/tasks/PS-63261.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Porazdeljeni sistemi -# Davor.Sluga@fri.uni-lj.si -# Windows, VS Code, golang -- include_tasks: vscode.yml -- include_tasks: golang.yml diff --git a/roles/winroom/tasks/PSP-63287.yml b/roles/winroom/tasks/PSP-63287.yml deleted file mode 100644 index 6e869179..00000000 --- a/roles/winroom/tasks/PSP-63287.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Programiranje specifičnih platform -# Veljko.Pejovic@fri.uni-lj.si -# Android Studio, Arduino IDE - -- include_tasks: android_studio.yml -- include_tasks: arduino.yml diff --git a/roles/winroom/tasks/PUI-63768.yml b/roles/winroom/tasks/PUI-63768.yml deleted file mode 100644 index be36b179..00000000 --- a/roles/winroom/tasks/PUI-63768.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Planiranje in upravljanje informatike -# damjan.fujs@fri.uni-lj.si -# Planiranje in upravljanje informatike (VS) -- include_tasks: projectlibre.yml diff --git a/roles/winroom/tasks/RA-63703.yml b/roles/winroom/tasks/RA-63703.yml deleted file mode 100644 index 9fd78454..00000000 --- a/roles/winroom/tasks/RA-63703.yml +++ /dev/null @@ -1,7 +0,0 @@ -# Računalniška arhitektura -# Ziga.Pusnik@fri.uni-lj.si, Rok.Cesnovar@fri.uni-lj.si, Robert.Rozman@fri.uni-lj.si, Mira.Trebar@fri.uni-lj.si -# Windows, RAVINOR, CubeIDE + QEMU Embedded plugin, WinIdea 9.21 + GCC + QEMU, WinIdea 9.12.256 (FRISMS kompatibilna), Visual2 - -- include_tasks: stm32cube.yml -- include_tasks: winidea.yml -- include_tasks: visual2.yml diff --git a/roles/winroom/tasks/RGTI-63269.yml b/roles/winroom/tasks/RGTI-63269.yml deleted file mode 100644 index 099919c9..00000000 --- a/roles/winroom/tasks/RGTI-63269.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Računalniška grafika in tehnologija iger -# Ziga.Lesar@fri.uni-lj.si -# Windows, Unity -- include_tasks: unity.yml diff --git a/roles/winroom/tasks/RIS-63252.yml b/roles/winroom/tasks/RIS-63252.yml deleted file mode 100644 index 698f7cea..00000000 --- a/roles/winroom/tasks/RIS-63252.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Razvoj informacijskih sistemov -# Aljaz.Zrnec@fri.uni-lj.si -# Power designer 12.5 -- include_tasks: powerdesigner.yml diff --git a/roles/winroom/tasks/RK-63209.yml b/roles/winroom/tasks/RK-63209.yml deleted file mode 100644 index fe7a9b82..00000000 --- a/roles/winroom/tasks/RK-63209.yml +++ /dev/null @@ -1,9 +0,0 @@ -# Računalniške komunikacije -# Ales.Jaklic@fri.uni-lj.si, Matjaz.Pancur@fri.uni-lj.si, Jure.Tuta@fri.uni-lj.si, Domen.Kosir@fri.uni-lj.si -# GNU/Linux, GNS3, Docker, VS Code, wireshark, Java JDK, Python 3 -- include_tasks: docker.yml -- include_tasks: gns3.yml -- include_tasks: vscode.yml -- include_tasks: wireshark.yml -- include_tasks: jdk.yml - diff --git a/roles/winroom/tasks/RK-63708.yml b/roles/winroom/tasks/RK-63708.yml deleted file mode 100644 index d03d8c0f..00000000 --- a/roles/winroom/tasks/RK-63708.yml +++ /dev/null @@ -1,9 +0,0 @@ -# Računalniške komunikacije -# Matjaz.Pancur@fri.uni-lj.si, Miha.Grohar@fri.uni-lj.si -# GNU/Linux, GNS3, Docker, VS Code, wireshark, Java JDK, Python 3 -- include_tasks: docker.yml -- include_tasks: gns3.yml -- include_tasks: vscode.yml -- include_tasks: wireshark.yml -- include_tasks: jdk.yml - diff --git a/roles/winroom/tasks/RPOI-90066.yml b/roles/winroom/tasks/RPOI-90066.yml deleted file mode 100644 index fc153334..00000000 --- a/roles/winroom/tasks/RPOI-90066.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Računalniška podpora oblikovanju I (ALUO) -# Matija.Marolt@fri.uni-lj.si -# SolidWorks -# Računalniška podpora oblikovanju I (ALUO) -# Matija.Marolt@fri.uni-lj.si -# SolidWorks diff --git a/roles/winroom/tasks/RZP-63523.yml b/roles/winroom/tasks/RZP-63523.yml deleted file mode 100644 index ecaf9412..00000000 --- a/roles/winroom/tasks/RZP-63523.yml +++ /dev/null @@ -1,7 +0,0 @@ -# Računalniška zvočna produkcija -# Aleks.Huc@fri.uni-lj.si -# IntelliJ IDEA, Audacity, GIT -- include_tasks: git.yml -- include_tasks: audacity.yml -- include_tasks: IDEA.yml - diff --git a/roles/winroom/tasks/SP-63255.yml b/roles/winroom/tasks/SP-63255.yml deleted file mode 100644 index f0a42a44..00000000 --- a/roles/winroom/tasks/SP-63255.yml +++ /dev/null @@ -1,6 +0,0 @@ -# Spletno Programiranje -# dejan.lavbic@fri.uni-lj.si -# git, docker, Node.js + npm, Visual Studio Code -- include_tasks: git.yml -- include_tasks: docker.yml -- include_tasks: nodejs.yml diff --git a/roles/winroom/tasks/ST-63727.yml b/roles/winroom/tasks/ST-63727.yml deleted file mode 100644 index 5fa86f81..00000000 --- a/roles/winroom/tasks/ST-63727.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Spletne tehnologije -# David.Jelenc@fri.uni-lj.si -# Windows, VS Code, XAMPP -- include_tasks: vscode.yml -- include_tasks: xampp.yml diff --git a/roles/winroom/tasks/SU-63519.yml b/roles/winroom/tasks/SU-63519.yml deleted file mode 100644 index 8eb82b13..00000000 --- a/roles/winroom/tasks/SU-63519.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Strojno učenje -# matej.piculin@fri.uni-lj.si, Petar.Vracar@fri.uni-lj.si -# Windows, R, RStudio -- include_tasks: rstudio.yml diff --git a/roles/winroom/tasks/TINR-63740.yml b/roles/winroom/tasks/TINR-63740.yml deleted file mode 100644 index c8663a71..00000000 --- a/roles/winroom/tasks/TINR-63740.yml +++ /dev/null @@ -1,3 +0,0 @@ -# Tehnologija iger in navidezna resničnost -# Bojan.Klemenc@fri.uni-lj.si -# macOS, Xcode diff --git a/roles/winroom/tasks/TIS-63216.yml b/roles/winroom/tasks/TIS-63216.yml deleted file mode 100644 index 1b05a8ed..00000000 --- a/roles/winroom/tasks/TIS-63216.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Teorija informacij in sistemov -# Davor.Sluga@fri.uni-lj.si -# Windows, VS Code, Python 3 -- include_tasks: vscode.yml -- include_tasks: thonny.yml diff --git a/roles/winroom/tasks/TUP-63226.yml b/roles/winroom/tasks/TUP-63226.yml deleted file mode 100644 index 3239da9c..00000000 --- a/roles/winroom/tasks/TUP-63226.yml +++ /dev/null @@ -1,12 +0,0 @@ -# Tehnologija upravljanja podatkov -# Luka.Sajn@fri.uni-lj.si -# Windows, Power designer 12.5, Java JDK, Python 3, dotnet6 SDK, Jupyter Notebook, Eclipse, MySql Workbench, MySQL ODBC Connector, Notepad++ -- include_tasks: eclipse.yml -- include_tasks: dotnet6.yml -- include_tasks: jupyter.yml -- include_tasks: jdk.yml -- include_tasks: powerdesigner.yml -- include_tasks: mysql_workbench.yml -- include_tasks: mysql-odbc-connector.yml -- include_tasks: notepad++.yml - diff --git a/roles/winroom/tasks/UI-63720.yml b/roles/winroom/tasks/UI-63720.yml deleted file mode 100644 index 3019f307..00000000 --- a/roles/winroom/tasks/UI-63720.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Umetna inteligenca -# Petar.Vracar@fri.uni-lj.si -# Windows, R, RStudio -- include_tasks: rstudio.yml diff --git a/roles/winroom/tasks/UV-63721.yml b/roles/winroom/tasks/UV-63721.yml deleted file mode 100644 index 419849d6..00000000 --- a/roles/winroom/tasks/UV-63721.yml +++ /dev/null @@ -1,8 +0,0 @@ -# Uporabniški vmesniki -# Ales.Smrdel@fri.uni-lj.si -# Windows, GNU/Linux, Java JDK, IntelliJ IDEA, javafx, SceneBuilder, X11 development, Wayland development, gtk+ development, glade, python -- include_tasks: jdk.yml -- include_tasks: idea.yml -- include_tasks: javafx.yml -- include_tasks: gui_development.yml -- include_tasks: scenebuilder.yml diff --git a/roles/winroom/tasks/UZ-63267.yml b/roles/winroom/tasks/UZ-63267.yml deleted file mode 100644 index ee2c9847..00000000 --- a/roles/winroom/tasks/UZ-63267.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Umetno zaznavanje -# jon.muhovic@fe.uni-lj.si -# Python3, Python 3 -- include_tasks: python3.yml diff --git a/roles/winroom/tasks/VN-63728.yml b/roles/winroom/tasks/VN-63728.yml deleted file mode 100644 index 3fb8d446..00000000 --- a/roles/winroom/tasks/VN-63728.yml +++ /dev/null @@ -1,9 +0,0 @@ -# Vhodno-izhodne naprave -# Robert.Rozman@fri.uni-lj.si -# Windows, Logisim Evolution, RAVINOR, WinIdea 9.12.256 (FRISMS kompatibilna), LTSpice - -- include_tasks: logisim.yml -- include_tasks: winidea-frisms.yml -- include_tasks: winidea.yml -- include_tasks: ltspice.yml - diff --git a/roles/winroom/tasks/VP-63775.yml b/roles/winroom/tasks/VP-63775.yml deleted file mode 100644 index e7c34e31..00000000 --- a/roles/winroom/tasks/VP-63775.yml +++ /dev/null @@ -1,13 +0,0 @@ -# Varnost Podatkov -# david.jelenc@fri.uni-lj.si -# Python (in standardno pripadajoča šara jupyter lab) in IntelliJ IDEA PyCharm CE -# PyCharm -# Java (kar je bilo lani bo ok) in IntelliJ IDEA CE -# maven -# git -- include_tasks: git.yml -- include_tasks: maven.yml -- include_tasks: idea.yml -- include_tasks: jdk.yml -- include_tasks: jupyter.yml -- include_tasks: pycharm.yml diff --git a/roles/winroom/tasks/VPSA-63735.yml b/roles/winroom/tasks/VPSA-63735.yml deleted file mode 100644 index ba8d41d7..00000000 --- a/roles/winroom/tasks/VPSA-63735.yml +++ /dev/null @@ -1,5 +0,0 @@ -# Vzporedni in porazdeljeni sistemi in algoritmi -# Davor.Sluga@fri.uni-lj.si, Rok.Cesnovar@fri.uni-lj.si -# Windows, VS Code, Build Tools for Visual Studio 2022 -- include_tasks: vscode.yml -- include_tasks: visual_studio.yml diff --git a/roles/winroom/tasks/VZR-63543.yml b/roles/winroom/tasks/VZR-63543.yml deleted file mode 100644 index d8474622..00000000 --- a/roles/winroom/tasks/VZR-63543.yml +++ /dev/null @@ -1,4 +0,0 @@ -# Visoko zmogljivo računanje -# Davor.Sluga@fri.uni-lj.si -# Windows, VS Code -- include_tasks: vscode.yml diff --git a/roles/winroom/tasks/adobe_cs.yml b/roles/winroom/tasks/adobe_cs.yml deleted file mode 100644 index a033864b..00000000 --- a/roles/winroom/tasks/adobe_cs.yml +++ /dev/null @@ -1 +0,0 @@ -# TODO ugotovi, kaj narediti z Adobe CS diff --git a/roles/winroom/tasks/all_classes.yml b/roles/winroom/tasks/all_classes.yml deleted file mode 100644 index 1e4427ee..00000000 --- a/roles/winroom/tasks/all_classes.yml +++ /dev/null @@ -1,54 +0,0 @@ -- import_tasks: AAHRP-63263.yml -- import_tasks: APS1-63279.yml -- import_tasks: ARP1-63545C.yml -- import_tasks: BMO-63259.yml -- import_tasks: DF-63530.yml -- import_tasks: DN-63260.yml -- import_tasks: DPS-63744.yml -- import_tasks: DV-63718.yml -- import_tasks: EP-63249.yml -- import_tasks: FP-63507.yml -- import_tasks: GO-63715.yml -- import_tasks: IS-63714.yml -- import_tasks: IVZ-63521.yml -- import_tasks: KCR-63550.yml -- import_tasks: KPOV-63716.yml -- import_tasks: MRO-63257.yml -- import_tasks: MV-63288.yml -- import_tasks: NDN-63729.yml -- import_tasks: NM-63522.yml -- import_tasks: NPMP-63512.yml -- import_tasks: NRG-63553.yml -- import_tasks: OBSS-63514.yml -- import_tasks: ODV-63204.yml -- import_tasks: OO-63271.yml -- import_tasks: OR-63717.yml -- import_tasks: OS-63709.yml -- import_tasks: OS-63741.yml -- import_tasks: OUI-63214.yml -- import_tasks: P2-63706.yml -- import_tasks: PA-63737.yml -- import_tasks: PB-63707.yml -- import_tasks: PB2-63713.yml -- import_tasks: PJC-63769.yml -- import_tasks: PS-63261.yml -- import_tasks: PSP-63287.yml -- import_tasks: PUI-63768.yml -- import_tasks: RA-63703.yml -- import_tasks: RGTI-63269.yml -- import_tasks: RIS-63252.yml -- import_tasks: RK-63209.yml -- import_tasks: RK-63708.yml -- import_tasks: RPOI-90066.yml -- import_tasks: RZP-63523.yml -- import_tasks: ST-63727.yml -- import_tasks: SU-63519.yml -- import_tasks: TINR-63740.yml -- import_tasks: TIS-63216.yml -- import_tasks: TUP-63226.yml -- import_tasks: UI-63720.yml -- import_tasks: UV-63721.yml -- import_tasks: UZ-63267.yml -- import_tasks: VN-63728.yml -- import_tasks: VPSA-63735.yml -- import_tasks: VZR-63543.yml diff --git a/roles/winroom/tasks/android_studio.yml b/roles/winroom/tasks/android_studio.yml deleted file mode 100644 index 6a858129..00000000 --- a/roles/winroom/tasks/android_studio.yml +++ /dev/null @@ -1,76 +0,0 @@ -- name: Set Android Studio version - set_fact: - sdk_path: C:\android-sdk - studio_version: "2021.3.1.16" - tools_version: "8512546_latest" - -- name: Check Android Studio tools - win_stat: - 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" - dest: C:\ - - - name: Extract Android Studio tools - win_unzip: - src: "C:\\commandlinetools-win-{{ tools_version }}.zip" - dest: "{{ sdk_path }}\\cmdline-tools" - delete_archive: yes - -- name: Accept Android SDK licenses - win_shell: sh -c "yes | /c/android-sdk/cmdline-tools/cmdline-tools/bin/sdkmanager.bat --licenses" - -- name: Install Android SDK - win_shell: | - {{ 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: 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" - register: file - -- when: not file.stat.exists - block: - - name: Download HAXM - win_get_url: - url: https://github.com/intel/haxm/releases/download/v7.7.1/haxm-windows_v7_7_1.zip - dest: C:\ - register: download - - - name: Unzip HAXM - win_unzip: - src: "{{ download.dest }}" - dest: C:\haxm - - - name: Install HAXM - win_command: C:\haxm\silent_install.bat - - - name: Remove temporaries - win_file: - path: C:\haxm - state: absent diff --git a/roles/winroom/tasks/arduino.yml b/roles/winroom/tasks/arduino.yml deleted file mode 100644 index 566f2293..00000000 --- a/roles/winroom/tasks/arduino.yml +++ /dev/null @@ -1,7 +0,0 @@ -- name: Install Arduino IDE - win_package: - path: https://downloads.arduino.cc/arduino-ide/arduino-ide_2.0.0_Windows_64bit.exe - arguments: /S /AllUsers - creates_path: "%ProgramFiles%\\Arduino IDE\\Arduino IDE.exe" - -# TODO check if anything else is needed (esp8266com)? diff --git a/roles/winroom/tasks/audacity.yml b/roles/winroom/tasks/audacity.yml deleted file mode 100644 index bd11fd68..00000000 --- a/roles/winroom/tasks/audacity.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Install Audacity - win_chocolatey: - name: audacity diff --git a/roles/winroom/tasks/bayesfusion.yml b/roles/winroom/tasks/bayesfusion.yml deleted file mode 100644 index 4dfbd992..00000000 --- a/roles/winroom/tasks/bayesfusion.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: Install BayesFusion - win_package: - path: "{{ installers }}\\genie-academic-setup-4.0.1922-x86.exe" - arguments: /VerySilent - creates_path: "%ProgramFiles(x86)%\\GeNIe 4.0 Academic\\genie.exe" diff --git a/roles/winroom/tasks/blender.yml b/roles/winroom/tasks/blender.yml deleted file mode 100644 index 8985fd2d..00000000 --- a/roles/winroom/tasks/blender.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Install Blender - win_package: - path: https://ftp.nluug.nl/pub/graphics/blender/release/Blender3.3/blender-3.3.0-windows-x64.msi diff --git a/roles/winroom/tasks/c_development.yml b/roles/winroom/tasks/c_development.yml deleted file mode 100644 index 88cfb730..00000000 --- a/roles/winroom/tasks/c_development.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Do not install C development tools - debug: - msg: "Do not install C development tools" diff --git a/roles/winroom/tasks/chrome.yml b/roles/winroom/tasks/chrome.yml deleted file mode 100644 index 221c6ce3..00000000 --- a/roles/winroom/tasks/chrome.yml +++ /dev/null @@ -1,10 +0,0 @@ -- name: Install Chrome - win_chocolatey: - name: googlechrome - -- name: Disable Chrome updates - win_regedit: - path: HKLM:\SOFTWARE\Policies\Google\Update - name: AutoUpdateCheckPeriodMinutes - type: dword - data: 0 diff --git a/roles/winroom/tasks/cmake.yml b/roles/winroom/tasks/cmake.yml deleted file mode 100644 index a678bdf9..00000000 --- a/roles/winroom/tasks/cmake.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Do not install cmake - debug: - msg: "Do not install cmake" diff --git a/roles/winroom/tasks/docker.yml b/roles/winroom/tasks/docker.yml deleted file mode 100644 index 46409041..00000000 --- a/roles/winroom/tasks/docker.yml +++ /dev/null @@ -1 +0,0 @@ -# TODO diff --git a/roles/winroom/tasks/dotnet6.yml b/roles/winroom/tasks/dotnet6.yml deleted file mode 100644 index 62e81678..00000000 --- a/roles/winroom/tasks/dotnet6.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Install .NET 6 SDK - win_chocolatey: - name: dotnet-6.0-sdk diff --git a/roles/winroom/tasks/eclipse.yml b/roles/winroom/tasks/eclipse.yml deleted file mode 100644 index 064d5fa6..00000000 --- a/roles/winroom/tasks/eclipse.yml +++ /dev/null @@ -1,14 +0,0 @@ -- name: Set Eclipse version - set_fact: - target_version: "4.25" - -- name: Install Eclipse - win_chocolatey: - name: eclipse - version: "{{ target_version }}" - -- name: Set up default directories for Eclipse - win_lineinfile: - path: "%ProgramFiles%\\Eclipse {{ target_version }}\\eclipse\\eclipse.ini" - regexp: "osgi.instance.area.default" - line: "-Dosgi.instance.area.default=H:/Documents/eclipse-workspace" diff --git a/roles/winroom/tasks/emacs.yml b/roles/winroom/tasks/emacs.yml deleted file mode 100644 index 6d177a03..00000000 --- a/roles/winroom/tasks/emacs.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install Emacs - win_chocolatey: - name: emacs.install - state: present diff --git a/roles/winroom/tasks/firefox.yml b/roles/winroom/tasks/firefox.yml deleted file mode 100644 index 53987a98..00000000 --- a/roles/winroom/tasks/firefox.yml +++ /dev/null @@ -1,26 +0,0 @@ -- name: Install Firefox - win_chocolatey: - name: firefox -- name: Create Firefox policy directory - win_file: - dest: C:\Program Files\Mozilla Firefox\distribution - state: directory -- name: Set Firefox policies - copy: - dest: C:\Program Files\Mozilla Firefox\distribution\policies.json - content: | - { - "policies": { - "DisableAppUpdate": true, - "DisableSystemAddonUpdate": true, - "DisableTelemetry": true, - "UserMessaging": { - "WhatsNew": false, - "ExtensionRecommendations": false, - "FeatureRecommendations": false, - "UrlbarInterventions": false, - "SkipOnboarding": true, - "MoreFromMozilla": false - } - } - } diff --git a/roles/winroom/tasks/fri_base.yml b/roles/winroom/tasks/fri_base.yml deleted file mode 100644 index 5b3db8d3..00000000 --- a/roles/winroom/tasks/fri_base.yml +++ /dev/null @@ -1,12 +0,0 @@ -- include_tasks: 7zip.yml -- include_tasks: chrome.yml -- include_tasks: firefox.yml -- include_tasks: libreoffice.yml -- include_tasks: msys2.yml -- include_tasks: pycharm.yml # not required by anyone but used by everyone -- include_tasks: sublime-text.yml -- include_tasks: sumatrapdf.yml -- include_tasks: vlc.yml -- name: Set timezone - win_timezone: - timezone: Central Europe Standard Time diff --git a/roles/winroom/tasks/gcc-arm.yml b/roles/winroom/tasks/gcc-arm.yml deleted file mode 100644 index a42f7754..00000000 --- a/roles/winroom/tasks/gcc-arm.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Do not install gcc for arm - debug: - msg: "Do not install gcc for arm" diff --git a/roles/winroom/tasks/gedit.yml b/roles/winroom/tasks/gedit.yml deleted file mode 100644 index 072e8356..00000000 --- a/roles/winroom/tasks/gedit.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Do not install GEdit - debug: - msg: "Do not install GEdit" diff --git a/roles/winroom/tasks/gimp.yml b/roles/winroom/tasks/gimp.yml deleted file mode 100644 index fa361a0a..00000000 --- a/roles/winroom/tasks/gimp.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Install GIMP - win_chocolatey: - name: gimp diff --git a/roles/winroom/tasks/git.yml b/roles/winroom/tasks/git.yml deleted file mode 100644 index b08c7c93..00000000 --- a/roles/winroom/tasks/git.yml +++ /dev/null @@ -1,8 +0,0 @@ -- name: Install git - win_chocolatey: - name: git.install - package_params: /GitAndUnixToolsOnPath - -- name: Install git-extensions - win_chocolatey: - name: gitextensions, kdiff3 diff --git a/roles/winroom/tasks/gns3.yml b/roles/winroom/tasks/gns3.yml deleted file mode 100644 index 2cc5ce37..00000000 --- a/roles/winroom/tasks/gns3.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: GNS3 na Windows ne deluje - debug: - msg: "GNS3 na Windows zaenkrat ne vklapljamo" - diff --git a/roles/winroom/tasks/golang.yml b/roles/winroom/tasks/golang.yml deleted file mode 100644 index 3065ec53..00000000 --- a/roles/winroom/tasks/golang.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Install the GO programming language - win_chocolatey: - name: golang diff --git a/roles/winroom/tasks/gui_development.yml b/roles/winroom/tasks/gui_development.yml deleted file mode 100644 index 8276898d..00000000 --- a/roles/winroom/tasks/gui_development.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Do not install GUI devel tools - debug: - msg: "Do not install GUI development libraries and tools" diff --git a/roles/winroom/tasks/haskell.yml b/roles/winroom/tasks/haskell.yml deleted file mode 100644 index 882021a8..00000000 --- a/roles/winroom/tasks/haskell.yml +++ /dev/null @@ -1,25 +0,0 @@ -# - name: Check Haskell install status -# win_stat: -# path: C:\ghcup\bin\ghc.exe -# register: file - -# - when: not file.stat.exists -# block: -# - name: Download Haskell -# win_get_url: -# url: "https://www.haskell.org/ghcup/sh/bootstrap-haskell.ps1" -# dest: 'C:\' -# register: download - -# - name: Install Haskell -# win_command: powershell.exe {{ download.dest }} -InBash -ExistingMsys2Dir C:\msys64 - -# - name: Add Haskell to PATH -# win_path: -# elements: -# C:\ghcup\bin - -# - name: Remove temporary files -# win_file: -# path: "{{ download.dest }}" -# state: absent diff --git a/roles/winroom/tasks/idea.yml b/roles/winroom/tasks/idea.yml deleted file mode 100644 index 2c6cf1bd..00000000 --- a/roles/winroom/tasks/idea.yml +++ /dev/null @@ -1,9 +0,0 @@ -- name: Set IDEA version - set_fact: - target_version: "2023.2.1" - -- name: Install IDEA - win_package: - path: "https://download.jetbrains.com/idea/ideaIC-{{ target_version }}.exe" - arguments: /S - creates_path: "%ProgramFiles(x86)%\\JetBrains\\IntelliJ IDEA Community Edition {{ target_version }}\\bin\\idea64.exe" diff --git a/roles/winroom/tasks/inkscape.yml b/roles/winroom/tasks/inkscape.yml deleted file mode 100644 index d8621f6f..00000000 --- a/roles/winroom/tasks/inkscape.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Install Inkscape - win_chocolatey: - name: inkscape diff --git a/roles/winroom/tasks/javafx.yml b/roles/winroom/tasks/javafx.yml deleted file mode 100644 index 9bc5d804..00000000 --- a/roles/winroom/tasks/javafx.yml +++ /dev/null @@ -1,20 +0,0 @@ -- name: Check javafx install - win_find: - paths: "C:\\Program Files\\Java" - patterns: ['javafx-sdk-*'] - file_type: directory - register: install - -- when: install.matched == 0 - block: - - name: Download javafx - win_get_url: - url: https://download2.gluonhq.com/openjfx/19/openjfx-19_windows-x64_bin-sdk.zip - dest: C:\ - register: download - - - name: Install javafx - win_unzip: - src: "{{ download.dest }}" - dest: "%ProgramFiles%\\Java" - delete_archive: yes diff --git a/roles/winroom/tasks/jdk.yml b/roles/winroom/tasks/jdk.yml deleted file mode 100644 index c3e3dc66..00000000 --- a/roles/winroom/tasks/jdk.yml +++ /dev/null @@ -1,29 +0,0 @@ -- name: Install Oracle JDK - win_package: - path: https://download.oracle.com/java/20/latest/jdk-20_windows-x64_bin.msi - arguments: INSTALLLEVEL=3 - -- name: Find Java version - win_reg_stat: - path: HKLM:\SOFTWARE\JavaSoft\JDK - name: CurrentVersion - register: reg - -- name: Find Java home - win_reg_stat: - path: "HKLM:\\SOFTWARE\\JavaSoft\\JDK\\{{ reg['value'] }}" - name: JavaHome - register: reg - -- name: Set JAVA_HOME - win_environment: - name: JAVA_HOME - value: "{{ reg['raw_value'] }}" - level: machine - -- name: Disable Java updates - win_regedit: - path: HKLM:\SOFTWARE\WOW6432Node\JavaSoft\Java Update\Policy - name: EnableJavaUpdate - type: dword - data: 0 diff --git a/roles/winroom/tasks/jlink.yml b/roles/winroom/tasks/jlink.yml deleted file mode 100644 index 8b07e129..00000000 --- a/roles/winroom/tasks/jlink.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install Segger JLink - win_package: - path: https://www.segger.com/downloads/jlink/JLink_Windows_V792d_x86_64.exe - arguments: /S diff --git a/roles/winroom/tasks/julia.yml b/roles/winroom/tasks/julia.yml deleted file mode 100644 index 73172bde..00000000 --- a/roles/winroom/tasks/julia.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install Julia - win_package: - path: https://julialang-s3.julialang.org/bin/winnt/x64/1.10/julia-1.10.4-win64.exe - arguments: /VerySilent /AllUsers diff --git a/roles/winroom/tasks/jupyter.yml b/roles/winroom/tasks/jupyter.yml deleted file mode 100644 index 7a3001d3..00000000 --- a/roles/winroom/tasks/jupyter.yml +++ /dev/null @@ -1,8 +0,0 @@ -- name: Install Jupyter Notebook - win_command: pip install jupyter jupyterlab - -- name: Create Jupyter Notebook shortcut - win_shortcut: - dest: "C:\\Users\\Public\\Desktop\\Jupyter Notebook.lnk" - src: cmd.exe - arguments: /k jupyter notebook diff --git a/roles/winroom/tasks/libreoffice.yml b/roles/winroom/tasks/libreoffice.yml deleted file mode 100644 index 0a9b610f..00000000 --- a/roles/winroom/tasks/libreoffice.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Install LibreOffice - win_chocolatey: - name: libreoffice diff --git a/roles/winroom/tasks/logisim.yml b/roles/winroom/tasks/logisim.yml deleted file mode 100644 index fa5ce2e9..00000000 --- a/roles/winroom/tasks/logisim.yml +++ /dev/null @@ -1,19 +0,0 @@ -- name: Create Logisim directory - win_file: - path: "%ProgramFiles%\\logisim" - state: directory - -- name: Install Logisim - win_get_url: - url: https://sourceforge.net/projects/circuit/files/2.7.x/2.7.1/logisim-generic-2.7.1.jar - dest: "%ProgramFiles%\\logisim\\logisim.jar" - -- name: Create Logisim shortcut - win_shortcut: - src: "%ProgramFiles%\\logisim\\logisim.jar" - dest: "C:\\Users\\Public\\Desktop\\Logisim.lnk" - -- name: Install Logisim-Evolution - win_package: - path: https://github.com/logisim-evolution/logisim-evolution/releases/download/v3.7.2/logisim-evolution-3.7.2.msi - product_id: b30fa00c-da3f-3769-aaea-6571cacf5c30 diff --git a/roles/winroom/tasks/ltspice.yml b/roles/winroom/tasks/ltspice.yml deleted file mode 100644 index c6a8e9ec..00000000 --- a/roles/winroom/tasks/ltspice.yml +++ /dev/null @@ -1 +0,0 @@ -# TODO https://ltspice.analog.com/software/LTspice64.exe diff --git a/roles/winroom/tasks/matlab.yml b/roles/winroom/tasks/matlab.yml deleted file mode 100644 index 37b07349..00000000 --- a/roles/winroom/tasks/matlab.yml +++ /dev/null @@ -1,26 +0,0 @@ -- name: Set Matlab version - set_fact: - target_version: "r2022b" - -- name: Mount Matlab ISO - win_disk_image: - image_path: "{{ installers }}\\matlab\\matlab-{{ target_version }}.iso" - state: present - register: disk_image - -- name: Install Matlab - win_package: - path: "{{ disk_image.mount_paths[0] }}\\setup.exe" - arguments: -inputFile "{{ installers }}\\matlab\\installer_input.txt" - -- name: Unmount Matlab ISO - win_disk_image: - image_path: "{{ installers }}\\matlab\\matlab-{{ target_version }}.iso" - state: absent - -# TODO MATLAB throws license error -83 when run -- name: Install Matlab license - win_copy: - dest: "%ProgramFiles%\\MATLAB\\{{ target_version }}\\licenses\\network.lic" - src: "{{ installers }}\\matlab\\network.lic" - remote_src: yes diff --git a/roles/winroom/tasks/maven.yml b/roles/winroom/tasks/maven.yml deleted file mode 100644 index cff5d45f..00000000 --- a/roles/winroom/tasks/maven.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install maven - apt: - name: maven - state: latest diff --git a/roles/winroom/tasks/minecraft-education.yml b/roles/winroom/tasks/minecraft-education.yml deleted file mode 100644 index 92b0dc37..00000000 --- a/roles/winroom/tasks/minecraft-education.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Install Minecraft Education - win_chocolatey: - name: minecraft-education diff --git a/roles/winroom/tasks/msys2.yml b/roles/winroom/tasks/msys2.yml deleted file mode 100644 index 0e22935d..00000000 --- a/roles/winroom/tasks/msys2.yml +++ /dev/null @@ -1,41 +0,0 @@ -- name: Check msys2 install status - win_stat: - path: C:\msys64 - register: file - -- when: not file.stat.exists - block: - - name: Download msys2 - win_get_url: - url: "https://github.com/msys2/msys2-installer/releases/download/2022-09-04/msys2-x86_64-20220904.exe" - dest: 'C:\' - register: download - - - name: Install msys2 - win_package: - path: "{{ download.dest }}" - arguments: install --confirm-command --accept-messages --root C:\msys64 - - - name: Remove temporary files - win_file: - path: "{{ download.dest }}" - state: absent - - - name: Create desktop shortcut - win_shortcut: - src: "C:\\msys64\\msys2.exe" - dest: "C:\\Users\\Public\\Desktop\\msys2.lnk" - - - name: Update msys2 - win_command: C:\\msys64\\usr\\bin\\pacman -Syu --noconfirm - - - name: Install essentials - win_command: C:\\msys64\\usr\\bin\\pacman -S --noconfirm {{ item }} - loop: - - gcc - - git - - make - - nano - - rlwrap - - rsync - - vim diff --git a/roles/winroom/tasks/mysql-odbc-connector.yml b/roles/winroom/tasks/mysql-odbc-connector.yml deleted file mode 100644 index f44a1949..00000000 --- a/roles/winroom/tasks/mysql-odbc-connector.yml +++ /dev/null @@ -1,12 +0,0 @@ -- name: Install MySQL ODBC connector (32-bit) - win_package: - path: https://dev.mysql.com/get/Downloads/Connector-ODBC/8.0/mysql-connector-odbc-8.0.33-win32.msi - # product_id: "8f52ac06-953a-49fc-95d9-58497892fa21" - product_id: "9F326F09-E926-444B-86E9-1BEA240886A2" - -- name: Install MySQL ODBC connector (64-bit) - win_package: - path: https://dev.mysql.com/get/Downloads/Connector-ODBC/8.0/mysql-connector-odbc-8.0.33-winx64.msi - # product_id: "a02f5ad7-2744-4911-a102-8253913ca59c" - product_id: "9AC93A88-9070-47B0-9EFC-DDA915EF22BA" - diff --git a/roles/winroom/tasks/mysql_workbench.yml b/roles/winroom/tasks/mysql_workbench.yml deleted file mode 100644 index 221ebab6..00000000 --- a/roles/winroom/tasks/mysql_workbench.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Install MySQL workbench - win_package: - path: "https://dev.mysql.com/get/Downloads/MySQLGUITools/mysql-workbench-community-8.0.34-winx64.msi" diff --git a/roles/winroom/tasks/netbeans.yml b/roles/winroom/tasks/netbeans.yml deleted file mode 100644 index 586bc69e..00000000 --- a/roles/winroom/tasks/netbeans.yml +++ /dev/null @@ -1,9 +0,0 @@ -- name: Set Netbeans version - set_fact: - target_version: "15" - -- name: Install Netbeans - 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" diff --git a/roles/winroom/tasks/ninja.yml b/roles/winroom/tasks/ninja.yml deleted file mode 100644 index a1d20909..00000000 --- a/roles/winroom/tasks/ninja.yml +++ /dev/null @@ -1,28 +0,0 @@ -- name: Install Ninja - debug: - msg: "Do not install Ninja" - -- name: Check Ninja install status - win_stat: - path: "%ProgramFiles%\\Ninja-build\\ninja.exe" - register: file - -- when: not file.stat.exists - block: - - name: Download Ninja-build - win_get_url: - url: https://github.com/ninja-build/ninja/releases/download/v1.11.1/ninja-linux.zip - dest: 'C:\' - register: download - - - name: Create Ninja-build directory - win_file: - path: "%ProgramFiles%\\Ninja-build" - state: directory - - - name: Install Ninja-build - win_unzip: - src: "{{ download.dest }}" - dest: "%ProgramFiles%\\Ninja-build" - delete_archive: yes - diff --git a/roles/winroom/tasks/nodejs.yml b/roles/winroom/tasks/nodejs.yml deleted file mode 100644 index f94b808a..00000000 --- a/roles/winroom/tasks/nodejs.yml +++ /dev/null @@ -1,14 +0,0 @@ -- name: Add NodeJS repo key - apt_key: - url: https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key - keyring: /etc/apt/keyrings/nodesource.gpg - -- name: Add NodeJS repo url - apt_repository: - repo: "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_20.x nodistro main" - -- name: Install NodeJS - apt: - name: nodejs - state: latest - diff --git a/roles/winroom/tasks/notepad++.yml b/roles/winroom/tasks/notepad++.yml deleted file mode 100644 index ac1378dd..00000000 --- a/roles/winroom/tasks/notepad++.yml +++ /dev/null @@ -1,4 +0,0 @@ -# TODO disable update check -- name: Install Notepad++ - win_chocolatey: - name: notepadplusplus diff --git a/roles/winroom/tasks/ocaml.yml b/roles/winroom/tasks/ocaml.yml deleted file mode 100644 index fad06386..00000000 --- a/roles/winroom/tasks/ocaml.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Do not install OCaml - debug: - msg: "Do not install OCaml" diff --git a/roles/winroom/tasks/octave.yml b/roles/winroom/tasks/octave.yml deleted file mode 100644 index cf4f93c8..00000000 --- a/roles/winroom/tasks/octave.yml +++ /dev/null @@ -1,10 +0,0 @@ -# chocolatey package is broken -- name: Set Octave version - set_fact: - target_version: "7.2.0" - -- name: Install Octave - win_package: - path: https://ftpmirror.gnu.org/octave/windows/octave-{{ target_version }}-w64-installer.exe - arguments: /S /AllUsers - creates_path: C:\Program Files\GNU Octave\Octave-{{ target_version }} diff --git a/roles/winroom/tasks/omnetpp.yml b/roles/winroom/tasks/omnetpp.yml deleted file mode 100644 index 05d30b5b..00000000 --- a/roles/winroom/tasks/omnetpp.yml +++ /dev/null @@ -1,47 +0,0 @@ -- name: Set OMNet++ version - set_fact: - target_version: "6.0.1" - target_dir: "C:\\OMNeT++" - -- name: Check OMNet++ install status - win_stat: - path: "{{ target_dir }}" - register: file - -- when: not file.stat.exists - block: - - name: Download OMNet++ - win_get_url: - 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: C:\ - delete_archive: yes - - - name: Move OMNet++ to final location - win_command: cmd.exe /c move "C:\\omnetpp-{{ target_version }}" "{{ target_dir }}" - - - name: Create OMNet++ compile script - win_copy: - src: "{{ target_dir }}\\mingwenv.cmd" - dest: "{{ target_dir }}\\mingwenv-install.cmd" - remote_src: yes - - - name: Fix OMNet++ compile script - win_lineinfile: - path: "{{ target_dir }}\\mingwenv-install.cmd" - insertbefore: "rem Open the MinGW" - 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" - - - name: Copy OMNet++ shortcut - win_copy: - src: "{{ target_dir }}\\OMNeT++ {{ target_version }} IDE.lnk" - dest: "C:\\Users\\Public\\Desktop" - remote_src: yes diff --git a/roles/winroom/tasks/orange.yml b/roles/winroom/tasks/orange.yml deleted file mode 100644 index 7da92bf9..00000000 --- a/roles/winroom/tasks/orange.yml +++ /dev/null @@ -1,7 +0,0 @@ -- name: Install Orange - win_package: - path: https://download.biolab.si/download/files/Orange3-3.32.0-Miniconda-x86_64.exe - arguments: /S /AllUsers - creates_path: C:\Program Files\Orange\python.exe - creates_version: 3.8.8150.1013 - diff --git a/roles/winroom/tasks/pandas.yml b/roles/winroom/tasks/pandas.yml deleted file mode 100644 index 7e5fc51a..00000000 --- a/roles/winroom/tasks/pandas.yml +++ /dev/null @@ -1,2 +0,0 @@ -- name: Install pandas - win_command: pip install pandas diff --git a/roles/winroom/tasks/pelles-c.yml b/roles/winroom/tasks/pelles-c.yml deleted file mode 100644 index cc665451..00000000 --- a/roles/winroom/tasks/pelles-c.yml +++ /dev/null @@ -1,30 +0,0 @@ -- name: Set PellesC version - set_fact: - target_version: "11.00" - target_checksum: "a8ae79f0e340e4c0cec0869dd72fcd875496acc470174aed8eb377eab8bbce96" - -- name: Check PellesC install status - win_stat: - path: C:\Program Files\PellesC\Bin\poide.exe - register: file - -- when: not file.stat.exists - block: - # win_package fails to download for some reason - - name: Download PellesC - win_get_url: - url: http://www.smorgasbordet.com/pellesc/{{ target_version | replace('.', '') }}/setup.exe - checksum_algorithm: sha256 - checksum: "{{ target_checksum }}" - dest: 'C:\' - register: download - - - name: Install PellesC - win_package: - path: "{{ download.dest }}" - arguments: /S - - - name: Remove temporary files - win_file: - path: "{{ download.dest }}" - state: absent diff --git a/roles/winroom/tasks/powerdesigner.yml b/roles/winroom/tasks/powerdesigner.yml deleted file mode 100644 index 3afde4e0..00000000 --- a/roles/winroom/tasks/powerdesigner.yml +++ /dev/null @@ -1 +0,0 @@ -# TODO Which one? diff --git a/roles/winroom/tasks/processing.yml b/roles/winroom/tasks/processing.yml deleted file mode 100644 index ba4555f7..00000000 --- a/roles/winroom/tasks/processing.yml +++ /dev/null @@ -1,51 +0,0 @@ -- name: Set Processing version - set_fact: - target_version: 4.0.1 - target_build: 1286 - -- name: Check Processing install status - win_stat: - path: C:\Program Files\Processing\lib\version.txt - register: file - -- name: Check Processing version - slurp: - src: C:\Program Files\Processing\lib\version.txt - register: version - when: file.stat.exists - -- when: not file.stat.exists or ((version.content | b64decode) != target_version) - block: - - name: Make Processing directory - win_file: - path: C:\Program Files\Processing - state: directory - - name: Download Processing - win_get_url: - 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: - 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\lib\defaults.txt - regexp: 'update.check' - line: 'update.check = false' - - name: Create Processing shortcut - win_shortcut: - src: "%ProgramFiles%\\Processing\\processing.exe" - dest: "C:\\Users\\Public\\Desktop\\Processing.lnk" - - name: Remove temporary files - win_file: - path: C:\Program Files\Processing\{{ item }} - state: absent - loop: - - processing.zip - - processing-{{ target_version }} diff --git a/roles/winroom/tasks/projectlibre.yml b/roles/winroom/tasks/projectlibre.yml deleted file mode 100644 index 1e6e06da..00000000 --- a/roles/winroom/tasks/projectlibre.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install ProjectLibre - win_package: - path: "https://sourceforge.net/projects/projectlibre/files/ProjectLibre/1.9.3/projectlibre-1.9.3.exe" - arguments: /VerySilent diff --git a/roles/winroom/tasks/pycharm.yml b/roles/winroom/tasks/pycharm.yml deleted file mode 100644 index 46dbff14..00000000 --- a/roles/winroom/tasks/pycharm.yml +++ /dev/null @@ -1,10 +0,0 @@ -- name: Set PyCharm version - set_fact: - target_version: "2023.2.1" - -- name: Install PyCharm - win_chocolatey: - name: pycharm-community - version: "{{ target_version }}" - -# TODO set default project directory to H:\something diff --git a/roles/winroom/tasks/pyodbc.yml b/roles/winroom/tasks/pyodbc.yml deleted file mode 100644 index 70e0fb83..00000000 --- a/roles/winroom/tasks/pyodbc.yml +++ /dev/null @@ -1,2 +0,0 @@ -- name: Install pyodbc - win_command: pip install pyodbc diff --git a/roles/winroom/tasks/python3.yml b/roles/winroom/tasks/python3.yml deleted file mode 100644 index 60a44b2b..00000000 --- a/roles/winroom/tasks/python3.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Install Python - win_chocolatey: - name: python diff --git a/roles/winroom/tasks/pytorch.yml b/roles/winroom/tasks/pytorch.yml deleted file mode 100644 index 992b04e0..00000000 --- a/roles/winroom/tasks/pytorch.yml +++ /dev/null @@ -1,8 +0,0 @@ -- name: Install pytorch - apt: - name: - - python3-torch - - python3-skorch - - python3-torch-ignite - state: latest - diff --git a/roles/winroom/tasks/qcadesigner-e.yml b/roles/winroom/tasks/qcadesigner-e.yml deleted file mode 100644 index 31a1cd28..00000000 --- a/roles/winroom/tasks/qcadesigner-e.yml +++ /dev/null @@ -1,9 +0,0 @@ -- name: Install GTK+ - win_package: - path: https://github.com/FSillT/QCADesigner-E/raw/master/Windows/gtk2-runtime-2.24.10-2012-10-10-ash.exe - arguments: /S - -- name: Install QCADesigner-E - win_package: - path: https://github.com/FSillT/QCADesigner-E/raw/master/Windows/QCADesignerE-2.2-setup.exe - arguments: /VerySilent diff --git a/roles/winroom/tasks/racket.yml b/roles/winroom/tasks/racket.yml deleted file mode 100644 index b49e4993..00000000 --- a/roles/winroom/tasks/racket.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Install Racket - win_chocolatey: - name: racket diff --git a/roles/winroom/tasks/rlwrap.yml b/roles/winroom/tasks/rlwrap.yml deleted file mode 100644 index 0e64e556..00000000 --- a/roles/winroom/tasks/rlwrap.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Do not install rlwrap - debug: - msg: "Do not install rlwrap" diff --git a/roles/winroom/tasks/rstudio.yml b/roles/winroom/tasks/rstudio.yml deleted file mode 100644 index 59722b22..00000000 --- a/roles/winroom/tasks/rstudio.yml +++ /dev/null @@ -1,85 +0,0 @@ -- name: Install R - win_chocolatey: - name: r.project - package_params: /AddToPath - -- name: Find R directory - win_find: - paths: C:\Program Files\R - patterns: ['R-*'] - file_type: directory - register: base - -- name: Add R to path - win_path: - elements: - - "{{ base.files[0].path }}\\bin" - -- name: Find installed R libraries - win_find: - paths: "{{ base.files[0].path }}\\library" - file_type: directory - register: libs - -- name: Install R packages - win_command: Rscript - - args: - stdin: install.packages(c("{{ item }}"), repos = "http://cran.rstudio.com") - when: item not in (libs.files|map(attribute='filename')) - loop: - - CORElearn - - DEoptim - - DEoptimR - - GenSA - - MASS - - NMF - - RSNNS - - Radviz - - adabag - - aplpack - - arules - - arulesViz - - bnlearn - - caret - - class - - cluster - - e1071 - - graphics - - igraph - - ipred - - keras - - kernlab - - kknn - - lattice - - lpSolveAPI - - metaheuristicOpt - - neuralnet - - nnet - - quadprog - - randomForest - - reshape2 - - rpart - - rpart.plot - - smotefamily - - tabuSearch - - tidyverse - - viridisLite - -- name: Install RStudio - win_chocolatey: - name: r.studio - -- name: Create configuration directory - win_file: - path: "%PROGRAMDATA%\\RStudio" - state: directory - -- name: Disable crash reporting - win_copy: - dest: "%PROGRAMDATA%\\RStudio\\crash-handler.conf" - content: crash-handling-enabled=0 - -- name: Disable update notifications - win_copy: - dest: "%PROGRAMDATA%\\RStudio\\rstudio-prefs.json" - content: { "check_for_updates": false } diff --git a/roles/winroom/tasks/scenebuilder.yml b/roles/winroom/tasks/scenebuilder.yml deleted file mode 100644 index 293c7247..00000000 --- a/roles/winroom/tasks/scenebuilder.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install SceneBuilder - win_package: - path: https://download2.gluonhq.com/scenebuilder/18.0.0/install/win/SceneBuilder-18.0.0.msi - arguments: INSTALLDIR="C:\Program Files\SceneBuilder" ALLUSERS=1 diff --git a/roles/winroom/tasks/scipy.yml b/roles/winroom/tasks/scipy.yml deleted file mode 100644 index df18069f..00000000 --- a/roles/winroom/tasks/scipy.yml +++ /dev/null @@ -1,7 +0,0 @@ -- name: Install python3-scipy, scikit-learn - apt: - name: - - python3-scipy - - python3-sklearn - state: latest - diff --git a/roles/winroom/tasks/settings.yml b/roles/winroom/tasks/settings.yml deleted file mode 100644 index e6b936d5..00000000 --- a/roles/winroom/tasks/settings.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Set timezone - win_timezone: - timezone: Central Europe Standard Time diff --git a/roles/winroom/tasks/sifive.yml b/roles/winroom/tasks/sifive.yml deleted file mode 100644 index 0a887bdd..00000000 --- a/roles/winroom/tasks/sifive.yml +++ /dev/null @@ -1,4 +0,0 @@ -# SiFive je bil nekoc prosto dostopen. -# Sedaj hocejo, da se registriras... da prides do kode -# Potem pa ti ne dajo izvorne kode. -# ucilnice_install/2022-23/ORS_VGRS_Bulic diff --git a/roles/winroom/tasks/smlnj.yml b/roles/winroom/tasks/smlnj.yml deleted file mode 100644 index 3de06e43..00000000 --- a/roles/winroom/tasks/smlnj.yml +++ /dev/null @@ -1,8 +0,0 @@ -- name: Set SML/NJ - set_fact: - target_version: "110.99.3" - -- name: Install SML/NJ - win_package: - path: "https://smlnj.org/dist/working/{{ target_version }}/smlnj-{{ target_version }}.msi" - creates_path: "%ProgramFiles(x86)%\\SMLNJ\\bin\\sml.bat" diff --git a/roles/winroom/tasks/statsmodels.yml b/roles/winroom/tasks/statsmodels.yml deleted file mode 100644 index ff72e374..00000000 --- a/roles/winroom/tasks/statsmodels.yml +++ /dev/null @@ -1,6 +0,0 @@ -- name: Install statsmodels - apt: - name: - - python3-statsmodels - state: latest - diff --git a/roles/winroom/tasks/stm32cube.yml b/roles/winroom/tasks/stm32cube.yml deleted file mode 100644 index 15f430f5..00000000 --- a/roles/winroom/tasks/stm32cube.yml +++ /dev/null @@ -1,23 +0,0 @@ -- name: Check WinIDEA install status - win_stat: - path: C:\iSYSTEM\winIDEA9\winIDEA.exe - register: file - -- when: not file.stat.exists - block: - - name: Install CubeIDE - win_package: - path: "D:\\RAVINOR\\st-stm32cubeide_1.10.1_12716_20220707_0928_x86_64.exe" - arguments: /S - - - name: Set CubeIDE default workspace - win_lineinfile: - path: C:\ST\STM32CubeIDE_1.10.1\STM32CubeIDE\stm32cubeide.ini - regexp: "osgi.instance.area.default" - line: "-Dosgi.instance.area.default=D:/RAVINOR/CubeIDE_Workspace" - - # 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 diff --git a/roles/winroom/tasks/sublime-text.yml b/roles/winroom/tasks/sublime-text.yml deleted file mode 100644 index 5ab7212f..00000000 --- a/roles/winroom/tasks/sublime-text.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install Sublime Text - win_chocolatey: - name: sublimetext4 - state: present diff --git a/roles/winroom/tasks/sumatrapdf.yml b/roles/winroom/tasks/sumatrapdf.yml deleted file mode 100644 index 25b81d3d..00000000 --- a/roles/winroom/tasks/sumatrapdf.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Install SumatraPDF - win_chocolatey: - name: sumatrapdf diff --git a/roles/winroom/tasks/swi-prolog.yml b/roles/winroom/tasks/swi-prolog.yml deleted file mode 100644 index d7fbd07b..00000000 --- a/roles/winroom/tasks/swi-prolog.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Install SWI-Prolog - win_chocolatey: - name: swi-prolog diff --git a/roles/winroom/tasks/tensorflow.yml b/roles/winroom/tasks/tensorflow.yml deleted file mode 100644 index e7cb9071..00000000 --- a/roles/winroom/tasks/tensorflow.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install tensorflow - pip: - executable: pip3 - name: tensorflow diff --git a/roles/winroom/tasks/thonny.yml b/roles/winroom/tasks/thonny.yml deleted file mode 100644 index 6a14128f..00000000 --- a/roles/winroom/tasks/thonny.yml +++ /dev/null @@ -1,27 +0,0 @@ -- name: Set Thonny version - set_fact: - target_version: 4.0.1 - -- name: Check Thonny install status - win_stat: - path: C:\Program Files (x86)\Thonny\thonny.exe - register: file - -- when: not file.stat.exists - block: - # win_package fails to download for some reason - - name: Download Thonny - win_get_url: - url: https://github.com/thonny/thonny/releases/download/v{{ target_version }}/thonny-{{ target_version }}.exe - dest: 'C:\' - register: download - - - name: Install Thonny - win_package: - path: "{{ download.dest }}" - arguments: /Verysilent /AllUsers - - - name: Remove temporary files - win_file: - path: "{{ download.dest }}" - state: absent diff --git a/roles/winroom/tasks/unity.yml b/roles/winroom/tasks/unity.yml deleted file mode 100644 index a73fcdea..00000000 --- a/roles/winroom/tasks/unity.yml +++ /dev/null @@ -1,7 +0,0 @@ -- name: Install Unity - win_chocolatey: - name: unity - -# Don’t install Unity Hub because it wants a login when run. - -# TODO Figure out license stuff. diff --git a/roles/winroom/tasks/virtualbox.yml b/roles/winroom/tasks/virtualbox.yml deleted file mode 100644 index 3c2fd69f..00000000 --- a/roles/winroom/tasks/virtualbox.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: Install Virtualbox - win_chocolatey: - name: virtualbox - state: present diff --git a/roles/winroom/tasks/visual2.yml b/roles/winroom/tasks/visual2.yml deleted file mode 100644 index df47755e..00000000 --- a/roles/winroom/tasks/visual2.yml +++ /dev/null @@ -1,32 +0,0 @@ -- name: Set Visual2 version - set_fact: - target_version: "1.06.10" - -- name: Check Visual2 install status - win_stat: - path: "%ProgramFiles%\\VisUAL2\\VisUAL2.exe" - register: file - -- when: not file.stat.exists - block: - - name: Download Visual2 - win_get_url: - url: https://github.com/tomcl/V2releases/releases/download/{{ target_version }}/visual2-win32-x64.zip - dest: 'C:\' - register: download - - - name: Create Visual2 directory - win_file: - path: "%ProgramFiles%\\VisUAL2" - state: directory - - - name: Install Visual2 - win_unzip: - src: "{{ download.dest }}" - dest: "%ProgramFiles%\\VisUAL2" - delete_archive: yes - - - name: Create Visual2 shortcut - win_shortcut: - src: "%ProgramFiles%\\Visual2\\VisUAL2.exe" - dest: "C:\\Users\\Public\\Desktop\\VisUAL2.lnk" diff --git a/roles/winroom/tasks/visual_studio.yml b/roles/winroom/tasks/visual_studio.yml deleted file mode 100644 index 27bcd8ae..00000000 --- a/roles/winroom/tasks/visual_studio.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Install Visual Studio 2022 Build Tools - win_chocolatey: - name: visualstudio2022buildtools diff --git a/roles/winroom/tasks/vivado.yml b/roles/winroom/tasks/vivado.yml deleted file mode 100644 index 46409041..00000000 --- a/roles/winroom/tasks/vivado.yml +++ /dev/null @@ -1 +0,0 @@ -# TODO diff --git a/roles/winroom/tasks/vlc.yml b/roles/winroom/tasks/vlc.yml deleted file mode 100644 index a3ba667b..00000000 --- a/roles/winroom/tasks/vlc.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Install VLC - win_chocolatey: - name: vlc diff --git a/roles/winroom/tasks/vmware_player.yml b/roles/winroom/tasks/vmware_player.yml deleted file mode 100644 index eb938335..00000000 --- a/roles/winroom/tasks/vmware_player.yml +++ /dev/null @@ -1,3 +0,0 @@ -- name: Install VMware Player - win_chocolatey: - name: vmware-workstation-player diff --git a/roles/winroom/tasks/vscode.yml b/roles/winroom/tasks/vscode.yml deleted file mode 100644 index 6a7a345c..00000000 --- a/roles/winroom/tasks/vscode.yml +++ /dev/null @@ -1,20 +0,0 @@ -- name: Install VS Code - win_chocolatey: - name: vscode - -- name: Add firewall rule for VS Code - win_firewall_rule: - name: "Allow inbound traffic for VS Code" - program: "%ProgramFiles%\\Microsoft VS Code\\code.exe" - action: allow - direction: in - -- name: Include VS code extension list - include_vars: vscode_extensions.yml - -- name: Install VS Code extensions - win_shell: code --extensions-dir "C:\\Program Files\\Microsoft VS Code\\resources\\app\\extensions" --install-extension "{{ item }}" - args: - chdir: "%ProgramFiles%\\Microsoft VS Code\\bin" - loop: "{{VSCode_Extensions}}" - diff --git a/roles/winroom/tasks/vscode_extensions.yml b/roles/winroom/tasks/vscode_extensions.yml deleted file mode 100644 index 3796ad49..00000000 --- a/roles/winroom/tasks/vscode_extensions.yml +++ /dev/null @@ -1,15 +0,0 @@ -VSCode_Extensions: - - VisualStudioExptTeam.vscodeintellicode - - eamodio.gitlens - - ms-dotnettools.csdevkit # IS-63714 - - ms-python.python - - ms-vscode.cpptools - - stonebuddha.vscode-better-sml - - vscode-icons-team.vscode-icons - - vscjava.vscode-java-pack - - dan-c-underwood.arm # RA-63703 - - marus25.cortex-debug # RA-63703 - - NateAGeek.memory-viewer # RA-63703 - - ms-vscode.cpptools-extension-pack # RA-63703 - - platformio.platformio-ide # ORS-63218 - - stmicroelectronics.stm32-vscode-extension # RA-63703 diff --git a/roles/winroom/tasks/weka.yml b/roles/winroom/tasks/weka.yml deleted file mode 100644 index be3b036c..00000000 --- a/roles/winroom/tasks/weka.yml +++ /dev/null @@ -1,9 +0,0 @@ -- name: Set Weka version - set_fact: - target_version: "3-8-6" - -- name: Install Weka - win_package: - path: "https://prdownloads.sourceforge.net/weka/weka-{{ target_version }}-azul-zulu-windows.exe" - arguments: /S - creates_path: "%ProgramFiles%\\Weka-{{ target_version }}\\weka.jar" diff --git a/roles/winroom/tasks/wfdb.yml b/roles/winroom/tasks/wfdb.yml deleted file mode 100644 index 46409041..00000000 --- a/roles/winroom/tasks/wfdb.yml +++ /dev/null @@ -1 +0,0 @@ -# TODO diff --git a/roles/winroom/tasks/winidea-frisms.yml b/roles/winroom/tasks/winidea-frisms.yml deleted file mode 100644 index 2e64ffda..00000000 --- a/roles/winroom/tasks/winidea-frisms.yml +++ /dev/null @@ -1,34 +0,0 @@ -- name: Check WinIDEA-FRISMS install status - win_stat: - path: C:\iSYSTEM\winIDEA_FRISMS\winIDEA.exe - register: file - -- when: not file.stat.exists - block: - - name: Install WinIDEA-FRISMS - win_package: - path: "https://www.isystem.com/downloads/winIDEA/setup/winIDEA(x64)9_12_256.exe" - arguments: /q APPDIR=c:\iSYSTEM\winIDEA_FRISMS - - - name: Download GCC for WinIDEA-FRISMS - win_get_url: - url: "https://launchpadlibrarian.net/143626040/gcc-arm-none-eabi-4_7-2013q2-20130614-win32.zip" - dest: C:\iSYSTEM\winIDEA_FRISMS\ - register: download - - - name: Unpack GCC for WinIDEA-FRISMS - win_unzip: - src: "{{ download.dest }}" - dest: C:\iSYSTEM\winIDEA_FRISMS\gcc - delete_archive: yes - - - name: Install GCC for WinIDEA-FRISMS - win_copy: - dest: C:\iSYSTEM\winIDEA_FRISMS\gcc\arm - src: C:\iSYSTEM\winIDEA_FRISMS\gcc\GNU Tools ARM Embedded\4.7 2013q2\ - remote_src: yes - - - name: Remove source files - win_file: - path: C:\iSYSTEM\winIDEA_FRISMS\gcc\GNU Tools ARM Embedded - state: absent diff --git a/roles/winroom/tasks/winidea.yml b/roles/winroom/tasks/winidea.yml deleted file mode 100644 index aa4b9c88..00000000 --- a/roles/winroom/tasks/winidea.yml +++ /dev/null @@ -1,33 +0,0 @@ -- name: Check WinIDEA install status - win_stat: - path: C:\iSYSTEM\winIDEA9\winIDEA.exe - register: file - -- when: not file.stat.exists - block: - - name: Install WinIDEA - win_package: - path: "https://www.isystem.com/downloads/winIDEA/setup/winIDEA(x64)9_21_110_138559.exe" - arguments: /q - - - name: Download QEMU - win_get_url: - url: "https://www.isystem.si/SWUpdates/qemu/qemu.7z" - dest: C:\iSYSTEM\winIDEA9 - - - name: Unpack QEMU - win_command: 7z x qemu.7z - args: - chdir: "C:\\iSYSTEM\\winIDEA9" - - - name: Download GCC - win_get_url: - url: "https://developer.arm.com/-/media/Files/downloads/gnu-rm/10-2020q4/gcc-arm-none-eabi-10-2020-q4-major-win32.zip" - dest: C:\iSYSTEM\winIDEA9 - register: download - - - name: Unpack GCC - win_unzip: - src: "{{ download.dest }}" - dest: C:\iSYSTEM\winIDEA9\gcc - delete_archive: yes diff --git a/roles/winroom/tasks/wireshark.yml b/roles/winroom/tasks/wireshark.yml deleted file mode 100644 index 5c386808..00000000 --- a/roles/winroom/tasks/wireshark.yml +++ /dev/null @@ -1,20 +0,0 @@ -# npcap=0.96 is the last version to support silent installation -- name: Install npcap - win_package: - path: https://npcap.com/dist/npcap-0.96.exe - arguments: /S - creates_path: "%ProgramFiles%\\Npcap\\npcap.cat" - -- name: Install Wireshark - win_chocolatey: - name: wireshark - -- name: Touch Wireshark preferences - win_file: - path: "%ProgramFiles%\\Wireshark\\preferences" - state: touch - -- name: Disable Wireshark auto updates - win_lineinfile: - path: "%ProgramFiles%\\Wireshark\\preferences" - line: "gui.update.enabled: FALSE" diff --git a/roles/winroom/tasks/xampp.yml b/roles/winroom/tasks/xampp.yml deleted file mode 100644 index 44bbc718..00000000 --- a/roles/winroom/tasks/xampp.yml +++ /dev/null @@ -1,28 +0,0 @@ -- name: Install XAMPP - win_chocolatey: - name: xampp-81 - -- name: Make XAMPP config world writable - win_acl: - user: 'Authenticated Users' - path: "C:\\xampp\\xampp-control.ini" - type: allow - rights: Write - -- name: Add firewall rules for XAMPP - win_firewall_rule: - name: "Allow inbound traffic for XAMPP: {{ item }}" - program: "%SystemDrive%\\xampp\\{{ item }}" - action: allow - direction: in - protocol: tcp - loop: - - "apache\\bin\\httpd.exe" - - "mysql\\bin\\mysqld.exe" - - "FileZillaFTP\\FileZillaServer.exe" - - "MercuryMail\\mercury.exe" - -# XAMPP insists on looking for Java and failing without this. -- name: Set registry key for OpenJDK - win_regedit: - path: HKLM:\SOFTWARE\JavaSoft\Java Development Kit diff --git a/roles/winroom/tasks/xgboost.yml b/roles/winroom/tasks/xgboost.yml deleted file mode 100644 index 7046677c..00000000 --- a/roles/winroom/tasks/xgboost.yml +++ /dev/null @@ -1,7 +0,0 @@ -- name: Install xgboost - apt: - name: - - xgboost - - python3-xgboost - state: latest - diff --git a/roles/wireshark/tasks/main_win.yml b/roles/wireshark/tasks/main_win.yml index 5c386808..407a8d89 100644 --- a/roles/wireshark/tasks/main_win.yml +++ b/roles/wireshark/tasks/main_win.yml @@ -1,9 +1,9 @@ # npcap=0.96 is the last version to support silent installation -- name: Install npcap - win_package: - path: https://npcap.com/dist/npcap-0.96.exe - arguments: /S - creates_path: "%ProgramFiles%\\Npcap\\npcap.cat" +#- name: Install npcap +# win_package: +# path: https://npcap.com/dist/npcap-0.96.exe +# arguments: /S +# creates_path: "%ProgramFiles%\\Npcap\\npcap.cat" - name: Install Wireshark win_chocolatey: diff --git a/roles/xampp/tasks/main_win.yml b/roles/xampp/tasks/main_win.yml index 44bbc718..43c35ac8 100644 --- a/roles/xampp/tasks/main_win.yml +++ b/roles/xampp/tasks/main_win.yml @@ -1,18 +1,19 @@ - name: Install XAMPP win_chocolatey: name: xampp-81 + install_args: "" -- name: Make XAMPP config world writable +- name: Make XAMPP world writable win_acl: user: 'Authenticated Users' - path: "C:\\xampp\\xampp-control.ini" + path: "C:\\xampp\\" type: allow - rights: Write + rights: FullControl - name: Add firewall rules for XAMPP win_firewall_rule: name: "Allow inbound traffic for XAMPP: {{ item }}" - program: "%SystemDrive%\\xampp\\{{ item }}" + program: "C:\\xampp\\{{ item }}" action: allow direction: in protocol: tcp diff --git a/roles/xgboost/tasks/main_lin.yml b/roles/xgboost/tasks/main_lin.yml index 7046677c..c8b94d72 100644 --- a/roles/xgboost/tasks/main_lin.yml +++ b/roles/xgboost/tasks/main_lin.yml @@ -1,7 +1,6 @@ - name: Install xgboost apt: name: - - xgboost - python3-xgboost state: latest diff --git a/setup.yml b/setup.yml new file mode 100644 index 00000000..3fdbf55e --- /dev/null +++ b/setup.yml @@ -0,0 +1,31 @@ +- name: Gather facts / setup connection + hosts: '*' + gather_facts: false + become: false + vars_files: + - vars/credentials.yml + roles: + - facts + +- name: Install software + hosts: '*' + become: true + debugger: on_failed + vars_files: + - vars/software_keys.yml + - vars/dirs.yml + roles: + # - firefox + # - blender + - fri_base + # - vscode + # - smlnj + # - ocaml + # - vivado + # - pulseview + # - all_classes + # - all_classes + # - fri_base + # - android_studio + # - jdk + # - powerdesigner diff --git a/unattended_install/ubuntu/autoinstall.yml b/unattended_install/ubuntu/autoinstall.yml new file mode 100644 index 00000000..d3d80e80 --- /dev/null +++ b/unattended_install/ubuntu/autoinstall.yml @@ -0,0 +1,194 @@ +#cloud-config +autoinstall: + apt: + disable_components: [] + fallback: offline-install + geoip: true + mirror-selection: + primary: + - country-mirror + - arches: &id001 + - amd64 + - i386 + uri: http://archive.ubuntu.com/ubuntu/ + - arches: &id002 + - s390x + - arm64 + - armhf + - powerpc + - ppc64el + - riscv64 + uri: http://ports.ubuntu.com/ubuntu-ports + preserve_sources_list: false + security: + - arches: *id001 + uri: http://security.ubuntu.com/ubuntu/ + - arches: *id002 + uri: http://ports.ubuntu.com/ubuntu-ports + codecs: + install: true + drivers: + install: true + identity: + hostname: ucilnica + password: $6$TlnOwdSPWxPW4DBb$.QyE0mgGQ8y7eavPpa/RgakcsBbwDRXobcYdZJMek3yNuGmVKdYEMfVG.biguVblI08dNfSa/JgOxMgl2IqHb. + realname: IT FRI + username: local_admin + kernel: + package: linux-generic + keyboard: + layout: si + toggle: null + variant: '' + locale: en_US.UTF-8 + network: + ethernets: + ens18: + dhcp4: true + version: 2 + oem: + install: auto + source: + id: xubuntu-desktop + search_drivers: true + ssh: + allow-pw: true + authorized-keys: [] + install-server: false + storage: + config: + - ptable: gpt + path: /dev/vda + preserve: true + name: '' + grub_device: false + id: disk-vda + type: disk + - device: disk-vda + size: 639631360 + flag: boot + number: 1 + preserve: true + grub_device: true + offset: 1048576 + partition_type: c12a7328-f81f-11d2-ba4b-00a0c93ec93b + partition_name: EFI system partition + path: /dev/vda1 + uuid: 269e71a1-6ae2-4591-a060-b6ac82ffe698 + id: partition-vda1 + type: partition + - device: disk-vda + size: 16777216 + flag: msftres + number: 2 + preserve: true + grub_device: false + offset: 642777088 + partition_type: e3c9e316-0b5c-4db8-817d-f92df00215ae + partition_name: Microsoft reserved partition + path: /dev/vda2 + uuid: ab263f9b-a6ef-4131-946c-8db62cc2fce3 + id: partition-vda2 + type: partition + - device: disk-vda + size: 354904178688 + number: 3 + preserve: true + grub_device: false + offset: 659554304 + partition_type: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 + partition_name: Basic data partition + path: /dev/vda3 + uuid: 1e6326a1-a4d4-4225-820a-eca56bfbba1b + id: partition-vda3 + type: partition + - device: disk-vda + size: 762314752 + number: 4 + preserve: true + grub_device: false + offset: 355563732992 + partition_type: de94bba4-06d1-4d40-a16a-bfd50179d6ac + path: /dev/vda4 + uuid: 53e306ac-91a6-4841-81a7-d965910fd1c6 + id: partition-vda4 + type: partition + - device: disk-vda + size: 120000086016 + wipe: superblock + flag: linux + number: 5 + preserve: true + grub_device: false + offset: 356326047744 + partition_type: 0fc63daf-8483-4772-8e79-3d69d8477de4 + path: /dev/vda5 + uuid: 9db5f9d0-33a0-4ca0-9562-649c24ca7499 + id: partition-vda5 + type: partition + - fstype: btrfs + volume: partition-vda5 + preserve: false + id: format-0 + type: format + - path: / + device: format-0 + id: mount-0 + type: mount + - fstype: vfat + volume: partition-vda1 + preserve: true + id: format-partition-vda1 + type: format + - path: /boot/efi + device: format-partition-vda1 + id: mount-1 + type: mount + - device: disk-vda + size: 8000634880 + wipe: superblock + flag: linux + number: 6 + preserve: true + grub_device: false + offset: 476326133760 + partition_type: 0fc63daf-8483-4772-8e79-3d69d8477de4 + path: /dev/vda6 + uuid: 2c990bfc-89d7-43b7-bb1b-0151d44f72cb + id: partition-vda6 + type: partition + - fstype: btrfs + volume: partition-vda6 + preserve: false + id: format-1 + type: format + - path: /home + device: format-1 + id: mount-2 + type: mount + - device: disk-vda + size: 19256049664 + number: 7 + preserve: true + grub_device: false + offset: 484326768640 + partition_type: ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 + partition_name: Basic data partition + path: /dev/vda7 + uuid: 3cc1570d-e2ed-4337-b520-f57bbe953c66 + id: partition-vda7 + type: partition + timezone: Europe/Ljubljana + updates: security + packages: + - openssh-server + late-commands: + - 'echo "#cloud-config" >> /target/etc/cloud/cloud.cfg.d/99-ssh_keys.cfg' + - 'echo "users:" >> /target/etc/cloud/cloud.cfg.d/99-ssh_keys.cfg' + - 'echo " - name: local_admin" >> /target/etc/cloud/cloud.cfg.d/99-ssh_keys.cfg' + - 'echo " ssh_authorized_keys:" >> /target/etc/cloud/cloud.cfg.d/99-ssh_keys.cfg' + - 'echo " - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIM2Tn8+rH+fkFkBycxYrJ7TzhXQhuf3U+w23JFlZoRiX polz@povzpetnik" >> /target/etc/cloud/cloud.cfg.d/99-ssh_keys.cfg' + - 'echo " - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDRpoWIH5u2g12IM39WNRzLsPksfSjfL/82fPnuZwZ7H polz@it-polz" >> /target/etc/cloud/cloud.cfg.d/99-ssh_keys.cfg' + - 'echo " - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCq7NrrDD53pe9Zpn/dRSPxWQLDIZ9INS0kz/ps/9fGsM8/H/J7jr/ecj0j0jfYig6QdV8G7VnpLWjcuJ65ul3u2rnQSN78Ms/hxlAhmyahQtBA2q2D2zqI2PDWsKAySWmfFg+2W5fYmE1+F9GEB0OWNOuClmfo2A1c8Ve76qSiehHgjYo0G1CQrXkmE00GBLqyqkbyyStLa9DUfaDwrbOu4tJChHo4jDGuLH5QCYcN+RRXjwPQKgk0L2yfu1479L0XqhbEo+KHoIZH501fkoE+gUKVyLERvkhKSiCgPhJmAgRN1bRsiyTwvQzoED4q1RwFmG0AKg0U5bHnAAOd77uyuIYmcFiaRGHROQ9ZbyB9tJ07QrFlzRkderDd5Z18mO7LtgDjFZ2B2DlRY6zxMiUqJyDRnHjDF3+3DTlHIUCC3aEtoYS8MPyRL1b8XenIqswXkM+vkYFeKh2ynjNu3C6VqDCXZFvIi6f1X0ojZXRrDmbiON8Y74HjxP0z6TB1U30= polz@ucilnicenfs-2020" >> /target/etc/cloud/cloud.cfg.d/99-ssh_keys.cfg' + - 'curtin in-target -- sed -i "s/\\(%sudo.*\\) ALL/\\1 NOPASSWD: ALL/" /etc/sudoers' + version: 1 diff --git a/unattended_install/win/autounattend.xml b/unattended_install/win/autounattend.xml new file mode 100644 index 00000000..8893885f --- /dev/null +++ b/unattended_install/win/autounattend.xml @@ -0,0 +1,549 @@ + + + + + + + + en-US + + 0409:00000424;0409:00000409 + en-US + en-US + en-US + + + + + + 0 + 3 + + + + + + NW6C2-QMPVW-D7KKK-3GKT6-VCFB2 + OnError + + true + + false + + + 1 + cmd.exe /c ">>"X:\diskpart.txt" (echo:REM)" + + + 2 + cmd.exe /c "diskpart.exe /s "X:\diskpart.txt" >>"X:\diskpart.log" || ( type "X:\diskpart.log" & echo diskpart encountered an error. & pause & exit /b 1 )" + + + + + + + + ucilnica + + + + + 1 + powershell.exe -WindowStyle Normal -NoProfile -Command "$xml = [xml]::new(); $xml.Load('C:\Windows\Panther\unattend.xml'); $sb = [scriptblock]::Create( $xml.unattend.Extensions.ExtractScript ); Invoke-Command -ScriptBlock $sb -ArgumentList $xml;" + + + 2 + powershell.exe -WindowStyle Normal -NoProfile -Command "Get-Content -LiteralPath 'C:\Windows\Setup\Scripts\Specialize.ps1' -Raw | Invoke-Expression;" + + + 3 + reg.exe load "HKU\DefaultUser" "C:\Users\Default\NTUSER.DAT" + + + 4 + powershell.exe -WindowStyle Normal -NoProfile -Command "Get-Content -LiteralPath 'C:\Windows\Setup\Scripts\DefaultUser.ps1' -Raw | Invoke-Expression;" + + + 5 + reg.exe unload "HKU\DefaultUser" + + + + + + + + + 0409:00000424;0409:00000409 + en-US + en-US + en-US + + + + + + local_admin + FRI IT + Administrators + + 6tfc5rdx + true</PlainText> + </Password> + </LocalAccount> + <LocalAccount wcm:action="add"> + <Name>Student</Name> + <DisplayName>Student</DisplayName> + <Group>Users</Group> + <Password> + <Value>vaje</Value> + <PlainText>true</PlainText> + </Password> + </LocalAccount> + </LocalAccounts> + </UserAccounts> + <AutoLogon> + <Username>local_admin</Username> + <Enabled>true</Enabled> + <LogonCount>1</LogonCount> + <Password> + <Value>6tfc5rdx</Value> + <PlainText>true</PlainText> + </Password> + </AutoLogon> + <OOBE> + <ProtectYourPC>3</ProtectYourPC> + <HideEULAPage>true</HideEULAPage> + <HideWirelessSetupInOOBE>true</HideWirelessSetupInOOBE> + <HideOnlineAccountScreens>false</HideOnlineAccountScreens> + </OOBE> + <FirstLogonCommands> + <SynchronousCommand wcm:action="add"> + <Order>1</Order> + <CommandLine>powershell.exe -WindowStyle Normal -NoProfile -Command "Get-Content -LiteralPath 'C:\Windows\Setup\Scripts\FirstLogon.ps1' -Raw | Invoke-Expression;"</CommandLine> + </SynchronousCommand> + </FirstLogonCommands> + </component> + </settings> + <Extensions xmlns="https://schneegans.de/windows/unattend-generator/"> + <ExtractScript> +param( + [xml] $Document +); + +foreach( $file in $Document.unattend.Extensions.File ) { + $path = [System.Environment]::ExpandEnvironmentVariables( $file.GetAttribute( 'path' ) ); + mkdir -Path( $path | Split-Path -Parent ) -ErrorAction 'SilentlyContinue'; + $encoding = switch( [System.IO.Path]::GetExtension( $path ) ) { + { $_ -in '.ps1', '.xml' } { [System.Text.Encoding]::UTF8; } + { $_ -in '.reg', '.vbs', '.js' } { [System.Text.UnicodeEncoding]::new( $false, $true ); } + default { [System.Text.Encoding]::Default; } + }; + $bytes = $encoding.GetPreamble() + $encoding.GetBytes( $file.InnerText.Trim() ); + [System.IO.File]::WriteAllBytes( $path, $bytes ); +} + </ExtractScript> + <File path="C:\Windows\Setup\Scripts\RemovePackages.ps1"> +$selectors = @( + 'Microsoft.Microsoft3DViewer'; + 'Microsoft.BingSearch'; + 'Microsoft.WindowsCalculator'; + 'Microsoft.WindowsCamera'; + 'Microsoft.WindowsAlarms'; + 'Microsoft.549981C3F5F10'; + 'Microsoft.Windows.DevHome'; + 'MicrosoftCorporationII.MicrosoftFamily'; + 'Microsoft.WindowsFeedbackHub'; + 'Microsoft.Edge.GameAssist'; + 'Microsoft.Getstarted'; + 'Microsoft.WindowsMaps'; + 'Microsoft.MixedReality.Portal'; + 'Microsoft.BingNews'; + 'Microsoft.MicrosoftOfficeHub'; + 'Microsoft.Paint'; + 'Microsoft.Windows.Photos'; + 'Microsoft.PowerAutomateDesktop'; + 'MicrosoftCorporationII.QuickAssist'; + 'Microsoft.SkypeApp'; + 'Microsoft.MicrosoftSolitaireCollection'; + 'Microsoft.MicrosoftStickyNotes'; + 'Microsoft.Todos'; + 'Microsoft.Wallet'; + 'Microsoft.YourPhone'; +); +$getCommand = { + Get-AppxProvisionedPackage -Online; +}; +$filterCommand = { + $_.DisplayName -eq $selector; +}; +$removeCommand = { + [CmdletBinding()] + param( + [Parameter( Mandatory, ValueFromPipeline )] + $InputObject + ); + process { + $InputObject | Remove-AppxProvisionedPackage -AllUsers -Online -ErrorAction 'Continue'; + } +}; +$type = 'Package'; +$logfile = 'C:\Windows\Setup\Scripts\RemovePackages.log'; +&amp; { + $installed = &amp; $getCommand; + foreach( $selector in $selectors ) { + $result = [ordered] @{ + Selector = $selector; + }; + $found = $installed | Where-Object -FilterScript $filterCommand; + if( $found ) { + $result.Output = $found | &amp; $removeCommand; + if( $? ) { + $result.Message = "$type removed."; + } else { + $result.Message = "$type not removed."; + $result.Error = $Error[0]; + } + } else { + $result.Message = "$type not installed."; + } + $result | ConvertTo-Json -Depth 3 -Compress; + } +} *&gt;&amp;1 &gt;&gt; $logfile; + </File> + <File path="C:\Windows\Setup\Scripts\RemoveCapabilities.ps1"> +$selectors = @( + 'Print.Fax.Scan'; + 'Language.Handwriting'; + 'Browser.InternetExplorer'; + 'MathRecognizer'; + 'OneCoreUAP.OneSync'; + 'Microsoft.Windows.MSPaint'; + 'Microsoft.Windows.PowerShell.ISE'; + 'App.Support.QuickAssist'; + 'Language.Speech'; + 'Language.TextToSpeech'; + 'App.StepsRecorder'; + 'Hello.Face.18967'; + 'Hello.Face.Migration.18967'; + 'Hello.Face.20134'; + 'Microsoft.Windows.WordPad'; +); +$getCommand = { + Get-WindowsCapability -Online | Where-Object -Property 'State' -NotIn -Value @( + 'NotPresent'; + 'Removed'; + ); +}; +$filterCommand = { + ($_.Name -split '~')[0] -eq $selector; +}; +$removeCommand = { + [CmdletBinding()] + param( + [Parameter( Mandatory, ValueFromPipeline )] + $InputObject + ); + process { + $InputObject | Remove-WindowsCapability -Online -ErrorAction 'Continue'; + } +}; +$type = 'Capability'; +$logfile = 'C:\Windows\Setup\Scripts\RemoveCapabilities.log'; +&amp; { + $installed = &amp; $getCommand; + foreach( $selector in $selectors ) { + $result = [ordered] @{ + Selector = $selector; + }; + $found = $installed | Where-Object -FilterScript $filterCommand; + if( $found ) { + $result.Output = $found | &amp; $removeCommand; + if( $? ) { + $result.Message = "$type removed."; + } else { + $result.Message = "$type not removed."; + $result.Error = $Error[0]; + } + } else { + $result.Message = "$type not installed."; + } + $result | ConvertTo-Json -Depth 3 -Compress; + } +} *&gt;&amp;1 &gt;&gt; $logfile; + </File> + <File path="C:\Windows\Setup\Scripts\RemoveFeatures.ps1"> +$selectors = @( + 'Microsoft-RemoteDesktopConnection'; + 'Recall'; +); +$getCommand = { + Get-WindowsOptionalFeature -Online | Where-Object -Property 'State' -NotIn -Value @( + 'Disabled'; + 'DisabledWithPayloadRemoved'; + ); +}; +$filterCommand = { + $_.FeatureName -eq $selector; +}; +$removeCommand = { + [CmdletBinding()] + param( + [Parameter( Mandatory, ValueFromPipeline )] + $InputObject + ); + process { + $InputObject | Disable-WindowsOptionalFeature -Online -Remove -NoRestart -ErrorAction 'Continue'; + } +}; +$type = 'Feature'; +$logfile = 'C:\Windows\Setup\Scripts\RemoveFeatures.log'; +&amp; { + $installed = &amp; $getCommand; + foreach( $selector in $selectors ) { + $result = [ordered] @{ + Selector = $selector; + }; + $found = $installed | Where-Object -FilterScript $filterCommand; + if( $found ) { + $result.Output = $found | &amp; $removeCommand; + if( $? ) { + $result.Message = "$type removed."; + } else { + $result.Message = "$type not removed."; + $result.Error = $Error[0]; + } + } else { + $result.Message = "$type not installed."; + } + $result | ConvertTo-Json -Depth 3 -Compress; + } +} *&gt;&amp;1 &gt;&gt; $logfile; + </File> + <File path="C:\Windows\Setup\Scripts\VirtIoGuestTools.ps1"> +&amp; { + foreach( $letter in 'DEFGHIJKLMNOPQRSTUVWXYZ'.ToCharArray() ) { + $exe = "${letter}:\virtio-win-guest-tools.exe"; + if( Test-Path -LiteralPath $exe ) { + Start-Process -FilePath $exe -ArgumentList '/passive', '/norestart' -Wait; + return; + } + } + 'VirtIO Guest Tools image (virtio-win-*.iso) is not attached to this VM.'; +} *&gt;&amp;1 &gt;&gt; 'C:\Windows\Setup\Scripts\VirtIoGuestTools.log'; + </File> + <File path="C:\Windows\Setup\Scripts\unattend-01.ps1"> +Get-WindowsCapability -Name OpenSSH.Server* -Online | + Add-WindowsCapability -Online + +$firewallParams = @{ + Name = 'sshd-Server-In-TCP' + DisplayName = 'Inbound rule for OpenSSH Server (sshd) on TCP port 22' + Action = 'Allow' + Direction = 'Inbound' + Enabled = 'True' # This is not a boolean but an enum + Profile = 'Any' + Protocol = 'TCP' + LocalPort = 22 +} +New-NetFirewallRule @firewallParams + +$shellParams = @{ + Path = 'HKLM:\SOFTWARE\OpenSSH' + Name = 'DefaultShell' + Value = 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe' + PropertyType = 'String' + Force = $true +} +New-ItemProperty @shellParams + +# Set default to powershell.exe +$shellParams = @{ + Path = 'HKLM:\SOFTWARE\OpenSSH' + Name = 'DefaultShell' + Value = 'C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe' + PropertyType = 'String' + Force = $true +} +New-ItemProperty @shellParams + +# Set real-time clock to UTC +$shellParams = @{ + Path = 'HKLM:\SYSTEM\CurrentControlSet\Control\TimeZoneInformation' + Name = 'RealTimeIsUniversal' + Value = '1' + PropertyType = 'DWord' +} +New-ItemProperty @shellParams + + +Set-Service -Name sshd -StartupType Automatic -Status Running + </File> + <File path="C:\Windows\Setup\Scripts\Specialize.ps1"> +$scripts = @( + { + reg.exe add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OOBE" /v BypassNRO /t REG_DWORD /d 1 /f; + }; + { + Remove-Item -LiteralPath 'Registry::HKLM\Software\Microsoft\WindowsUpdate\Orchestrator\UScheduler_Oobe\DevHomeUpdate' -Force -ErrorAction 'SilentlyContinue'; + }; + { + Get-Content -LiteralPath 'C:\Windows\Setup\Scripts\RemovePackages.ps1' -Raw | Invoke-Expression; + }; + { + Get-Content -LiteralPath 'C:\Windows\Setup\Scripts\RemoveCapabilities.ps1' -Raw | Invoke-Expression; + }; + { + Get-Content -LiteralPath 'C:\Windows\Setup\Scripts\RemoveFeatures.ps1' -Raw | Invoke-Expression; + }; + { + net.exe accounts /maxpwage:UNLIMITED; + }; + { + netsh.exe advfirewall firewall set rule group="@FirewallAPI.dll,-28752" new enable=Yes; + reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f; + }; + { + icacls.exe C:\ /remove:g "*S-1-5-11" + }; + { + reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Power" /v HiberbootEnabled /t REG_DWORD /d 0 /f; + }; + { + reg.exe add "HKLM\SOFTWARE\Policies\Microsoft\Dsh" /v AllowNewsAndInterests /t REG_DWORD /d 0 /f; + }; + { + reg.exe add "HKLM\SYSTEM\CurrentControlSet\Control\BitLocker" /v "PreventDeviceEncryption" /t REG_DWORD /d 1 /f; + }; + { + Get-Content -LiteralPath 'C:\Windows\Setup\Scripts\unattend-01.ps1' -Raw | Invoke-Expression; + }; +); + +&amp; { + [float] $complete = 0; + [float] $increment = 100 / $scripts.Count; + foreach( $script in $scripts ) { + Write-Progress -Activity 'Running scripts to customize your Windows installation. Do not close this window.' -PercentComplete $complete; + '*** Will now execute command &#xAB;{0}&#xBB;.' -f $( + $str = $script.ToString().Trim() -replace '\s+', ' '; + $max = 100; + if( $str.Length -le $max ) { + $str; + } else { + $str.Substring( 0, $max - 1 ) + '&#x2026;'; + } + ); + $start = [datetime]::Now; + &amp; $script; + '*** Finished executing command after {0:0} ms.' -f [datetime]::Now.Subtract( $start ).TotalMilliseconds; + "`r`n" * 3; + $complete += $increment; + } +} *&gt;&amp;1 &gt;&gt; "C:\Windows\Setup\Scripts\Specialize.log"; + </File> + <File path="C:\Windows\Setup\Scripts\UserOnce.ps1"> +$scripts = @( + { + Set-WinHomeLocation -GeoId 212; + }; + { + Get-AppxPackage -Name 'Microsoft.Windows.Ai.Copilot.Provider' | Remove-AppxPackage; + }; + { + Set-ItemProperty -LiteralPath 'Registry::HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced' -Name 'LaunchTo' -Type 'DWord' -Value 1; + }; +); + +&amp; { + [float] $complete = 0; + [float] $increment = 100 / $scripts.Count; + foreach( $script in $scripts ) { + Write-Progress -Activity 'Running scripts to configure this user account. Do not close this window.' -PercentComplete $complete; + '*** Will now execute command &#xAB;{0}&#xBB;.' -f $( + $str = $script.ToString().Trim() -replace '\s+', ' '; + $max = 100; + if( $str.Length -le $max ) { + $str; + } else { + $str.Substring( 0, $max - 1 ) + '&#x2026;'; + } + ); + $start = [datetime]::Now; + &amp; $script; + '*** Finished executing command after {0:0} ms.' -f [datetime]::Now.Subtract( $start ).TotalMilliseconds; + "`r`n" * 3; + $complete += $increment; + } +} *&gt;&amp;1 &gt;&gt; "$env:TEMP\UserOnce.log"; + </File> + <File path="C:\Windows\Setup\Scripts\DefaultUser.ps1"> +$scripts = @( + { + reg.exe add "HKU\DefaultUser\Software\Policies\Microsoft\Windows\WindowsCopilot" /v TurnOffWindowsCopilot /t REG_DWORD /d 1 /f; + }; + { + reg.exe add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v "HideFileExt" /t REG_DWORD /d 0 /f; + }; + { + reg.exe add "HKU\DefaultUser\Software\Microsoft\Windows\CurrentVersion\RunOnce" /v "UnattendedSetup" /t REG_SZ /d "powershell.exe -WindowStyle Normal -NoProfile -Command \""Get-Content -LiteralPath 'C:\Windows\Setup\Scripts\UserOnce.ps1' -Raw | Invoke-Expression;\""" /f; + }; +); + +&amp; { + [float] $complete = 0; + [float] $increment = 100 / $scripts.Count; + foreach( $script in $scripts ) { + Write-Progress -Activity 'Running scripts to modify the default user&#x2019;&#x2019;s registry hive. Do not close this window.' -PercentComplete $complete; + '*** Will now execute command &#xAB;{0}&#xBB;.' -f $( + $str = $script.ToString().Trim() -replace '\s+', ' '; + $max = 100; + if( $str.Length -le $max ) { + $str; + } else { + $str.Substring( 0, $max - 1 ) + '&#x2026;'; + } + ); + $start = [datetime]::Now; + &amp; $script; + '*** Finished executing command after {0:0} ms.' -f [datetime]::Now.Subtract( $start ).TotalMilliseconds; + "`r`n" * 3; + $complete += $increment; + } +} *&gt;&amp;1 &gt;&gt; "C:\Windows\Setup\Scripts\DefaultUser.log"; + </File> + <File path="C:\Windows\Setup\Scripts\FirstLogon.ps1"> +$scripts = @( + { + Set-ItemProperty -LiteralPath 'Registry::HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon' -Name 'AutoLogonCount' -Type 'DWord' -Force -Value 0; + }; + { + Get-Content -LiteralPath 'C:\Windows\Setup\Scripts\VirtIoGuestTools.ps1' -Raw | Invoke-Expression; + }; +); + +&amp; { + [float] $complete = 0; + [float] $increment = 100 / $scripts.Count; + foreach( $script in $scripts ) { + Write-Progress -Activity 'Running scripts to finalize your Windows installation. Do not close this window.' -PercentComplete $complete; + '*** Will now execute command &#xAB;{0}&#xBB;.' -f $( + $str = $script.ToString().Trim() -replace '\s+', ' '; + $max = 100; + if( $str.Length -le $max ) { + $str; + } else { + $str.Substring( 0, $max - 1 ) + '&#x2026;'; + } + ); + $start = [datetime]::Now; + &amp; $script; + '*** Finished executing command after {0:0} ms.' -f [datetime]::Now.Subtract( $start ).TotalMilliseconds; + "`r`n" * 3; + $complete += $increment; + } +} *&gt;&amp;1 &gt;&gt; "C:\Windows\Setup\Scripts\FirstLogon.log"; + </File> + </Extensions> +</unattend> diff --git a/vars/dirs.yml b/vars/dirs.yml new file mode 100644 index 00000000..8c80daaa --- /dev/null +++ b/vars/dirs.yml @@ -0,0 +1 @@ +large_prog_dir: "E:" diff --git a/winsetup.yml b/winsetup.yml index c8a4fb3d..89aac708 100644 --- a/winsetup.yml +++ b/winsetup.yml @@ -3,19 +3,25 @@ become_method: runas debugger: on_failed vars: - ansible_connection: winrm - ansible_winrm_transport: ntlm - ansible_winrm_server_cert_validation: ignore - ansible_port: 5985 + # ansible_connection: winrm + # ansible_winrm_transport: ntlm + # ansible_winrm_server_cert_validation: ignore + # ansible_port: 5985 + ansible_connection: ssh + ansible_port: 22 + ansible_shell_type: powershell logon_type: interactive installers: \\ucilnicesmb.fri1.uni-lj.si\ucilnice_d\install vars_files: - vars/credentials.yml - vars/software_keys.yml roles: + - fri_base # - all_classes + # - matlab # - stm32cube - - android_studio + # - firefox + # - android_studio #- OR-63717 #- RA-63703 #- VN-63728