maildrop-macos-build
v0.1.0
Published
Remote macOS installer build launcher for Maildrop
Readme
Maildrop
사용자별 파일을 첨부하여 이메일/카카오 알림톡을 발송하는 Windows 데스크톱 앱.
기술 스택
| 분류 | 기술 | |------|------| | 백엔드 | Go 1.22+, Fiber v2, GORM | | 프론트엔드 | Alpine.js (단일 HTML) | | 데스크톱 | Wails v2 | | DB | SQLite (glebarez/sqlite) | | 메일 | gomail.v2 (SMTP) | | 카카오 | 솔라피 REST API | | Excel | excelize/v2 |
개발 환경 설정
1. Go 설치
- https://go.dev/dl/ 에서 Go 1.22 이상 설치
- 설치 확인:
go version
2. Wails CLI 설치
go install github.com/wailsapp/wails/v2/cmd/wails@latestWails 의존성 확인:
wails doctor누락된 항목이 있으면 안내에 따라 설치. Windows에서는 보통 아래 항목이 필요:
- WebView2 Runtime (Windows 10/11에 기본 포함)
- GCC 컴파일러: MSYS2 설치 후
pacman -S mingw-w64-x86_64-gcc- MSYS2 설치 후 환경변수 PATH에
C:\msys64\mingw64\bin추가
- MSYS2 설치 후 환경변수 PATH에
3. Go 의존성 설치
go mod download4. Inno Setup 설치 (설치 프로그램 빌드용, 선택)
Windows 설치 파일(.exe)을 만들 때 필요. 개발/테스트만 할 때는 불필요.
- https://jrsoftware.org/isdl.php 에서 다운로드
- 설치 시 "Install Inno Setup Preprocessor" 체크 확인
- 설치 완료 후 환경변수 PATH에 Inno Setup 경로 추가:
- 기본 경로:
C:\Program Files (x86)\Inno Setup 6 - 시스템 환경변수 편집 → Path → 새로 만들기 → 위 경로 입력
- 기본 경로:
- 터미널 재시작 후 확인:
iscc /?
5. macOS 추가 도구 (macOS에서 빌드 시)
# Xcode 커맨드라인 도구
xcode-select --install
# DMG 패키징 도구 (선택)
brew install create-dmg빌드 명령어
make test # 테스트 실행
make build # 테스트 → 빌드 (build/bin/maildrop.exe)
make dev # 빌드 → 실행
make bindings # Wails 바인딩 재생성 (App 메서드 변경 시만)
make installer-win # Windows 설치 파일 생성 (Inno Setup 필요)
make installer-mac # macOS DMG 생성 (create-dmg 필요)
make clean # 빌드 결과물 삭제주의: wails build/wails dev 실행 시 반드시 -skipbindings 플래그 사용 (Application Control 정책).
데이터 저장 경로
| OS | 경로 |
|----|------|
| Windows | %APPDATA%\Maildrop\ |
| macOS | ~/Library/Application Support/Maildrop/ |
저장되는 파일:
data.db— SQLite 데이터베이스 (사용자, 설정, 발송이력 등)maildrop.log— 실행 로그
프로젝트 구조
maildrop/
├── main.go # 진입점 (Fiber API + Wails 설정)
├── app.go # Wails 앱 (파일 다이얼로그 등)
├── msgbox_windows.go # Windows 메시지 박스
├── msgbox_darwin.go # macOS 메시지 박스
├── frontend/
│ └── index.html # Alpine.js SPA
├── internal/
│ ├── db/ # DB 모델, 초기화, CRUD
│ ├── crypto/ # AES-256-GCM 암호화
│ ├── mailer/ # SMTP 메일 발송
│ ├── kakao/ # 카카오 알림톡 (솔라피)
│ ├── user/ # 사용자 관리 (Excel/CSV 임포트)
│ ├── mapping/ # 파일-사용자 매핑
│ ├── send/ # 발송 처리
│ ├── history/ # 발송 이력
│ ├── template/ # 이메일 템플릿
│ └── settings/ # 설정 API
├── installer/
│ ├── maildrop.iss # Inno Setup 스크립트 (Windows)
│ └── create_dmg.sh # DMG 패키징 (macOS)
├── Makefile
└── CLAUDE.md # 개발 컨벤션설치 파일 배포
Windows
make installer-win실행build/installer/Maildrop_Setup_1.0.0.exe생성됨- 이 파일을 구매자에게 전달
설치 시:
C:\Program Files\Maildrop\maildrop.exe에 설치- 바탕화면 바로가기 + 시작메뉴 자동 등록
- 제거 시 프로그램 + AppData 데이터 모두 삭제
macOS
- macOS에서
make installer-mac실행 build/installer/Maildrop_1.0.0.dmg생성됨
