- name: "Install i3 packages" aur: skip_installed: true name: "{{ item }}" become: true become_user: aur_builder when: "item not in installed_packages.stdout_lines" loop: - 'arandr' - 'betterlockscreen' - 'brightnessctl' - 'picom' - 'dmenu' - 'dunst' - 'feh' - 'flameshot' - 'i3-gaps' - 'i3lock-color' - 'lxrandr' - 'lxqt-policykit' - 'aur/polybar' - 'redshift' - 'rofi' - 'rofi-calc' - 'tbg' - 'xdotool' - name: Set i3 variables set_fact: polybar_scripts: "{{ home }}/.config/polybar/polybar-scripts/polybar-scripts" i3_config_files: - {src: "i3.conf", dest: "{{ home }}/.config/i3/config"} - {src: "i3status.conf", dest: "{{ home }}/.config/i3status/config"} - {src: "picom.conf", dest: "{{ home }}/.config/picom.conf"} - {src: "dunst.conf", dest: "{{ home }}/.config/dunst/dunstrc"} - {src: "polybar.ini", dest: "{{ home }}/.config/polybar/config"} - name: "Create i3 config file directories" loop: "{{ i3_config_files }}" loop_control: label: "{{ item.src }}" file: path: '{{ item.dest | dirname }}' state: directory owner: "{{ user }}" mode: 0755 - name: "i3 config files" loop: "{{ i3_config_files }}" loop_control: label: "{{ item.src }}" template: src: './files/{{ item.src }}' dest: '{{ item.dest }}' mode: 0644 owner: "{{ user }}" - name: "Create polybar config directory" file: path: '{{ home }}/.config/polybar/' state: directory owner: "{{ user }}" mode: 0755 - name: "Polybar scripts" git: repo: https://github.com/x70b1/polybar-scripts dest: "{{ home }}/.config/polybar/polybar-scripts" force: true become: true become_user: "{{ user }}" - name: Install Polybar launcher copy: src: ./files/launch-polybar.sh dest: "{{ home }}/.config/polybar/launch.sh" mode: 0755 owner: "{{ user }}" group: users - name: "Create rofi config directory" file: path: '{{ home }}/.config/rofi/' state: directory owner: "{{ user }}" mode: 0755 - name: "Create rofi config" copy: src: './files/rofi.conf' dest: '{{ home }}/.config/rofi/config' mode: 0644 owner: "{{ user }}" - name: Install pranklock get_url: url: https://raw.githubusercontent.com/RealOrangeOne/pranklock/master/pranklock dest: /usr/bin/pranklock mode: 0755 force: true - name: Install Screen Layouts copy: src: ./files/screen-layouts dest: "{{ home }}/.config" mode: 0755 directory_mode: 0755 owner: "{{ user }}"