termux-app icon indicating copy to clipboard operation
termux-app copied to clipboard

[Feature]: Add graphics header and required GUI for OpenGL

Open SunPodder opened this issue 2 years ago • 13 comments

Feature description

It would be great if we can make GUI apps with OpenGL or similar. Also there are many python libraries that doesn't support in Termux, like QT5, Kivy, PyGame.

Additional information

PyDroid3 from IIEC already done this. They support all kind of GUI python libraries.

SunPodder avatar Apr 16 '22 07:04 SunPodder

Mesa,qt5 and few others are added but not everything is supported, install x11-repo and follow the wiki. This is a per device setup, I believe android 7.1 and above is supported, and devices that have vulkan can use vulkan

strikersix23 avatar Apr 21 '22 14:04 strikersix23

I already installed x-11. But whenever I try to install pygame it throws a error.

`error: subprocess-exited-with-error

× python setup.py egg_info did not run successfully. │ exit code: 1 ╰─> [32 lines of output]

  WARNING, No "Setup" File Exists, Running "buildconfig/config.py"
  Using UNIX configuration...

  WARNING:root:Some pygame dependencies were not found. Pygame can still compile and install, but games that depend on those missing dependencies will not run. Use -auto to continue building without all dependencies.
  Missing dependencies

  Hunting dependencies...
  SDL     : found 2.0.20
  FONT    : not found
  FONT SDL_ttf.h libSDL2_ttf.so ['/usr/include', '/usr/include/SDL2', '/usr/local/include', '/usr/local/include/SDL2', '/usr/X11R6/include', '/data/data/com.termux/files/usr/include/SDL2', '/data/data/com.termux/files/usr/include'] ['/usr/lib', '/usr/lib64', '/usr/X11R6/lib', '/usr/lib/i386-linux-gnu', '/usr/lib/x86_64-linux-gnu', '/usr/lib/arm-linux-gnueabihf/', '/usr/lib/aarch64-linux-gnu/', '/usr/local/lib', '/usr/local/lib64', '/usr/local/X11R6/lib', '/usr/local/lib/i386-linux-gnu', '/usr/local/lib/x86_64-linux-gnu', '/usr/local/lib/arm-linux-gnueabihf/', '/usr/local/lib/aarch64-linux-gnu/', '/data/data/com.termux/files/usr/lib']
  IMAGE   : not found
  IMAGE SDL_image.h libSDL2_image.so ['/usr/include', '/usr/include/SDL2', '/usr/local/include', '/usr/local/include/SDL2', '/usr/X11R6/include', '/data/data/com.termux/files/usr/include/SDL2', '/data/data/com.termux/files/usr/include'] ['/usr/lib', '/usr/lib64', '/usr/X11R6/lib', '/usr/lib/i386-linux-gnu', '/usr/lib/x86_64-linux-gnu', '/usr/lib/arm-linux-gnueabihf/', '/usr/lib/aarch64-linux-gnu/', '/usr/local/lib', '/usr/local/lib64', '/usr/local/X11R6/lib', '/usr/local/lib/i386-linux-gnu', '/usr/local/lib/x86_64-linux-gnu', '/usr/local/lib/arm-linux-gnueabihf/', '/usr/local/lib/aarch64-linux-gnu/', '/data/data/com.termux/files/usr/lib']
  MIXER   : not found
  MIXER SDL_mixer.h libSDL2_mixer.so ['/usr/include', '/usr/include/SDL2', '/usr/local/include', '/usr/local/include/SDL2', '/usr/X11R6/include', '/data/data/com.termux/files/usr/include/SDL2', '/data/data/com.termux/files/usr/include'] ['/usr/lib', '/usr/lib64', '/usr/X11R6/lib', '/usr/lib/i386-linux-gnu', '/usr/lib/x86_64-linux-gnu', '/usr/lib/arm-linux-gnueabihf/', '/usr/lib/aarch64-linux-gnu/', '/usr/local/lib', '/usr/local/lib64', '/usr/local/X11R6/lib', '/usr/local/lib/i386-linux-gnu', '/usr/local/lib/x86_64-linux-gnu', '/usr/local/lib/arm-linux-gnueabihf/', '/usr/local/lib/aarch64-linux-gnu/', '/data/data/com.termux/files/usr/lib']
  PNG     : found
  JPEG    : found
  SCRAP   : found
  PORTMIDI: not found
  PORTMIDI portmidi.h libportmidi.so ['/usr/include', '/usr/include/SDL2', '/usr/local/include', '/usr/local/include/SDL2', '/usr/X11R6/include', '/data/data/com.termux/files/usr/include/SDL2', '/data/data/com.termux/files/usr/include'] ['/usr/lib', '/usr/lib64', '/usr/X11R6/lib', '/usr/lib/i386-linux-gnu', '/usr/lib/x86_64-linux-gnu', '/usr/lib/arm-linux-gnueabihf/', '/usr/lib/aarch64-linux-gnu/', '/usr/local/lib', '/usr/local/lib64', '/usr/local/X11R6/lib', '/usr/local/lib/i386-linux-gnu', '/usr/local/lib/x86_64-linux-gnu', '/usr/local/lib/arm-linux-gnueabihf/', '/usr/local/lib/aarch64-linux-gnu/', '/data/data/com.termux/files/usr/lib']
  PORTTIME: not found
  PORTTIME porttime.h libporttime.so ['/usr/include', '/usr/include/SDL2', '/usr/local/include', '/usr/local/include/SDL2', '/usr/X11R6/include', '/data/data/com.termux/files/usr/include/SDL2', '/data/data/com.termux/files/usr/include'] ['/usr/lib', '/usr/lib64', '/usr/X11R6/lib', '/usr/lib/i386-linux-gnu', '/usr/lib/x86_64-linux-gnu', '/usr/lib/arm-linux-gnueabihf/', '/usr/lib/aarch64-linux-gnu/', '/usr/local/lib', '/usr/local/lib64', '/usr/local/X11R6/lib', '/usr/local/lib/i386-linux-gnu', '/usr/local/lib/x86_64-linux-gnu', '/usr/local/lib/arm-linux-gnueabihf/', '/usr/local/lib/aarch64-linux-gnu/', '/data/data/com.termux/files/usr/lib']
  FREETYPE: found 24.2.18

  ---
  For help with compilation see:
      https://www.pygame.org/wiki/Compilation
  To contribute to pygame development see:
      https://www.pygame.org/contribute.html
  ---

  [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip. error: metadata-generation-failed

× Encountered error while generating package metadata. ╰─> See above for output.

note: This is an issue with the package mentioned above, not pip. hint: See above for details.`

SunPodder avatar Apr 21 '22 15:04 SunPodder

Do me a favor can you do this for me and upload the text file Follow these commands

termux-setup-storage cd /sdcard dpkg -l | awk '{print $2}' > package_list.txt

Please upload the results

strikersix23 avatar Apr 25 '22 14:04 strikersix23

And also the results of termux-info

strikersix23 avatar Apr 25 '22 14:04 strikersix23

dpkg -l

packages_list.txt

termux-info

Application version:
0.118.0
Packages CPU architecture:
aarch64
Subscribed repositories:
# sources.list
deb https://termux.astra.in.ua/apt/termux-main/ stable main
# sources.list.d/pointless.list
deb https://its-pointless.github.io/files/24 termux extras
# x11-repo (sources.list.d/x11.list)
deb https://packages.termux.org/apt/termux-x11 x11 main
Updatable packages:
adwaita-icon-theme/x11 42.0 all [upgradable from: 41.0]
apt/stable 2.4.5 aarch64 [upgradable from: 2.4.1-2]
ca-certificates/stable 1:2022.03.29 all [upgradable from: 1:2022.02.01]
clang/stable 14.0.1 aarch64 [upgradable from: 14.0.0]
coreutils/stable 9.1 aarch64 [upgradable from: 9.0]
ffmpeg/stable 5.0.1-1 aarch64 [upgradable from: 5.0.1]
fribidi/stable 1.0.12 aarch64 [upgradable from: 1.0.11-1]
git/stable 2.35.3 aarch64 [upgradable from: 2.35.2]
gnupg/stable 2.3.5 aarch64 [upgradable from: 2.3.4]
gpgv/stable 2.3.5 aarch64 [upgradable from: 2.3.4]
harfbuzz/stable 4.2.1 aarch64 [upgradable from: 4.2.0]
libcompiler-rt/stable 14.0.1 aarch64 [upgradable from: 14.0.0]
libdrm/x11 2.4.110 aarch64 [upgradable from: 2.4.107-1]
libllvm/stable 14.0.1 aarch64 [upgradable from: 14.0.0]
libvpx/stable 1.11.0 aarch64 [upgradable from: 1.10.0-2]
lld/stable 14.0.1 aarch64 [upgradable from: 14.0.0]
llvm/stable 14.0.1 aarch64 [upgradable from: 14.0.0]
mesa/x11 21.3.7-5 aarch64 [upgradable from: 21.3.7-2]
openjdk-17/stable 17.0-19 aarch64 [upgradable from: 17.0-18]
pcre2/stable 10.40 aarch64 [upgradable from: 10.39-2]
rust/stable 1.60.0-2 aarch64 [upgradable from: 1.60.0]
termux-exec/stable 1:1.0 aarch64 [upgradable from: 1:0.9]
termux-keyring/stable 3.3 all [upgradable from: 3.1]
termux-tools/stable 0.175 all [upgradable from: 0.174]
zstd/stable 1.5.2-1 aarch64 [upgradable from: 1.5.2]
Android version:
11
Kernel build information:
Linux localhost 4.19.127-22457755 #1 SMP PREEMPT Wed Nov 10 18:56:38 KST 2021 aarch64 Android
Device manufacturer:
Samsung
Device model:
SM-A125F

SunPodder avatar Apr 27 '22 09:04 SunPodder

Install mesa libglew glu and glfw libepoxy and that should cover it

strikersix23 avatar Apr 27 '22 11:04 strikersix23

libglew not found. Instead installed glew.

Still missing some dependencies

  • FONT
  • IMAGE
  • MIXER
  • PORTMIDI
  • PORTTIME

SunPodder avatar Apr 29 '22 07:04 SunPodder

portmidi is on its pointlesses repo

On Fri, Apr 29, 2022, 2:44 AM Sun @.***> wrote:

libglew not found. Instead installed glew.

Still missing some dependencies

  • FONT
  • IMAGE
  • MIXER
  • PORTMIDI
  • PORTTIME

— Reply to this email directly, view it on GitHub https://github.com/termux/termux-app/issues/2716#issuecomment-1112968972, or unsubscribe https://github.com/notifications/unsubscribe-auth/AECLXRUIHY6QI2TAXBUEAXTVHOHOVANCNFSM5TR764DQ . You are receiving this because you commented.Message ID: @.***>

strikersix23 avatar Apr 29 '22 13:04 strikersix23

I already have setup itspointless repo. Also checked the package list from the repo. There is no package of portmidi. Can you tell how to install it?

SunPodder avatar May 01 '22 09:05 SunPodder

Your going to have to compile it yourself

strikersix23 avatar May 01 '22 11:05 strikersix23

portmidi is now available in repository. I build python3-pygame and it works @SunPodder

IntinteDAO avatar Aug 09 '22 09:08 IntinteDAO

Kivy with sdl2 does work. You can try installing pygame maybe.

Anonymous2716 avatar Aug 23 '22 20:08 Anonymous2716

@Anonymous2716 It's already on TUR repository

IntinteDAO avatar Aug 26 '22 15:08 IntinteDAO