101 lines
4.7 KiB
Diff
101 lines
4.7 KiB
Diff
|
From 91608626f360638c0dbffa1dbad58c426c8fc733 Mon Sep 17 00:00:00 2001
|
||
|
From: Neal Gompa <ngompa@fedoraproject.org>
|
||
|
Date: Mon, 8 Jul 2024 20:35:28 -0400
|
||
|
Subject: [PATCH 2/2] data: Drop X11 fallback rules
|
||
|
|
||
|
We expect Wayland to work on all conceivable configurations.
|
||
|
---
|
||
|
data/61-gdm.rules.in | 60 --------------------------------------------
|
||
|
1 file changed, 60 deletions(-)
|
||
|
|
||
|
diff --git a/data/61-gdm.rules.in b/data/61-gdm.rules.in
|
||
|
index 354277bfe..eb9eedbf5 100644
|
||
|
--- a/data/61-gdm.rules.in
|
||
|
+++ b/data/61-gdm.rules.in
|
||
|
@@ -10,22 +10,8 @@ ATTR{vendor}=="0x1b36", ATTR{device}=="0x0100", RUN+="/usr/bin/touch /run/udev/g
|
||
|
# vga
|
||
|
ATTR{vendor}=="0x1234", ATTR{device}=="0x1111", RUN+="/usr/bin/touch /run/udev/gdm-machine-has-virtual-gpu", ENV{GDM_MACHINE_HAS_VIRTUAL_GPU}="1", GOTO="gdm_pci_device_end"
|
||
|
|
||
|
-# disable Wayland on Hi1710 chipsets
|
||
|
-ATTR{vendor}=="0x19e5", ATTR{device}=="0x1711", GOTO="gdm_disable_wayland"
|
||
|
-
|
||
|
LABEL="gdm_pci_device_end"
|
||
|
|
||
|
-# disable Wayland if modesetting is disabled
|
||
|
-KERNEL!="card[0-9]*", GOTO="gdm_nomodeset_end"
|
||
|
-KERNEL=="card[0-9]-*", GOTO="gdm_nomodeset_end"
|
||
|
-SUBSYSTEM!="drm", GOTO="gdm_nomodeset_end"
|
||
|
-# but keep it enabled for simple framebuffer drivers
|
||
|
-DRIVERS=="simple-framebuffer", GOTO="gdm_nomodeset_end"
|
||
|
-IMPORT{parent}="GDM_MACHINE_HAS_VIRTUAL_GPU"
|
||
|
-ENV{GDM_MACHINE_HAS_VIRTUAL_GPU}!="1", RUN+="/usr/bin/touch /run/udev/gdm-machine-has-hardware-gpu"
|
||
|
-IMPORT{cmdline}="nomodeset", GOTO="gdm_disable_wayland"
|
||
|
-LABEL="gdm_nomodeset_end"
|
||
|
-
|
||
|
# The vendor nvidia driver has multiple modules that need to be loaded before GDM can make an
|
||
|
# informed choice on which way to proceed, so force GDM to wait until NVidia's modules are
|
||
|
# loaded before starting up.
|
||
|
@@ -41,17 +27,6 @@ IMPORT{program}="/bin/sh -c \"sed -e 's/: /=/g' -e 's/\([^[:upper:]]\)\([[:upper
|
||
|
# If it is, there's no need to check for the suspend/resume services
|
||
|
ENV{NVIDIA_ENABLE_S0IX_POWER_MANAGEMENT}=="1", GOTO="gdm_nvidia_suspend_end"
|
||
|
|
||
|
-# Check if suspend/resume services necessary for working wayland support is available
|
||
|
-TEST{0711}!="/usr/bin/nvidia-sleep.sh", GOTO="gdm_disable_wayland"
|
||
|
-TEST{0711}!="/usr/lib/systemd/system-sleep/nvidia", GOTO="gdm_disable_wayland"
|
||
|
-
|
||
|
-ENV{NVIDIA_PRESERVE_VIDEO_MEMORY_ALLOCATIONS}!="1", GOTO="gdm_disable_wayland"
|
||
|
-IMPORT{program}="/bin/sh -c 'echo NVIDIA_HIBERNATE=`systemctl is-enabled nvidia-hibernate`'"
|
||
|
-ENV{NVIDIA_HIBERNATE}!="enabled", GOTO="gdm_disable_wayland"
|
||
|
-IMPORT{program}="/bin/sh -c 'echo NVIDIA_RESUME=`systemctl is-enabled nvidia-resume`'"
|
||
|
-ENV{NVIDIA_RESUME}!="enabled", GOTO="gdm_disable_wayland"
|
||
|
-IMPORT{program}="/bin/sh -c 'echo NVIDIA_SUSPEND=`systemctl is-enabled nvidia-suspend`'"
|
||
|
-ENV{NVIDIA_SUSPEND}!="enabled", GOTO="gdm_disable_wayland"
|
||
|
LABEL="gdm_nvidia_suspend_end"
|
||
|
LABEL="gdm_nvidia_end"
|
||
|
|
||
|
@@ -76,41 +51,6 @@ ENV{GDM_NUMBER_OF_GRAPHICS_CARDS}=="1", RUN+="/usr/bin/rm -f /run/udev/gdm-machi
|
||
|
ENV{GDM_NUMBER_OF_GRAPHICS_CARDS}!="1", RUN+="/usr/bin/touch /run/udev/gdm-machine-has-hybrid-graphics"
|
||
|
LABEL="gdm_hybrid_graphics_check_end"
|
||
|
|
||
|
-# If this is a hybrid graphics laptop with vendor nvidia driver, disable wayland
|
||
|
-LABEL="gdm_hybrid_nvidia_laptop_check"
|
||
|
-TEST!="/run/udev/gdm-machine-is-laptop", GOTO="gdm_hybrid_nvidia_laptop_check_end"
|
||
|
-TEST!="/run/udev/gdm-machine-has-hybrid-graphics", GOTO="gdm_hybrid_nvidia_laptop_check_end"
|
||
|
-TEST!="/run/udev/gdm-machine-has-vendor-nvidia-driver", GOTO="gdm_hybrid_nvidia_laptop_check_end"
|
||
|
-GOTO="gdm_disable_wayland"
|
||
|
-LABEL="gdm_hybrid_nvidia_laptop_check_end"
|
||
|
-
|
||
|
-# Disable wayland in situation where we're in a guest with a virtual gpu and host passthrough gpu
|
||
|
-LABEL="gdm_virt_passthrough_check"
|
||
|
-TEST!="/run/udev/gdm-machine-has-hybrid-graphics", GOTO="gdm_virt_passthrough_check_end"
|
||
|
-TEST!="/run/udev/gdm-machine-has-virtual-gpu", GOTO="gdm_virt_passthrough_check_end"
|
||
|
-TEST!="/run/udev/gdm-machine-has-hardware-gpu", GOTO="gdm_virt_passthrough_check_end"
|
||
|
-GOTO="gdm_disable_wayland"
|
||
|
-LABEL="gdm_virt_passthrough_check_end"
|
||
|
-
|
||
|
-# Disable wayland when there are multiple virtual gpus
|
||
|
-LABEL="gdm_virt_multi_gpu_check"
|
||
|
-TEST!="/run/udev/gdm-machine-has-hybrid-graphics", GOTO="gdm_virt_multi_gpu_check_end"
|
||
|
-TEST!="/run/udev/gdm-machine-has-virtual-gpu", GOTO="gdm_virt_multi_gpu_check_end"
|
||
|
-TEST=="/run/udev/gdm-machine-has-hardware-gpu", GOTO="gdm_virt_multi_gpu_check_end"
|
||
|
-LABEL="gdm_virt_multi_gpu_check_end"
|
||
|
-
|
||
|
-# Disable wayland when nvidia modeset is disabled
|
||
|
-KERNEL!="nvidia_drm", GOTO="gdm_nvidia_drm_end"
|
||
|
-SUBSYSTEM!="module", GOTO="gdm_nvidia_drm_end"
|
||
|
-ACTION!="add", GOTO="gdm_nvidia_drm_end"
|
||
|
-# disable wayland if nvidia-drm modeset is not enabled
|
||
|
-ATTR{parameters/modeset}!="Y", GOTO="gdm_disable_wayland"
|
||
|
-LABEL="gdm_nvidia_drm_end"
|
||
|
-
|
||
|
-GOTO="gdm_end"
|
||
|
-
|
||
|
-LABEL="gdm_disable_wayland"
|
||
|
-RUN+="@libexecdir@/gdm-runtime-config set daemon WaylandEnable false"
|
||
|
GOTO="gdm_end"
|
||
|
|
||
|
LABEL="gdm_end"
|
||
|
--
|
||
|
2.45.2
|
||
|
|