Initial commit
This commit is contained in:
commit
44ca2ba179
11 changed files with 968 additions and 0 deletions
137
.config/waybar/config.jsonc
Normal file
137
.config/waybar/config.jsonc
Normal file
|
|
@ -0,0 +1,137 @@
|
|||
{
|
||||
"layer": "top",
|
||||
"position": "top",
|
||||
"margin-bottom": 0,
|
||||
"spacing" : 0,
|
||||
"modules-left": [
|
||||
"hyprland/workspaces",
|
||||
"custom/uptime",
|
||||
"cpu",
|
||||
"memory"
|
||||
],
|
||||
|
||||
"modules-center": ["clock"],
|
||||
|
||||
"modules-right": [
|
||||
"bluetooth",
|
||||
"network",
|
||||
"pulseaudio",
|
||||
"backlight",
|
||||
"battery",
|
||||
"custom/power"
|
||||
],
|
||||
|
||||
"hyprland/workspaces": {
|
||||
"format": "{name}: {icon}",
|
||||
"format-icons": {
|
||||
"active": "",
|
||||
"default": ""
|
||||
}
|
||||
},
|
||||
|
||||
"bluetooth": {
|
||||
"format": "",
|
||||
"format-on": "{icon}",
|
||||
"format-off": "{icon}",
|
||||
"format-connected":"{icon}",
|
||||
"format-icons":{
|
||||
"on":"",
|
||||
"off": "",
|
||||
"connected": ""
|
||||
},
|
||||
"on-click": "ghostty -e bluetuith",
|
||||
"tooltip-format-connected":"{device_enumerate}"
|
||||
},
|
||||
|
||||
"custom/music": {
|
||||
"format": " {}",
|
||||
"escape": true,
|
||||
"interval": 5,
|
||||
"tooltip": false,
|
||||
"exec": "playerctl metadata --format='{{ artist }} - {{ title }}'",
|
||||
"on-click": "playerctl play-pause",
|
||||
"max-length": 50
|
||||
},
|
||||
|
||||
"clock": {
|
||||
"timezone": "Europe/Berlin",
|
||||
"tooltip": false,
|
||||
"format": "{:%H:%M:%S - %A, %d}",
|
||||
"interval": 1
|
||||
},
|
||||
|
||||
"network": {
|
||||
"format-wifi": "",
|
||||
"format-ethernet": " ",
|
||||
"format-disconnected": " ",
|
||||
"interval": 5,
|
||||
"tooltip-format": "{essid} ({signalStrength}%)",
|
||||
"on-click": "nm-connection-editor"
|
||||
|
||||
},
|
||||
|
||||
"cpu": {
|
||||
"interval": 1,
|
||||
"format": " {icon0}{icon1}{icon2}{icon3} {usage:>2}%",
|
||||
"format-icons": ["▁", "▂", "▃", "▄", "▅", "▆", "▇", "█"],
|
||||
"on-click": "ghostty -e htop"
|
||||
},
|
||||
|
||||
"memory": {
|
||||
"interval": 30,
|
||||
"format": " {used:0.1f}G/{total:0.1f}G",
|
||||
"tooltip-format": "Memory"
|
||||
},
|
||||
|
||||
"custom/uptime": {
|
||||
"format": "{}",
|
||||
"format-icon": [""],
|
||||
"tooltip": false,
|
||||
"interval": 1600,
|
||||
"exec": "$HOME/.config/waybar/scripts/uptime.sh"
|
||||
},
|
||||
|
||||
"backlight": {
|
||||
"format": "{icon} {percent}%",
|
||||
"format-icons": ["","", "", "","","",""],
|
||||
"tooltip": false
|
||||
},
|
||||
|
||||
"pulseaudio": {
|
||||
"format": "{icon} {volume}%",
|
||||
"format-muted": "",
|
||||
"format-icons": {
|
||||
"default": ["", "", " "]
|
||||
},
|
||||
"on-click": "pavucontrol"
|
||||
},
|
||||
|
||||
"battery": {
|
||||
"interval":2,
|
||||
"states": {
|
||||
// "good": 95,
|
||||
"warning": 30,
|
||||
"critical": 15
|
||||
},
|
||||
"format": "{icon} {capacity}%",
|
||||
"format-full": "{icon} {capacity}%",
|
||||
"format-charging": " {capacity}%",
|
||||
"format-plugged": " {capacity}%",
|
||||
"format-alt": "{icon} {time}",
|
||||
"format-icons": ["", "", "", "", ""]
|
||||
},
|
||||
|
||||
"custom/lock": {
|
||||
"tooltip": false,
|
||||
"on-click": "sh -c '(sleep 0s; hyprlock)' & disown",
|
||||
"format" : ""
|
||||
},
|
||||
|
||||
"custom/power": {
|
||||
"format": "",
|
||||
"tooltip": false,
|
||||
"tooltip-format": "Power Menu",
|
||||
"on-click": "~/.config/waybar/scripts/power-menu.sh"
|
||||
}
|
||||
|
||||
}
|
||||
72
.config/waybar/rofi/power-menu.rasi
Normal file
72
.config/waybar/rofi/power-menu.rasi
Normal file
|
|
@ -0,0 +1,72 @@
|
|||
/* Power menu */
|
||||
|
||||
@theme "~/.config/rofi/theme.rasi"
|
||||
|
||||
configuration {
|
||||
font: "JetBrainsMono Nerd Font 8";
|
||||
hover-select: true;
|
||||
me-select-entry: "MousePrimary";
|
||||
me-accept-entry: "!MousePrimary";
|
||||
}
|
||||
|
||||
/* Window */
|
||||
|
||||
window {
|
||||
location: northeast;
|
||||
anchor: north;
|
||||
x-offset: -3px;
|
||||
y-offset: 3px;
|
||||
width: 150px;
|
||||
border: 3px;
|
||||
border-radius: 10px;
|
||||
border-color: @main-br;
|
||||
background-color: @main-bg;
|
||||
children: [ mainbox ];
|
||||
}
|
||||
|
||||
mainbox {
|
||||
spacing: 0;
|
||||
background-color: @main-br;
|
||||
text-color: @main-fg;
|
||||
children: [ textbox-custom, listview ];
|
||||
}
|
||||
|
||||
textbox-custom {
|
||||
font: "JetBrainsMono Nerd Font Bold 2";
|
||||
horizontal-align: 0.5;
|
||||
padding: 0;
|
||||
expand: false;
|
||||
background-color: @select-bg;
|
||||
text-color: @select-fg;
|
||||
expand: false;
|
||||
content: " Power";
|
||||
}
|
||||
|
||||
/* List */
|
||||
|
||||
listview {
|
||||
border: 2px 0 0 0;
|
||||
border-radius: 8px;
|
||||
border-color: @main-br;
|
||||
lines: 6;
|
||||
padding: 6px;
|
||||
background-color: @main-bg;
|
||||
}
|
||||
|
||||
element {
|
||||
padding: 6px;
|
||||
cursor: pointer;
|
||||
background-color: inherit;
|
||||
text-color: @main-fg;
|
||||
}
|
||||
element selected.normal {
|
||||
border-radius: 6px;
|
||||
background-color: @select-bg;
|
||||
text-color: @select-fg;
|
||||
}
|
||||
element-text {
|
||||
padding: 0 6px;
|
||||
cursor: inherit;
|
||||
background-color: inherit;
|
||||
text-color: inherit;
|
||||
}
|
||||
45
.config/waybar/rofi/theme.rasi
Normal file
45
.config/waybar/rofi/theme.rasi
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
/* Catppuccin Frappe */
|
||||
|
||||
* {
|
||||
rosewater: #f2d5cf;
|
||||
flamingo: #eebebe;
|
||||
pink: #f4b8e4;
|
||||
mauve: #ca9ee6;
|
||||
red: #e78284;
|
||||
maroon: #ea999c;
|
||||
peach: #ef9f76;
|
||||
yellow: #e5c890;
|
||||
green: #a6d189;
|
||||
teal: #81c8be;
|
||||
sky: #99d1db;
|
||||
sapphire: #85c1dc;
|
||||
blue: #8caaee;
|
||||
lavender: #babbf1;
|
||||
text: #c6d0f5;
|
||||
subtext1: #b5bfe2;
|
||||
subtext0: #a5adce;
|
||||
overlay2: #949cbb;
|
||||
overlay1: #838ba7;
|
||||
overlay0: #737994;
|
||||
surface2: #626880;
|
||||
surface1: #51576d;
|
||||
surface0: #414559;
|
||||
base: #303446;
|
||||
mantle: #292c3c;
|
||||
crust: #232634;
|
||||
}
|
||||
|
||||
/*
|
||||
bg - background
|
||||
fg - foreground
|
||||
br - border
|
||||
*/
|
||||
|
||||
* {
|
||||
main-bg: @crust;
|
||||
main-fg: @text;
|
||||
main-br: @overlay2;
|
||||
input-bg: @mantle;
|
||||
select-bg: @overlay2;
|
||||
select-fg: @crust;
|
||||
}
|
||||
30
.config/waybar/scripts/power-menu.sh
Executable file
30
.config/waybar/scripts/power-menu.sh
Executable file
|
|
@ -0,0 +1,30 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
config="$HOME/.config/waybar/rofi/power-menu.rasi"
|
||||
|
||||
actions=$(echo -e " Lock\n Shutdown\n Reboot\n Suspend\n Hibernate\n Logout")
|
||||
|
||||
# Display logout menu
|
||||
selected_option=$(echo -e "$actions" | rofi -dmenu -i -config "${config}" || pkill -x rofi)
|
||||
|
||||
# Perform actions based on the selected option
|
||||
case "$selected_option" in
|
||||
*Lock)
|
||||
hyprlock
|
||||
;;
|
||||
*Shutdown)
|
||||
systemctl poweroff
|
||||
;;
|
||||
*Reboot)
|
||||
systemctl reboot
|
||||
;;
|
||||
*Suspend)
|
||||
systemctl suspend
|
||||
;;
|
||||
*Hibernate)
|
||||
systemctl hibernate
|
||||
;;
|
||||
*Logout)
|
||||
loginctl kill-session "$XDG_SESSION_ID"
|
||||
;;
|
||||
esac
|
||||
195
.config/waybar/style.css
Normal file
195
.config/waybar/style.css
Normal file
|
|
@ -0,0 +1,195 @@
|
|||
/* --- Global Styles --- */
|
||||
* {
|
||||
font-family: 'SF Pro Text', 'Inter', 'Segoe UI, NotoSans Nerd Font', sans-serif;
|
||||
font-size: 13px;
|
||||
min-height: 0;
|
||||
padding-right: 0px;
|
||||
padding-left: 0px;
|
||||
padding-bottom: 0px;
|
||||
}
|
||||
|
||||
/* --- Waybar Container --- */
|
||||
#waybar {
|
||||
background: transparent;
|
||||
color: #c6d0f5;
|
||||
margin: 0px;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
/* --- Left Modules (Individual, Fully Rounded Blocks - With Horizontal Spacing & Simple Hover) --- */
|
||||
#workspaces,
|
||||
#custom-uptime,
|
||||
#memory,
|
||||
#cpu {
|
||||
background-color: #1a1b26;
|
||||
padding: 0.3rem 0.7rem;
|
||||
margin: 5px 0px; /* 5px top/bottom margin, 0px left/right (base for individual control) */
|
||||
border-radius: 0px; /* These modules are always rounded */
|
||||
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
|
||||
min-width: 0;
|
||||
border: none;
|
||||
/* Transition for background-color and color only */
|
||||
transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
|
||||
}
|
||||
|
||||
#workspaces {
|
||||
padding: 2px;
|
||||
margin-left: 7px; /* Margin from the far left edge */
|
||||
margin-right: 5px; /* Spacing after the workspaces module */
|
||||
border-radius: 6px;
|
||||
}
|
||||
#cpu {
|
||||
margin-left: 0px;
|
||||
border-top-left-radius: 6px;
|
||||
border-bottom-left-radius: 6px;
|
||||
}
|
||||
#memory {
|
||||
border-top-right-radius: 6px;
|
||||
border-bottom-right-radius: 6px;
|
||||
margin-right: 7px;
|
||||
}
|
||||
|
||||
/* Simple Hover effects for individual left modules - BRIGHTER COLOR */
|
||||
#custom-uptime:hover,
|
||||
#cpu:hover {
|
||||
background-color: rgb(41, 42, 53); /* Brighter highlight */
|
||||
}
|
||||
#memory:hover {
|
||||
background-color: rgb(41, 42, 53); /* Brighter highlight */
|
||||
}
|
||||
#workspaces button {
|
||||
color: #babbf1;
|
||||
border-radius: 5px; /* Workspaces buttons are always rounded */
|
||||
padding: 0.3rem 0.6rem;
|
||||
background: transparent;
|
||||
transition: all 0.2s ease-in-out;
|
||||
border: none;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
#workspaces button.active {
|
||||
color: #99d1db;
|
||||
background-color: rgba(153, 209, 219, 0.1);
|
||||
box-shadow: inset 0 0 0 1px rgba(153, 209, 219, 0.2);
|
||||
}
|
||||
|
||||
#workspaces button:hover {
|
||||
background: rgb(41, 42, 53); /* Reference bright hover color */
|
||||
color: #c6d0f5;
|
||||
}
|
||||
|
||||
/* --- Center Module (Individual, Fully Rounded Block - With Simple Hover) --- */
|
||||
#clock {
|
||||
background-color: #1a1b26;
|
||||
padding: 0.3rem 0.7rem;
|
||||
margin: 5px 0px;
|
||||
border-radius: 6px; /* This module is always rounded */
|
||||
box-shadow: 0 1px 3px rgba(153, 209, 219, 0.2);
|
||||
min-width: 0;
|
||||
border: none;
|
||||
transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
|
||||
}
|
||||
|
||||
/* Simple Hover effect for clock module - BRIGHTER COLOR */
|
||||
#clock:hover {
|
||||
background-color: rgb(41, 42, 53); /* Brighter highlight */
|
||||
}
|
||||
|
||||
/* --- Right Modules (Single, Seamless Bar ) --- */
|
||||
#bluetooth,
|
||||
#pulseaudio,
|
||||
#backlight,
|
||||
#network,
|
||||
#custom-power,
|
||||
#battery {
|
||||
background-color: #1a1b26;
|
||||
padding: 0.3rem 0.7rem;
|
||||
margin: 5px 0px;
|
||||
border-radius: 0;
|
||||
box-shadow: none;
|
||||
min-width: 0;
|
||||
border: none;
|
||||
transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
|
||||
}
|
||||
#bluetooth:hover,
|
||||
#pulseaudio:hover,
|
||||
#backlight:hover,
|
||||
#network:hover,
|
||||
#cusotom-power:hover,
|
||||
#battery:hover {
|
||||
background-color: rgb(41, 42, 53);
|
||||
}
|
||||
|
||||
#bluetooth {
|
||||
margin-left: 0px;
|
||||
border-top-left-radius: 6px;
|
||||
border-bottom-left-radius: 6px;
|
||||
}
|
||||
|
||||
#custom-power {
|
||||
border-top-right-radius: 6px;
|
||||
border-bottom-right-radius: 6px;
|
||||
margin-right: 7px;
|
||||
}
|
||||
|
||||
#custom-uptime {
|
||||
color: #babbf1;
|
||||
}
|
||||
#cpu {
|
||||
color: #c6d0f5;
|
||||
}
|
||||
|
||||
#clock {
|
||||
color: #99d1db;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
#pulseaudio {
|
||||
color: #c6d0f5;
|
||||
}
|
||||
#backlight {
|
||||
color: #c6d0f5;
|
||||
}
|
||||
|
||||
#network {
|
||||
color: #c6d0f5;
|
||||
}
|
||||
|
||||
#network.disconnected {
|
||||
color: #e78284;
|
||||
}
|
||||
|
||||
#custom-power {
|
||||
color: #babbf1;
|
||||
}
|
||||
#bluetooth {
|
||||
color: #888888;
|
||||
font-size: 16px;
|
||||
}
|
||||
#bluetooth.on {
|
||||
color: #2196f3;
|
||||
}
|
||||
#bluetooth.connected {
|
||||
color: #99d1db;
|
||||
}
|
||||
#battery {
|
||||
color: #99d1db;;
|
||||
}
|
||||
#battery.charging {
|
||||
color: #a6d189;
|
||||
}
|
||||
#battery.warning:not(.charging) {
|
||||
color: #e78284;
|
||||
}
|
||||
|
||||
/* --- Tooltip Styles --- */
|
||||
tooltip {
|
||||
background-color: #1a1b26;
|
||||
color: #dddddd;
|
||||
padding: 5px 12px;
|
||||
margin: 5px 0px;
|
||||
border-radius: 6px;
|
||||
border: 1px solid rgba(255, 255, 255, 0.1);
|
||||
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
|
||||
font-size: 12px;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue