nixos-configuration/modules/sway.nix
2025-08-15 14:20:11 +02:00

65 lines
1.3 KiB
Nix

{ config, lib, pkgs, ... }:
lib.mkIf (config.jalr.gui.enable && config.jalr.gui.sway.enable) {
services.displayManager.sessionPackages = [ pkgs.sway ];
programs = {
wshowkeys.enable = true;
dconf.enable = true;
sway = {
enable = true;
xwayland.enable = true;
wrapperFeatures.gtk = true;
};
};
services.greetd = {
enable = !config.jalr.gui.gnome.enable;
settings =
let
command = pkgs.writeShellScript "sway-init" ''
systemctl --user import-environment PATH
#systemctl --user restart xdg-desktop-portal.service
exec ${pkgs.sway}/bin/sway
'';
user = "jalr";
in
{
default_session = {
inherit command;
inherit user;
};
initial_session = {
inherit command;
inherit user;
};
};
};
hardware.graphics.enable = true;
security.polkit.enable = true;
security.pam.loginLimits = [{
domain = "@users";
item = "rtprio";
type = "-";
value = 1;
}];
xdg = {
icons.enable = true;
portal = {
enable = true;
wlr.enable = true;
extraPortals = [
pkgs.xdg-desktop-portal-gtk
];
xdgOpenUsePortal = true;
};
};
environment.systemPackages = with pkgs; [
adwaita-icon-theme
];
}