Repository navigation
바뀐 점
🐛 macOS: 잠긴 맥이 밤새 화면을 켰다 껐다 하던 문제 수정
타이머가 동작하는 중에 맥을 잠그면, 꺼진 화면이 30초마다 다시 켜졌습니다. 그때마다 잠금 화면 창이 쌓여 밤새 수천 개가 되었고, 아침에 WindowServer가 CPU를 크게 쓰며 마우스가 느려졌습니다.
- 이제 화면이 잠겼거나 꺼져 있는 동안에는 화면을 깨우지 않습니다. 다른 사용자로 전환된 동안에도 마찬가지입니다.
- 절전 방지 자체는 그대로입니다. 잠긴 동안에도 시스템은 잠들지 않고, 잠금을 풀면 화면보호기 차단도 이어집니다.
- Windows·Linux는 이 문제가 없었고 바뀐 점도 없습니다.
이미 창이 많이 쌓였다면 업데이트 후 로그아웃했다가 다시 로그인하거나 재시동하면 정리됩니다.
🔒 입력 처리 안전성 강화
앱이 외부에서 받는 입력을 읽는 코드를 점검해 10건을 고쳤습니다. 외부 입력은 설정 파일, 입력 창 결과, 명령줄, Linux D-Bus 메시지입니다.
- Linux: 같은 세션의 다른 프로그램이 망가진 D-Bus 메시지를 보내면 앱이 멈추거나 메모리 밖을 읽을 수 있었습니다. 이제 길이·문자열 끝·중첩 깊이를 모두 검사하고 잘못된 메시지는 버립니다.
- 모든 OS: 설정 파일이 잘려 있거나 숫자가 아주 길어도 메모리 밖을 읽거나 값이 넘치지 않습니다.
- 네트워크로 닿는 경로는 없고, 같은 사용자 권한의 입력만 해당합니다.
설치
| OS | 방법 |
|---|---|
| Windows | 설치 프로그램 winget install SosomLab.NexaCoffee · choco install nexa-coffee / 포터블 winget install SosomLab.NexaCoffee.Portable · choco install nexa-coffee-portable |
| macOS | brew install --cask kiros33/tap/nexa-coffee · 업데이트 brew upgrade --cask nexa-coffee |
| Linux | pkg.sosomlab.com 저장소 등록 후 sudo apt install nexa-coffee / sudo dnf install nexa-coffee · brew install kiros33/tap/nexa-coffee-portable · 또는 tar.gz를 풀고 ./install.sh |
자산
| 파일 | 설명 |
|---|---|
nexa-coffee-0.1.5-windows-setup.exe |
Windows 설치 프로그램(x64·x86) |
nexa-coffee-0.1.5-windows-x64-portable.zip · -windows-x86-portable.zip |
Windows 포터블 |
nexa-coffee-0.1.5-macos-universal.zip |
macOS(Apple Silicon · Intel) |
nexa-coffee-0.1.5-linux-x64.tar.gz |
Linux 정적 바이너리 + install.sh |
nexa-coffee_0.1.5_amd64.deb · nexa-coffee-0.1.5-1.x86_64.rpm |
Linux 패키지(pkg.sosomlab.com과 같은 파일) |
SHA256SUMS.txt |
체크섬 |
알려진 한계
- macOS: 덮개를 닫아 생기는 절전은 OS 강제 절전이라 앱이 막을 수 없습니다.
- Linux(deb/rpm):
apt remove·dnf remove는~/.config/autostart/nexa-coffee.desktop을 지우지 못합니다. 지우기 전에 메뉴에서 "로그인 시 실행"을 끄세요. - 코드 서명이 없어 Windows SmartScreen·macOS Gatekeeper 경고가 뜰 수 있습니다.
macOS: xattr -dr com.apple.quarantine "Nexa Coffee.app" 후 실행. 무결성은 SHA256SUMS.txt로 확인하세요.
What's Changed
Full Changelog: v0.1.4...v0.1.5