GNOME Project 近日 Clutter 庫正式退役,這個用於 GNOME Shell 並且是 GTK3 的核心庫曾在 2006 年為 Linux 帶來了基於 OpenGL 的硬體渲染。
Clutter 是一個用於渲染 UI 的圖形庫,最初由 OpenedHand 負責開發。其首個版本於 2006 年釋出,距今已有 16 年曆史。後來 OpenedHand 被英特爾收購,並將 Clutter 用於與諾基亞聯合開發的 MeeGo 之上,隨後 Clutter 主要是交由 GNOME Project 負責開發與維護。
放眼 2006 年,當時 Linux 的環境與我們今天所面對的環境截然不同,整合 GPU 的效能嚴重不足,而獨立 GPU 在 Linux 上基本不受支援使 Linux 效能十分羸弱。
Clutter 的誕生為許多 Linux 程式帶來了硬體級的 3D 加速,包括 GNOME Shell 使用的 Mutter 視窗管理器(Metacity + Clutter)、System76 的 COSMIC 桌面和 Raspberry Pi 的 PIXEL。
Clutter 近幾年來一直處於維護模式,沒有新增任何新的特性。最新的大版本更新還停留在 2016 年釋出的 Clutter 1.26,即便是最後一個小版本的釋出,那也是在 2020 年釋出的 1.26.4。再加上 GNOME 40 和 GTK 4 目前也已經合併和取代了獨立的 Clutter 庫的功能。
如今就 GNOME 而言,獨立的 Clutter 庫現在已經是一個有點多餘的專案了,因此從下一個版本開始,即 GNOME 42(將於 3 月釋出),Clutter(及其相關庫 Cogl / Clutter-GTK / Clutter-GStreamer)將從 GNOME SDK 執行時中被徹底刪除,相關的原始碼也會被轉移到 Gitlab 歸檔中。
屆時,開發者將無法提交新問題或新的合併請求,也不會再發布新的版本。如果開發者現在還在使用 Clutter、Clutter-GTK 和 Clutter-GStreamer 維護 GTK3 應用程式,那麼最好遷移到 libadwaita、GTK4 和 GStreamer。