nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at python-updates 59 lines 1.6 kB view raw
1{ 2 lib, 3 buildDotnetModule, 4 fetchFromGitHub, 5 dotnetCorePackages, 6 technitium-dns-server-library, 7 libmsquic, 8 nixosTests, 9 nix-update-script, 10}: 11buildDotnetModule rec { 12 pname = "technitium-dns-server"; 13 version = "14.3.0"; 14 15 src = fetchFromGitHub { 16 owner = "TechnitiumSoftware"; 17 repo = "DnsServer"; 18 tag = "v${version}"; 19 hash = "sha256-NUH1gn8kdtMBKC5+XEqqTGySNMCDFGF5yy6NbGeRvvY="; 20 name = "${pname}-${version}"; 21 }; 22 23 dotnet-sdk = dotnetCorePackages.sdk_9_0; 24 dotnet-runtime = dotnetCorePackages.aspnetcore_9_0; 25 26 nugetDeps = ./nuget-deps.json; 27 28 projectFile = [ "DnsServerApp/DnsServerApp.csproj" ]; 29 30 # move dependencies from TechnitiumLibrary to the expected directory 31 preBuild = '' 32 mkdir -p ../TechnitiumLibrary/bin 33 cp -r ${technitium-dns-server-library}/lib/${technitium-dns-server-library.pname}/* ../TechnitiumLibrary/bin/ 34 ''; 35 36 postFixup = '' 37 mv $out/bin/DnsServerApp $out/bin/technitium-dns-server 38 ''; 39 40 runtimeDeps = [ 41 libmsquic 42 ]; 43 44 passthru.tests = { 45 inherit (nixosTests) technitium-dns-server; 46 }; 47 48 passthru.updateScript = nix-update-script { }; 49 50 meta = { 51 changelog = "https://github.com/TechnitiumSoftware/DnsServer/blob/master/CHANGELOG.md"; 52 description = "Authorative and Recursive DNS server for Privacy and Security"; 53 homepage = "https://github.com/TechnitiumSoftware/DnsServer"; 54 license = lib.licenses.gpl3Only; 55 mainProgram = "technitium-dns-server"; 56 maintainers = with lib.maintainers; [ fabianrig ]; 57 platforms = lib.platforms.linux; 58 }; 59}