diff --git a/pkgs/by-name/ka/kakoune-lsp/Hardcode-perl.patch b/pkgs/by-name/ka/kakoune-lsp/Hardcode-perl.patch new file mode 100644 index 000000000000..747a9481025b --- /dev/null +++ b/pkgs/by-name/ka/kakoune-lsp/Hardcode-perl.patch @@ -0,0 +1,51 @@ +From 17cec4d94bc04bd02b91361ca72f561f1eebce60 Mon Sep 17 00:00:00 2001 +From: V +Date: Tue, 9 Apr 2024 06:15:00 +0200 +Subject: [PATCH] Hardcode perl + +--- + rc/lsp.kak | 13 ++----------- + 1 file changed, 2 insertions(+), 11 deletions(-) + +diff --git a/rc/lsp.kak b/rc/lsp.kak +index b173478..015c3ca 100644 +--- a/rc/lsp.kak ++++ b/rc/lsp.kak +@@ -280,12 +280,8 @@ define-command -hidden lsp-menu -params 1.. %{ + } + define-command -hidden lsp-menu-impl %{ + evaluate-commands %sh{ +- if ! command -v perl > /dev/null; then +- printf "fail %{'perl' must be installed to use the 'lsp-menu' command}" +- exit +- fi + echo >$kak_command_fifo "echo -to-file $kak_response_fifo -quoting kakoune -- %reg{a}" +- perl < $kak_response_fifo -we ' ++ @perl@ < $kak_response_fifo -we ' + use strict; + my $Q = "'\''"; + my @args = (); +@@ -2410,11 +2406,6 @@ define-command -hidden lsp-snippets-insert-completion -params 1 %{ evaluate-comm + }} + + define-command lsp-snippets-insert -hidden -params 1 %[ +- evaluate-commands %sh{ +- if ! command -v perl > /dev/null; then +- printf "fail %{'perl' must be installed to use the 'lsp-snippets-insert' command'}" +- fi +- } + evaluate-commands -draft -save-regs '^"' %[ + set-register '"' %arg{1} + execute-keys +@@ -2469,7 +2460,7 @@ define-command lsp-snippets-insert -hidden -params 1 %[ + define-command -hidden lsp-snippets-insert-perl-impl %[ + set-register x nop + evaluate-commands %sh[ # $kak_quoted_selections +- perl -e ' ++ @perl@ -e ' + use strict; + use warnings; + use Text::ParseWords(); +-- +2.44.0 + diff --git a/pkgs/by-name/ka/kakoune-lsp/Use-full-Perl-path.patch b/pkgs/by-name/ka/kakoune-lsp/Use-full-Perl-path.patch deleted file mode 100644 index 38f0d38cb215..000000000000 --- a/pkgs/by-name/ka/kakoune-lsp/Use-full-Perl-path.patch +++ /dev/null @@ -1,37 +0,0 @@ -From b93660cfa8a80a5e5bf72e1f06fb7bf95272c7e4 Mon Sep 17 00:00:00 2001 -From: PoweredByPie -Date: Fri, 8 Dec 2023 04:39:01 -0800 -Subject: [PATCH] Use full Perl path - ---- - rc/lsp.kak | 7 +------ - 1 file changed, 1 insertion(+), 6 deletions(-) - -diff --git a/rc/lsp.kak b/rc/lsp.kak -index d695a2e..7c6a436 100644 ---- a/rc/lsp.kak -+++ b/rc/lsp.kak -@@ -2339,11 +2339,6 @@ define-command -hidden lsp-snippets-insert-completion -params 1 %{ evaluate-comm - }} - - define-command lsp-snippets-insert -hidden -params 1 %[ -- evaluate-commands %sh{ -- if ! command -v perl > /dev/null 2>&1; then -- printf "fail '''perl'' must be installed to use the ''snippets-insert'' command'" -- fi -- } - evaluate-commands -draft -save-regs '^"' %[ - set-register '"' %arg{1} - execute-keys -@@ -2397,7 +2392,7 @@ define-command lsp-snippets-insert -hidden -params 1 %[ - - define-command -hidden lsp-snippets-insert-perl-impl %[ - evaluate-commands %sh[ # $kak_quoted_selections -- perl -e ' -+ @perlPath@/bin/perl -e ' - use strict; - use warnings; - use Text::ParseWords(); --- -2.42.0 - diff --git a/pkgs/by-name/ka/kakoune-lsp/package.nix b/pkgs/by-name/ka/kakoune-lsp/package.nix index 8e8406587f1c..a13c2bf6bd73 100644 --- a/pkgs/by-name/ka/kakoune-lsp/package.nix +++ b/pkgs/by-name/ka/kakoune-lsp/package.nix @@ -1,34 +1,37 @@ -{ stdenv, lib, fetchFromGitHub, rustPlatform, perl, CoreServices, Security, SystemConfiguration }: +{ lib +, rustPlatform +, fetchFromGitHub +, substituteAll, perl +, stdenv, CoreServices, Security, SystemConfiguration +}: rustPlatform.buildRustPackage rec { pname = "kakoune-lsp"; - version = "16.0.0"; + version = "17.0.1"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "v${version}"; - sha256 = "sha256-d4Tc6iYp20uOKMd+T2LhWgXWZzvzq1E+VWqjhhiIiHE="; + sha256 = "sha256-uXKquAjfytUn/Q0kx+0BGRQTkVMQ9rMRnTCy622upag="; }; - cargoHash = "sha256-kV8d0PwIWS6gyfCtv70iv8MrL91ZOZbwYznhc3lUw0U="; - - buildInputs = [ perl ] ++ lib.optionals stdenv.isDarwin [ CoreServices Security SystemConfiguration ]; - patches = [ - ./Use-full-Perl-path.patch + (substituteAll { + src = ./Hardcode-perl.patch; + perl = lib.getExe perl; + }) ]; - postPatch = '' - substituteInPlace rc/lsp.kak \ - --subst-var-by perlPath ${lib.getBin perl} - ''; + cargoHash = "sha256-XnhYODMzqInwbgM8wveY048sljZ8OKw4hLYJG5h8Twc="; - meta = with lib; { + buildInputs = lib.optionals stdenv.isDarwin [ CoreServices Security SystemConfiguration ]; + + meta = { description = "Kakoune Language Server Protocol Client"; homepage = "https://github.com/kakoune-lsp/kakoune-lsp"; - license = with licenses; [ unlicense /* or */ mit ]; - maintainers = with maintainers; [ philiptaron spacekookie poweredbypie ]; + license = with lib.licenses; [ unlicense /* or */ mit ]; + maintainers = with lib.maintainers; [ philiptaron spacekookie poweredbypie ]; mainProgram = "kak-lsp"; }; }