ネットの知人がやっていたので自分も現状どうなっているかを紹介したいと思う。
OS
Linux、FreeBSDが中心になっている。macOSはプライベートでは全く利用していない。Windowsはもっぱらゲーミング用途だが、最近はLinuxでもまともにSteamのゲームが動くようになっているらしい。しかしアンチチートを搭載しているようなAPEXなどのゲームはうまく動かないようだ。
LinuxではopenSUSE Tumbleweedを使っている。SUSEは自分が中学生のときに一番最初に利用したLinuxで、それ以来謎の愛着があってずっと使っている。パッケージマネージャはzypperというのが載っていて、これはRPMベース。もともとSUSEはSlackware系譜だったのだが、今はRPMを利用するようになっている。いっときUbuntuやFedoraのあたりを使ったこともあるが、SUSEにはYast2というグラフィカルな設定ツールが標準で付属しており、これがなかなか便利なのでずっと使っている。
FreeBSDの話もしよう。FreeBSDは主にサーバ用途で利用しているが、軽量なOSとしてノートブックに入れたりもする。シンプルでメモリ消費も小さく安定していて、Linuxと違ってカーネルと周辺ツールが単一のパーティによって開発されているため、ドキュメンテーションが包括的に行なわれているのが特徴だ。例えば、FreeBSDのマニュアルにはXのインストール方法やKerberos認証、カーネルパラメータ、NFSなどが全て収まっており、これがLLMと相性が良いのだ。もちろんGnomeも動作するしPOSIX-compliantだから、一見普通のLinuxと変わらない。Linux互換レイヤーも公式に用意されているから、ちゃっかりLinux向けのバイナリが動いたりする。
FreeBSDにはDockerがないという大きなconsがあり、こればっかりはBhyve(LinuxでいうところのKVMやXen)といった仮想化機能を利用して、Docker専用のマシンを立てることになる。最近はrunjというOCI Compatibleなコンテナランタイムが作られているので、今後に期待。
FreeBSDではおなじみのJailももちろん利用できる。最近はBastilleという管理ツールがよく使われており、UXはDockerとだいたい同じだ。
最近はFreeBSDなんて使っている人間はあまりいないように思うが、良いOSなので試してみてほしい。
エディタ
大学生のときからずっとEmacsを愛用してきたが、拡張機能の管理の煩雑さ(言い換えるとこれは自由の代償でもあるのだが)や動作速度への不満から、ちょっとしたファイル編集ではNeovimを利用することが多い。また、勃興するAI Coding Agent時代にEmacsはあまり着いていけておらず、各AI Coding AgentプロバイダのEmacs対応は皆無だといってよい。最近はtmuxのペインをEmacsと同期させて、EmacsからCodexなどを動作させられる仕組みが作られたりしている。
仕事ではVSCodeを利用することもある。
コーディングエージェント
VSCodeと組み合わせるときはRoo Codeをずっと利用している。これは特にこだわりがあってそうしているというわけではなく、親鴨の背中を追い掛けているようなもので、最初にそれを使ったからそうしているというだけのこと。
どちらかといえば、CodexのようなCLIで使えるエージェントのほうが自分のサガに合っているようで、こっちを使うことが多い。
ターミナルエミュレータ
WezTermが話題になった時からずっとこれを利用している。普通に動いて、普通の仕事をしてくれる。Linuxでも、FreeBSDでも、Windowsでもこれを使っている。実はFreeBSDで動くのだ。
ターミナルマルチプレクサ
tmuxをずっと使っている。大昔はscreenを使っていたような気がするし、いっときbyobuに浮気してみたこともあるのだが、別にこれでいいよな、という感じでtmuxに戻ってきてしまう。たまにボーッとしていて、tmuxを開いている端末ごと閉じてしまうことがあるので、困っている。
シェル
zshをずっと使っている。右も左も分からない時期はbashを使っていた。FreeBSDでsuしたときなどは強制的にcshを使わされたりしているが、基本的にzshだ。fish最高〜みたいな人もいるが、あまりピンときていない。
zshといってもヘヴィーにカスタマイズしているわけではなく、zplugで多少プラグインを入れて、あとはhistory expansionのショートカットが脳内にハードコードされているというだけだ。rm !:$とか、cp foo !#:$とかをソラで書ける。
なんか細かいところに気が利いているのがzshで、一度慣れるとこれでいいじゃんとなってしまう。
ランチャー
実はランチャーを使っていない。おすすめがあったら使ってみたいが、自分はずっとアプリケーションを閉じずに開きっぱなしにするので、そもそも何か起動するということがない。
WM
デスクトップ環境としては、普通にGNOMEを利用している。スペックがへぼいマシンに載せるときはMATEを使うこともあるが、基本的に最近のマシンはGNOMEでよい。
自分のこだわりショートカットとして、Super+1,2,3,4でワークスペース切り替え、Super+左右矢印でワークスペースを左右に切り替え、を愛用している。これは大昔awesomeを使っていた名残だ。
フォント
Berkeley Monoという最高のフォントを購入して利用している。ダウンロード時に細やかなカスタマイズができるのが特徴で、0の中黒を入れるかとか、バーの真ん中を切断するかとか、7に線を入れるかとかがカスタムできる。
視認性は最高で、買ってから一度も他のフォントに浮気していない。おすすめする。
ブラウザ
ここ数年はずっとVivaldiを利用している。トラッカー拒否、広告ブロックなどのプライバシーにフォーカスした機能が搭載されており、なおかつカスタマイズの柔軟性があるところを気に入っている。非力なマシンでは厳しいこともあるので、そういうときはFireFoxを利用している。WaterFoxというのも若干気になっている。
開発環境のセットアップ
miseを利用して処理系をインストールしている。またdotfilesはGitHubにホストしており、gitでcloneしてrcmでプロビジョニングしている。
ノートテイキング
Scrapbox(今はCosense)とStandard Notesを愛用している。
Scrapboxは最高のコラボレーションツールで、本当にあらゆる目的で利用している。仕事でも使ってるし、プライベートのメモ帳としても使っているし、パートナーとのコラボレーションにも使っている。
ではStandard Notesは何に使っているかというと、よりプライバシーが要請されるような、例えば銀行口座の情報などをまとめたり、他には原稿を書くためのメモ帳としても使っている。Standard Notesはエンドツーエンド暗号化を採用したメモアプリで、徹底したプライバシー意識と、徹底したシンプルさでユーザを集めている。ご長寿ソフトウェアというのはふつうどんどん機能を肥大化させて身動きが取れなくなっていくものだが、Standard Notesはずっとシンプルさを保ち続けている。
キーリマッパー
xremapを愛用している。昔はxmodmapを利用していたが、xremapの使い勝手の良さに完全に惚れた格好だ。
xremapはFreeBSDに対応していない(inotifyが不足していたためな)のだが、つい最近FreeBSDはLinuxのinotify互換のAPIがカーネルに生えたので、ポートできる可能性が見えてきた。コントリビュートチャンスだ!
SKK
Linuxではibus-skkにAZIKを利用している。WindowsではSKKFEPを利用している。とにかくAZIKとSandSとの組み合わせが秀逸で、自分の猛烈なアウトプット速度はこれに支えられているところが大きい。
言語
相変わらずScalaが好きで、サッと何か作るときはもっぱらScala 3で書いている。ネイティブコンパイルが実用的になってきたので、CLIツールでもあまり困らなくなってきた。
クラウドストレージなど
なるだけGoogleを避けている。
個人的にはアメリカのビッグテックに警戒感があって、ユーザのデータを濫用する傾向にどんどん拍車がかかっているように思っている。 AI活用といえば聞こえはいいのだが、見方を変えればユーザのデータから生まれる果実をAIプロバイダが収奪しているにすぎない。ほんらい果実はデータの本来の持ち主であるユーザが享受すべきである。にもかかわらず、ビッグテックはユーザのAI利用に料金を課し、企業を信頼してデータを預けた本来のデータの持ち主から搾取している。
また、政体としてのアメリカにも警戒している。当面トランプ翁の治世が続くであろうことを鑑みると、われわれがビッグテックに預けたデータを人質にアメリカがぶっ壊れる可能性が現実の問題としてあって、しかも、外国情報監視法(FISA)第702条などの法律により、米国政府は同意や令状なしに、米国在住かどうかにかかわらず、個人データへのアクセスを要求できるという現状がある。
また、アメリカの1企業の独善的な基準で個人のデータを検閲する可能性は既に現実のものとなっている。医療目的で子供の写真を撮影したユーザが、予告無しで永久にアカウントをBANされるという事件がいくつも起こっている。
このため、なるだけプライバシーを大事に(願わくば原理的にこれを保証)するパーソナルクラウドプロバイダを利用したいという気持ちがとても強くあり、Protonを利用している。Protonはスイスの企業で、Driveに格納するデータはE2EEで保存されるため、そもそも無断学習とは無縁であるし、プライベートなデータを保存しても一向に構わない。いくら企業がプライバシーポリシーで綺麗事を謳うよりも、原理的に安心なのだ。
Protonには他にもProton Mail、Proton Pass(パスワードマネージャ)、Proton Docsなどの、プライバシーを重視しているユーザにとって魅力的なツールを提供している。これらは全てE2EEで保存される。
まとめ
こうして書いてみると、自分の軸はプライバシーと自由ソフトウェアみたいなところがあるなと思った。プライバシーが確保されていれば、ビッグテックの横暴から身を守ることができるし、自由ソフトウェアであれば、ベンダーの都合で振り回されることはないし、激動の時代でも安心していられる。