nixos/nate-work/modules/niri/niri_home.nix
2026-01-23 13:44:07 -07:00

65 lines
1.6 KiB
Nix

{ inputs, lib, config, pkgs, ... }:
{
options.nirihome = {
enable = lib.mkEnableOption "Enable niri home config";
homePackages = lib.mkOption {
default = [];
description = "Add any additional packages desired. Merged with niri defaults.";
};
};
config = lib.mkIf config.nirihome.enable {
# Note: We don't use wayland.windowManager.niri in home-manager
# because we manage the niri config through dotfiles.
# The system-level module enables niri via programs.niri.enable
# Import systemd variables for niri
systemd.user.sessionVariables = {
WAYLAND_DISPLAY = "wayland-1";
XDG_CURRENT_DESKTOP = "niri";
};
home.pointerCursor = {
gtk.enable = true;
x11.enable = true;
name = "Bibata-Modern-Classic";
package = pkgs.bibata-cursors;
size = 32;
};
home.packages = with pkgs; lib.lists.flatten [
[
### niri packages
swaybg
swaylock-effects
waybar
wofi
# Etc
gopsuinfo # For system stats in panel
wl-clipboard # System clipboard
brightnessctl
wev
wdisplays
# Notifs
libnotify
swaynotificationcenter
# Tray Applets
networkmanagerapplet
pavucontrol
syncthingtray
tailscale-systray
# include portals here for flatpak
xdg-desktop-portal-gnome
xdg-desktop-portal-gtk
]
config.nirihome.homePackages
];
programs.cava = {
enable = true;
settings = {
smoothing.noise_reduction = 55;
};
};
};
}