▲GN⁺ 2025-03-31 | parent | ★ favorite | on: 리눅스를 윈도우로 바꿉시다(philipbohun.com)Hacker News 의견 Linux 배포판에서 기본적으로 Windows 바이너리를 실행하는 Wine을 사용하는 배포판을 만들자는 의견이 있음 Debian에서는 sudo apt install wine-binfmt 명령어로 쉽게 설치 가능함 다른 방법으로도 설정 파일을 수정하여 사용할 수 있음 Windows에서는 20년 된 exe 파일도 여전히 실행 가능하지만, Linux에서는 1년 된 바이너리도 업데이트로 인해 실행이 불가능할 수 있음 Windows는 앱 설치 시 모든 동적 의존성을 함께 패키징하는 반면, Linux는 앱 간에 동적 의존성을 공유함 의존성을 변경하면 앱이 작동하지 않을 수 있음 이를 해결하기 위해 Windows처럼 배포하거나 정적으로 링크하는 방법이 있음 새로운 배포판이 필요하다고 생각하지 않음 대부분의 Windows 앱은 Wine을 통해 작동 가능하지만, 한 앱을 작동시키기 위한 해킹이 다른 앱을 망가뜨릴 수 있음 각 사용자가 개별적으로 설정을 조정해야 하며, 한 사람의 컴퓨터에서 작동하는 것이 다른 사람의 컴퓨터에서는 작동하지 않을 수 있음 가장 간단한 해결책은 Wine이 포함된 컨테이너를 배포하여 모든 사용자가 동일한 아티팩트를 받고 항상 작동하도록 하는 것임 공간 비효율적이지만, 컨테이너 사용을 위해 Wine을 슬림화하는 방법이 필요함 라이선스와 소프트웨어 안티 패턴이 이 시스템의 유일한 장벽임 Zorin OS는 .exe 파일에 대한 Wine 지원을 거의 기본적으로 제공하며, Steam OS/Proton은 새로운 게임의 Linux 포트를 만들지 말고 Proton에 최적화하라는 공식 지침이 있음 Linux 배포판은 일반적으로 실행 파일을 동적으로 링크하고 이전 버전의 라이브러리를 유지하지 않음 Windows는 패키지 관리자가 없기 때문에 이전 버전의 실행 파일을 유지함 Windows Store와 최근 CLI 도구가 있지만, 전통적으로 Windows 애플리케이션 설치는 수동 다운로드와 설치를 통해 이루어짐 Linux에서도 동일한 방식으로 할 수 있지만, Linux 배포판의 패키지 관리자가 일반적으로 매우 우수함 Linux 시스템 호출은 매우 안정적이지만, 그 위의 C 라이브러리는 그렇지 않음 Windows도 동일한 문제가 있으며, Visual C++ 런타임의 일부로 libc를 배포함 Windows는 Visual Studio의 새로운 버전을 출시할 때까지 libc의 하위 호환성을 유지함 Lindows/Linspire를 원하는 사람처럼 들림 Windows ABI가 매우 안정적이라면, 왜 Win95나 NT를 사용하는 컴퓨터가 특정 소프트웨어가 작동을 멈출까봐 아무도 건드리지 않는지 궁금함 산업 환경, 공공 도서관, 기업 데이터베이스 등에서 이러한 컴퓨터를 많이 볼 수 있음 exe 파일 실행을 위한 커널 패치가 필요하지 않으며, binfmt_misc가 이를 처리할 수 있음 wine-binfmt는 PE 파일을 자동으로 Wine을 통해 실행함
Hacker News 의견
Linux 배포판에서 기본적으로 Windows 바이너리를 실행하는 Wine을 사용하는 배포판을 만들자는 의견이 있음
sudo apt install wine-binfmt명령어로 쉽게 설치 가능함Windows에서는 20년 된 exe 파일도 여전히 실행 가능하지만, Linux에서는 1년 된 바이너리도 업데이트로 인해 실행이 불가능할 수 있음
새로운 배포판이 필요하다고 생각하지 않음
Zorin OS는 .exe 파일에 대한 Wine 지원을 거의 기본적으로 제공하며, Steam OS/Proton은 새로운 게임의 Linux 포트를 만들지 말고 Proton에 최적화하라는 공식 지침이 있음
Linux 배포판은 일반적으로 실행 파일을 동적으로 링크하고 이전 버전의 라이브러리를 유지하지 않음
Linux 시스템 호출은 매우 안정적이지만, 그 위의 C 라이브러리는 그렇지 않음
Lindows/Linspire를 원하는 사람처럼 들림
Windows ABI가 매우 안정적이라면, 왜 Win95나 NT를 사용하는 컴퓨터가 특정 소프트웨어가 작동을 멈출까봐 아무도 건드리지 않는지 궁금함
exe 파일 실행을 위한 커널 패치가 필요하지 않으며, binfmt_misc가 이를 처리할 수 있음