[tahoe-lafs-trac-stream] [tahoe-lafs] #2063: users expect 'python setup.py install' to install dependencies
tahoe-lafs
trac at tahoe-lafs.org
Fri Aug 30 18:04:01 UTC 2013
#2063: users expect 'python setup.py install' to install dependencies
-------------------------+-------------------------------------------------
Reporter: sel | Owner: sel
Type: defect | Status: new
Priority: normal | Milestone: undecided
Component: | Version: 1.10.0
packaging | Keywords: install fedora linux packaging
Resolution: | setuptools
Launchpad Bug: |
-------------------------+-------------------------------------------------
Comment (by sel):
Replying to [comment:16 gdt]:
> Replying to [comment:11 sel]:
> > Generally I think the package system just downloads *prebuilt*
packages. It is okay to have a command line option that must be specified
to install dependencies, it is also okay to have a list of dependencies
that can be installed in a separate step.[[BR]]
> > My concern is: once I have created the introducer, I need to create N
storage nodes, that's why I would like to automate the installation as
much as possible.
>
> Sorry, I wasn't clear enough. There are two parts to packaging systems.
One is the control files that take the upstream distribution file and
build a binary package. The other is how users install binary packages.
Both of these mechanisms are within the packaging system, and both have to
manage dependencies by expressing that other packages are required first.
>
> It seems that in most GNU/Linux systems, users almost never build
packages from source using the packaging system, but just use binary
packages. In pkgsrc, the norm is to build from source but using the
packaging system, because of the huge number of OS/os-version/CPU tuples.
I think that pkgsrc and yum are different, afaik yum uses separate
packages for binaries (rpm) or sources (srpm), but I have never seen yum
build packages from source.
> I think it's an artifact of tahoe being in python that there is this
focus on setup scripts automatically fetching and installing dependencies.
In general, step one of building something from source is to read the
dependency list and make sure those are installed. So I think the focus
should be on having tahoe available via packaging systems, rather than
out-of-system dependency management. (I've done this for pkgsrc, and thus
am mostly ignoring the setuptools kerfluffle.)
There are a couple of situations where the packaging system doesn't help:
for example the mock package (needed by tahoe) that comes with current
fedora, is higher version (1.1.32) from the one needed by tahoe (0.8.0).
--
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/2063#comment:17>
tahoe-lafs <https://tahoe-lafs.org>
secure decentralized storage
More information about the tahoe-lafs-trac-stream
mailing list