benmercerdev
benmercerdev

Reputation: 422

Proper way to install a public github repo to use in Google Colab?

I have a public Github repository -- and I'd like to pip install it in my Google Colab Python notebook and use some of the functions in its .py file.

This is how I'm trying to install it:

!pip install git+http://github.com/benmercerdev/inkblottin#egg=inkblottin

This is the error I'm getting:

Collecting inkblottin Cloning http://github.com/benmercerdev/inkblottin to /tmp/pip-install-4l26ktdy/inkblottin Running command git clone -q http://github.com/benmercerdev/inkblottin /tmp/pip-install-4l26ktdy/inkblottin ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

What am I missing here? Is it an issue with my repo or with my Colab code?

Upvotes: 2

Views: 2751

Answers (1)

phd
phd

Reputation: 94483

I tried to install the package with the command

pip install 'git+http://github.com/benmercerdev/inkblottin#egg=inkblottin'

locally and got the error:

ERROR: Command errored out with exit status 1:
 command: /home/phd/.virtualenvs/tmp-54bd678379cf43d6/bin/python2.7 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-4lmCa8/inkblottin/setup.py'"'"'; __file__='"'"'/tmp/pip-install-4lmCa8/inkblottin/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-install-4lmCa8/inkblottin/pip-egg-info
     cwd: /tmp/pip-install-4lmCa8/inkblottin/
Complete output (7 lines):
running egg_info
creating /tmp/pip-install-4lmCa8/inkblottin/pip-egg-info/inkblottin.egg-info
writing /tmp/pip-install-4lmCa8/inkblottin/pip-egg-info/inkblottin.egg-info/PKG-INFO
writing top-level names to /tmp/pip-install-4lmCa8/inkblottin/pip-egg-info/inkblottin.egg-info/top_level.txt
writing dependency_links to /tmp/pip-install-4lmCa8/inkblottin/pip-egg-info/inkblottin.egg-info/dependency_links.txt
writing manifest file '/tmp/pip-install-4lmCa8/inkblottin/pip-egg-info/inkblottin.egg-info/SOURCES.txt'
error: package directory 'inkblottin' does not exist
----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

This is a bug in the package: its setup.py tries to install package inkblottin but the distribution doesn't have such a package, it only has inkblot. Please fix your setup.py or rename the top-level package.

Upvotes: 1

Related Questions