LWN.net Logo

Callaway: Chromium: Why it isn't in Fedora yet as a proper package

Callaway: Chromium: Why it isn't in Fedora yet as a proper package

Posted Dec 6, 2009 12:20 UTC (Sun) by robilad (guest, #27163)
In reply to: Callaway: Chromium: Why it isn't in Fedora yet as a proper package by rahulsundaram
Parent article: Callaway: Chromium: Why it isn't in Fedora yet as a proper package

Thank you for your work on packaging in Fedora, and thank you for coming out with an example for your claim that Java developers claim that they are too unique, etc.

Rather then taking your claims at face value, I thought I'd see for myself. Not that I don't trust your authority, with you being a packager and all that, but I have not seen you post once to fedora-devel-java in the past 15 months, so I assume that is not your area of expertise. In particular, I can't find your name in the conversation in the Fedora bugzilla entry for freemind.

The last attempt in the Fedora package database that I can find is

https://bugzilla.redhat.com/show_bug.cgi?id=428413

It's a packaging attempt by Alex Leamas. A quick check on the freemind site confirms that he is not one of the freemind developers. That's not a good sign - the freemind source code tarball is larger then a megabyte, so understanding it in order to make significant modifications likely requires a significant investment in time.

In addition, Alec says:

"This is my first attempt to provide a package for Fedora...

Also, it's a java application. There is an obvious need for guidelines for java apps, hav'nt found any."

Attempting to package a large application in a domain where the distribution has no obviously findable guidelines as one's first package - what could possibly go wrong with that?

Then, after some initial work, some license issues are discovered by spot, and he says:

"Yeah, you are going to need to get upstream to resolve these license issues."

Now this could be the moment where the upstream shows uncooperative, and the oh so horrible ways of Java developers are unmasked. Amusingly enough, that's not what the bug says - it says nothing at all about the packager communicating with the upstream and reporting back how that went. So one has to search for it and finds an upstream developer say:

http://www.mail-archive.com/freemind-developer@lists.sour...

"I change the licence of my file soon and have a look at the others."

I tried hard to figure out how one could possibly take that to mean "we're too unique". I don't see it - to me that sounds like a Java upstream bending over backwards to help with licensing changes to ease the packaging into Fedora. Quite a different picture in reality then being painted here by spot & rahulsundaraman, apparently.

But, as I said, no word about that in the bug report.

So, why does the packaging attempt, unsurprisingly, eventually fail?

"file bindings.jar is the result of a compilation of a xml file which defines the interface. It might be impossible to get this compilation, involving JAXP API:s to work.

When rebuilding jaxme and running the compiler I run into problems since the source xml file contains constructs not supported by the jaxme xsd compiler. It might be possible to walk around this, but I don't know enough about the JAXP interfaces to do this, at least not now."

Translation to English: Because the prospective Fedora packager doesn't know enough about the software he's trying to package.

But that's not the only reason, there is also

"Even worse, current CVS sources shows that freemind now uses Sun's JAXB suite to handle this. It does support all constructs, but it is at best GPLv2 only. And it does not build for me, some kind of config problem."

JAXB is, of course, part of the Java SE 6 platform, so it's in IcedTea, OpenJDK 6, etc. It's dual licensed under CDDL 1.0 & GPLv2 with the Classpath Exception. No one of Fedora's licensing experts catches that mistake, and asks the prospective first-time packager to try using IcedTea or OpenJDK instead.

So it all predictably ends with:

"My first attempt to submit a package has, for now, failed.

The main reason is that recent code (after 0.0.9Beta15) has became heavy
dependent on Sun's JAXB reference implementation (https://jaxb.dev.java.net). This code has it's own set of dependencies, and could not reasonable be a part of this package due to both technical and legal reasons."

So, the legal reasons come down to Fedora's experts not bothering to check the first-time packager's assumptions about licensing of an upstream dependency and fix his mistake.

The technical reasons come down to the lack of prospective packager's technical prowess with the upstream codebase, and its dependencies. On a meta-level, attracting contributors for the jobs they don't have a chance of doing well is a failure in Fedora's recruiting & mentoring process.

Through the whole effort, the upstream project does not claim that they're too unique, apparently. There is nothing in the bug report indicating that the bundled libraries were patched and the upstream refused to send their patches further upstream, either, even though rahulsundaraman claims that is the most common issue.

So for someone familiar with Java development, the sweeping statements about Java developers made by rahulsundaraman & spot looks more like playing on a bias for the purpose of blame shifting to the upstream for inadequacies in Fedora's processes, recruiting & mentoring in the area of packaging Java applications.

What has happened since?

"Could this be reopened? The latest Freemind release candidates (I've tried 0.9.0-RC3 and RC4) work just fine with the OpenJDK VM supplied with Fedora 10 (java-1.6.0-openjdk-1.6.0.0-15.b14.fc10.i386"

"Please file a new review request and mark this bug as
a duplicate of the new one. "

No duplicate marked so far.

There has been a freemind package in Debian since 2004.


(Log in to post comments)

Callaway: Chromium: Why it isn't in Fedora yet as a proper package

Posted Dec 6, 2009 13:39 UTC (Sun) by rahulsundaram (subscriber, #21946) [Link]

Btw, there are several review failed review requests. You just managed to pick one. Feel free to research others and the long history of JPackage or Eclipse or any major Java software.

Spot maintains the largest number of packages in Fedora and nim-nim has been very involved with JPackage before. I have personal experiences which tell me the same thing. If you don't want to disagree with everyone's expertise, be my guest.

Callaway: Chromium: Why it isn't in Fedora yet as a proper package

Posted Dec 6, 2009 15:36 UTC (Sun) by robilad (guest, #27163) [Link]

I looked at freemind because you told me it backed up your claims. I didn't pick a project at random to make you look bad.

There is only one review request for freemind in the Fedora bugzilla as far as I can tell. I'd appreciate a pointer to a review request that shows that the freemind upstream is shipping patched libraries and refusing to upstream their patches with the excuse that 'we're too unique', as you imply.

But maybe you meant to point me to another package, and made a typo, or something. Would you please be so kind to point me to the failed review request for Fedora 12 that backs up your sweeping claims about Java developers?

What is the ratio of the review requests failing for Fedora-specific reasons like freemind vs. those failing for the reasons you attribute to Java developers in general in Fedora 12? Since you make the claim that it's the majority of cases, it should be trivial for you to back that up, right?

Callaway: Chromium: Why it isn't in Fedora yet as a proper package

Posted Dec 6, 2009 15:47 UTC (Sun) by robilad (guest, #27163) [Link]

My apologies for asking you to back something up you didn't literally say - you did not claim it was problem in the majority of cases, you said it was the 'most common one'. I'm curious how common it actually was for Fedora 12.
Is there a query for the Fedora bugzilla that lets me see those most common cases for Fedora 12?

Callaway: Chromium: Why it isn't in Fedora yet as a proper package

Posted Dec 7, 2009 1:43 UTC (Mon) by rahulsundaram (subscriber, #21946) [Link]

You continue to attribute claims that I did not make to me. I must ask you to stop doing that. I said, the most common problem with Java software is that they bundle copies of other Java software often with patches (to avoid dealing with dependencies). I did not say it is the most common problem in Fedora or Fedora 12.

A simple query on bugzilla doesn't return such information. Feel free to talk to package maintainers with some significant experience in maintaining packages for a large distribution and they would likely have noticed similar patterns. So would have the security teams of such distributions. You can also talk to folks involved with JPackage.

It was much more difficult a few years back

http://www.linuxjournal.com/article/7413

Red Hat's involvement with OpenJDK/IcedTea and other Java software has helped here and atleast some upstream projects have gotten better over a period of time as well, notably Eclipse. Some of it is a mismatch between tools. One effort to tackle the problem is at http://fedoraproject.org/wiki/KojiMavenSupport

Copyright © 2012, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds