그동안 크게 주목받지 못했지만, 착실히 업그레이드가 이루어지면서 Wine 프로젝트도 크게 발전하여 이제는 왠만한 게임들이나 주요 프로그램들이 꽤 잘 작동하는 환경이 되었습니다. 그래서 문득 그러면 .NET 10으로 만든 Windows Forms 애플리케이션도 macOS용으로 빌드된 wine으로 구동이 가능할지 궁금해졌습니다.
- 아쉽게도 .NET 10 SDK나 런타임은 Wine 환경에서 인스톨러 방식으로는 설치해서 쓸 수 없습니다.
- 그러나 win-x64 형식으로 자체 포함으로 퍼블리싱하면 단일 파일 패키지 형식, 풀어진 파일 형식이든 관계없이 잘 실행됩니다. (위의 스크린 샷과 같이)
- arm64 아키텍처인 macOS 환경에서도 정작 win-arm64 빌드로는 애플리케이션을 만들어도 실행되지 않고, win-x64로 패키징된 Windows 애플리케이션만 구동이 가능합니다. Homebrew용으로 게시된 wine 자체가 그래서 rosetta 2를 요구합니다.
제 경우, 간소화된 설치와 편리한 실행 경험을 위해서 macOS를 사용했지만 Wine 버전이 10.0 이상이라면 큰 무리 없이 Windows용으로 빌드된 .NET 10 WinForm 애플리케이션을 macOS나 리눅스에서 최적화된 경험은 아니지만 나름 써볼만할 것 같습니다.
노트: 애플 실리콘 기반 환경에서 Homebrew Cask로 wine을 사용하려면, 먼저 Rosetta 2를 활성화해야 합니다. 추후 Rosetta 2는 단계적으로 제거/축소될 예정이라 Arm64용 Wine 빌드가 최적화되어서 나올 떄를 기다려야 할 수도 있겠습니다. 또한, 애플리케이션 보안 설정을 낮춘 상태로 Homebrew Cask 패키지를 설치해야 하므로 보안에 민감한 환경에서는 주의가 필요합니다.
softwareupdate --install-rosetta --agree-to-license
brew install --cask --no-quarantine wine-stable
