about summary refs log tree commit diff
path: root/pkgs/development/python-modules/pgcli/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/python-modules/pgcli/default.nix')
-rw-r--r--pkgs/development/python-modules/pgcli/default.nix62
1 files changed, 62 insertions, 0 deletions
diff --git a/pkgs/development/python-modules/pgcli/default.nix b/pkgs/development/python-modules/pgcli/default.nix
new file mode 100644
index 0000000000000..70e52493315e6
--- /dev/null
+++ b/pkgs/development/python-modules/pgcli/default.nix
@@ -0,0 +1,62 @@
+{ lib, stdenv
+, buildPythonPackage
+, fetchPypi
+, isPy3k
+, cli-helpers
+, click
+, configobj
+, prompt-toolkit
+, psycopg2
+, pygments
+, sqlparse
+, pgspecial
+, setproctitle
+, keyring
+, pendulum
+, pytestCheckHook
+, sshtunnel
+, mock
+}:
+
+# this is a pythonPackage because of the ipython line magics in pgcli.magic
+# integrating with ipython-sql
+buildPythonPackage rec {
+  pname = "pgcli";
+  version = "3.4.1";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "sha256-8DkwGH4n1g32WMqKBPtgHsXXR2xzXysVQsat7Fysj+I=";
+  };
+
+  propagatedBuildInputs = [
+    cli-helpers
+    click
+    configobj
+    prompt-toolkit
+    psycopg2
+    pygments
+    sqlparse
+    pgspecial
+    setproctitle
+    keyring
+    pendulum
+    sshtunnel
+  ];
+
+  checkInputs = [ pytestCheckHook mock ];
+
+  disabledTests = lib.optionals stdenv.isDarwin [ "test_application_name_db_uri" ];
+
+  meta = with lib; {
+    description = "Command-line interface for PostgreSQL";
+    longDescription = ''
+      Rich command-line interface for PostgreSQL with auto-completion and
+      syntax highlighting.
+    '';
+    homepage = "https://pgcli.com";
+    changelog = "https://github.com/dbcli/pgcli/raw/v${version}/changelog.rst";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ dywedir ];
+  };
+}