macOS 앱 Google 로그인이 Chrome에서 먹통 — ASWebAuthenticationSession 버그와 external browser 우회

iOS/macOS 코드를 같은 Swift 패키지로 공유하는 앱을 만들고 있다. 로그인은 Apple/Google SSO를 쓴다. iOS에서는 Google 로그인이 잘 됐다. 그런데 macOS 빌드에서만 Google 로그인이 끝까지 완료가 안 됐다. 버튼을 눌러도 아무 반응이 없거나, 인증창이 떠도 “계속"을 누르면 OAuth 동의 페이지가 안 뜨고 브라우저 창만 덜렁 열렸다. 같은 코드인데 왜 한쪽 플랫폼에서만 깨지는가. 이게 며칠간 이어진 삽질의 시작이었다. 결론부터 말하면 범인은 ASWebAuthenticationSession이었고, macOS에서는 이 API를 쓰지 않고 외부 브라우저를 직접 여는 방식으로 바꿔서 해결했다. 이 글은 그 과정과, macOS 데스크톱 OAuth를 어떻게 구현해야 하는지에 대한 정리다. ...

2026-06-26 11:04 · 8분 소요 · Seunghan

Mole로 맥 190GB 정리한 후기 — 개발자 맥에 쌓인 캐시의 실체

개발하다 보면 디스크가 어느 순간 꽉 찬다. Xcode 빌드하다 용량 부족 에러가 뜨고, Docker 이미지 pull이 실패하고, npm install이 ENOSPC를 뱉는다. 저장소 확인해보면 “시스템 데이터"가 수백 GB를 차지하고 있는데, 정작 뭐가 그렇게 큰지 알 수가 없다. CleanMyMac 같은 도구가 있지만 연 9만원짜리 구독이고, 개발자 특화 캐시는 잘 못 잡는다. 그러다 GitHub에서 34K 스타를 받은 오픈소스 CLI 도구 Mole을 발견했다. 설치부터 190GB 정리까지의 실전 기록을 남긴다. Mole이 뭔가 Mole은 대만 개발자 tw93이 만든 macOS 시스템 정리 CLI 도구다. Shell 79%와 Go 21%로 작성됐고, MIT 라이선스다. ...

2026-03-30 00:00 · 7분 소요 · Seunghan

Godot 4로 다마고치 만들기 — Unity 포기하고 전환한 이유와 macOS에서 겪은 좌표 지옥

Unity로 다마고치를 만들다가 멈췄다 올해 초에 AI 생성형 다마고치 프로젝트를 시작했다. 프롬프트를 입력하면 AI가 펫 이미지를 생성해주고, 밥 주고 씻기고 놀아주면서 키우는 방치형 게임이다. 처음에는 당연히 Unity를 선택했다. 2D 게임이니까 Unity면 충분하다고 생각했고, WebGL export로 모바일 웹뷰에 임베딩하면 크로스 플랫폼도 해결될 거라고 봤다. 문제는 바이브코딩이었다. Claude Code로 게임 로직을 짜는데, Unity의 .unity 씬 파일은 직렬화된 YAML에 GUID 참조가 가득하다. AI가 씬 구조를 읽고 이해하기가 사실상 불가능했다. C# 코드는 그나마 낫지만, Unity는 하나의 기능을 구현하는 패턴이 너무 다양하다. MonoBehaviour 싱글톤, ScriptableObject 이벤트, 의존성 주입, ECS — AI가 프로젝트에서 어떤 패턴을 쓰는지 먼저 파악해야 코드를 짤 수 있다. 이건 느리다. ...

2026-03-23 00:00 · 7분 소요 · Seunghan
개인정보처리방침 이용약관 면책조항 문의