From: Andreas Ericsson Date: Sun, 13 Nov 2005 18:40:32 GMT Subject: Re: [PATCH 1/2] Add expat and expat-devel dependencies (for http-push) to RPM spec. Message-ID: <437788A0.6030103@op5.se> In-Reply-To: Linus Torvalds wrote: > > Quite frankly, I'd really prefer to see the git-core-http as a separate > package. > This would get rid of expat and curl dependencies. ssh, rsync and git protocols use external programs so they aren't exactly required (from the rpm point of view anyways, they'll just fail if rsync or ssh isn't installed). I.e. Good idea, but see below. > I think it's ludicrous that people want to split out gitk (because it > wants tcl/tk), but that we then add all of these really obscure > dependencies for the http part. > Couldn't agree more. Moving out the {cvs,arch,svn}-import scripts made sense because they were only faintly related to git day-to-day operations and forced some really ridiculous dependencies down users throats (git requiring subversion was a funny one...). It *might* make sense to build a very minimalistic package for server-side use only, but for client-side use it's really only confusing to have a dozen packages to install to get the full functionality. While we're on the subject of confusing; How about not naming non-core packages git-core? It feels wrong to have git-core-http, git-core-cvs and git-core-svn since they, strictly speaking, aren't required for core operations. So, to be nicely constructive then I suggest we create the following packages; git-core; Low-level stuff with as few dependencies as possible (ssh and openssl should suffice, really). This should be everything needed for running a server and should be required by all other git-* packages. It will most likely be enough to run most client-side things as well. git; holds all client side stuff useful for humans interfacing with git that introduces "normal" dependencies not necessarily found everywhere (gitk and suchlike). git-email; This one only uses Email::Valid->address(), so I'll import that function from the perl module so this dependency can be dropped and git-send-email can be in the 'git' package. Programs introducing obscene or plain weird dependencies (cvsimport, svnimport) can be put into their own package, but we should really try to keep those extra packages to a minimum and simply force users who want all the fluffy niceties of the 'git' package to install whatever's required (or install with --nodeps, or from source, or...). -- Andreas Ericsson andreas.ericsson@op5.se OP5 AB www.op5.se Tel: +46 8-230225 Fax: +46 8-230231