about summary refs log tree commit diff
path: root/nixpkgs/pkgs/servers/web-apps/kavita/update.sh
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/servers/web-apps/kavita/update.sh')
-rwxr-xr-xnixpkgs/pkgs/servers/web-apps/kavita/update.sh20
1 files changed, 20 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/servers/web-apps/kavita/update.sh b/nixpkgs/pkgs/servers/web-apps/kavita/update.sh
new file mode 100755
index 000000000000..c2d793dc5e3f
--- /dev/null
+++ b/nixpkgs/pkgs/servers/web-apps/kavita/update.sh
@@ -0,0 +1,20 @@
+#!/usr/bin/env nix-shell
+#! nix-shell -i bash -p common-updater-scripts curl jq nix-prefetch-github prefetch-npm-deps
+
+set -euo pipefail
+
+latest_version=$(curl -s https://api.github.com/repos/Kareadita/Kavita/releases/latest | jq -r '.tag_name' | tr -d v)
+
+pushd "$(mktemp -d)"
+curl -s https://raw.githubusercontent.com/Kareadita/Kavita/v${latest_version}/UI/Web/package-lock.json -o package-lock.json
+npmDepsHash=$(prefetch-npm-deps package-lock.json)
+rm -f package-lock.json
+popd
+
+update-source-version kavita "$latest_version"
+
+pushd "$(dirname "${BASH_SOURCE[0]}")"
+sed -E 's#\bnpmDepsHash = ".*?"#npmDepsHash = "'"$npmDepsHash"'"#' -i default.nix
+popd
+
+$(nix-build -A kavita.backend.fetch-deps --no-out-link)