hhylx1950
V2EX  ›  macOS

请问大家的 homebrew 安装和升级软件是不是也很慢?

  •  
  •   hhylx1950 · Mar 3, 2023 · 7285 views
    This topic created in 1167 days ago, the information mentioned may be changed or developed.

    如题,我一般用 homebrew 装一些 ffmpeg 之类的命令行工具,体验非常差,基本每次安装都要等两三分钟更新。而 linux 上的类似工具比如 apt 相比之下无论升级还是安装新软件都非常迅速。我已经换了清华源来更新,所以应该不是网络问题,但是还是很慢,体感似乎是 git 计算 diff 那一步要很久。想问一下大家是不是也是这样?

    另外,homebrew 上很多包都用了 github 来打包;由于大家都懂的原因,下载速度简直惨不忍睹,不知道这部分有没有可能找到国内镜像?

    如果实在没办法,我打算换 macports ,大家有用过吗,体验如何?

    Supplement 1  ·  Mar 4, 2023
    感谢大家的帮助。最后总结一下,Homebrew 4.0 之后,不用代理的情况下,要变快的方法:

    1. 避免用 git 更新 formula 和 cask ,如 @clrss 所言,untap core 和 cask ;
    2. 加大自动更新间隔;还有不要让 brew 每次都 update ,因为 brew 本身还是用 git ,挺慢的。感谢 @yianing 和 @clrss;
    3. 遇到问题用-vd 看一下卡在哪里,国内有些 homebrew 镜像似乎有问题,git 会卡住。

    当然代理还是最方便的办法。以上这些搞完,brew 的速度还凑合;等忙完这阵子,我打算换 macports 试试。
    39 replies    2023-03-05 15:02:59 +08:00
    Gave2620
        1
    Gave2620  
       Mar 3, 2023
    或许可以试试 Nix ?
    BrettD
        2
    BrettD  
       Mar 3, 2023 via iPhone
    人在墙外使用 Homebrew 没有遇到过这种问题
    unneeded
        3
    unneeded  
       Mar 3, 2023
    homebrew 换源是很迷的,我刚刚更新的时候还都是从 githubcontent 拿数据,开个梯子就秒下
    这个问题估计难解决
    yjim
        4
    yjim  
       Mar 3, 2023
    代理全局跑基本上没有很慢的情况。。不开代理就很慢
    chendy
        5
    chendy  
       Mar 3, 2023
    不慢,因为挂梯子
    早年折腾过换源,各种问题,最后老老实实 http_proxy 解决了…
    regothic
        6
    regothic  
       Mar 3, 2023
    @chendy +1 ,brew 之前先 http_proxy 一把,省心省力
    richarddingcn
        7
    richarddingcn  
       Mar 3, 2023
    brew 有清华源啊
    kaz10025
        9
    kaz10025  
       Mar 3, 2023
    直接终端走代理...换源麻烦
    shakaraka
        10
    shakaraka  
    PRO
       Mar 3, 2023
    用代理即可。很快很简单,写个脚本就行了
    goodryb
        11
    goodryb  
       Mar 3, 2023
    换源之后速度正常,4.x 以后都版本还要配置个 API 的源,不然拉 json 文件很慢
    wzcloud
        12
    wzcloud  
       Mar 3, 2023
    和 8 楼一样,用清华的镜像源
    MID
        13
    MID  
       Mar 3, 2023
    用全局代理,代理一下终端就好了,很快的
    rammiah
        14
    rammiah  
       Mar 3, 2023
    export HOMEBREW_NO_AUTO_UPDATE=1
    禁止每次安装时自动更新
    Tearia
        15
    Tearia  
       Mar 3, 2023
    都来这问了,不会还换源吧,直接终端走代理
    hhylx1950
        16
    hhylx1950  
    OP
       Mar 3, 2023
    @CenN 没有这个需求啊,我只是想简单的装几个命令行工具而已
    rrubick
        17
    rrubick  
       Mar 3, 2023   ❤️ 2
    终端挂代理
    在 zsh 文件里配置一下,使用的时候就是 proxy 或者 unsetproxy
    alias proxy="export https_proxy=http://127.0.0.1:7890
    http_proxy=http://127.0.0.1:7890 all_proxy=socks5://127.0.0.1:7890"
    alias unsetproxy="unset https_proxy && unset http_proxy && unset all_proxy"
    akring
        18
    akring  
       Mar 3, 2023   ❤️ 2
    Homebrew 4.0 以后已经不用 git 那一套而是换成 JSON 了,如果没升级可以升级看看。

    https://sspai.com/post/78587
    hhylx1950
        19
    hhylx1950  
    OP
       Mar 3, 2023
    @zhaidoudou123
    @goodryb
    @akring
    我已经更新 4.0 并且配置过新的 api 源了,不过还是会慢,原因似乎是 4.0 之前装的软件在更新的时候还会连 git ,而且还是 github 仓库而不是自己配的镜像源。不过问题还是找到了,重装一下旧软件应该能解决。感谢🙏
    oxromantic
        20
    oxromantic  
       Mar 3, 2023
    虽然你 homebrew repo 用了清华源,但这个 repo 里 link 的其他资源不一定在清华源啊,譬如 github 之类
    darksword21
        21
    darksword21  
    PRO
       Mar 3, 2023
    tui: nix
    gui: brew cask
    idlerlestat
        22
    idlerlestat  
       Mar 3, 2023
    我的操作是,brew update 走梯子,brew upgrade 不走
    Noicdi
        23
    Noicdi  
       Mar 3, 2023 via iPhone
    https://sspai.com/post/78587 ,少数派的一篇文章,其中写到了为什么 homebrew 的软件更新为啥慢
    wenyuan5
        24
    wenyuan5  
       Mar 3, 2023
    USTC Open Source Software Mirror
    https://mirrors.ustc.edu.cn/

    一直都是用中科大的源。
    shineshane
        25
    shineshane  
       Mar 3, 2023
    我升级到了 4.0 后更新奇慢,不清楚为什么,每次卡主的时候显示的总是 "git-remote-https" / "curl" / "ruby" 其中的一项,不知道在干什么,更新了清华源后还是很卡,怀疑在进行一些很慢的网络访问。有没有大佬给一下解决方案。
    zhaoxin
        26
    zhaoxin  
       Mar 3, 2023
    路由翻墙,brew 默认源,速度很快。
    love4taylor
        27
    love4taylor  
    PRO
       Mar 3, 2023
    @wenyuan5 中科大的不是很全,homebrew-cask-fonts, homebrew-cask-drivers, homebrew-cask-versions 都没有
    nrtEBH
        28
    nrtEBH  
       Mar 3, 2023   ❤️ 3
    终端开代理 一劳永逸 别折腾换源
    storyxc
        29
    storyxc  
       Mar 3, 2023
    开全局代理,我是用 clash 的增强模式
    binaryify
        30
    binaryify  
       Mar 3, 2023
    homebrew4 之后好像好多了
    wu67
        31
    wu67  
       Mar 3, 2023
    # set proxy temporarily
    alias enable_proxy="export ALL_PROXY=socks5://127.0.0.1:1080"
    # auto brew update
    alias brew_update="brew update && brew upgrade && brew upgrade --cask && brew cleanup"
    clrss
        32
    clrss  
       Mar 3, 2023
    @hhylx1950 直接 untap homebrew/core, homebrew/cask, formula 应该不会用 git 才对.

    我设了四个变量(具体的源不做推荐避免扎堆).
    export HOMEBREW_API_AUTO_UPDATE_SECS=3600
    export HOMEBREW_BREW_GIT_REMOTE=
    export HOMEBREW_API_DOMAIN=
    export HOMEBREW_BOTTLE_DOMAIN=
    hhylx1950
        33
    hhylx1950  
    OP
       Mar 3, 2023
    @clrss 对,后面我也 untap 了这些。另外还发现自己之前装了别的 tap ,就是 ntfs-3g 那个,也会导致每次 git 特别慢。还有的话就是 auto update 更新间隔像你这样调大一点,不然 brew 自己更新也挺慢。这些都弄完之后,速度还算可以接受
    1002xin
        34
    1002xin  
       Mar 4, 2023
    Surge 增强模式,终端走代理,不慢
    skywalkerfc
        35
    skywalkerfc  
       Mar 4, 2023
    @Noicdi 昨天也看到了这篇少数派的文章,明白了为啥以前这么慢
    XuanYuan
        36
    XuanYuan  
       Mar 4, 2023
    请教一下:
    升级到 4.0 之后,我用 brew update 提示 Already up-to-date ,但是直接用 brew upgrade 却会更新软件。
    已切换清华大学的源
    molvqingtai
        37
    molvqingtai  
       Mar 4, 2023 via Android
    homebrew 刚刚升级,新版不会从 github 拉代码了
    hhylx1950
        38
    hhylx1950  
    OP
       Mar 4, 2023
    @XuanYuan 没遇到过,不太清楚,可以用-vd 看一下具体过程
    systemv
        39
    systemv  
    PRO
       Mar 5, 2023
    终端走 proxy 设置一下 http/https_proxy 就可以了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2801 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 101ms · UTC 15:32 · PVG 23:32 · LAX 08:32 · JFK 11:32
    ♥ Do have faith in what you're doing.