You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
48 lines
1.2 KiB
48 lines
1.2 KiB
/**
|
|
* A home-manager module to configure userspace i3
|
|
*
|
|
*/
|
|
|
|
{ config, lib, pkgs, home-manager, ... } @ args:
|
|
|
|
let cfg = config.libkookie.ui.i3;
|
|
in
|
|
{
|
|
options.libkookie.ui.i3 = with lib; {
|
|
compton = mkEnableOption "window composition with compton";
|
|
|
|
wallpaper = mkOption {
|
|
type = types.path;
|
|
description = ''
|
|
Specify the wallpaper to set.
|
|
'';
|
|
};
|
|
|
|
# TODO: figure out a way to make this a package type
|
|
fonts = mkOption {
|
|
type = with types; listOf str;
|
|
default = [ "monospace" ];
|
|
description = ''
|
|
A set of fonts to use by the i3 module for rendering text
|
|
'';
|
|
};
|
|
|
|
term = mkOption {
|
|
type = types.package;
|
|
description = "Terminal emulator to bind to <M-RET>";
|
|
};
|
|
|
|
i3Status = mkOption {
|
|
type = with types; submodule {
|
|
options = {
|
|
colors = mkOption { type = bool; default = true; };
|
|
format = mkOption { type = str; default = "dzen2"; };
|
|
interval = mkOption { type = int; default = 1; };
|
|
segments = mkOption { type = listOf str; default = []; };
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
config = (import core/setup.nix args);
|
|
}
|
|
|