Compare commits

...

6 commits

Author SHA1 Message Date
ProgramSnail
7dc4a654a1 make prompt not private 2025-08-14 14:51:52 +03:00
ProgramSnail
e17cbdf3ed typos fix 2025-08-14 14:46:34 +03:00
ProgramSnail
a7ba593f22 update tools prompt 2025-08-14 11:59:05 +03:00
ProgramSnail
7215cae313 add intellij install role as submodule 2025-08-14 11:49:55 +03:00
ProgramSnail
7b79956b12 truffle dev role 2025-08-14 11:46:10 +03:00
ProgramSnail
a12979cfe8 basic flatpak install role 2025-08-14 10:55:14 +03:00
7 changed files with 229 additions and 4 deletions

3
.gitmodules vendored
View file

@ -1,3 +1,6 @@
[submodule "distrobox-ansible"]
path = distrobox-ansible
url = https://github.com/sandorex/distrobox-ansible.git
[submodule "roles/gantsign.intellij"]
path = roles/gantsign.intellij
url = https://github.com/gantsign/ansible-role-intellij

View file

@ -2,7 +2,7 @@
hosts: localhost
connection: local
vars:
configue:
configure:
- bash
- cli
- git
@ -12,7 +12,8 @@
- cli
vars_prompt:
- name: tools_in
prompt: "Specify comma separated list of required tool packages (cpp, js, haskell, txt, lang)"
prompt: "Specify comma separated list of required tool packages (cpp, js, haskell, ocaml, coq, txt, lang, truffle)"
private: false
pre_tasks:
- name: Get tools list
ansible.builtin.set_fact:

View file

@ -11,7 +11,7 @@
- name: Setup containers
hosts: containers
vars:
configue:
configure:
- bash
- cli
- git

View file

@ -29,4 +29,6 @@
ansible.builtin.import_tasks: lang.yml
when: "'lang' in tools"
# TODO: ocaml, truffle ...
- name: Truffle development environment
ansible.builtin.import_tasks: truffle.yml
when: "'truffle' in tools"

View file

@ -0,0 +1,47 @@
- name: Create truffle dir
ansible.builtin.file:
path: "{{ ansible_env.HOME }}/truffle"
state: directory
mode: a
# install tools
- name: Install openjdk
ansible.builtin.dnf5:
name:
- java-latest-openjdk
- maven
state: latest
- name: "Installing graalvm 23"
ansible.builtin.unarchive:
remote_src: true
src: "https://download.oracle.com/graalvm/23/latest/graalvm-jdk-23_linux-x64_bin.tar.gz"
dest: "{{ ansible_env.HOME }}/truffle/graalvm"
mode: a
keep_newer: true
- name: Select graalvm as java
community.general.alternatives:
name: java
path: "{{ ansible_env.HOME }}/truffle/graalvm-jdk-23.0.2+7.1/jre/bin/java"
- name: Install Intellij IDEA
ansible.builtin.include_role:
name: gantsign.intellij
# examples
- name: Clone simple language example
ansible.builtin.git:
repo: "https://github.com/graalvm/simplelanguage"
dest: "{{ ansible_env.HOME }}/truffle/simplelanguage"
version: master
- name: Clone truffle usage tutorial
ansible.builtin.git:
repo: "https://github.com/skinny85/graalvm-truffle-tutorial"
dest: "{{ ansible_env.HOME }}/truffle/graalvm-truffle-tutorial"
version: master
- name: Clone mumbler language example
ansible.builtin.git:
repo: "https://github.com/cesquivias/mumbler"
dest: "{{ ansible_env.HOME }}/truffle/mumbler"
version: master

View file

@ -0,0 +1,171 @@
- name: Install flatpak
become: true
ansible.builtin.dnf5:
name:
- flatpak
state: latest
- name: Add the flathub flatpak repository
community.general.flatpak_remote:
name: flathub
state: present
flatpakrepo_url: https://dl.flathub.org/repo/flathub.flatpakrepo
method: user
- name: Install utils
community.general.flatpak:
name:
- com.github.tchx84.Flatseal
- org.clementine_player.Clementine
- org.atheme.audacious
- io.mpv.Mpv
- org.kde.keysmith
- org.localsend.localsend_app
- com.interversehq.qView
- com.obsproject.Studio
- com.belmoussaoui.Decoder
- app.organicmaps.desktop
- org.gnome.World.PikaBackup
- org.kde.isoimagewriter
- org.kde.kamoso
- org.kde.kcalc
- org.kde.kweather
- com.github.phase1geo.minder
- io.github.nuttyartist.notes
state: present
method: user
when: "'utils' in flatpak_apps"
- name: Install web browsers
community.general.flatpak:
name:
- io.gitlab.librewolf-community
- io.github.ungoogled_software.ungoogled_chromium
- org.garudalinux.firedragon
state: present
method: user
when: "'web' in flatpak_apps"
- name: Install docs tools
community.general.flatpak:
name:
- com.github.arminstraub.krop
- com.github.jeromerobert.pdfarranger
- net.scribus.Scribus
- org.kde.calligra
- org.libreoffice.LibreOffice
- org.kde.skanpage
- dev.ters.LocalTranslate
- re.sonny.Eloquent
state: present
method: user
when: "'docs' in flatpak_apps"
- name: Install notes tools
community.general.flatpak:
name:
- com.github.flxzt.rnote
- com.github.xournalpp.xournalpp
state: present
method: user
when: "'notes' in flatpak_apps"
- name: Install ai tools
community.general.flatpak:
name:
- com.jeffser.Alpaca
state: present
method: user
when: "'ai' in flatpak_apps"
- name: Install art tools
community.general.flatpak:
name:
- io.github.guillaumechereau.Goxel
- io.github.lainsce.DotMatrix
- org.blender.Blender
- org.inkscape.Inkscape
- org.kde.krita
- org.mattbas.Glaxnimate
- org.mypaint.MyPaint
state: present
method: user
when: "'art' in flatpak_apps"
- name: Install tools for things production
community.general.flatpak:
name:
- org.kicad.KiCad
- com.bambulab.BambuStudio
state: present
method: user
when: "'production' in flatpak_apps"
- name: Install gamedev tools
community.general.flatpak:
name:
- org.godotengine.GodotSharp
- org.mapeditor.Tiled
-
state: present
method: user
when: "'gamedev' in flatpak_apps"
- name: Install dev tools
community.general.flatpak:
name:
- dev.lapce.lapce
- io.qt.QtCreator
- io.github.cleomenezesjr.Escambo
- org.kde.kommit
- org.kde.kompare
- org.kde.okteta
- org.flatpak.Builder
- org.zealdocs.Zeal
state: present
method: user
when: "'dev' in flatpak_apps"
- name: Install games
community.general.flatpak:
name:
- com.usebottles.bottles
- org.gnome.Boxes
- net.lutris.Lutris
- com.vysp3r.ProtonPlus
- eu.vcmi.VCMI
- net.hhoney.rota
- org.hedgewars.Hedgewars
- org.kde.kigo
- org.prismlauncher.PrismLauncher
- page.kramo.Cartridges
state: present
method: user
when: "'games' in flatpak_apps"
- name: Install messaging apps
community.general.flatpak:
name:
- org.claws_mail.Claws-Mail
- im.fluffychat.Fluffychat
# - im.kaidan.kaidan # does not support old protocols, bad campatibility with anther clients
- org.gajim.Gajim
- org.kde.neochat
- org.telegram.desktop
- so.libdb.dissent
state: present
method: user
when: "'messaging' in flatpak_apps"
- name: Install study apps
community.general.flatpak:
name:
- org.kde.kig
- org.kde.ktouch
- io.github.david_swift.Flashcards
- org.kde.kwordquiz
# - org.lamport.tla.toolbox
- org.zotero.Zotero
state: present
method: user
when: "'study' in flatpak_apps"

@ -0,0 +1 @@
Subproject commit 5cc0578ecb1b17e7ce9eacc1d6340b80dfa0942e