{ lib, stdenv, fetchFromGitHub, rustPlatform, libxcb, installShellFiles, }: rustPlatform.buildRustPackage rec { pname = "magic-wormhole-rs"; version = "0.7.6"; src = fetchFromGitHub { owner = "magic-wormhole"; repo = "magic-wormhole.rs"; rev = version; sha256 = "sha256-01u1DJNd/06q9dH/Y4E5kj5gb2CA7EKdoPtMhzCLtso="; }; cargoHash = "sha256-sZuvhJWgBlptfgsKglWvL6oxK5W3y2x0Gwf+r2pNRi8="; buildInputs = lib.optionals (!stdenv.hostPlatform.isDarwin) [ libxcb ]; nativeBuildInputs = [ installShellFiles ]; postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' installShellCompletion --cmd wormhole-rs \ --bash <($out/bin/wormhole-rs completion bash) \ --fish <($out/bin/wormhole-rs completion fish) \ --zsh <($out/bin/wormhole-rs completion zsh) ''; meta = { description = "Rust implementation of Magic Wormhole, with new features and enhancements"; homepage = "https://github.com/magic-wormhole/magic-wormhole.rs"; changelog = "https://github.com/magic-wormhole/magic-wormhole.rs/raw/${version}/changelog.md"; license = lib.licenses.eupl12; maintainers = with lib.maintainers; [ zeri piegames ]; mainProgram = "wormhole-rs"; }; }