Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gtk-4.0 required for Tribler 8.0 on Ubuntu LTS 20.04.06 #8242

Closed
synctext opened this issue Nov 2, 2024 · 11 comments · Fixed by #8246 or #8252
Closed

gtk-4.0 required for Tribler 8.0 on Ubuntu LTS 20.04.06 #8242

synctext opened this issue Nov 2, 2024 · 11 comments · Fixed by #8246 or #8252

Comments

@synctext
Copy link
Member

synctext commented Nov 2, 2024

Install the rock-stable old Ubuntu LTS 20.04.06
Try to install Tribler V8.0.3

sudo apt-get install ~/Downloads/tribler_8.0.3_aarch64.deb 
[sudo] password for tribleruser: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting 'tribler' instead of '/home/tribleruser/Downloads/tribler_8.0.3_aarch64.deb'
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 tribler : Depends: gir1.2-gtk-4.0 but it is not installable
E: Unable to correct problems, you have held broken packages.
@qstokkink
Copy link
Contributor

First, I assume you need the x64.deb and not aarch64.deb. Second, could you try the following?

sudo dpkg -i ~/Downloads/tribler_8.0.3_x64.deb
sudo apt install gir1.2-gtk-3.0
tribler

@synctext
Copy link
Member Author

synctext commented Nov 3, 2024

GTK3 is not acceptable for Tribler8 🐛

sudo dpkg -i ~/Downloads/tribler_8.0.3_x64.deb 
[sudo] password for tribleruser: 
(Reading database ... 484243 files and directories currently installed.)
Preparing to unpack .../tribler_8.0.3_x64.deb ...
Unpacking tribler (8.0.3) over (7.14.0) ...
dpkg: dependency problems prevent configuration of tribler:
 tribler depends on gir1.2-gtk-4.0; however:
  Package gir1.2-gtk-4.0 is not installed.

dpkg: error processing package tribler (--install):
 dependency problems - leaving unconfigured
Processing triggers for mime-support (3.64ubuntu1) ...
Processing triggers for gnome-menus (3.36.0-1ubuntu1) ...
Processing triggers for desktop-file-utils (0.24-1ubuntu3) ...
Processing triggers for bamfdaemon (0.5.3+18.04.20180207.2-0ubuntu2) ...
Rebuilding /usr/share/applications/bamf-2.index...
Processing triggers for hicolor-icon-theme (0.17-2) ...
Errors were encountered while processing:
 tribler
XPS13:~>sudo apt install gir1.2-gtk-3.0
Reading package lists... Done
Building dependency tree       
Reading state information... Done
gir1.2-gtk-3.0 is already the newest version (3.24.20-0ubuntu1.2).
gir1.2-gtk-3.0 set to manually installed.
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 tribler : Depends: gir1.2-gtk-4.0 but it is not installable
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

@qstokkink
Copy link
Contributor

@synctext just to confirm: did you attempt to run Tribler (the third command)?

Explanation: what should happen in the first command is that tribler is installed but "unconfigured". However, in this state, you should be able to run tribler anyway. The dpkg: error processing package tribler (--install): dependency problems - leaving unconfigured is actually more of a warning than an error.

@synctext
Copy link
Member Author

synctext commented Nov 4, 2024

Nope, here is the log file:

********************************************************************************
A ImportError occurred
********************************************************************************
Traceback (most recent call last):
  File "src/tribler/run.py", line 61, in <module>
  File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/PIL/Image.py", line 97, in <module>
ImportError: liblzma-c9407571.so.5.6.3: cannot open shared object file: No such file or directory

********************************************************************************

@qstokkink
Copy link
Contributor

qstokkink commented Nov 4, 2024

Good news! The patient died but the operation succeeded. This should be a one line fix.

The new version of 8.0.3 should work for you: https://github.com/Tribler/tribler/releases/tag/v8.0.3

@synctext
Copy link
Member Author

synctext commented Nov 4, 2024

Almost there!!

INFO:IPv8CommunityLoader:Loading overlay <class 'abc.TorrentCheckerComponent'>
INFO:IPv8CommunityLoader:Loading overlay <class 'tribler.core.tunnel.community.TriblerTunnelCommunity'>
INFO:TriblerTunnelCommunity:Exit settings: BT=False, IPv8=False
INFO:TriblerTunnelCommunity:Using DispatcherEndpoint with flags {8, 1}
INFO:IPv8CommunityLoader:Loading overlay <class 'abc.VersioningComponent'>
INFO:IPv8CommunityLoader:Loading overlay <class 'tribler.core.content_discovery.community.ContentDiscoveryCommunity'>
INFO:ContentDiscoveryCommunity:Content Discovery Community initialized (peer mid b'b2bac4905cbd5fe1828aa05c0207def9e7c17919')
INFO:IPv8CommunityLoader:Finished loading communities!
INFO:DownloadManager:Load checkpoints...
INFO:DownloadManager:Checkpoints are loaded
ERROR:tribler.core.session:Uncaught exception: Traceback (most recent call last):
  File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/cx_Freeze/initscripts/__startup__.py", line 140, in run
  File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/cx_Freeze/initscripts/console.py", line 25, in run
  File "src/tribler/run.py", line 244, in <module>
  File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/asyncio/runners.py", line 44, in run
  File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/asyncio/base_events.py", line 649, in run_until_complete
  File "src/tribler/run.py", line 232, in main
  File "src/tribler/run.py", line 182, in spawn_tray_icon
  File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/pystray/__init__.py", line 64, in <module>
  File "/opt/hostedtoolcache/Python/3.10.15/x64/lib/python3.10/site-packages/pystray/__init__.py", line 60, in backend
ImportError: this platform is not supported: /usr/share/tribler/lib/gi/_gi.cpython-310-x86_64-linux-gnu.so: undefined symbol: g_callable_info_create_closure; /usr/share/tribler/lib/gi/_gi.cpython-310-x86_64-linux-gnu.so: undefined symbol: g_callable_info_create_closure; No module named 'Xlib.ext.xfixes'
NoneType: None

@synctext synctext reopened this Nov 4, 2024
@qstokkink
Copy link
Contributor

@egbertbouman Do you have any ideas about what to do with the most recent traceback?

@egbertbouman
Copy link
Member

egbertbouman commented Nov 5, 2024

It looks like pystray can't find any of the possible backends. I'm guessing that the last one it tries is the xorg backend, which fails with the Xlib error. If that's the case, this error isn't really helpful.

@qstokkink qstokkink removed their assignment Nov 5, 2024
@qstokkink
Copy link
Contributor

That seems like a wild goose chase that I don't really have time for right now. I'll unassign myself.

@egbertbouman
Copy link
Member

I wasn't having much luck solving the error while staying on ubuntu-latest, so I ended up building the .deb on ubuntu-20.04 instead. This seems to have worked. I've tested the build on Ubuntu 20.04 & 24.04.

The build can be downloaded here

@synctext
Copy link
Member Author

synctext commented Nov 11, 2024

Tribler works again om my ancient laptop! This fix is working, hopefully this is not too disruptive for the .deb installer builder action runners 😄
Screenshot from 2024-11-11 16-43-07

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment