Move helix runtime inputs to hm extraPackages option

This commit is contained in:
ulic-youthlic 2025-06-09 10:47:34 +08:00
parent 11e14b01f9
commit 915256aa94
Signed by: youthlic
GPG key ID: 63E86C3C14A0D721
8 changed files with 67 additions and 84 deletions

View file

@ -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;
};
};

View file

@ -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;
};
};

View file

@ -3,5 +3,6 @@
./openssh.nix
./niri
./wluma
./helix.nix
];
}

View file

@ -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
];
};
};
}

View file

@ -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 = {

View file

@ -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)

View file

@ -0,0 +1,5 @@
{outputs, ...}: final: prev: let
inherit (prev.stdenv.hostPlatform) system;
in {
helix = outputs.packages."${system}".helix;
}

View file

@ -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}
'';
}