55 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
{
 | 
						|
  description = "My personal neovim configuration";
 | 
						|
 | 
						|
  inputs = {
 | 
						|
    nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
 | 
						|
    nixvim.url = "github:nix-community/nixvim";
 | 
						|
    flake-parts.url = "github:hercules-ci/flake-parts";
 | 
						|
  };
 | 
						|
 | 
						|
  outputs = {
 | 
						|
    nixvim,
 | 
						|
    flake-parts,
 | 
						|
    ...
 | 
						|
  } @ inputs:
 | 
						|
    flake-parts.lib.mkFlake {inherit inputs;} {
 | 
						|
      systems = [
 | 
						|
        "x86_64-linux"
 | 
						|
        "aarch64-linux"
 | 
						|
        "x86_64-darwin"
 | 
						|
        "aarch64-darwin"
 | 
						|
      ];
 | 
						|
 | 
						|
      perSystem = {
 | 
						|
        pkgs,
 | 
						|
        system,
 | 
						|
        ...
 | 
						|
      }: let
 | 
						|
        pkgsWithUnfree = import inputs.nixpkgs {
 | 
						|
          inherit system;
 | 
						|
          config.allowUnfree = true;
 | 
						|
        };
 | 
						|
        nixvimLib = nixvim.lib.${system};
 | 
						|
        nixvim' = nixvim.legacyPackages.${system};
 | 
						|
        nixvimModule = {
 | 
						|
          pkgs = pkgsWithUnfree;
 | 
						|
          module = import ./config; # import the module directly
 | 
						|
          # You can use `extraSpecialArgs` to pass additional arguments to your module files
 | 
						|
          extraSpecialArgs = {
 | 
						|
            # inherit (inputs) foo;
 | 
						|
          };
 | 
						|
        };
 | 
						|
        nvim = nixvim'.makeNixvimWithModule nixvimModule;
 | 
						|
      in {
 | 
						|
        checks = {
 | 
						|
          # Run `nix flake check .` to verify that your config is not broken
 | 
						|
          default = nixvimLib.check.mkTestDerivationFromNixvimModule nixvimModule;
 | 
						|
        };
 | 
						|
 | 
						|
        packages = {
 | 
						|
          # Lets you run `nix run .` to start nixvim
 | 
						|
          default = nvim;
 | 
						|
        };
 | 
						|
      };
 | 
						|
    };
 | 
						|
}
 |