Files
2026-07-05 14:24:41 -04:00

77 lines
1.5 KiB
Nix

{
lib,
python3,
fetchFromGitHub,
}:
python3.pkgs.buildPythonApplication (finalAttrs: {
pname = "localstack";
version = "4.13.0";
pyproject = true;
src = fetchFromGitHub {
owner = "localstack";
repo = "localstack";
tag = "v${finalAttrs.version}";
hash = "sha256-vagQ2+eG93ns+E9HT/aDWlDn9jhhIyE7PxBXedsgyH0=";
};
build-system = with python3.pkgs; [
setuptools
setuptools-scm
];
propagatedBuildInputs = with python3.pkgs; [
apispec
asn1crypto
boto3
build
cachetools
click
cryptography
localstack-client
localstack-ext
plux
psutil
python-dotenv
pyyaml
packaging
requests
rich
semver
tailer
];
pythonRelaxDeps = [
"dill"
];
pythonImportsCheck = [ "localstack" ];
# Test suite requires boto, which has been removed from nixpkgs
# Just do minimal test, buildPythonPackage maps checkPhase
# to installCheckPhase, so we can test that entrypoint point works.
checkPhase = ''
runHook preCheck
export HOME=$(mktemp -d)
$out/bin/localstack --version
runHook postCheck
'';
# Propagating dependencies leaks them through $PYTHONPATH which causes issues
# when used in nix-shell.
postFixup = ''
rm $out/nix-support/propagated-build-inputs
'';
meta = {
description = "Fully functional local Cloud stack";
homepage = "https://github.com/localstack/localstack";
license = lib.licenses.asl20;
maintainers = [ ];
mainProgram = "localstack";
};
})