From cd63cf95627c9c0e602d8dd31a48439952c76aa5 Mon Sep 17 00:00:00 2001 From: Andrea Ciceri Date: Thu, 21 May 2026 10:03:00 +0200 Subject: [PATCH] mpy-utils: drop fusepy, modernize derivation and unbreak on darwin --- pkgs/by-name/mp/mpy-utils/package.nix | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/pkgs/by-name/mp/mpy-utils/package.nix b/pkgs/by-name/mp/mpy-utils/package.nix index 4264b0a3a466..73a174e36bf6 100644 --- a/pkgs/by-name/mp/mpy-utils/package.nix +++ b/pkgs/by-name/mp/mpy-utils/package.nix @@ -1,30 +1,47 @@ { - stdenv, lib, python3Packages, fetchPypi, + fetchpatch2, }: python3Packages.buildPythonApplication (finalAttrs: { pname = "mpy-utils"; version = "0.1.13"; - format = "setuptools"; + pyproject = true; src = fetchPypi { inherit (finalAttrs) pname version; hash = "sha256-die8hseaidhs9X7mfFvV8C8zn0uyw08gcHNqmjl+2Z4="; }; - propagatedBuildInputs = with python3Packages; [ - fusepy + patches = [ + # https://github.com/nickzoic/mpy-utils/pull/20 + (fetchpatch2 { + name = "use-mfusepy.patch"; + url = "https://github.com/nickzoic/mpy-utils/commit/1513b4dc1096bd8861792cd13abafd2342fb5510.patch?full_index=1"; + hash = "sha256-ZgSEP+4yJf/0itApSmVh/hSqW10Ty+/kOjxg+XJsnn4="; + }) + ]; + + build-system = with python3Packages; [ setuptools ]; + + dependencies = with python3Packages; [ + mfusepy pyserial ]; + # Skip mpy_utils.replfuseops: importing it loads libfuse via ctypes, which + # requires macFUSE on Darwin and is not available in the build sandbox. + pythonImportsCheck = [ + "mpy_utils" + "mpy_utils.replcontrol" + ]; + meta = { description = "MicroPython development utility programs"; homepage = "https://github.com/nickzoic/mpy-utils"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ aciceri ]; - broken = stdenv.hostPlatform.isDarwin; }; })