nixpkgs/pkgs/development/python-modules/tree-sitter-sql/default.nix
2025-06-07 21:43:54 +03:00

59 lines
1.3 KiB
Nix

{
lib,
buildPythonPackage,
fetchFromGitHub,
# build-system
setuptools,
tree-sitter-sql,
#optional-dependencies
tree-sitter,
}:
buildPythonPackage rec {
pname = "tree-sitter-sql";
version = "0.3.8";
pyproject = true;
src = fetchFromGitHub {
owner = "DerekStride";
repo = "tree-sitter-sql";
tag = "v${version}";
hash = "sha256-8gdbbz187sV8I+PJHubFyyQwGUqvo05Yw1DX7rOK4DI=";
};
postUnpack = ''
cp -rf ${tree-sitter-sql.passthru.parsers}/* $sourceRoot
'';
build-system = [
setuptools
];
passthru = {
# As mentioned in https://github.com/DerekStride/tree-sitter-sql README
# generated tree sitter parser files necessary for compilation
# are separately distributed on the gh-pages branch
parsers = fetchFromGitHub {
owner = "DerekStride";
repo = "tree-sitter-sql";
rev = "9853b887c5e4309de273922b681cc7bc09e30c78/gh-pages";
hash = "sha256-p60nphbSN+O5fOlL06nw0qgQFpmvoNCTmLzDvUC/JGs=";
};
};
optional-dependencies = {
core = [
tree-sitter
];
};
pythonImportsCheck = [ "tree_sitter_sql" ];
meta = {
description = "sql grammar for tree-sitter";
homepage = "https://github.com/DerekStride/tree-sitter-sql";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ pcboy ];
};
}