Keep things up-to-date
@@ -0,0 +1,34 @@
|
|||||||
|
if test -f "/tmp/wallpaper-blur.png"; then
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
#cmd[0]="cmatrix"
|
||||||
|
#cmd[1]="hollywood"
|
||||||
|
#cmd[2]="termsaver sysmon"
|
||||||
|
#cmd[3]="termsaver wttr"
|
||||||
|
#cmd=${cmd[$[$RANDOM % ${#cmd[@]}]]}
|
||||||
|
|
||||||
|
cmd="btop"
|
||||||
|
term="foot"
|
||||||
|
|
||||||
|
grim "/tmp/swaylock.png"
|
||||||
|
convert "/tmp/swaylock.png" -filter Gaussian -blur 0x8 "/tmp/swaylock-blur.png"
|
||||||
|
|
||||||
|
rm "/tmp/swaylock.png"
|
||||||
|
|
||||||
|
workspace="$(swaymsg -t get_workspaces -p | grep -oP '(?<=Workspace\s).*?(?=\s\(focused\))')"
|
||||||
|
swaymsg workspace "screensaver"
|
||||||
|
swaymsg exec $term $cmd
|
||||||
|
|
||||||
|
sleep 0.5
|
||||||
|
|
||||||
|
swaymsg fullscreen
|
||||||
|
|
||||||
|
swayidle -w timeout 1 "" resume "pkill -n 'swayidle'"
|
||||||
|
|
||||||
|
swaylock -f -i "/tmp/swaylock-blur.png"
|
||||||
|
|
||||||
|
pkill -n -f "$term $cmd" &
|
||||||
|
#pkill -n -f "byobu" &
|
||||||
|
swaymsg workspace $workspace &
|
||||||
|
rm "/tmp/swaylock-blur.png" &
|
||||||
@@ -0,0 +1,181 @@
|
|||||||
|
# -*- conf -*-
|
||||||
|
|
||||||
|
# shell=$SHELL (if set, otherwise user's default shell from /etc/passwd)
|
||||||
|
# term=foot (or xterm-256color if built with -Dterminfo=disabled)
|
||||||
|
# login-shell=no
|
||||||
|
|
||||||
|
# app-id=foot
|
||||||
|
# title=foot
|
||||||
|
# locked-title=no
|
||||||
|
|
||||||
|
#font=Terminus:style=Bold:size=8
|
||||||
|
|
||||||
|
# font=monospace:size=8
|
||||||
|
# font-bold=<bold variant of regular font>
|
||||||
|
# font-italic=<italic variant of regular font>
|
||||||
|
# font-bold-italic=<bold+italic variant of regular font>
|
||||||
|
# line-height=<font metrics>
|
||||||
|
# letter-spacing=0
|
||||||
|
# horizontal-letter-offset=0
|
||||||
|
# vertical-letter-offset=0
|
||||||
|
# underline-offset=<font metrics>
|
||||||
|
# box-drawings-uses-font-glyphs=no
|
||||||
|
# dpi-aware=yes
|
||||||
|
|
||||||
|
# initial-window-size-pixels=700x500 # Or,
|
||||||
|
# initial-window-size-chars=<COLSxROWS>
|
||||||
|
# initial-window-mode=windowed
|
||||||
|
pad=5x5 # optionally append 'center'
|
||||||
|
# resize-delay-ms=100
|
||||||
|
|
||||||
|
# notify=notify-send -a ${app-id} -i ${app-id} ${title} ${body}
|
||||||
|
|
||||||
|
# bold-text-in-bright=no
|
||||||
|
# bell=none
|
||||||
|
# word-delimiters=,│`|:"'()[]{}<>
|
||||||
|
# selection-target=primary
|
||||||
|
# workers=<number of logical CPUs>
|
||||||
|
|
||||||
|
[bell]
|
||||||
|
# urgent=no
|
||||||
|
# notify=no
|
||||||
|
# command=
|
||||||
|
# command-focused=no
|
||||||
|
|
||||||
|
[scrollback]
|
||||||
|
# lines=1000
|
||||||
|
# multiplier=3.0
|
||||||
|
# indicator-position=relative
|
||||||
|
# indicator-format=
|
||||||
|
|
||||||
|
[url]
|
||||||
|
# launch=xdg-open ${url}
|
||||||
|
# label-letters=sadfjklewcmpgh
|
||||||
|
# osc8-underline=url-mode
|
||||||
|
# protocols=http, https, ftp, ftps, file, gemini, gopher
|
||||||
|
# uri-characters=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.,~:;/?#@!$&%*+="'
|
||||||
|
|
||||||
|
[cursor]
|
||||||
|
# style=block
|
||||||
|
# color=111111 dcdccc
|
||||||
|
# blink=no
|
||||||
|
# beam-thickness=1.5
|
||||||
|
# underline-thickness=<font underline thickness>
|
||||||
|
|
||||||
|
[mouse]
|
||||||
|
# hide-when-typing=no
|
||||||
|
# alternate-scroll-mode=yes
|
||||||
|
|
||||||
|
[colors]
|
||||||
|
alpha=0.85
|
||||||
|
#foreground=dcdccc
|
||||||
|
#background=222222
|
||||||
|
|
||||||
|
## Normal/regular colors (color palette 0-7)
|
||||||
|
regular0=555555 # black
|
||||||
|
regular1=cc9393 # red
|
||||||
|
regular2=7f9f7f # green
|
||||||
|
regular3=d0bf8f # yellow
|
||||||
|
regular4=6ca0a3 # blue
|
||||||
|
regular5=dc8cc3 # magenta
|
||||||
|
regular6=93e0e3 # cyan
|
||||||
|
regular7=dcdccc # white
|
||||||
|
|
||||||
|
## Bright colors (color palette 8-15)
|
||||||
|
bright0=666666 # bright black
|
||||||
|
bright1=dca3a3 # bright red
|
||||||
|
bright2=bfebbf # bright green
|
||||||
|
bright3=f0dfaf # bright yellow
|
||||||
|
bright4=8cd0d3 # bright blue
|
||||||
|
bright5=fcace3 # bright magenta
|
||||||
|
bright6=b3ffff # bright cyan
|
||||||
|
bright7=ffffff # bright white
|
||||||
|
|
||||||
|
## dimmed colors (see foot.ini(5) man page)
|
||||||
|
# dim0=<not set>
|
||||||
|
# ...
|
||||||
|
# dim7=<not-set>
|
||||||
|
|
||||||
|
## The remaining 256-color palette
|
||||||
|
# 16 = <256-color palette #16>
|
||||||
|
# ...
|
||||||
|
# 255 = <256-color palette #255>
|
||||||
|
|
||||||
|
## Misc colors
|
||||||
|
# selection-foreground=<inverse foreground/background>
|
||||||
|
# selection-background=<inverse foreground/background>
|
||||||
|
# jump-labels=<regular0> <regular3>
|
||||||
|
# urls=<regular3>
|
||||||
|
# scrollback-indicator=<regular0> <bright4>
|
||||||
|
|
||||||
|
[csd]
|
||||||
|
# preferred=server
|
||||||
|
# size=26
|
||||||
|
# font=<primary font>
|
||||||
|
# color=<foreground color>
|
||||||
|
# border-width=0
|
||||||
|
# border-color=<csd.color>
|
||||||
|
# button-width=26
|
||||||
|
# button-color=<background color>
|
||||||
|
# button-minimize-color=<regular4>
|
||||||
|
# button-maximize-color=<regular2>
|
||||||
|
# button-close-color=<regular1>
|
||||||
|
|
||||||
|
[key-bindings]
|
||||||
|
# scrollback-up-page=Shift+Page_Up
|
||||||
|
# scrollback-up-half-page=none
|
||||||
|
# scrollback-up-line=none
|
||||||
|
# scrollback-down-page=Shift+Page_Down
|
||||||
|
# scrollback-down-half-page=none
|
||||||
|
# scrollback-down-line=none
|
||||||
|
# clipboard-copy=Control+Shift+c
|
||||||
|
# clipboard-paste=Control+Shift+v
|
||||||
|
# primary-paste=Shift+Insert
|
||||||
|
# search-start=Control+Shift+r
|
||||||
|
# font-increase=Control+plus Control+equal Control+KP_Add
|
||||||
|
# font-decrease=Control+minus Control+KP_Subtract
|
||||||
|
# font-reset=Control+0 Control+KP_0
|
||||||
|
# spawn-terminal=Control+Shift+n
|
||||||
|
# minimize=none
|
||||||
|
# maximize=none
|
||||||
|
# fullscreen=none
|
||||||
|
# pipe-visible=[sh -c "xurls | fuzzel | xargs -r firefox"] none
|
||||||
|
# pipe-scrollback=[sh -c "xurls | fuzzel | xargs -r firefox"] none
|
||||||
|
# pipe-selected=[xargs -r firefox] none
|
||||||
|
# show-urls-launch=Control+Shift+u
|
||||||
|
# show-urls-copy=none
|
||||||
|
# noop=none
|
||||||
|
|
||||||
|
[search-bindings]
|
||||||
|
# cancel=Control+g Control+c Escape
|
||||||
|
# commit=Return
|
||||||
|
# find-prev=Control+r
|
||||||
|
# find-next=Control+s
|
||||||
|
# cursor-left=Left Control+b
|
||||||
|
# cursor-left-word=Control+Left Mod1+b
|
||||||
|
# cursor-right=Right Control+f
|
||||||
|
# cursor-right-word=Control+Right Mod1+f
|
||||||
|
# cursor-home=Home Control+a
|
||||||
|
# cursor-end=End Control+e
|
||||||
|
# delete-prev=BackSpace
|
||||||
|
# delete-prev-word=Mod1+BackSpace Control+BackSpace
|
||||||
|
# delete-next=Delete
|
||||||
|
# delete-next-word=Mod1+d Control+Delete
|
||||||
|
# extend-to-word-boundary=Control+w
|
||||||
|
# extend-to-next-whitespace=Control+Shift+w
|
||||||
|
# clipboard-paste=Control+v Control+y
|
||||||
|
# primary-paste=Shift+Insert
|
||||||
|
|
||||||
|
[url-bindings]
|
||||||
|
# cancel=Control+g Control+c Control+d Escape
|
||||||
|
# toggle-url-visible=t
|
||||||
|
|
||||||
|
[mouse-bindings]
|
||||||
|
# primary-paste=BTN_MIDDLE
|
||||||
|
# select-begin=BTN_LEFT
|
||||||
|
# select-begin-block=Control+BTN_LEFT
|
||||||
|
# select-extend=BTN_RIGHT
|
||||||
|
# select-extend-character-wise=Control+BTN_RIGHT
|
||||||
|
# select-word=BTN_LEFT-2
|
||||||
|
# select-word-whitespace=Control+BTN_LEFT-2
|
||||||
|
# select-row=BTN_LEFT-3
|
||||||
@@ -0,0 +1,181 @@
|
|||||||
|
# -*- conf -*-
|
||||||
|
|
||||||
|
# shell=$SHELL (if set, otherwise user's default shell from /etc/passwd)
|
||||||
|
# term=foot (or xterm-256color if built with -Dterminfo=disabled)
|
||||||
|
# login-shell=no
|
||||||
|
|
||||||
|
# app-id=foot
|
||||||
|
# title=foot
|
||||||
|
# locked-title=no
|
||||||
|
|
||||||
|
font=UbuntuMonoNerdFont:size=8
|
||||||
|
|
||||||
|
# font=monospace:size=8
|
||||||
|
# font-bold=<bold variant of regular font>
|
||||||
|
# font-italic=<italic variant of regular font>
|
||||||
|
# font-bold-italic=<bold+italic variant of regular font>
|
||||||
|
# line-height=<font metrics>
|
||||||
|
# letter-spacing=0
|
||||||
|
# horizontal-letter-offset=0
|
||||||
|
# vertical-letter-offset=0
|
||||||
|
# underline-offset=<font metrics>
|
||||||
|
# box-drawings-uses-font-glyphs=no
|
||||||
|
# dpi-aware=yes
|
||||||
|
|
||||||
|
# initial-window-size-pixels=700x500 # Or,
|
||||||
|
# initial-window-size-chars=<COLSxROWS>
|
||||||
|
# initial-window-mode=windowed
|
||||||
|
pad=5x5 # optionally append 'center'
|
||||||
|
# resize-delay-ms=100
|
||||||
|
|
||||||
|
# notify=notify-send -a ${app-id} -i ${app-id} ${title} ${body}
|
||||||
|
|
||||||
|
# bold-text-in-bright=no
|
||||||
|
# bell=none
|
||||||
|
# word-delimiters=,│`|:"'()[]{}<>
|
||||||
|
# selection-target=primary
|
||||||
|
# workers=<number of logical CPUs>
|
||||||
|
|
||||||
|
[bell]
|
||||||
|
# urgent=no
|
||||||
|
# notify=no
|
||||||
|
# command=
|
||||||
|
# command-focused=no
|
||||||
|
|
||||||
|
[scrollback]
|
||||||
|
# lines=1000
|
||||||
|
# multiplier=3.0
|
||||||
|
# indicator-position=relative
|
||||||
|
# indicator-format=
|
||||||
|
|
||||||
|
[url]
|
||||||
|
# launch=xdg-open ${url}
|
||||||
|
# label-letters=sadfjklewcmpgh
|
||||||
|
# osc8-underline=url-mode
|
||||||
|
# protocols=http, https, ftp, ftps, file, gemini, gopher
|
||||||
|
# uri-characters=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.,~:;/?#@!$&%*+="'
|
||||||
|
|
||||||
|
[cursor]
|
||||||
|
# style=block
|
||||||
|
# color=111111 dcdccc
|
||||||
|
# blink=no
|
||||||
|
# beam-thickness=1.5
|
||||||
|
# underline-thickness=<font underline thickness>
|
||||||
|
|
||||||
|
[mouse]
|
||||||
|
# hide-when-typing=no
|
||||||
|
# alternate-scroll-mode=yes
|
||||||
|
|
||||||
|
[colors]
|
||||||
|
alpha=0.85
|
||||||
|
#foreground=dcdccc
|
||||||
|
#background=222222
|
||||||
|
|
||||||
|
## Normal/regular colors (color palette 0-7)
|
||||||
|
regular0=555555 # black
|
||||||
|
regular1=cc9393 # red
|
||||||
|
regular2=7f9f7f # green
|
||||||
|
regular3=d0bf8f # yellow
|
||||||
|
regular4=6ca0a3 # blue
|
||||||
|
regular5=dc8cc3 # magenta
|
||||||
|
regular6=93e0e3 # cyan
|
||||||
|
regular7=dcdccc # white
|
||||||
|
|
||||||
|
## Bright colors (color palette 8-15)
|
||||||
|
bright0=666666 # bright black
|
||||||
|
bright1=dca3a3 # bright red
|
||||||
|
bright2=bfebbf # bright green
|
||||||
|
bright3=f0dfaf # bright yellow
|
||||||
|
bright4=8cd0d3 # bright blue
|
||||||
|
bright5=fcace3 # bright magenta
|
||||||
|
bright6=b3ffff # bright cyan
|
||||||
|
bright7=ffffff # bright white
|
||||||
|
|
||||||
|
## dimmed colors (see foot.ini(5) man page)
|
||||||
|
# dim0=<not set>
|
||||||
|
# ...
|
||||||
|
# dim7=<not-set>
|
||||||
|
|
||||||
|
## The remaining 256-color palette
|
||||||
|
# 16 = <256-color palette #16>
|
||||||
|
# ...
|
||||||
|
# 255 = <256-color palette #255>
|
||||||
|
|
||||||
|
## Misc colors
|
||||||
|
# selection-foreground=<inverse foreground/background>
|
||||||
|
# selection-background=<inverse foreground/background>
|
||||||
|
# jump-labels=<regular0> <regular3>
|
||||||
|
# urls=<regular3>
|
||||||
|
# scrollback-indicator=<regular0> <bright4>
|
||||||
|
|
||||||
|
[csd]
|
||||||
|
# preferred=server
|
||||||
|
# size=26
|
||||||
|
# font=<primary font>
|
||||||
|
# color=<foreground color>
|
||||||
|
# border-width=0
|
||||||
|
# border-color=<csd.color>
|
||||||
|
# button-width=26
|
||||||
|
# button-color=<background color>
|
||||||
|
# button-minimize-color=<regular4>
|
||||||
|
# button-maximize-color=<regular2>
|
||||||
|
# button-close-color=<regular1>
|
||||||
|
|
||||||
|
[key-bindings]
|
||||||
|
# scrollback-up-page=Shift+Page_Up
|
||||||
|
# scrollback-up-half-page=none
|
||||||
|
# scrollback-up-line=none
|
||||||
|
# scrollback-down-page=Shift+Page_Down
|
||||||
|
# scrollback-down-half-page=none
|
||||||
|
# scrollback-down-line=none
|
||||||
|
# clipboard-copy=Control+Shift+c
|
||||||
|
# clipboard-paste=Control+Shift+v
|
||||||
|
# primary-paste=Shift+Insert
|
||||||
|
# search-start=Control+Shift+r
|
||||||
|
# font-increase=Control+plus Control+equal Control+KP_Add
|
||||||
|
# font-decrease=Control+minus Control+KP_Subtract
|
||||||
|
# font-reset=Control+0 Control+KP_0
|
||||||
|
# spawn-terminal=Control+Shift+n
|
||||||
|
# minimize=none
|
||||||
|
# maximize=none
|
||||||
|
# fullscreen=none
|
||||||
|
# pipe-visible=[sh -c "xurls | fuzzel | xargs -r firefox"] none
|
||||||
|
# pipe-scrollback=[sh -c "xurls | fuzzel | xargs -r firefox"] none
|
||||||
|
# pipe-selected=[xargs -r firefox] none
|
||||||
|
# show-urls-launch=Control+Shift+u
|
||||||
|
# show-urls-copy=none
|
||||||
|
# noop=none
|
||||||
|
|
||||||
|
[search-bindings]
|
||||||
|
# cancel=Control+g Control+c Escape
|
||||||
|
# commit=Return
|
||||||
|
# find-prev=Control+r
|
||||||
|
# find-next=Control+s
|
||||||
|
# cursor-left=Left Control+b
|
||||||
|
# cursor-left-word=Control+Left Mod1+b
|
||||||
|
# cursor-right=Right Control+f
|
||||||
|
# cursor-right-word=Control+Right Mod1+f
|
||||||
|
# cursor-home=Home Control+a
|
||||||
|
# cursor-end=End Control+e
|
||||||
|
# delete-prev=BackSpace
|
||||||
|
# delete-prev-word=Mod1+BackSpace Control+BackSpace
|
||||||
|
# delete-next=Delete
|
||||||
|
# delete-next-word=Mod1+d Control+Delete
|
||||||
|
# extend-to-word-boundary=Control+w
|
||||||
|
# extend-to-next-whitespace=Control+Shift+w
|
||||||
|
# clipboard-paste=Control+v Control+y
|
||||||
|
# primary-paste=Shift+Insert
|
||||||
|
|
||||||
|
[url-bindings]
|
||||||
|
# cancel=Control+g Control+c Control+d Escape
|
||||||
|
# toggle-url-visible=t
|
||||||
|
|
||||||
|
[mouse-bindings]
|
||||||
|
# primary-paste=BTN_MIDDLE
|
||||||
|
# select-begin=BTN_LEFT
|
||||||
|
# select-begin-block=Control+BTN_LEFT
|
||||||
|
# select-extend=BTN_RIGHT
|
||||||
|
# select-extend-character-wise=Control+BTN_RIGHT
|
||||||
|
# select-word=BTN_LEFT-2
|
||||||
|
# select-word-whitespace=Control+BTN_LEFT-2
|
||||||
|
# select-row=BTN_LEFT-3
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
foot terminal configuration
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
foot terminal configuration
|
||||||
@@ -0,0 +1,231 @@
|
|||||||
|
set $mod Mod4
|
||||||
|
set $left h
|
||||||
|
set $down j
|
||||||
|
set $up k
|
||||||
|
set $right l
|
||||||
|
set $term foot
|
||||||
|
|
||||||
|
set $fb thunar
|
||||||
|
set $wb firefox
|
||||||
|
|
||||||
|
#xwayland enable
|
||||||
|
|
||||||
|
#set $menu dmenu_path | dmenu | xargs swaymsg exec --
|
||||||
|
|
||||||
|
include /etc/sway/config-vars.d/*
|
||||||
|
|
||||||
|
#exec_always python3 ~/.config/sway/neofetch.py
|
||||||
|
#exec waybar
|
||||||
|
|
||||||
|
set $configdir /home/astatin3/.config/sway/
|
||||||
|
|
||||||
|
|
||||||
|
exec_always pkill -f swaybg
|
||||||
|
exec_always python3 ~/.config/sway/neofetch.py
|
||||||
|
exec_always dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK &
|
||||||
|
exec_always pkill -f waybar
|
||||||
|
exec_always waybar
|
||||||
|
|
||||||
|
exec swayidle -w \
|
||||||
|
timeout 300 "/bin/bash $configdir/lock.sh ss" \
|
||||||
|
before-sleep "/bin/bash $configdir/lock.sh lock"
|
||||||
|
|
||||||
|
for_window [app_id="^launcher$"] floating enable, sticky enable, resize set 30 ppt 60 ppt, border pixel none
|
||||||
|
set $menu exec $term -a launcher -e env ~/.config/sway/sway-launcher-desktop.sh
|
||||||
|
|
||||||
|
for_window [title="Picture-in-Picture"] floating enable, sticky enable
|
||||||
|
for_window [title="Application Finder"] floating enable, sticky enable, resize set 30 ppt 60 ppt, border pixel none
|
||||||
|
set $menug exec xfce4-appfinder
|
||||||
|
|
||||||
|
bindsym Print exec 'date="$(date '+%T')" && grim /tmp/$date.png && swaynag -m "Took screenshot, saved at $date"'
|
||||||
|
|
||||||
|
for_window [title="xfce4-notifyd"] floating enable, sticky enable, move position 0 0
|
||||||
|
|
||||||
|
#default_floating_border csd
|
||||||
|
default_border normal pixel 2
|
||||||
|
#gaps outer 5
|
||||||
|
|
||||||
|
focus_follows_mouse always
|
||||||
|
|
||||||
|
client.focused #373e48aa #1C1F24FF #D0D0D0FF #373e48aa #373e48aa
|
||||||
|
client.unfocused #1C1F2400 #1C1F24FF #D0D0D0FF #1C1F2400 #1C1F2400
|
||||||
|
client.focused_inactive #373e48aa #1C1F24FF #D0D0D0FF #373e48aa #373e48aa
|
||||||
|
floating_maximum_size 1920 x 1080
|
||||||
|
|
||||||
|
#exec_always ~/.config/sway/startapps.sh
|
||||||
|
|
||||||
|
# Start a terminal
|
||||||
|
bindsym $mod+Return exec $term
|
||||||
|
|
||||||
|
# Kill focused window
|
||||||
|
bindsym $mod+Shift+q kill
|
||||||
|
|
||||||
|
# Keybind to launch file browser
|
||||||
|
bindsym $mod+Shift+s exec $fb ~
|
||||||
|
|
||||||
|
# Keybind to launch web browser
|
||||||
|
bindsym $mod+Shift+a exec $wb ~
|
||||||
|
|
||||||
|
# Start your launcher
|
||||||
|
bindsym $mod+d exec $menu
|
||||||
|
bindsym $mod+Shift+d exec $menug
|
||||||
|
|
||||||
|
bindsym $mod+l exec "/bin/bash $configdir/lock.sh lock"
|
||||||
|
bindsym $mod+Shift+l exec "/bin/bash $configdir/lock.sh ss"
|
||||||
|
|
||||||
|
|
||||||
|
# Drag floating windows by holding down $mod and left mouse button.
|
||||||
|
# Resize them with right mouse button + $mod.
|
||||||
|
# Despite the name, also works for non-floating windows.
|
||||||
|
# Change normal to inverse to use left mouse button for resizing and right
|
||||||
|
# mouse button for dragging.
|
||||||
|
floating_modifier $mod normal
|
||||||
|
|
||||||
|
# Reload the configuration file
|
||||||
|
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'
|
||||||
|
#
|
||||||
|
# Moving around:
|
||||||
|
#
|
||||||
|
# Move your focus around
|
||||||
|
bindsym $mod+$left focus left
|
||||||
|
bindsym $mod+$down focus down
|
||||||
|
bindsym $mod+$up focus up
|
||||||
|
#bindsym $mod+$right focus right
|
||||||
|
## Or use $mod+[up|down|left|right]
|
||||||
|
bindsym $mod+Left focus left
|
||||||
|
bindsym $mod+Down focus down
|
||||||
|
bindsym $mod+Up focus up
|
||||||
|
bindsym $mod+Right focus right
|
||||||
|
|
||||||
|
# Move the focused window with the same, but add Shift
|
||||||
|
#bindsym $mod+Shift+$left move left
|
||||||
|
#bindsym $mod+Shift+$down move down
|
||||||
|
#bindsym $mod+Shift+$up move up
|
||||||
|
#bindsym $mod+Shift+$right move right
|
||||||
|
# Ditto, with arrow keys
|
||||||
|
bindsym $mod+Shift+Left move left
|
||||||
|
bindsym $mod+Shift+Down move down
|
||||||
|
bindsym $mod+Shift+Up move up
|
||||||
|
bindsym $mod+Shift+Right move right
|
||||||
|
#
|
||||||
|
# Workspaces:
|
||||||
|
#
|
||||||
|
# Switch to workspace
|
||||||
|
bindsym $mod+1 workspace number 1
|
||||||
|
bindsym $mod+2 workspace number 2
|
||||||
|
bindsym $mod+3 workspace number 3
|
||||||
|
bindsym $mod+4 workspace number 4
|
||||||
|
bindsym $mod+5 workspace number 5
|
||||||
|
bindsym $mod+6 workspace number 6
|
||||||
|
bindsym $mod+7 workspace number 7
|
||||||
|
bindsym $mod+8 workspace number 8
|
||||||
|
bindsym $mod+9 workspace number 9
|
||||||
|
bindsym $mod+0 workspace number 10
|
||||||
|
|
||||||
|
# Switch to workspace(with numpad)
|
||||||
|
bindsym $mod+KP_End workspace number 1
|
||||||
|
bindsym $mod+KP_Down workspace number 2
|
||||||
|
bindsym $mod+KP_Next workspace number 3
|
||||||
|
bindsym $mod+KP_Left workspace number 4
|
||||||
|
bindsym $mod+KP_Begin workspace number 5
|
||||||
|
bindsym $mod+KP_Right workspace number 6
|
||||||
|
bindsym $mod+KP_Home workspace number 7
|
||||||
|
bindsym $mod+KP_Up workspace number 8
|
||||||
|
bindsym $mod+KP_Prior workspace number 9
|
||||||
|
bindsym $mod+KP_Insert workspace number 10
|
||||||
|
|
||||||
|
# Move focused container to workspace
|
||||||
|
bindsym $mod+Shift+1 move container to workspace number 1
|
||||||
|
bindsym $mod+Shift+2 move container to workspace number 2
|
||||||
|
bindsym $mod+Shift+3 move container to workspace number 3
|
||||||
|
bindsym $mod+Shift+4 move container to workspace number 4
|
||||||
|
bindsym $mod+Shift+5 move container to workspace number 5
|
||||||
|
bindsym $mod+Shift+6 move container to workspace number 6
|
||||||
|
bindsym $mod+Shift+7 move container to workspace number 7
|
||||||
|
bindsym $mod+Shift+8 move container to workspace number 8
|
||||||
|
bindsym $mod+Shift+9 move container to workspace number 9
|
||||||
|
bindsym $mod+Shift+0 move container to workspace number 10
|
||||||
|
|
||||||
|
# move focused container to workspace (with numpad)
|
||||||
|
bindsym $mod+Shift+KP_End move container to workspace 1
|
||||||
|
bindsym $mod+Shift+KP_Down move container to workspace 2
|
||||||
|
bindsym $mod+Shift+KP_Next move container to workspace 3
|
||||||
|
bindsym $mod+Shift+KP_Left move container to workspace 4
|
||||||
|
bindsym $mod+Shift+KP_Begin move container to workspace 5
|
||||||
|
bindsym $mod+Shift+KP_Right move container to workspace 6
|
||||||
|
bindsym $mod+Shift+KP_Home move container to workspace 7
|
||||||
|
bindsym $mod+Shift+KP_Up move container to workspace 8
|
||||||
|
bindsym $mod+Shift+KP_Prior move container to workspace 9
|
||||||
|
bindsym $mod+Shift+KP_Insert move container to workspace 10
|
||||||
|
|
||||||
|
# Note: workspaces can have any name you want, not just numbers.
|
||||||
|
# We just use 1-10 as the default.
|
||||||
|
#
|
||||||
|
# Layout stuff:
|
||||||
|
#
|
||||||
|
# You can "split" the current object of your focus with
|
||||||
|
# $mod+b or $mod+v, for horizontal and vertical splits
|
||||||
|
# respectively.
|
||||||
|
bindsym $mod+b splith
|
||||||
|
bindsym $mod+v splitv
|
||||||
|
|
||||||
|
# Switch the current container between different layout styles
|
||||||
|
bindsym $mod+s layout stacking
|
||||||
|
bindsym $mod+w layout tabbed
|
||||||
|
bindsym $mod+e layout toggle split
|
||||||
|
|
||||||
|
# Make the current focus fullscreen
|
||||||
|
bindsym $mod+f fullscreen
|
||||||
|
|
||||||
|
# Toggle the current focus between tiling and floating mode
|
||||||
|
bindsym $mod+Shift+space floating toggle
|
||||||
|
|
||||||
|
# Swap focus between the tiling area and the floating area
|
||||||
|
bindsym $mod+space focus mode_toggle
|
||||||
|
|
||||||
|
# Move focus to the parent container
|
||||||
|
bindsym $mod+a focus parent
|
||||||
|
#
|
||||||
|
# Scratchpad:
|
||||||
|
#
|
||||||
|
# Sway has a "scratchpad", which is a bag of holding for windows.
|
||||||
|
# You can send windows there and get them back later.
|
||||||
|
|
||||||
|
# Move the currently focused window to the scratchpad
|
||||||
|
bindsym $mod+Shift+minus move scratchpad
|
||||||
|
|
||||||
|
# Show the next scratchpad window or hide the focused scratchpad window.
|
||||||
|
# If there are multiple scratchpad windows, this command cycles through them.
|
||||||
|
bindsym $mod+minus scratchpad show
|
||||||
|
#
|
||||||
|
# Resizing containers:
|
||||||
|
#
|
||||||
|
mode "resize" {
|
||||||
|
# left will shrink the containers width
|
||||||
|
# right will grow the containers width
|
||||||
|
# up will shrink the containers height
|
||||||
|
# down will grow the containers height
|
||||||
|
bindsym $left resize shrink width 10px
|
||||||
|
bindsym $down resize grow height 10px
|
||||||
|
bindsym $up resize shrink height 10px
|
||||||
|
bindsym $right resize grow width 10px
|
||||||
|
|
||||||
|
# Ditto, with arrow keys
|
||||||
|
bindsym Left resize shrink width 10px
|
||||||
|
bindsym Down resize grow height 10px
|
||||||
|
bindsym Up resize shrink height 10px
|
||||||
|
bindsym Right resize grow width 10px
|
||||||
|
|
||||||
|
# Return to default mode
|
||||||
|
bindsym Return mode "default"
|
||||||
|
bindsym Escape mode "default"
|
||||||
|
}
|
||||||
|
bindsym $mod+r mode "resize"
|
||||||
|
|
||||||
|
include /etc/sway/config.d/*
|
||||||
|
|
||||||
|
bindsym XF86MonBrightnessUp exec brightnessctl s +5%
|
||||||
|
bindsym XF86MonBrightnessDown exec brightnessctl s 5%-
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
# import variables into system-user enviroment
|
||||||
|
# based on the instructions in the sway wiki
|
||||||
|
# see also https://github.com/swaywm/sway/issues/5732
|
||||||
|
# and https://github.com/systemd/systemd/blob/dfc637d0ff756889e8e5b7cb4ec991eb06069aa1/xorg/50-systemd-user.sh
|
||||||
|
|
||||||
|
exec systemctl --user import-environment DISPLAY WAYLAND_DISPLAY SWAYSOCK
|
||||||
|
|
||||||
|
exec hash dbus-update-activation-environment 2>/dev/null && \
|
||||||
|
dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK
|
||||||
|
After Width: | Height: | Size: 14 KiB |
@@ -0,0 +1,17 @@
|
|||||||
|
_,met$$$$$gg.
|
||||||
|
,g$$$$$$$$$$$$$$$P.
|
||||||
|
,g$$P" """Y$$.".
|
||||||
|
,$$P' `$$$.
|
||||||
|
',$$P ,ggs. `$$b:
|
||||||
|
`d$$' ,$P"' . $$$
|
||||||
|
$$P d$' , $$P
|
||||||
|
$$: $$. - ,d$$'
|
||||||
|
$$; Y$b._ _,d$P'
|
||||||
|
Y$$. `.`"Y$$$$P"'
|
||||||
|
`$$b "-.__
|
||||||
|
`Y$$
|
||||||
|
`Y$$.
|
||||||
|
`$$b.
|
||||||
|
`Y$$b.
|
||||||
|
`"Y$b._
|
||||||
|
`"""
|
||||||
@@ -0,0 +1,55 @@
|
|||||||
|
screenshotloc=/tmp/screensaver.png
|
||||||
|
sscommand="btop"
|
||||||
|
terminal="foot"
|
||||||
|
|
||||||
|
lockscreensaverdelay=30
|
||||||
|
termopendelay=0.2
|
||||||
|
|
||||||
|
curworkspace=$(swaymsg -pt get_workspaces | grep -o -P '(?<=Workspace\s).*(?=\s\(focused\))')
|
||||||
|
brightness=$(brightnessctl g)
|
||||||
|
|
||||||
|
function start {
|
||||||
|
#Create screenshot and blur
|
||||||
|
grim $screenshotloc
|
||||||
|
convert $screenshotloc -filter Gaussian -blur 0x8 $screenshotloc
|
||||||
|
|
||||||
|
#Open screensaver program for quick-change
|
||||||
|
swaymsg workspace "screensaver"
|
||||||
|
sleep 0.1
|
||||||
|
swaymsg exec $terminal $sscommand &
|
||||||
|
sleep "$termopendelay"
|
||||||
|
swaymsg fullscreen toggle
|
||||||
|
}
|
||||||
|
|
||||||
|
function stop {
|
||||||
|
swaymsg workspace $curworkspace
|
||||||
|
pkill -fn $sscommand
|
||||||
|
rm $screenshotloc
|
||||||
|
}
|
||||||
|
|
||||||
|
function doscreensaver {
|
||||||
|
swayidle timeout 1 "" resume "pkill -n swayidle"
|
||||||
|
dolock
|
||||||
|
}
|
||||||
|
|
||||||
|
function dolock {
|
||||||
|
pkill swaylock
|
||||||
|
swaymsg exec "swaylock -i $screenshotloc && pkill -n swayidle" &
|
||||||
|
swayidle timeout "$lockscreensaverdelay" "pkill -n swayidle"
|
||||||
|
if [[ "$(pidof 'swaylock')" != "" ]]; then
|
||||||
|
pkill swaylock
|
||||||
|
doscreensaver
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
if [[ $1 == "lock" ]]; then
|
||||||
|
start
|
||||||
|
dolock
|
||||||
|
stop
|
||||||
|
elif [[ $1 == "ss" ]]; then
|
||||||
|
start
|
||||||
|
doscreensaver
|
||||||
|
stop
|
||||||
|
else
|
||||||
|
echo "invalid command, try 'ss' or 'lock'"
|
||||||
|
fi
|
||||||
@@ -0,0 +1,62 @@
|
|||||||
|
import subprocess
|
||||||
|
import datetime
|
||||||
|
import os
|
||||||
|
|
||||||
|
from PIL import Image
|
||||||
|
from PIL import ImageFont
|
||||||
|
from PIL import ImageDraw
|
||||||
|
|
||||||
|
try:
|
||||||
|
os.ulink("/tmp/wallpaper.png")
|
||||||
|
except:
|
||||||
|
x = None # Do nothing
|
||||||
|
|
||||||
|
#file = open("/home/astatin3/.config/sway/icon.txt","r")
|
||||||
|
#lines = file.readlines()
|
||||||
|
#file.close()
|
||||||
|
|
||||||
|
output = (subprocess.run(['neofetch', '--stdout'], capture_output=True, text=True).stdout).split("\n")
|
||||||
|
|
||||||
|
screenX = 0
|
||||||
|
screenY = 0
|
||||||
|
|
||||||
|
for i in range(0, len(output)-2, 1):
|
||||||
|
#lines[i] = lines[i][:-1] + output[i]
|
||||||
|
|
||||||
|
#print(lines[i])
|
||||||
|
|
||||||
|
if i == 0:
|
||||||
|
output[0] += f"at ({datetime.datetime.now().strftime('%m-%d %H:%M:%S')})"
|
||||||
|
|
||||||
|
if i == 8:
|
||||||
|
res = output[i].split(" ")[1].split("x")
|
||||||
|
screenX = int(res[0])
|
||||||
|
screenY = int(res[1])
|
||||||
|
|
||||||
|
#neofetch = "\n".join(lines)
|
||||||
|
|
||||||
|
icon = Image.open("/home/astatin3/.config/sway/icon.png")
|
||||||
|
iconsizeX, iconsizeY = icon.size
|
||||||
|
|
||||||
|
neofetch = "\n".join(output)
|
||||||
|
|
||||||
|
textSize = 0.01
|
||||||
|
|
||||||
|
iconscale = 0.0005
|
||||||
|
|
||||||
|
textoffsetX = 0.0 #Percentages
|
||||||
|
textoffsetY = -0.16
|
||||||
|
|
||||||
|
iconoffsetX = -0.145
|
||||||
|
iconoffsetY = -0.16
|
||||||
|
|
||||||
|
img = Image.new('RGB', (screenX, screenY), (31, 26, 32))
|
||||||
|
draw = ImageDraw.Draw(img)
|
||||||
|
font = ImageFont.truetype("/home/astatin3/.config/sway/UbuntuMonoNerdFontMono-Regular.ttf", textSize*screenX)
|
||||||
|
draw.text((textoffsetX*screenX+screenX/2, textoffsetY*screenY+screenY/2),neofetch,(199,0,57),font=font)
|
||||||
|
icon = icon.resize((round(iconscale*iconsizeX*screenY), round(iconscale*iconsizeY*screenY)), Image.Resampling.LANCZOS)
|
||||||
|
img.paste(icon, (round(iconoffsetX*screenX+screenX/2), round(iconoffsetY*screenY+screenY/2)))
|
||||||
|
img.save("/tmp/wallpaper.png")
|
||||||
|
#img.show()
|
||||||
|
|
||||||
|
subprocess.run(["swaybg", "-m", "fill", "-i", "/tmp/wallpaper.png"])
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
if [[ "$(pgrep -f 'lock')" != '' ]]
|
||||||
|
then
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
#cmd[0]="cmatrix"
|
||||||
|
#cmd[1]="hollywood"
|
||||||
|
#cmd[2]="termsaver sysmon"
|
||||||
|
#cmd[3]="termsaver wttr"
|
||||||
|
#cmd=${cmd[$[$RANDOM % ${#cmd[@]}]]}
|
||||||
|
|
||||||
|
cmd="hollywood"
|
||||||
|
term="foot"
|
||||||
|
|
||||||
|
grim "/tmp/swaylock.png"
|
||||||
|
convert "/tmp/swaylock.png" -filter Gaussian -blur 0x8 "/tmp/swaylock-blur.png"
|
||||||
|
|
||||||
|
rm "/tmp/swaylock.png"
|
||||||
|
|
||||||
|
workspace="$(swaymsg -t get_workspaces -p | grep -oP '(?<=Workspace\s).*?(?=\s\(focused\))')"
|
||||||
|
swaymsg workspace "screensaver"
|
||||||
|
swaymsg exec $term $cmd
|
||||||
|
|
||||||
|
sleep 0.5
|
||||||
|
|
||||||
|
swaymsg fullscreen
|
||||||
|
|
||||||
|
swayidle -w timeout 1 "" resume "pkill -n 'swayidle'"
|
||||||
|
|
||||||
|
swaylock -f -i "/tmp/swaylock-blur.png"
|
||||||
|
|
||||||
|
pkill -n -f "$term $cmd" &
|
||||||
|
swaymsg workspace $workspace &
|
||||||
|
rm "/tmp/swaylock-blur.png" &
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK &
|
||||||
|
pkill -f waybar &
|
||||||
|
pkill -f swaybg &
|
||||||
|
python3 ~/.config/sway/neofetch.py &
|
||||||
|
waybar &
|
||||||
@@ -0,0 +1,368 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# terminal application launcher for sway, using fzf
|
||||||
|
# Based on: https://gitlab.com/FlyingWombat/my-scripts/blob/master/sway-launcher
|
||||||
|
# https://gist.github.com/Biont/40ef59652acf3673520c7a03c9f22d2a
|
||||||
|
shopt -s nullglob globstar
|
||||||
|
set -o pipefail
|
||||||
|
if ! { exec 0>&3; } 1>/dev/null 2>&1; then
|
||||||
|
exec 3>/dev/null # If file descriptor 3 is unused in parent shell, output to /dev/null
|
||||||
|
fi
|
||||||
|
# shellcheck disable=SC2154
|
||||||
|
trap 's=$?; echo "$0: Error on line "$LINENO": $BASH_COMMAND"; exit $s' ERR
|
||||||
|
IFS=$'\n\t'
|
||||||
|
DEL=$'\34'
|
||||||
|
|
||||||
|
TERMINAL_COMMAND="${TERMINAL_COMMAND:="$TERMINAL"}"
|
||||||
|
GLYPH_COMMAND="${GLYPH_COMMAND- }"
|
||||||
|
GLYPH_DESKTOP="${GLYPH_DESKTOP- }"
|
||||||
|
CONFIG_DIR="${XDG_CONFIG_HOME:-$HOME/.config}/sway-launcher-desktop"
|
||||||
|
PROVIDERS_FILE="${PROVIDERS_FILE:=providers.conf}"
|
||||||
|
if [[ "${PROVIDERS_FILE#/}" == "${PROVIDERS_FILE}" ]]; then
|
||||||
|
# $PROVIDERS_FILE is a relative path, prepend $CONFIG_DIR
|
||||||
|
PROVIDERS_FILE="${CONFIG_DIR}/${PROVIDERS_FILE}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Provider config entries are separated by the field separator \034 and have the following structure:
|
||||||
|
# list_cmd,preview_cmd,launch_cmd,purge_cmd
|
||||||
|
declare -A PROVIDERS
|
||||||
|
if [ -f "${PROVIDERS_FILE}" ]; then
|
||||||
|
eval "$(awk -F= '
|
||||||
|
BEGINFILE{ provider=""; }
|
||||||
|
/^\[.*\]/{sub("^\\[", "");sub("\\]$", "");provider=$0}
|
||||||
|
/^(launch|list|preview|purge)_cmd/{st = index($0,"=");providers[provider][$1] = substr($0,st+1)}
|
||||||
|
ENDFILE{
|
||||||
|
for (key in providers){
|
||||||
|
if(!("list_cmd" in providers[key])){continue;}
|
||||||
|
if(!("launch_cmd" in providers[key])){continue;}
|
||||||
|
if(!("preview_cmd" in providers[key])){continue;}
|
||||||
|
if(!("purge_cmd" in providers[key])){providers[key]["purge_cmd"] = "exit 0";}
|
||||||
|
for (entry in providers[key]){
|
||||||
|
gsub(/[\x27,\047]/,"\x27\"\x27\"\x27", providers[key][entry])
|
||||||
|
}
|
||||||
|
print "PROVIDERS[\x27" key "\x27]=\x27" providers[key]["list_cmd"] "\034" providers[key]["preview_cmd"] "\034" providers[key]["launch_cmd"] "\034" providers[key]["purge_cmd"] "\x27\n"
|
||||||
|
}
|
||||||
|
}' "${PROVIDERS_FILE}")"
|
||||||
|
if [[ ! -v HIST_FILE ]]; then
|
||||||
|
HIST_FILE="${XDG_CACHE_HOME:-$HOME/.cache}/${0##*/}-${PROVIDERS_FILE##*/}-history.txt"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
PROVIDERS['desktop']="${0} list-entries${DEL}${0} describe-desktop \"{1}\"${DEL}${0} run-desktop '{1}' {2}${DEL}test -f '{1}' || exit 43"
|
||||||
|
PROVIDERS['command']="${0} list-commands${DEL}${0} describe-command \"{1}\"${DEL}${TERMINAL_COMMAND} {1}${DEL}command -v '{1}' || exit 43"
|
||||||
|
if [[ ! -v HIST_FILE ]]; then
|
||||||
|
HIST_FILE="${XDG_CACHE_HOME:-$HOME/.cache}/${0##*/}-history.txt"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
PROVIDERS['user']="exit${DEL}exit${DEL}{1}" # Fallback provider that simply executes the exact command if there were no matches
|
||||||
|
|
||||||
|
if [[ -n "${HIST_FILE}" ]]; then
|
||||||
|
mkdir -p "${HIST_FILE%/*}" && touch "$HIST_FILE"
|
||||||
|
readarray HIST_LINES <"$HIST_FILE"
|
||||||
|
fi
|
||||||
|
|
||||||
|
function describe() {
|
||||||
|
# shellcheck disable=SC2086
|
||||||
|
readarray -d ${DEL} -t PROVIDER_ARGS <<<${PROVIDERS[${1}]}
|
||||||
|
# shellcheck disable=SC2086
|
||||||
|
[ -n "${PROVIDER_ARGS[1]}" ] && eval "${PROVIDER_ARGS[1]//\{1\}/${2}}"
|
||||||
|
}
|
||||||
|
function describe-desktop() {
|
||||||
|
description=$(sed -ne '/^Comment=/{s/^Comment=//;p;q}' "$1")
|
||||||
|
echo -e "\033[33m$(sed -ne '/^Name=/{s/^Name=//;p;q}' "$1")\033[0m"
|
||||||
|
echo "${description:-No description}"
|
||||||
|
}
|
||||||
|
function describe-command() {
|
||||||
|
readarray arr < <(whatis -l "$1" 2>/dev/null)
|
||||||
|
description="${arr[0]}"
|
||||||
|
description="${description#* - }"
|
||||||
|
echo -e "\033[33m${1}\033[0m"
|
||||||
|
echo "${description:-No description}"
|
||||||
|
}
|
||||||
|
|
||||||
|
function provide() {
|
||||||
|
# shellcheck disable=SC2086
|
||||||
|
readarray -d ${DEL} -t PROVIDER_ARGS <<<${PROVIDERS[$1]}
|
||||||
|
eval "${PROVIDER_ARGS[0]}"
|
||||||
|
}
|
||||||
|
function list-commands() {
|
||||||
|
IFS=: read -ra path <<<"$PATH"
|
||||||
|
for dir in "${path[@]}"; do
|
||||||
|
printf '%s\n' "$dir/"* |
|
||||||
|
awk -F / -v pre="$GLYPH_COMMAND" '{print $NF "\034command\034\033[31m" pre "\033[0m" $NF;}'
|
||||||
|
done | sort -u
|
||||||
|
}
|
||||||
|
function list-entries() {
|
||||||
|
# Get locations of desktop application folders according to spec
|
||||||
|
# https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html
|
||||||
|
IFS=':' read -ra DIRS <<<"${XDG_DATA_HOME-${HOME}/.local/share}:${XDG_DATA_DIRS-/usr/local/share:/usr/share}"
|
||||||
|
for i in "${!DIRS[@]}"; do
|
||||||
|
if [[ ! -d "${DIRS[i]}" ]]; then
|
||||||
|
unset -v 'DIRS[$i]'
|
||||||
|
else
|
||||||
|
DIRS[$i]="${DIRS[i]}/applications/**/*.desktop"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
# shellcheck disable=SC2068
|
||||||
|
entries ${DIRS[@]}
|
||||||
|
}
|
||||||
|
function entries() {
|
||||||
|
# shellcheck disable=SC2068
|
||||||
|
awk -v pre="$GLYPH_DESKTOP" -F= '
|
||||||
|
function desktopFileID(filename){
|
||||||
|
sub("^.*applications/", "", filename);
|
||||||
|
sub("/", "-", filename);
|
||||||
|
return filename
|
||||||
|
}
|
||||||
|
BEGINFILE{
|
||||||
|
application=0;
|
||||||
|
hidden=0;
|
||||||
|
block="";
|
||||||
|
a=0
|
||||||
|
|
||||||
|
id=desktopFileID(FILENAME)
|
||||||
|
if(id in fileIds){
|
||||||
|
nextfile;
|
||||||
|
}else{
|
||||||
|
fileIds[id]=0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/^\[Desktop Entry\]/{block="entry"}
|
||||||
|
/^Type=Application/{application=1}
|
||||||
|
/^\[Desktop Action/{
|
||||||
|
sub("^\\[Desktop Action ", "");
|
||||||
|
sub("\\]$", "");
|
||||||
|
block="action";
|
||||||
|
a++;
|
||||||
|
actions[a,"key"]=$0
|
||||||
|
}
|
||||||
|
/^\[X-/{
|
||||||
|
sub("^\\[X-", "");
|
||||||
|
sub("\\]$", "");
|
||||||
|
block="action";
|
||||||
|
a++;
|
||||||
|
actions[a,"key"]=$0
|
||||||
|
}
|
||||||
|
/^Name=/{ (block=="action")? actions[a,"name"]=$2 : name=$2 }
|
||||||
|
/^NoDisplay=true/{ (block=="action")? actions[a,"hidden"]=1 : hidden=1 }
|
||||||
|
ENDFILE{
|
||||||
|
if (application){
|
||||||
|
if (!hidden)
|
||||||
|
print FILENAME "\034desktop\034\033[33m" pre name "\033[0m";
|
||||||
|
if (a>0)
|
||||||
|
for (i=1; i<=a; i++)
|
||||||
|
if (!actions[i, "hidden"])
|
||||||
|
print FILENAME "\034desktop\034\033[33m" pre name "\033[0m (" actions[i, "name"] ")\034" actions[i, "key"]
|
||||||
|
}
|
||||||
|
}' \
|
||||||
|
$@ </dev/null
|
||||||
|
# the empty stdin is needed in case no *.desktop files
|
||||||
|
}
|
||||||
|
function run-desktop() {
|
||||||
|
CMD="$("${0}" generate-command "$@" 2>&3)"
|
||||||
|
echo "Generated Launch command from .desktop file: ${CMD}" >&3
|
||||||
|
eval "${CMD}"
|
||||||
|
}
|
||||||
|
function generate-command() {
|
||||||
|
# Define the search pattern that specifies the block to search for within the .desktop file
|
||||||
|
PATTERN="^\\\\[Desktop Entry\\\\]"
|
||||||
|
if [[ -n $2 ]]; then
|
||||||
|
PATTERN="^\\\\[Desktop Action ${2}\\\\]"
|
||||||
|
fi
|
||||||
|
echo "Searching for pattern: ${PATTERN}" >&3
|
||||||
|
# 1. We see a line starting [Desktop, but we're already searching: deactivate search again
|
||||||
|
# 2. We see the specified pattern: start search
|
||||||
|
# 3. We see an Exec= line during search: remove field codes and set variable
|
||||||
|
# 3. We see a Path= line during search: set variable
|
||||||
|
# 4. Finally, build command line
|
||||||
|
awk -v pattern="${PATTERN}" -v terminal_cmd="${TERMINAL_COMMAND}" -F= '
|
||||||
|
BEGIN{a=0;exec=0;path=0}
|
||||||
|
/^\[Desktop/{
|
||||||
|
if(a){ a=0 }
|
||||||
|
}
|
||||||
|
$0 ~ pattern{ a=1 }
|
||||||
|
/^Terminal=/{
|
||||||
|
sub("^Terminal=", "");
|
||||||
|
if ($0 == "true") { terminal=1 }
|
||||||
|
}
|
||||||
|
/^Exec=/{
|
||||||
|
if(a && !exec){
|
||||||
|
sub("^Exec=", "");
|
||||||
|
gsub(" ?%[cDdFfikmNnUuv]", "");
|
||||||
|
exec=$0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/^Path=/{
|
||||||
|
if(a && !path){ path=$2 }
|
||||||
|
}
|
||||||
|
END{
|
||||||
|
if(path){ printf "cd " path " && " }
|
||||||
|
printf "exec "
|
||||||
|
if (terminal){ printf terminal_cmd " " }
|
||||||
|
print exec
|
||||||
|
}' "$1"
|
||||||
|
}
|
||||||
|
|
||||||
|
function shouldAutostart() {
|
||||||
|
local condition="$(cat $1 | grep "AutostartCondition" | cut -d'=' -f2)"
|
||||||
|
local filename="${XDG_CONFIG_HOME-${HOME}/.config}/${condition#* }"
|
||||||
|
case $condition in
|
||||||
|
if-exists*)
|
||||||
|
[[ -e $filename ]]
|
||||||
|
;;
|
||||||
|
unless-exists*)
|
||||||
|
[[ ! -e $filename ]]
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
return 0
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
function autostart() {
|
||||||
|
for application in $(list-autostart); do
|
||||||
|
if shouldAutostart "$application" ; then
|
||||||
|
(exec setsid /bin/sh -c "$(run-desktop "${application}")" &>/dev/null &)
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
function list-autostart() {
|
||||||
|
# Get locations of desktop application folders according to spec
|
||||||
|
# https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html
|
||||||
|
IFS=':' read -ra DIRS <<<"${XDG_CONFIG_HOME-${HOME}/.config}:${XDG_CONFIG_DIRS-/etc/xdg}"
|
||||||
|
for i in "${!DIRS[@]}"; do
|
||||||
|
if [[ ! -d "${DIRS[i]}" ]]; then
|
||||||
|
unset -v 'DIRS[$i]'
|
||||||
|
else
|
||||||
|
DIRS[$i]="${DIRS[i]}/autostart/*.desktop"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
# shellcheck disable=SC2068
|
||||||
|
awk -v pre="$GLYPH_DESKTOP" -F= '
|
||||||
|
function desktopFileID(filename){
|
||||||
|
sub("^.*autostart/", "", filename);
|
||||||
|
sub("/", "-", filename);
|
||||||
|
return filename
|
||||||
|
}
|
||||||
|
BEGINFILE{
|
||||||
|
application=0;
|
||||||
|
block="";
|
||||||
|
disabled=0;
|
||||||
|
a=0
|
||||||
|
|
||||||
|
id=desktopFileID(FILENAME)
|
||||||
|
if(id in fileIds){
|
||||||
|
nextfile;
|
||||||
|
}else{
|
||||||
|
fileIds[id]=0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/^\[Desktop Entry\]/{block="entry"}
|
||||||
|
/^Type=Application/{application=1}
|
||||||
|
/^Name=/{ iname=$2 }
|
||||||
|
/^Hidden=true/{disabled=1}
|
||||||
|
ENDFILE{
|
||||||
|
if (application && !disabled){
|
||||||
|
print FILENAME;
|
||||||
|
}
|
||||||
|
}' \
|
||||||
|
${DIRS[@]} </dev/null
|
||||||
|
}
|
||||||
|
|
||||||
|
purge() {
|
||||||
|
# shellcheck disable=SC2188
|
||||||
|
> "${HIST_FILE}"
|
||||||
|
declare -A PURGE_CMDS
|
||||||
|
for PROVIDER_NAME in "${!PROVIDERS[@]}"; do
|
||||||
|
readarray -td ${DEL} PROVIDER_ARGS <<<${PROVIDERS[${PROVIDER_NAME}]}
|
||||||
|
PURGE_CMD=${PROVIDER_ARGS[3]}
|
||||||
|
[ -z "${PURGE_CMD}" ] && PURGE_CMD='test -f "{1}" || exit 43'
|
||||||
|
PURGE_CMDS[$PROVIDER_NAME]="${PURGE_CMD%$'\n'}"
|
||||||
|
done
|
||||||
|
for HIST_LINE in "${HIST_LINES[@]#*' '}"; do
|
||||||
|
readarray -td $'\034' HIST_ENTRY <<<${HIST_LINE}
|
||||||
|
ENTRY=${HIST_ENTRY[1]}
|
||||||
|
readarray -td ' ' FILTER <<<${PURGE_CMDS[$ENTRY]//\{1\}/${HIST_ENTRY[0]}}
|
||||||
|
(eval "${FILTER[@]}" 1>/dev/null) # Run filter command discarding output. We only want the exit status
|
||||||
|
if [[ $? -ne 43 ]]; then
|
||||||
|
echo "1 ${HIST_LINE[@]%$'\n'}" >> "${HIST_FILE}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
describe | describe-desktop | describe-command | entries | list-entries | list-commands | list-autostart | generate-command | autostart | run-desktop | provide | purge)
|
||||||
|
"$@"
|
||||||
|
exit
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
echo "Starting launcher instance with the following providers:" "${!PROVIDERS[@]}" >&3
|
||||||
|
|
||||||
|
FZFPIPE=$(mktemp -u)
|
||||||
|
mkfifo "$FZFPIPE"
|
||||||
|
trap 'rm "$FZFPIPE"' EXIT INT
|
||||||
|
|
||||||
|
# Append Launcher History, removing usage count
|
||||||
|
(printf '%s' "${HIST_LINES[@]#* }" >>"$FZFPIPE") &
|
||||||
|
|
||||||
|
# Iterate over providers and run their list-command
|
||||||
|
for PROVIDER_NAME in "${!PROVIDERS[@]}"; do
|
||||||
|
(bash -c "${0} provide ${PROVIDER_NAME}" >>"$FZFPIPE") &
|
||||||
|
done
|
||||||
|
|
||||||
|
readarray -t COMMAND_STR <<<$(
|
||||||
|
fzf --ansi +s -x -d '\034' --nth ..3 --with-nth 3 \
|
||||||
|
--print-query \
|
||||||
|
--preview "$0 describe {2} {1}" \
|
||||||
|
--preview-window=up:2:noborder \
|
||||||
|
--no-multi --cycle \
|
||||||
|
--prompt="${GLYPH_PROMPT-# }" \
|
||||||
|
--header='' --no-info --margin='1,2' \
|
||||||
|
--color='16,gutter:-1' \
|
||||||
|
<"$FZFPIPE"
|
||||||
|
) || exit 1
|
||||||
|
# Get the last line of the fzf output. If there were no matches, it contains the query which we'll treat as a custom command
|
||||||
|
# If there were matches, it contains the selected item
|
||||||
|
COMMAND_STR=$(printf '%s\n' "${COMMAND_STR[@]: -1}")
|
||||||
|
# We still need to format the query to conform to our fallback provider.
|
||||||
|
# We check for the presence of field separator character to determine if we're dealing with a custom command
|
||||||
|
if [[ $COMMAND_STR != *$'\034'* ]]; then
|
||||||
|
COMMAND_STR="${COMMAND_STR}"$'\034user\034'"${COMMAND_STR}"$'\034'
|
||||||
|
SKIP_HIST=1 # I chose not to include custom commands in the history. If this is a bad idea, open an issue please
|
||||||
|
fi
|
||||||
|
|
||||||
|
[ -z "$COMMAND_STR" ] && exit 1
|
||||||
|
|
||||||
|
if [[ -n "${HIST_FILE}" && ! "$SKIP_HIST" ]]; then
|
||||||
|
# update history
|
||||||
|
for i in "${!HIST_LINES[@]}"; do
|
||||||
|
if [[ "${HIST_LINES[i]}" == *" $COMMAND_STR"$'\n' ]]; then
|
||||||
|
HIST_COUNT=${HIST_LINES[i]%% *}
|
||||||
|
HIST_LINES[$i]="$((HIST_COUNT + 1)) $COMMAND_STR"$'\n'
|
||||||
|
match=1
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
if ! ((match)); then
|
||||||
|
HIST_LINES+=("1 $COMMAND_STR"$'\n')
|
||||||
|
fi
|
||||||
|
|
||||||
|
printf '%s' "${HIST_LINES[@]}" | sort -nr >"$HIST_FILE"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# shellcheck disable=SC2086
|
||||||
|
readarray -d $'\034' -t PARAMS <<<${COMMAND_STR}
|
||||||
|
# shellcheck disable=SC2086
|
||||||
|
readarray -d ${DEL} -t PROVIDER_ARGS <<<${PROVIDERS[${PARAMS[1]}]}
|
||||||
|
# Substitute {1}, {2} etc with the correct values
|
||||||
|
COMMAND=${PROVIDER_ARGS[2]//\{1\}/${PARAMS[0]}}
|
||||||
|
COMMAND=${COMMAND//\{2\}/${PARAMS[3]}}
|
||||||
|
COMMAND=${COMMAND%%[[:space:]]}
|
||||||
|
|
||||||
|
if [ -t 1 ]; then
|
||||||
|
echo "Launching command: ${COMMAND}" >&3
|
||||||
|
setsid /bin/sh -c "${COMMAND}" >&/dev/null </dev/null &
|
||||||
|
sleep 0.01
|
||||||
|
else
|
||||||
|
echo "${COMMAND}"
|
||||||
|
fi
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" data-name="Layer 1" viewBox="0 0 50 64"><rect width="8" height="8" x="1" y="4" fill="none" stroke="#FFFFFF" stroke-miterlimit="10" stroke-width="4"/><rect width="8" height="8" x="1" y="20" fill="none" stroke="#FFFFFF" stroke-miterlimit="10" stroke-width="4"/><rect width="8" height="8" x="1" y="36" fill="none" stroke="#FFFFFF" stroke-miterlimit="10" stroke-width="4"/><rect width="8" height="8" x="1" y="52" fill="none" stroke="#FFFFFF" stroke-miterlimit="10" stroke-width="4"/><line x1="19" x2="63" y1="8" y2="8" fill="none" stroke="#FFFFFF" stroke-miterlimit="10" stroke-width="4"/><line x1="19" x2="55" y1="24" y2="24" fill="none" stroke="#FFFFFF" stroke-miterlimit="10" stroke-width="4"/><line x1="19" x2="47" y1="40" y2="40" fill="none" stroke="#FFFFFF" stroke-miterlimit="10" stroke-width="4"/><line x1="19" x2="55" y1="56" y2="56" fill="none" stroke="#FFFFFF" stroke-miterlimit="10" stroke-width="4"/></svg>
|
||||||
|
After Width: | Height: | Size: 1.0 KiB |
@@ -0,0 +1 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="#FFFFFF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-chrome"><circle cx="12" cy="12" r="10"></circle><circle cx="12" cy="12" r="4"></circle><line x1="21.17" y1="8" x2="12" y2="8"></line><line x1="3.95" y1="6.06" x2="8.54" y2="14"></line><line x1="10.88" y1="21.94" x2="15.46" y2="14"></line></svg>
|
||||||
|
After Width: | Height: | Size: 444 B |
@@ -0,0 +1,250 @@
|
|||||||
|
{
|
||||||
|
"layer": "bottom",
|
||||||
|
"height": 16,
|
||||||
|
"modules-left": [
|
||||||
|
"sway/workspaces",
|
||||||
|
"sway/mode"
|
||||||
|
],
|
||||||
|
|
||||||
|
"modules-center": [
|
||||||
|
"cpu",
|
||||||
|
"custom/gap",
|
||||||
|
"memory",
|
||||||
|
"custom/gap",
|
||||||
|
"disk",
|
||||||
|
"custom/gap",
|
||||||
|
"backlight",
|
||||||
|
"custom/gap",
|
||||||
|
"pulseaudio",
|
||||||
|
"custom/gap",
|
||||||
|
"battery",
|
||||||
|
"custom/gap",
|
||||||
|
"network"
|
||||||
|
],
|
||||||
|
|
||||||
|
"modules-right": [
|
||||||
|
"custom/gap",
|
||||||
|
"clock"
|
||||||
|
],
|
||||||
|
|
||||||
|
"sway/workspaces": {
|
||||||
|
"persistent_workspaces": {
|
||||||
|
"1": [],
|
||||||
|
"2": [],
|
||||||
|
"3": [],
|
||||||
|
"4": [],
|
||||||
|
"5": [],
|
||||||
|
"6": [],
|
||||||
|
"7": [],
|
||||||
|
"8": [],
|
||||||
|
"9": []
|
||||||
|
},
|
||||||
|
"all-outputs": true
|
||||||
|
},
|
||||||
|
"custom/terminal": {
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec foot",
|
||||||
|
},
|
||||||
|
"custom/filemanager": {
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec 'nautilus --new-window'",
|
||||||
|
},
|
||||||
|
"custom/browser": {
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec 'chromium --ozone-platform-hint=auto'",
|
||||||
|
},
|
||||||
|
"custom/libre": {
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec libreoffice",
|
||||||
|
},
|
||||||
|
"custom/mmfm": {
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec mmfm",
|
||||||
|
},
|
||||||
|
"custom/vmp": {
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec vmp",
|
||||||
|
},
|
||||||
|
"custom/printer": {
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec system-config-printer",
|
||||||
|
},
|
||||||
|
"custom/software": {
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec QT_QPA_PLATFORM=xcb appstore",
|
||||||
|
},
|
||||||
|
"custom/apps": {
|
||||||
|
"tooltip-format": "desktop",
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec 'wofi --show run'",
|
||||||
|
},
|
||||||
|
"custom/overview": {
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec 'echo 2 > /tmp/sov'",
|
||||||
|
},
|
||||||
|
"custom/settings": {
|
||||||
|
"tooltip-format": "shutdown/logout",
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec 'echo 2 > /tmp/wcp'",
|
||||||
|
},
|
||||||
|
"sway/language": {
|
||||||
|
"format": "{short} {variant}",
|
||||||
|
},
|
||||||
|
"sway/mode": {
|
||||||
|
"format": "<span style=\"italic\">{}</span>"
|
||||||
|
},
|
||||||
|
"sway/window":{
|
||||||
|
"max-length":50
|
||||||
|
},
|
||||||
|
"idle_inhibitor": {
|
||||||
|
"format": "idle | ",
|
||||||
|
"format-icons": {
|
||||||
|
"activated": "",
|
||||||
|
"deactivated": ""
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tray": {
|
||||||
|
"icon-size": 8,
|
||||||
|
"spacing": 20
|
||||||
|
},
|
||||||
|
"custom/clock-icon": {
|
||||||
|
"format": "<span font_family='Font Awesome 6' size='x-large'></span>",
|
||||||
|
"interval": "once",
|
||||||
|
},
|
||||||
|
"clock": {
|
||||||
|
"timezone": "America/Denver",
|
||||||
|
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
|
||||||
|
"format-alt": " {:%Y-%m-%d} ",
|
||||||
|
"format": " {:%H:%M} "
|
||||||
|
},
|
||||||
|
"custom/cpu-icon": {
|
||||||
|
"format": "<span font_family='Font Awesome 6' size='x-large'></span>",
|
||||||
|
"interval": "once",
|
||||||
|
},
|
||||||
|
"cpu": {
|
||||||
|
"format": "[cpu:{usage:02}%]",
|
||||||
|
"tooltip": false
|
||||||
|
},
|
||||||
|
"custom/mem-icon": {
|
||||||
|
"format": "<span font_family='Font Awesome 6' size='x-large'></span>",
|
||||||
|
"interval": "once",
|
||||||
|
},
|
||||||
|
"memory": {
|
||||||
|
"interval": 20,
|
||||||
|
"format": "[mem:{avail:0.1f}]"
|
||||||
|
},
|
||||||
|
"custom/disc-icon": {
|
||||||
|
"format": "<span font_family='Font Awesome 6' size='xx-large'></span>",
|
||||||
|
"interval": "once",
|
||||||
|
},
|
||||||
|
"disk":{
|
||||||
|
"interval": 60,
|
||||||
|
"format":"[ssd:{free}]"
|
||||||
|
},
|
||||||
|
"custom/light-icon": {
|
||||||
|
"format": "<span font_family='Font Awesome 6' size='medium'></span>",
|
||||||
|
"interval": "once",
|
||||||
|
},
|
||||||
|
"backlight": {
|
||||||
|
"format": "[lcd:{percent}%]",
|
||||||
|
"format-icons": ["", ""],
|
||||||
|
"on-scroll-up" : "brightnessctl s 1%+",
|
||||||
|
"on-scroll-down" : "brightnessctl s 1%-"
|
||||||
|
},
|
||||||
|
"custom/batt-icon": {
|
||||||
|
"format": "<span font_family='Font Awesome 6' size='xx-large'></span>",
|
||||||
|
"interval": "once",
|
||||||
|
},
|
||||||
|
"battery": {
|
||||||
|
"states": {
|
||||||
|
// "good": 95,
|
||||||
|
"warning": 30,
|
||||||
|
"critical": 15
|
||||||
|
},
|
||||||
|
"format": "[bat:{capacity}%]",
|
||||||
|
"format-charging": "[bat:{capacity}%]",
|
||||||
|
"format-plugged": "[bat:{capacity}%]",
|
||||||
|
"format-alt": "[bat:{time}]",
|
||||||
|
"format-icons": ["", "", "", "", ""]
|
||||||
|
},
|
||||||
|
"battery#bat2": {
|
||||||
|
"bat": "BAT2"
|
||||||
|
},
|
||||||
|
"custom/net-icon": {
|
||||||
|
"format": " <span font_family='Font Awesome 6' size='xx-large'></span> ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "iwgtk"
|
||||||
|
},
|
||||||
|
"network": {
|
||||||
|
"format-wifi": "[{essid} {ipaddr}]",
|
||||||
|
"format-ethernet": "[Eth {ipaddr}]",
|
||||||
|
"format-linked": "[{ifname} (CONF)]",
|
||||||
|
"format-disconnected": "[Disconnected]",
|
||||||
|
"on-click": "gnome-control-center network"
|
||||||
|
},
|
||||||
|
"custom/vol-icon": {
|
||||||
|
"format": "<span font_family='Font Awesome 6' size='xx-large'></span> ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "pavucontrol"
|
||||||
|
},
|
||||||
|
"custom/energy-icon": {
|
||||||
|
"format": " <span font_family='Font Awesome 6' size='small'></span> ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "tlpui"
|
||||||
|
},
|
||||||
|
"custom/hardware-icon": {
|
||||||
|
"format": "<span font_family='Font Awesome 6' size='xx-large'></span> ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "GDK_BACKEND=x11 hardinfo"
|
||||||
|
},
|
||||||
|
"pulseaudio": {
|
||||||
|
"format": "[vol:{volume}%]",
|
||||||
|
"format-bluetooth": "[vol:{volume}%]",
|
||||||
|
"format-bluetooth-muted": "[Muted]",
|
||||||
|
"format-muted": "[Muted {format_source}]",
|
||||||
|
"format-source": "[{volume}%]",
|
||||||
|
"format-source-muted": "[Muted]",
|
||||||
|
"format-icons": {
|
||||||
|
"headphone": "",
|
||||||
|
"hands-free": "",
|
||||||
|
"headset": "",
|
||||||
|
"phone": "",
|
||||||
|
"portable": "",
|
||||||
|
"car": "",
|
||||||
|
"default": ["", "", ""]
|
||||||
|
},
|
||||||
|
"on-click": "pavucontrol"
|
||||||
|
},
|
||||||
|
"custom/lang-icon": {
|
||||||
|
"format": "<span font_family='Font Awesome 6' size='xx-large'></span> |",
|
||||||
|
"interval": "once",
|
||||||
|
},
|
||||||
|
"custom/gap": {
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
},
|
||||||
|
"custom/dash": {
|
||||||
|
"format": "--",
|
||||||
|
"interval": "once",
|
||||||
|
},
|
||||||
|
"custom/lang": {
|
||||||
|
"format": " kbd:{} ",
|
||||||
|
"exec" : "swaymsg -t get_inputs | jq -r '.[] | select(.identifier == \"1165:49408:ITE_Tech._Inc._ITE_Device(8910)_Keyboard\") | .xkb_active_layout_name' | tail -1 | cut -c1,2",
|
||||||
|
"interval": 60
|
||||||
|
},
|
||||||
|
"tray": {
|
||||||
|
"icon-size": 14,
|
||||||
|
"spacing": 10
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<svg width="14" height="14" viewBox="0 0 20 16" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
|
<!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->
|
||||||
|
<title>folder</title>
|
||||||
|
<desc>Created with Sketch.</desc>
|
||||||
|
<g id="Icons" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
||||||
|
<g id="Rounded" transform="translate(-204.000000, -2284.000000)">
|
||||||
|
<g id="File" transform="translate(100.000000, 2226.000000)">
|
||||||
|
<g id="-Round-/-File-/-folder" transform="translate(102.000000, 54.000000)">
|
||||||
|
<g>
|
||||||
|
<polygon id="Path" points="0 0 24 0 24 24 0 24"></polygon>
|
||||||
|
<path d="M10.59,4.59 C10.21,4.21 9.7,4 9.17,4 L4,4 C2.9,4 2.01,4.9 2.01,6 L2,18 C2,19.1 2.9,20 4,20 L20,20 C21.1,20 22,19.1 22,18 L22,8 C22,6.9 21.1,6 20,6 L12,6 L10.59,4.59 Z" id="🔹-Icon-Color" fill="#FFFFFF"></path>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.1 KiB |
@@ -0,0 +1 @@
|
|||||||
|
waybar status bar configuration
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg width="15" height="15" viewBox="0 0 20 20" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
|
<!-- Generator: Sketch 3.8.1 (29687) - http://www.bohemiancoding.com/sketch -->
|
||||||
|
<title>image_picture [#971]</title>
|
||||||
|
<desc>Created with Sketch.</desc>
|
||||||
|
<defs></defs>
|
||||||
|
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
||||||
|
<g id="Dribbble-Light-Preview" transform="translate(-420.000000, -3881.000000)" fill="#FFFFFF">
|
||||||
|
<g id="icons" transform="translate(56.000000, 160.000000)">
|
||||||
|
<path d="M376.083,3725.667 C376.083,3724.562 376.978,3723.667 378.083,3723.667 C379.188,3723.667 380.083,3724.562 380.083,3725.667 C380.083,3726.772 379.188,3727.667 378.083,3727.667 C376.978,3727.667 376.083,3726.772 376.083,3725.667 L376.083,3725.667 Z M382,3733.086 L377.987,3729.074 L377.971,3729.089 L377.955,3729.074 L376.525,3730.504 L371.896,3725.876 L371.881,3725.892 L371.865,3725.876 L366,3731.741 L366,3723 L382,3723 L382,3733.086 Z M364,3737 L384,3737 L384,3721 L364,3721 L364,3737 Z" id="image_picture-[#971]"></path>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.2 KiB |
@@ -0,0 +1,7 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <svg width="14" height="14
|
||||||
|
" viewBox="0 0 64 64" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M25 6.75H11C8.65279 6.75 6.75 8.65279 6.75 11V25C6.75 27.3472 8.65279 29.25 11 29.25H25C27.3472 29.25 29.25 27.3472 29.25 25V11C29.25 8.65279 27.3472 6.75 25 6.75Z" fill="white"/>
|
||||||
|
<path d="M53 6.75H39C36.6528 6.75 34.75 8.65279 34.75 11V25C34.75 27.3472 36.6528 29.25 39 29.25H53C55.3472 29.25 57.25 27.3472 57.25 25V11C57.25 8.65279 55.3472 6.75 53 6.75Z" fill="white"/>
|
||||||
|
<path d="M25 34.75H11C8.65279 34.75 6.75 36.6528 6.75 39V53C6.75 55.3472 8.65279 57.25 11 57.25H25C27.3472 57.25 29.25 55.3472 29.25 53V39C29.25 36.6528 27.3472 34.75 25 34.75Z" fill="white"/>
|
||||||
|
<path d="M53 34.75H39C36.6528 34.75 34.75 36.6528 34.75 39V53C34.75 55.3472 36.6528 57.25 39 57.25H53C55.3472 57.25 57.25 55.3472 57.25 53V39C57.25 36.6528 55.3472 34.75 53 34.75Z" fill="white"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 929 B |
@@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <svg xmlns="http://www.w3.org/2000/svg" fill="#FFFFFF" width="14" height="14" viewBox="0 0 24 24">
|
||||||
|
<g>
|
||||||
|
<path fill="none" d="M0 0h24v24H0z"/>
|
||||||
|
<path d="M7 17h10v5H7v-5zm12 3v-5H5v5H3a1 1 0 0 1-1-1V9a1 1 0 0 1 1-1h18a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1h-2zM5 10v2h3v-2H5zm2-8h10a1 1 0 0 1 1 1v3H6V3a1 1 0 0 1 1-1z"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 400 B |
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?><svg fill="#FFFFFF" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="12" height="12" viewBox="0 0 122.88 117.824" enable-background="new 0 0 122.88 117.824" xml:space="preserve"><g><path fill-rule="evenodd" clip-rule="evenodd" d="M122.774,16.459L122.774,16.459c0,5.393-4.412,9.805-9.805,9.805H92.202 c1.457-2.919,2.278-6.212,2.278-9.697c0-3.571-0.861-6.941-2.387-9.913h20.876C118.362,6.654,122.774,11.066,122.774,16.459 L122.774,16.459z M89.306,101.257c0,9.15-7.418,16.567-16.568,16.567s-16.567-7.417-16.567-16.567 c0-9.149,7.417-16.567,16.567-16.567S89.306,92.107,89.306,101.257L89.306,101.257z M122.869,101.148L122.869,101.148 c0,5.393-4.413,9.805-9.806,9.805H92.202c1.457-2.919,2.278-6.212,2.278-9.696c0-3.571-0.861-6.941-2.387-9.913h20.97 C118.457,91.344,122.869,95.756,122.869,101.148L122.869,101.148z M53.272,110.953H9.816c-5.393,0-9.805-4.412-9.805-9.805l0,0 c0-5.393,4.412-9.805,9.805-9.805h43.565c-1.525,2.972-2.387,6.342-2.387,9.913C50.994,104.741,51.815,108.034,53.272,110.953 L53.272,110.953z M28.326,58.717c0,9.149,7.418,16.567,16.568,16.567c9.149,0,16.567-7.418,16.567-16.567 c0-9.15-7.418-16.568-16.567-16.568C35.744,42.148,28.326,49.566,28.326,58.717L28.326,58.717z M0,58.608L0,58.608 c0,5.393,4.414,9.805,9.805,9.805h15.675c-1.457-2.92-2.278-6.169-2.278-9.696c0-3.528,0.861-6.941,2.387-9.914H9.805 C4.412,48.803,0,53.215,0,58.608L0,58.608z M64.409,68.413h48.666c5.392,0,9.805-4.412,9.805-9.805l0,0 c0-5.394-4.412-9.806-9.805-9.806H64.301c1.525,2.973,2.387,6.386,2.387,9.914C66.688,62.244,65.866,65.493,64.409,68.413 L64.409,68.413z M89.306,16.567c0,9.15-7.418,16.567-16.568,16.567S56.17,25.718,56.17,16.567C56.17,7.417,63.587,0,72.737,0 S89.306,7.417,89.306,16.567L89.306,16.567z M53.272,26.264H9.853c-5.393,0-9.805-4.413-9.805-9.805l0,0 c0-5.393,4.412-9.805,9.805-9.805h43.528c-1.525,2.972-2.387,6.342-2.387,9.913C50.994,20.052,51.815,23.345,53.272,26.264 L53.272,26.264z"/></g></svg>
|
||||||
|
After Width: | Height: | Size: 2.0 KiB |
@@ -0,0 +1,9 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 23.0.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<svg fill="#FFFFFF" version="1.1" id="Icons" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0" y="0" width="14" height="14"
|
||||||
|
viewBox="0 0 32 32" style="enable-background:new 0 0 32 32;" xml:space="preserve">
|
||||||
|
<path d="M29.6,5.2C29.3,5,29,4.9,28.7,5.1c-4.3,1.4-8.7,0.3-12-2.8c-0.4-0.4-1-0.4-1.4,0c-3.3,3.1-7.7,4.2-12,2.8
|
||||||
|
C3,4.9,2.7,5,2.4,5.2C2.2,5.4,2,5.7,2,6c0,15.7,6.9,20.9,13.6,23.9C15.7,30,15.9,30,16,30s0.3,0,0.4-0.1C23.1,26.9,30,21.7,30,6
|
||||||
|
C30,5.7,29.8,5.4,29.6,5.2z M21.7,13.7l-6,6C15.5,19.9,15.3,20,15,20s-0.5-0.1-0.7-0.3l-3-3c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0
|
||||||
|
l2.3,2.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0S22.1,13.3,21.7,13.7z"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 805 B |
@@ -0,0 +1,304 @@
|
|||||||
|
* {
|
||||||
|
border: 0;
|
||||||
|
border-radius: 0;
|
||||||
|
/* `otf-font-awesome` is required to be installed for icons */
|
||||||
|
/*font-family: Roboto, Helvetica, Arial, sans-serif;*/
|
||||||
|
/*font-family: Ubuntu;*/
|
||||||
|
font-family: "Terminus";
|
||||||
|
font-size: 16px;
|
||||||
|
font-weight: bold;
|
||||||
|
/* min-height: 16px; */
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar {
|
||||||
|
background-color: rgba(0, 0, 0, 0);
|
||||||
|
color: #dedede;
|
||||||
|
/* border-bottom: 0.5px solid rgba(0, 0, 0, 0.1); */
|
||||||
|
|
||||||
|
/* transition-property: background-color; */
|
||||||
|
/* transition-duration: .5s; */
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar.hidden {
|
||||||
|
opacity: 0.2;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
window#waybar.empty {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
window#waybar.solo {
|
||||||
|
background-color: #FFFFFF;
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
window#waybar.termite {
|
||||||
|
background-color: #3F3F3F;
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar.chromium {
|
||||||
|
background-color: #000000;
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#tray {
|
||||||
|
margin-right: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces {
|
||||||
|
margin-left: 2px;
|
||||||
|
margin-top: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button {
|
||||||
|
min-width: 15px;
|
||||||
|
padding-left: 3px;
|
||||||
|
padding-right: 3px;
|
||||||
|
/* margin: 0 0px; */
|
||||||
|
background-color: transparent;
|
||||||
|
color: #aeaeae;
|
||||||
|
/* border-bottom: 1px solid rgba(255,255,255,0.7); */
|
||||||
|
}
|
||||||
|
|
||||||
|
/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
|
||||||
|
#workspaces button:hover {
|
||||||
|
background: rgba(0, 0, 0, 0.2);
|
||||||
|
box-shadow: inherit;
|
||||||
|
/* border-bottom: 1px solid #ffffff; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.visible {
|
||||||
|
/* border-bottom: 1px solid rgba(255, 255, 255, 1.0); */
|
||||||
|
color: #666666;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.focused {
|
||||||
|
/* border-bottom: 1px solid rgba(255, 255, 255, 1.0); */
|
||||||
|
color: #fefefe;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.urgent {
|
||||||
|
color: #eb4d4b;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.persistent {
|
||||||
|
color: #555;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mode {
|
||||||
|
background-color: #64727D;
|
||||||
|
/* border-bottom: 1px solid #ffffff; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#backlight,
|
||||||
|
#pulseaudio,
|
||||||
|
#custom-lang,
|
||||||
|
#disk,
|
||||||
|
#battery,
|
||||||
|
#memory,
|
||||||
|
#network,
|
||||||
|
#cpu
|
||||||
|
{
|
||||||
|
color: rgba(255,255,255,0.3);
|
||||||
|
background-color: transparent;
|
||||||
|
/* border-bottom: 1px solid rgba(255, 255, 255, 0.7); */
|
||||||
|
}
|
||||||
|
|
||||||
|
#clock,
|
||||||
|
#temperature,
|
||||||
|
#custom-media,
|
||||||
|
#custom-wlogout,
|
||||||
|
#custom-pamac,
|
||||||
|
#tray,
|
||||||
|
#mode,
|
||||||
|
#idle_inhibitor,
|
||||||
|
#mpd {
|
||||||
|
color: #dedede;
|
||||||
|
/* border-bottom: 1px solid rgba(255, 255, 255, 0.7); */
|
||||||
|
margin-top: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#clock {
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery {
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.charging {
|
||||||
|
background-color: #26A65B;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes blink {
|
||||||
|
to {
|
||||||
|
background-color: #ffffff;
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.critical:not(.charging) {
|
||||||
|
background-color: #f53c3c;
|
||||||
|
color: #ffffff;
|
||||||
|
animation-name: blink;
|
||||||
|
animation-duration: 0.5s;
|
||||||
|
animation-timing-function: linear;
|
||||||
|
animation-iteration-count: infinite;
|
||||||
|
animation-direction: alternate;
|
||||||
|
}
|
||||||
|
|
||||||
|
label:focus {
|
||||||
|
background-color: #000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
#cpu {
|
||||||
|
}
|
||||||
|
|
||||||
|
#memory {
|
||||||
|
}
|
||||||
|
|
||||||
|
#backlight {
|
||||||
|
}
|
||||||
|
|
||||||
|
#network {
|
||||||
|
}
|
||||||
|
|
||||||
|
#network.disconnected {
|
||||||
|
background-color: #f53c3c;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio {
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-apps {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/apps.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
margin-left: 5px;
|
||||||
|
margin-top: 7px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-terminal {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/terminal.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
margin-top: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-filemanager {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/filemanager.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
margin-left: 9px;
|
||||||
|
margin-top: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-browser {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/browser.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
margin-left: 7px;
|
||||||
|
margin-top: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-libre {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/word.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
margin-left: 4px;
|
||||||
|
margin-top: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-mmfm {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/mmfm.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
/* background-position: center; */
|
||||||
|
margin-left: 7px;
|
||||||
|
margin-top: 7px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-vmp {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/vmp.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
/* background-position: center; */
|
||||||
|
margin-left: 9px;
|
||||||
|
margin-top: 7px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-printer {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/printer.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
margin-left: 4px;
|
||||||
|
margin-top: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-software {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/software.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
margin-top: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-overview {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/overview.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
margin-left: 4px;
|
||||||
|
margin-top: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-settings {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/settings.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
margin-left: 5px;
|
||||||
|
margin-top: 7px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-month {
|
||||||
|
margin-top: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio.muted {
|
||||||
|
background-color: #90b1b1;
|
||||||
|
color: #2a5c45;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-media {
|
||||||
|
color: #2a5c45;
|
||||||
|
min-width: 100px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-media.custom-spotify {
|
||||||
|
background-color: #66cc99;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-media.custom-vlc {
|
||||||
|
background-color: #ffa000;
|
||||||
|
}
|
||||||
|
|
||||||
|
#temperature {
|
||||||
|
}
|
||||||
|
|
||||||
|
#temperature.critical {
|
||||||
|
background-color: #eb4d4b;
|
||||||
|
}
|
||||||
|
|
||||||
|
#tray {
|
||||||
|
}
|
||||||
|
|
||||||
|
#idle_inhibitor {
|
||||||
|
}
|
||||||
|
|
||||||
|
#idle_inhibitor.activated {
|
||||||
|
background-color: #ecf0f1;
|
||||||
|
color: #2d3436;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mpd {
|
||||||
|
color: #2a5c45;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mpd.disconnected {
|
||||||
|
background-color: #f53c3c;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mpd.stopped {
|
||||||
|
background-color: #90b1b1;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mpd.paused {
|
||||||
|
background-color: #51a37a;
|
||||||
|
}
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="15" height="15"><path fill="none" d="M0 0h24v24H0z"/><path d="M3 3h18a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1zm9 12v2h6v-2h-6zm-3.586-3l-2.828 2.828L7 16.243 11.243 12 7 7.757 5.586 9.172 8.414 12z" fill="#FFFFFF"/></svg>
|
||||||
|
After Width: | Height: | Size: 366 B |
@@ -0,0 +1,8 @@
|
|||||||
|
<?xml version='1.0' encoding='iso-8859-1'?>
|
||||||
|
<svg fill="#FFFFFF" version="1.1" xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 137.144 137.144" xmlns:xlink="http://www.w3.org/1999/xlink" enable-background="new 0 0 137.144 137.144">
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<path d="m48.001,82.563c-1.108-0.18-2.255-0.276-3.429-0.276-9.468,0-17.143,6.14-17.143,13.715 0,7.574 7.675,13.714 17.143,13.714 9.468,0 17.143-6.14 17.143-13.714v-42.668l34.286-3.81v26.182c-1.108-0.18-2.254-0.276-3.428-0.276-9.468,0-17.143,6.14-17.143,13.714 0,7.574 7.675,13.715 17.143,13.715s17.143-6.141 17.143-13.715v-61.715l-61.715,6.857v48.277zm61.714-82.563h-82.286c-15.149,0-27.429,12.28-27.429,27.429v82.287c0,15.148 12.28,27.429 27.429,27.429h82.286c15.149,0 27.429-12.28 27.429-27.429v-82.287c0-15.149-12.28-27.429-27.429-27.429zm13.715,102.858c0,11.362-9.21,20.571-20.571,20.571h-68.573c-11.361,0-20.572-9.21-20.572-20.571v-68.572c0-11.361 9.21-20.572 20.572-20.572h68.572c11.361,0 20.571,9.21 20.571,20.572v68.572z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.0 KiB |
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" data-name="Layer 1" viewBox="0 0 50 64"><rect width="8" height="8" x="1" y="4" fill="none" stroke="#FFFFFF" stroke-miterlimit="10" stroke-width="4"/><rect width="8" height="8" x="1" y="20" fill="none" stroke="#FFFFFF" stroke-miterlimit="10" stroke-width="4"/><rect width="8" height="8" x="1" y="36" fill="none" stroke="#FFFFFF" stroke-miterlimit="10" stroke-width="4"/><rect width="8" height="8" x="1" y="52" fill="none" stroke="#FFFFFF" stroke-miterlimit="10" stroke-width="4"/><line x1="19" x2="63" y1="8" y2="8" fill="none" stroke="#FFFFFF" stroke-miterlimit="10" stroke-width="4"/><line x1="19" x2="55" y1="24" y2="24" fill="none" stroke="#FFFFFF" stroke-miterlimit="10" stroke-width="4"/><line x1="19" x2="47" y1="40" y2="40" fill="none" stroke="#FFFFFF" stroke-miterlimit="10" stroke-width="4"/><line x1="19" x2="55" y1="56" y2="56" fill="none" stroke="#FFFFFF" stroke-miterlimit="10" stroke-width="4"/></svg>
|
||||||
|
After Width: | Height: | Size: 1.0 KiB |
@@ -0,0 +1 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="#FFFFFF" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-chrome"><circle cx="12" cy="12" r="10"></circle><circle cx="12" cy="12" r="4"></circle><line x1="21.17" y1="8" x2="12" y2="8"></line><line x1="3.95" y1="6.06" x2="8.54" y2="14"></line><line x1="10.88" y1="21.94" x2="15.46" y2="14"></line></svg>
|
||||||
|
After Width: | Height: | Size: 444 B |
@@ -0,0 +1,252 @@
|
|||||||
|
{
|
||||||
|
"layer": "bottom",
|
||||||
|
"height": 16,
|
||||||
|
"modules-left": [
|
||||||
|
"sway/workspaces",
|
||||||
|
"sway/mode"
|
||||||
|
],
|
||||||
|
|
||||||
|
"modules-center": [
|
||||||
|
"cpu",
|
||||||
|
"custom/gap",
|
||||||
|
"memory",
|
||||||
|
"custom/gap",
|
||||||
|
"disk",
|
||||||
|
"custom/gap",
|
||||||
|
"backlight",
|
||||||
|
"custom/gap",
|
||||||
|
"pulseaudio",
|
||||||
|
"custom/gap",
|
||||||
|
"battery",
|
||||||
|
"custom/gap",
|
||||||
|
"network"
|
||||||
|
],
|
||||||
|
|
||||||
|
"modules-right": [
|
||||||
|
"custom/gap",
|
||||||
|
"clock"
|
||||||
|
],
|
||||||
|
|
||||||
|
"sway/workspaces": {
|
||||||
|
"persistent_workspaces": {
|
||||||
|
"1": [],
|
||||||
|
"2": [],
|
||||||
|
"3": [],
|
||||||
|
"4": [],
|
||||||
|
"5": [],
|
||||||
|
"6": [],
|
||||||
|
"7": [],
|
||||||
|
"8": [],
|
||||||
|
"9": []
|
||||||
|
},
|
||||||
|
"all-outputs": true
|
||||||
|
},
|
||||||
|
"custom/terminal": {
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec foot",
|
||||||
|
},
|
||||||
|
"custom/filemanager": {
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec 'nautilus --new-window'",
|
||||||
|
},
|
||||||
|
"custom/browser": {
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec 'chromium --ozone-platform-hint=auto'",
|
||||||
|
},
|
||||||
|
"custom/libre": {
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec libreoffice",
|
||||||
|
},
|
||||||
|
"custom/mmfm": {
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec mmfm",
|
||||||
|
},
|
||||||
|
"custom/vmp": {
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec vmp",
|
||||||
|
},
|
||||||
|
"custom/printer": {
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec system-config-printer",
|
||||||
|
},
|
||||||
|
"custom/software": {
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec QT_QPA_PLATFORM=xcb appstore",
|
||||||
|
},
|
||||||
|
"custom/apps": {
|
||||||
|
"tooltip-format": "desktop",
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec 'wofi --show run'",
|
||||||
|
},
|
||||||
|
"custom/overview": {
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec 'echo 2 > /tmp/sov'",
|
||||||
|
},
|
||||||
|
"custom/settings": {
|
||||||
|
"tooltip-format": "shutdown/logout",
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "swaymsg exec 'echo 2 > /tmp/wcp'",
|
||||||
|
},
|
||||||
|
"sway/language": {
|
||||||
|
"format": "{short} {variant}",
|
||||||
|
},
|
||||||
|
"sway/mode": {
|
||||||
|
"format": "<span style=\"italic\">{}</span>"
|
||||||
|
},
|
||||||
|
"sway/window":{
|
||||||
|
"max-length":50
|
||||||
|
},
|
||||||
|
"idle_inhibitor": {
|
||||||
|
"format": "idle | ",
|
||||||
|
"format-icons": {
|
||||||
|
"activated": "",
|
||||||
|
"deactivated": ""
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tray": {
|
||||||
|
"icon-size": 8,
|
||||||
|
"spacing": 20
|
||||||
|
},
|
||||||
|
"custom/clock-icon": {
|
||||||
|
"format": "<span font_family='Font Awesome 6' size='x-large'></span>",
|
||||||
|
"interval": "once",
|
||||||
|
},
|
||||||
|
"clock": {
|
||||||
|
"timezone": "America/Denver",
|
||||||
|
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
|
||||||
|
"format-alt": " {:%Y-%m-%d} ",
|
||||||
|
"format": " {:%H:%M} "
|
||||||
|
},
|
||||||
|
"custom/cpu-icon": {
|
||||||
|
"format": "<span font_family='Font Awesome 6' size='x-large'></span>",
|
||||||
|
"interval": "once"
|
||||||
|
},
|
||||||
|
"cpu": {
|
||||||
|
"format": "[cpu:{usage:02}%]",
|
||||||
|
"tooltip": false,
|
||||||
|
"on-click": "lxtask"
|
||||||
|
},
|
||||||
|
"custom/mem-icon": {
|
||||||
|
"format": "<span font_family='Font Awesome 6' size='x-large'></span>",
|
||||||
|
"interval": "once",
|
||||||
|
},
|
||||||
|
"memory": {
|
||||||
|
"interval": 20,
|
||||||
|
"format": "[mem:{avail:0.1f}]",
|
||||||
|
"on-click": "lxtask"
|
||||||
|
},
|
||||||
|
"custom/disc-icon": {
|
||||||
|
"format": "<span font_family='Font Awesome 6' size='xx-large'></span>",
|
||||||
|
"interval": "once",
|
||||||
|
},
|
||||||
|
"disk":{
|
||||||
|
"interval": 60,
|
||||||
|
"format":"[ssd:{free}]"
|
||||||
|
},
|
||||||
|
"custom/light-icon": {
|
||||||
|
"format": "<span font_family='Font Awesome 6' size='medium'></span>",
|
||||||
|
"interval": "once",
|
||||||
|
},
|
||||||
|
"backlight": {
|
||||||
|
"format": "[lcd:{percent}%]",
|
||||||
|
"format-icons": ["", ""],
|
||||||
|
"on-scroll-up" : "brightnessctl s 1%+",
|
||||||
|
"on-scroll-down" : "brightnessctl s 1%-"
|
||||||
|
},
|
||||||
|
"custom/batt-icon": {
|
||||||
|
"format": "<span font_family='Font Awesome 6' size='xx-large'></span>",
|
||||||
|
"interval": "once",
|
||||||
|
},
|
||||||
|
"battery": {
|
||||||
|
"states": {
|
||||||
|
// "good": 95,
|
||||||
|
"warning": 30,
|
||||||
|
"critical": 15
|
||||||
|
},
|
||||||
|
"format": "[bat:{capacity}%]",
|
||||||
|
"format-charging": "[bat:{capacity}%]",
|
||||||
|
"format-plugged": "[bat:{capacity}%]",
|
||||||
|
"format-alt": "[bat:{time}]",
|
||||||
|
"format-icons": ["", "", "", "", ""]
|
||||||
|
},
|
||||||
|
"battery#bat2": {
|
||||||
|
"bat": "BAT2"
|
||||||
|
},
|
||||||
|
"custom/net-icon": {
|
||||||
|
"format": " <span font_family='Font Awesome 6' size='xx-large'></span> ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "iwgtk"
|
||||||
|
},
|
||||||
|
"network": {
|
||||||
|
"format-wifi": "[{essid} {ipaddr}]",
|
||||||
|
"format-ethernet": "[Eth {ipaddr}]",
|
||||||
|
"format-linked": "[{ifname} (CONF)]",
|
||||||
|
"format-disconnected": "[Disconnected]",
|
||||||
|
"on-click": "nm-connection-editor"
|
||||||
|
},
|
||||||
|
"custom/vol-icon": {
|
||||||
|
"format": "<span font_family='Font Awesome 6' size='xx-large'></span> ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "pavucontrol"
|
||||||
|
},
|
||||||
|
"custom/energy-icon": {
|
||||||
|
"format": " <span font_family='Font Awesome 6' size='small'></span> ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "tlpui"
|
||||||
|
},
|
||||||
|
"custom/hardware-icon": {
|
||||||
|
"format": "<span font_family='Font Awesome 6' size='xx-large'></span> ",
|
||||||
|
"interval": "once",
|
||||||
|
"on-click": "GDK_BACKEND=x11 hardinfo"
|
||||||
|
},
|
||||||
|
"pulseaudio": {
|
||||||
|
"format": "[vol:{volume}%]",
|
||||||
|
"format-bluetooth": "[vol:{volume}%]",
|
||||||
|
"format-bluetooth-muted": "[Muted]",
|
||||||
|
"format-muted": "[Muted {format_source}]",
|
||||||
|
"format-source": "[{volume}%]",
|
||||||
|
"format-source-muted": "[Muted]",
|
||||||
|
"format-icons": {
|
||||||
|
"headphone": "",
|
||||||
|
"hands-free": "",
|
||||||
|
"headset": "",
|
||||||
|
"phone": "",
|
||||||
|
"portable": "",
|
||||||
|
"car": "",
|
||||||
|
"default": ["", "", ""]
|
||||||
|
},
|
||||||
|
"on-click": "pavucontrol"
|
||||||
|
},
|
||||||
|
"custom/lang-icon": {
|
||||||
|
"format": "<span font_family='Font Awesome 6' size='xx-large'></span> |",
|
||||||
|
"interval": "once",
|
||||||
|
},
|
||||||
|
"custom/gap": {
|
||||||
|
"format": " ",
|
||||||
|
"interval": "once",
|
||||||
|
},
|
||||||
|
"custom/dash": {
|
||||||
|
"format": "--",
|
||||||
|
"interval": "once",
|
||||||
|
},
|
||||||
|
"custom/lang": {
|
||||||
|
"format": " kbd:{} ",
|
||||||
|
"exec" : "swaymsg -t get_inputs | jq -r '.[] | select(.identifier == \"1165:49408:ITE_Tech._Inc._ITE_Device(8910)_Keyboard\") | .xkb_active_layout_name' | tail -1 | cut -c1,2",
|
||||||
|
"interval": 60
|
||||||
|
},
|
||||||
|
"tray": {
|
||||||
|
"icon-size": 14,
|
||||||
|
"spacing": 10
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<svg width="14" height="14" viewBox="0 0 20 16" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
|
<!-- Generator: Sketch 52.5 (67469) - http://www.bohemiancoding.com/sketch -->
|
||||||
|
<title>folder</title>
|
||||||
|
<desc>Created with Sketch.</desc>
|
||||||
|
<g id="Icons" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
||||||
|
<g id="Rounded" transform="translate(-204.000000, -2284.000000)">
|
||||||
|
<g id="File" transform="translate(100.000000, 2226.000000)">
|
||||||
|
<g id="-Round-/-File-/-folder" transform="translate(102.000000, 54.000000)">
|
||||||
|
<g>
|
||||||
|
<polygon id="Path" points="0 0 24 0 24 24 0 24"></polygon>
|
||||||
|
<path d="M10.59,4.59 C10.21,4.21 9.7,4 9.17,4 L4,4 C2.9,4 2.01,4.9 2.01,6 L2,18 C2,19.1 2.9,20 4,20 L20,20 C21.1,20 22,19.1 22,18 L22,8 C22,6.9 21.1,6 20,6 L12,6 L10.59,4.59 Z" id="🔹-Icon-Color" fill="#FFFFFF"></path>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.1 KiB |
@@ -0,0 +1 @@
|
|||||||
|
waybar status bar configuration
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg width="15" height="15" viewBox="0 0 20 20" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||||
|
<!-- Generator: Sketch 3.8.1 (29687) - http://www.bohemiancoding.com/sketch -->
|
||||||
|
<title>image_picture [#971]</title>
|
||||||
|
<desc>Created with Sketch.</desc>
|
||||||
|
<defs></defs>
|
||||||
|
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
||||||
|
<g id="Dribbble-Light-Preview" transform="translate(-420.000000, -3881.000000)" fill="#FFFFFF">
|
||||||
|
<g id="icons" transform="translate(56.000000, 160.000000)">
|
||||||
|
<path d="M376.083,3725.667 C376.083,3724.562 376.978,3723.667 378.083,3723.667 C379.188,3723.667 380.083,3724.562 380.083,3725.667 C380.083,3726.772 379.188,3727.667 378.083,3727.667 C376.978,3727.667 376.083,3726.772 376.083,3725.667 L376.083,3725.667 Z M382,3733.086 L377.987,3729.074 L377.971,3729.089 L377.955,3729.074 L376.525,3730.504 L371.896,3725.876 L371.881,3725.892 L371.865,3725.876 L366,3731.741 L366,3723 L382,3723 L382,3733.086 Z M364,3737 L384,3737 L384,3721 L364,3721 L364,3737 Z" id="image_picture-[#971]"></path>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.2 KiB |
@@ -0,0 +1,7 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <svg width="14" height="14
|
||||||
|
" viewBox="0 0 64 64" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="M25 6.75H11C8.65279 6.75 6.75 8.65279 6.75 11V25C6.75 27.3472 8.65279 29.25 11 29.25H25C27.3472 29.25 29.25 27.3472 29.25 25V11C29.25 8.65279 27.3472 6.75 25 6.75Z" fill="white"/>
|
||||||
|
<path d="M53 6.75H39C36.6528 6.75 34.75 8.65279 34.75 11V25C34.75 27.3472 36.6528 29.25 39 29.25H53C55.3472 29.25 57.25 27.3472 57.25 25V11C57.25 8.65279 55.3472 6.75 53 6.75Z" fill="white"/>
|
||||||
|
<path d="M25 34.75H11C8.65279 34.75 6.75 36.6528 6.75 39V53C6.75 55.3472 8.65279 57.25 11 57.25H25C27.3472 57.25 29.25 55.3472 29.25 53V39C29.25 36.6528 27.3472 34.75 25 34.75Z" fill="white"/>
|
||||||
|
<path d="M53 34.75H39C36.6528 34.75 34.75 36.6528 34.75 39V53C34.75 55.3472 36.6528 57.25 39 57.25H53C55.3472 57.25 57.25 55.3472 57.25 53V39C57.25 36.6528 55.3472 34.75 53 34.75Z" fill="white"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 929 B |
@@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <svg xmlns="http://www.w3.org/2000/svg" fill="#FFFFFF" width="14" height="14" viewBox="0 0 24 24">
|
||||||
|
<g>
|
||||||
|
<path fill="none" d="M0 0h24v24H0z"/>
|
||||||
|
<path d="M7 17h10v5H7v-5zm12 3v-5H5v5H3a1 1 0 0 1-1-1V9a1 1 0 0 1 1-1h18a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1h-2zM5 10v2h3v-2H5zm2-8h10a1 1 0 0 1 1 1v3H6V3a1 1 0 0 1 1-1z"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 400 B |
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?><svg fill="#FFFFFF" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="12" height="12" viewBox="0 0 122.88 117.824" enable-background="new 0 0 122.88 117.824" xml:space="preserve"><g><path fill-rule="evenodd" clip-rule="evenodd" d="M122.774,16.459L122.774,16.459c0,5.393-4.412,9.805-9.805,9.805H92.202 c1.457-2.919,2.278-6.212,2.278-9.697c0-3.571-0.861-6.941-2.387-9.913h20.876C118.362,6.654,122.774,11.066,122.774,16.459 L122.774,16.459z M89.306,101.257c0,9.15-7.418,16.567-16.568,16.567s-16.567-7.417-16.567-16.567 c0-9.149,7.417-16.567,16.567-16.567S89.306,92.107,89.306,101.257L89.306,101.257z M122.869,101.148L122.869,101.148 c0,5.393-4.413,9.805-9.806,9.805H92.202c1.457-2.919,2.278-6.212,2.278-9.696c0-3.571-0.861-6.941-2.387-9.913h20.97 C118.457,91.344,122.869,95.756,122.869,101.148L122.869,101.148z M53.272,110.953H9.816c-5.393,0-9.805-4.412-9.805-9.805l0,0 c0-5.393,4.412-9.805,9.805-9.805h43.565c-1.525,2.972-2.387,6.342-2.387,9.913C50.994,104.741,51.815,108.034,53.272,110.953 L53.272,110.953z M28.326,58.717c0,9.149,7.418,16.567,16.568,16.567c9.149,0,16.567-7.418,16.567-16.567 c0-9.15-7.418-16.568-16.567-16.568C35.744,42.148,28.326,49.566,28.326,58.717L28.326,58.717z M0,58.608L0,58.608 c0,5.393,4.414,9.805,9.805,9.805h15.675c-1.457-2.92-2.278-6.169-2.278-9.696c0-3.528,0.861-6.941,2.387-9.914H9.805 C4.412,48.803,0,53.215,0,58.608L0,58.608z M64.409,68.413h48.666c5.392,0,9.805-4.412,9.805-9.805l0,0 c0-5.394-4.412-9.806-9.805-9.806H64.301c1.525,2.973,2.387,6.386,2.387,9.914C66.688,62.244,65.866,65.493,64.409,68.413 L64.409,68.413z M89.306,16.567c0,9.15-7.418,16.567-16.568,16.567S56.17,25.718,56.17,16.567C56.17,7.417,63.587,0,72.737,0 S89.306,7.417,89.306,16.567L89.306,16.567z M53.272,26.264H9.853c-5.393,0-9.805-4.413-9.805-9.805l0,0 c0-5.393,4.412-9.805,9.805-9.805h43.528c-1.525,2.972-2.387,6.342-2.387,9.913C50.994,20.052,51.815,23.345,53.272,26.264 L53.272,26.264z"/></g></svg>
|
||||||
|
After Width: | Height: | Size: 2.0 KiB |
@@ -0,0 +1,9 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 23.0.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<svg fill="#FFFFFF" version="1.1" id="Icons" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0" y="0" width="14" height="14"
|
||||||
|
viewBox="0 0 32 32" style="enable-background:new 0 0 32 32;" xml:space="preserve">
|
||||||
|
<path d="M29.6,5.2C29.3,5,29,4.9,28.7,5.1c-4.3,1.4-8.7,0.3-12-2.8c-0.4-0.4-1-0.4-1.4,0c-3.3,3.1-7.7,4.2-12,2.8
|
||||||
|
C3,4.9,2.7,5,2.4,5.2C2.2,5.4,2,5.7,2,6c0,15.7,6.9,20.9,13.6,23.9C15.7,30,15.9,30,16,30s0.3,0,0.4-0.1C23.1,26.9,30,21.7,30,6
|
||||||
|
C30,5.7,29.8,5.4,29.6,5.2z M21.7,13.7l-6,6C15.5,19.9,15.3,20,15,20s-0.5-0.1-0.7-0.3l-3-3c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0
|
||||||
|
l2.3,2.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0S22.1,13.3,21.7,13.7z"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 805 B |
@@ -0,0 +1,304 @@
|
|||||||
|
* {
|
||||||
|
border: 0;
|
||||||
|
border-radius: 0;
|
||||||
|
/* `otf-font-awesome` is required to be installed for icons */
|
||||||
|
/*font-family: Roboto, Helvetica, Arial, sans-serif;*/
|
||||||
|
/*font-family: Ubuntu;*/
|
||||||
|
font-family: "Terminus";
|
||||||
|
font-size: 16px;
|
||||||
|
font-weight: bold;
|
||||||
|
/* min-height: 16px; */
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar {
|
||||||
|
background-color: rgba(0, 0, 0, 0);
|
||||||
|
color: #dedede;
|
||||||
|
/* border-bottom: 0.5px solid rgba(0, 0, 0, 0.1); */
|
||||||
|
|
||||||
|
/* transition-property: background-color; */
|
||||||
|
/* transition-duration: .5s; */
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar.hidden {
|
||||||
|
opacity: 0.2;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
window#waybar.empty {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
window#waybar.solo {
|
||||||
|
background-color: #FFFFFF;
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
window#waybar.termite {
|
||||||
|
background-color: #3F3F3F;
|
||||||
|
}
|
||||||
|
|
||||||
|
window#waybar.chromium {
|
||||||
|
background-color: #000000;
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#tray {
|
||||||
|
margin-right: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces {
|
||||||
|
margin-left: 2px;
|
||||||
|
margin-top: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button {
|
||||||
|
min-width: 15px;
|
||||||
|
padding-left: 3px;
|
||||||
|
padding-right: 3px;
|
||||||
|
/* margin: 0 0px; */
|
||||||
|
background-color: transparent;
|
||||||
|
color: #aeaeae;
|
||||||
|
/* border-bottom: 1px solid rgba(255,255,255,0.7); */
|
||||||
|
}
|
||||||
|
|
||||||
|
/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
|
||||||
|
#workspaces button:hover {
|
||||||
|
background: rgba(0, 0, 0, 0.2);
|
||||||
|
box-shadow: inherit;
|
||||||
|
/* border-bottom: 1px solid #ffffff; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.visible {
|
||||||
|
/* border-bottom: 1px solid rgba(255, 255, 255, 1.0); */
|
||||||
|
color: #666666;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.focused {
|
||||||
|
/* border-bottom: 1px solid rgba(255, 255, 255, 1.0); */
|
||||||
|
color: #fefefe;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.urgent {
|
||||||
|
color: #eb4d4b;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.persistent {
|
||||||
|
color: #555;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mode {
|
||||||
|
background-color: #64727D;
|
||||||
|
/* border-bottom: 1px solid #ffffff; */
|
||||||
|
}
|
||||||
|
|
||||||
|
#backlight,
|
||||||
|
#pulseaudio,
|
||||||
|
#custom-lang,
|
||||||
|
#disk,
|
||||||
|
#battery,
|
||||||
|
#memory,
|
||||||
|
#network,
|
||||||
|
#cpu
|
||||||
|
{
|
||||||
|
color: rgba(255,255,255,0.3);
|
||||||
|
background-color: transparent;
|
||||||
|
/* border-bottom: 1px solid rgba(255, 255, 255, 0.7); */
|
||||||
|
}
|
||||||
|
|
||||||
|
#clock,
|
||||||
|
#temperature,
|
||||||
|
#custom-media,
|
||||||
|
#custom-wlogout,
|
||||||
|
#custom-pamac,
|
||||||
|
#tray,
|
||||||
|
#mode,
|
||||||
|
#idle_inhibitor,
|
||||||
|
#mpd {
|
||||||
|
color: #dedede;
|
||||||
|
/* border-bottom: 1px solid rgba(255, 255, 255, 0.7); */
|
||||||
|
margin-top: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#clock {
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery {
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.charging {
|
||||||
|
background-color: #26A65B;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes blink {
|
||||||
|
to {
|
||||||
|
background-color: #ffffff;
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery.critical:not(.charging) {
|
||||||
|
background-color: #f53c3c;
|
||||||
|
color: #ffffff;
|
||||||
|
animation-name: blink;
|
||||||
|
animation-duration: 0.5s;
|
||||||
|
animation-timing-function: linear;
|
||||||
|
animation-iteration-count: infinite;
|
||||||
|
animation-direction: alternate;
|
||||||
|
}
|
||||||
|
|
||||||
|
label:focus {
|
||||||
|
background-color: #000000;
|
||||||
|
}
|
||||||
|
|
||||||
|
#cpu {
|
||||||
|
}
|
||||||
|
|
||||||
|
#memory {
|
||||||
|
}
|
||||||
|
|
||||||
|
#backlight {
|
||||||
|
}
|
||||||
|
|
||||||
|
#network {
|
||||||
|
}
|
||||||
|
|
||||||
|
#network.disconnected {
|
||||||
|
background-color: #f53c3c;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio {
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-apps {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/apps.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
margin-left: 5px;
|
||||||
|
margin-top: 7px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-terminal {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/terminal.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
margin-top: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-filemanager {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/filemanager.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
margin-left: 9px;
|
||||||
|
margin-top: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-browser {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/browser.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
margin-left: 7px;
|
||||||
|
margin-top: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-libre {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/word.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
margin-left: 4px;
|
||||||
|
margin-top: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-mmfm {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/mmfm.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
/* background-position: center; */
|
||||||
|
margin-left: 7px;
|
||||||
|
margin-top: 7px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-vmp {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/vmp.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
/* background-position: center; */
|
||||||
|
margin-left: 9px;
|
||||||
|
margin-top: 7px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-printer {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/printer.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
margin-left: 4px;
|
||||||
|
margin-top: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-software {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/software.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
margin-top: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-overview {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/overview.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
margin-left: 4px;
|
||||||
|
margin-top: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-settings {
|
||||||
|
background-image: url('/home/milgra/.config/waybar/settings.svg');
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
margin-left: 5px;
|
||||||
|
margin-top: 7px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-month {
|
||||||
|
margin-top: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio.muted {
|
||||||
|
background-color: #90b1b1;
|
||||||
|
color: #2a5c45;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-media {
|
||||||
|
color: #2a5c45;
|
||||||
|
min-width: 100px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-media.custom-spotify {
|
||||||
|
background-color: #66cc99;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-media.custom-vlc {
|
||||||
|
background-color: #ffa000;
|
||||||
|
}
|
||||||
|
|
||||||
|
#temperature {
|
||||||
|
}
|
||||||
|
|
||||||
|
#temperature.critical {
|
||||||
|
background-color: #eb4d4b;
|
||||||
|
}
|
||||||
|
|
||||||
|
#tray {
|
||||||
|
}
|
||||||
|
|
||||||
|
#idle_inhibitor {
|
||||||
|
}
|
||||||
|
|
||||||
|
#idle_inhibitor.activated {
|
||||||
|
background-color: #ecf0f1;
|
||||||
|
color: #2d3436;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mpd {
|
||||||
|
color: #2a5c45;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mpd.disconnected {
|
||||||
|
background-color: #f53c3c;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mpd.stopped {
|
||||||
|
background-color: #90b1b1;
|
||||||
|
}
|
||||||
|
|
||||||
|
#mpd.paused {
|
||||||
|
background-color: #51a37a;
|
||||||
|
}
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="15" height="15"><path fill="none" d="M0 0h24v24H0z"/><path d="M3 3h18a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1zm9 12v2h6v-2h-6zm-3.586-3l-2.828 2.828L7 16.243 11.243 12 7 7.757 5.586 9.172 8.414 12z" fill="#FFFFFF"/></svg>
|
||||||
|
After Width: | Height: | Size: 366 B |
@@ -0,0 +1,8 @@
|
|||||||
|
<?xml version='1.0' encoding='iso-8859-1'?>
|
||||||
|
<svg fill="#FFFFFF" version="1.1" xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 137.144 137.144" xmlns:xlink="http://www.w3.org/1999/xlink" enable-background="new 0 0 137.144 137.144">
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<path d="m48.001,82.563c-1.108-0.18-2.255-0.276-3.429-0.276-9.468,0-17.143,6.14-17.143,13.715 0,7.574 7.675,13.714 17.143,13.714 9.468,0 17.143-6.14 17.143-13.714v-42.668l34.286-3.81v26.182c-1.108-0.18-2.254-0.276-3.428-0.276-9.468,0-17.143,6.14-17.143,13.714 0,7.574 7.675,13.715 17.143,13.715s17.143-6.141 17.143-13.715v-61.715l-61.715,6.857v48.277zm61.714-82.563h-82.286c-15.149,0-27.429,12.28-27.429,27.429v82.287c0,15.148 12.28,27.429 27.429,27.429h82.286c15.149,0 27.429-12.28 27.429-27.429v-82.287c0-15.149-12.28-27.429-27.429-27.429zm13.715,102.858c0,11.362-9.21,20.571-20.571,20.571h-68.573c-11.361,0-20.572-9.21-20.572-20.571v-68.572c0-11.361 9.21-20.572 20.572-20.572h68.572c11.361,0 20.571,9.21 20.571,20.572v68.572z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 1.0 KiB |
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <svg fill="white" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" width="14" height="14"><title>Document</title><g id="Document"><path d="M26.869,8a2.99,2.99,0,0,0-.748-1.293L22.293,2.879A2.99,2.99,0,0,0,21,2.131V6a2,2,0,0,0,2,2Z"/><path d="M23,10a4,4,0,0,1-4-4V2H10A5,5,0,0,0,5,7V25a5,5,0,0,0,5,5H22a5,5,0,0,0,5-5V10ZM11,10h4a1,1,0,0,1,0,2H11a1,1,0,0,1,0-2Zm8,14H11a1,1,0,0,1,0-2h8a1,1,0,0,1,0,2Zm2-4H11a1,1,0,0,1,0-2H21a1,1,0,0,1,0,2Zm0-4H11a1,1,0,0,1,0-2H21a1,1,0,0,1,0,2Z"/></g></svg>
|
||||||
|
After Width: | Height: | Size: 550 B |
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <svg fill="white" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" width="14" height="14"><title>Document</title><g id="Document"><path d="M26.869,8a2.99,2.99,0,0,0-.748-1.293L22.293,2.879A2.99,2.99,0,0,0,21,2.131V6a2,2,0,0,0,2,2Z"/><path d="M23,10a4,4,0,0,1-4-4V2H10A5,5,0,0,0,5,7V25a5,5,0,0,0,5,5H22a5,5,0,0,0,5-5V10ZM11,10h4a1,1,0,0,1,0,2H11a1,1,0,0,1,0-2Zm8,14H11a1,1,0,0,1,0-2h8a1,1,0,0,1,0,2Zm2-4H11a1,1,0,0,1,0-2H21a1,1,0,0,1,0,2Zm0-4H11a1,1,0,0,1,0-2H21a1,1,0,0,1,0,2Z"/></g></svg>
|
||||||
|
After Width: | Height: | Size: 550 B |