Bug 170126

Summary: need a uniform way to specify per-user and per-app SDKs and SPIs
Product: [Fedora] Fedora Reporter: Thomas Fitzsimmons <fitzsim>
Component: jpackage-utilsAssignee: Mikolaj Izdebski <mizdebsk>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: archit.shah, patrickm
Target Milestone: ---Keywords: FutureFeature
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-07-10 14:59:37 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Thomas Fitzsimmons 2005-10-07 16:00:23 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.5) Gecko/20041228 Firefox/1.0 Fedora/1.0-8

Description of problem:
There should be a uniform way to specify per-user and per-app defaults for Java settings.

Currently system-wide default SDKs and SPIs are managed by alternatives, which works well for apps that don't require specific versions.  Apps and users that do require special versions need to roll their own wrapper scripts.  It would be more convenient if there were a uniform way to override the system defaults.

One possible implementation strategy would be per-app settings in

/etc/java/applications.d

Java packages that had special runtime requirements could drop config files in there that define the overrides.

In addition, there could be ~/.java/applications.d where users could override system and app-specific settings.

Then there would be a shell fragment included in java-functions, included in each app's wrapper script, that would calculate the app's settings, first reading the system-wide defaults, then overriding with any app-specific and user-specific settings.

Note that user-specific SDK settings are currently supported in this manner, using /etc/java/java.conf and ~/.java/java.conf.  This mechanism just need to be generalized to include the app layer, as well as SPIs and other configurable settings.


Version-Release number of selected component (if applicable):


How reproducible:
Always

Steps to Reproduce:
1. try running a big java app with non-default SPI settings

Additional info:

Comment 1 John Poelstra 2008-07-09 05:04:05 UTC
Given the state of java today... should this RFE remain open?

Comment 2 Red Hat Bugzilla 2008-07-25 01:03:42 UTC
Adding patrickm to the cc list as the manager of the disabled user fitzsim who reported this bug

Comment 4 Fedora Admin XMLRPC Client 2013-07-10 14:11:19 UTC
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.

Comment 5 Mikolaj Izdebski 2013-07-10 14:44:36 UTC
As original report specified, user-specific configuration is already supported. Users can store their settings in ~/.java/java.conf.

Application-specific settings are quite interesting and would be useful in some cases (like enabling JDK 8 by default while using JDK 7 for applications that are known not to work with JDK 8, until they are fixed).

Comment 6 Mikolaj Izdebski 2013-07-10 14:59:37 UTC
Actually, application-specific settings are already supported.  Application foo can install system-wide config file /etc/foo.conf.  Users can place application-specific settings in $HOME/.foorc.  I'm closing this bug.