.gitignore | 1 revisor.py | 7 +- revisor/base.py | 11 ++-- revisor/modisolinux/__init__.py | 2 revisor/pkgorder.py | 69 +++++++++++++++++++-------- revisor/progress.py | 2 switchhere | 2 unity/conf/conf.d/fedora-11-single-cd.cfg | 2 unity/conf/f11-install-respin.conf | 2 unity/conf/f11-install-single-cd.conf | 3 + unity/share/fedora-11-single-cd_isolinux.cfg | 42 ++++++++++++++++ 11 files changed, 115 insertions(+), 28 deletions(-)
New commits: commit 01643517c4f40cbaeccb673f39b2eff4b4ee7b68 Author: Jeroen van Meeuwen (Fedora Unity) kanarip@fedoraunity.org Date: Sat Jul 18 22:29:10 2009 +0200
Do the conditionals *after* the pkglist has been selected
diff --git a/revisor/pkgorder.py b/revisor/pkgorder.py index fded5a9..dbb35a1 100644 --- a/revisor/pkgorder.py +++ b/revisor/pkgorder.py @@ -54,13 +54,13 @@ class PackageOrderer(yum.YumBase): self.final_pkgobjs = {}
yum.YumBase.__init__(self) - self.arch = self.cfg.architecture
self.processed = {}
# Boo - if self.arch == "i386": - self.arch = "i686" + if hasattr(self, "arch"): + if self.arch == "i386": + self.arch = "i686"
# We're gonna use this an awful lot self.toppath = os.path.join(self.cfg.working_directory,"revisor-pungi",self.cfg.version,self.cfg.model,self.cfg.architecture,"os") @@ -93,16 +93,6 @@ class PackageOrderer(yum.YumBase): # packageLst = grp.mandatory_packages.keys() + grp.default_packages.keys() + grp.optional_packages.keys() packageLst = grp.mandatory_packages.keys() + grp.default_packages.keys()
- for condreq, cond in grp.conditional_packages.iteritems(): - self.log.debug(_("Adding conditional: %s / %s") % (condreq, cond), level=9) - pkgs = self.pkgSack.searchNevra(name=condreq) - if len(pkgs) > 1: - pkgs = self.bestPackagesFromList(pkgs) - if self.tsInfo.conditionals.has_key(cond): - self.tsInfo.conditionals[cond].extend(pkgs) - else: - self.tsInfo.conditionals[cond] = pkgs - self.log.debug(_("The following packages are in group %s: %r") % (group, packageLst), level=9)
for pkg in packageLst: @@ -114,6 +104,16 @@ class PackageOrderer(yum.YumBase): except yum.Errors.PackageSackError, e: pass
+ for condreq, cond in grp.conditional_packages.iteritems(): + self.log.debug(_("Adding conditional: %s / %s") % (condreq, cond), level=9) + pkgs = self.pkgSack.searchNevra(name=condreq) + if len(pkgs) > 1: + pkgs = self.bestPackagesFromList(pkgs) + if self.tsInfo.conditionals.has_key(cond): + self.tsInfo.conditionals[cond].extend(pkgs) + else: + self.tsInfo.conditionals[cond] = pkgs + if self.cfg.pkgorder_style == "yum": self.resolveDeps() else: @@ -135,6 +135,7 @@ class PackageOrderer(yum.YumBase): self.resolveDeps() else: (self.resolved_deps, self.final_pkgobjs) = revisor.misc.resolve_dependencies_inclusive(self, logger=self.log, resolved_deps=self.resolved_deps, final_pkgobjs=self.final_pkgobjs) + #revisor.misc.resolve_dependencies_inclusive(self, logger=self.log, resolved_deps=self.resolved_deps, final_pkgobjs=self.final_pkgobjs)
for po in self.final_pkgobjs.keys(): self.printMatchingPkgs(os.path.basename(po.localPkg())) @@ -185,19 +186,49 @@ enabled=1 def doFileLogSetup(self, uid, logfile): pass
- def doLoggingSetup(self, *args, **kwargs): - pass + #def doLoggingSetup(self, *args, **kwargs): + #pass
def setup(self,pbar=None):
if not pbar == None: self.pbar = pbar
- if hasattr(self,"_getConfig"): - self._getConfig(fn=self.createConfig(), root=self.testpath, init_plugins=False) + if hasattr(self,"preconf"): + self.preconf.fn = self.cfg.main + self.preconf.init_plugins = True + self.preconf.plugin_types = (yum.plugins.TYPE_CORE,) + self.preconf.debuglevel = self.cfg.debuglevel + self.preconf.errorlevel = self.cfg.debuglevel + + #self.preconf.arch = rpmUtils.ArchStorage() + + self._getConfig() + elif hasattr(self,"_getConfig"): + self._getConfig(fn=self.cfg.main, plugin_types=(yum.plugins.TYPE_CORE,)) else: - self.doConfigSetup(fn=self.createConfig(), root=self.testpath, init_plugins=False) - self.log.debug(_("Using deprecated YUM function: %s()") % "doConfigSetup") + self.doConfigSetup(fn=self.cfg.main, plugin_types=(yum.plugins.TYPE_CORE,)) + self.log.debug(_("Using deprecated YUM function: %s()") % "doConfigSetup", level=7) + + #try: + #if hasattr(self,"preconf"): + #self.preconf.fn = self.cfg.main + #self.preconf.init_plugins = True + #self.preconf.plugin_types = (yum.plugins.TYPE_CORE,) + #self.preconf.debuglevel = self.cfg.debuglevel + #self.preconf.errorlevel = self.cfg.debuglevel + + #self.preconf.arch = rpmUtils.ArchStorage() + + #self._getConfig() + #elif hasattr(self,"_getConfig"): + #self._getConfig(fn=self.cfg.main, plugin_types=(yum.plugins.TYPE_CORE,)) + #else: + #self.doConfigSetup(fn=self.cfg.main, plugin_types=(yum.plugins.TYPE_CORE,)) + #self.log.debug(_("Using deprecated YUM function: %s()") % "doConfigSetup", level=7) + #except: + #self.log.error(_("yum.YumBase.doConfigSetup failed, probably an invalid configuration file %s") % self.cfg.main, recoverable=False) + self.doRepoSetup() if hasattr(self,"_getTs"): self._getTs()
commit 2a5592a1e357bcec241c0ce2a8a1287ed041dd37 Merge: 65c6ac5... 59e08a0... Author: Jeroen van Meeuwen (Fedora Unity) kanarip@fedoraunity.org Date: Sat Jul 18 22:24:33 2009 +0200
Merge branch 'master' of ssh://git.fedorahosted.org/git/revisor
commit 65c6ac54c3644268bf93df53f9225761bc730388 Author: Jeroen van Meeuwen (Fedora Unity) kanarip@fedoraunity.org Date: Sat Jul 18 22:23:44 2009 +0200
Force fedora-11-single-cd to perform installations (when using the kickstart install option)
diff --git a/unity/conf/conf.d/fedora-11-single-cd.cfg b/unity/conf/conf.d/fedora-11-single-cd.cfg index d609a87..6afda8b 100644 --- a/unity/conf/conf.d/fedora-11-single-cd.cfg +++ b/unity/conf/conf.d/fedora-11-single-cd.cfg @@ -1,2 +1,4 @@ +install + %packages %end
commit d01718c0d74fc2bea66694944c633fcf7da042f5 Author: Jeroen van Meeuwen (Fedora Unity) kanarip@fedoraunity.org Date: Sat Jul 18 22:17:03 2009 +0200
Add the default groups all at once
diff --git a/revisor/base.py b/revisor/base.py index 1671f7d..980a8fd 100644 --- a/revisor/base.py +++ b/revisor/base.py @@ -1319,6 +1319,7 @@ class RevisorBase:
elif self.cfg.version_from in [ "F8", "F9", "F10", "F11", "DEVEL" ]: # Here is where we add groups + groups_default = [] groups_nondefault = [] groups_nondefault_support = []
@@ -1350,10 +1351,7 @@ class RevisorBase:
if hasattr(group,"default"): if bool(group.default): - self.log.debug(_("Appending default group %s") % group.groupid, level=7) - ds.addGroups([group.groupid]) - pbar.current += 1.0 - pbar.set_fraction(pbar.current/pbar.total) + groups_default.append(group.groupid) elif group.groupid.endswith("-support"): groups_nondefault_support.append(group.groupid) else: @@ -1361,6 +1359,11 @@ class RevisorBase: else: groups_nondefault.append(group.groupid)
+ self.log.debug(_("Appending default groups %r") % groups_default, level=7) + ds.addGroups(groups_default) + pbar.current += float(len(groups_default)) + pbar.set_fraction(pbar.current/pbar.total) + # Now, make sure that any packages listed in the kickstart end # up on the first possible disc as well. But not when composing # the everything spin, please
commit e4e735d9f903e1f3d7f6aa25ce60dcaff724a30b Author: Jeroen van Meeuwen (Fedora Unity) kanarip@fedoraunity.org Date: Sat Jul 18 22:15:32 2009 +0200
Make the custom isolinux.cfg end up as isolinux/isolinux.cfg
diff --git a/revisor/modisolinux/__init__.py b/revisor/modisolinux/__init__.py index 2ad4911..d6ff0e0 100644 --- a/revisor/modisolinux/__init__.py +++ b/revisor/modisolinux/__init__.py @@ -86,7 +86,7 @@ class RevisorIsolinux: os.unlink(os.path.join(self.cfg.working_directory, "revisor-pungi", self.cfg.version, self.cfg.model, self.cfg.architecture, "os", "isolinux", "isolinux.cfg")) self.log.debug(_("Deleted the old isolinux.cfg"), level=9) try: - shutil.copy(self.cfg.isolinux_cfg, os.path.join(self.cfg.working_directory, "revisor-pungi", self.cfg.version, self.cfg.model, self.cfg.architecture, "os", "isolinux")) + shutil.copy(self.cfg.isolinux_cfg, os.path.join(self.cfg.working_directory, "revisor-pungi", self.cfg.version, self.cfg.model, self.cfg.architecture, "os", "isolinux", "isolinux.cfg")) self.log.debug(_("Inserted the new isolinux.cfg"), level=9) except: self.log.warning(_("Could not copy in the new isolinux.cfg"))
commit 2f97918acc3368a1603c4cabc869262080a4b978 Author: Jeroen van Meeuwen (Fedora Unity) kanarip@fedoraunity.org Date: Sat Jul 18 22:14:47 2009 +0200
Add custom isolinux to Unity's Single CD spin
diff --git a/switchhere b/switchhere index 517c823..806ce1f 100755 --- a/switchhere +++ b/switchhere @@ -29,5 +29,7 @@ sudo ln -sf $PWD/revisor/modgui/glade/pixmaps /usr/share/revisor/pixmaps || ln - sudo ln -sf $PWD/conf/comps-cleanup.xsl /usr/share/revisor/comps-cleanup.xsl || ln -sf $PWD/conf/comps-cleanup.xsl /usr/share/revisor/comps-cleanup.xsl sudo ln -sf $PWD/conf /usr/share/revisor/comps || ln -sf $PWD/conf /usr/share/revisor/comps
+sudo ln -sf $PWD/unity/share /usr/share/revisor/unity || ln -sf $PWD/unity/share /usr/share/revisor/unity + sudo ln -sf $PWD/doc/revisor.8 /usr/share/man/man8/revisor.8 || ln -sf $PWD/doc/revisor.8 /usr/share/man/man8/revisor.8 sudo ln -sf $PWD/doc/revisor.conf.5 /usr/share/man/man5/revisor.conf.5 || ln -sf $PWD/doc/revisor.conf.5 /usr/share/man/man5/revisor.conf.5 diff --git a/unity/conf/f11-install-single-cd.conf b/unity/conf/f11-install-single-cd.conf index 2bac322..920ae2a 100644 --- a/unity/conf/f11-install-single-cd.conf +++ b/unity/conf/f11-install-single-cd.conf @@ -31,6 +31,9 @@ product_name = Fedora product_path = Packages iso_basename = Fedora-Single iso_label = Fedora + +isolinux_cfg = /usr/share/revisor/unity/fedora-11-single-cd_isolinux.cfg + version = 11 version_from = F11 comps_filter = 0 diff --git a/unity/share/fedora-11-single-cd_isolinux.cfg b/unity/share/fedora-11-single-cd_isolinux.cfg new file mode 100644 index 0000000..2b69162 --- /dev/null +++ b/unity/share/fedora-11-single-cd_isolinux.cfg @@ -0,0 +1,42 @@ +default vesamenu.c32 +#prompt 1 +timeout 600 + +display boot.msg + +menu background splash.jpg +menu title Welcome to Fedora 11! +menu color border 0 #ffffffff #00000000 +menu color sel 7 #ffffffff #ff000000 +menu color title 0 #ffffffff #00000000 +menu color tabmsg 0 #ffffffff #00000000 +menu color unsel 0 #ffffffff #00000000 +menu color hotsel 0 #ff000000 #ffffffff +menu color hotkey 7 #ffffffff #ff000000 +menu color scrollbar 0 #ffffffff #00000000 + +label linux + menu label ^Install system (Upgrades not supported) + kernel vmlinuz + append initrd=initrd.img +label vesa + menu label Install system with ^basic video driver + kernel vmlinuz + append initrd=initrd.img xdriver=vesa nomodeset +label rescue + menu label ^Rescue installed system + kernel vmlinuz + append initrd=initrd.img rescue +label local + menu label Boot from ^local drive + localboot 0xffff +label memtest86 + menu label ^Memory test + kernel memtest + append - + +label ks + menu label ^Install using kickstart + menu default + kernel vmlinuz + append initrd=initrd.img ks=cdrom:/ks.cfg
commit 36effdacef1188a96b57a50b2328c2bbae8a0967 Author: Jeroen van Meeuwen (Fedora Unity) kanarip@fedoraunity.org Date: Sat Jul 18 22:11:52 2009 +0200
Use the correct setting
diff --git a/unity/conf/f11-install-respin.conf b/unity/conf/f11-install-respin.conf index 2758702..fe3cc27 100644 --- a/unity/conf/f11-install-respin.conf +++ b/unity/conf/f11-install-respin.conf @@ -17,7 +17,7 @@ dependency_resolve_allow_conflicts = 1 mode_respin = 1
kickstart_manifest = 1 -kickstart_uses_pkgsack_excludes = 1 +kickstart_uses_pkgsack_exclude = 1
copy_local = 1
commit 1e98cf3bf5b48102315da1b6caece0fc2b26d86c Author: Jeroen van Meeuwen (Fedora Unity) kanarip@fedoraunity.org Date: Sat Jul 18 22:11:20 2009 +0200
Move importing from revisor itself to after the sys.append()
diff --git a/revisor.py b/revisor.py index fa32010..14cca92 100755 --- a/revisor.py +++ b/revisor.py @@ -22,12 +22,15 @@ import logging import os import sys
-from revisor.translate import _, N_ - # This is development sys.path.append(".") sys.path.append(sys.path[0])
+try: + from revisor.translate import _ +except: + pass + if os.access("/usr/lib/anaconda-runtime/", os.R_OK): sys.path.append("/usr/lib/anaconda-runtime/") else:
commit a75e086882bd21fe00ca2e97c086b2d1b9d59504 Author: Jeroen van Meeuwen (Fedora Unity) kanarip@fedoraunity.org Date: Sat Jul 18 22:00:32 2009 +0200
Fix
diff --git a/.gitignore b/.gitignore index 495ce3a..a7cb4f1 100644 --- a/.gitignore +++ b/.gitignore @@ -34,3 +34,4 @@ revisor.spec autom4te.cache revisor/__init__.py custom +
commit edc8080e96e978f64428fcf6fc46cd241abc5eb9 Author: Jeroen van Meeuwen (Fedora Unity) kanarip@fedoraunity.org Date: Fri Jul 17 10:43:26 2009 +0200
Take into account --debug 9 bash -x output from buildinstall
diff --git a/revisor/progress.py b/revisor/progress.py index f8d574f..da57893 100644 --- a/revisor/progress.py +++ b/revisor/progress.py @@ -548,7 +548,7 @@ class PungiCallback: self.pbar.set_fraction(num/total) self._runGtkMain()
- elif command[0].endswith("buildinstall"): + elif command[0].endswith("buildinstall") or command[2].endswith("buildinstall"): self.buildinstall_num += 1.0 if not self.buildinstall_num > self.buildinstall_total: if float(self.buildinstall_num / self.buildinstall_total) < 99.0:
revisor-devel@lists.stg.fedorahosted.org