解决 HomeBrew 下载缓慢的问题

news/2024/7/7 12:41:43

macOS 自身不提供包管理器,常用的包管理器有

  1. HomeBrew
  2. MacPorts

MacPorts 第一次使用要 build 整个基本库,编译时间很长。优点是不怎么依赖系统,更新 macOS 不会破坏现有的包,以及可以使用所有的开源包。

HomeBrew 尽量使用系统现有的库,减少编译时间,安装简单。缺点是与系统紧密相连。

简单优先原则,使用了 HomeBrew

安装 HomeBrew

安装 HomeBrew,安装命令如下

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

控制输入 brew -v,输出以下内容表示安装成功。

Homebrew 2.0.6
Homebrew/homebrew-core (git revision c432e8; last commit 2019-04-12)
Homebrew/homebrew-cask (git revision 22128; last commit 2019-04-13)

HomeBrew 常用命令:

搜索包: brew search [package-name]`` 查看包的信息:brew info [package-name]安装包:brew install [package-name]更新所有包:brew update更新某个包:brew upgrade [package-name]卸载某个包:brew uninstall [package-name]列出所有安装的包:brew list `

解决安装第三包缓慢

开始没有使用代理安装第三方包,下载超级慢,配置代理后,火箭般的下载速度。

比如安装 nodejs ,使用代理前的命令如下:

brew install node

使用代理后,安装命令如下:

ALL_PROXY=socks5://127.0.0.1:1086 brew install node

不使用镜像源的原因是,不能做到实时同步。安装报错,折腾半天,可以就是因为包有点老。

HomeBrew Cask

HomeBrew Cask 是通过命令行安装、卸载软件的方式,比 App Store 好用。安装简单,卸载软件也十分干净。

简单点说,HomeBrew 安装开发环境所用的包,而 HomeBrew Cask 是安装编译好的应用程序(.dmg/.pkg)。

HomeBrew 默认集成了 HomeBrew Cask,无需额外安装 。

使用 brew cask,就是使用 HomeBrew Cask

命令行输入 brew cask,就会列出所有 HomeBrew Cask 的命令。

HomeBrew Cask 安装程序

以下通过 HomeBrew Cask 安装 QQ 举例。

搜索 QQ

搜索 QQ ,使用 brew search [app-nam],就会列出含有 qq 字段的软件。

$ brew search qq
==> Casks
qq ✔            qqbrowser       qqlive          qqmacmgr        qqmusic

查看软件信息

搜索出的软件特别多,不知道安装源时,使用 brew cask info [app-name]

$ brew cask info qq
qq: 6.5.3
https://im.qq.com/macqq/
/usr/local/Caskroom/qq/6.5.3 (2 files, 231.2KB)
From: https://github.com/Homebrew/homebrew-cask/blob/master/Casks/qq.rb
==> Name
QQ
==> Artifacts
QQ.app (App)

安装 QQ

可以确认时腾讯出品,放心安装,使用 brew cask install [app-name] 安装

brew cask install qq

升级所有程序

使用 brew cask upgrade 命令,就可以升级所有通过 HomeBrew Cask 的应用程序至最新版,这比一个一个软件点击更新,要快上许多。

使用代理

安装一些软件时,下载速度比较慢,就可以使用代理了。

ALL_PROXY=socks5://127.0.0.1:1086 brew cask install qq

额外说明

最好不要将 export ALL_PROXY=socks5://127.0.0.1:1086 写入到 .zshrc 或者 .bash_profile 等配置文件中。

因为这可能会导致其他的工具无法正常使用,每次 HomeBrew 使用代理前,加上 ALL_PROXY=socks5://127.0.0.1:1086 即可。

转载于:https://www.cnblogs.com/stevexu/p/10701496.html


http://www.niftyadmin.cn/n/4556144.html

相关文章

谁是面向对象设计中的霸主?(上)

版权声明:本文为博主原创文章。未经博主同意不得转载。 https://blog.csdn.net/u010929604/article/details/26051679 在面向对象的世界里,设计模式从来就没有最好最强的,各个模式从来就谁也不服谁。彼此明争暗斗,未曾善罢甘休。今…

Linux虚拟系统安装——Ubuntu18.04 CentOS6.5

Linux虚拟系统安装——Ubuntu18.04 & CentOS6.5 摘要:Linux简介、虚拟系统安装、系统备份与文件介绍 1. Linux简介 (1)1968年,MIT、Bell实验室、美国通用电气公司共同开发Multic项目; (2)19…

贪吃蛇(C语言)

Snake.c #include<stdio.h> #include<stdlib.h> #include <time.h> #include <windows.h> #include <conio.h>

VUE 动态修改Video标签Src播放路径

首先HTML&#xff0c;注意这里修改 bind绑定src 属性是不能生效的 我使用的是用JS 获取DOM节点&#xff0c;然后给DOM的Src属性赋值 <video id"playVideos" controls width"100%" height"240"><source id"playVideosss" :src…

六.类的封装

类的封装 源程序&#xff1a; package lianxi;public class Account {String zhanghao;double cunkuanyu_e;Account (String hao,double a){zhanghaohao;cunkuanyu_ea; }//存款之后 并得到余额 //有返回值带参数的方法double cunkuan(Double cunqian) { if(cunqian<0)…

独立看第一个C++程序到最终结果log----2019-04-15

本文纯为本人记录&#xff0c;有网上诸多参考&#xff0c;请勿转发&#xff01; 记录可能可能有点啰嗦&#xff0c;自己划重点吧&#xff01;&#xff01; &#xff08;无论是生活还是工作&#xff0c;如果很困惑&#xff0c;千万不要消极一定要勇敢积极的面对它&#xff0c;不…

C++数组与类

}cin cin.get() cingetline() 其中cin是istream类的对象&#xff0c;cin 不能获取space 当按enter时 space以后的内容不会被输入,不释放enter&#xff1b;cin.get()函数&#xff0c;能接受space&#xff08;空间足够时候&#xff09;&#xff0c;不释放enter.cin.getline()函数…

C++结构 和指针

定义新的结构后会有新的结构成员&#xff0c; 然后再创建给结构变量&#xff08;struct可以省缺&#xff09;&#xff0c; 其中结构变量可以是基本类型也可是指针&#xff0c; 数组等。。#include<iostream>#include<string>using namespace std;struct infltable/…