Hacker News 의견들
  • Linus Torvalds조차 ABI 호환성이 충분하지 않다고 말했음. 이것이 Linux가 데스크탑에서 인기가 없는 주요 이유 중 하나라고 생각함
    관련 영상

    • 친구의 말을 빌리자면, “Glibc는 완벽히 안정적인 커널 ABI를 낭비하고 있음”이라는 표현이 딱 맞음
    • AppImage나 FlatPak 같은 포맷이 이 문제를 이론적으로 해결하지만, 오래된 소프트웨어를 패키징할 사람이 없다는 게 현실적인 문제임
    • 이 주장은 여전히 일리 있지만, 12년 전 이야기라는 점도 짚고 넘어가야 함
    • Linus의 의견에 전적으로 동의함. Windows에서는 WinXP용 exe가 Win10, 11에서도 거의 항상 실행되지만, Linux에서는 Mint나 Ubuntu 버전이 바뀔 때마다 호환성 문제로 고생함
    • 이런 이유로 OpenBSD가 매력적으로 보일 수도 있음. 커널과 앱이 완전히 통합되어 있고, 단순함 덕분에 보안성과 안정성이 높음.
      하지만 오픈소스 진영이 이렇게 오래된 개념 위에서 여전히 불안정한 OS를 만든다는 건 아이러니함.
      패키징 시스템의 혼란, 깨지는 업데이트, 불안정한 glibc, 계속 바뀌는 데스크탑 환경 등은 여전히 문제로 남아 있음
  • Wine과 Proton 덕분에 Linux가 오래된 Windows 게임과 더 잘 호환되는 게 놀라움. 90~00년대 게임들이 Windows에서는 실행하기 어렵지만, Steam에서는 클릭 한 번으로 Linux에서 돌아감

    • 사실 Wine은 Windows에서도 작동함. Shorthorn 프로젝트가 XP에서 최신 소프트웨어를 돌리기 위해 사용함
    • 내 게이밍 PC는 Windows 11과 호환되지 않아 Linux로 바꿨는데, 체감상 성능 향상이 즉각적이었음. Windows는 불필요한 다운로드와 충돌이 많았지만, Linux에서는 대부분 잘 작동함. 다만 Proton에서 일부 게임의 사운드 문제는 남아 있음
    • 어떤 게임들이 Windows에서 실행하기 어려운지 구체적인 예시가 궁금함
    • 반대로, Linux 네이티브 버전의 게임이 안 돌아서 Windows 버전을 Proton으로 돌려야 했던 적도 있음
  • VB6 기반으로 GUI 유틸리티를 만드는 게 요즘의 웹 기술보다 안정적이고 생산적일 수도 있음

    • 나는 Delphi를 선택하겠음. Delphi는 Windows, Linux, macOS, Android, iOS 모두 지원함.
      또 RemObjects의 Elements는 다양한 언어로 여러 플랫폼을 타깃할 수 있는 RAD 환경임
    • 나도 VB6로 시작해서 향수가 있지만, React의 선언적 UI 모델이 가져온 발전은 부정할 수 없음. 초기 렌더와 재렌더의 구분이 사라지고, 상태 업데이트만으로 UI가 갱신되는 구조는 혁신적임
    • Delphi나 FreePascal 쪽에 한 표를 던지겠지만, 기본적인 감정에는 공감함
    • 게다가 2005년용 소프트웨어가 오늘날 시스템에서 엄청 빠르게 돌아감
    • 단, Win32의 기본 위젯과 효과만 쓸 때 얘기임. 그 이상을 하려면 웹 런타임처럼 성숙하고 문서화된 환경이 더 생산적임
  • Linux의 ABI 문제를 구체적으로 알고 싶음. 20년 넘게 Linux를 써왔지만, 패키지 매니저를 통해 설치한 앱에서는 문제를 느끼지 못했음.
    혹시 전체 역사를 아는 사람이 있다면 블로그로 정리해주면 좋겠음

    • 커널은 안정적이지만, 그래픽 앱에 필요한 시스템 라이브러리들이 자주 깨짐. GTK, Qt, X11 등 주요 구성요소가 계속 바뀌며 호환성 단절이 발생함
    • 실제 문제는 ABI가 아니라 표준화 부재임. Linux Standard Base가 이를 해결하려 했지만 관심 부족으로 사라짐.
      유지보수가 재미없다는 이유로 CADT(Rewrite 문화) 가 계속되고 있음. 예: Wayland, Rust 리라이트
      이런 환경에서는 상용 앱이 성장하기 어렵고, 오픈소스 앱도 포팅에 수년이 걸림 (예: GIMP의 GTK2→3 전환)
    • Linux는 Windows처럼 전체 스택을 포괄하지 않음. 여러 개발자의 라이브러리가 섞여 있고, 시간이 지나며 계속 변함
    • GLIBC 버전 문제를 겪어본 적 없는지 궁금함
    • 매번 OS 릴리스마다 전체를 패치하고 재컴파일하는 모델은 끔찍함.
      개발자는 배포판 중간자 때문에 고통받고, 사용자는 구버전 앱만 써야 함.
      좋은 OS라면 과거 앱을 그대로 실행할 수 있어야 함.
      Windows는 이 점에서 Linux보다 훨씬 낫고, Linux는 사회주의적 구조라 책임 주체가 없음.
      Docker가 서버 쪽에서는 해결책이지만, 데스크탑에는 적용되지 않음
  • Windows 7이나 XP 같은 클래식 UI를 가진 Linux 데스크탑이 있다면 정말 팬이 될 것 같음.
    그 우아함은 Windows 10보다 훨씬 매력적임

    • 놀랍게도 완성도 높은 1:1 XP/7 클론 DE가 아직 없다는 게 신기함.
      이런 고정된 환경을 복제하면 기능 과잉을 막고, 버그 수정과 최적화에 집중할 수 있을 것임
    • KDE용 Aero 테마를 써보길 추천함. 스크린샷만 보면 진짜 Windows 7처럼 보임
    • 하지만 이런 시도는 대부분 실패함. LinspireBeOS PC처럼 하드웨어와 함께 출하되지 않으면 유지가 불가능함
    • SerenityOS는 Win2k 스타일의 완전한 OS로, 하드웨어 지원만 갖추면 가능성이 있음.
      아니면 ReactOS가 완성되길 기다려야 함
    • XFCE에 Windows 테마를 입히면 꽤 비슷한 경험을 얻을 수 있음. 거기에 Wine 설정을 추가하면 충분함
  • Python과 WxWindows 버전 변화로 WikidPad가 깨져서 결국 Windows로 돌아왔음.
    2012년 exe는 여전히 완벽히 작동함. 개인적으로 Windows 2000 Server SP4가 최고의 데스크탑 OS였다고 생각함

    • Cutler가 감독한 마지막 버전인 Server 2003이 내 선택임. 기술적으로 소스 접근도 가능
    • Debian에서도 비슷한 문제를 겪었지만, debootstrap과 snapshots.debian.org로 해결함.
      GPU 가속은 깨질 수 있지만 X11은 여전히 강력한 하위 호환성을 유지함
    • 2025년에 이르러서도 “Task Manager가 CPU 15%를 먹는다”는 말을 듣는 걸 보면, Windows 11은 여전히 비효율적
  • Microsoft가 이제 자신들이 만든 embrace, extend, extinguish 전략의 맛을 볼 때가 됐다고 생각함

    • 내 생각엔 Windows 13은 Linux 커널 기반으로 전환할 수도 있음.
      실제로 Microsoft는 지난 10년간 Linux와 오픈소스를 적극적으로 수용해왔음
  • Linux의 아이디어는 좋지만, 여전히 하드웨어 지원이 부족함. ARM이 확산되면 더 악화될 것 같음.
    Google이 왜 Android를 진짜 데스크탑 OS로 만들지 않는지 의문임. ChromeOS는 너무 제한적임

    • 사실 Linux는 장치에 따라 다르지만 Windows보다 호환성이 나은 경우도 많음.
      Google은 Android 16부터 데스크탑화를 진지하게 추진 중임.
      ChromeOS도 특정 작업에는 충분히 훌륭함.
      다만 Google은 고객의 목소리를 듣는 데는 약함.
      그래도 웹 기술 발전에 기여한 점은 인정해야 함
    • ChromeOS는 결코 장난감이 아님. 개발 환경으로는 macOS보다 나은 부분도 있음.
      마지막으로 써본 게 2013년이라면 지금은 완전히 다름
    • 요즘은 오히려 Linux만 지원하는 하드웨어도 많음
    • 데스크탑 환경에서는 대부분의 하드웨어가 바로 작동함. 특이한 장비만 아니면 문제 없음
  • 주요 배포판들이 binfmt_misc를 이용해 Wine을 기본 등록해주면 좋겠음.
    Windows 앱을 Linux 보안 메커니즘 안에서 격리 실행하고, 로그와 크래시 리포트를 통합 관리하면
    Windows 대체 OS로서 현실적인 길이 열릴 것임

    • 이런 기능이야말로 Linux를 초보자 친화적으로 만드는 핵심임
  • Longene 프로젝트가 다시 떠오름.
    Linux 커널에 Windows API를 통합하려던 시도로, 흥미로운 역사적 참고 사례임