Prevent EVERYTHING from installing on workstations. Change GNOME favorites.

This commit is contained in:
Hyperling 2021-07-01 05:58:08 -05:00
parent 2d236d6ad4
commit fec9c37759
3 changed files with 132 additions and 37 deletions

9
hosts
View File

@ -2,7 +2,14 @@
localhost
[workstation]
dell-laptop
;;;;;;; Available options - all require lowercase values ;;;;;;
; coding : Define for installation of code editors (VSCode, PyCharm, Android Studio)
;
; editing : Define for installation of Audio/Video editors (Shotcut, Audacity, OBS Stdio, GIMP)
;
; gaming : Define for installation of gaming software (Steam, Lutris)
;
dell-laptop coding=true editing=true
usb-workstation
lbry-server-1
lbry-server-2

View File

@ -1,7 +1,7 @@
---
# Use flatpaks because they're consistent! :)
# Flatpak Pre-reqs
## Flatpak Pre-reqs ##
- name: Workstation | Linux | Flatpak Distro | Flatpak | Install
package:
name: flatpak
@ -15,8 +15,10 @@
flatpakrepo_url: https://dl.flathub.org/repo/flathub.flatpakrepo
# Flatpak Installs
- name: Workstation | Linux | Flatpak Distro | Flatpak | Application Installs
## Flatpak Installs ##
# Generic #
- name: Workstation | Linux | Flatpak Distro | Flatpak | Generic Installs
flatpak:
name: "{{ item }}"
remote: flathub
@ -25,15 +27,82 @@
- org.mozilla.Thunderbird
- com.discordapp.Discord
- io.lbry.lbry-app
- com.visualstudio.code-oss
- com.google.AndroidStudio
- org.shotcut.Shotcut
- com.obsproject.Studio
- com.valvesoftware.Steam
- org.gimp.GIMP
- com.jetbrains.PyCharm-Community
ignore_errors: yes
# Coding #
- name: Workstation | Linux | Flatpak Distro | Flatpak | Coding Installs
flatpak:
name: "{{ item }}"
remote: flathub
state: present
loop:
- com.visualstudio.code-oss
- com.google.AndroidStudio
- com.jetbrains.PyCharm-Community
ignore_errors: yes
when: coding is defined
- name: Workstation | Linux | Flatpak Distro | Flatpak | Coding Uninstalls
flatpak:
name: "{{ item }}"
remote: flathub
state: absent
loop:
- com.visualstudio.code-oss
- com.google.AndroidStudio
- com.jetbrains.PyCharm-Community
ignore_errors: yes
when: coding is not defined
# Editor #
- name: Workstation | Linux | Flatpak Distro | Flatpak | Audio/Video Editor Installs
flatpak:
name: "{{ item }}"
remote: flathub
state: present
loop:
- org.shotcut.Shotcut
- com.obsproject.Studio
- org.gimp.GIMP
- org.audacityteam.Audacity
ignore_errors: yes
when: editing is defined
- name: Workstation | Linux | Flatpak Distro | Flatpak | Audio/Video Editor Uninnstalls
flatpak:
name: "{{ item }}"
remote: flathub
state: absent
loop:
- org.shotcut.Shotcut
- com.obsproject.Studio
- org.gimp.GIMP
- org.audacityteam.Audacity
ignore_errors: yes
when: editing is not defined
# Games #
- name: Workstation | Linux | Flatpak Distro | Flatpak | Gaming Installs
flatpak:
name: "{{ item }}"
remote: flathub
state: present
loop:
- com.valvesoftware.Steam
ignore_errors: yes
when: gaming is defined
- name: Workstation | Linux | Flatpak Distro | Flatpak | Gaming Uninstalls
flatpak:
name: "{{ item }}"
remote: flathub
state: absent
loop:
- com.valvesoftware.Steam
ignore_errors: yes
when: gaming is not defined
# Removals #
- name: Workstation | Linux | Flatpak Distro | Flatpak | Application Uninstalls
flatpak:
name: "{{ item }}"
@ -47,6 +116,8 @@
ignore_errors: yes
## Other Stuff ##
# Software not yet available or working properly in Flatpak form.
- name: Workstation | Linux | Flatpak Distro | Package Manager | Install From Repo
package:
@ -56,7 +127,45 @@
- "{{ appimagelauncher }}"
state: present
- name: Workstation | Linux | Flatpak Distro | Package Manager | Remove Applciations
- name: Workstation | Linux | Flatpak Distro | Package Manager | Remove Firefox Normal
package:
name:
- "{{ firefox }}"
state: absent
when: firefox != firefox_esr
# Lutris #
- name: Workstation | Linux | Flatpak Distro | Package Manager | Add Lutris PPA (Ubuntu)
apt_repository:
repo: ppa:lutris-team/lutris
update_cache: yes
state: present
when: ansible_distribution == "Ubuntu" and gaming is defined
- name: Workstation | Linux | Flatpak Distro | Package Manager | Add Lutris (besides ARM)
package:
name:
- lutris
state: present
when: ansible_architecture != "aarch64" and gaming is defined
- name: Workstation | Linux | Flatpak Distro | Package Manager | Remove Lutris (besides ARM)
package:
name:
- lutris
state: absent
ignore_errors: yes
when: ansible_architecture != "aarch64" and gaming is not defined
- name: Workstation | Linux | Flatpak Distro | Package Manager | Remove Lutris PPA (Ubuntu)
apt_repository:
repo: ppa:lutris-team/lutris
update_cache: yes
state: absent
when: ansible_distribution == "Ubuntu" and gaming is not defined
# Remove Repo Software #
- name: Workstation | Linux | Flatpak Distro | Package Manager | Remove Applications
package:
name:
- "{{ thunderbird }}"
@ -64,25 +173,4 @@
- steam
- vscode
- code
state: absent
- name: Workstation | Linux | Flatpak Distro | Package Manager | Add Lutris PPA (Ubuntu)
apt_repository:
repo: ppa:lutris-team/lutris
update_cache: yes
state: present
when: ansible_distribution == "Ubuntu"
- name: Workstation | Linux | Flatpak Distro | Package Manager | Add Lutris (besides ARM)
package:
name:
- lutris
state: present
when: ansible_architecture != "aarch64"
- name: Workstation | Linux | Flatpak Distro | Package Manager | Remove Firefox Normal
package:
name:
- "{{ firefox }}"
state: absent
when: firefox != firefox_esr
state: absent

View File

@ -42,9 +42,9 @@
dconf:
key: /org/gnome/shell/favorite-apps
value: "['org.gnome.Terminal.desktop', 'gnome-system-monitor.desktop', 'org.gnome.Nautilus.desktop',
'{{ browser }}', 'org.mozilla.Thunderbird.desktop',
'com.discordapp.Discord.desktop', 'io.lbry.lbry-app.desktop', 'com.visualstudio.code-oss.desktop', 'com.google.AndroidStudio.desktop',
'org.shotcut.Shotcut.desktop', 'com.obsproject.Studio.desktop', 'com.valvesoftware.Steam.desktop', 'net.lutris.Lutris.desktop']"
'{{ browser }}', 'org.mozilla.Thunderbird.desktop', 'com.discordapp.Discord.desktop',
'rhythmbox.desktop', 'io.lbry.lbry-app.desktop', 'com.visualstudio.code-oss.desktop',
'org.shotcut.Shotcut.desktop', 'com.valvesoftware.Steam.desktop', 'net.lutris.Lutris.desktop']"
state: present
become_user: ling
when: ansible_system == "Linux"