aboutsummaryrefslogtreecommitdiff
path: root/sway-de
diff options
context:
space:
mode:
Diffstat (limited to 'sway-de')
-rw-r--r--sway-de/foot/.config/foot/foot.ini4
-rwxr-xr-xsway-de/install.sh16
-rw-r--r--sway-de/lxpolkit/.local/share/systemd/user/lxpolkit.service15
-rw-r--r--sway-de/mako/.config/mako/config1
-rw-r--r--sway-de/rofi/.config/rofi/config.rasi153
-rw-r--r--sway-de/rofi/.config/rofi/themes/totus.rasi174
-rwxr-xr-xsway-de/rofi/.local/bin/dmenu-wl (renamed from sway-de/wofi/.local/bin/dmenu-wl)2
-rw-r--r--sway-de/sway/.config/sway/config82
-rwxr-xr-xsway-de/sway/.local/bin/dnf-needs-restarting4
-rw-r--r--sway-de/waybar/.config/waybar/config42
-rw-r--r--sway-de/waybar/.config/waybar/style.css12
-rw-r--r--sway-de/wob/.config/wob/wob.ini6
-rwxr-xr-xsway-de/wob/.local/bin/setbright30
-rwxr-xr-xsway-de/wob/.local/bin/setvol30
-rw-r--r--sway-de/wob/.local/share/systemd/user/wob.service13
-rw-r--r--sway-de/wob/.local/share/systemd/user/wob.socket9
-rw-r--r--sway-de/wofi/.config/wofi/style.css41
17 files changed, 425 insertions, 209 deletions
diff --git a/sway-de/foot/.config/foot/foot.ini b/sway-de/foot/.config/foot/foot.ini
index ece9c04..ad59a6e 100644
--- a/sway-de/foot/.config/foot/foot.ini
+++ b/sway-de/foot/.config/foot/foot.ini
@@ -4,8 +4,8 @@
# term=foot (or xterm-256color if built with -Dterminfo=disabled)
# login-shell=no
-font=Cascadia Mono PL Light:size=9
-font-bold=Cascadia Mono PL:size=9
+font=Iosevka Comfy Fixed Light:size=9
+font-bold=Iosevka Comfy Fixed Semibold:size=9
# font-bold=<bold variant of regular font>
# font-italic=<italic variant of regular font>
# font-bold-italic=<bold+italic variant of regular font>
diff --git a/sway-de/install.sh b/sway-de/install.sh
index b80b7dd..88b50ab 100755
--- a/sway-de/install.sh
+++ b/sway-de/install.sh
@@ -19,6 +19,7 @@ if ! command -v dnf > /dev/null !! [ ! -f /etc/fedora-release ]; then
exit 1
fi
+
# give the option to skip installing packages since dnf can be slow
skip_packages=""
while [[ $# -gt 0 ]]; do
@@ -36,7 +37,7 @@ done
if [ -z "$skip_packages" ]; then
# install rpmfusion if it's not already installed
- repos_installed=$(dnf --cacheonly repolist | tail -n+2 | cut -f1 -d' ' | grep -Exc 'rpmfusion-free|rpmfusion-nonfree')
+ repos_installed="$(dnf --cacheonly repolist | tail -n+2 | cut -f1 -d' ' | awk '/(^rpmfusion-free$)|(^rpmfusion-nonfree$)/' | wc -l)"
if [ "$repos_installed" -lt "2" ]; then
sudo dnf install \
"https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm" \
@@ -45,9 +46,11 @@ if [ -z "$skip_packages" ]; then
# install packages
sudo dnf install \
- sway waybar wob wofi foot lxpolkit mako cascadia-mono-pl-fonts \
+ sway waybar rofi-wayland foot mako cascadia-mono-pl-fonts \
udiskie libappindicator-gtk3 duplicity python3-b2sdk pass passmenu \
- brightnessctl vlc unzip vim wget git zsh stow dnf-automatic
+ brightnessctl vlc unzip vim wget git zsh stow dnf-automatic \
+ grimshot pulseaudio-utils thunar pavucontrol-qt \
+ network-manager-applet
fi
@@ -67,12 +70,11 @@ fi
$STOWCMD \
--dir "$(pwd)" \
--target "$HOME" \
- foot lxpolkit mako sway swaylock udiskie waybar wob wofi
+ foot mako rofi sway swaylock udiskie waybar
# enable new systemd units and start them if sway is running
-sway_active=$(systemctl --user is-active sway-session.target)
-for unit in lxpolkit.service mako.service udiskie.service wob.service wob.socket; do
- if [ "active" = "$sway_active" ]; then
+for unit in udiskie.service; do
+ if systemctl --user is-active sway-session.target; then
systemctl --user enable --now "$(basename "$unit")"
else
systemctl --user enable "$(basename "$unit")"
diff --git a/sway-de/lxpolkit/.local/share/systemd/user/lxpolkit.service b/sway-de/lxpolkit/.local/share/systemd/user/lxpolkit.service
deleted file mode 100644
index 98697d7..0000000
--- a/sway-de/lxpolkit/.local/share/systemd/user/lxpolkit.service
+++ /dev/null
@@ -1,15 +0,0 @@
-[Unit]
-Description=Simple PolicyKit authentication agent developed for LXDE
-PartOf=sway-session.target
-After=sway-session.target
-
-[Service]
-Type=simple
-ExecStart=/usr/bin/lxpolkit
-ExecStop=/bin/kill -2 $MAINPID
-Restart=on-failure
-RestartSec=1
-TimeoutStopSec=10
-
-[Install]
-WantedBy=sway-session.target
diff --git a/sway-de/mako/.config/mako/config b/sway-de/mako/.config/mako/config
index 44d0f83..35a08d8 100644
--- a/sway-de/mako/.config/mako/config
+++ b/sway-de/mako/.config/mako/config
@@ -2,3 +2,4 @@ font=Noto Sans 10
background-color=#efefef
text-color=#4a484d
border-color=#005289
+progress-color=over #dedede
diff --git a/sway-de/rofi/.config/rofi/config.rasi b/sway-de/rofi/.config/rofi/config.rasi
new file mode 100644
index 0000000..2a37aca
--- /dev/null
+++ b/sway-de/rofi/.config/rofi/config.rasi
@@ -0,0 +1,153 @@
+configuration {
+/* modes: "window,drun,run,ssh";*/
+/* font: "mono 12";*/
+/* location: 0;*/
+/* yoffset: 0;*/
+/* xoffset: 0;*/
+/* fixed-num-lines: true;*/
+/* show-icons: false;*/
+/* terminal: "rofi-sensible-terminal";*/
+/* ssh-client: "ssh";*/
+/* ssh-command: "{terminal} -e {ssh-client} {host} [-p {port}]";*/
+/* run-command: "{cmd}";*/
+/* run-list-command: "";*/
+/* run-shell-command: "{terminal} -e {cmd}";*/
+/* window-command: "wmctrl -i -R {window}";*/
+/* window-match-fields: "all";*/
+/* icon-theme: ;*/
+/* drun-match-fields: "name,generic,exec,categories,keywords";*/
+/* drun-categories: ;*/
+/* drun-show-actions: false;*/
+/* drun-display-format: "{name} [<span weight='light' size='small'><i>({generic})</i></span>]";*/
+/* drun-url-launcher: "xdg-open";*/
+/* disable-history: false;*/
+/* ignored-prefixes: "";*/
+/* sort: false;*/
+/* sorting-method: "normal";*/
+/* case-sensitive: false;*/
+/* cycle: true;*/
+/* sidebar-mode: false;*/
+/* hover-select: false;*/
+/* eh: 1;*/
+/* auto-select: false;*/
+/* parse-hosts: false;*/
+/* parse-known-hosts: true;*/
+/* combi-modes: "window,run";*/
+/* matching: "normal";*/
+/* tokenize: true;*/
+/* m: "-5";*/
+/* filter: ;*/
+/* dpi: -1;*/
+/* threads: 0;*/
+/* scroll-method: 0;*/
+/* window-format: "{w} {c} {t}";*/
+/* click-to-exit: true;*/
+/* max-history-size: 25;*/
+/* combi-hide-mode-prefix: false;*/
+/* combi-display-format: "{mode} {text}";*/
+/* matching-negate-char: '-' /* unsupported */;*/
+/* cache-dir: ;*/
+/* window-thumbnail: false;*/
+/* drun-use-desktop-cache: false;*/
+/* drun-reload-desktop-cache: false;*/
+/* normalize-match: false;*/
+/* steal-focus: false;*/
+/* application-fallback-icon: ;*/
+/* refilter-timeout-limit: 300;*/
+/* xserver-i300-workaround: false;*/
+/* pid: "/run/user/1000/rofi.pid";*/
+/* display-window: ;*/
+/* display-run: ;*/
+/* display-ssh: ;*/
+/* display-drun: ;*/
+/* display-combi: ;*/
+/* display-keys: ;*/
+/* display-filebrowser: ;*/
+/* kb-primary-paste: "Control+V,Shift+Insert";*/
+/* kb-secondary-paste: "Control+v,Insert";*/
+/* kb-secondary-copy: "Control+c";*/
+/* kb-clear-line: "Control+w";*/
+/* kb-move-front: "Control+a";*/
+/* kb-move-end: "Control+e";*/
+/* kb-move-word-back: "Alt+b,Control+Left";*/
+/* kb-move-word-forward: "Alt+f,Control+Right";*/
+/* kb-move-char-back: "Left,Control+b";*/
+/* kb-move-char-forward: "Right,Control+f";*/
+/* kb-remove-word-back: "Control+Alt+h,Control+BackSpace";*/
+/* kb-remove-word-forward: "Control+Alt+d";*/
+/* kb-remove-char-forward: "Delete,Control+d";*/
+/* kb-remove-char-back: "BackSpace,Shift+BackSpace,Control+h";*/
+/* kb-remove-to-eol: "Control+k";*/
+/* kb-remove-to-sol: "Control+u";*/
+/* kb-accept-entry: "Control+j,Control+m,Return,KP_Enter";*/
+/* kb-accept-custom: "Control+Return";*/
+/* kb-accept-custom-alt: "Control+Shift+Return";*/
+/* kb-accept-alt: "Shift+Return";*/
+/* kb-delete-entry: "Shift+Delete";*/
+/* kb-mode-next: "Shift+Right,Control+Tab";*/
+/* kb-mode-previous: "Shift+Left,Control+ISO_Left_Tab";*/
+/* kb-mode-complete: "Control+l";*/
+/* kb-row-left: "Control+Page_Up";*/
+/* kb-row-right: "Control+Page_Down";*/
+/* kb-row-up: "Up,Control+p";*/
+/* kb-row-down: "Down,Control+n";*/
+/* kb-row-tab: "";*/
+/* kb-element-next: "Tab";*/
+/* kb-element-prev: "ISO_Left_Tab";*/
+/* kb-page-prev: "Page_Up";*/
+/* kb-page-next: "Page_Down";*/
+/* kb-row-first: "Home,KP_Home";*/
+/* kb-row-last: "End,KP_End";*/
+/* kb-row-select: "Control+space";*/
+/* kb-screenshot: "Alt+S";*/
+/* kb-ellipsize: "Alt+period";*/
+/* kb-toggle-case-sensitivity: "grave,dead_grave";*/
+/* kb-toggle-sort: "Alt+grave";*/
+/* kb-cancel: "Escape,Control+g,Control+bracketleft";*/
+/* kb-custom-1: "Alt+1";*/
+/* kb-custom-2: "Alt+2";*/
+/* kb-custom-3: "Alt+3";*/
+/* kb-custom-4: "Alt+4";*/
+/* kb-custom-5: "Alt+5";*/
+/* kb-custom-6: "Alt+6";*/
+/* kb-custom-7: "Alt+7";*/
+/* kb-custom-8: "Alt+8";*/
+/* kb-custom-9: "Alt+9";*/
+/* kb-custom-10: "Alt+0";*/
+/* kb-custom-11: "Alt+exclam";*/
+/* kb-custom-12: "Alt+at";*/
+/* kb-custom-13: "Alt+numbersign";*/
+/* kb-custom-14: "Alt+dollar";*/
+/* kb-custom-15: "Alt+percent";*/
+/* kb-custom-16: "Alt+dead_circumflex";*/
+/* kb-custom-17: "Alt+ampersand";*/
+/* kb-custom-18: "Alt+asterisk";*/
+/* kb-custom-19: "Alt+parenleft";*/
+/* kb-select-1: "Super+1";*/
+/* kb-select-2: "Super+2";*/
+/* kb-select-3: "Super+3";*/
+/* kb-select-4: "Super+4";*/
+/* kb-select-5: "Super+5";*/
+/* kb-select-6: "Super+6";*/
+/* kb-select-7: "Super+7";*/
+/* kb-select-8: "Super+8";*/
+/* kb-select-9: "Super+9";*/
+/* kb-select-10: "Super+0";*/
+/* ml-row-left: "ScrollLeft";*/
+/* ml-row-right: "ScrollRight";*/
+/* ml-row-up: "ScrollUp";*/
+/* ml-row-down: "ScrollDown";*/
+/* me-select-entry: "MousePrimary";*/
+/* me-accept-entry: "MouseDPrimary";*/
+/* me-accept-custom: "Control+MouseDPrimary";*/
+ timeout {
+ action: "kb-cancel";
+ delay: 0;
+ }
+ filebrowser {
+ directories-first: true;
+ sorting-method: "name";
+ }
+}
+
+@theme "totus"
diff --git a/sway-de/rofi/.config/rofi/themes/totus.rasi b/sway-de/rofi/.config/rofi/themes/totus.rasi
new file mode 100644
index 0000000..227f5f8
--- /dev/null
+++ b/sway-de/rofi/.config/rofi/themes/totus.rasi
@@ -0,0 +1,174 @@
+/**
+ * rofi -dump-theme output.
+ * Rofi version: 1.7.5+wayland2
+ **/
+* {
+ background: rgba ( 240, 240, 240, 100 % );
+ foreground: rgba ( 74, 72, 76, 100 % );
+ lightfg: rgba ( 93, 75, 79, 100 % );
+ lightbg: rgba ( 222, 222, 222, 100 % );
+ red: rgba ( 151, 32, 48, 100 % );
+ blue: rgba ( 45, 69, 174, 100 % );
+ cyan: rgba ( 0, 83, 138, 100% );
+ selected-active-foreground: var(background);
+ separatorcolor: var(foreground);
+ urgent-foreground: var(red);
+ alternate-urgent-background: var(lightbg);
+ background-color: transparent;
+ border-color: var(foreground);
+ normal-background: var(background);
+ selected-urgent-background: var(red);
+ alternate-active-background: var(lightbg);
+ spacing: 2;
+ alternate-normal-foreground: var(foreground);
+ urgent-background: var(background);
+ selected-normal-foreground: var(background);
+ active-foreground: var(blue);
+ selected-active-background: var(blue);
+ active-background: var(background);
+ selected-normal-background: var(cyan);
+ alternate-normal-background: var(lightbg);
+ selected-urgent-foreground: var(background);
+ normal-foreground: var(foreground);
+ alternate-urgent-foreground: var(red);
+ alternate-active-foreground: var(blue);
+}
+element {
+ padding: 1px ;
+ cursor: pointer;
+ spacing: 5px ;
+ border: 0;
+}
+element normal.normal {
+ background-color: var(normal-background);
+ text-color: var(normal-foreground);
+}
+element normal.urgent {
+ background-color: var(urgent-background);
+ text-color: var(urgent-foreground);
+}
+element normal.active {
+ background-color: var(active-background);
+ text-color: var(active-foreground);
+}
+element selected.normal {
+ background-color: var(selected-normal-background);
+ text-color: var(selected-normal-foreground);
+}
+element selected.urgent {
+ background-color: var(selected-urgent-background);
+ text-color: var(selected-urgent-foreground);
+}
+element selected.active {
+ background-color: var(selected-active-background);
+ text-color: var(selected-active-foreground);
+}
+element alternate.normal {
+ background-color: var(alternate-normal-background);
+ text-color: var(alternate-normal-foreground);
+}
+element alternate.urgent {
+ background-color: var(alternate-urgent-background);
+ text-color: var(alternate-urgent-foreground);
+}
+element alternate.active {
+ background-color: var(alternate-active-background);
+ text-color: var(alternate-active-foreground);
+}
+element-text {
+ background-color: transparent;
+ cursor: inherit;
+ highlight: inherit;
+ text-color: inherit;
+}
+element-icon {
+ background-color: transparent;
+ size: 1.0000em ;
+ cursor: inherit;
+ text-color: inherit;
+}
+window {
+ padding: 5;
+ background-color: var(background);
+ border: 1;
+}
+mainbox {
+ padding: 0;
+ border: 0;
+}
+message {
+ padding: 1px ;
+ border-color: var(separatorcolor);
+ border: 2px dash 0px 0px ;
+}
+textbox {
+ text-color: var(foreground);
+}
+listview {
+ padding: 2px 0px 0px ;
+ scrollbar: true;
+ border-color: var(separatorcolor);
+ spacing: 2px ;
+ fixed-height: 0;
+ border: 2px dash 0px 0px ;
+}
+scrollbar {
+ width: 4px ;
+ padding: 0;
+ handle-width: 8px ;
+ border: 0;
+ handle-color: var(normal-foreground);
+}
+sidebar {
+ border-color: var(separatorcolor);
+ border: 2px dash 0px 0px ;
+}
+button {
+ cursor: pointer;
+ spacing: 0;
+ text-color: var(normal-foreground);
+}
+button selected {
+ background-color: var(selected-normal-background);
+ text-color: var(selected-normal-foreground);
+}
+num-filtered-rows {
+ expand: false;
+ text-color: Gray;
+}
+num-rows {
+ expand: false;
+ text-color: Gray;
+}
+textbox-num-sep {
+ expand: false;
+ str: "/";
+ text-color: Gray;
+}
+inputbar {
+ padding: 1px ;
+ spacing: 0px ;
+ text-color: var(normal-foreground);
+ children: [ "prompt","textbox-prompt-colon","entry","num-filtered-rows","textbox-num-sep","num-rows","case-indicator" ];
+}
+case-indicator {
+ spacing: 0;
+ text-color: var(normal-foreground);
+}
+entry {
+ text-color: var(normal-foreground);
+ cursor: text;
+ spacing: 0;
+ placeholder-color: Gray;
+ placeholder: "Type to filter";
+}
+prompt {
+ spacing: 0;
+ text-color: var(normal-foreground);
+}
+textbox-prompt-colon {
+ margin: 0px 0.3000em 0.0000em 0.0000em ;
+ expand: false;
+ str: ":";
+ text-color: inherit;
+}
diff --git a/sway-de/wofi/.local/bin/dmenu-wl b/sway-de/rofi/.local/bin/dmenu-wl
index 32d60df..fdc4fa5 100755
--- a/sway-de/wofi/.local/bin/dmenu-wl
+++ b/sway-de/rofi/.local/bin/dmenu-wl
@@ -5,4 +5,4 @@
set -euo pipefail
-wofi -d "$@"
+rofi -dmenu "$@"
diff --git a/sway-de/sway/.config/sway/config b/sway-de/sway/.config/sway/config
index 7636ee0..f91ab40 100644
--- a/sway-de/sway/.config/sway/config
+++ b/sway-de/sway/.config/sway/config
@@ -1,3 +1,9 @@
+# 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.
@@ -8,12 +14,18 @@ set $down j
set $up k
set $right l
# Your preferred terminal emulator
+# Recommends: foot
set $term foot
# Your preferred application launcher
# Note: pass the final command to swaymsg so that the resulting window can be opened
# on the original workspace that the command was run on.
-#set $menu dmenu_path | dmenu | xargs swaymsg exec --
-set $menu wofi --show=drun | xargs swaymsg exec --
+# Recommends: rofi-wayland
+set $rofi_cmd rofi \
+ -terminal '$term'
+# Shows a combined list of the applications with desktop files and
+# executables from PATH.
+# TODO: add window with the next release of rofi-wayland
+set $menu $rofi_cmd -show combi -combi-modes drun#run -modes combi
font Noto Sans 9
default_border pixel 1
@@ -21,8 +33,10 @@ smart_borders on
### Output configuration
#
-output * background ~/.local/share/backgrounds/default fill
-
+# Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/)
+# Requires: desktop-backgrounds-compat, swaybg
+output * bg ~/.local/share/backgrounds/default fill
+#
# Example configuration:
#
# output HDMI-A-1 resolution 1920x1080 position 1920,0
@@ -35,18 +49,13 @@ output * background ~/.local/share/backgrounds/default fill
#
# exec swayidle -w \
# timeout 300 'swaylock -f -c 000000' \
-# timeout 600 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' \
+# timeout 600 'swaymsg "output * power off"' resume 'swaymsg "output * power on"' \
# before-sleep 'swaylock -f -c 000000'
#
# This will lock your screen after 300 seconds of inactivity, then turn off
# your displays after another 300 seconds, and turn your screens back on when
# resumed. It will also lock your screen before your computer goes to sleep.
- exec swayidle -w \
- timeout 300 'swaylock -f' \
- timeout 600 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' \
- before-sleep 'swaylock -f'
-
### Input configuration
#
# Example configuration:
@@ -89,22 +98,8 @@ output * background ~/.local/share/backgrounds/default fill
bindsym $mod+Shift+c reload
# Exit sway (logs you out of your Wayland session)
- bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit'
- bindsym $mod+Shift+i exec swaylock
-
- # Media keys
- bindsym XF86AudioRaiseVolume exec ~/.local/bin/setvol up
- bindsym XF86AudioLowerVolume exec ~/.local/bin/setvol down
- bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle
- bindsym XF86AudioMicMute exec pactl set-source-mute @DEFAULT_SOURCE@ toggle
- bindsym XF86MonBrightnessDown exec ~/.local/bin/setbright down
- bindsym XF86MonBrightnessUp exec ~/.local/bin/setbright up
- #bindsym XF86MonBrightnessDown exec brightnessctl set 5%-
- #bindsym XF86MonBrightnessUp exec brightnessctl set +5%
- #bindsym XF86AudioPlay exec playerctl play-pause
- #bindsym XF86AudioNext exec playerctl next
- #bindsym XF86AudioPrev exec playerctl previous
-
+ bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit'
+ bindsym $mod+Shift+i exec loginctl lock-session
#
# Moving around:
#
@@ -235,25 +230,30 @@ client.focused_inactive #efefef #efefef #4a484d #992030 #efefef
client.unfocused #efefef #efefef #4a484d #992030 #efefef
#
-# Status Bar: waybar
+# Apps
#
-bar {
- swaybar_command waybar
-}
+bindsym $mod+comma exec PATH=~/.local/bin:$PATH /usr/bin/passmenu
+# Include configs from 3 locations:
+# - /usr/share/sway/config.d
+# - /etc/sway/config.d
+# - $XDG_CONFIG_HOME/sway/config.d ($HOME/.config/sway/config.d)
#
-# System sway config
+# If multiple directories contain the files with the same name, the later
+# directory takes precedence; `$XDG_CONFIG_HOME/sway/config.d/20-swayidle.conf`
+# will always be loaded instead of `/usr/share/sway/config.d/20-swayidle.conf`
+# or `/etc/sway/config.d/20-swayidle.conf`
#
-
-include /etc/sway/config.d/*.conf
-
+# This mechanism permits overriding our default configuration per-system
+# (/etc) or per-user ($XDG_CONFIG_HOME) basis. Just create the file you
+# want to modify/override in the higher-level directory.
#
-# Apps
+# For example, to disable the default bar from Fedora configs, you'll need to
+# $ echo -n > "$HOME/.config/sway/config.d/90-bar.conf"
#
-
-for_window [app_id="firefox"] inhibit_idle fullscreen
-assign [app_id="firefox"] workspace number 1
-
-bindsym $mod+comma exec PATH=~/.local/bin:$PATH /usr/bin/passmenu
-
+# Note the quoting, the $() and the arguments quoting. All the parts are equally
+# important to make the magic work. And if you want to learn the secret behind
+# the trick, it's all in the `wordexp(3)`.
+#
+include '$(/usr/libexec/sway/layered-include "/usr/share/sway/config.d/*.conf" "/etc/sway/config.d/*.conf" "${XDG_CONFIG_HOME:-$HOME/.config}/sway/config.d/*.conf")'
diff --git a/sway-de/sway/.local/bin/dnf-needs-restarting b/sway-de/sway/.local/bin/dnf-needs-restarting
index a080649..7fc6542 100755
--- a/sway-de/sway/.local/bin/dnf-needs-restarting
+++ b/sway-de/sway/.local/bin/dnf-needs-restarting
@@ -1,6 +1,6 @@
#!/bin/bash
-set -eo pipefail
+set -euo pipefail
if command -v dnf > /dev/null; then
DNFCMD="dnf"
@@ -8,7 +8,7 @@ fi
if command -v jq > /dev/null; then
JQCMD="jq"
fi
-if [ -z "$DNFCMD" ] || [ -z "$JQCMD" ]; then
+if [ -z "${DNFCMD+x}" ] || [ -z "${JQCMD+x}" ]; then
echo "{\"tooltip\": \"requires 'jq' and 'dnf'\", \"text\": \"\"}"
exit 1
fi
diff --git a/sway-de/waybar/.config/waybar/config b/sway-de/waybar/.config/waybar/config
index 00a08e4..773cd58 100644
--- a/sway-de/waybar/.config/waybar/config
+++ b/sway-de/waybar/.config/waybar/config
@@ -6,7 +6,7 @@
"height": 0,
"modules-left": ["sway/workspaces", "sway/mode"],
"modules-center": [],
- "modules-right": ["tray", "custom/reboot", "network#wifi", "pulseaudio", "battery#bat1", "temperature", "idle_inhibitor", "clock#local"],
+ "modules-right": ["tray", "custom/reboot", "custom/backup", "network#wifi", "pulseaudio", "battery#bat0", "battery#bat1", "temperature", "idle_inhibitor", "clock#local"],
"sway/workspaces": {
"format": "{icon}",
"format-icons": {
@@ -15,6 +15,9 @@
"3": ""
}
},
+ "tray": {
+ "spacing": 20
+ },
"clock#local": {
"interval": 1,
"format": "{:%a %d %b %I:%M %p}",
@@ -23,11 +26,11 @@
},
"temperature": {
"critical-threshold": 80,
- "format": "{icon}",
+ "format": "{temperatureC}°C {icon}",
"format-icons": ["", "", "", "", ""],
"tooltip-format": "Temperature: {temperatureC}°C"
},
- "battery#bat1": {
+ "battery#bat0": {
"bat": "BAT0",
"adapter": "AC",
"interval": 60,
@@ -39,15 +42,32 @@
"1": 20,
"0": 5
},
- "format": "{icon}",
- "format-charging": "",
+ "format": "{capacity}% {icon}",
+ "format-charging": "{capacity}% \uf0e7",
+ "format-icons": ["", "", "", "", ""],
+ "tooltip-format": "Battery: {capacity}%\n{timeTo}"
+ },
+ "battery#bat1": {
+ "bat": "BAT1",
+ "adapter": "AC",
+ "interval": 60,
+ "states": {
+ "5": 100,
+ "4": 80,
+ "3": 60,
+ "2": 40,
+ "1": 20,
+ "0": 5
+ },
+ "format": "{capacity}% {icon}",
+ "format-charging": "{capacity}% \uf0e7",
"format-icons": ["", "", "", "", ""],
"tooltip-format": "Battery: {capacity}%\n{timeTo}"
},
"network#wifi": {
"interface": "wlp*",
"format-ethernet": "",
- "format-wifi": "",
+ "format-wifi": "{signalStrength}% ",
"format-linked": "",
"format-disconnected": "",
"tooltip-format": "Signal: {signalStrength}%\n{essid}\n{ifname}: {ipaddr}/{cidr}",
@@ -55,8 +75,8 @@
},
"pulseaudio": {
"scroll-step": 1,
- "format": "{icon}",
- "format-muted": "",
+ "format": "{volume}% {icon}",
+ "format-muted": "{volume}% ",
"format-icons": {
"headphone": "",
"default": ["", ""]
@@ -77,6 +97,12 @@
"exec": "~/.local/bin/dnf-needs-restarting",
"return-type": "json",
"interval": 60
+ },
+ "custom/backup": {
+ "format": "{}",
+ "exec": "~/.local/bin/checkbackup",
+ "return-type": "json",
+ "interval": 60
}
}
]
diff --git a/sway-de/waybar/.config/waybar/style.css b/sway-de/waybar/.config/waybar/style.css
index 36a330d..8540450 100644
--- a/sway-de/waybar/.config/waybar/style.css
+++ b/sway-de/waybar/.config/waybar/style.css
@@ -1,7 +1,7 @@
* {
border-radius: 0;
border: 0;
- font-family: "Noto Sans", "Font Awesome 5 Free";
+ font-family: "Noto Sans", "Font Awesome 6 Free";
font-size: 11pt;
text-shadow: none;
}
@@ -37,7 +37,7 @@ tooltip label {
color: #4a484d;
}
-label {
+label, #tray {
padding: 2px 10px;
margin: 0;
}
@@ -61,10 +61,14 @@ label {
background: #efefef;
}
-#custom-reboot, #network, #pulseaudio, #battery, #temperature, #idle_inhibitor {
+#custom-reboot, #custom-backup, #idle_inhibitor {
min-width: 18px;
}
+#network, #pulseaudio, #battery, #temperature {
+ font-weight: 500;
+}
+
#clock {
font-weight: 500;
}
@@ -79,6 +83,6 @@ label {
text-shadow: 1px 1px 0 #992030;
}
-#custom-reboot {
+#custom-reboot, #custom-backup.script-error {
color: #a50000;
}
diff --git a/sway-de/wob/.config/wob/wob.ini b/sway-de/wob/.config/wob/wob.ini
deleted file mode 100644
index ab4ffcb..0000000
--- a/sway-de/wob/.config/wob/wob.ini
+++ /dev/null
@@ -1,6 +0,0 @@
-border_color=5e4b4f
-background_color=efefef
-bar_color=5e4b4f
-border_offset=0
-border_size=1
-bar_padding=5
diff --git a/sway-de/wob/.local/bin/setbright b/sway-de/wob/.local/bin/setbright
deleted file mode 100755
index 7d2784a..0000000
--- a/sway-de/wob/.local/bin/setbright
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/bin/bash
-
-set -euo pipefail
-
-wobsock="$XDG_RUNTIME_DIR/wob.sock"
-if [ ! -p "$wobsock" ]; then
- echo $wobsock
- echo "communication socket not found"
- exit 2
-fi
-
-current=$(brightnessctl -m info | cut -d, -f4 | tr --delete '%')
-case $1 in
- up)
- increment=$(( 5 - ( current % 5 ) ))
- new=$(( current + increment ))
- if [ $new -gt 100 ]; then
- new=100
- fi
- brightnessctl set $new% > /dev/null 2>&1
- echo $new > $wobsock;;
- down)
- increment=$(( ( ( current - 1 ) % 5 ) + 1 ))
- new=$(( current - increment ))
- if [ $new -lt 0 ]; then
- new=0
- fi
- brightnessctl set $new% > /dev/null 2>&1
- echo $new > $wobsock;;
-esac
diff --git a/sway-de/wob/.local/bin/setvol b/sway-de/wob/.local/bin/setvol
deleted file mode 100755
index f8bb4df..0000000
--- a/sway-de/wob/.local/bin/setvol
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/bin/bash
-
-set -euo pipefail
-
-wobsock="$XDG_RUNTIME_DIR/wob.sock"
-if [ ! -p "$wobsock" ]; then
- echo $wobsock
- echo "communication socket not found"
- exit 2
-fi
-
-current_volume=$(pactl get-sink-volume @DEFAULT_SINK@ | grep Volume | sed -e 's/.* \([0-9][0-9]*\)%.*/\1/')
-case $1 in
- up)
- increment=$(( 5 - ( current_volume % 5 ) ))
- newvol=$(( current_volume + increment ))
- if [ $newvol -gt 100 ]; then
- newvol=100
- fi
- pactl set-sink-volume @DEFAULT_SINK@ $newvol%
- echo $newvol > $wobsock;;
- down)
- increment=$(( ( ( current_volume - 1 ) % 5 ) + 1 ))
- newvol=$(( current_volume - increment ))
- if [ $newvol -lt 0 ]; then
- newvol=0
- fi
- pactl set-sink-volume @DEFAULT_SINK@ $newvol%
- echo $newvol > $wobsock;;
-esac
diff --git a/sway-de/wob/.local/share/systemd/user/wob.service b/sway-de/wob/.local/share/systemd/user/wob.service
deleted file mode 100644
index 1193b30..0000000
--- a/sway-de/wob/.local/share/systemd/user/wob.service
+++ /dev/null
@@ -1,13 +0,0 @@
-[Unit]
-Description=A lightweight overlay volume/backlight/progress/anything bar for Wayland
-Documentation=man:wob(1)
-PartOf=sway-session.target
-After=sway-session.target
-ConditionEnvironment=WAYLAND_DISPLAY
-
-[Service]
-StandardInput=socket
-ExecStart=/usr/bin/wob
-
-[Install]
-WantedBy=sway-session.target
diff --git a/sway-de/wob/.local/share/systemd/user/wob.socket b/sway-de/wob/.local/share/systemd/user/wob.socket
deleted file mode 100644
index 01296d8..0000000
--- a/sway-de/wob/.local/share/systemd/user/wob.socket
+++ /dev/null
@@ -1,9 +0,0 @@
-[Socket]
-ListenFIFO=%t/wob.sock
-SocketMode=0600
-RemoveOnStop=on
-# If wob exits on invalid input, systemd should NOT shove following input right back into it after it restarts
-FlushPending=yes
-
-[Install]
-WantedBy=sockets.target
diff --git a/sway-de/wofi/.config/wofi/style.css b/sway-de/wofi/.config/wofi/style.css
deleted file mode 100644
index 5cfaf6c..0000000
--- a/sway-de/wofi/.config/wofi/style.css
+++ /dev/null
@@ -1,41 +0,0 @@
-window {
- background: #efefef;
- color: #4a484d;
- font-family: Noto Sans;
- font-size: 11pt;
- border: 1px solid #5e4b4f;
-}
-
-#input {
- padding: 2px;
- margin: 5px;
- border: 0;
- border-radius: 0;
-}
-
-#input:active {
- border: 0;
-}
-
-#inner-box {
-}
-
-#outer-box {
-}
-
-#scroll {
- padding: 2px;
- margin: 5px;
-}
-
-#text {
- color: #4a484d;
-}
-
-#entry:selected #text{
- color: #ffffff;
-}
-
-#entry:selected {
- background: #2d45b0;
-}