wesley tanaka

Fast, Low Memory Drupal 6 System Module

A Drupal 5 version of this module is also available.  If you would like this patch to be committed to Drupal core, please do not leave a comment on this page—please instead add your comment to Drupal issue #455092.

This is a drop-in replacement for the system.module of Drupal 6.37 which makes your Drupal 6 site use less memory and may even make it faster. A test I ran in a development environment with a stock Drupal 6 installation suggested that I got:

Light Vader


I'm not the only one who heard it as "Dark Vader" during childhood.

. . .

R> What costume did you get?

W> Transformers

R> Is it an Autobot?    [NB: We don't have any exposure at home to Transformers; The things he learns from school!]

W> Yes

R> I like Autobots, and I like superheroes, and I like Star Wars best.  [NB: No real exposure to Star Wars either]

[a short time later in the car not too far away....]

Installing Ubuntu onto a NFS mount


It is possible to install Ubuntu onto a NFS networked filesystem directory, which you might want to do in order to boot that copy of Ubuntu over the network on a diskless thin client computer.

Set up the base filesystem:

Booting Ubuntu from a network filesystem


It is possible to boot Ubuntu over the network on a computer with no local hard drive. You need:

  • A DHCP server that supports PXE
  • A TFTP server with enough space to host the kernel binary
  • An NFS server with enough space to host the root filesystem

The steps involved are:

Building debian .deb packages from source


These are my notes on building debian packages from source.

The steps in preparing a binary debian packages are roughly:

  1. Upstream source code (e.g. .tar.gz)
  2. Unpacked source code directory
  3. Unpacked source code directory containing a debian/ subdirectory
  4. Debian prepared source code (.orig.tar.gz) containing the debian/ directory
  5. Source package (.dsc)
  6. Binary package (.deb)

Steps without using ubuntu bzr:

quilt cheat sheet / quick reference

quilt is a command line tool that allows you to push and pop a given list of patch files onto a source tree, as if there were a stack of patches.

The list of patches is represented by a directory containing individual patch files. The directory also contains a file called series with one patch filename per line (first to be applied at the top of the file).

The state of the patch stack is maintained in a directory called .pc/

LXC command cheat sheet / quick reference

lxc-create -t download -n mycontainer -- -d ubuntu -r trusty -a amd64
Create an (unstarted) container. Other architectures include: i386
lxc-start -n mycontainer -d
Boot up a container -- excluding -d will also run lxc-console
lxc-attach -n mycontainer
Execute a root shell inside of a started container
lxc-console -n mycontainer
Open a login screen inside of a started container
lxc-stop -n mycontainer
Shut down a started container

Long boring physics lecture #17


During dinner, my son asks me why I'm shaking the ice around in my glass.

So I launch into an explanation about how 100 degrees is very very super super duper duper hot, 0 degrees is ice, 25 degrees is something warm, like his ham.

"But my ham is cold."

Okay, maybe your ham is 15 degrees.

And for good measure, one more example is that Ryan is 37 degrees.

"I'm 37???"

Nobody expects a velociraptor for breakfast


W> You ready for breakfast?

R> Yes. . . . . . . Velociraptor.

[UPDATE: . . . on the following school day]

W> What do you want for breakfast?

R> Mmmm . . .

W> Cereal with milk?

R> . . .

W> Prunes??

R> . . . . . . . Diplodocus!

Changing Synology default SSH $PATH

By default, my Synology DiskStation NAS gives non-interactive shells a path of:


/opt/bin is not included so rsync, git and other programs installed with ipkg don't work.

One way to add /opt/bin to the default path to fix git and rsync is:

Syndicate content
by Wesley Tanaka