aboutsummaryrefslogtreecommitdiff
path: root/infra/libkookie/nixpkgs/pkgs/servers/zigbee2mqtt/update.sh
blob: 7fd32dff4634b524f3de0519f4c11c4cd17c9276 (plain)
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
#!/usr/bin/env nix-shell
#! nix-shell -i bash -p nodePackages.node2nix nodejs-12_x curl jq nix-update

CURRENT_VERSION=$(nix eval --raw '(with import ../../.. {}; zigbee2mqtt.version)')
TARGET_VERSION=$(curl https://api.github.com/repos/Koenkk/zigbee2mqtt/releases/latest | jq -r ".tag_name")
ZIGBEE2MQTT=https://github.com/Koenkk/zigbee2mqtt/raw/$TARGET_VERSION

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

wget $ZIGBEE2MQTT/package.json
wget $ZIGBEE2MQTT/npm-shrinkwrap.json

node2nix --nodejs-12 \
  -l npm-shrinkwrap.json \
  -c node.nix \
  --bypass-cache \
  --no-copy-node-env \
  --node-env ../../development/node-packages/node-env.nix
rm package.json npm-shrinkwrap.json

{
    cd ../../..
    nix-update --version "$TARGET_VERSION" --build zigbee2mqtt
}

git add ./default.nix ./node-packages.nix ./node.nix
git commit -m "zigbee2mqtt: ${CURRENT_VERSION} -> ${TARGET_VERSION}"