Separating everything ?

David Faure faure+bluesystems at kde.org
Thu Feb 7 20:57:51 UTC 2013


On Thursday 07 February 2013 21:11:02 Alexander Neundorf wrote:
> On Thursday 07 February 2013, Kevin Ottens wrote:
> > On Thursday 7 February 2013 16:09:51 Frank Reininghaus wrote:
> > > Is there anything obvious that I'm overlooking? One could argue that
> > > separate repositories make it easier for non-KDE people to contribute
> > > to one particular framework.
> > 
> > It's not only contributing but also using. It's almost more important IMO
> > (especially since more users mean more contributors).
> > 
> > > But if each framework inside the kdelibs repository can easily be built
> > > separately, this point looks moot to me, and it cannot justify making
> > > the
> > > build and debug process more painful for the (probably rather common)
> > > case that a person wants to build and use all of KDE frameworks.
> > 
> > Well, as you pointed out the build part is not more painful with proper
> > tools (and kdesrc-build is getting quite good there). As for the
> > debugging... well you have already quite some repositories today, I don't
> > think it's making it worse (I doubt we want everything in a single
> > repository just to be able to git bisect anyway :-)).
> 
> I for one, loved to be able to do svn up in KDE/ and get everything, without
> having to use additional tools.

Well, you needed additional tools (at least scripts) to actually configure and 
build all these modules after checking them out.

BTW if you want an equivalent today (checkout/update everything, but no 
building), you can use `kde-checkout-list.pl --clone`.

> We have kdesrc-build, Qt5 has qt5_tool

Not really comparable. kdesrc-build builds, qt5_tool only wraps git.

> Building and packaging separately is nice, but having to fetch from multiple
> repositories sucks.
> It would be nice if there was some built-in solution in git.

git submodules is the builtin solution in git.
Look at what qt5_tool -u does:
 * git pull
 * git submodule update
Nothing else. So you can use git if you prefer to use git :)

The thing about submodules, which is both good and bad, is that you need to 
commit a sha1 update in the parent for people to see the changes. This allows 
qt5.git to only update in one go from a stable state to another (a bit like a 
transaction). But I'm not sure we want to have to do that in kde.

-- 
David Faure, faure at kde.org, http://www.davidfaure.fr
Sponsored by BlueSystems and KDAB to work on KDE Frameworks



More information about the Kde-frameworks-devel mailing list