summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xanaconda1
-rwxr-xr-xgui.py15
-rw-r--r--iw/account.py5
-rw-r--r--iw/auth.py5
-rw-r--r--iw/autopartition.py5
-rw-r--r--iw/bootdisk.py5
-rw-r--r--iw/congrats.py5
-rw-r--r--iw/dependencies.py5
-rw-r--r--iw/format.py5
-rw-r--r--iw/installpath.py5
-rw-r--r--iw/keyboard.py5
-rw-r--r--iw/language.py5
-rw-r--r--iw/lilo.py5
-rw-r--r--iw/network.py5
-rw-r--r--iw/package.py5
-rw-r--r--iw/progress.py5
-rw-r--r--iw/rootpartition.py5
-rw-r--r--iw/welcome.py7
-rw-r--r--po/Makefile2
-rw-r--r--po/anaconda.pot325
-rw-r--r--text.py143
-rw-r--r--todo.py2
22 files changed, 352 insertions, 218 deletions
diff --git a/anaconda b/anaconda
index 5f953f66e..5a8191fc6 100755
--- a/anaconda
+++ b/anaconda
@@ -153,6 +153,7 @@ if forceMount:
setupFilesystems = 1
try:
+ print "todo.init"
todo = ToDo(intf, method, rootPath, installSystem = installPackages,
setupFilesystems = setupFilesystems, mouse = mouseInfo)
intf.run(todo)
diff --git a/gui.py b/gui.py
index 59c06454d..1e7184388 100755
--- a/gui.py
+++ b/gui.py
@@ -1,3 +1,10 @@
+print "GUI mode init..."
+
+import gettext
+
+cat = gettext.Catalog ("anaconda", "/usr/share/locale")
+_ = cat.gettext
+
from gtk import *
from gnome.ui import *
from gnome.xmhtml import *
@@ -31,10 +38,6 @@ import rpm
from thread import *
from threading import *
import time
-import gettext
-
-cat = gettext.Catalog ("anaconda", "/usr/share/locale")
-_ = cat.gettext
class WaitWindow:
def __init__(self, title, text):
@@ -103,6 +106,8 @@ class InstallInterface:
gtkThread = GtkMainThread ()
gtkThread.start ()
+ print "GUI mode run"
+
commonSteps = [LanguageWindow, KeyboardWindow, MouseWindow,
WelcomeWindow, InstallPathWindow]
@@ -111,8 +116,6 @@ class InstallInterface:
self.icw.start ()
self.finishedTODO.wait ()
- todo.setLiloLocation("hda")
-
class InstallControlWindow (Thread):
def instantiateWindow (self, windowClass):
diff --git a/iw/account.py b/iw/account.py
index 0243b3435..0d5990079 100644
--- a/iw/account.py
+++ b/iw/account.py
@@ -1,9 +1,6 @@
from gtk import *
from iw import *
-import gettext
-
-cat = gettext.Catalog ("anaconda", "/usr/share/locale")
-_ = cat.gettext
+from gui import _
class AccountWindow (InstallWindow):
diff --git a/iw/auth.py b/iw/auth.py
index 119c5ea31..42df8a862 100644
--- a/iw/auth.py
+++ b/iw/auth.py
@@ -1,9 +1,6 @@
from gtk import *
from iw import *
-import gettext
-
-cat = gettext.Catalog ("anaconda", "/usr/share/locale")
-_ = cat.gettext
+from gui import _
class AuthWindow (InstallWindow):
diff --git a/iw/autopartition.py b/iw/autopartition.py
index 5e70edd84..aa600dc95 100644
--- a/iw/autopartition.py
+++ b/iw/autopartition.py
@@ -1,10 +1,7 @@
from gtk import *
from iw import *
from thread import *
-import gettext
-
-cat = gettext.Catalog ("anaconda", "/usr/share/locale")
-_ = cat.gettext
+from gui import _
FSEDIT_CLEAR_LINUX = (1 << 0)
FSEDIT_CLEAR_ALL = (1 << 2)
diff --git a/iw/bootdisk.py b/iw/bootdisk.py
index 3f177b008..c33fb2a26 100644
--- a/iw/bootdisk.py
+++ b/iw/bootdisk.py
@@ -1,9 +1,6 @@
from iw import *
from gtk import *
-import gettext
-
-cat = gettext.Catalog ("anaconda", "/usr/share/locale")
-_ = cat.gettext
+from gui import _
class BootdiskWindow (InstallWindow):
diff --git a/iw/congrats.py b/iw/congrats.py
index 903c8228c..d7488224e 100644
--- a/iw/congrats.py
+++ b/iw/congrats.py
@@ -1,10 +1,7 @@
from gtk import *
from gnome.ui import *
from iw import *
-import gettext
-
-cat = gettext.Catalog ("anaconda", "/usr/share/locale")
-_ = cat.gettext
+from gui import _
class CongratulationWindow (InstallWindow):
diff --git a/iw/dependencies.py b/iw/dependencies.py
index 97677b93f..1bcf18fbc 100644
--- a/iw/dependencies.py
+++ b/iw/dependencies.py
@@ -1,9 +1,6 @@
from iw import *
from gtk import *
-import gettext
-
-cat = gettext.Catalog ("anaconda", "/usr/share/locale")
-_ = cat.gettext
+from gui import _
class UnresolvedDependenciesWindow (InstallWindow):
diff --git a/iw/format.py b/iw/format.py
index 096743747..31004e849 100644
--- a/iw/format.py
+++ b/iw/format.py
@@ -2,10 +2,7 @@ from gtk import *
from iw import *
from thread import *
import isys
-import gettext
-
-cat = gettext.Catalog ("anaconda", "/usr/share/locale")
-_ = cat.gettext
+from gui import _
class FormatWindow (InstallWindow):
def __init__ (self, ics):
diff --git a/iw/installpath.py b/iw/installpath.py
index 99ff36589..e70a06f39 100644
--- a/iw/installpath.py
+++ b/iw/installpath.py
@@ -18,10 +18,7 @@ from dependencies import *
from lilo import *
from examine import *
from bootdisk import *
-import gettext
-
-cat = gettext.Catalog ("anaconda", "/usr/share/locale")
-_ = cat.gettext
+from gui import _
UPGRADE = 0
INSTALL = 1
diff --git a/iw/keyboard.py b/iw/keyboard.py
index e09711fd8..e33819c30 100644
--- a/iw/keyboard.py
+++ b/iw/keyboard.py
@@ -1,10 +1,7 @@
from gtk import *
from iw import *
import xkb
-import gettext
-
-cat = gettext.Catalog ("anaconda", "/usr/share/locale")
-_ = cat.gettext
+from gui import _
class KeyboardWindow (InstallWindow):
diff --git a/iw/language.py b/iw/language.py
index 944157eb3..6c02fe9e3 100644
--- a/iw/language.py
+++ b/iw/language.py
@@ -1,9 +1,6 @@
from gtk import *
from iw import *
-import gettext
-
-cat = gettext.Catalog ("anaconda", "/usr/share/locale")
-_ = cat.gettext
+from gui import _
class LanguageWindow (InstallWindow):
diff --git a/iw/lilo.py b/iw/lilo.py
index 5482614d7..035f05a7d 100644
--- a/iw/lilo.py
+++ b/iw/lilo.py
@@ -1,9 +1,6 @@
from iw import *
from gtk import *
-import gettext
-
-cat = gettext.Catalog ("anaconda", "/usr/share/locale")
-_ = cat.gettext
+from gui import _
class LiloWindow (InstallWindow):
diff --git a/iw/network.py b/iw/network.py
index efd23677a..30d7c0dce 100644
--- a/iw/network.py
+++ b/iw/network.py
@@ -1,10 +1,7 @@
from gtk import *
from iw import *
from isys import *
-import gettext
-
-cat = gettext.Catalog ("anaconda", "/usr/share/locale")
-_ = cat.gettext
+from gui import _
class NetworkWindow (InstallWindow):
diff --git a/iw/package.py b/iw/package.py
index d18466309..73c1edd74 100644
--- a/iw/package.py
+++ b/iw/package.py
@@ -10,10 +10,7 @@ import GdkImlib
import string
import sys
import xpms
-import gettext
-
-cat = gettext.Catalog ("anaconda", "/usr/share/locale")
-_ = cat.gettext
+from gui import _
class IndividualPackageSelectionWindow (InstallWindow):
diff --git a/iw/progress.py b/iw/progress.py
index d49a35736..b1d89cb35 100644
--- a/iw/progress.py
+++ b/iw/progress.py
@@ -4,10 +4,7 @@ import string
import rpm
import time
from threading import *
-import gettext
-
-cat = gettext.Catalog ("anaconda", "/usr/share/locale")
-_ = cat.gettext
+from gui import _
class DoInstall (Thread):
def __init__ (self, icw, todo):
diff --git a/iw/rootpartition.py b/iw/rootpartition.py
index 0ae3fb3f3..8d3526bae 100644
--- a/iw/rootpartition.py
+++ b/iw/rootpartition.py
@@ -2,10 +2,7 @@ from gtk import *
from iw import *
from thread import *
import isys
-import gettext
-
-cat = gettext.Catalog ("anaconda", "/usr/share/locale")
-_ = cat.gettext
+from gui import _
class ConfirmPartitionWindow (InstallWindow):
def __init__ (self, ics):
diff --git a/iw/welcome.py b/iw/welcome.py
index e3b148982..a4eab0a57 100644
--- a/iw/welcome.py
+++ b/iw/welcome.py
@@ -1,9 +1,6 @@
from gtk import *
from iw import *
-import gettext
-
-cat = gettext.Catalog ("anaconda", "/usr/share/locale")
-_ = cat.gettext
+from gui import _
class WelcomeWindow (InstallWindow):
@@ -20,7 +17,7 @@ class WelcomeWindow (InstallWindow):
"should read the installation section before continuing.</P><P>"
"If you have purchased Official Red Hat Linux, be sure to "
"register your purchase through our web site, "
- "http://www.redhat.com/.</P></BODY></HTML>")
+ "http://www.redhat.com/.</BODY></HTML>")
def getScreen (self):
label = GtkLabel ("(insert neat logo graphic here)")
diff --git a/po/Makefile b/po/Makefile
index e3396bcdd..e3310cee0 100644
--- a/po/Makefile
+++ b/po/Makefile
@@ -11,7 +11,7 @@ NLSPACKAGE = anaconda
CATALOGS = $(shell ls *.po)
FMTCATALOGS = $(patsubst %.po,%.mo,$(CATALOGS))
-POTFILES = ../text.py ../gui.py ../iw/*.py
+POTFILES = ../text.py ../gui.py ../iw/*.py ../libfdisk/*.c
all: $(NLSPACKAGE).pot $(FMTCATALOGS)
diff --git a/po/anaconda.pot b/po/anaconda.pot
index e113e3ef0..06ad62867 100644
--- a/po/anaconda.pot
+++ b/po/anaconda.pot
@@ -7,7 +7,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 1999-08-26 19:05-0400\n"
+"POT-Creation-Date: 1999-08-27 01:03-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -15,44 +15,45 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: ENCODING\n"
-#: ../iw/language.py:10 ../text.py:26 ../text.py:1080
+#: ../iw/language.py:10 ../text.py:27 ../text.py:1277
msgid "Language Selection"
msgstr ""
-#: ../text.py:27
+#: ../text.py:28
msgid "What language would you like to use during the installation process?"
msgstr ""
-#: ../text.py:29 ../text.py:77 ../text.py:128 ../text.py:176 ../text.py:229
-#: ../text.py:245 ../text.py:250 ../text.py:272 ../text.py:299 ../text.py:314
-#: ../text.py:334 ../text.py:356 ../text.py:487 ../text.py:507 ../text.py:538
-#: ../text.py:593 ../text.py:633 ../text.py:698 ../text.py:749 ../text.py:818
-#: ../text.py:835 ../text.py:855 ../text.py:867 ../text.py:879 ../text.py:1047
-#: ../text.py:1053
+#: ../text.py:30 ../text.py:78 ../text.py:129 ../text.py:177 ../text.py:230
+#: ../text.py:246 ../text.py:251 ../text.py:279 ../text.py:289 ../text.py:297
+#: ../text.py:305 ../text.py:334 ../text.py:369 ../text.py:395 ../text.py:417
+#: ../text.py:548 ../text.py:568 ../text.py:599 ../text.py:654 ../text.py:694
+#: ../text.py:759 ../text.py:810 ../text.py:871 ../text.py:1032
+#: ../text.py:1052 ../text.py:1064 ../text.py:1076 ../text.py:1244
+#: ../text.py:1250
msgid "OK"
msgstr ""
-#: ../text.py:41
+#: ../text.py:42
msgid "/dev/ttyS0 (COM1 under DOS)"
msgstr ""
-#: ../text.py:42
+#: ../text.py:43
msgid "/dev/ttyS1 (COM2 under DOS)"
msgstr ""
-#: ../text.py:43
+#: ../text.py:44
msgid "/dev/ttyS2 (COM3 under DOS)"
msgstr ""
-#: ../text.py:44
+#: ../text.py:45
msgid "/dev/ttyS3 (COM4 under DOS)"
msgstr ""
-#: ../iw/lilo.py:53 ../text.py:59
+#: ../iw/lilo.py:53 ../text.py:60 ../text.py:884 ../text.py:967
msgid "Device"
msgstr ""
-#: ../text.py:60
+#: ../text.py:61
#, c-format
msgid "What device is your mouse located on? %s %i"
msgstr ""
@@ -74,80 +75,82 @@ msgstr ""
#: ../libfdisk/newtfsedit.c:545 ../libfdisk/newtfsedit.c:581
#: ../libfdisk/newtfsedit.c:1303 ../libfdisk/newtfsedit.c:1311
#: ../libfdisk/newtfsedit.c:1436 ../libfdisk/newtfsedit.c:1457
-#: ../libfdisk/newtfsedit.c:1551 ../text.py:61
+#: ../libfdisk/newtfsedit.c:1551 ../text.py:62 ../text.py:889 ../text.py:902
+#: ../text.py:980 ../text.py:995
msgid "Ok"
msgstr ""
#: ../gui.py:268 ../libfdisk/fsedit.c:972 ../libfdisk/newtfsedit.c:1303
-#: ../libfdisk/newtfsedit.c:1311 ../text.py:61 ../text.py:62 ../text.py:77
-#: ../text.py:100 ../text.py:128 ../text.py:131 ../text.py:142 ../text.py:144
-#: ../text.py:162 ../text.py:176 ../text.py:178 ../text.py:197 ../text.py:199
-#: ../text.py:229 ../text.py:299 ../text.py:317 ../text.py:334 ../text.py:336
-#: ../text.py:356 ../text.py:487 ../text.py:538 ../text.py:540 ../text.py:593
-#: ../text.py:633 ../text.py:698 ../text.py:749 ../text.py:758 ../text.py:774
-#: ../text.py:783 ../text.py:818 ../text.py:825 ../text.py:835 ../text.py:836
+#: ../libfdisk/newtfsedit.c:1311 ../text.py:62 ../text.py:63 ../text.py:78
+#: ../text.py:101 ../text.py:129 ../text.py:132 ../text.py:143 ../text.py:145
+#: ../text.py:163 ../text.py:177 ../text.py:179 ../text.py:198 ../text.py:200
+#: ../text.py:230 ../text.py:334 ../text.py:372 ../text.py:395 ../text.py:397
+#: ../text.py:417 ../text.py:548 ../text.py:599 ../text.py:601 ../text.py:654
+#: ../text.py:694 ../text.py:759 ../text.py:810 ../text.py:819 ../text.py:835
+#: ../text.py:844 ../text.py:871 ../text.py:878 ../text.py:980 ../text.py:995
+#: ../text.py:1032 ../text.py:1033
msgid "Back"
msgstr ""
-#: ../text.py:79
+#: ../text.py:80
msgid "Which model mouse is attached to this computer?"
msgstr ""
-#: ../text.py:88
+#: ../text.py:89
msgid "Emulate 3 Buttons?"
msgstr ""
-#: ../text.py:90
+#: ../text.py:91
msgid "Mouse Selection"
msgstr ""
-#: ../text.py:126 ../text.py:1081
+#: ../text.py:127 ../text.py:1278
msgid "Keyboard Selection"
msgstr ""
-#: ../text.py:127
+#: ../text.py:128
msgid "Which model keyboard is attached to this computer?"
msgstr ""
-#: ../text.py:138 ../text.py:1083
+#: ../text.py:139 ../text.py:1280
msgid "Installation Path"
msgstr ""
-#: ../text.py:139
+#: ../text.py:140
msgid ""
"Would you like to install a new system or upgrade a system which already "
"contains Red Hat Linux 2.0 or later?"
msgstr ""
-#: ../iw/installpath.py:56 ../text.py:142
+#: ../iw/installpath.py:56 ../text.py:143
msgid "Install"
msgstr ""
-#: ../iw/installpath.py:60 ../text.py:142 ../text.py:146
+#: ../iw/installpath.py:60 ../text.py:143 ../text.py:147
msgid "Upgrade"
msgstr ""
-#: ../libfdisk/newtfsedit.c:1551 ../text.py:159 ../text.py:875
+#: ../libfdisk/newtfsedit.c:1551 ../text.py:160 ../text.py:1072
msgid "Error"
msgstr ""
-#: ../text.py:160
+#: ../text.py:161
msgid "You don't have any Linux partitions. You can't upgrade this system!"
msgstr ""
-#: ../text.py:173
+#: ../text.py:174
msgid "System to Upgrade"
msgstr ""
-#: ../text.py:174
+#: ../text.py:175
msgid "What partition holds the root partition of your installation?"
msgstr ""
-#: ../text.py:189
+#: ../text.py:190
msgid "Customize Packages to Upgrade"
msgstr ""
-#: ../text.py:190
+#: ../text.py:191
msgid ""
"The packages you have installed, and any other packages which are needed to "
"satisfy their dependencies, have been selected for installation. Would you "
@@ -159,7 +162,7 @@ msgstr ""
#: ../libfdisk/gnomefsedit.c:2119 ../libfdisk/gnomefsedit.c:2140
#: ../libfdisk/newtfsedit.c:486 ../libfdisk/newtfsedit.c:697
#: ../libfdisk/newtfsedit.c:1489 ../libfdisk/newtfsedit.c:1507
-#: ../libfdisk/newtfsedit.c:1592 ../text.py:197 ../text.py:774 ../text.py:777
+#: ../libfdisk/newtfsedit.c:1592 ../text.py:198 ../text.py:835 ../text.py:838
msgid "Yes"
msgstr ""
@@ -168,99 +171,116 @@ msgstr ""
#: ../libfdisk/gnomefsedit.c:2119 ../libfdisk/gnomefsedit.c:2140
#: ../libfdisk/newtfsedit.c:486 ../libfdisk/newtfsedit.c:697
#: ../libfdisk/newtfsedit.c:1489 ../libfdisk/newtfsedit.c:1507
-#: ../libfdisk/newtfsedit.c:1592 ../text.py:197 ../text.py:202 ../text.py:774
-#: ../text.py:780
+#: ../libfdisk/newtfsedit.c:1592 ../text.py:198 ../text.py:203 ../text.py:835
+#: ../text.py:841
msgid "No"
msgstr ""
-#: ../text.py:212 ../text.py:1097
+#: ../text.py:213 ../text.py:1294
msgid "Root Password"
msgstr ""
-#: ../text.py:214
+#: ../text.py:215
msgid ""
"Pick a root password. You must type it twice to ensure you know what it is "
"and didn't make a mistake in typing. Remember that the root password is a "
"critical part of system security!"
msgstr ""
-#: ../text.py:223
+#: ../text.py:224
msgid "Password:"
msgstr ""
-#: ../text.py:224
+#: ../text.py:225
msgid "Password (again):"
msgstr ""
-#: ../text.py:242
+#: ../text.py:243 ../text.py:286
msgid "Password Length"
msgstr ""
-#: ../text.py:243
+#: ../text.py:244
msgid "The root password must be at least 6 characters long."
msgstr ""
-#: ../text.py:247
+#: ../text.py:248 ../text.py:294
msgid "Password Mismatch"
msgstr ""
-#: ../text.py:248
+#: ../text.py:249 ../text.py:295
msgid "The passwords you entered were different. Please try again."
msgstr ""
-#: ../text.py:267
-msgid "Add user"
+#: ../text.py:268
+msgid "Edit User"
msgstr ""
-#: ../text.py:268
+#: ../text.py:272
+msgid "Add User"
+msgstr ""
+
+#: ../text.py:275
msgid "User ID"
msgstr ""
-#: ../text.py:269 ../text.py:290
+#: ../text.py:276 ../text.py:324
msgid "Full Name"
msgstr ""
-#: ../text.py:270
+#: ../text.py:277
msgid "Password"
msgstr ""
-#: ../text.py:271
+#: ../text.py:278
msgid "Password (confirm)"
msgstr ""
#: ../libfdisk/fsedit.c:263 ../libfdisk/gnomefsedit.c:596
#: ../libfdisk/gnomefsedit.c:1553 ../libfdisk/gnomefsedit.c:1957
-#: ../libfdisk/newtfsedit.c:450 ../libfdisk/newtfsedit.c:1507 ../text.py:272
+#: ../libfdisk/newtfsedit.c:450 ../libfdisk/newtfsedit.c:1507 ../text.py:279
+#: ../text.py:281 ../text.py:889 ../text.py:907
msgid "Cancel"
msgstr ""
-#: ../text.py:286 ../text.py:1098
+#: ../text.py:287
+msgid "The password must be at least 6 characters long."
+msgstr ""
+
+#: ../text.py:303
+msgid "User Exists"
+msgstr ""
+
+#: ../text.py:304
+msgid "This user id already exists. Choose another."
+msgstr ""
+
+#: ../text.py:319 ../text.py:1295
msgid "User Account Setup"
msgstr ""
-#: ../text.py:290
+#: ../text.py:324
msgid "User name"
msgstr ""
-#: ../libfdisk/newtfsedit.c:1309 ../text.py:298 ../text.py:308
+#: ../libfdisk/newtfsedit.c:1309 ../text.py:333 ../text.py:343
msgid "Add"
msgstr ""
-#: ../libfdisk/newtfsedit.c:1302 ../libfdisk/newtfsedit.c:1310 ../text.py:298
-#: ../text.py:310
+#: ../libfdisk/newtfsedit.c:1302 ../libfdisk/newtfsedit.c:1310 ../text.py:333
+#: ../text.py:349
msgid "Delete"
msgstr ""
-#: ../libfdisk/newtfsedit.c:1302 ../libfdisk/newtfsedit.c:1310 ../text.py:299
-#: ../text.py:312
+#: ../libfdisk/newtfsedit.c:1302 ../libfdisk/newtfsedit.c:1310 ../text.py:334
+#: ../text.py:353 ../text.py:980 ../text.py:1000
msgid "Edit"
msgstr ""
-#: ../text.py:325
+#: ../text.py:386
msgid "Red Hat Linux"
msgstr ""
-#: ../text.py:326
+#: ../text.py:387
msgid ""
"Welcome to Red Hat Linux!\n"
"\n"
@@ -272,85 +292,85 @@ msgid ""
"purchase through our web site, http://www.redhat.com/."
msgstr ""
-#: ../iw/auth.py:11 ../text.py:358
+#: ../iw/auth.py:11 ../text.py:419
msgid "Authentication Configuration"
msgstr ""
-#: ../text.py:359
+#: ../text.py:420
msgid "Use Shadow Passwords"
msgstr ""
-#: ../text.py:361
+#: ../text.py:422
msgid "Enable MD5 Passwords"
msgstr ""
-#: ../iw/auth.py:49 ../text.py:363
+#: ../iw/auth.py:49 ../text.py:424
msgid "Enable NIS"
msgstr ""
-#: ../text.py:368
+#: ../text.py:429
msgid "NIS Domain:"
msgstr ""
-#: ../text.py:370
+#: ../text.py:431
msgid "NIS Server:"
msgstr ""
-#: ../text.py:372
+#: ../text.py:433
msgid "or use:"
msgstr ""
-#: ../text.py:375
+#: ../text.py:436
msgid "Request server via broadcast"
msgstr ""
-#: ../text.py:459
+#: ../text.py:520
msgid "Use bootp/dhcp"
msgstr ""
-#: ../text.py:464
+#: ../text.py:525
msgid "IP address:"
msgstr ""
-#: ../iw/network.py:107 ../text.py:465
+#: ../iw/network.py:107 ../text.py:526
msgid "Netmask:"
msgstr ""
-#: ../text.py:466
+#: ../text.py:527
msgid "Default gateway (IP):"
msgstr ""
-#: ../text.py:467
+#: ../text.py:528
msgid "Primary nameserver:"
msgstr ""
-#: ../iw/network.py:11 ../text.py:489
+#: ../iw/network.py:11 ../text.py:550
msgid "Network Configuration"
msgstr ""
-#: ../text.py:505
+#: ../text.py:566
msgid "Invalid information"
msgstr ""
-#: ../text.py:506
+#: ../text.py:567
msgid "You must enter valid IP information to continue"
msgstr ""
-#: ../text.py:534
+#: ../text.py:595
msgid "Hostname Configuration"
msgstr ""
-#: ../text.py:535
+#: ../text.py:596
msgid ""
"The hostname is the name of your computer. If your computer is attached to "
"a network, this may be assigned by your network administrator."
msgstr ""
-#: ../text.py:538
+#: ../text.py:599
msgid "Hostname"
msgstr ""
-#: ../text.py:571
+#: ../text.py:632
msgid ""
"What partitions would you like to format? We strongly suggest formatting all "
"of the system partitions, including /, /usr, and /var. There is no need to "
@@ -358,50 +378,50 @@ msgid ""
"previous install."
msgstr ""
-#: ../text.py:591
+#: ../text.py:652
msgid "Check for bad blocks during format"
msgstr ""
-#: ../text.py:595
+#: ../text.py:656
msgid "Choose Partitions to Format"
msgstr ""
-#: ../iw/package.py:441 ../text.py:631
+#: ../iw/package.py:441 ../text.py:692
msgid "Select individual packages"
msgstr ""
-#: ../iw/package.py:377 ../text.py:635 ../text.py:700
+#: ../iw/package.py:377 ../text.py:696 ../text.py:761
msgid "Package Group Selection"
msgstr ""
-#: ../text.py:727
+#: ../text.py:788 ../text.py:1290
msgid "Package Dependencies"
msgstr ""
-#: ../text.py:728
+#: ../text.py:789
msgid ""
"Some of the packages you have selected to install require packages you have "
"not selected. If you just select Ok all of those required packages will be "
"installed."
msgstr ""
-#: ../iw/dependencies.py:27 ../iw/progress.py:105 ../text.py:734
+#: ../iw/dependencies.py:27 ../iw/progress.py:105 ../text.py:795
msgid "Package"
msgstr ""
-#: ../iw/dependencies.py:27 ../text.py:734
+#: ../iw/dependencies.py:27 ../text.py:795
msgid "Requirement"
msgstr ""
-#: ../iw/dependencies.py:34 ../text.py:746
+#: ../iw/dependencies.py:34 ../text.py:807
msgid "Install packages to satisfy dependencies"
msgstr ""
-#: ../text.py:764 ../text.py:863 ../text.py:1103
+#: ../text.py:825 ../text.py:1060 ../text.py:1301
msgid "Bootdisk"
msgstr ""
-#: ../text.py:765
+#: ../text.py:826
msgid ""
"A custom bootdisk provides a way of booting into your Linux system without "
"depending on the normal bootloader. This is useful if you don't want to "
@@ -413,29 +433,56 @@ msgid ""
"Would you like to create a bootdisk for your system?"
msgstr ""
-#: ../text.py:815 ../text.py:1100
+#: ../text.py:868 ../text.py:987 ../text.py:1297 ../text.py:1298
msgid "LILO Configuration"
msgstr ""
-#: ../text.py:816
+#: ../text.py:869
msgid "Where do you want to install the bootloader?"
msgstr ""
-#: ../text.py:831
+#: ../text.py:885 ../text.py:967
+msgid "Boot label"
+msgstr ""
+
+#: ../text.py:889 ../text.py:909
+msgid "Clear"
+msgstr ""
+
+#: ../text.py:897
+msgid "Edit Boot Label"
+msgstr ""
+
+#: ../text.py:967
+msgid "Partition type"
+msgstr ""
+
+#: ../text.py:967
+msgid "Default"
+msgstr ""
+
+#: ../text.py:982
+msgid ""
+"The boot manager Red Hat uses can boot other operating systems as well. You "
+"need to tell me what partitions you would like to be able to boot and what "
+"label you want to use for each of them."
+msgstr ""
+
+#: ../text.py:1028
msgid "Installation to begin"
msgstr ""
-#: ../text.py:832
+#: ../text.py:1029
msgid ""
"A complete log of your installation will be in /tmp/install.log after "
"rebooting your system. You may want to keep this file for later reference."
msgstr ""
-#: ../text.py:847
+#: ../text.py:1044
msgid "Complete"
msgstr ""
-#: ../iw/congrats.py:17 ../text.py:848
+#: ../iw/congrats.py:17 ../text.py:1045
msgid ""
"Congratulations, installation is complete.\n"
"\n"
@@ -447,137 +494,141 @@ msgid ""
"chapter of the Official Red Hat Linux User's Guide."
msgstr ""
-#: ../iw/bootdisk.py:40 ../text.py:864
+#: ../iw/bootdisk.py:40 ../text.py:1061
msgid ""
"Insert a blank floppy in the first floppy drive. All data on this disk will "
"be erased during creation of the boot disk."
msgstr ""
-#: ../text.py:867 ../text.py:868 ../text.py:879 ../text.py:880
+#: ../text.py:1064 ../text.py:1065 ../text.py:1076 ../text.py:1077
msgid "Skip"
msgstr ""
-#: ../iw/bootdisk.py:44 ../text.py:876
+#: ../iw/bootdisk.py:44 ../text.py:1073
msgid ""
"An error occured while making the boot disk. Please make sure that there is "
"a formatted floppy in the first floppy drive."
msgstr ""
-#: ../text.py:938
+#: ../text.py:1135
msgid "Package Installation"
msgstr ""
-#: ../text.py:940
+#: ../text.py:1137
msgid "Name : "
msgstr ""
-#: ../text.py:941
+#: ../text.py:1138
msgid "Size : "
msgstr ""
-#: ../text.py:942
+#: ../text.py:1139
msgid "Summary: "
msgstr ""
-#: ../text.py:968
+#: ../text.py:1165
msgid " Packages"
msgstr ""
-#: ../text.py:969
+#: ../text.py:1166
msgid " Bytes"
msgstr ""
-#: ../text.py:970
+#: ../text.py:1167
msgid " Time"
msgstr ""
-#: ../text.py:972
+#: ../text.py:1169
msgid "Total :"
msgstr ""
-#: ../text.py:979
+#: ../text.py:1176
msgid "Completed: "
msgstr ""
-#: ../text.py:989
+#: ../text.py:1186
msgid "Remaining: "
msgstr ""
-#: ../text.py:1053 ../text.py:1054
+#: ../text.py:1250 ../text.py:1251
msgid "Debug"
msgstr ""
-#: ../text.py:1066
+#: ../text.py:1263
msgid "Red Hat Linux (C) 1999 Red Hat, Inc."
msgstr ""
-#: ../text.py:1068
+#: ../text.py:1265
msgid ""
" <Tab>/<Alt-Tab> between elements | <Space> selects | <F12> next "
"screen"
msgstr ""
-#: ../text.py:1082
+#: ../text.py:1279
msgid "Welcome"
msgstr ""
-#: ../text.py:1087
+#: ../text.py:1284
msgid "Network Setup"
msgstr ""
-#: ../text.py:1088
+#: ../text.py:1285
msgid "Hostname Setup"
msgstr ""
-#: ../text.py:1089
+#: ../text.py:1286
msgid "Partition"
msgstr ""
-#: ../text.py:1090
+#: ../text.py:1287
msgid "Filesystem Formatting"
msgstr ""
-#: ../text.py:1094 ../text.py:1095
+#: ../text.py:1288
+msgid "Package Groups"
+msgstr ""
+
+#: ../text.py:1289 ../text.py:1308
+msgid "Individual Packages"
+msgstr ""
+
+#: ../text.py:1291 ../text.py:1292
msgid "Mouse Configuration"
msgstr ""
-#: ../text.py:1096
+#: ../text.py:1293
msgid "Authentication"
msgstr ""
-#: ../text.py:1099
+#: ../text.py:1296
msgid "Boot Disk"
msgstr ""
-#: ../text.py:1101
+#: ../text.py:1299
msgid "Installation Begins"
msgstr ""
-#: ../text.py:1102
+#: ../text.py:1300
msgid "Install System"
msgstr ""
-#: ../text.py:1104
+#: ../text.py:1302
msgid "Installation Complete"
msgstr ""
-#: ../text.py:1108
+#: ../text.py:1306
msgid "Examine System"
msgstr ""
-#: ../text.py:1109
+#: ../text.py:1307
msgid "Customize Upgrade"
msgstr ""
-#: ../text.py:1110
-msgid "Individual Packages"
-msgstr ""
-
-#: ../text.py:1111
+#: ../text.py:1309
msgid "Upgrade System"
msgstr ""
-#: ../text.py:1112
+#: ../text.py:1310
msgid "Upgrade Complete"
msgstr ""
diff --git a/text.py b/text.py
index 14460675e..b5716fcb9 100644
--- a/text.py
+++ b/text.py
@@ -13,7 +13,7 @@ INSTALL_OK = 0
INSTALL_BACK = -1
INSTALL_NOOP = -2
-cat = gettext.Catalog ("anaconda-text", "/usr/share/locale")
+cat = gettext.Catalog ("anaconda", "/usr/share/locale")
_ = cat.gettext
class LanguageWindow:
@@ -255,6 +255,132 @@ class RootPasswordWindow:
todo.rootpassword.set (entry1.value ())
return INSTALL_OK
+class UsersWindow:
+ def editWindow (self, user, edit = 0):
+ userid = Entry (8, user["id"])
+ currentid = user["id"]
+ fullname = Entry (30, user["name"])
+ pass1 = Entry (10, user["password"], hidden = 1)
+ pass2 = Entry (10, user["password"], hidden = 1)
+
+ while 1:
+ if edit:
+ title = _("Edit User")
+ pass1.setFlags (FLAG_DISABLED, FLAGS_SET)
+ pass2.setFlags (FLAG_DISABLED, FLAGS_SET)
+ else:
+ title = _("Add User")
+
+ (rc, ent) = EntryWindow (self.screen, title, "",
+ [ (_("User ID"), userid),
+ (_("Full Name"), fullname),
+ (_("Password"), pass1),
+ (_("Password (confirm)"), pass2) ],
+ buttons = [ _("OK"), _("Cancel") ])
+
+ if rc == string.lower (_("Cancel")):
+ return
+
+ if not edit:
+ if len (pass1.value ()) < 6:
+ ButtonChoiceWindow(self.screen, _("Password Length"),
+ _("The password must be at least 6 characters "
+ "long."),
+ buttons = [ _("OK") ], width = 50)
+ pass1.set ("")
+ pass2.set ("")
+ continue
+ elif pass1.value () != pass2.value ():
+ ButtonChoiceWindow(self.screen, _("Password Mismatch"),
+ _("The passwords you entered were different. Please "
+ "try again."),
+ buttons = [ _("OK") ], width = 50)
+ pass1.set ("")
+ pass2.set ("")
+ continue
+
+ if self.users.has_key (userid.value ()) and userid.value () != currentid:
+ ButtonChoiceWindow(self.screen, _("User Exists"),
+ _("This user id already exists. Choose another."),
+ buttons = [ _("OK") ], width = 50)
+ continue
+
+ # XXX FIXME - more data validity checks
+
+ user["id"] = userid.value ()
+ user["name"] = fullname.value ()
+ user["password"] = pass1.value ()
+ break
+
+ def __call__ (self, screen, todo):
+ self.users = {}
+ self.screen = screen
+
+ g = GridForm (screen, _("User Account Setup"), 1, 3)
+
+ listformat = "%-15s %-40s"
+ userformat = "%(id)-15s %(name)-40s"
+
+ header = listformat % (_("User name"), _("Full Name"))
+ label = Label (header)
+ g.add (label, 0, 0, anchorLeft = 1)
+ listbox = Listbox (5, scroll = 1, returnExit = 1, width = 60)
+ g.add (listbox, 0, 1, (0, 0, 0, 1))
+
+ for user in self.users.values ():
+ listbox.append (userformat % user, user["id"])
+
+ bb = ButtonBar (screen, ((_("Add"), "add"), (_("Delete"), "delete"),
+ (_("Edit"), "edit"), (_("OK"), "ok"), (_("Back"), "back")))
+
+ g.add (bb, 0, 2, growx = 1)
+
+ while 1:
+ result = g.run ()
+
+ rc = bb.buttonPressed (result)
+
+ if rc == string.lower (_("Add")):
+ user = { "id" : "", "name" : "", "password" : "" }
+ self.editWindow (user)
+ listbox.append (userformat % user, user["id"])
+ listbox.setcurrent (user["id"])
+ self.users[user["id"]] = user
+ elif rc == string.lower (_("Delete")):
+ current = listbox.current ()
+ listbox.delete (current)
+ del self.users [current]
+ elif rc == string.lower (_("Edit")) or result == listbox:
+ current = listbox.current()
+ user = self.users[current]
+ self.editWindow (user, 1)
+ # if the user id changed, we need to delete the old key
+ # and insert this new one.
+ if user["id"] != current:
+ del self.users [current]
+ listbox.insert (userformat % user, user["id"], current)
+ listbox.delete (current)
+ # and if the user id didn't change, just replace the old
+ # listbox entry.
+ else:
+ listbox.replace (userformat % user, user["id"])
+ self.users [user["id"]] = user
+ listbox.setCurrent(user["id"])
+ elif rc == string.lower (_("OK")):
+ dir = INSTALL_OK
+ break
+ elif rc == string.lower (_("Back")):
+ dir = INSTALL_BACK
+ break
+ elif rc == "F12":
+ dir = INSTALL_OK
+ break
+ else:
+ raise NeverGetHereError, "I shouldn't be here..."
+
+ screen.popWindow ()
+ return dir
+
class WelcomeWindow:
def __call__(self, screen):
rc = ButtonChoiceWindow(screen, _("Red Hat Linux"),
@@ -719,6 +845,7 @@ class BootDiskWindow:
return INSTALL_BACK
return INSTALL_OK
+
class LiloWindow:
def __call__(self, screen, todo):
if '/' not in todo.mounts.keys (): return INSTALL_NOOP
@@ -753,7 +880,6 @@ class LiloWindow:
return INSTALL_OK
class LiloImagesWindow:
-
def editItem(self, screen, partition, itemLabel):
devLabel = Label(_("Device") + ":")
bootLabel = Label(_("Boot label") + ":")
@@ -1137,8 +1263,8 @@ class InstallInterface:
self.welcomeText = _("Red Hat Linux (C) 1999 Red Hat, Inc.")
self.screen.drawRootText (0, 0, self.welcomeText)
self.screen.pushHelpLine (_(" <Tab>/<Alt-Tab> between elements | <Space> selects | <F12> next screen"))
-# self.screen.suspendCallback(killSelf, self.screen)
- self.screen.suspendCallback(debugSelf, self.screen)
+ self.screen.suspendCallback(killSelf, self.screen)
+# self.screen.suspendCallback(debugSelf, self.screen)
self.individual = Flag(0)
self.step = 0
self.dir = 1
@@ -1156,16 +1282,17 @@ class InstallInterface:
self.installSteps = [
[_("Network Setup"), NetworkWindow, (self.screen, todo)],
-# [_("Hostname Setup"), HostnameWindow, (self.screen, todo)],
+ [_("Hostname Setup"), HostnameWindow, (self.screen, todo)],
[_("Partition"), PartitionWindow, (self.screen, todo)],
[_("Filesystem Formatting"), FormatWindow, (self.screen, todo)],
- #[_("Package Groups"), PackageGroupWindow, (self.screen, todo, self.individual)],
- #[_("Individual Packages"), IndividualPackageWindow, (self.screen, todo, self.individual)],
- #[_("Package Dependencies"), PackageDepWindow, (self.screen, todo)],
+ [_("Package Groups"), PackageGroupWindow, (self.screen, todo, self.individual)],
+ [_("Individual Packages"), IndividualPackageWindow, (self.screen, todo, self.individual)],
+ [_("Package Dependencies"), PackageDepWindow, (self.screen, todo)],
[_("Mouse Configuration"), MouseWindow, (self.screen, todo)],
[_("Mouse Configuration"), MouseDeviceWindow, (self.screen, todo)],
[_("Authentication"), AuthConfigWindow, (self.screen, todo)],
[_("Root Password"), RootPasswordWindow, (self.screen, todo)],
+ [_("User Account Setup"), UsersWindow, (self.screen, todo)],
[_("Boot Disk"), BootDiskWindow, (self.screen, todo)],
[_("LILO Configuration"), LiloWindow, (self.screen, todo)],
[_("LILO Configuration"), LiloImagesWindow, (self.screen, todo)],
diff --git a/todo.py b/todo.py
index 986e1430e..f65431dc6 100644
--- a/todo.py
+++ b/todo.py
@@ -369,7 +369,7 @@ class ToDo:
os.remove('/tmp/' + device)
w.pop()
- def addMount(self, device, location, fsystem, reformat = 0):
+ def addMount(self, device, location, fsystem, reformat = 1):
if fsystem == "swap":
location = "swap"
reformat = 1