Моя чешуйка:
{
description = "mesop";
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
inputs.flake-utils.url = "github:numtide/flake-utils";
outputs = { self, nixpkgs, flake-utils, ... }:
flake-utils.lib.eachDefaultSystem (system: let
pkgs = nixpkgs.legacyPackages.${system};
mesop = with pkgs.python3Packages;
buildPythonPackage rec {
pname = "mesop";
version = "0.8.0";
format = "wheel";
src = pkgs.python3Packages.fetchPypi rec {
inherit pname version format;
sha256 = "f156bf53f672588339b2be461017aecda860b9ffca15c86553f76255dd882670";
dist = python;
python = "py3";
};
};
pythonEnv = pkgs:
pkgs.python3.withPackages (ps:
with ps; [
mesop
absl-py
flask
google
]);
in {
devShells.default = pkgs.mkShell {
buildInputs = with pkgs; [
curl
(pythonEnv pkgs)
];
};
});
}
Мне нужен пакет Google (https://search.nixos.org/packages?channel=unstable&from=0&size=50&sort=relevance&type=packages&query=google), чтобы использовать команду mesop. Я добавил это. Я успешно запустил флейк.
nix develop
Но когда я попытался запустить команду mesop.
mesop
У меня возникла эта проблема:
Traceback (последний вызов последний): Файл «/nix/store/2f1faid63zawdgnmg7hn51mqwndn8gkk-python3.11-mesop-0.8.0/bin/.mesop-wrapped», строка 6, в из mesop.bin.bin импортировать run_main Файл «/nix/store/ywsz5bbhkfgb0lh4xyxhpsc731c8labg-python3-3.11.9-env/lib/python3.11/site-packages/mesop/init.py», строка 5, в из mesop.colab.colab_run импортируйте colab_run как colab_run Файл «/nix/store/ywsz5bbhkfgb0lh4xyxhpsc731c8labg-python3-3.11.9-env/lib/python3.11/site-packages/mesop/colab/colab_run.py», строка 6, в из mesop.runtime импортируйте Enable_debug_mode Файл «/nix/store/ywsz5bbhkfgb0lh4xyxhpsc731c8labg-python3-3.11.9-env/lib/python3.11/site-packages/mesop/runtime/init.py», строка 1, в из импорта .runtime ( Файл «/nix/store/ywsz5bbhkfgb0lh4xyxhpsc731c8labg-python3-3.11.9-env/lib/python3.11/site-packages/mesop/runtime/runtime.py», строка 6, в импортировать mesop.protos.ui_pb2 как pb Файл «/nix/store/ywsz5bbhkfgb0lh4xyxhpsc731c8labg-python3-3.11.9-env/lib/python3.11/site-packages/mesop/protos/ui_pb2.py», строка 5, в из построителя импорта google.protobuf.internal как _builder ModuleNotFoundError: нет модуля с именем «google».
@user25009716 user25009716 Да, это решает мою проблему. Я не могу дать тебе награду, пока ты не ответишь. (добавьте пакет google-api-python-client)
@ user25009716 Я написал ответ. Но вы все равно можете написать свой ответ, чтобы получить награду.





Мне нужно было добавить пакет google-api-python-client, чтобы решить проблему. После этого возникают другие проблемы, и мне нужно добавить другой пакет. Но в сообщениях об ошибках было ясно сказано, что устанавливать.
Весь финальный флейк, который работает:
{
description = "mesop";
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
inputs.flake-utils.url = "github:numtide/flake-utils";
outputs = { self, nixpkgs, flake-utils, ... }:
flake-utils.lib.eachDefaultSystem (system: let
pkgs = nixpkgs.legacyPackages.${system};
mesop = with pkgs.python3Packages;
buildPythonPackage rec {
pname = "mesop";
version = "0.8.0";
format = "wheel";
src = pkgs.python3Packages.fetchPypi rec {
inherit pname version format;
sha256 = "f156bf53f672588339b2be461017aecda860b9ffca15c86553f76255dd882670";
dist = python;
python = "py3";
};
};
pythonEnv = pkgs:
pkgs.python3.withPackages (ps:
with ps; [
mesop
absl-py
flask
google
google-api-python-client
deepdiff
pydantic
libcst
markdown
watchdog
]);
in {
devShells.default = pkgs.mkShell {
buildInputs = with pkgs; [
curl
(pythonEnv pkgs)
];
};
});
}
Согласно сообщению об ошибке ModuleNotFoundError: No module named 'google' и той же проблеме из importerror-no-module-named-google. Предложите вам попробовать добавить пакет google-api-python-client, который, возможно, решит проблему.
{
description = "mesop";
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
inputs.flake-utils.url = "github:numtide/flake-utils";
outputs = { self, nixpkgs, flake-utils, ... }:
flake-utils.lib.eachDefaultSystem (system: let
pkgs = nixpkgs.legacyPackages.${system};
mesop = with pkgs.python3Packages;
buildPythonPackage rec {
pname = "mesop";
version = "0.8.0";
format = "wheel";
src = pkgs.python3Packages.fetchPypi rec {
inherit pname version format;
sha256 = "f156bf53f672588339b2be461017aecda860b9ffca15c86553f76255dd882670";
dist = python;
python = "py3";
};
};
pythonEnv = pkgs:
pkgs.python3.withPackages (ps:
with ps; [
mesop
absl-py
flask
google
google-api-python-client
]);
in {
devShells.default = pkgs.mkShell {
buildInputs = with pkgs; [
curl
(pythonEnv pkgs)
];
};
});
}
Посмотрите importerror-no-module-named-google, возможно, это поможет решить проблему.