1{
2 buildPythonPackage,
3 fetchFromGitHub,
4 libmysqlclient,
5 packaging,
6 lib,
7 pythonOlder,
8 setuptools,
9}:
10
11buildPythonPackage rec {
12 pname = "mariadb";
13 version = "1.1.13";
14 pyproject = true;
15
16 disabled = pythonOlder "3.8";
17
18 src = fetchFromGitHub {
19 owner = "mariadb-corporation";
20 repo = "mariadb-connector-python";
21 tag = "v${version}";
22 hash = "sha256-BYE+W/P2/kPtbi6tzE1FQkI/KFCO5C1KQnB67XfJqkA=";
23 };
24
25 build-system = [ setuptools ];
26
27 nativeBuildInputs = [
28 libmysqlclient # for mariadb_config
29 ];
30
31 buildInputs = [ libmysqlclient ];
32
33 dependencies = [
34 packaging # do not rely on pythonImportsCheck when removing, it pulls in build-system dependencies
35 ];
36
37 # Requires a running MariaDB instance
38 doCheck = false;
39
40 pythonImportsCheck = [ "mariadb" ];
41
42 meta = {
43 description = "MariaDB Connector/Python";
44 homepage = "https://github.com/mariadb-corporation/mariadb-connector-python";
45 license = lib.licenses.lgpl21Plus;
46 maintainers = [ ];
47 };
48}