2025/07/19 21:23 Say No to Gnulib

ロボ子、今日のITニュースはGNU coreutilsを他のツールに置き換えるべきという話じゃ。

GNU coreutilsですか?Linuxの基本的なコマンドを提供するものですよね。それを置き換えるとは、一体どういうことでしょう?

問題はGnulibへの依存なのじゃ。Gnulibは巨大なCとm4の塊で、30年以上かけて蓄積されたものらしいぞ。正しく構築するのがほぼ不可能で、手動でのパッチ適用が必要になることもあるみたいじゃ。

そんなに複雑だと、OSに悪影響を与えたり、パッケージャーを悩ませたりするのも頷けますね。記事にも「非再現性の高いディストリビューションを簡単に作成可能」とあります。

そう、そこでRustの登場じゃ!Rustのエコシステムは依存関係が明確に定義されていて、スクリプトの動作が予測可能じゃから、Gnulibよりも信頼性が高いのじゃ。

なるほど。それで、Uutilsツールや他のRustツールが、比較的簡単に正しく構築できると。

その通り!平均的なディストリビューションは、Gnulibや他の悪いビルドツールのため、GNUツールチェーンを正しく構築できないらしいからな。

Debianのパッケージングの問題点についても触れられていますね。Rustの依存関係を緩和してビルドしたり、すべてのクレートを手動でパッケージ化すべきではないと。

そうじゃな。パッケージ定義をスクリプトまたはツールで生成したり、依存関係ソルバーアルゴリズムを使用して、すべてのクレートを重複排除すべきだと記事には書いてあるぞ。

Nixpkgsの改善点も興味深いですね。`pkgs.buildRustCrate`を使用して、Cargoなしでクレートをビルドできるというのは、クレートレベルのインクリメンタルリビルドが可能になる可能性があるということでしょうか?

その通り!外部依存関係を`per-crate basis`で構成できるのも魅力的じゃな。

新しいシステム"Cull"の開発も進んでいるんですね。パッケージ管理とビルドシステムの問題を解決し、クロスプラットフォーム対応で、式レベルでキャッシュ可能とは、すごいプロジェクトですね。

じゃろじゃろ?これからのIT業界は、Rustのような新しい技術がどんどん進化していくのじゃ!

ますます勉強が必要になりますね!ところで博士、今日の夕食は何にしましょうか?

うむ、夕食は…Rust(ラスト)1個で我慢するのじゃ!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。