1{ lib
2, buildPythonApplication
3, colorama
4, fetchFromGitHub
5, pytestCheckHook
6}:
7
8buildPythonApplication rec {
9 pname = "yasi";
10 version = "2.1.2";
11 format = "setuptools";
12
13 src = fetchFromGitHub {
14 owner = "nkmathew";
15 repo = "yasi-sexp-indenter";
16 rev = "v${version}";
17 hash = "sha256-xKhVTmh/vrtBkatxtk8R4yqbGroH0I+xTKNYUpuikt4=";
18 };
19
20 propagatedBuildInputs = [
21 colorama
22 ];
23
24 nativeBuildInputs = [
25 pytestCheckHook
26 ];
27
28 postPatch = ''
29 substituteInPlace setup.py \
30 --replace "test.test_yasi" "tests.test_yasi"
31 '';
32
33 pythonImportsCheck = [ "yasi" ];
34
35 meta = with lib; {
36 description = "A dialect-aware s-expression indenter written in Python and newLISP";
37 homepage = "https://github.com/nkmathew/yasi-sexp-indenter";
38 changelog = "https://github.com/nkmathew/yasi-sexp-indenter/blob/${src.rev}/CHANGELOG.md";
39 license = licenses.mit;
40 maintainers = with maintainers; [ kranzes ];
41 };
42}