nixpkgs/pkgs/by-name/ty/typstyle/package.nix

60 lines
1.3 KiB
Nix

{ lib
, rustPlatform
, fetchFromGitHub
, pkg-config
, libgit2
, zlib
, stdenv
, darwin
, nix-update-script
, testers
, typstyle
}:
rustPlatform.buildRustPackage rec {
pname = "typstyle";
version = "0.11.28";
src = fetchFromGitHub {
owner = "Enter-tainer";
repo = "typstyle";
rev = "refs/tags/v${version}";
hash = "sha256-U3A3ye45o8q+Kvv2lJqJ72Vn/Q9iPgUkwpA79DAHU2k=";
};
cargoHash = "sha256-A13nVLvjhoAPGIXfQX6AE+zMuvT7QT7BWJVS6ASnw10=";
nativeBuildInputs = [
pkg-config
];
buildInputs = [
libgit2
zlib
] ++ lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.CoreFoundation
darwin.apple_sdk.frameworks.CoreServices
darwin.apple_sdk.frameworks.Security
darwin.apple_sdk.frameworks.SystemConfiguration
];
# Disabling tests requiring network access
checkFlags = [
"--skip=e2e"
];
passthru = {
updateScript = nix-update-script { };
tests.version = testers.testVersion { package = typstyle; };
};
meta = {
changelog = "https://github.com/Enter-tainer/typstyle/blob/${src.rev}/CHANGELOG.md";
description = "Format your typst source code";
homepage = "https://github.com/Enter-tainer/typstyle";
license = lib.licenses.asl20;
mainProgram = "typstyle";
maintainers = with lib.maintainers; [ drupol ];
};
}