diff options
author | tom barrett <tom@tombarrett.xyz> | 2025-02-16 16:12:18 +0100 |
---|---|---|
committer | tom barrett <tom@tombarrett.xyz> | 2025-02-16 16:12:18 +0100 |
commit | b96cf3a52f310aa4df59a304c80070bda7f83c14 (patch) | |
tree | cc97eaea8efd83af5560fd951eab63b282f5d17e | |
parent | a1140b2d47df62214537abaea86974c2a14c39b2 (diff) |
-rw-r--r-- | flake.lock | 111 | ||||
-rw-r--r-- | flake.nix | 158 |
2 files changed, 156 insertions, 113 deletions
@@ -8,11 +8,11 @@ ] }, "locked": { - "lastModified": 1722113426, - "narHash": "sha256-Yo/3loq572A8Su6aY5GP56knpuKYRvM2a1meP9oJZCw=", + "lastModified": 1735644329, + "narHash": "sha256-tO3HrHriyLvipc4xr+Ewtdlo7wM1OjXNjlWRgmM7peY=", "owner": "numtide", "repo": "devshell", - "rev": "67cce7359e4cd3c45296fb4aaf6a19e2a9c757ae", + "rev": "f7795ede5b02664b57035b3b757876703e2c3eac", "type": "github" }, "original": { @@ -23,12 +23,12 @@ }, "flake-compat": { "locked": { - "lastModified": 1696426674, - "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", - "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", - "revCount": 57, + "lastModified": 1733328505, + "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", + "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", + "revCount": 69, "type": "tarball", - "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz" + "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.1.0/01948eb7-9cba-704f-bbf3-3fa956735b52/source.tar.gz" }, "original": { "type": "tarball", @@ -43,11 +43,11 @@ ] }, "locked": { - "lastModified": 1726153070, - "narHash": "sha256-HO4zgY0ekfwO5bX0QH/3kJ/h4KvUDFZg8YpkNwIbg1U=", + "lastModified": 1738453229, + "narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "bcef6817a8b2aa20a5a6dbb19b43e63c5bf8619a", + "rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd", "type": "github" }, "original": { @@ -61,11 +61,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1710146030, - "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", "owner": "numtide", "repo": "flake-utils", - "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", "type": "github" }, "original": { @@ -84,18 +84,14 @@ "nixpkgs": [ "nixvim", "nixpkgs" - ], - "nixpkgs-stable": [ - "nixvim", - "nixpkgs" ] }, "locked": { - "lastModified": 1726745158, - "narHash": "sha256-D5AegvGoEjt4rkKedmxlSEmC+nNLMBPWFxvmYnVLhjk=", + "lastModified": 1737465171, + "narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "4e743a6920eab45e8ba0fbe49dc459f1423a4b74", + "rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17", "type": "github" }, "original": { @@ -134,11 +130,11 @@ ] }, "locked": { - "lastModified": 1726902823, - "narHash": "sha256-Gkc7pwTVLKj4HSvRt8tXNvosl8RS9hrBAEhOjAE0Tt4=", + "lastModified": 1738878603, + "narHash": "sha256-fmhq8B3MvQLawLbMO+LWLcdC2ftLMmwSk+P29icJ3tE=", "owner": "nix-community", "repo": "home-manager", - "rev": "14929f7089268481d86b83ed31ffd88713dcd415", + "rev": "433799271274c9f2ab520a49527ebfe2992dcfbd", "type": "github" }, "original": { @@ -147,6 +143,34 @@ "type": "github" } }, + "ixx": { + "inputs": { + "flake-utils": [ + "nixvim", + "nuschtosSearch", + "flake-utils" + ], + "nixpkgs": [ + "nixvim", + "nuschtosSearch", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1729958008, + "narHash": "sha256-EiOq8jF4Z/zQe0QYVc3+qSKxRK//CFHMB84aYrYGwEs=", + "owner": "NuschtOS", + "repo": "ixx", + "rev": "9fd01aad037f345350eab2cd45e1946cc66da4eb", + "type": "github" + }, + "original": { + "owner": "NuschtOS", + "ref": "v0.0.6", + "repo": "ixx", + "type": "github" + } + }, "nix-darwin": { "inputs": { "nixpkgs": [ @@ -155,11 +179,11 @@ ] }, "locked": { - "lastModified": 1726742753, - "narHash": "sha256-QclpWrIFIg/yvWRiOUaMp1WR+TGUE9tb7RE31xHlxWc=", + "lastModified": 1738743987, + "narHash": "sha256-O3bnAfsObto6l2tQOmQlrO6Z2kD6yKwOWfs7pA0CpOc=", "owner": "lnl7", "repo": "nix-darwin", - "rev": "c03f85fa42d68d1056ca1740f3113b04f3addff2", + "rev": "ae406c04577ff9a64087018c79b4fdc02468c87c", "type": "github" }, "original": { @@ -170,11 +194,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1726755586, - "narHash": "sha256-PmUr/2GQGvFTIJ6/Tvsins7Q43KTMvMFhvG6oaYK+Wk=", + "lastModified": 1739446958, + "narHash": "sha256-+/bYK3DbPxMIvSL4zArkMX0LQvS7rzBKXnDXLfKyRVc=", "owner": "nixos", "repo": "nixpkgs", - "rev": "c04d5652cfa9742b1d519688f65d1bbccea9eb7e", + "rev": "2ff53fe64443980e139eaa286017f53f88336dd0", "type": "github" }, "original": { @@ -186,16 +210,16 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1726755586, - "narHash": "sha256-PmUr/2GQGvFTIJ6/Tvsins7Q43KTMvMFhvG6oaYK+Wk=", + "lastModified": 1738797219, + "narHash": "sha256-KRwX9Z1XavpgeSDVM/THdFd6uH8rNm/6R+7kIbGa+2s=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "c04d5652cfa9742b1d519688f65d1bbccea9eb7e", + "rev": "1da52dd49a127ad74486b135898da2cef8c62665", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-unstable", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } @@ -213,11 +237,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1726934957, - "narHash": "sha256-ygq8w1bvpbKS2+ePSXt3HQvM+ea10yoRAE2c1L9XruA=", + "lastModified": 1739632145, + "narHash": "sha256-maNBjf9whO303r4+8ekfAZOrf3sHnw6DLiSph5xnXJw=", "owner": "nix-community", "repo": "nixvim", - "rev": "384f97cf50c534a18f5a8feac81d40623267aa81", + "rev": "b8c55873998948bf14a2b6cf30f9ad5ecdf79818", "type": "github" }, "original": { @@ -229,17 +253,18 @@ "nuschtosSearch": { "inputs": { "flake-utils": "flake-utils", + "ixx": "ixx", "nixpkgs": [ "nixvim", "nixpkgs" ] }, "locked": { - "lastModified": 1726816132, - "narHash": "sha256-AbB0lgc0IbzLIxj1O3cosiMNAVQak4KJtvq9q8MjHhs=", + "lastModified": 1738508923, + "narHash": "sha256-4DaDrQDAIxlWhTjH6h/+xfG05jt3qDZrZE/7zDLQaS4=", "owner": "NuschtOS", "repo": "search", - "rev": "7733a39a1321057172d87e6251ded7cdeb67171e", + "rev": "86e2038290859006e05ca7201425ea5b5de4aecb", "type": "github" }, "original": { @@ -277,11 +302,11 @@ ] }, "locked": { - "lastModified": 1726734507, - "narHash": "sha256-VUH5O5AcOSxb0uL/m34dDkxFKP6WLQ6y4I1B4+N3L2w=", + "lastModified": 1738680491, + "narHash": "sha256-8X7tR3kFGkE7WEF5EXVkt4apgaN85oHZdoTGutCFs6I=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "ee41a466c2255a3abe6bc50fc6be927cdee57a9f", + "rev": "64dbb922d51a42c0ced6a7668ca008dded61c483", "type": "github" }, "original": { @@ -4,81 +4,100 @@ nixvim.url = "github:nix-community/nixvim"; }; - outputs = { - nixpkgs, - nixvim, - self, - }: let - pkgs = nixpkgs.legacyPackages.x86_64-linux; - npkgs = nixvim.legacyPackages.x86_64-linux; - in { - packages.x86_64-linux.default = npkgs.makeNixvimWithModule { - module = { - config = { - opts = {mouse = "";}; - colorschemes.kanagawa = { - enable = true; - settings.transparent = true; - }; - extraPackages = [ - pkgs.go - pkgs.rustfmt - ]; - plugins = { - ledger.enable = true; - lsp-format.enable = true; - vim-css-color.enable = true; - none-ls = { + outputs = + { + nixpkgs, + nixvim, + self, + }: + let + pkgs = nixpkgs.legacyPackages.x86_64-linux; + npkgs = nixvim.legacyPackages.x86_64-linux; + in + { + packages.x86_64-linux.default = npkgs.makeNixvimWithModule { + module = { + config = { + opts = { + mouse = ""; + expandtab = true; + tabstop = 4; + }; + colorschemes.kanagawa = { enable = true; - sources = { - formatting = { - shfmt = { + settings.transparent = true; + }; + extraPackages = [ + pkgs.nixfmt-rfc-style + pkgs.shfmt + ]; + filetype.pattern.".*".__raw = '' + function(path, bufnr) + local content = vim.api.nvim_buf_get_lines(bufnr, 1, 2, false)[1] or "" + if vim.regex("bash"):match_str(content) then + return 'bash' + elseif vim.regex("python"):match_str(content) then + return 'python' + end + end + ''; + plugins = { + ledger.enable = true; + lsp-format.enable = true; + vim-css-color.enable = true; + lsp = { + enable = true; + servers = { + cmake.enable = true; + gopls.enable = true; + ruff.enable = true; + nixd = { enable = true; - settings.extra_args = ["-i" "4" "-s"]; + extraOptions.formatting.command = "nixfmt"; }; - alejandra.enable = true; + bashls.enable = true; }; }; - }; - lsp = { - enable = true; - servers = { - cmake.enable = true; - gopls.enable = true; - ruff.enable = true; - nixd.enable = true; - bashls.enable = true; - rust-analyzer = { - enable = true; - installCargo = true; - installRustc = true; + luasnip.enable = true; + cmp = { + enable = true; + cmdline = { + ":" = { + mapping.__raw = "cmp.mapping.preset.cmdline()"; + sources = [ + { name = "path"; } + { + name = "cmdline"; + option.ignore_cmds = [ + "Man" + "!" + ]; + } + ]; + }; }; - }; - }; - luasnip.enable = true; - cmp = { - enable = true; - settings = { - autoEnableSources = true; - sources = [ - {name = "nvim_lsp";} - {name = "path";} - {name = "buffer";} - {name = "luasnip";} - ]; - mapping = { - "<CR>" = "cmp.mapping.confirm({ select = true })"; - "<Tab>" = '' - cmp.mapping(function(fallback) - if cmp.visible() then - cmp.select_next_item({ - behavior = cmp.SelectBehavior.Select - }) - else - fallback() - end - end, {"i","s","c",}) - ''; + settings = { + autoEnableSources = true; + sources = [ + { name = "nvim_lsp"; } + { name = "path"; } + { name = "buffer"; } + { name = "luasnip"; } + ]; + mapping = { + "<CR>" = "cmp.mapping.confirm({ select = true })"; + "<Tab>" = '' + cmp.mapping(function(fallback) + if cmp.visible() then + cmp.select_next_item({ + behavior = cmp.SelectBehavior.Select + }) + else + fallback() + end + end, {"i","s","c",}) + ''; + }; }; }; }; @@ -86,5 +105,4 @@ }; }; }; - }; } |