generated from nix-community/kickstart-nix.nvim
/
flake.nix
111 lines (97 loc) · 2.33 KB
/
flake.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
{
description = "Neovim derivation";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
flake-utils.url = "github:numtide/flake-utils";
neovim-nightly = {
url = "github:nix-community/neovim-nightly-overlay";
};
copilot = {
url = "github:zbirenbaum/copilot.lua";
flake = false;
};
copilot-cmp = {
url = "github:zbirenbaum/copilot-cmp";
flake = false;
};
neogit = {
url = "github:NeogitOrg/neogit?ref=master";
flake = false;
};
neotest-vim-test = {
url = "github:vim-test/vim-test";
flake = false;
};
nougat = {
url = "github:MunifTanjim/nougat.nvim";
flake = false;
};
nvim-luaref = {
url = "github:milisims/nvim-luaref";
flake = false;
};
reactive = {
url = "github:rasulomaroff/reactive.nvim";
flake = false;
};
screenkey = {
url = "github:NStefan002/screenkey.nvim";
flake = false;
};
statuscol = {
url = "github:luukvbaal/statuscol.nvim";
flake = false;
};
telescope-frecency = {
url = "github:nvim-telescope/telescope-frecency.nvim";
flake = false;
};
tslint = {
url = "github:palantir/tslint";
flake = false;
};
};
outputs =
inputs @ { nixpkgs
, flake-utils
, ...
}:
let
# This is where the Neovim derivation is built.
neovim-overlay = { system ? builtins.currentSystem }:
(import ./nix/neovim-overlay.nix { inherit inputs system; });
in
flake-utils.lib.eachDefaultSystem
(system:
let
pkgs = import nixpkgs {
inherit system;
config = { allowUnfree = true; };
overlays = [
(neovim-overlay { inherit system; })
];
};
shell = pkgs.mkShell {
name = "nvim-devShell";
buildInputs = with pkgs; [
lua-language-server
nil
stylua
luajitPackages.luacheck
];
};
in
{
devShells = {
default = shell;
};
packages = rec {
default = nvim;
nvim = pkgs.lxs-nvim;
};
# You can add this overlay to your NixOS configuration
overlays = {
default = neovim-overlay { inherit system; };
};
});
}