Files

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

74 lines
1.6 KiB
Nix
Raw Permalink Normal View History

2025-10-09 14:15:47 +02:00
{
lib,
stdenv,
buildDotnetModule,
fetchFromGitHub,
nodejs,
npmHooks,
fetchNpmDeps,
dotnetCorePackages,
}:
buildDotnetModule (finalAttrs: {
pname = "smtp4dev";
version = "3.10.3";
src = fetchFromGitHub {
owner = "rnwood";
repo = "smtp4dev";
tag = finalAttrs.version;
hash = "sha256-bbo4kke0deZQoD08dbUKsLUhjg/z7TaIr5qmU4SETNg=";
};
patches = [ ./smtp4dev-npm-packages.patch ];
nativeBuildInputs = [
nodejs
nodejs.python
npmHooks.npmConfigHook
stdenv.cc # c compiler is needed for compiling npm-deps
];
npmRoot = "Rnwood.Smtp4dev/ClientApp";
npmDeps = fetchNpmDeps {
inherit (finalAttrs) src patches;
hash = "sha256-c0/6kbMv5CmLxS0S/p3+oZvZsuHP9gt4X43uvGQFjTw=";
postPatch = "cd ${finalAttrs.npmRoot}";
};
dotnet-sdk = dotnetCorePackages.sdk_8_0;
dotnet-runtime = dotnetCorePackages.aspnetcore_8_0;
projectFile = "Rnwood.Smtp4dev/Rnwood.Smtp4dev.csproj";
nugetDeps = ./deps.json;
executables = [ "Rnwood.Smtp4dev" ];
postFixup = ''
mv $out/bin/Rnwood.Smtp4dev $out/bin/smtp4dev
'';
doInstallCheck = true;
installCheckPhase = ''
runHook preInstallCheck
$out/bin/smtp4dev --help > /dev/null
runHook postInstallCheck
'';
passthru.updateScript = ./update.sh;
meta = {
description = "Fake smtp email server for development and testing";
homepage = "https://github.com/rnwood/smtp4dev";
license = lib.licenses.bsd3;
mainProgram = "smtp4dev";
maintainers = with lib.maintainers; [
rucadi
jchw
defelo
];
platforms = lib.platforms.unix;
};
})