Nixpkgs: tensorflow-bin build fails

Created on 18 Nov 2019  路  15Comments  路  Source: NixOS/nixpkgs

Describe the bug
Error on installation of tensorflow-bin on nixpkgs master branch

ERROR: Could not find a version that satisfies the requirement tensorboard<1.15.0,>=1.14.0 (from tensorflow==1.14.0) (from versions: none)
ERROR: No matching distribution found for tensorboard<1.15.0,>=1.14.0 (from tensorflow==1.14.0)

To Reproduce
Steps to reproduce the behavior:

nix-env -iA nixos.python37Packages.tensorflow-bin

using unstable channel

Expected behavior
tensorflow-bin should install without an error.

Metadata
Please run nix run nixpkgs.nix-info -c nix-info -m and paste the result.

% nix run nixpkgs.nix-info -c nix-info -m                                                ~
 - system: `"x86_64-linux"`
 - host os: `Linux 4.19.84, NixOS, 20.03pre201791.c1966522d7d (Markhor)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.3.1`
 - channels(arsleust): `"home-manager"`
 - channels(root): `"nixos-20.03pre201791.c1966522d7d"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Maintainer information:

# a list of nixpkgs attributes affected by the problem
attribute:
  - tensorflow-bin
# a list of nixos modules affected by the problem
module:
bug python

All 15 comments

the main tensorflow package has been bumped, this should probably be bumped as well

This is also the reason why tensorflow broken on darwin

cc #71282
cc @timokau

I could not find whl for 0.15.0. This page lists some: https://www.tensorflow.org/install/pip
But 0.15 is not there for some reason.

I'm not maintaining the tensorflow-bin package, but I'm sorry that I forgot to update it along with tensorflow.

Do we even still need it? The source package works pretty well.

Building tensorflow from sources fails for non-sandboxed setups because of its dependency on bazel (https://github.com/NixOS/nixpkgs/issues/66311) so this package is the only way to reliably install tensorflow there.

I could not find whl for 0.15.0. This page lists some: https://www.tensorflow.org/install/pip
But 0.15 is not there for some reason.

I found some 0.15.0 whl's on PyPi:
https://pypi.org/project/tensorflow-cpu/#files
However they seem to require "tensorflow-cpu-estimator" instead of "tensorflow-estimator", so we would need to add that package (will it conflict with tensorflow-estimator?). Also, this way of downloading would break the patterns used in the current tensorflow-bin, we would have to switch it to use fetchPyPi, probably. I don't think I will take on this.

Do we even still need it? The source package works pretty well.

Yes, another reason is because tensorflow-bin is the tensorflow on darwin.

Do we even still need it? The source package works pretty well.

Building tensorflow from source is very, very long. Most people don't want that.
Or maybe I misunderstood something.

Yes, I think that is a misunderstanding. There is a binary cache that will save you from having to build anything yourself unless you choose to.

although, having to do overrides to get old versions does usually cause a rebuild. I ran into a runtime issue with the tensorflow-1.15 package (not sure if issue with 1.15 in general, or just our build), and had to revert it back to when 1.14 still built...

True, but in that case you could revert the whole tree to a known-good state (just as you would with the binary package).

Yes, I think that is a misunderstanding. There is a binary cache that will save you from having to build anything yourself unless you choose to.

Ok thanks. Is it because I want it to support CUDA that the regular tensorflow package does a full build from source on my computer ?

Probably, I think hydra doesn't build unfree packages. Its unfortunate that cuda support has to be present at compiletime and can't just be detected at runtime. Maybe there's some way to achieve that.

Let's update tensorflow-bin to latest 1.x version; that is 1.15

I think the issue should just read "tensorflow-bin: update to 1.15"

cc @jyp @abbradar

This is still broken now in the 20.03 branch, and an update has other side effects:
py2 support is gone in the latest 1.15, also the naming scheme of the packages changed.
There are also incompatible dependencies (gast==0.2.2, opt-einsum, ...?).
Maybe the easiest fix is a private bundled downgraded tensorboard.

Hello, I'm a bot and I thank you in the name of the community for opening this issue.

To help our human contributors focus on the most-relevant reports, I check up on old issues to see if they're still relevant. This issue has had no activity for 180 days, and so I marked it as stale, but you can rest assured it will never be closed by a non-human.

The community would appreciate your effort in checking if the issue is still valid. If it isn't, please close it.

If the issue persists, and you'd like to remove the stale label, you simply need to leave a comment. Your comment can be as simple as "still important to me". If you'd like it to get more attention, you can ask for help by searching for maintainers and people that previously touched related code and @ mention them in a comment. You can use Git blame or GitHub's web interface on the relevant files to find them.

Lastly, you can always ask for help at our Discourse Forum or at #nixos' IRC channel.

ERROR: Could not find a version that satisfies the requirement tensorflow-estimator<1.15.0rc0,>=1.14.0rc0 (from tensorflow==1.14.0) (from versions: none)
ERROR: No matching distribution found for tensorflow-estimator<1.15.0rc0,>=1.14.0rc0 (from tensorflow==1.14.0)

Was this page helpful?
0 / 5 - 0 ratings

Related issues

sid-kap picture sid-kap  路  3Comments

tomberek picture tomberek  路  3Comments

domenkozar picture domenkozar  路  3Comments

ghost picture ghost  路  3Comments

retrry picture retrry  路  3Comments