feat(ubuntu): Refactor package installation, streamline GitHub deb installs
- Added 'become_password_file' to 'ansible.cfg' for privilege escalation handling.
- Removed separate installation tasks for 'atuin', 'eurkey', 'ghostty', 'git-delta', 'ripgrep', 'starship', 'veracrypt', and 'pacstall', consolidating them into 'curl.yml' and 'git_deb.yml'.
- Introduced 'git_deb.yml' for handling GitHub '.deb' installations dynamically using 'github_deb' variable.
- Improved error handling and pipe safety in curl-based installations ('set -o pipefail').
- Set proper permissions ('mode: 0600') for downloaded files in 'remove_ubuntu_banner.yml' and 'fira_code_fonts.yml'.
- Refactored 'github_releases.yml' to allow optional 'v' prefix handling in 'tag_name'.
- Updated 'main.yml' to remove redundant installations and streamline execution.
- Defined 'github_deb' list in 'vars/main.yml' to manage '.deb' package downloads dynamically.
These changes enhance maintainability, reduce redundancy, and improve package installation flexibility.
Signed-off-by: Tuan-Dat Tran <tuan-dat.tran@tudattr.dev>
This commit is contained in:
@@ -3,26 +3,24 @@
|
||||
ansible.builtin.import_tasks: apt.yml
|
||||
- name: Install snap packages
|
||||
ansible.builtin.import_tasks: snap.yml
|
||||
- name: Curl Installations
|
||||
ansible.builtin.import_tasks: curl.yml
|
||||
- name: Github .deb installations
|
||||
ansible.builtin.include_tasks: git_deb.yml
|
||||
vars:
|
||||
project: "{{ item }}"
|
||||
loop: "{{ github_deb }}"
|
||||
- name: "Install {{ item }}"
|
||||
ansible.builtin.include_tasks: github_releases.yml
|
||||
vars:
|
||||
project: "{{ item }}"
|
||||
loop: "{{ github_releases }}"
|
||||
- name: Install nvim
|
||||
ansible.builtin.import_tasks: nvim.yml
|
||||
- name: Install Rust
|
||||
ansible.builtin.import_tasks: rust.yml
|
||||
- name: Ghostty
|
||||
ansible.builtin.import_tasks: ghostty.yml
|
||||
- name: Install pacstall
|
||||
ansible.builtin.import_tasks: pacstall.yml
|
||||
- name: Install ledger
|
||||
ansible.builtin.import_tasks: ledger_cli.yml
|
||||
- name: Install git-delta
|
||||
ansible.builtin.import_tasks: git_delta.yml
|
||||
- name: Install atuin
|
||||
ansible.builtin.import_tasks: atuin.yml
|
||||
- name: Install Starship
|
||||
ansible.builtin.import_tasks: starship.yml
|
||||
- name: Install EurKey
|
||||
ansible.builtin.import_tasks: eurkey.yml
|
||||
# - name: Install Veracrypt
|
||||
# ansible.builtin.import_tasks: veracrypt.yml
|
||||
- name: Install FiraCode
|
||||
ansible.builtin.import_tasks: fira_code_fonts.yml
|
||||
- name: Remove Ubuntu Pro Banner
|
||||
@@ -31,12 +29,5 @@
|
||||
ansible.builtin.import_tasks: protonvpn.yml
|
||||
- name: Install Docker
|
||||
ansible.builtin.import_tasks: docker.yml
|
||||
- name: "Install {{ item }}"
|
||||
ansible.builtin.include_tasks: github_releases.yml
|
||||
vars:
|
||||
project: "{{ item }}"
|
||||
loop: "{{ github_releases }}"
|
||||
- name: Install ripgrep
|
||||
ansible.builtin.import_tasks: ripgrep.yml
|
||||
- name: Install Vagrant
|
||||
ansible.builtin.import_tasks: hashicorp_vagrant.yml
|
||||
|
||||
Reference in New Issue
Block a user