dotfiles/tasks/i3.yml

113 lines
2.5 KiB
YAML

- 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 }}"