在苹果芯片的 macOS 上修改系统软件的图标
macOS这只猫狐可能是全世界第一个这么做的家伙。
先看结果
可以看到 Finder、启动台以及垃圾桶的图标都已经修改了。
并不是一番风顺
然而,修改过的系统有一个问题,那就是没办法开启 SIP,也没法执行从商店下载的 iOS 应用。但是用 PlayCover 安装的可以。
系统要求
我只在 M1 芯片,macOS 13.2 下测试。不保证其他配置可用。
一步步的教程开始
下载软件
macOS 里甚至都没有设置文件夹图标的命令!!!
但是我找到了这个。
它官方没有 Arm 的版本。显而易见的,Rosseta 2 并不能在 RecoveryOS 里运行。所以我编译了一份 Arm64 的版本。在 这里下载。
系统内的设置
首先,要准备好所替换的文件,.icns
格式。
然后关闭 FileVault。
再然后关机。
黑色的恢复系统
恢复系统
重启。苹果芯片的 MacBook 应该在开机时长按开机按钮,然后输入用户密码。进入恢复系统。
大概就像这样:
打开终端。接下来要关闭 SIP 和 Signed System Volume。
输入命令:
csrutil disable
csrutil authenticated-root disable
挂载硬盘
先要将系统硬盘取消挂载。
用mount
命令查看硬盘名称,如/dev/disk1s5
,然后输入umount /dev/disk1s5
取消挂载。
在/Volumes
下新建一个文件夹,我建的名字为111
,然后挂载磁盘。
使用如下命令:
mount -t apfs /dev/disk1s5 /Volumes/111
然后系统分区里的东西就全被挂载了。
你可以在这个时候做几乎任何的事情。
我在这里放几个目录位置(都是以/Volumes/111
作为/
),方便修改:
# 启动台位置
/System/Applications/Launchpad.app
# Dock 位置(回收站图标和访达图标)
/System/Library/CoreServices/Dock.app
# Finder 位置
/System/Library/CoreServices/Finder.app
注意如果要修改软件图标,使用上面所下载的程序来替换。否则可能会不起效果。
打快照收工
在 Intel 芯片上,bless
是可以有--folder
参数的,但是在苹果芯片上却不行。
但是我们找到了这篇文章,里面的命令很有效。
终端输入如下(记得执行的路径是/Volumes/111
):
bless --mount "/System/Library/CoreServices/" --setBoot --create-snapshot
然后重启就好了。
术后事项
完工后,打开从 App Store 下载的 iOS 程序,会提示说系统的安全性不满足。
这一点是没有办法解决的。
解决方法就是用 PlayCover 侧载。可以正常使用。
如果更新系统,或者打开 SIP,那么就会变成原来的样子,除非再次关闭 SIP 与 SSV。
总之,教程就到这里结束了。
森还是觉得 OS X 10.9 的垃圾桶最好看。
关于森是怎么摸索出这一个方法虽然就很废话但是完成后很开心最终还是决定写下来的事
众所周知,macOS Big Sur 的启动台图标很丑。
如果谁说不丑那就让ta对着这个图标看10秒钟
大概在 macOS 13 之前,是有把 LaunchPad.app 复制一份,换上图标的解决方法的。
但是在某一次升级后,这个方法就失效了。
于是森就决定开始探索。
这条路充满荆棘,一路上并不顺利。
首先是 SIP 问题。森依稀记得只要关掉 SIP 就可以修改系统文件。但那是很久以前的事了。
从 M1 开始,macOS 就变得越来越离谱,甚至有了从快照启动这种奇奇怪怪的操作(虽然 OpenSUSE 的 Snapper 也是这样)。
但是这都不是问题。
森通过不断的尝试,最终发现了能够修改系统文件的方法。
结束了……吗?
怎么可能!
让快照保存才是重头戏。
我们要对这个分区进行一个 Bless 才可以!
这种东西在互联网上记录真的很稀少(猫猫抱怨)。
但最后还是找到了。
你写了这么多你自己有在用吗???
没有。
森在写完后就默默打开了 SIP。
打开了 FileVault。
继续对着丑丑的启动台发呆。
就这样。
结束。
补充
突然发现 Catalina 的 LaunchPad.app 可以使用。
太怪了。
扔个下载地址吧。
也许和 FileVault 有关。