From c0b193b4f8cafd824c61db161d973280358d4a35 Mon Sep 17 00:00:00 2001 From: Tobias Maier Date: Wed, 30 Mar 2022 18:51:29 +0200 Subject: [PATCH] added requirements and first playbook --- arch_basics.yaml | 109 ++++++++++++++++++++++++++++++++++++++++++++++ requirements.yaml | 2 + 2 files changed, 111 insertions(+) create mode 100644 arch_basics.yaml create mode 100644 requirements.yaml diff --git a/arch_basics.yaml b/arch_basics.yaml new file mode 100644 index 0000000..9bd2185 --- /dev/null +++ b/arch_basics.yaml @@ -0,0 +1,109 @@ +--- +- name: Basic Arch Linux installation + hosts: localhost + pre_tasks: + - name: Update and Upgrade all exisiting packages + community.general.pacman: + update_cache: yes + upgrade: yes + + - 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 + state: present + + - 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 tobi + ansible.builtin.user: + name: tobi + password: $6$9OnvBMN6Sxc.muW1$afASAJdoPZL/WxTp6.lh/SurRRiClaru2Pl19fEo6j1aDEQw99kdkfls6.DB8OBacBDnT3bpsLYD3JqrvXlE9/ + comment: Tobias Maier + groups: wheel + 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 trizen using makepkg if it isn't installed already + kewlfft.aur.aur: + name: paru + use: makepkg + state: present + become: yes + become_user: aur_builder + + # - name: Git checkout + # ansible.builtin.git: + # repo: 'https://aur.archlinux.org/paru.git' + # dest: /home/aur_builder/paru + # become: aur_builder + + # - name: Install packages from AUR + # community.general.pacman: + # name: oh-my-zsh-git,zsh-theme-powerlevel10k-git,zsh-autosuggestions,zsh-syntax-highlighting,openssh + # state: present + # executable: paru + # 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: Add ssh-rsa to ssh config as this seems to be disabled by default + # blockinfile: + # path: /etc/ssh/ssh_config + # block: | + # Host * + # HostKeyAlgorithms ssh-rsa + # PubkeyAcceptedKeyTypes ssh-rsa \ No newline at end of file diff --git a/requirements.yaml b/requirements.yaml new file mode 100644 index 0000000..cad479a --- /dev/null +++ b/requirements.yaml @@ -0,0 +1,2 @@ +collections: + - name: kewlfft.aur \ No newline at end of file