Re: [PATCH 1/2] Add expat and expat-devel dependencies (for http-push) to RPM spec.
From: Andreas Ericsson <hidden>
Date: 2016-06-15 22:42:11
Linus Torvalds wrote:
If there's some way to "suggest" ssh when installing git, that would be good, but I don't think rpm has that.
It hasn't. It was designed to update software non-interactively.
And if somebody doesn't have ssh installed, they probably don't have a network, so maybe even that is unnecessary.
I *think* the ssh transport should work nicely over rsh as well. I don't have the slightest idea of where to find an rsh installation to test it with though.
So depending on the curl _program_ would fall under the same harmless case as depending on ssh and rsync, but the thing is, we depend on it as a library, which is why we should split things up.
True. But HTTP is a very simple protocol and git only uses a very small portion of curl's capabilities so it wouldn't be rocket-science to hack up some micro-replacement and always use the shipped stuff.
quoted
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...).Yes. NOTE! Git does actually require the "merge" program,
That depends on how it's used. If some script expects 'merge' to be there and does things that might break the index if it isn't, then it's required.
which sometimes comes with the diff3 package, and more often comes with rcs. As with ssh and rsync, it's an external program and only really required if you do development (you can fast-forward something that you're only tracking read-only without it), so in theory you don't absolutely need it, but we do have a dependency on RCS right now due to that.
It could require /usr/bin/merge instead. Seeing as people who install packages usually installs other things as packages too this would probably make more sense.
Which is a bit strange, and sometimes wrong (the same machine that doesn't have curl installed also doesn't have rcs installed, but I compile git on it anyway, and it works fine, since I use that machine only as a backup thing to receive git packs - in case kernel.org goes down _and_ all my home machines magically turn into pumpkins, I'll still have another site I can get my git repos from).
Still though, be kind to the fairy godmother. ;)
quoted
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.Yeah, that "git-core-xxx" thing is a bit strange, but on the other hand, it does make it clear that they all come from the same SRPM (the "git-core" SRPM) so in the end I think it's actually a good idea.
The change would only mean that all packages will come from the "git" SRPM rather than the "git-core" SRPM so this point is moot unless there will ever be such a thing as the "git" SRPM to contend with (which will be less likely if we're it, so to speak). -- Andreas Ericsson andreas.ericsson@op5.se OP5 AB www.op5.se Tel: +46 8-230225 Fax: +46 8-230231