Archived
V1.1.0
SimplyEmacs — v1.1
Roadmap for the next known-good tag. Nothing here is a blocker; these are
deliberate improvements to land once decided.
Reproducibility
-
Pin all installed packages
Goal: a
v1.xcheckout installs the exact package versions it shipped
with, instead of whatever the archives serve that day. Basepackage.el
has no lockfile, so this needs a deliberate approach — pick one:- Vendor
elpa/into git (easiest for many packages, stays vanilla)
Commit~/.config/emacs/elpa/. Pins every package at once with no
per-package config; a fresh clone finds them already installed and skips
reinstalling. Downsides: bloats the repo; keepeln-cache/gitignored and
let each machine recompile native code;.elcis tied to the Emacs major
version. - Per-package
:vc+:rev(good for 1–2 packages, tedious at scale)
Convert ause-packageform to a git source pinned to a commit, e.g.
:vc (:url "https://github.com/emacs-evil/evil" :rev "SHA"). Fine for the
odd VCS package; painful across the whole set, and Magit is fiddly to build
from source this way. - straight.el / elpaca lockfile (cleanest manifest, philosophy cost)
M-x straight-freeze-versionswrites a commit-pinned manifest that scales
effortlessly and restores withstraight-thaw-versions— but it replaces
package.el, a step away from the vanilla-first line.
Decision: TBD
- Vendor
Other polish (optional, discussed for v1.0)
- DRY the
#111111background into a singledefconstininit-theme.el
(currently hardcoded ~5 times).