@@ -45,6 +45,22 @@ impl<'a> WemodInstaller<'a> { |
| 45 | env.insert("PROTON_NO_ESYNC".to_string(), "1".to_string()); | 45 | env.insert("PROTON_NO_ESYNC".to_string(), "1".to_string()); |
| 46 | env.insert("PROTON_NO_FSYNC".to_string(), "1".to_string()); | 46 | env.insert("PROTON_NO_FSYNC".to_string(), "1".to_string()); |
| 47 | | 47 | |
| | 48 | + // Pass display variables for GUI (required for WeMod installer) |
| | 49 | + if let Ok(disp) = std::env::var("DISPLAY") { |
| | 50 | + info!("Captured DISPLAY={}", disp); |
| | 51 | + env.insert("DISPLAY".to_string(), disp); |
| | 52 | + } else { |
| | 53 | + warn!("DISPLAY not set in environment!"); |
| | 54 | + } |
| | 55 | + if let Ok(wayland_disp) = std::env::var("WAYLAND_DISPLAY") { |
| | 56 | + info!("Captured WAYLAND_DISPLAY={}", wayland_disp); |
| | 57 | + env.insert("WAYLAND_DISPLAY".to_string(), wayland_disp); |
| | 58 | + } |
| | 59 | + if let Ok(xdg_dir) = std::env::var("XDG_RUNTIME_DIR") { |
| | 60 | + info!("Captured XDG_RUNTIME_DIR={}", xdg_dir); |
| | 61 | + env.insert("XDG_RUNTIME_DIR".to_string(), xdg_dir); |
| | 62 | + } |
| | 63 | + |
| 48 | // Set Proton lib paths for finding dependencies | 64 | // Set Proton lib paths for finding dependencies |
| 49 | let proton_lib64 = self.proton.path.join("files/lib64"); | 65 | let proton_lib64 = self.proton.path.join("files/lib64"); |
| 50 | let proton_lib = self.proton.path.join("files/lib"); | 66 | let proton_lib = self.proton.path.join("files/lib"); |