You are not logged in.
Pages: 1
Topic closed
Hello,
I want to write the PKGBUILD for getstream2 program - http://silicon-verl.de/home/flo/projects/streaming/.
I dont know, how to determine _gitname.
Or i have to download repository manually with this code?
cd ${srcdir}
msg "Connecting to GIT server...."
if [ -d "${srcdir}/${_gitname}" ] ; then
cd ${_gitname} && git pull --rebase
else
git clone ${_gitroot}
cd ${_gitname}
fi
I have written other PKGBUILD (from mercurial repository) and there were sufficing specify _hg... variables to download repo.
Best regards
Thomas
root@dvb dvb-apps]# cat PKGBUILD
# Maintainer: Tomáš Skočdopole <tomas.skocdopole@ippolna.cz>
pkgname='getstream2'
pkgver=1
pkgrel=1
pkgdesc="DVB streaming"
arch=('i686' 'x86_64')
url='http://silicon-verl.de/home/flo/projects/streaming/'
license=('GPL')
depends=()
makedepends=('git')
optdepends=()
provides=()
conflicts=()
source=()
md5sums=()
_gitroot="git://hydra.gt.owl.de/getstream.git "
_gitname=""
build()
{
...
make || return 1
}
Offline
_gitroot="git://hydra.gt.owl.de/getstream.git "
_gitname=""
you can add what _gitname you want but is better to reflect what you actually build. in this case i prefer to have _gitname=getstream
Give what you have. To someone, it may be better than you dare to think.
Offline
_gitroot="git://hydra.gt.owl.de/getstream.git "
_gitname=""you can add what _gitname you want but is better to reflect what you actually build. in this case i prefer to have _gitname=getstream
Thank you for reply - I modify _gitname variable and run makepkg. But still repo content was not downloaded. There is output from makepkg:
==> Determining latest git revision...
-> Version found: 20100329
==> Making package: getstream2 20100329-1 x86_64 (Mon Mar 29 12:10:22 CEST 2010)
==> Checking Runtime Dependencies...
==> Checking Buildtime Dependencies...
==> Retrieving Sources...
==> Extracting Sources...
==> Removing existing pkg/ directory...
==> Starting build()...
Only variable pkgver in the PKGBUILD was modifed to 20100329.
Regards,
Tomas
Offline
Could you post the entire PKGBUILD ?
Offline
Could you post the entire PKGBUILD ?
Yes, of course:
# Maintainer: Tomáš Skočdopole <tomas.skocdopole@ippolna.cz>
pkgname='getstream2'
pkgver=20100329
pkgrel=1
pkgdesc="DVB streaming"
arch=('i686' 'x86_64')
url='http://silicon-verl.de/home/flo/projects/streaming/'
license=('GPL')
depends=()
makedepends=('git')
optdepends=()
provides=()
conflicts=()
source=()
md5sums=()
_gitroot="git://hydra.gt.owl.de/getstream.git"
_gitname="getstream"
build()
{
[I assume, that git repo is now downloaded by makepkg, but dont. I am comparing this behaviour with mercurial repositories.]
make || return 1
}
Offline
No, you must add git clone commands.
I haven't ran it, but use it as a prototype:
# Maintainer: Tomáš Skočdopole <tomas.skocdopole@ippolna.cz>
pkgname='getstream2'
pkgver=20100329
pkgrel=1
pkgdesc="DVB streaming"
arch=('i686' 'x86_64')
url='http://silicon-verl.de/home/flo/projects/streaming/'
license=('GPL')
depends=()
makedepends=('git')
optdepends=()
provides=()
conflicts=()
source=()
md5sums=()
_gitroot="git://hydra.gt.owl.de/getstream.git"
_gitname="getstream"
build()
{
cd ${srcdir}/
msg "Connecting to the GIT server...."
if [[ -d ${srcdir}/${_gitname} ]] ; then
cd ${_gitname}
git pull origin
msg "The local files are updated..."
else
git clone ${_gitroot}
fi
msg "GIT checkout done."
msg "Starting make for: ${pkgname}"
if [[ -d ${srcdir}/${_gitname}-build ]]; then
msg "Cleaning the previous build directory..."
rm -rf ${srcdir}/${_gitname}-build
fi
git clone ${srcdir}/${_gitname} ${srcdir}/${_gitname}-build
cd ${srcdir}/${_gitname}-build
msg "Starting configure..."
./configure --prefix=/usr
make || return 1
make DESTDIR=${pkgdir} install || return 1
}
Offline
No, you must add git clone commands.
OK, thank you for help. I use your code in my PKGBUILD. So what difference is between hg repo and git repo - because HG repo is automatically downloaded. GIT, SVN and CVS automatic downloading is not yet implemented in makepkg?
Thomas
Offline
No idea about that... :-/
Offline
From memory, hg repos are downloaded to get the correct value for the updating of pkgver. Overall, the system for SCM based package is crap and needs a good rewrite.
Edit: Install "abs" and look in /usr/share/pacman for PKGBUILD prototypes.
Online
From memory, hg repos are downloaded to get the correct value for the updating of pkgver. Overall, the system for SCM based package is crap and needs a good rewrite.
Edit: Install "abs" and look in /usr/share/pacman for PKGBUILD prototypes.
Do you mean that it should be more automated or that just makepkg needs code cleanup ?
Offline
As in, you should just be able to add git://url.to/repo in $source and it should "just work". It's extremely non-trivial.
[git] | [AURpkgs] | [arch-games]
Offline
you mean it is extemly trivial?
Offline
Offline
Edit: Install "abs" and look in /usr/share/pacman for PKGBUILD prototypes.
I've wondered this for a while but never cared to bring it up, is there any good reason these prototypes not part of the pacman package instead of the abs package?
archlinux - please read this and this — twice — then ask questions.
--
http://rsontech.net | http://github.com/rson
Offline
I might be late in the discussion, but this page might be of some help:
https://wiki.archlinux.org/index.php/VC … Guidelines
However, it's not specified what happens when there are submodules in the repo.
Another reference is the linux-git package in the AUR:
https://aur.archlinux.org/packages/linux-git/
In the latest version it uses the transparent GIT handling of the PKGBUILD (the repo address is in the "source"array).
And there are no submodules used in the repo.
Last edited by marzoul (2013-04-18 14:41:00)
Offline
3... 2... 1... moderator!
zʇıɹɟʇıɹʞsuɐs AUR || Cycling in Budapest with a helmet camera || Revised log levels proposal: "FYI" "WTF" and "OMG" (John Barnette)
Offline
marzoul, Please read Forum Etiquette: Old Threads / Necro-bumping. Closing.
aur S & M :: forum rules :: Community Ethos
Resources for Women, POC, LGBT*, and allies
Offline
Pages: 1
Topic closed