From 977fc39986e059a61d578618fa96ffec48df9cbf Mon Sep 17 00:00:00 2001 From: Andrew Gaffney Date: Sat, 17 Nov 2007 21:00:22 +0000 Subject: rearrange a bit of code for gtkfe networkless-only transition git-svn-id: svn+ssh://svn.gentoo.org/var/svnroot/gli/trunk@1868 f8877401-5920-0410-a79b-8e2d7e04ca0d --- ChangeLog | 6 ++++++ src/fe/gtk/ExtraPackages.py | 19 ++++++------------- src/fe/gtk/LocalMounts.py | 17 ++++++++++++++++- src/fe/gtk/Networking.py | 11 +++++++++-- src/fe/gtk/OtherSettings.py | 2 +- src/fe/gtk/RootPass.py | 9 ++++++++- src/fe/gtk/Timezone.py | 6 ++++-- src/fe/gtk/gtkfe.py | 30 ++++++++++++++++++++---------- 8 files changed, 70 insertions(+), 30 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5d57bf7..bdbe075 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,6 +2,12 @@ # Copyright 2005-2007 Gentoo Foundation; Distributed under the GPL v2 # $Header: /var/cvsroot/gentoo/src/installer/ChangeLog,v 1.686 2006/09/15 16:37:11 agaffney Exp $ + 17 Nov 2007; Andrew Gaffney + src/fe/gtk/ExtraPackages.py, src/fe/gtk/LocalMounts.py, + src/fe/gtk/Networking.py, src/fe/gtk/OtherSettings.py, + src/fe/gtk/RootPass.py, src/fe/gtk/Timezone.py, src/fe/gtk/gtkfe.py: + rearrange a bit of code for gtkfe networkless-only transition + 17 Nov 2007; Andrew Gaffney src/GLIUtility: add get_kernpkgs_from_cd() function diff --git a/src/fe/gtk/ExtraPackages.py b/src/fe/gtk/ExtraPackages.py index 599acfd..9dca2ff 100644 --- a/src/fe/gtk/ExtraPackages.py +++ b/src/fe/gtk/ExtraPackages.py @@ -20,14 +20,9 @@ class Panel(GLIScreen): _helptext = """ Extra Packages -If you're doing a networkless install, all of the packages listed on the right \ -are available for the installer to install directly from the LiveCD (including \ -dependencies) without access to the internet. - -If you're not doing a networkless install, all of your packages will be \ -compiled from source. The list on the right is by no means comprehensive. If \ -there are other packages you wish to install, enter them below separated by \ -spaces. +All of the packages listed on the right are available for the installer to \ +install directly from the LiveCD (including dependencies) without access to \ +the internet. If you choose a graphical desktop such as gnome, kde, or fluxbox, be sure to \ also select xorg-x11 from the list. Otherwise, you will not have a fully \ @@ -63,6 +58,9 @@ caution. These trouble packages can be installed manually after you reboot. self.categories = self.controller.install_profile.get_install_package_list() self.grp_packages = GLIUtility.get_grp_pkgs_from_cd() + + # Add kernel packages to the list + self.categories['Kernel Modules'] = (_(u"External kernel modules for additional hardware support"), GLIUtility.get_kernpkgs_from_cd()) # first load the category for category in self.categories: @@ -82,11 +80,6 @@ caution. These trouble packages can be installed manually after you reboot. else: displayname = package - # if its a grp install, append (GRP) to the name - if self.controller.install_profile.get_grp_install(): - if package in self.grp_packages: - displayname = displayname + " (GRP)" - pack = self.Package(self, package, packages[package], displayname) self.package_objects[package] = pack hbox = pack.Generate_GTK() diff --git a/src/fe/gtk/LocalMounts.py b/src/fe/gtk/LocalMounts.py index cca5023..4c5b515 100644 --- a/src/fe/gtk/LocalMounts.py +++ b/src/fe/gtk/LocalMounts.py @@ -229,7 +229,22 @@ can remove it from the list by clicking the 'Delete' button. msgdlg.destroy() return self.controller.install_profile.set_mounts(self.localmounts) - self.controller.load_screen("NetworkMounts") + # Set networkless defaults for stage + self.controller.install_profile.set_install_stage(None, 3, None) + self.controller.install_profile.set_dynamic_stage3(None, True, None) + self.controller.install_profile.set_grp_install(None, True, None) + # Set networkless defaults for portage tree + self.controller.install_profile.set_portage_tree_snapshot_uri(None, GLIUtility.get_cd_snapshot_uri(), None) + self.controller.install_profile.set_portage_tree_sync_type(None, "snapshot", None) + + progress = ProgressDialog(self.controller, ("mount_local_partitions", "unpack_stage_tarball", "prepare_chroot", "install_portage_tree", "configure_make_conf"), self.progress_callback) + progress.run() + + def progress_callback(self, result, data=None): + if result == PROGRESS_DONE: + self.controller.load_screen("RootPass") + else: + GLIScreen.progress_callback(self, result, data) def previous(self): self.controller.install_profile.set_mounts(self.localmounts) diff --git a/src/fe/gtk/Networking.py b/src/fe/gtk/Networking.py index eff3826..a4bb5fa 100644 --- a/src/fe/gtk/Networking.py +++ b/src/fe/gtk/Networking.py @@ -823,12 +823,19 @@ Don't forget to set a hostname and domain name in the \ result = msgdialog.run() msgdialog.destroy() return - progress = ProgressDialog(self.controller, ("setup_network_post", ), self.progress_callback) + # Set networkless defaults for system logger + self.controller.install_profile.set_logging_daemon_pkg(None, "syslog-ng", None) + # Set networkless defaults for cron daemon + self.controller.install_profile.set_cron_daemon_pkg(None, "vixie-cron", None) + # Set networkless defaults for bootloader + self.controller.install_profile.set_boot_loader_pkg(None, self.controller.bootloaders[self.controller.cc.get_arch()][0], None) + self.controller.install_profile.set_boot_loader_mbr(None, True, None) + progress = ProgressDialog(self.controller, ('setup_network_post', 'install_logger', 'install_cron_daemon', 'install_filesystem_tools', 'install_bootloader', 'setup_and_run_bootloader'), self.progress_callback) progress.run() def progress_callback(self, result, data=None): if result == PROGRESS_DONE: - self.controller.load_screen("Logger") + self.controller.load_screen("Users") else: GLIScreen.progress_callback(self, result, data) diff --git a/src/fe/gtk/OtherSettings.py b/src/fe/gtk/OtherSettings.py index 6b2c68b..eda225e 100644 --- a/src/fe/gtk/OtherSettings.py +++ b/src/fe/gtk/OtherSettings.py @@ -207,7 +207,7 @@ Pick one. Nano is the default and recommended. etc_files['conf.d/clock']['CLOCK'] = self.clock.GetValue() etc_files['rc.conf']['EDITOR'] = self.editor.GetValue() if self.displaymanager.GetValue() != "": - etc_files['rc.conf']['DISPLAYMANAGER'] = self.displaymanager.GetValue() + etc_files['conf.d/xdm']['DISPLAYMANAGER'] = self.displaymanager.GetValue() if self.xsession.GetValue() != "": etc_files['rc.conf']['XSESSION'] = self.xsession.GetValue() diff --git a/src/fe/gtk/RootPass.py b/src/fe/gtk/RootPass.py index 8c3d397..814035a 100644 --- a/src/fe/gtk/RootPass.py +++ b/src/fe/gtk/RootPass.py @@ -73,4 +73,11 @@ confirm it (to prevent typos). msgdlg.run() msgdlg.destroy() return - self.controller.load_screen("Timezone") + progress = ProgressDialog(self.controller, ("set_root_password", ), self.progress_callback) + progress.run() + + def progress_callback(self, result, data=None): + if result == PROGRESS_DONE: + self.controller.load_screen("Timezone") + else: + GLIScreen.progress_callback(self, result, data) diff --git a/src/fe/gtk/Timezone.py b/src/fe/gtk/Timezone.py index 2aef63e..56a910d 100644 --- a/src/fe/gtk/Timezone.py +++ b/src/fe/gtk/Timezone.py @@ -68,12 +68,14 @@ setting later on in the Other Settings screen. self.controller.install_profile.set_time_zone(None, self.map.getCurrent().tz, None) except: pass - progress = ProgressDialog(self.controller, ("set_root_password", "set_timezone"), self.progress_callback) + # Set networkless defaults for kernel + self.controller.install_profile.set_kernel_source_pkg(None, "livecd-kernel", None) + progress = ProgressDialog(self.controller, ("set_timezone", "emerge_kernel_sources"), self.progress_callback) progress.run() def progress_callback(self, result, data=None): if result == PROGRESS_DONE: - self.controller.load_screen("Kernel") + self.controller.load_screen("Networking") else: GLIScreen.progress_callback(self, result, data) diff --git a/src/fe/gtk/gtkfe.py b/src/fe/gtk/gtkfe.py index 19f88cf..843310a 100755 --- a/src/fe/gtk/gtkfe.py +++ b/src/fe/gtk/gtkfe.py @@ -33,19 +33,19 @@ class Installer: "InstallMode": None, "Partition": None, "LocalMounts": None, - "NetworkMounts": None, - "Stage": None, - "PortageTree": None, - "MakeDotConf": None, +# "NetworkMounts": None, +# "Stage": None, +# "PortageTree": None, +# "MakeDotConf": None, "RootPass": None, "Timezone": None, - "Kernel": None, - "KernelSources": None, - "KernelConfig": None, +# "Kernel": None, +# "KernelSources": None, +# "KernelConfig": None, "Networking": None, - "Logger": None, - "CronDaemon": None, - "Bootloader": None, +# "Logger": None, +# "CronDaemon": None, +# "Bootloader": None, "Users": None, "ExtraPackages": None, "StartupServices": None, @@ -54,6 +54,16 @@ class Installer: "InstallFailed": None } + bootloaders = { + 'none': [ "none" ], + 'x86': [ "grub", "lilo" ], + 'amd64': [ "grub" ], + 'ppc': [ "yaboot" ], + 'hppa': [ "palo" ], + 'mips': [ "arcload", "arcboot", "colo" ], + 'sparc': [ "silo" ] + } + def __init__(self): self.window = None self.panel = None -- cgit v1.2.3-65-gdbad