Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 lib, 3 fetchFromGitHub, 4 buildDartApplication, 5 kdePackages, 6}: 7 8let 9 version = "1.8.1"; 10 11 src = fetchFromGitHub { 12 owner = "Merrit"; 13 repo = "vscode-runner"; 14 rev = "v${version}"; 15 hash = "sha256-ZzAQeSUFbHp2Bwiwsq8kgQqqNlr6hfXuz7PNAOSiBhU="; 16 }; 17in 18buildDartApplication { 19 pname = "vscode-runner"; 20 inherit version src; 21 22 vendorHash = "sha256-jS4jH00uxZIX81sZQIi+s42ofmXpD4/tPMRV2heaM2U="; 23 24 pubspecLock = lib.importJSON ./pubspec.lock.json; 25 26 dartEntryPoints = { 27 "bin/vscode_runner" = "bin/vscode_runner.dart"; 28 }; 29 30 postInstall = '' 31 substituteInPlace ./package/codes.merritt.vscode_runner.service \ 32 --replace-fail "Exec=" "Exec=$out/bin/vscode_runner" 33 install -D \ 34 ./package/codes.merritt.vscode_runner.service \ 35 $out/share/dbus-1/services/codes.merritt.vscode_runner.service 36 37 install -D \ 38 ./package/plasma-runner-vscode_runner.desktop \ 39 $out/share/krunner/dbusplugins/plasma-runner-vscode_runner.desktop 40 ''; 41 42 passthru.updateScript = ./update.sh; 43 44 meta = { 45 description = "KRunner plugin for quickly opening recent VSCode workspaces"; 46 homepage = "https://github.com/Merrit/vscode-runner"; 47 changelog = "https://github.com/Merrit/vscode-runner/blob/${src.rev}/CHANGELOG.md"; 48 license = lib.licenses.gpl3Only; 49 sourceProvenance = [ lib.sourceTypes.fromSource ]; 50 maintainers = [ lib.maintainers.pinage404 ]; 51 mainProgram = "vscode_runner"; 52 inherit (kdePackages.krunner.meta) platforms; 53 }; 54}