You are not logged in.

#1 2008-01-19 00:42:05

max-k
Member
From: Lyon - France
Registered: 2007-11-23
Posts: 38

[REQUEST] - lltag

lltag is an automatic tagging/renaming apllication for audio files with cddb support

homepage : http://home.gna.org/lltag/

project page : https://gna.org/projects/lltag

source download : http://download.gna.org/lltag/lltag-0.14.2.tar.bz2

Offline

#2 2008-01-19 00:43:35

max-k
Member
From: Lyon - France
Registered: 2007-11-23
Posts: 38

Re: [REQUEST] - lltag

Can somebody write a PKGBUILD for it ?
I've tried to do it but it doen't work.

Offline

#3 2008-01-19 05:33:24

Snowman
Developer/Forum Fellow
From: Montreal, Canada
Registered: 2004-08-20
Posts: 5,212

Re: [REQUEST] - lltag

If you tried it, post the PKGBUILD and the error message you got.

Offline

#4 2008-01-19 15:21:41

max-k
Member
From: Lyon - France
Registered: 2007-11-23
Posts: 38

Re: [REQUEST] - lltag

#######################   My PKGBUILD :   #############################

# Contributor: max-k <max-k@post.com>
pkgname=lltag
pkgver=0.14.2
pkgrel=1
pkgdesc="Automatic command-line mp3/ogg/flac file tagger and renamer"
arch=(i686)
url="http://http://home.gna.org/lltag/"
license=('GPL')
depends=('perl-libwww' 'perl-mp3-info' 'perl-mp3-tag' 'perl-term-readline' 'perl-term-readline-gnu')
source=(http://download.gna.org/lltag/$pkgname-$pkgver.tar.bz2)
md5sums=('38714bb16cbb086532a6104d335c7ac0')

build() {
  #build
  cd ${startdir}/src/${pkgname}-${pkgver}
  sed -e 's!@SYSCONFDIR@!$(startdir)/pkg/etc!g' -e 's!@VERSION@!$(pkgver)!g' < lltag.in > lltag
  chmod 755 lltag
  PERL_INSTALLDIRS=vendor
  DOCDIR=${startdir}/pkg/usr/share/doc/${pkgname}
  # install lib
  install -d -m 0755 ${startdir}/pkg/usr/bin/ ${startdir}/pkg/etc/${pkgname}/ || return 1
  install -m 0755 ${pkgname} ${startdir}/pkg/usr/bin/${pkgname} || return 1
  install -m 0644 formats ${startdir}/pkg/etc/${pkgname}/ || return 1
  #  install doc
  make -C doc install DOCDIR=${startdir}/pkg/usr/share/doc/${pkgname}
  #  install man
  install -d -m 0755 ${startdir}/pkg/usr/share/man/man1/ ${startdir}/pkg/usr/share/man/man5/
  install -m 0644 lltag.1 ${startdir}/pkg/usr/share/man/man1/
  install -m 0644 lltag_config.5 ${startdir}/pkg/usr/share/man/man5/
  install -m 0644 lltag_formats.5 ${startdir}/pkg/usr/share/man/man5/
  #  infos
  echo --to activate flac file support you must install flac--
  echo --to activate ogg file support you must install vorbis-tools--
}

It seems to work but when i try to launch it after install i got this :

[max-k@maxfixe ~]$ lltag
Can't locate Lltag/Tags.pm in @INC (@INC contains: /usr/lib/perl5/site_perl/5.10.0 /usr/share/perl5/site_perl/5.10.0 /usr/lib/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib/perl5/core_perl /usr/share/perl5/core_perl /usr/lib/perl5/current /usr/lib/perl5/site_perl/current/i686-linux-thread-multi /usr/lib/perl5/site_perl/current .) at /usr/bin/lltag line 6.

############################   Here's the Makefile :    #####################################

NAME    =    lltag
ifeq ($(shell [ -d .svn ] && echo 1),1)
    VERSION    =    $(shell cat VERSION)+svn.$(shell date +%Y%m%d)
else
    VERSION    =    $(shell cat VERSION)
endif

LIB_SUBDIR    =    lib
DOC_SUBDIR    =    doc

DESTDIR    =   
PREFIX    =    /usr/local
EXEC_PREFIX    =    $(PREFIX)
BINDIR    =    $(EXEC_PREFIX)/bin
DATADIR    =    $(PREFIX)/share
SYSCONFDIR    =    $(PREFIX)/etc
MANDIR    =    $(PREFIX)/man
DOCDIR    =    $(DATADIR)/doc
PERL_INSTALLDIRS    =   

TARBALL    =    $(NAME)-$(VERSION)
DEBIAN_TARBALL    =    $(NAME)_$(VERSION).orig

.PHONY: lltag clean install uninstall tarball

lltag:: lltag.in VERSION build-lib
    sed -e 's!@SYSCONFDIR@!$(DESTDIR)$(SYSCONFDIR)!g' -e 's!@VERSION@!$(DESTDIR)$(VERSION)!g' \
        < lltag.in > lltag
    chmod 755 lltag

clean:: clean-lib
    rm -f lltag

install:: install-lib
    install -d -m 0755 $(DESTDIR)$(BINDIR)/ $(DESTDIR)$(SYSCONFDIR)/lltag/
    install -m 0755 lltag $(DESTDIR)$(BINDIR)/lltag
    install -m 0644 formats $(DESTDIR)$(SYSCONFDIR)/lltag/

uninstall:: uninstall-lib
    rm $(DESTDIR)$(BINDIR)/lltag
    rm $(DESTDIR)$(SYSCONFDIR)/lltag/formats
    rmdir $(DESTDIR)$(SYSCONFDIR)/lltag/

tarball::
    mkdir /tmp/$(TARBALL)
    cp lltag.in /tmp/$(TARBALL)
    cp formats /tmp/$(TARBALL)
    cp lltag.1 lltag_config.5 lltag_formats.5 /tmp/$(TARBALL)
    cp Makefile /tmp/$(TARBALL)
    cp COPYING README VERSION /tmp/$(TARBALL)
    cp Changes /tmp/$(TARBALL)
    cp -a $(DOC_SUBDIR)/ /tmp/$(TARBALL)
    cp -a $(LIB_SUBDIR) /tmp/$(TARBALL)
    cd /tmp && tar cfz $(DEBIAN_TARBALL).tar.gz $(TARBALL)
    cd /tmp && tar cfj $(TARBALL).tar.bz2 $(TARBALL)
    mv /tmp/$(DEBIAN_TARBALL).tar.gz /tmp/$(TARBALL).tar.bz2 ..
    rm -rf /tmp/$(TARBALL)

# Perl modules
.PHONY: build-lib clean-lib install-lib uninstall-lib prepare-lib

$(LIB_SUBDIR)/Makefile.PL: $(LIB_SUBDIR)/Makefile.PL.in VERSION
    sed -e 's!@VERSION@!$(VERSION)!g' < $(LIB_SUBDIR)/Makefile.PL.in > $(LIB_SUBDIR)/Makefile.PL

$(LIB_SUBDIR)/Makefile: $(LIB_SUBDIR)/Makefile.PL
    cd $(LIB_SUBDIR) && perl Makefile.PL INSTALLDIRS=$(PERL_INSTALLDIRS)

prepare-lib: $(LIB_SUBDIR)/Makefile

build-lib: prepare-lib
    $(MAKE) -C $(LIB_SUBDIR)

install-lib: prepare-lib
    $(MAKE) -C $(LIB_SUBDIR) install PREFIX= SITEPREFIX=$(PREFIX) PERLPREFIX=$(PREFIX) VENDORPREFIX=$(PREFIX)

clean-lib: prepare-lib
    $(MAKE) -C $(LIB_SUBDIR) distclean
    rm $(LIB_SUBDIR)/Makefile.PL

uninstall-lib: prepare-lib
    $(MAKE) -C $(LIB_SUBDIR) uninstall

# Install the doc, only called on-demand by distrib-specific Makefile
.PHONY: install-doc uninstall-doc

install-doc:
    $(MAKE) -C $(DOC_SUBDIR) install DOCDIR=$(DESTDIR)$(DOCDIR)

uninstall-doc:
    $(MAKE) -C $(DOC_SUBDIR) uninstall DOCDIR=$(DESTDIR)$(DOCDIR)

# Install the manpages, only called on-demand by distrib-specific Makefile
.PHONY: install-man uninstall-man

install-man::
    install -d -m 0755 $(DESTDIR)$(MANDIR)/man1/ $(DESTDIR)$(MANDIR)/man5/
    install -m 0644 lltag.1 $(DESTDIR)$(MANDIR)/man1/
    install -m 0644 lltag_config.5 $(DESTDIR)$(MANDIR)/man5/
    install -m 0644 lltag_formats.5 $(DESTDIR)$(MANDIR)/man5/

uninstall-man::
    rm $(DESTDIR)$(MANDIR)/man1/lltag.1
    rm $(DESTDIR)$(MANDIR)/man5/lltag_config.5
    rm $(DESTDIR)$(MANDIR)/man5/lltag_formats.5

#############################   Here's an official gentoo portage ebuild :   ##################################"

# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/media-sound/lltag/lltag-0.14.2.ebuild,v 1.1 2007/12/16 13:41:17 aballier Exp $

inherit perl-module

DESCRIPTION="Automatic command-line mp3/ogg/flac file tagger and renamer"
HOMEPAGE="http://home.gna.org/lltag"
SRC_URI="http://download.gna.org/lltag/${P}.tar.bz2"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="mp3 ogg flac readline"

RDEPEND="dev-lang/perl
    dev-perl/libwww-perl
    mp3? ( || ( media-sound/mp3info dev-perl/MP3-Tag ) )
    ogg? ( media-sound/vorbis-tools )
    flac? ( media-libs/flac )
    readline? ( dev-perl/Term-ReadLine-Perl )"

src_compile() {
    emake PREFIX=/usr SYSCONFDIR=/etc MANDIR=/usr/share/man \
    PERL_INSTALLDIRS=vendor || die "Failed to compile"
}

src_install() {
    emake DESTDIR="${D}/" PREFIX=/usr SYSCONFDIR=/etc MANDIR=/usr/share/man \
    PERL_INSTALLDIRS=vendor DOCDIR=/usr/share/doc/${P} install \
    install-doc install-man || die "Failed to install"
    fixlocalpod
    dodoc Changes
}

Last edited by max-k (2008-01-19 19:51:49)

Offline

#5 2008-01-20 19:43:44

Stefan Husmann
Member
From: Germany
Registered: 2007-08-07
Posts: 1,391

Re: [REQUEST] - lltag

Try to seperate the steps for building the program, the docs and installing. E.g make PREFIX=/usr lltag (instead of the long sed-line in your PKGBUILD)
make PREFIX=/usr doc
make PREFIX=$startdir/pkg/usr install

In the Makefile PREFIX is set to /usr/local and this is strongly forbidden by the Arch packaging rules. And it seems, perl does not find any files you put there to.

Offline

#6 2008-01-21 08:33:06

max-k
Member
From: Lyon - France
Registered: 2007-11-23
Posts: 38

Re: [REQUEST] - lltag

Stefan Husmann wrote:

Try to seperate the steps for building the program, the docs and installing. E.g make PREFIX=/usr lltag (instead of the long sed-line in your PKGBUILD)
make PREFIX=/usr doc
make PREFIX=$startdir/pkg/usr install

In the Makefile PREFIX is set to /usr/local and this is strongly forbidden by the Arch packaging rules. And it seems, perl does not find any files you put there to.

Ok, I'll try.

Offline

#7 2008-01-21 19:35:56

max-k
Member
From: Lyon - France
Registered: 2007-11-23
Posts: 38

Re: [REQUEST] - lltag

I've tried this :

# Contributor: max-k <max-k@post.com>
pkgname=lltag
pkgver=0.14.2
pkgrel=1
pkgdesc="Automatic command-line mp3/ogg/flac file tagger and renamer"
arch=(i686)
url="http://home.gna.org/lltag/"
license=('GPL')
depends=('perl-libwww' 'perl-mp3-info' 'perl-mp3-tag' 'perl-term-readline' 'perl-term-readline-gnu')
source=(http://download.gna.org/lltag/$pkgname-$pkgver.tar.bz2)
md5sums=('38714bb16cbb086532a6104d335c7ac0')
 
build() {
  cd ${startdir}/src/${pkgname}-${pkgver}
  make PREFIX=$/usr PERL_INSTALLDIRS=vendor lltag
  make PREFIX=${startdir}/pkg/usr PERL_INSTALLDIRS=vendor install
  make PREFIX=${startdir}/pkg/usr DOCDIR=${PREFIX}/share/doc/${pkgname} install-doc
  make PREFIX=${startdir}/pkg/usr install-man
  echo --to activate flac file support you must install flac--
  echo --to activate ogg file support you must install vorbis-tools--
}

And I get this :

==> Début de la compilation...
sed -e 's!@VERSION@!0.14.2!g' < lib/Makefile.PL.in > lib/Makefile.PL
cd lib && perl Makefile.PL INSTALLDIRS=vendor
Checking if your kit is complete...
Looks good
Writing Makefile for Lltag
make -C lib
make[1]: entrant dans le répertoire « /tmp/yaourt-tmp-max-k/aur-lltag/lltag/src/lltag-0.14.2/lib »
cp Lltag/Parse.pm blib/lib/Lltag/Parse.pm
cp Lltag/Tags.pm blib/lib/Lltag/Tags.pm
cp Lltag/Rename.pm blib/lib/Lltag/Rename.pm
cp Lltag/MP3.pm blib/lib/Lltag/MP3.pm
cp Lltag/MP3v2.pm blib/lib/Lltag/MP3v2.pm
cp Lltag/FLAC.pm blib/lib/Lltag/FLAC.pm
cp Lltag/CDDB.pm blib/lib/Lltag/CDDB.pm
cp Lltag/Misc.pm blib/lib/Lltag/Misc.pm
cp Lltag/OGG.pm blib/lib/Lltag/OGG.pm
make[1]: quittant le répertoire « /tmp/yaourt-tmp-max-k/aur-lltag/lltag/src/lltag-0.14.2/lib »
sed -e 's!@SYSCONFDIR@!/usr/etc!g' -e 's!@VERSION@!0.14.2!g' \
        < lltag.in > lltag
chmod 755 lltag
make -C lib install PREFIX= SITEPREFIX=/tmp/yaourt-tmp-max-k/aur-lltag/lltag/pkg/usr PERLPREFIX=/tmp/yaourt-tmp-max-k/aur-lltag/lltag/pkg/usr VENDORPREFIX=/tmp/yaourt-tmp-max-k/aur-lltag/lltag/pkg/usr
make[1]: entrant dans le répertoire « /tmp/yaourt-tmp-max-k/aur-lltag/lltag/src/lltag-0.14.2/lib »
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
ERROR: Can't create '/usr/share/perl5/vendor_perl/Lltag'
mkdir /usr/share/perl5/vendor_perl/Lltag: Permission non accordée at /usr/share/perl5/core_perl/ExtUtils/Install.pm line 479

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 at -e line 1
make[1]: *** [pure_vendor_install] Erreur 13
make[1]: quittant le répertoire « /tmp/yaourt-tmp-max-k/aur-lltag/lltag/src/lltag-0.14.2/lib »
make: *** [install-lib] Erreur 2
make -C doc install DOCDIR=/share/doc/lltag
make[1]: entrant dans le répertoire « /tmp/yaourt-tmp-max-k/aur-lltag/lltag/src/lltag-0.14.2/doc »
install -d -m 0755 /share/doc/lltag
install: ne peut créer le répertoire `/share': Permission non accordée
make[1]: *** [install] Erreur 1
make[1]: quittant le répertoire « /tmp/yaourt-tmp-max-k/aur-lltag/lltag/src/lltag-0.14.2/doc »
make: *** [install-doc] Erreur 2
install -d -m 0755 /tmp/yaourt-tmp-max-k/aur-lltag/lltag/pkg/usr/man/man1/ /tmp/yaourt-tmp-max-k/aur-lltag/lltag/pkg/usr/man/man5/
install -m 0644 lltag.1 /tmp/yaourt-tmp-max-k/aur-lltag/lltag/pkg/usr/man/man1/
install -m 0644 lltag_config.5 /tmp/yaourt-tmp-max-k/aur-lltag/lltag/pkg/usr/man/man5/
install -m 0644 lltag_formats.5 /tmp/yaourt-tmp-max-k/aur-lltag/lltag/pkg/usr/man/man5/
--to activate flac file support you must install flac--
--to activate ogg file support you must install vorbis-tools--

Offline

#8 2008-01-21 20:12:41

Snowman
Developer/Forum Fellow
From: Montreal, Canada
Registered: 2004-08-20
Posts: 5,212

Re: [REQUEST] - lltag

Not tested but try to change:
  make PREFIX=${startdir}/pkg/usr PERL_INSTALLDIRS=vendor install
  make PREFIX=${startdir}/pkg/usr DOCDIR=${PREFIX}/share/doc/${pkgname} install-doc
  make PREFIX=${startdir}/pkg/usr install-man
to:
  make DESTDIR=${startdir}/pkg PREFIX=/usr PERL_INSTALLDIRS=vendor install install-doc install-man

Offline

#9 2008-01-21 20:29:49

Snowman
Developer/Forum Fellow
From: Montreal, Canada
Registered: 2004-08-20
Posts: 5,212

Re: [REQUEST] - lltag

this build correctly:

pkgname=lltag
pkgver=0.14.2
pkgrel=1
pkgdesc="Automatic command-line mp3/ogg/flac file tagger and renamer"
arch=(i686 x86_64)
url="http://home.gna.org/lltag/"
license=('GPL')
depends=('perl-libwww' 'perl-mp3-info' 'perl-mp3-tag' 'perl-term-readline' 'perl-term-readline-gnu')
source=(http://download.gna.org/lltag/$pkgname-$pkgver.tar.bz2)
md5sums=('38714bb16cbb086532a6104d335c7ac0')
 
build() {
  cd ${startdir}/src/${pkgname}-${pkgver}
  make PREFIX=/usr PERL_INSTALLDIRS=vendor lltag
  make DESTDIR=${startdir}/pkg PREFIX=/usr SYSCONFDIR=/etc PERL_INSTALLDIRS=vendor install install-doc install-man
  find ${startdir}/pkg -name '.packlist' -exec rm {} \;
  find ${startdir}/pkg -name 'perllocal.pod' -exec rm {} \;
}

I removed the 2 echo lines in the build function. You should use a .install file for these.

Offline

#10 2008-01-21 21:39:30

max-k
Member
From: Lyon - France
Registered: 2007-11-23
Posts: 38

Re: [REQUEST] - lltag

i have tried this :

  cd ${startdir}/src/${pkgname}-${pkgver}
  make DESTDIR=${startdir}/pkg PREFIX=/usr PERL_INSTALLDIRS=vendor lltag install install-doc install-man

it makes me a 'segmentation fault' when i try to launch lltag after install
I've tried this to but i get the same error :

  cd ${startdir}/src/${pkgname}-${pkgver}
  make PREFIX=/usr SYSCONFDIR=/etc PERL_INSTALLDIRS=vendor lltag
  make DESTDIR=${startdir}/pkg PREFIX=/usr PERL_INSTALLDIRS=vendor install install-doc install-man

I think there is a problem with the sed command which convert lltag.in into lltag

Last edited by max-k (2008-01-26 08:30:24)

Offline

#11 2008-01-22 06:10:08

Snowman
Developer/Forum Fellow
From: Montreal, Canada
Registered: 2004-08-20
Posts: 5,212

Re: [REQUEST] - lltag

From the use of PERL_INSTALLDIRS=vendor, I assume you're using the testing repo. If that's the case, make sure all the perl modules in the dependency are built with the new perl policy that is taking place  in testing. That might cause the seg faults.

Offline

#12 2008-01-22 09:07:44

max-k
Member
From: Lyon - France
Registered: 2007-11-23
Posts: 38

Re: [REQUEST] - lltag

ah. ok.
i will take a look at this.
thank you very much.

Offline

#13 2008-01-26 08:34:27

max-k
Member
From: Lyon - France
Registered: 2007-11-23
Posts: 38

Re: [REQUEST] - lltag

I don't find what can i do to make it works. Can you give me more details about it ?

Offline

Board footer

Powered by FluxBB