about summary refs log tree commit diff
path: root/pkgs/servers/zigbee2mqtt/update.sh
blob: 72c8caa00f60a75a9c40a89fa0f21c163ed48b7c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#!/usr/bin/env nix-shell
#! nix-shell -i bash -p nodePackages.node2nix curl jq nix-update common-updater-scripts

set -euo pipefail

SCRIPT_DIR="$(dirname "$0")"
cd "$SCRIPT_DIR"

CURRENT_VERSION=$(nix eval -f ../../.. --raw zigbee2mqtt.version)
TARGET_VERSION="$(curl https://api.github.com/repos/Koenkk/zigbee2mqtt/releases/latest | jq -r ".tag_name")"

if [[ "$CURRENT_VERSION" == "$TARGET_VERSION" ]]; then
    echo "zigbee2mqtt is up-to-date: ${CURRENT_VERSION}"
    exit 0
fi

ZIGBEE2MQTT=https://github.com/Koenkk/zigbee2mqtt/raw/$TARGET_VERSION
curl -LO $ZIGBEE2MQTT/package.json
curl -LO $ZIGBEE2MQTT/package-lock.json

node2nix \
  --composition node.nix \
  --lock package-lock.json \
  --development \
  --no-copy-node-env \
  --node-env ../../development/node-packages/node-env.nix \
  --nodejs-14 \
  --output node-packages.nix

rm package.json package-lock.json

(
    cd ../../../
    update-source-version zigbee2mqtt "$TARGET_VERSION"
)