diff --git a/nixvim/plugins/lsp.nix b/nixvim/plugins/lsp.nix index 7528df11..d5dd6934 100644 --- a/nixvim/plugins/lsp.nix +++ b/nixvim/plugins/lsp.nix @@ -1,6 +1,7 @@ { lib, std, + pkgs, ... }: let inherit (std) set; @@ -37,6 +38,7 @@ in { plugins = let pluginsToGen = [ "lspconfig" + "treesitter" "cmp" "cmp-clippy" "cmp-cmdline" @@ -54,7 +56,29 @@ in { autoLoad = true; }; in - genAttrs pluginsToGen (_: basePlugin); + set.merge [ + (genAttrs pluginsToGen (_: basePlugin)) + { + treesitter = { + grammarPackages = with pkgs.vimPlugins.nvim-treesitter.builtGrammars; [ + bash + json + make + markdown + regex + toml + xml + yaml + gleam + nix + ]; + settings = { + highlight.enable = true; + indent.enable = true; + }; + }; + } + ]; diagnostic.settings = { virtual_text = true; virtual_lines = true; diff --git a/systems/rinnosuke.nix b/systems/rinnosuke.nix new file mode 100644 index 00000000..631ec061 --- /dev/null +++ b/systems/rinnosuke.nix @@ -0,0 +1,66 @@ +_: let + hostConfig = { + lib, + modulesPath, + tree, + ... + }: { + imports = + [ + (modulesPath + "/profiles/qemu-guest.nix") + ] + ++ (with tree.nixos.profiles; [ + server + ]); + + boot = { + initrd.availableKernelModules = ["ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod"]; + kernelModules = ["kvm-amd"]; + }; + + fileSystems = { + "/" = { + device = "/dev/disk/by-uuid/d7419452-7f03-40f1-ba9b-74d81cf2436a"; + fsType = "xfs"; + }; + + "/boot" = { + device = "/dev/disk/by-uuid/8B8C-6502"; + fsType = "vfat"; + options = ["fmask=0777" "dmask=0777"]; + }; + }; + + swapDevices = [ + {device = "/dev/disk/by-uuid/08b6efda-1bb5-4698-abae-fbfa8bff84fe";} + ]; + + networking = { + interfaces.ens18.ipv4.addresses = [ + { + address = "154.12.117.50"; + prefixLength = 27; + } + ]; + defaultGateway = "154.12.117.33"; + nameservers = [ + "1.1.1.1" + ]; + }; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + + boot.loader.grub.enable = true; + system.stateVersion = "25.05"; + }; +in { + arch = "x86_64"; + type = "NixOS"; + deploy.hostname = "154.12.117.50"; + colmena.tags = [ + "server" + ]; + modules = [ + hostConfig + ]; +}