1{
2 lib,
3 buildPythonPackage,
4 click,
5 fetchFromGitHub,
6 poetry-core,
7 pydantic,
8 pytestCheckHook,
9 pythonOlder,
10 toml,
11}:
12
13buildPythonPackage rec {
14 pname = "maison";
15 version = "2.0.0";
16 pyproject = true;
17
18 disabled = pythonOlder "3.8";
19
20 src = fetchFromGitHub {
21 owner = "dbatten5";
22 repo = "maison";
23 tag = "v${version}";
24 hash = "sha256-1hsnSYDoCO5swWm3B4R5eXs0Mn4s8arlCQKfsS1OWRk=";
25 };
26
27 pythonRelaxDeps = [ "pydantic" ];
28
29 nativeBuildInputs = [
30 poetry-core
31 ];
32
33 propagatedBuildInputs = [
34 click
35 pydantic
36 toml
37 ];
38
39 checkInputs = [ pytestCheckHook ];
40
41 pythonImportsCheck = [ "maison" ];
42
43 meta = with lib; {
44 description = "Library to read settings from config files";
45 mainProgram = "maison";
46 homepage = "https://github.com/dbatten5/maison";
47 changelog = "https://github.com/dbatten5/maison/releases/tag/${src.tag}";
48 license = licenses.mit;
49 maintainers = with maintainers; [ fab ];
50 };
51}