diff options
author | Bill Nottingham <notting@redhat.com> | 2005-09-09 04:52:18 +0000 |
---|---|---|
committer | Bill Nottingham <notting@redhat.com> | 2005-09-09 04:52:18 +0000 |
commit | 5c90ff7b2b9e3486413d87dea2d26ff0e187a99f (patch) | |
tree | 970d581724573564c7962475bc0397f3b1a8df06 | |
parent | ec4a87597dc1d0f653b2e0574d57e55dbc727ddd (diff) | |
download | anaconda-5c90ff7b2b9e3486413d87dea2d26ff0e187a99f.tar.gz anaconda-5c90ff7b2b9e3486413d87dea2d26ff0e187a99f.tar.xz anaconda-5c90ff7b2b9e3486413d87dea2d26ff0e187a99f.zip |
* anaconda.spec: Bump version, tweak requirements
* installclass.py (setVideoCard, configureX): Adapt to new rhpl
X setup code
* kickstart.py (doXConfig): Likewise
* kickstartData.py (__init__): Likewise
* kickstartParser.py (doXConfig): Likewise
* packages.py (writeXConfiguration): Likewise
* xsetup.py (getArgList): Likewise
* scripts/mk-images: Remove modules.pcimap, modules.usbmap,
pcitable, from images, and associated trimmer scripts from
files used. Add modules.alias, videoaliases. Trim modules.alias
using trimmodalias.
* scripts/upd-instroot: Don't keep Cards, but keep videoaliases.
Don't run checkcards.py
* utils/trimmodalias: New script, trim modules.alias file to
match modules in the first/second stage
* utils/trimpciids: Trim pci.ids based on modules.alias and
videoaliases, not pcitable and modules.pcimap
* utils/checkcards.py: Remove now obsolete script
* utils/trimmodmap: Likewise
* utils/trimpcitable: Likewise
* utils/trimusbmap: Likewise
-rw-r--r-- | ChangeLog | 25 | ||||
-rw-r--r-- | anaconda.spec | 11 | ||||
-rw-r--r-- | installclass.py | 29 | ||||
-rw-r--r-- | kickstart.py | 2 | ||||
-rw-r--r-- | kickstartData.py | 4 | ||||
-rw-r--r-- | kickstartParser.py | 3 | ||||
-rw-r--r-- | packages.py | 4 | ||||
-rwxr-xr-x | scripts/mk-images | 35 | ||||
-rwxr-xr-x | scripts/upd-instroot | 8 | ||||
-rwxr-xr-x | utils/checkcards.py | 66 | ||||
-rwxr-xr-x | utils/trimmodalias | 23 | ||||
-rw-r--r-- | utils/trimmodmap | 43 | ||||
-rwxr-xr-x | utils/trimpciids | 29 | ||||
-rwxr-xr-x | utils/trimpcitable | 21 | ||||
-rwxr-xr-x | utils/trimusbmap | 16 | ||||
-rw-r--r-- | xsetup.py | 2 |
16 files changed, 99 insertions, 222 deletions
@@ -1,3 +1,28 @@ +2005-09-09 Bill Nottingham <notting@redhat.com> + + * anaconda.spec: Bump version, tweak requirements + * installclass.py (setVideoCard, configureX): Adapt to new rhpl + X setup code + * kickstart.py (doXConfig): Likewise + * kickstartData.py (__init__): Likewise + * kickstartParser.py (doXConfig): Likewise + * packages.py (writeXConfiguration): Likewise + * xsetup.py (getArgList): Likewise + * scripts/mk-images: Remove modules.pcimap, modules.usbmap, + pcitable, from images, and associated trimmer scripts from + files used. Add modules.alias, videoaliases. Trim modules.alias + using trimmodalias. + * scripts/upd-instroot: Don't keep Cards, but keep videoaliases. + Don't run checkcards.py + * utils/trimmodalias: New script, trim modules.alias file to + match modules in the first/second stage + * utils/trimpciids: Trim pci.ids based on modules.alias and + videoaliases, not pcitable and modules.pcimap + * utils/checkcards.py: Remove now obsolete script + * utils/trimmodmap: Likewise + * utils/trimpcitable: Likewise + * utils/trimusbmap: Likewise + 2005-09-08 Paul Nasrat <pnasrat@redhat.com> * scripts/pkgorder: Neuter pkgorder diff --git a/anaconda.spec b/anaconda.spec index 1f9bd1335..65c710c61 100644 --- a/anaconda.spec +++ b/anaconda.spec @@ -1,12 +1,12 @@ Name: anaconda -Version: 10.3.0.12 +Version: 10.3.0.13 Release: 1 License: GPL Summary: Graphical system installer Group: Applications/System Source: anaconda-%{PACKAGE_VERSION}.tar.bz2 -BuildPreReq: pump-devel >= 0.8.20, kudzu-devel >= 1.1.52, pciutils-devel, bzip2-devel, e2fsprogs-devel, python-devel gtk2-devel rpm-python >= 4.2-0.61, newt-devel, rpm-devel, gettext >= 0.11, rhpl, booty, libxml2-python, zlib-devel, bogl-devel >= 0:0.1.9-17, bogl-bterm >= 0:0.1.9-17, elfutils-devel, beecrypt-devel, libselinux-devel >= 1.6, xorg-x11-devel, intltool >= 0.31.2-3, python-urlgrabber -Requires: rpm-python >= 4.2-0.61, rhpl > 0.63, parted >= 1.6.3-7, booty, kudzu +BuildPreReq: pump-devel >= 0.8.20, kudzu-devel >= 1.2.0, pciutils-devel, bzip2-devel, e2fsprogs-devel, python-devel gtk2-devel rpm-python >= 4.2-0.61, newt-devel, rpm-devel, gettext >= 0.11, rhpl, booty, libxml2-python, zlib-devel, bogl-devel >= 0:0.1.9-17, bogl-bterm >= 0:0.1.9-17, elfutils-devel, beecrypt-devel, libselinux-devel >= 1.6, xorg-x11-devel, intltool >= 0.31.2-3, python-urlgrabber +Requires: rpm-python >= 4.2-0.61, rhpl > 0.170, parted >= 1.6.3-7, booty, kudzu > 1.2.0 Requires: pyparted, libxml2-python, python-urlgrabber Requires: anaconda-help, system-logos Obsoletes: anaconda-images <= 10 @@ -69,6 +69,11 @@ rm -rf $RPM_BUILD_ROOT /sbin/chkconfig --del reconfig >/dev/null 2>&1 || : %changelog +* Fri Sep 09 2005 Bill Nottingham <notting@redhat.com> 10.3.0.13-1 +- adapt to new X driver model in kudzu and associated rhpl changes +- pcitable/modules.pcimap/modules.usbmap are no longer used in probing; + remove support for them and add modules.alias usage + * Wed Sep 07 2005 Paul Nasrat <pnasrat@redhat.com> 10.3.0.12-1 - yum backend selinux file_context - Start using new kickstart code (clumens) diff --git a/installclass.py b/installclass.py index f36f4b686..212a68763 100644 --- a/installclass.py +++ b/installclass.py @@ -423,24 +423,16 @@ class BaseInstallClass: id.xsetup.xhwstate.set_vsync(vsync) id.xsetup.xhwstate.recalc_mode() - def setVideoCard(self, id, server = None, card = None, videoRam = None): - # oh suck. if on ppc, bail because nothing other than fbdev is - # going to work all that well - if iutil.getArch() == "ppc": - return + def setVideoCard(self, id, driver = None, videoRam = None): primary = id.videocard.primaryCard() - if card: - db = id.videocard.cardsDB() - if db.has_key(card): - vcdata = db[card] - primary.setCardData(vcdata) - primary.setDevID(vcdata["NAME"]) - primary.setDescription(vcdata["NAME"]) - - id.xsetup.xhwstate.set_videocard_name(vcdata["NAME"]) - id.xsetup.xhwstate.set_videocard_card(vcdata["NAME"]) + if driver: + db = rhpl.videocard.drivers + if db.has_key(driver): + primary.setDriver(driver) + id.xsetup.xhwstate.set_videocard_name(primary.getDescription()) + id.xsetup.xhwstate.set_videocard_driver(driver) else: raise RuntimeError, "Unknown videocard specified: %s" %(card,) @@ -449,12 +441,9 @@ class BaseInstallClass: id.videocard.primaryCard().setVideoRam(str(videoRam)) id.xsetup.xhwstate.set_videocard_ram(int(videoRam)) - if server is not None: - log.error("unable to really do anything with server right now") - - def configureX(self, id, server = None, card = None, videoRam = None, monitorName = None, hsync = None, vsync = None, resolution = None, depth = None, noProbe = 0, startX = 0): - self.setVideoCard(id, server, card, videoRam) + def configureX(self, id, driver = None, videoRam = None, monitorName = None, hsync = None, vsync = None, resolution = None, depth = None, noProbe = 0, startX = 0): + self.setVideoCard(id, driver, videoRam) self.setMonitor(id, hsync, vsync, monitorName) if startX: diff --git a/kickstart.py b/kickstart.py index 644753d25..0202765ba 100644 --- a/kickstart.py +++ b/kickstart.py @@ -483,7 +483,7 @@ class AnacondaKSHandlers(KickstartHandlers): KickstartHandlers.doXConfig(self, args) dict = self.ksdata.xconfig - id.instClass.configureX(id, dict["server"], dict["card"], + id.instClass.configureX(id, dict["driver"], dict["videoRam"], dict["monitor"], dict["hsync"], dict["vsync"], dict["resolution"], dict["depth"], diff --git a/kickstartData.py b/kickstartData.py index d10d11b94..4e7bcbcaf 100644 --- a/kickstartData.py +++ b/kickstartData.py @@ -41,9 +41,9 @@ class KickstartData: self.timezone = {"isUtc": False, "timezone": ""} self.upgrade = False self.vnc = {"enabled": False, "password": "", "host": "", "port": ""} - self.xconfig = {"card": "", "defaultdesktop": "", "depth": 0, + self.xconfig = {"driver": "", "defaultdesktop": "", "depth": 0, "hsync": "", "monitor": "", "probe": True, - "resolution": "", "server": "", "startX": False, + "resolution": "", "startX": False, "videoRam": "", "vsync": ""} self.zerombr = False self.zfcp = {"devnum": "", "fcplun": "", "scsiid": "", "scsilun": "", diff --git a/kickstartParser.py b/kickstartParser.py index a32bb55f6..4c367e350 100644 --- a/kickstartParser.py +++ b/kickstartParser.py @@ -591,7 +591,7 @@ class KickstartHandlers: def doXConfig(self, args): op = KSOptionParser() - op.add_option("--card", dest="card") + op.add_option("--driver", dest="driver") op.add_option("--defaultdesktop", dest="defaultdesktop") op.add_option("--depth", dest="depth", action="store", type="int", nargs=1) @@ -600,7 +600,6 @@ class KickstartHandlers: op.add_option("--noprobe", dest="probe", action="store_false", default=True) op.add_option("--resolution", dest="resolution") - op.add_option("--server", dest="server") op.add_option("--startxonboot", dest="startX", action="store_true", default=False) op.add_option("--videoram", dest="videoRam") diff --git a/packages.py b/packages.py index 6cb9e0d42..6efbbf5cc 100644 --- a/packages.py +++ b/packages.py @@ -119,8 +119,8 @@ def writeXConfiguration(id, instPath): if id.xsetup.skipx: return - xserver = id.videocard.primaryCard().getXServer() - if not xserver: + card = id.videocard.primaryCard() + if not card: return log.info("Writing X configuration") diff --git a/scripts/mk-images b/scripts/mk-images index 476a64ed7..808c7ec44 100755 --- a/scripts/mk-images +++ b/scripts/mk-images @@ -42,8 +42,7 @@ TOPDIR=$(cd $TOPDIR; pwd) IMGPATH=$4 KERNELBASE=/tmp/updboot.kernel.$$ MODDEPS=$KERNELBASE/moddeps - MODMAPS=$KERNELBASE/modules.pcimap - USBMAPS=$KERNELBASE/modules.usbmap + MODALIAS=$KERNELBASE/modules.alias BUILDARCH=$5 KERNELNAME=vmlinuz @@ -93,10 +92,8 @@ TOPDIR=$(cd $TOPDIR; pwd) mkdir -p $INSTIMGPATH # Stuff that we need - TRIMPCITABLE=$IMGPATH/usr/lib/anaconda-runtime/trimpcitable - TRIMMODMAP=$IMGPATH/usr/lib/anaconda-runtime/trimmodmap + TRIMMODALIAS=$IMGPATH/usr/lib/anaconda-runtime/trimmodalias TRIMPCIIDS=$IMGPATH/usr/lib/anaconda-runtime/trimpciids - TRIMUSBMAP=$IMGPATH/usr/lib/anaconda-runtime/trimusbmap GETKEYMAPS=$IMGPATH/usr/lib/anaconda-runtime/getkeymaps KEYMAPS=/tmp/keymaps-$BUILDARCH.$$ SCREENFONT=$IMGPATH/usr/lib/anaconda-runtime/screenfont-${BASEARCH}.gz @@ -107,15 +104,15 @@ TOPDIR=$(cd $TOPDIR; pwd) LOADERBINDIR=$IMGPATH/usr/lib/anaconda-runtime/loader BOOTDISKDIR=$IMGPATH/usr/lib/anaconda-runtime/boot LANGTABLE=$IMGPATH/usr/lib/anaconda/lang-table - PCITABLE=$IMGPATH/usr/share/hwdata/pcitable PCIIDS=$IMGPATH/usr/share/hwdata/pci.ids + XDRIVERS=$IMGPATH=/usr/share/hwdata/videoaliases CACHE=$KERNELBASE/.cache MODULESUSED=$KERNELBASE/modules-used touch $MODULESUSED - REQUIREMENTS="$TRIMPCITABLE $TRIMMODMAP $TRIMPCIIDS $PCITABLE $PCIIDS $GETMODDEPS $MODINFO - $FILTERMODDEPS $LANGTABLE $GETKEYMAPS $TRIMUSBMAP" + REQUIREMENTS="$TRIMMODALIAS $TRIMPCIIDS $PCIIDS $XDRIVERS $GETMODDEPS $MODINFO + $FILTERMODDEPS $LANGTABLE $GETKEYMAPS" dieLater= for n in $REQUIREMENTS; do @@ -181,8 +178,7 @@ rundepmod () { $FAKEARCH /sbin/depmod -a -F $KERNELROOT/boot/System.map-$version \ -b $KERNELROOT $version - mv $KERNELROOT/lib/modules/$version/modules.pcimap $MODMAPS - mv $KERNELROOT/lib/modules/$version/modules.usbmap $USBMAPS + mv $KERNELROOT/lib/modules/$version/modules.alias $MODALIAS cat $KERNELROOT/lib/modules/$version/modules.dep | $FILTERMODDEPS > $final } @@ -300,7 +296,7 @@ makemoduleball() { MMB_DIR=$1 MMB_MODULESET=$(resdeps $2) - rm -rf $MMB_DIR/modules $MMB_DIR/$MMB_NAME $MMB_DIR/modules.dep \ + rm -rf $MMB_DIR/modules $MMB_DIR/$MMB_NAME $MMB_DIR/modules.dep $MMB_DIR/modules.alias \ $MMB_DIR/modules.pcimap $MMB_DIR/pcitable $MMB_DIR/$MMB_MODINFO \ $MMB_DIR/pci.ids mkdir -p $MMB_DIR/modules @@ -314,21 +310,12 @@ makemoduleball() { getmoddeps "$(find . -name *.ko)" ../modules.dep - # create the pcitable - $TRIMPCITABLE ignore $(find . -name *.ko -exec basename {} \;) < $PCITABLE > ../pcitable + # create the modules.alias file + $TRIMMODALIAS $(find . -name *.ko -exec basename {} \;) < $MODALAIS > ../modules.alias - # create the modules.pcimap - $TRIMMODMAP $PCITABLE $(find . -name *.ko -exec basename {} \;) < $MODMAPS > ../modules.pcimap - - # create the modules.usbmap - $TRIMUSBMAP $(find . -name *.ko -exec basename {} \;) < $USBMAPS > ../modules.usbmap - # remove a zero-byte modules.usbmap - if [ "$(ls -s ../modules.usbmap |cut -f 1 -d ' ')" = "0" ]; then - rm -f ../modules.usbmap - fi - # create the pci.ids + # create the pci.ids, from modules.alias and the X driver aliases awk '!/^(\t\t|#)/ { print ;if ($0 == "ffff Illegal Vendor ID") nextfile; }' < $PCIIDS | \ - $TRIMPCIIDS ../pcitable ../modules.pcimap > ../pci.ids + $TRIMPCIIDS ../modules.alias $XDRIVERS > ../pci.ids if [ -n "$MMB_DD" ]; then echo $MMB_DD > $MMB_DIR/rhdd diff --git a/scripts/upd-instroot b/scripts/upd-instroot index e919888a0..fdd65a8d7 100755 --- a/scripts/upd-instroot +++ b/scripts/upd-instroot @@ -420,9 +420,8 @@ usr/share/terminfo/b/bterm usr/share/terminfo/l/linux usr/share/terminfo/v/vt100 usr/share/terminfo/v/vt100-nav -usr/share/hwdata/pcitable usr/share/hwdata/pci.ids -usr/share/hwdata/Cards +usr/share/hwdata/videoaliases usr/share/hwdata/MonitorsDB usr/share/rhpl/extramodes usr/share/rhpl/vesamodes @@ -1257,9 +1256,4 @@ if [ "$ARCH" != "s390" -a "$ARCH" != "s390x" ]; then rm -rf $DESTGR/usr/X11R6/lib/X11/xkb/compiled ln -s /tmp $DESTGR/usr/X11R6/lib/X11/xkb/compiled fi - - if [ -n "$NEEDGR" ]; then - cd $ORIGDIR - $DESTGR/usr/lib/anaconda-runtime/checkcards.py $DESTGR/usr/share/hwdata/pcitable $DESTGR/usr/share/hwdata/Cards - fi fi diff --git a/utils/checkcards.py b/utils/checkcards.py deleted file mode 100755 index 6ac81755b..000000000 --- a/utils/checkcards.py +++ /dev/null @@ -1,66 +0,0 @@ -#!/usr/bin/python -import sys -import string - -def usage(): - print "Usage: checkcards.py [pcitable] [Cards]" - -if len(sys.argv) < 2: - usage () - sys.exit (1) - -pcifile = sys.argv[1] -cardsfile = sys.argv[2] - -def getcards (cardsfile): - cards = {} - db = open (cardsfile) - lines = db.readlines () - db.close () - card = {} - name = None - for line in lines: - line = string.strip (line) - if not line and name: - cards[name] = card - card = {} - name = None - continue - - if line and line[0] == '#': - continue - - if len (line) > 4 and line[0:4] == 'NAME': - name = line[5:] - - info = string.splitfields (line, ' ') - if card.has_key (info[0]): - card[info[0]] = card[info[0]] + '\n' + (string.joinfields (info[1:], ' ')) - else: - card[info[0]] = string.joinfields (info[1:], ' ') - - return cards - -pcitable = open (pcifile, 'r') -lines = pcitable.readlines() -cards = [] -for line in lines: - if line[0] == '#': - continue - fields = string.split(line, '\t') - if len (fields) < 4: - continue - card = fields[2] - if card[1:6] == "Card:": - cards.append (card[6:-1]) - -carddb = getcards (cardsfile) - -rc = 0 -for card in cards: - if not carddb.has_key(card): - print "*** pcitable error *** Card not found:", card - rc = 1 - -sys.exit(rc) - diff --git a/utils/trimmodalias b/utils/trimmodalias new file mode 100755 index 000000000..f8dad21f0 --- /dev/null +++ b/utils/trimmodalias @@ -0,0 +1,23 @@ +#!/usr/bin/python + +import os +import sys +import string + +modules = [] + +args = sys.argv[1:] + +for arg in args: + arg = os.path.basename(arg) + arg = arg.replace('.ko','') + modules.append(arg) + +f = sys.stdin.readline() + +while f: + f = f.strip() + for mod in modules: + if f.endswith(' %s' % (mod,)): + print f + f = sys.stdin.readline() diff --git a/utils/trimmodmap b/utils/trimmodmap deleted file mode 100644 index 0d87114c8..000000000 --- a/utils/trimmodmap +++ /dev/null @@ -1,43 +0,0 @@ -#!/usr/bin/perl - -open (F, $ARGV[0]); -@ents = (<F>); -close (F); - -shift @ARGV; - -foreach $n (@ARGV) { - $n =~ s/\.ko$//; - $mods{"$n"} = $n; -} - - -while (<STDIN>) { - chop; - $line = $_; - s/0x0000/0x/g; - @a = split; - if ($mods{$a[0]}) { - if ($a[1] ne "0xffffffff" && $a[2] ne "0xffffffff") { - if ($a[3] eq "0xffffffff" && $a[4] eq "0xffffffff") { - @res = grep (/^$a[1]\t$a[2]\t"$a[0]"/, @ents); - if (length(@res) != 0 && ! $res[0]) { - print $line."\n"; - } - } else { - @res = grep (/^$a[1]\t$a[2]\t"$a[0]"/, @ents); - if ($res[0]) { - @b = split "\t",$res[0]; - if ($b[2] ne "\"$a[0]\"") { - print $line."\n"; - } - } else { - @res = grep (/^$a[1]\t$a[2]\t$a[3]\t$a[4]\t"$a[0]"/, @ents); - if (!$res[0]) { - print $line."\n"; - } - } - } - } - } -} diff --git a/utils/trimpciids b/utils/trimpciids index 3274dc2cf..2d177acc7 100755 --- a/utils/trimpciids +++ b/utils/trimpciids @@ -12,27 +12,28 @@ if f: pcitable = f.readlines() f.close() for line in pcitable: - if not line.startswith("0x"): + if not line.startswith("alias pci:"): continue - fields = line.split('\t') - if fields[0] not in vendors: - vendors.append(fields[0]) - if (fields[0], fields[1]) not in devices: - devices.append( (fields[0],fields[1])) + vend = "0x%s" % (line[15:19],) + dev = "0x%s" % (line[24:28],) + if vend not in vendors: + vendors.append(vend) + if (vend, dev) not in devices: + devices.append( (vend, dev) ) + f = open(sys.argv[2]) if f: - pcimap = f.readlines() + pcitable = f.readlines() f.close() - for line in pcimap: - if line.startswith("#"): + for line in pcitable: + if not line.startswith("alias pcivideo:"): continue - ( trash, vend, dev, trash, trash, trash , trash, trash ) = line.split() - vend = vend.replace("0x0000","0x",1) - dev = dev.replace("0x0000","0x",1) + vend = "0x%s" % (line[20:24],) + dev = "0x%s" % (line[29:33],) if vend not in vendors: vendors.append(vend) - if (vend,dev) not in devices: - devices.append( (vend, dev)) + if (vend, dev) not in devices: + devices.append( (vend, dev) ) pciids = sys.stdin.readlines() current_vend = 0 diff --git a/utils/trimpcitable b/utils/trimpcitable deleted file mode 100755 index c2cbe425e..000000000 --- a/utils/trimpcitable +++ /dev/null @@ -1,21 +0,0 @@ -#!/usr/bin/perl - -foreach $n (@ARGV) { - $n =~ s/\.ko$//; - $mods{"\"$n\""} = $n; -} - -while (<STDIN>) { - chop; - @a = split; - if ($mods{$a[2]} || $mods{$a[4]}) { - print "$_\n"; - } elsif ($_ =~ /Card:Intel.*81[05]/) { - print "$_\n"; - } elsif ($a[4] =~ /\"ignore\"/) { - print "$_\n"; - } elsif ($a[4] =~ /\"unknown\"/) { - print "$_\n"; - } - -} diff --git a/utils/trimusbmap b/utils/trimusbmap deleted file mode 100755 index ece40a705..000000000 --- a/utils/trimusbmap +++ /dev/null @@ -1,16 +0,0 @@ -#!/usr/bin/perl - -foreach $n (@ARGV) { - $n =~ s/\.ko$//; - $mods{"$n"} = $n; -} - - -while (<STDIN>) { - chop; - $line = $_; - @a = split; - if ($mods{$a[0]}) { - print $line."\n"; - } -} @@ -93,7 +93,7 @@ class XSetup: monitor = self.xhwstate.monitor vc = self.xhwstate.videocard - args = args + [ "--card", '"' + vc.primaryCard().shortDescription() + '"' ] + args = args + [ "--driver", '"' + vc.primaryCard().getDriver() + '"' ] vram = vc.primaryCard().getVideoRam() if vram is not None: args = args + [ "--videoram", vram] |