From b52b1ef51ada40d4c0c2f4f553610f270573bce2 Mon Sep 17 00:00:00 2001 From: tdro Date: Thu, 4 Mar 2021 20:22:52 -0500 Subject: .vimrc: Add more SQL tools Add skeema, sqldef, and sqlfluff --- .config/nixpkgs/packages/skeema/default.nix | 23 +++++++++++ .config/nixpkgs/packages/sqldef/default.nix | 23 +++++++++++ .config/nixpkgs/packages/sqlfluff/default.nix | 58 +++++++++++++++++++++++++++ 3 files changed, 104 insertions(+) create mode 100644 .config/nixpkgs/packages/skeema/default.nix create mode 100644 .config/nixpkgs/packages/sqldef/default.nix create mode 100644 .config/nixpkgs/packages/sqlfluff/default.nix (limited to '.config/nixpkgs/packages') diff --git a/.config/nixpkgs/packages/skeema/default.nix b/.config/nixpkgs/packages/skeema/default.nix new file mode 100644 index 0000000..4017f75 --- /dev/null +++ b/.config/nixpkgs/packages/skeema/default.nix @@ -0,0 +1,23 @@ +{ stdenv, fetchgit, buildGoModule }: + +buildGoModule rec { + pname = "skeema"; + version = "v1.5.0"; + url = "https://github.com/skeema/skeema"; + + src = fetchgit { + inherit url; + rev = version; + sha256 = "0mrspmgiww0jlpml24r5f4ail8153f2liva88w9760fd5aky3ix3"; + }; + + vendorSha256 = null; + + doCheck = false; + + meta = with stdenv.lib; { + homepage = url; + license = licenses.asl20; + description = "Schema management CLI for MySQL"; + }; +} diff --git a/.config/nixpkgs/packages/sqldef/default.nix b/.config/nixpkgs/packages/sqldef/default.nix new file mode 100644 index 0000000..6829f00 --- /dev/null +++ b/.config/nixpkgs/packages/sqldef/default.nix @@ -0,0 +1,23 @@ +{ stdenv, fetchgit, buildGoModule }: + +buildGoModule rec { + pname = "sqldef"; + version = "v0.8.9"; + url = "https://github.com/k0kubun/sqldef"; + + src = fetchgit { + inherit url; + rev = version; + sha256 = "1hvx05qwy2g4r1zc1k2f9xv4z815p5jh1a6g41fdlxskjl3kyyf5"; + }; + + vendorSha256 = "066184zmwdhd8dbkbmwds8aimiawfcvb8px8z1q48c949gvywlx7"; + + doCheck = false; + + meta = with stdenv.lib; { + homepage = url; + license = licenses.mit; + description = "Idempotent MySQL/PostgreSQL schema management by SQL"; + }; +} diff --git a/.config/nixpkgs/packages/sqlfluff/default.nix b/.config/nixpkgs/packages/sqlfluff/default.nix new file mode 100644 index 0000000..0030d31 --- /dev/null +++ b/.config/nixpkgs/packages/sqlfluff/default.nix @@ -0,0 +1,58 @@ +{ stdenv, fetchgit, python36 }: + +with python36.pkgs; + +let + + bench-it = buildPythonPackage rec { + pname = "bench-it"; + version = "1.0.1"; + src = fetchPypi { + inherit pname version; + sha256 = "0v6kfvgdnjlfmwlafmyjadgllfr8qc1hq83kz9q287gh5nvw851f"; + }; + postPatch = '' + # Avoid building pypandoc + sed -i 's|^import pypandoc.*||' setup.py + sed -i 's|^description = pypandoc.*|description = ""|' setup.py + ''; + doCheck = false; + }; + +in buildPythonApplication rec { + + pname = "sqlfluff"; + url = "https://github.com/sqlfluff/sqlfluff"; + version = "0.4.1"; + + src = fetchgit { + inherit url; + rev = version; + sha256 = "0g53rhdg8b2p3xx9rmkc2fkqnz4fsrmkg98n5fi10s16wscn90kz"; + }; + + propagatedBuildInputs = [ + appdirs + bench-it + cached-property + click + colorama + configparser + dataclasses + diff_cover + jinja2 + oyaml + pathspec + pluggy + typing-extensions + ]; + + doCheck = false; + + meta = with stdenv.lib; { + homepage = url; + license = licenses.mit; + platforms = platforms.linux; + description = "A SQL linter and auto-formatter for Humans"; + }; +} -- cgit v1.2.3