Ximi1970 / systray-x

SysTray-X: A system tray extension for Thunderbird. Needs both the addon AND the companion app installed to work. Will not work with TB flatpaks or snaps.
Mozilla Public License 2.0
213 stars 15 forks source link

systray still need qt5 dependency. ugrade it to qt6 #184

Closed Cherkah closed 3 months ago

Cherkah commented 4 months ago

Is your feature request related to a problem? Please describe. the app need knotifications5 as dependency on arch

Describe the solution you'd like porting systray-x-kde to depend on notifications (qt6/kf6)

Describe alternatives you've considered i have no other alternative solutions because this app is the only one that fill my expectations

Ximi1970 commented 4 months ago

I fixed all the Qt 6 incompatibilities and it should work now with Qt 6 and KF6. I only noticed the hide and show action now moves the TB window every time a bit down and to the right. Still need to solve that.

Ximi1970 commented 4 months ago

Added a new options to correct the window position when needed. It is a bit unpredictable which window manager / platform really needs it. So made it optional.

Ximi1970 commented 4 months ago

Only usable for Tumbleweed, Fedora 40 / Rawhide and Arch. Debian / Ubuntu still do not have all the needed dependencies.

Silver-D commented 3 months ago

Only usable for Tumbleweed and Arch. Debian / Ubuntu still do not have all the needed dependencies.

Hi! Please don't forget about Fedora 40 which released few days ago with Plasma 6. Fedora 40 Plasma 6 still supports X11 in the repositories, you just need to do sudo dnf install plasma-workspace-x11 and it's all good. (and regardless I know that systray-x works under Wayland on my work pc in F40, though not sure how well as I wasn't in the office long after upgrading there) Currently there is no even the Fedora_40 repository. While the version from _Rawhide works fine, it would be great to have a qt6 one updated for it in the future Fedora_40 repo. Thank you so much I love your extension!

Ximi1970 commented 3 months ago

Only forgot to mention Fedora in the list, sorry. Already prepared the rpm for 40. Was waiting for the release and addition to the build service to test it.

Ximi1970 commented 3 months ago

Git package is available at:

Tumbleweed:

sudo zypper ar -f https://download.opensuse.org/repositories/home:/Ximi1970:/Mozilla:/Add-ons:/Git/openSUSE_Tumbleweed/ SysTray-X

Fedora 40:

sudo dnf config-manager --add-repo https://download.opensuse.org/repositories/home:/Ximi1970:/Mozilla:/Add-ons:/Git/Fedora_40/home:Ximi1970:Mozilla:Add-ons:Git.repo

Arch:

wget -q https://download.opensuse.org/repositories/home:/Ximi1970:/Mozilla:/Add-ons:/Git/Arch/x86_64/home_Ximi1970_Mozilla_Add-ons_Git_Arch.key
sudo pacman-key --add home_Ximi1970_Mozilla_Add-ons_Git_Arch.key
sudo pacman-key --lsign-key BEEF5C3607D86FE9
sudo echo -e "\n[home_Ximi1970_Mozilla_Add-ons_Git_Arch]\nSigLevel = PackageOptional\nServer = https://download.opensuse.org/repositories/home:/Ximi1970:/Mozilla:/Add-ons:/Git/Arch/x86_64" | sudo tee -a /etc/pacman.conf 
Silver-D commented 3 months ago

Fedora 40 Git version:

Problem: conflicting requests
  - nothing provides libKF6Notifications6 needed by systray-x-0~git20240417.4ef176f-40.1.x86_64 from home_Ximi1970_Mozilla_Add-ons_Git

It's the kf6-knotifications package I think?

Ximi1970 commented 3 months ago

I did install a clean Fedora 40 (default GNOME). Added the above repository and installed:

sudo dnf config-manager --add-repo https://download.opensuse.org/repositories/home:/Ximi1970:/Mozilla:/Add-ons:/Git/Fedora_40/home:Ximi1970:Mozilla:Add-ons:Git.repo
sudo dnf install systray-x-gnome

No problems for me. Installs and runs nicely.

Ximi1970 commented 3 months ago

I think I did also add the third party repos and extra codecs.

Silver-D commented 3 months ago

Removed systray-x, disabled every repo except the Git version. (I'm on KDE but that shouldn't matter I think)

dnf install systray-x
 Problem: conflicting requests
  - nothing provides libKF6Notifications6 needed by systray-x-0~git20240417.4ef176f-40.1.x86_64 from home_Ximi1970_Mozilla_Add-ons_Git
  # dnf rq --depends systray-x
Last metadata expiration check: 0:04:32 ago on Fri Apr 26 23:12:18 2024.
kf6-kstatusnotifieritem-devel
libGLX.so.0()(64bit)
libGLdispatch.so.0()(64bit)
libKF6Notifications6
libKF6StatusNotifierItem.so.6()(64bit)
# rpm -q --whatprovides libKF6Notifications6
no package provides libKF6Notifications6
# rpm -q --whatprovides "libKF6Notifications.so.6()(64bit)"
kf6-knotifications-6.1.0-1.fc40.x86_64

I do not know what I'm doing, but..

# dnf rq --provides kf6-knotifications
Last metadata expiration check: 0:06:42 ago on Fri Apr 26 23:12:18 2024.
kf6-knotifications = 6.0.0-1.fc40
kf6-knotifications = 6.1.0-1.fc40
kf6-knotifications(x86-64) = 6.0.0-1.fc40
kf6-knotifications(x86-64) = 6.1.0-1.fc40
libKF6Notifications.so.6()(64bit)

Again, I do not know what I'm doing but my Fedora KDE installation that has a lot of -devel packages for kf6/qt6 installed (I compile some stuff from source), and it seems that it's not libKF6Notifications6 but libKF6Notifications.so.6()(64bit)

EDIT:

Re-enabled the _Rawhide repo and this is what I get from systray-x:

[root@Alex-Linux:~]# dnf rq --depends systray-x-0.9.8-5.32.x86_64
Last metadata expiration check: 0:02:20 ago on Fri Apr 26 23:25:25 2024.
kf5-knotifications
libGL.so.1()(64bit)
libGLdispatch.so.0()(64bit)
libKF5Notifications.so.5()(64bit)

This has many entries for kf5-knotifications so the rpm finds it eventually, the Git version is missing something for kf6

Ximi1970 commented 3 months ago

Also added Fedora 40 KDE to my collection :-). Seems like I used a wrong dependency for Fedora 40.

Ximi1970 commented 3 months ago

Solved the dependency. Generated new Git packages.

Silver-D commented 3 months ago

Also added Fedora 40 KDE to my collection :-).

Haha, nice, is good!:P

Installed on Fedora 40 KDE Plasma 6 with no issues. Everything working great!

You are the best, thank you so very much!!!

Ximi1970 commented 3 months ago

Be aware that the packages in the main repositories are still using Qt5 until I create a new release. And that will be soon because there is a new official TB!

Cherkah commented 1 month ago

hi there in arch aur repo there are two packages (systray-x-kde /systray-x-common) both in version 0.9.9-1 which require qt5 dependencies. Are you managing these pkgs? if so, it is possible to update them.

nd that will be soon because there is a new official TB!

any new release ?

regards

Ximi1970 commented 1 month ago

@Cherkah I do not know who created both packages. I do not generate any packages with those names.

Please use my repos at opensuse.org. The packages 0.9.9 are already updated for 128.0. Only problem is: The opensuse build service will not generate a valid signature at the moment for the main Arch repo. The release repo seems to be oke for now:

https://download.opensuse.org/repositories/home:/Ximi1970:/Mozilla:/Add-ons:/SysTray-X:/0.9,9/Arch/x86_64

Please be aware that tb128.0 seems to be shipped with a broken backend causing IMAP folder corruption under some circumstances. DO NOT USE IT AT THE MOMENT. Source: "Betterbird" website, https://www.betterbird.eu/

Ximi1970 commented 1 month ago

Ah also the main Arch repo is valid again. Just follow the install instruction in the README.md

Cherkah commented 1 month ago

@Ximi1970 thanks for the tips.

I do not know who created both packages. I do not generate any packages with those names.

but you talked about them:

AUR alternative install (by Antiz96) Install the systray-x package from the Arch repo. This is a split package that will offer you to either install the systray-x-common package which is suitable for any DE/WM except KDE (Gnome users need to install and enable the gnome-shell-extension-appindicator for a proper integration with Gnome) or the systray-x-kde package which includes specific options and dependencies for a proper integration with KDE.

sudo pacman -S systray-x You can directly install the systray-x-common or the systray-x-kde package instead, if you already know the one you want to install. Alternatively, there's a systray-x-git package available in the AUR.

anyway. I'm using thunderbird-beta on archLinux system and it looks like the systray-x uses thunderbird only as dependency && not the beta one. moreover it asks for dbus-glib as dependency which is now deprecated.

I'm gonna contact Antiz96 so as to find out his plans for updating his pkgs

Ximi1970 commented 1 month ago

Forgot about that. I will remove that option from the README.md. I do not have the time to check the validity of those packages also.

Antiz96 commented 1 month ago

Hi,

I'm the maintainer of the systray-x packages in the Arch Linux official [extra] repository. I just updated packages to qt6 (sorry that I missed that when updating the package to v0.9.9).

I'm using thunderbird-beta on archLinux system and it looks like the systray-x uses thunderbird only as dependency && not the beta one. moreover it asks for dbus-glib as dependency which is now deprecated.

Thunderbird beta is from the AUR. AUR packages are outside of the Arch Linux official repositories and are not officially supported. As such, the systray-x packages can't (as in "should not") depend on thunderbird-beta (at least when it comes to the systray-x packages in the Arch Linux [extra] repository).

Cherkah commented 1 month ago

@Antiz96 ok, thanks