>>702
今までのパッケージマネージャーは
依存関係にあるパッケージのバージョンを固定出来ないのが問題
nixは全て固定できる
nixはビルド自動化ツールに分散キャッシュ機能を付けて
パッケージマネージャーのように使えるようにしたツールとも言える
ソースコードのtarアーカイブのハッシュや依存パッケージ、configureスクリプトに渡す引数なんかをハッシュ化して
そのハッシュで既にビルドした物がキャッシュに無いか検索
ローカルに有ればそのまま使うし、公式リポジトリのキャッシュにあればダウンロードする
キャッシュされてないパッケージだけをビルドする
ビルド時は上記の入力にない物がビルドに使われないように
サンドボックス内でビルドして
環境依存のビルド不具合を防いでいる
だから「git cloneで取ってきたnixがビルド出来ない!!なんで!?」みたいな問題が起きない
実行時も入力に書かれているパッケージしか基本的に使わないので、
実行時のライブラリバージョンの違いによるエラーも回避できる
公式リポジトリにあるパッケージは既に同じ設定でビルドしてキャッシュしたのがあるので、
大半はビルドせずダウンロードするだけで済む
マシン固有の設定も「キャッシュされてないパッケージ」として扱ってビルドする
オススメLinuxディストリビューションは? Part88
■ このスレッドは過去ログ倉庫に格納されています
708login:Penguin
2023/05/06(土) 17:03:41.37ID:Uv3PV5mt■ このスレッドは過去ログ倉庫に格納されています
