diff options
author | Rick Bradshow <bradshaw@mcs.anl.gov> | 2004-12-16 21:36:46 +0000 |
---|---|---|
committer | Rick Bradshow <bradshaw@mcs.anl.gov> | 2004-12-16 21:36:46 +0000 |
commit | 0ebe46c9fdbebdb26214fa3f76e37ff17cccaff5 (patch) | |
tree | cac082b5f63bb97825a89164f871ea64cc3a093c /src/lib/Server | |
parent | a06aa2e1554f241a187b7330e95683091a9b3222 (diff) | |
download | bcfg2-0ebe46c9fdbebdb26214fa3f76e37ff17cccaff5.tar.gz bcfg2-0ebe46c9fdbebdb26214fa3f76e37ff17cccaff5.tar.bz2 bcfg2-0ebe46c9fdbebdb26214fa3f76e37ff17cccaff5.zip |
this is the hot new X stuff
2004/12/16 15:34:47-06:00 anl.gov!bradshaw
Change mode to -rw-r--r--
2004/10/20 13:20:21-05:00 anl.gov!bradshaw
added the probe for the VGA card into the generator. THis is untested.
(Logical change 1.164)
git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@732 ce84e21b-d406-0410-9b95-82705330c041
Diffstat (limited to 'src/lib/Server')
-rw-r--r-- | src/lib/Server/Generators/Debconf.py | 29 |
1 files changed, 24 insertions, 5 deletions
diff --git a/src/lib/Server/Generators/Debconf.py b/src/lib/Server/Generators/Debconf.py index 9ab920379..0bb933bb2 100644 --- a/src/lib/Server/Generators/Debconf.py +++ b/src/lib/Server/Generators/Debconf.py @@ -13,10 +13,25 @@ class Debconf(Generator): __author__ = 'bcfg-dev@mcs.anl.gov' __provides__ = {'ConfigFile':{}} - probes = [XML('''<probe interpreter='/bin/sh'>lspci|grep VGA</probe>''')] - - def __init__(self, core, datastore): - Generator.__init__(self, core, datastore) + probes = [Element("probe", name='VGA', interpreter='/bin/sh', source='debconf')] + probes[0].text = ''' + XSERVER='/usr/bin/X11/X|/usr/X11R6/bin/X' + if [ XFree86 -configure 2>/dev/null ] ; then + VGACARD=`tail -50 /root/XF86Config.new | grep Driver | awk -F\" '{print $2}'` + elif ps auxww | egrep ${XSERVER} | grep -v grep > /dev/null ;then + if [ -e /etc/X11/XF86Config ]; then + VGACARD=`tail -50 /etc/X11/XF86Config | grep Driver | awk -F\" '{print $2}'` + else + VGACARD=`tail -50 /etc/X11/XF86Config-4 | grep Driver | awk -F\" '{print $2}'` + fi + else + VGACARD=nv + fi + echo ${VGACARD} + ''' + + def __setup__(self): + self.__provides__['ConfigFile']['/var/spool/debconf/config.dat'] = self.build_config_dat self.repo = DirectoryBacked(self.data, self.core.fam) self.xsensed = {} @@ -26,13 +41,17 @@ class Debconf(Generator): entry.attrib['group'] = 'root' entry.attrib['perms'] = '0600' filedata = self.repo.entries['config.dat'] - xdriver = self.xsensed.get(metadata.hostname, "vesa") + xdriver = self.xsensed.get(metadata.hostname, "nv") entry.text = filedata % (metadata.hostname, xdriver) def get_probes(self, metadata): '''Send out X probe''' return self.probes + def accept_probe_data(self, metadata, probedata): + if probedata.attrib['name'] == "VGA": + self.xsensed[metadata.hostname] = probedata.text + |