Files
nvim/flake.nix
Mykhailo Nikiforov d0011ce867
All checks were successful
check-commits / Check commits (pull_request) Successful in 9s
build-flake / build (pull_request) Successful in 2m54s
feat: nixvim configuration init
2025-10-23 19:50:10 +03:00

56 lines
1.4 KiB
Nix

{
description = "Neovim configuration, declaratively written using nix";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05";
nixvim.url = "github:nix-community/nixvim/nixos-25.05";
nixvim.inputs.nixpkgs.follows = "nixpkgs";
flake-parts.url = "github:hercules-ci/flake-parts";
systems.url = "github:nix-systems/default";
};
outputs =
{
nixvim,
flake-parts,
...
}@inputs:
flake-parts.lib.mkFlake { inherit inputs; } {
systems = import inputs.systems;
perSystem =
{
pkgs,
system,
...
}:
let
nixvimLib = nixvim.lib.${system};
nixvimPkgs = nixvim.legacyPackages.${system};
nixvimModule = {
inherit pkgs;
module = import ./config; # import the module directly
# You can use `extraSpecialArgs` to pass additional arguments to your module files
extraSpecialArgs = {
# inherit (inputs) foo;
};
};
nvim = nixvimPkgs.makeNixvimWithModule nixvimModule;
in
{
checks = {
# Run `nix flake check .` to verify that your config is not broken
default = nixvimLib.check.mkTestDerivationFromNixvimModule nixvimModule;
};
packages = {
# Lets you run `nix run .` to start nixvim
default = nvim;
};
};
};
}