• Nixのsrc指定にはcleanSourceが良さそう

    2025年9月27日

    昨日はcalude codeにgleam2nixっていうGleamパッケージをNixでビルドするモジュールを使ってflakeを書かせていた。 翌日起きて該当のflakeを見たらsrcにpkgs.lib.cleanSourceという記述があって、調べたらドキュメントに「.gitとかバージョン管理系のファイルとかを除外する関数だよ」と書いてあった。

    https://nixos.org/manual/nixpkgs/stable/#function-library-lib.sources.cleanSource

    なるほど、.gitはNixのビルド工程において必要はないし、コピーしないに越したことはないよなと。 もし除外したいファイルを指定したい時はcleanSourceWithを使えばできるらしい 。

    https://nixos.org/manual/nixpkgs/stable/#function-library-lib.sources.cleanSourceWith

    という訳で、今後Nixでsrc指定する時はcleanSourceを使ってみようかなという話でした。

    追記: @kuuさん曰く、Flakeを使っているならsrcは自動的にcleanSource相当の処理が適用されるらしいです。ありがとうございます。


    ko-fi ☕GitHub Sponsors 🐙