emacs-guix-starter: I’m glad this exists

A modern Emacs configuration for and in Guix

Recently Hilton Chain[1] put together emacs-guix-starter, a starter Emacs configuration that uses Guix and is set up to Guix. What it is: a regular Emacs init.el (with basic configuration) alongside a companion Guix packages manifest (packages.scm) to install those Emacs packages and all their system dependencies. The init.el even provides configuration to edit Guile!

Beginner-oriented configurations are sorely lacking in Guix. In the Emacs world, there are many personal configurations, configuration frameworks (Doom, Spacemacs, Prelude), and starter configs (minimal-emacs.d, emacs-bedrock). These are just great references, if not just to peruse. This is especially the case for newcomers, who haven’t yet developed a second-nature for how to organize files, idiomatic coding patterns, nor familiarized themselves with the standard library.

On the other hand, in the Guix world, aside from emacs-guix-starter, there’s guix-studio[2], whose last commit was 5+ years ago.

With Emacs, learning feels “bootstrapped” because once one learns about Help buffers and navigating Info manuals, it becomes much easier to both discover questions and their answers. On the other hand, it’s been my experience that Guix become naturally easier to pick up once you start—though, granted, I’ve spent much less time trying to figure out Guile and Guix than I have Elisp and Emacs.

emacs-guix-starter shows what it should look like

  • to use Guix as one’s Emacs package manager,
  • what an Emacs configuration to develop in Guile looks like,
  • as well as how to compose several Guix CLI commands

Other users can use it as a model or base for their own configuration. Just seeing these types of projects around goes a long way to demystifying confusions and spreading knowledge throughout the community.

tagged
EmacsGuixConfiguration