From e63917ca8539a42be170865c56503ad69f6ad053 Mon Sep 17 00:00:00 2001 From: DACHXY Date: Thu, 2 Jan 2025 22:17:54 +0800 Subject: [PATCH] fix: neovim --- flake.lock | 38 ++++++------- home/config/nvim/init.lua | 2 - home/config/nvim/lua/plugins/coc.lua | 4 -- home/config/nvim/lua/plugins/image.lua | 2 +- home/user/config.nix | 8 +-- home/user/default.nix | 1 + home/user/neovim.nix | 78 ++++++++++++++++++++++++++ home/user/programs.nix | 8 --- system/modules/packages.nix | 3 +- system/modules/rust-toolchain.toml | 19 ------- system/modules/rust.nix | 30 ---------- 11 files changed, 104 insertions(+), 89 deletions(-) delete mode 100644 home/config/nvim/init.lua delete mode 100644 home/config/nvim/lua/plugins/coc.lua create mode 100644 home/user/neovim.nix delete mode 100644 system/modules/rust-toolchain.toml delete mode 100644 system/modules/rust.nix diff --git a/flake.lock b/flake.lock index 3292a98..53c33e3 100644 --- a/flake.lock +++ b/flake.lock @@ -130,11 +130,11 @@ "zig": "zig" }, "locked": { - "lastModified": 1735597925, - "narHash": "sha256-znyKiXlrkPL+2xQwAR6G4/DKCgsutyIPo+d1dGeh2W4=", + "lastModified": 1735765328, + "narHash": "sha256-f4LI34cXP8nOTi4Va6GPUFaJYf0qGbabk+OeUddsfuk=", "owner": "ghostty-org", "repo": "ghostty", - "rev": "478fe3917c2882a1c321f9d1eec808b71698974d", + "rev": "94599102e9fb8247af08cbbbcb7ee25e3d31e1bd", "type": "github" }, "original": { @@ -172,11 +172,11 @@ ] }, "locked": { - "lastModified": 1735381016, - "narHash": "sha256-CyCZFhMUkuYbSD6bxB/r43EdmDE7hYeZZPTCv0GudO4=", + "lastModified": 1735774425, + "narHash": "sha256-C73gLFnEh8ZI0uDijUgCDWCd21T6I6tsaWgIBHcfAXg=", "owner": "nix-community", "repo": "home-manager", - "rev": "10e99c43cdf4a0713b4e81d90691d22c6a58bdf2", + "rev": "5f6aa268e419d053c3d5025da740e390b12ac936", "type": "github" }, "original": { @@ -250,11 +250,11 @@ ] }, "locked": { - "lastModified": 1735446832, - "narHash": "sha256-hem1Sr6bPEV4DFazWwbWcDlnfeCOGTHF5bE1/00lcCQ=", + "lastModified": 1735782927, + "narHash": "sha256-78/J6ACmSgHwKUzDPCT9XZdh7rS2gtesUphxXh4y8I0=", "owner": "horriblename", "repo": "hyprgrass", - "rev": "8a66a38e25e0b777ff217af7c9044e6eec4fac10", + "rev": "bdfa960b97ac98ad9d05c908ee20e053e2942928", "type": "github" }, "original": { @@ -279,11 +279,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1735585949, - "narHash": "sha256-vCGG4tGMvzCzz+ZIsiNtpoFW9+f+itYLTAVW41qk/Hk=", + "lastModified": 1735818837, + "narHash": "sha256-J/wC5GJG6VHQJTHtZlTu2jTwN2kXouWoLOSyWO+w9q0=", "ref": "refs/heads/main", - "rev": "1989b0049f7fb714a2417dfb14d6b4f3d2a079d3", - "revCount": 5607, + "rev": "42fd366046d67c52449001b6a6e9b64427aee712", + "revCount": 5615, "submodules": true, "type": "git", "url": "https://github.com/hyprwm/Hyprland" @@ -336,11 +336,11 @@ ] }, "locked": { - "lastModified": 1728345020, - "narHash": "sha256-xGbkc7U/Roe0/Cv3iKlzijIaFBNguasI31ynL2IlEoM=", + "lastModified": 1735734474, + "narHash": "sha256-9OV4lOqrEJVLdOrpNN/9msNwAhI6FQTu4N7fufilG08=", "owner": "hyprwm", "repo": "hyprland-protocols", - "rev": "a7c183800e74f337753de186522b9017a07a8cee", + "rev": "271df559dd30e4bc5ec6af02d017ac0aaabd63a7", "type": "github" }, "original": { @@ -739,11 +739,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1735573972, - "narHash": "sha256-XnjBHfLSoXfIKs/el6ok4ESzjxfVVAe326sfBuu0Dwg=", + "lastModified": 1735742732, + "narHash": "sha256-966g6oVcBwsHUNWpk9jDfifqOWdV+iMHXTSZEQrhhRk=", "owner": "sxyazi", "repo": "yazi", - "rev": "00e8adc3decc370a7e14caaeae3676361549fceb", + "rev": "40fea8521ecc4b6b17532462002a084c43632016", "type": "github" }, "original": { diff --git a/home/config/nvim/init.lua b/home/config/nvim/init.lua deleted file mode 100644 index 2514f9e..0000000 --- a/home/config/nvim/init.lua +++ /dev/null @@ -1,2 +0,0 @@ --- bootstrap lazy.nvim, LazyVim and your plugins -require("config.lazy") diff --git a/home/config/nvim/lua/plugins/coc.lua b/home/config/nvim/lua/plugins/coc.lua deleted file mode 100644 index 6ee58d1..0000000 --- a/home/config/nvim/lua/plugins/coc.lua +++ /dev/null @@ -1,4 +0,0 @@ -return { - { "neoclide/coc.nvim", branch = "release" }, - { "yaegassy/coc-volar", dependencies = "neoclide/coc.nvim", build = "yarn install --frozen-lockfile" }, -} diff --git a/home/config/nvim/lua/plugins/image.lua b/home/config/nvim/lua/plugins/image.lua index 7fe4429..5ee5da8 100644 --- a/home/config/nvim/lua/plugins/image.lua +++ b/home/config/nvim/lua/plugins/image.lua @@ -3,7 +3,7 @@ return { "3rd/image.nvim", opts = { backend = "kitty", - processor = "magick_rock", + processor = "magick_cli", integrations = { markdown = { enabled = true, diff --git a/home/user/config.nix b/home/user/config.nix index 79664ca..aa6fa24 100644 --- a/home/user/config.nix +++ b/home/user/config.nix @@ -3,10 +3,10 @@ let configDir = ../config; in { home.file = { - ".config/nvim" = { - source = "${configDir}/nvim"; - recursive = true; - }; + # ".config/nvim" = { + # source = "${configDir}/nvim"; + # recursive = true; + # }; ".config/wallpapers".source = "${configDir}/wallpapers"; ".config/kitty".source = "${configDir}/kitty"; ".config/neofetch".source = "${configDir}/neofetch"; diff --git a/home/user/default.nix b/home/user/default.nix index 5d4d1e3..9c6dbc2 100644 --- a/home/user/default.nix +++ b/home/user/default.nix @@ -11,6 +11,7 @@ ./virtualization.nix ./hyprland.nix ./swaync.nix + ./neovim.nix inputs.hyprland.homeManagerModules.default ]; diff --git a/home/user/neovim.nix b/home/user/neovim.nix new file mode 100644 index 0000000..870b396 --- /dev/null +++ b/home/user/neovim.nix @@ -0,0 +1,78 @@ +{ pkgs, ... }: + +let + treesitterWithGrammars = (pkgs.vimPlugins.nvim-treesitter.withPlugins (p: [ + p.bash + p.comment + p.css + p.dockerfile + p.fish + p.gitattributes + p.gitignore + p.go + p.gomod + p.gowork + p.hcl + p.javascript + p.jq + p.json5 + p.json + p.lua + p.make + p.markdown + p.nix + p.python + p.rust + p.toml + p.typescript + p.vue + p.yaml + ])); + + treesitter-parsers = pkgs.symlinkJoin { + name = "treesitter-parsers"; + paths = treesitterWithGrammars.dependencies; + }; + configDir = ../config; +in +{ + home.packages = with pkgs; [ + ripgrep + fd + lua-language-server + black + nodejs_22 + gh + ]; + + programs.neovim = { + enable = true; + vimAlias = true; + coc.enable = false; + withNodeJs = true; + + plugins = [ + treesitterWithGrammars + ]; + extraPackages = [ pkgs.imagemagick ]; + extraLuaPackages = ps: with ps; [ magick ]; + }; + + home.file."./.config/nvim" = { + source = "${configDir}/nvim"; + recursive = true; + }; + + home.file."./.config/nvim/init.lua".text = '' + require("config.lazy") + vim.opt.runtimepath:append("${treesitter-parsers}") + ''; + + # Treesitter is configured as a locally developed module in lazy.nvim + # we hardcode a symlink here so that we can refer to it in our lazy config + home.file."./.local/share/nvim/nix/extras/" = { + recursive = true; + source = treesitterWithGrammars; + }; + +} diff --git a/home/user/programs.nix b/home/user/programs.nix index dc6019a..5ae9c0a 100644 --- a/home/user/programs.nix +++ b/home/user/programs.nix @@ -4,14 +4,6 @@ let in { programs = { - neovim = { - enable = true; - withNodeJs = true; - withPython3 = true; - extraLuaPackages = ps: [ ps.magick ]; - extraPackages = [ pkgs.imagemagick ]; - }; - vscode = { enable = true; package = pkgs.vscode; diff --git a/system/modules/packages.nix b/system/modules/packages.nix index 8ecd0cf..f6a834b 100644 --- a/system/modules/packages.nix +++ b/system/modules/packages.nix @@ -1,5 +1,4 @@ { pkgs, inputs, system, ... }: - { environment.systemPackages = (with pkgs; [ # gtk theme @@ -59,7 +58,7 @@ lua51Packages.lua lua51Packages.luarocks luajitPackages.magick - vimPlugins.neomake + imagemagick # Shell fishPlugins.done diff --git a/system/modules/rust-toolchain.toml b/system/modules/rust-toolchain.toml deleted file mode 100644 index a81f07e..0000000 --- a/system/modules/rust-toolchain.toml +++ /dev/null @@ -1,19 +0,0 @@ -[toolchain] -channel = "nightly" -components = [ - "rust-src", - "rust-analyzer", - "rustc-codegen-cranelift", - "miri", - "llvm-tools", - "rust-docs-json", -] -targets = [ - "wasm32-unknown-unknown", - "wasm32-wasi", - "x86_64-pc-windows-gnu", - "x86_64-unknown-linux-gnu", - "aarch64-unknown-linux-gnu", - "x86_64-unknown-linux-musl", -] -profile = "default" diff --git a/system/modules/rust.nix b/system/modules/rust.nix deleted file mode 100644 index 322d961..0000000 --- a/system/modules/rust.nix +++ /dev/null @@ -1,30 +0,0 @@ -{ inputs, pkgs, ... }: - -{ - # Apply the overlay to the package set - # nixpkgs.overlays = [ - # inputs.rust-overlay.overlays.default - # ]; - - environment.systemPackages = with pkgs; [ - # (rust-bin.fromRustupToolchainFile ./rust-toolchain.toml) - taplo #toml formatter & lsp - cargo-watch - cargo-deny - cargo-audit - cargo-update - cargo-edit - cargo-outdated - cargo-license - cargo-tarpaulin - cargo-cross - cargo-zigbuild - cargo-nextest - cargo-spellcheck - cargo-modules - cargo-bloat - cargo-unused-features - bacon - evcxr #rust repl - ]; -}