|
From: <cod...@go...> - 2008-12-03 14:43:25
|
Author: M0...@gm...
Date: Wed Dec 3 06:42:11 2008
New Revision: 346
Modified:
branches/iVL/.lang/FMain.pot
branches/iVL/.project
branches/iVL/FMain.class
branches/iVL/FrmImportAccts.class
branches/iVL/FrmUserAdd.class
branches/iVL/MdlUsrAdd.module
branches/iVL/installer.gambas
Log:
refined user account inmport
Modified: branches/iVL/.lang/FMain.pot
==============================================================================
--- branches/iVL/.lang/FMain.pot (original)
+++ branches/iVL/.lang/FMain.pot Wed Dec 3 06:42:11 2008
@@ -86,23 +86,27 @@
msgid "You must select a \"/\" partition. This is the target where the
system will install to"
msgstr ""
-#: FMain.class:461
+#: FMain.class:439
+msgid "Skipping boot loader setup"
+msgstr ""
+
+#: FMain.class:465
msgid "Skipping lilo setup"
msgstr ""
-#: FMain.class:799
+#: FMain.class:803
msgid "Back"
msgstr ""
-#: FMain.class:810
+#: FMain.class:814
msgid "Exit Installation"
msgstr ""
-#: FMain.class:821
+#: FMain.class:825
msgid "Next"
msgstr ""
-#: FMain.class:835
+#: FMain.class:839
msgid "Button1"
msgstr ""
Modified: branches/iVL/.project
==============================================================================
--- branches/iVL/.project (original)
+++ branches/iVL/.project Wed Dec 3 06:42:11 2008
@@ -2,7 +2,7 @@
# Compiled with Gambas 2.9.0
Title=VectorLinux Installer
Startup=MdlCore
-Version=0.1.21
+Version=0.1.23
Library=gb.gtk
Library=gb.form
Library=gb.debug
Modified: branches/iVL/FMain.class
==============================================================================
--- branches/iVL/FMain.class (original)
+++ branches/iVL/FMain.class Wed Dec 3 06:42:11 2008
@@ -423,6 +423,7 @@
frmNext = FrmLiloSetup
CASE "FrmLiloSetup"
+ MdlCore.WARN_STATUS("")
IF FrmLiloSetup.cbYNLilo.Value = FALSE THEN
IF FrmLiloSetup.cbBootDefault.Text = "" THEN
Message.Warning(("Please select a default operating system
to boot before proceeding"))
@@ -431,9 +432,12 @@
RETURN
END IF
'Run the setup
- MdlLilo.TRIGGER_LILO_SETUP()
+ IF MdlLilo.TRIGGER_LILO_SETUP() > 0 THEN
+ RETURN
+ END IF
ELSE
- FrmLiloSetup.tlBanner.Text = "<b>" & ("Skipping boot loaded setup")
& "</b>"
+ FrmLiloSetup.tlBanner.Text = "<b>" & ("Skipping boot loader setup")
& "</b>"
+ MdlCore.WARN_STATUS("Skipping LILO Setup")
END IF
'SHELL "mount -o bind /mnt/target/lib /lib && depmod -aq &&
/etc/rc.d/rc.udev restart"
frmNext = FrmZoneSet
Modified: branches/iVL/FrmImportAccts.class
==============================================================================
--- branches/iVL/FrmImportAccts.class (original)
+++ branches/iVL/FrmImportAccts.class Wed Dec 3 06:42:11 2008
@@ -84,9 +84,14 @@
ME.cbAccntList.Remove(ME.cbAccntList.Find(Trim(ME.cbAccntList.Text)))
ME.cbAccntList.Sorted = TRUE
'RETURN
- ME.CREATE_IMPORTED_ACCOUNT
- MdlUsrAdd.DISPLAY_USER_GROUP_OPTIONS(ME.frmUsrGrps)
- Message.Info(("User account for") & Space(1) &
Trim(ME.cbAccntList.Text) & Space(1) & ("successfully imported"))
+ IF ME.CREATE_IMPORTED_ACCOUNT(Trim(ME.cbAccntList.Text)) > 0 THEN
+ Message.Error(("User Unable to restore user account."))
+ RETURN
+ ELSE
+ MdlUsrAdd.DISPLAY_USER_GROUP_OPTIONS(ME.frmUsrGrps)
+ MdlUsrAdd.LIST_NEW_USER_ACCOUNT()
+ Message.Info(("User account for") & Space(1) &
Trim(ME.cbAccntList.Text) & Space(1) & ("successfully imported"))
+ END IF
'ME.Close
'ME.pbLogin.Picture.Image.Clear
@@ -95,7 +100,7 @@
END
-PUBLIC SUB CREATE_IMPORTED_ACCOUNT()
+PUBLIC FUNCTION CREATE_IMPORTED_ACCOUNT(sname AS String) AS Integer
DIM sGroups AS String
DIM cb AS CheckBox
DIM sSettings AS String[]
@@ -103,7 +108,9 @@
DIM sPicdir AS String = ClsGlobal.sTargetMnt
&/ "usr/share/apps/kdm/pics/users/"
DIM tl AS TextLabel
DIM iTlY AS Integer
+ DIM hproc AS Process
+
' Prepare group list
FOR EACH cb IN MdlUsrAdd.objGrps
IF cb.Value = TRUE THEN
@@ -119,29 +126,32 @@
IF Len(sSettingsList) > 0 THEN
sSettings = Split(sSettingsList, ",")
FOR i = 0 TO sSettings.Count - 1
- EXEC ["rm", "-rf", ClsGlobal.sTargetMnt &/ "home" &/
Trim(ME.cbAccntList.Text) &/ Trim(sSettings[i])] WAIT
- EXEC ["cp", "-r", ClsGlobal.sTargetMnt &/ "etc" &/ "skel" &
Trim(sSettings[i]), ClsGlobal.sTargetMnt &/ "home" &/
Trim(ME.cbAccntList.Text) &/ Trim(sSettings[i])] WAIT
- EXEC ["chown", Trim(ME.cbAccntList.Text) & ":users",
ClsGlobal.sTargetMnt &/ "home" &/ Trim(ME.cbAccntList.Text) &/
Trim(sSettings[i])] WAIT
+ hproc = EXEC ["rm", "-rf", ClsGlobal.sTargetMnt &/ "home" &/
sname &/ Trim(sSettings[i])] WAIT
+ hproc = EXEC ["cp", "-r", ClsGlobal.sTargetMnt &/ "etc"
&/ "skel" &/ Trim(sSettings[i]), ClsGlobal.sTargetMnt &/ "home" &/ sname &/
Trim(sSettings[i])] WAIT
+ hproc = EXEC ["chown", Trim(ME.cbAccntList.Text) & ":users",
ClsGlobal.sTargetMnt &/ "home" &/ sname &/ Trim(sSettings[i])] WAIT
IF ERROR THEN Message(Error.Where & gb.NewLine & Error.Text)
NEXT
END IF
- SHELL "chroot /mnt/target /usr/sbin/groupdel " &
Trim(ME.cbAccntList.Text) WAIT
- SHELL "chroot /mnt/target /usr/sbin/groupadd " & "-g" & Space(1) &
FrmUserAdd.iUID & Space(1) & Trim(ME.cbAccntList.Text) WAIT
- SHELL "chroot /mnt/target /usr/sbin/useradd -g " &
Trim(ME.cbAccntList.Text) & " -p " & ME.tbPass1.Text & " -u " &
FrmUserAdd.iUID & " -G " & "\'users," & sGroups & "\' -s /bin/bash "
& 'ME.tbUsername.Text WAIT
- Trim(ME.cbAccntList.Text) & " -d /home/" & Trim(ME.cbAccntList.Text) WAIT
- SHELL "chroot /mnt/target /sbin/passwdx " & Trim(ME.cbAccntList.Text) &
Space(1) & ME.tbPass1.Text WAIT
+ hproc = SHELL "chroot /mnt/target /usr/sbin/groupdel " & sname WAIT
+ IF hproc.Value > 0 THEN RETURN hproc.Value
+ hproc = SHELL "chroot /mnt/target /usr/sbin/groupadd " & "-g" & Space(1)
& FrmUserAdd.iUID & Space(1) &/ sname WAIT
+ IF hproc.Value > 0 THEN RETURN hproc.Value
+ hproc = SHELL "chroot /mnt/target /usr/sbin/useradd -g " & sname & "
-p " & ME.tbPass1.Text & " -u " & FrmUserAdd.iUID & " -G " & "\'users," &
sGroups & "\' -s /bin/bash " & sname & " -d /home/" & sname WAIT
+ IF hproc.Value > 0 THEN RETURN hproc.Value
+ hproc = SHELL "chroot /mnt/target /sbin/passwdx " & sname & Space(1) &
ME.tbPass1.Text WAIT
+ IF hproc.Value > 0 THEN RETURN hproc.Value
IF ERROR THEN Message.Error(Error.Where & gb.NewLine & Error.Text)
' Add the face icon
IF Len(ME.tbPicPath.Text) > 0 THEN
- SHELL "cd " & sPicdir & " && ln -s " &
Replace(ME.tbPicPath.Text, ClsGlobal.sTargetMnt, "") & Space(1) &
Trim(ME.cbAccntList.Text) & ".face.icon" WAIT 'link for KDM
+ SHELL "cd " & sPicdir & " && ln -s " &
Replace(ME.tbPicPath.Text, ClsGlobal.sTargetMnt, "") & Space(1) & sname
& ".face.icon" WAIT 'link for KDM
' Tweak for the GDM face icon to work
- TRY COPY Trim(tbPicPath.Text) TO clsglobal.sTargetMnt &/ "home"
&/ Trim(ME.cbAccntList.Text) &/ ".face"
- SHELL "chmod 644 " & ClsGlobal.sTargetMnt &/ "home/" &
Trim(ME.cbAccntList.Text) &/ ".face" WAIT
- SHELL "chroot " & ClsGlobal.sTargetMnt & " chown " &
Trim(ME.cbAccntList.Text) & Space(1) &/ "home" &/ Trim(ME.cbAccntList.Text)
&/ ".face" WAIT
- SHELL "chroot " & ClsGlobal.sTargetMnt & " chgrp " &
Trim(ME.cbAccntList.Text) & Space(1) &/ "home/" & Trim(ME.cbAccntList.Text)
&/ ".face" WAIT
+ TRY COPY Trim(tbPicPath.Text) TO clsglobal.sTargetMnt &/ "home"
&/ sname &/ ".face"
+ SHELL "chmod 644 " & ClsGlobal.sTargetMnt &/ "home/" & sname
&/ ".face" WAIT
+ SHELL "chroot " & ClsGlobal.sTargetMnt & " chown " & sname &
Space(1) &/ "home" &/ sname &/ ".face" WAIT
+ SHELL "chroot " & ClsGlobal.sTargetMnt & " chgrp " & sname &
Space(1) &/ "home/" & sname &/ ".face" WAIT
IF ERROR THEN Message.Error(Error.Where & gb.NewLine &
Error.Text)
END IF
Modified: branches/iVL/FrmUserAdd.class
==============================================================================
--- branches/iVL/FrmUserAdd.class (original)
+++ branches/iVL/FrmUserAdd.class Wed Dec 3 06:42:11 2008
@@ -28,7 +28,7 @@
DIM sDump AS String
'EXEC ["ls", clsglobal.sTargetMnt &/ "home", "|", "grep", "-v", "ftp"]
TO sDump
- SHELL "ls " & clsglobal.sTargetMnt &/ "home | grep -v ftp" TO sDump
+ SHELL "ls " & clsglobal.sTargetMnt &/ "home | grep -v ftp | grep -v
lost+found" TO sDump
sDump = Trim(sDump)
IF Len(sDump) > 0 THEN FrmUserAdd.btImportAcct.Enabled = TRUE
@@ -198,48 +198,48 @@
MdlCore.warn_status_off()
END
- PUBLIC SUB LIST_NEW_USER_ACCOUNT()
- 'needs to verify with /etc/passwd to check for user account
- DIM sFile AS String[] = Split(DConv(File.Load(clsglobal.sTargetMnt
&/ "etc" &/ "passwd")))
- DIM arrline AS String[]
- DIM i, ii, iUID AS Integer
- DIM sLine, sSec, sUsrLogin, sUsrRlName, sUsrHome AS String
- DIM vuid AS Variant
- DIM tl AS TextLabel
- DIM tly AS Integer
-
- FrmUserAdd.LstUsers.Clear
- tly = 4
- FOR i = 0 TO sFile.count - 1
- sLine = sFile[i]
- ' now split each line
- arrline = Split(sLine, ":")
- FOR ii = 0 TO arrline.count - 1
- sSec = Trim(arrline[ii])
- vuid = arrline[2]
- iUID = CInt(vuid)
- sUsrLogin = arrline[0]
- sUsrRlName = arrline[4]
- sUsrHome = arrline[5]
- NEXT
- IF iUID >= 500 THEN
- tl = NEW TextLabel(LstUsers) AS "UserList"
- WITH tl
- .Height = 21
- .Text = sUsrLogin
- .Width = MdlObjSizer.get_object_width(.Text)
- .ToolTip = sUsrRlName & "\n" & "<b>" & "USER ID: "
& "</b > " & iUid &
- "<b>" & "HOME DIRECTORY: " & "</b>" & sUsrHome
- .Move(0, tly)
- END WITH
- tly = tly + tl.Height + 2
- END IF
- NEXT
-
-
-
-
-END
+' PUBLIC SUB LIST_NEW_USER_ACCOUNT()
+' 'needs to verify with /etc/passwd to check for user account
+' DIM sFile AS String[] = Split(DConv(File.Load(clsglobal.sTargetMnt
&/ "etc" &/ "passwd")))
+' DIM arrline AS String[]
+' DIM i, ii, iUID AS Integer
+' DIM sLine, sSec, sUsrLogin, sUsrRlName, sUsrHome AS String
+' DIM vuid AS Variant
+' DIM tl AS TextLabel
+' DIM tly AS Integer
+'
+' FrmUserAdd.LstUsers.Clear
+' tly = 4
+' FOR i = 0 TO sFile.count - 1
+' sLine = sFile[i]
+' ' now split each line
+' arrline = Split(sLine, ":")
+' FOR ii = 0 TO arrline.count - 1
+' sSec = Trim(arrline[ii])
+' vuid = arrline[2]
+' iUID = CInt(vuid)
+' sUsrLogin = arrline[0]
+' sUsrRlName = arrline[4]
+' sUsrHome = arrline[5]
+' NEXT
+' IF iUID >= 500 THEN
+' tl = NEW TextLabel(LstUsers) AS "UserList"
+' WITH tl
+' .Height = 21
+' .Text = sUsrLogin
+' .Width = MdlObjSizer.get_object_width(.Text)
+' .ToolTip = sUsrRlName & "\n" & "<b>" & "USER ID: "
& "</b > " & iUid &
+' "<b>" & "HOME DIRECTORY: " & "</b>" & sUsrHome
+' .Move(0, tly)
+' END WITH
+' tly = tly + tl.Height + 2
+' END IF
+' NEXT
+'
+'
+'
+'
+' END
Modified: branches/iVL/MdlUsrAdd.module
==============================================================================
--- branches/iVL/MdlUsrAdd.module (original)
+++ branches/iVL/MdlUsrAdd.module Wed Dec 3 06:42:11 2008
@@ -19,6 +19,51 @@
PUBLIC objGrps AS Object[]
+
+PUBLIC SUB LIST_NEW_USER_ACCOUNT()
+ 'needs to verify with /etc/passwd to check for user account
+ DIM sFile AS String[] = Split(DConv(File.Load(clsglobal.sTargetMnt
&/ "etc" &/ "passwd")))
+ DIM arrline AS String[]
+ DIM i, ii, iUID AS Integer
+ DIM sLine, sSec, sUsrLogin, sUsrRlName, sUsrHome AS String
+ DIM vuid AS Variant
+ DIM tl AS TextLabel
+ DIM tly AS Integer
+
+ FrmUserAdd.LstUsers.Clear
+ tly = 4
+ FOR i = 0 TO sFile.count - 1
+ sLine = sFile[i]
+ ' now split each line
+ arrline = Split(sLine, ":")
+ FOR ii = 0 TO arrline.count - 1
+ sSec = Trim(arrline[ii])
+ vuid = arrline[2]
+ iUID = CInt(vuid)
+ sUsrLogin = arrline[0]
+ sUsrRlName = arrline[4]
+ sUsrHome = arrline[5]
+ NEXT
+ IF iUID >= 500 THEN
+ tl = NEW TextLabel(FrmUserAdd.LstUsers) AS "UserList"
+ WITH tl
+ .Height = 21
+ .Text = sUsrLogin
+ .Width = MdlObjSizer.get_object_width(.Text)
+ .ToolTip = sUsrRlName & "\n" & "<b>" & "USER ID: "
& "</b > " & iUid &
+ "<b>" & "HOME DIRECTORY: " & "</b>" & sUsrHome
+ .Move(0, tly)
+ END WITH
+ tly = tly + tl.Height + 2
+ END IF
+ NEXT
+
+END
+
+
+
+
+
PUBLIC FUNCTION DISPLAY_USER_GROUP_OPTIONS(frmParent AS Frame)
DIM sGrpList AS String
= "cdrom,floppy,lp,scanner,audio,video,games,adm,sys,wheel,plugdev,disk"
DIM sGrpArr AS String[]
Modified: branches/iVL/installer.gambas
==============================================================================
Binary files. No diff available.
|