X11
如何在沒有新 TTY 的情況下為每個程序創建單獨的 XWayland 伺服器?
Wayland 是流行的 X 顯示協議的更簡單、現代、更安全的替代方案;但是,有些程序在 Wayland 下會中斷,因為它們是為 X 設計的。XWayland 存在將 X 伺服器作為 Wayland 客戶端執行,而任何需要 X 的程序都只是在 XWayland 下執行。XWayland 與其他 Wayland 客戶端一樣是孤立的。
然而,在 XWayland 中,X 客戶端並不是相互隔離的。這顯然是個問題。例如,Chrome 和 Tor 瀏覽器都不支持 Wayland,這意味著它們在 XWayland 下執行;Tor 瀏覽器中的漏洞可以繞過 Chrome 的安全功能並記錄瀏覽器內容,從而使大部分安全性變得毫無意義。
有沒有辦法為每個程序執行單獨的 XWayland 伺服器?這樣一來,他們都將被隔離為 Wayland 客戶。我不想使用新的 TTY,因為這會帶來不便並改變工作流程。
我想出了怎麼做。
在您的合成器中,打開合成器的一個新實例(例如,Weston 中的 Weston)並在單獨的實例中打開每個 XWayland 所需的程序。它們每個都將被隔離並具有單獨的 XWayland 伺服器。
這是一個黑客,浪費螢幕空間,所以如果其他人有更清潔的解決方案,請回答。