{ lib , rustPlatform , fetchFromGitHub # lua54 implies lua52/lua53 , features ? [ "lua54" "luau" ] }: rustPlatform.buildRustPackage rec { pname = "stylua"; version = "0.15.3"; src = fetchFromGitHub { owner = "johnnymorganz"; repo = pname; rev = "v${version}"; sha256 = "sha256-EVsgiG16R4wh4Dh10rv7/H+VDONaVPWOfRNStrw8aso="; }; cargoSha256 = "sha256-fDh6TchwQO+FvyPJzrso1Ls9ZIKMHDdFBTzf6AuvGqs="; # remove cargo config so it can find the linker on aarch64-unknown-linux-gnu postPatch = '' rm .cargo/config.toml ''; buildFeatures = features; meta = with lib; { description = "An opinionated Lua code formatter"; homepage = "https://github.com/johnnymorganz/stylua"; changelog = "https://github.com/johnnymorganz/stylua/blob/v${version}/CHANGELOG.md"; license = licenses.mpl20; maintainers = with maintainers; [ figsoda ]; }; }