diff --git a/config/core/core.nix b/config/core/core.nix index 3e54cb5..856f1f5 100644 --- a/config/core/core.nix +++ b/config/core/core.nix @@ -1,11 +1,14 @@ -{ +{pkgs, ...}: { config = { + package = pkgs.neovim; + globals = { mapleader = " "; loaded_ruby_provider = 0; loaded_perl_provider = 0; loaded_python_provider = 0; }; + keymaps = [ { mode = "n"; @@ -41,9 +44,11 @@ action = "l"; } ]; + clipboard = { register = "unnamedplus"; }; + options = { autoindent = true; expandtab = true; @@ -67,6 +72,7 @@ termguicolors = true; updatetime = 100; }; + autoCmd = [ { event = "FileType"; diff --git a/flake.lock b/flake.lock index 99f03e4..6996fea 100644 --- a/flake.lock +++ b/flake.lock @@ -18,7 +18,7 @@ }, "devshell": { "inputs": { - "flake-utils": "flake-utils", + "flake-utils": "flake-utils_2", "nixpkgs": [ "nixvim", "nixpkgs" @@ -39,6 +39,22 @@ } }, "flake-compat": { + "flake": false, + "locked": { + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-compat_2": { "locked": { "lastModified": 1696426674, "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", @@ -52,7 +68,7 @@ "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" } }, - "flake-compat_2": { + "flake-compat_3": { "flake": false, "locked": { "lastModified": 1696426674, @@ -68,7 +84,7 @@ "type": "github" } }, - "flake-compat_3": { + "flake-compat_4": { "flake": false, "locked": { "lastModified": 1696426674, @@ -103,6 +119,48 @@ } }, "flake-parts_2": { + "inputs": { + "nixpkgs-lib": [ + "neovim-nightly-overlay", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1709336216, + "narHash": "sha256-Dt/wOWeW6Sqm11Yh+2+t0dfEWxoMxGBvv3JpIocFl9E=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "f7b3c975cf067e56e7cda6cb098ebe3fb4d74ca2", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_3": { + "inputs": { + "nixpkgs-lib": [ + "neovim-nightly-overlay", + "hercules-ci-effects", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1701473968, + "narHash": "sha256-YcVE5emp1qQ8ieHUnxt1wCZCC3ZfAS+SRRWZ2TMda7E=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "34fed993f1674c8d06d58b37ce1e0fe5eebcb9f5", + "type": "github" + }, + "original": { + "id": "flake-parts", + "type": "indirect" + } + }, + "flake-parts_4": { "inputs": { "nixpkgs-lib": [ "nixvim", @@ -177,6 +235,24 @@ "type": "github" } }, + "flake-utils_4": { + "inputs": { + "systems": "systems_4" + }, + "locked": { + "lastModified": 1701680307, + "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, "gitignore": { "inputs": { "nixpkgs": [ @@ -220,6 +296,28 @@ "type": "github" } }, + "hercules-ci-effects": { + "inputs": { + "flake-parts": "flake-parts_3", + "nixpkgs": [ + "neovim-nightly-overlay", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1710270110, + "narHash": "sha256-DSByMaY4UKPv7UhObH0GwJ2D0ay6CBqMWTRn4wcIb2s=", + "owner": "hercules-ci", + "repo": "hercules-ci-effects", + "rev": "3e81b3a33980f6596aafbe308abd78daea0bfa7d", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "hercules-ci-effects", + "type": "github" + } + }, "home-manager": { "inputs": { "nixpkgs": [ @@ -241,6 +339,52 @@ "type": "github" } }, + "neovim-flake": { + "inputs": { + "flake-utils": "flake-utils", + "nixpkgs": [ + "neovim-nightly-overlay", + "nixpkgs" + ] + }, + "locked": { + "dir": "contrib", + "lastModified": 1710284709, + "narHash": "sha256-LsUxusDVMDJiq3aQcRKw11pzxmsbUwhawIcjRxguUoA=", + "owner": "neovim", + "repo": "neovim", + "rev": "9f59415243adcf70c02bc056ed755859456b20e8", + "type": "github" + }, + "original": { + "dir": "contrib", + "owner": "neovim", + "repo": "neovim", + "type": "github" + } + }, + "neovim-nightly-overlay": { + "inputs": { + "flake-compat": "flake-compat", + "flake-parts": "flake-parts_2", + "hercules-ci-effects": "hercules-ci-effects", + "neovim-flake": "neovim-flake", + "nixpkgs": "nixpkgs" + }, + "locked": { + "lastModified": 1710288189, + "narHash": "sha256-9Liyaz737kE8MjLkfvc0DY5WJrNuAE0YhxIed5AZENg=", + "owner": "nix-community", + "repo": "neovim-nightly-overlay", + "rev": "3a44d31d4d18b64f8f74c8e7439c873f3fb2f9f0", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "neovim-nightly-overlay", + "type": "github" + } + }, "nix-colors": { "inputs": { "base16-schemes": "base16-schemes", @@ -283,16 +427,16 @@ }, "nixpkgs": { "locked": { - "lastModified": 1709961763, - "narHash": "sha256-6H95HGJHhEZtyYA3rIQpvamMKAGoa8Yh2rFV29QnuGw=", - "owner": "nixos", + "lastModified": 1710252211, + "narHash": "sha256-hQChQpB4LDBaSrNlD6DPLhU9T+R6oyxMCg2V+S7Y1jg=", + "owner": "NixOS", "repo": "nixpkgs", - "rev": "3030f185ba6a4bf4f18b87f345f104e6a6961f34", + "rev": "7eeacecff44e05a9fd61b9e03836b66ecde8a525", "type": "github" }, "original": { - "owner": "nixos", - "ref": "nixos-unstable", + "owner": "NixOS", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } @@ -346,11 +490,27 @@ "type": "github" } }, + "nixpkgs_2": { + "locked": { + "lastModified": 1709961763, + "narHash": "sha256-6H95HGJHhEZtyYA3rIQpvamMKAGoa8Yh2rFV29QnuGw=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "3030f185ba6a4bf4f18b87f345f104e6a6961f34", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nixvim": { "inputs": { "devshell": "devshell", - "flake-compat": "flake-compat", - "flake-parts": "flake-parts_2", + "flake-compat": "flake-compat_2", + "flake-parts": "flake-parts_4", "home-manager": "home-manager", "nix-darwin": "nix-darwin", "nixpkgs": [ @@ -374,8 +534,8 @@ }, "pre-commit-hooks": { "inputs": { - "flake-compat": "flake-compat_2", - "flake-utils": "flake-utils_2", + "flake-compat": "flake-compat_3", + "flake-utils": "flake-utils_3", "gitignore": "gitignore", "nixpkgs": [ "nixvim", @@ -402,8 +562,8 @@ }, "pre-commit-hooks_2": { "inputs": { - "flake-compat": "flake-compat_3", - "flake-utils": "flake-utils_3", + "flake-compat": "flake-compat_4", + "flake-utils": "flake-utils_4", "gitignore": "gitignore_2", "nixpkgs": [ "nixpkgs" @@ -427,8 +587,9 @@ "root": { "inputs": { "flake-parts": "flake-parts", + "neovim-nightly-overlay": "neovim-nightly-overlay", "nix-colors": "nix-colors", - "nixpkgs": "nixpkgs", + "nixpkgs": "nixpkgs_2", "nixvim": "nixvim", "pre-commit-hooks": "pre-commit-hooks_2", "tree-sitter-nu": "tree-sitter-nu", @@ -480,6 +641,21 @@ "type": "github" } }, + "systems_4": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "tree-sitter-nu": { "flake": false, "locked": { diff --git a/flake.nix b/flake.nix index ea51a91..04897b0 100644 --- a/flake.nix +++ b/flake.nix @@ -5,6 +5,7 @@ nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; flake-parts.url = "github:hercules-ci/flake-parts"; nix-colors.url = "github:misterio77/nix-colors"; + neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay"; nixvim = { url = "github:nix-community/nixvim"; inputs.nixpkgs.follows = "nixpkgs"; @@ -25,6 +26,7 @@ outputs = { flake-parts, + neovim-nightly-overlay, nix-colors, nixpkgs, nixvim, @@ -64,7 +66,7 @@ inherit system; overlays = builtins.attrValues { default = import ./overlay { - inherit nix-colors nixvim tree-sitter-nu tree-sitter-surrealdb lib system; + inherit neovim-nightly-overlay nix-colors nixvim tree-sitter-nu tree-sitter-surrealdb lib system; }; }; }; diff --git a/overlay/default.nix b/overlay/default.nix index a812355..1955939 100644 --- a/overlay/default.nix +++ b/overlay/default.nix @@ -1,5 +1,6 @@ { lib, + neovim-nightly-overlay, nix-colors, nixvim, tree-sitter-nu, @@ -13,11 +14,14 @@ }; modifications = final: prev: { + inherit (neovim-nightly-overlay.packages.${prev.system}) neovim; + tree-sitter-grammars = { tree-sitter-nu = final.callPackage ../pkgs/tree-sitter-grammars/nushell.nix { inherit (final.tree-sitter) buildGrammar; inherit tree-sitter-nu; }; + tree-sitter-surrealdb = final.callPackage ../pkgs/tree-sitter-grammars/surrealdb.nix { inherit (final.tree-sitter) buildGrammar; inherit tree-sitter-surrealdb;