zf: use zigHook

Also, a cosmetic refactor:

- Reorder parameter listing
- Use rec-less, overlay-style overridable recursive attributes (in effect since
NixOS#119942);
- Remove nested with (according to
https://nix.dev/recipes/best-practices#with-scopes)
This commit is contained in:
Anderson Torres 2023-07-09 20:37:39 -03:00
parent a3ccdee063
commit fe310a1855

View file

@ -1,61 +1,46 @@
{
lib,
stdenv,
fetchFromGitHub,
zig,
testers,
installShellFiles,
zf,
{ lib
, stdenv
, fetchFromGitHub
, installShellFiles
, testers
, zf
, zigHook
}:
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
pname = "zf";
version = "0.8.0";
src = fetchFromGitHub {
owner = "natecraddock";
repo = pname;
rev = "refs/tags/${version}";
repo = "zf";
rev = "refs/tags/${finalAttrs.version}";
fetchSubmodules = true;
hash = "sha256-MzlSU5x2lb6PJZ/iNAi2aebfuClBprlfHMIG/4OPmuc=";
};
nativeBuildInputs = [ zig installShellFiles ];
preBuild = ''
export HOME=$TMPDIR
'';
buildPhase = ''
runHook preBuild
zig build -Drelease-safe -Dcpu=baseline
runHook postBuild
'';
nativeBuildInputs = [
installShellFiles
zigHook
];
doCheck = true;
checkPhase = ''
runHook preCheck
zig build test
runHook postCheck
'';
installPhase = ''
runHook preInstall
zig build -Drelease-safe -Dcpu=baseline --prefix $out install
postInstall = ''
installManPage doc/zf.1
installShellCompletion \
--bash complete/zf \
--fish complete/zf.fish \
--zsh complete/_zf
runHook postInstall
'';
passthru.tests.version = testers.testVersion {package = zf;};
passthru.tests.version = testers.testVersion { package = finalAttrs.zf; };
meta = with lib; {
meta = {
homepage = "https://github.com/natecraddock/zf";
description = "A commandline fuzzy finder that prioritizes matches on filenames";
license = licenses.mit;
platforms = platforms.unix;
maintainers = with maintainers; [ dit7ya mmlb ];
license = lib.licenses.mit;
platforms = lib.platforms.unix;
maintainers = with lib.maintainers; [ dit7ya mmlb ];
};
}
})