From 605d340aa0d2a396ddf352ab690a137a783bdfa0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Motiejus=20Jak=C5=A1tys?= Date: Sun, 15 Sep 2024 07:36:17 +0300 Subject: [PATCH] rewrite weather in go --- flake.nix | 24 ++++--- hosts/fwminex/configuration.nix | 4 +- pkgs/weather/default.nix | 6 ++ pkgs/weather/go.mod | 3 + pkgs/weather/main | 43 ------------ pkgs/weather/main.go | 118 ++++++++++++++++++++++++++++++++ 6 files changed, 142 insertions(+), 56 deletions(-) create mode 100644 pkgs/weather/default.nix create mode 100644 pkgs/weather/go.mod delete mode 100755 pkgs/weather/main create mode 100644 pkgs/weather/main.go diff --git a/flake.nix b/flake.nix index c597fac..5e065a6 100644 --- a/flake.nix +++ b/flake.nix @@ -94,6 +94,7 @@ deploy-rs-pkg = null; }) (_: super: { + weather = super.callPackage ./pkgs/weather { }; nicer = super.callPackage ./pkgs/nicer.nix { }; imapsync = super.callPackage ./pkgs/imapsync.nix { }; tmuxbash = super.callPackage ./pkgs/tmuxbash.nix { }; @@ -305,19 +306,20 @@ }; formatter = pkgs.nixfmt-rfc-style; - } ) - // { - packages.x86_64-linux.vanta-agent = - let - pkgs = import nixpkgs { - inherit overlays; - system = "x86_64-linux"; - }; - in - pkgs.vanta-agent; - }; + // ( + let + pkgs = import nixpkgs { + inherit overlays; + system = "x86_64-linux"; + }; + in + { + packages.x86_64-linux.vanta-agent = pkgs.vanta-agent; + packages.x86_64-linux.weather = pkgs.weather; + } + ); } diff --git a/hosts/fwminex/configuration.nix b/hosts/fwminex/configuration.nix index 40268a5..60a0a0e 100644 --- a/hosts/fwminex/configuration.nix +++ b/hosts/fwminex/configuration.nix @@ -95,8 +95,8 @@ in bash ]; serviceConfig = { - type = "notify"; - ExecStart = "${pkgs.systemd}/bin/systemd-socket-activate -a --inetd -l ${toString myData.ports.exporters.weather} ${../../pkgs/weather/main}"; + type = "simple"; + ExecStart = "${pkgs.weather}/bin/weather"; ProtectSystem = "strict"; }; }; diff --git a/pkgs/weather/default.nix b/pkgs/weather/default.nix new file mode 100644 index 0000000..b9bec98 --- /dev/null +++ b/pkgs/weather/default.nix @@ -0,0 +1,6 @@ +{ buildGoModule }: +buildGoModule { + name = "weather"; + src = ./.; + vendorHash = null; +} diff --git a/pkgs/weather/go.mod b/pkgs/weather/go.mod new file mode 100644 index 0000000..4de4fc1 --- /dev/null +++ b/pkgs/weather/go.mod @@ -0,0 +1,3 @@ +module git.jakstys.lt/motiejus/config/pkgs/weather + +go 1.19 diff --git a/pkgs/weather/main b/pkgs/weather/main deleted file mode 100755 index 5878090..0000000 --- a/pkgs/weather/main +++ /dev/null @@ -1,43 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail - -STATION=vilniaus-ams -TODAY=${1:-$(date +%F)} - -export TZ=UTC -sed -e 's/$/\r/' <