taplo: add shell completions

- Version 0.10.0 of Taplo CLI added the ability to generate completions
  for shells (see https://github.com/tamasfe/taplo/releases/tag/0.10.0).

- This commit adds the generated shell completions to the derivation
  output.

- Resolves https://github.com/NixOS/nixpkgs/issues/440875.
This commit is contained in:
magicquark
2025-09-08 07:42:36 +01:00
parent 9137f77959
commit 25bd0c856b
+18
View File
@@ -1,10 +1,12 @@
{
stdenv,
lib,
rustPlatform,
fetchCrate,
pkg-config,
openssl,
withLsp ? true,
installShellFiles,
}:
rustPlatform.buildRustPackage rec {
@@ -20,6 +22,7 @@ rustPlatform.buildRustPackage rec {
cargoHash = "sha256-tvijtB5fwOzQnnK/ClIvTbjCcMeqZpXcRdWWKZPIulM=";
nativeBuildInputs = [
installShellFiles
pkg-config
];
@@ -29,6 +32,21 @@ rustPlatform.buildRustPackage rec {
buildFeatures = lib.optional withLsp "lsp";
postInstall =
lib.optionalString
(
stdenv.buildPlatform.canExecute stdenv.hostPlatform
&&
# Creation of the completions fails on Darwin platforms.
!stdenv.hostPlatform.isDarwin
)
''
installShellCompletion --cmd taplo \
--bash <($out/bin/taplo completions bash) \
--fish <($out/bin/taplo completions fish) \
--zsh <($out/bin/taplo completions zsh)
'';
meta = with lib; {
description = "TOML toolkit written in Rust";
homepage = "https://taplo.tamasfe.dev";