50 lines
1019 B
Nix
50 lines
1019 B
Nix
{ lib, config, inputs, pkgs, ... }:
|
|
|
|
with lib;
|
|
|
|
let
|
|
cfg = config.settings.desktop-environments.niri;
|
|
in {
|
|
options = {
|
|
settings.desktop-environments.niri.enable = lib.mkOption {
|
|
type = lib.types.bool;
|
|
description = ''
|
|
Enable niri desktop environment
|
|
'';
|
|
default = false;
|
|
};
|
|
};
|
|
|
|
imports = [
|
|
inputs.niri.nixosModules.niri
|
|
];
|
|
|
|
config = mkIf cfg.enable {
|
|
nix = {
|
|
settings = {
|
|
substituters = [
|
|
"https://niri.cachix.org"
|
|
];
|
|
trusted-public-keys = [
|
|
"niri.cachix.org-1:Wv0OmO7PsuocRKzfDoJ3mulSl7Z6oezYhGhR+3W2964="
|
|
];
|
|
};
|
|
};
|
|
|
|
programs.niri.enable = true;
|
|
programs.niri.package = pkgs.unstable.niri;
|
|
nixpkgs.overlays = [ inputs.niri.overlays.niri ];
|
|
environment.variables.NIXOS_OZONE_WL = "1";
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
wl-clipboard
|
|
wayland-utils
|
|
libsecret
|
|
cage
|
|
gamescope
|
|
xwayland-satellite-unstable
|
|
swaybg
|
|
];
|
|
};
|
|
}
|