init commit

This commit is contained in:
2024-05-14 12:29:49 +03:00
commit 29ce74f3f6
209 changed files with 17530 additions and 0 deletions

380
sway/config Normal file
View File

@@ -0,0 +1,380 @@
# Set inner/outer gaps
gaps inner 5
input * {
xkb_layout "us,ua"
xkb_options "grp:caps_toggle"
}
set $mod Mod4
set $foot ~/.config/hypr/scripts/terminal
set $screenshot ~/.config/hypr/scripts/rofi_screenshot
exec_always {
gsettings set org.gnome.desktop.interface text-scaling-factor 1.33
gsettings set org.gnome.desktop.interface cursor-size 32
}
output * bg ~/.config/backgrounds/eva.jpeg fill
set $left h
set $down j
set $up k
set $right l
set $rosewater #f4dbd6
set $flamingo #f0c6c6
set $pink #f5bde6
set $mauve #c6a0f6
set $red #ed8796
set $maroon #ee99a0
set $peach #f5a97f
set $green #a6da95
set $teal #8bd5ca
set $sky #91d7e3
set $sapphire #7dc4e4
set $blue #8aadf4
set $lavender #b7bdf8
set $text #cad3f5
set $subtext1 #b8c0e0
set $subtext0 #a5adcb
set $overlay2 #939ab7
set $overlay1 #8087a2
set $overlay0 #6e738d
set $surface2 #5b6078
set $surface1 #494d64
set $surface0 #363a4f
set $base #24273a
set $mantle #1e2030
set $crust #181926
# Hide titlebar on windows:
default_border pixel 2
# Default Font
# font pango:Noto Sans Regular 10
font FiraSans Nerd Font 13
# Thin borders:
smart_borders off
# Title format for windows
for_window [shell="xdg_shell"] title_format "%title (%app_id)"
for_window [shell="x_wayland"] title_format "%class - %title"
# Set gaps for windows with rounded corners
for_window [class="^.*"] border pixel 2
for_window [class="^.*"] border radius 30
for_window [app_id="^.*"] border pixel 2
for_window [app_id="^.*"] border radius 30
set $opacity 1
for_window [class=".*"] opacity $opacity
for_window [app_id=".*"] opacity $opacity
## Window decoration
# class border backgr. text indicator child_border
# client.focused $mauve $base $text $lavender $mauve
# client.focused_inactive $mauve $base $text $mauve $mauve
# client.unfocused $mauve $base $text $mauve $mauve
# client.urgent $peach $base $peach $overlay0 $peach
# client.placeholder $base $base $text $overlay0 $overlay0
# client.background $base
# client.focused $base $base $text $mauve $base
# client.focused_inactive $base $base $text $base $base
# client.unfocused $base $base $text $base $base
# client.urgent $peach $base $peach $overlay0 $peach
# client.placeholder $base $base $text $overlay0 $base
# client.background $base
client.focused $mauve $base $text $lavender $mauve
client.focused_inactive $mantle $base $text $mantle $mantle
client.unfocused $mantle $base $text $mantle $mantle
client.urgent $peach $base $peach $overlay0 $peach
client.placeholder $base $base $text $overlay0 $overlay0
client.background $base
set $menu rofi -dmenu
set $launcher ~/.config/hypr/scripts/rofi_launcher
set $powermenu nwgbar -f
bindsym $mod+Return exec $foot
bindsym print exec grimshot --notify copy area
#bindsym $mod+Shift+w exec ~/.config/waybar/scripts/swap.sh
bindsym $mod+Shift+x workspace number 10; exec xournalpp
# Activities and workspaces
bindsym $mod+Shift+p exec swayr switch-workspace-or-window
# Switch to the last recently used window
bindsym $mod+Tab exec swayr switch-to-urgent-or-lru-window
#bindsym Mod3 exec swaymsg input "1:1:AT_Translated_Set_2_keyboard" xkb_switch_layout next
# Open the power menu
# bindsym $mod+Shift+e exec $powermenu
bindsym $mod+x exec $powermenu # ArchCraft shortcut
# Kill focused window
bindsym $mod+q kill
# Start your launcher
# bindsym $mod+d exec $menu
bindsym $mod+d exec $launcher
# Launcher
#bindsym $mod+Shift+d exec $launcher
floating_modifier $mod normal
# Reload the configuration file
bindsym $mod+Shift+c reload
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
# bindgesture swipe:right workspace prev
# bindgesture swipe:left workspace next
# 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
# 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
bindsym $mod+n exec $foot nvim ~/Documents/notes/ut3usw/$(date -I).md
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+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
#
# 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 "default"
}
bindsym $mod+r mode "resize"
# Resize floating windows with mouse scroll:
bindsym --whole-window --border $mod+button4 resize shrink height 5 px or 5 ppt
bindsym --whole-window --border $mod+button5 resize grow height 5 px or 5 ppt
bindsym --whole-window --border $mod+shift+button4 resize shrink width 5 px or 5 ppt
bindsym --whole-window --border $mod+shift+button5 resize grow width 5 px or 5 ppt
#
# Volume
#
bindsym XF86AudioRaiseVolume exec pamixer -ui 2 && pamixer --get-volume > $SWAYSOCK.wob
bindsym XF86AudioLowerVolume exec pamixer -ud 2 && pamixer --get-volume > $SWAYSOCK.wob
bindsym XF86AudioMute exec pamixer --toggle-mute && ( pamixer --get-mute && echo 0 > $SWAYSOCK.wob ) || pamixer --get-volume > $SWAYSOCK.wob
#
# Player
#
bindsym XF86AudioPlay exec playerctl play
bindsym XF86AudioPause exec playerctl pause
bindsym XF86AudioNext exec playerctl next
bindsym XF86AudioPrev exec playerctl previous
bindsym $mod+m exec $music
#
# Backlight
#
bindsym XF86MonBrightnessUp exec light -A 5 && light -G | cut -d'.' -f1 > $SWAYSOCK.wob
bindsym XF86MonBrightnessDown exec light -U 5 && light -G | cut -d'.' -f1 > $SWAYSOCK.wob
#
# App shortcuts
#
# bindsym $mod+n exec thunars
#bindsym $mod+n exec thunar
bindsym $mod+o workspace number 2; exec google-chrome --password-store=gnome-libsecret
bindsym $mod+Shift+o code
#bindsym Alt+print exec /usr/share/sway/scripts/grimshot --notify copy area
# set floating (nontiling)for apps needing it:
for_window [class="Yad" instance="yad"] floating enable
for_window [app_id="yad"] floating enable
for_window [app_id="blueman-manager"] floating enable, resize set width 40 ppt height 30 ppt
# set floating (nontiling) for special apps:
for_window [class="Xsane" instance="xsane"] floating enable
for_window [app_id="pavucontrol" ] floating enable, resize set width 40 ppt height 30 ppt
for_window [class="qt5ct" instance="qt5ct"] floating enable, resize set width 60 ppt height 50 ppt
for_window [class="Bluetooth-sendto" instance="bluetooth-sendto"] floating enable
for_window [app_id="pamac-manager"] floating enable, resize set width 80 ppt height 70 ppt
for_window [class="Lxappearance"] floating enable, resize set width 60 ppt height 50 ppt
# set floating for window roles
for_window [window_role="pop-up"] floating enable
for_window [window_role="bubble"] floating enable
for_window [window_role="task_dialog"] floating enable
for_window [window_role="Preferences"] floating enable
for_window [window_type="dialog"] floating enable
for_window [window_type="menu"] floating enable
for_window [window_role="About"] floating enable
for_window [title="File Operation Progress"] floating enable, border pixel 1, sticky enable, resize set width 40 ppt height 30 ppt
for_window [app_id="firedragon" title="Library"] floating enable, border pixel 1, sticky enable, resize set width 40 ppt height 30 ppt
for_window [app_id="floating_shell_portrait"] floating enable, border pixel 1, sticky enable, resize set width 30 ppt height 40 ppt
for_window [title="Picture in picture"] floating enable, sticky enable
for_window [title="nmtui"] floating enable, resize set width 50 ppt height 70 ppt
for_window [title="htop"] floating enable, resize set width 50 ppt height 70 ppt
for_window [app_id="xsensors"] floating enable
for_window [title="Save File"] floating enable
for_window [app_id="firedragon" title="firedragon — Sharing Indicator"] kill
# Inhibit idle
for_window [app_id="firedragon"] inhibit_idle fullscreen
for_window [app_id="Google Chrome"] inhibit_idle fullscreen
#
# Zoom Meeting App
#
# Default for all windows is non-floating.
#
# For pop up notification windows that don't use notifications api
for_window [app_id="zoom" title="^zoom$"] border none, floating enable
# For specific Zoom windows
for_window [app_id="zoom" title="^(Zoom|About)$"] border pixel, floating enable
for_window [app_id="zoom" title="Settings"] floating enable, floating_minimum_size 960 x 700
# Open Zoom Meeting windows on a new workspace (a bit hacky)
#for_window [app_id="zoom" title="Zoom Meeting(.*)?"] workspace next_on_output --create, move container to workspace current, floating disable, inhibit_idle open
for_window [class="(.*join\?action\=join.*|.*zoom.*)"] floating enable no_focus for_window [class="(.*join\?action\=join.*|.*zoom.*)" title="Zoom - Licensed Account"] floating disable no_focus for_window [class="(.*join\?action\=join.*|.*zoom.*)" title="Zoom - Free Account"] floating disable no_focus for_window [class="(.*join\?action\=join.*|.*zoom.*)" title="Zoom Meeting"] floating disable no_focus no_focus [title="^zoom\s?$"] no_focus [title="^join\?action=join.*$"]
seat seat0 fallback true
seat seat0 hide_cursor when-typing enable
seat seat0 idle_inhibit keyboard pointer switch
seat seat0 idle_wake keyboard switch
input type:touchpad {
dwt enabled
tap enabled
natural_scroll enabled
pointer_accel 0.35
}
exec mako
exec systemctl --user import-environment
#exec systemctl --user import-environment PATH DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP
exec dbus-update-activation-environment 2>/dev/null && \
dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP=sway
exec_always dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP=sway
exec_always systemctl --user start xdg-desktop-portal-wlr.service
exec --no-startup-id ~/.config/sway/scripts/start_keyring
#exec_always gnome-keyring-daemon --daemonize --start --components=gpg,pkcs11,secrets,ssh
exec_always pipewire
# Wob
exec mkfifo $SWAYSOCK.wob
# THIS DOESN'T WORK. --border-color etc. not valid
# exec tail -f $SWAYSOCK.wob | wob --border-color '#ffdcbb8c' --background-color '#cc3a3a3a' --bar-color '#ffdcbb8c'
exec tail -f $SWAYSOCK.wob | wob
exec nm-applet --indicator
exec /usr/libexec/xdg-desktop-portal
exec_always swayrd
exec_always ~/.config/sway/scripts/statusbar

4
sway/scripts/start_keyring Executable file
View File

@@ -0,0 +1,4 @@
#!/usr/bin/env bash
pkill -f --signal SIGTERM gnome-keyring-daemon
gnome-keyring-daemon --start --components=pkcs11,secrets,ssh
echo -n "" | secret-tool store --label='unlocker' "unlocker" "unlocker"

13
sway/scripts/statusbar Executable file
View File

@@ -0,0 +1,13 @@
#!/usr/bin/env bash
## Copyright (C) 2020-2023 Aditya Shakya <adi1090x@gmail.com>
##
## launch waybar with alt config
## Edited by yurihikari for Garuda Linux Sway
CONFIG="$HOME/.config/sway/waybar/config"
STYLE="$HOME/.config/sway/waybar/style.css"
if [[ ! `pidof waybar` ]]; then
waybar --bar main-bar --log-level error --config ${CONFIG} --style ${STYLE}
fi

273
sway/waybar/config Normal file
View File

@@ -0,0 +1,273 @@
{
"layer": "top", // Waybar at top layer
"position": "top", // Waybar position (top|bottom|left|right)
"height": 30,
"margin": "0 0 0 0",
//"width": 1350, // Waybar width
// Choose the order of the modules idle_inhibitor
"modules-left": [
"custom/launcher",
"sway/workspaces",
// "custom/swap",
"tray",
"sway/mode",
],
"modules-center": ["clock"],
"modules-right": [
"backlight",
"pulseaudio",
"custom/keyboard-layout",
"temperature",
"memory",
"battery",
"network",
"custom/power"
],
// Modules configuration
"sway/workspaces": {
"disable-scroll": true,
"all-outputs": true,
"format": "{icon}",
// "format": "< %g >",
// "format_focused" : "< %g ● >",
"format-icons": {
"1": "",
"2": "", //
"3": " ", //
"4": "",
"5": "",
"6": "",
"7": "",
"8": "",
"9": "",
"10": ""
}
},
"mpd": {
"tooltip": true,
"tooltip-format": "{artist} - {album} - {title} - Total Time : {totalTime:%M:%S}",
"format": " {elapsedTime:%M:%S}",
"format-disconnected": "⚠ Disconnected",
"format-stopped": " Not Playing",
"on-click": "mpc toggle",
"state-icons": {
"playing": "",
"paused": ""
}
},
"mpd#2": {
"format": "",
"format-disconnected": "",
"format-paused": "",
"format-stopped": "",
// Commands to execute on events
"on-click": "mpc -q pause && mpc -q prev && mpc -q start"
},
"mpd#3": {
"interval": 1,
"format": "{stateIcon}",
"format-disconnected": "",
"format-paused": "{stateIcon}",
"format-stopped": "",
"state-icons": {
"paused": "",
"playing": ""
},
// Commands to execute on events
"on-click": "mpc toggle"
},
"mpd#4": {
"format": "",
"format-disconnected": "",
"format-paused": "",
"format-stopped": "",
// Commands to execute on events
"on-click": "mpc -q pause && mpc -q next && mpc -q start"
},
"custom/swap": {
"on-click": "~/.config/sway/waybar/scripts/swap.sh",
"tooltip": "Swap between waybar configs",
"format": "Bg  "
},
"custom/mpd": {
"format": " {title} - {artist}",
"interval": 5,
"exec": "mpc current --format='\"title\":\"%title%\",\"artist\":\"%artist%\"'"
},
"custom/cava-internal": {
"exec": "sh ~/.config/sway/waybar/scripts/Cava.sh",
"format": "{}",
"tooltip": false,
//"on-click": "swaymsg reload & pkill waybar & waybar",
"layer": "below",
"output": "all"
},
"sway/mode": {
"format": "<span style=\"italic\">{}</span>"
},
"sway/window": {
"format": "~ {app_id}"
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
"activated": "",
"deactivated": ""
}
},
"tray": {
"icon-size": 14,
"spacing": 5
},
"clock": {
"tooltip-format": "<tt><small>{calendar}</small></tt>",
"calendar": {
"mode": "month",
"mode-mon-col": 3,
"weeks-pos": "right",
"on-scroll": 1,
"on-click-right": "mode",
"format": {
"months": "<span color='#ffead3'><b>{}</b></span>",
"days": "<span color='#ecc6d9'><b>{}</b></span>",
"weeks": "<span color='#99ffdd'><b>W{}</b></span>",
"weekdays": "<span color='#ffcc66'><b>{}</b></span>",
"today": "<span color='#ff6699'><b><u>{}</u></b></span>"
}
},
"actions": {
"on-click-right": "mode",
"on-click-forward": "tz_up",
"on-click-backward": "tz_down",
"on-scroll-up": "shift_up",
"on-scroll-down": "shift_down"
},
"format": " {:%a %d %b  %I:%M %p}", //12 hour format
// "format": " {:%d %m %Y  %H:%M}", //24 hour format
"format-alt": " {:%d/%m/%Y  %H:%M:%S}",
// //"timezones": [ "Kolkata" ],
// //"max-length": 200
"interval": 1
},
// "clock": {
// "format": " {:%H:%M:%S}",
// "format-alt": " {:%A, %B %d, %Y (%R)}",
// "tooltip-format": "<tt><small>{calendar}</small></tt>",
// "calendar": {
// "mode" : "month",
// "mode-mon-col" : 3,
// "weeks-pos" : "right",
// "on-scroll" : 1,
// "on-click-right": "mode",
// "format": {
// "months": "<span color='#ffead3'><b>{}</b></span>",
// "days": "<span color='#ecc6d9'><b>{}</b></span>",
// "weeks": "<span color='#99ffdd'><b>W{}</b></span>",
// "weekdays": "<span color='#ffcc66'><b>{}</b></span>",
// "today": "<span color='#ff6699'><b><u>{}</u></b></span>"
// }
// },
// "actions": {
// "on-click-right": "mode",
// "on-click-forward": "tz_up",
// "on-click-backward": "tz_down",
// "on-scroll-up": "shift_up",
// "on-scroll-down": "shift_down"
// },
// "interval": 1
// },
"cpu": {
"format": "﬙ {usage: >1}%",
"on-click": "foot -e btop"
},
"memory": {
"format": "󰍛 {: >3}%",
"on-click": "foot -e btop"
},
"temperature": {
// "thermal-zone": 2,
"hwmon-path": "/sys/class/hwmon/hwmon0/temp1_input",
"critical-threshold": 80,
// "format-critical": "{temperatureC}°C ",
"format": " {temperatureC}°C"
},
"backlight": {
// "device": "acpi_video1",
"format": "{icon} {percent: >3}%",
"format-icons": ["", ""],
// "on-scroll-down": "brightnessctl -c backlight set 5%-",
"on-scroll-down": "light -A 1 && light -G | cut -d'.' -f1 > $SWAYSOCK.wob",
// "on-scroll-up": "brightnessctl -c backlight set +5%"
"on-scroll-up": "light -U 1 && light -G | cut -d'.' -f1 > $SWAYSOCK.wob"
},
"battery": {
"states": {
// "good": 95,
"warning": 30,
"critical": 15
},
"format": "{icon} {capacity: >3}%",
// "format-good": "", // An empty format will hide the module
// "format-full": "",
"format-icons": ["", "", "", "", ""]
//"format-icons": ["", "", "", "", "", "", "", "", "", ""]
},
"network": {
// "interface": "wlp2s0", // (Optional) To force the use of this interface
"format": "⚠ Disabled",
"format-wifi": " {essid}",
// "format-ethernet": " {ifname}: {ipaddr}/{cidr}",
"format-ethernet": " Wired",
"format-disconnected": "⚠ Disconnected",
// "on-click": "alacritty -e nmtui"
"on-click": "nm-connection-editor"
},
"pulseaudio": {
"scroll-step": 1,
"format": "{icon} {volume: >3}%",
"format-bluetooth": "{icon} {volume: >3}%",
"format-muted": " muted",
"format-icons": {
"headphones": "",
"handsfree": "",
"headset": "",
"phone": "",
"portable": "",
"car": "",
"default": ["", ""]
},
"on-click": "pavucontrol",
"on-scroll-up": "pamixer -ui 2 && pamixer --get-volume > $SWAYSOCK.wob",
"on-scroll-down": "pamixer -ud 2 && pamixer --get-volume > $SWAYSOCK.wob"
},
"custom/pacman": {
"format": " {}",
"interval": 7200, // every two hours
"exec": "i=$(checkupdates); echo \"$i\" |wc -l; echo \"$i\" |column -t |tr '\n' '\r'", // # of updates and tooltip details
"exec-if": "exit 0", // always run; consider advanced run conditions
"on-click": "alacritty -e sudo pacman -Syu", // update system
"signal": 8
},
"custom/power": {
"format": "󰐥",
"on-click": "nwgbar",
"tooltip": false
},
"custom/keyboard-layout": {
"exec": "swaymsg -t get_inputs | grep -m1 'xkb_active_layout_name' | cut -d '\"' -f4",
// Interval set only as a fallback, as the value is updated by signal
"interval": 1,
"format": " {}", // Icon: keyboard
// Signal sent by Sway key binding (~/.config/sway/key-bindings)
"signal": 1, // SIGHUP
"tooltip": false,
"on-click": "~/.config/sway/waybar/scripts/keyhint.sh"
},
"custom/launcher": {
"format": " ",
"on-click": "exec nwg-drawer -c 7 -is 70 -spacing 23",
"tooltip": false
}
}

View File

@@ -0,0 +1,278 @@
{
"layer": "top", // Waybar at top layer
"position": "top", // Waybar position (top|bottom|left|right)
"height": 30,
"margin": "0 0 0 0",
//"width": 1350, // Waybar width
// Choose the order of the modules idle_inhibitor
"modules-left": [
"custom/launcher",
"sway/workspaces",
"custom/swap",
"tray",
"sway/mode",
"custom/cava-internal",
"mpd#2",
"mpd#3",
"mpd#4",
"mpd"
],
"modules-center": ["clock"],
"modules-right": [
"backlight",
"pulseaudio",
"custom/keyboard-layout",
"temperature",
"memory",
"battery",
"network",
"custom/power"
],
// Modules configuration
"sway/workspaces": {
"disable-scroll": true,
"all-outputs": true,
"format": "{icon}",
// "format": "< %g >",
// "format_focused" : "< %g ● >",
"format-icons": {
"1": "",
"2": "󰈹",
"3": "",
"4": "",
"5": "",
"6": "",
"7": "",
"8": "",
"9": "",
"10": ""
}
},
"mpd": {
"tooltip": true,
"tooltip-format": "{artist} - {album} - {title} - Total Time : {totalTime:%M:%S}",
"format": " {elapsedTime:%M:%S}",
"format-disconnected": "⚠ Disconnected",
"format-stopped": " Not Playing",
"on-click": "mpc toggle",
"state-icons": {
"playing": "",
"paused": ""
}
},
"mpd#2": {
"format": "",
"format-disconnected": "",
"format-paused": "",
"format-stopped": "",
// Commands to execute on events
"on-click": "mpc -q pause && mpc -q prev && mpc -q start"
},
"mpd#3": {
"interval": 1,
"format": "{stateIcon}",
"format-disconnected": "",
"format-paused": "{stateIcon}",
"format-stopped": "",
"state-icons": {
"paused": "",
"playing": ""
},
// Commands to execute on events
"on-click": "mpc toggle"
},
"mpd#4": {
"format": "",
"format-disconnected": "",
"format-paused": "",
"format-stopped": "",
// Commands to execute on events
"on-click": "mpc -q pause && mpc -q next && mpc -q start"
},
"custom/swap": {
"on-click": "~/.config/sway/waybar/scripts/swap.sh",
"tooltip": "Swap between waybar configs",
"format": "Bg  "
},
"custom/mpd": {
"format": " {title} - {artist}",
"interval": 5,
"exec": "mpc current --format='\"title\":\"%title%\",\"artist\":\"%artist%\"'"
},
"custom/cava-internal": {
"exec": "sh ~/.config/sway/waybar/scripts/Cava.sh",
"format": "{}",
"tooltip": false,
//"on-click": "swaymsg reload & pkill waybar & waybar",
"layer": "below",
"output": "all"
},
"sway/mode": {
"format": "<span style=\"italic\">{}</span>"
},
"sway/window": {
"format": "~ {app_id}"
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
"activated": "",
"deactivated": ""
}
},
"tray": {
"icon-size": 14,
"spacing": 5
},
"clock": {
"tooltip-format": "<tt><small>{calendar}</small></tt>",
"calendar": {
"mode": "month",
"mode-mon-col": 3,
"weeks-pos": "right",
"on-scroll": 1,
"on-click-right": "mode",
"format": {
"months": "<span color='#ffead3'><b>{}</b></span>",
"days": "<span color='#ecc6d9'><b>{}</b></span>",
"weeks": "<span color='#99ffdd'><b>W{}</b></span>",
"weekdays": "<span color='#ffcc66'><b>{}</b></span>",
"today": "<span color='#ff6699'><b><u>{}</u></b></span>"
}
},
"actions": {
"on-click-right": "mode",
"on-click-forward": "tz_up",
"on-click-backward": "tz_down",
"on-scroll-up": "shift_up",
"on-scroll-down": "shift_down"
},
"format": " {:%a %d %b  %I:%M %p}", //12 hour format
// "format": " {:%d %m %Y  %H:%M}", //24 hour format
"format-alt": " {:%d/%m/%Y  %H:%M:%S}",
// //"timezones": [ "Kolkata" ],
// //"max-length": 200
"interval": 1
},
// "clock": {
// "format": " {:%H:%M:%S}",
// "format-alt": " {:%A, %B %d, %Y (%R)}",
// "tooltip-format": "<tt><small>{calendar}</small></tt>",
// "calendar": {
// "mode" : "month",
// "mode-mon-col" : 3,
// "weeks-pos" : "right",
// "on-scroll" : 1,
// "on-click-right": "mode",
// "format": {
// "months": "<span color='#ffead3'><b>{}</b></span>",
// "days": "<span color='#ecc6d9'><b>{}</b></span>",
// "weeks": "<span color='#99ffdd'><b>W{}</b></span>",
// "weekdays": "<span color='#ffcc66'><b>{}</b></span>",
// "today": "<span color='#ff6699'><b><u>{}</u></b></span>"
// }
// },
// "actions": {
// "on-click-right": "mode",
// "on-click-forward": "tz_up",
// "on-click-backward": "tz_down",
// "on-scroll-up": "shift_up",
// "on-scroll-down": "shift_down"
// },
// "interval": 1
// },
"cpu": {
"format": "﬙ {usage: >3}%",
"on-click": "alacritty -e htop"
},
"memory": {
"format": "󰍛 {: >3}%",
"on-click": "alacritty -e htop"
},
"temperature": {
// "thermal-zone": 2,
"hwmon-path": "/sys/class/hwmon/hwmon1/temp1_input",
"critical-threshold": 80,
// "format-critical": "{temperatureC}°C ",
"format": " {temperatureC}°C"
},
"backlight": {
// "device": "acpi_video1",
"format": "{icon} {percent: >3}%",
"format-icons": ["", ""],
// "on-scroll-down": "brightnessctl -c backlight set 5%-",
"on-scroll-down": "light -A 5 && light -G | cut -d'.' -f1 > $SWAYSOCK.wob",
// "on-scroll-up": "brightnessctl -c backlight set +5%"
"on-scroll-up": "light -U 5 && light -G | cut -d'.' -f1 > $SWAYSOCK.wob"
},
"battery": {
"states": {
// "good": 95,
"warning": 30,
"critical": 15
},
"format": "{icon} {capacity: >3}%",
// "format-good": "", // An empty format will hide the module
// "format-full": "",
"format-icons": ["", "", "", "", ""]
//"format-icons": ["", "", "", "", "", "", "", "", "", ""]
},
"network": {
// "interface": "wlp2s0", // (Optional) To force the use of this interface
"format": "⚠ Disabled",
"format-wifi": " {essid}",
// "format-ethernet": " {ifname}: {ipaddr}/{cidr}",
"format-ethernet": " Wired",
"format-disconnected": "⚠ Disconnected",
// "on-click": "alacritty -e nmtui"
"on-click": "nm-connection-editor"
},
"pulseaudio": {
"scroll-step": 1,
"format": "{icon} {volume: >3}%",
"format-bluetooth": "{icon} {volume: >3}%",
"format-muted": " muted",
"format-icons": {
"headphones": "",
"handsfree": "",
"headset": "",
"phone": "",
"portable": "",
"car": "",
"default": ["", ""]
},
"on-click": "pavucontrol",
"on-scroll-up": "pamixer -ui 2 && pamixer --get-volume > $SWAYSOCK.wob",
"on-scroll-down": "pamixer -ud 2 && pamixer --get-volume > $SWAYSOCK.wob"
},
"custom/pacman": {
"format": " {}",
"interval": 7200, // every two hours
"exec": "i=$(checkupdates); echo \"$i\" |wc -l; echo \"$i\" |column -t |tr '\n' '\r'", // # of updates and tooltip details
"exec-if": "exit 0", // always run; consider advanced run conditions
"on-click": "alacritty -e sudo pacman -Syu", // update system
"signal": 8
},
"custom/power": {
"format": "󰐥",
"on-click": "nwgbar",
"tooltip": false
},
"custom/keyboard-layout": {
"exec": "swaymsg -t get_inputs | grep -m1 'xkb_active_layout_name' | cut -d '\"' -f4",
// Interval set only as a fallback, as the value is updated by signal
"interval": 1,
"format": " {}", // Icon: keyboard
// Signal sent by Sway key binding (~/.config/sway/key-bindings)
"signal": 1, // SIGHUP
"tooltip": false,
"on-click": "~/.config/waybar/scripts/keyhint.sh"
},
"custom/launcher": {
"format": " ",
"on-click": "exec nwg-drawer -c 7 -is 70 -spacing 23",
"tooltip": false
}
}

37
sway/waybar/machiatto.css Normal file
View File

@@ -0,0 +1,37 @@
/*
*
* Catppuccin Macchiato palette
* Maintainer: rubyowo
*
*/
@define-color base #24273a;
@define-color mantle #1e2030;
@define-color crust #181926;
@define-color text #cad3f5;
@define-color subtext0 #a5adcb;
@define-color subtext1 #b8c0e0;
@define-color surface0 #363a4f;
@define-color surface1 #494d64;
@define-color surface2 #5b6078;
@define-color overlay0 #6e738d;
@define-color overlay1 #8087a2;
@define-color overlay2 #939ab7;
@define-color blue #8aadf4;
@define-color lavender #b7bdf8;
@define-color sapphire #7dc4e4;
@define-color sky #91d7e3;
@define-color teal #8bd5ca;
@define-color green #a6da95;
@define-color yellow #eed49f;
@define-color peach #f5a97f;
@define-color maroon #ee99a0;
@define-color red #ed8796;
@define-color mauve #c6a0f6;
@define-color pink #f5bde6;
@define-color flamingo #f0c6c6;
@define-color rosewater #f4dbd6;

11
sway/waybar/scripts/Cava.sh Executable file
View File

@@ -0,0 +1,11 @@
#!/bin/bash
is_cava_ServerExist=`ps -ef|grep -m 1 cava|grep -v "grep"|wc -l`
if [ "$is_cava_ServerExist" = "0" ]; then
echo "cava_server not found" > /dev/null 2>&1
# exit;
elif [ "$is_cava_ServerExist" = "1" ]; then
killall cava
fi
exec cava -p ~/.config/cava/config1 | sed -u 's/;//g;s/0/▁/g;s/1/▂/g;s/2/▃/g;s/3/▄/g;s/4/▅/g;s/5/▆/g;s/6/▇/g;s/7/█/g;'

View File

@@ -0,0 +1,3 @@
#!/bin/bash
i="$(checkupdates)"
printf "%b%b" "$i" "${i:+\n}" |wc -l; echo "$i" |column -t #|tr '\n' '\r'

View File

@@ -0,0 +1,73 @@
yad --title="Garuda Sway-WM keybindings:" --no-buttons --width=481 --height=361 --list --column-align=l --column="Keyboard Shortcuts" --column="Command Description" \
"Esc" "Close this cheat-sheet" \
"=" "modkey" \
"+Return" "Start Terminal" \
"+q" "Close focused app" \
"+d" "Application menu (wofi)" \
"+p" "Activities" \
"+Shift+e" "Power menu" \
"+F1" "Lock the system" \
"+Shift+c" "Reload the config file" \
"+h" "Focus left" \
"+j" "Focus down" \
"+k" "Focus up" \
"+l" "Focus right" \
"+Left" "Focus left" \
"+Down" "Focus down" \
"+Up" "Focus up" \
"+Right" "Focus right" \
"+Shift+h" "Move left" \
"+Shift+j" "Move down" \
"+Shift+k" "Move up" \
"+Shift+l" "Move right" \
"+Shift+Left" "Move left" \
"+Shift+Down" "Move down" \
"+Shift+Up" "Move up" \
"+Shift+Right" "Move right" \
"+b" "Split in horizontal orientation" \
"+v" "Split in vertical orientation" \
"+f" "Fullscreen toggle" \
"+s" "Layout stacking" \
"+w" "Layout tabbed" \
"+e" "Layout toggle split" \
"+Shift+Space" "Floating toggle" \
"+Space" "Focus toggle" \
"+a" "Focus parent" \
"+Right_mouse_button" "Resize floating window" \
"+Left_mouse_button" "Move floating window" \
"+Shift+Minus" "Move scratchpad" \
"+Minus" "Scratchpad cycle" \
"+r" "Resize" \
"+h" "Focus left" \
"+j" "Focus down" \
"+k" "Focus up" \
"+l" "Focus right" \
"+Left" "Focus left" \
"+Down" "Focus down" \
"+Up" "Focus up" \
"+Right" "Focus right" \
"+Return/Escape" "Return to default" \
"+1" "Workspace number 1" \
"+2" "Workspace number 2" \
"+3" "Workspace number 3" \
"+4" "Workspace number 4" \
"+5" "Workspace number 5" \
"+6" "Workspace number 6" \
"+7" "workspace number 7" \
"+8" "Workspace number 8" \
"+9" "Workspace number 9" \
"+0" "Workspace number 10" \
"+Shift+1" "Move container to workspace number 1" \
"+Shift+2" "Move container to workspace number 2" \
"+Shift+3" "Move container to workspace number 3" \
"+Shift+4" "Move container to workspace number 4" \
"+Shift+5" "Move container to workspace number 5" \
"+Shift+6" "Move container to workspace number 6" \
"+Shift+7" "Move container to workspace number 7" \
"+Shift+8" "Move container to workspace number 8" \
"+Shift+9" "Move container to workspace number 9 " \
"+Shift+0" "Move container to workspace number 10" \
"Print" "Full screenshot" \
"Shift+Print" "Screenshot with options" \
"+n" "Launch Thunar" \
"+o" "FireDragon"

2
sway/waybar/scripts/keyhint.sh Executable file
View File

@@ -0,0 +1,2 @@
#!/bin/sh
yad --title="null keybindings:" --no-buttons --geometry=600x345-15-400 --list --column=key: --column=description: --column=command: "ESC" "close this app" "" "=" "modkey" "(set mod Mod4)" "+enter" "Terminal" "(termite)" "+d" "Application Menu" "(rofi)" "+o" "" "Open Broswer" "+n" "" "Open Files" "+q" "close focused app" "(kill)" "Print-key" "screenshot" "(grim)" "+Shift+p" "open keybinding helper" "full list"

View File

@@ -0,0 +1,2 @@
#!/bin/sh
yad --title="null keybindings:" --no-buttons --geometry=600x345-15-400 --list --column=key: --column=description: --column=command: "ESC" "close this app" "" "=" "modkey" "(set mod Mod4)" "+enter" "Terminal" "(termite)" "+d" "Application Menu" "(rofi)" "+o" "" "Open Broswer" "+n" "" "Open Files" "+q" "close focused app" "(kill)" "[Shift]+Print-key" "screenshot" "(grim)" "+Shift+e" "power-menu" "(wofi)" "+Shift+p" "open keybinding helper" "full list"

View File

@@ -0,0 +1,109 @@
#!/bin/bash
# network_traffic.sh [-tPOLLING_INTERVAL] [NETWORK_INTERFACE...]
getopts t: __ && shift
isecs=${OPTARG:-1}
ifaces=($@)
: ${rate_max:=1000000} # maximum transfer rate for {percent}, can be overridden setting the env var
# `snore` adapted from https://blog.dhampir.no/content/sleeping-without-a-subprocess-in-bash-and-how-to-sleep-forever
# without MacOS workaround, TODO: with _snore_fd initialized separatedly, also i dont touch IFS so dont bother with it
snore() {
local IFS
[[ -n "${_snore_fd:-}" ]] || { exec {_snore_fd}<> <(:); } 2>/dev/null
read ${1:+-t "$1"} -u $_snore_fd || :
}
human_readable() {
local hrunits=( B K M G T P )
local ndigits=${#1}
local idxunit=$(( (2 + ndigits) / 3 - 1))
local lentrim=$(( ndigits - (idxunit * 3 ) ))
echo ${1::$lentrim}${hrunits[$idxunit]}
}
exit_err() {
printf '{"text": "⚠ %s", "tooltip": "%s", "class": "error"}\n' "$@"
exit
}
if test ${#ifaces[@]} -gt 0; then
# sanity check the interface names
for iface in ${ifaces[@]}; do
test -h "/sys/class/net/${iface}" || exit_err "${iface}" "${iface} is not an existing network interface name"
done
else
# default to all interfaces except `lo`
ifaces=(/sys/class/net/*)
ifaces=(${ifaces[@]##*/})
ifaces=(${ifaces[@]//lo/})
# TODO: check that filtering out `lo` is enough, else `^(eth|wlan|enp|wlp)` as suggested
fi
# sanity check polling interval
if test ${isecs} -lt 1; then
exit_err "${isecs}" "${isecs} is not a valid polling interval"
fi
# NOTE: `snore` would take a decimal interval but bash arithmetic does not
#if test $(echo "${isecs} >= 0.2" |bc) -eq 0; then
# exit_err "${isecs}" "${isecs} is not a valid polling interval"
#fi
# NOTE: `/proc/net/dev` format is:
# interface:
# RX bytes packets errs drop fifo frame compressed multicast
# TX bytes packets errs drop fifo colls carrier compressed
# NOTE: array items are:
# 0=rx_bytes 1=rx_packets 2=rx_errs 3=rx_drop
# 4=tx_bytes 5=tx_packets 6=tx_errs 7=tx_drop
for iface in ${ifaces[@]} aggregate; do
declare -a traffic_prev_${iface} traffic_curr_${iface} traffic_delt_${iface}
declare -n traffic_prev=traffic_prev_${iface}
declare -n traffic_curr=traffic_curr_${iface}
declare -n traffic_delt=traffic_delt_${iface}
traffic_prev=( 0 0 0 0 0 0 0 0 )
traffic_curr=( 0 0 0 0 0 0 0 0 )
traffic_delt=( 0 0 0 0 0 0 0 0 )
done
# TODO: rearrange the loop, do not show bogus on first iteration
while snore ${isecs} ;do
tooltip=""
traffic_delt_aggregate=( 0 0 0 0 0 0 0 0 )
readarray -s2 proc_net_dev </proc/net/dev
while read -a data; do
iface=${data[0]%:}
test "${ifaces[*]}" = "${ifaces[*]//${iface}/}" && continue
declare -n traffic_prev=traffic_prev_${iface}
declare -n traffic_curr=traffic_curr_${iface}
declare -n traffic_delt=traffic_delt_${iface}
traffic_curr=(${data[@]:1:4} ${data[@]:9:4})
#FIXME: tooltip is delayed one iteration wrt main display (but why?)
#printf -v tooltip_hr_rx '%4s⇣' $(human_readable ${traffic_delt[0]})
#printf -v tooltip_hr_tx '%4s⇡' $(human_readable ${traffic_delt[4]})
#tooltip="${tooltip:+${tooltip}\r}${iface}\t${tooltip_hr_rx}\t${tooltip_hr_tx}"
for i in {0..7}; do
(( traffic_delt[i] = ( traffic_curr[i] - traffic_prev[i] ) / isecs ))
(( traffic_delt_aggregate[i] += traffic_delt[i] ))
done
traffic_prev=(${traffic_curr[@]})
done <<<"${proc_net_dev[@]}"
printf '{"text": "%4s⇣ %4s⇡", "tooltip": "%s", "percentage": %d}\n' \
$(human_readable ${traffic_delt_aggregate[0]}) \
$(human_readable ${traffic_delt_aggregate[4]}) \
"${tooltip}" \
$(( ( traffic_delt_aggregate[0] + traffic_delt_aggregate[4] ) / rate_max ))
#printf '{"text": "%5s⇣ %5s⇡", "alt": "%s", "tooltip": "%s", "class": "%s", "percentage": %d }\n' $(human_readable ${traffic_delt[0]}) $(human_readable ${traffic_delt[4]}) '_alt' '_tooltip' '_class' 0
done
# NOTE: in waybar config (do NOT use "interval"):
# "custom/network_traffic": {
# "exec": "~/.config/waybar/scripts/network_traffic.sh",
# "return-type": "json",
# "format": "Speed: {}", // optional
# },

22
sway/waybar/scripts/swap.sh Executable file
View File

@@ -0,0 +1,22 @@
#!/bin/bash
# Set the path to the config and style files
config_file="${HOME}/.config/sway/waybar/config"
config_background_file="${HOME}/.config/sway/waybar/config-background"
style_file="${HOME}/.config/sway/waybar/style.css"
style_background_file="${HOME}/.config/sway/waybar/style-background.css"
# Swap names of config files
mv "${config_file}" "${config_file}.temp"
mv "${config_background_file}" "${config_file}"
mv "${config_file}.temp" "${config_background_file}"
# Swap names of style files
mv "${style_file}" "${style_file}.temp"
mv "${style_background_file}" "${style_file}"
mv "${style_file}.temp" "${style_background_file}"
echo "File names swapped successfully!"
pkill waybar
~/.config/sway/scripts/statusbar &

View File

@@ -0,0 +1,419 @@
/* =============================================================================
*
* Waybar configuration
*
* Configuration reference: https://github.com/Alexays/Waybar/wiki/Configuration
*
* =========================================================================== */
/* -----------------------------------------------------------------------------
* Keyframes
* -------------------------------------------------------------------------- */
@import "machiatto.css";
/*
Polar Night
nord0 #2e3440
nord1 #3b4252
nord2 #434c5e
nord3 #4c566a
Snow Storm
nord4 #d8dee9
nord5 #e5e9f0
nord6 #eceff4
Frost
nord7 #8fbcbb
nord8 #88c0d0
nord9 #81a1c1
nord10 #5e81ac
Aurora
nord11 #bf616a
nord12 #d08770
nord13 #ebcb8b
nord14 #a3be8c
nord15 #b48ead
*/
/* -----------------------------------------------------------------------------
* Base styles
* -------------------------------------------------------------------------- */
/* Reset all styles */
* {
color: @lavender;
border: 0;
padding: 0 0;
font-family: UbuntuMono;
/* font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; */
/* font-family: "Hack Nerd Font"; */
font-size: 18px;
font-weight: bold;
/* padding-bottom:4px;
padding-top: 4px; */
transition: all 0.5s ease;
}
window#waybar {
border-bottom: 4px solid shade(@mauve, 1.0);
/* border-radius: 10px; */
/* background:#2d2a2e; */
/* background-color: rgba(36, 39, 58, 0.85); */
/* background-color: rgba(0, 0, 0, 0); */
background-color: shade(#1e1e2e, 0.95);
}
#workspaces button {
color: @base;
border-radius: 50%;
/* background-color: @base; */
margin: 0px 0px;
padding: 2 6 2 0;
}
#workspaces button:hover * {
color: @mauve;
}
#workspaces button:hover {
color: @mauve;
box-shadow: none;
/* Remove predefined box-shadow */
text-shadow: none;
/* Remove predefined text-shadow */
border: 0px;
background: none;
}
#workspaces * {
color: whitesmoke;
}
#workspaces {
border-style: solid;
background-color: @base;
opacity: 1;
border-radius: 10px;
margin: 8px 0px 8px 8px;
}
#workspaces button.focused {
color: @mauve;
border-radius: 20px;
/* background-color: @flamingo; */
}
#workspaces button.focused * {
color: @mauve;
}
#mode {
color: #ebcb8b;
}
#clock,
#custom-swap,
#custom-background,
#custom-cava-internal,
#battery,
#cpu,
#memory,
#idle_inhibitor,
#temperature,
#custom-keyboard-layout,
#backlight,
#network,
#pulseaudio,
#mode,
#tray,
#custom-power,
#custom-pacman,
#mpd {
padding: 5px 8px;
border-style: solid;
background-color: shade(@base, 1.1);
opacity: 1;
margin: 8px 0;
}
/* -----------------------------------------------------------------------------
* Module styles
* -------------------------------------------------------------------------- */
#mode {
border-radius: 10px;
color: @mauve;
margin-right: 5px;
}
#custom-cava-internal {
border-radius: 10px;
color: @mauve;
}
#mpd {
border-radius: 10px;
color: @mauve;
margin-left: 5px;
background-color: rgba(0, 0, 0, 0);
}
#mpd.2 {
border-radius: 10px 0px 0px 10px;
margin: 8px 0px 8px 6px;
padding: 4px 12px 4px 10px;
}
#mpd.3 {
border-radius: 0px 0px 0px 0px;
margin: 8px 0px 8px 0px;
padding: 4px;
}
#mpd.4 {
border-radius: 0px 10px 10px 0px;
margin: 8px 0px 8px 0px;
padding: 4px 10px 4px 14px;
}
#mpd.2,
#mpd.3,
#mpd.4 {
background-color: @base;
font-size: 14px;
}
#custom-swap {
border-radius: 10px;
color: @base;
margin-left: 10px;
background-color: @mauve;
}
#custom-background {
border-radius: 0px 10px 10px 0px;
background-color: @base;
color: white;
padding: 5px 14px 5px 5px;
}
#clock {
/* background-color:#a3be8c; */
color: @sky;
border-radius: 10px;
margin: 8px 10px;
}
#backlight {
color: @yellow;
/* border-bottom: 2px solid @yellow; */
border-radius: 10px 0 0 10px;
}
#battery {
color: #d8dee9;
/* border-bottom: 2px solid #d8dee9; */
border-radius: 0 10px 10px 0;
margin-right: 10px;
}
#battery.charging {
color: #81a1c1;
/* border-bottom: 2px solid #81a1c1; */
}
@keyframes blink {
to {
color: @red;
/* border-bottom: 2px solid @red; */
}
}
#battery.critical:not(.charging) {
color: #bf616a;
/* border-bottom: 2px solid #bf616a; */
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
#cpu {
color: @sky;
/* border-bottom: 2px solid @sky; */
}
#cpu #cpu-icon {
color: @sky;
}
#memory {
color: @sky;
}
#network.disabled {
color: #bf616a;
/* border-bottom: 2px solid #bf616a; */
}
#network {
color: @green;
/* border-bottom: 2px solid @green; */
border-radius: 10px;
margin-right: 5px;
}
#network.disconnected {
color: #bf616a;
/* border-bottom: 2px solid #bf616a; */
}
#pulseaudio {
color: @flamingo;
/* border-bottom: 2px solid @flamingo; */
}
#pulseaudio.muted {
color: #3b4252;
/* border-bottom: 2px solid #3b4252; */
}
#temperature {
color: @teal;
/* border-bottom: 2px solid @teal; */
border-radius: 10px 0 0 10px;
}
#temperature.critical {
color: @red;
/* border-bottom: 2px solid @red; */
}
#idle_inhibitor {
background-color: #ebcb8b;
color: @base;
}
#tray {
/* background-color: @base; */
margin: 8px 10px;
border-radius: 10px;
}
#custom-launcher,
#custom-power {}
#custom-launcher {
background-color: shade(@base, 1.1);
color: @mauve;
border-radius: 0px 15px 0px 0px;
padding: 5px 10px 5px 10px;
border-bottom: 4px solid shade(@mauve, 1.0);
}
#custom-power {
color: @base;
background-color: @red;
border-radius: 10px;
margin-left: 5px;
margin-right: 15px;
padding: 5px 10px;
}
#window {
border-style: hidden;
margin-left: 10px;
/* margin-top:1px;
padding: 8px 1rem; */
margin-right: 10px;
color: #eceff4;
}
#custom-keyboard-layout {
color: @peach;
/* border-bottom: 2px solid @peach; */
border-radius: 0 10px 10px 0;
margin-right: 10px;
}
/* window#waybar {
background: #2d2a2e;
}
* {
color: #c8b9a9;
font-family: Ubuntu Mono, sans-serif;
font-size: 12px;
}
#workspaces button.focused {
color: #f2e5bc;
}
#workspaces button {
color: #c8b9a9;
}
.separator {
background-color: #c8b9a9;
}
#mode {
color: #ebcb8b;
}
#clock {
color: #a3be8c;
}
#battery {
color: #d8dee9;
}
#battery.charging {
color: #b48ead;
}
#battery.critical:not(.charging) {
color: #bf616a;
}
#cpu {
color: #a3be8c;
}
#memory {
color: #d3869b;
}
#network {
color: #8fbcbb;
}
#network.disabled {
color: #bf616a;
}
#network.disconnected {
color: #bf616a;
}
#pulseaudio {
color: #b48ead;
}
#pulseaudio.muted {
color: #bf616a;
}
#temperature {
color: #8fbcbb;
}
#temperature.critical {
color: #bf616a;
} */

413
sway/waybar/style.css Normal file
View File

@@ -0,0 +1,413 @@
/* =============================================================================
*
* Waybar configuration
*
* Configuration reference: https://github.com/Alexays/Waybar/wiki/Configuration
*
* =========================================================================== */
/* -----------------------------------------------------------------------------
* Keyframes
* -------------------------------------------------------------------------- */
@import "machiatto.css";
/*
Polar Night
nord0 #2e3440
nord1 #3b4252
nord2 #434c5e
nord3 #4c566a
Snow Storm
nord4 #d8dee9
nord5 #e5e9f0
nord6 #eceff4
Frost
nord7 #8fbcbb
nord8 #88c0d0
nord9 #81a1c1
nord10 #5e81ac
Aurora
nord11 #bf616a
nord12 #d08770
nord13 #ebcb8b
nord14 #a3be8c
nord15 #b48ead
*/
/* -----------------------------------------------------------------------------
* Base styles
* -------------------------------------------------------------------------- */
/* Reset all styles */
* {
color: @lavender;
border: 0;
padding: 0 0;
font-family: UbuntuMono;
/* font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; */
/* font-family: "Hack Nerd Font"; */
font-size: 18px;
font-weight: bold;
/* padding-bottom:4px;
padding-top: 4px; */
}
window#waybar {
border: 0px solid rgba(0, 0, 0, 0);
/* border-radius: 10px; */
/* background:#2d2a2e; */
/* background-color: rgba(36, 39, 58, 0.85); */
background-color: rgba(0, 0, 0, 0);
/* background-color: shade(#1e1e2e, 0.95); */
}
#workspaces button {
color: @base;
border-radius: 50%;
/* background-color: @base; */
margin: 0px 0px;
padding: 4px 6px 2px 0px;
}
#workspaces button:hover {
color: @mauve;
box-shadow: none; /* Remove predefined box-shadow */
text-shadow: none; /* Remove predefined text-shadow */
border: 0px;
background: none;
}
#workspaces button:hover * {
color: @mauve;
/* background-color: @base; */
background-color: rgba(36, 39, 58, 0.6);
}
#workspaces * {
color: whitesmoke;
}
#workspaces {
border-style: solid;
/* background-color: @base; */
background-color: rgba(36, 39, 58, 0.6);
opacity: 1;
border-radius: 10px;
margin: 8px 0px 8px 8px;
}
#workspaces button.focused {
color: @mauve;
border-radius: 20px;
/* background-color: @flamingo; */
}
#workspaces button.focused * {
color: @mauve;
}
#mode {
color: #ebcb8b;
}
#clock,
#custom-swap,
#custom-cava-internal,
#battery,
#cpu,
#memory,
#idle_inhibitor,
#temperature,
#custom-keyboard-layout,
#backlight,
#network,
#pulseaudio,
#mode,
#tray,
#custom-power,
#custom-pacman,
#custom-launcher,
#mpd {
padding: 5px 8px;
border-style: solid;
/* background-color: shade(@base, 1); */
background-color: rgba(36, 39, 58, 0.6);
opacity: 1;
margin: 8px 0;
}
/* -----------------------------------------------------------------------------
* Module styles
* -------------------------------------------------------------------------- */
#mpd {
border-radius: 10px;
color: @mauve;
margin-left: 5px;
background-color: rgba(0, 0, 0, 0);
}
#mpd.2 {
border-radius: 10px 0px 0px 10px;
margin: 8px 0px 8px 6px;
padding: 4px 12px 4px 10px;
}
#mpd.3 {
border-radius: 0px 0px 0px 0px;
margin: 8px 0px 8px 0px;
padding: 4px;
}
#mpd.4 {
border-radius: 0px 10px 10px 0px;
margin: 8px 0px 8px 0px;
padding: 4px 10px 4px 14px;
}
#mpd.2,
#mpd.3,
#mpd.4 {
/* background-color: @base; */
background-color: rgba(36, 39, 58, 0.6);
font-size: 14px;
}
#mode {
border-radius: 10px;
color: @mauve;
margin-right: 5px;
}
#custom-cava-internal {
border-radius: 10px;
color: @mauve;
}
#custom-swap {
border-radius: 10px;
color: @base;
margin-left: 15px;
background-color: @mauve;
}
#clock {
/* background-color:#a3be8c; */
color: @sky;
border-radius: 10px;
margin: 8px 10px;
}
#backlight {
color: @yellow;
/* border-bottom: 2px solid @yellow; */
border-radius: 10px 0 0 10px;
}
#battery {
color: #d8dee9;
/* border-bottom: 2px solid #d8dee9; */
border-radius: 0 10px 10px 0;
margin-right: 10px;
}
#battery.charging {
color: #81a1c1;
/* border-bottom: 2px solid #81a1c1; */
}
@keyframes blink {
to {
color: @red;
/* border-bottom: 2px solid @red; */
}
}
#battery.critical:not(.charging) {
color: #bf616a;
/* border-bottom: 2px solid #bf616a; */
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
#cpu {
color: @sky;
/* border-bottom: 2px solid @sky; */
}
#cpu #cpu-icon {
color: @sky;
}
#memory {
color: @sky;
}
#network.disabled {
color: #bf616a;
/* border-bottom: 2px solid #bf616a; */
}
#network {
color: @green;
/* border-bottom: 2px solid @green; */
border-radius: 10px;
margin-right: 5px;
}
#network.disconnected {
color: #bf616a;
/* border-bottom: 2px solid #bf616a; */
}
#pulseaudio {
color: @flamingo;
/* border-bottom: 2px solid @flamingo; */
}
#pulseaudio.muted {
color: #3b4252;
/* border-bottom: 2px solid #3b4252; */
}
#temperature {
color: @teal;
/* border-bottom: 2px solid @teal; */
border-radius: 10px 0 0 10px;
}
#temperature.critical {
color: @red;
/* border-bottom: 2px solid @red; */
}
#idle_inhibitor {
background-color: #ebcb8b;
color: @base;
}
#tray {
/* background-color: @base; */
margin: 8px 10px;
border-radius: 10px;
}
#custom-launcher,
#custom-power {}
#custom-launcher {
background-color: @mauve;
color: @base;
border-radius: 10px;
padding: 5px 10px;
margin-left: 15px;
}
#custom-power {
color: @base;
background-color: @red;
border-radius: 10px;
margin-left: 5px;
margin-right: 15px;
padding: 5px 10px;
}
#window {
border-style: hidden;
margin-left: 10px;
/* margin-top:1px;
padding: 8px 1rem; */
margin-right: 10px;
color: #eceff4;
}
#custom-keyboard-layout {
color: @peach;
/* border-bottom: 2px solid @peach; */
border-radius: 0 10px 10px 0;
margin-right: 10px;
}
/* window#waybar {
background: #2d2a2e;
}
* {
color: #c8b9a9;
font-family: Ubuntu Mono, sans-serif;
font-size: 12px;
}
#workspaces button.focused {
color: #f2e5bc;
}
#workspaces button {
color: #c8b9a9;
}
.separator {
background-color: #c8b9a9;
}
#mode {
color: #ebcb8b;
}
#clock {
color: #a3be8c;
}
#battery {
color: #d8dee9;
}
#battery.charging {
color: #b48ead;
}
#battery.critical:not(.charging) {
color: #bf616a;
}
#cpu {
color: #a3be8c;
}
#memory {
color: #d3869b;
}
#network {
color: #8fbcbb;
}
#network.disabled {
color: #bf616a;
}
#network.disconnected {
color: #bf616a;
}
#pulseaudio {
color: #b48ead;
}
#pulseaudio.muted {
color: #bf616a;
}
#temperature {
color: #8fbcbb;
}
#temperature.critical {
color: #bf616a;
} */