Computer >> 컴퓨터 >  >> 스마트폰 >> 스마트폰

리눅스 데스크톱에서 Shashlik으로 안드로이드 앱 실행하기

리눅스 데스크톱에서 Shashlik으로 안드로이드 앱 실행하기

리눅스 데스크톱에서 안드로이드 앱을 실행하는 새로운 방법이 하루가 멀다 하고 등장하고 있습니다. 하지만 대부분의 최신 방식은 안드로이드가 설치된 가상 머신을 구축하거나, 구글 크롬 확장 프로그램을 이용해 APK를 로드하는 방식입니다. 물론 나쁘지 않은 방법이지만, 리눅스 생태계와 자연스럽게 어우러지기는 어렵습니다.

바로 이 지점에서 Shashlik(샤슬릭)이 주목받고 있습니다. Shashlik은 VirtualBox 가상 머신이나 브라우저 없이도 리눅스 데스크톱 환경에서 안드로이드 앱을 네이티브처럼 실행하는 것을 목표로 하는 신규 프로젝트입니다. 꽤 매력적인 아이디어죠? 지금부터 리눅스 데스크톱에 Shashlik을 설치하고 활용하는 방법을 알아보겠습니다.

설치 방법

리눅스 데스크톱에서 Shashlik으로 안드로이드 앱 실행하기

Shashlik은 별도 패키지 형태로 배포되고 있으며, 현재 공개된 최신 버전은 0.9.3입니다.

우분투(Ubuntu)에서 설치하기

가장 간단한 방법은 공식 웹사이트에서 .deb 파일을 내려받아 더블클릭으로 설치하는 것입니다. 터미널을 선호한다면 아래 명령어를 입력해도 됩니다.

wget https://static.davidedmundson.co.uk/shashlik/shashlik_0.9.3.deb

.deb 패키지 파일을 받았다면 이제 시스템에 설치합니다.

sudo dpkg -i shashlik_0.9.3.deb

설치 과정에서 오류 메시지가 출력될 수 있습니다. 항상 발생하는 것은 아니지만, 의존성 패키지가 제대로 충족되지 않아 나타나는 문제입니다. 걱정하지 마세요. 한 줄의 명령어로 손쉽게 해결할 수 있습니다.

sudo apt-get install -f

의존성 문제가 해결되었다면, 위에서 사용한 dpkg 명령어를 다시 입력해 패키지를 재설치하면 됩니다.

아치 리눅스(Arch Linux)에서 설치하기

Shashlik은 우분투 전용이 아닙니다. 아치 리눅스 사용자 역시 AUR 저장소를 통해 설치할 수 있습니다. 평소 사용하는 AUR 헬퍼(yay, paru 등)로 해당 패키지를 검색해 설치를 진행하세요. 설치 과정에서 .deb 파일이 자동으로 분해(decompile)되어 시스템에 맞게 설치됩니다.

설치 전 알아두어야 할 사항

첫째, Shashlik은 아직 개발 단계에 있는 프로젝트로, 1.0 정식 버전조차 출시되지 않았습니다. 따라서 상당히 불안정하게 작동할 수 있다는 점을 감안해야 합니다.

둘째, 안드로이드 앱을 실행할 수는 있지만, 구글 관련 앱은 피하는 것이 좋습니다. Google Play Services가 지원되지 않기 때문에 해당 서비스를 적극적으로 활용하는 앱은 아예 작동하지 않습니다.

셋째, Shashlik에는 자체 앱 스토어가 포함되어 있지 않습니다. 앱을 실행하려면 원하는 앱의 APK 파일을 직접 다운로드해야 하며, 이때 APK Mirror 사이트를 이용하는 것이 가장 편리합니다.

리눅스 데스크톱에서 Shashlik으로 안드로이드 앱 실행하기

참고: Shashlik은 x86 아키텍처로 빌드된 APK만 실행할 수 있습니다. APK Mirror에서 다운로드할 때 반드시 x86 버전을 선택하세요. ARM 기반 안드로이드 패키지는 현재 지원되지 않습니다.

작동 원리와 사용 방법

Shashlik은 구글이 안드로이드 SDK(Software Development Kit)에 포함시킨 에뮬레이터를 활용해 리눅스 데스크톱에서 안드로이드 앱을 구동합니다. 실제로 앱을 실행하는 과정은 의외로 간단합니다. 먼저 터미널을 열고 아래 명령어를 입력합니다.

cd /home/username/directory/where/apk/file/is

리눅스 데스크톱에서 Shashlik으로 안드로이드 앱 실행하기

APK 파일이 있는 디렉터리로 이동했다면, 이제 파일을 실행할 차례입니다.

shashlik-run nameofpackage.apk name_of_app

명령어를 실행하면 스마트폰 화면과 비슷한 창이 열리고, 그 안에서 실행하려던 안드로이드 앱이 구동됩니다.

Shashlik의 특별한 점은 무엇일까?

Shashlik의 가장 큰 장점은 굳이 새로운 것을 만들려 하지 않는다는 점입니다. 이미 존재하는 훌륭한 도구 세트, 즉 구글의 안드로이드 SDK를 그대로 활용합니다. 수정된 안드로이드 런타임을 통해 Shashlik은 사용자가 지정한 안드로이드 애플리케이션으로 곧바로 부팅할 수 있습니다.

리눅스 데스크톱에서 Shashlik으로 안드로이드 앱 실행하기

런타임에 APK 파일을 지정하면 Shashlik이 자동으로 앱 아이콘을 찾아 추출합니다. 덕분에 앱을 실행했을 때 작업 표시줄에서 익숙한 아이콘을 확인할 수 있습니다. 이것만으로도 유용하지만, 진정한 킬러 기능은 바탕화면이나 애플리케이션 메뉴에 실행 바로가기를 생성하는 기능일 것입니다.

리눅스 데스크톱에서 Shashlik으로 안드로이드 앱 실행하기

물론 이런 개념 자체가 완전히 새로운 것은 아닙니다. 2014년 구글 역시 자체 런타임을 개발해 개발자들과 협력하면서 안드로이드 앱을 크롬에서 실행할 수 있도록 포팅한 바 있습니다. 하지만 Shashlik이 더 유망해 보이는 이유는 크롬 밖에서도 일급 시민(first-class) 수준의 안드로이드 프로그램을 실행할 수 있기 때문입니다.

인상적인 점은 크롬 없이 실행된다는 사실만이 아닙니다. 개발진이 앞으로의 계획도 상당히 구체적으로 갖고 있다는 점입니다. 장기 목표는 안드로이드를 리눅스 기반 환경에 최대한 긴밀하게 통합하는 것입니다. 여기에는 데스크톱 환경의 알림 시스템에 대한 앱의 완전한 접근 허용, 안드로이드 앱의 파일 시스템 접근 처리 개선, 창 크기 조절 지원 등이 포함될 수 있습니다.

마무리

Shashlik은 리눅스 데스크톱에서 안드로이드 앱을 직접 실행한다는 측면에서 인상적인 접근 방식입니다. 특히 시스템에 크롬을 설치할 필요가 없다는 점이 큰 장점입니다. 저사양 또는 중급 사양 PC에서 크롬의 성능이 좋지 않다는 점을 고려하면 더욱 그렇습니다. 다만 안드로이드 앱으로 업무를 처리해야 하고 잔버그와 씨름하고 싶지 않다면, 이 프로그램은 호불호가 갈릴 수 있습니다. 버그가 상당히 많고, 어떤 앱이든 반드시 작동한다는 보장도 없습니다. 그럼에도 불구하고 몇 가지 버그를 감수할 의향이 있다면, Shashlik은 충분히 발전 가능성을 보여주는 프로젝트입니다.

여러분이라면 리눅스 PC에서 어떤 안드로이드 앱을 실행하고 싶으신가요? 아래 댓글로 의견을 남겨주세요!

이미지 출처: Photobucket