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

Migrate to libpeas-2 #1501

Open
wants to merge 23 commits into
base: master
Choose a base branch
from
Open

Migrate to libpeas-2 #1501

wants to merge 23 commits into from

Conversation

jeremypw
Copy link
Collaborator

@jeremypw jeremypw commented Dec 25, 2024

Fixes #1498

  • Reproduces as far as possible changes to current appearance and behaviour
  • Needed to ship a .vapi for libpeas-2 for now as is not currently supplied by the libpeas-2-dev package available (2.0.0) but it is supplied by 2.0.5 which is published in Ubuntu 24.10 (Oracular) and later. Not sure how to get it into elementary8 which is based on Ubuntu 24.04LTS.
  • Could not get Flatpak manifest to compile because of dependency issues so leaving that for now. Code does not currently work properly as a Flatpak anyway and is supplied as .deb

Used a ListBox bound to the Peas.Engine list_model for the Preferences Dialog, but as the model does not change while the ListBox in use may be simpler to construct and sort it manually.

@jeremypw jeremypw changed the title Migrate to libpease-2 Migrate to libpeas-2 Dec 25, 2024
@jeremypw jeremypw force-pushed the jeremypw/migrate-libpeas-2 branch from 6bb4cc6 to b8ef69a Compare December 25, 2024 18:50
@jeremypw
Copy link
Collaborator Author

jeremypw commented Dec 26, 2024

Can we send this upstream?

Probably, it should just be a matter of deb packaging but it won't solve the Flatpak issue I ran up against. I am not convinced libpeas-2 is the way to go - it provides a lot of stuff we don't need like loading JavaScript plugins which has to be included in the Flatpak (unless there are some compile options I haven't found yet). I am going to try to produce another PR removing libpeas altogether for comparison.

@jeremypw
Copy link
Collaborator Author

Libpeas may provide small advantages in code organization, but as far as I am aware the main point is to allow third-party plugins written in other languages and separately packaged in other projects to be used (they just need to be installed into the right directory).

@jeremypw
Copy link
Collaborator Author

Its not a problem, just unnecessary. Need to identify functional advantages of libpeas to justify the extra dependencies.

@jeremypw
Copy link
Collaborator Author

@danirabbit Will it be possible to ship libpeas-2 version 2.0.5 in elementary 8 if it is not in Ubuntu 24.04?

@jeremypw
Copy link
Collaborator Author

jeremypw commented Dec 29, 2024

The main advantage of keeping the libpeas dependency for now, especially if we can lose the need for the .vapi, is the smaller diff. Even better if libpeas-2 can be absorbed in the elementary platform.

@jeremypw
Copy link
Collaborator Author

Hmm - as far as I can make out,, even Gnome is not using libpeas-2 for their gedit flatpak 😞

@jeremypw
Copy link
Collaborator Author

@leonardo-lemos Thanks! I forgot to check the CI file as everything worked locally.

@jeremypw
Copy link
Collaborator Author

@kaixoo Thanks for the offer. The limiting factor is getting reviews and re-reviews of existing (simpler, ready) PRs tbh. I guess people are focussed on finalizing the stable release of OS 8. I could mark this as ready for review if you like, otherwise I was waiting for the .vapi file to be included in the -dev package.

I've started a fork of Code that I can use myself at least that contains some of the more useful features that are not in the original.

@jeremypw jeremypw marked this pull request as ready for review January 16, 2025 11:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Refactor the plugin system to not use libpeas
2 participants