nixcfg/home/hyprland.nix

135 lines
4.3 KiB
Nix
Raw Normal View History

{ config, pkgs, ... }:
{
# Packages that should be installed to the user profile.
home.packages = with pkgs; [
bemenu
brightnessctl
hyprcursor
hypridle
hyprlock
hyprpaper
hyprshade
hyprshot
mako
overskride
2024-03-24 03:22:37 -04:00
pavucontrol
playerctl
udiskie
];
2024-03-24 01:39:43 -04:00
services.mako = {
enable = true;
font = "DroidSansM Nerd Font Mono 11";
backgroundColor = "#000000";
textColor = "#FFFFFF";
borderRadius = 10;
defaultTimeout = 10000;
padding = "15";
};
wayland.windowManager.hyprland = {
enable = true;
extraConfig = builtins.readFile ./dotfiles/hyprland.conf;
};
xdg.configFile."hypr/hypridle.conf".source = ./dotfiles/hypridle.conf;
2024-03-24 02:49:51 -04:00
xdg.configFile."hypr/hyprlock.conf".source = ./dotfiles/hyprlock.conf;
programs.waybar.enable = true;
2024-03-24 01:14:40 -04:00
programs.waybar.style = ''
* {
border: none;
border-radius: 0;
font-family: DroidSansM Nerd Font Mono;
}
window#waybar {
2024-03-24 04:48:44 -04:00
background: rgba (0, 0, 0, 0.5);
2024-03-24 01:14:40 -04:00
color: #FFFFFF;
}
#workspaces button {
padding: 5px 10px;
background: #000;
color: #FFFFFF;
2024-03-24 01:14:40 -04:00
}
2024-03-24 04:48:44 -04:00
#clock, #battery, #pulseaudio, #bluetooth, #network, #tray, #power-profiles-daemon {
2024-03-24 01:14:40 -04:00
padding: 0 10px;
margin: 0 5px;
}
2024-03-24 04:48:44 -04:00
#battery.critical { color: red; }
2024-03-24 01:14:40 -04:00
'';
programs.waybar.settings = {
mainBar = {
layer = "top";
position = "top";
height = 36;
output = [
"eDP-1"
"HDMI-A-1"
];
2024-03-24 04:48:44 -04:00
modules-left = [ "hyprland/workspaces" "hyprland/submap" ];
modules-center = [ "hyprland/window" ];
2024-03-24 04:48:44 -04:00
modules-right = [ "tray" "bluetooth" "network" "pulseaudio" "battery" "power-profiles-daemon" "clock"];
"hyprland/workspaces" = {
all-outputs = true;
};
2024-03-24 03:22:37 -04:00
"hyprland/window" = {
"max-length" = 150;
};
"clock" = {
2024-03-24 01:14:40 -04:00
"tooltip-format" = "{:%Y-%m-%d | %H:%M}";
"interval" = 60;
2024-03-24 04:48:44 -04:00
"format" = "{:%I:%M%p}";
2024-03-24 01:14:40 -04:00
};
"battery" = {
2024-03-24 04:48:44 -04:00
"states" = {
"critical" = 20;
};
"format" = "{icon}";
"format-icons" = ["󰁺" "󰁼" "󰁿" "󰂁" "󰁹"];
2024-03-24 03:22:37 -04:00
};
"bluetooth" = {
"format" = "󰂯 {status}";
"format-disabled" = ""; # an empty format will hide the module
"format-connected" = "󰂯 {num_connections} connected";
"tooltip-format" = "{controller_alias}\t{controller_address}";
"tooltip-format-connected" = "{controller_alias}\t{controller_address}\n\n{device_enumerate}";
"tooltip-format-enumerate-connected" = "{device_alias}\t{device_address}";
"on-click" = "overskride";
2024-03-24 01:14:40 -04:00
};
"pulseaudio" = {
"format" = " {volume}%";
2024-03-24 03:22:37 -04:00
"format-bluetooth" = "{volume}% {icon}󰂯";
2024-03-24 01:14:40 -04:00
"format-muted" = "";
"format-icons"= {
2024-03-24 04:10:33 -04:00
"headphones" = "󰋋";
"handsfree" = "󰋎";
"headset" = "󰋎";
2024-03-24 01:14:40 -04:00
};
"on-click" = "pavucontrol";
};
"network" = {
2024-03-24 04:10:33 -04:00
"format-wifi" = "󰣾 {signalStrength}%";
2024-03-24 01:14:40 -04:00
"format-disconnected" = "";
2024-03-24 03:22:37 -04:00
"tooltip-format" = "{ifname} via {gwaddr} 󰊗";
2024-03-24 04:10:33 -04:00
"tooltip-format-wifi" = "{essid} ({signalStrength}%) 󰣾";
2024-03-24 03:22:37 -04:00
"tooltip-format-ethernet" = "{ifname} ";
"tooltip-format-disconnected" = "Disconnected";
2024-03-24 01:39:43 -04:00
"on-click" = "alacritty -e nmtui";
};
2024-03-24 04:48:44 -04:00
"power-profiles-daemon" = {
"format" = "{icon}";
"tooltip-format" = "Power profile: {profile}\nDriver: {driver}";
"tooltip" = true;
"format-icons" = {
"default" = "󱐌";
"performance" = "󱐌";
"balanced" = "󰗑";
"power-saver" = "󰌪";
};
};
};
};
}