Bug 5770 - kickstart does not handle xconfig option
Summary: kickstart does not handle xconfig option
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: installer
Version: 6.1
Hardware: i386
OS: Linux
medium
high
Target Milestone: ---
Assignee: Jay Turner
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 1999-10-09 13:43 UTC by Pawel Salek
Modified: 2015-01-07 23:38 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2000-02-08 16:15:11 UTC
Embargoed:


Attachments (Terms of Use)

Description Pawel Salek 1999-10-09 13:43:50 UTC
When option xconfig is specified in kickstart file, the
Kickstart procedure crashes. I think there is some
similarity to bug no. 5596 but I am not good enough in
python programming to verify it.

Comment 1 Jay Turner 1999-10-21 16:18:59 UTC
I am not able to replicate this in the lab.  I tried 3 different
Xservers and was able to install via kickstart to all three using the
xconfig option.  Please send a copy of your ks.cfg file so that we can
try to recreate.

Comment 2 Pawel Salek 1999-10-21 16:38:59 UTC
I have just learnt python a little to find the problem source. It
comes from the fact that my graphics card is not detected
automatically and line
xconfig --server SVGA --monitor "IBM 6549 G94"
just did not work. Following line
xconfig --server SVGA --monitor "IBM 6549 G94" --startxonboot --card
"S3 Trio3D"

did not work neither - the --card option is not handled properly. I
include patches for installclass.py and kickstart.py that fix the
problem (as well as crypted password problem) - be cautious, they
might break other things.

***
RedHat/instimage/usr/lib/python1.5/site-packages/installclass.py.orig
Thu Oct 21 18:29:32 1999
--- RedHat/instimage/usr/lib/python1.5/site-packages/installclass.py
Thu Oct 21 15:22:31 1999
***************
*** 122,128 ****
  	    self.x.probe()

  	if not self.x.server:
! 	    self.x.setVidcard (card)

  	if not self.x.monID and monitor:
  	    self.x.setMonitor((monitor, (None, None)))
--- 122,128 ----
  	    self.x.probe()

  	if not self.x.server:
! 	    self.x.setVidcard ({ "NAME" : card, "SERVER" : server})

  	if not self.x.monID and monitor:
  	    self.x.setMonitor((monitor, (None, None)))
***************
*** 149,154 ****
--- 149,155 ----

      def doRootPw(self, pw, isCrypted = 0):
  	self.rootPassword = pw
+ 	self.passCrypted  = isCrypted

      def getMakeBootdisk(self):
  	return self.makeBootdisk



***
RedHat/instimage/usr/lib/python1.5/site-packages/installclass.py.orig
Thu Oct 21 18:29:32 1999
--- RedHat/instimage/usr/lib/python1.5/site-packages/installclass.py
Thu Oct 21 15:22:31 1999
***************
*** 122,128 ****
  	    self.x.probe()

  	if not self.x.server:
! 	    self.x.setVidcard (card)

  	if not self.x.monID and monitor:
  	    self.x.setMonitor((monitor, (None, None)))
--- 122,128 ----
  	    self.x.probe()

  	if not self.x.server:
! 	    self.x.setVidcard ({ "NAME" : card, "SERVER" : server})

  	if not self.x.monID and monitor:
  	    self.x.setMonitor((monitor, (None, None)))
***************
*** 149,154 ****
--- 149,155 ----

      def doRootPw(self, pw, isCrypted = 0):
  	self.rootPassword = pw
+ 	self.passCrypted  = isCrypted

      def getMakeBootdisk(self):
  	return self.makeBootdisk

If you still would like to have qa look at my ks.cfg, just let me know
(but I have just tested kickstart and it works; don't know about other
ways of installation).

------- Additional Comments From   10/21/99 17:40 -------
For completness: IBM 300GL with Video card S2 Trio3D on motherboard.
Most important parts of used kickstart file follow:
lang en_US
keyboard uk
network --bootproto static [....]
nfs --server [...]
device ethernet eepro100
keyboard uk
zerombr yes
clearpart --linux
part / --size 4000
part swap --size 128
install
mouse --kickstart generic3ps/2
timezone --utc Europe/Stockholm
xconfig --server SVGA --monitor "IBM 6549 G94" --startxonboot --card
"S3 Trio3D"

rootpw --iscrypted [...]
auth [...]
lilo --location mbr
%packages
[...]

For the password part to work, todo.py has to be modified:
*** instimage/usr/lib/python1.5/site-packages/todo.py.orig      Sun
Sep 26 15:57:00 1999
--- instimage/usr/lib/python1.5/site-packages/todo.py   Thu Oct 21
15:21:41 1999
***************
*** 1213,1219 ****

        todo.users = []
        if todo.instClass.rootPassword:
!           todo.rootpassword.set(todo.instClass.rootPassword)
        if todo.instClass.language:
            todo.language.setByAbbrev(todo.instClass.language)
        if todo.instClass.keyboard:
--- 1213,1219 ----

        todo.users = []
        if todo.instClass.rootPassword:
!
todo.rootpassword.set(todo.instClass.rootPassword,todo.instClass.passCrypted)
        if todo.instClass.language:
            todo.language.setByAbbrev(todo.instClass.language)
        if todo.instClass.keyboard:

The password patches break likely code when the password is not
encrypted (self.passCrypted is not set; it's easy to fix).

Comment 3 Karl Burkett 2000-01-14 16:44:59 UTC
Use isCrypted instead of passCrypted and there will be no crashing because it is
set to a default of 0 in many places.  I've tested this and submitted a bug
report before I discovered your report.

Comment 4 Jay Turner 2000-02-08 16:15:59 UTC
Kickstart code has been totally revamped for the latest installer, so this bug
is fixed in the latest code.


Note You need to log in before you can comment on or make changes to this bug.