summaryrefslogtreecommitdiffstats
path: root/pkgs/by-name/gh/ghostty/update.nu
blob: f2b8a65264f218ca885a19c50d0987654ed4d1d0 (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
31
32
33
34
#!/usr/bin/env nix-shell
#!nix-shell -i nu -p nushell nixfmt common-updater-scripts

let latest = ^list-git-tags --url=https://github.com/ghostty-org/ghostty
  | lines
  | sort --natural
  | last
  | str trim --left --char "v"

let current = ^nix-instantiate --eval --raw -A ghostty.version

if $latest == $current {
  print "Up to date!"
  exit
}

print $"Updating Ghostty: ($current) -> ($latest)"

^update-source-version ghostty $latest --file=./pkgs/by-name/gh/ghostty/package.nix

# Update deps.nix
http get $"https://raw.githubusercontent.com/ghostty-org/ghostty/refs/tags/v($latest)/build.zig.zon.nix"
  | ^nixfmt
  | save -f ./pkgs/by-name/gh/ghostty/deps.nix

# In extraordinary cases the DMG might take a while to be notarized by Apple
# and so it's possible for a Git tag to have no corresponding notarized DMG download.
# Don't fail here if that happens.
try {
  ^update-source-version ghostty-bin $latest --file=./pkgs/by-name/gh/ghostty-bin/package.nix
} catch {
  print "Failed to update bin package (is the DMG file uploaded yet?)"
}