FedoraEPELPackagingNB
Red Hat Enterprise Linux (or RHEL) - Packaging of the NetBeans
Overview
This page accumulates info about effort in the scope of the EPEL to create software packages of the NetBeans that complement the Fedora-based Red Hat Enterprise Linux (RHEL) and its compatible spinoffs such as CentOS or Scientific Linux.
Goals
A NetBeans IDE 6.1 configuration with reduced set of the modules to limit number of external dependencies is intended to be packaged for RHEL.
Assumptions
- According to Packaging Guidelines and Policies for EPEL the new packages for RHEL will be based on the packages prepared for Fedora.
- The procedure for getting a package in EPEL will be used against both the NetBeans packages and the related third-party packages that are new for EPEL.
- Originally the NetBeans project establishes dependencies on both the JSR 223: Scripting for the JavaTM Platform API (./platform8/modules/ext/script-api.jar) and SwingWorker class (./java2/modules/ext/swing-worker-1.1.jar). The same as packages for Fedora the packages for EPEL will not establish these dependencies, because this solution will also rely on the OpenJDK that provides JRE, version 6 and includes both the Scripting for the JavaTM Platform API and SwingWorker class.
Analysis
Required Software Packages
The tables below establish relations between required software package, RHEL 5 Package (if any) and owner(s) of corresponding package in Fedora (if it is useful). Both build-time dependencies and run-time dependencies for the chosen configuration of the NetBeans have been taken into account.
Notation
#1 Public CentOS package repository has been used to investigate accessibility of the software on the RHEL 5 platform.
#2 Fedora/EPEL is upstream for RHEL or it can be used as the upstream.
DONE in cells of the column Current Status means that target is reached and any additional actions aren't required.
For NetBeans Platform
| Software Package | RHEL 5 Package | Owner | Current Status | Comments |
|---|---|---|---|---|
| #3 OpenJDK 6 | java-1.6.0-openjdk 2 | lkundrak, co-maintainer: langel (Awaiting Review) | DONE | {{{1}}}
|
| #4 Ant 1.7.1 | ant-1.6.5-2jpp.2.src.rpm 1 NEED TO BE UPGRADED
| Showstopper: a) EPEL is not an upstream for the RHEL from viewpoint of the Ant software, AFAIU RHEL itself provides it by using JPackage effort. b) EPEL/FAQ says: Q: Does EPEL replace packages provided within Red Hat Enterprise Linux or layered products? A: No Therefore, we can't use "traditional" Fedora procedure to upgrade version up to 1.7.1. | Subpackages of Ant are also required: ant-junit, ant-nodeps, ant-trax | |
| #5 JUnit 3.8.2 | junit-3.8.2-3jpp.1.src.rpm 1 | DONE | ||
| #6 swing-layout 1.0 | NOT EXISTS 1
| lkundrak He is not in both lists EPEL/ContributorStatusNo and EPEL/ContributorStatusNo He is (co-)maintainer of 129 packages | doable 2 Communication with the package owner is needed. All required packages exist. | Can we avoid this dependency if OpenJDK is installed? See alsoWhat is the Swing Layout Extensions library (swing-layout) and why do I need it?. |
| #7 javahelp2 2.0.05 | NOT EXISTS 1
| jtulach | doable 2 Communication with the package owner is needed. All required packages exist. | |
| jna 3.0.2 | jna 3.0.4 2 | DONE | ||
For NetBeans IDE
See netbeans.spec
| Software Package 8 | RHEL 5 Package | Owner | Current Status | Comments |
|---|---|---|---|---|
| JUnit4 4.3.1 | fnasser He is not in both lists EPEL/ContributorStatusNo and EPEL/ContributorStatusNo He is (co-)maintainer of 14 packages, co-maintainer: dwalluck | doable 2 Communication with the package owner is needed. Extra requirements of the package need to be investigated, i.e. (B)R. | ||
| lucene 2.3.0 | lucene-1.4.3-1jpp.16.src.rpm 1 NEED TO BE UPGRADED
| {{error|Showstopper: a) EPEL is not an upstream for the RHEL from viewpoint of the lucene software, AFAIU RHEL itself provides it by using JPackage effort. b) EPEL/FAQ says: Q: Does EPEL replace packages provided within Red Hat Enterprise Linux or layered products? A: No Therefore, we can't use "traditional" Fedora procedure to upgrade version up to 2.3.0. | ||
| netbeans-javaparser | NOT EXISTS
| victorv | doable 2 | |
| #10 xerces-j2 2.7.1 | xerces-j2-2.7.1-7jpp.2.src.rpm 1 | DONE | ||
| appframework 1.03 | NOT EXISTS
| victorv | doable 2 | |
| beansbinding 1.2.1 | NOT EXISTS
| victorv | doable 2 | |
| freemarker 2.3.8 | NOT EXISTS
| victorv | doable 2 | |
| jsch 0.1.24 | jsch-0.1.28-1jpp.5.src.rpm 1 | DONE | ||
| netbeans-resolver | NOT EXISTS
| victorv | doable 2 | |
| ini4j 0.3.2-4 | NOT EXISTS
| victorv | doable with 0.2.6? 2
| The version 0.3.2 requires maven2 >= 2.0.4 and a set of the maven2 plugins, but actually the NetBeans requires version 0.2.6 that uses Ant instead. |
| netbeans-svnclientadapter | NOT EXISTS
| victorv | doable 2 | |
| jakarta-commons-logging 1.0.4 | jakarta-commons-logging-1.0.4-6jpp.1.src.rpm 1 | DONE | ||
#8 The table above doesn't duplicate software packages listed in the table Required Software Packages For NetBeans Platform, including:
For Ant 1.7.1
This table takes into account that the ant-1.6.5-2jpp.2 package is already integrated with RHEL.
| Software Package 9 | RHEL 5 Package | Owner | Current Status | Comments |
|---|---|---|---|---|
| jaxp_transform_impl (any version) | DONE | ant-1.6.5-2jpp.2 requires it too | ||
| ant (any version) | ant-1.6.5-2jpp.2.src.rpm 1 | DONE | ||
| xml-commons-jaxp-1.3-apis (any version) | NOT EXISTS 1
| |||
| antlr (any version) | DONE | ant-1.6.5-2jpp.2 requires it too | ||
| bsf (any version) | DONE | ant-1.6.5-2jpp.2 requires it too | ||
| xml-commons-resolver12 (any version) | NOT EXISTS 1
| |||
| jakarta-commons-logging (any version) | DONE | ant-1.6.5-2jpp.2 requires it too | ||
| jakarta-commons-net (any version) | DONE | ant-1.6.5-2jpp.2 requires it too | ||
| jai (any version) | DONE | ant-1.6.5-2jpp.2 requires it too | ||
| bcel (any version) | DONE | ant-1.6.5-2jpp.2 requires it too | ||
| log4j (any version) | DONE | ant-1.6.5-2jpp.2 requires it too | ||
| oro (any version) | DONE | ant-1.6.5-2jpp.2 requires it too | ||
| regexp (any version) | DONE | ant-1.6.5-2jpp.2 requires it too | ||
| javamail >= 0:1.2-5jpp | DONE | ant-1.6.5-2jpp.2 requires it too | ||
| jaf >= 0:1.0.1-5jpp | DONE | ant-1.6.5-2jpp.2 requires it too | ||
| jdepend (any version) | DONE | ant-1.6.5-2jpp.2 requires it too | ||
| jsch (any version) | DONE | ant-1.6.5-2jpp.2 requires it too | ||
| %{_bindir}/perl (any version) | DONE | ant-1.6.5-2jpp.2 requires /usr/bin/perl | ||
| %{_bindir}/python (any version) | DONE | ant-1.6.5-2jpp.2 requires /usr/bin/python | ||
#9 The table doesn't duplicate software packages listed in the previous tables, including:
- OpenJDK 6 3 (java-devel >= 0:1.5.0) EXISTS
- JUnit (any version) 5 EXISTS
- xerces-j2 (any version) 10 EXISTS
For swing-layout 2
Note, the swing-layout.spec for Fedora 10 assumes that gcj is used to build the package by default - " Use rpmbuild --without gcj to disable gcj bits ".
| Software Package 11 | RHEL 5 Package | Owner | Current Status | Comments |
|---|---|---|---|---|
| dos2unix (any version) | dos2unix-3.1-27.1.src.rpm | DONE | ||
#11 The table doesn't duplicate software packages listed in the previous tables, including:
For javahelp2 2.0.05 2
| Software Package 12 | RHEL 5 Package | Owner | Current Status | Comments |
|---|---|---|---|---|
| jsp >= 0:2.0 | Provided by tomcat5-jsp-2.0-api-5.5.23-0jpp.7.el5.i386.rpm 1 | DONE | ||
#12 The table doesn't duplicate software packages listed in the previous tables, including:
For JUnit4 4.3.1 2
| Software Package 13 | RHEL 5 Package | Owner | Current Status | Comments |
|---|---|---|---|---|
| hamcrest (any version) | NOT EXISTS
| |||
#13 The table doesn't duplicate software packages listed in the previous tables, including:
For lucene 2.3.0
lucene.spec 2.3.1 for Fedora 10.
| Software Package 14 | RHEL 5 Package | Owner | Current Status | Comments |
|---|---|---|---|---|
| javacc (any version) | javacc-4.0-3jpp.3.src.rpm 1 | DONE | ||
| jline (any version) | NOT EXISTS
| |||
| jtidy (any version) | NOT EXISTS
| |||
| regexp (any version) | regexp-1.4-2jpp.2.src.rpm 1 | DONE | ||
| commons-digester (any version) | jakarta-commons-digester-1.7-5jpp.1.src.rpm 1 | DONE | ||
#14 The table doesn't duplicate software packages listed in the previous tables, including:
- OpenJDK 6 3 (java-devel >= 1:1.6.0, java >= 1:1.6.0) EXISTS
- Ant 1.7.1 4 (>= 0:1.6) EXISTS
- JUnit (any version) 5 EXISTS
For netbeans-javaparser
netbeans-javaparser.spec for Fedora 10 2
Extra packages aren't required additionally to the listed ones in the previous tables, including:
For appframework 1.03
appframework.spec for Fedora 10 2
Extra packages aren't required additionally to the listed ones in the previous tables, including:
- OpenJDK 6 3 (java-devel >= 1:1.6.0, java >= 1:1.6.0) EXISTS
- Ant 1.7.1 4 (>= 0:1.6) EXISTS
- swing-layout 1.0 6
For beansbinding 1.2.1
beansbinding.spec for Fedora 10 2
Extra packages aren't required additionally to the listed ones in the previous tables, including:
For freemarker 2.3.8
freemarker.spec for Fedora 10 2
| Software Package 15 | RHEL 5 Package | Owner | Current Status | Comments |
|---|---|---|---|---|
| avalon-logkit >= 1.2 | avalon-logkit-1.2-4jpp.3.src.rpm 1 | |||
| dom4j >= 1.6.1 | NOT EXISTS
| |||
| emma >= 2.0 | NOT EXISTS
| |||
| jaxen >= 1.1 | NOT EXISTS
| |||
| jdom >= 1.0 | jdom-1.0-4jpp.1.src.rpm 1 | DONE | ||
| jython >= 2.2.1 | NOT EXISTS
| |||
| rhino >= 1.6 | NOT EXISTS
| |||
| struts >= 1.2.9 | struts-1.2.9-4jpp.5.src.rpm 1 | DONE | ||
| tomcat5-jsp-2.0-api >= 5.5.26 | ||||
| tomcat5-servlet-2.4-api >= 5.5 | ||||
| tomcat6-servlet-2.5-api >= 6.0 | NOT EXISTS 1
| Restricting features of the freemarker package? | ||
| tomcat6-lib >= 6.0.16 | NOT EXISTS 1
| Restricting features of the freemarker package? | ||
| xalan-j2 >= 2.7.0 | xalan-j2-2.7.0-6jpp.1.src.rpm 1 | DONE | ||
#15 The table doesn't duplicate software packages listed in the previous tables, including:
- OpenJDK 6 3 (java-devel >= 1:1.6.0, java >= 1:1.6.0) EXISTS
- Ant 1.7.1 4 (>= 0:1.6) EXISTS
- JUnit (any version) 5 EXISTS
- dos2unix EXISTS
- javacc >= 4.0 EXISTS
- log4j >= 1.2 EXISTS
For netbeans-resolver
netbeans-resolver.spec for Fedora 10 2
Extra packages aren't required additionally to the listed ones in the previous tables, including:
- OpenJDK 6 3 (java-devel >= 1:1.6.0, java >= 1:1.6.0) EXISTS
- Ant 1.7.1 4 (>= 0:1.6) EXISTS
- dos2unix EXISTS
For ini4j
For netbeans-svnclientadapter
netbeans-svnclientadapter.spec for Fedora 10 2
Extra packages aren't required additionally to the listed ones in the previous tables, including:
For xml-commons-jaxp-1.3-apis (any version)
For xml-commons-resolver12 (any version)
For jsp 2.0 (any version)
For hamcrest (any version)
For jline (any version)
For jtidy (any version)
For dom4j 1.6.1
For emma 2.0
For jaxen 1.1
For jython 2.2.1
For rhino 1.6
For tomcat6
Related Links
- EPEL repo / EPEL 5 repo
- epel-release - Extra Packages for Enterprise Linux repository configuration
- How to get OpenJDK 6 for Red Hat Enterprise Linux 5
- How can I install the packages from the EPEL software repository?
- EPEL Package Maintainer Generic Job Description
- The CentOS-devel Archives

