Files
nix-config/hosts/mac-nixos/hyprland/default.nix
mjallen18 6e0a996187 mac-nix
2024-08-27 16:32:24 -05:00

104 lines
2.4 KiB
Nix

{ pkgs, ... }:
let
sddmTheme = "catppuccin-mocha";
in
{
specialisation.hyprland.configuration = {
imports = [
./environment.nix
];
home-manager.users.matt = import ./home.nix;
services = {
displayManager.sddm.enable = true;
displayManager.sddm.package = pkgs.kdePackages.sddm;
displayManager.sddm.theme = sddmTheme;
displayManager.defaultSession = "hyprland";
# disable plasma
desktopManager.plasma6.enable = false;
dbus.enable = true;
ddccontrol.enable = true;
};
programs.hyprland = {
enable = true;
xwayland.enable = true;
portalPackage = pkgs.xdg-desktop-portal-hyprland;
};
systemd = {
user.services.polkit-gnome-authentication-agent-1 = {
description = "polkit-gnome-authentication-agent-1";
wantedBy = [ "graphical-session.target" ];
wants = [ "graphical-session.target" ];
after = [ "graphical-session.target" ];
serviceConfig = {
Type = "simple";
ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
Restart = "on-failure";
RestartSec = 1;
TimeoutStopSec = 10;
};
};
extraConfig = ''
DefaultTimeoutStopSec=10s
'';
};
security = {
polkit.enable = true;
# configure sudo
sudo.extraRules = [
{
commands = [
{
command = "/run/current-system/sw/bin/waybar-weather";
options = [ "NOPASSWD" ];
}
{
command = "/run/current-system/sw/bin/waybar-updates";
options = [ "NOPASSWD" ];
}
];
groups = [ "wheel" ];
}
];
};
xdg.portal = {
enable = true;
wlr.enable = false;
xdgOpenUsePortal = false;
extraPortals = [
pkgs.xdg-desktop-portal-hyprland
pkgs.xdg-desktop-portal-gtk
];
};
fonts.packages = with pkgs; [
noto-fonts
noto-fonts-color-emoji
nerdfonts
meslo-lgs-nf
];
fonts.fontconfig.defaultFonts = {
emoji = [
"Noto Color Emoji"
];
};
nixpkgs.overlays = [
(self: super: {
waybar = super.waybar.overrideAttrs (oldAttrs: {
mesonFlags = oldAttrs.mesonFlags ++ [ "-Dexperimental=true" ];
});
})
];
};
}