From 1718a607d67512293a7bf78c6388b0b7738ec1eb Mon Sep 17 00:00:00 2001 From: Brendan Allan Date: Wed, 11 Feb 2026 13:51:34 +0800 Subject: [PATCH 1/4] fix(desktop): read wayland preference from store --- packages/desktop/src-tauri/src/linux_display.rs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/packages/desktop/src-tauri/src/linux_display.rs b/packages/desktop/src-tauri/src/linux_display.rs index 9e1cf90918a..10545206d8e 100644 --- a/packages/desktop/src-tauri/src/linux_display.rs +++ b/packages/desktop/src-tauri/src/linux_display.rs @@ -22,10 +22,13 @@ fn path() -> Option { } pub fn read_wayland() -> Option { - let path = path()?; - let raw = std::fs::read_to_string(path).ok()?; - let config = serde_json::from_str::(&raw).ok()?; - config.wayland + let raw = std::fs::read_to_string(path()?).ok()?; + let root = serde_json::from_str::(&raw) + .ok()? + .get(LINUX_DISPLAY_CONFIG_KEY); + serde_json::from_value::(root.clone()) + .ok()? + .wayland } pub fn write_wayland(app: &AppHandle, value: bool) -> Result<(), String> { From d20975c15bc61b63bc682272d7a83ff8ab91bd73 Mon Sep 17 00:00:00 2001 From: Brendan Allan Date: Wed, 11 Feb 2026 14:05:47 +0800 Subject: [PATCH 2/4] fix build --- packages/desktop/src-tauri/src/linux_display.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/desktop/src-tauri/src/linux_display.rs b/packages/desktop/src-tauri/src/linux_display.rs index 10545206d8e..c5188124731 100644 --- a/packages/desktop/src-tauri/src/linux_display.rs +++ b/packages/desktop/src-tauri/src/linux_display.rs @@ -25,8 +25,8 @@ pub fn read_wayland() -> Option { let raw = std::fs::read_to_string(path()?).ok()?; let root = serde_json::from_str::(&raw) .ok()? - .get(LINUX_DISPLAY_CONFIG_KEY); - serde_json::from_value::(root.clone()) + .get(LINUX_DISPLAY_CONFIG_KEY).cloned()?; + serde_json::from_value::(root) .ok()? .wayland } From 43ece887cb93df44adb07663c987858695c6dcf3 Mon Sep 17 00:00:00 2001 From: Brendan Allan Date: Wed, 11 Feb 2026 16:04:11 +0800 Subject: [PATCH 3/4] fix --- packages/desktop/src-tauri/src/linux_display.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/desktop/src-tauri/src/linux_display.rs b/packages/desktop/src-tauri/src/linux_display.rs index c5188124731..24fb27a4bfb 100644 --- a/packages/desktop/src-tauri/src/linux_display.rs +++ b/packages/desktop/src-tauri/src/linux_display.rs @@ -14,7 +14,7 @@ struct DisplayConfig { } fn dir() -> Option { - Some(dirs::data_dir()?.join("ai.opencode.desktop")) + Some(dirs::data_dir()?.join(if cfg!(debug_assertions) { "ai.opencode.desktop.dev" } else { "ai.opencode.desktop" })) } fn path() -> Option { @@ -22,7 +22,7 @@ fn path() -> Option { } pub fn read_wayland() -> Option { - let raw = std::fs::read_to_string(path()?).ok()?; + let raw = std::fs::read_to_string(dbg!(path()?)).ok()?; let root = serde_json::from_str::(&raw) .ok()? .get(LINUX_DISPLAY_CONFIG_KEY).cloned()?; From c2a702fa52727e691fdc65db21eb735c2b26d77f Mon Sep 17 00:00:00 2001 From: Brendan Allan Date: Wed, 11 Feb 2026 16:05:30 +0800 Subject: [PATCH 4/4] fix --- packages/desktop/src-tauri/src/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/desktop/src-tauri/src/lib.rs b/packages/desktop/src-tauri/src/lib.rs index 5c3915e81a8..f50464a7baf 100644 --- a/packages/desktop/src-tauri/src/lib.rs +++ b/packages/desktop/src-tauri/src/lib.rs @@ -402,7 +402,7 @@ fn check_linux_app(app_name: &str) -> bool { #[tauri::command] #[specta::specta] fn wsl_path(path: String, mode: Option) -> Result { - if !cfg(windows) { + if !cfg!(windows) { return Ok(path); }