diff options
Diffstat (limited to 'pkgs/applications/video/kodi-packages/addon-update-script/default.nix')
-rw-r--r-- | pkgs/applications/video/kodi-packages/addon-update-script/default.nix | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/pkgs/applications/video/kodi-packages/addon-update-script/default.nix b/pkgs/applications/video/kodi-packages/addon-update-script/default.nix new file mode 100644 index 0000000000000..17c1d45783fa0 --- /dev/null +++ b/pkgs/applications/video/kodi-packages/addon-update-script/default.nix @@ -0,0 +1,23 @@ +{ writeShellScript +, nix +, curl +, gzip +, xmlstarlet +, common-updater-scripts +}: + +{ attrPath }: + +let + url = "http://mirrors.kodi.tv/addons/matrix/addons.xml.gz"; + updateScript = writeShellScript "update.sh" '' + set -ex + + attrPath=$1 + namespace=$(${nix}/bin/nix-instantiate $systemArg --eval -E "with import ./. {}; $attrPath.namespace" | tr -d '"') + version=$(${curl}/bin/curl -s -L ${url} | ${gzip}/bin/gunzip -c | ${xmlstarlet}/bin/xml select -T -t -m "//addons/addon[@id='$namespace']" -v @version) + + ${common-updater-scripts}/bin/update-source-version "$attrPath" "$version" + ''; +in + [ updateScript attrPath ] |