Fork me on GitHub
#emacs
<
2022-05-05
>
practicalli-johnny13:05:52

When building Emacs from source, are there any configuration flags that people recommend: I've used --with-native-compilation to make Emacs super fast, but wondering if there are other useful ones, especially for Linux. I build from source as I didnt find any Ubuntu Linux packages for Emacs 28 (although there are packages for 27.1 and 29.0.50), but https://github.com/practicalli/blog/issues/129 was relatively easy

ericdallo13:05:10

I think there is the pgtk one but I never tried

1
ericdallo13:05:40

but I know it was merged, so it depending on your emacs version it will be already available: https://www.reddit.com/r/emacs/comments/rj8k32/the_pgtk_pure_gtk_branch_was_merged/

jkxyz13:05:11

I've been running Emacs with pgtk and native-comp for a while since I switched to Wayland. This is on Emacs 29 though, not sure if it's available for 28

codeasone14:05:48

Here's how I build 29.0.50 (i.e. off master) - which I do 3-4 times a year without a hitch and have been for a few years now. I intentionally built up the --with settings from a --without-all baseline and haven't noticed anything missing or wonky in my builds:

export CC=/usr/bin/gcc-10 CXX=/usr/bin/gcc-10
export CFLAGS="-O3 -mtune=native -march=native -fomit-frame-pointer"
./autogen.sh
./configure --without-all --with-cairo --with-gif --with-jpeg --with-png --with-rsvg --with-xml2 --with-zlib --with-threads --with-json --with-file-notification=inotify --with-gnutls --with-modules --with-xft --with-libotf --with-native-compilation --with-harfbuzz --with-mailutils
make NATIVE_FULL_AOT=1 -j$(nproc)
sudo make install
With these system dependencies: https://gist.github.com/codeasone/edc7ada6874c60167887f3901432b76a This is on Mint 20.3

codeasone14:05:12

Runs like grease-lightening I'm pleased to say

plexus05:05:24

Aren't most of these already on by default?

codeasone05:05:56

I built up the configure options from a baseline of --without-all, wanting to be explicit about everything beyond the core. Maybe they're all on by default, I just didn't want any dead weight 😆

practicalli-johnny06:05:18

build dependencies were generated with sudo apt build-deps emacs , so that was much easier than before. I am not using Emacs 29 as there is an issue with unicode-fonts not getting cached (pcache issue with Emacs 29), although 28 is very fast too

1
practicalli-johnny06:05:41

It seems optional features will be enabled if Emacs configuration finds the relevant library installed on the Operating System. The --without-all is very useful for controlling exactly what goes into an Emacs build and helps keep it lean. Thank you.

1
diego.videco17:05:42

Getting curious about doom emacs. Can anyone recommend any resources for setting up a clojure environment?

ericdallo17:05:36

We have #doom-emacs Probably the official getting started is the best documentation: https://github.com/doomemacs/doomemacs/blob/master/docs/getting_started.org

gratitude-gracias 1
ericdallo17:05:57

I know @U066U8JQJ is working on a complete guide for Clojure as well

wilkerlucio17:05:15

hahah, not a complete guide, just my impressions, but its taking more time than expected to get this one out

😛 1
diego.videco18:05:49

Thanks I’ll check that out @UKFSJSM38