dbtpl: init at 1.1.0 (#422607)

This commit is contained in:
Aleksana 2025-07-14 21:40:58 +08:00 committed by GitHub
commit bf15e6ca04
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 73 additions and 0 deletions

View File

@ -23100,6 +23100,12 @@
githubId = 251028;
name = "Shell Turner";
};
shellhazard = {
email = "shellhazard@tutanota.com";
github = "shellhazard";
githubId = 10951745;
name = "shellhazard";
};
shelvacu = {
name = "Shelvacu";
email = "nix-maint@shelvacu.com";

View File

@ -0,0 +1,67 @@
{
lib,
stdenv,
buildGoModule,
fetchFromGitHub,
installShellFiles,
buildPackages,
versionCheckHook,
nix-update-script,
}:
buildGoModule (finalAttrs: {
pname = "dbtpl";
version = "1.1.0";
src = fetchFromGitHub {
owner = "xo";
repo = "dbtpl";
tag = "v${finalAttrs.version}";
hash = "sha256-r0QIgfDSt7HWnIDnJWGbwkqkXWYWGXoF5H/+zS6gEtE=";
};
vendorHash = "sha256-scJRJaaccQovxhzC+/OHuPR4NRaE8+u57S1JY40bif8=";
nativeBuildInputs = [
installShellFiles
];
modPostBuild = ''
substituteInPlace vendor/github.com/xo/ox/ox.go \
--replace-warn "ver := \"(devel)\"" "ver := \"${finalAttrs.version}\""
'';
postInstall =
let
exe =
if stdenv.buildPlatform.canExecute stdenv.hostPlatform then
"$out/bin/dbtpl"
else
lib.getExe buildPackages.dbtpl;
in
''
installShellCompletion --cmd dbtpl \
--bash <(${exe} completion bash) \
--fish <(${exe} completion fish) \
--zsh <(${exe} completion zsh)
'';
nativeInstallCheckInputs = [
versionCheckHook
];
versionCheckProgramArg = "version";
doInstallCheck = true;
passthru.updateScript = nix-update-script { };
meta = {
description = "Command line tool to generate idiomatic Go code for SQL databases supporting PostgreSQL, MySQL, SQLite, Oracle, and Microsoft SQL Server";
homepage = "https://github.com/xo/dbtpl";
changelog = "https://github.com/xo/dbtpl/releases/tag/v${finalAttrs.version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [
xiaoxiangmoe
shellhazard
];
mainProgram = "dbtpl";
};
})