diff --git a/roles/fedora_setup/tasks/main.yml b/roles/fedora_setup/tasks/main.yml index 20352bc..f36d5f3 100755 --- a/roles/fedora_setup/tasks/main.yml +++ b/roles/fedora_setup/tasks/main.yml @@ -212,14 +212,14 @@ state: directory mode: '0755' loop: - - "{{ ansible_user_dir }}/.config/mpd" - - "{{ ansible_user_dir }}/.config/mpd/playlists" - - "{{ ansible_user_dir }}/.local/share/mpd" - - "{{ ansible_user_dir }}/.local/share/mpd/music" + - "{{ lookup('env', 'HOME') }}/.config/mpd" + - "{{ lookup('env', 'HOME') }}/.config/mpd/playlists" + - "{{ lookup('env', 'HOME') }}/.local/share/mpd" + - "{{ lookup('env', 'HOME') }}/.local/share/mpd/music" - name: Create MPD log, db, pid, state, and socket files file: - path: "{{ ansible_user_dir }}/.local/share/mpd/{{ item }}" + path: "{{ lookup('env', 'HOME') }}/.local/share/mpd/{{ item }}" state: touch mode: '0644' loop: @@ -231,11 +231,11 @@ - name: Systemd override to use custom mpd.conf copy: - dest: "{{ ansible_user_dir }}/.config/systemd/user/mpd.service.d/override.conf" + dest: "{{ lookup('env', 'HOME') }}/.config/systemd/user/mpd.service.d/override.conf" content: | [Service] ExecStart= - ExecStart=/usr/bin/mpd --no-daemon {{ ansible_user_dir }}/.config/mpd/mpd.conf + ExecStart=/usr/bin/mpd --no-daemon {{ lookup('env', 'HOME') }}/.config/mpd/mpd.conf notify: Reload systemd user daemon - name: Enable and start user mpd service @@ -246,3 +246,62 @@ state: started daemon_reload: true +# Battery +- name: Ensure systemd user directory exists + file: + path: "{{ lookup('env', 'HOME') }}/.config/systemd/user" + state: directory + mode: '0755' + tags: battery + +- name: Install battery alert systemd service + copy: + dest: "{{ lookup('env', 'HOME') }}/.config/systemd/user/battery-alert.service" + mode: '0644' + content: | + [Unit] + Description=Battery level notifier + + [Service] + Type=oneshot + ExecStart=%h/.config/scripts/battery_alert.sh + tags: battery + +- name: Install battery alert systemd timer + copy: + dest: "{{ lookup('env', 'HOME') }}/.config/systemd/user/battery-alert.timer" + mode: '0644' + content: | + [Unit] + Description=Run battery alert every 30 seconds + + [Timer] + OnBootSec=15s + OnUnitActiveSec=30s + Unit=battery-alert.service + + [Install] + WantedBy=default.target + tags: battery + +- name: Reload systemd user daemon + command: systemctl --user daemon-reexec + environment: + XDG_RUNTIME_DIR: "/run/user/{{ ansible_uid }}" + tags: battery + +- name: Reload systemd user units + command: systemctl --user daemon-reload + environment: + XDG_RUNTIME_DIR: "/run/user/{{ ansible_uid }}" + tags: battery + +- name: Enable and start battery alert timer + systemd: + name: battery-alert.timer + scope: user + enabled: yes + state: started + environment: + XDG_RUNTIME_DIR: "/run/user/{{ ansible_uid }}" + tags: battery