Почему Mesop не может найти пакет Google, хотя я добавил его во флейк?

Моя чешуйка:

{
 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».

Посмотрите importerror-no-module-named-google, возможно, это поможет решить проблему.

user25009716 19.06.2024 05:17

@user25009716 user25009716 Да, это решает мою проблему. Я не могу дать тебе награду, пока ты не ответишь. (добавьте пакет google-api-python-client)

Pierre-olivier Gendraud 19.06.2024 06:10

@ user25009716 Я написал ответ. Но вы все равно можете написать свой ответ, чтобы получить награду.

Pierre-olivier Gendraud 19.06.2024 10:01
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
3
73
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Мне нужно было добавить пакет 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)
        ];
      };
    });
}

Другие вопросы по теме