John Dennis <jdennis@xxxxxxxxxx> writes: > I'm trying to set up a development repo for a development team. I'll > be receiving a variety of rpm's built by others which I'll then > populate the team's repo with. But I've found myself quite confused > over arch handling. Initially the repo will only support Fedora, but > eventually I'll want to also support RHEL. > > Using the fedora repos as a guide I've constructed a tree with each > arch under a distribution along with a directory for SRPM's. Each arch > has an "os" and a "debug" directory. I run createrepo in $arch/os, > $arch/debug, and source/SRPM. > > The canonical repo config files under /etc/yum.repos.d select a tree > based on $releasever and $basearch. Ok. > This leaves the following questions: > > * what are the canonical basearch's? For x86 apparently it's i386, how > about other arch's? x86_64, ppc are the two common ones. You can run: % python -c 'import rpmUtils.arch; print rpmUtils.arch.getBaseArch("ppc64")' ppc > * it seems a little odd to populate a directory labeled i386 with i686 > rpm's, but apparently that's what's required because the directory is > selected with $basearch and not $bestarch. That's not a requirement, but that's common best practice. There's nothing stopping you using $arch. > * what happens if you've got i386, i586, and i686 rpms's for a given > NVR? do you place each under the i386 basearch directory? Do you pick > the highest arch? What does yum do when it sees more that one arch for > a given NVR? Yum should choose the best arch for the local machine, however at this point in time I'd just follow Fedora and say "the whole world is i686". > * my /etc/yum.conf has exactarch=1, my CPU is i686 and basearch is > i386, the current fedora yum repo for F-12 has only i386 > (e.g. basearch) which is populated only with i686 (bestarch) and > noarch rpms. So what's the meaning of exactarch and how does it > interact? From man yum.conf ... exactarch Either ʽ1ʼ or ʽ0ʼ. Set to ʽ1ʼ to make yum update only update the architectures of packages that you have installed. ie: with this enabled yum will not install an i686 package to update an i386 package. Default is ʽ1ʼ. > * is there any defined behavior between yum and Fedora's default > arch's (e.g. F-12 is supposed to build for i686, F-11 for i586, and > earlier for i386) I don't understand the question. > Is there any documentation on: > > * how to populate a repo tree Copy files into the directory. > * how arch's are interpreted and resolved I guess see the above python, maybe even read that file ... I'm not sure what you want/need to know. > * what are the available variables for use in a repo configuration > file and what their usage semantics are? (e.g. $releasever, $basearch, > etc.) The bottom of "man yum.conf" has a section titled "VARIABLES". -- James Antill -- james@xxxxxxx _______________________________________________ Yum mailing list Yum@xxxxxxxxxxxxxxxxx http://lists.baseurl.org/mailman/listinfo/yum