From 2c253d51709c7e2957a7028e409688f7d14ef757 Mon Sep 17 00:00:00 2001
From: lassulus <lassulus@lassul.us>
Date: Tue, 13 Dec 2022 15:39:44 +0100
Subject: [PATCH] pkgs.stable-interrogate: init

---
 .../simple/stable-interrogate/default.nix     | 30 +++++++++++++++++++
 1 file changed, 30 insertions(+)
 create mode 100644 krebs/5pkgs/simple/stable-interrogate/default.nix

diff --git a/krebs/5pkgs/simple/stable-interrogate/default.nix b/krebs/5pkgs/simple/stable-interrogate/default.nix
new file mode 100644
index 000000000..7cc7509eb
--- /dev/null
+++ b/krebs/5pkgs/simple/stable-interrogate/default.nix
@@ -0,0 +1,30 @@
+{ pkgs, lib, ... }:
+
+pkgs.writers.writeBashBin "stable-interrogate" ''
+  set -xefu
+  set -o pipefail
+
+  export PATH=${lib.makeBinPath [
+    pkgs.coreutils
+    pkgs.curl
+    pkgs.jq
+  ]}
+
+  STABLE_URL=''${STABLE_URL:-http://stable-confusion.r}
+
+  (if test -e "$1"; then
+    cat "$1"
+  elif [[ "$1" =~ ^https?: ]]; then
+    curl -fSs "$1"
+  else
+    echo 'input not recognized' >&2
+    exit 1
+  fi) | base64 |
+    jq -Rsrc '{
+      image: .,
+      model: "deepdanbooru", # clip is broken right now :(
+    }' |
+    curl -Ssf "$STABLE_URL/sdapi/v1/interrogate" \
+      -X POST -H 'Content-Type: application/json' -d @- |
+    jq -r '.caption'
+''