Hi all,
just wanted to share my experiences in trying to make karaf 4 minimal
even smaller.
Currently karaf 4 minimal tar.gz is about 10MB.
With some small tweaks I was able to get it down to about 6MB.
I removed equinox (1.3 MB), XercesImpl (1.3MB in lib/endorsed) and some
features like the wrapper.
I would not really suggest to do all this for karaf minimal but perhaps
this helps some people who aim to build a really small custom distro.
What we might look into is to remove equinox and xerces from the
framework kar and add them later in the two distros. This would allow
people to build their own distros without tweaking the framework kar.
Christian
--
Christian Schneider
http://www.liquid-reality.de
Open Source Architect
http://www.talend.com
---
diff --git a/assemblies/apache-karaf-minimal/pom.xml
b/assemblies/apache-karaf-minimal/pom.xml
index 385d3bd..475c54c 100644
--- a/assemblies/apache-karaf-minimal/pom.xml
+++ b/assemblies/apache-karaf-minimal/pom.xml
@@ -111,20 +111,12 @@
</execution>
</executions>
<configuration>
- <installedFeatures>
- <feature>wrapper</feature>
- </installedFeatures>
<bootFeatures>
<feature>jaas</feature>
<feature>shell</feature>
- <feature>ssh</feature>
- <feature>management</feature>
<feature>bundle</feature>
<feature>config</feature>
- <feature>deployer</feature>
<feature>diagnostic</feature>
- <feature>instance</feature>
- <feature>kar</feature>
<feature>log</feature>
<feature>package</feature>
<feature>service</feature>
diff --git a/assemblies/features/framework/pom.xml
b/assemblies/features/framework/pom.xml
index 51dc83a..bd4a072 100644
--- a/assemblies/features/framework/pom.xml
+++ b/assemblies/features/framework/pom.xml
@@ -303,16 +303,19 @@
<artifactId>org.apache.servicemix.specs.stax-api-1.2</artifactId>
<outputDirectory>target/classes/resources/lib/endorsed</outputDirectory>
</artifactItem>
+ <!--
<artifactItem>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
<outputDirectory>target/classes/resources/lib/endorsed</outputDirectory>
</artifactItem>
+
<artifactItem>
<groupId>org.eclipse</groupId>
<artifactId>osgi</artifactId>
<outputDirectory>target/classes/resources/system/org/eclipse/osgi/${equinox.version}</outputDirectory>
</artifactItem>
+ -->
<artifactItem>
<groupId>org.apache.felix</groupId>
<artifactId>org.apache.felix.framework</artifactId>