about summary refs log tree commit diff
path: root/nixpkgs/pkgs/servers/monitoring/grafana/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/servers/monitoring/grafana/plugins')
-rw-r--r--nixpkgs/pkgs/servers/monitoring/grafana/plugins/default.nix7
-rw-r--r--nixpkgs/pkgs/servers/monitoring/grafana/plugins/doitintl-bigquery-datasource/default.nix13
-rw-r--r--nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafadruid-druid-datasource/default.nix13
-rw-r--r--nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-clickhouse-datasource/default.nix19
-rw-r--r--nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-clock-panel/default.nix13
-rw-r--r--nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-piechart-panel/default.nix13
-rw-r--r--nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-plugin.nix41
-rw-r--r--nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-polystat-panel/default.nix13
-rw-r--r--nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-worldmap-panel/default.nix13
-rw-r--r--nixpkgs/pkgs/servers/monitoring/grafana/plugins/plugins.nix17
-rw-r--r--nixpkgs/pkgs/servers/monitoring/grafana/plugins/redis-app/default.nix13
-rw-r--r--nixpkgs/pkgs/servers/monitoring/grafana/plugins/redis-datasource/default.nix13
-rw-r--r--nixpkgs/pkgs/servers/monitoring/grafana/plugins/redis-explorer-app/default.nix13
-rwxr-xr-xnixpkgs/pkgs/servers/monitoring/grafana/plugins/update-grafana-plugin.sh8
14 files changed, 209 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/servers/monitoring/grafana/plugins/default.nix b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/default.nix
new file mode 100644
index 000000000000..95be470831c1
--- /dev/null
+++ b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/default.nix
@@ -0,0 +1,7 @@
+{ newScope, pkgs }:
+
+let
+  callPackage = newScope (pkgs // plugins);
+  plugins = import ./plugins.nix { inherit callPackage; };
+in
+  plugins
diff --git a/nixpkgs/pkgs/servers/monitoring/grafana/plugins/doitintl-bigquery-datasource/default.nix b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/doitintl-bigquery-datasource/default.nix
new file mode 100644
index 000000000000..aa8520e69b8e
--- /dev/null
+++ b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/doitintl-bigquery-datasource/default.nix
@@ -0,0 +1,13 @@
+{ grafanaPlugin, lib }:
+
+grafanaPlugin rec {
+  pname = "doitintl-bigquery-datasource";
+  version = "2.0.3";
+  zipHash = "sha256-QxUNRsO1ony+6tVdpwx3P/63XNIdAVIren6hUwChf9E=";
+  meta = with lib; {
+    description = "BigQuery DataSource for Grafana";
+    license = licenses.mit;
+    maintainers = with maintainers; [ jwygoda ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafadruid-druid-datasource/default.nix b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafadruid-druid-datasource/default.nix
new file mode 100644
index 000000000000..a5ed12fbfa47
--- /dev/null
+++ b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafadruid-druid-datasource/default.nix
@@ -0,0 +1,13 @@
+{ grafanaPlugin, lib }:
+
+grafanaPlugin rec {
+  pname = "grafadruid-druid-datasource";
+  version = "1.4.1";
+  zipHash = "sha256-7atxqRqKqop6ABQ+ead6wR/YRpJaV8j/Ri4VB9FXMu8=";
+  meta = with lib; {
+    description = "Connects Grafana to Druid";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ nukaduka ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-clickhouse-datasource/default.nix b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-clickhouse-datasource/default.nix
new file mode 100644
index 000000000000..355153937b43
--- /dev/null
+++ b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-clickhouse-datasource/default.nix
@@ -0,0 +1,19 @@
+{ grafanaPlugin, lib }:
+
+grafanaPlugin rec {
+  pname = "grafana-clickhouse-datasource";
+  version = "3.3.0";
+  zipHash = {
+    x86_64-linux = "sha256-FkOX/2vPmLtxe/oOISldlVhayy7AwfFxLeiwJ5TNgYY=";
+    aarch64-linux = "sha256-4rCj+NaKPZbuVohlKmSf1M6n5ng9HZMrwzBCgLPdiok=";
+    x86_64-darwin = "sha256-bpey6EwwAqXgxjvjJ6ou4rinidHCpUr+Z89YpAZK7z8=";
+    aarch64-darwin = "sha256-u/U2lu4szf9JFt/zfhGmWKH2OUqpJDNaSI69EDdi1+w=";
+  };
+  meta = with lib; {
+    description = "Connects Grafana to ClickHouse";
+    license = licenses.asl20;
+    sourceProvenance = with sourceTypes; [ binaryNativeCode ];
+    maintainers = with maintainers; [ moody yuka ];
+    platforms = attrNames zipHash;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-clock-panel/default.nix b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-clock-panel/default.nix
new file mode 100644
index 000000000000..61704eaaef34
--- /dev/null
+++ b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-clock-panel/default.nix
@@ -0,0 +1,13 @@
+{ grafanaPlugin, lib }:
+
+grafanaPlugin rec {
+  pname = "grafana-clock-panel";
+  version = "2.1.3";
+  zipHash = "sha256-ZedeV/SQsBu55jAxFyyXQefir4hEl1/TQDmaTJN9bag=";
+  meta = with lib; {
+    description = "Clock panel for Grafana";
+    license = licenses.mit;
+    maintainers = with maintainers; [ lukegb ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-piechart-panel/default.nix b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-piechart-panel/default.nix
new file mode 100644
index 000000000000..168295c64cd5
--- /dev/null
+++ b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-piechart-panel/default.nix
@@ -0,0 +1,13 @@
+{ grafanaPlugin, lib }:
+
+grafanaPlugin rec {
+  pname = "grafana-piechart-panel";
+  version = "1.6.4";
+  zipHash = "sha256-bdAl3OmZgSNB+IxxlCb81abR+4dykKkRY3MpQUQyLks=";
+  meta = with lib; {
+    description = "Pie chart panel for Grafana";
+    license = licenses.mit;
+    maintainers = with maintainers; [ lukegb ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-plugin.nix b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-plugin.nix
new file mode 100644
index 000000000000..57af5d265452
--- /dev/null
+++ b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-plugin.nix
@@ -0,0 +1,41 @@
+{ stdenvNoCC, fetchurl, unzip, lib }:
+
+{ pname, version, zipHash, meta ? {}, passthru ? {}, ... }@args:
+let plat = stdenvNoCC.hostPlatform.system; in stdenvNoCC.mkDerivation ({
+  inherit pname version;
+
+  src = if lib.isAttrs zipHash then
+    fetchurl {
+      name = "${pname}-${version}-${plat}.zip";
+      hash = zipHash.${plat} or (throw "Unsupported system: ${plat}");
+      url = "https://grafana.com/api/plugins/${pname}/versions/${version}/download" + {
+        x86_64-linux = "?os=linux&arch=amd64";
+        aarch64-linux = "?os=linux&arch=arm64";
+        x86_64-darwin = "?os=darwin&arch=amd64";
+        aarch64-darwin = "?os=darwin&arch=arm64";
+      }.${plat} or (throw "Unsupported system: ${plat}");
+    }
+  else
+    fetchurl {
+      name = "${pname}-${version}.zip";
+      hash = zipHash;
+      url = "https://grafana.com/api/plugins/${pname}/versions/${version}/download";
+    }
+  ;
+
+  nativeBuildInputs = [ unzip ];
+
+  installPhase = ''
+    cp -R "." "$out"
+    chmod -R a-w "$out"
+    chmod u+w "$out"
+  '';
+
+  passthru = {
+    updateScript = [ ./update-grafana-plugin.sh pname ];
+  } // passthru;
+
+  meta = {
+    homepage = "https://grafana.com/grafana/plugins/${pname}";
+  } // meta;
+} // (builtins.removeAttrs args [ "zipHash" "pname" "version" "sha256" "meta" ]))
diff --git a/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-polystat-panel/default.nix b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-polystat-panel/default.nix
new file mode 100644
index 000000000000..ff06ec2137bd
--- /dev/null
+++ b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-polystat-panel/default.nix
@@ -0,0 +1,13 @@
+{ grafanaPlugin, lib }:
+
+grafanaPlugin rec {
+  pname = "grafana-polystat-panel";
+  version = "2.1.4";
+  zipHash = "sha256-15mi5NzbbWXJ/69VEwUS058atQ+z2g4C3T9/b+/Exwk=";
+  meta = with lib; {
+    description = "Hexagonal multi-stat panel for Grafana";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ lukegb ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-worldmap-panel/default.nix b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-worldmap-panel/default.nix
new file mode 100644
index 000000000000..630e5833667c
--- /dev/null
+++ b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/grafana-worldmap-panel/default.nix
@@ -0,0 +1,13 @@
+{ grafanaPlugin, lib }:
+
+grafanaPlugin rec {
+  pname = "grafana-worldmap-panel";
+  version = "1.0.6";
+  zipHash = "sha256-/lgsdBEL9HdJX1X1Qy0THBlYdUUI8SRtgF1Wig1Ktpk=";
+  meta = with lib; {
+    description = "World Map panel for Grafana";
+    license = licenses.mit;
+    maintainers = with maintainers; [ lukegb ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/monitoring/grafana/plugins/plugins.nix b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/plugins.nix
new file mode 100644
index 000000000000..8bbd738f7ab9
--- /dev/null
+++ b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/plugins.nix
@@ -0,0 +1,17 @@
+{ callPackage }:
+{
+  inherit callPackage;
+
+  grafanaPlugin = callPackage ./grafana-plugin.nix { };
+
+  doitintl-bigquery-datasource = callPackage ./doitintl-bigquery-datasource { };
+  grafadruid-druid-datasource = callPackage ./grafadruid-druid-datasource { };
+  grafana-clickhouse-datasource = callPackage ./grafana-clickhouse-datasource { };
+  grafana-clock-panel = callPackage ./grafana-clock-panel { };
+  grafana-piechart-panel = callPackage ./grafana-piechart-panel { };
+  grafana-polystat-panel = callPackage ./grafana-polystat-panel { };
+  grafana-worldmap-panel = callPackage ./grafana-worldmap-panel { };
+  redis-app = callPackage ./redis-app { };
+  redis-datasource = callPackage ./redis-datasource { };
+  redis-explorer-app = callPackage ./redis-explorer-app { };
+}
diff --git a/nixpkgs/pkgs/servers/monitoring/grafana/plugins/redis-app/default.nix b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/redis-app/default.nix
new file mode 100644
index 000000000000..f3dedc247bdb
--- /dev/null
+++ b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/redis-app/default.nix
@@ -0,0 +1,13 @@
+{ grafanaPlugin, lib }:
+
+grafanaPlugin rec {
+  pname = "redis-app";
+  version = "2.2.1";
+  zipHash = "sha256-1ZzJaGhlM6CaTecj69aqJ9fqN7wYSsiDCMTRVkZJUb0=";
+  meta = with lib; {
+    description = "Redis Application plugin for Grafana";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ azahi ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/monitoring/grafana/plugins/redis-datasource/default.nix b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/redis-datasource/default.nix
new file mode 100644
index 000000000000..4d21fe4fffec
--- /dev/null
+++ b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/redis-datasource/default.nix
@@ -0,0 +1,13 @@
+{ grafanaPlugin, lib }:
+
+grafanaPlugin rec {
+  pname = "redis-datasource";
+  version = "2.2.0";
+  zipHash = "sha256-a4at8o185XSOyNxZZKfb0/j1CVoKQ9JZx0ofoPUBqKs=";
+  meta = with lib; {
+    description = "Redis Data Source for Grafana";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ azahi ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/monitoring/grafana/plugins/redis-explorer-app/default.nix b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/redis-explorer-app/default.nix
new file mode 100644
index 000000000000..e58da0bebd83
--- /dev/null
+++ b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/redis-explorer-app/default.nix
@@ -0,0 +1,13 @@
+{ grafanaPlugin, lib }:
+
+grafanaPlugin rec {
+  pname = "redis-explorer-app";
+  version = "2.1.1";
+  zipHash = "sha256-t5L9XURNcswDbZWSmehs/JYU7NoEwhX1If7ghbi509g=";
+  meta = with lib; {
+    description = "Redis Explorer plugin for Grafana";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ azahi ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/nixpkgs/pkgs/servers/monitoring/grafana/plugins/update-grafana-plugin.sh b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/update-grafana-plugin.sh
new file mode 100755
index 000000000000..dd8f050c633c
--- /dev/null
+++ b/nixpkgs/pkgs/servers/monitoring/grafana/plugins/update-grafana-plugin.sh
@@ -0,0 +1,8 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p curl jq common-updater-scripts
+
+set -eu -o pipefail
+
+readonly plugin_name="$1"
+readonly latest_version="$(curl "https://grafana.com/api/plugins/${plugin_name}" | jq -r .version)"
+update-source-version "grafanaPlugins.${plugin_name}" "$latest_version"