Git Product home page Git Product logo

nvix's Introduction

image


Neovim Configuration

Welcome to my Neovim configuration, inspired and powered by Nixvim.
This setup is a port of my previous configuration, which you can find here.
I've switched to using nix for its many advantages, which far outweigh any drawbacks.

GitHub repo size GitHub Org's stars GitHub forks GitHub last commit

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 done git 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.

Installation

Ensure that you have nix installed on your system and flakes enabled.

Nix pkg manager installation

# This is multiuser installation of nix requires sudo
sh <(curl -L https://nixos.org/nix/install) --daemon
Quick run

As the config is based on flakes you can run it quickly without any long code snippet.

nix run "github:niksingh710/nvix"
Installing on non-NixOS systems
nix profile install "github:niksingh710/nvix"
Installing on NixOS systems
# 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
  ];

Previews

Telescope

image

Dashboard

image

Lualine

image

nvix's People

Contributors

niksingh710 avatar birnx avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.