dotfiles/options.nix

60 lines
2.2 KiB
Nix
Raw Permalink Normal View History

{ lib, config, ... }:
2023-11-21 20:01:56 +00:00
{
options.frogeye = {
extra = lib.mkEnableOption "Big software";
2023-12-02 20:50:59 +00:00
gaming = lib.mkEnableOption "Games";
polarity = lib.mkOption {
2024-01-07 11:54:43 +00:00
default = "light";
description = "Whether to use light theme or dark theme.";
2024-01-07 11:54:43 +00:00
type = lib.types.enum [ "light" "dark" ];
};
2023-11-22 13:05:48 +00:00
desktop = {
xorg = lib.mkEnableOption "Enable X11 support";
2024-01-07 22:29:16 +00:00
# TODO Use appropriate OS/HM option(s) instead
2023-12-04 21:47:02 +00:00
numlock = lib.mkEnableOption "Auto-enable numlock";
x11_screens = lib.mkOption {
2023-12-16 21:39:11 +00:00
default = [ "UNSET1" ];
2023-12-04 21:47:02 +00:00
description = "A list of xrandr screen names from left to right.";
type = lib.types.listOf lib.types.str;
};
maxVideoHeight = lib.mkOption {
type = lib.types.int;
description = "Maximum video height in pixel the machine can reasonably watch";
default = 1080;
};
2023-12-05 22:11:54 +00:00
phasesBrightness = {
enable = lib.mkEnableOption "Set a specific brightness for the screen when running phases commands";
2023-12-16 21:39:11 +00:00
jour = lib.mkOption { type = lib.types.str; default = "100%"; description = "brightnessctl value for phase: jour"; };
crepuscule = lib.mkOption { type = lib.types.str; default = "50%"; description = "brightnessctl value for phase: crepuscule"; };
nuit = lib.mkOption { type = lib.types.str; default = "1%"; description = "brightnessctl value for phase: nuit"; };
2023-12-05 22:11:54 +00:00
};
2023-11-22 13:05:48 +00:00
};
2023-11-22 15:32:20 +00:00
dev = {
ansible = lib.mkEnableOption "Ansible dev stuff";
c = lib.mkEnableOption "C/C++ dev stuff";
docker = lib.mkEnableOption "Docker dev stuff";
fpga = lib.mkEnableOption "FPGA dev stuff";
2024-01-11 22:54:03 +00:00
go = lib.mkEnableOption "Go dev stuff";
node = lib.mkEnableOption "NodeJS dev stuff";
2023-12-08 17:39:02 +00:00
perl = lib.mkEnableOption "Perl dev stuff";
php = lib.mkEnableOption "PHP dev stuff";
prose = lib.mkEnableOption "Writing stuff";
2023-11-22 15:32:20 +00:00
python = lib.mkEnableOption "Python dev stuff";
};
2024-03-09 17:22:30 +00:00
hooks.lock = lib.mkOption {
type = lib.types.lines;
default = "";
description = "Bash commands to execute on locking the session.";
};
2023-11-22 15:32:20 +00:00
};
config = {
frogeye = {
dev = {
prose = lib.mkDefault true;
2023-11-22 15:32:20 +00:00
python = lib.mkDefault true;
};
};
2023-11-21 20:01:56 +00:00
};
}