From 9e743d18ca3ec6ff22f0a68fc5d0d3041a069f78 Mon Sep 17 00:00:00 2001 From: Chaos Date: Sun, 20 Nov 2022 13:34:36 +0000 Subject: [PATCH] misskey update --- flake.lock | 6 ++--- hosts/hetzner-vm/profiles/misskey.nix | 2 +- overlay/default.nix | 1 + .../misskey/default.nix | 6 ++--- overlay/misskey/meta.json | 4 +++ overlay/misskey/update.sh | 26 +++++++++++++++++++ scripts/update.sh | 1 + 7 files changed, 39 insertions(+), 7 deletions(-) rename hosts/hetzner-vm/profiles/misskey-pkg.nix => overlay/misskey/default.nix (78%) create mode 100644 overlay/misskey/meta.json create mode 100755 overlay/misskey/update.sh diff --git a/flake.lock b/flake.lock index 320bafc..ea3a2fe 100644 --- a/flake.lock +++ b/flake.lock @@ -153,11 +153,11 @@ }, "nur": { "locked": { - "lastModified": 1668923022, - "narHash": "sha256-95GW/QXMczzMZ0wSz/rRGQwi2nx5BVi0qSI6aGG4OrY=", + "lastModified": 1668947373, + "narHash": "sha256-w23XqGmDtMKr7qKc2D6A6Rfo+7xYtbloPtPod+BopQk=", "owner": "nix-community", "repo": "NUR", - "rev": "43fd9acff9fe06264ff2c045ec95cb3078c80352", + "rev": "9ee49e01512c3ce211e8017f0ba592ef4695d777", "type": "github" }, "original": { diff --git a/hosts/hetzner-vm/profiles/misskey.nix b/hosts/hetzner-vm/profiles/misskey.nix index 287ebc1..18ac59e 100644 --- a/hosts/hetzner-vm/profiles/misskey.nix +++ b/hosts/hetzner-vm/profiles/misskey.nix @@ -17,7 +17,7 @@ let stdenv ]; - misskeyPackage = pkgs.callPackage ./misskey-pkg.nix { }; + misskeyPackage = pkgs.misskey-static; misskeyConfig = { url = "https://${misskeyDomain}/"; diff --git a/overlay/default.nix b/overlay/default.nix index f223f46..510abf3 100644 --- a/overlay/default.nix +++ b/overlay/default.nix @@ -7,4 +7,5 @@ final: prev: { lsquic = final.callPackage ./invidious/lsquic.nix { }; videojs = final.callPackage ./invidious/videojs.nix { }; }; + misskey-static = final.callPackage ./misskey {}; } diff --git a/hosts/hetzner-vm/profiles/misskey-pkg.nix b/overlay/misskey/default.nix similarity index 78% rename from hosts/hetzner-vm/profiles/misskey-pkg.nix rename to overlay/misskey/default.nix index edc354d..c201f54 100644 --- a/hosts/hetzner-vm/profiles/misskey-pkg.nix +++ b/overlay/misskey/default.nix @@ -1,13 +1,13 @@ { lib, stdenv, fetchFromGitHub }: let - version = "12.119.0"; + meta = builtins.fromJSON (builtins.readFile ./meta.json); src = fetchFromGitHub { owner = "misskey-dev"; repo = "misskey"; - rev = version; - sha256 = "sha256-2ijgk9/BWndJva71XTDfnLM7oG5qFVYhwxOXUK7UA6s="; + rev = meta.rev; + sha256 = meta.sha256; }; in stdenv.mkDerivation { pname = "misskey"; diff --git a/overlay/misskey/meta.json b/overlay/misskey/meta.json new file mode 100644 index 0000000..0082b65 --- /dev/null +++ b/overlay/misskey/meta.json @@ -0,0 +1,4 @@ +{ + "rev": "12.119.0", + "sha256": "sha256-2ijgk9/BWndJva71XTDfnLM7oG5qFVYhwxOXUK7UA6s=" +} \ No newline at end of file diff --git a/overlay/misskey/update.sh b/overlay/misskey/update.sh new file mode 100755 index 0000000..9ce62f9 --- /dev/null +++ b/overlay/misskey/update.sh @@ -0,0 +1,26 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p curl jq git moreutils nix nix-prefetch +set -euo pipefail + +cd "$(dirname "${BASH_SOURCE[0]}")" + + +json_get() { + jq -r "$1" < 'meta.json' +} + +json_set() { + jq --arg x "$2" "$1 = \$x" < 'meta.json' | sponge 'meta.json' +} + +old_rev=$(json_get '.rev') +new_rev=$(curl -L "https://api.github.com/repos/misskey-dev/misskey/releases" | jq ".[0].tag_name" -r) + +if [ "$new_rev" = "$old_rev" ]; then + echo "misskey is up-to-date." + exit +fi + +json_set '.rev' "$new_rev" +new_sha256=$(nix-prefetch fetchFromGitHub --owner misskey-dev --repo misskey --rev "$new_rev") +json_set '.sha256' "$new_sha256" \ No newline at end of file diff --git a/scripts/update.sh b/scripts/update.sh index 6964181..09a06ac 100755 --- a/scripts/update.sh +++ b/scripts/update.sh @@ -4,4 +4,5 @@ SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) REPO_ROOT="${SCRIPT_DIR}/.." cd $REPO_ROOT ./overlay/invidious/update.sh +./overlay/misskey/update.sh nix flake update