From ed0d2340545eef1fb8454646c130b00e6218ea7b Mon Sep 17 00:00:00 2001 From: Jordan Isaacs Date: Mon, 17 Apr 2023 16:54:28 -0400 Subject: [PATCH 1/8] LSP (nix): Fix optional closing brackets --- modules/languages/nix.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/languages/nix.nix b/modules/languages/nix.nix index c6dae73..7cd138c 100644 --- a/modules/languages/nix.nix +++ b/modules/languages/nix.nix @@ -56,9 +56,9 @@ with builtins; let command = {"${cfg.format.package}/bin/nixpkgs-fmt"}, }, ''} - ''} }, }; + ''} } ''; }; From 05f9d67463f51b335382fa1edbad472a5f5f1c02 Mon Sep 17 00:00:00 2001 From: Jordan Isaacs Date: Sun, 30 Apr 2023 21:38:41 -0400 Subject: [PATCH 2/8] Languages (zig): Fix default zls package --- modules/languages/zig.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/languages/zig.nix b/modules/languages/zig.nix index 0ce85db..033ff72 100644 --- a/modules/languages/zig.nix +++ b/modules/languages/zig.nix @@ -28,7 +28,7 @@ in { package = mkOption { description = "ZLS package"; type = types.package; - default = pkgs.nodePackages.pyright; + default = pkgs.zls; }; zigPackage = mkOption { description = "Zig package used by ZLS"; From dffd54e296f33e50eb37dc40bd001d2f96991502 Mon Sep 17 00:00:00 2001 From: Jordan Isaacs Date: Wed, 3 May 2023 20:14:30 -0400 Subject: [PATCH 3/8] Inputs: update nixpkgs --- flake.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/flake.lock b/flake.lock index e66a34b..edef383 100644 --- a/flake.lock +++ b/flake.lock @@ -399,11 +399,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1680030621, - "narHash": "sha256-qQa1NeS5Rvk2lgK5lSk986PC6I72yIHejzM8PFu+dHs=", + "lastModified": 1683020768, + "narHash": "sha256-ZyZl6k9NWS5QPwD3NoAVz/eSgodQDvl+y+fu8MVbrHc=", "owner": "nixos", "repo": "nixpkgs", - "rev": "402cc3633cc60dfc50378197305c984518b30773", + "rev": "44f30edf5661d86fb3a95841c35127f3d0ea8b0f", "type": "github" }, "original": { From 329b1bf43d5cbba3b8aad013ceb105c4740c937b Mon Sep 17 00:00:00 2001 From: Jordan Isaacs Date: Wed, 3 May 2023 20:18:49 -0400 Subject: [PATCH 4/8] Inputs: update nvim-cmp & sources Tracking issue #33 --- flake.lock | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/flake.lock b/flake.lock index edef383..c2888a5 100644 --- a/flake.lock +++ b/flake.lock @@ -35,11 +35,11 @@ "cmp-buffer": { "flake": false, "locked": { - "lastModified": 1645413199, - "narHash": "sha256-itDEtoRvZn1mtLhT9WtqKVXoMRe5Qw0/QUf+TFzGNVk=", + "lastModified": 1660101488, + "narHash": "sha256-dG4U7MtnXThoa/PD+qFtCt76MQ14V1wX8GMYcvxEnbM=", "owner": "hrsh7th", "repo": "cmp-buffer", - "rev": "d66c4c2d376e5be99db68d2362cd94d250987525", + "rev": "3022dbc9166796b644a841a02de8dd1cc1d311fa", "type": "github" }, "original": { @@ -51,11 +51,11 @@ "cmp-nvim-lsp": { "flake": false, "locked": { - "lastModified": 1665863036, - "narHash": "sha256-4pppdlVJdn75/faaP3N+o7HgEHxyR1nvkHncnFXGDFA=", + "lastModified": 1675708067, + "narHash": "sha256-DxpcPTBlvVP88PDoTheLV2fC76EXDqS2UpM5mAfj/D4=", "owner": "hrsh7th", "repo": "cmp-nvim-lsp", - "rev": "3cf38d9c957e95c397b66f91967758b31be4abe6", + "rev": "0e6b2ed705ddcff9738ec4ea838141654f12eeef", "type": "github" }, "original": { @@ -67,11 +67,11 @@ "cmp-path": { "flake": false, "locked": { - "lastModified": 1643823794, - "narHash": "sha256-xYzTpqVKpBBnajqqRRzAXlHAC13VGK1D9mFr3bntepY=", + "lastModified": 1664784283, + "narHash": "sha256-thppiiV3wjIaZnAXmsh7j3DUc6ceSCvGzviwFUnoPaI=", "owner": "hrsh7th", "repo": "cmp-path", - "rev": "466b6b8270f7ba89abd59f402c73f63c7331ff6e", + "rev": "91ff86cd9c29299a64f968ebb45846c485725f23", "type": "github" }, "original": { @@ -83,11 +83,11 @@ "cmp-treesitter": { "flake": false, "locked": { - "lastModified": 1650880862, - "narHash": "sha256-ZQ2VSrXcUEcy+1lbdvK/pnz3Ppp1lDr38g/z7OvhH8o=", + "lastModified": 1680745848, + "narHash": "sha256-WOcg6w4M20gpMCZjZ3DpPIA55SGLjV75fhckefiVfU0=", "owner": "ray-x", "repo": "cmp-treesitter", - "rev": "c5187c31abd081ecef8b41e5eb476b7340442310", + "rev": "389eadd48c27aa6dc0e6b992644704f026802a2e", "type": "github" }, "original": { @@ -99,11 +99,11 @@ "cmp-vsnip": { "flake": false, "locked": { - "lastModified": 1636543683, - "narHash": "sha256-7K3shsiGK7ISFXj9D9MPK7yRqIxeCrbj1IsggToWHO4=", + "lastModified": 1669100283, + "narHash": "sha256-2mkN03noOr5vBvRbSb35xZKorSH+8savQNZtgM9+QcM=", "owner": "hrsh7th", "repo": "cmp-vsnip", - "rev": "0abfa1860f5e095a07c477da940cfcb0d273b700", + "rev": "989a8a73c44e926199bfd05fa7a516d51f2d2752", "type": "github" }, "original": { @@ -513,11 +513,11 @@ "nvim-cmp": { "flake": false, "locked": { - "lastModified": 1666412792, - "narHash": "sha256-ErdM+ETpkgBtAvA/RedqN+DXvunQ4OYl58HpfZQkz/s=", + "lastModified": 1683137396, + "narHash": "sha256-IWaggnwxUz5ukczIazfmfXMfloHtIqyRdt9gOHzTuk4=", "owner": "hrsh7th", "repo": "nvim-cmp", - "rev": "cdb77665bbf23bd2717d424ddf4bf98057c30bb3", + "rev": "8d2f190506013064775ec328377e196ab343ad61", "type": "github" }, "original": { From ca960166d08e538ebbc5cf895efa02443f7389bf Mon Sep 17 00:00:00 2001 From: Jordan Isaacs Date: Thu, 27 Jul 2023 23:40:00 -0700 Subject: [PATCH 5/8] Inputs: Update all inputs * Every flake input that is used was updated (#33) * Internal configuration handling of breaking changes --- docs/release-notes/rl-0.1.adoc | 2 + flake.lock | 287 ++++++++++------------- flake.nix | 337 +++++++++++----------------- modules/autopairs/default.nix | 7 - modules/build/default.nix | 32 ++- modules/filetree/nvimtreelua.nix | 20 +- modules/git/default.nix | 72 ++++-- modules/languages/markdown.nix | 16 +- modules/languages/sql.nix | 4 +- modules/tabline/nvim-bufferline.nix | 2 +- modules/theme/supported_themes.nix | 6 +- 11 files changed, 361 insertions(+), 424 deletions(-) diff --git a/docs/release-notes/rl-0.1.adoc b/docs/release-notes/rl-0.1.adoc index 9d3760a..86f1d98 100644 --- a/docs/release-notes/rl-0.1.adoc +++ b/docs/release-notes/rl-0.1.adoc @@ -51,6 +51,8 @@ vim.luaConfigRC = lib.nvim.dag.entryAnywhere "config here" * Add support for extending configurations. See docs for more details. +* Removed the deprecated `openOnStartup` option from nvim-tree-lua + https://github.com/MoritzBoehme[MoritzBoehme]: * `catppuccin` theme is now available as a neovim theme <> and lualine theme <>. diff --git a/flake.lock b/flake.lock index c2888a5..818cbad 100644 --- a/flake.lock +++ b/flake.lock @@ -3,11 +3,11 @@ "bufdelete-nvim": { "flake": false, "locked": { - "lastModified": 1649744299, - "narHash": "sha256-0Igk8iPt4UQQTJRBPzTASzNOqY4zlaMiE1PQiBc/KGc=", + "lastModified": 1688027130, + "narHash": "sha256-UubYRfRAXZ89WOc3QFMvAMjNjLW6bV4nDgSa1CRZkIM=", "owner": "famiu", "repo": "bufdelete.nvim", - "rev": "96454aedf95f52393a28cfcfc76482895de014ee", + "rev": "07d1f8ba79dec59d42b975a4df1c732b2e4e37b4", "type": "github" }, "original": { @@ -19,11 +19,11 @@ "catppuccin": { "flake": false, "locked": { - "lastModified": 1670687538, - "narHash": "sha256-BRQLNMYbOINJXQkKFz2SpXQoaynzcauWSwNfTChaLdc=", + "lastModified": 1690345108, + "narHash": "sha256-Zz7MambcSOdpcXSpg4mAKeaGjm4u76h8psS+fH/nUlg=", "owner": "catppuccin", "repo": "nvim", - "rev": "1d22da687d36c37133b13f2b41658c1c989e77e0", + "rev": "737f60a3a25c79d9bb9574092f6c6c958a3d747a", "type": "github" }, "original": { @@ -51,11 +51,11 @@ "cmp-nvim-lsp": { "flake": false, "locked": { - "lastModified": 1675708067, - "narHash": "sha256-DxpcPTBlvVP88PDoTheLV2fC76EXDqS2UpM5mAfj/D4=", + "lastModified": 1687494203, + "narHash": "sha256-mU0soCz79erJXMMqD/FyrJZ0mu2n6fE0deymPzQlxts=", "owner": "hrsh7th", "repo": "cmp-nvim-lsp", - "rev": "0e6b2ed705ddcff9738ec4ea838141654f12eeef", + "rev": "44b16d11215dce86f253ce0c30949813c0a90765", "type": "github" }, "original": { @@ -115,11 +115,11 @@ "crates-nvim": { "flake": false, "locked": { - "lastModified": 1668709750, - "narHash": "sha256-MdmZrZu877P0l4yeJNI6muiYmwVlsvFHJCEBrrhR1Zc=", + "lastModified": 1688295570, + "narHash": "sha256-ah+fTmzkZn+xuL3sG2RxlCtDiFsRv3SY1iJzYKMIaMg=", "owner": "Saecki", "repo": "crates.nvim", - "rev": "e11e27864428a68b25e43b833e9081e350a38d96", + "rev": "4ce7c51b881e58f1e2f8f437f30e4e583cbac319", "type": "github" }, "original": { @@ -148,11 +148,11 @@ "dracula": { "flake": false, "locked": { - "lastModified": 1671745750, - "narHash": "sha256-mKLU4xK3OggTJ8HDki/nj15OsxqAIS8C3lvnW54s5f4=", + "lastModified": 1687207996, + "narHash": "sha256-wPV6g4ggwI2yHHIFH8wUp7jsfd2MXUoyXKcKmqJTbuc=", "owner": "dracula", "repo": "vim", - "rev": "eb577d47b0cfc9191bf04c414b4042d5f1a980f8", + "rev": "3e52a0682a53dd7c2c53133d45948f5a49c5fd9a", "type": "github" }, "original": { @@ -164,11 +164,11 @@ "dracula-nvim": { "flake": false, "locked": { - "lastModified": 1680215271, - "narHash": "sha256-f8zgWs0qmRjYAAfQsrNNYrmvFd2rjVnGwwdZu1pBJ58=", + "lastModified": 1689529500, + "narHash": "sha256-q93nVYYruxK6/GnI9bIDzGSjkIyOLxzoA9fi6qb2jyU=", "owner": "Mofiqul", "repo": "dracula.nvim", - "rev": "8653e7699810b63bda8ef267055cb4d4237670ef", + "rev": "948d237241b91389c8c2f109885b91cd2574b8bb", "type": "github" }, "original": { @@ -211,11 +211,11 @@ "gitsigns-nvim": { "flake": false, "locked": { - "lastModified": 1666700386, - "narHash": "sha256-pSYXCENFw/z7xppenPehniX8+INkrl+l1LgKKGlfrjQ=", + "lastModified": 1690463120, + "narHash": "sha256-kraK0GP5aLGbh1eVZCm41D6BztjFxthSXGnE5CxhrZs=", "owner": "lewis6991", "repo": "gitsigns.nvim", - "rev": "851cd32caaea84f303c4fdf51d72dfa5fcd795bb", + "rev": "5d73da785a3c05fd63ac31769079db05169a6ec7", "type": "github" }, "original": { @@ -227,11 +227,11 @@ "glow-nvim": { "flake": false, "locked": { - "lastModified": 1649861698, - "narHash": "sha256-c2HrVLCyekw9b8FxxVMUkBkUitGDX1AyslmM1kZQeCQ=", + "lastModified": 1690503777, + "narHash": "sha256-JU1nSRAgweiUeW5/r1/gGbMrKUOAOJD+8w9RxDDP6uk=", "owner": "ellisonleao", "repo": "glow.nvim", - "rev": "0c76518e440f2ea4dbadd87beec8eea4ce030f17", + "rev": "0bd87753b052205d271a790b48a09882a9e79f35", "type": "github" }, "original": { @@ -243,11 +243,11 @@ "gruvbox": { "flake": false, "locked": { - "lastModified": 1680184819, - "narHash": "sha256-ysQUMMPzFCrtDV/gpGeVlXxPKmC7oba4PxFuuc1HMu0=", + "lastModified": 1682256511, + "narHash": "sha256-XTwPcq1dyZKVy1b+FUUjMEHndpcTPYSp1p7bx9m8+Bg=", "owner": "ellisonleao", "repo": "gruvbox.nvim", - "rev": "1a8ba635e511148801b55a1128aef933c296a301", + "rev": "df149bccb19a02c5c2b9fa6ec0716f0c0487feb0", "type": "github" }, "original": { @@ -259,11 +259,11 @@ "indent-blankline": { "flake": false, "locked": { - "lastModified": 1676854912, - "narHash": "sha256-dBm0vnza+fBYxlgUDR1/57GZ+kd7CUVgkQIcZEFWl9k=", + "lastModified": 1688727830, + "narHash": "sha256-efMRkxjbr6o7kSKAEn0Kaw8lsDubRmc1N0Kd1BZ3A7k=", "owner": "lukas-reineke", "repo": "indent-blankline.nvim", - "rev": "018bd04d80c9a73d399c1061fa0c3b14a7614399", + "rev": "4541d690816cb99a7fc248f1486aa87f3abce91c", "type": "github" }, "original": { @@ -307,11 +307,11 @@ "lspkind": { "flake": false, "locked": { - "lastModified": 1663824370, - "narHash": "sha256-WwUQ+O2rIfD4yl0GFx70GsZc9nnhS7b2KWfNdaXCLmM=", + "lastModified": 1683275543, + "narHash": "sha256-S+qZm51hw/cRujIfHV/1x1fYyCKI4XQ0utSL8uy4l6I=", "owner": "onsails", "repo": "lspkind-nvim", - "rev": "c68b3a003483cf382428a43035079f78474cd11e", + "rev": "57610d5ab560c073c465d6faf0c19f200cb67e6e", "type": "github" }, "original": { @@ -339,11 +339,11 @@ "lualine": { "flake": false, "locked": { - "lastModified": 1680518501, - "narHash": "sha256-DDEMbiERaJ7I10TCeVLZcK7rxVEC5gId4P5+z9YTM4A=", + "lastModified": 1683213422, + "narHash": "sha256-ltHE8UIquGo07BSlFGM1l3wmTNN43i8kx6QY7Fj2CNo=", "owner": "hoob3rt", "repo": "lualine.nvim", - "rev": "c28a7427c3fb29322db136f0564ec58807b26747", + "rev": "05d78e9fd0cdfb4545974a5aa14b1be95a86e9c9", "type": "github" }, "original": { @@ -384,26 +384,26 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1680078255, - "narHash": "sha256-eNRVigfm3E2rooMqCaywuiWJGgGHIX2N2TbVgKptewE=", - "owner": "oxalica", + "lastModified": 1690509298, + "narHash": "sha256-2QaWrYIXvip9Ii64AplrkEmKuPt3rnQHq74Scg5dXxk=", + "owner": "jordanisaacs", "repo": "nil", - "rev": "f3eaa770022329ca16e6668d731ab00b9cc0bd87", + "rev": "a2668f5680c48d6ed14f4de7afbbd5f54810f76e", "type": "github" }, "original": { - "owner": "oxalica", + "owner": "jordanisaacs", "repo": "nil", "type": "github" } }, "nixpkgs": { "locked": { - "lastModified": 1683020768, - "narHash": "sha256-ZyZl6k9NWS5QPwD3NoAVz/eSgodQDvl+y+fu8MVbrHc=", + "lastModified": 1690441914, + "narHash": "sha256-Ac+kJQ5z9MDAMyzSc0i0zJDx2i3qi9NjlW5Lz285G/I=", "owner": "nixos", "repo": "nixpkgs", - "rev": "44f30edf5661d86fb3a95841c35127f3d0ea8b0f", + "rev": "db8672b8d0a2593c2405aed0c1dfa64b2a2f428f", "type": "github" }, "original": { @@ -414,22 +414,6 @@ } }, "nixpkgs_2": { - "locked": { - "lastModified": 1656753965, - "narHash": "sha256-BCrB3l0qpJokOnIVc3g2lHiGhnjUi0MoXiw6t1o8H1E=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "0ea7a8f1b939d74e5df8af9a8f7342097cdf69eb", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_3": { "locked": { "lastModified": 1655400192, "narHash": "sha256-49OBVVRgb9H/PSmNT9W61+NRdDbuSJVuDDflwXlaUKU=", @@ -464,11 +448,11 @@ "null-ls": { "flake": false, "locked": { - "lastModified": 1680199095, - "narHash": "sha256-P4rQZnVuStgtkoeDLFrzn44LA5vRcvx5G2PjNDNNvUQ=", + "lastModified": 1688652536, + "narHash": "sha256-6KJtj9pbvBm6fOVpnyzO2fEVC+cVrw2XtZHOgq9ieIw=", "owner": "jose-elias-alvarez", "repo": "null-ls.nvim", - "rev": "d112a351ef8ff20060100fdc20e402a5880c4ef0", + "rev": "db09b6c691def0038c456551e4e2772186449f35", "type": "github" }, "original": { @@ -480,11 +464,11 @@ "nvim-autopairs": { "flake": false, "locked": { - "lastModified": 1651184422, - "narHash": "sha256-voiBJw752//W5oAGQ3wFl4XOUE5PGc/ddchXpWUfgFE=", + "lastModified": 1689332359, + "narHash": "sha256-bu+WpW5Wfk3pS74mzVvehl7dVMHgrttmV4ZSlfwbai4=", "owner": "windwp", "repo": "nvim-autopairs", - "rev": "63779ea99ed43ab22660ac6ae5b506a40bf41aeb", + "rev": "ae5b41ce880a6d850055e262d6dfebd362bb276e", "type": "github" }, "original": { @@ -496,16 +480,16 @@ "nvim-bufferline-lua": { "flake": false, "locked": { - "lastModified": 1666171880, - "narHash": "sha256-hueIGT7KOhca0kP0M1nUYzBrzMz+DpuZSOt5iyuEa40=", + "lastModified": 1689661992, + "narHash": "sha256-0BJXUDGeUhPALEnPgO4ix+GgI/3P/Foiqi0tf2mgUXg=", "owner": "akinsho", "repo": "nvim-bufferline.lua", - "rev": "e70be6232f632d16d2412b1faf85554285036278", + "rev": "d24378edc14a675c820a303b4512af3bbc5761e9", "type": "github" }, "original": { "owner": "akinsho", - "ref": "v3.0.1", + "ref": "v4.3.0", "repo": "nvim-bufferline.lua", "type": "github" } @@ -513,11 +497,11 @@ "nvim-cmp": { "flake": false, "locked": { - "lastModified": 1683137396, - "narHash": "sha256-IWaggnwxUz5ukczIazfmfXMfloHtIqyRdt9gOHzTuk4=", + "lastModified": 1688965049, + "narHash": "sha256-Hq6YUfMQo1rHoay3/NieGCne7U/f06GwUPhN2HO0PdQ=", "owner": "hrsh7th", "repo": "nvim-cmp", - "rev": "8d2f190506013064775ec328377e196ab343ad61", + "rev": "c4e491a87eeacf0408902c32f031d802c7eafce8", "type": "github" }, "original": { @@ -529,11 +513,11 @@ "nvim-code-action-menu": { "flake": false, "locked": { - "lastModified": 1647509555, - "narHash": "sha256-fD9luuZe5mVkJTTtngH0jnwtqljhSZp0OFobBa4uqZI=", + "lastModified": 1671523188, + "narHash": "sha256-7szx+Me6WhrANbmfQ6C6gfSVB2owd02b3iZYhz7K6wY=", "owner": "weilbith", "repo": "nvim-code-action-menu", - "rev": "a864a79c8e024d4f5d95915210188c9c3430b160", + "rev": "e4399dbaf6eabff998d3d5f1cbcd8d9933710027", "type": "github" }, "original": { @@ -542,22 +526,6 @@ "type": "github" } }, - "nvim-compe": { - "flake": false, - "locked": { - "lastModified": 1633188506, - "narHash": "sha256-Y2oqvsuAKM3qjmmtJVD9z34682eCRF25kPL+rxhhg7I=", - "owner": "hrsh7th", - "repo": "nvim-compe", - "rev": "d186d739c54823e0b010feb205c6f97792322c08", - "type": "github" - }, - "original": { - "owner": "hrsh7th", - "repo": "nvim-compe", - "type": "github" - } - }, "nvim-cursorline": { "flake": false, "locked": { @@ -577,11 +545,11 @@ "nvim-lightbulb": { "flake": false, "locked": { - "lastModified": 1645713830, - "narHash": "sha256-LxGA2LX9CASodJnZYXGZfGPOeW38MW7z54gYQSDmhRE=", + "lastModified": 1689887436, + "narHash": "sha256-Meoop66jINllnxN6aohuPmU7DEjn64FMq/b8zuy9FEQ=", "owner": "kosayoda", "repo": "nvim-lightbulb", - "rev": "29ca81408119ba809d1f922edc941868af97ee86", + "rev": "8f00b89dd1b1dbde16872bee5fbcee2e58c9b8e9", "type": "github" }, "original": { @@ -593,16 +561,15 @@ "nvim-lspconfig": { "flake": false, "locked": { - "lastModified": 1671465698, - "narHash": "sha256-yYFAqT4XaImry/JUB34GMp60llHWkmTCZl2hdGR148U=", + "lastModified": 1690356683, + "narHash": "sha256-Ama9nLC/T1wJWal6bKvgY0ywUUiJ5VLuIxoY1xbJKtY=", "owner": "neovim", "repo": "nvim-lspconfig", - "rev": "22c87d6f48c4fb1daf33476450d0b14a64230809", + "rev": "b6091272422bb0fbd729f7f5d17a56d37499c54f", "type": "github" }, "original": { "owner": "neovim", - "ref": "v0.1.4", "repo": "nvim-lspconfig", "type": "github" } @@ -626,11 +593,11 @@ "nvim-tree-lua": { "flake": false, "locked": { - "lastModified": 1662860472, - "narHash": "sha256-3aB1xDU0cylHfZ5yzxMQKf07qrJ1pwHEl+QV42k0CpQ=", + "lastModified": 1690096369, + "narHash": "sha256-aLw0ysDIJWOP2x1XppaHBmmRYfL4IzM5xQ+1WuW0QLM=", "owner": "kyazdani42", "repo": "nvim-tree.lua", - "rev": "fb8735e96cecf004fbefb086ce85371d003c5129", + "rev": "273c1700eb68c27dce4e518efafc8144fd7ce4ab", "type": "github" }, "original": { @@ -642,11 +609,11 @@ "nvim-treesitter-context": { "flake": false, "locked": { - "lastModified": 1680628174, - "narHash": "sha256-okZHxItZSiC31NPgN4xQvzEw7wQZl4HjnzAGPV9FGt8=", + "lastModified": 1689239188, + "narHash": "sha256-AJamiDezFK7l0bqb/VFm+pzBKugQNCmQ6JAWKmjH76g=", "owner": "nvim-treesitter", "repo": "nvim-treesitter-context", - "rev": "68eaeb86738c660f7f31afb2cbfb2bdec50bbd92", + "rev": "6f8f788738b968f24a108ee599c5be0031f94f06", "type": "github" }, "original": { @@ -658,11 +625,11 @@ "nvim-ts-autotag": { "flake": false, "locked": { - "lastModified": 1650591994, - "narHash": "sha256-YsqWrmsbp0NhCrnJQo8Df6yQr4f0shS6GdcEQaHdJDE=", + "lastModified": 1686883732, + "narHash": "sha256-4qTtXYA5HyG1sADV0wsiccO/G89qEoYPmlg8tTx7h8g=", "owner": "windwp", "repo": "nvim-ts-autotag", - "rev": "044a05c4c51051326900a53ba98fddacd15fea22", + "rev": "6be1192965df35f94b8ea6d323354f7dc7a557e4", "type": "github" }, "original": { @@ -674,11 +641,11 @@ "nvim-web-devicons": { "flake": false, "locked": { - "lastModified": 1651408174, - "narHash": "sha256-hYFDefTMcdtoQLhwUaamyGuid69kUo+95P1wjoS2dmo=", + "lastModified": 1689474464, + "narHash": "sha256-FtEJBhqvs+c/Rvy4qXf3iyoMTTKrDBvQw5g63n4KEYo=", "owner": "kyazdani42", "repo": "nvim-web-devicons", - "rev": "bdd43421437f2ef037e0dafeaaaa62b31d35ef2f", + "rev": "efbfed0567ef4bfac3ce630524a0f6c8451c5534", "type": "github" }, "original": { @@ -722,11 +689,11 @@ "plantuml-previewer": { "flake": false, "locked": { - "lastModified": 1675741402, - "narHash": "sha256-2MPyR/5C/yVOE8tKDEzyjVB4KNokXk7/j3qju5BWcRs=", + "lastModified": 1678208089, + "narHash": "sha256-W+TcvgB2baKCOQEq0ZbdnRKfX5fGD8cTLkamhr2PbV8=", "owner": "weirongxu", "repo": "plantuml-previewer.vim", - "rev": "192cbc2349d4a5c772089b4ea72e085fa61790ff", + "rev": "1dd4d0f2b09cd80a217f76d82f93830dbbe689b3", "type": "github" }, "original": { @@ -754,11 +721,11 @@ "plenary-nvim": { "flake": false, "locked": { - "lastModified": 1650205145, - "narHash": "sha256-QKVFz95XaJrwkFaWqUHBirMFagellRn2YpNYnBeI/10=", + "lastModified": 1689589150, + "narHash": "sha256-oRtNcURQzrIRS3D88tWAl3HuFHxVJr8m/zzL7xoa/II=", "owner": "nvim-lua", "repo": "plenary.nvim", - "rev": "9069d14a120cadb4f6825f76821533f2babcab92", + "rev": "267282a9ce242bbb0c5dc31445b6d353bed978bb", "type": "github" }, "original": { @@ -786,8 +753,12 @@ "rnix-lsp": { "inputs": { "naersk": "naersk", - "nixpkgs": "nixpkgs_2", - "utils": "utils" + "nixpkgs": [ + "flake-utils" + ], + "utils": [ + "flake-utils" + ] }, "locked": { "lastModified": 1669555118, @@ -834,7 +805,6 @@ "nvim-bufferline-lua": "nvim-bufferline-lua", "nvim-cmp": "nvim-cmp", "nvim-code-action-menu": "nvim-code-action-menu", - "nvim-compe": "nvim-compe", "nvim-cursorline": "nvim-cursorline", "nvim-lightbulb": "nvim-lightbulb", "nvim-lspconfig": "nvim-lspconfig", @@ -873,11 +843,11 @@ ] }, "locked": { - "lastModified": 1678415622, - "narHash": "sha256-tems1jHETCYEen8QrW61yVVX0F4zOGy4ImB43iDc7bY=", + "lastModified": 1688783586, + "narHash": "sha256-HHaM2hk2azslv1kH8zmQxXo2e7i5cKgzNIuK4yftzB0=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "9f687941160108f89dd8bd2c650d32c15a35c7c7", + "rev": "7a29283cc242c2486fc67f60b431ef708046d176", "type": "github" }, "original": { @@ -889,11 +859,11 @@ "rust-tools": { "flake": false, "locked": { - "lastModified": 1673136837, - "narHash": "sha256-+/kK6MU2EiSBFbfqQJwLkJICXZpf8oiShbcvsls3V8A=", + "lastModified": 1689033186, + "narHash": "sha256-jtfyDxifchznUupLSao6nmpVqaX1yO0xN+NhqS9fgxg=", "owner": "simrat39", "repo": "rust-tools.nvim", - "rev": "df584e84393ef255f5b8cbd709677d6a3a5bf42f", + "rev": "0cc8adab23117783a0292a0c8a2fbed1005dc645", "type": "github" }, "original": { @@ -905,11 +875,11 @@ "sqls-nvim": { "flake": false, "locked": { - "lastModified": 1651347942, - "narHash": "sha256-ewCkqU5Kj1MQAjRRzOWalLcv/uOLEbtK1jFrySvZ8Y8=", + "lastModified": 1684697500, + "narHash": "sha256-jKFut6NZAf/eIeIkY7/2EsjsIhvZQKCKAJzeQ6XSr0s=", "owner": "nanotee", "repo": "sqls.nvim", - "rev": "c52945aacf30247a3b82c586681c414dcd2359bd", + "rev": "4b1274b5b44c48ce784aac23747192f5d9d26207", "type": "github" }, "original": { @@ -938,11 +908,11 @@ "telescope": { "flake": false, "locked": { - "lastModified": 1651391210, - "narHash": "sha256-aEY/4ra7qyaXQg3H++b0JUbF7G2nI4m5Ow9daZO/duE=", + "lastModified": 1690442690, + "narHash": "sha256-vecmMzQpCBswU+wyZw4c92xqRPlpH9X3AGXajOs0fic=", "owner": "nvim-telescope", "repo": "telescope.nvim", - "rev": "544c5ee40752ac5552595da86a62abaa39e2dfa9", + "rev": "22735947d84d78f29436c203f0a4b8dc15dda204", "type": "github" }, "original": { @@ -971,19 +941,19 @@ "tidalcycles": { "inputs": { "dirt-samples-src": "dirt-samples-src", - "nixpkgs": "nixpkgs_3", + "nixpkgs": "nixpkgs_2", "superdirt-src": "superdirt-src", "tidal-src": "tidal-src", - "utils": "utils_2", + "utils": "utils", "vim-tidal-src": "vim-tidal-src", "vowel-src": "vowel-src" }, "locked": { - "lastModified": 1661670241, - "narHash": "sha256-+5C83z+Sd8ugvMshrXqpca4vv3tQ2D4tYEJ3QY6JVsg=", + "lastModified": 1664760044, + "narHash": "sha256-e5LGk/tDnphory1mYhADgPnVtShofY2w/3xY09jEE2A=", "owner": "mitchmindtree", "repo": "tidalcycles.nix", - "rev": "fefe3d586511e1cfaac79bb83ec0b278bb1b6bad", + "rev": "3f3a820cd43709077d15a24fa6062de7d623a6bf", "type": "github" }, "original": { @@ -1011,11 +981,11 @@ "tokyonight": { "flake": false, "locked": { - "lastModified": 1666558747, - "narHash": "sha256-hZufHQkI2M0I4mEqV9qs6PkL74aqScKJ3RA5QOulX+0=", + "lastModified": 1689285710, + "narHash": "sha256-x26qLaZzg7sJIc1d/5Q/DJ/YvRSc3s87PwPHTPTl+Xk=", "owner": "folke", "repo": "tokyonight.nvim", - "rev": "16a294bea92dc8f16ad205c71ce61bf05e79deb3", + "rev": "1ee11019f8a81dac989ae1db1a013e3d582e2033", "type": "github" }, "original": { @@ -1041,21 +1011,6 @@ } }, "utils": { - "locked": { - "lastModified": 1656928814, - "narHash": "sha256-RIFfgBuKz6Hp89yRr7+NR5tzIAbn52h8vT6vXkYjZoM=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "7e2a3b3dfd9af950a856d66b0a7d01e3c18aa249", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "utils_2": { "locked": { "lastModified": 1653893745, "narHash": "sha256-0jntwV3Z8//YwuOjzhV2sgJJPt+HY6KhU7VZUL0fKZQ=", @@ -1073,16 +1028,16 @@ "vim-tidal-src": { "flake": false, "locked": { - "lastModified": 1664758630, - "narHash": "sha256-fLaBMm6jSLHytIH5IUQtUfi3kaPLdruO3cxv4UcjEO4=", + "lastModified": 1685703852, + "narHash": "sha256-8gyk17YLeKpLpz3LRtxiwbpsIbZka9bb63nK5/9IUoA=", "owner": "tidalcycles", "repo": "vim-tidal", - "rev": "f15f14b12176d8f1028d0596b031c3d6e1201c3b", + "rev": "e440fe5bdfe07f805e21e6872099685d38e8b761", "type": "github" }, "original": { - "owner": "mitchmindtree", - "ref": "mitchmindtree", + "owner": "tidalcycles", + "ref": "master", "repo": "vim-tidal", "type": "github" } @@ -1090,11 +1045,11 @@ "vim-vsnip": { "flake": false, "locked": { - "lastModified": 1650631622, - "narHash": "sha256-USltEc6QGHwMqx7E9wo9qZmq+pm9FLj0CUcKoE7KPLU=", + "lastModified": 1678609126, + "narHash": "sha256-ehPnvGle7YrECn76YlSY/2V7Zeq56JGlmZPlwgz2FdE=", "owner": "hrsh7th", "repo": "vim-vsnip", - "rev": "8f199ef690ed26dcbb8973d9a6760d1332449ac9", + "rev": "7753ba9c10429c29d25abfd11b4c60b76718c438", "type": "github" }, "original": { @@ -1123,11 +1078,11 @@ "which-key": { "flake": false, "locked": { - "lastModified": 1666956294, - "narHash": "sha256-IbJP6j+M+POPhX4YbewTJiSoELvDo6y+vF0RREqqm4c=", + "lastModified": 1689491189, + "narHash": "sha256-13aa6QQ4hkWQaliQmICTng/nxutCqlzCWzAoOZhERSI=", "owner": "folke", "repo": "which-key.nvim", - "rev": "61553aeb3d5ca8c11eea8be6eadf478062982ac9", + "rev": "38b990f6eabf62014018b4aae70a97d7a6c2eb88", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index b5e5285..a98dd69 100644 --- a/flake.nix +++ b/flake.nix @@ -4,259 +4,179 @@ nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; flake-utils.url = "github:numtide/flake-utils"; # For generating documentation website - nmd = { - url = "gitlab:rycee/nmd"; - flake = false; - }; + nmd.url = "gitlab:rycee/nmd"; + nmd.flake = false; # LSP plugins - nvim-lspconfig = { - url = "github:neovim/nvim-lspconfig?ref=v0.1.4"; - flake = false; - }; - lspsaga = { - url = "github:tami5/lspsaga.nvim"; - flake = false; - }; - lspkind = { - url = "github:onsails/lspkind-nvim"; - flake = false; - }; - trouble = { - url = "github:folke/trouble.nvim"; - flake = false; - }; - nvim-treesitter-context = { - url = "github:nvim-treesitter/nvim-treesitter-context"; - flake = false; - }; - nvim-lightbulb = { - url = "github:kosayoda/nvim-lightbulb"; - flake = false; - }; - fidget = { - url = "github:j-hui/fidget.nvim"; - flake = false; - }; + nvim-lspconfig.url = "github:neovim/nvim-lspconfig"; + nvim-lspconfig.flake = false; - nvim-code-action-menu = { - url = "github:weilbith/nvim-code-action-menu"; - flake = false; - }; - lsp-signature = { - url = "github:ray-x/lsp_signature.nvim"; - flake = false; - }; - null-ls = { - url = "github:jose-elias-alvarez/null-ls.nvim"; - flake = false; - }; - sqls-nvim = { - url = "github:nanotee/sqls.nvim"; - flake = false; - }; - rust-tools = { - url = "github:simrat39/rust-tools.nvim"; - flake = false; - }; + lspsaga.url = "github:tami5/lspsaga.nvim"; + lspsaga.flake = false; + + lspkind.url = "github:onsails/lspkind-nvim"; + lspkind.flake = false; + + trouble.url = "github:folke/trouble.nvim"; + trouble.flake = false; + + nvim-treesitter-context.url = "github:nvim-treesitter/nvim-treesitter-context"; + nvim-treesitter-context.flake = false; + + nvim-lightbulb.url = "github:kosayoda/nvim-lightbulb"; + nvim-lightbulb.flake = false; + + fidget.url = "github:j-hui/fidget.nvim"; + fidget.flake = false; + + nvim-code-action-menu.url = "github:weilbith/nvim-code-action-menu"; + nvim-code-action-menu.flake = false; + + lsp-signature.url = "github:ray-x/lsp_signature.nvim"; + lsp-signature.flake = false; + + null-ls.url = "github:jose-elias-alvarez/null-ls.nvim"; + null-ls.flake = false; + + sqls-nvim.url = "github:nanotee/sqls.nvim"; + sqls-nvim.flake = false; + + rust-tools.url = "github:simrat39/rust-tools.nvim"; + rust-tools.flake = false; # Copying/Registers - registers = { - url = "github:tversteeg/registers.nvim"; - flake = false; - }; - nvim-neoclip = { - url = "github:AckslD/nvim-neoclip.lua"; - flake = false; - }; + registers.url = "github:tversteeg/registers.nvim"; + registers.flake = false; + + nvim-neoclip.url = "github:AckslD/nvim-neoclip.lua"; + nvim-neoclip.flake = false; # Telescope - telescope = { - url = "github:nvim-telescope/telescope.nvim"; - flake = false; - }; + telescope.url = "github:nvim-telescope/telescope.nvim"; + telescope.flake = false; # Langauge server (use master instead of nixpkgs) rnix-lsp.url = "github:nix-community/rnix-lsp"; - nil = { - url = "github:oxalica/nil"; - inputs.nixpkgs.follows = "nixpkgs"; - inputs.flake-utils.follows = "flake-utils"; - }; + rnix-lsp.inputs.nixpkgs.follows = "flake-utils"; + rnix-lsp.inputs.utils.follows = "flake-utils"; + + nil.url = "github:jordanisaacs/nil"; + nil.inputs.nixpkgs.follows = "nixpkgs"; + nil.inputs.flake-utils.follows = "flake-utils"; # Filetrees - nvim-tree-lua = { - url = "github:kyazdani42/nvim-tree.lua"; - flake = false; - }; + nvim-tree-lua.url = "github:kyazdani42/nvim-tree.lua"; + nvim-tree-lua.flake = false; # Tablines - nvim-bufferline-lua = { - url = "github:akinsho/nvim-bufferline.lua?ref=v3.0.1"; - flake = false; - }; + nvim-bufferline-lua.url = "github:akinsho/nvim-bufferline.lua?ref=v4.3.0"; + nvim-bufferline-lua.flake = false; # Statuslines - lualine = { - url = "github:hoob3rt/lualine.nvim"; - flake = false; - }; + lualine.url = "github:hoob3rt/lualine.nvim"; + lualine.flake = false; # Autocompletes - nvim-compe = { - url = "github:hrsh7th/nvim-compe"; - flake = false; - }; - nvim-cmp = { - url = "github:hrsh7th/nvim-cmp"; - flake = false; - }; - cmp-buffer = { - url = "github:hrsh7th/cmp-buffer"; - flake = false; - }; - cmp-nvim-lsp = { - url = "github:hrsh7th/cmp-nvim-lsp"; - flake = false; - }; - cmp-vsnip = { - url = "github:hrsh7th/cmp-vsnip"; - flake = false; - }; - cmp-path = { - url = "github:hrsh7th/cmp-path"; - flake = false; - }; - cmp-treesitter = { - url = "github:ray-x/cmp-treesitter"; - flake = false; - }; + nvim-cmp.url = "github:hrsh7th/nvim-cmp"; + nvim-cmp.flake = false; + + cmp-buffer.url = "github:hrsh7th/cmp-buffer"; + cmp-buffer.flake = false; + + cmp-nvim-lsp.url = "github:hrsh7th/cmp-nvim-lsp"; + cmp-nvim-lsp.flake = false; + + cmp-vsnip.url = "github:hrsh7th/cmp-vsnip"; + cmp-vsnip.flake = false; + + cmp-path.url = "github:hrsh7th/cmp-path"; + cmp-path.flake = false; + + cmp-treesitter.url = "github:ray-x/cmp-treesitter"; + cmp-treesitter.flake = false; # snippets - vim-vsnip = { - url = "github:hrsh7th/vim-vsnip"; - flake = false; - }; + vim-vsnip.url = "github:hrsh7th/vim-vsnip"; + vim-vsnip.flake = false; # Autopairs - nvim-autopairs = { - url = "github:windwp/nvim-autopairs"; - flake = false; - }; - nvim-ts-autotag = { - url = "github:windwp/nvim-ts-autotag"; - flake = false; - }; + nvim-autopairs.url = "github:windwp/nvim-autopairs"; + nvim-autopairs.flake = false; + + nvim-ts-autotag.url = "github:windwp/nvim-ts-autotag"; + nvim-ts-autotag.flake = false; # Commenting - kommentary = { - url = "github:b3nj5m1n/kommentary"; - flake = false; - }; - todo-comments = { - url = "github:folke/todo-comments.nvim"; - flake = false; - }; + kommentary.url = "github:b3nj5m1n/kommentary"; + kommentary.flake = false; + + todo-comments.url = "github:folke/todo-comments.nvim"; + todo-comments.flake = false; # Buffer tools - bufdelete-nvim = { - url = "github:famiu/bufdelete.nvim"; - flake = false; - }; + bufdelete-nvim.url = "github:famiu/bufdelete.nvim"; + bufdelete-nvim.flake = false; # Themes - tokyonight = { - url = "github:folke/tokyonight.nvim"; - flake = false; - }; + tokyonight.url = "github:folke/tokyonight.nvim"; + tokyonight.flake = false; - onedark = { - url = "github:navarasu/onedark.nvim"; - flake = false; - }; + onedark.url = "github:navarasu/onedark.nvim"; + onedark.flake = false; - catppuccin = { - url = "github:catppuccin/nvim"; - flake = false; - }; + catppuccin.url = "github:catppuccin/nvim"; + catppuccin.flake = false; - dracula-nvim = { - url = "github:Mofiqul/dracula.nvim"; - flake = false; - }; + dracula-nvim.url = "github:Mofiqul/dracula.nvim"; + dracula-nvim.flake = false; - dracula = { - url = "github:dracula/vim"; - flake = false; - }; + dracula.url = "github:dracula/vim"; + dracula.flake = false; - gruvbox = { - url = "github:ellisonleao/gruvbox.nvim"; - flake = false; - }; + gruvbox.url = "github:ellisonleao/gruvbox.nvim"; + gruvbox.flake = false; # Rust crates - crates-nvim = { - url = "github:Saecki/crates.nvim"; - flake = false; - }; + crates-nvim.url = "github:Saecki/crates.nvim"; + crates-nvim.flake = false; # Visuals - nvim-cursorline = { - url = "github:yamatsum/nvim-cursorline"; - flake = false; - }; - indent-blankline = { - url = "github:lukas-reineke/indent-blankline.nvim"; - flake = false; - }; - nvim-web-devicons = { - url = "github:kyazdani42/nvim-web-devicons"; - flake = false; - }; - gitsigns-nvim = { - url = "github:lewis6991/gitsigns.nvim"; - flake = false; - }; + nvim-cursorline.url = "github:yamatsum/nvim-cursorline"; + nvim-cursorline.flake = false; + + indent-blankline.url = "github:lukas-reineke/indent-blankline.nvim"; + indent-blankline.flake = false; + + nvim-web-devicons.url = "github:kyazdani42/nvim-web-devicons"; + nvim-web-devicons.flake = false; + + gitsigns-nvim.url = "github:lewis6991/gitsigns.nvim"; + gitsigns-nvim.flake = false; # Key binding help - which-key = { - url = "github:folke/which-key.nvim"; - flake = false; - }; + which-key.url = "github:folke/which-key.nvim"; + which-key.flake = false; # Markdown - glow-nvim = { - url = "github:ellisonleao/glow.nvim"; - flake = false; - }; + glow-nvim.url = "github:ellisonleao/glow.nvim"; + glow-nvim.flake = false; # Tidal cycles - tidalcycles = { - url = "github:mitchmindtree/tidalcycles.nix"; - inputs.vim-tidal-src.url = "github:tidalcycles/vim-tidal"; - }; + tidalcycles.url = "github:mitchmindtree/tidalcycles.nix"; + tidalcycles.inputs.vim-tidal-src.url = "github:tidalcycles/vim-tidal"; # Plenary (required by crates-nvim) - plenary-nvim = { - url = "github:nvim-lua/plenary.nvim"; - flake = false; - }; + plenary-nvim.url = "github:nvim-lua/plenary.nvim"; + plenary-nvim.flake = false; - open-browser = { - url = "github:tyru/open-browser.vim"; - flake = false; - }; + open-browser.url = "github:tyru/open-browser.vim"; + open-browser.flake = false; - plantuml-syntax = { - url = "github:aklt/plantuml-syntax"; - flake = false; - }; + plantuml-syntax.url = "github:aklt/plantuml-syntax"; + plantuml-syntax.flake = false; - plantuml-previewer = { - url = "github:weirongxu/plantuml-previewer.vim"; - flake = false; - }; + plantuml-previewer.url = "github:weirongxu/plantuml-previewer.vim"; + plantuml-previewer.flake = false; }; outputs = { @@ -278,7 +198,6 @@ "nvim-tree-lua" "nvim-bufferline-lua" "lualine" - "nvim-compe" "nvim-autopairs" "nvim-ts-autotag" "nvim-web-devicons" @@ -442,7 +361,11 @@ nixPkg = buildPkg pkgs [nixConfig]; maximalPkg = buildPkg pkgs [maximalConfig]; - devPkg = buildPkg pkgs [nixConfig {config.vim.languages.html.enable = pkgs.lib.mkForce true;}]; + devPkg = nixPkg.extendConfiguration { + modules = [ + {config.vim.languages.html.enable = true;} + ]; + }; in { apps = rec { diff --git a/modules/autopairs/default.nix b/modules/autopairs/default.nix index 3e85003..36529a5 100644 --- a/modules/autopairs/default.nix +++ b/modules/autopairs/default.nix @@ -31,13 +31,6 @@ in { vim.luaConfigRC.autopairs = nvim.dag.entryAnywhere '' require("nvim-autopairs").setup{} - ${optionalString (config.vim.autocomplete.type == "nvim-compe") '' - require('nvim-autopairs.completion.compe').setup({ - map_cr = true, - map_complete = true, - auto_select = false, - }) - ''} ''; }; } diff --git a/modules/build/default.nix b/modules/build/default.nix index a63c651..c60fde5 100644 --- a/modules/build/default.nix +++ b/modules/build/default.nix @@ -19,6 +19,29 @@ with builtins; let }; in { options = { + assertions = lib.mkOption { + type = types.listOf types.unspecified; + internal = true; + default = []; + example = [ + { + assertion = false; + message = "you can't enable this for that reason"; + } + ]; + }; + + warnings = mkOption { + internal = true; + default = []; + type = types.listOf types.str; + example = ["The `foo' service is deprecated and will go away soon!"]; + description = lib.mdDoc '' + This option allows modules to show warnings to users during + the evaluation of the system configuration. + ''; + }; + build = { viAlias = mkOption { description = "Enable vi alias"; @@ -112,8 +135,15 @@ in { plugins = normalizedPlugins; customRC = cfgBuilt.configRC; }; + + failedAssertions = map (x: x.message) (filter (x: !x.assertion) config.assertions); + + baseSystemAssertWarn = + if failedAssertions != [] + then throw "\nFailed assertions:\n${concatStringsSep "\n" (map (x: "- ${x}") failedAssertions)}" + else lib.showWarnings config.warnings; in { - built = { + built = baseSystemAssertWarn { configRC = let mkSection = r: '' " SECTION: ${r.name} diff --git a/modules/filetree/nvimtreelua.nix b/modules/filetree/nvimtreelua.nix index cb6f9bf..b242940 100644 --- a/modules/filetree/nvimtreelua.nix +++ b/modules/filetree/nvimtreelua.nix @@ -8,6 +8,12 @@ with lib; with builtins; let cfg = config.vim.filetree.nvimTreeLua; in { + imports = [ + (mkRemovedOptionModule ["openOnSetup"] '' + `open_on_setup*` options have been removed from nvim-tree-lua. + see https://github.com/nvim-tree/nvim-tree.lua/issues/1669 + '') + ]; options.vim.filetree.nvimTreeLua = { enable = mkOption { type = types.bool; @@ -39,12 +45,6 @@ in { type = types.bool; }; - openOnSetup = mkOption { - default = true; - description = "Open when vim is started on a directory"; - type = types.bool; - }; - closeOnLastWindow = mkOption { default = true; description = "Close when tree is last window open"; @@ -144,9 +144,6 @@ in { require'nvim-tree'.setup({ disable_netrw = ${boolToString cfg.disableNetRW}, hijack_netrw = ${boolToString cfg.hijackNetRW}, - open_on_tab = ${boolToString cfg.openTreeOnNewTab}, - open_on_setup = ${boolToString cfg.openOnSetup}, - open_on_setup_file = ${boolToString cfg.openOnSetup}, system_open = { cmd = ${"'" + cfg.systemOpenCmd + "'"}, }, @@ -157,6 +154,11 @@ in { width = ${toString cfg.treeWidth}, side = ${"'" + cfg.treeSide + "'"}, }, + tab = { + sync = { + open = ${boolToString cfg.openTreeOnNewTab} + }, + }, renderer = { indent_markers = { enable = ${boolToString cfg.indentMarkers}, diff --git a/modules/git/default.nix b/modules/git/default.nix index 7777441..61f60a4 100644 --- a/modules/git/default.nix +++ b/modules/git/default.nix @@ -25,31 +25,57 @@ in { vim.luaConfigRC.gitsigns = nvim.dag.entryAnywhere '' require('gitsigns').setup { - keymaps = { - noremap = true, - - ['n gn'] = { expr = true, "&diff ? \'\' : 'Gitsigns next_hunk'"}, - ['n gp'] = { expr = true, "&diff ? \'\' : 'Gitsigns prev_hunk'"}, - - ['n gs'] = 'Gitsigns stage_hunk', - ['v gs'] = ':Gitsigns stage_hunk', - ['n gu'] = 'Gitsigns undo_stage_hunk', - ['n gr'] = 'Gitsigns reset_hunk', - ['v gr'] = ':Gitsigns reset_hunk', - ['n gR'] = 'Gitsigns reset_buffer', - ['n gp'] = 'Gitsigns preview_hunk', - ['n gb'] = 'lua require"gitsigns".blame_line{full=true}', - ['n gS'] = 'Gitsigns stage_buffer', - ['n gU'] = 'Gitsigns reset_buffer_index', - ['n gts'] = ':Gitsigns toggle_signs', - ['n gtn'] = ':Gitsigns toggle_numhl', - ['n gtl'] = ':Gitsigns toggle_linehl', - ['n gtw'] = ':Gitsigns toggle_word_diff', + on_attach = function(bufnr) + local gs = package.loaded.gitsigns + + local function map(mode, l, r, opts) + opts = opts or {} + opts.buffer = bufnr + vim.keymap.set(mode, l, r, opts) + end + + -- navigation + map('n', 'gn', function() + if vim.wo.diff then return 'gn' end + vim.schedule(function() gs.next_hunk() end) + return '' + end, {expr=true}) + + map('n', 'gp', function() + if vim.wo.diff then return 'gn' end + vim.schedule(function() gs.prev_hunk() end) + return '' + end, {expr=true}) + + -- actions + map('n', 'gs', gs.stage_hunk) + map('v', 'gs', function() gs.stage_hunk {vim.fn.line('.'), vim.fn.line('v')} end) + + map('n', 'gr', gs.reset_hunk) + map('v', 'gr', function() gs.reset_hunk {vim.fn.line('.'), vim.fn.line('v')} end) + + map('n', 'gp', gs.preview_hunk) + map('n', 'gu', gs.undo_stage_hunk) + + map('n', 'gS', gs.stage_buffer) + map('n', 'gR', gs.reset_buffer) + + map('n', 'gd', gs.diffthis) + map('n', 'gD', function() gs.diffthis('~') end) + + map('n', 'gb', function() gs.blame_line{full=true} end) + + -- Toggles + map('n', 'gtd', gs.toggle_deleted) + map('n', 'gtb', gs.toggle_current_line_blame) + map('n', 'gts', gs.toggle_signs) + map('n', 'gtn', gs.toggle_numhl) + map('n', 'gtl', gs.toggle_linehl) + map('n', 'gtw', gs.toggle_word_diff) -- Text objects - ['o ih'] = ':Gitsigns select_hunk', - ['x ih'] = ':Gitsigns select_hunk' - }, + map({'o', 'x'}, 'ih', ':Gitsigns select_hunk') + end } ''; } diff --git a/modules/languages/markdown.nix b/modules/languages/markdown.nix index 3a2195a..6a76859 100644 --- a/modules/languages/markdown.nix +++ b/modules/languages/markdown.nix @@ -36,12 +36,16 @@ in { (mkIf cfg.glow.enable { vim.startPlugins = ["glow-nvim"]; - vim.globals = { - "glow_binary_path" = "${pkgs.glow}/bin"; - }; - - vim.configRC.glow = nvim.dag.entryAnywhere '' - autocmd FileType markdown noremap p :Glow + vim.luaConfigRC.glow = nvim.dag.entryAnywhere '' + require'glow'.setup({ + glow_path = "${pkgs.glow}/bin/glow", + }) + vim.api.nvim_create_autocmd("FileType", { + pattern = "markdown", + callback = function(args) + vim.keymap.set('n', 'p', function() vim.cmd('Glow') end) + end + }) ''; }) ]); diff --git a/modules/languages/sql.nix b/modules/languages/sql.nix index 06f976f..9658121 100644 --- a/modules/languages/sql.nix +++ b/modules/languages/sql.nix @@ -15,10 +15,10 @@ with builtins; let package = pkgs.sqls; lspConfig = '' lspconfig.sqls.setup { - on_attach = function(client) + on_attach = function(client, bufnr) client.server_capabilities.execute_command = true on_attach_keymaps(client, bufnr) - require'sqls'.setup{} + require'sqls'.on_attach(client, bufnr) end, cmd = { "${cfg.lsp.package}/bin/sqls", "-config", string.format("%s/config.yml", vim.fn.getcwd()) } } diff --git a/modules/tabline/nvim-bufferline.nix b/modules/tabline/nvim-bufferline.nix index fca433f..e8f42c5 100644 --- a/modules/tabline/nvim-bufferline.nix +++ b/modules/tabline/nvim-bufferline.nix @@ -58,7 +58,7 @@ in { indicator_icon = '▎', style = 'icon', }, - buffer_close_icon = '', + buffer_close_icon = '󰅖', modified_icon = '●', close_icon = '', left_trunc_marker = '', diff --git a/modules/theme/supported_themes.nix b/modules/theme/supported_themes.nix index a2eb8ee..6591d46 100644 --- a/modules/theme/supported_themes.nix +++ b/modules/theme/supported_themes.nix @@ -48,10 +48,12 @@ in { tokyonight = { setup = '' -- need to set style before colorscheme to apply - vim.g.tokyonight_style = '${cfg.style}' + require("tokyonight").setup({ + style = "${cfg.style}", + }) vim.cmd[[colorscheme tokyonight]] ''; - styles = ["day" "night" "storm"]; + styles = ["day" "night" "storm" "moon"]; defaultStyle = "night"; }; From e8f778a30826e96f853f042426391a606d20d7d9 Mon Sep 17 00:00:00 2001 From: Jordan Isaacs Date: Fri, 28 Jul 2023 00:10:30 -0700 Subject: [PATCH 6/8] Configs: enable lspkind in base config --- flake.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index a98dd69..0061167 100644 --- a/flake.nix +++ b/flake.nix @@ -280,7 +280,7 @@ }; vim.lsp = { formatOnSave = overrideable true; - lspkind.enable = overrideable false; + lspkind.enable = overrideable true; lightbulb.enable = overrideable true; lspsaga.enable = overrideable false; nvimCodeActionMenu.enable = overrideable true; From 67a7c4357195b0519c6d780965a84cda00c7d4cf Mon Sep 17 00:00:00 2001 From: Jordan Isaacs Date: Fri, 28 Jul 2023 11:57:42 -0700 Subject: [PATCH 7/8] Languages (Nix): Add statix & deadnix diagnostics --- docs/release-notes/rl-0.1.adoc | 2 ++ modules/languages/nix.nix | 48 ++++++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+) diff --git a/docs/release-notes/rl-0.1.adoc b/docs/release-notes/rl-0.1.adoc index 86f1d98..4cc9dce 100644 --- a/docs/release-notes/rl-0.1.adoc +++ b/docs/release-notes/rl-0.1.adoc @@ -53,6 +53,8 @@ vim.luaConfigRC = lib.nvim.dag.entryAnywhere "config here" * Removed the deprecated `openOnStartup` option from nvim-tree-lua +* Added support for `statix` and `deadnix` through <> + https://github.com/MoritzBoehme[MoritzBoehme]: * `catppuccin` theme is now available as a neovim theme <> and lualine theme <>. diff --git a/modules/languages/nix.nix b/modules/languages/nix.nix index 7cd138c..830f4a3 100644 --- a/modules/languages/nix.nix +++ b/modules/languages/nix.nix @@ -82,6 +82,32 @@ with builtins; let # Never need to use null-ls for nixpkgs-fmt }; }; + + defaultDiagnostics = ["statix" "deadnix"]; + diagnostics = { + statix = { + package = pkgs.statix; + nullConfig = pkg: '' + table.insert( + ls_sources, + null_ls.builtins.diagnostics.statix.with({ + command = "${pkg}/bin/statix", + }) + ) + ''; + }; + deadnix = { + package = pkgs.deadnix; + nullConfig = pkg: '' + table.insert( + ls_sources, + null_ls.builtins.diagnostics.deadnix.with({ + command = "${pkg}/bin/deadnix", + }) + ) + ''; + }; + }; in { options.vim.languages.nix = { enable = mkEnableOption "Nix language support"; @@ -130,6 +156,19 @@ in { default = formats.${cfg.format.type}.package; }; }; + + extraDiagnostics = { + enable = mkOption { + description = "Enable extra Nix diagnostics"; + type = types.bool; + default = config.vim.languages.enableExtraDiagnostics; + }; + types = lib.nvim.types.diagnostics { + langDesc = "Nix"; + inherit diagnostics; + inherit defaultDiagnostics; + }; + }; }; config = mkIf cfg.enable (mkMerge [ @@ -153,5 +192,14 @@ in { vim.lsp.null-ls.enable = true; vim.lsp.null-ls.sources.nix-format = formats.${cfg.format.type}.nullConfig; }) + + (mkIf cfg.extraDiagnostics.enable { + vim.lsp.null-ls.enable = true; + vim.lsp.null-ls.sources = lib.nvim.languages.diagnosticsToLua { + lang = "nix"; + config = cfg.extraDiagnostics.types; + inherit diagnostics; + }; + }) ]); } From 7888babb3f79f6d5c786e9b7bd7f45f95d264113 Mon Sep 17 00:00:00 2001 From: Jordan Isaacs Date: Fri, 28 Jul 2023 14:42:02 -0700 Subject: [PATCH 8/8] Flake: make plugins autodiscoverable --- CONTRIBUTING.md | 2 +- docs/release-notes/rl-0.1.adoc | 2 + flake.lock | 745 +++++++++++++++++---------------- flake.nix | 268 +++++------- modules/lib/plugins.nix | 8 +- 5 files changed, 504 insertions(+), 521 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 87be4c7..c976d39 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -23,7 +23,7 @@ All documentation is done with [asciidoc](https://asciidoc.org/). The following Updating or adding plugins should reference the [update tracking issue](https://github.com/jordanisaacs/neovim-flake/issues/33) in the commit message. This is so the issue can serve as a quick feed of plugin update history. Add `#33` to the commit. -All new vim plugins should be specified as inputs to the flake, please do not use nixpkgs. Keeping the plugins pinned lets us painlessly update nixpkgs. +All new vim plugins should be specified as inputs to the flake, please do not use nixpkgs. Keeping the plugins pinned lets us painlessly update nixpkgs. The inputs should be prefixed with `plugin-` to allow the flake to automatically make them usable to the module system. ## Style diff --git a/docs/release-notes/rl-0.1.adoc b/docs/release-notes/rl-0.1.adoc index 4cc9dce..aad2ebb 100644 --- a/docs/release-notes/rl-0.1.adoc +++ b/docs/release-notes/rl-0.1.adoc @@ -55,6 +55,8 @@ vim.luaConfigRC = lib.nvim.dag.entryAnywhere "config here" * Added support for `statix` and `deadnix` through <> +* Plugin inputs are now prefixed with `plugin-` to allow autodiscovery of them + https://github.com/MoritzBoehme[MoritzBoehme]: * `catppuccin` theme is now available as a neovim theme <> and lualine theme <>. diff --git a/flake.lock b/flake.lock index 818cbad..5bc256e 100644 --- a/flake.lock +++ b/flake.lock @@ -1,6 +1,131 @@ { "nodes": { - "bufdelete-nvim": { + "dirt-samples-src": { + "flake": false, + "locked": { + "lastModified": 1588278411, + "narHash": "sha256-h8vQxRym6QzNLOTZU7A43VCHuG0H77l+BFwXnC0L1CE=", + "owner": "tidalcycles", + "repo": "dirt-samples", + "rev": "66d432418c9a7d82cf049d9246adfa62f46df2a6", + "type": "github" + }, + "original": { + "owner": "tidalcycles", + "ref": "master", + "repo": "dirt-samples", + "type": "github" + } + }, + "flake-utils": { + "locked": { + "lastModified": 1667395993, + "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "naersk": { + "inputs": { + "nixpkgs": [ + "rnix-lsp", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1655042882, + "narHash": "sha256-9BX8Fuez5YJlN7cdPO63InoyBy7dm3VlJkkmTt6fS1A=", + "owner": "nix-community", + "repo": "naersk", + "rev": "cddffb5aa211f50c4b8750adbec0bbbdfb26bb9f", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "naersk", + "type": "github" + } + }, + "nil": { + "inputs": { + "flake-utils": [ + "flake-utils" + ], + "nixpkgs": [ + "nixpkgs" + ], + "rust-overlay": "rust-overlay" + }, + "locked": { + "lastModified": 1690509298, + "narHash": "sha256-2QaWrYIXvip9Ii64AplrkEmKuPt3rnQHq74Scg5dXxk=", + "owner": "jordanisaacs", + "repo": "nil", + "rev": "a2668f5680c48d6ed14f4de7afbbd5f54810f76e", + "type": "github" + }, + "original": { + "owner": "jordanisaacs", + "repo": "nil", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1690441914, + "narHash": "sha256-Ac+kJQ5z9MDAMyzSc0i0zJDx2i3qi9NjlW5Lz285G/I=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "db8672b8d0a2593c2405aed0c1dfa64b2a2f428f", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_2": { + "locked": { + "lastModified": 1655400192, + "narHash": "sha256-49OBVVRgb9H/PSmNT9W61+NRdDbuSJVuDDflwXlaUKU=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "3d7435c638baffaa826b85459df0fff47f12317d", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nmd": { + "flake": false, + "locked": { + "lastModified": 1679684072, + "narHash": "sha256-+DYYk9/Ns+njngvkHcmHX9HkALBRulLUIXLm1L44emM=", + "owner": "rycee", + "repo": "nmd", + "rev": "f5a18594255866342ace46827c390c36875337e5", + "type": "gitlab" + }, + "original": { + "owner": "rycee", + "repo": "nmd", + "type": "gitlab" + } + }, + "plugin-bufdelete-nvim": { "flake": false, "locked": { "lastModified": 1688027130, @@ -16,7 +141,7 @@ "type": "github" } }, - "catppuccin": { + "plugin-catppuccin": { "flake": false, "locked": { "lastModified": 1690345108, @@ -32,7 +157,7 @@ "type": "github" } }, - "cmp-buffer": { + "plugin-cmp-buffer": { "flake": false, "locked": { "lastModified": 1660101488, @@ -48,7 +173,7 @@ "type": "github" } }, - "cmp-nvim-lsp": { + "plugin-cmp-nvim-lsp": { "flake": false, "locked": { "lastModified": 1687494203, @@ -64,7 +189,7 @@ "type": "github" } }, - "cmp-path": { + "plugin-cmp-path": { "flake": false, "locked": { "lastModified": 1664784283, @@ -80,7 +205,7 @@ "type": "github" } }, - "cmp-treesitter": { + "plugin-cmp-treesitter": { "flake": false, "locked": { "lastModified": 1680745848, @@ -96,7 +221,7 @@ "type": "github" } }, - "cmp-vsnip": { + "plugin-cmp-vsnip": { "flake": false, "locked": { "lastModified": 1669100283, @@ -112,7 +237,7 @@ "type": "github" } }, - "crates-nvim": { + "plugin-crates-nvim": { "flake": false, "locked": { "lastModified": 1688295570, @@ -128,24 +253,7 @@ "type": "github" } }, - "dirt-samples-src": { - "flake": false, - "locked": { - "lastModified": 1588278411, - "narHash": "sha256-h8vQxRym6QzNLOTZU7A43VCHuG0H77l+BFwXnC0L1CE=", - "owner": "tidalcycles", - "repo": "dirt-samples", - "rev": "66d432418c9a7d82cf049d9246adfa62f46df2a6", - "type": "github" - }, - "original": { - "owner": "tidalcycles", - "ref": "master", - "repo": "dirt-samples", - "type": "github" - } - }, - "dracula": { + "plugin-dracula": { "flake": false, "locked": { "lastModified": 1687207996, @@ -161,7 +269,7 @@ "type": "github" } }, - "dracula-nvim": { + "plugin-dracula-nvim": { "flake": false, "locked": { "lastModified": 1689529500, @@ -177,14 +285,14 @@ "type": "github" } }, - "fidget": { + "plugin-fidget": { "flake": false, "locked": { - "lastModified": 1679938700, - "narHash": "sha256-rmJgfrEr/PYBq0S7j3tzRZvxi7PMMaAo0k528miXOQc=", + "lastModified": 1689723284, + "narHash": "sha256-gmpRk1b/fpNRPUPBA9UnYbmiGRoW5otzW9Nfcfvju74=", "owner": "j-hui", "repo": "fidget.nvim", - "rev": "0ba1e16d07627532b6cae915cc992ecac249fb97", + "rev": "89b633f3bd0b7187f070236b348697de176860e2", "type": "github" }, "original": { @@ -193,22 +301,7 @@ "type": "github" } }, - "flake-utils": { - "locked": { - "lastModified": 1667395993, - "narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "gitsigns-nvim": { + "plugin-gitsigns-nvim": { "flake": false, "locked": { "lastModified": 1690463120, @@ -224,14 +317,14 @@ "type": "github" } }, - "glow-nvim": { + "plugin-glow-nvim": { "flake": false, "locked": { - "lastModified": 1690503777, - "narHash": "sha256-JU1nSRAgweiUeW5/r1/gGbMrKUOAOJD+8w9RxDDP6uk=", + "lastModified": 1690579324, + "narHash": "sha256-+wNjcjLHO9kjfnVOhJ9uawwJ3EoQuvz3bz6wqHuO8vo=", "owner": "ellisonleao", "repo": "glow.nvim", - "rev": "0bd87753b052205d271a790b48a09882a9e79f35", + "rev": "5ebffc63db08ea066167f195c4e3f341a331d3eb", "type": "github" }, "original": { @@ -240,7 +333,7 @@ "type": "github" } }, - "gruvbox": { + "plugin-gruvbox": { "flake": false, "locked": { "lastModified": 1682256511, @@ -256,7 +349,7 @@ "type": "github" } }, - "indent-blankline": { + "plugin-indent-blankline": { "flake": false, "locked": { "lastModified": 1688727830, @@ -272,14 +365,14 @@ "type": "github" } }, - "kommentary": { + "plugin-kommentary": { "flake": false, "locked": { - "lastModified": 1644888740, - "narHash": "sha256-6YNKYMxaKi02TLa+ebt97XGREnmTjdJAA3bSHFC4yX0=", + "lastModified": 1672983049, + "narHash": "sha256-N4n5tjNB1yX/QxH+t5aG0VxNwZhUJejv0b5V62WEKDU=", "owner": "b3nj5m1n", "repo": "kommentary", - "rev": "12ecde4ed3ecb39964000a5fd034ae4c1d307388", + "rev": "3a80117148c6798972bb69414423311ab151d368", "type": "github" }, "original": { @@ -288,14 +381,14 @@ "type": "github" } }, - "lsp-signature": { + "plugin-lsp-signature": { "flake": false, "locked": { - "lastModified": 1651382786, - "narHash": "sha256-owtDWZXZZH6z0m5oHfm/QUjRoWKH4LY6UUOZq8JPckI=", + "lastModified": 1690267930, + "narHash": "sha256-qvcs0KuO2/NdtiTZIxJ2vrwV0I5PjzjMvoAePPasaJM=", "owner": "ray-x", "repo": "lsp_signature.nvim", - "rev": "6d160406f948a810c40304224a1255c8bba5a415", + "rev": "58d4e810801da74c29313da86075d6aea537501f", "type": "github" }, "original": { @@ -304,7 +397,7 @@ "type": "github" } }, - "lspkind": { + "plugin-lspkind": { "flake": false, "locked": { "lastModified": 1683275543, @@ -320,14 +413,14 @@ "type": "github" } }, - "lspsaga": { + "plugin-lspsaga": { "flake": false, "locked": { - "lastModified": 1647219889, - "narHash": "sha256-utb2Rp6RdYWZzVt4W7B7RHOk4Xq1Lli4RcHxZLa8dHc=", + "lastModified": 1670360222, + "narHash": "sha256-7ENInq3LAPPTdm0Fb7klOc630j8m4LRj1kLZZFYLh68=", "owner": "tami5", "repo": "lspsaga.nvim", - "rev": "5309d75bd90ce5b1708331df3af1e971fa83a2b9", + "rev": "5faeec9f2508d2d49a66c0ac0d191096b4e3fa81", "type": "github" }, "original": { @@ -336,7 +429,7 @@ "type": "github" } }, - "lualine": { + "plugin-lualine": { "flake": false, "locked": { "lastModified": 1683213422, @@ -352,100 +445,7 @@ "type": "github" } }, - "naersk": { - "inputs": { - "nixpkgs": [ - "rnix-lsp", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1655042882, - "narHash": "sha256-9BX8Fuez5YJlN7cdPO63InoyBy7dm3VlJkkmTt6fS1A=", - "owner": "nix-community", - "repo": "naersk", - "rev": "cddffb5aa211f50c4b8750adbec0bbbdfb26bb9f", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "naersk", - "type": "github" - } - }, - "nil": { - "inputs": { - "flake-utils": [ - "flake-utils" - ], - "nixpkgs": [ - "nixpkgs" - ], - "rust-overlay": "rust-overlay" - }, - "locked": { - "lastModified": 1690509298, - "narHash": "sha256-2QaWrYIXvip9Ii64AplrkEmKuPt3rnQHq74Scg5dXxk=", - "owner": "jordanisaacs", - "repo": "nil", - "rev": "a2668f5680c48d6ed14f4de7afbbd5f54810f76e", - "type": "github" - }, - "original": { - "owner": "jordanisaacs", - "repo": "nil", - "type": "github" - } - }, - "nixpkgs": { - "locked": { - "lastModified": 1690441914, - "narHash": "sha256-Ac+kJQ5z9MDAMyzSc0i0zJDx2i3qi9NjlW5Lz285G/I=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "db8672b8d0a2593c2405aed0c1dfa64b2a2f428f", - "type": "github" - }, - "original": { - "owner": "nixos", - "ref": "nixpkgs-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_2": { - "locked": { - "lastModified": 1655400192, - "narHash": "sha256-49OBVVRgb9H/PSmNT9W61+NRdDbuSJVuDDflwXlaUKU=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "3d7435c638baffaa826b85459df0fff47f12317d", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nmd": { - "flake": false, - "locked": { - "lastModified": 1679684072, - "narHash": "sha256-+DYYk9/Ns+njngvkHcmHX9HkALBRulLUIXLm1L44emM=", - "owner": "rycee", - "repo": "nmd", - "rev": "f5a18594255866342ace46827c390c36875337e5", - "type": "gitlab" - }, - "original": { - "owner": "rycee", - "repo": "nmd", - "type": "gitlab" - } - }, - "null-ls": { + "plugin-null-ls": { "flake": false, "locked": { "lastModified": 1688652536, @@ -461,7 +461,7 @@ "type": "github" } }, - "nvim-autopairs": { + "plugin-nvim-autopairs": { "flake": false, "locked": { "lastModified": 1689332359, @@ -477,7 +477,7 @@ "type": "github" } }, - "nvim-bufferline-lua": { + "plugin-nvim-bufferline-lua": { "flake": false, "locked": { "lastModified": 1689661992, @@ -494,7 +494,7 @@ "type": "github" } }, - "nvim-cmp": { + "plugin-nvim-cmp": { "flake": false, "locked": { "lastModified": 1688965049, @@ -510,7 +510,7 @@ "type": "github" } }, - "nvim-code-action-menu": { + "plugin-nvim-code-action-menu": { "flake": false, "locked": { "lastModified": 1671523188, @@ -526,7 +526,7 @@ "type": "github" } }, - "nvim-cursorline": { + "plugin-nvim-cursorline": { "flake": false, "locked": { "lastModified": 1650034925, @@ -542,7 +542,23 @@ "type": "github" } }, - "nvim-lightbulb": { + "plugin-nvim-dap": { + "flake": false, + "locked": { + "lastModified": 1690444190, + "narHash": "sha256-OSJA+K8eGj87RWo2tE0kT6bAItGkMMtuR0HB8WEXZ4k=", + "owner": "mfussenegger", + "repo": "nvim-dap", + "rev": "2f28ea843bcdb378b171a66ddcd568516e431d55", + "type": "github" + }, + "original": { + "owner": "mfussenegger", + "repo": "nvim-dap", + "type": "github" + } + }, + "plugin-nvim-lightbulb": { "flake": false, "locked": { "lastModified": 1689887436, @@ -558,7 +574,7 @@ "type": "github" } }, - "nvim-lspconfig": { + "plugin-nvim-lspconfig": { "flake": false, "locked": { "lastModified": 1690356683, @@ -574,14 +590,14 @@ "type": "github" } }, - "nvim-neoclip": { + "plugin-nvim-neoclip": { "flake": false, "locked": { - "lastModified": 1651221055, - "narHash": "sha256-JO5tOk+Sv0YNjk1pHKfzXian7trFrEh/+iwH2ZxO0Ss=", + "lastModified": 1684196333, + "narHash": "sha256-96AwMgyC7PTDEPS5tXwDT3WfK8jJJuIYGE+q+j6U5Uc=", "owner": "AckslD", "repo": "nvim-neoclip.lua", - "rev": "f3ff1645de5d2fd46ac8ffe86e440b7f3ae1fd11", + "rev": "4e406ae0f759262518731538f2585abb9d269bac", "type": "github" }, "original": { @@ -590,7 +606,7 @@ "type": "github" } }, - "nvim-tree-lua": { + "plugin-nvim-tree-lua": { "flake": false, "locked": { "lastModified": 1690096369, @@ -606,7 +622,7 @@ "type": "github" } }, - "nvim-treesitter-context": { + "plugin-nvim-treesitter-context": { "flake": false, "locked": { "lastModified": 1689239188, @@ -622,7 +638,7 @@ "type": "github" } }, - "nvim-ts-autotag": { + "plugin-nvim-ts-autotag": { "flake": false, "locked": { "lastModified": 1686883732, @@ -638,7 +654,7 @@ "type": "github" } }, - "nvim-web-devicons": { + "plugin-nvim-web-devicons": { "flake": false, "locked": { "lastModified": 1689474464, @@ -654,14 +670,14 @@ "type": "github" } }, - "onedark": { + "plugin-onedark": { "flake": false, "locked": { - "lastModified": 1679504944, - "narHash": "sha256-vwrffcwutr1HKKcNz2hGEO46EIJS1Fug17VCuWRNu/o=", + "lastModified": 1689269544, + "narHash": "sha256-HfyYEppo9NFswYlPKnHNOZO5eiTQSORQhWAkzCmM2m4=", "owner": "navarasu", "repo": "onedark.nvim", - "rev": "dd640f6cfb0e370cfd3db389f04b172508848bd3", + "rev": "cae5fdf035ee92c407a29ee2ccfcff503d2be7f1", "type": "github" }, "original": { @@ -670,7 +686,7 @@ "type": "github" } }, - "open-browser": { + "plugin-open-browser": { "flake": false, "locked": { "lastModified": 1665248470, @@ -686,7 +702,7 @@ "type": "github" } }, - "plantuml-previewer": { + "plugin-plantuml-previewer": { "flake": false, "locked": { "lastModified": 1678208089, @@ -702,7 +718,7 @@ "type": "github" } }, - "plantuml-syntax": { + "plugin-plantuml-syntax": { "flake": false, "locked": { "lastModified": 1661550240, @@ -718,7 +734,7 @@ "type": "github" } }, - "plenary-nvim": { + "plugin-plenary-nvim": { "flake": false, "locked": { "lastModified": 1689589150, @@ -734,14 +750,14 @@ "type": "github" } }, - "registers": { + "plugin-registers": { "flake": false, "locked": { - "lastModified": 1650186703, - "narHash": "sha256-kqAcuO/tPO0GHBUwpwQYz7QJCyeTE93CbXnVFK7S8qU=", + "lastModified": 1680595111, + "narHash": "sha256-MeBlcF5LLk6bhIofYuG+0Z2xwc0BVqP85yNCvjH66fw=", "owner": "tversteeg", "repo": "registers.nvim", - "rev": "dfcf0962ce88b52e00dd96dfaabc9997a18f4efe", + "rev": "2ab8372bb837f05fae6b43091f10a0b725d113ca", "type": "github" }, "original": { @@ -750,6 +766,134 @@ "type": "github" } }, + "plugin-rust-tools": { + "flake": false, + "locked": { + "lastModified": 1689033186, + "narHash": "sha256-jtfyDxifchznUupLSao6nmpVqaX1yO0xN+NhqS9fgxg=", + "owner": "simrat39", + "repo": "rust-tools.nvim", + "rev": "0cc8adab23117783a0292a0c8a2fbed1005dc645", + "type": "github" + }, + "original": { + "owner": "simrat39", + "repo": "rust-tools.nvim", + "type": "github" + } + }, + "plugin-sqls-nvim": { + "flake": false, + "locked": { + "lastModified": 1684697500, + "narHash": "sha256-jKFut6NZAf/eIeIkY7/2EsjsIhvZQKCKAJzeQ6XSr0s=", + "owner": "nanotee", + "repo": "sqls.nvim", + "rev": "4b1274b5b44c48ce784aac23747192f5d9d26207", + "type": "github" + }, + "original": { + "owner": "nanotee", + "repo": "sqls.nvim", + "type": "github" + } + }, + "plugin-telescope": { + "flake": false, + "locked": { + "lastModified": 1690442690, + "narHash": "sha256-vecmMzQpCBswU+wyZw4c92xqRPlpH9X3AGXajOs0fic=", + "owner": "nvim-telescope", + "repo": "telescope.nvim", + "rev": "22735947d84d78f29436c203f0a4b8dc15dda204", + "type": "github" + }, + "original": { + "owner": "nvim-telescope", + "repo": "telescope.nvim", + "type": "github" + } + }, + "plugin-todo-comments": { + "flake": false, + "locked": { + "lastModified": 1690569591, + "narHash": "sha256-Qm8AJ8omU5eCfjLt91DVxLS0R3QHbfW55ZTegB1JvWI=", + "owner": "folke", + "repo": "todo-comments.nvim", + "rev": "3094ead8edfa9040de2421deddec55d3762f64d1", + "type": "github" + }, + "original": { + "owner": "folke", + "repo": "todo-comments.nvim", + "type": "github" + } + }, + "plugin-tokyonight": { + "flake": false, + "locked": { + "lastModified": 1689285710, + "narHash": "sha256-x26qLaZzg7sJIc1d/5Q/DJ/YvRSc3s87PwPHTPTl+Xk=", + "owner": "folke", + "repo": "tokyonight.nvim", + "rev": "1ee11019f8a81dac989ae1db1a013e3d582e2033", + "type": "github" + }, + "original": { + "owner": "folke", + "repo": "tokyonight.nvim", + "type": "github" + } + }, + "plugin-trouble": { + "flake": false, + "locked": { + "lastModified": 1690570389, + "narHash": "sha256-KMqkfHffIIL6A9RcmSEf19fN6yIuXVq+pqGpif4TbKs=", + "owner": "folke", + "repo": "trouble.nvim", + "rev": "ab6dd3ffb7101d4999b6b03f93317ee99ae85fb6", + "type": "github" + }, + "original": { + "owner": "folke", + "repo": "trouble.nvim", + "type": "github" + } + }, + "plugin-vim-vsnip": { + "flake": false, + "locked": { + "lastModified": 1678609126, + "narHash": "sha256-ehPnvGle7YrECn76YlSY/2V7Zeq56JGlmZPlwgz2FdE=", + "owner": "hrsh7th", + "repo": "vim-vsnip", + "rev": "7753ba9c10429c29d25abfd11b4c60b76718c438", + "type": "github" + }, + "original": { + "owner": "hrsh7th", + "repo": "vim-vsnip", + "type": "github" + } + }, + "plugin-which-key": { + "flake": false, + "locked": { + "lastModified": 1690570286, + "narHash": "sha256-B1+EHd2eH/EbD5Kip9PfhdPyyGfIkD6rsx0Z3rXvb5w=", + "owner": "folke", + "repo": "which-key.nvim", + "rev": "7ccf476ebe0445a741b64e36c78a682c1c6118b7", + "type": "github" + }, + "original": { + "owner": "folke", + "repo": "which-key.nvim", + "type": "github" + } + }, "rnix-lsp": { "inputs": { "naersk": "naersk", @@ -776,59 +920,60 @@ }, "root": { "inputs": { - "bufdelete-nvim": "bufdelete-nvim", - "catppuccin": "catppuccin", - "cmp-buffer": "cmp-buffer", - "cmp-nvim-lsp": "cmp-nvim-lsp", - "cmp-path": "cmp-path", - "cmp-treesitter": "cmp-treesitter", - "cmp-vsnip": "cmp-vsnip", - "crates-nvim": "crates-nvim", - "dracula": "dracula", - "dracula-nvim": "dracula-nvim", - "fidget": "fidget", "flake-utils": "flake-utils", - "gitsigns-nvim": "gitsigns-nvim", - "glow-nvim": "glow-nvim", - "gruvbox": "gruvbox", - "indent-blankline": "indent-blankline", - "kommentary": "kommentary", - "lsp-signature": "lsp-signature", - "lspkind": "lspkind", - "lspsaga": "lspsaga", - "lualine": "lualine", "nil": "nil", "nixpkgs": "nixpkgs", "nmd": "nmd", - "null-ls": "null-ls", - "nvim-autopairs": "nvim-autopairs", - "nvim-bufferline-lua": "nvim-bufferline-lua", - "nvim-cmp": "nvim-cmp", - "nvim-code-action-menu": "nvim-code-action-menu", - "nvim-cursorline": "nvim-cursorline", - "nvim-lightbulb": "nvim-lightbulb", - "nvim-lspconfig": "nvim-lspconfig", - "nvim-neoclip": "nvim-neoclip", - "nvim-tree-lua": "nvim-tree-lua", - "nvim-treesitter-context": "nvim-treesitter-context", - "nvim-ts-autotag": "nvim-ts-autotag", - "nvim-web-devicons": "nvim-web-devicons", - "onedark": "onedark", - "open-browser": "open-browser", - "plantuml-previewer": "plantuml-previewer", - "plantuml-syntax": "plantuml-syntax", - "plenary-nvim": "plenary-nvim", - "registers": "registers", + "plugin-bufdelete-nvim": "plugin-bufdelete-nvim", + "plugin-catppuccin": "plugin-catppuccin", + "plugin-cmp-buffer": "plugin-cmp-buffer", + "plugin-cmp-nvim-lsp": "plugin-cmp-nvim-lsp", + "plugin-cmp-path": "plugin-cmp-path", + "plugin-cmp-treesitter": "plugin-cmp-treesitter", + "plugin-cmp-vsnip": "plugin-cmp-vsnip", + "plugin-crates-nvim": "plugin-crates-nvim", + "plugin-dracula": "plugin-dracula", + "plugin-dracula-nvim": "plugin-dracula-nvim", + "plugin-fidget": "plugin-fidget", + "plugin-gitsigns-nvim": "plugin-gitsigns-nvim", + "plugin-glow-nvim": "plugin-glow-nvim", + "plugin-gruvbox": "plugin-gruvbox", + "plugin-indent-blankline": "plugin-indent-blankline", + "plugin-kommentary": "plugin-kommentary", + "plugin-lsp-signature": "plugin-lsp-signature", + "plugin-lspkind": "plugin-lspkind", + "plugin-lspsaga": "plugin-lspsaga", + "plugin-lualine": "plugin-lualine", + "plugin-null-ls": "plugin-null-ls", + "plugin-nvim-autopairs": "plugin-nvim-autopairs", + "plugin-nvim-bufferline-lua": "plugin-nvim-bufferline-lua", + "plugin-nvim-cmp": "plugin-nvim-cmp", + "plugin-nvim-code-action-menu": "plugin-nvim-code-action-menu", + "plugin-nvim-cursorline": "plugin-nvim-cursorline", + "plugin-nvim-dap": "plugin-nvim-dap", + "plugin-nvim-lightbulb": "plugin-nvim-lightbulb", + "plugin-nvim-lspconfig": "plugin-nvim-lspconfig", + "plugin-nvim-neoclip": "plugin-nvim-neoclip", + "plugin-nvim-tree-lua": "plugin-nvim-tree-lua", + "plugin-nvim-treesitter-context": "plugin-nvim-treesitter-context", + "plugin-nvim-ts-autotag": "plugin-nvim-ts-autotag", + "plugin-nvim-web-devicons": "plugin-nvim-web-devicons", + "plugin-onedark": "plugin-onedark", + "plugin-open-browser": "plugin-open-browser", + "plugin-plantuml-previewer": "plugin-plantuml-previewer", + "plugin-plantuml-syntax": "plugin-plantuml-syntax", + "plugin-plenary-nvim": "plugin-plenary-nvim", + "plugin-registers": "plugin-registers", + "plugin-rust-tools": "plugin-rust-tools", + "plugin-sqls-nvim": "plugin-sqls-nvim", + "plugin-telescope": "plugin-telescope", + "plugin-todo-comments": "plugin-todo-comments", + "plugin-tokyonight": "plugin-tokyonight", + "plugin-trouble": "plugin-trouble", + "plugin-vim-vsnip": "plugin-vim-vsnip", + "plugin-which-key": "plugin-which-key", "rnix-lsp": "rnix-lsp", - "rust-tools": "rust-tools", - "sqls-nvim": "sqls-nvim", - "telescope": "telescope", - "tidalcycles": "tidalcycles", - "todo-comments": "todo-comments", - "tokyonight": "tokyonight", - "trouble": "trouble", - "vim-vsnip": "vim-vsnip", - "which-key": "which-key" + "tidalcycles": "tidalcycles" } }, "rust-overlay": { @@ -856,38 +1001,6 @@ "type": "github" } }, - "rust-tools": { - "flake": false, - "locked": { - "lastModified": 1689033186, - "narHash": "sha256-jtfyDxifchznUupLSao6nmpVqaX1yO0xN+NhqS9fgxg=", - "owner": "simrat39", - "repo": "rust-tools.nvim", - "rev": "0cc8adab23117783a0292a0c8a2fbed1005dc645", - "type": "github" - }, - "original": { - "owner": "simrat39", - "repo": "rust-tools.nvim", - "type": "github" - } - }, - "sqls-nvim": { - "flake": false, - "locked": { - "lastModified": 1684697500, - "narHash": "sha256-jKFut6NZAf/eIeIkY7/2EsjsIhvZQKCKAJzeQ6XSr0s=", - "owner": "nanotee", - "repo": "sqls.nvim", - "rev": "4b1274b5b44c48ce784aac23747192f5d9d26207", - "type": "github" - }, - "original": { - "owner": "nanotee", - "repo": "sqls.nvim", - "type": "github" - } - }, "superdirt-src": { "flake": false, "locked": { @@ -905,22 +1018,6 @@ "type": "github" } }, - "telescope": { - "flake": false, - "locked": { - "lastModified": 1690442690, - "narHash": "sha256-vecmMzQpCBswU+wyZw4c92xqRPlpH9X3AGXajOs0fic=", - "owner": "nvim-telescope", - "repo": "telescope.nvim", - "rev": "22735947d84d78f29436c203f0a4b8dc15dda204", - "type": "github" - }, - "original": { - "owner": "nvim-telescope", - "repo": "telescope.nvim", - "type": "github" - } - }, "tidal-src": { "flake": false, "locked": { @@ -962,54 +1059,6 @@ "type": "github" } }, - "todo-comments": { - "flake": false, - "locked": { - "lastModified": 1642601933, - "narHash": "sha256-8uj5TxO9XZlSCB4lVRbKRc1IlUEKcBf/4bDviwuxEgs=", - "owner": "folke", - "repo": "todo-comments.nvim", - "rev": "98b1ebf198836bdc226c0562b9f906584e6c400e", - "type": "github" - }, - "original": { - "owner": "folke", - "repo": "todo-comments.nvim", - "type": "github" - } - }, - "tokyonight": { - "flake": false, - "locked": { - "lastModified": 1689285710, - "narHash": "sha256-x26qLaZzg7sJIc1d/5Q/DJ/YvRSc3s87PwPHTPTl+Xk=", - "owner": "folke", - "repo": "tokyonight.nvim", - "rev": "1ee11019f8a81dac989ae1db1a013e3d582e2033", - "type": "github" - }, - "original": { - "owner": "folke", - "repo": "tokyonight.nvim", - "type": "github" - } - }, - "trouble": { - "flake": false, - "locked": { - "lastModified": 1647585739, - "narHash": "sha256-oUf8YbJ9HmSLN8o2c7CXzCYPu7PwKzvVKNiM9HtHQbQ=", - "owner": "folke", - "repo": "trouble.nvim", - "rev": "691d490cc4eadc430d226fa7d77aaa84e2e0a125", - "type": "github" - }, - "original": { - "owner": "folke", - "repo": "trouble.nvim", - "type": "github" - } - }, "utils": { "locked": { "lastModified": 1653893745, @@ -1042,22 +1091,6 @@ "type": "github" } }, - "vim-vsnip": { - "flake": false, - "locked": { - "lastModified": 1678609126, - "narHash": "sha256-ehPnvGle7YrECn76YlSY/2V7Zeq56JGlmZPlwgz2FdE=", - "owner": "hrsh7th", - "repo": "vim-vsnip", - "rev": "7753ba9c10429c29d25abfd11b4c60b76718c438", - "type": "github" - }, - "original": { - "owner": "hrsh7th", - "repo": "vim-vsnip", - "type": "github" - } - }, "vowel-src": { "flake": false, "locked": { @@ -1074,22 +1107,6 @@ "repo": "vowel", "type": "github" } - }, - "which-key": { - "flake": false, - "locked": { - "lastModified": 1689491189, - "narHash": "sha256-13aa6QQ4hkWQaliQmICTng/nxutCqlzCWzAoOZhERSI=", - "owner": "folke", - "repo": "which-key.nvim", - "rev": "38b990f6eabf62014018b4aae70a97d7a6c2eb88", - "type": "github" - }, - "original": { - "owner": "folke", - "repo": "which-key.nvim", - "type": "github" - } } }, "root": "root", diff --git a/flake.nix b/flake.nix index 0061167..9558eb2 100644 --- a/flake.nix +++ b/flake.nix @@ -7,176 +7,182 @@ nmd.url = "gitlab:rycee/nmd"; nmd.flake = false; + # Language server (use master instead of nixpkgs) + rnix-lsp.url = "github:nix-community/rnix-lsp"; + rnix-lsp.inputs.nixpkgs.follows = "flake-utils"; + rnix-lsp.inputs.utils.follows = "flake-utils"; + + nil.url = "github:jordanisaacs/nil"; + nil.inputs.nixpkgs.follows = "nixpkgs"; + nil.inputs.flake-utils.follows = "flake-utils"; + + # Tidal cycles + tidalcycles.url = "github:mitchmindtree/tidalcycles.nix"; + tidalcycles.inputs.vim-tidal-src.url = "github:tidalcycles/vim-tidal"; + + ## Plugins (must begin with plugin-) + # LSP plugins - nvim-lspconfig.url = "github:neovim/nvim-lspconfig"; - nvim-lspconfig.flake = false; + plugin-nvim-lspconfig.url = "github:neovim/nvim-lspconfig"; + plugin-nvim-lspconfig.flake = false; - lspsaga.url = "github:tami5/lspsaga.nvim"; - lspsaga.flake = false; + plugin-lspsaga.url = "github:tami5/lspsaga.nvim"; + plugin-lspsaga.flake = false; - lspkind.url = "github:onsails/lspkind-nvim"; - lspkind.flake = false; + plugin-lspkind.url = "github:onsails/lspkind-nvim"; + plugin-lspkind.flake = false; - trouble.url = "github:folke/trouble.nvim"; - trouble.flake = false; + plugin-trouble.url = "github:folke/trouble.nvim"; + plugin-trouble.flake = false; - nvim-treesitter-context.url = "github:nvim-treesitter/nvim-treesitter-context"; - nvim-treesitter-context.flake = false; + plugin-nvim-treesitter-context.url = "github:nvim-treesitter/nvim-treesitter-context"; + plugin-nvim-treesitter-context.flake = false; - nvim-lightbulb.url = "github:kosayoda/nvim-lightbulb"; - nvim-lightbulb.flake = false; + plugin-nvim-lightbulb.url = "github:kosayoda/nvim-lightbulb"; + plugin-nvim-lightbulb.flake = false; - fidget.url = "github:j-hui/fidget.nvim"; - fidget.flake = false; + plugin-fidget.url = "github:j-hui/fidget.nvim"; + plugin-fidget.flake = false; - nvim-code-action-menu.url = "github:weilbith/nvim-code-action-menu"; - nvim-code-action-menu.flake = false; + plugin-nvim-code-action-menu.url = "github:weilbith/nvim-code-action-menu"; + plugin-nvim-code-action-menu.flake = false; - lsp-signature.url = "github:ray-x/lsp_signature.nvim"; - lsp-signature.flake = false; + plugin-lsp-signature.url = "github:ray-x/lsp_signature.nvim"; + plugin-lsp-signature.flake = false; - null-ls.url = "github:jose-elias-alvarez/null-ls.nvim"; - null-ls.flake = false; + plugin-null-ls.url = "github:jose-elias-alvarez/null-ls.nvim"; + plugin-null-ls.flake = false; - sqls-nvim.url = "github:nanotee/sqls.nvim"; - sqls-nvim.flake = false; + plugin-sqls-nvim.url = "github:nanotee/sqls.nvim"; + plugin-sqls-nvim.flake = false; - rust-tools.url = "github:simrat39/rust-tools.nvim"; - rust-tools.flake = false; + plugin-rust-tools.url = "github:simrat39/rust-tools.nvim"; + plugin-rust-tools.flake = false; + + # Debug + plugin-nvim-dap.url = "github:mfussenegger/nvim-dap"; + plugin-nvim-dap.flake = false; # Copying/Registers - registers.url = "github:tversteeg/registers.nvim"; - registers.flake = false; + plugin-registers.url = "github:tversteeg/registers.nvim"; + plugin-registers.flake = false; - nvim-neoclip.url = "github:AckslD/nvim-neoclip.lua"; - nvim-neoclip.flake = false; + plugin-nvim-neoclip.url = "github:AckslD/nvim-neoclip.lua"; + plugin-nvim-neoclip.flake = false; # Telescope - telescope.url = "github:nvim-telescope/telescope.nvim"; - telescope.flake = false; - - # Langauge server (use master instead of nixpkgs) - rnix-lsp.url = "github:nix-community/rnix-lsp"; - rnix-lsp.inputs.nixpkgs.follows = "flake-utils"; - rnix-lsp.inputs.utils.follows = "flake-utils"; - - nil.url = "github:jordanisaacs/nil"; - nil.inputs.nixpkgs.follows = "nixpkgs"; - nil.inputs.flake-utils.follows = "flake-utils"; + plugin-telescope.url = "github:nvim-telescope/telescope.nvim"; + plugin-telescope.flake = false; # Filetrees - nvim-tree-lua.url = "github:kyazdani42/nvim-tree.lua"; - nvim-tree-lua.flake = false; + plugin-nvim-tree-lua.url = "github:kyazdani42/nvim-tree.lua"; + plugin-nvim-tree-lua.flake = false; # Tablines - nvim-bufferline-lua.url = "github:akinsho/nvim-bufferline.lua?ref=v4.3.0"; - nvim-bufferline-lua.flake = false; + plugin-nvim-bufferline-lua.url = "github:akinsho/nvim-bufferline.lua?ref=v4.3.0"; + plugin-nvim-bufferline-lua.flake = false; # Statuslines - lualine.url = "github:hoob3rt/lualine.nvim"; - lualine.flake = false; + plugin-lualine.url = "github:hoob3rt/lualine.nvim"; + plugin-lualine.flake = false; # Autocompletes - nvim-cmp.url = "github:hrsh7th/nvim-cmp"; - nvim-cmp.flake = false; + plugin-nvim-cmp.url = "github:hrsh7th/nvim-cmp"; + plugin-nvim-cmp.flake = false; - cmp-buffer.url = "github:hrsh7th/cmp-buffer"; - cmp-buffer.flake = false; + plugin-cmp-buffer.url = "github:hrsh7th/cmp-buffer"; + plugin-cmp-buffer.flake = false; - cmp-nvim-lsp.url = "github:hrsh7th/cmp-nvim-lsp"; - cmp-nvim-lsp.flake = false; + plugin-cmp-nvim-lsp.url = "github:hrsh7th/cmp-nvim-lsp"; + plugin-cmp-nvim-lsp.flake = false; - cmp-vsnip.url = "github:hrsh7th/cmp-vsnip"; - cmp-vsnip.flake = false; + plugin-cmp-vsnip.url = "github:hrsh7th/cmp-vsnip"; + plugin-cmp-vsnip.flake = false; - cmp-path.url = "github:hrsh7th/cmp-path"; - cmp-path.flake = false; + plugin-cmp-path.url = "github:hrsh7th/cmp-path"; + plugin-cmp-path.flake = false; - cmp-treesitter.url = "github:ray-x/cmp-treesitter"; - cmp-treesitter.flake = false; + plugin-cmp-treesitter.url = "github:ray-x/cmp-treesitter"; + plugin-cmp-treesitter.flake = false; # snippets - vim-vsnip.url = "github:hrsh7th/vim-vsnip"; - vim-vsnip.flake = false; + plugin-vim-vsnip.url = "github:hrsh7th/vim-vsnip"; + plugin-vim-vsnip.flake = false; # Autopairs - nvim-autopairs.url = "github:windwp/nvim-autopairs"; - nvim-autopairs.flake = false; + plugin-nvim-autopairs.url = "github:windwp/nvim-autopairs"; + plugin-nvim-autopairs.flake = false; - nvim-ts-autotag.url = "github:windwp/nvim-ts-autotag"; - nvim-ts-autotag.flake = false; + plugin-nvim-ts-autotag.url = "github:windwp/nvim-ts-autotag"; + plugin-nvim-ts-autotag.flake = false; # Commenting - kommentary.url = "github:b3nj5m1n/kommentary"; - kommentary.flake = false; + plugin-kommentary.url = "github:b3nj5m1n/kommentary"; + plugin-kommentary.flake = false; - todo-comments.url = "github:folke/todo-comments.nvim"; - todo-comments.flake = false; + plugin-todo-comments.url = "github:folke/todo-comments.nvim"; + plugin-todo-comments.flake = false; # Buffer tools - bufdelete-nvim.url = "github:famiu/bufdelete.nvim"; - bufdelete-nvim.flake = false; + plugin-bufdelete-nvim.url = "github:famiu/bufdelete.nvim"; + plugin-bufdelete-nvim.flake = false; # Themes - tokyonight.url = "github:folke/tokyonight.nvim"; - tokyonight.flake = false; + plugin-tokyonight.url = "github:folke/tokyonight.nvim"; + plugin-tokyonight.flake = false; - onedark.url = "github:navarasu/onedark.nvim"; - onedark.flake = false; + plugin-onedark.url = "github:navarasu/onedark.nvim"; + plugin-onedark.flake = false; - catppuccin.url = "github:catppuccin/nvim"; - catppuccin.flake = false; + plugin-catppuccin.url = "github:catppuccin/nvim"; + plugin-catppuccin.flake = false; - dracula-nvim.url = "github:Mofiqul/dracula.nvim"; - dracula-nvim.flake = false; + plugin-dracula-nvim.url = "github:Mofiqul/dracula.nvim"; + plugin-dracula-nvim.flake = false; - dracula.url = "github:dracula/vim"; - dracula.flake = false; + plugin-dracula.url = "github:dracula/vim"; + plugin-dracula.flake = false; - gruvbox.url = "github:ellisonleao/gruvbox.nvim"; - gruvbox.flake = false; + plugin-gruvbox.url = "github:ellisonleao/gruvbox.nvim"; + plugin-gruvbox.flake = false; # Rust crates - crates-nvim.url = "github:Saecki/crates.nvim"; - crates-nvim.flake = false; + plugin-crates-nvim.url = "github:Saecki/crates.nvim"; + plugin-crates-nvim.flake = false; # Visuals - nvim-cursorline.url = "github:yamatsum/nvim-cursorline"; - nvim-cursorline.flake = false; + plugin-nvim-cursorline.url = "github:yamatsum/nvim-cursorline"; + plugin-nvim-cursorline.flake = false; - indent-blankline.url = "github:lukas-reineke/indent-blankline.nvim"; - indent-blankline.flake = false; + plugin-indent-blankline.url = "github:lukas-reineke/indent-blankline.nvim"; + plugin-indent-blankline.flake = false; - nvim-web-devicons.url = "github:kyazdani42/nvim-web-devicons"; - nvim-web-devicons.flake = false; + plugin-nvim-web-devicons.url = "github:kyazdani42/nvim-web-devicons"; + plugin-nvim-web-devicons.flake = false; - gitsigns-nvim.url = "github:lewis6991/gitsigns.nvim"; - gitsigns-nvim.flake = false; + plugin-gitsigns-nvim.url = "github:lewis6991/gitsigns.nvim"; + plugin-gitsigns-nvim.flake = false; # Key binding help - which-key.url = "github:folke/which-key.nvim"; - which-key.flake = false; + plugin-which-key.url = "github:folke/which-key.nvim"; + plugin-which-key.flake = false; # Markdown - glow-nvim.url = "github:ellisonleao/glow.nvim"; - glow-nvim.flake = false; - - # Tidal cycles - tidalcycles.url = "github:mitchmindtree/tidalcycles.nix"; - tidalcycles.inputs.vim-tidal-src.url = "github:tidalcycles/vim-tidal"; + plugin-glow-nvim.url = "github:ellisonleao/glow.nvim"; + plugin-glow-nvim.flake = false; # Plenary (required by crates-nvim) - plenary-nvim.url = "github:nvim-lua/plenary.nvim"; - plenary-nvim.flake = false; + plugin-plenary-nvim.url = "github:nvim-lua/plenary.nvim"; + plugin-plenary-nvim.flake = false; - open-browser.url = "github:tyru/open-browser.vim"; - open-browser.flake = false; + plugin-open-browser.url = "github:tyru/open-browser.vim"; + plugin-open-browser.flake = false; - plantuml-syntax.url = "github:aklt/plantuml-syntax"; - plantuml-syntax.flake = false; + plugin-plantuml-syntax.url = "github:aklt/plantuml-syntax"; + plugin-plantuml-syntax.flake = false; - plantuml-previewer.url = "github:weirongxu/plantuml-previewer.vim"; - plantuml-previewer.flake = false; + plugin-plantuml-previewer.url = "github:weirongxu/plantuml-previewer.vim"; + plugin-plantuml-previewer.flake = false; }; outputs = { @@ -184,53 +190,7 @@ flake-utils, ... } @ inputs: let - # Plugin must be same as input name - availablePlugins = [ - "nvim-treesitter-context" - "gitsigns-nvim" - "plenary-nvim" - "nvim-lspconfig" - "lspsaga" - "lspkind" - "nvim-lightbulb" - "fidget" - "lsp-signature" - "nvim-tree-lua" - "nvim-bufferline-lua" - "lualine" - "nvim-autopairs" - "nvim-ts-autotag" - "nvim-web-devicons" - "tokyonight" - "bufdelete-nvim" - "nvim-cmp" - "cmp-nvim-lsp" - "cmp-buffer" - "cmp-vsnip" - "cmp-path" - "cmp-treesitter" - "crates-nvim" - "vim-vsnip" - "nvim-code-action-menu" - "trouble" - "null-ls" - "which-key" - "indent-blankline" - "nvim-cursorline" - "sqls-nvim" - "glow-nvim" - "telescope" - "rust-tools" - "onedark" - "catppuccin" - "dracula" - "dracula-nvim" - "gruvbox" - "open-browser" - "plantuml-syntax" - "plantuml-previewer" - ]; - rawPlugins = nvimLib.plugins.inputsToRaw inputs availablePlugins; + rawPlugins = nvimLib.plugins.fromInputs inputs "plugin-"; neovimConfiguration = {modules ? [], ...} @ args: import ./modules diff --git a/modules/lib/plugins.nix b/modules/lib/plugins.nix index b5a17c8..dae5c89 100644 --- a/modules/lib/plugins.nix +++ b/modules/lib/plugins.nix @@ -1,3 +1,7 @@ -{lib}: { - inputsToRaw = inputs: availablePlugins: lib.genAttrs availablePlugins (n: {src = inputs.${n};}); +{lib}: +with lib; { + fromInputs = inputs: prefix: + mapAttrs' + (n: v: nameValuePair (removePrefix prefix n) {src = v;}) + (filterAttrs (n: _: hasPrefix prefix n) inputs); }