commit a6ef12d968111d4d8c480124575d9d86ae61e470
parent ff07eab85b5c6b728ad3cc99d02e9f2ae8b9854f
Author: Simon Ser <contact@emersion.fr>
Date: Tue, 12 Dec 2023 15:36:23 +0100
Detect proprietary DisplayLink drivers
evdi is open-source, but is just some condom for their proprietary
user-space driver.
Diffstat:
1 file changed, 17 insertions(+), 8 deletions(-)
diff --git a/sway/server.c b/sway/server.c
@@ -128,18 +128,27 @@ static void detect_proprietary(struct wlr_backend *backend, void *data) {
return;
}
+ bool is_unsupported = false;
if (strcmp(version->name, "nvidia-drm") == 0) {
- if (allow_unsupported_gpu) {
- sway_log(SWAY_ERROR, "!!! Proprietary Nvidia drivers are in use !!!");
- } else {
- sway_log(SWAY_ERROR,
- "Proprietary Nvidia drivers are NOT supported. "
- "Use Nouveau. To launch sway anyway, launch with "
- "--unsupported-gpu and DO NOT report issues.");
- exit(EXIT_FAILURE);
+ is_unsupported = true;
+ sway_log(SWAY_ERROR, "!!! Proprietary Nvidia drivers are in use !!!");
+ if (!allow_unsupported_gpu) {
+ sway_log(SWAY_ERROR, "Use Nouveau instead");
}
}
+ if (strcmp(version->name, "evdi") == 0) {
+ is_unsupported = true;
+ sway_log(SWAY_ERROR, "!!! Proprietary DisplayLink drivers are in use !!!");
+ }
+
+ if (!allow_unsupported_gpu && is_unsupported) {
+ sway_log(SWAY_ERROR,
+ "Proprietary drivers are NOT supported. To launch sway anyway, "
+ "launch with --unsupported-gpu and DO NOT report issues.");
+ exit(EXIT_FAILURE);
+ }
+
drmFreeVersion(version);
}