/** * 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; { picom = mkEnableOption "window composition with picom"; 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 "; }; 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); }