about summary refs log tree commit diff
path: root/nixpkgs/pkgs/by-name/au/audiobookshelf/update.nu
blob: 25166c9cf1d11cbb1938be2c9e4dad922e423bfd (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
#!/usr/bin/env nix-shell
#!nix-shell -i nu -p nushell common-updater-scripts prefetch-npm-deps

def main [] {
  let sourceFile = $"(pwd)/pkgs/by-name/au/audiobookshelf/source.json"
  let tags = list-git-tags --url=https://github.com/advplyr/audiobookshelf | lines | sort --natural | str replace v ''

  let latest_tag = $tags | last
  let current_version = open $sourceFile | get version

  if $latest_tag != $current_version {
    let source = nix-prefetch-github advplyr audiobookshelf --rev $"v($latest_tag)" | from json | merge { version: $latest_tag, depsHash: "", clientDepsHash: ""}
    $source | save --force $sourceFile

    let srcPath = nix-build $env.PWD -A audiobookshelf.src | complete | get stdout | lines | first

    print $srcPath
    ls $srcPath

    $source | merge {
      depsHash: (prefetch-npm-deps $"($srcPath)/package-lock.json"),
      clientDepsHash: (prefetch-npm-deps $"($srcPath)/client/package-lock.json")
    } | save --force $sourceFile

    # appease the editorconfig CI check
    echo "\n" | save --append $sourceFile
  }

  {before: $current_version, after: $latest_tag}
}