I had the notion that I would run emacs on Aurora (after 30 years using vim I’m considering going back to emacs). The root conflict is that it tends to import a wide variety of files that Aurora would normally keep immutable.
So I looked into a number of ways to deploy #emacs (flatpak, homebrew, dnf, distrobox, cloned repos), it seems like it boils down to this decision:
The GUI: install the flatpak and get all the nice things but be limited in configuration and expansion options.
The terminal: run the classic UI in a terminal and have all the portability, future proofing, etc.
Install emacs as a layered package or better create your own image where you add emacs
Install emacs in a distrobox. Then inside the distrobox you can run distrobox-export –app emacs which creates a file ~/.local/share/applications/<distrobox name>-emacs.desktop
I tried 2. but on my system emacs was unstable. Means it vanished shortly after start. There were messages in the log, IIRC. But I gave it up and switched back to neovim. I know switching from emacs to neovim sounds crazy but I was using doomemacs and such my fingers were used to the vim way.
I should add that 1. is fine but here the problem is that in order to have a smooth experience you need to install more packages (not all stuff is available in brew) and this makes things cumbersome, IMHO.
That’s why things were easier when I decided to have a distrobox where I installed
neovim
neovide
and all stuff I need for what I do (e.g. a proper Rust environment)
I created my own around February of 2025 and have been using it happily ever since. One of my main motivations was to have Emacs installed on the image. Here is my repo in case you just want a reproducible example. Be aware that my image is based on Bluefin, not Aurora, so if you decide that you want to try this, you won’t be able to just fork my repo or (bad idea) switch to my image without problems. I would suggest that you can use my repo as an example but that you should start with the ublue-os/template-repository and roll your own image.
if you rpm-ostree install emacs , that’ll create and maintain a new layer for you, or is that the “system” approach previously mentioned?
In the ideal case, everything you want would be in linuxbrew or flatpak, but rpm-ostree is fine as long as you understand you might have layer conflicts later (seems rare in my experience)
It was actually wanting a “normal” Emacs that got me to look into making a custom distro, because Flatpak seemed like it caused a lot of issues, and the Homebrew version (at least for Linux) is terminal-only.
Anyway, using Blue Build you could have a custom distro with Emacs in about an hour, and you can easily add new things to it as you learn more. The post I linked above includes multiple links to my GitHub repo, but for Emacs all it took was adding it to the package list in the template’s “recipe” file.
Thank you all!
I had problems with running it from a fedora distrobox and could not export it at all (it complained about missing libraries.
Since then, I discovered this thread: Emacs, aspell, flatpak, oh my - #26 by brogos
and learned about sysext and custom builds.
I’m going to investigate that, otherwise I will stick with Helix.
Ultimately I want to return to emacs because of org mode and magit.