From a2a1530ed478869da4a30da6b6fe907d567e439a Mon Sep 17 00:00:00 2001 From: Elec3137 Date: Fri, 6 Feb 2026 12:17:28 -0800 Subject: [PATCH] fix helix and mpv modules the helix wrapper wasn't working properly with spaced paths, and mpv seems to not be configured to use /etc/mpv on nixos. Now both of them work very similarly --- cli/helix.nix | 15 ++++++++++++--- graphical/mpv.nix | 13 +++++++++++-- 2 files changed, 23 insertions(+), 5 deletions(-) diff --git a/cli/helix.nix b/cli/helix.nix index 1e6adbe..6aea6e7 100644 --- a/cli/helix.nix +++ b/cli/helix.nix @@ -13,6 +13,8 @@ in options.nixowos.cli.${name} = { enable = lib.mkEnableOption name; + package = lib.mkPackageOption pkgs name { }; + extraConfig = lib.mkOption { type = lib.types.lines; default = /* toml */ '' @@ -31,12 +33,19 @@ in config = lib.mkIf cfg.enable { environment.systemPackages = [ - (pkgs.writeShellScriptBin "hx" "${pkgs.helix}/bin/hx -c /etc/${name}.toml $@") + (pkgs.symlinkJoin { + inherit name; + paths = [ cfg.package ]; + nativeBuildInputs = [ pkgs.makeWrapper ]; + postBuild = '' + wrapProgram $out/bin/hx \ + --add-flags "-c" \ + --add-flags "${pkgs.writeText "${name}.toml" cfg.extraConfig}" + ''; + }) ]; # nixos/modules/programs/environment.nix uses mkDefault "nano" environment.variables.EDITOR = lib.mkOverride 900 "hx"; - - environment.etc."${name}.toml".text = cfg.extraConfig; }; } diff --git a/graphical/mpv.nix b/graphical/mpv.nix index 901c6e3..65e0acb 100644 --- a/graphical/mpv.nix +++ b/graphical/mpv.nix @@ -32,7 +32,16 @@ in }; config = lib.mkIf cfg.enable { - environment.systemPackages = [ cfg.package ]; - environment.etc."${name}/${name}.conf".text = cfg.extraConfig; + environment.systemPackages = [ + (pkgs.symlinkJoin { + inherit name; + paths = [ cfg.package ]; + nativeBuildInputs = [ pkgs.makeWrapper ]; + postBuild = '' + wrapProgram $out/bin/${name} \ + --add-flags "--config-dir=${pkgs.writeTextDir "${name}.conf" cfg.extraConfig}" + ''; + }) + ]; }; }