Moon-0xff / gnome-mpris-label

A music related GNOME extension.
GNU General Public License v3.0
50 stars 9 forks source link

Port to GNOME 45 #77

Closed Moon-0xff closed 8 months ago

Moon-0xff commented 10 months ago

GNOME 45 introduces a lot of structural changes that will require a considerable amount of work.
These changes are not reconcilable with >45, which is a problem, and poses a lot of questions.

https://gjs.guide/extensions/upgrading/gnome-shell-45.html

Batwam commented 10 months ago

ah, I was just reading this page and was about to post this exact same link here! yeah, this tendency to break things with upgrades is getting frustrating...

Batwam commented 10 months ago

Did you notice this part? https://gjs.guide/extensions/upgrading/gnome-shell-45.html#mprisplayer-app

That looks relevant if that helps identify the app linked to the mpris player and avoids some of the hacks we implement to open the app!

Moon-0xff commented 10 months ago

Gnome relies solely on the mpris desktop entry to match the app. https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/mpris.js?ref_type=heads#L228

Our way of guessing the app and window is way better than that.

Batwam commented 9 months ago

Ah, you just crushed my hopes!

on the Gnome 45 compatibility front, I'll most likely switch next month. For some reason, gnome-nightly won't install on gnome-boxes for me anymore (looks like I'm not alone). We could always try with Fedora rawhide. are we possibly going to have 2 versions going forward since the gnome 45 version won't be backwards compatible?

Moon-0xff commented 9 months ago

are we possibly going to have 2 versions going forward since the gnome 45 version won't be backwards compatible?

I want to target 43, 44 and 45. To do that 2 versions of the extension will have to be uploaded to ego. ego supports multi-versioning so at least there's that.

The problem is, maintaining two versions of the same software isn't trivial, and dealing with diverging branches isn't fun.

It might be possible to deal with the version differences with a patch file, but I really don't know.

Batwam commented 9 months ago

yeah, EGO allows multiple versions but that means that we (you) need to upload two versions. I was wondering if the gnome 45 version could be main with the gnome 43/44 compatible as a fork (or vice versa). This way, if make changes, we can simply use git to sync the fork (assuming the changes don't break it).

Will you be switching to gnome 45 anytime soon? I will likely be on it from next month.

Moon-0xff commented 9 months ago

This way, if make changes, we can simply use git to sync the fork (assuming the changes don't break it).

I don't expect an automated work when doing it that way, specially because we include a binary file on the version control.

Will you be switching to gnome 45 anytime soon?

Not at all. Though I can always spin-up a VM.

Batwam commented 9 months ago

Yeah, I was somewhat relying on the fact that the binary file doesn't really change that often and might be common between both versions?

Moon-0xff commented 9 months ago

GNOME 45 is starting to hit major distributions.

Batwam commented 9 months ago

With the inclusion of the diff file, I consider that this is completed on my end so I'm not doing any further work on this. Let me know if you find any bug.

I assume that you will be testing the gnome45 version in due course, merge with main and upload to EGO in due course?

Moon-0xff commented 9 months ago

I failed to communicate this but I gave you collaborator access because I'm starting to get busy and I will not be able to attend this project with the attention it needs.

If you can test the 45 version and be confident it works reliably, let me know and I will push an update, though I'm not sure how the multi-versioning on ego works.
If not I'll try to get it done the next week.

I already merged 45-as-patch with main by the way.

Moon-0xff commented 9 months ago

For the reader interested on installing the 45 version earlier, the installation script patches the extension if it detects a gnome-shell version above or equal to 45. Here's the installation instructions (using the script).

Note that 45 compatibility is only on the development version, and the warning applies.

Batwam commented 9 months ago

For info, I have just upgraded to gnome 45 and everything is working as expected for me.

Moon-0xff commented 8 months ago

Alright, I'll upload the 45 version to ego then!

Moon-0xff commented 8 months ago

Update was accepted and is live on ego.

Here's a link to the review: https://extensions.gnome.org/review/46459
And to the extension: https://extensions.gnome.org/extension/4928/mpris-label/

I will close this issue now.

Batwam commented 8 months ago

Excellent! I guess we are on version 26 now then?