{ config, lib, pkgs, ... }: with lib; let dependencyGraph = { org = "net.virtual-void"; artifact = "sbt-dependency-graph"; version = "0.10.0-RC1"; }; projectGraph = { org = "com.dwijnand"; artifact = "sbt-project-graph"; version = "0.4.0"; }; plugins = [ dependencyGraph projectGraph ]; pluginsSbtPath = ".sbt/1.0/plugins/plugins.sbt"; expectedPluginsSbt = pkgs.writeText "plugins.sbt" '' addSbtPlugin("net.virtual-void" % "sbt-dependency-graph" % "0.10.0-RC1") addSbtPlugin("com.dwijnand" % "sbt-project-graph" % "0.4.0") ''; in { config = { programs.sbt = { enable = true; plugins = plugins; package = pkgs.writeScriptBin "sbt" ""; }; nmt.script = '' assertFileExists "home-files/${pluginsSbtPath}" assertFileContent "home-files/${pluginsSbtPath}" "${expectedPluginsSbt}" ''; }; }