59 lines
1.5 KiB
Nix
59 lines
1.5 KiB
Nix
{ pkgs, ... }:
|
|
{
|
|
nix.settings = {
|
|
substituters = [ "https://hyprland.cachix.org" ];
|
|
trusted-public-keys = [
|
|
"hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="
|
|
];
|
|
};
|
|
services.dbus.enable = true;
|
|
security.polkit.enable = true;
|
|
services.flatpak.enable = true;
|
|
services.pipewire = {
|
|
enable = true;
|
|
alsa.enable = true;
|
|
alsa.support32Bit = true;
|
|
pulse.enable = true;
|
|
wireplumber.enable = true;
|
|
};
|
|
services.gvfs.enable = true;
|
|
xdg.portal = {
|
|
enable = true;
|
|
extraPortals = with pkgs; [
|
|
xdg-desktop-portal-hyprland
|
|
xdg-desktop-portal-gtk
|
|
];
|
|
config.common.default = [ "hyprland" "gtk" ];
|
|
};
|
|
environment.systemPackages = with pkgs; [
|
|
walker
|
|
uwsm
|
|
hyprland-qtutils
|
|
hyprpolkitagent
|
|
grimblast
|
|
];
|
|
programs = {
|
|
uwsm.enable = true;
|
|
uwsm.waylandCompositors.hyprland = {
|
|
prettyName = "Hyprland";
|
|
comment = "Hyprland compositor managed by UWSM";
|
|
binPath = "/run/current-system/sw/bin/Hyprland";
|
|
};
|
|
hyprland = {
|
|
withUWSM = true;
|
|
enable = true;
|
|
xwayland.enable = true;
|
|
};
|
|
};
|
|
environment.sessionVariables = {
|
|
XDG_SESSION_TYPE = "wayland";
|
|
XDG_CURRENT_DESKTOP = "Hyprland";
|
|
XDG_SESSION_DESKTOP = "Hyprland";
|
|
NIXOS_OZONE_WL = "1";
|
|
XCURSOR_SIZE = "24";
|
|
};
|
|
security.pam.services.hyprlock = { };
|
|
# Optional; GNOME-specific (keep only if you really use gnome-keyring integration)
|
|
security.pam.services.gdm.enableGnomeKeyring = true;
|
|
}
|