로그인 해주세요.

미니기기 / 음향 게시판 *스마트폰과 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빠, 테그라빠
댓글
16
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]님의 댓글을 신고합니다. 취소 신고
취소
번호 분류 제목 글쓴이 날짜 조회 수
공지 공지 사이트 이용 수칙 230228 수정 file admin 18.08.04 116614 13
핫글 미니 25울트라가 S펜 빠진다는 소리는 처음 듣네요 [12] 엔당이희망입니다 24.06.27 1248 18
핫글 미니 삼성이 오랫동안 간과하고 있는 것 new Beoplay31 11:22 234 14
핫글 미니 갤워치 울트라는 굳이 애플의 오션 스트랩을 따라할 필요가 있었는지 의문입니다.. [19] updatefile Stellist 10:04 538 13
167705 미니 아이팟 터치 [6] file 셈숭전자 20.02.21 413 0
167704 미니 폴드2는 염가(?) 버전도 나왔으면 좋겠어요 [6] Eidio 20.02.21 268 0
167703 미니 스포티파이를 사랑할 수 밖에 없는 이유 [3] file LG붐은온다 20.02.21 407 0
167702 미니 톰브 실패하면 쓰려고 주문한 플립이 왔네요. [5] Might 20.02.21 315 0
167701 미니 S20U 코블은 재고가 다 털렸네요. [11] 불쌍한기아맨 20.02.21 365 0
167700 미니 갤20 시리즈 배터리벤치는 아직인가여? [6] 고져스 20.02.21 208 0
167699 미니 알리에서 판매하는 삼성 충전기.jpg [6] file 이시우배찌 20.02.21 763 0
167698 미니 갤럭시S20울트라 딜리버리 반납 20분 전 ㅠㅠ [12] 맵찔맵찔 20.02.21 329 0
167697 미니 와우~ 드디어 북미용 갤S20Ultra 실물 영접햇네요! [15] file 맛폰은디지바이스 20.02.21 673 1
167696 미니 갤럭시 투고 딜리버리 후기 [2] 맵찔맵찔 20.02.21 203 0
167695 미니 게임 옵티마이징서비스 업데이트 [1] file 라테린 20.02.21 505 0
167694 미니 삼성페이 이벤트 떳네요. [5] file 이시우배찌 20.02.21 1389 1
167693 미니 다들 s20울트라 재고 구하셨나요ㅜ [9] 감자해커 20.02.21 306 0
167692 미니 무너져버린 21일 수령의 꿈 [13] 보거 20.02.21 326 0
167691 미니 올상반기는 팬파티없겟네요 [8] file 갤럭시S20존버 20.02.21 432 0
167690 미니 예판 2주는 진짜 늘어지네요.. 다음부터는 1주만 하길 [8] aleji 20.02.21 289 0
167689 미니 에어팟2 업데이트가 되지 않습니다.. [4] Track13 20.02.21 187 0
167688 미니 울트라 말입니다. 이거 글로벌 기준으로 수급불안정 [7] 갤러리별 20.02.21 408 0
167687 미니 알리발 미니PC를 사용중인데 이런 신박한 부품도 있네요.jpg [4] file 스퀴니 20.02.21 1289 0
167686 미니 삼성 한정판의 아이돌 [11] file 오토카모 20.02.21 822 0
167685 미니 톰브라운 Z플립 카드결제 할부변경 될까요? [6] 심플리 20.02.21 258 0
167684 미니 폴드 정품필름 찌라시 [3] 레제르바 20.02.21 470 0
167683 미니 이것은 우리가 알던 동숲이 아니다!!! [3] file LG붐은온다 20.02.21 560 0
167682 미니 [pic] 역시 폰카는 항상 들고다닌다는게 참 메리트가 있어요. [12] file Stellist 20.02.21 612 3
167681 미니 와삼성갤럭시S20울트라선예도이세상폰카가아니네요 [40] file 민초빵 20.02.21 874 2

추천 IT 소식 [1/]

스킨 기본정보

colorize02 board
2017-03-02
colorize02 게시판

사용자 정의

1. 게시판 기본 설정

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

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

2. 글 목록

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

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

3. 갤러리 설정

4. 글 읽기 화면

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

5. 댓글 설정

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

6. 글 쓰기 화면 설정

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

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