mirror of
https://codeberg.org/muon/home.git
synced 2025-12-06 08:07:45 +00:00
Setup monitors
This commit is contained in:
parent
b5e7be0747
commit
2aa3d272c9
4 changed files with 63 additions and 35 deletions
|
|
@ -42,25 +42,43 @@ in {
|
||||||
services.xserver.libinput.mouse.accelProfile = "flat";
|
services.xserver.libinput.mouse.accelProfile = "flat";
|
||||||
|
|
||||||
## Monitors
|
## Monitors
|
||||||
mods.monitor.main.resolution = res;
|
mods.monitors = {
|
||||||
services.xserver.xrandrHeads = [
|
primary = {
|
||||||
{
|
name = "DP-2";
|
||||||
output = "DP-2";
|
config = {
|
||||||
|
enable = true;
|
||||||
|
mode = res;
|
||||||
|
position = "0x480";
|
||||||
primary = true;
|
primary = true;
|
||||||
monitorConfig = ''
|
rate = "144.00";
|
||||||
Option "PreferredMode" "${res}"
|
};
|
||||||
Option "Position" "0x480"
|
};
|
||||||
'';
|
secondary = {
|
||||||
}
|
name = "HDMI-1";
|
||||||
{
|
config = {
|
||||||
output = "HDMI-1";
|
enable = true;
|
||||||
monitorConfig = ''
|
mode = "1920x1080";
|
||||||
Option "PreferredMode" "1920x1080"
|
position = "2560x0";
|
||||||
Option "Position" "2560x-480"
|
rate = "60.00";
|
||||||
Option "Rotate" "right"
|
rotate = "right";
|
||||||
'';
|
};
|
||||||
}
|
};
|
||||||
];
|
};
|
||||||
|
services.autorandr = {
|
||||||
|
enable = true;
|
||||||
|
profiles."${config.mods.user.name}" = {
|
||||||
|
fingerprint = {
|
||||||
|
"${config.mods.monitors.primary.name}" = "00ffffffffffff000469a827528b01002f1a0104a53c22783ba595a65650a0260d5054bfef00714f95008180d1c00101010101010101e8e40050a0a067500820980455502100001e565e00a0a0a029503020350055502100001e000000fd002890dede3c010a202020202020000000fc0041535553204d473237380a202001cd02031e714b1213041f900e0f1d1e0514230917078301000065030c001000e8e40050a0a067500820980455502100001e909b0050a0a046500820880c55502100001e662156aa51001e30468f330055502100001e565e00a0a0a029503020350055502100001e87bc0050a0a055500820780055502100001e0000000000000056";
|
||||||
|
"${config.mods.monitors.secondary.name}" = "00ffffffffffff00410c00000101010107160103804024780af9aba2554a9a250f474a21080081800101010101010101010101010101023a801871382d40582c450080682100001e1b2150a051001e3048883500806821000018000000fc005048494c495053204654560a20000000fd00384c1e5311000a20202020202001ca020326714e9f10202122140513041102150601260907031507508301000067030c001000b82d023a80d072382d40102c458080682100001e011d803e73382d407e2c458080682100001e011d80d0721c1620102c258080682100009e011d00bc52d01e20b828554080682100001e00000000000000000000000000000000002c";
|
||||||
|
};
|
||||||
|
config = {
|
||||||
|
"${config.mods.monitors.primary.name}" =
|
||||||
|
config.mods.monitors.primary.config;
|
||||||
|
"${config.mods.monitors.secondary.name}" =
|
||||||
|
config.mods.monitors.secondary.config;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
# Backup environment
|
# Backup environment
|
||||||
services.xserver.windowManager.qtile.enable = true;
|
services.xserver.windowManager.qtile.enable = true;
|
||||||
|
|
|
||||||
|
|
@ -19,15 +19,13 @@ let cfg = osConfig.mods; in {
|
||||||
# Host specific
|
# Host specific
|
||||||
|
|
||||||
## Monitors
|
## Monitors
|
||||||
xsession.windowManager.i3.config.workspaceOutputAssign = [
|
xsession.windowManager.i3.config.workspaceOutputAssign = [{
|
||||||
{
|
|
||||||
workspace = "1";
|
workspace = "1";
|
||||||
output = "DP-2";
|
output = "${osConfig.mods.monitors.primary.name}";
|
||||||
} {
|
} {
|
||||||
workspace = "2";
|
workspace = "2";
|
||||||
output = "HDMI-1";
|
output = "${osConfig.mods.monitors.secondary.name}";
|
||||||
}
|
}];
|
||||||
];
|
|
||||||
|
|
||||||
wayland.windowManager.hyprland.settings = {
|
wayland.windowManager.hyprland.settings = {
|
||||||
monitor = [
|
monitor = [
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@
|
||||||
enable = true;
|
enable = true;
|
||||||
efiSupport = true;
|
efiSupport = true;
|
||||||
device = "nodev";
|
device = "nodev";
|
||||||
gfxmodeEfi = config.mods.monitor.main.resolution;
|
gfxmodeEfi = config.mods.monitors.primary.config.mode;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,23 @@
|
||||||
{ pkgs, lib, config, ... }: {
|
{ pkgs, lib, config, ... }: let
|
||||||
|
monitorModule = lib.types.submodule {
|
||||||
|
options = {
|
||||||
|
name = lib.mkOption {
|
||||||
|
type = lib.types.string;
|
||||||
|
description = "monitor name";
|
||||||
|
example = "HDMI-1";
|
||||||
|
};
|
||||||
|
config = lib.mkOption {
|
||||||
|
type = lib.types.attrs;
|
||||||
|
description = "autorandr profile config";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
in {
|
||||||
options.mods = {
|
options.mods = {
|
||||||
xorg.enable = lib.mkEnableOption "enables xorg";
|
xorg.enable = lib.mkEnableOption "enables xorg";
|
||||||
monitor.main.resolution = lib.mkOption {
|
monitors = lib.mkOption {
|
||||||
description = "main monitor resolution";
|
type = lib.types.attrsOf monitorModule;
|
||||||
type = lib.types.string;
|
default = { };
|
||||||
default = "1920x1080";
|
|
||||||
example = "2560x1440";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue