diff --git a/Casks/m/mixin.rb b/Casks/m/mixin.rb index d7bf359d2d..b229d3cdd1 100644 --- a/Casks/m/mixin.rb +++ b/Casks/m/mixin.rb @@ -7,9 +7,23 @@ cask "mixin" do desc "Cryptocurrency wallet" homepage "https://github.com/MixinNetwork/flutter-app" + # Not every GitHub release provides a file for macOS, so we check multiple + # recent releases instead of only the "latest" release. livecheck do url :url - strategy :github_latest + regex(/^mixin[._-]v?(\d+(?:\.\d+)+)\.(?:dmg|pkg|zip)$/i) + strategy :github_releases do |json, regex| + json.map do |release| + next if release["draft"] || release["prerelease"] + + release["assets"]&.map do |asset| + match = asset["name"]&.match(regex) + next if match.blank? + + match[1] + end + end.flatten + end end auto_updates true