technium-dns-server: 13.0.2 -> 13.2 (#356520)

This commit is contained in:
tomberek 2024-11-22 00:24:16 -05:00 committed by GitHub
commit b2d5ac855d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 53 additions and 26 deletions

View File

@ -12,9 +12,15 @@ import ./make-test-python.nix ({pkgs, lib, ...}:
}; };
testScript = '' testScript = ''
import json
start_all() start_all()
machine.wait_for_unit("technitium-dns-server.service") machine.wait_for_unit("technitium-dns-server.service")
machine.wait_for_open_port(53) machine.wait_for_open_port(53)
curl_cmd = 'curl --fail-with-body -X GET "http://localhost:5380/api/user/login?user=admin&pass=admin"'
output = json.loads(machine.wait_until_succeeds(curl_cmd, timeout=10))
print(output)
assert "ok" == output['status'], "status not ok"
''; '';
meta.maintainers = with lib.maintainers; [ fabianrig ]; meta.maintainers = with lib.maintainers; [ fabianrig ];

View File

@ -0,0 +1,40 @@
{
lib,
buildDotnetModule,
fetchFromGitHub,
dotnetCorePackages,
nix-update-script,
}:
buildDotnetModule rec {
pname = "technitium-dns-server-library";
version = "dns-server-v13.2";
src = fetchFromGitHub {
owner = "TechnitiumSoftware";
repo = "TechnitiumLibrary";
rev = "refs/tags/${version}";
hash = "sha256-stfxYe0flE1daPuXw/GAgY52ZD7pkqnBIBvmSVPWWjI=";
name = "${pname}-${version}";
};
dotnet-sdk = dotnetCorePackages.sdk_8_0;
nugetDeps = ./nuget-deps.nix;
projectFile = [
"TechnitiumLibrary.ByteTree/TechnitiumLibrary.ByteTree.csproj"
"TechnitiumLibrary.Net/TechnitiumLibrary.Net.csproj"
];
passthru.updateScript = nix-update-script { };
meta = {
changelog = "https://github.com/TechnitiumSoftware/DnsServer/blob/master/CHANGELOG.md";
description = "Library for Authorative and Recursive DNS server for Privacy and Security";
homepage = "https://github.com/TechnitiumSoftware/DnsServer";
license = lib.licenses.gpl3Only;
mainProgram = "technitium-dns-server-library";
maintainers = with lib.maintainers; [ fabianrig ];
platforms = lib.platforms.linux;
};
}

View File

@ -3,40 +3,19 @@
buildDotnetModule, buildDotnetModule,
fetchFromGitHub, fetchFromGitHub,
dotnetCorePackages, dotnetCorePackages,
technitium-dns-server-library,
nixosTests, nixosTests,
nix-update-script,
}: }:
let
technitium-library = buildDotnetModule rec {
pname = "TechnitiumLibrary";
version = "13.0.2";
src = fetchFromGitHub {
owner = "TechnitiumSoftware";
repo = "TechnitiumLibrary";
rev = "refs/tags/dns-server-v${version}";
hash = "sha256-mMNZZvM/UvQTiyeOgPHXXFxmsiGPe4Jal1aSEMEM5Xc=";
name = "${pname}-${version}";
};
dotnet-sdk = dotnetCorePackages.sdk_8_0;
nugetDeps = ./library-nuget-deps.nix;
projectFile = [
"TechnitiumLibrary.ByteTree/TechnitiumLibrary.ByteTree.csproj"
"TechnitiumLibrary.Net/TechnitiumLibrary.Net.csproj"
];
};
in
buildDotnetModule rec { buildDotnetModule rec {
pname = "technitium-dns-server"; pname = "technitium-dns-server";
version = "13.0.2"; version = "13.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "TechnitiumSoftware"; owner = "TechnitiumSoftware";
repo = "DnsServer"; repo = "DnsServer";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-2dFjr3f4ZlLBJzuObSYIkSdtcyZ8dC6M7/S1p7WoG0c="; hash = "sha256-oxLMBs+XkzvlfSst6ZD56ZIgiXwm0Px8Tn3Trdd/6H8=";
name = "${pname}-${version}"; name = "${pname}-${version}";
}; };
@ -50,7 +29,7 @@ buildDotnetModule rec {
# move dependencies from TechnitiumLibrary to the expected directory # move dependencies from TechnitiumLibrary to the expected directory
preBuild = '' preBuild = ''
mkdir -p ../TechnitiumLibrary/bin mkdir -p ../TechnitiumLibrary/bin
cp -r ${technitium-library}/lib/TechnitiumLibrary/* ../TechnitiumLibrary/bin/ cp -r ${technitium-dns-server-library}/lib/${technitium-dns-server-library.pname}/* ../TechnitiumLibrary/bin/
''; '';
postFixup = '' postFixup = ''
@ -61,6 +40,8 @@ buildDotnetModule rec {
inherit (nixosTests) technitium-dns-server; inherit (nixosTests) technitium-dns-server;
}; };
passthru.updateScript = nix-update-script { };
meta = { meta = {
changelog = "https://github.com/TechnitiumSoftware/DnsServer/blob/master/CHANGELOG.md"; changelog = "https://github.com/TechnitiumSoftware/DnsServer/blob/master/CHANGELOG.md";
description = "Authorative and Recursive DNS server for Privacy and Security"; description = "Authorative and Recursive DNS server for Privacy and Security";