45 lines
1023 B
Nix
45 lines
1023 B
Nix
{ config, pkgs, lib, ... }:
|
|
|
|
with lib;
|
|
|
|
let
|
|
cfg = config.settings.desktop-environments.hyprland;
|
|
in {
|
|
options = {
|
|
settings.desktop-environments.hyprland.enable = lib.mkOption {
|
|
type = lib.types.bool;
|
|
description = ''
|
|
Enable hyprland window manager
|
|
'';
|
|
};
|
|
};
|
|
|
|
config = mkIf cfg.enable {
|
|
programs.hyprland = {
|
|
enable = true;
|
|
package = pkgs.unstable.hyprland;
|
|
xwayland.enable = true;
|
|
};
|
|
|
|
# Sound configuration
|
|
hardware.pulseaudio.enable = false;
|
|
security.rtkit.enable = true;
|
|
services.pipewire = {
|
|
enable = true;
|
|
alsa.enable = true;
|
|
alsa.support32Bit = true;
|
|
pulse.enable = true;
|
|
};
|
|
|
|
# Keyring configuration
|
|
security.polkit.enable = true;
|
|
services.gnome.gnome-keyring.enable = true;
|
|
security.pam.services.greetd.enableGnomeKeyring = true;
|
|
programs.ssh.startAgent = true;
|
|
|
|
# Configure networking
|
|
networking.networkmanager.enable = true;
|
|
networking.wireless.iwd.enable = true;
|
|
};
|
|
}
|