X-Git-Url: https://plomlompom.com/repos/test.html?a=blobdiff_plain;f=ansible%2Fconfig.yml;h=5e7503b64b51d5e56c3af2f5575c73d7136d0ee0;hb=a394ac09af7183b44138909cfb667d24b16c0c41;hp=ac9198d457268e76c37288406e590f90586051ce;hpb=70f6d0b5b32520a3d7070f81aaba6bfe82da964e;p=config diff --git a/ansible/config.yml b/ansible/config.yml index ac9198d..5e7503b 100644 --- a/ansible/config.yml +++ b/ansible/config.yml @@ -13,15 +13,33 @@ # Configure package management. - name: update package lists apt: update_cache=yes - - name: check for initial_purge_happened flag - stat: path=flags/initial_purge_happened - register: initial_purge - - name: perform initial purge - include: tasks/initial_purge.yml - when: initial_purge.stat.exists == False + #- name: check for initial_purge_happened flag + # stat: path=flags/initial_purge_happened + # register: initial_purge + #- name: perform initial purge + # include: tasks/initial_purge.yml + # when: initial_purge.stat.exists == False - name: APT - dist-upgrade apt: upgrade=dist + # Upgrade kernel. + - name: ensure newest kernel and grub are installed + apt: name={{item}} state=present + with_items: + - linux-image-amd64 + - grub2 + - name: update grub + shell: update-grub + + # Ensure power management. + - name: ensure power management tools are installed + apt: name={{item}} state=present + with_items: + - tlp + - acpi-call-dkms + - name: start TLP + shell: tlp start + # Configure console. - name: symlink console config files file: state=link force=yes src={{item}} dest={{item|basename|regex_replace('___','/')}} @@ -74,14 +92,23 @@ - name: ensure minimal X window environment apt: name={{item}} state=present with_items: - - xserver-xorg + - xserver-xorg-core + - xserver-xorg-input-evdev # supports all input devices the kernel knows about - xinit # contains startx - libpam-systemd # needed to start X as non-root + - name: ensure 3d acceleration and optimus switch + apt: name={{item}} state=present + with_items: + - linux-headers-amd64 # necessary to build proper nvidia-driver module + - libgl1-mesa-dri # necessary for OpenGL 3D acceleration to work + - libglu1-mesa # necessary for OpenGL 3D acceleration to work + - bumblebee-nvidia + - primus - name: ensure basic X tools apt: name={{item}} state=present with_items: - - x11-xserver-utils # includes xrdb which applies .Xresources files - xterm + - x11-xserver-utils # includes xrdb which applies .Xresources files - redshift - i3 - i3status @@ -90,7 +117,20 @@ # Set up pentadactyl. - name: ensure browser environment apt: name={{item}} state=present + with_items: - iceweasel - xul-ext-noscript - xul-ext-pentadactyl - vim-gtk # used by pentadactyl for text editing + + # Remove undesired packages + - name: collect required packages + shell: cat files/apt-mark/* > /tmp/white_list_unsorted && sort /tmp/white_list_unsorted > /tmp/white_list_sorted + - name: collect currently installed packages + shell: dpkg-query -Wf '${Package}\n' > /tmp/all_unsorted && sort /tmp/all_unsorted > /tmp/all_sorted + - name: create black list of packages to mark as automatically installed from the difference between the required packages and the packages currently installed + shell: comm -3 /tmp/all_sorted /tmp/white_list_sorted > /tmp/list_black + - name: mark all packages from black list as automatically installed + shell: apt-mark auto $(cat /tmp/list_black) + - name: purge all packages automatically installed that are not depended on + shell: DEBIAN_FRONTEND=noninteractive apt-get -y --purge autoremove