I think this is a bit pertinent to the discussion so I thought I should mention it.
A few Java developer communities have contacted
jpackage.org in the past (some contacted
myself personally) asking for the organization name to be used as a prefix. One of these
was ObjectWeb. Have you noticed that asm became objectwb-asm?
We have a conflict (I believe not on Fedora) with a package called hibernate. The
conflict is not happening by chance, as the Java hibenate package was made hibernate3 when
the release 3 appeared and the 2 was stil around. Conveniently, I have been recently
questioned by some JBoss person why the package was not called jboss-hibernate. Maybe we
should oblige :-)
There are lots of Java packages that already follow this practice in most Linux distros
and we ourselves have the jakarta-* and apache-* and geronimo-* and so on. So we are
basically covered on the "N" side of things.
The JAR file names are not a problem as they go under %{_javadir} and won't conflict
with non-Jva packages (no more .so's with OpenJDK),
The only remaining conflicts are for commands (wrapper scripts mostly for Java) that are
installed in /usr/bin. Not all Java packages have scripts there though. In theory some
SysV init scripts or /etc/sysconfig/ stuff could collide too, but in all these years we
had no such case and we can always bury it under a subdirectory with the package name, so
in practice only /usr/bin commands can conflict. One of the conflicting commands will
have to be renamed if this ever happens. Note that this is not exclusive of Java, any two
softwares written in any two languages can decide to call a command "twitter"
for instance.
Regards,
Fernando
----- Original Message -----
From: "Toshio Kuratomi" <a.badger(a)gmail.com>
To: "Discussion of RPM packaging standards and practices for Fedora"
<fedora-packaging(a)redhat.com>
Sent: Saturday, May 9, 2009 1:11:15 PM GMT -05:00 US/Canada Eastern
Subject: Re: [Fedora-packaging] Java guideline inconsistency
Peter Lemenkov wrote:
2009/5/9 Jussi Lehtola <jussi.lehtola(a)iki.fi>:
> Quite on the contrary. I think prefixes are quite useful, since many
> language specific packages might have otherwise conflicting names
Not a names, but a *filenames*. This should be fixed as well - I don't
think that there is a reason to maintain correspondence between %name
field and the resulting rpm's filenames (or even to maintain
human-readable rpm filenames), at least in main repositories.
There isn't a correspondence. Or rather, the correspondence you see is
entirely cosmetic. the rpm _filenames_ are entirely for the convenience
of the humans who have to deal with them. The rpm Name attribute is
what rpm, yum, and the package manager depend on. And conflicts between
the rpm Name attribute are very bad.
If we had two different packages with Name: argparse and one was a
library for java and one was for python we could rename the filenames so
that they can both exist in the repositories. But the moment you go to
install them you have a conflicting rpm name and have problems:
* Which of the two packages will be installed when you run yum install
argparse?
* How do you install both packages at the same time?
* How do you prevent one package from upgrading the other package since
the name is the same in the rpm database?
and so on and so forth.
-Toshio
--
Fedora-packaging mailing list
Fedora-packaging(a)redhat.com
https://www.redhat.com/mailman/listinfo/fedora-packaging