V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
lbyo
V2EX  ›  macOS

0202 年要过去了,通过 Homebrew Cask 安装的软件有什么优雅的升级方法?

  •  
  •   lbyo · 2020-11-12 10:45:01 +08:00 · 3302 次点击
    这是一个创建于 1465 天前的主题,其中的信息可能已经有所发展或是发生改变。
    • brew-cask-upgrade 有一个问题,就是它会把软件卸载再重装,严格意义上讲,这并不算升级..并且如果你在应用程序内不小心点了(特别是微信之流)更新,那么它也不会显示出来你更新后的版本。重要的是还有一些奇怪的报错:

      1. Error: Checksum for Cask 'wechat' does not match. 类似的 isssue

      2. Brooklyn.saver: It seems the Screen Saver source '/Users/User Name/Library/Screen Savers/Brooklyn.saver' is not there. 这应该是我重命名用户文件夹后导致的,可能更多的是我个人的问题

      3. 还有某些软件卸载以后,有几率出现残留文件因为权限不够导致清除不掉的情况,比如 Error: Permission denied @ apply2files - /usr/local/lib/docker/cli-plugins

        3.1 sudo chmod -R g+rwx /usr/local/* 命令大概可以解决,但我一般都是直接卸载 Homebrew 重装(强迫症)

    • 通过应用自身更新也可以,就是比较麻烦;个人还是希望能通过类似 mas 之类的 Cli 来统一管理

    在使用 brew-cask-upgrade 过程中还有一些不怎么常见报错,就不列出了;上面这些问题谷歌的话,基本都可以找到解决方案,但实在是增加使用者的心智负担。

    brew-cask-upgrade 卸载重装的方式还有一个不好的点就是,虽然它没有删除使用数据,但是打开更新后的软件,有一些系统设置恢复默认值了,需要你重新设置,比如 Notifications

    昨天重装 Homebrew 以后,能从 App Store 下载的都已经改从 App Store 下载了(和一年前的做法反转了)

    28 条回复    2020-12-23 03:03:48 +08:00
    idlerlestat
        1
    idlerlestat  
       2020-11-12 10:57:03 +08:00
    删除 homebrew 重装太折腾了,可以删除对应的 cask 再重装
    lbyo
        2
    lbyo  
    OP
       2020-11-12 11:00:47 +08:00
    @idlerlestat #1 有些时候,出现一些报错,虽然可以解决掉;但积攒起来就会感觉有些看不到的地方被污染了,心里非常不舒服,只想卸载重装。
    昨天甚至把系统重装了,10.15.2 给我升到了 10.15.7 欲哭无泪。
    被 brew-cask-upgrade 搞得有点心力憔悴
    chendy
        3
    chendy  
       2020-11-12 11:02:15 +08:00   ❤️ 1
    微信这种自带升级的软件为啥要走 cask 呢
    lbyo
        4
    lbyo  
    OP
       2020-11-12 11:06:50 +08:00
    @chendy #3
    > 通过应用自身更新也可以,就是比较麻烦;个人还是希望能通过类似 mas 之类的 Cli 来统一管理
    wangkun025
        5
    wangkun025  
       2020-11-12 11:42:52 +08:00
    按照我的理解,不是删除已经下载的包就可以了吗?
    wydone
        6
    wydone  
       2020-11-12 11:46:06 +08:00   ❤️ 2
    如果非要像 Windows 那样管理软件升级,可以使用 Latest, a small utility app for the Mac.
    https://github.com/mangerlahn/Latest
    lbyo
        7
    lbyo  
    OP
       2020-11-12 11:47:50 +08:00
    @wangkun025 #5
    不是,是先卸载、后安装
    因为每次更新再次打开以后都会随机出现此网页内列出的某条提示: https://support.apple.com/zh-cn/HT202491
    lbyo
        8
    lbyo  
    OP
       2020-11-12 11:49:44 +08:00
    @wydone #6 多谢,我去看一下🙏
    wangkun025
        9
    wangkun025  
       2020-11-12 11:55:01 +08:00
    @lbyo 我就喜欢弹出这个新的提示啊。可能我这边提示不多,每次重新设置一下,就觉得好安心。
    lbyo
        10
    lbyo  
    OP
       2020-11-12 12:36:52 +08:00
    @wangkun025 #9 我没说喜欢不喜欢,我只是说:这代表你打开的是新装的软件而不是更新的呀...
    即不是删除已经下载的包
    tianshilei1992
        11
    tianshilei1992  
       2020-11-12 12:39:40 +08:00
    @wydone 这是一个好 app,但是一年多没更新了…
    wangkun025
        12
    wangkun025  
       2020-11-12 12:49:55 +08:00
    @lbyo 嗯,是的。
    lbyo
        13
    lbyo  
    OP
       2020-11-12 12:51:55 +08:00
    @tianshilei1992 #11 看了一下,今年的 issue 都没回复,不知道是不是弃了
    lostberryzz
        14
    lostberryzz  
       2020-11-12 13:09:16 +08:00   ❤️ 1
    cask 并不是统一标准,尽量别用它来装 app,我只用它来装 quicklook 插件
    tairan2006
        15
    tairan2006  
       2020-11-12 13:56:11 +08:00   ❤️ 1
    cask 少用
    lbyo
        16
    lbyo  
    OP
       2020-11-12 14:01:36 +08:00
    @lostberryzz @tairan2006 主要还是许多开源的软件都提供了这么一个选项,以后会注意
    reus
        17
    reus  
       2020-11-12 14:43:47 +08:00 via Android
    用 nix,不用 homebrew
    goalidea
        18
    goalidea  
       2020-11-12 15:35:57 +08:00
    官方本来就提供更新功能,你自己不仔细看 man 手册。brew upgrade --cask --greedy [需要更新的 cask 软件名,如果没有的话更新全部已安装 cask 软件]
    lbyo
        19
    lbyo  
    OP
       2020-11-12 15:44:26 +08:00
    @goalidea #18
    我确实没注意到这条命令,刚刚试了一下,这也是先卸载再安装的“更新”方式,
    crownzzz
        20
    crownzzz  
       2020-11-12 16:37:08 +08:00
    我现在一般都是用 cask 装,然后使用 app 自带更新,这样重装系统比较快。。。
    lbyo
        21
    lbyo  
    OP
       2020-11-12 17:05:59 +08:00
    @crownzzz #20
    啊?抱歉没看懂,「用 cask 装,然后使用 app 自带更新」 跟 「重装系统比较快」 的关系是?
    astkaasa
        22
    astkaasa  
       2020-11-12 17:40:19 +08:00
    brew update && brew upgrade && brew cleanup && brew upgrade --cask
    lbyo
        23
    lbyo  
    OP
       2020-11-12 17:43:46 +08:00
    @astkaasa #22 看一下 19L,`brew upgrade --cask` 也是卸载再安装
    crownzzz
        24
    crownzzz  
       2020-11-12 17:50:25 +08:00   ❤️ 1
    @lbyo 抹盘重装不用去 app 官网下,一个 brew bundle 就行了
    lbyo
        25
    lbyo  
    OP
       2020-11-12 17:54:43 +08:00
    @crownzzz #24 懂了,🙏
    wydone
        26
    wydone  
       2020-12-22 12:06:52 +08:00
    @tianshilei1992 @lbyo Latest 更新啦
    lbyo
        27
    lbyo  
    OP
       2020-12-22 13:04:19 +08:00
    @wydone #26 是的,作者之前虽然没更新,但我提了个 issue 回复的挺及时的
    tianshilei1992
        28
    tianshilei1992  
       2020-12-23 03:03:48 +08:00
    @wydone Cool! 感谢告知!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2697 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 12:21 · PVG 20:21 · LAX 04:21 · JFK 07:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.