diff --git a/pkgs/servers/home-assistant/custom-components/blitzortung/package.nix b/pkgs/servers/home-assistant/custom-components/blitzortung/package.nix new file mode 100644 index 000000000000..3982a1142782 --- /dev/null +++ b/pkgs/servers/home-assistant/custom-components/blitzortung/package.nix @@ -0,0 +1,43 @@ +{ + lib, + buildHomeAssistantComponent, + fetchFromGitHub, + paho-mqtt, + pytest-homeassistant-custom-component, + pytestCheckHook, +}: + +buildHomeAssistantComponent (finalAttrs: { + owner = "mrk-its"; + domain = "blitzortung"; + version = "1.5.0"; + + src = fetchFromGitHub { + owner = "mrk-its"; + repo = "homeassistant-blitzortung"; + tag = "v${finalAttrs.version}"; + hash = "sha256-hed7XBBV7LID12Md0FWA0KkAjEH0RB7MQ1XJOm0W3sw="; + }; + + dependencies = [ + paho-mqtt + ]; + + nativeCheckInputs = [ + pytest-homeassistant-custom-component + pytestCheckHook + ]; + + disabledTests = [ + # 2026.5.0 compat issue + "test_connect_with_server_stats" + ]; + + meta = { + description = "Custom Component for fetching lightning data from blitzortung.org"; + homepage = "https://github.com/mrk-its/homeassistant-blitzortung"; + changelog = "https://github.com/mrk-its/homeassistant-blitzortung/releases/tag/${finalAttrs.src.tag}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ hexa ]; + }; +}) diff --git a/pkgs/servers/home-assistant/custom-lovelace-modules/weather-radar-card/package.nix b/pkgs/servers/home-assistant/custom-lovelace-modules/weather-radar-card/package.nix new file mode 100644 index 000000000000..8e1bfacc40e1 --- /dev/null +++ b/pkgs/servers/home-assistant/custom-lovelace-modules/weather-radar-card/package.nix @@ -0,0 +1,45 @@ +{ + lib, + buildNpmPackage, + fetchFromGitHub, + nix-update-script, +}: + +buildNpmPackage (finalAttrs: { + pname = "weather-radar-card"; + version = "3.6.5"; + + src = fetchFromGitHub { + owner = "jpettitt"; + repo = "weather-radar-card"; + tag = "v${finalAttrs.version}"; + hash = "sha256-D+aWTcUOVkt99mdl3q1VahJKXDBIbh6RX3psYsjnTLo="; + }; + + npmDepsFetcherVersion = 2; + npmFlags = [ "--legacy-peer-deps" ]; + npmDepsHash = "sha256-S3PZOcKBseohCKOUSRFCQj6fAJTrZLRD5916iB35rrc="; + + installPhase = '' + runHook preInstall + + mkdir $out + shopt -s extglob + cp -r dist/!(*.gz) $out/ + + runHook postInstall + ''; + + passthru.updateScript = nix-update-script { }; + + __structuredAttrs = true; + + meta = { + description = "Rrain radar card using the tiled images from RainViewer"; + homepage = "https://github.com/jpettitt/weather-radar-card"; + changelog = "https://github.com/jpettitt/weather-radar-card/blob/${finalAttrs.src.rev}/CHANGELOG.md"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ hexa ]; + platforms = lib.platforms.linux; + }; +})