Initial commit (after fork)

This commit is contained in:
Pedro Rey Anca 2024-07-08 18:00:42 +02:00
parent 5ebba8a939
commit 5fe3f69a17
111 changed files with 1428 additions and 1611 deletions

View file

@ -1,6 +1,35 @@
{ ... }:
{
imports = [ (import ./waybar.nix) ]
++ [ (import ./settings.nix) ]
++ [ (import ./style.nix) ];
{...}: let
custom = {
font = "JetBrainsMono Nerd Font";
fontsize = "12";
primary_accent = "cba6f7";
secondary_accent = "89b4fa";
tertiary_accent = "f5f5f5";
background = "11111B";
opacity = "0.98";
cursor = "Numix-Cursor";
palette = rec {
primary_accent_hex = "cba6f7";
secondary_accent_hex = "89b4fa";
tertiary_accent_hex = "f5f5f5";
primary_background_hex = "11111B";
secondary_background_hex = "1b1b2b";
tertiary_background_hex = "25253a";
primary_accent_rgba = "rgba(203,166,247,${opacity})";
secondary_accent_rgba = "rgba(137,180,250,${opacity})";
tertiary_accent_rgba = "rgba(245,245,245,${opacity})";
primary_background_rgba = "rgba(17,17,27,${opacity})";
secondary_background_rgba = "rgba(27,27,43,${opacity})";
tertiary_background_rgba = "rgba(37,37,58,${opacity})";
opacity = "1";
};
};
in {
_module.args = {inherit custom;};
imports =
[(import ./waybar.nix)]
++ [(import ./settings.nix)]
++ [(import ./style.nix)];
}

View file

@ -1,137 +1,167 @@
{ ... }:
{
custom ? {
font = "JetBrainsMono Nerd Font";
fontsize = "12";
primary_accent = "cba6f7";
secondary_accent = "89b4fa";
tertiary_accent = "f5f5f5";
background = "11111B";
opacity = ".85";
cursor = "Numix-Cursor";
},
...
}: {
programs.waybar.settings.mainBar = {
position= "bottom";
layer= "top";
height= 5;
margin-top= 0;
margin-bottom= 0;
margin-left= 0;
margin-right= 0;
modules-left= [
"custom/launcher"
"hyprland/workspaces"
position = "top";
layer = "top";
# height= 15;
margin-top = 0;
margin-bottom = 5;
margin-left = 0;
margin-right = 0;
modules-left = [
"custom/launcher"
"custom/playerctl#backward"
"custom/playerctl#play"
"custom/playerctl#forward"
];
modules-center= [
"clock"
modules-center = [
"hyprland/workspaces"
];
modules-right= [
"tray"
"cpu"
"memory"
"disk"
"pulseaudio"
"battery"
"network"
"custom/notification"
modules-right = [
"tray"
"cpu"
"memory"
"disk"
"pulseaudio"
"battery"
"network"
"custom/notification"
"clock"
];
clock= {
calendar = {
format = { today = "<span color='#b4befe'><b><u>{}</u></b></span>"; };
};
format = " {:%H:%M}";
tooltip= "true";
tooltip-format= "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>";
format-alt= " {:%d/%m}";
clock = {
format = " {:%H:%M}";
tooltip = true;
tooltip-format = "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>";
format-alt = " {:%d/%m}";
};
"hyprland/workspaces"= {
active-only= false;
disable-scroll= true;
format = "{icon}";
on-click= "activate";
format-icons= {
"1"= "󰈹";
"2"= "";
"3"= "󰘙";
"4"= "󰙯";
"5"= "";
"6"= "";
urgent= "";
default = "";
sort-by-number= true;
};
persistent-workspaces = {
"1"= [];
"2"= [];
"3"= [];
"4"= [];
"5"= [];
};
"wlr/workspaces" = {
active-only = false;
all-outputs = false;
disable-scroll = false;
on-scroll-up = "hyprctl dispatch workspace e-1";
on-scroll-down = "hyprctl dispatch workspace e+1";
format = "{name}";
on-click = "activate";
format-icons = {
urgent = "";
active = "";
default = "";
sort-by-number = true;
};
};
memory= {
format= "󰟜 {}%";
format-alt= "󰟜 {used} GiB"; # 
interval= 2;
"custom/playerctl#backward" = {
format = "󰙣 ";
on-click = "playerctl previous";
on-scroll-up = "playerctl volume .05+";
on-scroll-down = "playerctl volume .05-";
tooltip = false;
};
cpu= {
format= " {usage}%";
format-alt= " {avg_frequency} GHz";
interval= 2;
"custom/playerctl#play" = {
format = "{icon}";
return-type = "json";
exec = "playerctl -a metadata --format '{\"text\": \"{{artist}} - {{markup_escape(title)}}\", \"tooltip\": \"{{playerName}} : {{markup_escape(title)}}\", \"alt\": \"{{status}}\", \"class\": \"{{status}}\"}' -F";
on-click = "playerctl play-pause";
on-scroll-up = "playerctl volume .05+";
on-scroll-down = "playerctl volume .05-";
format-icons = {
Playing = "<span>󰏥 </span>";
Paused = "<span> </span>";
Stopped = "<span> </span>";
};
};
"custom/playerctl#forward" = {
format = "󰙡 ";
on-click = "playerctl next";
on-scroll-up = "playerctl volume .05+";
on-scroll-down = "playerctl volume .05-";
tooltip = false;
};
memory = {
format = " {}%";
format-alt = " {used} GiB"; # 
interval = 2;
};
cpu = {
format = " {usage}%";
format-alt = " {avg_frequency} GHz";
interval = 2;
};
disk = {
# path = "/";
format = "󰋊 {percentage_used}%";
interval= 60;
# path = "/";
format = "󰋊 {percentage_used}%";
interval = 60;
};
network = {
format-wifi = " {signalStrength}%";
format-ethernet = "󰀂 ";
tooltip-format = "Connected to {essid} {ifname} via {gwaddr}";
format-linked = "{ifname} (No IP)";
format-disconnected = "󰖪 ";
format-wifi = " {signalStrength}%";
format-ethernet = "󰀂 ";
tooltip-format = "Connected to {essid} {ifname} via {gwaddr}";
format-linked = "{ifname} (No IP)";
format-disconnected = "󰖪 ";
};
tray= {
icon-size= 20;
spacing= 8;
tray = {
icon-size = 20;
spacing = 8;
};
pulseaudio= {
format= "{icon} {volume}%";
format-muted= " {volume}%";
format-icons= {
default= [" "];
};
scroll-step= 5;
on-click= "pamixer -t";
pulseaudio = {
format = "{icon} {volume}%";
format-muted = "󰖁 ";
format-icons = {
default = [" "];
};
scroll-step = 5;
on-click = "pamixer -t";
on-click-right = "pavucontrol";
};
battery = {
format = "{icon} {capacity}%";
format-icons = [" " " " " " " " " "];
format-charging = " {capacity}%";
format-full = " {capacity}%";
format-warning = " {capacity}%";
interval = 5;
states = {
warning = 20;
};
format-time = "{H}h{M}m";
tooltip = true;
tooltip-format = "{time}";
format = "{icon} {capacity}%";
format-icons = [" " " " " " " " " "];
format-charging = " {capacity}%";
format-full = " {capacity}%";
format-warning = " {capacity}%";
interval = 5;
states = {
warning = 20;
};
format-time = "{H}h{M}m";
tooltip = true;
tooltip-format = "{time}";
};
"custom/launcher"= {
format= "";
on-click= "fuzzel";
on-click-right= "wallpaper-picker";
tooltip= "false";
"custom/launcher" = {
format = "";
on-click = "pkill fuzzel || fuzzel";
on-click-right = "pkill fuzzel || wallpaper-picker";
tooltip = false;
};
"custom/notification" = {
tooltip = false;
format = "{icon} ";
format-icons = {
notification = "<span foreground='red'><sup></sup></span> ";
none = " ";
dnd-notification = "<span foreground='red'><sup></sup></span> ";
dnd-none = " ";
inhibited-notification = "<span foreground='red'><sup></sup></span> ";
inhibited-none = " ";
dnd-inhibited-notification = "<span foreground='red'><sup></sup></span> ";
dnd-inhibited-none = " ";
};
return-type = "json";
exec-if = "which swaync-client";
exec = "swaync-client -swb";
on-click = "swaync-client -t -sw";
on-click-right = "swaync-client -d -sw";
escape = true;
tooltip = false;
format = "{icon}";
format-icons = {
notification = "<span foreground='red'><sup></sup></span>";
none = " ";
dnd-notification = "<span foreground='red'><sup></sup></span>";
dnd-none = " ";
inhibited-notification = "<span foreground='red'><sup></sup></span>";
inhibited-none = " ";
dnd-inhibited-notification = "<span foreground='red'><sup></sup></span>";
dnd-inhibited-none = " ";
};
return-type = "json";
exec-if = "which swaync-client";
exec = "swaync-client -swb";
on-click = "swaync-client -t -sw";
on-click-right = "swaync-client -d -sw";
escape = true;
};
};
}

View file

@ -1,26 +1,24 @@
{ ... }:
let custom = {
font = "JetBrainsMono Nerd Font";
font_size = "15px";
font_weight = "bold";
text_color = "#cdd6f4";
secondary_accent= "89b4fa";
tertiary_accent = "f5f5f5";
background = "11111B";
opacity = "0.98";
};
in
{
custom ? {
font = "JetBrainsMono Nerd Font";
fontsize = "12";
primary_accent = "cba6f7";
secondary_accent = "89b4fa";
tertiary_accent = "cdd6f4";
background = "11111B";
opacity = ".98";
cursor = "Numix-Cursor";
},
...
}: {
programs.waybar.style = ''
* {
border: none;
border-radius: 0px;
padding: 0;
margin: 0;
min-height: 0px;
font-family: ${custom.font};
font-weight: ${custom.font_weight};
font-weight: bold;
font-size: 15px;
min-height: 0;
opacity: ${custom.opacity};
}
@ -29,76 +27,152 @@ in
}
#workspaces {
font-size: 18px;
padding-left: 15px;
background: #${custom.palette.tertiary_background_hex};
margin: 5px 5px;
padding: 8px 12px;
border-radius: 12px 12px 24px 24px;
color: #${custom.primary_accent}
}
#workspaces button {
color: ${custom.text_color};
padding-left: 6px;
padding-right: 6px;
}
#workspaces button.empty {
color: #6c7086;
}
#workspaces button.active {
color: #b4befe;
padding: 0px 5px;
margin: 0px 3px;
border-radius: 15px;
color: #${custom.background};
background: #${custom.secondary_accent};
transition: all 0.2s ease-in-out;
}
#tray, #pulseaudio, #network, #cpu, #memory, #disk, #clock, #battery, #custom-notification {
font-size: ${custom.font_size};
color: ${custom.text_color};
#workspaces button.active {
background-color: #${custom.primary_accent};
color: #${custom.background};
border-radius: 15px;
min-width: 35px;
background-size: 200% 200%;
transition: all 0.2s ease-in-out;
}
#workspaces button:hover {
background-color: #b4befe;
color: #${custom.background};
border-radius: 15px;
min-width: 35px;
background-size: 200% 200%;
}
#tray, #pulseaudio, #network, #cpu, #memory, #disk,
#custom-playerctl.backward, #custom-playerctl.play, #custom-playerctl.forward, #battery, #custom-notification {
background: #${custom.palette.tertiary_background_hex};
font-weight: bold;
margin: 5px 0px;
}
#cpu {
color: #${custom.tertiary_accent};
border-radius: 10px 0px 0px 24px;
padding-left: 15px;
padding-right: 9px;
margin-left: 7px;
}
#memory {
color: #${custom.tertiary_accent};
border-radius: 0;
padding-left: 9px;
padding-right: 9px;
}
#disk {
color: #${custom.tertiary_accent};
border-radius: 0px 24px 10px 0px;
padding-left: 9px;
padding-right: 15px;
}
#tray {
color: #${custom.tertiary_accent};
border-radius: 10px 24px 10px 24px;
padding: 0 20px;
margin-left: 7px;
}
#pulseaudio {
color: #${custom.tertiary_accent};
border-radius: 10px 0px 0px 24px;
padding-left: 15px;
padding-right: 9px;
margin-left: 7px;
}
#battery {
color: #${custom.tertiary_accent};
border-radius: 0;
padding-left: 9px;
padding-right: 9px;
}
#network {
color: #${custom.tertiary_accent};
border-radius: 0;
padding-left: 9px;
padding-right: 30px;
padding-right: 9px;
}
custom-notification {
padding-left: 20px;
padding-right: 20px;
}
#clock {
#custom-notification {
color: #${custom.tertiary_accent};
border-radius: 0px 24px 10px 0px;
padding-left: 9px;
padding-right: 15px;
}
#clock {
color: #${custom.tertiary_accent};
background: #${custom.palette.tertiary_background_hex};
border-radius: 0px 0px 0px 40px;
padding: 10px 10px 15px 25px;
margin-left: 7px;
font-weight: bold;
font-size: 16px;
}
#custom-launcher {
font-size: 20px;
color: #b4befe;
font-weight: ${custom.font_weight};
padding-left: 10px;
color: #${custom.secondary_accent};
background: #${custom.palette.tertiary_background_hex};
border-radius: 0px 0px 40px 0px;
margin: 0px;
padding: 0px 30px 0px 10px;
font-size: 28px;
}
#custom-playerctl.backward, #custom-playerctl.play, #custom-playerctl.forward {
background: #${custom.palette.tertiary_background_hex};
font-size: 22px;
}
#custom-playerctl.backward:hover, #custom-playerctl.play:hover, #custom-playerctl.forward:hover{
color: #${custom.tertiary_accent};
}
#custom-playerctl.backward {
color: #${custom.primary_accent};
border-radius: 24px 0px 0px 10px;
padding-left: 16px;
margin-left: 7px;
}
#custom-playerctl.play {
color: #${custom.secondary_accent};
padding: 0 5px;
}
#custom-playerctl.forward {
color: #${custom.primary_accent};
border-radius: 0px 10px 24px 0px;
padding-right: 12px;
margin-right: 7px
}
#window{
background: #${custom.palette.tertiary_background_hex};
padding-left: 15px;
padding-right: 15px;
border-radius: 16px;
margin-top: 5px;
margin-bottom: 5px;
font-weight: normal;
font-style: normal;
}
'';
}

View file

@ -1,9 +1,8 @@
{ pkgs, ... }:
{
{pkgs, ...}: {
programs.waybar = {
enable = true;
};
programs.waybar.package = pkgs.waybar.overrideAttrs (oa: {
mesonFlags = (oa.mesonFlags or [ ]) ++ [ "-Dexperimental=true" ];
mesonFlags = (oa.mesonFlags or []) ++ ["-Dexperimental=true"];
});
}