diff --git a/flake.lock b/flake.lock index 25d3249..6a93757 100644 --- a/flake.lock +++ b/flake.lock @@ -169,6 +169,24 @@ } }, "flake-parts_2": { + "inputs": { + "nixpkgs-lib": "nixpkgs-lib" + }, + "locked": { + "lastModified": 1738453229, + "narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_3": { "inputs": { "nixpkgs-lib": [ "stylix", @@ -209,6 +227,24 @@ } }, "flake-utils_2": { + "inputs": { + "systems": "systems_3" + }, + "locked": { + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flake-utils_3": { "inputs": { "systems": [ "stylix", @@ -229,9 +265,9 @@ "type": "github" } }, - "flake-utils_3": { + "flake-utils_4": { "inputs": { - "systems": "systems_4" + "systems": "systems_6" }, "locked": { "lastModified": 1731533236, @@ -678,6 +714,47 @@ "type": "github" } }, + "mnw": { + "locked": { + "lastModified": 1738852285, + "narHash": "sha256-8Y1uyE6gGHxdU0Vcx2CMg/dAmDSxJw19aAl3TKbbo54=", + "owner": "Gerg-L", + "repo": "mnw", + "rev": "6ae73dc9cb72cea17bcc2e3d4670825f483e80e8", + "type": "github" + }, + "original": { + "owner": "Gerg-L", + "repo": "mnw", + "type": "github" + } + }, + "nil": { + "inputs": { + "flake-utils": [ + "nvf", + "flake-utils" + ], + "nixpkgs": [ + "nvf", + "nixpkgs" + ], + "rust-overlay": "rust-overlay" + }, + "locked": { + "lastModified": 1732053863, + "narHash": "sha256-DCIVdlb81Fct2uwzbtnawLBC/U03U2hqx8trqTJB7WA=", + "owner": "oxalica", + "repo": "nil", + "rev": "2e24c9834e3bb5aa2a3701d3713b43a6fb106362", + "type": "github" + }, + "original": { + "owner": "oxalica", + "repo": "nil", + "type": "github" + } + }, "nixpkgs": { "locked": { "lastModified": 1739020877, @@ -694,6 +771,18 @@ "type": "github" } }, + "nixpkgs-lib": { + "locked": { + "lastModified": 1738452942, + "narHash": "sha256-vJzFZGaCpnmo7I6i416HaBLpC+hvcURh/BQwROcGIp8=", + "type": "tarball", + "url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz" + } + }, "nixpkgs_2": { "locked": { "lastModified": 1741246872, @@ -711,6 +800,22 @@ } }, "nixpkgs_3": { + "locked": { + "lastModified": 1740303746, + "narHash": "sha256-XcdiWLEhjJkMxDLKQJ0CCivmYYCvA5MDxu9pMybM5kM=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "2d068ae5c6516b2d04562de50a58c682540de9bf", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_4": { "locked": { "lastModified": 1740367490, "narHash": "sha256-WGaHVAjcrv+Cun7zPlI41SerRtfknGQap281+AakSAw=", @@ -726,7 +831,7 @@ "type": "github" } }, - "nixpkgs_4": { + "nixpkgs_5": { "locked": { "lastModified": 1737003892, "narHash": "sha256-RCzJE9wKByLCXmRBp+z8LK9EgdW+K+W/DXnJS4S/NVo=", @@ -764,9 +869,25 @@ "type": "github" } }, + "nmd": { + "flake": false, + "locked": { + "lastModified": 1705050560, + "narHash": "sha256-x3zzcdvhJpodsmdjqB4t5mkVW22V3wqHLOun0KRBzUI=", + "owner": "~rycee", + "repo": "nmd", + "rev": "66d9334933119c36f91a78d565c152a4fdc8d3d3", + "type": "sourcehut" + }, + "original": { + "owner": "~rycee", + "repo": "nmd", + "type": "sourcehut" + } + }, "nur": { "inputs": { - "flake-parts": "flake-parts_2", + "flake-parts": "flake-parts_3", "nixpkgs": [ "stylix", "nixpkgs" @@ -810,6 +931,30 @@ "type": "github" } }, + "nvf": { + "inputs": { + "flake-parts": "flake-parts_2", + "flake-utils": "flake-utils_2", + "mnw": "mnw", + "nil": "nil", + "nixpkgs": "nixpkgs_3", + "nmd": "nmd", + "systems": "systems_4" + }, + "locked": { + "lastModified": 1741689219, + "narHash": "sha256-4yTzUL1f/KjiHJqKQJdvv1vVUla1/VaxawX/kV0YF6w=", + "owner": "notashelf", + "repo": "nvf", + "rev": "bafa6cbf84970e03c40e22e80fff32f077ef741c", + "type": "github" + }, + "original": { + "owner": "notashelf", + "repo": "nvf", + "type": "github" + } + }, "pre-commit-hooks": { "inputs": { "flake-compat": "flake-compat", @@ -839,11 +984,34 @@ "hyprland": "hyprland", "nixpkgs": "nixpkgs_2", "nixvim": "nixvim", + "nvf": "nvf", "stylix": "stylix", "yazi": "yazi" } }, "rust-overlay": { + "inputs": { + "nixpkgs": [ + "nvf", + "nil", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1731983527, + "narHash": "sha256-JECaBgC0pQ91Hq3W4unH6K9to8s2Zl2sPNu7bLOv4ek=", + "owner": "oxalica", + "repo": "rust-overlay", + "rev": "71287228d96e9568e1e70c6bbfa3f992d145947b", + "type": "github" + }, + "original": { + "owner": "oxalica", + "repo": "rust-overlay", + "type": "github" + } + }, + "rust-overlay_2": { "inputs": { "nixpkgs": [ "yazi", @@ -872,13 +1040,13 @@ "base16-vim": "base16-vim", "firefox-gnome-theme": "firefox-gnome-theme", "flake-compat": "flake-compat_2", - "flake-utils": "flake-utils_2", + "flake-utils": "flake-utils_3", "git-hooks": "git-hooks", "gnome-shell": "gnome-shell", "home-manager": "home-manager_2", - "nixpkgs": "nixpkgs_3", + "nixpkgs": "nixpkgs_4", "nur": "nur", - "systems": "systems_3", + "systems": "systems_5", "tinted-foot": "tinted-foot", "tinted-kitty": "tinted-kitty", "tinted-schemes": "tinted-schemes", @@ -959,6 +1127,36 @@ "type": "github" } }, + "systems_5": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, + "systems_6": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "tinted-foot": { "flake": false, "locked": { @@ -1106,9 +1304,9 @@ }, "yazi": { "inputs": { - "flake-utils": "flake-utils_3", - "nixpkgs": "nixpkgs_4", - "rust-overlay": "rust-overlay" + "flake-utils": "flake-utils_4", + "nixpkgs": "nixpkgs_5", + "rust-overlay": "rust-overlay_2" }, "locked": { "lastModified": 1741258453, diff --git a/flake.nix b/flake.nix index 2ef9c28..2bfad25 100644 --- a/flake.nix +++ b/flake.nix @@ -47,6 +47,7 @@ yazi.url = "github:sxyazi/yazi"; + nvf.url = "github:notashelf/nvf"; nixvim.url = "github:nix-community/nixvim"; nixvim.inputs.nixpkgs.follows = "nixpkgs"; diff --git a/users/modules/programs/nvf.nix b/users/modules/programs/nvf.nix new file mode 100644 index 0000000..dee13a5 --- /dev/null +++ b/users/modules/programs/nvf.nix @@ -0,0 +1,47 @@ +{ inputs, ... }: { + imports = [ + inputs.nvf.homeManagerModules.default + ]; + + programs.nvf = { + enable = true; + + settings.vim = { + options = { + # Indentation + autoindent = true; + smartindent = true; + expandtab = true; + smarttab = true; + wrap = false; + shiftwidth = 2; + tabstop = 2; + foldlevel = 1000; # Open all folds by default + + # Search + hlsearch = true; + ignorecase = true; + incsearch = true; + smartcase = true; # case-sensitive if search contains uppercase + + # Visual + number = true; + relativenumber = true; + cursorline = true; + visualbell = true; + termguicolors = true; + + # Input + backspace = "indent,eol,start"; + }; + keymaps = [ + { + key = "gf"; + mode = "n"; + action = ":cd %:p:h:e "; + silent = true; + } + ]; + }; + }; +} diff --git a/users/modules/sh.nix b/users/modules/sh.nix index 50005d2..0be6b17 100644 --- a/users/modules/sh.nix +++ b/users/modules/sh.nix @@ -6,7 +6,7 @@ ./programs/direnv.nix ./programs/fzf.nix ./programs/git.nix - ./programs/nixvim.nix + ./programs/nvf.nix ./programs/starship.nix ./programs/tealdeer.nix ./programs/tmux.nix