scrutiny{,-collector}: convert to finalAttrs

I'm aware that the `frontend` block in the scrutiny let-in looks a
little weird, but it means that doing `overrideAttrs` on scrutiny (to
override version and src) will affect the webapp.
This commit is contained in:
Sam
2026-04-25 13:08:29 -07:00
parent e513a9da65
commit a587e45f4f
2 changed files with 36 additions and 37 deletions
@@ -7,17 +7,15 @@
lib,
nix-update-script,
}:
let
buildGoModule (finalAttrs: {
version = "0.9.1";
in
buildGoModule rec {
inherit version;
pname = "scrutiny-collector";
src = fetchFromGitHub {
owner = "AnalogJ";
repo = "scrutiny";
tag = "v${version}";
tag = "v${finalAttrs.version}";
hash = "sha256-xEMHkISPBHinT6vRyrWPudvmTiX5gYxMkCEoSm2gLWA=";
};
@@ -48,6 +46,7 @@ buildGoModule rec {
meta = {
description = "Hard disk metrics collector for Scrutiny";
homepage = "https://github.com/AnalogJ/scrutiny";
changelog = "https://github.com/AnalogJ/scrutiny/releases/tag/v${finalAttrs.version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [
samasaur
@@ -55,4 +54,4 @@ buildGoModule rec {
];
mainProgram = "scrutiny-collector-metrics";
};
}
})
+31 -31
View File
@@ -7,43 +7,43 @@
nix-update-script,
}:
let
frontend =
finalAttrs:
buildNpmPackage {
inherit (finalAttrs) version;
pname = "${finalAttrs.pname}-webapp";
src = "${finalAttrs.src}/webapp/frontend";
npmDepsHash = "sha256-1lOskHEU/3CmhQkUkQExryK6eMOSWvMI+Y+cX4Dlj98=";
buildPhase = ''
runHook preBuild
mkdir dist
npm run build:prod --offline -- --output-path=dist
runHook postBuild
'';
installPhase = ''
runHook preInstall
mkdir $out
cp -r dist/* $out
runHook postInstall
'';
passthru.updateScript = nix-update-script { };
};
in
buildGoModule (finalAttrs: {
pname = "scrutiny";
version = "0.9.1";
src = fetchFromGitHub {
owner = "AnalogJ";
repo = "scrutiny";
tag = "v${version}";
tag = "v${finalAttrs.version}";
hash = "sha256-xEMHkISPBHinT6vRyrWPudvmTiX5gYxMkCEoSm2gLWA=";
};
frontend = buildNpmPackage {
inherit version;
pname = "${pname}-webapp";
src = "${src}/webapp/frontend";
npmDepsHash = "sha256-1lOskHEU/3CmhQkUkQExryK6eMOSWvMI+Y+cX4Dlj98=";
buildPhase = ''
runHook preBuild
mkdir dist
npm run build:prod --offline -- --output-path=dist
runHook postBuild
'';
installPhase = ''
runHook preInstall
mkdir $out
cp -r dist/* $out
runHook postInstall
'';
passthru.updateScript = nix-update-script { };
};
in
buildGoModule rec {
inherit pname src version;
subPackages = "webapp/backend/cmd/scrutiny";
vendorHash = "sha256-Em8k2AFoZv4TD4HFkkNIdyPj7IBOFiUIKffkifWfZFY=";
@@ -56,7 +56,7 @@ buildGoModule rec {
postInstall = ''
mkdir -p $out/share/scrutiny
cp -r ${frontend}/* $out/share/scrutiny
cp -r ${frontend finalAttrs}/* $out/share/scrutiny
'';
passthru.tests.scrutiny = nixosTests.scrutiny;
@@ -65,7 +65,7 @@ buildGoModule rec {
meta = {
description = "Hard Drive S.M.A.R.T Monitoring, Historical Trends & Real World Failure Thresholds";
homepage = "https://github.com/AnalogJ/scrutiny";
changelog = "https://github.com/AnalogJ/scrutiny/releases/tag/v${version}";
changelog = "https://github.com/AnalogJ/scrutiny/releases/tag/v${finalAttrs.version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [
samasaur
@@ -74,4 +74,4 @@ buildGoModule rec {
mainProgram = "scrutiny";
platforms = lib.platforms.linux;
};
}
})