On Wed, 2007-12-26 at 14:23 +0100, Wouter Verhelst wrote:
> On Sun, Dec 23, 2007 at 07:17:16PM +0000, Neil Williams wrote:
> > I'd just add:
> > * it isn't in the spirit of free software to make it hard for others to
> > use the code - making a package Debian-native when it could work on any
> > GNU/Linux or POSIX platform makes it unnecessarily hard for a Fedora or
> > Gentoo user etc. to package the code and maintain it in their own
> > distro.
> 
> Sorry, but that's totally wrong. Nobody every told anyone to use the
> debian/ directory for anything.

That's not the point. It hinders sharing the code. I'm not unaware of
the issues here, I'm upstream for many of my Debian packages and only a
few are native. I make double uploads because it helps people package my
upstream code for Fedora and SuSE and I believe that free software
should never hinder the sharing of code. Releasing code with the debian/
directory intact, just complicates the work for other distros. We
complain when upstream have a borked debian/ directory in
the .orig.tar.gz yet it's not our problem if, upstream, we do the same
to others?

How does that look to other upstream teams developing on Fedora? "Oh,
we'll hack together some rubbish in debian/ since they put useless .spec
files in their upstream code." "Debian don't respect upstream
development" "Debian works in isolation and doesn't support other
upstreams".... I've covered this before and others have a better
experience of how Debian is regarded by some upstream teams but that
doesn't mean every upstream team thinks that way.

> 
> > How are they to know whether the latest native version is Debian
> > specific or contains useful "upstream" improvements?
> 
> By reading debian/changelog -- that's what it's for!

So they have to download the new *debian* version just to see what has
changed when if it was an SF project they could see that the Debian
release is of no interest to them as they have the .orig.tar.gz. Why
should people wanting to use your code have to watch (and understand)
Debian practices to package your POSIX code for a different
distribution? What about forcing others to make repeated (useless)
downloads and wasting their time reading Debian webpages / changelogs,
trying to pick out what they want from the Debian stuff they don't? The
package can be used outside Debian - why should someone outside Debian
need to read debian/changelog in the first place!

If the code is not dependent on Debian itself, why should someone from
another distribution even need to know about how Debian works just
because upstream happens to be a DD? All they care about is getting the
upstream code to work in Fedora or PCLinuxOS or gentoo or wherever. It
takes months to learn all the ins and outs of Debian packaging - why
make that a requirement for other distributions to package the upstream
code?

Write portable code in the first place and help others. What's wrong
with that?

> gdome2-xslt isn't the only package that's debian-native while not being
> debian-specific. 

Which, of course, doesn't make it right so to do. Things can change and
just because, historically, it happened one way does not mean that it
should continue that way. We have guidelines for use of native and
non-native packages, the distinction confuses lots of new packagers
(common refrain on the d-mentors list) and it would help Debian, new
maintainers and other distributions if we adopted a standard way of
dealing with the division that has more intrinsic logic than "the DD
felt like doing it that way".

Debian should be more friendly to upstream development - one way of
doing that is by ensuring that we only keep to ourselves packages that
are genuinely dependent on Debian itself. Then, when DD's write useful
code that requires other bits written by other DD's, Fedora can pick it
up and use the same code themselves, etc. If one of those dependencies
is Debian-native, it wastes time, hindering upstream development on
other projects which, eventually bites Debian in the rear. (e.g. by
forcing upstream to come up with dirty hacks to do what could be done in
a sane way if the relevant Debian package was available to them).

I strongly believe that free software should be distro-neutral by design
and in implementation. Just like the "any-browser" campaign and the like
- making a package native to any one distribution should be an absolute
last resort. 

So it causes an extra upload for upstream releases? So? Wow, that is a
lot of work, really taxing the brain cells ....

Some native packages even 'make install' directly into debian/tmp/ - how
unfriendly is that?!

It's about reuse of code, it is about sharing code and about not
thinking of Fedora et al as "competition" or a "burden" but as
colleagues, even friends - people who help us from time to time and who
should get some help in return.

Whatever we think, there will not come a time when every GNU/Linux user
is a Debian user - choice doesn't work that way. We can't convert
everyone to the Debian way, so why not support others who are actually
on the side of free software but just happen to use a different
GNU/Linux distribution?

> There's no reason why we should force maintainers to do more work to
> upload their software twice, just because some people think doing a
> native package for non-debian-specific code is ugly. It isn't.

I believe it is ugly, it is unfriendly and it hinders adoption of
upstream packages into other distributions.

Which would you rather package for Debian - a package that has a borked
debian directory and lots of other fluff about rpm's and emerge or a
simple, clean .orig.tar.gz?

Would you read the rpm webpage logs to try to work out whether you need
to package a Fedora update? What about Fink or one of the more esoteric
distributions? Just because we are Debian and we are big, does not mean
we should hinder the smaller distributions by hiding non-native code
within the mysteries of packages.debian.org.

If there is any realistic prospect that a native Debian package could
work on other POSIX platforms, it should *not* be native in the first
place, IMHO. gdome-xslt has no dependencies that are unique to Debian,
it is intrinsically not dependent on Debian itself, there is no
particular reason why it would not work on Fedora or any other
non-Debian distribution. Therefore, there is no good reason for it to be
native.

Carping about double uploads is just too lazy for words.

-- 


Neil Williams
=============
http://www.data-freedom.org/
http://www.nosoftwarepatents.com/
http://www.linux.codehelp.co.uk/


-- 


Neil Williams
=============
http://www.data-freedom.org/
http://www.nosoftwarepatents.com/
http://www.linux.codehelp.co.uk/


Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to