Added a patch from Andrew Gaffney <agaffney@gentoo.org> to fix up the problems with...
[catalyst.git] / modules / stage4_target.py
index 17d32433444106a5b32f28bb44df27056dd7b18a..07629fc779966aa23f341dfeaad2f8c0bb464ed1 100644 (file)
@@ -1,9 +1,6 @@
-# Copyright 1999-2005 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo/src/catalyst/modules/stage4_target.py,v 1.9 2005/08/09 14:12:26 rocket Exp $
 
 """
-Builder class for LiveCD stage1.
+Builder class for stage4.
 """
 
 from catalyst_support import *
@@ -11,20 +8,15 @@ from generic_stage_target import *
 
 class stage4_target(generic_stage_target):
        def __init__(self,spec,addlargs):
-               #self.required_values=["stage4/use"]
-               self.required_values=[]
+               self.required_values=["stage4/packages"]
                self.valid_values=self.required_values[:]
-               self.valid_values.extend(["stage4/use", "stage4/packages", "stage4/root_overlay", "stage4/fsscript", \
-                                            "stage4/rcadd","stage4/rcdel"])
+               self.valid_values.extend(["stage4/use","boot/kernel",\
+                               "stage4/root_overlay","stage4/fsscript",\
+                               "stage4/gk_mainargs","splash_theme","splash_type",\
+                               "portage_overlay","stage4/rcadd","stage4/rcdel",\
+                               "stage4/linuxrc","stage4/unmerge","stage4/rm","stage4/empty"])
                generic_stage_target.__init__(self,spec,addlargs)
 
-       def set_pkgcache_path(self):
-           if self.settings.has_key("pkgcache_path"):  
-               if type(self.settings["pkgcache_path"]) != types.StringType:
-                   self.settings["pkgcache_path"]=normpath(string.join(self.settings["pkgcache_path"]))
-           else:
-               generic_stage_target.set_pkgcache_path(self)
-
        def set_cleanables(self):
                self.settings["cleanables"]=["/var/tmp/*","/tmp/*"]
 
@@ -32,10 +24,17 @@ class stage4_target(generic_stage_target):
                self.settings["action_sequence"]=["unpack","unpack_snapshot",\
                                        "config_profile_link","setup_confdir","portage_overlay",\
                                        "bind","chroot_setup","setup_environment","build_packages",\
-                                       "build_kernel","bootloader","root_overlay","fsscript",
+                                       "build_kernel","bootloader","root_overlay","fsscript",\
                                        "preclean","rcupdate","unmerge","unbind","remove","empty",\
-                                       "clean","capture", "clear_autoresume"]
+                                       "clean"]
+
+#              if self.settings.has_key("TARBALL") or \
+#                      not self.settings.has_key("FETCH"):
+               if not self.settings.has_key("FETCH"):
+                       self.settings["action_sequence"].append("capture")
+               self.settings["action_sequence"].append("clear_autoresume")
 
 def register(foo):
        foo.update({"stage4":stage4_target})
        return foo
+