neovim though home-manager

This commit is contained in:
Murphy 2025-01-21 13:12:21 +00:00
parent 64cd39797d
commit bc234ecd40
Signed by: freya
GPG key ID: 9FBC6FFD6D2DBF17
7 changed files with 63 additions and 281 deletions

View file

@ -1,158 +0,0 @@
### IRIS - A locking plugin manager for vim
### Copyright © 2025 Freya Murphy <contact@freyacat.org>
###
### This file is part of IRIS
###
### IRIS is free software; you can redistribute it and/or modify it
### under the terms of the GNU General Public License as published by
### the Free Software Foundation; either version 3 of the License, or (at
### your option) any later version.
###
### IRIS is distributed in the hope that it will be useful, but
### WITHOUT ANY WARRANTY; without even the implied warranty of
### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
### GNU General Public License for more details.
###
### You should have received a copy of the GNU General Public License
### along with IRIS. If not, see <http://www.gnu.org/licenses/>.
[[plugins]]
id = "vim-devicons"
url = "https://github.com/ryanoasis/vim-devicons"
commit = "71f239af28b7214eebb60d4ea5bd040291fb7e33"
[[plugins]]
id = "nvim-web-devicons"
url = "https://github.com/nvim-tree/nvim-web-devicons"
commit = "aafa5c187a15701a7299a392b907ec15d9a7075f"
[[plugins]]
id = "plenary"
url = "https://github.com/nvim-lua/plenary.nvim"
commit = "3707cdb1e43f5cea73afb6037e6494e7ce847a66"
[[plugins]]
id = "lualine"
url = "https://github.com/nvim-lualine/lualine.nvim"
commit = "2a5bae925481f999263d6f5ed8361baef8df4f83"
[[plugins]]
id = "bufferline"
url = "https://github.com/akinsho/bufferline.nvim"
commit = "17083c826a004bcb87d3a830c7710d0796a73bbf"
[[plugins]]
id = "nvim-tree"
url = "https://github.com/nvim-tree/nvim-tree.lua"
commit = "d529a99f88e0dff02e0aa275db2f595cd252a2c8"
[[plugins]]
id = "undotree"
url = "https://github.com/mbbill/undotree"
commit = "2556c6800b210b2096b55b66e74b4cc1d9ebbe4f"
[[plugins]]
id = "trouble"
url = "https://github.com/folke/trouble.nvim"
commit = "4d36b8979287f5facc03fd6d955ace67db667e1d"
[[plugins]]
id = "telescope"
url = "https://github.com/nvim-telescope/telescope.nvim"
commit = "415af52339215926d705cccc08145f3782c4d132"
[[plugins]]
id = "fugitive"
url = "https://github.com/tpope/vim-fugitive"
commit = "174230d6a7f2df94705a7ffd8d5413e27ec10a80"
[[plugins]]
id = "vsnip"
url = "https://github.com/hrsh7th/vim-vsnip"
commit = "02a8e79295c9733434aab4e0e2b8c4b7cea9f3a9"
[[plugins]]
id = "vsnip_integ"
url = "https://github.com/hrsh7th/vim-vsnip-integ"
commit = "90ae474e8b05ed41e36d6f58382a9fbfb4b672c4"
[[plugins]]
id = "friendly-snippets"
url = "https://github.com/rafamadriz/friendly-snippets"
commit = "efff286dd74c22f731cdec26a70b46e5b203c619"
[[plugins]]
id = "cmp"
url = "https://github.com/hrsh7th/nvim-cmp"
commit = "8c82d0bd31299dbff7f8e780f5e06d2283de9678"
[[plugins]]
id = "cmp_buffer"
url = "https://github.com/hrsh7th/cmp-buffer"
commit = "3022dbc9166796b644a841a02de8dd1cc1d311fa"
[[plugins]]
id = "cmp_nvim_lsp"
url = "https://github.com/hrsh7th/cmp-nvim-lsp"
commit = "99290b3ec1322070bcfb9e846450a46f6efa50f0"
[[plugins]]
id = "cmp_vsnip"
url = "https://github.com/hrsh7th/cmp-vsnip"
commit = "989a8a73c44e926199bfd05fa7a516d51f2d2752"
[[plugins]]
id = "nvim-surround"
url = "https://github.com/kylechui/nvim-surround"
commit = "9f0cb495f25bff32c936062d85046fbda0c43517"
[[plugins]]
id = "nerdcommenter"
url = "https://github.com/preservim/nerdcommenter"
commit = "66c07e4083ab02ed2540ac289cc602c70b858c13"
[[plugins]]
id = "nvim-treesitter"
url = "https://github.com/nvim-treesitter/nvim-treesitter"
commit = "c7dc251cddf2cdef1fa279fa797799728a5bfd78"
run = "TSUpdate"
[[plugins]]
id = "illuminate"
url = "https://github.com/RRethy/vim-illuminate"
commit = "5eeb7951fc630682c322e88a9bbdae5c224ff0aa"
[[plugins]]
id = "todo"
url = "https://github.com/folke/todo-comments.nvim"
commit = "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0"
[[plugins]]
id = "catppuccin"
url = "https://github.com/catppuccin/nvim"
commit = "f67b886d65a029f12ffa298701fb8f1efd89295d"
[[plugins]]
id = "lspconfig"
url = "https://github.com/neovim/nvim-lspconfig"
commit = "0913481440219390969ab56a3c33089679365ef7"
[[plugins]]
id = "fidget"
url = "https://github.com/j-hui/fidget.nvim"
commit = "a0abbf18084b77d28bc70e24752e4f4fd54aea17"
[[plugins]]
id = "ident-o-matic"
url = "https://github.com/Darazaki/indent-o-matic"
commit = "4d11e98f523d3c4500b1dc33f0d1a248a4f69719"
[[plugins]]
id = "hologram"
url = "https://github.com/edluffy/hologram.nvim"
commit = "f5194f71ec1578d91b2e3119ff08e574e2eab542"
[[plugins]]
id = "virt-column"
url = "https://github.com/lukas-reineke/virt-column.nvim"
commit = "b87e3e0864211a32724a2ebf3be37e24e9e2fa99"

View file

@ -1,84 +0,0 @@
[plugins]
# == Dependencies == #
# provides nerd font glyphs
vim-devicons = "ryanoasis/vim-devicons"
nvim-web-devicons = "nvim-tree/nvim-web-devicons"
# lua functions
plenary = "nvim-lua/plenary.nvim"
# == Lines == #
# mode line
lualine = "nvim-lualine/lualine.nvim"
# buffer line
bufferline = "akinsho/bufferline.nvim"
# == Menus == #
# file menu
nvim-tree = "nvim-tree/nvim-tree.lua"
# undo menu
undotree = "mbbill/undotree"
# error menu
trouble = "folke/trouble.nvim"
# grep and find menu
telescope = "nvim-telescope/telescope.nvim"
# == Integrations == #
# git
fugitive = "tpope/vim-fugitive"
# == Auto complete == #
# snippets
vsnip = "hrsh7th/vim-vsnip"
vsnip_integ = "hrsh7th/vim-vsnip-integ"
friendly-snippets = "rafamadriz/friendly-snippets"
# auto completion engine
cmp = "hrsh7th/nvim-cmp"
cmp_buffer = "hrsh7th/cmp-buffer"
cmp_nvim_lsp = "hrsh7th/cmp-nvim-lsp"
cmp_vsnip = "hrsh7th/cmp-vsnip"
# delimiter auto complete
nvim-surround = "kylechui/nvim-surround"
# == LSP == #
# comment functions
nerdcommenter = "preservim/nerdcommenter"
# hilighter
nvim-treesitter = { url = "nvim-treesitter/nvim-treesitter", run = "TSUpdate" }
illuminate = "RRethy/vim-illuminate"
# comment hilighter
todo = "folke/todo-comments.nvim"
# theme
catppuccin = "catppuccin/nvim"
# lsp auto configs
lspconfig = "neovim/nvim-lspconfig"
# LSP notifications
fidget = "j-hui/fidget.nvim"
# auto indent
ident-o-matic = "Darazaki/indent-o-matic"
# image viewer
hologram = "edluffy/hologram.nvim"
# 80 column bar
virt-column = "lukas-reineke/virt-column.nvim"

View file

@ -50,18 +50,6 @@ config = {
-- disable active selection
noh = '<leader>h',
},
-- treesitter languages
treesitter = {
"c",
"lua",
"rust",
"typescript",
"javascript",
"python",
"vim",
"vimdoc",
"query",
},
-- lsp servers
lsps = {
-- rust
@ -73,8 +61,6 @@ config = {
},
};
vim.call('iris#load')
--[[ IMPORTS ]]--
local catppuccin = require('catppuccin')
@ -211,20 +197,6 @@ for lsp,config in pairs(config.lsps) do
require'lspconfig'[lsp].setup(config)
end
-- treesitter
require'nvim-treesitter.configs'.setup {
ensure_installed = config.treesitter,
sync_install = false,
auto_install = true,
highlight = {
enable = true,
additional_vim_regex_highlighting = false,
},
indent = {
enable = true
},
}
-- illuminate
require'illuminate'.configure {
providers = {

View file

@ -22,6 +22,7 @@
cargo
clippy
# programs
adwaita-icon-theme
cage
easyeffects
discord
@ -55,16 +56,7 @@
".zprofile".source = ../files/config/zsh/zprofile;
};
xdg.configFile = {
iris = {
source = ../files/config/iris;
recursive = true;
};
nvim = {
source = ../files/config/nvim;
recursive = true;
};
};
xdg.configFile = {};
xdg.dataFile = {
fonts = {

View file

@ -8,6 +8,7 @@
./hypr
./kitty
./mako
./neovim
./starship
./waybar
./wofi

View file

@ -0,0 +1,60 @@
{ config, lib, pkgs, ... }:
{
config = {
environment.variables.EDITOR = "nvim";
home-manager.users.${config.user} = {
programs.neovim = {
enable = true;
viAlias = true;
vimAlias = true;
extraLuaConfig = lib.fileContents ../../../files/config/nvim/init.lua;
plugins = with pkgs.vimPlugins; [
# Deoendencies
vim-devicons
nvim-web-devicons
# Lua functions
plenary-nvim
# Lines
lualine-nvim # mode line
bufferline-nvim # buffer line
# Menus
nvim-tree-lua # file browser
undotree # undo menu
trouble-nvim # error menu
telescope-nvim # grep/find menus
# Integrations
vim-fugitive # git
# Snippets
vim-vsnip
vim-vsnip-integ
friendly-snippets
# Completion
nvim-cmp
cmp-buffer
cmp-nvim-lsp
cmp-vsnip
nvim-surround # delimiter
# Lsp
nerdcommenter # comment functions
nvim-treesitter.withAllGrammars # hilighting
vim-illuminate # hilighting
todo-comments-nvim # todo comments
catppuccin-nvim # theme
nvim-lspconfig # lsp server
fidget-nvim # notifications
indent-o-matic # auto indentation
hologram-nvim # images
virt-column-nvim # 80 col line
];
};
};
};
}

View file

@ -5,7 +5,6 @@
# common system packages
environment.systemPackages = with pkgs; [
# editor
neovim
vim
# lib
libz