我正在寻找关于如何在我的情况下采取最佳方式的启示,如下所示:
我的项目中有一个nixpkgs文件夹,我从其他仓库下载。它位于我的theproject/front-plat/default.nix
,然后代码看起来像这样。
{ nixpkgsFunc ? import ./nixpkgs }: let nixpkgs = nixpkgsFunc ({ config = { ... }; lib = {...}; etc.
在我的theproject/release.nix
中,我想添加一个新的包,这些包将用于我使用nixpkgs'前高原。所以代码看起来像这样。
{ front-plat ? import ./deps/front-plat {}}:
let
nixpkgs = front-platform.nixpkgs;
packageCompiler = front-plat.compiler;
config = rec { ...
packageOverrides = pkgs: rec {
packageCompiler = pkgs.packageCompiler.override {
overrides = self: super: rec {
fronFrint = self.callPackage (import ./frontFrint { inherit front-plat; });
};
};
};
3我认为,现在我正在使用前置平台上的nixpkgs,但我仍然不确定我的nixpkgs' packageCompiler是否已包含fronFrint包。
问题是,如何添加名为" frontFrint"到nixpkgs的packageCompiler。这样packageCompiler就可以构建fronFrint。例如最后,代码将是
in { front = pkgs.packageCompiler.frontFrint; }