diff --git a/pkgs/development/python-modules/flet-cli/default.nix b/pkgs/development/python-modules/flet-cli/default.nix new file mode 100644 index 000000000000..f6e4f971e544 --- /dev/null +++ b/pkgs/development/python-modules/flet-cli/default.nix @@ -0,0 +1,59 @@ +{ + lib, + buildPythonPackage, + flet-client-flutter, + + # build-system + poetry-core, + + flet, + qrcode, + toml, + watchdog, +}: + +buildPythonPackage rec { + pname = "flet-cli"; + inherit (flet-client-flutter) version src; + pyproject = true; + + sourceRoot = "${src.name}/sdk/python/packages/flet-cli"; + + build-system = [ poetry-core ]; + + dependencies = [ + flet + qrcode + toml + watchdog + ]; + + pythonRelaxDeps = [ "qrcode" "watchdog" ]; + + makeWrapperArgs = [ + "--prefix" + "PYTHONPATH" + ":" + "$PYTHONPATH" + ]; + + postInstall = '' + mkdir -p $out/bin + makeWrapper ${flet}/bin/flet $out/bin/flet \ + --prefix PYTHONPATH : $PYTHONPATH + ''; + + pythonImportsCheck = [ "flet_cli" ]; + + meta = { + description = "Command-line interface tool for Flet, a framework for building interactive multi-platform applications using Python."; + homepage = "https://flet.dev/"; + changelog = "https://github.com/flet-dev/flet/releases/tag/v${version}"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ + heyimnova + lucasew + ]; + mainProgram = "flet"; + }; +} diff --git a/pkgs/development/python-modules/flet/default.nix b/pkgs/development/python-modules/flet/default.nix index bace224fc428..794072e8b25c 100644 --- a/pkgs/development/python-modules/flet/default.nix +++ b/pkgs/development/python-modules/flet/default.nix @@ -39,13 +39,21 @@ buildPythonPackage rec { "$PYTHONPATH" ]; - pythonRelaxDeps = [ - "cookiecutter" - "packaging" - "qrcode" - "watchdog" - "websockets" - ]; + _flet_version = '' + version = "${version}" + def update_version(): + pass + ''; + _flet_utils_pip = '' + def install_flet_package(name: str): + pass + ''; + + postPatch = '' + # nerf out nagging about pip + echo "$_flet_version" > src/flet/version.py + echo "$_flet_utils_pip" >> src/flet/utils/pip.py + ''; dependencies = [ fastapi diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index b0cdf4d203ab..4c22310ee0c4 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4776,6 +4776,8 @@ self: super: with self; { flet = callPackage ../development/python-modules/flet { }; + flet-cli = callPackage ../development/python-modules/flet-cli { }; + flexcache = callPackage ../development/python-modules/flexcache { }; flexit-bacnet = callPackage ../development/python-modules/flexit-bacnet { };