perlModules.PerconaToolkit: 3.2.0 -> 3.7.0

perlModules.PerconaToolkit: resolve review
This commit is contained in:
Achmad Fathoni 2025-04-16 12:20:22 +07:00
parent fdb40c313f
commit 8146a3cd56

View File

@ -7,30 +7,63 @@
DBI,
IOSocketSSL,
TermReadKey,
go,
buildGoModule,
git,
}:
buildPerlPackage rec {
pname = "Percona-Toolkit";
version = "3.2.0";
let
version = "3.7.0";
src = fetchFromGitHub {
owner = "percona";
repo = "percona-toolkit";
rev = "v${version}";
sha256 = "084ldpskvlfm32lfss5qqzm5y9b8hf029aa4i5pcnzgb53xaxkqx";
sha256 = "sha256-fJGeL9XZHTFmpns5CE7It35HRnF3JiC6muOpOS1zboI=";
# needed for build script
leaveDotGit = true;
};
goDeps =
(buildGoModule {
pname = "Percona-Toolkit go-bindings";
inherit src version;
vendorHash = "sha256-HAaoVYK6av085zSG0ZRpbmUgEA2UEt7CGWF/834e+z4=";
}).goModules;
in
buildPerlPackage {
pname = "Percona-Toolkit";
inherit src version;
outputs = [ "out" ];
nativeBuildInputs = [ shortenPerlShebang ];
nativeBuildInputs = [
git
shortenPerlShebang
];
buildInputs = [
DBDmysql
go
DBI
IOSocketSSL
TermReadKey
];
postPatch = ''
cp -r --reflink=auto ${goDeps} vendor
chmod -R u+rw vendor
substituteInPlace src/go/Makefile \
--replace-fail "go get ./..." "echo 'Skipping go get due to offline build'"
'';
preBuild = ''
export HOME=$TMPDIR
'';
postInstall = ''
shortenPerlShebang $(grep -l "/bin/env perl" $out/bin/*)
'';