修复homebrew安装软件404问题

作为追新族,基本上我所有设备上的系统、软件,都会在第一时间更新到最新。因此我经常运行各种update命令,包括brew upgrade,但今天,发现和往常不太一样。

在更新软件时,终端中有不少黄字提示404警告,并且最后的结果也出错了。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#=#=-#  #
curl: (22) The requested URL returned error: 404 Not Found
Warning: Bottle missing, falling back to the default domain...
==> Downloading https://ghcr.io/v2/homebrew/core/libyaml/manifests/0.2.5
######################################################################## 100.0%
==> Downloading https://ghcr.io/v2/homebrew/core/libyaml/blobs/sha256:83547fba540a38c30705a59a2e746952c68857212e823c6ee97c186e088f75cd
==> Downloading from https://pkg-containers-az.githubusercontent.com/ghcr1/blobs/sha256:83547fba540a38c30705a59a2e746952c68857212e823c6ee97c186e088f75cd?se=2021-04-22T06%3A55%3
######################################################################## 100.0%
==> Downloading https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles/ruby-3.0.1.big_sur.bottle.tar.gz
==> Downloading from https://homebrew.bintray.com/ruby-3.0.1.big_sur.bottle.tar.gz
#=#=-# #
curl: (22) The requested URL returned error: 404 Not Found
Warning: Bottle missing, falling back to the default domain...
==> Downloading https://ghcr.io/v2/homebrew/core/ruby/manifests/3.0.1
######################################################################## 100.0%
==> Downloading https://ghcr.io/v2/homebrew/core/ruby/blobs/sha256:00daa93e4b30d3bbeac5089c1c34355315774e0d9fd1d9588402b2e755089c53
==> Downloading from https://pkg-containers-az.githubusercontent.com/ghcr1/blobs/sha256:00daa93e4b30d3bbeac5089c1c34355315774e0d9fd1d9588402b2e755089c53?se=2021-04-22T06%3A55%3
######################################################################## 100.0%
==> Downloading https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles/vim-8.2.2775.big_sur.bottle.tar.gz
==> Downloading from https://homebrew.bintray.com/vim-8.2.2775.big_sur.bottle.tar.gz
#=#=-# #
curl: (22) The requested URL returned error: 404 Not Found
Warning: Bottle missing, falling back to the default domain...
==> Downloading https://ghcr.io/v2/homebrew/core/vim/manifests/8.2.2775
######################################################################## 100.0%
==> Downloading https://ghcr.io/v2/homebrew/core/vim/blobs/sha256:2d48b73b8157241aef912e1fdc7e587837b60e4898f69d597b1f4182a520afe2
==> Downloading from https://pkg-containers-az.githubusercontent.com/ghcr1/blobs/sha256:2d48b73b8157241aef912e1fdc7e587837b60e4898f69d597b1f4182a520afe2?se=2021-04-22T06%3A55%3
######################################################################## 100.0%
==> Installing dependencies for vim: gettext, lua, ncurses, [email protected], berkeley-db, gdbm, perl, mpdecimal, readline, sqlite, xz, [email protected], libyaml and ruby
==> Installing vim dependency: gettext
==> Pouring gettext-0.21.big_sur.bottle.tar.gz
tar: Error opening archive: Failed to open '/Users/username/Library/Caches/Homebrew/downloads/8835c3d1869eedf98376360b02e32e1ec1fcb790687cfa164713bea02c45e577--gettext-0.21.big_sur.bottle.tar.gz'
Error: Failure while executing; `tar --extract --no-same-owner --file /Users/username/Library/Caches/Homebrew/downloads/8835c3d1869eedf98376360b02e32e1ec1fcb790687cfa164713bea02c45e577--gettext-0.21.big_sur.bottle.tar.gz --directory /var/folders/7h/dkrm4zdd6bv315h44vqhx5pr0000gn/T/d20210422-22363-1sups7j` exited with 1. Here's the output:
tar: Error opening archive: Failed to open '/Users/username/Library/Caches/Homebrew/downloads/8835c3d1869eedf98376360b02e32e1ec1fcb790687cfa164713bea02c45e577--gettext-0.21.big_sur.bottle.tar.gz'

不会吧?一个用户基数这么大的服务,居然会出现这么多404 :mrgreen: ?去GitHub一查,好嘛,原来是bintray要关闭了,具体看这里,应该是截止到某个时间点,之后的包就没再往bintray传了,也就是404了。

其实Homebrew社区对这个问题早就做了准备的,新版的homebrew程序已经去除了bintray相关,使用ghcr.io服务了,所以只要正常使用,正常先update,再upgrade,是可以完美过渡,用户是无感的。

至于我为啥不行,是因为我用了清华大学的镜像,目前清华大学的镜像中依然是指向到bintray的,所以也跟着404了。所以要解决问题,那就是去掉清华大学的镜像设置就好了。具体的环境变量是$HOMEBREW_BOTTLE_DOMAIN。使用export HOMEBREW_BOTTLE_DOMAIN=’’命令就可以去除。上面是临时修改,如果想永久修改,则需要去更新profile文件,zsh是/.zprofile文件,bash要修改/.bash_profile文件。

修改完后,再进行安装,就一切正常了。

我后来又去清华大学的GitHub上看了,已经有人反馈这个问题了,同时发现 https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles/ 目录下并没有直接列出各种包,反而多了一个bottles目录,想必清华大学已经是在处理这个问题,开始同步了吧。只是这个镜像有2.5T大,要完全同步完,真不知道猴年马月了。

聊聊MacBook Pro

MacBook Pro

今天收拾了下屋子,无意中扫落了柜子上的盒子,那是MacBook Pro的盒子,里面的发票掉了出来,拾起来一看,我才注意到原来我已经买来一年半了。收拾完房间,我盯着前方的电脑,回想到很多事情,决定写一篇文章来聊一聊。

为什么

我拥有自己的电脑的时间已经很晚了,我还记得我第一台电脑是我叔送我的,型号是Compaq CQ40(后来才知道这个品牌当时已经属于HP旗下了),具体配置记不清了,只记得是2G DDR2内存的,后来加了一条2G内存升级到了4G,这台笔记本陪伴了我差不多5年,15年的时候我换了第二台电脑-联想Y430P,这是我工作后换的第一台电脑,也是真正意义上花自己的钱买的第一台电脑。这台电脑我当时差不多买了这个型号顶配的样子,后续我又给它升级到了3块SSD(因为闲着也没用,就全装进去了),16G内存,前前后后差不多8K左右。这台电脑至今还在服役,颇有还能再战3年的架势。

第三台电脑就是本文的主角-18款13寸版MacBook Pro,我18年8月份购买的,配置是在乞丐版基础上把内存加到了16G。我还记得我是把电脑快递到公司的,最开始还是想低调点,下班直接偷偷带回家的,奈何同事帮我签收了快递,Apple独特的包装一眼被我同事识破,无奈在大家的起哄下打开了包装,果不其然被冠以“土豪”,“有钱人”的标签。

“为什么要买MacBook Pro”?“后悔买MacBook Pro了么”?最开始这3个问题被问到的最多。在很多人印象中,Mac电脑都是“人傻钱多速来”。他们会问这10K+干啥不好,要买这一台性能弱鸡,玩不了游戏,除了装逼一无是处的Mac,有这钱买个Windows电脑不妥妥的性能比这个强好几倍?

为什么要买MacBook Pro?这个问题我确实有好好想过,我之前的工作中,因职务之便,把自己的工作电脑换成了之前研发淘汰下来的Mac mini(11款),因此接触到了macOS,我对Mac的开箱即用,干爽清净非常喜欢。这是我选择MacBook Pro的一大动机。同时因为上一台笔记本是在太过笨重,因工作需要经常需要背着跑,深受其害,因此我发誓再买笔记本一定买轻薄款的,两者结合,顺理成章的就选择了MacBook Pro。至于上面说到的玩游戏方面,我买这个笔记本就是为了干活的,游戏实属不是考虑了重点,因此直接忽略了。

问题

这台电脑用了一年半了,由于我当时没有购买Apple Care+,因此现在已经过保了。在这一年半里,我对使用体验打85分。这期间也不是一帆风顺的,发生过两件“大问题”,除此之外一切安好。

第一次是18年9月的一个下雷雨的下午,我给售后打了一个下午的电话,因为电脑安装完一个小更新后系统故障,进不了系统,或者偶尔进去了,一小会后就死机了。客服帮忙远程诊断(我第一次感到真心牛逼,但又没啥用)后,并没有发现问题,无奈只好格盘重装系统。好在当时电脑买来不久,再加上我本人也有备份的习惯,基本没啥损失,就是花了我好多话费;

第二次是19年的中秋节前几天,当时我就发现我的touch bar靠近开关的位置经常会闪烁(见下方视频),当时我已经过保了,电话咨询客服后客服建议我去天才吧看看,我怀着忐忑的心情(网上有相似的案例,解决方案是换了整个C面)去了天才吧。天才吧的工作人员表示需要返厂检测后才能得出结论,同时查看了电脑序列号后告知我的Mac在免费更换键盘的机型当中,当然一切以返厂结果为准,7天后(正好中秋),我从天才吧取回了电脑,同时被告知我电脑整个C面(包含电池)都换新了,电脑本身已经不再有保修,但键盘保修3个月。touch bar的问题也解决完毕,从此我对苹果的好感更进了一步。

方便?不方便?

这个话题我得先从我的手机说起。我目前主力手机是iPhone 6S,一台比我电脑还老的设备,但不得不说一旦接受了苹果的生态,是真的很方便,由于手机和电脑登录的是同一个Apple ID,我手机拍的照片马上在电脑的相册里就能查看,手机看到一半的网页可以一键在电脑上打开继续阅读,电脑上复制手机上粘贴,遇到没网的环境电脑还会提示使用iPhone作为热点,iPhone上输入过一次Wi-Fi密码,所有设备都会直接连上这个Wi-Fi等等。当然,这些功能很多在Windows上也能实现,但这里说的是方便,是真的非常方便。

说完了方便,再说说不方便的,2018款的Macbook pro配置了4个type-c接口,这当然很先进,但因此我也遇到了麻烦:我其他设备都是USB接口,因此我额外购买了一个扩展坞,一根type-c转DP线,一根type-c转lightning;然后是硬盘问题,苹果让人吐槽最多的应该就是磁盘空间问题(无论iPhone还是Mac),我电脑只配置了256G的磁盘。虽说基本够用,但还是有所掣肘,为此我买了一块500G的外接SSD硬盘,挂载着使用,除了用来保存文件以及安装一些软件外,外接硬盘同时还为电脑开启了时间机器功能,这个功能非常棒,可以让文件回溯到很久之前,包括误删了的文件。下面是我使用了一年半后的磁盘使用率。

MacBook Pro磁盘使用率

刚刚提到了移动硬盘,那不得不说的一点就是Mac对磁盘格式的要求和Windows上的差别了,Windows下常见的NTFS格式在Mac下默认可度但不可写,因此如果经常需要两个系统之间用移动硬盘或U盘倒文件,最好还是格式化成exFat格式,这样两个系统下都可以读写。然后还有一个细节:如果Mac下用右键菜单里的压缩选项压缩的文件夹,Windows下有时候会解压不了,可能和系统字符集有关系。

还有一个不方便的点就是鼠标、键盘和Windows下的逻辑不太一样,鼠标如果不设置,那滚轮方向和Windows下是相反的,同时键盘布局也略有不同,这个作为一个双机党,最开始的时候还真不适应,不过现在可以很自然的切换了。

软件,游戏?

软件方面,就IT行业来讲,其实Windows上常用的软件(包括XX卫士,XX安全管家之类的)在Mac下都有,在习惯上和Windows下基本无差别,而没有Mac版本的很多软件都有其他解决方案,再加上我在购买MacBook Pro之前已经有了一年的使用经验,因此在日常使用以及工作中倒也没遇到什么问题。同时Mac下也有很多独占的软件是Windows下没有且让Windows用户很眼红的,比如多媒体剪辑软件Final cut,iterm2。当然了,要说数量,那肯定比Windows下是少很多很多的,同时我刚刚也说了这是IT行业下的软件现状,那自然还有很多行业、场景是Mac不能完全胜任的,就比如各种银行的网银插件等。

Mac下其实能玩的游戏也不少的,我前面虽然说买Mac就是为了工作,游戏基本不在考虑范围内,其实还是有所考虑的,我电脑上玩的最多的游戏就是魔兽世界了,这个在Mac下是可以运行的,我实际体验在1080P分辨率,画质5档的情况下,基本稳定60fps,唯一的问题就是这游戏太大了,近100G的磁盘占用,占用了我电脑一半的磁盘空间,不过我购买了外接移动硬盘后,就把很多软件都安装到移动硬盘下了,磁盘空间问题解决。

除了魔兽世界,steam下的可在Mac下运行的游戏也不少,就刚刚我打开steam搜索了下,支持macOS的游戏有23,023款,其中不乏大作,比如dota2,文明6等,不过这种大作对电脑性能要求普遍较高,对我的电脑来讲,玩起来就很吃力了。不过甜品级的游戏比如死亡细胞啥的,玩起来就毫无压力了,配置上手柄,Mac就直接成为游戏机了。

生产力工具?

先给出答案:是的,就我自己而言能比Windows提升20%工作效率。干的活相同,个人能力也不变,那为啥说提升了效率?这个主要有几点:

1、Mac下干扰少,不容易分心。

这个和Mac下的软件环境有关系,一样的软件,Windows下经常会有弹窗、广告啥的吸引你的眼球,而Mac下软件都很安静。

2、macOS系统自带shell环境。

因为工作关系,经常需要用到shell环境,Mac下可以很方便的本地调试,这个虽然win10有wsl子系统,但终究还是不如macOS下方便。

3、苹果的良好生态

这个上面有说,因为苹果在各个设备之间同步、切换非常方便,我可以在没电脑的时候手机上安排工作,然后不需要任何操作就可以在电脑上进行提醒、处理等。

后悔?

不,当然不后悔,甚至我可能下一台电脑依然选择Mac。当然我也有Windows电脑,开了3389远程桌面作为macOS等补充。

洋洋洒洒流水账似的写了这么一大堆,回看了一遍,发现还真是流水账,基本没个重点,不过这个就是我使用MacBook Pro一年半后的体验,电脑终究还是只是一个工具,只有适合自己的才是最好的,对我来说MacBook pro买的非常值,至少以前我从来不会背着电脑去星巴克,现在我可没少跑呢。

MacOS Mojave 升级体验

上个月苹果发布了MacOS 10.14,也就是MacOS Mojave版本,一直没有更新,今天抽空更新了一下,第一感觉就是看了这么久的白色皮肤,这新出的黑色主题也是很帅的嘛~~

其实在更新Mojave之前,我并不了解具体更新了什么内容,

====2019年6月30日补充====

突然发现这篇文章后面内容断了,可能和迁移博客有关,也可能是其他原因,总之现在是之前写的啥已经完全忘记,原本想删除了文章,想象也是一个自己过失的见证,所以还是留着吧。现在已经是用了半年了,只能补充一句:其实新功能真没啥感觉,动态的壁纸平时基本看不见,其他还有啥完全没印象,相比而言,还是更期待macOS 10.15以及ipadOS13(iOS 13)的更新。不过现在的beta版就算了,毕竟吃饭的家伙可不敢瞎折腾了