- hosts: localhost vars: - hostname: 'airsense-dashboard' tasks: - name: Update and Upgrade all exisiting packages community.general.pacman: update_cache: yes upgrade: yes - name: Install basic packages community.general.pacman: name: archlinux-keyring state: latest - name: Install basic packages community.general.pacman: name: sudo,zsh,htop,autoconf,automake,binutils,bison,file,findutils,flex,gawk,gcc,gettext,grep,groff,gzip,libtool,m4,make,patch,pkgconf,sed,texinfo,which,base-devel,ttf-font-awesome state: latest - name: Make sure we have a 'wheel' group group: name: wheel state: present - name: Allow 'wheel' to be sudo lineinfile: dest: /etc/sudoers state: present regexp: '^%wheel' line: '%wheel ALL=(ALL) ALL' - name: Add the user airsense ansible.builtin.user: name: airsense password: $6$9OnvBMN6Sxc.muW1$afASAJdoPZL/WxTp6.lh/SurRRiClaru2Pl19fEo6j1aDEQw99kdkfls6.DB8OBacBDnT3bpsLYD3JqrvXlE9/ comment: Airsense Dashboard User groups: wheel shell: /bin/zsh - name: Create the `aur_builder` user ansible.builtin.user: name: aur_builder create_home: yes #group: wheel - name: Allow the `aur_builder` user to run `sudo pacman` without a password ansible.builtin.lineinfile: path: /etc/sudoers.d/11-install-aur_builder line: 'aur_builder ALL=(ALL) NOPASSWD: /usr/bin/pacman' create: yes validate: 'visudo -cf %s' - name: Install paru using makepkg if it isn't installed already kewlfft.aur.aur: name: paru use: makepkg state: present become: yes become_method: su become_user: aur_builder - name: Install packages from AUR kewlfft.aur.aur: use: paru name: oh-my-zsh-git,zsh-theme-powerlevel10k-git,zsh-autosuggestions,zsh-syntax-highlighting,openssh state: present become: yes become_user: aur_builder - name: Clone dotfiles ansible.builtin.git: repo: https://gitea.maiertobi.de/tobimai/dotfiles.git dest: /tmp/dotfiles - name: Copy zshrc to home dir ansible.builtin.copy: src: //tmp/dotfiles/.zshrc dest: /home/airsense/.zshrc owner: airsense group: airsense mode: '0644' - name: Copy p10k to home dir ansible.builtin.copy: src: //tmp/dotfiles/.p10k.zsh dest: /home/airsense/.p10k.zsh owner: airsense group: airsense mode: '0644' - name: Set a hostname hostname: name: "{{ hostname }}" - name: Install packages from AUR kewlfft.aur.aur: use: paru name: gnome,gnome-extra,orchis-theme-git,python-pip,gnome-shell-extension-dash-to-panel,papirus-icon-theme,gnome-shell-extension-no-overview state: present become: yes become_user: aur_builder - name: Enable service gdm ansible.builtin.service: name: gdm enabled: yes - name: Install psutil python package pip: name: psutil - name: Set Gnome theme dconf: key: /org/gnome/desktop/interface/gtk-theme value: "'Orchis-Orange-Dark'" state: present become: yes become_user: airsense - name: Set Gnome icon theme dconf: key: /org/gnome/desktop/interface/icon-theme value: "'Papirus-Dark'" state: present become: yes become_user: airsense - name: Set Gnome color scheme dconf: key: /org/gnome/desktop/interface/color-scheme value: "'prefer-dark'" state: present become: yes become_user: airsense - name: Set Gnome idle delay dconf: key: /org/gnome/desktop/session/idle-delay value: "0" state: present become: yes become_user: airsense - name: Activate no overview extensions dconf: key: /org/gnome/shell/enabled-extensions value: "['no-overview@fthx']" state: present become: yes become_user: airsense - name: Install some more user-packages kewlfft.aur.aur: use: paru name: chromium state: present become: yes become_user: aur_builder - name: Copy chrome startup file ansible.builtin.copy: src: ./chrome.desktop dest: /etc/xdg/autostart/chrome.desktop become: yes - name: Copy autologin startup file ansible.builtin.copy: src: ./custom.conf dest: /etc/gdm/custom.conf become: yes