1
1
Fork 0
nixos/options/custom/default.nix

56 lines
1.6 KiB
Nix
Raw Normal View History

{
config,
lib,
...
}:
with lib; let
cfg = config.custom;
hm = config.home-manager.users.${config.custom.username};
in {
options.custom = {
### Profiles
default = mkOption {default = true;};
full = mkOption {default = false;};
minimal = mkOption {default = cfg.full;};
profile = mkOption {};
### Users
domain = mkOption {default = "bjork.tech";};
hostname = mkOption {};
realname = mkOption {default = "Myned";};
username = mkOption {default = "myned";};
sync = mkOption {default = "/home/myned/SYNC";};
### Hardware
width = mkOption {default = 1920.0;};
height = mkOption {default = 1080.0;};
refresh = mkOption {default = 60.0;};
vrr = mkOption {default = false;};
ultrawide = mkOption {default = cfg.width * 9 / 16 > cfg.height;}; # Wider than 16:9
hidpi = mkOption {default = cfg.scale > 1;};
scale = mkOption {default = 1.0;};
border = mkOption {default = 3.0;};
gap = mkOption {default = 10.0;};
padding = mkOption {default = 51.0;}; # ?? journalctl --user -u waybar.service | grep height:
rounding = mkOption {default = 15.0;};
### Misc
desktop = mkOption {
default =
if config.custom.full
then "niri"
else "gnome";
};
lockscreen = mkOption {default = "hyprlock";};
menu = mkOption {default = "rofi";};
wallpaper = mkOption {default = false;};
browser = {
# TODO: Use lib.getExe' instead of /bin/ where possible
command = mkOption {default = getExe hm.programs.zen-browser.finalPackage;};
desktop = mkOption {default = "zen.desktop";};
};
};
}