로그인 해주세요.

미니기기 / 음향 게시판 *스마트폰과 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 116723 13
핫글 미니 요즘 삼성 디자인 진짜 심각합니다 [64] file Geronimo 24.06.30 2468 57
핫글 미니 도대체 어디가 닮았다는 건지 모르겠습니다. [19] file 히트맨 24.06.30 1004 27
핫글 미니 포코가 국내에 다시 들어오든 요즘 삼성 디자인이 어떻든 [3] 빅코 24.06.30 824 22
6981 미니 한 3년전이랑 비교해보면 S 기본형은 정상화가 많이 되긴 했네요 [15] 릅갈통 24.02.15 1292 12
6980 미니 현 삼성폰들 SW 최적화가 심각한거 같아요 [19] 베이어 24.02.18 2230 12
6979 미니 갤핏2 다시 찾았읍니다 [8] MrGom™ 24.02.21 493 12
6978 미니 S8 Gen3 MOBOX(box64+wine64)에서 PC게임 구동 [19] 흡혈귀왕 24.02.21 1575 12
6977 미니 와 샤오미14 울트라는 모든 카메라가 8K/30fps 촬영 지원이군요 [5] Stellist 24.02.23 830 12
6976 미니 엑시2400 확실히 문제가 있는 것 같네요 [20] file 쌍피ㄷㄷ 24.02.23 1719 12
6975 미니 S23 울트라 변기에 빠뜨렸네요 ㄷㄷㄷㄷㄷ [17] Mate 24.02.23 1135 12
6974 미니 퀵쉐어는 장사할 생각 없나요? [9] file cir 24.02.26 1693 12
6973 미니 12미니로 일년 더 갑니다 [12] 아재건달_보노뭘보노 24.02.28 787 12
6972 미니 삼성페이 이제 삼성월렛으로 바뀌나보네요 [11] file 알휙 24.02.28 1277 12
6971 미니 이제 산업이 바뀌는게 슬슬 체감되네요 [19] HSC 24.02.28 1742 12
6970 미니 "자강두천" file 코드명다빈치 24.02.29 612 12
6969 미니 S24 울트라 호(날)두 스페셜 에디션 [16] file SultanateofRum 24.03.02 1755 12
6968 미니 S24 Ultra 오늘자 강화도.jpg [3] file 품귀문란 24.03.08 1280 12
6967 미니 갤럭시 스피커는 아직 갈 길이 머네요 [42] 미하엘무야허 24.03.10 1931 12
6966 미니 요즘 얘가 가성비로 핫하다면서요? [22] file 빅코 24.03.11 2373 12
6965 미니 애플스토어 8호점, 서울 남부 지역으로 추정 [15] file 릅갈통 24.03.12 1474 12
6964 미니 z 플립6 커버 예측.png 이 정도로 나오지 않을까요?? [5] file maMeong 24.03.12 1056 12
6963 미니 개인적으로 미디어텍의 약진이 너무 좋네요 [10] 범퀴 24.03.13 1140 12
6962 미니 왔슈 [1] file 후루꾸루 24.03.13 482 12
6961 미니 판올림만이 업데이트는 아닙니다 [10] 퍼펙트게임 24.03.18 1289 12
6960 미니 갤럭시 A15 왔습니다 [6] file 운김 24.03.19 952 12
6959 미니 최고의 보안성을 가진 노트북 [8] file Stellist 24.03.21 1213 12
6958 미니 서울역 애플광고 [3] file fin 24.03.21 1643 12
6957 미니 신형 XPS 평가가 아주 극악이네요 ㅋㅋ [16] file Magyarország 24.03.22 1776 12

스킨 기본정보

colorize02 board
2017-03-02
colorize02 게시판

사용자 정의

1. 게시판 기본 설정

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

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

2. 글 목록

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

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

3. 갤러리 설정

4. 글 읽기 화면

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

5. 댓글 설정

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

6. 글 쓰기 화면 설정

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

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