waybar: updated waybar style and configuration

This commit is contained in:
Nico 2025-05-03 16:15:57 +10:00
parent deb4cec853
commit 712ad45df1
2 changed files with 371 additions and 305 deletions

View file

@ -1,159 +1,204 @@
@define-color text #c0caf5;
@define-color background #24283b;
@define-color backgroundalt #181b29;
@define-color white #F2F2F2;
@define-color black #000203;
@define-color text #BECBCB;
@define-color lightgray #686868;
@define-color darkgray #353535;
@define-color red #F38BA8;
@define-color black #1d202f;
@define-color red #f7768e;
@define-color green #9ece6a;
@define-color yellow #e0af68;
@define-color blue #7aa2f7;
@define-color purple #bb9af7;
@define-color cyan #7dcfff;
@define-color gray #a9b1d6;
@define-color black-transparent-1 rgba(0, 0, 0, 0.1);
@define-color black-transparent-2 rgba(0, 0, 0, 0.2);
@define-color black-transparent-3 rgba(0, 0, 0, 0.3);
@define-color black-transparent-4 rgba(0, 0, 0, 0.4);
@define-color black-transparent-5 rgba(0, 0, 0, 0.5);
@define-color black-transparent-6 rgba(0, 0, 0, 0.6);
@define-color black-transparent-7 rgba(0, 0, 0, 0.7);
@define-color black-transparent-8 rgba(0, 0, 0, 0.8);
@define-color black-transparent-9 rgba(0, 0, 0, 0.9);
@define-color black-solid rgba(0, 0, 0, 1.0);
* {
/* `otf-font-awesome` is required to be installed for icons */
font-family: FontAwesome, Roboto, Helvetica, Arial, sans-serif;
font-size: 16px;
font-family:
Iosevka,
Material Design Icons Desktop;
font-size: 13px;
padding: 0;
margin: 0;
}
window#waybar {
background-color: @background;
background-color: @black-transparent-9;
color: @text;
transition-property: background-color;
transition-duration: .5s;
}
window#waybar.hidden {
opacity: 0.2;
}
/*
window#waybar.empty {
background-color: transparent;
}
window#waybar.solo {
background-color: #FFFFFF;
}
*/
button {
/* Use box-shadow instead of border so the text isn't offset */
box-shadow: inset 0 -3px transparent;
/* Avoid rounded borders under each button name */
border: none;
border-radius: 0;
}
/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
button:hover {
background: inherit;
box-shadow: @backgroundalt;
tooltip {
background: @black-solid;
border: 1px solid @darkgray;
border-radius: 0;
}
/* you can set a style on hover for any module like this */
#pulseaudio:hover {
background-color: #a37800;
}
#workspaces button {
padding: 0 5px;
background-color: transparent;
color: #ffffff;
}
#workspaces button:hover {
background: rgba(0, 0, 0, 0.2);
color: @red;
}
#workspaces button.focused {
background-color: #64727D;
box-shadow: inset 0 -3px #ffffff;
}
#workspaces button.urgent {
background-color: @yellow;
}
#clock,
#battery,
#cpu,
#memory,
#disk,
#temperature,
#backlight,
#network,
#pulseaudio,
#wireplumber,
#custom-media,
#tray,
#mode,
#idle_inhibitor,
#scratchpad,
#power-profiles-daemon,
#mpd {
padding: 0 10px;
color: #ffffff;
tooltip label {
color: @text;
}
#workspaces {
}
#workspaces button {
background-color: transparent;
color: @lightgray;
transition: all 0.3s ease;
}
#workspaces button:hover {
box-shadow: inherit;
text-shadow: inherit;
background: transparent;
border: 1px solid rgba(0, 0, 0, 0);
color: @white;
transition: all 0.3s ease;
}
#workspaces button.focused,
#workspaces button.active {
color: @white;
transition: all 0.3s ease;
animation: colored-gradient 10s ease infinite;
}
#workspaces button.urgent {
background-color: @red;
color: @black;
transition: all 0.3s ease;
}
/* -------------------------------------------------------------------------------- */
#submap,
#mode,
#tray,
#cpu,
#memory,
#backlight,
#pulseaudio.audio,
#pulseaudio.microphone,
#network.wlo1,
#network.eno1,
#bluetooth,
#battery,
#clock,
#mpd,
#custom-media,
#custom-notification {
background-color: transparent;
color: @text;
margin-top: 4px;
margin-bottom: 4px;
margin-left: 0;
margin-right: 0;
border-radius: 20px;
transition: all 0.3s ease;
}
#submap {
border: 0;
}
/* -------------------------------------------------------------------------------- */
/* If workspaces is the leftmost module, omit left margin */
.modules-left > widget:first-child > #workspaces button,
.modules-left > widget:first-child > #tray,
.modules-left > widget:first-child > #cpu,
.modules-left > widget:first-child > #memory,
.modules-left > widget:first-child > #backlight,
.modules-left > widget:first-child > #pulseaudio.audio,
.modules-left > widget:first-child > #pulseaudio.microphone,
.modules-left > widget:first-child > #network.wlo1,
.modules-left > widget:first-child > #network.eno1,
.modules-left > widget:first-child > #bluetooth,
.modules-left > widget:first-child > #battery,
.modules-left > widget:first-child > #clock,
.modules-left > widget:first-child > #custom-notification {
margin-top: 4px;
}
.modules-right > widget:last-child > #workspaces button,
.modules-right > widget:last-child > #tray,
.modules-right > widget:last-child > #cpu,
.modules-right > widget:last-child > #memory,
.modules-right > widget:last-child > #backlight,
.modules-right > widget:last-child > #pulseaudio.audio,
.modules-right > widget:last-child > #pulseaudio.microphone,
.modules-right > widget:last-child > #network.wlo1,
.modules-right > widget:last-child > #network.eno1,
.modules-right > widget:last-child > #bluetooth,
.modules-right > widget:last-child > #battery,
.modules-right > widget:last-child > #clock,
.modules-right > widget:last-child > #custom-notification {
margin-bottom: 4px;
}
/* If workspaces is the leftmost module, omit left margin */
.modules-left > widget:first-child > #workspaces {
margin-left: 0;
/* -------------------------------------------------------------------------------- */
#tray {
background-color: transparent;
padding: 1px 5px;
}
#tray menu {
padding: 2px;
border-radius: 0;
}
/* If workspaces is the rightmost module, omit right margin */
.modules-right > widget:last-child > #workspaces {
margin-right: 0;
/* -------------------------------------------------------------------------------- */
#backlight-slider {
margin-top: 10px;
}
#clock {
color: @blue;
padding-bottom: 4px;
#backlight-slider slider {
min-height: 0px;
min-width: 0px;
opacity: 0;
background-image: none;
border: none;
box-shadow: none;
}
#backlight-slider trough {
min-height: 80px;
min-width: 10px;
border-radius: 5px;
background-color: black;
}
#backlight-slider highlight {
min-width: 6px;
border: 1px solid @text;
border-radius: 5px;
background-color: @text;
}
#wireplumber {
color: @yellow;
font-size: 26px;
/* -------------------------------------------------------------------------------- */
#pulseaudio-slider {
margin-top: 6px;
}
#network {
color: @cyan;
font-size: 23px;
#pulseaudio-slider slider {
min-height: 0px;
min-width: 0px;
opacity: 0;
background-image: none;
border: none;
box-shadow: none;
}
#battery {
color: @text;
font-size: 23px;
#pulseaudio-slider trough {
min-height: 80px;
min-width: 5px;
border-radius: 5px;
background-color: black;
}
#battery.charging, #battery.plugged {
color: #26A65B;
}
@keyframes blink {
to {
background-color: #ffffff;
color: #000000;
}
}
/* Using steps() instead of linear as a timing function to limit cpu usage */
#battery.critical:not(.charging) {
color: @red;
background-color: @backgroundalt;
font-size: 23px;
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: steps(12);
animation-iteration-count: infinite;
animation-direction: alternate;
}
#custom-power {
color: @red;
#pulseaudio-slider highlight {
min-width: 5px;
border: 1px solid @text;
border-radius: 5px;
background-color: @text;
}