Update 1
@@ -0,0 +1 @@
|
||||
../../dotfiles/stow/config/.config/ghostty/config
|
||||
@@ -10,6 +10,8 @@
|
||||
# exec-once = waybar & hyprpaper & firefox
|
||||
|
||||
exec-once = ~/.config/waybar/scripts/launch.sh
|
||||
|
||||
exec-once = awww-daemon
|
||||
exec-once = mako
|
||||
|
||||
exec-once = wl-paste --type text --watch cliphist store
|
||||
exec-once = wl-paste --type image --watch cliphist store
|
||||
exec-once = wl-clip-presist --clipboard regular
|
||||
|
||||
@@ -4,19 +4,18 @@
|
||||
|
||||
# See https://wiki.hypr.land/Configuring/Keywords/
|
||||
$mainMod = SUPER # Sets "Windows" key as main modifier
|
||||
$shiftMod = SUPER SHIFT
|
||||
|
||||
# Example binds, see https://wiki.hypr.land/Configuring/Binds/ for more
|
||||
bind = $mainMod, Return, exec, $terminal
|
||||
bind = $mainMod, Q, killactive,
|
||||
bind = $mainMod, M, exec, wlogout
|
||||
bind = $mainMod SHIFT, E, exec, $fileManager
|
||||
bind = $mainMod SHIFT, W, exec, $browser
|
||||
bind = $shiftMod, E, exec, $fileManager
|
||||
bind = $shiftMod, W, exec, $browser
|
||||
bind = $mainMod, V, togglefloating,
|
||||
bind = $mainMod, D, exec, $menu
|
||||
bind = $mainMod, P, pseudo, # dwindle
|
||||
bind = $mainMod, R, exec, ~/.config/waybar/scripts/launch.sh
|
||||
#bind = $mainMod, J, layoutmsg, togglesplit # dwindle
|
||||
|
||||
|
||||
# Move focus with mainMod + arrow keys
|
||||
bind = $mainMod, h, movefocus, l
|
||||
@@ -73,3 +72,14 @@ bindl = , XF86AudioNext, exec, playerctl next
|
||||
bindl = , XF86AudioPause, exec, playerctl play-pause
|
||||
bindl = , XF86AudioPlay, exec, playerctl play-pause
|
||||
bindl = , XF86AudioPrev, exec, playerctl previous
|
||||
|
||||
# Action Center
|
||||
bind = $mainMod, A, exec, swaync-client -t
|
||||
|
||||
# Clipboard manager
|
||||
bind = $shiftMod, V, exec, cliphist list | rofi -dmenu -display-columns 2 -p "Clipboard" -theme ~/.config/rofi/clipboard/clipboard.rasi | cliphist decode | wl-copy
|
||||
|
||||
# Screenshots
|
||||
bind = $shiftMod, W, exec, hyprshot -m window
|
||||
bind = $shiftMod, M, exec, hyprshot -m output
|
||||
bind = $shiftMod, PRINT, exec, hyprshot -m region
|
||||
|
||||
@@ -13,8 +13,8 @@ general {
|
||||
border_size = 1
|
||||
|
||||
# https://wiki.hypr.land/Configuring/Variables/#variable-types for info about colors
|
||||
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
|
||||
col.inactive_border = rgba(595959aa)
|
||||
col.active_border = rgb(665c54)
|
||||
col.inactive_border = rgb(282828)
|
||||
|
||||
# Set to true enable resizing windows by clicking and dragging on borders and gaps
|
||||
resize_on_border = true
|
||||
|
||||
@@ -22,3 +22,7 @@ env = XDG_SESSION_DESKTOP,Hyprland
|
||||
env = QT_AUTO_SCREEN_SCALE_FACTOR,1
|
||||
env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
|
||||
env = QT_QPA_PLATFORMTHEME,qt6ct
|
||||
|
||||
# Nvidia
|
||||
env = GBM_BACKEND,nvidia-drm
|
||||
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
|
||||
@@ -4,10 +4,10 @@
|
||||
|
||||
# https://wiki.hypr.land/Configuring/Variables/#input
|
||||
input {
|
||||
kb_layout = us
|
||||
kb_layout = pt
|
||||
kb_variant =
|
||||
kb_model =
|
||||
kb_options =
|
||||
kb_options = caps:super
|
||||
kb_rules =
|
||||
|
||||
follow_mouse = 1
|
||||
|
||||
@@ -2,5 +2,6 @@
|
||||
### MONITORS ###
|
||||
################
|
||||
|
||||
monitor=DP-1,1920x1080@240,1920x0,1
|
||||
monitor=DP-2,1920x1080@144,0x0,1
|
||||
#monitor=DP-1,1920x1080@240,1920x0,1
|
||||
#monitor=DP-2,1920x1080@144,0x0,1
|
||||
monitor=eDP-1, 2160x1440,0x0,1.2
|
||||
|
||||
@@ -6,6 +6,6 @@
|
||||
|
||||
# Set programs that you use
|
||||
$terminal = ghostty
|
||||
$fileManager = dolphin
|
||||
$menu = wofi --show drun
|
||||
$fileManager = thunar
|
||||
$menu = pkill rofi || bash ~/.config/rofi/launcher/launcher.sh
|
||||
$browser = librewolf
|
||||
|
||||
@@ -39,6 +39,13 @@ windowrule {
|
||||
float = yes
|
||||
}
|
||||
|
||||
# SwayNC layer rules
|
||||
layerrule = blur on, match:namespace swaync-control-center
|
||||
layerrule = ignore_alpha 0.5, match:namespace swaync-control-center
|
||||
layerrule = blur on, match:namespace swaync-notification-window
|
||||
layerrule = ignore_alpha 0.5, match:namespace swaync-notification-window
|
||||
|
||||
|
||||
# Ref https://wiki.hypr.land/Configuring/Workspace-Rules/
|
||||
# "Smart gaps" / "No gaps when only"
|
||||
# uncomment all if you wish to use that.
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
@define-color bg0 #1d2021;
|
||||
@define-color bg1 #282828;
|
||||
@define-color bg2 #3c3838;
|
||||
@define-color bg3 #504945;
|
||||
@define-color bg4 #665c54;
|
||||
|
||||
@define-color fg #ebdbb2;
|
||||
|
||||
@define-color red #cc241d;
|
||||
@define-color orange #d65d0e;
|
||||
@define-color yellow #d79921;
|
||||
@define-color green #98971a;
|
||||
@define-color aqua #689d6a;
|
||||
@define-color blue #458588;
|
||||
@define-color purple #b16286;
|
||||
|
||||
@define-color grey0 #a89984;
|
||||
@define-color grey1 #928374;
|
||||
@define-color grey2 #7c6e75;
|
||||
@@ -0,0 +1,97 @@
|
||||
{
|
||||
"$schema": "/etc/xdg/swaync/configSchema.json",
|
||||
"positionX": "right",
|
||||
"positionY": "top",
|
||||
"cssPriority": "user",
|
||||
|
||||
"control-center-width": 380,
|
||||
"control-center-height": 860,
|
||||
"control-center-margin-top": 2,
|
||||
"control-center-margin-bottom": 2,
|
||||
"control-center-margin-right": 1,
|
||||
"control-center-margin-left": 0,
|
||||
|
||||
"notification-window-width": 400,
|
||||
"notification-icon-size": 48,
|
||||
"notification-body-image-height": 160,
|
||||
"notification-body-image-width": 200,
|
||||
|
||||
"timeout": 4,
|
||||
"timeout-low": 2,
|
||||
"timeout-critical": 6,
|
||||
|
||||
"fit-to-screen": false,
|
||||
"keyboard-shortcuts": true,
|
||||
"image-visibility": "when-available",
|
||||
"transition-time": 200,
|
||||
"hide-on-clear": false,
|
||||
"hide-on-action": false,
|
||||
"script-fail-notify": true,
|
||||
"scripts": {
|
||||
"example-script": {
|
||||
"exec": "echo 'Do something...'",
|
||||
"urgency": "Normal"
|
||||
}
|
||||
},
|
||||
"notification-visibility": {
|
||||
"example-name": {
|
||||
"state": "muted",
|
||||
"urgency": "Low",
|
||||
"app-name": "Spotify"
|
||||
}
|
||||
},
|
||||
"widgets": [
|
||||
"label",
|
||||
"buttons-grid",
|
||||
"mpris",
|
||||
"title",
|
||||
"dnd",
|
||||
"notifications"
|
||||
],
|
||||
"widget-config": {
|
||||
"title": {
|
||||
"text": "Notifications",
|
||||
"clear-all-button": true,
|
||||
"button-text": " "
|
||||
},
|
||||
"dnd": {
|
||||
"text": "Do not disturb"
|
||||
},
|
||||
"label": {
|
||||
"max-lines": 1,
|
||||
"text": " "
|
||||
},
|
||||
"mpris": {
|
||||
"image-size": 96,
|
||||
"image-radius": 12
|
||||
},
|
||||
"volume": {
|
||||
"label": "",
|
||||
"show-per-app": true
|
||||
},
|
||||
"buttons-grid": {
|
||||
"actions": [
|
||||
{
|
||||
"label": " ",
|
||||
"command": "amixer set Master toggle"
|
||||
},
|
||||
{
|
||||
"label": "",
|
||||
"command": "amixer set Capture toggle"
|
||||
},
|
||||
{
|
||||
"label": " ",
|
||||
"command": "nm-connection-editor"
|
||||
},
|
||||
{
|
||||
"label": "",
|
||||
"command": "blueman-manager"
|
||||
},
|
||||
{
|
||||
"label": "",
|
||||
"command": "nwg-look"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 13 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 7.3 KiB |
|
After Width: | Height: | Size: 8.0 KiB |
|
After Width: | Height: | Size: 9.0 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 11 KiB |
|
After Width: | Height: | Size: 6.0 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 28 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 16 KiB |
@@ -0,0 +1,3 @@
|
||||
@import "colors.css";
|
||||
@import "themes/nova-dark/notifications.css";
|
||||
@import "themes/nova-dark/central_control.css";
|
||||
@@ -0,0 +1,291 @@
|
||||
@define-color text @fg;
|
||||
@define-color background-alt @bg1
|
||||
@define-color background @bg0;
|
||||
@define-color selected @green;
|
||||
@define-color hover alpha(@green, .4);
|
||||
@define-color urgent @red;
|
||||
|
||||
* {
|
||||
color: @text;
|
||||
|
||||
all: unset;
|
||||
font-size: 14px;
|
||||
font-family: "Rubik", "JetBrains Mono Nerd Font Propo";
|
||||
transition: 200ms;
|
||||
}
|
||||
|
||||
/* Avoid 'annoying' backgroud */
|
||||
.blank-window {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
/* CONTROL CENTER ------------------------------------------------------------------------ */
|
||||
|
||||
.control-center {
|
||||
background: alpha(@background, 0.55);
|
||||
border-radius: 24px;
|
||||
border: 1px solid @selected;
|
||||
box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.6);
|
||||
margin: 18px;
|
||||
padding: 12px;
|
||||
}
|
||||
|
||||
/* Notifications */
|
||||
.control-center .notification-row .notification-background,
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification.critical {
|
||||
background-color: @background-alt;
|
||||
border-radius: 16px;
|
||||
margin: 4px 0px;
|
||||
padding: 4px;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification.critical {
|
||||
color: @urgent;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
.notification-content {
|
||||
margin: 6px;
|
||||
padding: 8px 6px 2px 2px;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> * {
|
||||
min-height: 3.4em;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> *
|
||||
.notification-action {
|
||||
background: alpha(@selected, 0.6);
|
||||
color: @text;
|
||||
border-radius: 12px;
|
||||
margin: 6px;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> *
|
||||
.notification-action:hover {
|
||||
background: @selected;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> *
|
||||
.notification-action:active {
|
||||
background-color: @selected;
|
||||
}
|
||||
|
||||
/* Buttons */
|
||||
|
||||
.control-center .notification-row .notification-background .close-button {
|
||||
background: transparent;
|
||||
border-radius: 6px;
|
||||
color: @text;
|
||||
margin: 0px;
|
||||
padding: 4px;
|
||||
}
|
||||
|
||||
.control-center .notification-row .notification-background .close-button:hover {
|
||||
background-color: @selected;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.close-button:active {
|
||||
background-color: @selected;
|
||||
}
|
||||
|
||||
progressbar,
|
||||
progress,
|
||||
trough {
|
||||
border-radius: 12px;
|
||||
}
|
||||
|
||||
progressbar {
|
||||
background-color: rgba(255, 255, 255, 0.1);
|
||||
}
|
||||
|
||||
/* Notifications expanded-group */
|
||||
|
||||
.notification-group {
|
||||
margin: 2px 8px 2px 8px;
|
||||
}
|
||||
.notification-group-headers {
|
||||
font-weight: bold;
|
||||
font-size: 1.25rem;
|
||||
color: @text;
|
||||
letter-spacing: 2px;
|
||||
}
|
||||
|
||||
.notification-group-icon {
|
||||
color: @text;
|
||||
}
|
||||
|
||||
.notification-group-collapse-button,
|
||||
.notification-group-close-all-button {
|
||||
background: transparent;
|
||||
color: @text;
|
||||
margin: 4px;
|
||||
border-radius: 6px;
|
||||
padding: 4px;
|
||||
}
|
||||
|
||||
.notification-group-collapse-button:hover,
|
||||
.notification-group-close-all-button:hover {
|
||||
background: @hover;
|
||||
}
|
||||
|
||||
/* WIDGETS --------------------------------------------------------------------------- */
|
||||
|
||||
/* Notification clear button */
|
||||
.widget-title {
|
||||
font-size: 1.2em;
|
||||
margin: 6px;
|
||||
}
|
||||
|
||||
.widget-title button {
|
||||
background: @background-alt;
|
||||
border-radius: 6px;
|
||||
padding: 4px 16px;
|
||||
}
|
||||
|
||||
.widget-title button:hover {
|
||||
background-color: @hover;
|
||||
}
|
||||
|
||||
.widget-title button:active {
|
||||
background-color: @selected;
|
||||
}
|
||||
|
||||
/* Do not disturb */
|
||||
.widget-dnd {
|
||||
margin: 6px;
|
||||
font-size: 1.2rem;
|
||||
}
|
||||
|
||||
.widget-dnd > switch {
|
||||
background: @background-alt;
|
||||
font-size: initial;
|
||||
border-radius: 8px;
|
||||
box-shadow: none;
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
.widget-dnd > switch:hover {
|
||||
background: @hover;
|
||||
}
|
||||
|
||||
.widget-dnd > switch:checked {
|
||||
background: @selected;
|
||||
}
|
||||
|
||||
.widget-dnd > switch:checked:hover {
|
||||
background: @hover;
|
||||
}
|
||||
|
||||
.widget-dnd > switch slider {
|
||||
background: @text;
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
/* Buttons menu */
|
||||
.widget-buttons-grid {
|
||||
font-size: x-large;
|
||||
padding: 6px 2px;
|
||||
margin: 6px;
|
||||
border-radius: 12px;
|
||||
background: @background-alt;
|
||||
}
|
||||
|
||||
.widget-buttons-grid > flowbox > flowboxchild > button {
|
||||
margin: 4px 10px;
|
||||
padding: 6px 12px;
|
||||
background: transparent;
|
||||
border-radius: 8px;
|
||||
}
|
||||
|
||||
.widget-buttons-grid > flowbox > flowboxchild > button:hover {
|
||||
background: @hover;
|
||||
}
|
||||
|
||||
/* Music player */
|
||||
.widget-mpris {
|
||||
background: @background-alt;
|
||||
border-radius: 16px;
|
||||
color: @text;
|
||||
margin: 20px 6px;
|
||||
}
|
||||
|
||||
/* NOTE: Background need *opacity 1* otherwise will turn into the album art blurred */
|
||||
.widget-mpris-player {
|
||||
background-color: @background;
|
||||
border-radius: 22px;
|
||||
padding: 6px 14px;
|
||||
margin: 6px;
|
||||
}
|
||||
|
||||
.widget-mpris > box > button {
|
||||
color: @text;
|
||||
border-radius: 20px;
|
||||
}
|
||||
|
||||
.widget-mpris button {
|
||||
color: alpha(@text, 0.6);
|
||||
}
|
||||
|
||||
.widget-mpris button:hover {
|
||||
color: @text;
|
||||
}
|
||||
|
||||
.widget-mpris-album-art {
|
||||
border-radius: 16px;
|
||||
}
|
||||
|
||||
.widget-mpris-title {
|
||||
font-weight: 700;
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
.widget-mpris-subtitle {
|
||||
font-weight: 500;
|
||||
font-size: 0.8rem;
|
||||
}
|
||||
|
||||
picture.mpris-background {
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
/* Volume */
|
||||
.widget-volume {
|
||||
background: @background;
|
||||
color: @background;
|
||||
padding: 4px;
|
||||
margin: 6px;
|
||||
border-radius: 6px;
|
||||
}
|
||||
@@ -0,0 +1,151 @@
|
||||
@define-color text @fg;
|
||||
@define-color background-alt @bg1;
|
||||
@define-color background @bg0;
|
||||
@define-color selected @green;
|
||||
@define-color hover @bg2;
|
||||
@define-color urgent @red;
|
||||
|
||||
* {
|
||||
/*background-alt: @color1; Buttons background */
|
||||
/*selected: @color2; Button selected */
|
||||
/*hover: @color5; Hover button */
|
||||
/*urgent: @color6; Urgency critical */
|
||||
/*text-selected: @background; */
|
||||
|
||||
color: @text;
|
||||
|
||||
all: unset;
|
||||
font-size: 14px;
|
||||
font-family: "Rubik", "JetBrains Mono Nerd Font Propo";
|
||||
transition: 200ms;
|
||||
}
|
||||
|
||||
.notification-row {
|
||||
outline: none;
|
||||
margin: 0;
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
.floating-notifications.background .notification-row .notification-background {
|
||||
background: alpha(@background, 0.55);
|
||||
box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.6);
|
||||
border: 1px solid @selected;
|
||||
border-radius: 24px;
|
||||
margin: 16px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification {
|
||||
padding: 6px;
|
||||
border-radius: 12px;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification.critical {
|
||||
border: 2px solid @urgent;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
.notification-content {
|
||||
margin: 14px;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> * {
|
||||
min-height: 3.4em;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> *
|
||||
.notification-action {
|
||||
border-radius: 8px;
|
||||
background-color: @background-alt;
|
||||
margin: 6px;
|
||||
border: 1px solid transparent;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> *
|
||||
.notification-action:hover {
|
||||
background-color: @hover;
|
||||
border: 1px solid @selected;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> *
|
||||
.notification-action:active {
|
||||
background-color: @selected;
|
||||
color: @background;
|
||||
}
|
||||
|
||||
.image {
|
||||
margin: 10px 20px 10px 0px;
|
||||
}
|
||||
|
||||
.summary {
|
||||
font-weight: 800;
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
.body {
|
||||
font-size: 0.8rem;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.close-button {
|
||||
margin: 6px;
|
||||
padding: 2px;
|
||||
border-radius: 6px;
|
||||
background-color: transparent;
|
||||
border: 1px solid transparent;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.close-button:hover {
|
||||
background-color: @selected;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.close-button:active {
|
||||
background-color: @selected;
|
||||
color: @background;
|
||||
}
|
||||
|
||||
.notification.critical progress {
|
||||
background-color: @selected;
|
||||
}
|
||||
|
||||
.notification.low progress,
|
||||
.notification.normal progress {
|
||||
background-color: @selected;
|
||||
}
|
||||
@@ -7,11 +7,13 @@
|
||||
"hyprland/workspaces",
|
||||
"pulseaudio",
|
||||
"custom/network",
|
||||
"battery",
|
||||
],
|
||||
|
||||
"clock": {
|
||||
"interval": 60,
|
||||
"format": "{:%H:%M}",
|
||||
"tooltip": false,
|
||||
},
|
||||
|
||||
"hyprland/workspaces": {
|
||||
@@ -32,8 +34,7 @@
|
||||
"default": "",
|
||||
},
|
||||
"persistent-workspaces": {
|
||||
"DP-1": ["1", "2", "3", "4", "5"],
|
||||
"DP-2": ["6", "7", "8", "9", "10"],
|
||||
"eDP-1": ["1", "2", "3", "4", "5"],
|
||||
},
|
||||
"on-click": "activate",
|
||||
"on-scroll-down": "hyprctl dispatch workspace e+1",
|
||||
@@ -43,7 +44,7 @@
|
||||
"pulseaudio": {
|
||||
"format": "{volume}% {icon}",
|
||||
"format-bluetooth": "{volume}% {icon}",
|
||||
"format-muted": "",
|
||||
"format-muted": "Muted ",
|
||||
"format-icons": {
|
||||
"headphone": "",
|
||||
"hands-free": "",
|
||||
@@ -52,7 +53,7 @@
|
||||
"phone-muted": "",
|
||||
"portable": "",
|
||||
"car": "",
|
||||
"default": ["", ""],
|
||||
"default": ["", "", ""],
|
||||
},
|
||||
"scroll-step": 1,
|
||||
"on-click": "pavucontrol",
|
||||
@@ -62,11 +63,20 @@
|
||||
"custom/network": {
|
||||
"exec": "~/.config/waybar/scripts/network.sh",
|
||||
"return-type": "json",
|
||||
"interval": 10,
|
||||
"interval": 1,
|
||||
"format": "{}",
|
||||
"tooltip": false,
|
||||
"max-length": 50,
|
||||
"on-click": "~/.config/wofi/wifi/wifi.sh &",
|
||||
"on-click-right": "~/.config/wofi/wifi/wifinew.sh &",
|
||||
"on-click": "~/.config/rofi/wifi/wifi.sh &",
|
||||
"on-click-right": "~/.config/rofi/wifi/wifinew.sh &",
|
||||
"tooltip": false,
|
||||
},
|
||||
|
||||
"battery": {
|
||||
"format": "{capacity}",
|
||||
"states": {
|
||||
"warning": 30,
|
||||
"critical": 15,
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
pkill waybar || waybar &
|
||||
pkill swaync || swaync &
|
||||
|
||||
@@ -5,9 +5,9 @@
|
||||
# -f: Specific fields
|
||||
ACTIVE_CONN=$(nmcli -t -f NAME,TYPE connection show --active | grep -E '802-3-ethernet|802-11-wireless' | head -n 1)
|
||||
|
||||
# If no connection is found, output nothing
|
||||
# If no connection is found, output disconnected icon
|
||||
if [ -z "$ACTIVE_CONN" ]; then
|
||||
echo ""
|
||||
echo "{\"text\": \" \", \"class\": \"disconnected\"}"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
@@ -18,8 +18,22 @@ CONN_TYPE="${ACTIVE_CONN##*:}"
|
||||
# Output JSON for Waybar custom module
|
||||
if [[ "$CONN_TYPE" == *"802-11-wireless"* ]]; then
|
||||
# It's Wi-Fi
|
||||
echo "{\"text\": \"$CONN_NAME \", \"class\": \"wifi\"}"
|
||||
SIGNAL=$(nmcli -t -f IN-USE,SIGNAL dev wifi | grep '^\*' | cut -d':' -f2)
|
||||
if [ -z "$SIGNAL" ]; then
|
||||
ICON=""
|
||||
elif [ "$SIGNAL" -ge 80 ]; then
|
||||
ICON=""
|
||||
elif [ "$SIGNAL" -ge 60 ]; then
|
||||
ICON=""
|
||||
elif [ "$SIGNAL" -ge 40 ]; then
|
||||
ICON=""
|
||||
elif [ "$SIGNAL" -ge 20 ]; then
|
||||
ICON=""
|
||||
else
|
||||
ICON=""
|
||||
fi
|
||||
echo "{\"text\": \"$CONN_NAME $ICON \", \"class\": \"wifi\"}"
|
||||
else
|
||||
# It's Ethernet
|
||||
echo "{\"text\": \"$CONN_NAME \", \"class\": \"ethernet\"}"
|
||||
echo "{\"text\": \"$CONN_NAME \", \"class\": \"ethernet\"}"
|
||||
fi
|
||||
|
||||
@@ -3,11 +3,11 @@
|
||||
* {
|
||||
all: unset;
|
||||
font-family:
|
||||
"Rubik", "JetBrainsMono Nerd Front Propo", "Noto Sans CJK JP",
|
||||
"Rubik", "JetBrainsMono Nerd Font Propo", "Noto Sans CJK JP",
|
||||
"Noto Sans CJK KR";
|
||||
}
|
||||
|
||||
.tooltip {
|
||||
tooltip {
|
||||
background-color: @bg1;
|
||||
color: @fg;
|
||||
margin: 10px;
|
||||
@@ -18,7 +18,7 @@
|
||||
.modules-center {
|
||||
background-color: @bg1;
|
||||
color: @fg;
|
||||
padding: 2px 8px;
|
||||
padding: 4px 18px;
|
||||
border-radius: 99px;
|
||||
}
|
||||
|
||||
@@ -27,19 +27,21 @@
|
||||
}
|
||||
|
||||
#workspaces {
|
||||
min-width: 100px;
|
||||
background-color: @bg2;
|
||||
padding: 2px 4px;
|
||||
margin: 2px 0;
|
||||
font-size: 0.95rem;
|
||||
padding: 2px 3px;
|
||||
margin: 3px 0;
|
||||
border-radius: 99px;
|
||||
}
|
||||
|
||||
#workspaces button {
|
||||
background-color: @bg3;
|
||||
padding: 2px 4px;
|
||||
padding: 0 5px;
|
||||
border-radius: 99px;
|
||||
margin: 0 2px;
|
||||
transition: all 300ms ease-in-out;
|
||||
min-width: 7px;
|
||||
min-width: 10px;
|
||||
}
|
||||
|
||||
#workspaces button.empty {
|
||||
@@ -47,8 +49,26 @@
|
||||
}
|
||||
|
||||
#workspaces button.active {
|
||||
background-color: @bg1;
|
||||
background-color: @green;
|
||||
min-width: 1.5rem;
|
||||
font-weight: 500;
|
||||
transition: none;
|
||||
transition: all 300ms ease-in-out;
|
||||
}
|
||||
|
||||
#battery {
|
||||
background-color: @green;
|
||||
margin: 6px 0;
|
||||
padding: 0 8px;
|
||||
border-radius: 99px;
|
||||
font-weight: 500;
|
||||
color: @bg1;
|
||||
letter-spacing: -1px;
|
||||
}
|
||||
|
||||
#battery.warning {
|
||||
background-color: @yellow;
|
||||
}
|
||||
|
||||
#battery.critical {
|
||||
background-color: @red;
|
||||
}
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
# macOS Spotlight-like proportions
|
||||
width=600
|
||||
height=420
|
||||
location=center
|
||||
|
||||
# Behavior
|
||||
hide_scroll=true
|
||||
insensitive=true
|
||||
allow_images=true
|
||||
image_size=24
|
||||
dynamic_lines=true
|
||||
@@ -1,57 +0,0 @@
|
||||
/* Wofi macOS-style Gruvbox Theme */
|
||||
|
||||
window {
|
||||
margin: 0px;
|
||||
border: 1px solid #504945;
|
||||
border-radius: 12px;
|
||||
background-color: #282828;
|
||||
font-family:
|
||||
"JetBrains Mono", "San Francisco", "Helvetica Neue", sans-serif;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
#input {
|
||||
margin: 12px;
|
||||
padding: 10px 14px;
|
||||
border: 1px solid #3c3836;
|
||||
border-radius: 8px;
|
||||
color: #ebdbb2;
|
||||
background-color: #1d2021;
|
||||
}
|
||||
|
||||
#inner-box {
|
||||
margin: 4px 12px 12px 12px;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
#outer-box {
|
||||
margin: 0px;
|
||||
padding: 0px;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
#scroll {
|
||||
margin: 0px;
|
||||
border: none;
|
||||
}
|
||||
|
||||
#text {
|
||||
margin: 4px;
|
||||
padding: 6px 10px;
|
||||
color: #ebdbb2;
|
||||
}
|
||||
|
||||
#entry {
|
||||
margin: 2px 0px;
|
||||
border-radius: 6px;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
#entry:selected {
|
||||
background-color: #504945;
|
||||
}
|
||||
|
||||
#entry:selected #text {
|
||||
color: #fabd2f; /* Gruvbox Yellow accent */
|
||||
font-weight: bold;
|
||||
}
|
||||
@@ -1,18 +0,0 @@
|
||||
#!/bin/bash
|
||||
# TO CONNECT TO WIFI USING DMENU | ROFI WHICH IS CONNECTED BEFORE
|
||||
# bssid=$(nmcli device wifi list | sed -n '1!P'| cut -b 9- | dmenu -p "Wifi" -l 10 | awk '{print $1}')
|
||||
|
||||
dir="$HOME/.config/wofi"
|
||||
theme='style-1'
|
||||
|
||||
# [ -z "$bssid" ] && exit 1
|
||||
# nmcli device wifi connect $bssid
|
||||
# notify-send "📶 WiFi Connected"
|
||||
|
||||
bssid=$(nmcli device wifi list | sed -n '1!P'| cut -b 9- | wofi --dmenu --style ${dir}/${theme}.css -p " " --lines 10 | awk '{print $1}')
|
||||
[ -z "$bssid" ] && exit 1
|
||||
if nmcli device wifi connect "$bssid"; then
|
||||
notify-send "📶 WiFi Connected" "Successfully connected to network."
|
||||
else
|
||||
notify-send -u critical "⚠️ WiFi Error" "Failed to connect to network."
|
||||
fi
|
||||
@@ -1,22 +0,0 @@
|
||||
#!/bin/bash
|
||||
# SCRIPT TO CONNECT TO NEW WIFI USING DMENU | ROFI
|
||||
|
||||
dir="$HOME/.config/wofi"
|
||||
theme='style-1'
|
||||
|
||||
# bssid=$(nmcli device wifi list | sed -n '1!P'| cut -b 9- | dmenu -p "Wifi" -l 10 | awk '{print $1}')
|
||||
# [ -z "$bssid" ] && exit 1
|
||||
# pass=$(echo "" | dmenu -p "Enter password")
|
||||
# [ -z "$pass" ] && notify-send "🔑 Password not enterd" && exit 1
|
||||
# nmcli device wifi connect $bssid password $pass
|
||||
# notify-send "📶 New WiFi Connected"
|
||||
|
||||
bssid=$(nmcli device wifi list | sed -n '1!P' | cut -b 9- | wofi --dmenu --style ${dir}/${theme}.css -p " " --lines 10 | awk '{print $1}')
|
||||
[ -z "$bssid" ] && exit 1
|
||||
pass=$(echo "" | wofi --dmenu --style ${dir}/${theme}.css -p " Enter password" --password)
|
||||
[ -z "$pass" ] && notify-send "🔑 Password not entered" && exit 1
|
||||
if nmcli device wifi connect "$bssid" password "$pass"; then
|
||||
notify-send "📶 New WiFi Connected" "Successfully connected to network."
|
||||
else
|
||||
notify-send -u critical "⚠️ WiFi Error" "Failed to connect to network."
|
||||
fi
|
||||