Welcome to my Neovim configuration, inspired and powered by Nixvim. |
Layout
./
├── config/
│ ├── lang/
│ └── default.nix
├── lib/
│ ├── default.nix
│ └── icons.nix
├── flake.lock
├── flake.nix
├── LICENSE
└── README.md
- All
.nix
files under the config/lang directory are automatically imported by the config/lang/default.nix file, excluding itself. - The
config/default.nix
file is responsible for manually importing all configuration files within the config directory, allowing for selective inclusion of features. - The
lib/default.nix
file is responsible for importing all utility functions and modules. - The
config/general.nix
file contains small plugins that do not require extensive configuration.
I have added files in
config/lang
still not working:womp:
. Ensure you have donegit add <newfile>
that's how flakes work. (git restore --staged .
to revert). [Same for any new file.]
How to update plugins to latest version? ->
nix flake update
should do that. Also I regularly update the flake.lock file.
Ensure that you have nix installed on your system and flakes enabled.
# This is multiuser installation of nix requires sudo
sh <(curl -L https://nixos.org/nix/install) --daemon
As the config is based on flakes you can run it quickly without any long code snippet.
nix run "github:niksingh710/nvix"
nix profile install "github:niksingh710/nvix"
# flake input (ensure it is using unstable input of nixpkgs as i prefer that)
{
inputs.nvix = {
url = "github:niksingh710/nvix";
inputs.nixpkgs.follows = "nixpkgs";
};
}
# flake module pkg install or home-manager package (in my config i manager system variable)
# you may need to adjust that accordingly.
[
inputs.nvix.packages.${system}.default
];