My current setup.py (using setuptools) installs two things, one is tvdb_api
(an API wrapper), the other is tvnamer
(a command line script)
I wish to make the two available separately, so a user can do..
easy_install tvdb_api
..to only get the API wrapper, or..
easy_install tvnamer
..to install tvnamer (and tvdb_api, as a requirement)
Is this possible without having two separate setup.py
scripts? Can you have two separate PyPi packages that come from the same python setup.py upload
command..?
setup.py
is just a regular Python file, which by convention sets up packages. By convention, setup.py
contains a call to the setuptools or distutils setup()
function. If you want to use one setup.py
for two packages, you can call a different setup()
function based on a command-line argument:
import sys
if len(sys.argv) > 1 and sys.argv[1] == 'script':
sys.argv = [sys.argv[0]] + sys.argv[2:]
setup(name='tvnamer', ...)
else:
setup(name='tvdb_api', ...)
Practically, though, I'd recommend just writing two scripts.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With