env-ansible/facts/general/package.yml
Hyperling 3c670b5961
Bugfixes + Update Enhancements (#25)
* Move certbot to be first.

* Comment out HTTPS, will use reverse proxy until it is working properly.

* Enhance `update` for pacman + pkg

* `update` enhancements to pkg and apt.

* Add more FS types to ignore.

* Add `freebsd-update` commands, including a clean of previous upgrade (VMs are small and need space!).

* Add sudo.

* Put the directory back for future updates.

* Avoid exit code 2 from freebsd-update install.

* Remove word Cleanup.
2022-04-16 08:07:53 -05:00

137 lines
4.2 KiB
YAML

---
# Define program names for package builtin.
# This file is for ALL systems and should not include UI components.
- name: General | Facts | Packages | Parrot OS Fixes
set_fact:
ansible_pkg_mgr: "apt"
ansible_python_interpreter: "/usr/bin/python3"
when: ansible_distribution == "Parrot OS"
- name: General | Facts | Package | apt
set_fact:
sshfs: sshfs
locate: locate
opensshd: openssh-server
tar: tar
microcode_amd: amd64-microcode
microcode_intel: intel-microcode
when: ansible_pkg_mgr == "apt"
- name: General | Facts | Package | pacman
set_fact:
sshfs: sshfs
locate: mlocate
opensshd: openssh
tar: tar
microcode_amd: linux-firmware
microcode_intel: intel-ucode
when: ansible_pkg_mgr == "pacman"
- name: General | Facts | Package | FreeBSD
set_fact:
sshfs: fusefs-sshfs
locate: htop # Placeholder to prevent errors, locate built into FreeBSD.
opensshd: htop # sshd comes installed on FreeBSD
ansible_python_interpreter: "/usr/local/bin/python3.8"
tar: htop # tar already provided in FreeBSD
microcode_amd: htop # TODO
microcode_intel: htop # TODO
when: ansible_system == "FreeBSD"
- name: General | Facts | Package | dnf
set_fact:
sshfs: fuse-sshfs
locate: mlocate
opensshd: openssh
tar: tar
microcode_amd: microcode_ctl
microcode_intel: microcode_ctl
when: ansible_pkg_mgr == "dnf"
- name: General | Facts | Package | Update Commands | Helpers
set_fact:
update_accept_var: '$accept'
- name: General | Facts | Package | Update Commands | Helpers | pacman
set_fact:
update_accept_var: '--noconfirm'
when: ansible_pkg_mgr == "pacman"
- name: General | Facts | Package | Update Commands | apt
set_fact:
update_package_manager: |
echo "*** Apt ***" &&
sudo apt update &&
sudo apt autoclean {{ update_accept_var }} &&
sudo apt autoremove {{ update_accept_var }} &&
sudo dpkg --configure -a &&
sudo apt --fix-broken --fix-missing install &&
sudo apt dist-upgrade --allow-downgrades --fix-broken --fix-missing {{ update_accept_var }} &&
when: ansible_pkg_mgr == "apt"
- name: General | Facts | Package | Update Commands | pacman
set_fact:
update_package_manager: |
echo "*** Pacman ***" &&
sudo pacman -Syyu {{ update_accept_var }} &&
when: ansible_pkg_mgr == "pacman"
- name: General | Facts | Package | Update Commands | pkg
set_fact:
update_package_manager: |
echo "*** FreeBSD-Update ***" &&
sudo sh -c "rm -rfv /var/db/freebsd-update; mkdir -v /var/db/freebsd-update" &&
sudo freebsd-update fetch install &&
echo "*** Pkg ***" &&
sudo pkg update &&
sudo pkg clean {{ update_accept_var }} &&
sudo pkg autoremove {{ update_accept_var }} &&
sudo pkg upgrade {{ update_accept_var }} &&
when: ansible_pkg_mgr in ("pkg", "pkgng")
- name: General | Facts | Package | Update Commands | parrot-upgrade
set_fact:
update_package_manager: |
echo "*** Parrot ***"
sudo apt update &&
sudo apt autoremove {{ update_accept_var }} &&
parrot_mirrors_suck=true &&
while [[ $parrot_mirrors_suck ]]; do
unset parrot_mirrors_suck
sudo parrot-upgrade
if [[ $? != 0 ]]; then
parrot_mirrors_suck=true
sudo apt update --fix-missing
fi
done &&
when: ansible_distribution == "Parrot OS"
- name: General | Facts | Package | Update Commands | dnf
set_fact:
update_package_manager: |
echo "*** DNF ***" &&
sudo dnf upgrade {{ update_accept_var }} &&
when: ansible_pkg_mgr in ("dnf")
- name: General | Facts | Package | Update Commands | flatpak | check
shell: which flatpak
register: flatpak_exec
ignore_errors: yes
- name: General | Facts | Package | Update Commands | flatpak | exists
set_fact:
update_flatpak: |
echo "*** Flatpak ***" &&
sudo flatpak update {{ update_accept_var }} &&
when: flatpak_exec is defined and flatpak_exec.failed is defined and not flatpak_exec.failed
- name: General | Facts | Package | Update Commands | flatpak | not exists
set_fact:
update_flatpak: |
echo "*** Flatpak Not Installed ***" &&
when: update_flatpak is not defined