Move enable propagation into the modules themselves instead of desktop.nix. Relax the assertion to only prevent both taffybar and waybar from being enabled simultaneously. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
39 lines
1.3 KiB
Nix
39 lines
1.3 KiB
Nix
{ config, pkgs, makeEnable, inputs, ... }:
|
|
makeEnable config "myModules.hyprland" true {
|
|
myModules.taffybar.enable = true;
|
|
|
|
programs.hyprland = {
|
|
enable = true;
|
|
# Use Hyprland from the flake for proper plugin compatibility
|
|
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
|
# Let UWSM manage the Hyprland session targets
|
|
withUWSM = true;
|
|
};
|
|
|
|
# Hyprland-specific packages
|
|
environment.systemPackages = with pkgs; [
|
|
# Hyprland utilities
|
|
kanshi # Monitor hotplug management
|
|
hyprpaper # Wallpaper
|
|
hypridle # Idle daemon
|
|
hyprlock # Screen locker
|
|
hyprcursor # Cursor themes
|
|
wl-clipboard # Clipboard for Wayland
|
|
wtype # Wayland input typing
|
|
cliphist # Clipboard history
|
|
grim # Screenshot utility
|
|
slurp # Region selection
|
|
swappy # Screenshot annotation
|
|
nwg-displays # GUI monitor arrangement
|
|
|
|
# hy3 plugin from flake (properly built against matching Hyprland)
|
|
inputs.hy3.packages.${pkgs.stdenv.hostPlatform.system}.hy3
|
|
|
|
# Hyprexpo plugin from hyprland-plugins (workspace overview)
|
|
inputs.hyprland-plugins.packages.${pkgs.stdenv.hostPlatform.system}.hyprexpo
|
|
|
|
# For scripts
|
|
jq
|
|
];
|
|
}
|