diff --git a/home-manager/flake.lock b/home-manager/flake.lock index d99974f..1c08e1c 100644 --- a/home-manager/flake.lock +++ b/home-manager/flake.lock @@ -195,11 +195,11 @@ "locked": { "lastModified": 1, "narHash": "sha256-F++9IlKzjo5nlNYC+fpx4GfbJiEUqLarfQPBBT5uz3A=", - "path": "/nix/store/xwbzdw1803z7ca584098i7frbafsafhk-source/programs/shadps4", + "path": "/nix/store/j88qqgp5b1qwpd8120jh24f48q7c96cw-source/programs/shadps4", "type": "path" }, "original": { - "path": "/nix/store/xwbzdw1803z7ca584098i7frbafsafhk-source/programs/shadps4", + "path": "/nix/store/j88qqgp5b1qwpd8120jh24f48q7c96cw-source/programs/shadps4", "type": "path" } }, diff --git a/home-manager/packages.nix b/home-manager/packages.nix index 57f63a8..d37ef01 100644 --- a/home-manager/packages.nix +++ b/home-manager/packages.nix @@ -35,7 +35,10 @@ # The home.packages option allows you to install Nix packages into your # environment. - home.packages = with unstable; with inputs; [ + home.packages = + with unstable; + with inputs; + [ pkgs.nextcloud-client pkgs.yubioath-flutter pkgs.xpipe @@ -110,7 +113,7 @@ pkgs.jetbrains.webstorm pkgs.jetbrains.rider pkgs.jetbrains.idea-community - unstable.neovim + # unstable.neovim # === Dev tooling === # === Media === @@ -147,6 +150,17 @@ # '') ]; + programs.neovim = { + # package = unstable.neovim; + enable = true; + viAlias = true; + vimAlias = true; + plugins = with pkgs.vimPlugins; [ + lazy-nvim + ]; + + }; + programs.mangohud = { enable = true; enableSessionWide = true; diff --git a/nvim/init.lua b/nvim/init.lua new file mode 100644 index 0000000..55b8979 --- /dev/null +++ b/nvim/init.lua @@ -0,0 +1 @@ +require("config.lazy") diff --git a/nvim/lazy-lock.json b/nvim/lazy-lock.json new file mode 100644 index 0000000..434bfa2 --- /dev/null +++ b/nvim/lazy-lock.json @@ -0,0 +1,5 @@ +{ + "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, + "todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" }, + "vim-wakatime": { "branch": "master", "commit": "e46d7c4f98ee0f40782008dd60cb2a79c377fb1d" } +} diff --git a/nvim/lua/config/lazy.lua b/nvim/lua/config/lazy.lua new file mode 100644 index 0000000..dee8e95 --- /dev/null +++ b/nvim/lua/config/lazy.lua @@ -0,0 +1,36 @@ +-- Bootstrap lazy.nvim +local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" +if not (vim.uv or vim.loop).fs_stat(lazypath) then + local lazyrepo = "https://github.com/folke/lazy.nvim.git" + local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath }) + if vim.v.shell_error ~= 0 then + vim.api.nvim_echo({ + { "Failed to clone lazy.nvim:\n", "ErrorMsg" }, + { out, "WarningMsg" }, + { "\nPress any key to exit..." }, + }, true, {}) + vim.fn.getchar() + os.exit(1) + end +end +vim.opt.rtp:prepend(lazypath) + +-- Make sure to setup `mapleader` and `maplocalleader` before +-- loading lazy.nvim so that mappings are correct. +-- This is also a good place to setup other settings (vim.opt) +vim.g.mapleader = " " +vim.g.maplocalleader = "\\" + +-- Setup lazy.nvim +require("lazy").setup({ + spec = { + -- import your plugins + { import = "plugins" }, + }, + -- Configure any other settings here. See the documentation for more details. + -- colorscheme that will be used when installing plugins. + install = { colorscheme = { "habamax" } }, + -- automatically check for plugin updates + checker = { enabled = true }, +}) + diff --git a/nvim/lua/plugins/main.lua b/nvim/lua/plugins/main.lua new file mode 100644 index 0000000..b33f7c4 --- /dev/null +++ b/nvim/lua/plugins/main.lua @@ -0,0 +1,4 @@ +return { + { "folke/todo-comments.nvim", opts = {} }, + { 'wakatime/vim-wakatime', lazy = false }, +}