fejfighter / pgtk-emacs-flatpak

A Flatpak build of emacs from a combined pure-gtk and native comp branch
36 stars 14 forks source link

Remove libjansson dependency #16

Open majjejjam opened 6 months ago

majjejjam commented 6 months ago

It seems libjansson has been replaced by a custom parser, so we should be able to drop it as a dependency, right?

fejfighter commented 6 months ago

Yes we absolutely can drop it as a dependency now.

I had made the changes locally last week when it was merged. I'm having separate build issues with appstream content which has made me hesitant to push

fejfighter commented 5 months ago

@majjejjam I have a working manifest, do you have this installed in parallel to the standard emacs flatpak?

newer versions of appstream are stricter and might make it hard to diffentiate

majjejjam commented 5 months ago

I actually recently forked this project to add some opinionated patches (rounded corners and titlebar syncing colors with rest the rest of the frame). I also added support for SDK Extensions which I thought would probably be appropriate here, but didn't find time to create an issue or submit a PR yet.

Sorry, what is appstream? And what's difficult to differentiate?

fejfighter commented 5 months ago

Do the SDK extensions still need to get passed in/defined at launch? that was the main reason I avoided using it.

Appstream is the meta data info for flathub and gnome software type things. I can't seem to opt out of it. the issue this change will introduce is that the app ID is now the same as the flathub version (org.gnu.emacs), rather than org.gnu.emacs-pgtk

majjejjam commented 5 months ago

Do the SDK extensions still need to get passed in/defined at launch? that was the main reason I avoided using it.

Yes. You need to add extensions to an environmental variable: FLATPAK_ENABLE_SDK_EXT=rust-nightly,texlive,llvm17 as an example. I do this with the help of Flatseal. Adding or removing requires restarting Emacs for the changes to take effect.

Appstream is the meta data info for flathub and gnome software type things. I can't seem to opt out of it. the issue this change will introduce is that the app ID is now the same as the flathub version (org.gnu.emacs), rather than org.gnu.emacs-pgtk

Thanks for the explanation! I take it you have the standard Emacs flatpak installed so there's a conflict? My fork uses capitalization, so the app id is org.gnu.Emacs. Another solution could be to use your own domain (something like org.fejfighter.emacs) or just keep the pgtk suffix.

fapdash commented 3 months ago

@majjejjam @fejfighter From what I understand libjanson was not removed from Emacs, Géza Herman contributed a json parser, so json -> lisp is handled by the new code. lisp -> json will still use libjansson if available.

See https://mail.gnu.org/archive/html/emacs-devel/2024-03/msg00299.html