flathub / org.gnu.emacs

https://flathub.org/apps/details/org.gnu.emacs
16 stars 17 forks source link

Maintain feature parity with Debian Emacs (i.e., no support for IMAGEMAGICK, LIBOTF and M17N_FLT etc) #13

Open emacksnotes opened 6 years ago

emacksnotes commented 6 years ago

From Run the latest Emacs, even when your OS doesn’t provide one: Introducing Flatpak – Emacs Notes

At the time of writing, the flathub Emacs

has no support for GPM or IMAGEMAGICK

lacks support for LIBOTF and M17N_FLT

doesn’t support XWIDGETS

Item (2) above means that you may have trouble when editing in Indic, Khmer, Arabic and Farsi.(1) Item (3) is acceptable because it is felt that this feature compromises security(1)

sh-4.4$ diff -u debian-emacs-25.2.2-features.txt flathub-emacs-26.1-features.txt --- debian-emacs-25.2.2-features.txt 2018-11-05 13:20:10.453834977 +0530 +++ flathub-emacs-26.1-features.txt 2018-11-05 13:21:42.345884892 +0530 @@ -3,16 +3,12 @@ FREETYPE GIF GNUTLS -GPM GSETTINGS GTK3 -IMAGEMAGICK JPEG LCMS2 -LIBOTF LIBSELINUX LIBXML2 -M17N_FLT NOTIFY PNG RSVG @@ -23,5 +19,4 @@ X11 XFT XPM -XWIDGETS ZLIB

muep commented 5 years ago

Sorry for being slow at responding.

Anyway, at least as far as I am concerned, there is no specific goal to have feature parity or be a superset of any distribution-specific Emacs build. Adding e.g. imagemagick would require the flatpak to bundle ImageMagick. Then maintenance of this flatpak packaging would be responsible for the ImageMagick as well. Since at least initially we do not want to overload ourselves with e.g. security patching of bundled dependencies, the packaging basically uses whatever it autodetects to be available directly from the runtime.

That xwidgets item might be an oversight since it sounds like something that does not actually need any extra libraries. The linked blog article suggests that it is just disabled by default due to being somewhat questionable from security point-of-view. I am not familiar with that feature at all, so can't comment much on it right now. If someone knows of any article or discussion that describes the tradeoff in more detail, would be good to link it here.

emacksnotes commented 5 years ago

there is no specific goal to have feature parity or be a superset of any distribution-specific Emacs build

Without the CTL (i.e., Complex Text Layout), one wouldn't able to edit text in Indic and few other languages. So, to ensure that the base editing facility isn't broken, you may want to atleast link with LIBOTF and M17N libraries (as and when they are available) or create a feature request (in the appropriate flathub forum) for these other libraries to be available in runtime.

lacks support for LIBOTF and M17N_FLT means that you may have trouble when editing in Indic, Khmer, Arabic and Farsi: See emacs: INSTALL

Adding e.g. imagemagick would require the flatpak to bundle ImageMagick.

It appears that Imagemagick support will be disabled by default. See https://lists.gnu.org/archive/html/emacs-devel/2018-12/msg00036.html

That xwidgets item might be an oversight since it sounds like something that does not actually need any extra libraries. The linked blog article suggests that it is just disabled by default due to being somewhat questionable from security point-of-view. I am not familiar with that feature at all, so can't comment much on it right now. If someone knows of any article or discussion that describes the tradeoff in more detail, would be good to link it here.

For XWIDGET browser to be available, Emacs 26 requires webkit2gtk (and Emacs 25 requires webkitgtk). There wasn't any clear answer to my question "Do security concerns that apply to webkit2gtk carry over to webkitgtk?". See https://redd.it/98ayn3.