Files
sydnix/modules/nixos/niri.nix
Madeleine Sydney 52f56d5437 feat: Niri additions
- Switch to unstable branch.
- Run xwayland-sattelite as a serivce.
- Initialise terminal windows at smaller widths.
- Style & bind tabs.
- Block out private windows.
- Binds for dynamic casting.
2025-03-30 04:52:22 -06:00

39 lines
966 B
Nix

{ config, lib, pkgs, ... }@inputs:
let
cfg = config.sydnix.niri;
in {
options.sydnix.niri.enable =
lib.mkEnableOption "Niri";
config = lib.mkIf cfg.enable {
nixpkgs.overlays = [ inputs.niri.overlays.niri ];
programs.niri = {
enable = true;
package = pkgs.niri-unstable;
};
security.pam.services.swaylock = {};
# Necessary for e.g. screensharing.
xdg.portal = {
enable = true;
# See https://github.com/YaLTeR/niri/wiki/Important-Software#portals.
# Niri's NixOS module appears to automatically bring in
# xdg-desktop-portal-gnome and gnome-keyring.
extraPortals = [
pkgs.xdg-desktop-portal-gtk
pkgs.xdg-desktop-portal-wlr
];
xdgOpenUsePortal = true;
config.preferred = {
default = [ "gtk" ];
"org.freedesktop.impl.portal.Screenshot" = [ "wlr" ];
"org.freedesktop.impl.portal.ScreenCast" = [ "wlr" ];
};
};
};
}