Skip to content

Overlay for Emacs builds from the "feature/igc" branch

Notifications You must be signed in to change notification settings

naveen-seth/emacs-igc-overlay

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nix Overlay for Emacs ‘feature/igc’ Branch Build

This flake extends the nix-community/emacs-overlay to provide Emacs with the new experimental garbage collector from Emacs “feature/igc” branch. The new GC is incremental, generational, and thread-safe. It is implemented using Ravenbrook’s Memory Pool System (ravenbrook/mps).

Effectively this should mean less GC pauses.

Usage

Consume this flake’s default overlay in your own config or use nix build / nix run.

The overlay adds the `emacs-igc` package and adds derivation inputs withBuildDetails (default: false) and withMpsAs (default: "yes"). Enabling build-details fixes this issue when using the Elpaca package manager on unstable Emacs builds from nixpkgs.

nix build "github:naveen-seth/emacs-igc-overlay"
# or
nix build "github:naveen-seth/emacs-igc-overlay"#emacs-igc-pgtk

The overlay only provides emacs-igc (and not emacs-igc-pgtk). Set other build-options using .override.

{ pkgs, emacs-igc-overlay, ... }:
{
  nixpkgs.overlays = [
    emacs-igc-overlay.overlays.default
  ];

  environment.systemPackages = [
    # Example build
    (pkgs.emacs-igc.override {
      withBuildDetails = true;
     	withCompressInstall = false;
     	withMpsAs = "debug";
     	withPgtk = true;
    })
  ];
}

Notice

I wrote this overlay mostly for personal use. I think the nix-community overlay is probably a better source for your Emacs overlay once they provide builds with igc. If I find the time (exams currently), I might try to create a pull request. This overlay will then be retired! Tested on Linux only.

About

Overlay for Emacs builds from the "feature/igc" branch

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages