You are not logged in.
Hey guys! I've made and tested PKGBUILDs for Picard 0.7.0 Beta 2, Tunepimp 0.5.0 Alpha 1, python-musicbrainz2 (not to be confused with python-musicbrainz2 ) and libofa. There's already a PKGBUILD for Picard 0.6.0 but this version introduces Audio Fingerprinting, so the dependencies are drastically different.
So, since these are my first attempt at making PKGBUILDs, I have some questions:
Versioning: Probably sometime down the road Picard 0.7.0 will not be an alpha anymore. Is the pkgver 0.7.0 or 0.7.0beta2? Same for tunepimp, is 0.5.0 or 0.5.0alpha1?
Naming: This Tunepimp version breaks all kinds of compatibility, does this require some kind of change to its name? Or is it up to the user to be aware of this kind of thing?
Kludges: Picard doesn't run if /usr/lib/libtunepimp.so.3 doesn't point to /usr/lib/libtunepimp.so.4.0.0. I've added a ln -s to the end of Tunepimp's build(), is that the correct way to do it?
Uploading to AUR: tunepimp and picard already exist in extra and an unsupported, respectively. How can I contribute them to AUR? Do I contact the original maintainers? Do I simply upload the PKGBUILDs and AUR will handle the different versioning?
Alright, so here are the PKGBUILDS:
python-musicbrainz2:
# Contributor: Augusto Born de Oliveira <augustoborn@gmail.com>
pkgname=python-musicbrainz2
pkgver=0.2.2
pkgrel=1
pkgdesc="The package python-musicbrainz2 is a client library written in python which provides easy object oriented access to the MusicBrainz database using the XMLWebService. It has been written from scratch and uses a different model than PythonMusicbrainz, the first generation python bindings."
depends=('musicbrainz' 'python-ctypes')
source=(http://musicbrainz.org/~matt/python-musicbrainz2-0.2.2.tar.gz)
md5sums=('6142191b974c7d1a639737f507ff9aaa')
url="http://wiki.musicbrainz.org/PythonMusicBrainz2"
build() {
cd $startdir/src/$pkgname-$pkgver
python setup.py install --root=$startdir/pkg
}
libofa:
# Contributor: Augusto Born de Oliveira <augustoborn@gmail.com>
pkgname=libofa
pkgver=0.9.2
pkgrel=1
pkgdesc="Libofa uses acoustic fingerprinting to consistently and rigorously identify the sounds in an audio file regardless of variations in the digital-level details."
depends=('fftw')
source=(http://www.musicdns.org/themes/musicdns_org/downloads/libofa-0.9.2.tar.gz)
md5sums=('31362e0b180bc65f169345c2e496999b')
url="http://www.musicdns.org/open-source"
build() {
cd $startdir/src/$pkgname-$pkgver
./configure --prefix=/usr
make || return 1
make prefix=$startdir/pkg/usr install
}
tunepimp:
# Contributor: Augusto Born de Oliveira <augustoborn@gmail.com>
pkgname=tunepimp
pkgver=0.5.0
pkgrel=1
pkgdesc="The TunePimp library (also referred to as libtunepimp) is a development library geared towards developers who wish to create MusicBrainz enabled tagging applications."
depends=('libofa' 'musicbrainz')
source=(http://ftp.musicbrainz.org/pub/musicbrainz/libtunepimp-0.5.0-alpha1.tar.gz)
md5sums=('1fef0c9aba2ed2979b3ba3c7d2bfb79e')
url="http://musicbrainz.org/products/tunepimp/index.html"
build() {
cd $startdir/src/libtunepimp-$pkgver-alpha1
./configure --prefix=/usr
make || return 1
make prefix=$startdir/pkg/usr install
cd ./python
python setup.py build
python setup.py install --root=$startdir/pkg
ln -s $startdir/pkg/usr/lib/libtunepimp.so.4.0.0 $startdir/pkg/usr/lib/libtunepimp.so.3
}
picard:
# Contributor: Augusto Born de Oliveira <augustoborn@gmail.com>
pkgname=picard
pkgver=0.7.0
pkgrel=1
pkgdesc="Picard is the next generation tagger that will soon completely replace the classic MusicBrainz Tagger."
depends=('tunepimp>=0.5.0' 'python-ctypes' 'wxpython' 'python-musicbrainz2')
source=(https://helixcommunity.org/download.php/1937/picard-0.7.0-beta2.tar.gz)
md5sums=('30f433930871f5fd3ee98546388c48f5')
url="http://wiki.musicbrainz.org/PicardWithAcousticFingerprinting"
build() {
cd $startdir/src/$pkgname-$pkgver-beta2
python setup.py install --root=$startdir/pkg
}
I've built them and picard is merrily running here using these PKGBUILDs, but I still want your comments before doing anything more serious with them (namely uploading libofa and python-musicbrainz2 to AUR and contacting the other existing package's maintainers).
On another note, It's great to be able to contribute to this kickass distribution so easily! This PKGBUILD system is incredible, I love it. 8)
Offline
You can go ahead and put libofa and python-musicbrainz2 in the AUR - that's the easy part. tunepimp 0.5.0-alpha should go in as tunepimp-devel, and be deleted from the AUR when 0.5.0 is released and packaged in the extra repo. The pkgver shoulg be 0.5.0alpha1.That lib version requirement is a bug, which should be reported. In the meantime, though, the /usr/lib symlink is ugly, but it's the least worst way to deal with it, so go ahead. You also need to add
conflicts=('tunepimp')
provides=('tunepimp')
to the PKGBUILD, because of the -devel namechange.
Similarly, picard 0.7.0 should go in as picard-devel, with pkgver 0.7.0beta2 and the conflicts/provides lines, and be dropped when 0.7.0 goes stable.
Re the official tunepimp package, nothing goes into current or extra until it's officially released, and when that happens, you can go here and flag it out-of-date - there's no need to contact the maintainer directly.
I'm loving your enthusiasm, and I agree, ABS makes it very easy to put this stuff together. When picard 0.7.0 is released, I'll orphan it and you can take it from there. I don't actually use it much, so it would make sense. Let me know if that's OK with you.
Offline
Alright, great! I'll make the changes you recommended and put them up.
Yeah, that'd definately be OK with me. It might take a while for that to happen though, so when it does I'll shoot you a private message or something.
Also, thanks for the timely response 8)
Offline
i think libofa also depends on current/curl
Offline
I'll look into this.
Offline