固定バージョンでDockerイメージを構築するためにNixを使用しようとしています。ファイルは次のように動作します。
{ pkgs ? import <nixpkgs> { }
}:
pkgs.dockerTools.buildImage {
...
ただし、次の場合は失敗します。
{ pkgs ? (import (builtins.fetchTarball { url = "https://github.com/NixOS/nixpkgs/archive/44fc3cb097324c9f9f93313dd3f103e78d722968.tar.gz"; sha256 = "0hxzigajiqjwxbk9bcbvgxq28drq1k2hgmzihs0c441i1wsbqchb"; }) {})
}:
pkgs.dockerTools.buildImage {
...
エラーは次のとおりです。
error: 'buildImage' at /nix/store/pyq9xfm1ikhd70dfzbg6fywyqgcvly1l-source/pkgs/build-support/docker/default.nix:491:5 called with unexpected argument 'copyToRoot'
私が何を間違っているかについての提案はありますか?
答え1
したがって、copyToRoot
過去はcontents
このコミットから数ヶ月前に呼び出されました。https://github.com/NixOS/nixpkgs/commit/e007eb480c6041fd98b8f9e53bdac2ba82e4648cそして、あなたのコミットはこの以前のバージョンを指します(マスターとは異なるブランチに属しているようです)。
最近のマスターへのコミット(例:44fc3cb097324c9f9f93313dd3f103e78d72296)で確認できるため、この問題は発生しません。https://github.com/NixOS/nixpkgs/blame/44fc3cb097324c9f9f93313dd3f103e78d722968/pkgs/build-support/docker/default.nix#L503