From b92f1fdc226d6c099efc064f182dd23e884acc00 Mon Sep 17 00:00:00 2001 From: cybardev <50134239+cybardev@users.noreply.github.com> Date: Sun, 1 Jun 2025 05:18:04 -0300 Subject: [PATCH] pyrefly: init at 0.17.1 Co-authored-by: QuiNzX <76129478+QuiNzX@users.noreply.github.com> --- pkgs/by-name/py/pyrefly/package.nix | 51 +++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 pkgs/by-name/py/pyrefly/package.nix diff --git a/pkgs/by-name/py/pyrefly/package.nix b/pkgs/by-name/py/pyrefly/package.nix new file mode 100644 index 000000000000..2b30b5e125b3 --- /dev/null +++ b/pkgs/by-name/py/pyrefly/package.nix @@ -0,0 +1,51 @@ +{ + lib, + python3, + fetchPypi, + versionCheckHook, + nix-update-script, + rustPlatform, + maturin, +}: +python3.pkgs.buildPythonApplication rec { + pname = "pyrefly"; + version = "0.17.1"; + pyproject = true; + + # fetch from PyPI instead of GitHub, since source repo does not have Cargo.lock + src = fetchPypi { + inherit pname version; + hash = "sha256-w4ivRtmApXiXQT95GI4vvYBop7yxdbbkpW+YTyFtgXM="; + }; + + cargoDeps = rustPlatform.fetchCargoVendor { + inherit src; + hash = "sha256-Op5ueVkzZTiJ1zeBGVi8oeLcfSzXMYfk5zEg4OGyA5g="; + }; + + build-system = [ maturin ]; + + nativeBuildInputs = with rustPlatform; [ + cargoSetupHook + maturinBuildHook + ]; + + nativeCheckInputs = [ versionCheckHook ]; + + # requires unstable rust features + env.RUSTC_BOOTSTRAP = 1; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Fast type checker and IDE for Python"; + homepage = "https://github.com/facebook/pyrefly"; + license = lib.licenses.mit; + mainProgram = "pyrefly"; + platforms = lib.platforms.linux ++ lib.platforms.darwin; + maintainers = with lib.maintainers; [ + cybardev + QuiNzX + ]; + }; +}