5P by GN⁺ | ★ favorite | 댓글 1개
  • OS.js는 브라우저 안에서 데스크톱식 환경을 만들기 위한 오픈소스 JavaScript 플랫폼
  • 창을 배치하고 다루는 창 관리자가 포함돼 웹 앱을 데스크톱처럼 구성할 수 있음
  • 애플리케이션 개발을 위한 애플리케이션 API와 GUI 툴킷을 함께 제공함
  • 파일 관련 기능은 파일시스템 추상화로 다루도록 구성됨
  • 창 관리, 앱 개발, GUI, 파일 처리를 한 플랫폼에서 묶어 웹 데스크톱 구현의 출발점으로 활용할 수 있음

OS.js가 제공하는 웹 데스크톱 구성 요소

  • OS.js는 오픈소스 JavaScript 기반 웹 데스크톱 플랫폼임
  • 데스크톱 UI

    • 창 관리자가 포함돼 데스크톱식 UI 구성을 지원함
  • 애플리케이션 개발

    • 애플리케이션 API와 GUI 툴킷을 제공해 웹 데스크톱용 앱 개발에 필요한 기본 요소를 갖춤
  • 파일 처리

    • 파일 관련 기능은 파일시스템 추상화를 통해 다룰 수 있음

댓글과 토론

Hacker News 의견들
  • 여담이지만 https://windows93.net/웹 데스크톱 콘셉트 중에서는 지금까지 가장 마음에 듦

    • Windows 96도 꽤 괜찮음
      https://windows96.net/

      인터넷 운영체제는 내가 흥미롭게 보는 틈새 주제라서, 웹사이트에 목록을 만들어뒀음. 곧 OS.js도 추가할 예정임

      보고 싶다면 여기 있음:
      https://www.whoisthisjoker.com/jokerlinks/virtualoperatingsy...

      [수정] Hacker News는 Markdown을 지원하지 않는 것 같아서 읽기 좋게 고침

    • “부팅 로그”에 Safari is teh new Internet Explorer라고 뜨는 게 아이러니함. Safari는 Chrome의 완전한 독주에 맞서는 마지막 두 축 중 하나인데, Google은 WEI를 억지로 밀어 넣으려 하고 있음

      열린 웹은 죽어가고 있고, 이런 메시지들이 그 죽음에 일조한다고 봄

    • 비슷한 결로는 Windows RG(really good edition)가 제일 좋음: https://www.newgrounds.com/portal/view/27549

    • 스피커 음량을 100%로 해둔 상태에서 그 햄스터 아이콘은 누르지 않는 게 좋음 :S

    • 웃기네, 특히 Windows 95를 써본 사람이라면 더 재미있을 듯

  • 최근 HN에 이런 것들이 많이 올라오는 걸 보고, 웹 데스크톱이 다시 인기 있어지는 현상에 대해 블로그 글 [1]을 썼음. OS.js는 몇 년 전부터 추적하던 초기 프로젝트 중 하나였고, 설계와 문서화가 정말 잘 되어 있음
    인터페이스는 늘 2000년대 중반 GNOME 2를 쓰던 배포판들을 떠올리게 했는데, 대부분의 향수형 웹 데스크톱이 Windows 9x 테마를 쓰는 것과 달라서 좋았음

    [1] https://system31.simone.computer/blog/desktops-zip

    • EyeOS는 이미 밀레니엄 전후에 이런 걸 하고 있었음:

      https://en.wikipedia.org/wiki/EyeOS

      OS.js의 첫 릴리스는 그보다 10년도 더 뒤인 2015년쯤이었음

  • 이게 실제 내 Windows 데스크톱 창 관리자보다 빠르고 반응성이 좋다는 게 웃김. 앱 여는 속도 같은 부분에서 특히 그럼

    • 최신 하드웨어에서도 Windows 11이 이렇게 느린 게 이상함. 최신 CPU와 16GB RAM에서도 뭔가 로드하는 데 꽤 오래 걸리고, 비슷한 가격대의 MacBook Air와 비교하면 매우 굼뜸

      이 정도 차이가 하드웨어 차이 때문이라고는 상상하기 어려움. M2가 빠르긴 하지만 Intel 12세대도 훨씬 느린 건 아니고, 전력을 더 많이 먹을 뿐임

      그렇다면 소프트웨어 문제라는 뜻임. NT 계열 커널이 얼마나 좋았는지를 생각하면 슬픈 일이고, 그 위에 점점 더 나쁜 운영체제를 만들어온 셈임. 데스크톱 시장 점유율이 거의 100%에서 지금 60%쯤으로 떨어진 건 스스로 초래한 일이고, AOL이나 Yahoo의 길을 가는 것도 시간문제처럼 보임

    • 이 말을 시험해보려고 Brave 브라우저를 드래그했더니, 12코어/24스레드 5900X에서 PC 전체가 2초 동안 멈췄음

  • Tetris 블록이 캔버스 픽셀 격자에 맞춰져 있지 않아서 불필요한 안티앨리어싱이 생기는 것 같음. 그래서 블록 테두리가 계속 흐릿해 보임

    고치려면 사용자가 Tetris 캔버스 위로 끌어다 놓을 수 있는 “청소 천” 앱을 추가해서, 블록을 가로로 0.5픽셀 움직이게 하면 됨

    더 좋게는 청소 천과 겹친 블록만 움직이면 됨 :)

  • 전체가 canvas로 렌더링될 줄 알았는데 아니었음. HTML을 쓰고, 그림판 같은 곳에만 canvas를 쓰고 있음

    • 사람들이 UI를 만들 때 CSS가 제공하는 좋은 것들을 과소평가함

      전부 canvas로 만들면 아이콘 텍스트, 박스, 버튼 등을 가운데 정렬하고, 맞추고, 늘리고, 애니메이션하기 위해 flexbox 같은 것을 다시 구현해야 함

      이미 구현되어 있고 사실상 모든 플랫폼에서 고도로 최적화된 레이아웃 엔진을 두고, 그냥 HTML에 머무르면 되지 않을까?

    • 실제로 HTML만으로도 다 가능함. 내 데스크톱 환경은 가능하면 시맨틱 HTML을 쓰고, 아이콘 격자에는 grid 같은 현대적 CSS를 사용함

      다만 언젠가는 전체를 canvas로 만드는 WebAssembly 완전 재작성도 고려하고 있음. 그러면 다른 플랫폼으로 훨씬 이식하기 쉽고, 언젠가 브라우저를 벗어날 가능성도 더 커질 것 같음

    • 나도 제일 먼저 확인한 게 그 부분이었음. 색상 입력 슬라이더와 범위 입력까지 HTML로 되어 있는 걸 보니 꽤 좋았음

  • 파일 시스템에 대한 사설 인터넷 접근이라는 비슷한 콘셉트를 만든 적 있음. 여기 있음: https://github.com/prettydiff/share-file-systems

    창과 상태 관리는 내 개인 사이트에서 데모로 볼 수 있음: https://prettydiff.com

  • OS.js 위에 있는 우리 운영체제인 웹 브라우저 위에 있는 우리 운영체제인 Windows 위에, 또 하나의 운영체제(컴파일러)를 만든 셈임

  • 이상하게 이런 걸 만들거나 써보고 싶어지는데, 동시에 실제 사용 사례는 떠오르지 않음

    • 새 노트북을 사도 아무것도 설치할 필요가 없다고 생각하면 됨. 모든 프로그램, 파일, 설정이 클라우드에 있고, 프로그램은 파일을 먼저 내려받지 않아도 클라우드 저장소에서 바로 열 수 있음. 그래서 사용자 파일과 문서를 기기에 저장할 필요가 없음

      기기가 그런 데스크톱만 실행한다면, 이런 인터넷 운영체제는 시스템 데이터용 최소 저장공간만 있는 Chromebook 스타일 기기에서 가장 잘 돌 수 있음. 인터넷 데스크톱만 실행하도록 잠그고, 전체 설정도 클라우드에 저장해서 로그인하면 자동으로 구성되게 만들 수 있음. 그러면 하드웨어만 구하면 바로 사용할 수 있고, 설정·설치·드라이버 같은 걸 만질 필요가 없어짐

      모든 사용자와 모든 상황에 맞지는 않겠지만, 어떤 시나리오에서는 매우 유용할 수 있음

    • 사용 사례는 덤 터미널로 돌아가는 것임. 많은 기업은 이미 원격 데스크톱과 VPN을 가능한 한 많이 쓰고 있지만, 직원에게 장치를 지급하고 전체 운영체제는 원격에서 돌리게 해서 그 장치를 사실상 터미널로 만들고 싶어 하는 기업도 많을 것임

      그러면 직원이 생성한 데이터의 100%가 조직의 서버와 네트워크 안에 남음. 좋은 직원 경험이 된다는 뜻은 아니지만, 분명한 사용 사례는 됨

  • Buddy Pond가 떠오름 https://buddypond.com/

  • 휴대폰에서는 시작하려면 스페이스바를 눌러야 해서 Tetris를 할 수 없었음

    한편으로는 이런 것들이 멋지다고 생각함. 왜 만들었을까? 만들 수 있었기 때문일 것임

    다른 한편으로는 그래도 왜 만드는지 여전히 궁금함

    • 누군가 휴대폰에서 저 안의 Tetris를 할 수 있도록 가상 키보드 지원을 추가한다면, 적어도 합리적인 이유는 모두 제거할 수 있게 됨