diff --git a/home/david/configurations/Akun/default.nix b/home/david/configurations/Akun/default.nix index 7156728..9f342a3 100644 --- a/home/david/configurations/Akun/default.nix +++ b/home/david/configurations/Akun/default.nix @@ -17,7 +17,6 @@ in { firefox.enable = true; fuzzel.enable = true; - helix.enable = true; gpg.enable = true; git = { inherit name signKey; @@ -48,6 +47,7 @@ wallpaper.enable = true; accounts.email.enable = true; programs = { + helix.enable = true; openssh.enable = true; }; }; diff --git a/home/david/configurations/Tytonidae/default.nix b/home/david/configurations/Tytonidae/default.nix index 0ee3ddc..296217f 100644 --- a/home/david/configurations/Tytonidae/default.nix +++ b/home/david/configurations/Tytonidae/default.nix @@ -20,7 +20,6 @@ rustypaste-cli.enable = true; firefox.enable = true; fuzzel.enable = true; - helix.enable = true; gpg.enable = true; jujutsu = { enable = true; @@ -54,6 +53,7 @@ accounts.email.enable = true; programs = { openssh.enable = true; + helix.enable = true; }; }; diff --git a/home/david/modules/programs/default.nix b/home/david/modules/programs/default.nix index a77c4b6..9dece8e 100644 --- a/home/david/modules/programs/default.nix +++ b/home/david/modules/programs/default.nix @@ -3,5 +3,6 @@ ./openssh.nix ./niri ./wluma + ./helix.nix ]; } diff --git a/home/david/modules/programs/helix.nix b/home/david/modules/programs/helix.nix new file mode 100644 index 0000000..95eb838 --- /dev/null +++ b/home/david/modules/programs/helix.nix @@ -0,0 +1,57 @@ +{ + lib, + config, + pkgs, + ... +}: let + cfg = config.david.programs.helix; +in { + options = { + david.programs.helix = { + enable = lib.mkEnableOption "helix"; + }; + }; + config = lib.mkIf cfg.enable { + youthlic.programs.helix = { + enable = true; + extraPackages = with pkgs; [ + nixfmt-rfc-style + idris2Packages.idris2Lsp + lua-language-server + bash-language-server + shfmt + hurl + cmake-language-server + kdlfmt + rustfmt + clang-tools + libxml2 + typstyle + pyright + ruff + gotools + yaml-language-server + taplo + markdown-oxide + marksman + nixd + deno + alejandra + vscode-langservers-extracted + fish-lsp + tailwindcss-language-server + gopls + golangci-lint-langserver + tinymist + delve + lldb + rust-analyzer + # nil + haskell-language-server + neocmakelsp + jdt-language-server + zls + ]; + }; + }; +} diff --git a/home/modules/programs/helix/default.nix b/home/modules/programs/helix/default.nix index 43113d9..4854b82 100644 --- a/home/modules/programs/helix/default.nix +++ b/home/modules/programs/helix/default.nix @@ -28,14 +28,9 @@ stylix.targets.helix.enable = false; programs.helix = lib.mkIf cfg.enable { enable = true; - package = outputs.packages."${pkgs.system}".helix; defaultEditor = true; extraPackages = cfg.extraPackages; - settings = let - config-file = builtins.readFile ./config.toml; - config = builtins.fromTOML config-file; - in - config; + settings = ./config.toml |> builtins.readFile |> builtins.fromTOML; languages = { language-server = { neocmakelsp = { diff --git a/overlays/modifications/default.nix b/overlays/modifications/default.nix index 90f00a6..7fd84f5 100644 --- a/overlays/modifications/default.nix +++ b/overlays/modifications/default.nix @@ -9,6 +9,7 @@ in ./radicle-explorer.nix ./wshowkeys.nix ./QQ.nix + ./helix.nix ] |> map (file: import file args) |> (overlays: (lib.composeManyExtensions overlays) final prev) diff --git a/overlays/modifications/helix.nix b/overlays/modifications/helix.nix new file mode 100644 index 0000000..3b15a52 --- /dev/null +++ b/overlays/modifications/helix.nix @@ -0,0 +1,5 @@ +{outputs, ...}: final: prev: let + inherit (prev.stdenv.hostPlatform) system; +in { + helix = outputs.packages."${system}".helix; +} diff --git a/pkgs/helix/default.nix b/pkgs/helix/default.nix index 38b8b15..cce13f6 100644 --- a/pkgs/helix/default.nix +++ b/pkgs/helix/default.nix @@ -1,87 +1,12 @@ { - lib, inputs, system, callPackage, symlinkJoin, makeWrapper, - nixfmt-rfc-style, - idris2Packages, - lua-language-server, - bash-language-server, - shfmt, - hurl, - cmake-language-server, - kdlfmt, - rustfmt, - clang-tools, - libxml2, - typstyle, - pyright, - ruff, - gotools, - yaml-language-server, - taplo, - markdown-oxide, - marksman, - nixd, - deno, - alejandra, - vscode-langservers-extracted, - fish-lsp, - tailwindcss-language-server, - gopls, - golangci-lint-langserver, - tinymist, - delve, - lldb, - rust-analyzer, - # nil, - haskell-language-server, - neocmakelsp, - jdt-language-server, - zls, }: let inherit (inputs.helix.packages."${system}") helix; runtime = callPackage ./runtime.nix {}; - runtimeInputs = [ - nixfmt-rfc-style - idris2Packages.idris2Lsp - lua-language-server - bash-language-server - shfmt - hurl - cmake-language-server - kdlfmt - rustfmt - clang-tools - libxml2 - typstyle - pyright - ruff - gotools - yaml-language-server - taplo - markdown-oxide - marksman - nixd - deno - alejandra - vscode-langservers-extracted - fish-lsp - tailwindcss-language-server - gopls - golangci-lint-langserver - tinymist - delve - lldb - rust-analyzer - # nil - haskell-language-server - neocmakelsp - jdt-language-server - zls - ]; in symlinkJoin { name = "helix-wrapped"; @@ -92,7 +17,6 @@ in ]; postBuild = '' wrapProgram $out/bin/hx \ - --suffix PATH : ${lib.makeBinPath runtimeInputs} \ --set HELIX_RUNTIME ${runtime} ''; }