From 7149b4252d9cab18118b6c6dde10785562985384 Mon Sep 17 00:00:00 2001 From: Defelo Date: Mon, 26 May 2025 22:41:44 +0200 Subject: [PATCH 1/3] smtp4dev: use finalAttrs pattern --- pkgs/by-name/sm/smtp4dev/package.nix | 26 +++++++++++--------------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/pkgs/by-name/sm/smtp4dev/package.nix b/pkgs/by-name/sm/smtp4dev/package.nix index 6b646d67af72..8d397f268941 100644 --- a/pkgs/by-name/sm/smtp4dev/package.nix +++ b/pkgs/by-name/sm/smtp4dev/package.nix @@ -9,25 +9,19 @@ dotnetCorePackages, nix-update-script, }: -let + +buildDotnetModule (finalAttrs: { + pname = "smtp4dev"; version = "3.8.6"; + src = fetchFromGitHub { owner = "rnwood"; repo = "smtp4dev"; - tag = version; + tag = finalAttrs.version; hash = "sha256-k4nerh4cVVcFQF7a4Wvcfhefa3SstEOASk+0soN0n9k="; }; - npmRoot = "Rnwood.Smtp4dev/ClientApp"; + patches = [ ./smtp4dev-npm-packages.patch ]; -in -buildDotnetModule { - inherit - version - src - npmRoot - patches - ; - pname = "smtp4dev"; nativeBuildInputs = [ nodejs @@ -36,10 +30,12 @@ buildDotnetModule { stdenv.cc # c compiler is needed for compiling npm-deps ]; + npmRoot = "Rnwood.Smtp4dev/ClientApp"; + npmDeps = fetchNpmDeps { - inherit src patches; + inherit (finalAttrs) src patches; hash = "sha256-Uj0EnnsA+QHq5KHF2B93OG8rwxYrV6sEgMTbd43ttCA="; - postPatch = "cd ${npmRoot}"; + postPatch = "cd ${finalAttrs.npmRoot}"; }; dotnet-sdk = dotnetCorePackages.sdk_8_0; @@ -67,4 +63,4 @@ buildDotnetModule { ]; platforms = lib.platforms.unix; }; -} +}) From 84c82716821bfff3fbd16f51d35f63416abec6be Mon Sep 17 00:00:00 2001 From: Defelo Date: Mon, 26 May 2025 22:22:01 +0200 Subject: [PATCH 2/3] smtp4dev: fix updateScript --- pkgs/by-name/sm/smtp4dev/package.nix | 5 +---- pkgs/by-name/sm/smtp4dev/update.sh | 5 +++++ 2 files changed, 6 insertions(+), 4 deletions(-) create mode 100755 pkgs/by-name/sm/smtp4dev/update.sh diff --git a/pkgs/by-name/sm/smtp4dev/package.nix b/pkgs/by-name/sm/smtp4dev/package.nix index 8d397f268941..9bf28dcf869e 100644 --- a/pkgs/by-name/sm/smtp4dev/package.nix +++ b/pkgs/by-name/sm/smtp4dev/package.nix @@ -7,7 +7,6 @@ npmHooks, fetchNpmDeps, dotnetCorePackages, - nix-update-script, }: buildDotnetModule (finalAttrs: { @@ -48,9 +47,7 @@ buildDotnetModule (finalAttrs: { mv $out/bin/Rnwood.Smtp4dev $out/bin/smtp4dev ''; - passthru.updateScript = nix-update-script { - extraArgs = [ "--version-regex=^(\\d+\\.\\d+\\.\\d+)$" ]; - }; + passthru.updateScript = ./update.sh; meta = { description = "Fake smtp email server for development and testing"; diff --git a/pkgs/by-name/sm/smtp4dev/update.sh b/pkgs/by-name/sm/smtp4dev/update.sh new file mode 100755 index 000000000000..3f673377909c --- /dev/null +++ b/pkgs/by-name/sm/smtp4dev/update.sh @@ -0,0 +1,5 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p curl jq nix-update + +version=$(curl ${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} -sfL "https://api.github.com/repos/rnwood/smtp4dev/releases/latest" | jq -r .tag_name) +nix-update --version="$version" smtp4dev From 44b108efca5e7f7daa855ce7c92f8e97a9732590 Mon Sep 17 00:00:00 2001 From: Defelo Date: Mon, 26 May 2025 22:28:24 +0200 Subject: [PATCH 3/3] smtp4dev: add defelo as maintainer --- pkgs/by-name/sm/smtp4dev/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/sm/smtp4dev/package.nix b/pkgs/by-name/sm/smtp4dev/package.nix index 9bf28dcf869e..7a4abeaa4a71 100644 --- a/pkgs/by-name/sm/smtp4dev/package.nix +++ b/pkgs/by-name/sm/smtp4dev/package.nix @@ -57,6 +57,7 @@ buildDotnetModule (finalAttrs: { maintainers = with lib.maintainers; [ rucadi jchw + defelo ]; platforms = lib.platforms.unix; };