You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Matt England <me...@mengland.net> on 2006/04/13 19:15:45 UTC

Auto-make package (eg .rpm) files? If not, why not?

(I debated about whether or not to post to -users or -dev.  My apologies if 
I made the wrong choice.)

Summary:

I want my C++ based project--which happens to be Subversion-controlled--to 
automatically create (via its build process) binary package files, eg, 
.rpm, .deb, .pkg, etc files (and I'm not talking about just src rpms--I 
mean the "binary" rpms).

But before I do, I'm wondering:  Why does Subversion not do this?  Should I 
take heed from this and not do it for my project (which is on the verge of 
being open sourced and distributed to the public)?


Details:

I don't see any rules to automatically make an rpm in:

http://svn.collab.net/repos/svn/trunk/Makefile.in

...although I do see the package specs in here:

http://svn.collab.net/repos/svn/trunk/packages/rpm/rhel-4/subversion.spec

And of course rpm's are available, but apparently by other people other 
then the "official" Subversion distribution.

Is this a compatibility/CYA move on Subversion's part?  eg, is the project 
worried about someone building an improper rpm, distributing it around, and 
making the Subversion project look bad?  (Among other things, binary 
compatibility is a tricky issue.)

What reasons would I want to do to not provide a 'make rpm' or 'make deb' 
or 'make pkg' ability from my project?

-Matt


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Auto-make package (eg .rpm) files? If not, why not?

Posted by Matt England <me...@mengland.net>.
Daniel, Garret, et al-

At 4/13/2006 03:00 PM, Daniel Rall wrote:
>Suggestion: Decide whether you want to be responsible for both your
>project's source and its packaging.

Sounds like a good suggestion, and thanks all for the feedback, including 
comments now show above.  I feel I can make a better decision on these 
things with the perspectives you have provided.

-Matt 


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Auto-make package (eg .rpm) files? If not, why not?

Posted by Daniel Rall <dl...@collab.net>.
On Thu, 13 Apr 2006, Matt England wrote:

> (I debated about whether or not to post to -users or -dev.  My apologies if 
> I made the wrong choice.)
> 
> Summary:
> 
> I want my C++ based project--which happens to be Subversion-controlled--to 
> automatically create (via its build process) binary package files, eg, 
> .rpm, .deb, .pkg, etc files (and I'm not talking about just src rpms--I 
> mean the "binary" rpms).
> 
> But before I do, I'm wondering:  Why does Subversion not do this?  Should I 
> take heed from this and not do it for my project (which is on the verge of 
> being open sourced and distributed to the public)?
> 
> 
> Details:
> 
> I don't see any rules to automatically make an rpm in:
> 
> http://svn.collab.net/repos/svn/trunk/Makefile.in
> 
> ...although I do see the package specs in here:
> 
> http://svn.collab.net/repos/svn/trunk/packages/rpm/rhel-4/subversion.spec
> 
> And of course rpm's are available, but apparently by other people other 
> then the "official" Subversion distribution.
> 
> Is this a compatibility/CYA move on Subversion's part?  eg, is the project 
> worried about someone building an improper rpm, distributing it around, and 
> making the Subversion project look bad?  (Among other things, binary 
> compatibility is a tricky issue.)
> 
> What reasons would I want to do to not provide a 'make rpm' or 'make deb' 
> or 'make pkg' ability from my project?

Hypothesis: It's a question of dependencies, ownership, and
responsibility.  Anything in Subverion's build system (and thus,
Makefile) is considered to be "maintained" by Subversion's full
committers, while maintenance of the various native (and often
platform-specific) packaging mechanisms is more often handled by
individuals who focus on that particular aspect.

As a release of Subversion doesn't depend on the packaging (we ship
source tarballs which can be built on numerous platforms), there's no
reason to introduce yet another set of dependencies into Subversion
for something over which the full committer's accept no (official)
ownership.  We leave this part of the process to be handled by
downstream packagers, generally reducing the workload for our mostly
volunteer group.  (Though don't get me wrong, the Subversion project
wants and attempt to help out with native packages on as many
platforms as possible.)

My employer's (CollabNet's) build system, on the other hand, does
produce native packages for several platforms.  Engineers at CollabNet
take responsiblity for this because it *is* one of our deliverables.

Suggestion: Decide whether you want to be responsible for both your
project's source and its packaging.
-- 

Daniel Rall

Re: Auto-make package (eg .rpm) files? If not, why not?

Posted by Garrett Rooney <ro...@electricjellyfish.net>.
On 4/13/06, Matt England <me...@mengland.net> wrote:

> I don't see any rules to automatically make an rpm in:
>
> http://svn.collab.net/repos/svn/trunk/Makefile.in
>
> ...although I do see the package specs in here:
>
> http://svn.collab.net/repos/svn/trunk/packages/rpm/rhel-4/subversion.spec
>
> And of course rpm's are available, but apparently by other people other
> then the "official" Subversion distribution.

That's not actually true, the rpm info files and whatnot are located
in the packages directory in the source tree.  Sure, some people have
their own set of package scripts customized for a particular linux
distribution or operating system, but in many cases we also have them
in the tree.  They're not automated as part of the build, but I don't
recall anyone ever asking for that...

-garrett

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org