diff --git a/roles/linroom/tasks/GUI_development.yml b/roles/linroom/tasks/GUI_development.yml index 4e6f5e5..6d1d0e9 100644 --- a/roles/linroom/tasks/GUI_development.yml +++ b/roles/linroom/tasks/GUI_development.yml @@ -45,6 +45,10 @@ apt: name: qt6-wayland-dev-tools state: latest + - name: Install weston + apt: + name: weston + state: latest - name: Install Glade apt: name: glade diff --git a/roles/winroom/tasks/7zip.yml b/roles/winroom/tasks/7zip.yml index 4c9241d..05aebff 100644 --- a/roles/winroom/tasks/7zip.yml +++ b/roles/winroom/tasks/7zip.yml @@ -1,3 +1,18 @@ - 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/Android_Studio.yml b/roles/winroom/tasks/Android_Studio.yml index d4a0f0d..6a85812 100644 --- a/roles/winroom/tasks/Android_Studio.yml +++ b/roles/winroom/tasks/Android_Studio.yml @@ -48,3 +48,29 @@ 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/GUI_development.yml b/roles/winroom/tasks/GUI_development.yml deleted file mode 100644 index 882e21a..0000000 --- a/roles/winroom/tasks/GUI_development.yml +++ /dev/null @@ -1 +0,0 @@ -# TODO what? diff --git a/roles/winroom/tasks/JDK.yml b/roles/winroom/tasks/JDK.yml index 9f09113..a390bad 100644 --- a/roles/winroom/tasks/JDK.yml +++ b/roles/winroom/tasks/JDK.yml @@ -1,6 +1,7 @@ - name: Install Oracle JDK - win_chocolatey: - name: oraclejdk + win_package: + path: https://download.oracle.com/java/19/latest/jdk-19_windows-x64_bin.msi + arguments: INSTALLLEVEL=3 - name: Find Java version win_reg_stat: diff --git a/roles/winroom/tasks/PB-63707.yml b/roles/winroom/tasks/PB-63707.yml index 22eea37..ee690dc 100644 --- a/roles/winroom/tasks/PB-63707.yml +++ b/roles/winroom/tasks/PB-63707.yml @@ -6,6 +6,7 @@ - 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/PPJ-63220.yml b/roles/winroom/tasks/PPJ-63220.yml index 1e2ebf9..c490204 100644 --- a/roles/winroom/tasks/PPJ-63220.yml +++ b/roles/winroom/tasks/PPJ-63220.yml @@ -1,10 +1,8 @@ # Principi programskih jezikov # Klemen.Klanjscek@fri.uni-lj.si -# Windows, GNU/Linux, VS Code, Ocaml, Eclipse, Haskell, SWI-Prolog, rlwrap +# Windows, GNU/Linux, VS Code, Eclipse, Haskell, SWI-Prolog, rlwrap - include_tasks: vscode.yml -- include_tasks: ocaml.yml - include_tasks: Eclipse.yml - include_tasks: haskell.yml - include_tasks: swi-prolog.yml - diff --git a/roles/winroom/tasks/SceneBuilder.yml b/roles/winroom/tasks/SceneBuilder.yml new file mode 100644 index 0000000..293c724 --- /dev/null +++ b/roles/winroom/tasks/SceneBuilder.yml @@ -0,0 +1,4 @@ +- 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/UV-63721.yml b/roles/winroom/tasks/UV-63721.yml index cf15c53..e922aa4 100644 --- a/roles/winroom/tasks/UV-63721.yml +++ b/roles/winroom/tasks/UV-63721.yml @@ -4,4 +4,4 @@ - 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/javafx.yml b/roles/winroom/tasks/javafx.yml index 4640904..9bc5d80 100644 --- a/roles/winroom/tasks/javafx.yml +++ b/roles/winroom/tasks/javafx.yml @@ -1 +1,20 @@ -# TODO +- 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/main.yml b/roles/winroom/tasks/main.yml index 9749289..bf7bd91 100644 --- a/roles/winroom/tasks/main.yml +++ b/roles/winroom/tasks/main.yml @@ -1,3 +1,4 @@ +- import_tasks: settings.yml - import_tasks: util.yml - import_tasks: AAHRP-63263.yml - import_tasks: APS1-63279.yml diff --git a/roles/winroom/tasks/msys2.yml b/roles/winroom/tasks/msys2.yml index 0161544..0e22935 100644 --- a/roles/winroom/tasks/msys2.yml +++ b/roles/winroom/tasks/msys2.yml @@ -34,6 +34,7 @@ loop: - gcc - git + - make - nano - rlwrap - rsync diff --git a/roles/winroom/tasks/ocaml.yml b/roles/winroom/tasks/ocaml.yml deleted file mode 100644 index 0230f8b..0000000 --- a/roles/winroom/tasks/ocaml.yml +++ /dev/null @@ -1,31 +0,0 @@ -# TODO ugh -#- name: Install OCaml -# win_chocolatey: -# name: ocaml -#- name: Set Ocaml installer version -# set_fact: -# target_version: "1.0.1" -# -#- name: Check Ocaml install status -# win_stat: -# path: C:\Program Files (x86)\Thonny\thonny.exeasd -# register: file -# -#- when: not file.stat.exists -# block: -# # win_package fails to download for some reason -# - name: Download Ocaml -# win_get_url: -# url: https://github.com/diskuv/dkml-installer-ocaml/releases/download/v{{ target_version }}/setup-diskuv-ocaml-windows_x86_64-{{ target_version }}.exe -# dest: 'C:\' -# register: download -# -# - name: Install Ocaml -# 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/omnetpp.yml b/roles/winroom/tasks/omnetpp.yml index 4640904..05d30b5 100644 --- a/roles/winroom/tasks/omnetpp.yml +++ b/roles/winroom/tasks/omnetpp.yml @@ -1 +1,47 @@ -# TODO +- 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/pyodbc.yml b/roles/winroom/tasks/pyodbc.yml new file mode 100644 index 0000000..70e0fb8 --- /dev/null +++ b/roles/winroom/tasks/pyodbc.yml @@ -0,0 +1,2 @@ +- name: Install pyodbc + win_command: pip install pyodbc diff --git a/roles/winroom/tasks/qcadesigner-e.yml b/roles/winroom/tasks/qcadesigner-e.yml index 4640904..31a1cd2 100644 --- a/roles/winroom/tasks/qcadesigner-e.yml +++ b/roles/winroom/tasks/qcadesigner-e.yml @@ -1 +1,9 @@ -# TODO +- 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/settings.yml b/roles/winroom/tasks/settings.yml new file mode 100644 index 0000000..e6b936d --- /dev/null +++ b/roles/winroom/tasks/settings.yml @@ -0,0 +1,3 @@ +- name: Set timezone + win_timezone: + timezone: Central Europe Standard Time diff --git a/roles/winroom/tasks/smlnj.yml b/roles/winroom/tasks/smlnj.yml index e73d300..3de06e4 100644 --- a/roles/winroom/tasks/smlnj.yml +++ b/roles/winroom/tasks/smlnj.yml @@ -4,5 +4,5 @@ - name: Install SML/NJ win_package: - path: "http://smlnj.cs.uchicago.edu/dist/working/{{ target_version }}/smlnj-{{ target_version }}.msi" + 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/sublime-text.yml b/roles/winroom/tasks/sublime-text.yml new file mode 100644 index 0000000..5ab7212 --- /dev/null +++ b/roles/winroom/tasks/sublime-text.yml @@ -0,0 +1,4 @@ +- name: Install Sublime Text + win_chocolatey: + name: sublimetext4 + state: present diff --git a/roles/winroom/tasks/util.yml b/roles/winroom/tasks/util.yml index c07855c..9cd664b 100644 --- a/roles/winroom/tasks/util.yml +++ b/roles/winroom/tasks/util.yml @@ -3,5 +3,7 @@ - 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 diff --git a/roles/winroom/tasks/vscode.yml b/roles/winroom/tasks/vscode.yml index 6cb29eb..1d97ecb 100644 --- a/roles/winroom/tasks/vscode.yml +++ b/roles/winroom/tasks/vscode.yml @@ -22,7 +22,6 @@ - ms-dotnettools.csharp - ms-python.python - ms-vscode.cpptools - - ocamllabs.ocaml-platform - stonebuddha.vscode-better-sml - vscode-icons-team.vscode-icons - vscjava.vscode-java-pack