buresdv / Cork

A fast GUI for Homebrew written in SwiftUI
https://corkmac.app
1.91k stars 112 forks source link

Visual indicator to show outdated casks & option to upgrade --greedy #348

Closed ianjukes closed 1 week ago

ianjukes commented 1 month ago

There is no visual indicator if a cask is outdated, and the update/upgrade process does not work on casks that have in-application updates. It would be great to see which casks are out of date, and then have the option to brew upgrade the cask by choice (i.e. a --greedy).

Hope that makes sense!

buresdv commented 1 month ago

Hey, thanks for the input!

Concerning the Casks with in-app updates, (as far as I know) those will never work in Cork, because they don't work in Homebrew itself, either. If I understand it correctly, Casks that have in-app updates have a special entry in their definition, auto_updates, which completely opts them out of the Homebrew updating mechanism. When I was first creating the Cask entry for Cork, I accidentaly turned this on for Cork, and it completely opted it out of the Homebrew updating mechanism.

Also, could you please tell me more about the --greedy flag? I have never used it, so I'd like to know your use case :)

ianjukes commented 2 weeks ago

Hi @buresdv. Apologies for the late reply.

Actually, you can update casks with in-app updates in Homebrew. I do it all the time, and that is the use case I was asking to support. You are correct in your understanding that casks with the auto_updates entry in their definition opts them out of the Homebrew updating mechanism. However, the --greedy flag ignores this and updates them anyway, even if auto_updates is set.

When I install any macOS app via a Homebrew cask, I switch off auto updating inside that app via its settings in macOS. I then use the Homebrew process to do the updates -- and it works great. I don't think I'm the only one to do this. It means I can update all my non Mac App Store apps in one go -- rather than having to launch each one individually.

Does that make sense??

What I would love to see in Cork is a setting (maybe in preferences?) that allows me to add the --greedy flag for cask updates. And I would love to see a visual icon in the sidebar next to any formulae or cask that is out-of-date and in need of an update.

Thanks!

buresdv commented 1 week ago

I think I understand. That's an interesting use case I'll look into.

Speaking of the outdated indicator, that has been implemented 1.4.3, check it out in the changelog: https://blog.corkmac.app/p/cork-143-out-bugfixes-and-optimizations 👍

ianjukes commented 1 week ago

Speaking of the outdated indicator, that has been implemented 1.4.3, check it out in the changelog: https://blog.corkmac.app/p/cork-143-out-bugfixes-and-optimizations 👍

Ahhhh!!!! I had missed this. Fantastic. I think because the icon is so subtle I visually missed them. I was expecting to see something like a ⚠️ or ‼️

buresdv commented 1 week ago

Could you please direct the discussion to #362? I created it so that it's only about the --greedy flag and not the outdated package indicator :)