Rust·GTK4로 만든 Linux 메일 클라이언트 Penguin Mail 1.0 공개, HN은 1.0 표기와 AI 채팅창 놓고 논쟁
- Rust와 GTK4, libadwaita로 만든 Linux 메일·캘린더 앱 Penguin Mail 1.0.0이 공개됨. GPL-3.0-or-later, x86_64 Linux용이며 .deb, .rpm, Arch, snap, tarball, Flatpak으로 배포되고 Flathub 등재는 다음 단계임
- Gmail, Microsoft(Outlook·Hotmail·Microsoft 365), Fastmail, iCloud, Yahoo와 임의의 IMAP/POP3 계정을 한 받은편지함에 모으고, 캘린더(Google Calendar, CalDAV)와 연락처(CardDAV), OpenPGP·S/MIME 서명·암호화를 지원함. 키는 사용자의 GnuPG에 두고 앱이 보관하거나 암호 구문을 묻지 않음
- AI 비서는 기본 꺼짐이고 작업마다 로컬 모델(Ollama, LM Studio), Anthropic API 키, Claude Code 중에서 고름. 메일 발송이나 설정 변경 전에 먼저 확인을 요청하고, 실행한 도구를 하나씩 화면에 보여줌
- 자체 서버가 없고 추적과 광고도 없음. Gmail 계정은 Google과, Microsoft 계정은 Microsoft Graph와 직접 통신하며 트레이에서 약 55MB로 상주함. 원격 콘텐츠는 WebKit 필터와 CSP로 두 번 차단하고 JavaScript는 기본 꺼짐
- HN 댓글은 릴리스 한 달 된 프로젝트에 1.0을 붙인 것과 임베디드 AI 채팅창을 문제 삼았고, Fastmail 테스트에서는 발신 주소 선택 불가, 파비콘 없음, 폴더 순서 꼬임이 보고됨. FreeBSD에서는 webkit6 크레이트의 v2_50을 v2_46으로 바꿔 빌드했다는 댓글이 올라옴
Hacker News 의견들
Sparrow가 생각나는 앱이네. 네이티브 Linux 메일 클라이언트는 반갑고 UI도 괜찮아 보임. 근데 이걸 1.0이라고 부르는 건 아니지. GitHub 기여자 그래프 보면 한 달치밖에 없는데, 메일 클라이언트급 복잡도를 한 달 만에 안정 버전이라고 하면 곤란함.
GitHub에 공개된 지 한 달 됐다는 게 프로젝트 나이가 한 달이라는 뜻은 아님. 증거도 없이 불안정하다고 가정하는 것도 좀 이상하고.
UI는 Mail.app 느낌이라 마음에 듦. 다만 요즘 GNOME식 햄버거 메뉴에 점 세 개 버튼 방식은 이런 앱에서 문제가 될 거임. 메뉴바에 최상위 메뉴가 몇 개 있는 쪽이 훨씬 낫더라.
메일에 AI 채팅창이 박혀 있는 게 영 이해가 안 감. 끌 수 있다는 건 알겠는데 굳이 넣어야 했나 싶음.
끝까지 읽어보면 선택 기능이고 로컬 모델로도 돌릴 수 있음. 기본은 꺼져 있음.
임베디드 AI 창은 나한테는 큰 감점임. 차라리 내 에이전트가 붙을 수 있는 CLI를 줬으면 좋겠음. 어머니 세대를 타깃으로 하면 채팅창이 맞겠지만.
이건 바이브코딩으로 만든 거라 새로 나온 큰 코드베이스가 그렇지 뭐. 예전엔 그게 코드 품질 문제로 이어졌는데 요즘은 꼭 그렇지도 않고.
Rust로 GTK 앱을 새로 만드는 게 반갑네. Linux 말고 다른 OS로도 컴파일되나? 샌드박싱은 Flatpak 같은 게 밖에서 처리하는 게 맞다고 봄.
FreeBSD에서 빌드했음. WebKitGTK 2.46.6이 깔려 있어서 Cargo.toml의 webkit6 v2_50을 v2_46으로 바꾸면 cargo build가 통과함.
Fastmail로 10분 써봤는데 발신 주소를 못 고르는 게 치명적임. 별칭이나 커스텀 도메인 쓰는 사람은 그냥 못 씀. 파비콘도 없고 폴더 순서도 엉망이고, 폴더 색은 서버가 지원 안 한다고 뜸.
나도 같은 이유로 다른 기기에서 메일을 포기했음. iCloud+ 커스텀 도메인은 기본 @icloud.com 주소로 인증하는데 발신이 그 주소로 고정되면 그건 내 주소가 아님.
TUI 버전은 없나? 나는 aerc 쓰고 있고 herald나 matcha도 있음. terminalemail.com도 있더라.
제목에 written in Rust를 붙이는 게 업계 표준임. 그게 제일 중요한 정보니까. 이건 사실 Claude가 쓴 Rust라고 해야 하지만.