로그인 해주세요.

미니기기 / 음향 게시판 *스마트폰과 PC, 카메라, 스피커 등 IT 미니기기와 음향기기에 관해 교류하는 게시판입니다.

흡혈귀왕

미니 Termux 네이티브 XFCE4 데스크탑 (by S24+)

20240601_013946.jpg

현재 덱스테이션과 합체(...) 후

열심히 Termux 실험 대상이 되고있는 갤럭시S24+ 입니다.

 

 

 

 

 

 

Screenshot_2024-06-01_01-44-32.png

 

해당 화면은 DeX 모드에서 실행된 Termux로

리눅스와 같은 X11 환경을 만들어준 겁니다. (세션은 XFCE4)

 

즉 리눅스처럼 보이지만 저 화면은 리눅스가 아니라

 

 

안드로이드에서 돌아가는 X11 환경입니다.

 

 

 

 

 

 

 

Screenshot_2024-06-01_01-45-03.png

터미널에서 neofetch 명령어를 치면

 

OS정보가 리눅스가 아닌 안드로이드로 나오죠.

 

 

아직은 조금 불안정하지만 이 X11 환경에서도 GPU 가속이 가능합니다.

 

Screenshot_2024-06-01_02-11-24.png

Screenshot_2024-06-01_02-12-12.png

Screenshot_2024-06-01_02-12-42.png

Screenshot_2024-06-01_02-13-15.png

 

예전 같았으면 virgl로 10분의1토막된 성능으로 GPU 가속이 되었지만

 

최근 안드로이드 호스트 Vulkan 드라이버를 Termux로 불러와서 X11 WSI를 구현해주는

vulkan-wsi-layer의 등장덕에

 

 

X11 환경에서 Vulkan 가속이 가능해졌고.

mesa zink와 clvk 조합시

OpenGL4.6(zink), OpenGL ES3.2(zink), OpenCL3.0(clvk) 등등 가속도 가능합니다.

 

 

사실상 하드웨어 비디오 디코딩/인코딩 기능빼고 모두 하드웨어 가속이 된다라고 보면됩니다.

 

 

 

Screenshot_2024-06-01_02-14-43.png

그 덕분에 크로미움 브라우저에서 WebGL 가속도 아주 잘작동하고.

(퍼포먼스가 삼브랑 거의 비슷합니다. 크롬보단 좀 떨어짐)

 

 

 

안드로이드가 리눅스 커널을 사용하고 있고 Termux를 통해 X11 환경이 구축된 덕분에

 

유명 리눅스 프로그램들이 Termux 네이티브용으로 빌드되기도 했습니다.

 

 

 

Screenshot_2024-06-01_01-46-22.png

블렌더3D도 Termux 네이티브용으로 존재하며

vulkan-wsi-layer + mesa zink 22.0.5 조합 시 아주 쾌적하게 사용 가능합니다.

 

proot 컨테이너 리눅스에서 돌아가는 프로그램이 아니라 오버헤드도 없는

찐 네이티브라서 CPU를 풀로 갈궈서 렌더링이 가능합니다.

 

 

 

 

Screenshot_2024-06-01_01-47-31.png

김프도 Termux 네이티브로 존재하지만

 

한글을 미지원해서 속편하게 proot 데비안 컨테이너에 설치된 김프를 불러다가

사용하고 있습니다.

 

 

Termux 네이티브 XFCE4 데스크탑에선 Termux로 빌드된 프로그램을 실행하는거 뿐만 아니라

proot 컨테이너에 설치된 리눅스 프로그램을 로그인하지 않고 바로 실행할 수 있습니다.

 

 

즉 안드로이드 X11 환경에서

WSL2 및 크롬OS 처럼 리눅스 프로그램만 구동 방식과 비슷한겁니다.

(애네도 컨테이너에 설치된 프로그램만 따로 실행하는 방식이죠)

 

 

스냅드래곤 아드레노6xx/7xx 시리즈를 제외한

GPU들은 proot 환경에서 사용 가능한 GPU 가속은 virgl이 한계 입니다.

 

 

하지만 2D 프로그램 실행하는데 virgl이면 충분하기에

블렌더3D 같은건 Termux 네이티브로 실행하고 김프, 리브레오피스 같은건 proot로 실행하면 딱입니다.

 

 

 

Screenshot_2024-06-01_01-49-28.png

잉크스케이프 같은 경우도 Termux 네이티브로 빌드되었지만

한국어 미지원 때문에 역시 proot 데비안 컨테이너에 설치된걸 가져와서 실행하고 있습니다.

 

 

 

Screenshot_2024-06-01_01-48-27.png

rawtherapee는 Termux 네이티브 용으로 설치했는데

proot보다 훨씬 빠르고 쾌적합니다.

 

보정 공부좀 해봐야겠네요....

 

 

 

Screenshot_2024-06-01_01-49-49.png

Screenshot_2024-06-01_01-50-33.png

KolourPaint와 Audacity 같은 경우도

proot 데비안 컨테이너에 설치된걸 가져다가 실행하고 있습니다.

 

 

 

 

 

 

Screenshot_2024-06-01_01-51-54.png

VLC가 Termux 네이티브로 빌드되었기 때문에

동영상 감상도 가능합니다.

 

 

아쉽게도 Termux에선 안드로이드 비디오 디코딩 기능을 사용할 수 없어서

 

CPU + OpenGL 렌더러 빨로

H.264/AVC 기준 1080p@60fps, 4K@30fps, 4K@60fps 재생정도가 마지노선입니다.

 

 

크로미움 브라우저에서도 유튜브 재생 시 비디오 디코딩을 미지원하니

4K@30fps가 마지노선이더군요.

 

 

어차피 비디오는 안드로이드에서도 감상 가능하고

일반적인 1080p는 전혀 문제 없습니다.

 

 

Screenshot_2024-06-01_01-52-27.png

fcitx5를 통해 한글 입력도 잘 지원됩니다.

 

 

Screenshot_2024-06-01_01-55-30.png

Screenshot_2024-06-01_01-56-08.png

Screenshot_2024-06-01_02-10-30.png

proot 데비안 컨테이너에 설치된 리브레오피스를

Termux XFCE4에서 실행한 모습입니다.

 

아주 잘작동합니다.

 

그나저나 이놈의 리브레오피스 기능은 참 좋은데

윈도우나 리눅스나 정말 느리네요 ㅡㅡㅋ

 

 

 

 

 

Screenshot_2024-06-01_02-15-14.png

 

터미널에서 직접 proot 데비안 컨테이너 로그인도 가능합니다.

 

저렇게 로그인한 상태에서 명령어 입력하는 식으로

proot 프로그램을 실행하는것도 가능하고

 

아니면 Termux XFCE4 애플리케이션 메뉴에 아예 proot 컨테이너에 설치된 리눅스 프로그램을 추가해서

 

GUI로 쉽게 실행할 수 있습니다.

 

정리하면 이렇습니다.

 

<주요 기능>

- Termux로 안드로이드에서 X11 환경을 만들고 XFCE4 데스크탑을 사용 (찐 네이티브 방식임!)

- 아직 불안정하지만 Vulkan1.3, OpenGL4.6(zink), OpenGL ES3.2(zink), OpenCL3.0(clvk) 가속 가능

- WSL2/크롬OS 마냥 해당 환경에서 proot 컨테이너에 설치된 리눅스 프로그램을 바로 실행 가능

 

드디어....

제가 갤럭시S3 시절부터 꿈꿔 왔던 모바일 컴퓨팅 솔루션이 완성되었습니다.

 

과도기의 아트릭스와 사라져버린 리눅스 온 덱스 거치고나서

정말 오래걸렸네요.

 

 

물론 단점도 있습니다.

 

1. Termux 네이티브 XFCE4 데스크탑 환경에선 한국어 미지원

이유는 안드로이드의 bionic libc가 locales를 미지원합니다.

보통 리눅스는 glibc 기반으로 locales를 지원하고 여러 언어로 변경 가능하죠.

 

근데 윈도우나 맥을 일부러 영어로 쓰시는분들도 계시고 XFCE4 세션 자체가

복잡한 데스크탑 환경은 아니라서 문제될건 없습니다.

 

재밌는건 강제로 한국어 로케일 변수 추가하면 XFCE4에서 일부가 한국어로 보인다는 점입니다 ㅋㅋㅋ

Termux 네이티브로 빌드된 파이어폭스나 크로미움도 한국어로 표시되구요 ㅋㅋㅋㅋ

 

신기하더군요.

 

 

 

2. USB 스토리지 인식 미지원

이건 안드로이드 정책 및 보안 이슈 때문에 루팅된 디바이스가 아닌 이상

Termux XFCE4 상에서 USB 스토리지가 인식되지 않는다고 합니다.

 

우회하는 방법은 있습니다.

USB 스토리지 연결 후 사용할 파일을 안드로이드 저장소로 옴기고

XFCE4에서 그 옴긴 파일을 사용하는 식으로 간접적으로 사용 가능합니다.

 

 

 

3. root 권한 프로그램 사용불가

Termux 네이티브용 프로그램이든 proot 리눅스 컨테이너의 프로그램이든

호스트 디바이스가 루팅되어있지 않는 이상 root 권한이 필요한 프로그램은 사용 불가 입니다.

 

하지만 저의 사용패턴에선 아직까지 문제되거나 안돌아간 프로그램은 없었던거 같네요.

아...딱 하나있다 fuse가 설치해도 작동하지 않았습니다 ㅡㅡㅋ

 

 

 

 

 

이제  남은건

 

 

1. Termux 네이티브용 비디오 편집기 등장

유명한 리눅스 프로그램들이 Termux용으로 빌드되었지만 아직 비디오 편집기가 없습니다.

proot 컨테이너에서 제대로된 비디오 편집기를 사용하려면 OpenGL3.3 이상 지원이 필수인데

아드레노를 제외한 GPU들은 virgl로만 가속이 가능해서 OpenGL2.1이 한계 입니다.

 

하지만 곧 유명 오픈소스 비디오 편집기인 Shotcut이 Termux 네이티브용으로 빌드될거라

해결될듯합니다.

 

 

 

2. vulkan-wsi-layer 안정화 및 mmap32/mmap64 추가

안드로이드 호스트 Vulkan 드라이버를 로드하고 X11 환경을 구현해주는

위의 레이어는 아직 불안정합니다.

 

그리고 wine에서 제대로 게임을 실행하려면 mmap32/mmap64 지원도 필요하구요.

2년전에 Termux에서 GPU 가속 상상도 못했는데 이정도 발전한거보면 이것도 이제 곧입니다.

 

wine에서 안드로이드 호스트 Vulkan 드라이버로 스팀 게임을 구동할 날이 멀지 않았습니다.

 

 

 

 

3. virgl 성능 개선

사실 아드레노 시리즈는 proot 컨테이너에서 dri3 패치된 mesa turnp 쓰면되지만

다른 GPU들은 사정이 여의치 않습니다.

 

말리나 엑스클립스는 proot 환경에서 virgl을 써야하는데

일반적인 2D 프로그램 돌리는데 충분하지만

 

안드로이드 EGL 드라이버가 WSI를 미지원하다보니

virgl에서 2D/3D 사용 시 CPU를 엄청 갈굽니다....

 

사실상 안드로이드 EGL을 통한 virgl은 반 SW 가속이나 마찮가지 입니다.

그래서 성능이 10분의1이 나오는거구요.

 

하지만!

몇달전 제가 Termux git에 virgl 최신 버전 빌드좀 해달라는 스노우볼을 굴린덕에

중장기적으로 Termux용 virgl 성능 개선 프로젝트가 시작되었습니다.

 

바로 AHardwareBuffer를 통해 dri3 구현해서 성능을 올린다는것인데

이러면 적어도 일반적인 virgl처럼 네이티브의 70% 성능 이상은 나와줄것이라

비약적인 성능 향상이될것으로 보입니다.

 

중장기 프로젝트라 당장은 어렵지만 그래도 기대되네요.

 

 

 

 

대충 이정도입니다.

제가 아직 Termux용 hangover-wine에서 프로그램 설치를 실패하고 있는데

다음 버전 빌드때까지 기다리던가 아니면 ARM64EC 기본 활성화 때 까지 기다려봐야겠네요.

 

proot 컨테이너를 통해서도 wine 구동이 가능하지만 오버헤드가 전혀 없는

Termux 네이티브 환경에서 wine을 사용하는게 목표입니다.

 

 

 

 

지금도 2400정도만 되어도 사용 환경이 엄청 쾌적한데

내년 출시하는 AP는 더 기대됩니다.

흡혈귀왕
퀄콤빠, AMD빠, 테그라빠
댓글
18
1등 난거북넌토끼
2024.06.01. 04:06

Hoxi 노션 강의는 언제 완성될까요?? ㅠㅠ

[난거북넌토끼]님의 댓글을 신고합니다. 취소 신고
흡혈귀왕
글쓴이
흡혈귀왕 난거북넌토끼 님께
2024.06.01. 04:24

원래는 proot 리눅스 설치법을 올리려고 했다가

Termux XFCE4 솔루션을 발견해서 이거 올리고 겸사겸사 hangover-wine 설치까지 같이 올리려고

hangover-wine에서 윈도우 프로그램 설치 이슈 해결하려했는데

 

그냥 Termux XFCE4 구축법 먼저 올려도 될거같네요.

 

스크린샷도 다 찍어놓아서 정리만 하면되는 상황입니다.

게다가 proot 리눅스 보다 설치도 훨씬 간단합니다.

 

Termux XFCE4 설치할때 proot 데비안 컨테이너도 알아서 설치되거든요.

 

조만간 정리하겠습니다.

[흡혈귀왕]님의 댓글을 신고합니다. 취소 신고
흡혈귀왕
글쓴이
흡혈귀왕 잘되어가시나 님께
2024.06.01. 14:36

이정도는 되어야 폰이랑 태블릿을 컴퓨터라고 부를만하죠 ㅋ

[흡혈귀왕]님의 댓글을 신고합니다. 취소 신고
RuBisCO
3등 RuBisCO
2024.06.01. 10:38

이제 동영상 가속만 충족시키면 되는건데 구글도 M$가 만든 VAon12 같은 솔루션을 안드로이드를 위해서 만들어주면 좋겠는데 말이죠.

[RuBisCO]님의 댓글을 신고합니다. 취소 신고
흡혈귀왕
글쓴이
흡혈귀왕 RuBisCO 님께
2024.06.01. 14:38

mesa-va 같은 경우

AMD, 인텔, 엔비디아만 지원하는거 같더군요.

 

mesa-va에 virtio_gpu_drv_video.so 옵션도 있긴한데

이걸로 어떻게 풀수있으려나요?

[흡혈귀왕]님의 댓글을 신고합니다. 취소 신고
RuBisCO
RuBisCO 흡혈귀왕 님께
2024.06.02. 13:24

mesa 쪽은 데스크탑 리눅스를 위해서 지원해주는것에 덤으로 딸려간거라 가능한것이고, 안드로이드의 기본 멀티미디어 가속 인터페이스는 OpenMAX라서 굳이 모바일 AP 제조사들이 수고스럽게 해줄거 같진 않습니다.

[RuBisCO]님의 댓글을 신고합니다. 취소 신고
Section31
Section31
2024.06.01. 13:27

KDE를 지원했다면 더 괜찮았을지도...

[Section31]님의 댓글을 신고합니다. 취소 신고
흡혈귀왕
글쓴이
흡혈귀왕 Section31 님께
2024.06.01. 14:40

Gnome이나 KDE 대신 XFCE4를 권장하는 이유가

가볍고 제일 나은 퍼포먼스라서 그렇다더군요.

 

proot 리눅스에선 KDE나 Gnome 사용이 가능하긴 합니다.

 

하지만 해당 솔루션은 안드로이드 네이티브 상태에서 Termux로 포팅된 리눅스 프로그램을 실행하거나

proot 컨테이너에 설치된 리눅스 프로그램 실행이 목적이니 의미 없을듯하네요.

[흡혈귀왕]님의 댓글을 신고합니다. 취소 신고
Section31
Section31 흡혈귀왕 님께
2024.06.01. 14:46

그렇군요. 반대로 아사히 리눅스 개발팀은 애플 실리콘 맥에서

아사히 리눅스를 쓸 때 기본 환경을 KDE 플라즈마 6으로 하는 모양입니다.

[Section31]님의 댓글을 신고합니다. 취소 신고
흡혈귀왕
글쓴이
흡혈귀왕 Section31 님께
2024.06.01. 14:50

네 아사이는 KDE더군요.

그나저나 아사이쪽은 애플 실리콘에서 비디오 가속 지원되나요?

[흡혈귀왕]님의 댓글을 신고합니다. 취소 신고
Section31
Section31 흡혈귀왕 님께
2024.06.01. 14:56

M1,M2 시리즈는 아직 작업 중이라고 하며, M3 시리즈는 TBA입니다.(...)**

주: M3 시리즈는 아직 아사히 리눅스 지원 자체를 하지 않습니다.(......)

** 비디오 코덱 H/W 엔진 기준

[Section31]님의 댓글을 신고합니다. 취소 신고
흡혈귀왕
글쓴이
흡혈귀왕 Section31 님께
2024.06.01. 15:07

역시 비디오 지원은 쉽지않은가 보네요.

[흡혈귀왕]님의 댓글을 신고합니다. 취소 신고
오리제
오리제
2024.06.01. 21:32

앱처럼 한 번에 딱 하면 저렇게 켜지는 게 있으면 좋겠네요 무선 임원이 돈 안된다고 막겠지만요

[오리제]님의 댓글을 신고합니다. 취소 신고
흡혈귀왕
글쓴이
흡혈귀왕 오리제 님께
2024.06.01. 21:35

저게 termux 실행 후

start 명령어만 치면 딱 실행되는 방식이긴 합니다.

엄청 편해요~

 

조만간 정리해서 올리겠습니다.

proot 리눅스 쓰는거보다 저게 더 쾌적합니다!

 

실제 리눅스 온 덱스도 투자 대비 돈 안된다고 취소되었죠 ㅠㅠ

[흡혈귀왕]님의 댓글을 신고합니다. 취소 신고
RASBI
RASBI
2024.06.03. 09:04

진짜 들고다니는 컴퓨터네요..

[RASBI]님의 댓글을 신고합니다. 취소 신고
YSDN
YSDN
2024.07.12. 22:01

오오 신기하네요... 보통 proot는 여러 매뉴얼이 많은데 native는 국내에 정보가 별로없어서 이런거 정리해 주시면 유용할 듯 합니다.

[YSDN]님의 댓글을 신고합니다. 취소 신고
취소
번호 분류 제목 글쓴이 날짜 조회 수
공지 공지 사이트 이용 수칙 230228 수정 file admin 18.08.04 117778 13
핫글 미니 삼페가 국내 NFC 보급이 미진한 거에 영향을 주긴 했다고 생각하는데 [15] Niflheimr 24.08.08 1130 21
핫글 미니 스파이더 엘리트가 집에 왔습니다 [12] file 우리애는물어요 24.08.08 475 12
핫글 미니 대충 뇌 정상화가 이루어진 후의 폴드6 후기 [2] 가마 24.08.08 755 12
3874 미니 XS, XR용 스마트 배터리 케이스 출시 [6] file 기기덕후 19.01.16 183 0
3873 미니 노트북 사용하시는 분들 중에 제조사에서 기본으로 탑재한 리커버리 영역 사용하시는 분들 계시나요? [2] Havokrush 19.01.16 229 0
3872 미니 OnLeaks가 공개한 새로운 아이폰XI 렌더링 [4] file Stellist 19.01.16 300 0
3871 미니 삼성전자 갤럭시 A90 일부 사양 유출? [2] BarryWhite 19.01.16 366 0
3870 미니 MS, 폴더블/듀얼 스크린 제품위해 윈도10 개발중 BarryWhite 19.01.16 163 0
3869 미니 하 예전엔 엑시 빠돌이였으나 [7] file 기기덕후 19.01.16 401 0
3868 미니 역시 UI는 벅스! [6] file 기기덕후 19.01.16 362 0
3867 미니 넷플릭스 가격 오른다고 하네유 [1] 기기덕후 19.01.16 261 0
3866 미니 855 GPU가 생각보다 심심하네요 [6] qazsdf 19.01.16 306 0
3865 미니 나이키 자동 끈조절 신발 드디어 본격 양산 개시입니다 [6] file Stellist 19.01.16 332 0
3864 미니 아난드텍 855 퍼포먼스 프리뷰 [3] 다잊어야해욥 19.01.16 218 0
3863 미니 노트북 올웨이즈 2019 모델은 언제 나왔대요?;; [2] Eidio 19.01.16 184 0
3862 미니 기본적으로 S9 작은 모델보다 비쌀 수밖에 없겠죠.. [5] Eidio 19.01.16 222 0
3861 미니 비보 : 여태까지의 스마트폰 디자인은 가라! [11] file 기기덕후 19.01.15 376 1
3860 미니 [오]피셜을 바탕으로 한 갤럭시 S10 상단바 크기 추정 [6] file 냥냠 19.01.15 2224 1
3859 미니 갤럭시M10도 공식 매뉴얼 유출 [4] file 기기덕후 19.01.15 247 0
3858 미니 S10E와 S10의 가격차이는 거의 없음 [7] 기기덕후 19.01.15 483 0
3857 미니 갤럭시S10 일반버전도 트리플 카메라라고 하네여 [5] file 기기덕후 19.01.15 293 0
3856 미니 이번 노트8베타 노트9정식 파이 올릴때 dpi관련 뭔가 있는듯 [2] aleji 19.01.15 525 0
3855 미니 855 SPEC2006 벤치 [7] file 다잊어야해욥 19.01.15 217 0
3854 미니 홍미 노트7 분해 영상.you [1] BarryWhite 19.01.15 312 1
3853 미니 애플 뮤직 쓰는데 걍 벅스로 다시 갈까봐요;; [4] 응슷응 19.01.15 199 0
3852 미니 g9에 홍미노트 7 올라왔네요 [3] 인헤리턴스 19.01.15 176 0
3851 미니 삼성 원UI 대화면 한손 친화적이네요 [5] 응슷응 19.01.15 330 1
3850 미니 아이고 s7이 갈 때가 됐나봐요... [8] 인헤리턴스 19.01.15 188 0

추천 IT 소식 [1/]

스킨 기본정보

colorize02 board
2017-03-02
colorize02 게시판

사용자 정의

1. 게시판 기본 설정

게시판 타이틀 하단에 출력 됩니다.

일반 게시판, 리스트 게시판, 갤러리 게시판에만 해당

2. 글 목록

기본 게시판, 일반 게시판, 썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

3. 갤러리 설정

4. 글 읽기 화면

기본 10명 (11명 일 경우, XXXXX 외 1명으로 표시)

5. 댓글 설정

일정 수 이상의 추천을 받은 댓글에 표시를 합니다.

6. 글 쓰기 화면 설정

글 쓰기 폼에 미리 입력해 놓을 문구를 설정합니다.

서버에 요청 중입니다. 잠시만 기다려 주십시오...