--- # Should contain only small tools that everyone can't live without - name: Install basic tools when: ansible_os_family == "Debian" apt: name: - acl # advanced ACL - apt # better than apt-get - aptitude # nice to have for Ansible - bash-completion # because bash - curl # better than wget - git # code versioning - htop # better than top - iotop # monitor i/o - less # i like cats - lsb-release - molly-guard # prevent reboot - nano # for vulcain - ntp # network time sync - screen # Vulcain asked for this - sudo - tmux # For shirenn - tree # create a graphical tree of files - vim # better than nano - zsh # to be able to ssh @erdnaxe - dnsutils # dig update_cache: true register: apt_result retries: 3 until: apt_result is succeeded - include_role: name: update_motd - name: Remove Debian warranty motd file: path: /etc/motd state: absent # Configure APT mirrors on Debian Stretch - name: Configure APT mirrors when: - ansible_distribution == 'Debian' - ansible_distribution_release == 'stretch' template: src: apt/sources.list.j2 dest: /etc/apt/sources.list mode: 0644 # Patriotisme - name: Ensure French UTF-8 locale exists locale_gen: name: fr_FR.UTF-8 state: present # Fix LC_CTYPE="C" - name: Select default locale debconf: name: locales question: locales/default_environment_locale value: fr_FR.UTF-8 vtype: select notify: Reconfigure locales # APT-List Changes : send email with changelog - include_tasks: apt-listchanges.yml # APT Unattended upgrades - include_tasks: apt-unattended.yml # User skeleton - name: Configure user skeleton copy: src: "skel/dot_{{ item }}" dest: "/etc/skel/.{{ item }}" mode: 0644 loop: - zshrc - zshrc.local - name: Configure resolvconf template: src: resolv.conf dest: /etc/resolv.conf mode: 0644 - name: Remove smartmontols apt: pkg: smartmontools state: absent autoremove: true when: ansible_system_vendor == "QEMU" - name: Remove useless packages from the cache apt: autoclean: true - name: Remove dependencies that are no longer required apt: autoremove: true