--- - hosts: localhost vars: - hostname: 'stargazer' tasks: - name: Update and Upgrade all exisiting packages community.general.pacman: update_cache: yes upgrade: yes - name: Install archlinux-keyring 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: present - name: Make sure we have a 'wheel' group group: name: wheel state: present - name: Make sure we have a 'docker' group group: name: docker 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 tobi ansible.builtin.user: name: tobi password: $6$9OnvBMN6Sxc.muW1$afASAJdoPZL/WxTp6.lh/SurRRiClaru2Pl19fEo6j1aDEQw99kdkfls6.DB8OBacBDnT3bpsLYD3JqrvXlE9/ comment: Tobias Maier groups: wheel,docker shell: /bin/zsh - name: Add name to git config community.general.git_config: name: user.name scope: system value: Tobias Maier - name: Add email to git config community.general.git_config: name: user.email scope: system value: admin@maiertobi.de - 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/tobi/.zshrc owner: tobi group: tobi mode: '0644' - name: Copy p10k to home dir ansible.builtin.copy: src: //tmp/dotfiles/.p10k.zsh dest: /home/tobi/.p10k.zsh owner: tobi group: tobi 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-console state: latest become: yes become_user: aur_builder - name: Remove Gnome Terminal pacman: name: gnome-terminal state: absent - 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-Light'" state: present become: yes become_user: tobi - name: Set Gnome icon theme dconf: key: /org/gnome/desktop/interface/icon-theme value: "'Papirus-Light'" state: present become: yes become_user: tobi - name: Set Gnome color scheme dconf: key: /org/gnome/desktop/interface/color-scheme value: "'prefer-dark'" state: present become: yes become_user: tobi - name: Set Gnome color scheme dconf: key: /org/gnome/desktop/peripherals/mouse/accel-profile value: "'flat'" state: present become: yes become_user: tobi - name: Set Gnome Title bar middle click action dconf: key: /org/gnome/desktop/wm/preferences/action-middle-click-titlebar value: "'minimize'" state: present become: yes become_user: tobi - name: Set Gnome Dash pins dconf: key: /org/gnome/shell/favorite-apps value: "['org.gnome.Calendar.desktop', 'org.gnome.Nautilus.desktop', 'firefox.desktop', 'org.gnome.Console.desktop', 'org.gnome.Settings.desktop', 'gnome-system-monitor.desktop', 'visual-studio-code.desktop', 'org.gnome.Geary.desktop']" state: present become: yes become_user: tobi - name: Install some more user-packages kewlfft.aur.aur: use: paru name: syncthing,hashcat,hcxtools,prusa-slicer,onlyoffice-bin,kicad,kicad-library,kicad-library-3d,nano,firefox,visual-studio-code-bin,cargo,rust,docker,docker-compose,nerd-fonts-dejavu-complete,qbittorrent,freecad,vlc,gparted,exa,stl-thumb state: present become: yes become_user: aur_builder - name: Enable service Syncthing ansible.builtin.service: name: syncthing@tobi enabled: yes state: started - name: Enable service Docker ansible.builtin.service: name: docker enabled: yes state: started - name: Install laptop tools kewlfft.aur.aur: use: paru name: gnome-bluetooth state: present become: yes become_user: aur_builder