2021-01-11 07:54:33 +00:00
|
|
|
{ lib, stdenv
|
2018-10-26 15:38:17 +00:00
|
|
|
, buildPythonPackage
|
|
|
|
, fetchPypi
|
|
|
|
, isPy3k
|
|
|
|
, pkgs
|
|
|
|
}:
|
|
|
|
|
|
|
|
buildPythonPackage rec {
|
|
|
|
pname = "pysqlite";
|
|
|
|
version = "2.8.3";
|
|
|
|
|
|
|
|
src = fetchPypi {
|
|
|
|
inherit pname version;
|
|
|
|
sha256 = "17d3335863e8cf8392eea71add33dab3f96d060666fe68ab7382469d307f4490";
|
|
|
|
};
|
|
|
|
|
|
|
|
# Need to use the builtin sqlite3 on Python 3
|
|
|
|
disabled = isPy3k;
|
|
|
|
|
|
|
|
# Since the `.egg' file is zipped, the `NEEDED' of the `.so' files
|
|
|
|
# it contains is not taken into account. Thus, we must explicitly make
|
|
|
|
# it a propagated input.
|
|
|
|
propagatedBuildInputs = [ pkgs.sqlite ];
|
|
|
|
|
|
|
|
patchPhase = ''
|
|
|
|
substituteInPlace "setup.cfg" \
|
|
|
|
--replace "/usr/local/include" "${pkgs.sqlite.dev}/include" \
|
|
|
|
--replace "/usr/local/lib" "${pkgs.sqlite.out}/lib"
|
2021-01-24 00:29:22 +00:00
|
|
|
${lib.optionalString (!stdenv.isDarwin) ''export LDSHARED="$CC -pthread -shared"''}
|
2018-10-26 15:38:17 +00:00
|
|
|
'';
|
|
|
|
|
2021-01-11 07:54:33 +00:00
|
|
|
meta = with lib; {
|
2020-04-01 01:11:51 +00:00
|
|
|
homepage = "https://pysqlite.org/";
|
2018-10-26 15:38:17 +00:00
|
|
|
description = "Python bindings for the SQLite embedded relational database engine";
|
|
|
|
longDescription = ''
|
|
|
|
pysqlite is a DB-API 2.0-compliant database interface for SQLite.
|
|
|
|
|
|
|
|
SQLite is a relational database management system contained in
|
|
|
|
a relatively small C library. It is a public domain project
|
|
|
|
created by D. Richard Hipp. Unlike the usual client-server
|
|
|
|
paradigm, the SQLite engine is not a standalone process with
|
|
|
|
which the program communicates, but is linked in and thus
|
|
|
|
becomes an integral part of the program. The library
|
|
|
|
implements most of SQL-92 standard, including transactions,
|
|
|
|
triggers and most of complex queries.
|
|
|
|
|
|
|
|
pysqlite makes this powerful embedded SQL engine available to
|
|
|
|
Python programmers. It stays compatible with the Python
|
|
|
|
database API specification 2.0 as much as possible, but also
|
|
|
|
exposes most of SQLite's native API, so that it is for example
|
|
|
|
possible to create user-defined SQL functions and aggregates
|
|
|
|
in Python.
|
|
|
|
'';
|
|
|
|
license = licenses.bsd3;
|
|
|
|
};
|
|
|
|
|
|
|
|
}
|