gotop: use writableTmpDirAsHomeHook and finalAttrs pattern (#398900)

This commit is contained in:
Weijia Wang
2025-04-17 22:26:53 +02:00
committed by GitHub
+11 -12
View File
@@ -5,9 +5,10 @@
fetchFromGitHub,
installShellFiles,
IOKit,
writableTmpDirAsHomeHook,
}:
buildGoModule rec {
buildGoModule (finalAttrs: {
pname = "gotop";
version = "4.2.0";
@@ -18,8 +19,8 @@ buildGoModule rec {
src = fetchFromGitHub {
owner = "xxxserxxx";
repo = pname;
rev = "v${version}";
repo = "gotop";
rev = "v${finalAttrs.version}";
hash = "sha256-W7a3QnSIR95N88RqU2sr6oEDSqOXVfAwacPvS219+1Y=";
};
@@ -29,28 +30,26 @@ buildGoModule rec {
ldflags = [
"-s"
"-w"
"-X main.Version=v${version}"
"-X main.Version=v${finalAttrs.version}"
];
nativeBuildInputs = [ installShellFiles ];
buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ IOKit ];
preCheck = ''
export HOME=$(mktemp -d)
'';
nativeCheckInputs = [ writableTmpDirAsHomeHook ];
postInstall = ''
$out/bin/gotop --create-manpage > gotop.1
installManPage gotop.1
'';
meta = with lib; {
meta = {
description = "Terminal based graphical activity monitor inspired by gtop and vtop";
homepage = "https://github.com/xxxserxxx/gotop";
changelog = "https://github.com/xxxserxxx/gotop/raw/v${version}/CHANGELOG.md";
license = licenses.mit;
maintainers = [ maintainers.magnetophon ];
changelog = "https://github.com/xxxserxxx/gotop/raw/v${finalAttrs.version}/CHANGELOG.md";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.magnetophon ];
mainProgram = "gotop";
};
}
})