programs/kiwmi: init module

This commit is contained in:
Gabriel Arazas 2022-09-26 08:37:00 +08:00
parent 6a3b9ce0e1
commit 646eb5296b

View File

@ -0,0 +1,33 @@
{ config, options, lib, pkgs, ... }:
let
cfg = config.programs.kiwmi;
package = cfg.package.override { inherit extraOptions; };
in {
options.programs.kiwmi = {
enable = lib.mkEnableOption "Kiwmi, a fully programmable Wayland compositor";
package = lib.mkOption {
description = "The package containing the <literal>kiwmi</literal> and <literal>kiwmic</literal>.";
type = lib.types.package;
default = pkgs.kiwmi;
};
extraOptions = lib.mkOption {
description = "Command line arguments passed to Kiwmi.";
type = with lib.types; listOf str;
default = [ ];
defaultText = "[ ]";
example = [ "-c" "./config/kiwmi/init.lua" ];
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ package ];
services.xserver.displayManager.sessionPackages = [ package ];
xdg.portal = {
enable = true;
extraPortal = [ pkgs.xdg-desktop-portal-wlr ];
};
};
}