flake-nvim/flake.nix
2025-04-01 15:28:00 +02:00

45 lines
1.1 KiB
Nix

# flake.nix
{
description = "My own Neovim flake";
inputs = {
nixpkgs = {
url = "github:NixOS/nixpkgs";
};
neovim = {
url = "github:nix-community/neovim-nightly-overlay";
inputs.nixpkgs.follows = "nixpkgs";
};
plugin-dracula = {
url = "github:Mofiqul/dracula.nvim";
flake = false;
};
plugin-gruvbox = {
url = "github:ellisonleao/gruvbox.nvim";
flake = false;
};
plugin-lsp = {
url = "https://github.com/neovim/nvim-lspconfig";
flake = false;
};
};
outputs = { self, nixpkgs, neovim, ... }@inputs: {
nixosModules.neovim = {config, pkgs, ...} :
{
environment.systemPackages = with pkgs; [
inputs.neovim.packages.${pkgs.system}.neovim
];
programs.neovim = {
enable = true;
configure.customRC = ''
set runtimepath+=${inputs.plugin-dracula}
set runtimepath+=${inputs.plugin-lsp}
colorscheme dracula
autocmd BufEnter * :setlocal tabstop=4 shiftwidth=4 expandtab
autocmd BufEnter *.nix :setlocal tabstop=2 shiftwidth=2 expandtab
'';
};
};
};
}