diff --git a/pkgs/by-name/st/steelix/package.nix b/pkgs/by-name/st/steelix/package.nix index fdaf8740516f..872fa14bf980 100644 --- a/pkgs/by-name/st/steelix/package.nix +++ b/pkgs/by-name/st/steelix/package.nix @@ -1,5 +1,6 @@ { fetchFromGitHub, + fetchpatch, helix, installShellFiles, lib, @@ -18,6 +19,21 @@ rustPlatform.buildRustPackage (finalAttrs: { hash = "sha256-qAUODNxHM9K6CrRCFgfBcbqzRd+YHiWn9fEfmIzrohA="; }; + # This fork is built from Helix master, whose loader expects tree-sitter + # grammars with the platform-native extension (`.dylib` on Darwin) since + # helix-editor/helix#14982. We reuse the grammars from `helix.runtime`, built + # from the last Helix *release*, which still names them `.so` on Darwin, so + # revert that commit to make the loader look for `.so`. Remove once a Helix + # release ships #14982 and nixpkgs' grammars switch to `.dylib`. + patches = [ + (fetchpatch { + name = "revert-dylib-grammar-extension.patch"; + url = "https://github.com/helix-editor/helix/commit/430914b298a32653ab1847fdfdf2177a002be04c.patch"; + revert = true; + hash = "sha256-4KUFppkso4/XwNU+mGIgLvl+mJXHZWkmaguYMy8oTyI="; + }) + ]; + cargoHash = "sha256-6bu8sIM4So3AbnHHYbh8uu+rEB4IjMQjDgh7/AkLQs0="; nativeBuildInputs = [ @@ -57,6 +73,7 @@ rustPlatform.buildRustPackage (finalAttrs: { license = lib.licenses.mpl20; mainProgram = "hx"; maintainers = with lib.maintainers; [ + aciceri Ra77a3l3-jar ]; };