Skip to content

Cross-platform hardening: fix Windows & Linux stability, networking, and packaging #6

Description

@korjwl1

Summary

macOS 구현은 안정적이나 Windows/Linux에서 23개 이슈가 발견됨. 4단계로 수정.

Phase 1: Critical Crash/Stability

  • isDaemon() PPID==1 체크가 Linux에서 오판 → 좀비 헬퍼 프로세스
  • LinuxManager.dataDir 미초기화 → DNS 영속화 전부 no-op
  • Windows DNS 리셋이 "WireGuide" 인터페이스 미감지
  • Windows 충돌 감지 완전 미작동 (getInterfaceRoutes nil)

Phase 2: Network Infrastructure

  • Linux 네트워크 변경 모니터 없음 (WiFi 전환 시 터널 끊김)
  • nftables 존재 확인 없이 호출 (구형 배포판 실패)
  • wg 바이너리 확인 없이 wg set fwmark 호출
  • WinTUN 드라이버 미번들, 에러 메시지 불명확
  • DNS 누수 테스트가 systemd-resolved에서 오탐
  • WiFi 감지 Linux에서 nmcli 전용 (iwgetid/iw 폴백 없음)
  • Windows 라우트 진단 영어 전용 ("Network Destination" 하드코딩)

Phase 3: Build & Packaging

  • PolicyKit .policy 파일 미포함
  • 전체 placeholder 값 ("My Company", "My Product") 미교체
  • 데스크탑 카테고리 Development → Network
  • nFPM 패키지 의존성 누락 (polkit, nftables, wireguard-tools 등)
  • AppImage build.sh glob 버그
  • preremove.sh 비어있음 (헬퍼/nftables 정리 안 됨)
  • MSIX manifest .exe 확장자 누락 + placeholder
  • NSIS 언인스톨러 WebView2 경로 오류

Phase 4: UX Polish

  • Sleep/wake 폴링 방식 (Linux/Windows 모두 30초 지연)
  • UAC 거부 시 피드백 없음
  • os.Chmod(0700) Windows에서 no-op
  • Linux 알림 notify-send 전용 (D-Bus 폴백 없음)

Estimated Impact

  • 신규 파일: 5개
  • 수정 파일: ~25개
  • 변경량: ~675 LOC

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions