说我有services.foo.enable = true;
和 environment.systemPackages
包含“foo”。后者通常是多余的,因为 foo 服务需要“foo”包。在启用程序或服务而无需包条目的情况下,如何检测此类重复项?
在微不足道的情况下,文本匹配可以很好地指示重复项,但是启用例如service.xserver.desktopManager.xfce
会安装一堆软件包,其中任何一个我可能已在environment.systemPackages
.是否也可以检测到此类重复项?
主要目标是简化配置。极端的情况是,我在启用它们之前将所需的每个包添加到包列表中,从而导致配置比所需的大得多。
第二个目标是简化调试。我启用了某个程序或服务,但系统没有按照我的预期执行操作(例如,与该程序或服务相关的工具在 上不可用$PATH
)。现在,如果我有某种方式告诉我启用 X 会导致安装包 Y,那么这是我可以立即排除的一种调试途径。