hdiutil is deprecated in macOS 27 Golden Gate
Apple's macOS 27 Golden Gate is deprecating the venerable hdiutil in favor of diskutil image, a move that promises speed but introduces new frustrations. The transition isn't seamless; the new tool lacks critical features, handles authentication poorly, and breaks established workflows, forcing developers to adapt. This change ignites familiar Hacker News discussions about Apple's developer-unfriendly tendencies and the perpetual cycle of obsolescence in its ecosystem.
The Lowdown
The article details Apple's decision to deprecate hdiutil, a long-standing command-line utility for disk image manipulation, in macOS 27 Golden Gate. It instructs users to switch to diskutil image, which offers similar functionality but with notable differences and shortcomings.
hdiutilis officially deprecated in macOS 27.0 Golden Gate, as per itsmanpage, withdiskutil imagedesignated as its replacement.- Key
hdiutilfeatures like-puppetstrings(for parseable progress output) and severalcreate -srcfolderoptions are currently missing fromdiskutil. - The author attempted a user home folder backup with both tools:
hdiutilsucceeded after an authentication prompt for a root-owned file. diskutilfailed silently when encountering the root-owned file because it does not trigger an authentication prompt, necessitating manual removal of the problematic file.- Once the file was removed,
diskutilsuccessfully created the image, doing so significantly faster (40-45 seconds vs. 110-115 seconds) and producing a smaller file size. - File comparison revealed
diskutilautomatically "scrubbed" temporary files like the~/.Trash/folder, a behavior previously controlled byhdiutil's-scruboption. - The author concludes
diskutilrequires improvements in verbose logging, handling file permissions, and restoring the-scruboption. - A persistent bug (FB17162985) affecting both utilities with
.bnnsirfiles remains unaddressed, with Apple bizarrely requesting an iOS sysdiagnose for a macOS issue.
The author expresses frustration with Apple's deprecation strategy, questioning the necessity of replacing a functional tool with an incomplete one, thereby disrupting long-standing developer workflows and applications.
The Gossip
Apple's Arbitrary Annihilations
Commenters widely agree that Apple has a history of deprecating tools and APIs, often breaking existing workflows with little regard for backward compatibility. Some argue this is just "the march of progress" or that `diskutil` has been slowly integrating `hdiutil`'s features for a while. Others highlight examples like `xip`, `launchctl`, and `seatbelt` that remain functional despite deprecation notices, suggesting `hdiutil` might not truly disappear, just stagnate. The general sentiment leans towards frustration with Apple's perceived disregard for developer stability.
Debugging Dilemmas
A core point of contention is `diskutil`'s lack of verbose logging, making debugging significantly harder compared to `hdiutil`. The author's struggle to diagnose "Operation not permitted" without clear output resonates with commenters who face similar issues with Apple's command-line tools often prioritizing a GUI-centric experience over detailed terminal feedback.
Longevity, Linux, and LTSC Debates
The discussion broadens to Apple's perceived longevity of hardware and software support compared to Windows and Linux. Some users praise Apple for long-term OS updates, while others sharply criticize its inability to run current apps on older but still functional hardware, unlike Windows or Linux. This sparks a mini-debate about the practicality and app ecosystem of Linux, with proponents and detractors weighing in on its suitability for "normal people" and commercial software.