make waybar prettier, clean sway config, add scratchpad config, add nerdfonts to kitty

This commit is contained in:
Amarpreet Minhas 2025-02-22 03:21:30 -05:00
parent c0f4edd4bd
commit 82f95b6c3b
6 changed files with 286 additions and 208 deletions

View file

@ -11,7 +11,7 @@ active_tab_background #7aa2f7
active_tab_foreground #16161e
inactive_tab_background #292e42
inactive_tab_foreground #545c7e
#tab_bar_background #15161e
tab_bar_background #15161e
active_border_color #7aa2f7
inactive_border_color #292e42

View file

@ -1,3 +1,36 @@
font_size 14.0
scrollback_lines 20000
include current-theme.conf
symbol_map U+e000-U+e00a,U+ea60-U+ebeb,U+e0a0-U+e0c8,U+e0ca,U+e0cc-U+e0d7,U+e200-U+e2a9,U+e300-U+e3e3,U+e5fa-U+e6b1,U+e700-U+e7c5,U+ed00-U+efc1,U+f000-U+f2ff,U+f000-U+f2e0,U+f300-U+f372,U+f400-U+f533,U+f0001-U+f1af0 Symbols Nerd Font Mono
font_family family="DejaVuSansM Nerd Font Mono"
bold_font auto
italic_font auto
bold_italic_font auto
# - Use additional nerd symbols
# See https://github.com/be5invis/Iosevka/issues/248
# See https://github.com/ryanoasis/nerd-fonts/wiki/Glyph-Sets-and-Code-Points
# Seti-UI + Custom
symbol_map U+E5FA-U+E62B Symbols Nerd Font
# Devicons
symbol_map U+E700-U+E7C5 Symbols Nerd Font
# Font Awesome
symbol_map U+F000-U+F2E0 Symbols Nerd Font
# Font Awesome Extension
symbol_map U+E200-U+E2A9 Symbols Nerd Font
# Material Design Icons
symbol_map U+F500-U+FD46 Symbols Nerd Font
# Weather
symbol_map U+E300-U+E3EB Symbols Nerd Font
# Octicons
symbol_map U+F400-U+F4A8,U+2665,U+26A1,U+F27C Symbols Nerd Font
# Powerline Extra Symbols
symbol_map U+E0A3,U+E0B4-U+E0C8,U+E0CC-U+E0D2,U+E0D4 Symbols Nerd Font
# IEC Power Symbols
symbol_map U+23FB-U+23FE,U+2b58 Symbols Nerd Font
# Font Logos
symbol_map U+F300-U+F313 Symbols Nerd Font
# Pomicons
symbol_map U+E000-U+E00D Symbols Nerd Font
symbol_map U+f101-U+f208 nonicon

View file

@ -0,0 +1 @@
launch sh -c 'mkdir -p ${HOME}/notes; vim ${HOME}/notes/$(date --rfc-3339=date).org'

View file

@ -1,166 +1,137 @@
# set mod to meta
set $mod Mod4
# Home row direction keys, like vim
# vim like direction keys
set $left h
set $down j
set $up k
set $right l
# back and forth
# allow flipping back and forth between workspaces
workspace_auto_back_and_forth yes
# Your preferred terminal emulator
# open kitty with libgl
set $term LIBGL_ALWAYS_SOFTWARE=1 kitty
# Your preferred application launcher
# Note: pass the final command to swaymsg so that the resulting window can be opened
# on the original workspace that the command was run on.
# set launcher to demnu with fuzzel
set $menu dmenu_path | fuzzel -d | xargs swaymsg exec --
### Key bindings
#
# Basics:
#
# Start a terminal
bindsym $mod+Return exec $term
# start a terminal
bindsym $mod+Return exec $term
# Kill focused window
bindsym $mod+Shift+q kill
# kill focused window
bindsym $mod+Shift+q kill
# Start your launcher
bindsym $mod+p exec $menu
# start your launcher
bindsym $mod+p exec $menu
# 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
# hold mod (meta) to move windows
floating_modifier $mod normal
# Reload the configuration file
bindsym $mod+Shift+c reload
# 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
# exit sway and log out
bindsym $mod+Shift+e exec swaynag -t error -m 'Exit sway and log out?' -B 'Yes, exit sway' 'swaymsg exit'
# 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
# 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
# move focus
bindsym $mod+$left focus left
bindsym $mod+$down focus down
bindsym $mod+$up focus up
bindsym $mod+$right focus right
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# Switch the current container between different layout styles
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
# move the focused window
bindsym $mod+Shift+$left move left
bindsym $mod+Shift+$down move down
bindsym $mod+Shift+$up move up
bindsym $mod+Shift+$right move right
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# Make the current focus fullscreen
bindsym $mod+f fullscreen
# 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
# Toggle the current focus between tiling and floating mode
bindsym $mod+Shift+space floating toggle
# move focused window 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
# Swap focus between the tiling area and the floating area
bindsym $mod+space focus mode_toggle
# split
bindsym $mod+b splith
bindsym $mod+v splitv
# 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.
# switch the current window between different layout styles
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
# Move the currently focused window to the scratchpad
bindsym $mod+Shift+minus move scratchpad
# fullscreen focused window
bindsym $mod+f fullscreen
# 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:
#
# toggle the current window 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 config
bindsym $mod+Shift+minus move scratchpad
bindsym $mod+minus scratchpad show
# resizing windows
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
bindsym $left resize shrink width 10px
bindsym $down resize grow height 10px
bindsym $up resize shrink height 10px
bindsym $right resize grow width 10px
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"
# return to default mode with enter or escape
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
#
# Status Bar:
#
# Read `man 5 sway-bar` for more information about this section.
# waybar
bar {
swaybar_command waybar
}
# background
output * bg ${HOME}/.background.png fit #000000
# setup user env
exec systemctl --user import-environment
# start the daily note scratchpad
exec $term --class=scratchpad --session=$HOME/.config/kitty/scratchpad.conf
for_window [app_id="scratchpad"] move to scratchpad

View file

@ -1,80 +1,94 @@
{
"layer": "top",
"position": "bottom",
"spacing": 4, // Gaps between modules (4px)
"modules-left": [
"sway/workspaces",
"sway/mode",
"sway/scratchpad",
"custom/media"
],
"modules-right": [
"network",
"cpu",
"memory",
"temperature",
"battery",
"clock",
"tray"
],
"tray": {
// "icon-size": 21,
"spacing": 10
"layer": "top",
"position": "bottom",
"spacing": 12, // Gaps between modules (4px)
"modules-left": [
"sway/scratchpad",
"sway/workspaces",
],
"modules-center": [
"network",
"memory",
"cpu",
"temperature",
"pulseaudio/slider",
],
"modules-right": [
"tray",
"battery",
"clock",
],
"tray": {
"spacing": 12
},
"clock": {
"interval": 1,
"format": "{:%H:%M:%S}",
"timezone": "America/New_York",
"tooltip-format": "<tt><small>{calendar}</small></tt>",
"calendar": {
"mode" : "month",
"weeks-pos" : "left",
"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>"
}
},
},
"cpu": {
"interval": 1,
"format": "{icon0}{icon1}{icon2}{icon3}{icon4}{icon5}{icon6}{icon7}",
"format-icons": [
"<span color='#69ff94'>▁</span>", // green
"<span color='#2aa9ff'>▂</span>", // blue
"<span color='#f8f8f2'>▃</span>", // white
"<span color='#f8f8f2'>▄</span>", // white
"<span color='#ffffa5'>▅</span>", // yellow
"<span color='#ffffa5'>▆</span>", // yellow
"<span color='#ff9977'>▇</span>", // orange
"<span color='#dd532e'>█</span>" // red
]
},
"memory": {
"format": ": {percentage}%"
},
"temperature": {
"critical-threshold": 80,
"format": "{icon}: {temperatureC}°C",
"format-icons": ["", "", ""]
},
"battery": {
"states": {
"warning": 30,
"critical": 15
},
"clock": {
"timezone": "America/New_York",
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
"format-alt": "{:%Y-%m-%d}"
},
"cpu": {
"format": "{usage}% ",
"tooltip": false
},
"memory": {
"format": "{}% "
},
"temperature": {
"critical-threshold": 80,
"format": "{temperatureC}°C {icon}",
"format-icons": ["", "", ""]
},
"battery": {
"states": {
"warning": 30,
"critical": 15
},
"format": "{capacity}% {icon}",
"format-full": "{capacity}% {icon}",
"format-charging": "{capacity}% ",
"format-plugged": "{capacity}% ",
"format-alt": "{time} {icon}",
"format-icons": ["", "", "", "", ""]
},
"network": {
"format-wifi": "{essid} ({signalStrength}%) ",
"format-ethernet": "{ipaddr}/{cidr} ",
"tooltip-format": "{ifname} via {gwaddr} ",
"format-linked": "{ifname} (No IP) ",
"format-disconnected": "Disconnected ⚠",
"format-alt": "{ifname}: {ipaddr}/{cidr}"
},
"pulseaudio": {
// "scroll-step": 1, // %, can be a float
"format": "{volume}% {icon} {format_source}",
"format-bluetooth": "{volume}% {icon} {format_source}",
"format-bluetooth-muted": " {icon} {format_source}",
"format-muted": " {format_source}",
"format-source": "{volume}% ",
"format-source-muted": "",
"format-icons": {
"headphone": "",
"hands-free": "",
"headset": "",
"phone": "",
"portable": "",
"car": "",
"default": ["", "", ""]
},
"on-click": "pavucontrol"
}
"format": "{icon}: {capacity}%",
"format-full": "{icon}: {capacity}%",
"format-charging": "󰂄: {capacity}%",
"format-plugged": ": {capacity}%",
"format-icons": ["", "", "", "", ""]
},
"network": {
"format-wifi": ": {essid} ({signalStrength}%)",
"format-ethernet": ": {ipaddr}/{cidr}",
"tooltip-format": "{ifname} via 󰩟 {gwaddr}",
"format-linked": "{ifname} (No 󱦂 )",
"format-disconnected": "Disconnected ⚠",
"format-alt": "{ifname}: {ipaddr}/{cidr}"
},
"pulseaudio/slider": {
"min": 0,
"max": 100,
"orientation": "horizontal"
},
"sway/scratchpad": {
"format": "{icon} {count}",
"show-empty": false,
"format-icons": ["", ""],
"tooltip": true,
"tooltip-format": "{app}: {title}"
}
}

59
.config/waybar/style.css Normal file
View file

@ -0,0 +1,59 @@
* {
border: none;
border-radius: 0;
font-size: 16px;
font-family: "DejaVuSansMono Nerd Font Mono", "Symbols Nerd Font";
min-height: 0;
}
window#waybar {
background: #292b2e;
color: #fdf6e3;
}
#tray {
background: #292b2e;
}
#workspaces button {
padding: 0 2px;
color: #fdf6e3;
}
#workspaces button.focused {
color: #268bd2;
}
#network {
color: #d8bee5;
}
#cpu {
color: #6c71c4;
}
#memory {
color: #2aa198;
}
#temperature {
color: #ff964f;
}
#battery {
color: #967bb6;
}
#pulseaudio-slider slider {
min-height: 0px;
min-width: 0px;
opacity: 0;
background-image: none;
border: none;
box-shadow: none;
}
#pulseaudio-slider trough {
min-height: 10px;
min-width: 80px;
border-radius: 5px;
background-color: black;
}
#pulseaudio-slider highlight {
min-width: 10px;
border-radius: 5px;
background-color: #9bf6ff;
}