186 lines
4.8 KiB
YAML
186 lines
4.8 KiB
YAML
#!/usr/bin/ansible-playbook
|
|
# vim:ft=ansible:
|
|
---
|
|
- name: Configure desktop system
|
|
block:
|
|
- name: Create config directories
|
|
file:
|
|
path: "{{ item }}"
|
|
state: directory
|
|
recurse: yes
|
|
loop:
|
|
- "/etc/X11/xorg.conf.d"
|
|
- name: Nuke some configs
|
|
file:
|
|
path: "{{ item }}"
|
|
state: absent
|
|
loop:
|
|
# Works around a bug where this causes failed logins
|
|
- "/etc/X11/Xsession.d/70im-config_launch"
|
|
- name: Copy system configs
|
|
template:
|
|
src: "{{ item.src }}"
|
|
dest: "{{ item.dest }}"
|
|
mode: "{{ item.mode }}"
|
|
loop:
|
|
- { src: "hosts", dest: "/etc/hosts", mode: "0644" }
|
|
- { src: "nomouseaccel.conf", dest: "/etc/X11/xorg.conf.d/90-mouse-acceleration.conf", mode: "0644" }
|
|
- { src: "i3.desktop", dest: "/usr/share/xsessions/i3-custom.desktop", mode: "0644" }
|
|
- name: Copy udev rules
|
|
template:
|
|
src: "{{ item.src }}"
|
|
dest: "{{ item.dest }}"
|
|
mode: "{{ item.mode }}"
|
|
loop:
|
|
- { src: "g810-led.rules", dest: "/etc/udev/rules.d/50-g810-led.rules", mode: "0644" }
|
|
- { src: "switch-rcm.rules", dest: "/etc/udev/rules.d/50-switch-rcm.rules", mode: "0644" }
|
|
notify: reload udev
|
|
- name: Reload udev
|
|
command: /usr/bin/udevadm trigger
|
|
- name: Enable i386 architecture
|
|
command: /usr/bin/dpkg --add-architecture i386
|
|
- name: Add repos
|
|
apt_repository:
|
|
repo: "{{ item }}"
|
|
loop:
|
|
- "ppa:drewwalton19216801/dolphin-master-cosmic" # Because Dolphin doesn't update their shit
|
|
- "ppa:lutris-team/lutris"
|
|
- name: Update and upgrade apt packages
|
|
apt:
|
|
upgrade: "yes"
|
|
update_cache: yes
|
|
# One day
|
|
cache_valid_time: 86400
|
|
- name: Install terminal packages
|
|
apt:
|
|
name:
|
|
- adb
|
|
- build-essential
|
|
- earlyoom
|
|
- fastboot
|
|
- ffmpeg
|
|
- git
|
|
- lua-check # I am good ComputerCraft guy
|
|
- network-manager-openconnect
|
|
- network-manager-openvpn
|
|
- openjdk-8-jre # For Minecraft
|
|
- pwgen
|
|
- python3-appdirs
|
|
- python3-eyed3
|
|
- python3-pip
|
|
- python3-pyqt5
|
|
- python3-usb # fuselee-gelee
|
|
- python3-venv
|
|
- qt5-default # For Multimc, should be installed on Kubuntu
|
|
- units
|
|
- vim
|
|
- wamerican # Dictionaries because I have like two scripts that use them
|
|
- wamerican-large
|
|
- wamerican-huge
|
|
- wamerican-insane
|
|
- wine
|
|
- wine-binfmt
|
|
- xz-utils # For Ansible deb support
|
|
- name: Install development packages
|
|
apt:
|
|
install_recommends: no
|
|
name:
|
|
- php # Dev stuff
|
|
- php-xml
|
|
- name: Install fonts
|
|
apt:
|
|
name:
|
|
- fonts-inconsolata
|
|
- fonts-noto
|
|
- fonts-roboto
|
|
- name: Install games
|
|
apt:
|
|
name:
|
|
- minetest
|
|
- name: Install out-of-repo packages
|
|
apt:
|
|
deb: "{{ item }}"
|
|
loop:
|
|
- "https://github.com/MultiMC/MultiMC5/releases/download/0.6.8/multimc_1.4-1.deb"
|
|
- "https://d11yldzmag5yn.cloudfront.net/prod/5.0.399860.0429/zoom_amd64.deb"
|
|
- name: Install desktop applications through APT
|
|
apt:
|
|
name:
|
|
- cantata
|
|
- chromium-browser
|
|
- clonezilla
|
|
- dolphin-emu-master
|
|
- dolphin-plugins
|
|
- filelight
|
|
- filezilla
|
|
- firefox
|
|
- g810-led
|
|
- gimp
|
|
- joy2key
|
|
- joystick
|
|
- kcolorchooser
|
|
- kdenlive
|
|
- keepassxc
|
|
- kubuntu-desktop
|
|
- lutris
|
|
- mesa-vulkan-drivers
|
|
- mpc
|
|
- mpd
|
|
- mpv
|
|
- mupen64plus-qt
|
|
- nextcloud-desktop
|
|
- obs-studio
|
|
- pulseeffects
|
|
- qbittorrent
|
|
- redshift
|
|
- rofi
|
|
- sonata
|
|
- steam-installer
|
|
- syncthing-gtk
|
|
- telegram-desktop
|
|
- torbrowser-launcher
|
|
- virt-manager
|
|
- vulkan-tools
|
|
- vulkan-utils
|
|
- winetricks
|
|
- xdotool
|
|
- "libgl1-mesa-dri:i386"
|
|
- "mesa-vulkan-drivers:i386"
|
|
- name: Install Focal-exclusive desktop applications
|
|
apt:
|
|
name:
|
|
- piper
|
|
when: ansible_distribution_release == "focal"
|
|
- name: Remove desktop applications through APT
|
|
apt:
|
|
state: absent
|
|
name:
|
|
- ktorrent
|
|
- name: Install desktop applications through pip3
|
|
pip:
|
|
executable: "/usr/bin/pip3"
|
|
name:
|
|
- protontricks
|
|
- youtube-dl
|
|
- name: Install desktop applications through Snap
|
|
snap:
|
|
name:
|
|
- discord
|
|
- riot-web
|
|
- scrcpy # Remote Android viewing
|
|
- name: Install Snap applications classically
|
|
snap:
|
|
classic: yes
|
|
name: "{{ item }}"
|
|
loop:
|
|
- slack
|
|
- name: Stop services
|
|
systemd:
|
|
name: "{{ item }}"
|
|
enabled: no
|
|
state: stopped
|
|
loop:
|
|
- mpd.socket
|
|
- mpd.service
|
|
become: yes
|