{ lib , fetchFromGitHub , rustPlatform , stdenv , installShellFiles , pkg-config , libiconv , openssl , DiskArbitration , Foundation , mandown , zellij , testVersion }: rustPlatform.buildRustPackage rec { pname = "zellij"; version = "0.27.0"; src = fetchFromGitHub { owner = "zellij-org"; repo = "zellij"; rev = "v${version}"; sha256 = "sha256-iQ+Z1A/wiui2IHuK35e6T/44TYaf6+KbaDl5GfVF2vo="; }; cargoSha256 = "sha256-DMHIvqClBpBplvqqXM2dUOumO+Ean4yAHWDplJ9PaUM="; nativeBuildInputs = [ mandown installShellFiles pkg-config ]; buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ libiconv DiskArbitration Foundation ]; preCheck = '' HOME=$TMPDIR ''; postInstall = '' mandown docs/MANPAGE.md > zellij.1 installManPage zellij.1 installShellCompletion --cmd $pname \ --bash <($out/bin/zellij setup --generate-completion bash) \ --fish <($out/bin/zellij setup --generate-completion fish) \ --zsh <($out/bin/zellij setup --generate-completion zsh) ''; passthru.tests.version = testVersion { package = zellij; }; meta = with lib; { description = "A terminal workspace with batteries included"; homepage = "https://zellij.dev/"; changelog = "https://github.com/zellij-org/zellij/blob/v${version}/Changelog.md"; license = with licenses; [ mit ]; maintainers = with maintainers; [ therealansh _0x4A6F abbe ]; }; }