Page MenuHomeSolus

Update Emacs to 28.X and enable --with-native-compilation
Open, NormalPublic

Description

  • Project/product Homepages:

https://akrl.sdf.org/gccemacs.html
https://www.emacswiki.org/emacs/GccEmacs

  • Why we should include this into the repository, i.e. what does it do that the alternatives do not?

What it is:

GccEmacs refers to the --with-native-compilation configuration option when building Emacs, which adds support for compiling EmacsLisp to native code using libgccjit. All of the Elisp packages shipped with Emacs are native-compiled, providing a noticeable performance improvement out-of-the-box. Third-party packages are also compiled to achieve further performance improvements.

Emacs is generally sluggish compared to vim, a new branch was merged to main and added as a compilation switch. It does not add regressions to the use of the software AFAIK. This switch improves significantly in terms of speed, but it depends on libgccjit, which is not itself in Solus repositories.

This switch appears on Emacs GitHub mirror, but it is not yet at the tar from the ftp you guys pull Solus' Emacs.

  • Is it open source?

Yes. GPL.

  • Upstream release:

https://github.com/emacs-mirror/emacs

Event Timeline

@lf-araujo, I believe this is very same upstream as GNU Emacs, and the latter is already packaged. And since gccemacs has been merged into 28.0 branch after T9679 is resolved and package updated to 28.1 you're all set. So maybe change title to "Update emacs package to 28.1" It's tad too soon, but it's happening: pretest is at 28.0.91 right now.

DataDrake renamed this task from Emacs --with-native-compilation to Update Emacs to 28.X and enable --with-native-compilation.Jan 21 2022, 8:25 AM
DataDrake triaged this task as Normal priority.
DataDrake edited projects, added Software; removed Package Requests.
DataDrake moved this task from Backlog to Update Requested on the Software board.