HN
Today

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.

72
Score
21
Comments
#1
Highest Rank
4h
on Front Page
First Seen
Aug 22, 7:00 PM
Last Seen
Aug 22, 10:00 PM
Rank Over Time
1111

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.

  • hdiutil is officially deprecated in macOS 27.0 Golden Gate, as per its man page, with diskutil image designated as its replacement.
  • Key hdiutil features like -puppetstrings (for parseable progress output) and several create -srcfolder options are currently missing from diskutil.
  • The author attempted a user home folder backup with both tools: hdiutil succeeded after an authentication prompt for a root-owned file.
  • diskutil failed 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, diskutil successfully created the image, doing so significantly faster (40-45 seconds vs. 110-115 seconds) and producing a smaller file size.
  • File comparison revealed diskutil automatically "scrubbed" temporary files like the ~/.Trash/ folder, a behavior previously controlled by hdiutil's -scrub option.
  • The author concludes diskutil requires improvements in verbose logging, handling file permissions, and restoring the -scrub option.
  • A persistent bug (FB17162985) affecting both utilities with .bnnsir files 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.