“KiCad 開發團隊經常收到關于我們對 Wayland 支持情況的詢問。鑒于Fedora和Ubuntu都計劃在不久的將來從其主要桌面環境中放棄對 X11 的支持,我們希望就 KiCad 對 Wayland 的支持現狀,為用戶提供清晰、透明的指引。”

當前狀態:功能可用,但體驗降級
KiCad 可以在 Wayland 系統上運行,但存在嚴重的限制和已知問題,這些問題會極大地降低用戶體驗。雖然您可以在 Wayland 上使用 KiCad 設計 PCB,但會遇到許多我們無法在應用程序層面修復的問題。
以下問題是 Wayland 協議本身、或其在桌面合成器 (compositor)、窗口管理器或其他顯示堆棧層中的實現所存在的已知問題,這些問題超出了我們團隊的解決能力范圍:
窗口管理問題
-
窗口位置與恢復:Wayland 目前不允許應用程序控制窗口位置。這意味著當您打開 KiCad 時,它無法記住您上次放置窗口的地方。
-
停靠面板定位:停靠的面板和工具欄無法被妥善管理或恢復其位置。
-
多窗口協調:同時管理多個 KiCad 窗口時存在問題。
-
窗口拖動限制:在不同區域之間拖動標簽頁和面板的功能已損壞或不可靠。
輸入與交互問題
-
光標/指針瞬移 (Warping):這項對許多 CAD 操作至關重要的功能,在某些 Wayland 實現中僅為“有條件可用”,具體取決于其是否支持可選的協議擴展。
-
焦點管理:不可預測的窗口焦點行為,可能會打斷工作流程。
-
輸入設備處理:使用特殊輸入設備和快捷鍵時會遇到各種問題。
性能與穩定性問題
-
OpenGL 調用節流:當窗口被遮擋時,某些合成器會限制 (throttle) OpenGL 調用,導致程序凍結,而不是僅僅通知客戶端窗口狀態已改變。
-
CPU/GPU 占用率高:出現資源消耗飆升的情況,這在 X11 下不會發生,通常是為解決上述 OpenGL 調用節流問題而采取的一種“繞路”方法。
-
圖形渲染異常:出現渲染瑕疵和顯示錯亂。
-
應用程序凍結與崩潰:存在 Wayland 環境特有的不穩定性問題。
-
剪貼板功能:應用程序之間的復制/粘貼操作不可靠。
對話框與 UI 限制
-
模態對話框行為:對話框的定位、焦點和交互存在問題。
-
外部工具集成:啟動和管理外部應用程序時存在問題。
為什么這些問題遲遲無法解決?
這些問題的存在,是因為 Wayland 的設計理念本身就有意地省略了一些桌面應用程序(包括 X11、Windows 和 macOS 平臺)依賴了幾十年的基礎功能,例如定位窗口或瞬移鼠標光標的能力。這不是疏忽,而是其設計哲學的一部分。
生態碎片化也讓情況雪上加霜。GNOME 對協議的解釋是一種方式,KDE 是另一種,而其他小眾的合成器又有自己的方式。作為應用開發者,我們無法依賴一個統一、一致的 Wayland 協議及其實驗性擴展的實現。Linux 本身就只占 KiCad 用戶群的一小部分,如果再因窗口管理器而進一步碎片化,將會帶來難以承受的維護負擔。
最令人沮喪的是,這些問題我們自己無法修復。問題的根源在于 Wayland 協議、窗口管理器和合成器。這些都不是我們作為應用程序開發者能夠通過編寫代碼或打補丁來規避的。
我們不是唯一面臨這些挑戰的應用程序。我們希望 Wayland 生態系統能夠逐漸成熟,并發展出一種更平衡、更一致的方法,讓應用程序能夠高效地運行。但目前,我們還沒到那一步。
我們的方針與策略
KiCad 團隊已經做出了戰略性決定:
-
避免針對特定窗口管理器的“繞路”方案,因為這需要為不同的桌面環境維護獨立的代碼路徑。
-
在可能的情況下,繼續構建和測試與 Wayland 的兼容性,但不會為此投入核心開發資源。
-
將我們有限的開發時間,集中在能讓所有用戶受益的功能和改進上。
-
維護關于 Wayland 限制的清晰文檔,以便用戶建立合理的預期。
針對 Wayland 用戶的錯誤報告政策
我們不會調查或支持與 Wayland 特定問題相關的錯誤報告。這包括以下問題:
-
窗口的定位、大小調整或焦點問題。
-
在 X11 上不會發生,僅在 Wayland 上出現的應用程序凍結或崩潰。
-
Wayland 環境下特有的高 CPU/GPU 占用率。
-
Wayland 環境下特有的輸入設備問題。
-
圖形渲染異常或顯示問題。
-
剪貼板功能問題。
-
任何其他無法在 X11 系統上復現的問題。
關于 KiCad 內部功能(不涉及窗口管理)的錯誤報告,我們依然歡迎并會正常調查。
給用戶的建議
專業用途
如果您將 KiCad 用于專業工作或需要一個可靠、功能完整的體驗,我們強烈建議您:
-
使用基于 X11 的桌面環境,例如:
-
XFCE (使用 X11 模式)
-
KDE Plasma (使用 X11 模式)
-
MATE
-
-
選擇其他仍維護 X11 支持的傳統桌面環境。
-
如果您的發行版默認僅提供 Wayland,請安裝兼容 X11 的顯示管理器(如 LightDM 或 KDM),而不是 GDM。
-
選擇仍然維護 X11 支持的 Linux 發行版,一些發行版正在轉向“僅 Wayland”的配置,可能無法滿足您的需求。
日常/非專業用途
如果您愿意接受這些限制和偶爾的挫敗感,KiCad 可以在 Wayland 上運行。但是,請做好以下心理準備:
-
無法恢復您偏好的窗口布局。
-
偶爾會崩潰或凍結。
-
因界面限制導致生產力下降。
-
需要想辦法繞過各種 UI 怪癖。
展望未來
我們認識到 Linux 桌面生態系統正在演進,我們無意阻止這一進程。然而,我們堅信用戶生產力第一。我們的用戶需要的是設計電路板,而不是與實驗性的桌面技術作斗爭。對于專業工作而言,穩定性和可靠性至關重要,我們有限的開發資源應該集中在核心功能上,而不是去繞過協議的限制。
我們將繼續關注 Wayland 的發展,并歡迎上游項目提供的修復。我們已在 FOSDEM 等會議上與桌面環境的開發者進行了交流,并就我們的需求提供了詳細反饋。雖然已經取得了一些進展(例如指針瞬移協議終于在開發中),但許多根本性問題仍未解決。
為解決方案做出貢獻
如果您是一名有興趣改善 KiCad 在 Wayland 上支持情況的開發者,可以通過以下幾種方式提供幫助:
-
為上游項目做貢獻:幫助修復 Wayland 協議、窗口管理器或 wxWidgets 中的問題。
-
贊助開發:同時依賴 Wayland 和 KiCad 的公司可以資助特定的功能改進。
-
測試并提供反饋:幫助我們確定哪些問題對您的工作流程最為關鍵。
我們資助了一部分 wxWidgets 的開發工作以幫助改善 Wayland 的兼容性,但許多問題需要 Wayland 生態系統中更廣泛的變革。我們鼓勵那些能夠讓所有應用程序(而不僅僅是 KiCad)受益的貢獻。
總結
我們努力保持務實。我們支持能用的技術,我們記錄下不能用的問題,然后將開發精力集中在能為用戶帶來最大利益的地方。隨著 Wayland 的改進,我們會調整我們的立場,但我們不會在 KiCad 的可靠性和功能性上妥協。
就目前而言,如果您需要在 Linux 上使用 KiCad,請使用 X11。
-
KiCAD
+關注
關注
5文章
245瀏覽量
9390
發布評論請先 登錄
您希望KiCad Copilot 幫你做什么? 華秋 KiCad 9.0.2 怎么提升設計效率呢

華秋DFM支持KiCad PCB了

KiCad 與 Altium Designer 圖紙互轉詳解

KiCad 教程:集成電路測試 LoadBoard 設計指南

在 Windows 上編譯 KiCad

KiCad直播活動(三):在 Windows上編譯KiCad 手把手教您編譯/構建 KiCad 源碼

KiCad 直播系列活動預告(一):KiCad 9 新功能揭秘

KiCad 9.0.0 正式發布

KiCad 8.0.8 正式發布
華秋電子贊助 KiCad EDA 成為白金贊助商

KiCad插件大全
KiCad EDA版本說明

KiCad發現之旅(一)原理圖編輯

評論