55 lines
1.3 KiB
Nix
55 lines
1.3 KiB
Nix
![]() |
{ config, pkgs, lib, ... }:
|
||
|
|
||
|
with lib;
|
||
|
|
||
|
let
|
||
|
cfg = config.programs.sway-beta;
|
||
|
swayPackage = cfg.package;
|
||
|
in {
|
||
|
options.programs.sway-beta = {
|
||
|
enable = mkEnableOption ''
|
||
|
Sway, the i3-compatible tiling Wayland compositor. This module will be removed after the final release of Sway 1.0
|
||
|
'';
|
||
|
|
||
|
package = mkOption {
|
||
|
type = types.package;
|
||
|
default = pkgs.sway-beta;
|
||
|
defaultText = "pkgs.sway-beta";
|
||
|
description = ''
|
||
|
The package to be used for `sway`.
|
||
|
'';
|
||
|
};
|
||
|
|
||
|
extraPackages = mkOption {
|
||
|
type = with types; listOf package;
|
||
|
default = with pkgs; [
|
||
|
xwayland dmenu
|
||
|
];
|
||
|
defaultText = literalExample ''
|
||
|
with pkgs; [ xwayland dmenu ];
|
||
|
'';
|
||
|
example = literalExample ''
|
||
|
with pkgs; [
|
||
|
xwayland
|
||
|
i3status i3status-rust
|
||
|
termite rofi light
|
||
|
]
|
||
|
'';
|
||
|
description = ''
|
||
|
Extra packages to be installed system wide.
|
||
|
'';
|
||
|
};
|
||
|
};
|
||
|
|
||
|
config = mkIf cfg.enable {
|
||
|
environment.systemPackages = [ swayPackage ] ++ cfg.extraPackages;
|
||
|
security.pam.services.swaylock = {};
|
||
|
hardware.opengl.enable = mkDefault true;
|
||
|
fonts.enableDefaultFonts = mkDefault true;
|
||
|
programs.dconf.enable = mkDefault true;
|
||
|
};
|
||
|
|
||
|
meta.maintainers = with lib.maintainers; [ gnidorah primeos colemickens ];
|
||
|
}
|
||
|
|