mirror of
https://github.com/alyraffauf/nixcfg.git
synced 2024-11-25 22:11:54 -05:00
hyprland/sway; move waybar config to waybar module
This commit is contained in:
parent
0e73c7580f
commit
0e2068b4c6
|
@ -5,6 +5,171 @@
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
config = lib.mkIf config.alyraffauf.apps.waybar.enable {
|
config = lib.mkIf config.alyraffauf.apps.waybar.enable {
|
||||||
|
programs.waybar = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
mainBar = {
|
||||||
|
height = 32;
|
||||||
|
layer = "top";
|
||||||
|
output = ["*"];
|
||||||
|
position = "top";
|
||||||
|
modules-left =
|
||||||
|
lib.optionals (config.alyraffauf.desktop.hyprland.enable)
|
||||||
|
["hyprland/workspaces" "hyprland/submap"]
|
||||||
|
++ lib.optionals (config.alyraffauf.desktop.sway.enable)
|
||||||
|
["sway/workspaces" "sway/scratchpad" "sway/mode"]
|
||||||
|
++ lib.optionals (config.alyraffauf.desktop.hyprland.tabletMode.menuButton)
|
||||||
|
["custom/menu" "custom/hyprland-close"];
|
||||||
|
modules-center = ["clock"];
|
||||||
|
modules-right = [
|
||||||
|
"tray"
|
||||||
|
"group/hardware"
|
||||||
|
];
|
||||||
|
"hyprland/workspaces" = {
|
||||||
|
"all-outputs" = true;
|
||||||
|
"format" = "{icon} {name}";
|
||||||
|
"format-icons" = {
|
||||||
|
"default" = "";
|
||||||
|
"active" = "";
|
||||||
|
};
|
||||||
|
"sort-by" = "id";
|
||||||
|
};
|
||||||
|
"hyprland/submap" = {
|
||||||
|
"on-click" = ''${lib.getExe'
|
||||||
|
config.wayland.windowManager.hyprland.package "hyprctl"} dispatch submap reset'';
|
||||||
|
};
|
||||||
|
"hyprland/window" = {
|
||||||
|
"format" = "";
|
||||||
|
"max-length" = 100;
|
||||||
|
"separate-outputs" = true;
|
||||||
|
"icon" = true;
|
||||||
|
};
|
||||||
|
"sway/workspaces" = {
|
||||||
|
"all-outputs" = true;
|
||||||
|
"format" = "{icon} {name}";
|
||||||
|
"format-icons" = {
|
||||||
|
"default" = "";
|
||||||
|
"focused" = "";
|
||||||
|
};
|
||||||
|
"sort-by" = "id";
|
||||||
|
};
|
||||||
|
"sway/mode" = {
|
||||||
|
"on-click" = ''${lib.getExe' config.wayland.windowManager.sway.package "swaymsg"} mode default'';
|
||||||
|
};
|
||||||
|
"sway/window" = {
|
||||||
|
"max-length" = 100;
|
||||||
|
};
|
||||||
|
"sway/scratchpad" = {
|
||||||
|
"format" = "{icon} {count}";
|
||||||
|
"show-empty" = false;
|
||||||
|
"format-icons" = ["" ""];
|
||||||
|
"tooltip" = true;
|
||||||
|
"tooltip-format" = "{app}: {title}";
|
||||||
|
};
|
||||||
|
"custom/sway-close" = {
|
||||||
|
"on-click" = ''${lib.getExe'
|
||||||
|
config.wayland.windowManager.sway.package "swaymsg"} kill'';
|
||||||
|
"format" = "";
|
||||||
|
};
|
||||||
|
"custom/hyprland-close" = {
|
||||||
|
"on-click" = ''${lib.getExe'
|
||||||
|
config.wayland.windowManager.hyprland.package "hyprctl"} dispatch killactive'';
|
||||||
|
"format" = "";
|
||||||
|
};
|
||||||
|
"river/window" = {
|
||||||
|
"max-length" = 100;
|
||||||
|
};
|
||||||
|
"river/tags" = {
|
||||||
|
"num-tags" = 4;
|
||||||
|
};
|
||||||
|
"clock" = {
|
||||||
|
"tooltip-format" = "{:%Y-%m-%d | %H:%M}";
|
||||||
|
"interval" = 60;
|
||||||
|
"format" = "{:%I:%M%p}";
|
||||||
|
};
|
||||||
|
"battery" = {
|
||||||
|
"states" = {"critical" = 20;};
|
||||||
|
"format" = "{icon}";
|
||||||
|
"format-icons" = ["" "" "" "" "" "" "" "" "" ""];
|
||||||
|
"tooltip-format" = ''
|
||||||
|
{capacity}%: {timeTo}.
|
||||||
|
Draw: {power} watts.'';
|
||||||
|
};
|
||||||
|
"inhibitor" = {
|
||||||
|
"what" = "sleep";
|
||||||
|
"format" = "{icon}";
|
||||||
|
"format-icons" = {
|
||||||
|
"activated" = "";
|
||||||
|
"deactivated" = "";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
"bluetooth" = {
|
||||||
|
"format" = "";
|
||||||
|
"format-disabled" = ""; # an empty format will hide the module
|
||||||
|
"format-connected" = " {num_connections} connected";
|
||||||
|
"tooltip-format" = "{controller_alias} {controller_address}";
|
||||||
|
"tooltip-format-connected" = ''
|
||||||
|
{controller_alias} {controller_address}
|
||||||
|
|
||||||
|
{device_enumerate}'';
|
||||||
|
"tooltip-format-enumerate-connected" = "{device_alias} {device_address}";
|
||||||
|
"on-click" = lib.getExe' pkgs.blueberry "blueberry";
|
||||||
|
};
|
||||||
|
"pulseaudio" = {
|
||||||
|
"format" = "{icon}";
|
||||||
|
"format-bluetooth" = "{volume}% {icon}";
|
||||||
|
"format-muted" = "";
|
||||||
|
"format-icons" = {
|
||||||
|
"headphones" = "";
|
||||||
|
"handsfree" = "";
|
||||||
|
"headset" = "";
|
||||||
|
"default" = ["" "" ""];
|
||||||
|
};
|
||||||
|
"scroll-step" = 5;
|
||||||
|
"ignored-sinks" = ["Easy Effects Sink"];
|
||||||
|
"on-click" = "${lib.getExe pkgs.pavucontrol} -t 3";
|
||||||
|
};
|
||||||
|
"network" = {
|
||||||
|
"format-wifi" = "{icon}";
|
||||||
|
"format-ethernet" = "";
|
||||||
|
"format-disconnected" = "⚠";
|
||||||
|
"format-icons" = ["" "" "" ""];
|
||||||
|
"tooltip-format" = "{ifname} via {gwaddr} ";
|
||||||
|
"tooltip-format-wifi" = "{essid} ({signalStrength}%) {icon}";
|
||||||
|
"tooltip-format-ethernet" = "{ifname} ";
|
||||||
|
"tooltip-format-disconnected" = "Disconnected";
|
||||||
|
"on-click" = "${config.alyraffauf.defaultApps.terminalEditor.exe} --class nmtui -e ${pkgs.networkmanager}/bin/nmtui";
|
||||||
|
};
|
||||||
|
"tray" = {"spacing" = 15;};
|
||||||
|
"custom/logout" = {
|
||||||
|
"on-click" = "${lib.getExe pkgs.wlogout}";
|
||||||
|
"format" = "";
|
||||||
|
};
|
||||||
|
"custom/menu" = {
|
||||||
|
"on-click" = "${lib.getExe pkgs.nwg-drawer} -mt 5";
|
||||||
|
"format" = "";
|
||||||
|
};
|
||||||
|
"power-profiles-daemon" = {
|
||||||
|
"format" = "{icon}";
|
||||||
|
"tooltip-format" = ''
|
||||||
|
Profile: {profile}
|
||||||
|
Driver: {driver}'';
|
||||||
|
"tooltip" = true;
|
||||||
|
"format-icons" = {
|
||||||
|
"default" = "";
|
||||||
|
"performance" = "";
|
||||||
|
"balanced" = "";
|
||||||
|
"power-saver" = "";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
"group/hardware" = {
|
||||||
|
"orientation" = "horizontal";
|
||||||
|
modules = ["pulseaudio" "power-profiles-daemon" "battery" "custom/logout"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
xdg.configFile."waybar/style.css".text = ''
|
xdg.configFile."waybar/style.css".text = ''
|
||||||
* {
|
* {
|
||||||
border: none;
|
border: none;
|
||||||
|
@ -105,161 +270,5 @@
|
||||||
background: rgba(231, 130, 132, 0.8);
|
background: rgba(231, 130, 132, 0.8);
|
||||||
}
|
}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
programs.waybar = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
mainBar = {
|
|
||||||
height = 32;
|
|
||||||
layer = "top";
|
|
||||||
output = ["*"];
|
|
||||||
position = "top";
|
|
||||||
modules-left = lib.mkDefault [];
|
|
||||||
modules-center = ["clock"];
|
|
||||||
modules-right = [
|
|
||||||
"tray"
|
|
||||||
"group/hardware"
|
|
||||||
];
|
|
||||||
"hyprland/workspaces" = {
|
|
||||||
"all-outputs" = true;
|
|
||||||
"format" = "{icon} {name}";
|
|
||||||
"format-icons" = {
|
|
||||||
"default" = "";
|
|
||||||
"active" = "";
|
|
||||||
};
|
|
||||||
"sort-by" = "id";
|
|
||||||
};
|
|
||||||
"hyprland/submap" = {
|
|
||||||
"on-click" = ''${lib.getExe' config.wayland.windowManager.hyprland.package "hyprctl"} dispatch submap reset'';
|
|
||||||
};
|
|
||||||
"hyprland/window" = {
|
|
||||||
"format" = "";
|
|
||||||
"max-length" = 100;
|
|
||||||
"separate-outputs" = true;
|
|
||||||
"icon" = true;
|
|
||||||
};
|
|
||||||
"sway/workspaces" = {
|
|
||||||
"all-outputs" = true;
|
|
||||||
"format" = "{icon} {name}";
|
|
||||||
"format-icons" = {
|
|
||||||
"default" = "";
|
|
||||||
"focused" = "";
|
|
||||||
};
|
|
||||||
"sort-by" = "id";
|
|
||||||
};
|
|
||||||
"sway/mode" = {
|
|
||||||
"on-click" = ''${lib.getExe' config.wayland.windowManager.sway.package "swaymsg"} mode default'';
|
|
||||||
};
|
|
||||||
"sway/window" = {
|
|
||||||
"max-length" = 100;
|
|
||||||
};
|
|
||||||
"sway/scratchpad" = {
|
|
||||||
"format" = "{icon} {count}";
|
|
||||||
"show-empty" = false;
|
|
||||||
"format-icons" = ["" ""];
|
|
||||||
"tooltip" = true;
|
|
||||||
"tooltip-format" = "{app}: {title}";
|
|
||||||
};
|
|
||||||
"custom/sway-close" = {
|
|
||||||
"on-click" = ''${lib.getExe' config.wayland.windowManager.sway.package "swaymsg"} kill'';
|
|
||||||
"format" = "";
|
|
||||||
};
|
|
||||||
"custom/hyprland-close" = {
|
|
||||||
"on-click" = ''${lib.getExe' config.wayland.windowManager.hyprland.package "hyprctl"} dispatch killactive'';
|
|
||||||
"format" = "";
|
|
||||||
};
|
|
||||||
"river/window" = {
|
|
||||||
"max-length" = 100;
|
|
||||||
};
|
|
||||||
"river/tags" = {
|
|
||||||
"num-tags" = 4;
|
|
||||||
};
|
|
||||||
"clock" = {
|
|
||||||
"tooltip-format" = "{:%Y-%m-%d | %H:%M}";
|
|
||||||
"interval" = 60;
|
|
||||||
"format" = "{:%I:%M%p}";
|
|
||||||
};
|
|
||||||
"battery" = {
|
|
||||||
"states" = {"critical" = 20;};
|
|
||||||
"format" = "{icon}";
|
|
||||||
"format-icons" = ["" "" "" "" "" "" "" "" "" ""];
|
|
||||||
"tooltip-format" = ''
|
|
||||||
{capacity}%: {timeTo}.
|
|
||||||
Draw: {power} watts.'';
|
|
||||||
};
|
|
||||||
"inhibitor" = {
|
|
||||||
"what" = "sleep";
|
|
||||||
"format" = "{icon}";
|
|
||||||
"format-icons" = {
|
|
||||||
"activated" = "";
|
|
||||||
"deactivated" = "";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
"bluetooth" = {
|
|
||||||
"format" = "";
|
|
||||||
"format-disabled" = ""; # an empty format will hide the module
|
|
||||||
"format-connected" = " {num_connections} connected";
|
|
||||||
"tooltip-format" = "{controller_alias} {controller_address}";
|
|
||||||
"tooltip-format-connected" = ''
|
|
||||||
{controller_alias} {controller_address}
|
|
||||||
|
|
||||||
{device_enumerate}'';
|
|
||||||
"tooltip-format-enumerate-connected" = "{device_alias} {device_address}";
|
|
||||||
"on-click" = lib.getExe' pkgs.blueberry "blueberry";
|
|
||||||
};
|
|
||||||
"pulseaudio" = {
|
|
||||||
"format" = "{icon}";
|
|
||||||
"format-bluetooth" = "{volume}% {icon}";
|
|
||||||
"format-muted" = "";
|
|
||||||
"format-icons" = {
|
|
||||||
"headphones" = "";
|
|
||||||
"handsfree" = "";
|
|
||||||
"headset" = "";
|
|
||||||
"default" = ["" "" ""];
|
|
||||||
};
|
|
||||||
"scroll-step" = 5;
|
|
||||||
"ignored-sinks" = ["Easy Effects Sink"];
|
|
||||||
"on-click" = "${lib.getExe pkgs.pavucontrol} -t 3";
|
|
||||||
};
|
|
||||||
"network" = {
|
|
||||||
"format-wifi" = "{icon}";
|
|
||||||
"format-ethernet" = "";
|
|
||||||
"format-disconnected" = "⚠";
|
|
||||||
"format-icons" = ["" "" "" ""];
|
|
||||||
"tooltip-format" = "{ifname} via {gwaddr} ";
|
|
||||||
"tooltip-format-wifi" = "{essid} ({signalStrength}%) {icon}";
|
|
||||||
"tooltip-format-ethernet" = "{ifname} ";
|
|
||||||
"tooltip-format-disconnected" = "Disconnected";
|
|
||||||
"on-click" = "${config.alyraffauf.defaultApps.terminalEditor.exe} --class nmtui -e ${pkgs.networkmanager}/bin/nmtui";
|
|
||||||
};
|
|
||||||
"tray" = {"spacing" = 15;};
|
|
||||||
"custom/logout" = {
|
|
||||||
"on-click" = "${lib.getExe pkgs.wlogout}";
|
|
||||||
"format" = "";
|
|
||||||
};
|
|
||||||
"custom/menu" = {
|
|
||||||
"on-click" = "${lib.getExe pkgs.nwg-drawer} -mt 5";
|
|
||||||
"format" = "";
|
|
||||||
};
|
|
||||||
"power-profiles-daemon" = {
|
|
||||||
"format" = "{icon}";
|
|
||||||
"tooltip-format" = ''
|
|
||||||
Profile: {profile}
|
|
||||||
Driver: {driver}'';
|
|
||||||
"tooltip" = true;
|
|
||||||
"format-icons" = {
|
|
||||||
"default" = "";
|
|
||||||
"performance" = "";
|
|
||||||
"balanced" = "";
|
|
||||||
"power-saver" = "";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
"group/hardware" = {
|
|
||||||
"orientation" = "horizontal";
|
|
||||||
modules = ["pulseaudio" "power-profiles-daemon" "battery" "custom/logout"];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,19 +5,8 @@
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
config = lib.mkIf config.alyraffauf.desktop.hyprland.enable {
|
config = lib.mkIf config.alyraffauf.desktop.hyprland.enable {
|
||||||
programs.waybar = {
|
|
||||||
settings = {
|
|
||||||
mainBar = {
|
|
||||||
modules-left =
|
|
||||||
if config.alyraffauf.desktop.hyprland.tabletMode.menuButton
|
|
||||||
then ["hyprland/workspaces" "custom/menu" "custom/hyprland-close" "hyprland/submap"]
|
|
||||||
else ["hyprland/workspaces" "hyprland/submap"];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
wayland.windowManager.hyprland.enable = true;
|
wayland.windowManager.hyprland.enable = true;
|
||||||
wayland.windowManager.hyprland.package = pkgs.hyprland;
|
|
||||||
wayland.windowManager.hyprland.extraConfig = let
|
wayland.windowManager.hyprland.extraConfig = let
|
||||||
modifier = "SUPER";
|
modifier = "SUPER";
|
||||||
|
|
||||||
|
|
|
@ -29,18 +29,11 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
config = lib.mkIf config.alyraffauf.desktop.sway.enable {
|
config = lib.mkIf config.alyraffauf.desktop.sway.enable {
|
||||||
programs.waybar = {
|
wayland.windowManager.sway = {
|
||||||
settings = {
|
enable = true;
|
||||||
mainBar = {
|
wrapperFeatures.gtk = true;
|
||||||
modules-left = ["sway/workspaces" "sway/scratchpad" "sway/mode"];
|
checkConfig = false;
|
||||||
};
|
};
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
wayland.windowManager.sway.enable = true;
|
|
||||||
wayland.windowManager.sway.package = pkgs.swayfx;
|
|
||||||
wayland.windowManager.sway.wrapperFeatures.gtk = true;
|
|
||||||
wayland.windowManager.sway.checkConfig = false;
|
|
||||||
|
|
||||||
alyraffauf.theme.gtk.hideTitleBar =
|
alyraffauf.theme.gtk.hideTitleBar =
|
||||||
if config.wayland.windowManager.sway.package == pkgs.sway
|
if config.wayland.windowManager.sway.package == pkgs.sway
|
||||||
|
|
Loading…
Reference in a new issue