nixos-config/home/waybar.nix
2023-08-11 14:45:50 +02:00

337 lines
7.8 KiB
Nix

{
xdg.configFile."waybar/config".text = /* json */ ''
{
"layer": "top",
"position": "top",
"mod": "dock",
"height": 32,
"exclusive": true,
"passthrough": false,
"gtk-layer-shell": true,
"modules-left": ["custom/padd","custom/l_end","custom/power","custom/r_end","custom/l_end","wlr/taskbar","custom/r_end","","custom/padd"],
"modules-center": ["custom/padd","custom/l_end","clock","custom/r_end","custom/padd"],
"modules-right": ["custom/padd","custom/l_end","tray","custom/r_end","custom/l_end","network","bluetooth","pulseaudio","custom/r_end","custom/padd"],
"custom/power": {
"format": "{}",
"exec": "echo ; echo logout",
"on-click": "wlogout -b 2 -c 0 -r 0 -L 930 -R 930 -T 300 -B 300 --protocol layer-shell",
"interval" : 86400, // once every day
"tooltip": true
},
"wlr/taskbar": {
"format": "{icon}",
"icon-size": 18,
"icon-theme": "Tela-circle-dracula",
"spacing": 0,
"tooltip-format": "{title}",
"on-click": "activate",
"on-click-middle": "close",
"ignore-list": [
"Alacritty"
],
"app_ids-mapping": {
"firefoxdeveloperedition": "firefox-developer-edition"
}
},
"clock": {
"format": "{: %I:%M %p 󰃭 %a %d}",
"format-alt": "{:󰥔 %H:%M %b %Y}",
"tooltip-format": "<tt><big>{calendar}</big></tt>"
},
"tray": {
"icon-size": 18,
"spacing": 5
},
"network": {
// "interface": "wlp2*", // (Optional) To force the use of this interface
"format-wifi": "󰤨 {essid}",
"format-ethernet": "󱘖 Wired",
"tooltip-format": "󱘖 {ipaddr} {bandwidthUpBytes} {bandwidthDownBytes}",
"format-linked": "󱘖 {ifname} (No IP)",
"format-disconnected": " Disconnected",
"format-alt": "󰤨 {signalStrength}%",
"interval": 5
},
"bluetooth": {
"format": "",
"format-disabled": "", // an empty format will hide the module
"format-connected": " {num_connections}",
"tooltip-format": " {device_alias}",
"tooltip-format-connected": "{device_enumerate}",
"tooltip-format-enumerate-connected": " {device_alias}"
},
"pulseaudio": {
"format": "{icon} {volume}",
"format-muted": "",
"on-click": "pavucontrol -t 3",
"on-click-middle": "~/.config/hypr/scripts/volumecontrol.sh -o m",
"on-scroll-up": "~/.config/hypr/scripts/volumecontrol.sh -o i",
"on-scroll-down": "~/.config/hypr/scripts/volumecontrol.sh -o d",
"tooltip-format": "{icon} {desc} // {volume}%",
"scroll-step": 5,
"format-icons": {
"headphone": "",
"hands-free": "",
"headset": "",
"phone": "",
"portable": "",
"car": "",
"default": ["", "", ""]
}
},
// "pulseaudio#microphone": {
// "format": "{format_source}",
// "format-source": "",
// "format-source-muted": "",
// "on-click": "pavucontrol -t 4",
// "on-click-middle": "~/.config/hypr/scripts/volumecontrol.sh -i m",
// "on-scroll-up": "~/.config/hypr/scripts/volumecontrol.sh -i i",
// "on-scroll-down": "~/.config/hypr/scripts/volumecontrol.sh -i d",
// "tooltip-format": "{format_source} {source_desc} // {source_volume}%",
// "scroll-step": 5
// },
// modules for padding //
"custom/l_end": {
"format": " ",
"interval" : "once",
"tooltip": false
},
"custom/r_end": {
"format": " ",
"interval" : "once",
"tooltip": false
},
"custom/sl_end": {
"format": " ",
"interval" : "once",
"tooltip": false
},
"custom/sr_end": {
"format": " ",
"interval" : "once",
"tooltip": false
},
"custom/rl_end": {
"format": " ",
"interval" : "once",
"tooltip": false
},
"custom/rr_end": {
"format": " ",
"interval" : "once",
"tooltip": false
},
"custom/padd": {
"format": " ",
"interval" : "once",
"tooltip": false
}
}
'';
xdg.configFile."waybar/style.css".text = /* css */ ''
* {
border: none;
border-radius: 0px;
font-family: "JetBrainsMono Nerd Font";
font-weight: bold;
font-size: 11px;
min-height: 10px;
}
@import "themes/Catppuccin-Mocha.css";
window#waybar {
background: @bar-bg;
}
tooltip {
background: @tool-bg;
color: @tool-color;
border-radius: 21px;
border-width: 1px;
border-style: solid;
border-color: @tool-border;
}
#workspaces button {
box-shadow: none;
text-shadow: none;
padding: 0px;
border-radius: 9px;
margin-top: 3px;
margin-bottom: 3px;
padding-left: 3px;
padding-right: 3px;
color: @wb-color;
animation: gradient_f 20s ease-in infinite;
transition: all 0.5s cubic-bezier(.55,-0.68,.48,1.682);
}
#workspaces button.active {
background: @wb-act-bg;
color: @wb-act-color;
margin-left: 3px;
padding-left: 12px;
padding-right: 12px;
margin-right: 3px;
animation: gradient_f 20s ease-in infinite;
transition: all 0.3s cubic-bezier(.55,-0.68,.48,1.682);
}
#workspaces button:hover {
background: @wb-hvr-bg;
color: @wb-hvr-color;
padding-left: 3px;
padding-right: 3px;
animation: gradient_f 20s ease-in infinite;
transition: all 0.3s cubic-bezier(.55,-0.68,.48,1.682);
}
#taskbar button {
box-shadow: none;
text-shadow: none;
padding: 0px;
border-radius: 9px;
margin-top: 3px;
margin-bottom: 3px;
padding-left: 3px;
padding-right: 3px;
color: @wb-color;
animation: gradient_f 20s ease-in infinite;
transition: all 0.5s cubic-bezier(.55,-0.68,.48,1.682);
}
#taskbar button.active {
background: @wb-act-bg;
color: @wb-act-color;
margin-left: 3px;
padding-left: 12px;
padding-right: 12px;
margin-right: 3px;
animation: gradient_f 20s ease-in infinite;
transition: all 0.3s cubic-bezier(.55,-0.68,.48,1.682);
}
#taskbar button:hover {
background: @wb-hvr-bg;
color: @wb-hvr-color;
padding-left: 3px;
padding-right: 3px;
animation: gradient_f 20s ease-in infinite;
transition: all 0.3s cubic-bezier(.55,-0.68,.48,1.682);
}
#cpu,
#memory,
#battery,
#clock,
#workspaces,
#window,
#taskbar,
#network,
#bluetooth,
#pulseaudio,
#mpris,
#custom-updates,
#custom-wallchange,
#custom-mode,
#custom-cliphist,
#custom-power,
#custom-wbar,
#custom-l_end,
#custom-r_end,
#custom-sl_end,
#custom-sr_end,
#custom-rl_end,
#custom-rr_end,
#tray {
color: @main-color;
background: @main-bg;
opacity: 1;
margin: 4px 0px 4px 0px;
padding-left: 4px;
padding-right: 4px;
}
#workspaces,
#taskbar {
padding: 0px;
}
#custom-r_end {
border-radius: 0px 21px 21px 0px;
margin-right: 9px;
padding-right: 3px;
}
#custom-l_end {
border-radius: 21px 0px 0px 21px;
margin-left: 9px;
padding-left: 3px;
}
#custom-sr_end {
border-radius: 0px;
margin-right: 9px;
padding-right: 3px;
}
#custom-sl_end {
border-radius: 0px;
margin-left: 9px;
padding-left: 3px;
}
#custom-rr_end {
border-radius: 0px 7px 7px 0px;
margin-right: 9px;
padding-right: 3px;
}
#custom-rl_end {
border-radius: 7px 0px 0px 7px;
margin-left: 9px;
padding-left: 3px;
}
'';
xdg.configFile."waybar/themes/Catppuccin-Mocha.css".text = ''
@define-color bar-bg rgba(0, 0, 0, 0);
@define-color main-color #cdd6f4;
@define-color main-bg #11111b;
@define-color tool-bg #1e1e2e;
@define-color tool-color #cdd6f4;
@define-color tool-border #11111b;
@define-color wb-color #cdd6f4;
@define-color wb-act-bg #a6adc8;
@define-color wb-act-color #313244;
@define-color wb-hvr-bg #f5c2e7;
@define-color wb-hvr-color #313244;
'';
}