style: Remove most comments and explanation
This commit is contained in:
parent
c3a94b2ed9
commit
c472114b41
1 changed files with 20 additions and 139 deletions
159
flake.nix
159
flake.nix
|
@ -25,19 +25,8 @@
|
|||
url = "github:2kabhishek/nerdy.nvim";
|
||||
flake = false;
|
||||
};
|
||||
|
||||
# see :help nixCats.flake.inputs
|
||||
# If you want your plugin to be loaded by the standard overlay,
|
||||
# i.e. if it wasnt on nixpkgs, but doesnt have an extra build step.
|
||||
# Then you should name it "plugins-something"
|
||||
# If you wish to define a custom build step not handled by nixpkgs,
|
||||
# then you should name it in a different format, and deal with that in the
|
||||
# overlay defined for custom builds in the overlays directory.
|
||||
# for specific tags, branches and commits, see:
|
||||
# https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-flake.html#examples
|
||||
};
|
||||
|
||||
# see :help nixCats.flake.outputs
|
||||
outputs = {
|
||||
self,
|
||||
nixpkgs,
|
||||
|
@ -47,51 +36,15 @@
|
|||
inherit (nixCats) utils;
|
||||
luaPath = "${./.}";
|
||||
forEachSystem = utils.eachSystem nixpkgs.lib.platforms.all;
|
||||
# the following extra_pkg_config contains any values
|
||||
# which you want to pass to the config set of nixpkgs
|
||||
|
||||
# import nixpkgs { config = extra_pkg_config; inherit system; }
|
||||
# will not apply to module imports
|
||||
# as that will have your system values
|
||||
extra_pkg_config = {
|
||||
# allowUnfree = true;
|
||||
};
|
||||
# management of the system variable is one of the harder parts of using flakes.
|
||||
dependencyOverlays = [
|
||||
(utils.sanitizedPluginOverlay inputs)
|
||||
];
|
||||
|
||||
# so I have done it here in an interesting way to keep it out of the way.
|
||||
# It gets resolved within the builder itself, and then passed to your
|
||||
# categoryDefinitions and packageDefinitions.
|
||||
|
||||
# this allows you to use ${pkgs.system} whenever you want in those sections
|
||||
# without fear.
|
||||
|
||||
# sometimes our overlays require a ${system} to access the overlay.
|
||||
# Your dependencyOverlays can either be lists
|
||||
# in a set of ${system}, or simply a list.
|
||||
# the nixCats builder function will accept either.
|
||||
# see :help nixCats.flake.outputs.overlays
|
||||
dependencyOverlays =
|
||||
/*
|
||||
(import ./overlays inputs) ++
|
||||
*/
|
||||
[
|
||||
# This overlay grabs all the inputs named in the format
|
||||
# `plugins-<pluginName>`
|
||||
# Once we add this overlay to our nixpkgs, we are able to
|
||||
# use `pkgs.neovimPlugins`, which is a set of our plugins.
|
||||
(utils.sanitizedPluginOverlay inputs)
|
||||
# add any other flake overlays here.
|
||||
|
||||
# when other people mess up their overlays by wrapping them with system,
|
||||
# you may instead call this function on their overlay.
|
||||
# it will check if it has the system in the set, and if so return the desired overlay
|
||||
# (utils.fixSystemizedOverlay inputs.codeium.overlays
|
||||
# (system: inputs.codeium.overlays.${system}.default)
|
||||
# )
|
||||
];
|
||||
|
||||
# see :help nixCats.flake.outputs.categories
|
||||
# and
|
||||
# :help nixCats.flake.outputs.categoryDefinitions.scheme
|
||||
categoryDefinitions = {
|
||||
pkgs,
|
||||
settings,
|
||||
|
@ -101,15 +54,6 @@
|
|||
mkNvimPlugin,
|
||||
...
|
||||
}: {
|
||||
# to define and use a new category, simply add a new list to a set here,
|
||||
# and later, you will include categoryname = true; in the set you
|
||||
# provide when you build the package using this builder function.
|
||||
# see :help nixCats.flake.outputs.packageDefinitions for info on that section.
|
||||
|
||||
# lspsAndRuntimeDeps:
|
||||
# this section is for dependencies that should be available
|
||||
# at RUN TIME for plugins. Will be available to PATH within neovim terminal
|
||||
# this includes LSPs
|
||||
lspsAndRuntimeDeps = with pkgs; let
|
||||
npm-modules = (import ./packages/npm-modules) {
|
||||
inherit pkgs;
|
||||
|
@ -170,9 +114,6 @@
|
|||
];
|
||||
};
|
||||
|
||||
# NOTE: lazy doesnt care if these are in startupPlugins or optionalPlugins
|
||||
# also you dont have to download everything via nix if you dont want.
|
||||
# but you have the option, and that is demonstrated here.
|
||||
startupPlugins = with pkgs.vimPlugins;
|
||||
with pkgs.neovimPlugins; {
|
||||
general = [
|
||||
|
@ -351,98 +292,50 @@
|
|||
];
|
||||
};
|
||||
|
||||
# not loaded automatically at startup.
|
||||
# use with packadd and an autocommand in config to achieve lazy loading
|
||||
# NOTE: this template is using lazy.nvim so, which list you put them in is irrelevant.
|
||||
# startupPlugins or optionalPlugins, it doesnt matter, lazy.nvim does the loading.
|
||||
# I just put them all in startupPlugins. I could have put them all in here instead.
|
||||
optionalPlugins = {};
|
||||
|
||||
# shared libraries to be added to LD_LIBRARY_PATH
|
||||
# variable available to nvim runtime
|
||||
# shared libraries to be added to LD_LIBRARY_PATH variable available to
|
||||
# nvim runtime
|
||||
sharedLibraries = {
|
||||
# general = with pkgs; [
|
||||
# libgit2
|
||||
# ];
|
||||
};
|
||||
|
||||
# environmentVariables:
|
||||
# this section is for environmentVariables that should be available
|
||||
# at RUN TIME for plugins. Will be available to path within neovim terminal
|
||||
environmentVariables = {
|
||||
test = {
|
||||
CATTESTVAR = "It worked!";
|
||||
};
|
||||
# test = {
|
||||
# CATTESTVAR = "It worked!";
|
||||
# };
|
||||
};
|
||||
|
||||
# If you know what these are, you can provide custom ones by category here.
|
||||
# If you dont, check this link out:
|
||||
# https://github.com/NixOS/nixpkgs/blob/master/pkgs/build-support/setup-hooks/make-wrapper.sh
|
||||
extraWrapperArgs = {
|
||||
test = [
|
||||
''--set CATTESTVAR2 "It worked again!"''
|
||||
];
|
||||
# test = [
|
||||
# ''--set CATTESTVAR2 "It worked again!"''
|
||||
# ];
|
||||
};
|
||||
|
||||
# lists of the functions you would have passed to
|
||||
# python.withPackages or lua.withPackages
|
||||
|
||||
# get the path to this python environment
|
||||
# in your lua config via
|
||||
# vim.g.python3_host_prog
|
||||
# or run from nvim terminal via :!<packagename>-python3
|
||||
extraPython3Packages = {
|
||||
test = [(_: [])];
|
||||
};
|
||||
|
||||
# populates $LUA_PATH and $LUA_CPATH
|
||||
extraLuaPackages = {
|
||||
test = [(_: [])];
|
||||
};
|
||||
};
|
||||
|
||||
# And then build a package with specific categories from above here:
|
||||
# All categories you wish to include must be marked true,
|
||||
# but false may be omitted.
|
||||
# This entire set is also passed to nixCats for querying within the lua.
|
||||
|
||||
# see :help nixCats.flake.outputs.packageDefinitions
|
||||
packageDefinitions = {
|
||||
# These are the names of your packages
|
||||
# you can include as many as you wish.
|
||||
nvim = {
|
||||
pkgs,
|
||||
mkNvimPlugin,
|
||||
...
|
||||
}: {
|
||||
# they contain a settings set defined above
|
||||
# see :help nixCats.flake.outputs.settings
|
||||
settings = {
|
||||
wrapRc = true;
|
||||
# IMPORTANT:
|
||||
# your alias may not conflict with your other packages.
|
||||
# aliases = [ "vim" ];
|
||||
neovim-unwrapped = inputs.neovim-nightly-overlay.packages.${pkgs.system}.neovim;
|
||||
};
|
||||
# and a set of categories that you want
|
||||
# (and other information to pass to lua)
|
||||
categories = {
|
||||
general = true;
|
||||
test = false;
|
||||
};
|
||||
extra = {};
|
||||
};
|
||||
# an extra test package with normal lua reload for fast edits
|
||||
# nix doesnt provide the config in this package, allowing you free reign to edit it.
|
||||
# then you can swap back to the normal pure package when done.
|
||||
testnvim = {
|
||||
pkgs,
|
||||
mkNvimPlugin,
|
||||
...
|
||||
}: {
|
||||
settings = {
|
||||
wrapRc = false;
|
||||
unwrappedCfgPath = "/absolute/path/to/config";
|
||||
};
|
||||
|
||||
categories = {
|
||||
general = true;
|
||||
test = false;
|
||||
|
@ -450,11 +343,9 @@
|
|||
extra = {};
|
||||
};
|
||||
};
|
||||
# In this section, the main thing you will need to do is change the default package name
|
||||
# to the name of the packageDefinitions entry you wish to use as the default.
|
||||
|
||||
defaultPackageName = "nvim";
|
||||
in
|
||||
# see :help nixCats.flake.outputs.exports
|
||||
forEachSystem (system: let
|
||||
# the builder function that makes it all work
|
||||
nixCatsBuilder =
|
||||
|
@ -463,20 +354,13 @@
|
|||
}
|
||||
categoryDefinitions
|
||||
packageDefinitions;
|
||||
|
||||
defaultPackage = nixCatsBuilder defaultPackageName;
|
||||
# this is just for using utils such as pkgs.mkShell
|
||||
# The one used to build neovim is resolved inside the builder
|
||||
# and is passed to our categoryDefinitions and packageDefinitions
|
||||
pkgs = import nixpkgs {inherit system;};
|
||||
in {
|
||||
# these outputs will be wrapped with ${system} by utils.eachSystem
|
||||
|
||||
# this will make a package out of each of the packageDefinitions defined above
|
||||
# and set the default package to the one passed in here.
|
||||
packages = utils.mkAllWithDefault defaultPackage;
|
||||
|
||||
# choose your package for devShell
|
||||
# and add whatever else you want in it.
|
||||
# Choose your package for devShell and add whatever else you want in it.
|
||||
devShells = {
|
||||
default = pkgs.mkShell {
|
||||
name = defaultPackageName;
|
||||
|
@ -488,7 +372,8 @@
|
|||
};
|
||||
})
|
||||
// (let
|
||||
# we also export a nixos module to allow reconfiguration from configuration.nix
|
||||
# We also export a nixos module to allow reconfiguration from
|
||||
# configuration.nix.
|
||||
nixosModule = utils.mkNixosModules {
|
||||
moduleNamespace = [defaultPackageName];
|
||||
inherit
|
||||
|
@ -501,7 +386,7 @@
|
|||
nixpkgs
|
||||
;
|
||||
};
|
||||
# and the same for home manager
|
||||
# And the same for home manager.
|
||||
homeModule = utils.mkHomeModules {
|
||||
moduleNamespace = [defaultPackageName];
|
||||
inherit
|
||||
|
@ -515,10 +400,6 @@
|
|||
;
|
||||
};
|
||||
in {
|
||||
# these outputs will be NOT wrapped with ${system}
|
||||
|
||||
# this will make an overlay out of each of the packageDefinitions defined above
|
||||
# and set the default overlay to the one named here.
|
||||
overlays =
|
||||
utils.makeOverlays luaPath {
|
||||
inherit nixpkgs dependencyOverlays extra_pkg_config;
|
||||
|
|
Loading…
Reference in a new issue