2025-01-31 15:13:22 +01:00
|
|
|
# https://github.com/ChangeCaps/nixos-config/tree/0cec356abc0e46ca6ba27b3cf01cd51273bd4a69
|
2025-11-26 08:56:56 +01:00
|
|
|
{lib, ...}: {
|
2025-02-18 20:17:57 +01:00
|
|
|
options.monitors = lib.mkOption {
|
|
|
|
|
type = lib.types.listOf (lib.types.submodule {
|
2025-01-31 15:13:22 +01:00
|
|
|
options = {
|
|
|
|
|
name = lib.mkOption {
|
|
|
|
|
type = lib.types.nullOr lib.types.str;
|
|
|
|
|
default = null;
|
|
|
|
|
example = "DP-1";
|
|
|
|
|
};
|
|
|
|
|
|
2025-08-23 18:42:54 +02:00
|
|
|
resolution.width = lib.mkOption {
|
|
|
|
|
type = lib.types.nullOr lib.types.int;
|
|
|
|
|
default = null;
|
|
|
|
|
};
|
|
|
|
|
resolution.height = lib.mkOption {
|
|
|
|
|
type = lib.types.nullOr lib.types.int;
|
2025-01-31 15:13:22 +01:00
|
|
|
default = null;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
refreshRate = lib.mkOption {
|
|
|
|
|
type = lib.types.nullOr lib.types.int;
|
|
|
|
|
default = null;
|
|
|
|
|
example = 60;
|
|
|
|
|
};
|
|
|
|
|
|
2025-09-30 07:41:10 +02:00
|
|
|
refreshRateNiri = lib.mkOption {
|
|
|
|
|
type = lib.types.nullOr lib.types.float;
|
|
|
|
|
default = null;
|
|
|
|
|
example = 60.0;
|
|
|
|
|
};
|
|
|
|
|
|
2025-08-23 18:42:54 +02:00
|
|
|
position.x = lib.mkOption {
|
|
|
|
|
type = lib.types.int;
|
|
|
|
|
default = 0;
|
|
|
|
|
};
|
|
|
|
|
position.y = lib.mkOption {
|
|
|
|
|
type = lib.types.int;
|
|
|
|
|
default = 0;
|
2025-01-31 15:13:22 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
scale = lib.mkOption {
|
|
|
|
|
type = lib.types.float;
|
|
|
|
|
default = 1.0;
|
|
|
|
|
};
|
|
|
|
|
|
2025-02-21 14:27:55 +01:00
|
|
|
transform = lib.mkOption {
|
|
|
|
|
# https://wiki.hyprland.org/Configuring/Monitors/#rotating
|
|
|
|
|
type = lib.types.nullOr lib.types.int;
|
|
|
|
|
default = null;
|
2025-02-21 15:25:56 +01:00
|
|
|
example = 1;
|
2025-02-21 14:27:55 +01:00
|
|
|
};
|
|
|
|
|
|
2025-01-31 15:13:22 +01:00
|
|
|
enable = lib.mkOption {
|
|
|
|
|
type = lib.types.bool;
|
|
|
|
|
default = true;
|
|
|
|
|
};
|
|
|
|
|
};
|
2025-02-18 20:17:57 +01:00
|
|
|
});
|
2025-02-19 23:42:24 +01:00
|
|
|
default = [];
|
2025-01-31 15:13:22 +01:00
|
|
|
};
|
|
|
|
|
}
|