In past releases of Fedora, we've maintained a list in the install class that specifies extra repos that should be added to the task list UI. In the last release (F9), we got nailed because the mirror URLs changed and we didn't notice, so clicking "Additional Fedora Software" failed. Further, people keep wanting the updates repo enabled.
What better way to fix up both these problems than to use the existing /etc/yum.repos.d/* files from the fedora-release package instead of maintaing our own list? That's what the attached patch does. It's not complete yet but it is getting there.
Problems:
- Driver disks should write out repo files as well, but I think driver disks are broken in general so it's not really worth fixing this immediately. - The repo configured in loader that gets passed to anaconda as method= is enabled, as is the regular Fedora release repo from the fedora-release package. This sounds like an exciting battle. I suppose it can be fixed a little bit with cost=, but I probably need a way to only enable one "base" repo.
Thoughts?
- Chris
On Wed, 2008-05-28 at 17:08 -0400, Chris Lumens wrote:
In past releases of Fedora, we've maintained a list in the install class that specifies extra repos that should be added to the task list UI. In the last release (F9), we got nailed because the mirror URLs changed and we didn't notice, so clicking "Additional Fedora Software" failed. Further, people keep wanting the updates repo enabled.
What better way to fix up both these problems than to use the existing /etc/yum.repos.d/* files from the fedora-release package instead of maintaing our own list? That's what the attached patch does. It's not complete yet but it is getting there.
Nice. One problem I'd note - you're using .treeinfo (yay) to get the "version" string, except .treeinfo and fedora-release don't usually agree on the version.
For example: in F9Beta we have fedora-release-8.92, but .treeinfo version is "9-Beta".
Maybe we want to force them to be the same with some patching in buildinstall? Or add a "releasever" .treeinfo variable that definitely matches what yum will consider $releasever?
-w
How about looking for repo config file in /etc/yum.repos.d in product.img as well? This makes it easy for distro customizers to extend the base set from the original distro.
Kay
-----Original Message----- From: anaconda-devel-list-bounces@redhat.com [mailto:anaconda-devel-list-bounces@redhat.com] On Behalf Of Chris Lumens Sent: Wednesday, May 28, 2008 2:09 PM To: anaconda-devel-list@redhat.com Subject: [PATCH] use repo config files instead of a list
In past releases of Fedora, we've maintained a list in the install class that specifies extra repos that should be added to the task list UI. In the last release (F9), we got nailed because the mirror URLs changed and we didn't notice, so clicking "Additional Fedora Software" failed. Further, people keep wanting the updates repo enabled.
What better way to fix up both these problems than to use the existing /etc/yum.repos.d/* files from the fedora-release package instead of maintaing our own list? That's what the attached patch does. It's not complete yet but it is getting there.
Problems:
- Driver disks should write out repo files as well, but I think driver disks are broken in general so it's not really worth fixing this immediately. - The repo configured in loader that gets passed to anaconda as method= is enabled, as is the regular Fedora release repo from the fedora-release package. This sounds like an exciting battle. I suppose it can be fixed a little bit with cost=, but I probably need a way to only enable one "base" repo.
Thoughts?
- Chris
How about looking for repo config file in /etc/yum.repos.d in product.img as well? This makes it easy for distro customizers to extend the base set from the original distro.
We've talked about completely overhauling the product.img support but who knows if that will actually get done or not. Your request seems like a much easier way to specify multiple repos than what we had (the repos dict in the installclass) so sure, I can do that.
- Chris
On Wed, 2008-05-28 at 23:51 -0400, Bill Nottingham wrote:
Chris Lumens (clumens@redhat.com) said:
@@ -329,6 +329,7 @@ etc/selinux/targeted etc/shells etc/udev etc/yum/pluginconf.d/fedorakmod.conf +etc/yum/yum.repos.d/* lib/terminfo $LIBDIR/libnss_dns* $LIBDIR/libnss_files*
etc/yum.repos.d/*, surely?
it's actually supposed to be /etc/yum/repos.d. We move it around in the fedora release so we don't go breaking everyone's configs.
-sv
Chris Lumens (clumens@redhat.com) said:
@@ -329,6 +329,7 @@ etc/selinux/targeted etc/shells etc/udev etc/yum/pluginconf.d/fedorakmod.conf +etc/yum/yum.repos.d/* lib/terminfo $LIBDIR/libnss_dns* $LIBDIR/libnss_files*
etc/yum.repos.d/*, surely?
Oops, that's what I meant. In fact that's what I use everywhere else throughout the patch. I must have just gotten caught up in reading the previous line.
- Chris
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512
Chris Lumens wrote: | - The repo configured in loader that gets passed to anaconda as method= | is enabled, as is the regular Fedora release repo from the | fedora-release package. This sounds like an exciting battle. I | suppose it can be fixed a little bit with cost=, but I probably need | a way to only enable one "base" repo.
While you're at it any objections to make anaconda write the method= repo under /etc/yum.repos.d/ as well ? Does this get too complicated with RHEL where we have Server, VT, Cluster, ClusterStorage repos as well?
Thanks, Alexander.
| - The repo configured in loader that gets passed to anaconda as method= | is enabled, as is the regular Fedora release repo from the | fedora-release package. This sounds like an exciting battle. I | suppose it can be fixed a little bit with cost=, but I probably need | a way to only enable one "base" repo.
While you're at it any objections to make anaconda write the method= repo under /etc/yum.repos.d/ as well ?
I think this is the direction I want to head, yes. However I also have a big patch in the works regarding stage2=/method= to finish up the work I started last release, so I've left this untouched for now.
Does this get too complicated with RHEL where we have Server, VT, Cluster, ClusterStorage repos as well?
I'm going on the assumption that RHEL6 is going to be completely different from RHEL5 (we sure love to do that sort of thing) so I'm not going to worry about it for now.
- Chris
Chris Lumens wrote:
In past releases of Fedora, we've maintained a list in the install class that specifies extra repos that should be added to the task list UI. In the last release (F9), we got nailed because the mirror URLs changed and we didn't notice, so clicking "Additional Fedora Software" failed. Further, people keep wanting the updates repo enabled.
Another thing for the list of problems is what to do on media installs -- updates + installing from a multiple disc set is going to not work like we want. Unless we want to seriously dive into the ordering problem. But maybe it's time to do that... :-/
Jeremy
anaconda-devel@lists.stg.fedoraproject.org