This is the configuration for Emacs, written in org-mode which allows me to create an actual configuration file (by tangling this one org
file), automatically export it into HTML (and also publish it to my github page using github-action), and also makes it easier to maintain.
I mainly use this configuration in archlinux, as per this writing, the default Emacs package uses this configuration options:
system-configuration-options
--sysconfdir=/etc --prefix=/usr --libexecdir=/usr/lib --with-tree-sitter --localstatedir=/var --with-cairo --disable-build-details --with-harfbuzz --with-libsystemd --with-modules --with-x-toolkit=gtk3 'CFLAGS=-march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -g -ffile-prefix-map=/build/emacs/src=/usr/src/debug/emacs -flto=auto' 'LDFLAGS=-Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-z,pack-relative-relocs -flto=auto'
- clone this repository locally (usually in
~/.config/emacs
directory). - First time only: open the ./index.org/ file once with Emacs and run the command
org-babel-tangle
(or using theC-c C-v t
keybinding). - restart Emacs and let the initialization process finished (will take some time for the first initialization).
If needed, create a file named config-overrides.el
inside the modules/
directory, to satisfy flycheck
, use this template:
;;; config-override --- various configuration overrides -*- lexical-binding: t -*-
;;; Commentary: your code goes here
;;; Code:
(provide 'config-overrides)
;;; config-overrides.el ends here