XiaO

旧制度留下的遗产有好有坏

XiaO / 2020-05-11


对跟随近七年的老爷机进行系统升级后,发现旧款软件在 MacOS Catalina 下无法打开。而偶然又在词典里看到这样一个例句,很有意思。

The old system has left a mixed legacy.
旧制度留下的遗产有好有坏。

安装 Command Line Tools 工具包

Command Line Tools 是一个小型独立包,是 Xcode IDE 的可选命令行工具子部分。该工具包为 mac 终端用户提供了许多常用的工具,如 svn,git,make,GCC,clang,perl,size,strip,strings,libtool,cpp,what 等。

xcode-select --install

工具包安装在 mac 的根 (/) 目录 (非用户目录(~/..))下:

/Library/Developer/CommandLineTools/

可在/Library/Developer/CommandLineTools/usr/bin/中查看由工具包提供的新的可用命令:

git
gcc
swift
...

Mac 显示隐藏的文件

在一个打开的文件夹界面直接按 command ⌘ + shift ⇧ + period . 即可显示隐藏的文件。

允许 Mac 安装第三方来源的应用

sudo spctl --master-disable

移除 “quarantine” 标签

软件由于 “quarantine attribute” 显示被破坏而无法打开,可通过移除 “quarantine” 标签解决问题。具体分析可参见博文 How to deal with damaged downloads in OSX

xattr -r -d com.apple.quarantine /path/to/app

重新签名软件

一些软件在 MacOS Catalina 系统下打开闪退,可能需要对软件重新签名。关于签名,具体可参见博文 iOS 代码签名与重签名

codesign --force --deep --sign - /path/to/app

Sublime text 4126

brew install --cask hex-fiend sublime-text

/Applications/Sublime Text.app/Contents/MacOS/sublime_text # Edit the file with Hex Fiend

Replace 80 78 05 00 0f 94 c1 with c6 40 05 01 48 85 c9 and save it.

codesign --force --deep --sign - "/Applications/Sublime Text.app"