Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 64 lines 1.5 kB view raw
1{ 2 lib, 3 stdenv, 4 buildDotnetModule, 5 fetchFromGitHub, 6 nodejs, 7 npmHooks, 8 fetchNpmDeps, 9 dotnetCorePackages, 10}: 11 12buildDotnetModule (finalAttrs: { 13 pname = "smtp4dev"; 14 version = "3.8.6"; 15 16 src = fetchFromGitHub { 17 owner = "rnwood"; 18 repo = "smtp4dev"; 19 tag = finalAttrs.version; 20 hash = "sha256-k4nerh4cVVcFQF7a4Wvcfhefa3SstEOASk+0soN0n9k="; 21 }; 22 23 patches = [ ./smtp4dev-npm-packages.patch ]; 24 25 nativeBuildInputs = [ 26 nodejs 27 nodejs.python 28 npmHooks.npmConfigHook 29 stdenv.cc # c compiler is needed for compiling npm-deps 30 ]; 31 32 npmRoot = "Rnwood.Smtp4dev/ClientApp"; 33 34 npmDeps = fetchNpmDeps { 35 inherit (finalAttrs) src patches; 36 hash = "sha256-Uj0EnnsA+QHq5KHF2B93OG8rwxYrV6sEgMTbd43ttCA="; 37 postPatch = "cd ${finalAttrs.npmRoot}"; 38 }; 39 40 dotnet-sdk = dotnetCorePackages.sdk_8_0; 41 dotnet-runtime = dotnetCorePackages.aspnetcore_8_0; 42 projectFile = "Rnwood.Smtp4dev/Rnwood.Smtp4dev.csproj"; 43 nugetDeps = ./deps.json; 44 executables = [ "Rnwood.Smtp4dev" ]; 45 46 postFixup = '' 47 mv $out/bin/Rnwood.Smtp4dev $out/bin/smtp4dev 48 ''; 49 50 passthru.updateScript = ./update.sh; 51 52 meta = { 53 description = "Fake smtp email server for development and testing"; 54 homepage = "https://github.com/rnwood/smtp4dev"; 55 license = lib.licenses.bsd3; 56 mainProgram = "smtp4dev"; 57 maintainers = with lib.maintainers; [ 58 rucadi 59 jchw 60 defelo 61 ]; 62 platforms = lib.platforms.unix; 63 }; 64})