From 4a29e2a96e9b135478a9833bd283561af367df45 Mon Sep 17 00:00:00 2001 From: Will Woods Date: Thu, 27 Oct 2011 15:53:41 -0400 Subject: [PATCH] Add wwoods patches for ppc/treebuilder --- 0001-Fix-DVD-building-on-ppc64.patch | 28 ++++++++++++++ ...e-a-predictable-ISO-Volume-ID-732298.patch | 37 +++++++++++++++++++ pungi.spec | 10 ++++- 3 files changed, 74 insertions(+), 1 deletion(-) create mode 100644 0001-Fix-DVD-building-on-ppc64.patch create mode 100644 0002-Use-a-predictable-ISO-Volume-ID-732298.patch diff --git a/0001-Fix-DVD-building-on-ppc64.patch b/0001-Fix-DVD-building-on-ppc64.patch new file mode 100644 index 00000000..b2045bcc --- /dev/null +++ b/0001-Fix-DVD-building-on-ppc64.patch @@ -0,0 +1,28 @@ +From 4b5b59bd507def6077a4fac9f52af291527ded17 Mon Sep 17 00:00:00 2001 +From: Will Woods +Date: Tue, 11 Oct 2011 15:03:52 -0400 +Subject: [PATCH 1/2] Fix DVD building on ppc64 + +ppc64 systems used to have arch == 'ppc', so pungi was only checking to +see if arch == 'ppc'. Now that ppc64 is separate from ppc, we need to +check if arch.startswith('ppc') instead. +--- + src/pypungi/__init__.py | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/src/pypungi/__init__.py b/src/pypungi/__init__.py +index e183b9c..a402eb4 100644 +--- a/src/pypungi/__init__.py ++++ b/src/pypungi/__init__.py +@@ -1046,7 +1046,7 @@ class Pungi(pypungi.PungiBase): + extraargs.extend(efibootargs) + elif self.config.get('pungi', 'arch') == 'ia64': + extraargs.extend(ia64bootargs) +- elif self.config.get('pungi', 'arch') == 'ppc': ++ elif self.config.get('pungi', 'arch').startswith('ppc'): + extraargs.extend(ppcbootargs) + extraargs.append(os.path.join(self.topdir, "ppc/mac")) + elif self.config.get('pungi', 'arch') == 'sparc': +-- +1.7.7 + diff --git a/0002-Use-a-predictable-ISO-Volume-ID-732298.patch b/0002-Use-a-predictable-ISO-Volume-ID-732298.patch new file mode 100644 index 00000000..628f810b --- /dev/null +++ b/0002-Use-a-predictable-ISO-Volume-ID-732298.patch @@ -0,0 +1,37 @@ +From b5297ce1c82c626bb3e51b7eb67ac5529e16a29b Mon Sep 17 00:00:00 2001 +From: Will Woods +Date: Wed, 12 Oct 2011 20:25:20 -0400 +Subject: [PATCH 2/2] Use a predictable ISO Volume ID (#732298) + +Since the new lorax branch needs to know the iso Volume ID to be able to +boot, we need to make sure we're using the same Volume ID that lorax +sets up the bootloaders to expect. +--- + src/pypungi/__init__.py | 10 ++++------ + 1 files changed, 4 insertions(+), 6 deletions(-) + +diff --git a/src/pypungi/__init__.py b/src/pypungi/__init__.py +index a402eb4..1ef3b8d 100644 +--- a/src/pypungi/__init__.py ++++ b/src/pypungi/__init__.py +@@ -1052,13 +1052,11 @@ class Pungi(pypungi.PungiBase): + elif self.config.get('pungi', 'arch') == 'sparc': + extraargs.extend(sparcbootargs) + ++ # NOTE: if this doesn't match what's in the bootloader config, the ++ # image won't be bootable! + extraargs.append('-V') +- if treesize > 700: +- extraargs.append('%s %s %s DVD' % (self.config.get('pungi', 'name'), +- self.config.get('pungi', 'version'), self.config.get('pungi', 'arch'))) +- else: +- extraargs.append('%s %s %s' % (self.config.get('pungi', 'name'), +- self.config.get('pungi', 'version'), self.config.get('pungi', 'arch'))) ++ extraargs.append('%s %s %s' % (self.config.get('pungi', 'name'), ++ self.config.get('pungi', 'version'), self.config.get('pungi', 'arch'))) + + extraargs.extend(['-o', isofile]) + +-- +1.7.7 + diff --git a/pungi.spec b/pungi.spec index 96d47d11..e6def402 100644 --- a/pungi.spec +++ b/pungi.spec @@ -2,13 +2,15 @@ Name: pungi Version: 2.8 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Distribution compose tool Group: Development/Tools License: GPLv2 URL: https://fedorahosted.org/pungi Source0: https://fedorahosted.org/pungi/attachment/wiki/%{version}/%{name}-%{version}.tar.bz2 +Patch1: 0001-Fix-DVD-building-on-ppc64.patch +Patch2: 0002-Use-a-predictable-ISO-Volume-ID-732298.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Requires: anaconda >= 14.3, yum => 3.2.19, repoview, createrepo >= 0.4.11 Requires: lorax @@ -22,6 +24,8 @@ A tool to create anaconda based installation trees/isos of a set of rpms. %prep %setup -q +%patch1 -p1 +%patch2 -p1 %build @@ -56,6 +60,10 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Thu Oct 27 2011 Will Woods - 2.8-2 +- Fix DVD builds for ppc/ppc64 +- Use a consistent ISO label so the bootloader will work (#732298) + * Mon Jul 18 2011 Jesse Keating - 2.8-1 - Always re-init the yum object (#717089)