Update gdm-monitor.nix
This commit is contained in:
parent
3d2cc8b4aa
commit
55c0f5cecc
1 changed files with 53 additions and 38 deletions
|
|
@ -1,10 +1,10 @@
|
|||
# settings/gdm-monitor-sync.nix
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
# Copy monitors.xml to GDM's config directory to prevent display mode changes during login
|
||||
# This eliminates the black screen/signal loss when transitioning from GDM to user session
|
||||
config = lib.mkIf (config.networking.hostName == "FredOS-Gaming") {
|
||||
# Copy monitors.xml to GDM's config directory
|
||||
environment.etc."gdm-monitors.xml" = {
|
||||
source = pkgs.writeText "monitors.xml" ''
|
||||
<monitors version="2">
|
||||
|
|
@ -35,10 +35,25 @@ config = lib.mkIf (config.networking.hostName == "FredOS-Gaming") {
|
|||
target = "gdm-monitors.xml";
|
||||
};
|
||||
|
||||
# Create GDM config directory and symlink the monitors.xml file
|
||||
systemd.tmpfiles.rules = [
|
||||
"d /var/lib/gdm/.config 0711 gdm gdm"
|
||||
"L+ /var/lib/gdm/.config/monitors.xml - - - - /etc/gdm-monitors.xml"
|
||||
];
|
||||
|
||||
# Log what GDM is actually using
|
||||
systemd.services.gdm-display-check = {
|
||||
description = "Log GDM display settings";
|
||||
wantedBy = [ "gdm.service" ];
|
||||
after = [ "gdm.service" ];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
ExecStart = "${pkgs.writeShellScript "check-gdm-display" ''
|
||||
sleep 5
|
||||
DISPLAY=:1024 ${pkgs.xorg.xrandr}/bin/xrandr > /tmp/gdm-display-info.txt 2>&1 || true
|
||||
echo "=== GDM monitors.xml ===" >> /tmp/gdm-display-info.txt
|
||||
cat /var/lib/gdm/.config/monitors.xml >> /tmp/gdm-display-info.txt 2>&1 || true
|
||||
''}";
|
||||
};
|
||||
};
|
||||
}; # <-- This was missing
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue