與時俱進

前言

已經半年沒跟新這個Blog了,主要還是工作忙,以及生活瑣事繁雜(偷懶)的關係,不過最近有些大事發生,加上忽然醒悟(小說看膩了)摸了一點這段時間更新的玩具

因為都是比較零碎的想法我就都湊在這篇裡

Red Hat停止公開Source code給下游重製使用

個人看法

作為一個商用版本(而且是賣錢的版本)用授權與不提供source code的方式來維持他的商業價值是很正常的, SUSE的商用版本(SLES)也沒有直接給人Source code讓人直接重製

而且兩個都有各自的上游open source

Red HatSUSE
Open Source 上游Fedora / CentOS streamOpenSuSE
商用版本Red Hat Enterprise LinuxSUSE Linux Enterprise

現在被幹掉的是RHEL的下游,想想也很正常,開發公司也是要賺錢的,開發人員也是要生活的,

公司起飛前承諾過的有多好現在跳票Bla bla, 只能說結婚都有人會離婚了,神明前發誓都可以裝死了….

至於現在SUSE跟Oracle這些跑出來蹭熱度的,我覺得主要還是想趁這個機會踩一下Red Hat, 看看與論的風向是不是可以讓一些本來支持Red Hat的潛在用戶後面反水跳去自己的收費Distro,後面就讓我們繼續看下去

NixOS

最近不知道為什麼NixOS忽然在Linux的Youtuber間忽然熱門起來, 所以我也跟風的試了一下

試用心得

老實說,接觸的瞬間我的衝擊跟當年第一次裝Gentoo差不多, 感想也蠻類似的,基本上就是

哇~這玩意的特殊功能好酷炫唷~我可以這樣,也可以那樣唷~~

然後冷靜下來後想一想,這玩意要用也可以,不過挺麻煩的,不用好像也可以.

沒有什麼非用不可的理由…

特點

NixOS基本上就是一個Package manager擁有的專用系統..(很像某時期的普魯士對吧….別人家是國家有個軍隊,普魯士是軍隊有個國家)

NixOS的本體就是Nix這個Package manager,所以他可以用一個(或複數個可以被import)的.nix設定檔來進行全系統的設定(講是這樣講啦,他還是有~/.config內的設定的特性)並且每次更新/增加/減少 package都會重新建立系統連結,使每個版本都是獨立的,並且進一步的可以建立不同的profile開發環境而不影響整個系統本身

聽起來很酷炫也很棒對吧

缺點

講的這麼酷炫就一定會有相對應的缺陷沒有被克服(等價交換嘛),小弟粗淺的試玩後就發現了

  • 要永久性的變更系統設定一定要去改/etc/nixos/configure.nix的設定,並跑nixos-rebuild switch做整個系統的版本更新

  • 系統本身有大的版號,並且會有所謂的channel為了徹底解決一個configure file rule them all的要求,他又導入一個叫做flake的東西..於是越搞越複雜..還不如一開始就採取滾動式的方式進行….

  • 空間需求很大,雖可以用nix-garbage-collection的function來刪除指定範圍外的版本紀錄,不過這樣某程度上也失去了擁護者們引以為傲的各種版本回朔機能,畢竟你把snapshot都幹掉了你要拿什麼回朔??

小結論

拿來玩或是有一大堆同質性很高的機器要裝跟管理的人是蠻適合的,前提是你不會一直改系統或是有一台專門拿來調整設定的實驗機弄好再apply all,

要拿來當一般desktop 做daily drive應該是不太適合….

除非你很需要多個開發環境整合在一個系統上互不干擾並且又極端討厭docker類的container技術….

ArchInstall

之前我看一些Youtuber在介紹Archlinux有新工具對新人安裝比較友善

但是我一直沒管他直到最近我自己測試了一下果然驚為天人

我之前自己寫過安裝script, 而且我相信很多用Arch的人都有自己寫過安裝script,

這玩意就像是這種東西只不過功能更完整.

目前看起來可以簡單的選一選就可以裝出一個完整可動的desktop

可惜的是沒找到怎麼去customize他的預設profile….

看起來是有可以離開Manjaro的本錢了…..(不過Manjaro還是有一些好用小工具Arch不採用…)

NeoVim+Nvchad

這個其實是我手賤在測試NixOS的時候又弄了一下(不然我很久沒去碰這個)

只有幾個重點

  • 在Arch base linux上請不要用AUR安裝NvChad會有error, 請乖乖的git clone

  • 更新版後預設的key bind就蠻好用的,不太需要手工改key mapping, 而且<leader>+ch還可以看hot key的cheat sheet

  • LSP的部份跟Format我還是沒搞定,再找時間研究一下…