diff --git a/nix/flake.lock b/nix/flake.lock index be4dbd2b..9e3b8b98 100644 --- a/nix/flake.lock +++ b/nix/flake.lock @@ -26,16 +26,16 @@ "brew-src": { "flake": false, "locked": { - "lastModified": 1705326576, - "narHash": "sha256-9PvMgHgdbpb5vBO8fHCRufodR731ynzGMF9+68vKWck=", + "lastModified": 1711985568, + "narHash": "sha256-VLeP9HGQwfkiuHDp648PXGCkogr3ktYm0q9Yj+i0lGQ=", "owner": "Homebrew", "repo": "brew", - "rev": "1c612baa096c69f2fcb221c74e6f5b9979efdcee", + "rev": "bd1155be8f50998429a795c15a69c8fe75250510", "type": "github" }, "original": { "owner": "Homebrew", - "ref": "4.2.4", + "ref": "4.2.16", "repo": "brew", "type": "github" } @@ -47,11 +47,11 @@ ] }, "locked": { - "lastModified": 1709529951, - "narHash": "sha256-KVqN0Dvf4bg87XYQCHdd1kuJkjA23y5wlTTSOnilLIU=", + "lastModified": 1713946171, + "narHash": "sha256-lc75rgRQLdp4Dzogv5cfqOg6qYc5Rp83oedF2t0kDp8=", "owner": "LnL7", "repo": "nix-darwin", - "rev": "e7d7a7f0c5a184c67b6bff56f95436d83d05fba5", + "rev": "230a197063de9287128e2c68a7a4b0cd7d0b50a7", "type": "github" }, "original": { @@ -101,7 +101,7 @@ }, "flake-utils": { "inputs": { - "systems": "systems_4" + "systems": "systems_6" }, "locked": { "lastModified": 1687709756, @@ -137,7 +137,7 @@ }, "flake-utils_2": { "inputs": { - "systems": "systems_5" + "systems": "systems_7" }, "locked": { "lastModified": 1694529238, @@ -176,11 +176,11 @@ ] }, "locked": { - "lastModified": 1709485962, - "narHash": "sha256-rmFB4uE10+LJbcVE4ePgiuHOBlUIjQOeZt4VQVJTU8M=", + "lastModified": 1715077503, + "narHash": "sha256-AfHQshzLQfUqk/efMtdebHaQHqVntCMjhymQzVFLes0=", "owner": "nix-community", "repo": "home-manager", - "rev": "d579633ff9915a8f4058d5c439281097e92380a8", + "rev": "6e277d9566de9976f47228dd8c580b97488734d4", "type": "github" }, "original": { @@ -193,11 +193,11 @@ "homebrew-cask": { "flake": false, "locked": { - "lastModified": 1709524024, - "narHash": "sha256-WNB/1h5mu0tTLBHfKBx01HQ882jSRVZbrWI//BKYGfc=", + "lastModified": 1715180254, + "narHash": "sha256-hXDLg//KH+hBUrOG3Mt8cF8ESa8N2dyExRNslRd6Y3g=", "owner": "homebrew", "repo": "homebrew-cask", - "rev": "422ef679484d2b684c00558268eb6944175207b2", + "rev": "38ca42d67507fd7b197024cc37fa63dc4ab27235", "type": "github" }, "original": { @@ -209,11 +209,11 @@ "homebrew-core": { "flake": false, "locked": { - "lastModified": 1709531328, - "narHash": "sha256-wtqwOBg5i3qsU2zbucOHwoO8osbvfkqKFNtXksxmSII=", + "lastModified": 1715180421, + "narHash": "sha256-pz7h2cqexGlV2M4N/dEQH3ZibY9z5KPa3Q9j/MMEv1k=", "owner": "homebrew", "repo": "homebrew-core", - "rev": "8f3d5c308d9ca2e2db8b73b38b2ef7fd54fc3e0a", + "rev": "6e9c72974023fe8c5799ca8a70f83def3066d1ec", "type": "github" }, "original": { @@ -222,45 +222,52 @@ "type": "github" } }, - "hypridle": { + "hyprcursor": { "inputs": { - "hyprlang": "hyprlang", + "hyprlang": [ + "hyprland", + "hyprlang" + ], "nixpkgs": [ + "hyprland", "nixpkgs" ], - "systems": "systems" + "systems": [ + "hyprland", + "systems" + ] }, "locked": { - "lastModified": 1709223573, - "narHash": "sha256-xi7yscjt7t8tFcJDgHzxgW15Obcp7dEghG41f6tUmRc=", + "lastModified": 1713612213, + "narHash": "sha256-zJboXgWNpNhKyNF8H/3UYzWkx7w00TOCGKi3cwi+tsw=", "owner": "hyprwm", - "repo": "Hypridle", - "rev": "029f08805a2297966d295a52a6e62c3801926a52", + "repo": "hyprcursor", + "rev": "cab4746180f210a3c1dd3d53e45c510e309e90e1", "type": "github" }, "original": { "owner": "hyprwm", - "repo": "Hypridle", + "repo": "hyprcursor", "type": "github" } }, "hyprland": { "inputs": { - "hyprland-protocols": "hyprland-protocols", - "hyprlang": "hyprlang_2", + "hyprcursor": "hyprcursor", + "hyprlang": "hyprlang", + "hyprwayland-scanner": "hyprwayland-scanner", "nixpkgs": [ "nixpkgs" ], - "systems": "systems_2", - "wlroots": "wlroots", + "systems": "systems", "xdph": "xdph" }, "locked": { - "lastModified": 1709506828, - "narHash": "sha256-4gmgQvJZX5KM5i9bqGEOsHSBVRQhyfSF9BvvfpBFmQE=", + "lastModified": 1715178242, + "narHash": "sha256-xfRuK522ESDdg0aVG67SAh/vRdv2JIM+vUfvRMPu0XQ=", "owner": "hyprwm", "repo": "Hyprland", - "rev": "9d89b7109da9b58904caf7c53a7af4b6daed1696", + "rev": "d1ad490cdaaa97d5df83d28e86f02c96107ba142", "type": "github" }, "original": { @@ -273,19 +280,21 @@ "inputs": { "nixpkgs": [ "hyprland", + "xdph", "nixpkgs" ], "systems": [ "hyprland", + "xdph", "systems" ] }, "locked": { - "lastModified": 1691753796, - "narHash": "sha256-zOEwiWoXk3j3+EoF3ySUJmberFewWlagvewDRuWYAso=", + "lastModified": 1714869498, + "narHash": "sha256-vbLVOWvQqo4n1yvkg/Q70VTlPbMmTiCQfNTgcWDCfJM=", "owner": "hyprwm", "repo": "hyprland-protocols", - "rev": "0c2ce70625cb30aef199cb388f99e19a61a6ce03", + "rev": "e06482e0e611130cd1929f75e8c1cf679e57d161", "type": "github" }, "original": { @@ -297,16 +306,20 @@ "hyprlang": { "inputs": { "nixpkgs": [ - "hypridle", + "hyprland", "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" ] }, "locked": { - "lastModified": 1708212860, - "narHash": "sha256-nW3Zrhh9RJcMTvOcXAaKADnJM/g6tDf3121lJtTHnYo=", + "lastModified": 1713121246, + "narHash": "sha256-502X0Q0fhN6tJK7iEUA8CghONKSatW/Mqj4Wappd++0=", "owner": "hyprwm", "repo": "hyprlang", - "rev": "11d5ccda071c153dfdc18ef65338956a51cef96a", + "rev": "78fcaa27ae9e1d782faa3ff06c8ea55ddce63706", "type": "github" }, "original": { @@ -318,20 +331,17 @@ "hyprlang_2": { "inputs": { "nixpkgs": [ - "hyprland", + "hyprlock", "nixpkgs" ], - "systems": [ - "hyprland", - "systems" - ] + "systems": "systems_2" }, "locked": { - "lastModified": 1708787654, - "narHash": "sha256-7ACgM3ZuAhPqurXHUvR2nWMRcnmzGGPjLK6q4DSTelI=", + "lastModified": 1713121246, + "narHash": "sha256-502X0Q0fhN6tJK7iEUA8CghONKSatW/Mqj4Wappd++0=", "owner": "hyprwm", "repo": "hyprlang", - "rev": "0fce791ba2334aca183f2ed42399518947550d0d", + "rev": "78fcaa27ae9e1d782faa3ff06c8ea55ddce63706", "type": "github" }, "original": { @@ -342,17 +352,15 @@ }, "hyprlang_3": { "inputs": { - "nixpkgs": [ - "hyprlock", - "nixpkgs" - ] + "nixpkgs": "nixpkgs", + "systems": "systems_4" }, "locked": { - "lastModified": 1708212860, - "narHash": "sha256-nW3Zrhh9RJcMTvOcXAaKADnJM/g6tDf3121lJtTHnYo=", + "lastModified": 1713121246, + "narHash": "sha256-502X0Q0fhN6tJK7iEUA8CghONKSatW/Mqj4Wappd++0=", "owner": "hyprwm", "repo": "hyprlang", - "rev": "11d5ccda071c153dfdc18ef65338956a51cef96a", + "rev": "78fcaa27ae9e1d782faa3ff06c8ea55ddce63706", "type": "github" }, "original": { @@ -363,18 +371,18 @@ }, "hyprlock": { "inputs": { - "hyprlang": "hyprlang_3", + "hyprlang": "hyprlang_2", "nixpkgs": [ "nixpkgs" ], "systems": "systems_3" }, "locked": { - "lastModified": 1709517267, - "narHash": "sha256-t15sJ0yi0Snv4TP2dmXP71lcmNHDxq6yx9hDhjNuzAk=", + "lastModified": 1714843107, + "narHash": "sha256-89WxndRGO3CGuWE5XCaHKnsV3IKBRdOWqScp6o8enT4=", "owner": "hyprwm", "repo": "Hyprlock", - "rev": "49ef1d306c92bbfef057272ae0bdefe8aea8d0c7", + "rev": "c87af3aa1f6e6bd06cffaabcc400bd45e26d565a", "type": "github" }, "original": { @@ -383,9 +391,56 @@ "type": "github" } }, + "hyprpaper": { + "inputs": { + "hyprlang": "hyprlang_3", + "nixpkgs": [ + "nixpkgs" + ], + "systems": "systems_5" + }, + "locked": { + "lastModified": 1714910693, + "narHash": "sha256-kkgjq8ZCnxYgqPX7O2kUHdzBm08bRlESCukSzE7XE2g=", + "owner": "hyprwm", + "repo": "hyprpaper", + "rev": "1e1fc79d84c35a673c52cfa0be1ea9df1aed8442", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprpaper", + "type": "github" + } + }, + "hyprwayland-scanner": { + "inputs": { + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "systems": [ + "hyprland", + "systems" + ] + }, + "locked": { + "lastModified": 1715090986, + "narHash": "sha256-FXpQvmS9R7alwZ47XK5UIcAbC9YKSxc0+GOVYqwa0jM=", + "owner": "hyprwm", + "repo": "hyprwayland-scanner", + "rev": "94e32ec37e7215b16d5c1b41b1773ff6742e704b", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprwayland-scanner", + "type": "github" + } + }, "nix-darwin": { "inputs": { - "nixpkgs": "nixpkgs" + "nixpkgs": "nixpkgs_2" }, "locked": { "lastModified": 1688307440, @@ -406,14 +461,14 @@ "brew-src": "brew-src", "flake-utils": "flake-utils", "nix-darwin": "nix-darwin", - "nixpkgs": "nixpkgs_2" + "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1705952034, - "narHash": "sha256-H0nk8Gk8kPw4yi2WwOTsSHgPrzSwyNgWEYHk10IJwfc=", + "lastModified": 1712182779, + "narHash": "sha256-DchWIKi4c7Jl7CJXVzOxVetxy+SqnlAY3QuUNy8z+aE=", "owner": "zhaofengli-wip", "repo": "nix-homebrew", - "rev": "40f5ee46b58e7c5f1927e2c5a583dc3d7e571ed9", + "rev": "445f7989e096fb90902eed4256b04d8b57c8b358", "type": "github" }, "original": { @@ -423,6 +478,22 @@ } }, "nixpkgs": { + "locked": { + "lastModified": 1708475490, + "narHash": "sha256-g1v0TsWBQPX97ziznfJdWhgMyMGtoBFs102xSYO4syU=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "0e74ca98a74bc7270d28838369593635a5db3260", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_2": { "locked": { "lastModified": 1687274257, "narHash": "sha256-TutzPriQcZ8FghDhEolnHcYU2oHIG5XWF+/SUBNnAOE=", @@ -435,7 +506,7 @@ "type": "indirect" } }, - "nixpkgs_2": { + "nixpkgs_3": { "locked": { "lastModified": 1688049487, "narHash": "sha256-100g4iaKC9MalDjUW9iN6Jl/OocTDtXdeAj7pEGIRh4=", @@ -451,13 +522,13 @@ "type": "github" } }, - "nixpkgs_3": { + "nixpkgs_4": { "locked": { - "lastModified": 1709237383, - "narHash": "sha256-cy6ArO4k5qTx+l5o+0mL9f5fa86tYUX3ozE1S+Txlds=", + "lastModified": 1714906307, + "narHash": "sha256-UlRZtrCnhPFSJlDQE7M0eyhgvuuHBTe1eJ9N9AQlJQ0=", "owner": "nixos", "repo": "nixpkgs", - "rev": "1536926ef5621b09bba54035ae2bb6d806d72ac8", + "rev": "25865a40d14b3f9cf19f19b924e2ab4069b09588", "type": "github" }, "original": { @@ -467,6 +538,19 @@ "type": "github" } }, + "nixpkgs_5": { + "locked": { + "lastModified": 1711333969, + "narHash": "sha256-5PiWGn10DQjMZee5NXzeA6ccsv60iLu+Xtw+mfvkUAs=", + "path": "/nix/store/161i7cxz0w0raqmrj88z86cj66babp9z-source", + "rev": "57e6b3a9e4ebec5aa121188301f04a6b8c354c9b", + "type": "path" + }, + "original": { + "id": "nixpkgs", + "type": "indirect" + } + }, "root": { "inputs": { "alejandra": "alejandra", @@ -474,12 +558,13 @@ "home-manager": "home-manager", "homebrew-cask": "homebrew-cask", "homebrew-core": "homebrew-core", - "hypridle": "hypridle", "hyprland": "hyprland", "hyprlock": "hyprlock", + "hyprpaper": "hyprpaper", "nix-homebrew": "nix-homebrew", - "nixpkgs": "nixpkgs_3", - "snowfall-lib": "snowfall-lib" + "nixpkgs": "nixpkgs_4", + "snowfall-lib": "snowfall-lib", + "wallpapers-nix": "wallpapers-nix" } }, "rust-analyzer-src": { @@ -508,11 +593,11 @@ ] }, "locked": { - "lastModified": 1696432959, - "narHash": "sha256-oJQZv2MYyJaVyVJY5IeevzqpGvMGKu5pZcCCJvb+xjc=", + "lastModified": 1715107207, + "narHash": "sha256-Lq38yoHyY8t+zkVdpYlr2Fonb89Id4o5zgIfz8KCB8Y=", "owner": "snowfallorg", "repo": "lib", - "rev": "92803a029b5314d4436a8d9311d8707b71d9f0b6", + "rev": "299b24861ebfa98a5b586dfa9ec8138ab6a4c626", "type": "github" }, "original": { @@ -567,6 +652,36 @@ } }, "systems_4": { + "locked": { + "lastModified": 1689347949, + "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", + "owner": "nix-systems", + "repo": "default-linux", + "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default-linux", + "type": "github" + } + }, + "systems_5": { + "locked": { + "lastModified": 1689347949, + "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", + "owner": "nix-systems", + "repo": "default-linux", + "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default-linux", + "type": "github" + } + }, + "systems_6": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", @@ -581,7 +696,7 @@ "type": "github" } }, - "systems_5": { + "systems_7": { "locked": { "lastModified": 1681028828, "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", @@ -596,31 +711,27 @@ "type": "github" } }, - "wlroots": { - "flake": false, + "wallpapers-nix": { + "inputs": { + "nixpkgs": "nixpkgs_5" + }, "locked": { - "host": "gitlab.freedesktop.org", - "lastModified": 1708558866, - "narHash": "sha256-Mz6hCtommq7RQfcPnxLINigO4RYSNt23HeJHC6mVmWI=", - "owner": "wlroots", - "repo": "wlroots", - "rev": "0cb091f1a2d345f37d2ee445f4ffd04f7f4ec9e5", - "type": "gitlab" + "lastModified": 1712154137, + "narHash": "sha256-lVJq5t53BJJaAAPiHh++F38UjwVTem3Vy7ajVNaxsU0=", + "owner": "sbulav", + "repo": "wallpapers-nix", + "rev": "8a4a30599ac2f452bb2e2717cd5b815d1a56f036", + "type": "github" }, "original": { - "host": "gitlab.freedesktop.org", - "owner": "wlroots", - "repo": "wlroots", - "rev": "0cb091f1a2d345f37d2ee445f4ffd04f7f4ec9e5", - "type": "gitlab" + "owner": "sbulav", + "repo": "wallpapers-nix", + "type": "github" } }, "xdph": { "inputs": { - "hyprland-protocols": [ - "hyprland", - "hyprland-protocols" - ], + "hyprland-protocols": "hyprland-protocols", "hyprlang": [ "hyprland", "hyprlang" @@ -635,11 +746,11 @@ ] }, "locked": { - "lastModified": 1708696469, - "narHash": "sha256-shh5wmpeYy3MmsBfkm4f76yPsBDGk6OLYRVG+ARy2F0=", + "lastModified": 1714060055, + "narHash": "sha256-j43TS9wv9luaAlpxcxw0sjxkbcc2mGANVR2RYgo3RCw=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "1b713911c2f12b96c2574474686e4027ac4bf826", + "rev": "0fe840441e43da12cd7865ed9aa8cdc35a8da85a", "type": "github" }, "original": { diff --git a/nix/flake.nix b/nix/flake.nix index 4c91fa1c..76a6b16a 100644 --- a/nix/flake.nix +++ b/nix/flake.nix @@ -25,10 +25,6 @@ url = "github:homebrew/homebrew-cask"; flake = false; }; - hypridle = { - url = "github:hyprwm/Hypridle"; - inputs.nixpkgs.follows = "nixpkgs"; - }; hyprlock = { url = "github:hyprwm/Hyprlock"; inputs.nixpkgs.follows = "nixpkgs"; @@ -37,6 +33,10 @@ url = "github:hyprwm/Hyprland"; inputs.nixpkgs.follows = "nixpkgs"; }; + hyprpaper = { + url = "github:hyprwm/hyprpaper"; + inputs.nixpkgs.follows = "nixpkgs"; + }; # Home manager home-manager = { @@ -48,6 +48,10 @@ url = "github:kamadorueda/alejandra/3.0.0"; inputs.nixpkgs.follows = "nixpkgs"; }; + + wallpapers-nix = { + url = "github:sbulav/wallpapers-nix"; + }; }; outputs = inputs: let @@ -76,7 +80,5 @@ overlays = with inputs; []; systems.modules.nixos = with inputs; []; - - templates = import ./templates {}; }; } diff --git a/nix/homes/aarch64-darwin/sab@mbp13/default.nix b/nix/homes/aarch64-darwin/sab@mbp13/default.nix index 10f0e884..f92a9800 100644 --- a/nix/homes/aarch64-darwin/sab@mbp13/default.nix +++ b/nix/homes/aarch64-darwin/sab@mbp13/default.nix @@ -14,8 +14,10 @@ with lib.custom; { }; cli-apps = { - home-manager = enabled; + argocd = enabled; atuin = enabled; + bottom = enabled; + home-manager = enabled; neovim = enabled; yazi = enabled; }; diff --git a/nix/homes/x86_64-linux/sab@nz/default.nix b/nix/homes/x86_64-linux/sab@nz/default.nix index 98c3b683..2559b42d 100644 --- a/nix/homes/x86_64-linux/sab@nz/default.nix +++ b/nix/homes/x86_64-linux/sab@nz/default.nix @@ -1,12 +1,13 @@ { lib, - pkgs, config, - osConfig ? {}, - format ? "unknown", + inputs, + pkgs, ... }: -with lib.custom; { +with lib.custom; let + wallpapers = inputs.wallpapers-nix.packages.${pkgs.system}.catppuccin; +in { custom = { user = { enable = true; @@ -26,14 +27,17 @@ with lib.custom; { wlogout = enabled; hyprlock = disabled; wezterm = enabled; + wallpaper = "${wallpapers}/share/wallpapers/catppuccin/bench.png"; }; }; cli-apps = { + argocd = enabled; atuin = enabled; - yazi = enabled; - home-manager = enabled; + bottom = enabled; fastfetch = enabled; + home-manager = enabled; + yazi = enabled; }; tools = { gh = enabled; @@ -45,4 +49,5 @@ with lib.custom; { vault = enabled; }; }; + home.stateVersion = "23.11"; } diff --git a/nix/modules/darwin/nix/default.nix b/nix/modules/darwin/nix/default.nix index 5ad62eee..c47df56b 100644 --- a/nix/modules/darwin/nix/default.nix +++ b/nix/modules/darwin/nix/default.nix @@ -17,7 +17,7 @@ in { config = mkIf cfg.enable { environment.systemPackages = with pkgs; [ deploy-rs - nixfmt + nixfmt-rfc-style nix-index nix-prefetch-git nvd diff --git a/nix/modules/darwin/tools/homebrew/default.nix b/nix/modules/darwin/tools/homebrew/default.nix index 8577efb7..c5b45dd0 100644 --- a/nix/modules/darwin/tools/homebrew/default.nix +++ b/nix/modules/darwin/tools/homebrew/default.nix @@ -36,6 +36,7 @@ in { casks = [ "raycast" "vlc" + "xnviewmp" ]; # taps = [ diff --git a/nix/modules/darwin/tools/lsp/default.nix b/nix/modules/darwin/tools/lsp/default.nix index 6920eef4..b26c804a 100644 --- a/nix/modules/darwin/tools/lsp/default.nix +++ b/nix/modules/darwin/tools/lsp/default.nix @@ -17,7 +17,7 @@ in { environment.systemPackages = with pkgs; [ lua-language-server # LSP for lua marksman # LSP for markdown - rnix-lsp # LSP for nix + nil # LSP for nix tree-sitter yamllint nodejs_21 # Note for LSP servers diff --git a/nix/modules/home/cli-apps/argocd/default.nix b/nix/modules/home/cli-apps/argocd/default.nix new file mode 100644 index 00000000..263c3f11 --- /dev/null +++ b/nix/modules/home/cli-apps/argocd/default.nix @@ -0,0 +1,20 @@ +{ + lib, + config, + pkgs, + ... +}: let + inherit (lib) mkEnableOption mkIf; + + cfg = config.custom.cli-apps.argocd; +in { + options.custom.cli-apps.argocd = { + enable = mkEnableOption "argocd"; + }; + + config = mkIf cfg.enable { + home.packages = with pkgs; [ + argocd + ]; + }; +} diff --git a/nix/modules/home/cli-apps/bottom/default.nix b/nix/modules/home/cli-apps/bottom/default.nix new file mode 100644 index 00000000..ae0d144a --- /dev/null +++ b/nix/modules/home/cli-apps/bottom/default.nix @@ -0,0 +1,20 @@ +{ + lib, + config, + pkgs, + ... +}: let + inherit (lib) mkEnableOption mkIf; + + cfg = config.custom.cli-apps.bottom; +in { + options.custom.cli-apps.bottom = { + enable = mkEnableOption "bottom"; + }; + + config = mkIf cfg.enable { + home = { + packages = with pkgs; [bottom]; + }; + }; +} diff --git a/nix/modules/home/cli-apps/yazi/configs/keymap.toml b/nix/modules/home/cli-apps/yazi/configs/keymap.toml index fac24e94..708ba7e2 100644 --- a/nix/modules/home/cli-apps/yazi/configs/keymap.toml +++ b/nix/modules/home/cli-apps/yazi/configs/keymap.toml @@ -1,238 +1,238 @@ [manager] keymap = [ - { on = [ "" ], exec = "escape", desc = "Exit visual mode, clear selected, or cancel search" }, - { on = [ "" ], exec = "quit", desc = "Exit the process" }, - { on = [ "q" ], exec = "quit", desc = "Exit the process" }, - { on = [ "Q" ], exec = "quit --no-cwd-file", desc = "Exit the process without writing cwd-file" }, - { on = [ "" ], exec = "close", desc = "Close the current tab, or quit if it is last tab" }, - { on = [ "" ], exec = "suspend", desc = "Suspend the process" }, + { on = [ "" ], run = "escape", desc = "Exit visual mode, clear selected, or cancel search" }, + { on = [ "" ], run = "quit", desc = "Exit the process" }, + { on = [ "q" ], run = "quit", desc = "Exit the process" }, + { on = [ "Q" ], run = "quit --no-cwd-file", desc = "Exit the process without writing cwd-file" }, + { on = [ "" ], run = "close", desc = "Close the current tab, or quit if it is last tab" }, + { on = [ "" ], run = "suspend", desc = "Suspend the process" }, # Navigation - { on = [ "k" ], exec = "arrow -1", desc = "Move cursor up" }, - { on = [ "j" ], exec = "arrow 1", desc = "Move cursor down" }, + { on = [ "k" ], run = "arrow -1", desc = "Move cursor up" }, + { on = [ "j" ], run = "arrow 1", desc = "Move cursor down" }, - { on = [ "K" ], exec = "arrow -5", desc = "Move cursor up 5 lines" }, - { on = [ "J" ], exec = "arrow 5", desc = "Move cursor down 5 lines" }, - { on = [ "" ], exec = "arrow -50%", desc = "Move cursor up half page" }, - { on = [ "" ], exec = "arrow 50%", desc = "Move cursor down half page" }, - { on = [ "" ], exec = "arrow -100%", desc = "Move cursor up one page" }, - { on = [ "" ], exec = "arrow 100%", desc = "Move cursor down one page" }, + { on = [ "K" ], run = "arrow -5", desc = "Move cursor up 5 lines" }, + { on = [ "J" ], run = "arrow 5", desc = "Move cursor down 5 lines" }, + { on = [ "" ], run = "arrow -50%", desc = "Move cursor up half page" }, + { on = [ "" ], run = "arrow 50%", desc = "Move cursor down half page" }, + { on = [ "" ], run = "arrow -100%", desc = "Move cursor up one page" }, + { on = [ "" ], run = "arrow 100%", desc = "Move cursor down one page" }, - { on = [ "" ], exec = "arrow -50%", desc = "Move cursor up half page" }, - { on = [ "" ], exec = "arrow 50%", desc = "Move cursor down half page" }, - { on = [ "" ], exec = "arrow -100%", desc = "Move cursor up one page" }, - { on = [ "" ], exec = "arrow 100%", desc = "Move cursor down one page" }, + { on = [ "" ], run = "arrow -50%", desc = "Move cursor up half page" }, + { on = [ "" ], run = "arrow 50%", desc = "Move cursor down half page" }, + { on = [ "" ], run = "arrow -100%", desc = "Move cursor up one page" }, + { on = [ "" ], run = "arrow 100%", desc = "Move cursor down one page" }, - { on = [ "h" ], exec = "leave", desc = "Go back to the parent directory" }, - { on = [ "l" ], exec = "enter", desc = "Enter the child directory" }, + { on = [ "h" ], run = "leave", desc = "Go back to the parent directory" }, + { on = [ "l" ], run = "enter", desc = "Enter the child directory" }, - { on = [ "H" ], exec = "back", desc = "Go back to the previous directory" }, - { on = [ "L" ], exec = "forward", desc = "Go forward to the next directory" }, + { on = [ "H" ], run = "back", desc = "Go back to the previous directory" }, + { on = [ "L" ], run = "forward", desc = "Go forward to the next directory" }, - { on = [ "" ], exec = "peek -5", desc = "Peek up 5 units in the preview" }, - { on = [ "" ], exec = "peek 5", desc = "Peek down 5 units in the preview" }, + { on = [ "" ], run = "peek -5", desc = "Peek up 5 units in the preview" }, + { on = [ "" ], run = "peek 5", desc = "Peek down 5 units in the preview" }, - { on = [ "" ], exec = "arrow -1", desc = "Move cursor up" }, - { on = [ "" ], exec = "arrow 1", desc = "Move cursor down" }, - { on = [ "" ], exec = "leave", desc = "Go back to the parent directory" }, - { on = [ "" ], exec = "enter", desc = "Enter the child directory" }, + { on = [ "" ], run = "arrow -1", desc = "Move cursor up" }, + { on = [ "" ], run = "arrow 1", desc = "Move cursor down" }, + { on = [ "" ], run = "leave", desc = "Go back to the parent directory" }, + { on = [ "" ], run = "enter", desc = "Enter the child directory" }, - { on = [ "g", "g" ], exec = "arrow -99999999", desc = "Move cursor to the top" }, - { on = [ "G" ], exec = "arrow 99999999", desc = "Move cursor to the bottom" }, + { on = [ "g", "g" ], run = "arrow -99999999", desc = "Move cursor to the top" }, + { on = [ "G" ], run = "arrow 99999999", desc = "Move cursor to the bottom" }, # Selection - { on = [ "" ], exec = [ "select --state=none", "arrow 1" ], desc = "Toggle the current selection state" }, - { on = [ "v" ], exec = "visual_mode", desc = "Enter visual mode (selection mode)" }, - { on = [ "V" ], exec = "visual_mode --unset", desc = "Enter visual mode (unset mode)" }, - { on = [ "" ], exec = "select_all --state=true", desc = "Select all files" }, - { on = [ "" ], exec = "select_all --state=none", desc = "Inverse selection of all files" }, + { on = [ "" ], run = [ "select --state=none", "arrow 1" ], desc = "Toggle the current selection state" }, + { on = [ "v" ], run = "visual_mode", desc = "Enter visual mode (selection mode)" }, + { on = [ "V" ], run = "visual_mode --unset", desc = "Enter visual mode (unset mode)" }, + { on = [ "" ], run = "select_all --state=true", desc = "Select all files" }, + { on = [ "" ], run = "select_all --state=none", desc = "Inverse selection of all files" }, # Operation - { on = [ "o" ], exec = "open", desc = "Open the selected files" }, - { on = [ "O" ], exec = "open --interactive", desc = "Open the selected files interactively" }, - { on = [ "" ], exec = "open", desc = "Open the selected files" }, - { on = [ "" ], exec = "open --interactive", desc = "Open the selected files interactively" }, # It's cool if you're using a terminal that supports CSI u - { on = [ "y" ], exec = "yank", desc = "Copy the selected files" }, - { on = [ "x" ], exec = "yank --cut", desc = "Cut the selected files" }, - { on = [ "p" ], exec = "paste", desc = "Paste the files" }, - { on = [ "P" ], exec = "paste --force", desc = "Paste the files (overwrite if the destination exists)" }, - { on = [ "-" ], exec = "link", desc = "Symlink the absolute path of files" }, - { on = [ "_" ], exec = "link --relative", desc = "Symlink the relative path of files" }, - { on = [ "d" ], exec = "remove", desc = "Move the files to the trash" }, - { on = [ "D" ], exec = "remove --permanently", desc = "Permanently delete the files" }, - { on = [ "a" ], exec = "create", desc = "Create a file or directory (ends with / for directories)" }, - { on = [ "r" ], exec = "rename", desc = "Rename a file or directory" }, - { on = [ "," ], exec = "shell", desc = "Run a shell command" }, - { on = [ ":" ], exec = "shell --block", desc = "Run a shell command (block the UI until the command finishes)" }, - { on = [ "." ], exec = "hidden toggle", desc = "Toggle the visibility of hidden files" }, - { on = [ "s" ], exec = "search fd", desc = "Search files by name using fd" }, - { on = [ "S" ], exec = "search rg", desc = "Search files by content using ripgrep" }, - { on = [ "" ], exec = "search none", desc = "Cancel the ongoing search" }, - { on = [ "z" ], exec = "jump zoxide", desc = "Jump to a directory using zoxide" }, - { on = [ "Z" ], exec = "jump fzf", desc = "Jump to a directory, or reveal a file using fzf" }, + { on = [ "o" ], run = "open", desc = "Open the selected files" }, + { on = [ "O" ], run = "open --interactive", desc = "Open the selected files interactively" }, + { on = [ "" ], run = "open", desc = "Open the selected files" }, + { on = [ "" ], run = "open --interactive", desc = "Open the selected files interactively" }, # It's cool if you're using a terminal that supports CSI u + { on = [ "y" ], run = "yank", desc = "Copy the selected files" }, + { on = [ "x" ], run = "yank --cut", desc = "Cut the selected files" }, + { on = [ "p" ], run = "paste", desc = "Paste the files" }, + { on = [ "P" ], run = "paste --force", desc = "Paste the files (overwrite if the destination exists)" }, + { on = [ "-" ], run = "link", desc = "Symlink the absolute path of files" }, + { on = [ "_" ], run = "link --relative", desc = "Symlink the relative path of files" }, + { on = [ "d" ], run = "remove", desc = "Move the files to the trash" }, + { on = [ "D" ], run = "remove --permanently", desc = "Permanently delete the files" }, + { on = [ "a" ], run = "create", desc = "Create a file or directory (ends with / for directories)" }, + { on = [ "r" ], run = "rename", desc = "Rename a file or directory" }, + { on = [ "," ], run = "shell", desc = "Run a shell command" }, + { on = [ ":" ], run = "shell --block", desc = "Run a shell command (block the UI until the command finishes)" }, + { on = [ "." ], run = "hidden toggle", desc = "Toggle the visibility of hidden files" }, + { on = [ "s" ], run = "search fd", desc = "Search files by name using fd" }, + { on = [ "S" ], run = "search rg", desc = "Search files by content using ripgrep" }, + { on = [ "" ], run = "search none", desc = "Cancel the ongoing search" }, + { on = [ "z" ], run = "jump zoxide", desc = "Jump to a directory using zoxide" }, + { on = [ "Z" ], run = "jump fzf", desc = "Jump to a directory, or reveal a file using fzf" }, # Copy - { on = [ "c", "c" ], exec = "copy path", desc = "Copy the absolute path" }, - { on = [ "c", "d" ], exec = "copy dirname", desc = "Copy the path of the parent directory" }, - { on = [ "c", "f" ], exec = "copy filename", desc = "Copy the name of the file" }, - { on = [ "c", "n" ], exec = "copy name_without_ext", desc = "Copy the name of the file without the extension" }, + { on = [ "c", "c" ], run = "copy path", desc = "Copy the absolute path" }, + { on = [ "c", "d" ], run = "copy dirname", desc = "Copy the path of the parent directory" }, + { on = [ "c", "f" ], run = "copy filename", desc = "Copy the name of the file" }, + { on = [ "c", "n" ], run = "copy name_without_ext", desc = "Copy the name of the file without the extension" }, # Find - { on = [ "/" ], exec = "find --smart" }, - { on = [ "?" ], exec = "find --previous --smart" }, - { on = [ "n" ], exec = "find_arrow" }, - { on = [ "N" ], exec = "find_arrow --previous" }, + { on = [ "/" ], run = "find --smart" }, + { on = [ "?" ], run = "find --previous --smart" }, + { on = [ "n" ], run = "find_arrow" }, + { on = [ "N" ], run = "find_arrow --previous" }, # Sorting - { on = [ ",", "a" ], exec = "sort alphabetical --dir_first", desc = "Sort alphabetically" }, - { on = [ ",", "A" ], exec = "sort alphabetical --reverse --dir_first", desc = "Sort alphabetically (reverse)" }, - { on = [ ",", "c" ], exec = "sort created --dir_first", desc = "Sort by creation time" }, - { on = [ ",", "C" ], exec = "sort created --reverse --dir_first", desc = "Sort by creation time (reverse)" }, - { on = [ ",", "m" ], exec = "sort modified --dir_first", desc = "Sort by modified time" }, - { on = [ ",", "M" ], exec = "sort modified --reverse --dir_first", desc = "Sort by modified time (reverse)" }, - { on = [ ",", "n" ], exec = "sort natural --dir_first", desc = "Sort naturally" }, - { on = [ ",", "N" ], exec = "sort natural --reverse --dir_first", desc = "Sort naturally (reverse)" }, - { on = [ ",", "s" ], exec = "sort size --dir_first", desc = "Sort by size" }, - { on = [ ",", "S" ], exec = "sort size --reverse --dir_first", desc = "Sort by size (reverse)" }, + { on = [ ",", "a" ], run = "sort alphabetical --dir_first", desc = "Sort alphabetically" }, + { on = [ ",", "A" ], run = "sort alphabetical --reverse --dir_first", desc = "Sort alphabetically (reverse)" }, + { on = [ ",", "c" ], run = "sort created --dir_first", desc = "Sort by creation time" }, + { on = [ ",", "C" ], run = "sort created --reverse --dir_first", desc = "Sort by creation time (reverse)" }, + { on = [ ",", "m" ], run = "sort modified --dir_first", desc = "Sort by modified time" }, + { on = [ ",", "M" ], run = "sort modified --reverse --dir_first", desc = "Sort by modified time (reverse)" }, + { on = [ ",", "n" ], run = "sort natural --dir_first", desc = "Sort naturally" }, + { on = [ ",", "N" ], run = "sort natural --reverse --dir_first", desc = "Sort naturally (reverse)" }, + { on = [ ",", "s" ], run = "sort size --dir_first", desc = "Sort by size" }, + { on = [ ",", "S" ], run = "sort size --reverse --dir_first", desc = "Sort by size (reverse)" }, # Tabs - { on = [ "t" ], exec = "tab_create --current", desc = "Create a new tab using the current path" }, + { on = [ "t" ], run = "tab_create --current", desc = "Create a new tab using the current path" }, - { on = [ "1" ], exec = "tab_switch 0", desc = "Switch to the first tab" }, - { on = [ "2" ], exec = "tab_switch 1", desc = "Switch to the second tab" }, - { on = [ "3" ], exec = "tab_switch 2", desc = "Switch to the third tab" }, - { on = [ "4" ], exec = "tab_switch 3", desc = "Switch to the fourth tab" }, - { on = [ "5" ], exec = "tab_switch 4", desc = "Switch to the fifth tab" }, - { on = [ "6" ], exec = "tab_switch 5", desc = "Switch to the sixth tab" }, - { on = [ "7" ], exec = "tab_switch 6", desc = "Switch to the seventh tab" }, - { on = [ "8" ], exec = "tab_switch 7", desc = "Switch to the eighth tab" }, - { on = [ "9" ], exec = "tab_switch 8", desc = "Switch to the ninth tab" }, + { on = [ "1" ], run = "tab_switch 0", desc = "Switch to the first tab" }, + { on = [ "2" ], run = "tab_switch 1", desc = "Switch to the second tab" }, + { on = [ "3" ], run = "tab_switch 2", desc = "Switch to the third tab" }, + { on = [ "4" ], run = "tab_switch 3", desc = "Switch to the fourth tab" }, + { on = [ "5" ], run = "tab_switch 4", desc = "Switch to the fifth tab" }, + { on = [ "6" ], run = "tab_switch 5", desc = "Switch to the sixth tab" }, + { on = [ "7" ], run = "tab_switch 6", desc = "Switch to the seventh tab" }, + { on = [ "8" ], run = "tab_switch 7", desc = "Switch to the eighth tab" }, + { on = [ "9" ], run = "tab_switch 8", desc = "Switch to the ninth tab" }, - { on = [ "[" ], exec = "tab_switch -1 --relative", desc = "Switch to the previous tab" }, - { on = [ "]" ], exec = "tab_switch 1 --relative", desc = "Switch to the next tab" }, + { on = [ "[" ], run = "tab_switch -1 --relative", desc = "Switch to the previous tab" }, + { on = [ "]" ], run = "tab_switch 1 --relative", desc = "Switch to the next tab" }, - { on = [ "{" ], exec = "tab_swap -1", desc = "Swap the current tab with the previous tab" }, - { on = [ "}" ], exec = "tab_swap 1", desc = "Swap the current tab with the next tab" }, + { on = [ "{" ], run = "tab_swap -1", desc = "Swap the current tab with the previous tab" }, + { on = [ "}" ], run = "tab_swap 1", desc = "Swap the current tab with the next tab" }, # Tasks - { on = [ "w" ], exec = "tasks_show", desc = "Show the tasks manager" }, + { on = [ "w" ], run = "tasks_show", desc = "Show the tasks manager" }, # Goto - { on = [ "g", "h" ], exec = "cd ~", desc = "Go to the home directory" }, - { on = [ "g","d" ], exec = "cd ~/dotfiles", desc = "Go to the dotfiles directory" }, - { on = [ "g","n" ], exec = "cd ~/dotfiles/nix", desc = "Go to the nix directory" }, - { on = [ "g","c" ], exec = "cd ~/.config/", desc = "Go to the .config directory" }, + { on = [ "g", "h" ], run = "cd ~", desc = "Go to the home directory" }, + { on = [ "g","d" ], run = "cd ~/dotfiles", desc = "Go to the dotfiles directory" }, + { on = [ "g","n" ], run = "cd ~/dotfiles/nix", desc = "Go to the nix directory" }, + { on = [ "g","c" ], run = "cd ~/.config/", desc = "Go to the .config directory" }, # Help - { on = [ "~" ], exec = "help", desc = "Open help" }, + { on = [ "~" ], run = "help", desc = "Open help" }, ] [tasks] keymap = [ - { on = [ "" ], exec = "close", desc = "Hide the task manager" }, - { on = [ "" ], exec = "close", desc = "Hide the task manager" }, - { on = [ "w" ], exec = "close", desc = "Hide the task manager" }, + { on = [ "" ], run = "close", desc = "Hide the task manager" }, + { on = [ "" ], run = "close", desc = "Hide the task manager" }, + { on = [ "w" ], run = "close", desc = "Hide the task manager" }, - { on = [ "k" ], exec = "arrow -1", desc = "Move cursor up" }, - { on = [ "j" ], exec = "arrow 1", desc = "Move cursor down" }, + { on = [ "k" ], run = "arrow -1", desc = "Move cursor up" }, + { on = [ "j" ], run = "arrow 1", desc = "Move cursor down" }, - { on = [ "" ], exec = "arrow -1", desc = "Move cursor up" }, - { on = [ "" ], exec = "arrow 1", desc = "Move cursor down" }, + { on = [ "" ], run = "arrow -1", desc = "Move cursor up" }, + { on = [ "" ], run = "arrow 1", desc = "Move cursor down" }, - { on = [ "" ], exec = "inspect", desc = "Inspect the task" }, - { on = [ "x" ], exec = "cancel", desc = "Cancel the task" }, + { on = [ "" ], run = "inspect", desc = "Inspect the task" }, + { on = [ "x" ], run = "cancel", desc = "Cancel the task" }, - { on = [ "~" ], exec = "help", desc = "Open help" } + { on = [ "~" ], run = "help", desc = "Open help" } ] [select] keymap = [ - { on = [ "" ], exec = "close", desc = "Cancel selection" }, - { on = [ "" ], exec = "close", desc = "Cancel selection" }, - { on = [ "" ], exec = "close --submit", desc = "Submit the selection" }, + { on = [ "" ], run = "close", desc = "Cancel selection" }, + { on = [ "" ], run = "close", desc = "Cancel selection" }, + { on = [ "" ], run = "close --submit", desc = "Submit the selection" }, - { on = [ "k" ], exec = "arrow -1", desc = "Move cursor up" }, - { on = [ "j" ], exec = "arrow 1", desc = "Move cursor down" }, + { on = [ "k" ], run = "arrow -1", desc = "Move cursor up" }, + { on = [ "j" ], run = "arrow 1", desc = "Move cursor down" }, - { on = [ "K" ], exec = "arrow -5", desc = "Move cursor up 5 lines" }, - { on = [ "J" ], exec = "arrow 5", desc = "Move cursor down 5 lines" }, + { on = [ "K" ], run = "arrow -5", desc = "Move cursor up 5 lines" }, + { on = [ "J" ], run = "arrow 5", desc = "Move cursor down 5 lines" }, - { on = [ "" ], exec = "arrow -1", desc = "Move cursor up" }, - { on = [ "" ], exec = "arrow 1", desc = "Move cursor down" }, + { on = [ "" ], run = "arrow -1", desc = "Move cursor up" }, + { on = [ "" ], run = "arrow 1", desc = "Move cursor down" }, - { on = [ "~" ], exec = "help", desc = "Open help" } + { on = [ "~" ], run = "help", desc = "Open help" } ] [input] keymap = [ - { on = [ "" ], exec = "close", desc = "Cancel input" }, - { on = [ "" ], exec = "close --submit", desc = "Submit the input" }, - { on = [ "" ], exec = "escape", desc = "Go back the normal mode, or cancel input" }, - { on = [ "" ], exec = "backspace" }, + { on = [ "" ], run = "close", desc = "Cancel input" }, + { on = [ "" ], run = "close --submit", desc = "Submit the input" }, + { on = [ "" ], run = "escape", desc = "Go back the normal mode, or cancel input" }, + { on = [ "" ], run = "backspace" }, # Mode - { on = [ "i" ], exec = "insert", desc = "Enter insert mode" }, - { on = [ "a" ], exec = "insert --append", desc = "Enter append mode" }, - { on = [ "v" ], exec = "visual", desc = "Enter visual mode" }, - { on = [ "V" ], exec = [ "move -999", "visual", "move 999" ], desc = "Enter visual mode and select all" }, + { on = [ "i" ], run = "insert", desc = "Enter insert mode" }, + { on = [ "a" ], run = "insert --append", desc = "Enter append mode" }, + { on = [ "v" ], run = "visual", desc = "Enter visual mode" }, + { on = [ "V" ], run = [ "move -999", "visual", "move 999" ], desc = "Enter visual mode and select all" }, # Navigation - { on = [ "h" ], exec = "move -1", desc = "Move cursor left" }, - { on = [ "l" ], exec = "move 1", desc = "Move cursor right" }, + { on = [ "h" ], run = "move -1", desc = "Move cursor left" }, + { on = [ "l" ], run = "move 1", desc = "Move cursor right" }, - { on = [ "0" ], exec = "move -999", desc = "Move to the BOL" }, - { on = [ "$" ], exec = "move 999", desc = "Move to the EOL" }, - { on = [ "I" ], exec = [ "move -999", "insert" ], desc = "Move to the BOL, and enter insert mode" }, - { on = [ "A" ], exec = [ "move 999", "insert --append" ], desc = "Move to the EOL, and enter append mode" }, + { on = [ "0" ], run = "move -999", desc = "Move to the BOL" }, + { on = [ "$" ], run = "move 999", desc = "Move to the EOL" }, + { on = [ "I" ], run = [ "move -999", "insert" ], desc = "Move to the BOL, and enter insert mode" }, + { on = [ "A" ], run = [ "move 999", "insert --append" ], desc = "Move to the EOL, and enter append mode" }, - { on = [ "" ], exec = "move -1", desc = "Move cursor left" }, - { on = [ "" ], exec = "move 1", desc = "Move cursor right" }, + { on = [ "" ], run = "move -1", desc = "Move cursor left" }, + { on = [ "" ], run = "move 1", desc = "Move cursor right" }, - { on = [ "b" ], exec = "backward", desc = "Move to the beginning of the previous word" }, - { on = [ "w" ], exec = "forward", desc = "Move to the beginning of the next word" }, - { on = [ "e" ], exec = "forward --end-of-word", desc = "Move to the end of the next word" }, + { on = [ "b" ], run = "backward", desc = "Move to the beginning of the previous word" }, + { on = [ "w" ], run = "forward", desc = "Move to the beginning of the next word" }, + { on = [ "e" ], run = "forward --end-of-word", desc = "Move to the end of the next word" }, # Deletion - { on = [ "d" ], exec = "delete --cut", desc = "Cut the selected characters" }, - { on = [ "D" ], exec = [ "delete --cut", "move 999" ], desc = "Cut until the EOL" }, - { on = [ "c" ], exec = "delete --cut --insert", desc = "Cut the selected characters, and enter insert mode" }, - { on = [ "C" ], exec = [ "delete --cut --insert", "move 999" ], desc = "Cut until the EOL, and enter insert mode" }, - { on = [ "x" ], exec = [ "delete --cut", "move 1 --in-operating" ], desc = "Cut the current character" }, + { on = [ "d" ], run = "delete --cut", desc = "Cut the selected characters" }, + { on = [ "D" ], run = [ "delete --cut", "move 999" ], desc = "Cut until the EOL" }, + { on = [ "c" ], run = "delete --cut --insert", desc = "Cut the selected characters, and enter insert mode" }, + { on = [ "C" ], run = [ "delete --cut --insert", "move 999" ], desc = "Cut until the EOL, and enter insert mode" }, + { on = [ "x" ], run = [ "delete --cut", "move 1 --in-operating" ], desc = "Cut the current character" }, # Yank/Paste - { on = [ "y" ], exec = "yank", desc = "Copy the selected characters" }, - { on = [ "p" ], exec = "paste", desc = "Paste the copied characters after the cursor" }, - { on = [ "P" ], exec = "paste --before", desc = "Paste the copied characters before the cursor" }, + { on = [ "y" ], run = "yank", desc = "Copy the selected characters" }, + { on = [ "p" ], run = "paste", desc = "Paste the copied characters after the cursor" }, + { on = [ "P" ], run = "paste --before", desc = "Paste the copied characters before the cursor" }, # Undo/Redo - { on = [ "u" ], exec = "undo", desc = "Undo the last operation" }, - { on = [ "" ], exec = "redo", desc = "Redo the last operation" }, + { on = [ "u" ], run = "undo", desc = "Undo the last operation" }, + { on = [ "" ], run = "redo", desc = "Redo the last operation" }, # Help - { on = [ "~" ], exec = "help", desc = "Open help" } + { on = [ "~" ], run = "help", desc = "Open help" } ] [help] keymap = [ - { on = [ "" ], exec = "escape", desc = "Clear the filter, or hide the help" }, - { on = [ "q" ], exec = "close", desc = "Exit the process" }, - { on = [ "" ], exec = "close", desc = "Hide the help" }, + { on = [ "" ], run = "escape", desc = "Clear the filter, or hide the help" }, + { on = [ "q" ], run = "close", desc = "Exit the process" }, + { on = [ "" ], run = "close", desc = "Hide the help" }, # Navigation - { on = [ "k" ], exec = "arrow -1", desc = "Move cursor up" }, - { on = [ "j" ], exec = "arrow 1", desc = "Move cursor down" }, + { on = [ "k" ], run = "arrow -1", desc = "Move cursor up" }, + { on = [ "j" ], run = "arrow 1", desc = "Move cursor down" }, - { on = [ "K" ], exec = "arrow -5", desc = "Move cursor up 5 lines" }, - { on = [ "J" ], exec = "arrow 5", desc = "Move cursor down 5 lines" }, + { on = [ "K" ], run = "arrow -5", desc = "Move cursor up 5 lines" }, + { on = [ "J" ], run = "arrow 5", desc = "Move cursor down 5 lines" }, - { on = [ "" ], exec = "arrow -1", desc = "Move cursor up" }, - { on = [ "" ], exec = "arrow 1", desc = "Move cursor down" }, + { on = [ "" ], run = "arrow -1", desc = "Move cursor up" }, + { on = [ "" ], run = "arrow 1", desc = "Move cursor down" }, # Filtering - { on = [ "/" ], exec = "filter", desc = "Apply a filter for the help items" }, + { on = [ "/" ], run = "filter", desc = "Apply a filter for the help items" }, ] diff --git a/nix/modules/home/cli-apps/yazi/configs/theme.toml b/nix/modules/home/cli-apps/yazi/configs/theme.toml index 22e0f8f8..a381b4e8 100644 --- a/nix/modules/home/cli-apps/yazi/configs/theme.toml +++ b/nix/modules/home/cli-apps/yazi/configs/theme.toml @@ -75,7 +75,7 @@ separator_style = { fg = "#5b6078" } [help] on = { fg = "#f5bde6" } -exec = { fg = "#8bd5ca" } +run = { fg = "#8bd5ca" } desc = { fg = "#939ab7" } hovered = { bg = "#5b6078", bold = true } footer = { fg = "#494d64", bg = "#cad3f5" } diff --git a/nix/modules/home/desktop/addons/hypridle/default.nix b/nix/modules/home/desktop/addons/hypridle/default.nix index d8c287d0..754681c3 100644 --- a/nix/modules/home/desktop/addons/hypridle/default.nix +++ b/nix/modules/home/desktop/addons/hypridle/default.nix @@ -1,6 +1,4 @@ { - inputs, - options, config, lib, pkgs, @@ -9,12 +7,9 @@ with lib; with lib.custom; let cfg = config.custom.desktop.addons.hypridle; - inherit (inputs) hypridle; in { - imports = [hypridle.homeManagerModules.default]; - - options.custom.desktop.addons.hypridle = with types; { - enable = mkBoolOpt false "Whether to enable the hypridle"; + options.custom.desktop.addons.hypridle = { + enable = mkBoolOpt false "Whether to enable hypridle in the desktop environment."; }; config = mkIf cfg.enable { @@ -22,26 +17,31 @@ in { enable = true; # package = pkgs.hypridle; - lockCmd = "${pkgs.swaylock-effects}/bin/swaylock -fF"; - afterSleepCmd = "${getExe' config.wayland.windowManager.hyprland.package "hyprctl"} dispatch dpms on"; + settings = { + general = { + lock_cmd = "${pkgs.swaylock-effects}/bin/swaylock -fF"; + ignore_dbus_inhibit = false; + after_sleep_cmd = "${getExe' config.wayland.windowManager.hyprland.package "hyprctl"} dispatch dpms on"; + }; - # 5 min lock, 10min turn the screen off, 20 min suspend - listeners = [ - { - timeout = 300; - onTimeout = "${pkgs.swaylock-effects}/bin/swaylock -fF"; - } - { - timeout = 600; - onTimeout = "${getExe' config.wayland.windowManager.hyprland.package "hyprctl"} dispatch dpms off"; - onResume = "${getExe' config.wayland.windowManager.hyprland.package "hyprctl"} dispatch dpms on"; - } - { - timeout = 1200; - onTimeout = "${pkgs.systemd}/bin/systemctl suspend"; - onResume = "${getExe' config.wayland.windowManager.hyprland.package "hyprctl"} dispatch dpms on"; - } - ]; + # 5 min lock, 10min turn the screen off, 20 min suspend + listener = [ + { + timeout = 300; + on-timeout = "${pkgs.swaylock-effects}/bin/swaylock -fF"; + } + { + timeout = 600; + on-timeout = "${getExe' config.wayland.windowManager.hyprland.package "hyprctl"} dispatch dpms off"; + on-resume = "${getExe' config.wayland.windowManager.hyprland.package "hyprctl"} dispatch dpms on"; + } + { + timeout = 1200; + on-timeout = "${pkgs.systemd}/bin/systemctl suspend"; + on-resume = "${getExe' config.wayland.windowManager.hyprland.package "hyprctl"} dispatch dpms on"; + } + ]; + }; }; }; } diff --git a/nix/modules/home/desktop/addons/hyprlock/default.nix b/nix/modules/home/desktop/addons/hyprlock/default.nix index b76db36d..6115928b 100644 --- a/nix/modules/home/desktop/addons/hyprlock/default.nix +++ b/nix/modules/home/desktop/addons/hyprlock/default.nix @@ -1,9 +1,7 @@ { inputs, - options, config, lib, - pkgs, ... }: with lib; @@ -43,7 +41,7 @@ in { backgrounds = [ { - path = "/home/sab/Pictures/wallpaper.png"; + path = config.custom.desktop.addons.wallpaper; } ]; }; diff --git a/nix/modules/home/desktop/addons/hyprpaper/default.nix b/nix/modules/home/desktop/addons/hyprpaper/default.nix index cdedeb7c..a36474f7 100644 --- a/nix/modules/home/desktop/addons/hyprpaper/default.nix +++ b/nix/modules/home/desktop/addons/hyprpaper/default.nix @@ -1,40 +1,27 @@ { - options, + inputs, config, lib, - pkgs, ... }: with lib; with lib.custom; let cfg = config.custom.desktop.addons.hyprpaper; - wallpaper = /home/sab/Pictures/cityscape2.jpg; + inherit (inputs) hyprpaper; + wallpaper = config.custom.desktop.addons.wallpaper; in { + imports = [hyprpaper.homeManagerModules.default]; options.custom.desktop.addons.hyprpaper = with types; { enable = mkBoolOpt false "Whether to enable the hyprpaper config"; }; config = mkIf cfg.enable { - xdg.configFile = { - "hypr/hyprpaper.conf".text = '' - preload = ${wallpaper} - wallpaper = eDP-1,${wallpaper} - wallpaper = DP-1,${wallpaper} - wallpaper = DP-2,${wallpaper} - ''; - }; - systemd.user.services.hyprpaper = { - Install.WantedBy = ["hyprland-session.target"]; - - Unit = { - Description = "Hyprpaper Service"; - PartOf = ["graphical-session.target"]; - }; + services.hyprpaper = { + enable = true; - Service = { - ExecStart = "${getExe pkgs.hyprpaper}"; - Restart = "always"; - }; + preloads = [wallpaper]; + wallpapers = [", ${wallpaper}"]; + ipc = false; }; }; } diff --git a/nix/modules/home/desktop/addons/rofi/default.nix b/nix/modules/home/desktop/addons/rofi/default.nix index c37ea10c..913c4738 100644 --- a/nix/modules/home/desktop/addons/rofi/default.nix +++ b/nix/modules/home/desktop/addons/rofi/default.nix @@ -22,12 +22,12 @@ in { programs.rofi = { enable = true; package = pkgs.rofi-wayland; - plugins = with pkgs; [ - rofi-calc - ]; + # plugins = with pkgs; [ + # rofi-calc + # ]; extraConfig = { combi-hide-mode-prefix = true; - combi-modi = "drun,run,calc"; + combi-modi = "drun,run"; disable-history = false; display-Network = " 󰤨 Network"; display-drun = "  Apps "; @@ -37,7 +37,7 @@ in { drun-display-format = "{icon} {name}"; icon-theme = "Fluent"; location = 0; - modi = "run,drun,vpn:~/.config/rofi/rofi-vpn.sh,clip:~/.config/rofi/rofi-cliphist.sh,calc,"; + modi = "run,drun,vpn:~/.config/rofi/rofi-vpn.sh,clip:~/.config/rofi/rofi-cliphist.sh,"; show-icons = true; sidebar-mode = true; sorting-method = "fzf"; diff --git a/nix/modules/home/desktop/addons/swaylock/default.nix b/nix/modules/home/desktop/addons/swaylock/default.nix index e4cd0090..3c1cbe1d 100644 --- a/nix/modules/home/desktop/addons/swaylock/default.nix +++ b/nix/modules/home/desktop/addons/swaylock/default.nix @@ -18,7 +18,7 @@ in { enable = true; package = pkgs.swaylock-effects; settings = { - image = "$HOME/Pictures/wallpaper.png"; + image = config.custom.desktop.addons.wallpaper; color = "000000ff"; font-size = "24"; indicator-idle-visible = true; diff --git a/nix/modules/home/desktop/addons/wallpaper/default.nix b/nix/modules/home/desktop/addons/wallpaper/default.nix new file mode 100644 index 00000000..5fc001c0 --- /dev/null +++ b/nix/modules/home/desktop/addons/wallpaper/default.nix @@ -0,0 +1,17 @@ +{ + inputs, + pkgs, + config, + lib, + ... +}: +with lib; +with lib.custom; let + # cfg = config.system.wallpaper; +in { + options.custom.desktop.addons.wallpaper = mkOption { + type = types.oneOf [types.package types.path types.str]; + default = inputs.wallpapers-nix.packages.${pkgs.system}.catppuccin; + description = "The wallpaper to use."; + }; +} diff --git a/nix/modules/home/desktop/addons/wezterm/wezterm.lua b/nix/modules/home/desktop/addons/wezterm/wezterm.lua index f620ae31..0de882b3 100644 --- a/nix/modules/home/desktop/addons/wezterm/wezterm.lua +++ b/nix/modules/home/desktop/addons/wezterm/wezterm.lua @@ -7,6 +7,10 @@ if wezterm.config_builder then config = wezterm.config_builder() end +-- Disable wayland until this issue is fixed +-- https://github.com/wez/wezterm/issues/5197 +config.enable_wayland = false + -- Fonts -- {{{ config.adjust_window_size_when_changing_font_size = false @@ -20,7 +24,9 @@ if wezterm.target_triple == "aarch64-apple-darwin" then config.font_size = 18 -- Linux Setup else - config.font_size = 14 + -- Until issue with wayland is fixed + -- config.font_size = 14 + config.font_size = 18 end -- }}} -- Windows diff --git a/nix/modules/home/desktop/hyprland/default.nix b/nix/modules/home/desktop/hyprland/default.nix index 00a3bc54..c539a078 100644 --- a/nix/modules/home/desktop/hyprland/default.nix +++ b/nix/modules/home/desktop/hyprland/default.nix @@ -14,6 +14,9 @@ in { }; config = mkIf cfg.enable { + home = { + packages = with pkgs; [brightnessctl]; + }; wayland.windowManager.hyprland = { enable = true; extraConfig = diff --git a/nix/modules/home/desktop/hyprland/hyprland.conf b/nix/modules/home/desktop/hyprland/hyprland.conf index 32dbe852..d0ae4594 100644 --- a/nix/modules/home/desktop/hyprland/hyprland.conf +++ b/nix/modules/home/desktop/hyprland/hyprland.conf @@ -105,7 +105,8 @@ gestures { # Example per-device config # See https://wiki.hyprland.org/Configuring/Keywords/#executing for more -device:epic-mouse-v1 { +device { + name = epic-mouse-v1 sensitivity = -0.5 } diff --git a/nix/modules/home/security/rbw/default.nix b/nix/modules/home/security/rbw/default.nix index 385656e2..5cfcd05a 100644 --- a/nix/modules/home/security/rbw/default.nix +++ b/nix/modules/home/security/rbw/default.nix @@ -18,7 +18,6 @@ in { config = mkIf cfg.enable { home.packages = with pkgs; [ rbw - pinentry-gnome ]; programs = { @@ -26,7 +25,7 @@ in { enable = true; settings = { lock_timeout = cfg.lockTimeout; - pinentry = "gnome3"; + pinentry = pkgs.pinentry-gnome3; email = "zppfan@gmail.com"; }; }; diff --git a/nix/modules/nixos/desktop/addons/hyprland-utils/default.nix b/nix/modules/nixos/desktop/addons/hyprland-utils/default.nix index c513e89c..ef42171a 100644 --- a/nix/modules/nixos/desktop/addons/hyprland-utils/default.nix +++ b/nix/modules/nixos/desktop/addons/hyprland-utils/default.nix @@ -54,12 +54,13 @@ in { }; services.xserver = { enable = true; + }; + services = { + # Enable touchpad support (enabled default in most desktopManager). + libinput.enable = true; displayManager = { defaultSession = "hyprland"; }; - - # Enable touchpad support (enabled default in most desktopManager). - libinput.enable = true; }; }; } diff --git a/nix/modules/nixos/desktop/addons/regreet/default.nix b/nix/modules/nixos/desktop/addons/regreet/default.nix index c315a217..b7c68221 100644 --- a/nix/modules/nixos/desktop/addons/regreet/default.nix +++ b/nix/modules/nixos/desktop/addons/regreet/default.nix @@ -8,6 +8,7 @@ with lib; with lib.custom; let cfg = config.custom.desktop.addons.regreet; + wallpaper = options.system.wallpaper.value; greetdSwayConfig = pkgs.writeText "greetd-sway-config" '' exec "dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP" input "type:touchpad" { @@ -45,7 +46,7 @@ in { settings = { background = { - path = /home/sab/Pictures/wallpaper.png; + path = wallpaper; fit = "Cover"; }; GTK = { diff --git a/nix/modules/nixos/system/fonts/default.nix b/nix/modules/nixos/system/fonts/default.nix index 55fc62df..7a5187a2 100644 --- a/nix/modules/nixos/system/fonts/default.nix +++ b/nix/modules/nixos/system/fonts/default.nix @@ -20,7 +20,7 @@ in { LOG_ICONS = "true"; }; - environment.systemPackages = with pkgs; [font-manager]; + # environment.systemPackages = with pkgs; [font-manager]; fonts.packages = with pkgs; [ diff --git a/nix/modules/nixos/system/nix/default.nix b/nix/modules/nixos/system/nix/default.nix index 9619c45b..bb00e72b 100644 --- a/nix/modules/nixos/system/nix/default.nix +++ b/nix/modules/nixos/system/nix/default.nix @@ -12,7 +12,7 @@ in { options.system.nix = with types; { enable = mkBoolOpt true "Whether or not to manage nix configuration."; - package = mkOpt package pkgs.nixUnstable "Which nix package to use."; + package = mkOpt package pkgs.nixVersions.latest "Which nix package to use."; default-substituter = { url = mkOpt str "https://cache.nixos.org" "The url for the substituter."; key = mkOpt str "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" "The trusted public key for the substituter."; @@ -22,8 +22,8 @@ in { config = mkIf cfg.enable { environment.systemPackages = with pkgs; [ cachix - rnix-lsp - nixfmt + nil + nixfmt-rfc-style nix-index nix-prefetch-git nvd diff --git a/nix/modules/nixos/system/security/gpg/default.nix b/nix/modules/nixos/system/security/gpg/default.nix index 2975d8cd..2eb64a3c 100644 --- a/nix/modules/nixos/system/security/gpg/default.nix +++ b/nix/modules/nixos/system/security/gpg/default.nix @@ -56,6 +56,7 @@ in { enable = true; enableSSHSupport = true; enableExtraSocket = true; + pinentryPackage = pkgs.pinentry-gnome3; }; }; diff --git a/nix/modules/nixos/system/wallpaper/default.nix b/nix/modules/nixos/system/wallpaper/default.nix new file mode 100644 index 00000000..34017aa7 --- /dev/null +++ b/nix/modules/nixos/system/wallpaper/default.nix @@ -0,0 +1,17 @@ +{ + inputs, + pkgs, + config, + lib, + ... +}: +with lib; +with lib.custom; let + # cfg = config.system.wallpaper; +in { + options.system.wallpaper = mkOption { + type = types.oneOf [types.package types.path types.str]; + default = inputs.wallpapers-nix.packages.${pkgs.system}.catppuccin; + description = "The wallpaper to use."; + }; +} diff --git a/nix/modules/nixos/tools/lsp/default.nix b/nix/modules/nixos/tools/lsp/default.nix index 6920eef4..2d17b456 100644 --- a/nix/modules/nixos/tools/lsp/default.nix +++ b/nix/modules/nixos/tools/lsp/default.nix @@ -17,10 +17,10 @@ in { environment.systemPackages = with pkgs; [ lua-language-server # LSP for lua marksman # LSP for markdown - rnix-lsp # LSP for nix + nil # LSP for nix tree-sitter yamllint - nodejs_21 # Note for LSP servers + nodejs_22 # Note for LSP servers nodePackages_latest.pyright black ]; diff --git a/nix/systems/aarch64-darwin/mbp13/default.nix b/nix/systems/aarch64-darwin/mbp13/default.nix index f76bea08..5778a690 100644 --- a/nix/systems/aarch64-darwin/mbp13/default.nix +++ b/nix/systems/aarch64-darwin/mbp13/default.nix @@ -11,7 +11,7 @@ with lib.custom; { }; virtualisation = { - virt-manager = enabled; + virt-manager = disabled; }; desktop.yabai = enabled; diff --git a/nix/systems/x86_64-linux/nz/default.nix b/nix/systems/x86_64-linux/nz/default.nix index 24ab81c7..eb666e76 100644 --- a/nix/systems/x86_64-linux/nz/default.nix +++ b/nix/systems/x86_64-linux/nz/default.nix @@ -1,6 +1,12 @@ -{pkgs, ...}: { +{ + pkgs, + inputs, + ... +}: let + wallpapers = inputs.wallpapers-nix.packages.${pkgs.system}.catppuccin; +in { imports = [./hardware-configuration.nix]; - + system.wallpaper = "${wallpapers}/share/wallpapers/catppuccin/bench.png"; # Enable Bootloader system.boot.efi.enable = true; system.battery.enable = true; # Only for laptops, they will still work without it, just improves battery life diff --git a/nix/systems/x86_64-linux/nz/hardware-configuration.nix b/nix/systems/x86_64-linux/nz/hardware-configuration.nix index 5220cebd..edf3e084 100644 --- a/nix/systems/x86_64-linux/nz/hardware-configuration.nix +++ b/nix/systems/x86_64-linux/nz/hardware-configuration.nix @@ -43,7 +43,8 @@ # with explicit per-interface declarations with `networking.interfaces..useDHCP`. networking.useDHCP = lib.mkDefault true; networking.hosts = { - "192.168.89.200" = ["truenas.sbulav.ru"]; + # "192.168.89.200" = ["truenas.sbulav.ru"]; + "100.87.128.100" = ["vault-c7.pyn.ru"]; "100.91.128.100" = ["vault-c11.pyn.ru"]; "100.92.128.100" = ["vault-c12.pyn.ru"]; }; diff --git a/nvim/after/plugin/keymap.vim b/nvim/after/plugin/keymap.vim index 88fdcc06..58eba230 100644 --- a/nvim/after/plugin/keymap.vim +++ b/nvim/after/plugin/keymap.vim @@ -19,6 +19,7 @@ augroup pscbindings autocmd FileType typescript nnoremap :Nredir !npm run build && npm run test && npm run lint autocmd FileType dockerfile nnoremap lua require('nredir').nredir("!hadolint " .. vim.fn.bufname()) autocmd FileType nix nnoremap lua require('nredir').nredir("!nix eval --file " .. vim.fn.bufname()) + autocmd FileType sh nnoremap lua require('nredir').nredir("!bash " .. vim.fn.bufname()) augroup end " Draw a visual line in any mode on F1 @@ -145,7 +146,8 @@ nnoremap A :argadd =fnameescape(expand('%:p:h')).'/**/*' " Telescope " , open in split/vsplit, , up/down preview nnoremap fM lua require('telescope.builtin').marks() -nnoremap fa lua require('telescope.builtin').live_grep() +nnoremap fA lua require('telescope.builtin').live_grep() +nnoremap fa lua require('config.telescope_myfunctions').grep_in_cwd() nnoremap fb lua require('telescope.builtin').buffers() nnoremap fc lua require('telescope.builtin').git_commits() nnoremap fF lua require('telescope.builtin').find_files() diff --git a/nvim/lua/config/autocommands.lua b/nvim/lua/config/autocommands.lua index dad570a0..bd531aba 100644 --- a/nvim/lua/config/autocommands.lua +++ b/nvim/lua/config/autocommands.lua @@ -43,6 +43,16 @@ vim.api.nvim_create_autocmd("BufReadPost", { -- desc = "Validate Jenkins files on save", -- pattern = "*enkinsfile*", -- }) +-- +vim.api.nvim_create_augroup("ValidateGitlabCIfiles", { clear = true }) +vim.api.nvim_create_autocmd("BufWritePre", { + callback = function() + require("validate-gitlab-ci.validate-gitlab-ci").validate() + end, + group = "ValidateGitlabCIfiles", + desc = "Validate Gitlab CI files on save", + pattern = ".gitlab-ci.yml", +}) vim.api.nvim_create_augroup("ConfugureLuaBo", { clear = true }) vim.api.nvim_create_autocmd("BufRead", { diff --git a/nvim/lua/config/options.lua b/nvim/lua/config/options.lua index 4cf0bd0c..5d68c8e2 100644 --- a/nvim/lua/config/options.lua +++ b/nvim/lua/config/options.lua @@ -115,7 +115,7 @@ local options = { -- Trailings / tabs{{{ list = true, -- display listchars fillchars = { vert = "│", eob = " " }, -- make vertical split sign better - listchars = { eol = "↲", tab = "» " }, -- set listchars + listchars = { eol = "↲", tab = "» ", nbsp = "␣" }, -- set listchars -- -- -- Better vimdiff{{{ diffopt = "internal,algorithm:patience,indent-heuristic", --}}} diff --git a/nvim/lua/config/telescope_myfunctions.lua b/nvim/lua/config/telescope_myfunctions.lua index c720a015..83a94723 100644 --- a/nvim/lua/config/telescope_myfunctions.lua +++ b/nvim/lua/config/telescope_myfunctions.lua @@ -21,6 +21,13 @@ M.search_in_cwd = function() } end +M.grep_in_cwd = function() + require("telescope.builtin").live_grep { + prompt_title = "< Grep in Current Directory >", + cwd = vim.fn.expand "%:p:h", + } +end + M.search_vimfiles = function() require("telescope.builtin").find_files { prompt_title = "< Find Vimfiles >", diff --git a/nvim/lua/plugins/lsp.lua b/nvim/lua/plugins/lsp.lua index 803b0400..7bb51332 100644 --- a/nvim/lua/plugins/lsp.lua +++ b/nvim/lua/plugins/lsp.lua @@ -3,6 +3,7 @@ return { "neovim/nvim-lspconfig", event = "BufReadPre", dependencies = { + { "folke/neodev.nvim", opts = {} }, "mason.nvim", "williamboman/mason-lspconfig.nvim", "hrsh7th/cmp-nvim-lsp", @@ -115,24 +116,24 @@ return { require("lspconfig")[server].setup(server_opts) end, -- manually configured servers - require("lspconfig")["rnix"].setup {}, + require("lspconfig")["nil_ls"].setup {}, require("lspconfig")["marksman"].setup { cmd = { "marksman", "server" } }, require("lspconfig")["lua_ls"].setup { settings = { Lua = { - -- make the language server recognize "vim" global - diagnostics = { - globals = { "vim" }, - }, + -- -- make the language server recognize "vim" global + -- diagnostics = { + -- globals = { "vim" }, + -- }, workspace = { checkThirdParty = false, }, - library = { - [vim.fn.expand "$VIMRUNTIME/lua"] = true, - [vim.fn.stdpath "config" .. "/lua"] = true, - }, + -- library = { + -- [vim.fn.expand "$VIMRUNTIME/lua"] = true, + -- [vim.fn.stdpath "config" .. "/lua"] = true, + -- }, completion = { callSnippet = "Replace", diff --git a/nvim/lua/plugins/misc.lua b/nvim/lua/plugins/misc.lua index 03302440..9e63faaf 100644 --- a/nvim/lua/plugins/misc.lua +++ b/nvim/lua/plugins/misc.lua @@ -43,6 +43,8 @@ return { -- Lint Jenkins files -- { "ckipp01/nvim-jenkinsfile-linter", dependencies = { "nvim-lua/plenary.nvim" }, ft = "groovy" }, + -- { dir = "~/git_priv/validate-gitlab-ci.nvim", dependencies = { "nvim-lua/plenary.nvim" }, ft = "yaml" }, + { "sbulav/validate-gitlab-ci.nvim", dependencies = { "nvim-lua/plenary.nvim" } }, -- Encode/decode base64 strings "sbulav/base64.nvim", diff --git a/nvim/lua/plugins/treesitter.lua b/nvim/lua/plugins/treesitter.lua index 5e8b78dc..584709f1 100644 --- a/nvim/lua/plugins/treesitter.lua +++ b/nvim/lua/plugins/treesitter.lua @@ -46,7 +46,7 @@ return { auto_install = true, highlight = { enable = true, -- false will disable the whole extension - disable = { "fugitive", "git" } + disable = { "fugitive", "git", "help", "TelescopePrompt" }, }, incremental_selection = { enable = true,