From 8f0515dbf74c886b61639ccad5a1ea7c2f51265d Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Sat, 3 Jun 2023 04:20:00 +0000 Subject: [PATCH] emacs.pkgs.treesit-grammars: refactor - Do not pass tree-sitter since it refers to the Emacs packages and it's not needed - Use stdenv.hostPlatform since it's not a compiler. --- .../treesit-grammars/default.nix | 25 ++++++++++--------- 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/treesit-grammars/default.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/treesit-grammars/default.nix index 8b2c723f2293..af720337ff05 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/treesit-grammars/default.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/treesit-grammars/default.nix @@ -1,19 +1,20 @@ -{ pkgs, lib, tree-sitter, ... }: +{ pkgs, lib }: let - libExt = pkgs.stdenv.targetPlatform.extensions.sharedLibrary; + libExt = pkgs.stdenv.hostPlatform.extensions.sharedLibrary; grammarToAttrSet = drv: - { - name = "lib/lib${lib.strings.removeSuffix "-grammar" (lib.strings.getName drv)}${libExt}"; - path = "${drv}/parser"; - }; -in -{ - with-all-grammars = pkgs.linkFarm "emacs-treesit-grammars" - (map grammarToAttrSet pkgs.tree-sitter.allGrammars); + { + name = "lib/lib${lib.strings.removeSuffix "-grammar" (lib.strings.getName drv)}${libExt}"; + path = "${drv}/parser"; + }; - # Use this one like this: - # treesit-grammars.with-grammars (grammars: with grammars; [tree-sitter-bash]) + # Usage: + # treesit-grammars.with-grammars (p: [ p.tree-sitter-bash p.tree-sitter-c ... ]) with-grammars = fn: pkgs.linkFarm "emacs-treesit-grammars" (map grammarToAttrSet (fn pkgs.tree-sitter.builtGrammars)); +in +{ + inherit with-grammars; + + with-all-grammars = with-grammars builtins.attrValues; }