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

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

華秋DFM支持KiCad PCB了

KiCad 與 Altium Designer 圖紙互轉詳解

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

在 Windows 上編譯 KiCad

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

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

KiCad 9.0.0 正式發(fā)布

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

KiCad系統(tǒng)配置要求

KiCad EDA版本說明

KiCad發(fā)現(xiàn)之旅(一)原理圖編輯

評論