webOS를 설치하려는 지난 며칠간 삽질 끝에, LuneOS가 현재로써는 최선의 선택이라는 것을 알게되었다.


LuneOS는 WebOS Ports라는 명칭으로 개발되고 있는 오픈소스 펌웨어이다. 사실은 모바일 '운영체제'를 지향하고 있지만, 엄밀한 정의에 따르면 리눅스 OS위에서 작동한 webOS Layer에 관한 것이므로 firmware라고 명명한 것으로 보인다. LuneOS는 스마트폰 및 태블릿PC에서 실제로 작동하며, 그 기반은 Open webOS를 모태로 하고 있다.


현시점에 작동할 수 있는 기기는 Google Galaxy Nexus, Google Nexus 4, Nexus 5, Nexus 7, Hewlett Packard Touchpad 등이 있으며, Raspberry Pi 2Pi 3 모델에서도 작동한다고 한다. 


단순 테스트를 위한 VirtualBox Emulator 역시 제공하고 있다. qemux86 환경의 리눅스 

4.4.26-yocto-standard에서 작동하고 있다.

여러가지 App이 기본적으로 설치되어 있다.

위의 버전은 가장 최신버전으로 2017년 2월에 출시된 VM이다. 현재까지도 업데이트가 계속 진행되고 있는 오픈소스 프로젝트이므로, 가장 참고할 것이 많아보인다. (open webOS 프로젝트는 아마 Deprecated되서 죽은듯..)


IRC : http://webchat.freenode.net/?channels=webos-ports

Wiki : http://webos-ports.org/wiki/Main_Page

Twitter : https://twitter.com/webosports

Github : https://github.com/webOS-ports


문제는 App개발인데.. 기본적으로 app이 작동하는 구조는 palmOS나 open webOS와 모두 같다. luna-bus를 이용해서 웹을 구동시키는 방식이다. 앱들은 Enyojs 프레임워크를 사용한 자바스크립트로 제작된다. 그러나 구형 webOS들의 SDK 개발도구는 현재 구할 수 없고, LG webOS TV만 SDK를 제공하고 있다.


안타깝게도 LG webOS TV SDK에서 작동하는 ares-command 를 사용해보면 LuneOS와는 호환이 되지 않는 것을 확인하였다. 아키텍처의 구조가 사뭇 다른 것 같다. 이것을 노가다로 재조립하느냐, 아니면 그냥 개발작업만 LG의 SDK를 빌려쓰고, 앱 설치 및 테스트는 IDE의 도움없이 수동으로 처리하느냐의 문제가 남아있다.


LuneOS 개발그룹에 SDK가 있는지 문의하였으나 별다른 답장이 없다. 아마도 이들은 아직까지 OS 레벨의 개발에 집중하고 있는듯하며, app들도 아직은 built-in 스타일로 관리하는 듯하다. 일반 개발자가 작성한 App을 업로드할 Store개념은 없는것일까? 어쨌든간에 앱을 직접 개발해서 LuneOS 안에서 테스트를 할 수 있는 환경이 구축되어야 한다. 


궁금해서, 테스트해보았다. LG webOS TV 3.0에서 개발되어 있는, Enyo 2 Sampler라는 데모 애플리케이션이다. 터미널로 접속한 후에 해당 앱을 통째로 tar압축해서 에뮬레이터 밖으로 꺼내왔다. 그런데 LuneOS 안쪽에는 어떻게 넣지?? sftp가 작동을 안하기 때문에.. 결국 바깥 웹서버에 올려둔 후 터미널로 wget으로 다운로드하였다. 편법이다;;

어찌되었든간에, 앱이 LG webOS 시뮬레이터와 똑같이 동작하는 것을 확인하였다. 아마 몇몇 패키지를 제외하면, 대부분 호환되는 것 같다. 그러므로 LG webOS TV SDK를 사용해서 일단은 개발을 하고, 앱을 테스팅할 때만 수동으로 좀 하면 될것 같다. 기회가 되면 ares-command를 고쳐봐야지..

CPUU님의 창작활동을 응원하고 싶으세요?