diff --git a/ansible/roles/sway/files/bliss.jpg b/ansible/roles/sway/files/bliss.jpg new file mode 100644 index 0000000..ee7cd88 Binary files /dev/null and b/ansible/roles/sway/files/bliss.jpg differ diff --git a/ansible/roles/sway/files/config b/ansible/roles/sway/files/config new file mode 100644 index 0000000..f4641ab --- /dev/null +++ b/ansible/roles/sway/files/config @@ -0,0 +1,26 @@ +# Default config for sway +# +# Copy this to ~/.config/sway/config and edit it to your liking. +# +# Read `man 5 sway` for a complete reference. + +### Variables +# +# Logo key. Use Mod1 for Alt. +set $mod Mod4 +# set $mod Mod1 +# Home row direction keys, like vim +set $left h +set $down j +set $up k +set $right l +# Your preferred terminal emulator +set $term alacritty +# Your preferred application launcher +# Note: it's recommended that you pass the final command to sway +# set $menu dmenu_path | dmenu | xargs swaymsg exec +set $menu /usr/local/bin/wofi --show drun --gtk-dark + +bindsym $mod+grave exec $term + +include ~/.config/sway/config.d/*.conf diff --git a/ansible/roles/sway/files/electron-flags.conf b/ansible/roles/sway/files/electron-flags.conf new file mode 100644 index 0000000..51bdd86 --- /dev/null +++ b/ansible/roles/sway/files/electron-flags.conf @@ -0,0 +1,2 @@ +--enable-features=UseOzonePlatform +--ozone-platform=wayland diff --git a/ansible/roles/sway/files/launch_sway_freebsd.bash b/ansible/roles/sway/files/launch_sway_freebsd.bash index 4b8b0b5..720bbd1 100644 --- a/ansible/roles/sway/files/launch_sway_freebsd.bash +++ b/ansible/roles/sway/files/launch_sway_freebsd.bash @@ -7,6 +7,8 @@ DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" if [[ ! -v XDG_RUNTIME_DIR ]]; then export XDG_RUNTIME_DIR=$(mktemp -d) + chmod 0700 "$XDG_RUNTIME_DIR" + fi -sway |& tee $HOME/.config/swaylog +exec sway -d &> $HOME/.config/swaylog diff --git a/ansible/roles/sway/files/launch_sway_linux.bash b/ansible/roles/sway/files/launch_sway_linux.bash index e040560..f7d9561 100644 --- a/ansible/roles/sway/files/launch_sway_linux.bash +++ b/ansible/roles/sway/files/launch_sway_linux.bash @@ -5,4 +5,4 @@ set -euo pipefail IFS=$'\n\t' DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" -sway |& tee $HOME/.config/swaylog +exec sway -d &> $HOME/.config/swaylog diff --git a/ansible/roles/sway/files/mako_config b/ansible/roles/sway/files/mako_config new file mode 100644 index 0000000..9e53de7 --- /dev/null +++ b/ansible/roles/sway/files/mako_config @@ -0,0 +1,2 @@ +[mode=do-not-disturb] +invisible=1 diff --git a/ansible/roles/sway/files/spaceglenda300.jpg b/ansible/roles/sway/files/spaceglenda300.jpg new file mode 100644 index 0000000..d2bab4d Binary files /dev/null and b/ansible/roles/sway/files/spaceglenda300.jpg differ diff --git a/ansible/roles/sway/files/xdg-desktop-portal-wlr-config b/ansible/roles/sway/files/xdg-desktop-portal-wlr-config new file mode 100644 index 0000000..63e21df --- /dev/null +++ b/ansible/roles/sway/files/xdg-desktop-portal-wlr-config @@ -0,0 +1,7 @@ +# [screencast] +# output_name=HDMI-A-1 +# max_fps=30 +# exec_before=disable_notifications.sh +# exec_after=enable_notifications.sh +# chooser_type=simple +# chooser_cmd=slurp -f %o -or diff --git a/ansible/roles/sway/tasks/peruser.yaml b/ansible/roles/sway/tasks/peruser.yaml index 111e886..df9563c 100644 --- a/ansible/roles/sway/tasks/peruser.yaml +++ b/ansible/roles/sway/tasks/peruser.yaml @@ -1,26 +1,53 @@ - include_role: name: per_user -# - name: Create directories -# file: -# name: "{{ account_homedir.stdout }}/{{ item }}" -# state: directory -# mode: 0700 -# owner: "{{ account_name.stdout }}" -# group: "{{ group_name.stdout }}" -# loop: -# - ".config/foo" +- name: Create directories + file: + name: "{{ account_homedir.stdout }}/{{ item }}" + state: directory + mode: 0700 + owner: "{{ account_name.stdout }}" + group: "{{ group_name.stdout }}" + loop: + - ".config/sway" + - ".config/sway/config.d" + - ".config/waybar" + - ".config/xdg-desktop-portal-wlr" + - ".config/mako" -# - name: Copy files -# copy: -# src: "files/{{ item.src }}" -# dest: "{{ account_homedir.stdout }}/{{ item.dest }}" -# mode: 0600 -# owner: "{{ account_name.stdout }}" -# group: "{{ group_name.stdout }}" -# loop: -# - src: foo.conf -# dest: .config/foo/foo.conf +- name: Copy files + copy: + src: "files/{{ item.src }}" + dest: "{{ account_homedir.stdout }}/{{ item.dest }}" + mode: 0600 + owner: "{{ account_name.stdout }}" + group: "{{ group_name.stdout }}" + loop: + - src: config + dest: .config/sway/config + - src: bliss.jpg + dest: .config/sway/bliss.jpg + - src: spaceglenda300.jpg + dest: .config/sway/spaceglenda300.jpg + - src: waybar_config.json + dest: .config/waybar/config + - src: style.css + dest: .config/waybar/style.css + - src: xdg-desktop-portal-wlr-config + dest: .config/xdg-desktop-portal-wlr/config + - src: electron-flags.conf + dest: .config/electron-flags.conf + - src: mako_config + dest: .config/mako/config + +- name: Configure dotfiles (conf directory) + copy: + src: "files/{{ item }}.conf" + dest: "{{ account_homedir.stdout }}/.config/sway/config.d/{{ item }}.conf" + mode: 0600 + owner: "{{ account_name.stdout }}" + group: "{{ group_name.stdout }}" + loop: "{{ sway_conf_files }}" - import_tasks: tasks/peruser_freebsd.yaml when: 'os_flavor == "freebsd"'