frostwire / frostwire

An easy to use Cloud Downloader, BitTorrent Client and Media Player. Search, Download, Play, Share
http://www.frostwire.com
Apache License 2.0
512 stars 156 forks source link

Missing dependencies on Fedora Workstation 40. Frostwire will not install from RPM file. #1015

Open RealJosephKnapp opened 2 months ago

RealJosephKnapp commented 2 months ago

Hello Frostwire developers, I have tried to install frostwire on my Fedora Workstation 40 computer. When I install the install will not finish because of broken packages.

realjosephknapp@fedora:~/Downloads$ sudo dnf install frostwire-6.13.3.amd64.rpm [sudo] password for realjosephknapp: Fedora 40 - x86_64 - Updates 26 kB/s | 28 kB 00:01
Fedora 40 - x86_64 - Updates 1.5 MB/s | 4.1 MB 00:02
Last metadata expiration check: 0:00:02 ago on Thu 05 Sep 2024 02:36:06 PM PDT. Error: Problem: conflicting requests

When I try to find these packages in the fedora repositories it they do not exist. For reference, I am using Oracle JDK 22.0.2 by default on my computer with Oracle JDK 8u421 as a fallback for applications that demand JDK 8. I also want to ask when the transition to Libtorrent 2.0.10 will be complete?

gubatron commented 2 months ago

hmm, there must be something wrong with alien, the package should include a built-in JRE that we provide on the .deb version.

Perhaps we should take the time to provide a flatpak or snap as a unified package for all distributions.

In the meantime please try this .tar.gz that has everything self-contained https://github.com/frostwire/frostwire/releases/download/frostwire-desktop-6.13.3-build-322/frostwire-6.13.3.amd64.tar.gz

It shouldn't demand the need for JDK, I'll revise that on the .deb spec.

gubatron commented 2 months ago

also, can you try: sudo dnf install frostwire-6.13.3.amd64.rpm --skip-broken

see what happens

RealJosephKnapp commented 2 months ago

hmm, there must be something wrong with alien, the package should include a built-in JRE that we provide on the .deb version.

Perhaps we should take the time to provide a flatpak or snap as a unified package for all distributions.

In the meantime please try this .tar.gz that has everything self-contained https://github.com/frostwire/frostwire/releases/download/frostwire-desktop-6.13.3-build-322/frostwire-6.13.3.amd64.tar.gz

It shouldn't demand the need for JDK, I'll revise that on the .deb spec.

I do not think including a JRE is the right approach. I think that Frostwire should use the JDK the user has installed to their system. By simply using the Oracle JDK 22.0.2 that I have on my computer it avoids any dependency hell and reduces the installer size. Also, allowing frostwire to auto update through its own package repository would avoid needing any code to auto update, although for the android version the new .apk can simply be installed directly from the frostwire app like the official telegram android app does. Filetopia uses a similar approach to what you are recommending and it never works on linux. I think the right approach is simply using the deb or rpm file to install the neccessary jars and leaving the JDK up to the end user. Maybe the dependency hell is being caused by the JDK you include in the rpm file I got from your website?

Edit: when will the transition to libtorrent v2 be complete.

RealJosephKnapp commented 1 month ago

I used the skip broken flag. Although the command went through the installer did not install. The frostwire package still needs those packages that Fedora does not provide.

realjosephknapp@fedora:~/Downloads$ sudo dnf localinstall frostwire-6.13.3.amd64.rpm [sudo] password for realjosephknapp: Last metadata expiration check: 1:18:04 ago on Sat 28 Sep 2024 07:39:18 PM PDT. Error: Problem: conflicting requests

RealJosephKnapp commented 1 month ago

PS. I am now using Oracle JDK 23 with Oracle JDK 8 as a backup.

gubatron commented 1 month ago

thanks for this update.

I'm building a universal snap package that should hopefully fix this and other issues in other linux distros that have been reported.

RealJosephKnapp commented 1 month ago

I tried again with the latest build both with --skip-broken and without --skip-broken. """ realjosephknapp@fedora:~/Downloads$ sudo dnf localinstall frostwire-6.13.3.amd64.rpm --best --allowerasing [sudo] password for realjosephknapp: Sorry, try again. [sudo] password for realjosephknapp: Last metadata expiration check: 1:22:39 ago on Sat 12 Oct 2024 11:57:34 AM PDT. Error: Problem: conflicting requests