NixOS / nixpkgs

Nix Packages collection & NixOS
MIT License
18.19k stars 14.2k forks source link

streamlit fails to build #196582

Closed dit7ya closed 1 year ago

dit7ya commented 2 years ago

Steps To Reproduce

Steps to reproduce the behavior:

  1. build streamlit from current nixpkgs master
    nix-build -A streamlit

Build log

ERROR: Could not find a version that satisfies the requirement protobuf!=3.20.2,<4,>=3.12 (from streamlit) (from versions: none)
ERROR: No matching distribution found for protobuf!=3.20.2,<4,>=3.12

error: builder for '/nix/store/pkrv27yzlfpla706bybscc1dy1i7ll6j-streamlit-1.13.0.drv' failed with exit code 1;
       last 10 log lines:
       > Requirement already satisfied: importlib-metadata>=1.4 in /nix/store/wvzj2c2n1ak2p7hag0yyhqpkc29l5ss6-python3.10-importlib-metadata-4.12.0/lib/python3.10/site-packages (from streamlit==1.13.0) (4.12.0)
       > Requirement already satisfied: pydeck>=0.1.dev5 in /nix/store/wnwhys4a7phmrfam2pdai6l8a3a7rcfq-python3.10-pydeck-0.7.1/lib/python3.10/site-packages (from streamlit==1.13.0) (0.7.1)
       > Requirement already satisfied: tzlocal>=1.1 in /nix/store/lcg2pv0ilf8w89z3m261j787c5js6k63-python3.10-tzlocal-4.2/lib/python3.10/site-packages (from streamlit==1.13.0) (4.2)
       > Requirement already satisfied: altair>=3.2.0 in /nix/store/wy8kbzj1fq9igl4wghr2m6f2qayivizx-python3.10-altair-4.2.0/lib/python3.10/site-packages (from streamlit==1.13.0) (4.2.0)
       > Requirement already satisfied: requests>=2.4 in /nix/store/y7vzg6m0xf4arqixbhf3rkn8yh4j0gzy-python3.10-requests-2.28.1/lib/python3.10/site-packages (from streamlit==1.13.0) (2.28.1)
       > Requirement already satisfied: pympler>=0.9 in /nix/store/px1d11xv20rv9801dkxzmf0kn9c8pxxc-python3.10-Pympler-1.0.1/lib/python3.10/site-packages (from streamlit==1.13.0) (1.0.1)
       > Requirement already satisfied: semver in /nix/store/x32dmyc7aq76f6m0w23q5hbvsd5fpf84-python3.10-semver-2.13.0/lib/python3.10/site-packages (from streamlit==1.13.0) (2.13.0)
       > ERROR: Could not find a version that satisfies the requirement protobuf!=3.20.2,<4,>=3.12 (from streamlit) (from versions: none)
       > ERROR: No matching distribution found for protobuf!=3.20.2,<4,>=3.12
       >

Additional context

The previous version of streamlit builds fine

Notify maintainers

@yrashk

Metadata

Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.

[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 6.0.0, NixOS, 22.11 (Raccoon)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.11.0`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`
tobim commented 2 years ago

I think this should get solved by https://github.com/NixOS/nixpkgs/pull/194111.

vcunat commented 2 years ago

It is not, at least in the later/merged version of the PR. The real version is at least 4.21, and the streamlit upstream has <4 restriction.

tobim commented 2 years ago

You're right. So this might require to add a protobuf3 derivation temporarily? Sorry if that doesn't make sense, I'm not at all familiar with python in nixpkgs.

vcunat commented 2 years ago

https://github.com/streamlit/streamlit/issues/5626

tobim commented 1 year ago

fixed in #203249.