You are not logged in.

#1 2006-10-21 01:50:07

jakob
Member
From: Berlin
Registered: 2005-10-27
Posts: 419

trying a comprehensive jakarta-commons PKGBUILD....

Hey there!

I would like to build a PKGBUILD for a nice java banking program. On the way to a Arch-conform PKGBUILD I stumbled over the Java Package Guidelines and investigated the libs which are shipped with the program a bit further.

There I found that some jars from the jakarta commons package were used but not yet packaged in AUR or the official repos. So first I wanted to build them separately, but then I found that it would make more sense to have one comprehensive package of (currently) 30MB instead of 33 single packages.

What do you think about the idea? I am willing to support this meta package as well as the single ones if I just knew how the implementation would be more sensible.

Since it would be a huge amount of work to pack every packag on its own, I wrote a PKGBUILD for all packages that are in Jakarta Commons.

I hope, if it is generally desired to have any package in a single file, that I at least learnt a bit from writing this PKGBUILD smile

# Contributor: jakob
pkgname=jakarta-commons-all
pkgver=1.0
pkgrel=1
pkgdesc="This packag includes all Jakarta Commons Proper packages."
url="http://jakarta.apache.org/commons/"
license="APACHE"
depends=()
makedepends=()
conflicts=()
source=(http://www.apache.org/dist/jakarta/commons/attributes/binaries/commons-attributes-2.2.tar.gz 
        http://www.apache.org/dist/jakarta/commons/beanutils/binaries/commons-beanutils-1.7.0.tar.gz 
        http://www.apache.org/dist/jakarta/commons/betwixt/binaries/commons-betwixt-0.7.tar.gz  
        http://www.apache.org/dist/jakarta/commons/chain/binaries/commons-chain-1.1.tar.gz      
        http://www.apache.org/dist/jakarta/commons/cli/binaries/cli-1.0.tar.gz 
        http://www.apache.org/dist/jakarta/commons/codec/binaries/commons-codec-1.3.tar.gz      
        http://www.apache.org/dist/jakarta/commons/collections/binaries/commons-collections-3.2.tar.gz 
        http://www.apache.org/dist/jakarta/commons/configuration/binaries/commons-configuration-1.2.tar.gz 
        http://www.apache.org/dist/jakarta/commons/daemon/binaries/commons-daemon-1.0.1.tar.gz  
        http://www.apache.org/dist/jakarta/commons/dbcp/binaries/commons-dbcp-1.2.1.tar.gz      
        http://www.apache.org/dist/jakarta/commons/dbutils/binaries/commons-dbutils-1.0.tar.gz  
        http://www.apache.org/dist/jakarta/commons/digester/binaries/commons-digester-1.7.tar.gz 
        http://www.apache.org/dist/jakarta/commons/discovery/binaries/commons-discovery-0.2.tar.gz 
        http://www.apache.org/dist/jakarta/commons/el/binaries/commons-el-1.0.tar.gz 
        http://www.apache.org/dist/jakarta/commons/email/binaries/commons-email-1.0.tar.gz      
        http://www.apache.org/dist/jakarta/commons/fileupload/binaries/commons-fileupload-1.1.1.tar.gz 
        http://www.apache.org/dist/jakarta/commons/httpclient/binary/commons-httpclient-3.0.1.tar.gz 
        http://www.apache.org/dist/jakarta/commons/io/binaries/commons-io-1.2.tar.gz 
        http://www.apache.org/dist/jakarta/commons/jelly/binaries/commons-jelly-1.0.tar.gz      
        http://www.apache.org/dist/jakarta/commons/jexl/binaries/commons-jexl-1.1.tar.gz        
        http://www.apache.org/dist/jakarta/commons/jxpath/binaries/commons-jxpath-1.2.tar.gz    
        http://www.apache.org/dist/jakarta/commons/lang/binaries/commons-lang-2.2.tar.gz        
        http://www.apache.org/dist/jakarta/commons/latka/binaries/latka-1.0-alpha1.zip 
        http://www.apache.org/dist/jakarta/commons/launcher/binaries/commons-launcher-1.1.tar.gz 
        http://www.apache.org/dist/jakarta/commons/logging/binaries/commons-logging-1.1.tar.gz  
        http://www.apache.org/dist/jakarta/commons/math/binaries/commons-math-1.1.tar.gz        
        http://www.apache.org/dist/jakarta/commons/modeler/binaries/commons-modeler-2.0.tar.gz  
        http://www.apache.org/dist/jakarta/commons/net/binaries/commons-net-1.4.1.tar.gz        
        http://www.apache.org/dist/jakarta/commons/pool/binaries/commons-pool-1.3.tar.gz        
        http://www.apache.org/dist/jakarta/commons/primitives/binaries/commons-primitives-1.0.tar.gz 
        http://www.apache.org/dist/jakarta/commons/scxml/binaries/commons-scxml-0.5.tar.gz 
        http://www.apache.org/dist/jakarta/commons/transaction/binaries/commons-transaction-1.1.tgz 
        http://www.apache.org/dist/jakarta/commons/validator/binaries/commons-validator-1.3.0.tar.gz)

md5sums=('47d037449aa38b6c8e181abcfaf36b2b' 'd1571ce9d6ec3d1795364cc44f3d116e'
         '707af78be5ed2518dd2eada9afefb238' 'e688f648a5fd324f591669ca70ebe96d'
         '6c28bdee998fe4d9e76c7cf40e7f4691' 'aad3948be13476d9599cadaf146bc92a'
         '030a1c1d08f47a6c9be000fc611714b4' '6c8bc440de20b7c9b5b3b5315d50316b'
         '591fceeb4feab1094a78c9c5decd8cca' 'd333fc11abb532be2487338cb452b583'
         'b437ea809d320378fc05af9f29e2636f' '717239578dfcd05bde0dfd1d3e8f319f'
         '2273f5f83a477f4f18fccf3a00e2b48c' 'fb856b9689bdc4c52f8ae999057f89fc'
         '4fb252cd4bcee57b573937e3c88974cc' '3b851898d3347cd4d6890b79c9a8a0f0'
         '58167f247e8f8ad8fb1def97c1de8f07' '52b42b61593def482dc968ffdd27f113'
         'e9e3ba84a214d2bcf96aa31b24f3bb5f' '9bdf02d9b659a70b7f327c923c1f4d80'
         '1730dae5f0ef0594a47ead5d1a4ac41b' '4f683f7b6970babb8c9f09bb12b7c1a6'
         'fbf479099aa252989fe4c81511abf4bf' '7ed65e08e8c952c4d9f6db0d73ef5426'
         'c2bd7cc1fa08d78ec5aa80632c21152b' '37c43d1d0c08c1b753a7bf952c763eb3'
         'ba74fdf4aca98f01579eca11acc6d882' '577e90cc40328c287acc921dae344c12'
         '1bdae6c015689349b704daebda924a5b' '2ce92656204f2fa63dad6dfa88e1458b'
         '091e2dc0efcb9155c2b4a05792d49a77' 'fe946d1775d58ded6050dec6af648f38'
         '221d924fb85f3597d8be0708d45f0f5a')


build() {
  mkdir -p $startdir/pkg/usr/share/java/jakarta-commons
  cd $startdir/src/
  rm -rf *gz docs LICENSE*
  mv *.txt doc
  mv * $startdir/pkg/usr/share/java/jakarta-commons
}

Since there are sometimes when copy&pasting PKGBUILDS (especially the ""s, IIRC), here a link to a pastebin

My questions are: Are the jars to be put in /usr/share/java/jakarta-commons/$package/*.jar or plainly under jakarta-commons?

Is it ok to delete all the docs, licenses + readmes?

Sorry but it's very late now so I'll stop here and wait for your suggestions and tips, which will come hopefully.. smile

Greetings and good night,

jakob

Offline

#2 2006-10-21 14:54:44

arooaroo
Member
From: London, UK
Registered: 2005-01-13
Posts: 1,268
Website

Re: trying a comprehensive jakarta-commons PKGBUILD....

From a maintainer's POV I suspect the mega-commons package is easiest. However, I can't imagine many projects which would use more than 50% of the available packages within commons for a single project - maybe one or two. Given this, I suspect individual packages for each package within Commons. You could 'group' all, like the kde or gnome groups, I suppose.

Also, I expect the license forbids the removal of the licenses, so leave them be.

Offline

#3 2006-10-21 15:09:31

jakob
Member
From: Berlin
Registered: 2005-10-27
Posts: 419

Re: trying a comprehensive jakarta-commons PKGBUILD....

Your absolutely right saying that never all commons packages would be used by just one program.
I read the Java Packaging Guidelines again and it says that only commoly used and major libs should be sourced out to single packages. So the question is: Do any other packages in AUR or the official repos use some of the jakarta-commons projects so it would eventually pay to make single packages for them, or isn't it worth the hussle?

I for my part now will leave the libs that are bundled with the package I wanted to upload at first in the package and use them.

Thanks for your reply smile

Offline

Board footer

Powered by FluxBB