macOS 27 Golden Gate 正式推出:開發者該注意的變更

macOS 27 Golden Gate 於 2026年9月14日以 build 26A428 正式推出,與 iOS 27.0 及 Xcode 27 同日上線,而且只能安裝在 Apple 晶片的 Mac 上:Apple 的相容機型清單從 2020 年的 M1 MacBook Air 一路列到 M6 Mac mini,其中還包含一台 A 系列機器,也就是搭載 A18 Pro 的 13 吋 MacBook Neo。12 對開發者而言,這個版本是 Rosetta 作為通用工具的最後一年。Apple 同日發布的支援文件寫著,Rosetta「is available for any Mac with Apple silicon using macOS 27 or earlier」(可用於任何執行 macOS 27 或更早版本的 Apple 晶片 Mac),而 macOS 28 只會保留它「only for certain older, unmaintained games that rely on Intel-based frameworks」(僅供某些倚賴 Intel 框架、已無人維護的舊遊戲使用)。3 GA 發行說明列出四則 Rosetta 項目:使用者原本設定為「Open using Rosetta」的 App 會以原生方式啟動、升級後不會自動還原 Rosetta、未指定主機架構的安裝套件預設改為 arm64,以及 Intel 外掛程式可能不會出現在「設定」清單中,也不會觸發通知。4 我在 9月16日撰寫本文時,手邊沒有執行 macOS 27 的 Mac,所以下文的敘述都出自 Apple 的文字,另外再加上我能在 macOS 26.6.2 上查證的部分:一個標準安裝套件到底宣告了什麼、productbuild 手冊如何描述安裝程式過去對未指定架構的 distribution 的處理方式,以及 26.6 的命令列工具還缺少哪些新動詞。10月1日與 10月2日的更新補上了兩件事:同一台 Mac 升級到 27.0 之後親手做的五項檢查,以及 Apple 要求重新簽署安裝套件的 2027年2月1日期限。51314151819

重點摘要

  • 日期與 build 編號。 我在 9月16日擷取 Apple 的發佈摘要時,它把 macOS 27.0(26A428)列在 9月14日(週一),與 Xcode 27(27A266a)和 iOS 27.0(24A437)並列;到了 10月1日,摘要中的 macOS 與 iOS 27.0 項目已換成 27.0.1 的項目。117 同日發布的相容性頁面收錄 35 筆機型,全都是 Apple 晶片,而升級頁面用一句話說明規則:「macOS 27 is compatible with any Mac with Apple silicon, which includes any Mac with an M-series chip or A-series chip.」(macOS 27 相容於任何 Apple 晶片的 Mac,包含搭載 M 系列或 A 系列晶片的機型。)2
  • Apple 已經把 Rosetta 的時程寫死。 支援文件與發行說明一致表示 macOS 28 只保留遊戲專用的子集,而企業版說明則把 Rosetta 形容為「a general-purpose compatibility tool through macOS 27」(直到 macOS 27 為止的通用相容性工具)。3410 至於升級本身,Rosetta「is not automatically restored」(不會自動還原),而使用者先前固定為「Open using Rosetta」的 App 會以原生方式啟動。4
  • 安裝套件的預設架構變了。 Apple 的說法是:「Installer packages which specify no hostArchitecture will now default to arm64.」(未指定 hostArchitecture 的安裝套件現在會預設為 arm64。)4 在 macOS 26.6.2 上,用 pkgbuild 建出的元件套件根本沒有 distribution 檔案,自然也就沒有宣告任何架構;而 productbuild --synthesize 為我的套件產生的 distribution 裡則寫進了 hostArchitectures="x86_64,arm64"。Apple 已封存的 Distribution XML 參考文件至今仍只列出 i386、x86_64 與 ppc 這三個有效代碼。56
  • Intel App 在停止運作之前會先被標記。 Apple 表示,「簡介」視窗現在會對「Intel-based applications that will no longer run in macOS 28.0」(在 macOS 28.0 上將無法執行的 Intel App)顯示「a treatment」(一種標示),並表示「設定」>「一般」也會把它們列出來;此外還有一個僅限 beta 的 game-test-tool,它會直接停用 Rosetta,改以 Apple 所謂的「the new underlying system behavior」(新的底層系統行為)來執行舊遊戲。8(10月2日:在這台 Mac 上,我讀過的三個僅支援 Intel 的 App,「簡介」視窗都顯示一則警告,原文引述於下方的更新。「一般」的十四列裡沒有這份「設定」清單,而那些列背後的子窗格我還沒有打開過。19)
  • 五項與 Rosetta 無關的系統變更。 macOS 會直接拒絕跨團隊的容器讀取,不再詢問使用者;App 無法再直接存取 TCC 資料庫;spctl 多了一個 purge 指令;與裝置管理相關的連線必須使用 TLS 1.2 並搭配符合 ATS 等級的加密套件;App Attest 登陸 Mac。91011
  • 2027年2月1日:安裝套件的期限。 Apple 10月1日的公告指出,原始的 Developer ID Certification Authority 會在那天到期,而且「.pkg files signed with an affected certificate will no longer install」(以受影響憑證簽署的 .pkg 檔案將無法再安裝)。我「下載項目」資料夾裡四個以 Developer ID 簽署的安裝程式,全都串連到這個憑證授權單位;Developer ID 那篇文章列出了能看出您的安裝程式用的是哪一個憑證授權單位的指令。1516
  • 已實測與尚未實測的部分。 原生啟動的覆寫行為,以及純元件套件的 arm64 預設值,都是 Apple 的說法,還沒有在這台 Mac 上實際跑過,雖然它從 9月23日起就已經在執行 27.0。它的安裝記錄顯示升級並沒有把 Rosetta 帶回來;我讀過的三個僅支援 Intel 的 App,「簡介」視窗都顯示了 macOS 28 的警告;而「設定」>「一般」的十四列裡沒有任何 Intel App 的項目,不過那些列背後的子窗格我還沒有打開過。文末有一節逐條列出。

9月14日推出了什麼?

項目 Build 來源
macOS 27.0 Golden Gate 26A428 發佈摘要,2026年9月14日(週一)1
Xcode 27 27A266a 摘要中的同一日期;細節見 Xcode 27 發行文章1
相容機型 35 筆機型,全為 Apple 晶片,從 M1(2020)到 M6,另加 MacBook Neo(13 吋,A18 Pro) 支援文件 127255,9月14日發布2
安裝方式 透過「軟體更新」,適用於「any Mac with Apple silicon, which includes any Mac with an M-series chip or A-series chip」(任何 Apple 晶片的 Mac,包含搭載 M 系列或 A 系列晶片的機型) 支援文件 127455,9月14日發布2

這個名字出自發行說明自己的概述:「The macOS 27 SDK provides support to develop apps for Mac computers running macOS 27 Golden Gate.」(macOS 27 SDK 支援為執行 macOS 27 Golden Gate 的 Mac 開發 App。)4 值得再看一眼的細節是 A 系列那一條:升級頁面的措辭「M-series chip or A-series chip」描述的是整個平台,而不是單一晶片家族,而清單上唯一符合後半句的機器就是 MacBook Neo。2

macOS 27.0.1(26A434)在 9月28日(週一)接著推出。Apple 的更新頁面只寫了「This update provides bug fixes for your Mac」(此更新為您的 Mac 提供錯誤修正),沒有提到下文的 Rosetta 或安裝程式項目有任何變更。17

macOS 27 對 Rosetta 做了什麼?

9月14日發布的兩篇支援文件,加上 GA 發行說明,從三個角度描述同一條界線,而三者對界線落在哪裡的說法一致。

談 Intel App 的那篇支援文件:「Rosetta is available for any Mac with Apple silicon using macOS 27 or earlier. Starting with macOS 28, the next major macOS release, Rosetta functionality will be available only for certain older, unmaintained games that rely on Intel-based frameworks.」(Rosetta 可用於任何執行 macOS 27 或更早版本的 Apple 晶片 Mac。從下一個主要版本 macOS 28 開始,Rosetta 的功能將只提供給某些倚賴 Intel 框架、已無人維護的舊遊戲。)3

企業版說明:「If Rosetta was previously installed, it will not be automatically restored upon upgrading to macOS 27. Rosetta will continue as a general-purpose compatibility tool through macOS 27.」(若先前已安裝 Rosetta,升級到 macOS 27 時不會自動還原。Rosetta 會以通用相容性工具的身分延續到 macOS 27 為止。)10

發行說明的 Rosetta 章節,一則 New Features 加上三則 Deprecations:4

  • 「On launch, Applications previously set to ‘Open using Rosetta’ by a user will have the application launch natively. Any compatibility issues requiring Rosetta from the past should be re-assessed on macOS 27.」(啟動時,使用者先前設定為『Open using Rosetta』的 App 將以原生方式啟動。過去任何需要 Rosetta 才能解決的相容性問題,都應該在 macOS 27 上重新評估。)
  • 「If Rosetta was previously installed, it is not automatically restored after upgrading to macOS 27.0.」(若先前已安裝 Rosetta,升級到 macOS 27.0 後不會自動還原。)
  • 「Installer packages which specify no hostArchitecture will now default to arm64. Ensure any pre and post install scripts behave as intended under arm64. Additionally, audit any remaining installer plugins to ensure compatibility on Apple silicon.」(未指定 hostArchitecture 的安裝套件現在會預設為 arm64。請確認安裝前後的腳本在 arm64 下的行為都符合預期,並稽核剩下的安裝程式外掛,確保它們在 Apple 晶片上相容。)
  • 「Intel-based plugins and loaders may not appear in Settings or trigger notifications of their incompatibility. All Intel-based software will no longer be compatible with macOS 28.0, excluding legacy games.」(Intel 外掛與載入器可能不會出現在「設定」中,也不會觸發不相容通知。除了舊遊戲之外,所有 Intel 軟體都將無法在 macOS 28.0 上相容。)同一則項目也點名了該檢查的資料夾:~/Library/Audio/Plug-Ins/*、~/Library/Printers/ 與 ~/Library/ColorPickers/,對象是「VSTs, HAL, ARA, PDEs, Color Pickers, Quicklook & Spotlight plugins/extensions/components」。

第一則項目與支援文件看起來互相矛盾,直到您注意到 previously 這個字。支援文件說,Universal App 的「Open using Rosetta」選項仍然有效:「you can use it in macOS 27 or earlier to force the app to open as an Intel-based app, which allows it to use Intel-only plug-ins, extensions, and other add-ons.」(在 macOS 27 或更早版本上,您可以用它強制 App 以 Intel App 的形式開啟,讓它能使用僅限 Intel 的外掛、擴充功能與其他附加元件。)3 而發行說明講的是「previously set」(先前已設定)為該模式的 App 會以原生方式啟動。我的解讀是,升級會把這項設定清掉一次,使用者之後可以再設定回來;Apple 要求「re-assess」(重新評估)舊有相容性問題的說法也指向同一個方向。不過這個解讀我還沒有測試過。如果解讀正確,原本靠這個選項載入 Intel 外掛的使用者,升級後第一次啟動時會看到 App 以原生方式開啟,外掛則沒有載入。

第二項變更比第一項更早咬人。Apple 表示,原本安裝了 Rosetta 的 Mac 升級到 27.0 之後就沒有它了;按照 Apple 的安裝說明,開啟任何一個 Intel App 就是讓它回來的方式。3410 Apple 的文字沒有說明,在沒有 Rosetta 的 Mac 上執行 Intel 二進位檔的腳本會發生什麼事;請先假設它會失敗,直到透過那個提示或 softwareupdate --install-rosetta 把 Rosetta 裝回來為止。3 Apple 的 Rosetta 文件補上了唯一不需要安裝的情況:「macOS 27 directly integrates support for Intel binary translation, without needing to install Rosetta」(macOS 27 直接整合了 Intel 二進位轉譯的支援,無須安裝 Rosetta),指的是虛擬機與容器內的 Intel Linux 二進位檔;Xcode 27 Intel 文章逐句拆解了這段話,以及 Apple 文件在七月時陳述的整條 Rosetta 時程。7

遊戲的例外條款目前只有 beta 形態。Gaming 章節介紹了 sudo game-test-tool enable,它會開啟「support for legacy Intel-based games」(對舊版 Intel 遊戲的支援),同時也在同一段裡警告:「enabling legacy game support disables Rosetta, non-game processes might crash or behave unexpectedly, and this feature is intended only for playing legacy Intel-based games and is not available outside of macOS beta releases.」(開啟舊遊戲支援會停用 Rosetta,非遊戲的行程可能當機或出現非預期行為;此功能只供遊玩舊版 Intel 遊戲,且不會在 macOS beta 以外的版本提供。)8 換句話說,這個工具是 Apple 口中「the new underlying system behavior」(新的底層系統行為)的 beta 專用開關,而說明完全沒有提到 macOS 28 會如何開放它。

Rosetta在三個版本中的狀態:在macOS 26 Tahoe上為通用用途,在macOS 27 Golden Gate上同樣為通用用途但升級不會將其還原,在macOS 28上僅限於舊版Intel遊戲。

哪些安裝套件會預設為 arm64?

Apple 那句話用的是單數的 hostArchitecture;與之對應的屬性其實是 Distribution XML 中 <options> 元素上的 hostArchitectures,而 Distribution XML 就是 product archive 裡的那個檔案,Apple 的參考文件把這個屬性描述為「a comma-separated list of supported architecture codes」(以逗號分隔的支援架構代碼清單)。6 依我的解讀,Apple 所說的「packages which specify no hostArchitecture」(未指定 hostArchitecture 的套件)指的是 distribution 裡沒有這個屬性、或是根本沒有 distribution 的套件。

我在 macOS 26.6.2 上用兩種方式各建了一個最小的套件。5 由 pkgbuild 產生的元件套件展開後只有三個項目:Bom、PackageInfo 與 Payload,沒有 Distribution 檔案;套件裡根本沒有地方可以宣告架構,所以直接安裝一個純元件套件,正是「未指定架構」最單純的情況。product archive 則不同:對同一個元件執行 productbuild --synthesize,產生的 distribution 裡寫入了下面這行 options,而用它建出的 archive 經過 pkgutil --expand 後也帶著同一行:

<options customize="never" require-scripts="false" hostArchitectures="x86_64,arm64"/>

所以在 26.6 上以標準方式執行 productbuild 產出的套件,本來就宣告了兩種架構;按 Apple 的措辭,新的預設值對它並不適用。真正會改變的是那些以手寫 distribution 建出、卻省略該屬性的套件,那些從來不輸出這個屬性的第三方工具所組出的套件,以及純元件套件。已封存的 Distribution XML 參考文件讓這道落差一目了然:它列出的有效代碼是「i386、x86_64 與 ppc」,其中沒有 arm64,因此照著那份文件寫出來的 distribution,根本沒有 arm64 這個代碼可以填。6

26.6.2 上的 productbuild 手冊補上了 Apple 那則說明沒交代的「之前」是什麼樣子。「On Apple Silicon, the macOS Installer will evaluate the product’s distribution under Rosetta 2 unless the arch key includes the arm64 architecture specifier.」(在 Apple 晶片上,除非 arch 鍵包含 arm64 架構指定符,否則 macOS 安裝程式會在 Rosetta 2 之下評估產品的 distribution。)以及「If the distribution is evaluated under Rosetta 2, any package scripts inside of product will be executed with Rosetta 2 at install time.」(如果 distribution 是在 Rosetta 2 之下評估,產品內的所有套件腳本在安裝時也會以 Rosetta 2 執行。)同一頁也描述了我看到的那個屬性背後的 requirements 鍵 arch,依我的解讀,productbuild 會把它寫成 hostArchitectures:「Starting on macOS Big Sur (11.0), productbuild will automatically specify support for both arm64 and x86_64 unless a custom value for arch is provided.」(從 macOS Big Sur(11.0)開始,除非提供自訂的 arch 值,否則 productbuild 會自動同時指定 arm64 與 x86_64 的支援。)14 也就是說,Apple 說它要改掉的那個預設行為,原本是在 Rosetta 2 之下評估,連腳本一起;而按 Apple 的說明,在 27 上未指定架構的 distribution 會改為預設 arm64。

要檢查您出貨或安裝的套件:

pkgutil --expand YourProduct.pkg /tmp/expanded
grep -o 'hostArchitectures="[^"]*"' /tmp/expanded/Distribution

沒有 Distribution 檔案,或是抓不到相符字串,按 Apple 的措辭就代表這個套件在 27 上會套用新的 arm64 預設值,裡面的腳本也會在 arm64 下執行。這才是 Apple 那則說明中真正改變行為、而不只是改變中繼資料的部分:依 uname -m 分支的 preinstall 或 postinstall 腳本會走進 arm64 那一支,而啟動 x86_64 版輔助程式的腳本則需要 Rosetta,偏偏那台機器上可能已經完全沒裝 Rosetta 了。4 Apple 的說明結尾就是它要求的稽核:「audit any remaining installer plugins to ensure compatibility on Apple silicon」(稽核剩下的安裝程式外掛,確保它們在 Apple 晶片上相容),因為 Apple 的 Rosetta 文件排除了混用的可能:「The system prevents you from mixing arm64 code and x86_64 code in the same process.」(系統不允許在同一個行程中混用 arm64 與 x86_64 的程式碼。)7

兩種安裝程式套件的結構:pkgbuild產生的元件套件包含Bom、PackageInfo與Payload,沒有Distribution檔案,因此在macOS 27上沿用arm64預設值;productbuild產生的產品封存宣告了hostArchitectures x86_64,arm64,不受影響。

更新,10月1日:2027年2月1日的安裝套件簽署期限

Apple 在 10月1日的開發者新聞中,為上面的安裝程式議題添了一個期限,而它和架構毫無關係:「The original Developer ID Certification Authority (Sub-CA) expires on February 1, 2027. Certificates issued by this authority will stop working on that date.」(原始的 Developer ID Certification Authority(Sub-CA)將於 2027年2月1日到期。由此憑證授權單位核發的憑證將在當天停止運作。)Developer ID 發行的兩個部分,遭遇各不相同。套件方面:「Starting February 1, 2027, .pkg files signed with an affected certificate will no longer install. Re-sign all packages with your new certificate before this date.」(自 2027年2月1日起,以受影響憑證簽署的 .pkg 檔案將無法再安裝。請在此日期前以新憑證重新簽署所有套件。)App 方面:「Previously signed and notarized Mac software (with a secure timestamp) will keep working」(先前已簽署並經過公證的 Mac 軟體(附安全時間戳記)將繼續運作),不需要採取任何行動。15

pkgutil --check-signature YourProduct.pkg 會印出套件簽署時所用的憑證鏈,其中原始憑證授權單位那一項寫著 Expires: 2027-02-01 22:12:15 +0000。我「下載項目」資料夾裡四個以 Developer ID 簽署的安裝程式,來自兩家廠商,全都顯示這一行。16 這份公告沒有提到任何 macOS 版本,所以這個期限並不是 Golden Gate 的變更,我另外寫了一篇文章:Developer ID Certification Authority 將於2027年2月1日到期,內容涵蓋如何看出您的憑證由哪一個憑證授權單位核發、一台 Mac 上的 App 與安裝程式各自顯示什麼,以及重新簽署的先後順序。

開發者還有哪些變更?

GA 說明裡其餘會碰到您出貨程式碼的項目,凡是措辭本身就是重點的地方,一律附上 Apple 的原文:9

  • 跨團隊容器。「Accessing files in other developer teams’ app data containers and app group containers no longer prompts the user for authorization; such accesses are denied by default and can be managed by the user in Privacy & Security settings.」(存取其他開發團隊的 App 資料容器與 App 群組容器內的檔案時,不再向使用者要求授權;這類存取預設會被拒絕,使用者可在「隱私權與安全性」設定中管理。)我在八月那篇文章裡寫過它的失敗模式:API 仍然會回傳 URL,拒絕則發生在讀取的當下。另一則項目補充說「XProtect may now restrict access to app data that is commonly targeted by malicious software.」(XProtect 現在可能會限制存取常被惡意軟體鎖定的 App 資料。)Privacy & Security Settings 底下的一則 Known Issue 則涵蓋了命令列的情況:「In the Files & Folders pane, a process without a bundle ID cannot be granted access to specific app data containers or app group containers owned by other developer teams.」(在「檔案與資料夾」面板中,沒有 bundle ID 的行程無法被授予存取其他開發團隊特定 App 資料容器或 App 群組容器的權限。)Apple 的變通辦法是改授予「完全取用磁碟」,而且「for the duration of the requirement」(僅限這項需求存在的期間)。
  • TCC。「Apps can no longer access the local TCC database directly.」(App 無法再直接存取本機的 TCC 資料庫。)企業版說明在拿掉這條路的同時,也給了管理者一條新的查詢途徑:「The new tccutil list command can report current privacy authorizations for specified services or apps on managed devices.」(新的 tccutil list 指令可以回報受管理裝置上指定服務或 App 目前的隱私權授權狀態。)10 而在 26.6.2 上,tccutil 只接受一個動詞:reset。13(在一台執行 27.0、未受管理的 Mac 上,這個二進位檔帶有 list,但回應的仍是 reset 的用法說明;請見 10月1日的更新。)
  • launchd,被歸在已修正之下。 在 Launch Daemons and Agents 的 Resolved Issues 裡,Apple 寫道:「Fixed: launchd no longer supports loading launchd property list files with the quarantine extended attribute.」(已修正:launchd 不再支援載入帶有隔離擴充屬性的 launchd 屬性清單檔案。)Apple 在同一份文件裡用了兩種方式使用「Fixed:」這個前綴:一種指的是它修好的問題(Accessory Access,176815987:「Fixed: Accessory Access does not work inside App Sandbox.」也就是「配件取用在 App Sandbox 內無法運作」這個問題已修正),另一種指的則是修正後的行為本身(Foundation,161588649:「Fixed: +[NSURL URLWithString:] no longer double-encodes the % of valid percent-escape sequences when encoding other invalid characters.」,也就是現在不會再重複編碼)。照第一種讀法,launchd 那行是 beta 期間的限制在 GA 時解除了;照第二種讀法,這項限制就是正式出貨的行為。這則說明沒有把出貨行為講清楚,而我還沒有測試過。(10月1日:這台 Mac 現在執行的是 27.0;這項測試仍待進行。)
  • Gatekeeper。 spctl 多了一個 purge 指令,「which will clean up Gatekeeper database entries for apps and executables which are no longer mounted」(用來清除已不再掛載的 App 與可執行檔在 Gatekeeper 資料庫中的項目)。Apple 那則項目把旗標寫成只有一個減號,所以在 27 上動手之前,請先看看工具自己的說明;26.6.2 的工具用法文字裡沒有列出任何 purge 指令。13(在 27.0 上,這個工具列出的是 spctl --purge;請見 10月1日的更新。)
  • 受管理 Mac 的網路安全性。「Starting in 27.0 operating systems, select system processes now enforce stricter network security (TLS) requirements.」(從 27.0 版作業系統開始,部分系統行程會強制執行更嚴格的網路安全性(TLS)要求。)受影響的範圍包括 MDM、宣告式管理、自動化裝置註冊、描述檔安裝、App 安裝與軟體更新,門檻則是「TLS 1.2 at minimum, using cipher suites and certificates that meet App Transport Security (ATS) requirements」(至少 TLS 1.2,且加密套件與憑證必須符合 App Transport Security(ATS)的要求)。Apple 給管理者的支援文件補充說,SCEP 與內容快取的連線不在此限。11
  • Mac 上的 App Attest。「App Attest is now available to verify the authenticity of Mac apps.」(App Attest 現在可用於驗證 Mac App 的真偽。)10
  • 受管理套件與舊版更新管理。 裝置管理「can configure the desired behavior when a managed package is removed」(可以設定移除受管理套件時的預期行為),而且「Legacy software update management no longer functions in all 27.0 operating systems」(舊版軟體更新管理在所有 27.0 作業系統上都不再運作),這等於讓舊的軟體更新指令、查詢與延後限制退場,改由宣告式管理接手。10
  • System。 System 函式庫「now provides Swift APIs for the C stat, lstat, fstat, and fstatat system calls」(現在為 C 的 stat、lstat、fstat 與 fstatat 系統呼叫提供 Swift API),另有一則 Resolved Issue 記錄了 beta 期間的建置中斷:在您自己的 FilePath 或 FileDescriptor 擴充中未加限定的 stat() 呼叫「might conflict with the new Swift stat() instance methods」(可能與新的 Swift stat() 實例方法衝突),Apple 將這一項列為 GA 時已修正。
  • 磁碟映像檔。「The new DiskImageKit framework provides Swift APIs for creating and managing standalone and stacked disk images in the Apple Sparse Image Format (ASIF) and raw disk image formats.」(新的 DiskImageKit 框架提供 Swift API,用來建立與管理 Apple Sparse Image Format(ASIF)與原始磁碟映像格式的獨立式與堆疊式磁碟映像檔。)用途是搭配 Virtualization 框架。
  • Mac Catalyst。 Catalyst App「now behave like AppKit apps when you switch to them with no open windows」(在沒有開啟視窗的情況下切換過去時,行為會和 AppKit App 一樣),所以除非啟用來自 Dock 或 Spotlight,否則切換過去不會再自動開一個視窗。
  • 啟動磁碟。 一則寫給還留著舊卷宗的人的 Known Issue:「When a Mac is running macOS 11.0, you might not be able to select the boot volume of macOS 27.0 or later as the startup disk in System Settings.」(當 Mac 執行 macOS 11.0 時,您可能無法在「系統設定」中選取 macOS 27.0 或更新版本的開機卷宗作為啟動磁碟。)Apple 的變通辦法是使用電源鍵的啟動選項畫面。

同一次發行的 Xcode 面向,已經寫在另外兩篇文章裡。Xcode 27 發行文章重現了 27A266a 上的 ARCHS_STANDARD 變更,也就是 macOS 部署目標設為 27.0 時只會解析出 arm64;Intel 文章則追蹤了三句 Intel Deprecation 的說明。Apple 在 GA 版對這幾則項目的措辭與 beta 4 的文字一致,包括讓 Intel 這條路再多開一年的那句:「Intel development is still possible with macOS versions that support Rosetta like macOS 27.」(在 macOS 27 這類支援 Rosetta 的 macOS 版本上,仍然可以進行 Intel 開發。)12

更新,10月1日:在執行 macOS 27.0 的 Mac 上做的三項檢查

撰寫本文的那台 Mac 在 9月23日升級到 macOS 27.0(26A428),所以上文有三項說法可以拿它來核對。其中兩項有明確的答案;第三項在未受管理的 Mac 上無法下定論。18

升級並沒有還原 Rosetta。 這台 Mac 上的 /Library/Receipts/InstallHistory.plist 記錄了 2023 年以來的每一次 macOS 更新;從 2023年6月到 26.6.2,每一筆都在幾秒之內配有一筆由 bootinstalld 寫入的 RosettaUpdateAuto 項目,也就是說,系統每次更新都會順帶更新 Rosetta。9月23日的 macOS 27.0 項目,是自那時以來第一筆沒有搭檔的更新。Rosetta 在一週後回來了:太平洋時間 9月30日晚間,一筆由 CoreServicesUIAgent 寫入的項目,而這正是 2023 年記錄這台 Mac 第一次安裝 Rosetta 的同一個行程;那筆項目比一家印表機廠商的第一個安裝套件開始執行早了 87 秒。這與 Apple 的說法相符:「If Rosetta was previously installed, it is not automatically restored after upgrading to macOS 27.0.」(若先前已安裝 Rosetta,升級到 macOS 27.0 後不會自動還原。)4 安裝記錄只寫下是哪個行程安裝了 Rosetta,沒有記下螢幕上出現了什麼,所以把 10月那筆項目解讀為安裝提示,是我自己的推論。

spctl 確實有 purge 指令,而且是兩個減號。 在 27.0 上,不帶參數執行 spctl 會列出 spctl --purge # purge unmounted policy scan cache entries,手冊頁則說它會清除「old policy scan cache entries. Currently those which were on volumes which are no longer mounted. Requires root access.」(舊的政策掃描快取項目。目前指的是位於已不再掛載之卷宗上的項目。需要 root 權限。)發行說明把這個旗標印成只有一個減號;工具的用法說明與手冊則都寫成兩個。我沒有執行過它。

tccutil list 在二進位檔裡,但在這台 Mac 上不肯執行。 27.0 的 tccutil 二進位檔帶有這個動詞及其用法文字 tccutil list (-s SERVICE | -b BUNDLE_ID | -s SERVICE -b BUNDLE_ID)。我在這裡以一般使用者身分執行,不論是不帶參數,還是加上 -s、-b 或兩者並用,它印出的都和 26.6.2 上一樣,只有一行:tccutil: Usage: tccutil reset SERVICE [BUNDLE_ID],而手冊頁完全沒有提到這個動詞。這台 Mac 沒有註冊裝置管理,而 Apple 的企業版說明指出這個指令回報的是「for specified services or apps on managed devices」(受管理裝置上指定服務或 App 的狀態),10 所以這個結果與「指令以註冊裝置管理為前提」的情況相符。二進位檔本身沒有說明這道門檻是什麼,我也沒有以 root 身分執行,而受管理的情況我在這裡無法測試。

更新,10月2日:「簡介」視窗的警告,以及初步尋找「設定」中的清單

下文「我無法實測的部分」所列的五項 Apple 說法中,又有兩項在同一台 Mac(macOS 27.0,26A428)上透過輔助使用 API 讀取。19

「簡介」視窗確實顯示警告。 在三個僅支援 Intel 的 App 上,Finder 的「簡介」視窗把種類標為「Application (Intel)」(應用程式(Intel)),下方有一個警告圖示和兩句話:「Intel-based apps requiring Rosetta will not open in macOS 28, the next major release. Check with the developer for an Apple silicon version.」(需要 Rosetta 的 Intel App 將無法在下一個主要版本 macOS 28 中開啟。請向開發者洽詢 Apple 晶片版本。)兩句之後接著一個「Learn more…」(瞭解更多…)連結。兩個 Universal App 顯示「Application (Universal)」(應用程式(通用)),沒有警告,並有一個「Open using Rosetta」(使用 Rosetta 開啟)勾選框,兩者都沒有勾選。一個只為 Apple 晶片建置的 App 顯示「Application (Apple silicon)」(應用程式(Apple 晶片)),警告與勾選框都沒有。換句話說,在我讀過的六個視窗裡,Apple 說明中的那個「treatment」是出現在沒有 arm64 slice 的 App 上的警告圖示與文字,而支援文件描述的那個勾選框,在 27.0 上的 Universal App 仍然存在。38 我「應用程式」資料夾中能讀取主執行檔的 116 個 App 裡,有 21 個沒有 arm64 slice。

「一般」的最上層沒有這份「設定」清單。 Apple 的說明寫著「Settings > General now lists Intel-based apps that will be incompatible with macOS 28.0.」(「設定」>「一般」現在會列出將與 macOS 28.0 不相容的 Intel App。)8 在這台 Mac 上,「一般」窗格有十四列,我依它們的輔助使用識別碼逐一讀過,其中沒有任何一列是 Intel App 的項目。那些列背後的子窗格我沒有打開,清單可能就在其中,所以這只是在一個畫面上找了一遍、沒有找到,並不能證明清單不存在。

我無法實測的部分

我在 9月16日寫這篇文章時,手邊沒有跑 macOS 27 的 Mac,所以原文中每一項 27 的行為都是 Apple 的說法。這篇文章倚賴最重的五項是:固定為「Open using Rosetta」的 App 在升級後會以原生方式啟動;原本裝有 Rosetta 的 Mac 升級後就沒有它了;「簡介」視窗會對無法在 28 上執行的 App 顯示標示;「設定」>「一般」會把它們列出來;純元件套件在 27 上會以 arm64 執行自己的腳本。上面的安裝套件實驗證明的是套件在 26.6.2 上宣告了什麼,而不是 27 會怎麼對待它們。

10月1日與 10月2日:同一台 Mac 從 9月23日起就在執行 macOS 27.0,上面的更新處理了這五項說法中的三項。消失的 Rosetta 在安裝記錄中看得到。「簡介」視窗的標示確實存在。「設定」中的清單不在「一般」的十四列裡;那些列背後的子窗格還沒有讀過。其餘兩項還沒有實際跑過:固定 App 的行為,需要一個在升級前就固定為使用 Rosetta 的 App;元件套件的檢查,則需要安裝一個測試套件。如果我跑過,每一項都會在這裡補上標註日期的段落,就像 ld64 文章後來補上 GA 段落那樣。

這週我會做的事

  1. 把您出貨的每一個套件,以及建置機器會安裝的每一個套件,都展開來 grep distribution 裡的 hostArchitectures;只要檔案不存在或屬性缺席,就當成「在 27 上是 arm64」,並帶著這個前提重讀安裝前後的腳本。45
  2. 如果任何 CI 或佈建步驟會執行 Intel 二進位檔,請在設定腳本裡明確安裝 Rosetta,別指望它撐得過升級;Apple 說它撐不過。410
  3. 照 Apple 的方式按資料夾清點 Intel 外掛:~/Library/Audio/Plug-Ins/*、~/Library/Printers/、~/Library/ColorPickers/,以及您的 Quick Look 與 Spotlight 擴充所在的位置,後者 Apple 只按類別點名、沒有給路徑。「設定」可能不會列出它們,而 macOS 28 不會載入它們。4
  4. 如果您是用複製 plist 的方式安裝 launch agent,請在 27 的機器上保留隔離屬性測一次;Apple 把這則說明歸在 Resolved Issues 之下,而它有兩種讀法。9
  5. 如果您有在做裝置管理,現在就拿 TLS 1.2 與 ATS 加密套件的要求去測您的 MDM、註冊與更新伺服器;Apple 說它的作業系統「might refuse connections」(可能拒絕連線)到設定過時或不合規的伺服器,同一頁針對 27 或更新版本的段落寫著「Non-compliant connections are blocked and the log messages appear as errors instead of warnings.」(不合規的連線會被封鎖,記錄訊息也會從警告變成錯誤),而該頁列出的例外只有 SCEP 與內容快取。911
  6. 如果您在 beta 上為了 stat() 的名稱衝突做過變通,請把它移除後重新建置;Apple 將它列為 GA 時已修正。9
  7. 10月1日新增:對您出貨的每一個套件執行 pkgutil --check-signature。如果其中憑證授權單位那一項寫著 Expires: 2027-02-01 22:12:15 +0000,請在 2027年2月1日之前重新簽署該套件;Developer ID 那篇文章有先後順序。1516

常見問題

macOS 27 是什麼時候推出的?

2026年9月14日(週一),build 為 26A428,與 iOS 27.0(24A437)和 Xcode 27(27A266a)同一天。我在 9月16日擷取 Apple 的發佈摘要時,它把這些全都列在這個日期底下。1

哪些 Mac 可以執行 macOS 27 Golden Gate?

所有 Apple 晶片的 Mac。Apple 的相容性頁面列出 35 筆機型,從 2020 年的 M1 MacBook Air、MacBook Pro 與 Mac mini,一路到 M5 與 M6 機種,另外還有 MacBook Neo(13 吋,A18 Pro)。清單上沒有任何一台 Intel Mac。2

Rosetta 在 macOS 27 上還能用嗎?

可以。Apple 的支援文件說 Rosetta「is available for any Mac with Apple silicon using macOS 27 or earlier」(可用於任何執行 macOS 27 或更早版本的 Apple 晶片 Mac),企業版說明則稱它是「a general-purpose compatibility tool through macOS 27」(直到 macOS 27 為止的通用相容性工具)。Apple 表示升級不會把它還原,所以原本裝過的 Mac 可能得再裝一次。3410

Rosetta 在 macOS 28 上還會運作嗎?

只有遊戲還能用。「Starting with macOS 28, the next major macOS release, Rosetta functionality will be available only for certain older, unmaintained games that rely on Intel-based frameworks.」(從下一個主要版本 macOS 28 開始,Rosetta 的功能將只提供給某些倚賴 Intel 框架、已無人維護的舊遊戲。)發行說明也寫著「All Intel-based software will no longer be compatible with macOS 28.0, excluding legacy games.」(除了舊遊戲之外,所有 Intel 軟體都將無法在 macOS 28.0 上相容。)34

arm64 預設值會影響哪些安裝套件?

distribution 檔案裡沒有 hostArchitectures 屬性的套件,以及根本沒有 distribution 檔案的純元件套件。在 macOS 26.6.2 上由 productbuild 產生的 product archive 會宣告 hostArchitectures="x86_64,arm64",因此落在 Apple 那句話之外。用 pkgutil --expand 展開後再 grep Distribution 檔案就能確認。456

我需要在 2027年2月之前重新簽署安裝套件嗎?

如果套件是以原始憑證授權單位核發的 Developer ID Installer 憑證簽署的,答案是需要。Apple 10月1日的公告說,自 2027年2月1日起「.pkg files signed with an affected certificate will no longer install」(以受影響憑證簽署的 .pkg 檔案將無法再安裝),而附有安全時間戳記並經過公證的 App 則會繼續運作。對套件執行 pkgutil --check-signature,就能看出它串連到哪一個憑證授權單位:原始的那一個會在 2027-02-01 到期。完整的檢查方式請見 Developer ID 那篇文章。1516

macOS 27 的「簡介」視窗對 Intel App 顯示什麼?

在 macOS 27.0(26A428)上,我檢查的三個僅支援 Intel 的 App,Finder 的「簡介」視窗都把種類標為「Application (Intel)」(應用程式(Intel)),並附上一則警告:「Intel-based apps requiring Rosetta will not open in macOS 28, the next major release. Check with the developer for an Apple silicon version.」(需要 Rosetta 的 Intel App 將無法在下一個主要版本 macOS 28 中開啟。請向開發者洽詢 Apple 晶片版本。)我檢查的兩個 Universal App 沒有顯示警告,也保留了「Open using Rosetta」勾選框,且未勾選。19

升級之後需要重新安裝 Rosetta 嗎?

Apple 表示,如果那台 Mac 在升級前裝過 Rosetta,macOS 27 不會自行把它裝回來。依照 Apple 的安裝說明,開啟任何一個 Intel App 就會讓提示再次出現,您也可以在「終端機」中用 Apple 支援文件給的指令 softwareupdate --install-rosetta 安裝。34

資料來源


  1. Apple,Releases,2026年9月16日擷取的 RSS 摘要:「macOS 27.0 (26A428)」、「Xcode 27 (27A266a)」與「iOS 27.0 (24A437)」,三者日期皆為 Mon, 14 Sep 2026。截至該次擷取,摘要中沒有更新的 macOS 項目。 ↩↩↩↩↩

  2. Apple,macOS 27 Golden Gate is compatible with these computers,2026年9月14日發布。清單內容:11 筆 MacBook Pro,從「MacBook Pro (13-inch, M1, 2020)」到「MacBook Pro (16-inch, M5 Pro or M5 Max)」;9 筆 MacBook Air,從「MacBook Air (M1, 2020)」到「MacBook Air (15-inch, M5)」;「MacBook Neo (13-inch, A18 Pro)」;5 筆 iMac,起自「iMac (24-inch, M1, 2021)」;4 筆 Mac mini,從「Mac mini (M1, 2020)」到「Mac mini (M6 or M5 Pro)」;4 筆 Mac Studio,從「Mac Studio (2022)」到「Mac Studio (M5 Max or M5 Ultra)」;以及「Mac Pro (2023)」。Apple,How to upgrade to macOS 27 Golden Gate,2026年9月14日發布:「macOS 27 is compatible with any Mac with Apple silicon, which includes any Mac with an M-series chip or A-series chip.」 ↩↩↩↩↩↩

  3. Apple,Using Intel-based apps on a Mac with Apple silicon,2026年9月14日發布:「Rosetta is available for any Mac with Apple silicon using macOS 27 or earlier. Starting with macOS 28, the next major macOS release, Rosetta functionality will be available only for certain older, unmaintained games that rely on Intel-based frameworks.」關於那個選項:「If this setting is available for your app, you can use it in macOS 27 or earlier to force the app to open as an Intel-based app, which allows it to use Intel-only plug-ins, extensions, and other add-ons.」文中給的終端機安裝指令是 softwareupdate --install-rosetta。 ↩↩↩↩↩↩↩↩↩↩

  4. Apple,macOS 27 Golden Gate Release Notes,2026年9月16日透過 Apple 的文件 JSON 端點擷取。Overview:「The macOS 27 SDK provides support to develop apps for Mac computers running macOS 27 Golden Gate.」Rosetta 章節的 New Features(168097174)與 Deprecations(163213094、171187112、176042635),引文見正文。 ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩

  5. 作者於 2026年9月16日在 macOS 26.6.2(build 25G83)上的測試。pkgbuild --root root --identifier com.blakecrosley.probe --version 1.0 --install-location / probe-component.pkg 產生的元件套件,其 pkgutil --expand 輸出只有 Bom、PackageInfo 與 Payload,沒有 Distribution;PackageInfo 記錄的是 generator-version="InstallCmds-864.12 (25G83)"。productbuild --synthesize --package probe-component.pkg distribution.xml 產生的 distribution,其 options 元素為 <options customize="never" require-scripts="false" hostArchitectures="x86_64,arm64"/>;以 productbuild --distribution distribution.xml --package-path . probe-product.pkg 建出的 product archive,展開後的 Distribution 也帶著同一行。 ↩↩↩↩↩

  6. Apple,Distribution XML Reference,Documentation Archive,options 元素表格的 hostArchitectures 列(String、Optional):「A comma-separated list of supported architecture codes. Valid codes are i386, x86_64, and ppc.」擷取日期為 2026年9月16日。 ↩↩↩↩

  7. Apple,About the Rosetta translation environment,2026年9月16日透過文件 JSON 端點擷取:Rosetta「will be available through macOS 27」,身分是「a general-purpose tool for Intel apps」,而且「Beyond this timeframe, we will keep a subset of Rosetta functionality aimed at supporting older unmaintained gaming titles, that rely on Intel-based frameworks」;「macOS 27 directly integrates support for Intel binary translation, without needing to install Rosetta」。關於混合行程:「The system prevents you from mixing arm64 code and x86_64 code in the same process. Rosetta translation applies to an entire process, including all code modules that the process loads dynamically.」 ↩↩

  8. Apple,macOS 27 Golden Gate Release Notes(同 4):Deprecation Information(169548657):「Intel-based applications that will no longer run in macOS 28.0 now display a treatment in Get Info.」EcosystemUI(175697313):「Settings > General now lists Intel-based apps that will be incompatible with macOS 28.0.」Gaming(166398727):sudo game-test-tool enable 那則項目,引文見正文。 ↩↩↩↩

  9. Apple,macOS 27 Golden Gate Release Notes(同 4):System Integrity Protection(161835690、178668601)、Privacy & Security Settings 的 Known Issues(184660124)、TCC(90775556)、Launch Daemons and Agents 的 Resolved Issues(166415497),以及與之並列比較的兩則「Fixed:」項目 Accessory Access(176815987)與 Foundation(161588649)、Gatekeeper(123097648)、Network Security(176055825)、System(160612181、177911316)、Disk Images(177868758)、Mac Catalyst(69906818)、Startup Disk(166640903)。「開發者還有哪些變更」一節中的每一則引文,都出自對應編號的項目。 ↩↩↩↩↩

  10. Apple,What’s new for enterprise in macOS Golden Gate 27,2026年9月14日發布,9月28日重新發布並加入 27.0.1 一節;以下每一句在 10月1日的版本上都沒有改變:「If Rosetta was previously installed, it will not be automatically restored upon upgrading to macOS 27. Rosetta will continue as a general-purpose compatibility tool through macOS 27.」;「App Attest is now available to verify the authenticity of Mac apps.」;「The new tccutil list command can report current privacy authorizations for specified services or apps on managed devices.」;「Device management can configure the desired behavior when a managed package is removed, ensuring unwanted data and files are not left behind on devices when no longer needed.」;「Legacy software update management no longer functions in all 27.0 operating systems.」 ↩↩↩↩↩↩↩↩↩↩

  11. Apple,Prepare your network environment for stricter security requirements,2026年9月16日擷取:「Starting with version 27.0 of iOS, iPadOS, macOS, watchOS, tvOS, and visionOS, Apple operating systems might refuse connections to servers with outdated or non-compliant TLS configurations due to additional network security requirements.」「Servers must support TLS 1.2 or later, use ATS-compliant ciphersuites, and present valid certificates that meet ATS standards.」在以「On version 27 or later:」開頭的段落中:「Non-compliant connections are blocked and the log messages appear as errors instead of warnings.」該頁點名的例外:SCEP 伺服器與內容快取伺服器。 ↩↩↩

  12. Apple,Xcode 27 Release Notes,Intel Deprecation 章節,2026年9月16日透過文件 JSON 端點擷取。New Features(161837535):「Build targets with a min deployment target set to macOS 27.0 or DriverKit 27.0 will not build Universal by default. The ARCHS_STANDARD build setting will no longer include x86_64 when MACOSX_DEPLOYMENT_TARGET or DRIVERKIT_DEPLOYMENT_TARGET >= 27.0.」Deprecations(162138432):「Xcode 27 will only install and run on Apple silicon Macs. The macOS 27 SDK supports back deploying Universal (Intel and Apple Silicon) apps to macOS 12 and later. Intel development is still possible with macOS versions that support Rosetta like macOS 27.」ARCHS_STANDARD 的 GA 版重現,是 Xcode 27 發行文章的註腳 4。 ↩

  13. 作者於 2026年9月16日在 macOS 26.6.2(build 25G83)上的測試:spctl 不帶任何參數時會印出「System Policy Basic Usage」,用法文字中沒有任何 purge 指令;tccutil 不帶參數與 tccutil list 都會印出「tccutil: Usage: tccutil reset SERVICE [BUNDLE_ID]」。 ↩↩↩

  14. 2026年9月16日在 macOS 26.6.2(build 25G83)上執行 man productbuild,PRE-INSTALL REQUIREMENTS PROPERTY LIST 的 arch 鍵:「On Apple Silicon, the macOS Installer will evaluate the product’s distribution under Rosetta 2 unless the arch key includes the arm64 architecture specifier.」「If the distribution is evaluated under Rosetta 2, any package scripts inside of product will be executed with Rosetta 2 at install time.」「Starting on macOS Big Sur (11.0), productbuild will automatically specify support for both arm64 and x86_64 unless a custom value for arch is provided.」 ↩↩

  15. Apple,「Upcoming expiration of Developer ID Certification Authority (Sub-CA)」,開發者新聞,2026年10月1日,引文見正文。 ↩↩↩↩↩

  16. 作者於 2026年10月1日在執行 macOS 27.0(26A428)的 Mac 上的檢查:對 ~/Downloads 中四個以 Developer ID 簽署的 .pkg 檔案執行 pkgutil --check-signature(其中三個來自同一家廠商,受信任時間戳記分別為 2025年9月28日、12月14日與 12月29日;另一個來自另一家廠商,時間戳記為 2014 年)。每條憑證鏈中「Developer ID Certification Authority」那一項都顯示「Expires: 2027-02-01 22:12:15 +0000」。其餘的調查結果請見 Developer ID 那篇文章。 ↩↩↩↩

  17. Apple,Releases,2026年10月1日擷取的 RSS 摘要:「macOS 27.0.1 (26A434)」,日期為 Mon, 28 Sep 2026 10:00:00 PDT;當天的摘要中沒有「macOS 27.0 (26A428)」或「iOS 27.0 (24A437)」項目,9月14日的項目則是 Xcode 27、tvOS 27.0、watchOS 27.0,以及一則 App Store Connect 更新。Apple Support,「What’s new in the updates for macOS 27 Golden Gate」,2026年9月28日發布,引文見正文。其餘內容請見 macOS 27 發行說明文章。 ↩↩

  18. 作者於 2026年10月1日在撰寫本文的那台 Mac 上所做的檢查。sw_vers:ProductVersion 27.0,BuildVersion 26A428。softwareupdate --history:「macOS 27」,09/23/2026,06:28:44;last reboot 列出 9月23日(週三)06:37 的一次重新開機,是其記錄中最早的一筆。/Library/Receipts/InstallHistory.plist,以 Python 的 plistlib 讀取:從 2023年6月17日 UTC(macOS 13.4)到 2026年9月12日(macOS 26.6.2)共 43 筆 macOS 更新項目,每一筆都在 25 秒之內配有一筆 processName 為 bootinstalld 的「RosettaUpdateAuto」項目;「macOS 27.0」的日期為 2026-09-23 13:39:44(UTC),沒有這樣的項目;「RosettaUpdateAuto」的日期為 2026-10-01 03:54:49(UTC),processName 為 CoreServicesUIAgent,其後從 03:56:16 到 03:59:53 有 17 筆某印表機廠商軟體的安裝項目;最早的「RosettaUpdateAuto」項目(2023-02-18)的 processName 同樣是 CoreServicesUIAgent。不帶參數執行 spctl 與 man spctl,引文見正文。ls -la /Library/Apple/usr/libexec/oah:runtime、translate_tool 與 debugserver 連結以及 oah 資料夾本身的日期都是太平洋時間 Sep 30 20:54,其上層 /Library/Apple/usr/libexec 則是 Sep 23 07:03。strings /usr/bin/tccutil 顯示 tccutil list (-s SERVICE | -b BUNDLE_ID | -s SERVICE -b BUNDLE_ID) 以及三行 list 用法說明;tccutil list、tccutil list -s Camera、tccutil list -b com.apple.Terminal 與 tccutil list -s Camera -b com.apple.Terminal 都會印出 reset 的用法說明,並以狀態碼 64 結束;tccutil --info 印出同一行;man tccutil 中沒有任何「list」;profiles status -type enrollment 印出「Enrolled via DEP: No」與「MDM enrollment: No」。 ↩↩

  19. 作者於 2026年10月2日在同一台 Mac(macOS 27.0,26A428)上所做的檢查,透過輔助使用 API(System Events)讀取 Finder 與「系統設定」的視窗。三個僅支援 Intel 的 App 的「簡介」(lipo -archs 對其中兩個印出 x86_64,對另一個印出 x86_64 i386):種類的值為「Application (Intel)」,其後是一張描述為「warning」的圖片、正文引述的兩句話,以及一個標題為「Learn more…」的連結。兩個 Universal App(x86_64 arm64):「Application (Universal)」,一個標題為「Open using Rosetta」、值為 0 的勾選框,沒有警告。一個 Apple 晶片 App(arm64):「Application (Apple silicon)」,沒有那個勾選框,也沒有警告。「系統設定」>「一般」:十四個列按鈕,輔助使用識別碼的結尾分別是 about、softwareUpdate、storage、appleCareAndWarranty、airDropAndHandoff、passwords、dateAndTime、languageAndRegion、loginItems、sharing、startupDisk、timeMachine、deviceManagement 與 transferOrReset。那些列背後的子窗格一個都沒有讀取。10月1日對 /Applications 及其下一層資料夾中每個 App 的主執行檔執行 lipo -archs:可讀取的有 116 個,其中 21 個沒有 arm64 slice。 ↩↩↩↩

相關文章

Xcode 27 捨棄 Intel:哪些終止、哪些仍能出貨

Xcode 27 僅能在 Apple silicon 上執行,仍可將 Universal app 回溯部署至 macOS 12,卻在部署目標達 27.0 時悄悄把 x86_64 從 ARCHS_STANDARD 移除。

14 分鐘閱讀

Xcode 27 正式推出:系統需求、部署目標,以及哪些東西壞了

Xcode 27(27A266a)於 9 月 14 日推出:需要 macOS 26.6 與 Apple 晶片,搭載 Swift 6.4,部署目標下限提高,ld64 已移除,PreviewProvider 棄用。

24 分鐘閱讀

像素藝術的光:晝夜、天氣與陰影

從原始碼實測《寶可夢 水晶》與《綠寶石》如何處理一天、雨與影子,並為 Kiradex 的像素小鎮寫出一份晝夜、天氣與陰影的規格書。

119 分鐘閱讀