I've attached patches to add new packages for 'magit', 'paredit', 'emacs-w3m', and 'emacs-wget'. While working on these packages, I found that I needed a way to substitute multi-line s-expressions in the elisp code, in order to replace initializers for variables. In particular, these patches arrange to initialize certain variables containing pathnames and program names to absolute paths in the store. Sometimes the original initializers are multi-line expressions that search for the correct path using heuristics. The approach I took was to create a new module (guix build emacs-utils) containing utilities that use Emacs itself to perform the substitutions. What do you think? Mark