Brian Dolbec | 2 Apr 22:29 2014

[PATCH 2/8] Initial separation and creation of

 catalyst/                     | 87 ++++++++++++++++++++++++++++++++
 catalyst/                         |  8 ++-
 catalyst/                      | 52 -------------------
 catalyst/targets/ |  3 +-
 4 files changed, 96 insertions(+), 54 deletions(-)
 create mode 100644 catalyst/

diff --git a/catalyst/ b/catalyst/
new file mode 100644
index 0000000..79ef9a6
--- /dev/null
+++ b/catalyst/
 <at>  <at>  -0,0 +1,87  <at>  <at> 
+from collections import namedtuple
+from subprocess import Popen, PIPE
+from support import CatalystError, warn
+# use ContentsMap.fields for the value legend
+# Key:[function, cmd]
+	# 'find' is disabled because it requires the source path, which is not
+	# always available
+	#"find"		:["calc_contents","find %(path)s"],
+	"tar_tv":["calc_contents","tar tvf %(file)s"],
+	"tar_tvz":["calc_contents","tar tvzf %(file)s"],
+	"tar_tvj":["calc_contents","tar -I lbzip2 -tvf %(file)s"],
(Continue reading)

Brian Dolbec | 3 Apr 01:46 2014

Patch 0/8 Remaining patches in pending.

[PATCH 1/8] Initial separation and creation of a module

Well, that was a crappy way for git send-email to react.  
First when cancelling, it only cancelled the cover letter and the first commit.
And without entering an email address.  Second time it didn't send the cover and the 1/8 commit.
I didn't meant to group these together, but, since theyre on the list...

Brian Dolbec | 22 Mar 18:02 2014

2.X bugfixes

Due to the firmware bug fixed by the first patch in this series which needs
to be released and used for production of install media. I took the opportunity
To add all the other bug fixes from the pending and 3.0 branches.  This 
includes a few convenience commits like the 2 chmod ones.  I would like to 
push these to the main repo and make a release.

They are currently available for testing in my github account.

git remote add dolsen-github git@...:dol-sen/catalyst.git
git fetch dolsen-github
git checkout dolsen-github/2.X

 [PATCH 01/17] livecdfs-update: No tmpfs on /lib/firmware
 [PATCH 02/17] update-modules doesn't exists anymore.
 [PATCH 03/17] doesn't exists anymore.
 [PATCH 04/17] /etc/conf.d/rc doesn't exists anymore.
 [PATCH 05/17] Fix merging kernel without kerncache enabled.
 [PATCH 06/17] Rename in a way that it won't be matched if
 [PATCH 07/17] Allow kernelopts as a valid value for kernels.
 [PATCH 08/17] Make use of _kernelopts for hppa.
 [PATCH 09/17] Fix and improve kernel build when kerncache is enabled.
 [PATCH 10/17] Don't make cdtar mandatory.
 [PATCH 11/17] Use the system's iplboot to be sure it matches palo's
 [PATCH 12/17] Remove unused hppa cdtar.
 [PATCH 13/17] chmod +x all sh scripts so they can run from the git
 [PATCH 14/17] chmod +x targets/stage1/
 [PATCH 15/17] Add more working files, directories to .gitignore
 [PATCH 16/17] Fix undefined variable: RLIMIT_NOFILE
 [PATCH 17/17] Fix a relative path bug

(Continue reading)

Brian Dolbec | 3 Mar 00:07 2014

[PATCH] Commit a testpath file to source with instructions on it's use.

Make testpath automagic via dwfeed's tweak
Update HOWTO on how to run the git checkout code directly without being installed.
 doc/HOWTO.txt | 10 ++++++++--
 testpath      | 19 +++++++++++++++++++
 2 files changed, 27 insertions(+), 2 deletions(-)
 create mode 100644 testpath

diff --git a/doc/HOWTO.txt b/doc/HOWTO.txt
index 8fe63c1..cec22c3 100644
--- a/doc/HOWTO.txt
+++ b/doc/HOWTO.txt
 <at>  <at>  -233,9 +233,15  <at>  <at>  Running catalyst from a Git checkout

 If you're developing catalyst, you'll want to test your altered
 version.  An easy way to run it without reinstalling is to setup a
-local configuration file and run:
+local configuration file.  The checkout also includes a testpath file
+which when sourced adds it's bin/ to PATH and it's checkout dir to
+PYTHONPATH.  That terminal will then use the checkout bin/catalyst and
+the checkout's python modules.

-    # ./catalyst -c catalyst.conf -f path/to/your.spec
+cd into the checkout directory and run:
+    # source ./testpath
+    # catalyst -c catalyst.conf -f path/to/your.spec

 The local configuration file can use all the defaults except for
 `sharedir`, which you should change to point to your development
(Continue reading)

Brian Dolbec | 3 Mar 00:05 2014

[PATCH] Fix autoresume file paths to only be configured once.

Use: pjoin as a shorter alias to os.path.join()
 catalyst/targets/ | 175 +++++++++++++++++--------------
 1 file changed, 95 insertions(+), 80 deletions(-)

diff --git a/catalyst/targets/ b/catalyst/targets/
index 2b3d7ce..095327a 100644
--- a/catalyst/targets/
+++ b/catalyst/targets/
 <at>  <at>  -33,6 +33,9  <at>  <at>  SOURCE_MOUNTS_DEFAULTS = {
 	"shm": "shmfs",

+# for convienience
+pjoin = os.path.join

 class generic_stage_target(generic_target):
 <at>  <at>  -334,9 +337,10  <at>  <at>  class generic_stage_target(generic_target):
 	def set_target_path(self):
-		if "AUTORESUME" in self.settings\
-			and os.path.exists(self.settings["autoresume_path"]+\
-				"setup_target_path"):
+		setup_target_path_resume = pjoin(self.settings["autoresume_path"],
+			"setup_target_path")
+		if "AUTORESUME" in self.settings and \
+				os.path.exists(setup_target_path_resume):
(Continue reading)

Brian Dolbec | 3 Mar 00:00 2014

[PATCH 2/5] Fix an intermittent snapshot_cache_path keyerror

 catalyst/targets/ | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/catalyst/targets/ b/catalyst/targets/
index 095327a..7fd583e 100644
--- a/catalyst/targets/
+++ b/catalyst/targets/
 <at>  <at>  -470,10 +470,10  <at>  <at>  class generic_stage_target(generic_target):

 	def set_snapcache_path(self):
+		self.settings["snapshot_cache_path"] = \
+			normpath(self.settings["snapshot_cache"] + "/" +
+				self.settings["snapshot"])
 		if "SNAPCACHE" in self.settings:
-			self.settings["snapshot_cache_path"] = \
-				normpath(self.settings["snapshot_cache"] + "/" +
-					self.settings["snapshot"])
 			print "Caching snapshot to "+self.settings["snapshot_cache_path"]
Guy Martin | 5 Feb 11:39 2014

[PATCH 00/11] Livecd updates for catalyst 3.0

Hi team,

Here are a series of updates for the 3.0 branch.
There are cosmetic fixups, real fixes and logic rework as well as hppa
specific bits.


Guy Martin (11):
  update-modules doesn't exists anymore. doesn't exists anymore.
  /etc/conf.d/rc doesn't exists anymore.
  Fix merging kernel without kerncache enabled.
  Rename in a way that it won't be matched if multiple kernel
    are used.
  Allow kernelopts as a valid value for kernels.
  Make use of _kernelopts for hppa.
  Fix and improve kernel build when kerncache is enabled.
  Don't make cdtar mandatory.
  Use the system's iplboot to be sure it matches palo's version.
  Remove unused hppa cdtar.

 catalyst/base/                      |   1 +
 livecd/cdtar/palo-1.5_pre20040515-cdtar.tar.bz2 | Bin 17399 -> 0 bytes
 targets/support/             |  14 ++-
 targets/support/                    |  12 +-
 targets/support/                       | 147 ++++++++++++++----------
 targets/support/              |   6 -
 targets/support/               |   2 +-
 targets/support/                  |   1 -
(Continue reading)

W. Trevor King | 30 Jan 17:46 2014

Re: Re: Catalyst pull request

On Thu, Jan 30, 2014 at 09:56:03AM +0100, Guy Martin wrote:
> On 2014-01-30 00:34, W. Trevor King wrote:
> > On Wed, Jan 29, 2014 at 05:24:30PM -0500, Rick "Zero_Chaos" Farina 
> >> On 01/29/2014 10:19 AM, Guy Martin wrote:
> >> >
> >
> > I think 6046e57 is useful, but it's already in pending with
> > 70f7cfcand fcbcea4 [1]…
> This patch just make it easier to develop and test with a git
> branch.  I think it's a good addition and will definitely not break
> anything.

Agreed on both counts.  I'm just recommending the older 70f7cfc and
fcbcea4 over 6046e57.

> > I've never used PALO [2], so I'm agnostic on 0f4c970.  I agree
> > with dol-sen's #gentoo-releng comment that it would be better to
> > make this timeout configurable, but since this is code I'll never
> > use, I don't feel very strongly about it ;).
> The timeout will be configurable when booting. The user always has
> the option to change the value. It's just there because when I
> install a box remotely, I can easily panic the kernel (like ctrl-d
> in the netboot) and I have no way to recover the box.

If you can't set this remotely already, I don't expect a user will be
able to change the value remotely either.  You want to set this in
Catalyst instead, so I think it's fair to support users who want to
change (or disable) the timeout in Catalyst too.
(Continue reading)

wking | 30 Jan 01:56 2014

[PATCH] Makefile: Use asciidoc and Pandoc to generate MediaWiki doc versions

We need this because hosting content under:

is deprecated, with per-project documentation migrating to the wiki [1]

* `--attribute 'toc!'` disables AsciiDoc's table of contents [2],
  which Pandoc doesn't like.
* The Pandoc invocation is about as basic as it gets [3].

[1] also mentions that the per-project pages are already hosted in
converted form.  For example:

if folks want to copy-paste into the wiki.  I don't think I have
permission (as a non releng/Catalyst member) to create or edit stuff
in the Project:releng namespace on the wiki, but I suggest folks
dropping the MediaWiki version of the HOWTO in should reference the
source Git commit in their MediaWiki commit:

  auto-generated from ee08256 (doc/HOWTO.txt: Fix stage descriptions,
  and add extra context, 2013-12-19).

(Continue reading)

Rick "Zero_Chaos" Farina | 29 Jan 23:24 2014

Re: Catalyst pull request

Please use the gentoo-catalyst ML for these.  I have added to the cc
so the proper eyes will see it.


On 01/29/2014 10:19 AM, Guy Martin wrote:
> Hi team,
> Can you please consider the following commits :
> Regarding commit 333808b, the second hunk adds --selective=n to
> emerge always merge the kernel. When having two kernels in the
> livecd specs, the first build works fine but the second one fails
> because the sources are removed and not reemerged.
> Thanks, Guy

Mike Frysinger | 22 Jan 05:38 2014

[PATCH] add arm64 support

 arch/ | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)
 create mode 100644 arch/

diff --git a/arch/ b/arch/
new file mode 100644
index 0000000..f665e89
--- /dev/null
+++ b/arch/
 <at>  <at>  -0,0 +1,16  <at>  <at> 
+import builder,os
+from catalyst_support import *
+class arch_arm64(builder.generic):
+	"builder class for arm64"
+	def __init__(self,myspec):
+		builder.generic.__init__(self,myspec)
+		self.settings["CHROOT"]="chroot"
+		self.settings["CFLAGS"]="-O2 -pipe"
+		self.settings["CFLAGS"]="-O2 -pipe"
+		self.settings["CHOST"]="aarch64-unknown-linux-gnu"
+def register():
+	"Inform main catalyst program of the contents of this plugin."
+	return ({ "arm64":arch_arm64 }, ("aarch64","arm64", ))