macOS를 (진심으로) 일관되게 형편없게 만드는 방법

2026년 3월 27일 공개된 이 기사는 macOS 26의 윈도우 모서리 곡률(Corner Radius) 불일치 문제를 해결하기 위해, 모든 서드파티 앱의 곡률을 23.0으로 강제 통일하는 역발상적인 기술적 해결책을 제시합니다. 시스템 무결성 보호(SIP)를 해제하지 않고도 Objective-C 런타임 스위즐링을 통해 시각적 일관성을 확보하는 것이 핵심입니다.

AI 요약

2026년 3월 27일에 게시된 이 블로그 글은 macOS 26 업데이트 이후 더욱 심화된 윈도우 모서리의 시각적 불일치 문제를 다룹니다. 저자는 애플(Apple)과 유튜브(YouTube) UI에서 나타나는 과도한 라운딩 트렌드가 디자인 생태계를 오염시키고 있으며, 특히 시스템 앱과 서드파티 앱 간의 모서리 곡률이 서로 달라 사용자 경험을 해치고 있다고 비판합니다. 기존에는 이를 해결하기 위해 보안 위험을 무릅쓰고 시스템 무결성 보호(SIP)를 비활성화하여 루트 권한으로 라이브러리를 수정해야 했습니다. 그러나 저자는 '모두 각지게' 만드는 대신 '모두 둥글게' 만드는 역발상을 통해, SIP를 건드리지 않으면서도 서드파티 앱의 곡률을 시스템 앱 수준으로 끌어올려 일관성을 맞추는 코드를 제안합니다. 이는 단순한 미적 개선을 넘어 시스템 보안과 UI 일관성 사이의 타협점을 찾는 기술적 시도로 평가됩니다.

핵심 인사이트

  • 날짜 및 버전: 2026년 3월 27일, macOS 26의 디자인 불일치 문제를 해결하기 위한 포크(Fork) 솔루션이 공개됨.
  • 수치적 통일: 윈도우의 모서리 곡률을 23.0(kDesiredCornerRadius)으로 고정하여 모든 서드파티 GUI 앱에 적용함.
  • 대상 앱 식별: 번들 식별자(Bundle Identifier)가 com.apple.으로 시작하지 않는 앱에만 코드를 적용하여 시스템 앱과의 충돌을 피함.

주요 디테일

  • 기술적 구현: Objective-C의 objc/runtime.h를 활용해 NSThemeFrame 클래스의 _cornerRadius, _topCornerSize, _bottomCornerSize 등 주요 메서드를 런타임 스위즐링(Swizzling)함.
  • 보안 이슈: 사파리(Safari) 같은 시스템 앱을 수정하려면 SIP를 비활성화해야 하므로, 보안 취약점을 방지하기 위해 서드파티 앱의 UI만 수정하는 방식을 채택함.
  • 디자인 비판: 유튜브 UI의 라운딩 처리를 사례로 들며, 대기업 디자이너들의 결정을 맹목적으로 따르는 디자인 업계의 '팔로잉(Following)' 현상을 비판함.
  • 런타임 로직: __attribute__((constructor))를 사용하여 앱 로드 시점에 즉각적으로 UI 수정 로직이 실행되도록 설계됨.

향후 전망

  • UI 커스텀 확산: 애플의 폐쇄적인 UI 정책에 반발하여 SIP를 해제하지 않고도 시각적 요소를 변경하려는 유사한 런타임 트윅(Tweak)이 늘어날 것으로 예상됨.
  • 표준화 논의: 윈도우 모서리 곡률과 같은 세부 디자인 요소에 대한 OS 차원의 공식적인 커스터마이징 옵션 요구가 커질 수 있음.
출처:hackernews
Share

이것도 읽어보세요

댓글

이 소식에 대한 의견을 자유롭게 남겨주세요.

댓글 (0)

불러오는 중...