Skip to content

Turning off display on NVIDIA at startup causes black screen #4306

Description

@coatlessali
Config
input {
    focus-follows-mouse
}

output "Dell Inc. DELL S2421HGF DDBT973" {
    mode "1920x1080@119.982"
    variable-refresh-rate
    scale 1.0
    transform "normal"
    position x=0 y=0
}

output "Dell Inc. DELL E770s 2010V02ABP4H" {
	off
}

layout {
    gaps 0
    center-focused-column "never"
    
    preset-column-widths {
    	proportion 0.25
        proportion 0.33333
        proportion 0.5
        proportion 0.66667
        proportion 0.75
    }
    
    default-column-width { proportion 0.5; }

	shadow {
		on
	}
    
    focus-ring {
        off
    }

    border {
        width 1
        active-gradient from="b90055" to="#63004b" angle=45 relative-to="window"
        inactive-gradient from="#36004a" to="#0d0030" angle=45 relative-to="window"
    }
}

spawn-at-startup "sudo" "mount" "10.42.0.230:/nfs/ali" "/home/ali/Network/"
spawn-at-startup "bash" "/home/ali/.local/bin/import-gsettings"
spawn-at-startup "mpv" "--volume=80" "/home/ali/.sounds/menu/startup.wav"
spawn-at-startup "/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1"
spawn-at-startup "/home/ali/.local/bin/musicpresence.AppImage"
prefer-no-csd
screenshot-path "~/Pictures/Screenshots/Screenshot from %Y-%m-%d %H-%M-%S.png"

window-rule {
	match title=r#"^.exe$"#
	open-floating true
}

window-rule {
	geometry-corner-radius 0
	clip-to-geometry true
}

window-rule {
	match app-id="retroarch"
	open-fullscreen true
}

binds {
    Mod+Shift+Slash { show-hotkey-overlay; }

    Mod+Return hotkey-overlay-title="Open Terminal (Kitty)" { spawn "bash" "-c" "va11-popup & kitty || va11-close"; }
    Mod+D hotkey-overlay-title="Open Wofi (drun)" { spawn "bash" "-c" "va11-popup & wofi --show drun && va11-confirm || va11-close"; }
    Mod+Shift+D hotkey-overlay-title="Open Wofi (run)" { spawn "bash" "-c" "va11-popup & wofi --show run && va11-confirm || va11-close"; }
	Mod+T hotkey-overlay-title="Copy þ to clipboard" { spawn "bash" "-c" "va11-action & wl-copy þ"; }

	Mod+E { toggle-column-tabbed-display; }

    XF86AudioRaiseVolume { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1+"; }
    XF86AudioLowerVolume { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1-"; }

    Mod+Shift+Q hotkey-overlay-title="Close Window" { spawn "bash" "-c" "niri msg action close-window && va11-close || va11-error"; }

	// Mod+S { spawn "bash" "-c" "hyprmag" "-s" "1.25" "-r" "360"; }

    Mod+Left  { focus-column-left; }
    Mod+Down  { focus-window-down; }
    Mod+Up    { focus-window-up; }
    Mod+Right { focus-column-right; }

    Mod+Shift+Left  { move-column-left; }
    Mod+Shift+Down  { move-window-down; }
    Mod+Shift+Up    { move-window-up; }
    Mod+Shift+Right { move-column-right; }

    Mod+Home { focus-column-first; }
    Mod+End  { focus-column-last; }
    Mod+Shift+Home { move-column-to-first; }
    Mod+Shift+End  { move-column-to-last; }

    Mod+Ctrl+Left  { focus-monitor-left; }
    Mod+Ctrl+Down  { focus-monitor-down; }
    Mod+Ctrl+Up    { focus-monitor-up; }
    Mod+Ctrl+Right { focus-monitor-right; }

    Mod+Shift+Ctrl+Left  { move-column-to-monitor-left; }
    Mod+Shift+Ctrl+Down  { move-column-to-monitor-down; }
    Mod+Shift+Ctrl+Up    { move-column-to-monitor-up; }
    Mod+Shift+Ctrl+Right { move-column-to-monitor-right; }

    Mod+Page_Down      { focus-workspace-down; }
    Mod+Page_Up        { focus-workspace-up; }
    Mod+U              { focus-workspace-down; }
    Mod+I              { focus-workspace-up; }
    Mod+Shift+Page_Down { move-column-to-workspace-down; }
    Mod+Shift+Page_Up   { move-column-to-workspace-up; }
    Mod+Shift+U         { move-column-to-workspace-down; }
    Mod+Shift+I         { move-column-to-workspace-up; }

    Mod+Ctrl+Page_Down { move-workspace-down; }
    Mod+Ctrl+Page_Up   { move-workspace-up; }
    Mod+Ctrl+U         { move-workspace-down; }
    Mod+Ctrl+I         { move-workspace-up; }

    Mod+WheelScrollDown      cooldown-ms=150 { focus-workspace-down; }
    Mod+WheelScrollUp        cooldown-ms=150 { focus-workspace-up; }
    Mod+Ctrl+WheelScrollDown cooldown-ms=150 { move-column-to-workspace-down; }
    Mod+Ctrl+WheelScrollUp   cooldown-ms=150 { move-column-to-workspace-up; }

    Mod+WheelScrollRight      { focus-column-right; }
    Mod+WheelScrollLeft       { focus-column-left; }
    Mod+Ctrl+WheelScrollRight { move-column-right; }
    Mod+Ctrl+WheelScrollLeft  { move-column-left; }

    Mod+Shift+WheelScrollDown      { focus-column-right; }
    Mod+Shift+WheelScrollUp        { focus-column-left; }
    Mod+Ctrl+Shift+WheelScrollDown { move-column-right; }
    Mod+Ctrl+Shift+WheelScrollUp   { move-column-left; }

    Mod+1 { focus-workspace 1; }
    Mod+2 { focus-workspace 2; }
    Mod+3 { focus-workspace 3; }
    Mod+4 { focus-workspace 4; }
    Mod+5 { focus-workspace 5; }
    Mod+6 { focus-workspace 6; }
    Mod+7 { focus-workspace 7; }
    Mod+8 { focus-workspace 8; }
    Mod+9 { focus-workspace 9; }
    Mod+Ctrl+1 { move-column-to-workspace 1; }
    Mod+Ctrl+2 { move-column-to-workspace 2; }
    Mod+Ctrl+3 { move-column-to-workspace 3; }
    Mod+Ctrl+4 { move-column-to-workspace 4; }
    Mod+Ctrl+5 { move-column-to-workspace 5; }
    Mod+Ctrl+6 { move-column-to-workspace 6; }
    Mod+Ctrl+7 { move-column-to-workspace 7; }
    Mod+Ctrl+8 { move-column-to-workspace 8; }
    Mod+Ctrl+9 { move-column-to-workspace 9; }

    Mod+Comma  { consume-window-into-column; }
    Mod+Period { expel-window-from-column; }

    Mod+R { switch-preset-column-width; }
    Mod+F { maximize-column; }
    Mod+Shift+F { fullscreen-window; }
    Mod+C { center-column; }

    Mod+Minus { set-column-width "-10%"; }
    Mod+Equal { set-column-width "+10%"; }

    Mod+Shift+Minus { set-window-height "-10%"; }
    Mod+Shift+Equal { set-window-height "+10%"; }

    Mod+Print { screenshot; }
    Mod+Ctrl+Print { screenshot-screen; }
    Mod+Shift+Print { screenshot-window; }

    Mod+Shift+E hotkey-overlay-title="Shutdown Menu" { spawn "wofi-power"; }
    Mod+Shift+M hotkey-overlay-title="Monitor Menu" { spawn "wofi-monitor"; }

    Mod+Shift+P { power-off-monitors; }
}

include "dms/cursor.kdl"

When a display is set to be turned off at startup, all displays fail to properly modeset when using an NVIDIA GPU with the proprietary NVIDIA driver. This results in all monitors being turned off and the desktop being unusable.

Turning off the display after starting niri does not cause this, though it weirdly does cause both displays to modeset even if the mode hasn't changed on the other display.

System Information

  • niri version: niri 26.04 (8ed0da4)
  • Distro: Arch Linux x86_64
  • GPU: NVIDIA GeForce RTX 3070 Ti
  • CPU: AMD Ryzen 7 5700X

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:outputMonitors, scaling, VRR, DPMSnvidiaNVIDIA issues

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions