今天的主題是用Rust寫Linux kernel的核心模組,對未來將要進入核心的語言來說,早點了解這個語言有其必要。
錄影:KaLUG meetup 2509 - Rust 的奇妙冒險:Hello Heaven (Rust for Linux)
這次參加KaLUG的活動的時候,我還是第一次在現實中看到真的有NixOS的用戶…一直很想嘗試這個系統,不過很擔心會不會落入一種不可自拔的邪教。
畢竟declarative式reproducible的系統並非主流,你是不是看Ansible沒有?論跨發行版的套件安裝解決方案,目前有Flatapk、AppImage、Snap、Nix、Guix等等,甚至有用Podman + Distrobox這種比較奇怪的方案,pip和npm不包含在內,因為它們不是專為打包Linux軟體而設計的。雖然各自的實現不一樣,但它們都是能夠達成跨發行版使用軟體。使用跨發行版的套件安裝方案的場合,其中一種就是:希望在穩定的系統安裝不穩定的套件,例如擁有Debian Stable的穩定系統,以及Arch Linux的最新套件。要選擇哪一種方案,就看使用者比較側重哪一方面的功能吧。如果不甩容器化,想要無套接觸,就用AppImage或Nix,Nix又更適合開發者使用,用起來很像Homebrew在macOS上的體驗,而且它的套件管理機制保證了軟體絕對不會毀損依賴,彷彿靜態連結一般,也能100%回滾。若是能接受一點容器權限限制,選擇就很多了。不必急於決定哪個比較好,到頭來還是看開發者中意哪一種格式,開發者比較願意打包,並且使用者是否能輕易取得這些軟體,在我看來,Flatpak和Snap對使用者比較友好,而Distrobox就是純開發者用的工具,跟Nix一樣使用需要高超的技巧。
哈哇哇,OCF開放文化基金會作為贊助商帶來的筆電,終於摸到真正的Framework筆電了,由QA帶來的Framework 12原廠貨,是ThinkPad以外對Linux相容性最好的筆電品牌之一,幾乎不用額外裝驅動。只要一根螺絲起子就能從正面拆掉鍵盤,露出所有內構(雖然有點FNAF獵奇感)。零件都模組化設計,自由更換。

這台雖然有點厚度,不過考慮到它能夠360度翻轉又有觸控螢幕,其實不算重。以後有錢一定要買一台,是的,如果真的有錢的話啦。順帶一提,最近聽完Rust for Linux kernel的演講(X)傳教大會(O)得知,Rust進入Linux核心的趨勢已經是勢在必行了,從原本只是寫kernel module driver的語言,到穿透Rust對C的界面層,反攻到核心內部!!!雖然還有很多阻力。
今天我是第一次參加這個活動,在Facebook社團看到就壯膽子試試看來參加了。主持人,大家稱呼他Shawn吧,很快就注意到了穿的FreeBSD官方T恤,熱情的給我打了招呼。比想像中的有趣,真的是一個很切合我口味的聚會呀!