nix/module/Sway.nix

48 lines
870 B
Nix

{
lib,
config,
pkgs,
...
}:
with lib;
let
cfg = config.module.desktop.sway;
in
{
options = {
module.desktop.sway = {
enable = mkEnableOption "Use Sway WM.";
extraConfig = mkOption {
default = "";
type = types.str;
};
};
};
config = mkIf cfg.enable {
module = {
desktop = {
bluetooth.enable = true;
brightness.enable = true;
portal.enable = true;
sound.enable = true;
waybar.enable = true;
wayland.enable = true;
};
realtime.enable = true;
};
services.gnome.gnome-keyring.enable = mkForce false;
environment.variables.XDG_CURRENT_DESKTOP = "sway";
programs.sway = {
enable = true;
wrapperFeatures = {
base = true;
gtk = true;
};
extraPackages = with pkgs; [ swaykbdd ];
};
};
}