首页 > 解决方案 > 组合多个 `python.withPackages` 定义

问题描述

我有多个python.withPackages表达式,我希望能够自动合并为一个python表达式。

也就是说,给定以下两个定义:

py1 = python37.withPackages selectPkgs1
py2 = python37.withPackages selectPkgs2

我想提供一些组合器,merge这样

p3 = merge [py1, py2]

是相同的推导

p3 = python37.withPackages (pkgs: (selectPkgs1 pkgs) ++ (selectPkgs2 pkgs))

我也对可以在另一个之上构建一个输出的解决方案感兴趣。也就是说,执行给定的合并py1selectPkgs2。试

py3 = py1.withPackages selectPkgs2

似乎有道理,但这与py2--选择的包selectPkgs1丢失相同。

许多nix语言环境似乎都有这种withPackages结构,所以我很高兴听到其他语言的答案。谢谢。

标签: nix

解决方案


推荐阅读