diff --git a/.config/ansible/arch.yml b/.config/ansible/arch.yml index 6331fad9..497218f0 100644 --- a/.config/ansible/arch.yml +++ b/.config/ansible/arch.yml @@ -1,9 +1,9 @@ - name: Setup Arch Linux hosts: local roles: - - role: packages - vars: - role_path: roles/arch - role: system vars: role_path: roles/arch + - role: packages + vars: + role_path: roles/arch diff --git a/.config/ansible/debian.yml b/.config/ansible/debian.yml index de3953ff..cd624dff 100644 --- a/.config/ansible/debian.yml +++ b/.config/ansible/debian.yml @@ -1,9 +1,9 @@ - name: Setup Debian Linux hosts: local roles: - - role: packages - vars: - role_path: roles/debian - role: system vars: role_path: roles/debian + - role: packages + vars: + role_path: roles/debian diff --git a/.config/ansible/roles/arch/packages/tasks/drivers/amd.yml b/.config/ansible/roles/arch/packages/tasks/drivers/amd.yml new file mode 100644 index 00000000..42dbd34d --- /dev/null +++ b/.config/ansible/roles/arch/packages/tasks/drivers/amd.yml @@ -0,0 +1,13 @@ +- name: Install AMD Drivers + become: true + pacman: + update_cache: yes + name: + - xf86-video-amdgpu + - vulkan-radeon + - lib32-vulkan-radeon + - libva-mesa-driver + - lib32-libva-mesa-driver + - mesa + - mesa-vdpau + - lib32-mesa-vdpau diff --git a/.config/ansible/roles/arch/packages/tasks/drivers/intel.yml b/.config/ansible/roles/arch/packages/tasks/drivers/intel.yml new file mode 100644 index 00000000..d90d3c1e --- /dev/null +++ b/.config/ansible/roles/arch/packages/tasks/drivers/intel.yml @@ -0,0 +1,13 @@ +- name: Install Intel Drivers + become: true + pacman: + update_cache: yes + name: + - xf86-video-intel + - vulkan-intel + - libva-intel-driver + - lib32-vulkan-intel + - lib32-libva-intel-driver + - mesa + - mesa-vdpau + - lib32-mesa-vdpau diff --git a/.config/ansible/roles/arch/packages/tasks/drivers/nvidia.yml b/.config/ansible/roles/arch/packages/tasks/drivers/nvidia.yml new file mode 100644 index 00000000..f3f84f06 --- /dev/null +++ b/.config/ansible/roles/arch/packages/tasks/drivers/nvidia.yml @@ -0,0 +1,8 @@ +- name: Install NVIDIA Drivers + become: true + pacman: + update_cache: yes + name: + - nvidia + - nvidia-utils + - nvidia-settings diff --git a/.config/ansible/roles/arch/packages/tasks/full.yml b/.config/ansible/roles/arch/packages/tasks/full.yml index 7655caea..e1598ade 100644 --- a/.config/ansible/roles/arch/packages/tasks/full.yml +++ b/.config/ansible/roles/arch/packages/tasks/full.yml @@ -3,6 +3,10 @@ pacman: update_cache: yes name: + # Base / Core + - amd-ucode + - intel-ucode + - android-file-transfer - android-tools - baobab @@ -68,8 +72,26 @@ - zathura-pdf-mupdf # AUR +- name: Create the `aur_builder` user + become: true + ansible.builtin.user: + name: aur_builder + create_home: yes + group: wheel + +- name: Allow the `aur_builder` user to run `sudo pacman` without a password + become: true + 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 AUR Packages - kewlfft.aur.aur: + become: true + become_user: aur_builder + aur: + use: yay name: - amf-amdgpu-pro - activitywatch-bin @@ -133,3 +155,17 @@ - youtube-dl - ytdlp-gui - zarchive-git + +# Cargo +- name: Install Rust Packages + cargo: + name: + - cargo-update + +# Npm +- name: Install Npm Packages + npm: + name: + - commitizen + - cz-git + global: true diff --git a/.config/ansible/roles/arch/packages/tasks/main.yml b/.config/ansible/roles/arch/packages/tasks/main.yml index 4e951e53..c7d6f855 100644 --- a/.config/ansible/roles/arch/packages/tasks/main.yml +++ b/.config/ansible/roles/arch/packages/tasks/main.yml @@ -1,9 +1,10 @@ -- name: Ask user for type of install +- name: Ask user for type of install and GPU drivers hosts: all become: true + gather_facts: false vars_prompt: - - name: install_input + - name: install_choise prompt: "What type of install do you want?" choices: - "minimal" @@ -11,7 +12,19 @@ default: "minimal" private: no + - name: gpu_driver_choice + prompt: "What drivers do you want for your gpu?" + choices: + - "NVIDIA" + - "AMD" + - "Intel" + private: no + block: - name: Install packages for the system - include_tasks: "{{ install_input }}.yml" - when: install_input is defined + include_tasks: "{{ install_choice }}.yml" + when: install_choice is defined + + - name: Install GPU drivers + include_tasks: "drivers/{{ gpu_driver_choice | lower }}.yml" + when: gpu_driver_choice is defined diff --git a/.config/ansible/roles/arch/system/tasks/system.yml b/.config/ansible/roles/arch/system/tasks/system.yml index 08615505..baabae53 100644 --- a/.config/ansible/roles/arch/system/tasks/system.yml +++ b/.config/ansible/roles/arch/system/tasks/system.yml @@ -58,6 +58,19 @@ regexp: '#MAKEFLAGS="-j2"' line: 'MAKEFLAGS="-j$(nproc)"' +- name: Create hooks directory + become: true + file: + path: /etc/pacman.d/hooks + state: directory + +- name: Move hooks + become: true + synchronize: + src: ~/.config/pacman/hooks/ + dest: /etc/pacman.d/hooks/ + delegate_to: localhost + # FISH - name: intall fish, fisher and other tools pacman: diff --git a/.config/nvim/lazyvim.json b/.config/nvim/lazyvim.json index cfe34d7d..fea96840 100644 --- a/.config/nvim/lazyvim.json +++ b/.config/nvim/lazyvim.json @@ -54,6 +54,7 @@ "plugins.extras.formatting.rustfmt", "plugins.extras.formatting.rustywind", "plugins.extras.formatting.sqlfmt", + "plugins.extras.lang.ansible", "plugins.extras.lang.bash", "plugins.extras.lang.git", "plugins.extras.lang.markdown-extended", @@ -65,10 +66,10 @@ "plugins.extras.linting.pylint", "plugins.extras.linting.shellcheck", "plugins.extras.lsp.compiler", + "plugins.extras.lsp.garbage-day", "plugins.extras.lsp.lens", "plugins.extras.lsp.lightbulb", "plugins.extras.lsp.lsp-extended", - "plugins.extras.lsp.garbage-day", "plugins.extras.ui.alpha", "plugins.extras.ui.block", "plugins.extras.ui.breadcrumbs", @@ -92,5 +93,4 @@ "NEWS.md": "2123" }, "version": 2 -} - +} \ No newline at end of file