[maintainer=@GaetanLepage, @willruggiano]
Find a file
Hercules CI Effects beac406447 flake.lock: Update
Flake lock file updates:

• Updated input 'neovim-src':
    'github:neovim/neovim/e916f0327728c78945e6353eeeeb88749b077c0b?narHash=sha256-0QP%2BbeaZydoVTJT8gKVInyKX4yMPWfvS2feY9hulW5E%3D' (2025-12-28)
  → 'github:neovim/neovim/03377b95523324a2a1657435f12c13a493ee5360?narHash=sha256-gjHEPV0agQqaxWrBsfQNVweLnlatR1Fin8xfdAYCWOQ%3D' (2025-12-29)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/5c2bc52fb9f8c264ed6c93bd20afa2ff5e763dce?narHash=sha256-fHmxAesa6XNqnIkcS6%2BnIHuEmgd/iZSP/VXxweiEuQw%3D' (2025-12-27)
  → 'github:NixOS/nixpkgs/0744ef1b047f07d31d9962d757ffe38ec14a4d41?narHash=sha256-SosfgQSqVmOkqVgNYJnxW5FvoIQX4grOcpIKNrIwz4o%3D' (2025-12-29)
2025-12-30 00:05:13 +00:00
flake tree-sitter: fix eval problem (#1115) 2025-12-19 14:50:54 -08:00
.envrc commit .envrc 2024-12-11 16:28:07 +01:00
.envrc.developer.template feat: move neovim flake into the overlay itself 2024-05-24 00:16:30 +02:00
.envrc.minimal.template feat: move neovim flake into the overlay itself 2024-05-24 00:16:30 +02:00
.git-blame-ignore-revs .git-blame-ignore-revs: Add treewide format 2024-12-10 17:05:59 +01:00
.gitignore commit .envrc 2024-12-11 16:28:07 +01:00
default.nix treewide: reformat with nixfmt-rfc-style 2024-12-10 17:05:59 +01:00
flake-compat.nix refactor: partition development inputs 2025-10-26 23:08:48 +01:00
flake.lock flake.lock: Update 2025-12-30 00:05:13 +00:00
flake.nix refactor: partition development inputs 2025-10-26 23:08:48 +01:00
README.md README: add notice for tree-sitter hash mismatch 2025-03-21 17:08:31 +01:00

To use the overlay

Important

When using this overlay, you might encounter error: hash mismatch in fixed-output derivation '/nix/store/...-tree-sitter-bundled-vendor-staging.drv'.
The issue is that neovim-nightly-overlay uses and overrides the treesitter from your own package set. If this treesitter is different than the one we expect, you might get a hash mismatch.
To work around this, you can either:

  • Do not use this flake as an overlay, but simply get its default package output (inputs.neovim-nightly.packages.${system}.default)
  • Override treesitter with your own version: pkgs.neovim.override ...

with Flakes

If you are using flakes to configure your system, you can either reference the package provided by this flake directly, e.g. for nixos:

{ inputs, pkgs, ... }:
{
  programs.neovim = {
    enable = true;
    package = inputs.neovim-nightly-overlay.packages.${pkgs.system}.default;
  };

  # or

  environment.systemPackages = [
    inputs.neovim-nightly-overlay.packages.${pkgs.system}.default
  ];
}

or you can apply the overlay to your package set, e.g for home-manager:

{
  inputs = {
    neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay";
  };

  outputs = { self, ... }@inputs:
    let
      overlays = [
        inputs.neovim-nightly-overlay.overlays.default
      ];
    in
    {
      homeConfigurations = {
        macbook-pro = inputs.home-manager.lib.homeManagerConfiguration {
          modules = [
            {
              nixpkgs.overlays = overlays;
            }
          ];
        };
      };
    };
}

Updating

The neovim-nightly-overlay flake itself is updated every day to use the latest neovim source code.

However, your own flake needs to be synced manually. Remember to regularly update your flake (e.g. by using nix flake update) to get a most recent neovim build.

without Flakes

Add the overlay to your home.nix (home-manager) or configuration.nix (nixos):

{
  nixpkgs.overlays = [
    (import (builtins.fetchTarball {
      url = "https://github.com/nix-community/neovim-nightly-overlay/archive/master.tar.gz";
    }))
  ];
}

Due to some nixpkgs breaking changes if you are using NixOS 24.05 use the overlay below
also requires that you have the nixpkgs-unstable nix-channel

{
  nixpkgs.config = {
    packageOverrides = pkgs: let
      pkgs' = import <nixpkgs-unstable> {
        inherit (pkgs) system;
        overlays = [
          (import (builtins.fetchTarball {
            url = "https://github.com/nix-community/neovim-nightly-overlay/archive/master.tar.gz";
          }))
        ];
      };
    in {
      inherit (pkgs') neovim;
    };
  };
}

Binary cache

See: https://app.cachix.org/cache/nix-community