nixpkgs/pkgs/development/libraries/sqlite/tools.nix
2024-03-13 08:04:06 +00:00

46 lines
1.5 KiB
Nix

{ lib, stdenv, fetchurl, unzip, sqlite, tcl, Foundation }:
let
archiveVersion = import ./archive-version.nix lib;
mkTool = { pname, makeTarget, description, homepage, mainProgram }: stdenv.mkDerivation rec {
inherit pname;
version = "3.45.2";
# nixpkgs-update: no auto update
src = assert version == sqlite.version; fetchurl {
url = "https://sqlite.org/2024/sqlite-src-${archiveVersion version}.zip";
hash = "sha256-SkWjV3zIr2g8S9TG6Bp8eCxbfV2qBhdeosuXHKcWkbE=";
};
nativeBuildInputs = [ unzip ];
buildInputs = [ tcl ] ++ lib.optional stdenv.isDarwin Foundation;
makeFlags = [ makeTarget ];
installPhase = "install -Dt $out/bin ${makeTarget}";
meta = with lib; {
inherit description homepage mainProgram;
downloadPage = "http://sqlite.org/download.html";
license = licenses.publicDomain;
maintainers = with maintainers; [ johnazoidberg ];
platforms = platforms.unix;
};
};
in
{
sqldiff = mkTool {
pname = "sqldiff";
makeTarget = "sqldiff";
description = "A tool that displays the differences between SQLite databases";
homepage = "https://www.sqlite.org/sqldiff.html";
mainProgram = "sqldiff";
};
sqlite-analyzer = mkTool {
pname = "sqlite-analyzer";
makeTarget = "sqlite3_analyzer";
description = "A tool that shows statistics about SQLite databases";
homepage = "https://www.sqlite.org/sqlanalyze.html";
mainProgram = "sqlite3_analyzer";
};
}