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 即可。

解决 HomeBrew 下载缓慢的问题的更多相关文章

  1. npm下载缓慢解决方法

    npm的服务器在国外,拉取npm包的列表.下载包这个过程会比较缓慢.凡是包管理工具基本都有这个问题,例如maven.pip等,这些问题都可以通过配置镜像来解决.阿里巴巴提供了maven库,清华大学有p ...

  2. Eclipse+maven 导致Eclipse启动后Build workspaces卡死或者下载缓慢的问题

    参考文档: (1)Eclipse 一直不停 building workspace完美解决总结 (2)eclipse 一直building workspace 问题 解决办法: (1)第一步: 修改ec ...

  3. 轻松解决Github连接缓慢、图裂问题

    1 简介 gayhub(误)github作为全世界最大的开源代码库以及版本控制系统,是用来托管项目以及学习开源技术非常好的平台,是我心中最好的学习网站,我们公众号的众多技术文章对应的数据和代码也都一直 ...

  4. 解决nexus下载maven索引的问题

    解决nexus下载maven索引的问题 (2011-10-12 17:48:46) 转载▼ 标签: it 分类: java 转自 http://www.colorfuldays.org/program ...

  5. 解决 Firefox 下载文件名乱码扩展 ReDisposition

    作者 muzuiget  发布 2013-03-13 19:23  标签 redisposition Firefox 下载文件名乱码问题由来已久,偶然一两次还可以手动改名,批量下载时简直要亲命,最终我 ...

  6. 解决Ubuntu“下载额外数据文件失败 ttf-mscorefonts-installer”的问题 (转载)

    解决Ubuntu“下载额外数据文件失败 ttf-mscorefonts-installer”的问题 发表于 2017-09-15 | 更新于 2018-04-29 | 分类于 Linux | 评论数: ...

  7. 通过修改host解决VS2019下载极慢的问题

    原文:通过修改host解决VS2019下载极慢的问题 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn ...

  8. 解决Maven下载速度缓慢问题

    解决Maven下载速度缓慢问题 第一步:找到自己安装maven的路径,选择setting.xml D:\apache-maven-3.2.2\conf\settings.xml 第二步:打开setti ...

  9. 我教你如何解决 Docker 下载 mcr.microsoft.com 镜像慢的办法

    我教你如何解决 Docker 下载 mcr.microsoft.com 镜像慢的办法 一.介绍 最近,我在写有关使用 Jenkins 搭建企业级持续集成环境的文章,准备了四台服务器,企业级别嘛,一台就 ...

随机推荐

  1. 简历HTML网页版

    <!DOCTYPE html><html> <head> <meta charset="utf-8" /> <title> ...

  2. MD5加密算法(java及js)

    为了防止用户登陆过程中信息被拦截导致信息泄露,我们应该在客户端就对用户密码进行加密.浏览器提交给服务器的是加密后的信息,即使被恶意拦截,被拦截信息也已做了加密处理,现在比较安全的一种加密算法是MD5加 ...

  3. servlet文件上传及下载

    servlet3.0中提供了对文件上传的直接支持,不需要借助任何第三方上传组件,直接使用Servlet3.0提供的API就能够实现文件上传功能. servlet 代码: package ni.jun. ...

  4. 提高测试脚本复用性降低DOM结构引起路径变化的影响

    问题描述 在定位元素时直接复制的xpath. 但是因为下面这些原因导致之前引用的路径失效, 不得不频繁修改脚本重新定位元素, 大降低了脚本的复用性, 也增加了维护的成本: 1. UI修改 (比如增加了 ...

  5. Java 读书笔记 (十五) Java 异常处理

    捕获异常 使用try 和catch关键字可以捕获异常.try/catch 代码块放在异常可能发生的地方. try/catch 代码块中的代码称为保护代码 ,使用try/catch的语法如下: try ...

  6. Java8-6-Predicate接口详解

    转自https://segmentfault.com/a/1190000012256677 Predicate函数式接口的主要作用就是提供一个test方法,接受一个参数返回一个布尔类型,Predica ...

  7. Hadoop问题:DataNode进程不见了

      DataNode进程不见了 问题描述 最近配置Hadoop的时候出现了这么一个现象,启动之后,使用jps命令之后是这样的: 看不到DataNode进程,但是能够正常的工作,是不是很神奇啊? 在一番 ...

  8. bzoj5249 [2018多省省队联测]IIIDX

    转化一下问题变成给定一棵树,一个序列,求父亲的权值小于子树的最大方案. 直接贪心会在有重复权值时出现错误,我们考虑用线段树优化贪心. 将序列从小到大排序,线段树上每个点记录他和他右边当前还可用的权值, ...

  9. IOS-QQ第三方登录

    iOS QQ第三方登实现   我们经常会见到应用登陆的时候会有QQ,微信,微博等的第三方登陆 如图: 下面我们主要讲一下qq的第三方登陆如何实现 首先,到官网注册: http://wiki.conne ...

  10. 6种基础排序算法java源码+图文解析[面试宝典]

    一.概述 作为一个合格的程序员,算法是必备技能,特此总结6大基础算法.java版强烈推荐<算法第四版>非常适合入手,所有算法网上可以找到源码下载. PS:本文讲解算法分三步:1.思想2.图 ...