You are not logged in.
Pages: 1
Hi guys,
There's something i don't manage (or missunderstand) in the provides and replaces mecanism. I have to change (overwrite / replaces) a package. The first one (A) has been built for the base. The second one (B) is the same sources but compiled with other options and dependencies for the core. I got conflicting file errors when trying to install B. Here are the PKGBUILDs, it's for udev i need some extras :
A (base)
-------------
pkgname=eudev
_pkgname=udev-lfs
pkgver=1.10
_pkgver=20140408
pkgrel=1.1
pkgdesc="This package contains programs for dynamic creation of device nodes. "
arch=(x86_64)
url="http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html "
license=('GPL')
groups=('base')
depends=(glibc gperf)
options=(!docs !libtool)
source=("http://dev.gentoo.org/~blueness/eudev/$pkgname-$pkgver.tar.gz"
"http://anduin.linuxfromscratch.org/sour … er.tar.bz2")
md5sums=('60d96aa6e111c4cf06a8a2186c60a281'
'c2d6b127f89261513b23b6d458484099')
noextract=($pkgname-lfs-$_pkgver.tar.bz2)
provides=('eudev=1.10')
B (core):
-------------
pkgbase=eudev
pkgname=udev-extras
pkgver=2.1
pkgrel=1.1
pkgdesc="This package contains programs for dynamic creation of device nodes. "
arch=('x86_64')
url="http://dev.gentoo.org/~blueness/eudev"
license=('GPL')
groups=('base')
depends=('glibc' 'gobject-introspection' 'pciutils' 'usbutils')
#options=(!docs !libtool)
source=(http://dev.gentoo.org/~blueness/$pkgbase/$pkgbase-$pkgver.tar.gz)
md5sums=('dec70c35d9d700abc36ee79a1b49c259')
replaces=('eudev=1.10')
provides=('eudev=2.1')
What am i doing wrong ?
Thanks for help.
PIerre
Last edited by pyp22 (2015-03-11 12:29:58)
Guess what. Real portion of Windows code is: while (memory_available) {
eat_major_portion_of_memory (no_real_reason); if (feel_like_it)
make_user_THINK (this_is_an_OS); build your own Linux++;
Offline
I think pkgrel should be an integer
Offline
Offline
Please enclose the PKGBUILDs in code tags, makes them more readable.
Take a look at the wiki and please make a bit more clear what you don't understand.
Last edited by runical (2015-03-11 12:58:52)
Offline
Thanks Falconindy for your fast anwser. If i understand well the mecanism, 'forcing' (simulating) a 'conflict=' will engage a 'replaces=' process with an overwriting not simply an upgrading ?
Guess what. Real portion of Windows code is: while (memory_available) {
eat_major_portion_of_memory (no_real_reason); if (feel_like_it)
make_user_THINK (this_is_an_OS); build your own Linux++;
Offline
helix wrote:I think pkgrel should be an integer
Totally irrelevant, and incorrect.
What is the meaning of release 1.1? 1.1th release?
Offline
falconindy wrote:helix wrote:I think pkgrel should be an integer
Totally irrelevant, and incorrect.
What is the meaning of release 1.1? 1.1th release?
I think what he means is that it is not a hard requirement. I think it is mentioned in the packaging guidelines though.
Last edited by runical (2015-03-11 14:07:22)
Offline
helix wrote:falconindy wrote:Totally irrelevant, and incorrect.
What is the meaning of release 1.1? 1.1th release?
I think what he means is that it is not a hard requirement. I think it is mentioned in the packaging guidelines though.
Do you mean https://wiki.archlinux.org/index.php/PKGBUILD#pkgrel ?
Offline
about pkgrel & co, that was not the main subject of my most but anyway some anwsers Yep correct, that's the release, a special 'sauce", for the distro (lfs/blfs autobuild) i'm currently working on. My release conventioning (pkgrel=x.yz) is
x = release of the base built. (it could have been the LFS book version, but as it is a full distro it starts at 1)
y = first build-release of the package (sources a.b.c-1.0)
z = is an update of 'y' while sources are still a.b.c-1.0 but with new optimizations or new deps or that kind of stuff
'x' never changes until the next generation of the base. e.g a non-systemd one then a systemd one. Mine is actually a non-systemd oriented one. If next base built is a systemd based one then x will be 2. It will be the case for each major change done on the Linux base filesystem, security, etc ... and of course a major change in the Linux kernel.
'y' never changes except if sources version differs. In that case 'y' = 'y' + 1
'z' = 'z' + 1 on each new build-release of 'y'.
Hope it awnsers your pkgrel mindings
Tnx
Pierre
Guess what. Real portion of Windows code is: while (memory_available) {
eat_major_portion_of_memory (no_real_reason); if (feel_like_it)
make_user_THINK (this_is_an_OS); build your own Linux++;
Offline
Pages: 1