F21 System Wide Change: Headless Java

Stephen Gallagher sgallagh at redhat.com
Tue Nov 19 18:29:58 UTC 2013

Hash: SHA1

On 11/19/2013 11:23 AM, Reindl Harald wrote:
> Am 19.11.2013 17:15, schrieb Stanislav Ochotnicky:
>>> I mean (and sorry that I wasn't clear), why the choice to make
>>> java-headless the special case?  Especially if (as it appears
>>> from the reply to Jerry James), most packages in Fedora will
>>> only need the headless version.
>>> (So the headless version would be the java package,  The
>>> version with the gui nevironmen deps would be java-x11 or
>>> similar).
>> If someone wanted to install just OpenJDK for their own in-house
>> Java application they would have to know to request full -x11
>> version. I would wager we'd be receiving a lot of bugs if we went
>> this way. If someone needs headless they will be actively looking
>> for it. If they want "java" they will not consider that they
>> might get incomplete version. Not to mention possible 3rd party
>> RPMs that might exist
> what about having a "java-1.7.0-openjdk" meta-package obsoleting
> the existing one and pulling *both* but decide if Fedora packages
> if the headless is enough for dependencies and so packagers of
> sevrer software can require this?
> this way you would have the least surprise for someone who does not
> care about the difference and expects the full one by install
> "java-1.7.0-openjdk" but make it really easy to uninstall any
> graphical dependencies on servers

I agree with Reindl here, if I understand him correctly. It would
certainly break upgrades in an unexpected way if an upgrade from
"java-1.7.0-openjdk" suddenly stopped carrying the graphical components.

We did something similar in the SSSD project where we broke up the
standard install into sssd-core and a series of sssd-* plugin
packages. We then created an 'sssd' metapackage that included all of
the plugins, since that was how it used to be shipped.

This allows a user to easily and trivially install the complete suite
(via 'yum install sssd') but if they want to trim down, such as for an
embedded system, they can pick only the components they need.

I think it would be wise to do the same for Java. Create
'java-openjdk-1.7.0-headless' and 'java-openjdk-1.7.0--x11' and then
have the 'java-openjdk-1.7.0' metapackage install both of them.
Version: GnuPG v1.4.15 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/


More information about the devel mailing list