]> git.phdru.name Git - ansible.git/blobdiff - playbooks/roles/init-system/tasks/apt.yml
Feat: Combine Debian/RedHat playbooks and roles
[ansible.git] / playbooks / roles / init-system / tasks / apt.yml
diff --git a/playbooks/roles/init-system/tasks/apt.yml b/playbooks/roles/init-system/tasks/apt.yml
new file mode 100644 (file)
index 0000000..2980427
--- /dev/null
@@ -0,0 +1,55 @@
+- name: Check backports
+  shell: "grep -Fc backports /etc/apt/sources.list || :"
+  register: apt_configured
+  changed_when: apt_configured.stdout == "0"
+
+- debug:
+    msg: "apt has already been configured"
+  when: apt_configured.stdout != "0"
+
+- name: Configure apt
+  become: true
+  template:
+    src: sources.list
+    dest: /etc/apt/sources.list
+    owner: root
+    group: root
+    mode: '0640'
+  when: apt_configured.stdout == "0"
+
+- name: Install minimal software packages
+  become: true
+  apt:
+    autoclean: yes
+    autoremove: yes
+    install_recommends: no
+    name: ['apt', 'apt-transport-https', 'aptitude',
+           'bash', 'bash-completion', 'bzip2',
+           'curl', 'deborphan', 'dnsutils', 'dselect',
+           'gnupg', 'gnupg2', 'logcheck', 'mc', 'mutt',
+           'procmail', 'rsync', 'unzip', 'vim', 'wget', 'zip',
+          ]
+    state: latest
+    update_cache: yes
+
+- name: Purge uninteresting packages
+  become: true
+  apt:
+    autoclean: yes
+    autoremove: yes
+    cache_valid_time: 3600
+    install_recommends: no
+    name: ['avahi-autoip', 'bluetooth', 'bluez',
+           'debian-faq', 'doc-debian',
+           'emacsen-comm', 'vim-tiny',
+          ]
+    purge: yes
+    state: absent
+    update_cache: no
+
+- name: Configure apt key for deb-multimedia
+  become: true
+  apt_key:
+    keyserver: keyserver.ubuntu.com
+    id: 5C808C2B65558117
+  when: "inventory_hostname in ('localhost', 'iskra-aviel.phdru.name')"