JoseExposito / touchegg

Linux multi-touch gesture recognizer
GNU General Public License v3.0
3.61k stars 167 forks source link

Installing touchegg in a proot-distro alias of Debian in Termux #659

Closed b9Joker108 closed 4 months ago

b9Joker108 commented 4 months ago

Hi

In Termux , I am endeavouring to launch a XFCE4 GUI, in my proot-distro alias of Debian, with Termux-x11. I have done so, but on my tablet, it isn't very touch friendly. Can I install touchegg in Debian somehow?

Any assistance greatly appreciated.

Thanking you in anticipation Beauford

b9Joker108 commented 4 months ago

This is how far I have got so far, and it has been an involved process:

(base) root@localhost:/root/touchegg/touchegg-2.0.17/build # cmake ..
CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

CMake Error at /data/data/com.termux/files/usr/share/cmake-3.29/Modules/CMakeDetermineSystem.cmake:35 (file):
  file failed to open for reading (No such file or directory):

    /include/android/api-level.h
Call Stack (most recent call first):
  CMakeLists.txt:3 (project)

-- The C compiler identification is GNU 12.2.0
-- The CXX compiler identification is GNU 12.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found PkgConfig: /usr/bin/pkg-config (found version "1.8.1")
-- Checking for module 'libudev'
--   Found libudev, version 252
-- Found LIBUDEV: TRUE
-- Checking for module 'libinput'
--   Found libinput, version 1.22.1
-- Found LIBINPUT: TRUE
-- Checking for module 'pugixml'
--   Found pugixml, version 1.14
-- Found PUGIXML: TRUE
-- Checking for module 'cairo'
--   Found cairo, version 1.16.0
-- Found CAIRO: TRUE
-- Checking for module 'x11'
--   Found x11, version 1.8.4
-- Found X11: TRUE
-- Checking for module 'xtst'
--   Found xtst, version 1.2.3
-- Found XTEST: TRUE
-- Checking for module 'xrandr'
--   Found xrandr, version 1.5.2
-- Found XRANDR: TRUE                                                                                                              -- Checking for module 'xi'
--   Found xi, version 1.8
-- Found XINPUT: TRUE
-- Checking for module 'glib-2.0'
--   Found glib-2.0, version 2.74.6
-- Found GLIB: TRUE
-- Checking for module 'gio-2.0'
--   Found gio-2.0, version 2.74.6
-- Found GIO: TRUE
-- Found libinput >= 1.18: LIBINPUT_FILTER_DELTAS=ON
-- Checking for module 'gtk+-3.0'
--   Found gtk+-3.0, version 3.24.38
-- Found GTK3: TRUE
-- Configuring incomplete, errors occurred!

I would really appreciate some assistance.

Thanking you in anticipation Beauford

JoseExposito commented 4 months ago

Hi!

I'm not familiar with Termux, and I'm not sure if Touchégg will work on Android (I have never test it), but the error is:

CMake Error at /data/data/com.termux/files/usr/share/cmake-3.29/Modules/CMakeDetermineSystem.cmake:35 (file):
  file failed to open for reading (No such file or directory):

On my Fedora install, I the file can be found at /usr/share/cmake/Modules/CMakeDetermineSystem.cmake (and inside some Flatpak SDKs).

You can try to check if the file is present in a different path:

$ find / -name "CMakeDetermineSystem.cmake" 2> /dev/null

And create a symlink or try to copy it from a regular Linux distro and see if you are lucky enough to make it work.

I'm afraid I won't be able to help you with this issue as I don't have a way to run Termux.

b9Joker108 commented 4 months ago

Thank you so much for your response. As it turns out, I don't require Touchégg, as Termux-X11 has built-in functionality to enable touchscreen functionality for the GUI. This works for both launching the GUI of the Termux host environment, and the GUI of chroots. I didn't know this when I began prospecting the Touchégg solution. I learnt much from trying to get Touchégg working in my Debian chroot, so the time and endeavour wasn't a waste. Thank you so much for your code.