update: system update & refactor

# Breaking Changes
- sops location movod to "system/dev/<dev-name>/sops/sops-conf.nix"
- flake devices declaration changes
- whole flake update
This commit is contained in:
danny 2025-10-14 16:49:03 +08:00
parent 321f740af0
commit 6a71b601f5
116 changed files with 2576 additions and 3634 deletions

View file

@ -34,7 +34,7 @@ in
systemctl --user start "$SERVICE_NAME"
notify-send ${
optionalString (notify-icon != "") "-i ${notify-icon}"
}"${icon} ''\${SERVICE_NAME^}" "starting"
} "${icon} ''\${SERVICE_NAME^}" "starting"
fi
esac
@ -48,4 +48,47 @@ in
jq -nc --argjson a "$json1" --argjson b "$EXTRA_JSON" '$a + $b'
'';
grafana = {
mkDashboard =
{
name,
src,
templateList,
conf ? { },
}:
let
template = toJSON templateList;
in
pkgs.stdenvNoCC.mkDerivation (
{
inherit src;
pname = "${name}-grafana-dashboard-srouce";
version = "1.0";
dontBuild = true;
nativeBuildInputs = with pkgs; [ jq ];
installPhase = ''
PROM_TEMPLATE='${template}'
OUTPUT_PATH="$out"
mkdir -p $out
if [ -f "$src" ]; then
echo "adding template filename: $(basename $src)"
jq --argjson TEMPLATE "$PROM_TEMPLATE" '.templating.list += $TEMPLATE' \
"$src" > "$OUTPUT_PATH/$(basename $src)"
else
find . -name "*.json" | while read DASHBOARD_FILE; do
echo "adding template filename: $DASHBOARD_FILE"
jq --argjson TEMPLATE "$PROM_TEMPLATE" '
.templating.list += $TEMPLATE
' "$DASHBOARD_FILE" > "$OUTPUT_PATH/$DASHBOARD_FILE"
done
fi
'';
}
// conf
);
};
}