nixpkgs/pkgs/development/tools/azure-functions-core-tools/default.nix
2023-11-17 15:00:20 +02:00

50 lines
1.2 KiB
Nix

{ lib,
stdenv,
callPackage,
fetchFromGitHub,
buildDotnetModule,
buildGoModule,
dotnetCorePackages,
}:
let
version = "4.0.5455";
src = fetchFromGitHub {
owner = "Azure";
repo = "azure-functions-core-tools";
rev = version;
sha256 = "sha256-Ip1m0/l0YWFosYfp8UeREg9DP5pnvRnXyAaAuch7Op4=";
};
gozip = buildGoModule {
pname = "gozip";
inherit version;
src = src + "/tools/go/gozip";
vendorHash = null;
};
in
buildDotnetModule rec {
pname = "azure-functions-core-tools";
inherit src version;
dotnet-runtime = dotnetCorePackages.sdk_6_0;
nugetDeps = ./deps.nix;
useDotnetFromEnv = true;
executables = [ "func" ];
postPatch = ''
substituteInPlace src/Azure.Functions.Cli/Common/CommandChecker.cs \
--replace "CheckExitCode(\"/bin/bash" "CheckExitCode(\"${stdenv.shell}"
'';
postInstall = ''
mkdir -p $out/bin
ln -s ${gozip}/bin/gozip $out/bin/gozip
'';
meta = with lib; {
homepage = "https://github.com/Azure/azure-functions-core-tools";
description = "Command line tools for Azure Functions";
license = licenses.mit;
maintainers = with maintainers; [ mdarocha detegr ];
platforms = ["x86_64-linux" "aarch64-darwin" "x86_64-darwin"];
};
}