본문 바로가기
리눅스

Waydroid Installations

by 다움위키 2025. 4. 22.

원문 보기: https://dawoum.duckdns.org/wiki/Waydroid/Installations

 

Waydroid를 설치하기 전에, Waydroid/Kernel options를 읽고 지원하는 커널을 준비해야 합니다.

보통, 배포판에서 제공하는 기본 커널은 waydroid를 사용하도록 준비되어 있으므로, 별도로 커널 컴파일을 할 필요가 없습니다.

그런-다음, 의존성 프로그램을 먼저 설치해야 합니다: (이는 시스템마다 다를 수 있고, 아래 방법에서 소개된 저장소에서 설치할 경우에는 자동으로 설치해 줍니다)

  • sudo nala install lxc libgbinder python3-gbinder

그런-다음, 데비안 저장소에서 패키지를 제공하지 않기 때문에, 개발자가 제공하는 패키지를 아래의 방법으로 설치할 수 있습니다:

  • sudo apt install curl ca-certificates -y
  • curl -s https://repo.waydro.id | sudo bash
  • sudo apt install waydroid -y

Initialization

사용할 안드로이드 이미지를 다운로드하는 과정입니다. (뒤의 인수는 구글 플레이 스토어 등의 도구가 같이 설치됩니다)

  • sudo waydroid init -f -s GAPPS

Usage Guide for X11

이 과정은 Wayland 세션이 아닌 X11 세션으로 시작했을 때 추가적으로 필요한 부분입니다:

  • sudo apt install weston -y

제대로 설치되었는지 확인해 보고, 윈도우가 정상적으로 올라오면, 강제 종료합니다:

  • weston --socket=mysocket

Startup Scripts

Configure Weston

  • vi ~/.config/weston.ini
[libinput]
enable-tap=true

[shell]
panel-position=none

Create a Startup Script

  • sudo vi /usr/bin/waydroid-session.sh
#!/bin/bash

weston --xwayland &
WESTON_PID=$!
export WAYLAND_DISPLAY=wayland-1
sleep 2

waydroid show-full-ui &
WAYDROID_PID=$!

trap "waydroid session stop; kill $WESTON_PID; kill $WAYDROID_PID" EXIT

wait $WESTON_PID
  • sudo chmod +x /usr/bin/waydroid-session.sh

Add a Desktop Entry

  • sudo vi /usr/share/applications/waydroid-session.desktop
[Desktop Entry]
Version=1.0
Type=Application
Name=Waydroid Session
Comment=Start Waydroid in a Weston session
Exec=/usr/bin/waydroid-session.sh
Icon=waydroid
Terminal=false
Categories=System;Emulator;

이제 GNOME Troubleshootings으로 가셔서 즐겨찾기에 등록해 주십시오:

Enable networking

만약 Uncomplicated Firewall (UFW) 방화벽을 사용하고 있다면, 다음과 같이 포트를 열어주어야 합니다:

  • sudo ufw allow 67/udp
  • sudo ufw allow 53/udp
  • sudo ufw default allow FORWARD

Troubleshootings

기기 등록

등록되지 않은 기기라는 메시지와 함께 경고음으로 인해 사용하기 힘들 것입니다. 아래와 같이 기기를 등록할 수 있습니다:

  • waydroid 실행
  • 호스트 쉘에서 : sudo waydroid shell
  • waydroid 쉘에서 : ANDROID_RUNTIME_ROOT=/apex/com.android.runtime ANDROID_DATA=/data ANDROID_TZDATA_ROOT=/apex/com.android.tzdata ANDROID_I18N_ROOT=/apex/com.android.i18n sqlite3 /data/data/com.google.android.gsf/databases/gservices.db "select * from main where name =\"android_id\";"
  • 출력 : android_id|19자리숫자
  • https://www.google.com/android/uncertified으로 접속
  • 19자리숫자를 입력
  • I'm not a robot 체크
  • 등록 클릭

Reinstalling Waydroid

다른 프로그램과 달리, 뭔가 잘못되었을 때 고치기가 쉽지 않을 수 있습니다. 이때에는 완전히 지우고 새롭게 설치할 필요가 있습니다.

  • waydroid session stop
  • sudo waydroid container stop
  • sudo apt remove waydroid
  • sudo rm -rf ~/.local/share/waydroid
  • sudo rm -rf /var/lib/waydroid