{ pkgs, ... }: let tasksFilePath = if pkgs.stdenv.hostPlatform.isDarwin then "Library/Application Support/Code/User/tasks.json" else ".config/Code/User/tasks.json"; tasks = { version = "2.0.0"; tasks = [{ type = "shell"; label = "Hello task"; command = "hello"; }]; }; expectedTasks = pkgs.writeText "tasks-expected.json" '' { "tasks": [ { "command": "hello", "label": "Hello task", "type": "shell" } ], "version": "2.0.0" } ''; in { programs.vscode = { enable = true; package = pkgs.writeScriptBin "vscode" "" // { pname = "vscode"; }; userTasks = tasks; }; nmt.script = '' assertFileExists "home-files/${tasksFilePath}" assertFileContent "home-files/${tasksFilePath}" "${expectedTasks}" ''; }