10P by ironpark 1일전 | favorite | 댓글과 토론

ZAPP

MacOS 어플리케이션 배포를 간단하게.

만들게된 이유

제경우 apple store 외부에서 macOS 앱을 빌드 배포하는 경우가 있는데요.

이때 바이너리 의존성 통합 -> app 번들 코드서명,공증 -> dmg 파일 생성 -> 서명 및 공증 프로세스를 거칩니다.

이를 CI/CD 에 통합하려고 위해 다양한 툴을 설치하고 스크립트를 작성하게 되는데 배포 프로세스도 오래걸리고 새 프로젝트마다 반복되는 설정이 너무 번거로워 툴을 만들게 되었고 개인적인 최소한의 기준점을 넘어 이렇게 소개드립니다 :)

뭐가 다르죠?

  • 간편한 설치: 다른 바이너리 혹은 런타임 의존성없이 Homebrew를 통해 단일 바이너리로 빠르게 설치할 수 있어 CI 프로세스에 쉽게 통합할 수 있습니다.
  • 다기능 통합: DMG 파일 생성, pkg 파일 생성, 서명 및 공증 기능 등 배포에 필요한 다양한 기능을 하나의 도구에 담았습니다.

주요기능

  • 단일 명령어로 드래그&드롭 방식의 설치 dmg 파일 생성
  • pkg 설치파일 생성
  • 서명, 공증, staple 기능
  • 실행파일에서 사용하는 공유 라이브러리를 검색하여 앱번들 내부에 복사하고 링크 경로를 수정하여 별도의 라이브러리 설치 없이 사용할 수 있게 만들어주는 의존성 번들링 기능
세부내용은 README 에 더 자세하게 있습니다.  
내용상 부족하다고 느끼는 부분이 있으면 알려주세요!  
  
그 외에도 문서 수정, 코드 리팩토링, 기능제안, 버그 등 다양한 기여를 환영합니다!