Bug 173947 - Need ability to create Fedora Console RPM
Summary: Need ability to create Fedora Console RPM
Alias: None
Product: Fedora Management Console
Classification: Fedora
Component: General   
(Show other bugs)
Version: 1.0
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Nathan Kinder
QA Contact: Ben Levenson
Keywords: VerifiedUpstream
Depends On:
TreeView+ depends on / blocked
Reported: 2005-11-22 21:16 UTC by Nathan Kinder
Modified: 2015-01-04 23:59 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed:
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
CVS DIffs (43.53 KB, patch)
2005-11-22 21:38 UTC, Nathan Kinder
no flags Details | Diff
fedora-console specfile (2.07 KB, text/plain)
2005-11-22 21:40 UTC, Nathan Kinder
no flags Details
New standalone startconsole script (1.47 KB, text/plain)
2005-11-22 21:42 UTC, Nathan Kinder
no flags Details
CVS Commit (2.64 KB, text/plain)
2005-11-29 18:42 UTC, Nathan Kinder
no flags Details

Description Nathan Kinder 2005-11-22 21:16:35 UTC
Fedora Console needs to be packaged as a RPM.  Here are some of the requirements
for this:

- Must have a buildable source RPM
- Should use rpm dependencies for build and install requirements
- Should be a distributed intall layout as opposed to self-contained

Comment 1 Nathan Kinder 2005-11-22 21:38:21 UTC
Created attachment 121375 [details]

Quite a few things needed to be modified to make Console work properly as a

The Console RPM will install the Console jar files in "/usr/share/java", and
the startconsole script will go in "/usr/bin".	The RPM will require nspr, nss,
jss, and ldapjdk RPMs to be installed already.	These dependencies will exist
in system locations (/usr/lib and /usr/share/java).

The build system had to be modified to use system copies of nspr, nss, jss, and
ldapjdk instead of downloading them.  The developer still has the ability to
build the old way if they supply an imports.file property to Ant, otherwise it
looks in system locations (/usr/lib and /usr/share/java).  The default build
option is to use these local system dependencies and just build the jar files. 
A standalone console can be build with the "package" target.

The downloaded jars are no longer stored in a local "jars" directory where the
console is installed.  This would be a problem since the user running console
may not have permission to download a jar file to a system directory such as
"/usr/share/java".  They are now put in the users preference directory.  This
used to be "~/.mcc", but it's now changed to "~/.fedora-console".

The Console jar file names are now more decriptive.  The names used to be
things such as "mcc10.jar", btu they are now "fedora-mcc-1.0.jar".

The startconsole script was changed around to allow it to be run from any
location.  Previously, you had to run it from the location that it was
installed due to the use of relative paths.  There are now two versions of the
startconsole script, one for Console installs that will use system locations
(plain startconsole), and one for standalone installs of the Console
(startconsole-sandbox).  The appropriate one will be packaged depending on how
you build Console.  I also was able to strip out a bunch of stuff related to
setting LD_LIBRARY_PATH to satisfy the JSS C library.  JSS versions prior to
3.7 were linked against libjava.so and libjvm.so.  These links were unnecessary
and have been removed in JSS 3.7, so we don't need to put them in

I also cleaned up the way the caplugin stuff works for the manual certificate
request plugin.  The old way this was done was to have a separate jar file for
this.  The Console would require there to be a "caplugin" directory where the
server jar files get downloaded that must contain this default plugin. 
Additional plugins would be loaded from here as well.  I changed it so that the
default plugin is located withing one of the main Console jars (the mcc jar
specifically) instead of being a standalone jar.  This allows the console to
run without this jar being present in the user's ".fedora-console" directory. 
Additional plugins can be loaded from the user's ".fedora-console/caplugin"

Comment 2 Nathan Kinder 2005-11-22 21:40:01 UTC
Created attachment 121376 [details]
fedora-console specfile

This is the initial specfile for the fedora-console RPM.

Comment 3 Nathan Kinder 2005-11-22 21:42:03 UTC
Created attachment 121377 [details]
New standalone startconsole script

This is the new startconsole script that will only be used for self-contained
installs of Console.  Ant will package it during the package target (which is
not used by rpmbuild).

Comment 4 Nathan Kinder 2005-11-29 18:42:02 UTC
Created attachment 121606 [details]
CVS Commit

Checked into console (HEAD).  Reviewed by Rich and Noriko.

Note You need to log in before you can comment on or make changes to this bug.