summaryrefslogtreecommitdiff
path: root/archetypes/collections/neovim.nix
blob: 0c7edbc44f6025e8c76734e4980e3d4fc3ed4b5a (plain)
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
{ lib, pkgs, ... }: let
	cfg.neovimPackage = pkgs.neovim;

	# Neovim package that includes aliases vi(m) -> nvim
	neovim-aliases = pkgs.symlinkJoin {
		name = "neovim-aliases";
		paths = [ cfg.neovimPackage ];
		postBuild = ''
			ln -sf $out/bin/nvim $out/bin/vi
			ln -sf $out/bin/nvim $out/bin/vim
		'';
	};
in {
	# Don't use programs.neovim since that will build neovim from source
	environment.systemPackages = with pkgs; [
		neovim-aliases
		# LSP servers
		python313Packages.python-lsp-server
		svelte-language-server
		tailwindcss-language-server
		vscode-langservers-extracted
		# Misc deps
		gcc  # Treesitter requires a C compiler
	];
}