ActivityWatch / activitywatch

The best free and open-source automated time tracker. Cross-platform, extensible, privacy-focused.
https://activitywatch.net/
Mozilla Public License 2.0
11.94k stars 545 forks source link

Does not run on Fedora 40 Workstation #1077

Open datalot-369 opened 3 months ago

datalot-369 commented 3 months ago

Describe the bug

Does not run.

To Reproduce

  1. Download the AppImage
  2. Right Click > Properties > Executable as program [ON]
  3. Double Click or ./appimagelocation

Expected behavior

I mean...

Documentation

aw-qt_2024-06-21T23-44-31.log

Additional context

datalot@fedora:~/Downloads/binary-portable$ ./activitywatch-linux-x86_64.AppImage 
2024-06-21 23:44:54 [INFO ]: Started aw-qt...  (aw_qt.main:53)
2024-06-21 23:44:54 [WARNING]: Found matching file but was not executable: /tmp/.mount_activiRQc71F/aw-qt.desktop  (aw_qt.manager:64)
2024-06-21 23:44:54 [INFO ]: Found 8 bundled modules  (aw_qt.manager:85)
2024-06-21 23:44:54 [INFO ]: Found 0 system modules  (aw_qt.manager:119)
2024-06-21 23:44:54 [INFO ]: Starting module aw-server  (aw_qt.manager:148)
2024-06-21 23:44:54 [INFO ]: Starting module aw-watcher-afk  (aw_qt.manager:148)
2024-06-21 23:44:54 [INFO ]: Starting module aw-watcher-window  (aw_qt.manager:148)
2024-06-21 23:44:54 [INFO ]: Creating trayicon...  (aw_qt.trayicon:208)
/tmp/.mount_activiRQc71F/aw-qt: symbol lookup error: /tmp/.mount_activiRQc71F/libQt6WaylandClient.so.6: undefined symbol: wl_proxy_marshal_flags
Traceback (most recent call last):
  File "PyInstaller/hooks/rthooks/pyi_rth_inspect.py", line 47, in <module>
Traceback (most recent call last):
  File "PyInstaller/hooks/rthooks/pyi_rth_inspect.py", line 47, in <module>
  File "PyInstaller/hooks/rthooks/pyi_rth_inspect.py", line 14, in _pyi_rthook
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "PyInstaller/hooks/rthooks/pyi_rth_inspect.py", line 14, in _pyi_rthook
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "inspect.py", line 39, in <module>
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "inspect.py", line 41, in <module>
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 664, in _load_unlocked
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "<frozen importlib._bootstrap>", line 627, in _load_backward_compatible
  File "importlib/__init__.py", line 58, in <module>
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen zipimport>", line 259, in load_module
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "linecache.py", line 11, in <module>
  File "<frozen importlib._bootstrap>", line 664, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 627, in _load_backward_compatible
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen zipimport>", line 241, in load_module
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "<frozen zipimport>", line 709, in _get_module_code
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "<frozen zipimport>", line 536, in _get_data
  File "tokenize.py", line 32, in <module>
ConnectionAbortedError: [Errno 103] Software caused connection abort: '/tmp/.mount_activiRQc71F/aw-watcher-afk/base_library.zip'
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
[1927237] Failed to execute script 'pyi_rth_inspect' due to unhandled exception!
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 664, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 627, in _load_backward_compatible
  File "<frozen zipimport>", line 259, in load_module
  File "re.py", line 125, in <module>
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 982, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 925, in _find_spec
  File "<frozen importlib._bootstrap_external>", line 1423, in find_spec
  File "<frozen importlib._bootstrap_external>", line 1397, in _get_spec
  File "<frozen importlib._bootstrap_external>", line 1378, in _legacy_get_spec
  File "<frozen importlib._bootstrap>", line 423, in spec_from_loader
  File "<frozen importlib._bootstrap_external>", line 716, in spec_from_file_location
  File "<frozen zipimport>", line 191, in get_filename
  File "<frozen zipimport>", line 709, in _get_module_code
  File "<frozen zipimport>", line 536, in _get_data
OSError: [Errno 107] Transport endpoint is not connected: '/tmp/.mount_activiRQc71F/aw-server/base_library.zip'
[1927236] Failed to execute script 'pyi_rth_inspect' due to unhandled exception!
Traceback (most recent call last):
  File "PyInstaller/hooks/rthooks/pyi_rth_multiprocessing.py", line 107, in <module>
  File "PyInstaller/hooks/rthooks/pyi_rth_multiprocessing.py", line 18, in _pyi_rthook
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "multiprocessing/__init__.py", line 16, in <module>
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "multiprocessing/context.py", line 6, in <module>
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
  File "PyInstaller/loader/pyimod02_importers.py", line 419, in exec_module
  File "multiprocessing/reduction.py", line 11, in <module>
  File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
  File "<frozen importlib._bootstrap>", line 982, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 925, in _find_spec
  File "<frozen importlib._bootstrap_external>", line 1423, in find_spec
  File "<frozen importlib._bootstrap_external>", line 1397, in _get_spec
  File "<frozen importlib._bootstrap_external>", line 1378, in _legacy_get_spec
  File "<frozen importlib._bootstrap>", line 423, in spec_from_loader
  File "<frozen importlib._bootstrap_external>", line 716, in spec_from_file_location
  File "<frozen zipimport>", line 191, in get_filename
  File "<frozen zipimport>", line 709, in _get_module_code
  File "<frozen zipimport>", line 536, in _get_data
OSError: [Errno 107] Transport endpoint is not connected: '/tmp/.mount_activiRQc71F/aw-watcher-window/base_library.zip'
[1927238] Failed to execute script 'pyi_rth_multiprocessing' due to unhandled exception!
nonno-cicala commented 2 months ago

I get the same

/tmp/.mount_activiRQc71F/aw-qt: symbol lookup error: /tmp/.mount_activiRQc71F/libQt6WaylandClient.so.6: undefined symbol: wl_proxy_marshal_flags

on my TuxedoOS, based on Ubuntu, both with AppImage and deb package.

It looks like the issue #939

Update: I worked around the issue using the deb package and removing these files from /opt/activitywatch:

sudo rm -r PyQt6/Qt6/lib libQt6* libicu* libgcc_s.so.1 libstdc++.so.6

After this I can use ActivityWatch but it doesn't open the dashbord from the tray icon, I need to go to the URL from the browser

Ph15 commented 2 months ago

Same over here: I have tried to install the AW AppImage, but my session crashed with a black screen and a weird code line when I first tried to open it. Running on Fedora 40 with Gnome × Wayland.

Is there any way to get the app working through the .zip install or Git clone? If so, how to proceed? (I'm quite new to Linux, and have not been able to figure out how to install an app from a .zip file...)

Ph15 commented 2 months ago

P.S.: I have also tried installing the app through the .zip file and launching aw-qt, but I get no GUI. I can see in my monitor that aw-server and aw-watcher-window are running, but that's about it.

ErikBjare commented 2 months ago

@nonno-cicala Then that's probably due to incompatibilities with system Wayland libraries.

Given symbol lookup error: /tmp/.mount_activiRQc71F/libQt6WaylandClient.so.6: undefined symbol: wl_proxy_marshal_flags, this issue seems similar to https://github.com/rbreu/beeref/issues/102

Upstream bug in Qt: https://bugreports.qt.io/browse/QTBUG-114635

Which suggests that, to fix this in a future release, we can update Wayland in CI:

owillebo 's analysis is correct: if wl_proxy_marshal_flags was introduced in wayland version 1.19.91 then you need at least wayland >= 1.19.91 when building both Qt and Pyside.

Removing the included Qt-related library files, instead relying on system versions which are compatible with Wayland libs, is a legitimate workaround. But the QTA_QPA_PLATFORM=xcb might be better and would work for the AppImage too.

@Ph15 If you run it from the terminal, what is the output? Similar as the above? The QTA_QPA_PLATFORM trick might work for you too.

Ph15 commented 2 months ago

Hello @ErikBjare! Thanks for taking the time to answer! I am not Linux-savvy enough at the moment to know how to use the QTA_QPA_PLATFORM=xcb trick. Are there any simple steps I can follow to do so?

Humam-Hamdan commented 2 months ago

ig you can just install Xorg and call it a day.


my ubuntu 24.04 just nixed xorg so that's the solution for me too in the meantime i guess.