summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatt Wilson <msw@redhat.com>1999-09-22 06:08:21 +0000
committerMatt Wilson <msw@redhat.com>1999-09-22 06:08:21 +0000
commita5a190c37d15fa8ab0358c75ee3c19eff9eab3af (patch)
tree5f06da39e2dd4cf31028b99e93ac967179b4bc2d
parent3bf44a446bf6183f644ce864f17586716939db49 (diff)
downloadanaconda-a5a190c37d15fa8ab0358c75ee3c19eff9eab3af.tar.gz
anaconda-a5a190c37d15fa8ab0358c75ee3c19eff9eab3af.tar.xz
anaconda-a5a190c37d15fa8ab0358c75ee3c19eff9eab3af.zip
merge from jj
-rw-r--r--Makefile2
-rw-r--r--iw/installpath.py10
-rw-r--r--iw/network.py8
-rw-r--r--iw/timezone.py3
-rw-r--r--loader/loader.c7
-rw-r--r--mouse.py11
-rw-r--r--text.py24
-rw-r--r--todo.py35
-rwxr-xr-xupd-instroot31
-rw-r--r--xf86config.py9
-rw-r--r--xserver.py12
11 files changed, 117 insertions, 35 deletions
diff --git a/Makefile b/Makefile
index 77122c160..7a980eb1a 100644
--- a/Makefile
+++ b/Makefile
@@ -2,7 +2,7 @@ ARCH := $(patsubst i%86,i386,$(shell uname -m))
ARCH := $(patsubst sparc%,sparc,$(ARCH))
SUBDIRSHD = rpmmodule kudzu isys balkan libfdisk collage loader stubs po \
- minislang textw
+ minislang textw utils
SUBDIRS = $(SUBDIRSHD) gnome-map iw help pixmaps
BUILDONLYSUBDIRS = pump
diff --git a/iw/installpath.py b/iw/installpath.py
index 530c36a5e..d58b12999 100644
--- a/iw/installpath.py
+++ b/iw/installpath.py
@@ -13,6 +13,7 @@ from format import *
from congrats import *
from dependencies import *
from lilo import *
+from silo import *
from examine import *
from bootdisk import *
from timezone import *
@@ -20,6 +21,7 @@ from xconfig import *
from fdisk import *
from rootpartition import *
from confirm import *
+import iutil
from gui import _
import installclass
@@ -65,6 +67,14 @@ class InstallPathWindow (InstallWindow):
]
def __init__ (self, ics):
+ if iutil.getArch() == 'sparc':
+ for i in range(len(self.installSteps)):
+ if type(self.installSteps[i]) == type((1,)):
+ (x, string) = self.installSteps[i]
+ if string == 'lilo':
+ self.installSteps[i] = ( SiloWindow, "silo" )
+ break
+
InstallWindow.__init__ (self, ics)
ics.readHTML ("instpath")
diff --git a/iw/network.py b/iw/network.py
index b332976e5..a541e9ee9 100644
--- a/iw/network.py
+++ b/iw/network.py
@@ -113,7 +113,11 @@ class NetworkWindow (InstallWindow):
if (new_nm != nm.get_text ()):
nm.set_text (new_nm)
- def DHCPtoggled (self, widget, table):
+ def DHCPtoggled (self, widget, (dev, table)):
+ if widget.get_active ():
+ dev.set (("bootproto", "dhcp"))
+ else:
+ dev.set (("bootproto", "static"))
table.set_sensitive (not widget.get_active ())
self.ipTable.set_sensitive (not widget.get_active ())
@@ -147,7 +151,7 @@ class NetworkWindow (InstallWindow):
options = [_("IP Address"), _("Netmask"), _("Network"), _("Broadcast")]
ipTable = GtkTable (len (options), 2)
- DHCPcb.connect ("toggled", self.DHCPtoggled, ipTable)
+ DHCPcb.connect ("toggled", self.DHCPtoggled, (devs[i], ipTable))
forward = lambda widget, box=box: box.focus (DIR_TAB_FORWARD)
diff --git a/iw/timezone.py b/iw/timezone.py
index 847b51b48..8f8b6673f 100644
--- a/iw/timezone.py
+++ b/iw/timezone.py
@@ -29,7 +29,6 @@ class TimezoneWindow (InstallWindow):
ics.setTitle (_("Time Zone Selection"))
ics.setNextEnabled (1)
ics.readHTML ("timezone")
-## ics.setHTML ("<HTML><BODY>Select your current location</BODY></HTML>")
self.timeZones = ("-12:00",
"-11:00",
@@ -91,7 +90,7 @@ class TimezoneWindow (InstallWindow):
nb = GtkNotebook ()
mainBox = GtkVBox (FALSE, 5)
-
+
tz = timezonemap.new (path)
self.tz = tz
map = Map (tz.map)
diff --git a/loader/loader.c b/loader/loader.c
index 914e178dd..f154eac70 100644
--- a/loader/loader.c
+++ b/loader/loader.c
@@ -1625,7 +1625,8 @@ int main(int argc, char ** argv) {
kdFindScsiList(&kd);
kdFindNetList(&kd);
- if ((access("/proc/pci", X_OK) || FL_MODDISK(flags))
+ if (((access("/proc/bus/pci/devices", X_OK) &&
+ access("/proc/openprom", X_OK)) || FL_MODDISK(flags))
&& !ksFile) {
startNewt(flags);
devLoadDriverDisk(modInfo, modLoaded, modDeps, flags, 1);
@@ -1689,7 +1690,9 @@ int main(int argc, char ** argv) {
busProbe(modInfo, modLoaded, modDeps, 0, &kd, flags);
- if ((access("/proc/pci", X_OK) || FL_NOPROBE(flags)) && !ksFile) {
+ if (((access("/proc/bus/pci/devices", X_OK) &&
+ access("/proc/openprom", X_OK)) ||
+ FL_NOPROBE(flags)) && !ksFile) {
manualDeviceCheck(modInfo, modLoaded, modDeps, &kd, flags);
}
diff --git a/mouse.py b/mouse.py
index 23f61646c..958749ba2 100644
--- a/mouse.py
+++ b/mouse.py
@@ -61,7 +61,7 @@ class Mouse (SimpleConfigFile):
("MMSeries", "MMSeries", "ttyS", 1),
"MM - HitTablet (serial)" :
("MMHitTab", "MMHittab", "ttyS", 1),
- "Sun Mouse":
+ "Sun - Mouse":
("sun", "sun", "sunmouse", 0),
}
@@ -78,9 +78,10 @@ class Mouse (SimpleConfigFile):
for desc in mice:
(gpm, x11, dev, em) = self.mice[desc]
# print "trying %s: '%s', '%s'" % (desc, x11, proto)
- if (x11 == proto and desc[0:7] == "Generic" and emulate == em):
- mouseType = (desc, emulate, device)
- break
+ if (x11 == proto and emulate == em):
+ if (desc[:7] == "Generic" or desc[:3] == "Sun"):
+ mouseType = (desc, emulate, device)
+ break
self.device = device
if not mouseType:
raise KeyError, "unknown X11 mouse type %s" % proto
@@ -95,7 +96,7 @@ class Mouse (SimpleConfigFile):
(device, module, desc) = list[0]
if device == "sunmouse":
- self.set("Sun Mouse", 0)
+ self.set("Sun - Mouse", 0)
elif device == "psaux":
self.set("Generic - 3 Button Mouse (PS/2)", 0)
else:
diff --git a/text.py b/text.py
index 9b5557549..76ffcfd88 100644
--- a/text.py
+++ b/text.py
@@ -17,6 +17,9 @@ from textw.constants import *
from textw.lilo import LiloWindow
from textw.lilo import LiloAppendWindow
from textw.lilo import LiloImagesWindow
+from textw.silo import SiloWindow
+from textw.silo import SiloAppendWindow
+from textw.silo import SiloImagesWindow
from textw.userauth import RootPasswordWindow
from textw.userauth import UsersWindow
from textw.userauth import AuthConfigWindow
@@ -927,9 +930,24 @@ class InstallInterface:
"complete" ]
]
- self.upgradeSteps = [
- [_("Examine System"), UpgradeExamineWindow, (self.screen, todo)],
- [_("Customize Upgrade"), CustomizeUpgradeWindow, (self.screen, todo, self.individual)],
+ if iutil.getArch() == 'sparc':
+ for i in range(len(self.installSteps)):
+ step = self.installSteps[i]
+ if step[3] == 'lilo':
+ self.installSteps[i] = [
+ _("SILO Configuration"), SiloAppendWindow,
+ (self.screen, todo), "silo"]
+ self.installSteps[i+1] = [
+ _("SILO Configuration"), SiloWindow,
+ (self.screen, todo), "silo"]
+ self.installSteps[i+2] = [
+ _("SILO Configuration"), SiloImagesWindow,
+ (self.screen, todo), "silo"]
+ break
+
+ self.upgradeSteps = [
+ [_("Examine System"), UpgradeExamineWindow, (self.screen, todo)],
+ [_("Customize Upgrade"), CustomizeUpgradeWindow, (self.screen, todo, self.individual)],
[_("Individual Packages"), IndividualPackageWindow, (self.screen, todo, self.individual)],
[_("Upgrade System"), InstallWindow, (self.screen, todo)],
[_("Upgrade Complete"), FinishedWindow, (self.screen,)]
diff --git a/todo.py b/todo.py
index 7f19213be..56883f313 100644
--- a/todo.py
+++ b/todo.py
@@ -73,6 +73,7 @@ class Network:
pass
else:
lines = f.readlines ()
+ f.close ()
info = {}
for line in lines:
netinf = string.splitfields (line, '=')
@@ -203,9 +204,33 @@ class Language (SimpleConfigFile):
class Keyboard (SimpleConfigFile):
# XXX fixme - externalize
def __init__ (self):
+ self.type = "PC"
self.info = {}
+ try:
+ f = open ("/dev/kbd", "r")
+ f.close()
+ self.type = "Sun"
+ except:
+ pass
def available (self):
+ if self.type == "Sun":
+ return [
+ "sun-pl-altgraph",
+ "sun-pl",
+ "sundvorak",
+ "sunkeymap",
+ "sunt4-es",
+ "sunt4-no-latin1.map.gz",
+ "sunt5-cz-us",
+ "sunt5-de-latin1",
+ "sunt5-es",
+ "sunt5-fi-latin1",
+ "sunt5-fr-latin1",
+ "sunt5-ru",
+ "sunt5-uk",
+ "sunt5-us-cz",
+ ]
return [
"azerty",
"be-latin1",
@@ -296,7 +321,10 @@ class Keyboard (SimpleConfigFile):
if self.info.has_key ("KEYTABLE"):
return self.info["KEYTABLE"]
else:
- return "us"
+ if self.type == "Sun":
+ return "sunkeymap"
+ else:
+ return "us"
class Authentication:
def __init__ (self):
@@ -559,7 +587,7 @@ class ToDo:
_("Formatting %s filesystem...") % (mntpoint,))
isys.makeDevInode(device, '/tmp/' + device)
if fsystem == "ext2" and createFs:
- args = [ "mke2fs", '/tmp/' + device ]
+ args = [ "mke2fs", '/tmp/' + device, "-s1" ]
if self.badBlockCheck:
args.append ("-c")
iutil.execWithRedirect ("/usr/sbin/mke2fs",
@@ -568,7 +596,7 @@ class ToDo:
searchPath = 1)
elif fsystem == "swap" and createSwap:
rc = iutil.execWithRedirect ("/usr/sbin/mkswap",
- [ "mkswap", '/tmp/' + device ],
+ [ "mkswap", '-v1', '/tmp/' + device ],
stdout = None, stderr = None,
searchPath = 1)
if rc:
@@ -857,7 +885,6 @@ class ToDo:
device = dev.get ("device")
f = open (self.instPath + "/etc/sysconfig/network-scripts/ifcfg-" + device, "w")
f.write (str (dev))
- f.write ("ONBOOT=yes\n")
f.close ()
# /etc/sysconfig/network
diff --git a/upd-instroot b/upd-instroot
index 6280a6c96..d55c9d7b4 100755
--- a/upd-instroot
+++ b/upd-instroot
@@ -39,7 +39,7 @@ echo "DESTGR is $DESTGR"
PACKAGES="glibc-2 ldconfig setup e2fsprogs-1 XFree86-libs XFree86-SVGA
XFree86-S3 XFree86-S3V XFree86-Mach32 XFree86-Mach64
- XFree86-FBDev XFree86-75dpi-fonts XFree86-I128
+ XFree86-FBDev XFree86-75dpi-fonts XFree86-100dpi-fonts XFree86-I128
XFree86-3DLabs XFree86-VGA16 XFree86-Sun
XFree86-3. xpm-3 glib- gtk+-
gnome-libs python-1 newt imlib-1 libpng libtiff libjpeg-
@@ -146,6 +146,7 @@ usr/X11R6/lib/X11/fonts/misc/olcursor*
usr/X11R6/lib/X11/locale/*
usr/X11R6/lib/X11/xkb/*
usr/X11R6/lib/X11/rgb*
+usr/X11R6/lib/X11/XKeysymDB
usr/X11R6/lib/libXpm*
usr/lib/libglib*
usr/lib/libthread*
@@ -173,6 +174,17 @@ usr/bin/chattr*
usr/bin/lsattr*
EOF
+# sparc needs 100dpi fonts as well, otherwise
+# things look ugly
+if [ `uname -m | sed 's/sparc64/sparc/'` = sparc ]; then
+ cat >> $KEEPFILEGR <<-EOF
+ usr/X11R6/lib/X11/fonts/100dpi/cour*
+ usr/X11R6/lib/X11/fonts/100dpi/helv*
+ usr/X11R6/lib/X11/fonts/100dpi/tim*
+ usr/X11R6/lib/X11/fonts/100dpi/fonts*
+ EOF
+fi
+
for I in $PACKAGES; do
for J in `ls $SRC/$I*`; do
if [ "$I" != "rpm-devel" ]; then
@@ -221,11 +233,18 @@ for p in $DEST $DESTGR; do
rm -rf $p/boot $p/home $p/root $p/tmp
cp /sbin/ldconfig $p
- (cd $p; chroot $p ./ldconfig \
- $([ -d $p/usr/X11R6/lib ] && echo /usr/X11R6/lib) )
- rm -f $p/ldconfig
-
- find $p -name "*.so" | xargs strip
+ # Must create ld.so.conf, because ldconfig does not cache
+ # dirs specified on the command line.
+ touch $p/etc/ld.so.conf
+ [ -d $p/usr/X11R6/lib ] && echo /usr/X11R6/lib > $p/etc/ld.so.conf
+ (cd $p; chroot $p ./ldconfig )
+ rm -f $p/ldconfig $p/etc/ld.so.conf
+
+ for l in `find $p -exec file {} \; | sed -n 's/^\([^:]*\):.*ELF.*$/\1/p'`; do
+ # Strip dwarf stuff, symbols and unneeded not-alloced sections
+ strip $l -R .comment -R .note `objdump -h $l | \
+ sed -n 's/^.*\(\.gnu\.warning\.[^ ]*\) .*$/-R \1/p'`
+ done
find $p -name "*.a" | xargs rm -rf
(cd /usr/share/zoneinfo; find . -type f -or -type l |
diff --git a/xf86config.py b/xf86config.py
index acec276cc..5504cb8ff 100644
--- a/xf86config.py
+++ b/xf86config.py
@@ -151,8 +151,6 @@ class XF86Config:
if self.vidCards:
self.devID = self.vidCards[0]["NAME"]
self.server = self.vidCards[0]["SERVER"]
- # there are no Cards entries with a DEVICE directive
- # self.device = self.vidCards[0]["DEVICE"]
def probe (self, probeMonitor = 1):
if self.probed:
@@ -169,17 +167,16 @@ class XF86Config:
(device, server, descr) = card
if len (server) > 5 and server[0:5] == "Card:":
self.vidCards.append (self.cards (server[5:]))
+ if len (self.vidCards) == 0:
+ self.device = device
if len (server) > 7 and server[0:7] == "Server:":
info = { "NAME" : string.split (descr, '|')[1],
- "SERVER" : server[7:],
- "DEVICE" : device }
+ "SERVER" : server[7:] }
self.vidCards.append (info)
if self.vidCards:
self.devID = self.vidCards[0]["NAME"]
self.server = self.vidCards[0]["SERVER"]
- # no Cards entries with DEVICE
- # self.device = self.vidCards[0]["DEVICE"]
# VESA probe for monitor/videoram, etc.
if probeMonitor:
diff --git a/xserver.py b/xserver.py
index 1acec62d4..6ad62acbb 100644
--- a/xserver.py
+++ b/xserver.py
@@ -34,7 +34,7 @@ def startX():
except:
pass
elif mouseDev == 'sunmouse':
- mousePrototol = "Sun"
+ mouseProtocol = "sun"
mouseEmulate = 0
else:
mouseProtocol = "Microsoft"
@@ -106,16 +106,20 @@ EndSection
server = os.fork()
if (not server):
print "starting", serverPath
+ args = [serverPath, ':1', 'vt7']
if serverPath[0:19] == '/usr/X11R6/bin/Xsun':
try:
os.unlink("/dev/mouse")
except:
pass
os.symlink(mouseDev, "/dev/mouse")
- os.execv(serverPath, [serverPath, 'vt7', '-dev', '/dev/' + x.device])
+ if x.device:
+ args.append ("-dev")
+ args.append ('/dev/' + x.device)
else:
- os.execv(serverPath, [serverPath, ':1', '-xf86config',
- '/tmp/XF86Config', 'vt7'])
+ args.append("-xf86config")
+ args.append("/tmp/XF86Config")
+ os.execv(serverPath, args)
# give time for the server to fail (if it is going to fail...)
time.sleep (1)