baghera ha scritto:Da quanto ne so io nella funzione build() vanno inclusi gli step di compilazione, questo perché la funzione build non viene eseguita in ambiente fakeroot. Nella funzione package() invece bisogna includere il make DESTDIR=$pkgdir install e tutti gli altri passaggi di installazione file in $pkgdir (tipo l'install di file .desktop, icone e cose così).
Questo modo di procedere ha portato due ulteriori cambiamenti:
1 - la funzione build() è opzionale (ci sono pacchetti che fanno solo copia e incolla di file ad esempio)
2 - il repackaging con makepkg -R è possibile solo in presenza della funzione package().
Tutto questo vale da pacman 3.4.0.
Demind ha scritto:Non sempre però funziona bene...io ad esempio non son riuscito in nessun modo ad aggiornare il mio PKGBUILD di vlc-3gp e non ho ancora avuto tempo/voglia di scrivere ai dev...se ci metti numeri e simboli in mezzo la funzione package fa le bizze
Demind ha scritto:Non sempre però funziona bene...io ad esempio non son riuscito in nessun modo ad aggiornare il mio PKGBUILD di vlc-3gp e non ho ancora avuto tempo/voglia di scrivere ai dev...se ci metti numeri e simboli in mezzo la funzione package fa le bizze
4javier ha scritto:In pratica i programmi in python potranno usare esclusivamente package. Me lo dovrò studiare un po'.
baghera ha scritto:Demind ha scritto:Non sempre però funziona bene...io ad esempio non son riuscito in nessun modo ad aggiornare il mio PKGBUILD di vlc-3gp e non ho ancora avuto tempo/voglia di scrivere ai dev...se ci metti numeri e simboli in mezzo la funzione package fa le bizze
Puoi spiegare meglio che intendi?
# $Id: PKGBUILD 95096 2010-10-14 19:50:47Z ibiru $
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: Sarah Hay <sarahhay@mb.sympatico.ca>
# Contributor: Martin Sandsmark <martin.sandsmark@kde.org>
pkgbase=vlc-3gp
pkgname=('vlc-3gp' 'vlc-3gp-plugin')
_realname=vlc
pkgver=1.1.4.1
pkgrel=2
arch=('i686' 'x86_64')
url="http://www.videolan.org/vlc/"
license=('GPL')
makedepends=('a52dec' 'fluidsynth' 'libmtp' 'libdvbpsi' 'lirc-utils'
'libdca' 'qt' 'libproxy' 'sdl_image' 'libdvdnav' 'mesa'
'lua' 'v4l-utils' 'libcddb' 'smbclient' 'libmatroska' 'zvbi'
'taglib' 'sysfsutils' 'libmpcdec' 'ffmpeg' 'faad2'
'libshout' 'libmad' 'fribidi' 'libmpeg2' 'libmodplug'
'avahi' 'ttf-freefont' 'libxv' 'libass' 'xdg-utils' 'libxpm'
'xulrunner' 'pkgconfig' 'live-media' 'libnotify' 'libcdio'
'flac' 'libtheora' 'alsa-lib' 'jack' 'kdelibs' 'udev'
'libraw1394' 'libdc1394' 'libavc1394' 'libva')
options=('!libtool')
source=("http://download.videolan.org/pub/videolan/${_realname}/${pkgver}/${_realname}-${pkgver}.tar.bz2")
md5sums=('ce17c335b38b322949694313173fcd49')
build() {
cd "${srcdir}/${_realname}-${pkgver}"
sed -i -e 's:truetype/freefont:TTF:g' modules/misc/freetype.c
./configure --prefix=/usr
--disable-rpath
--enable-faad
--enable-v4l
--enable-snapshot
--enable-dbus-control
--enable-nls
--enable-lirc
--enable-pvr
--enable-ncurses
--enable-mozilla
--with-live555-tree=/usr/lib/live
--enable-realrtsp
CFLAGS="-fPIC"
make
}
package_vlc-3gp() {
pkgdesc="A multi-platform MPEG, VCD/DVD, and DivX player"
depends=('a52dec' 'fluidsynth' 'libmtp' 'libdvbpsi' 'libcdio'
'libdca' 'qt' 'libproxy' 'sdl_image' 'libdvdnav' 'mesa'
'lua' 'v4l-utils' 'libcddb' 'smbclient' 'libmatroska' 'zvbi'
'taglib' 'sysfsutils' 'libmpcdec' 'ffmpeg' 'faad2'
'libshout' 'libmad' 'fribidi' 'libmpeg2' 'libmodplug'
'ttf-freefont' 'libxv' 'libass' 'xdg-utils')
optdepends=('avahi: for service discovery using bonjour protocol'
'libnotify: for notification plugin'
'ncurses: for ncurses interface support'
'libdvdcss: for decoding encrypted DVDs'
'lirc-utils: for lirc plugin'
'libavc1394: for devices using the 1394ta AV/C'
'libdc1394: for IEEE 1394 plugin'
'kdelibs: KDE Solid hardware integration'
'vdpau-video: VDPAU backend for VA API (for GPU acceleration on Nvidia cards)')
options=('!libtool')
install=vlc.install
cd "${srcdir}/${_realname}-${pkgver}"
make DESTDIR=${pkgdir}/ install
for res in 16 32 48 128; do
install -D -m644 ${srcdir}/${_realname}-${pkgver}/share/icons/${res}x${res}/vlc.png
${pkgdir}/usr/share/icons/hicolor/${res}x${res}/apps/vlc.png
done
rm -rf ${pkgdir}/usr/lib/mozilla
}
package_vlc-3gp-plugin() {
pkgdesc="VLC mozilla browser plugin"
depends=("vlc-3gp=${pkgver}" 'nspr' 'xulrunner' 'libxpm')
cd "${srcdir}/${_realname}-${pkgver}"
#for linking against libvlc
make -C src DESTDIR="${pkgdir}" install-libLTLIBRARIES
make -C projects/mozilla DESTDIR=${pkgdir}/ install
#clean up libvlc
make -C src DESTDIR="${pkgdir}" uninstall-libLTLIBRARIES
}Demind ha scritto:Scusa sono cotto in questi giorni, avevo scritto una vaccata...il pacchetto lo creava correttamente anche a me ma facendo l'upload su AUR mi dava errore..in sostanza non c'è nessun problema con package...le 3 ore le avevo perse per fare l'upload su AUR cambiando di volta in volta parametri nel PKGBUILD pensando di aver fatto errori...ma a distanza di un po' di tempo ho confuso le cose. Chiedo venia
baghera ha scritto:Demind ha scritto:Scusa sono cotto in questi giorni, avevo scritto una vaccata...il pacchetto lo creava correttamente anche a me ma facendo l'upload su AUR mi dava errore..in sostanza non c'è nessun problema con package...le 3 ore le avevo perse per fare l'upload su AUR cambiando di volta in volta parametri nel PKGBUILD pensando di aver fatto errori...ma a distanza di un po' di tempo ho confuso le cose. Chiedo venia
Ah ok, allora abbiamo trovato il colpevolePurtroppo non ci sono piani per il supporto ai pacchetti splittati in Aur, puoi però votare questo bug, magari prima o poi lo implementeranno
dieghen89 ha scritto:Hehe io ci ho perso le ore prima di scoprire che non era un mio PKGBUILD sbagliato ma aur che non supporta questo tipo di pacchetti...Secondo me è una cosa da uniformare ai repo..
dieghen89 ha scritto:@Bl@ster e chiunque sia interessato
Per AUR che non supporta i PKGBUILD splittati ho trovato un rimedio che sto usando già da qualche mese sul kernel-netbook...Date un occhiata al suo PKGBUILD per capire...
Secondo me questa è la soluzione più comoda, se qualcuno usa yaourt e vuole un pacchetto splittato basta che edita il pkgbuild quando richiesto e mette splitted=y...
Visitano il forum: Nessuno e 0 ospiti