Alan Orth
40ac858d60
If the snap binary doesn't even exist then it means we've probably already run this playbook and removed all installed snaps as well.
99 lines
3.1 KiB
YAML
99 lines
3.1 KiB
YAML
---
|
|
|
|
- block:
|
|
- name: Configure apt mirror
|
|
template: src=sources.list.j2 dest=/etc/apt/sources.list owner=root group=root mode=0644
|
|
when: ansible_architecture != 'armv7l'
|
|
|
|
- name: Upgrade base OS
|
|
apt: upgrade=dist update_cache=yes cache_valid_time=3600
|
|
|
|
- name: Set Ubuntu base packages
|
|
set_fact:
|
|
ubuntu_base_packages:
|
|
- git
|
|
- tmux
|
|
- iotop
|
|
- htop
|
|
- strace
|
|
- cron-apt
|
|
- safe-rm
|
|
- debian-goodies
|
|
- mosh
|
|
- python-pycurl # for ansible's apt_repository
|
|
- vim
|
|
- unzip
|
|
- apt-transport-https # for https support in apt
|
|
- zstd
|
|
|
|
- name: Install base packages
|
|
apt: pkg={{ ubuntu_base_packages }} state=present update_cache=yes cache_valid_time=3600
|
|
|
|
# We have to remove snaps one by one in a specific order because some depend
|
|
# on others. Only after that can we remove the corresponding system packages.
|
|
- name: Remove lxd snap
|
|
snap: name=lxd state=absent
|
|
when: ansible_distribution_version is version('20.04', '==')
|
|
ignore_errors: yes
|
|
|
|
- name: Remove core18 snap
|
|
snap: name=core18 state=absent
|
|
when: ansible_distribution_version is version('20.04', '==')
|
|
ignore_errors: yes
|
|
|
|
- name: Remove snapd snap
|
|
snap: name=snapd state=absent
|
|
when: ansible_distribution_version is version('20.04', '==')
|
|
ignore_errors: yes
|
|
|
|
- name: Set fact for packages to remove (Ubuntu <= 18.04)
|
|
set_fact:
|
|
ubuntu_annoying_packages:
|
|
- whoopsie # security (CIS 4.1)
|
|
- apport # security (CIS 4.1)
|
|
- command-not-found # annoying
|
|
- command-not-found-data # annoying
|
|
- python3-commandnotfound # annoying
|
|
- snapd # annoying (Ubuntu >= 16.04)
|
|
- lxd # annoying (Ubuntu >= 16.04)
|
|
- lxd-client # annoying (Ubuntu >= 16.04)
|
|
- liblxc1 # annoying (Ubuntu >= 16.04)
|
|
- lxc-common # annoying (Ubuntu >= 16.04)
|
|
- lxcfs #annoying (Ubuntu >= 16.04)
|
|
when: ansible_distribution_version is version('18.04', '<=')
|
|
|
|
- name: Set fact for packages to remove (Ubuntu 20.04)
|
|
set_fact:
|
|
ubuntu_annoying_packages:
|
|
- whoopsie # security (CIS 4.1)
|
|
- apport # security (CIS 4.1)
|
|
- command-not-found # annoying
|
|
- command-not-found-data # annoying
|
|
- python3-commandnotfound # annoying
|
|
- snapd # annoying (Ubuntu >= 16.04)
|
|
- lxd-agent-loader # annoying (Ubuntu 20.04)
|
|
when: ansible_distribution_version is version('20.04', '==')
|
|
|
|
- name: Remove packages
|
|
apt: name={{ ubuntu_annoying_packages }} state=absent purge=yes
|
|
|
|
- name: Disable annoying Canonical spam in MOTD
|
|
file: path={{ item }} mode=0644 state=absent
|
|
loop:
|
|
- /etc/update-motd.d/99-esm # Ubuntu 14.04
|
|
- /etc/update-motd.d/10-help-text # Ubuntu 14.04+
|
|
- /etc/update-motd.d/50-motd-news # Ubuntu 18.04+
|
|
- /etc/update-motd.d/80-esm # Ubuntu 18.04+
|
|
- /etc/update-motd.d/80-livepatch # Ubuntu 18.04+
|
|
ignore_errors: yes
|
|
|
|
- name: Configure cron-apt
|
|
import_tasks: cron-apt.yml
|
|
tags: cron-apt
|
|
|
|
- name: Install tarsnap
|
|
import_tasks: tarsnap.yml
|
|
tags: packages
|
|
|
|
# vim: set sw=2 ts=2:
|