Setting up gojekyll
My shared hosting service doesn’t like users to install their own copy of Ruby
unless they have their own virtual host – Ruby tends to be a memory hog,
especially when it’s running something like Jekyll. Fortunately, there’s an
alternative: gojekyll
, a Jekyll clone written in go
. (That’s a
programming language – it’s often called “golang” to distinguish it from the
Japanese board game.) It’s extremely fast and lightweight. My shared
hosting service doesn’t have go installed, but getting it up and running is
easy.
Here’s how:
mkdir golang # This is where go gets installed
mkdir go # This is where other go programs live
cd golang
wget https://dl.google.com/go/go1.11.linux-amd64.tar.gz
tar -xzf go1.11.linux-amd64.tar.gz
export GOHOME=$HOME/golang/go
PATH=$GOHOME/bin:$HOME/go/bin:$PATH
which go
# we don't have to set GOPATH because ~/go is the default
go get github.com/osteele/gojekyll
gojekyll --help
Total time about five minutes. It helps if you already have the necessary
setup commands in your .bashrc
file:
if [ -d $HOME/golang/go ]; then
export GOHOME=$HOME/golang/go
prependToPath $GOHOME/bin
fi
if [ -d $HOME/go ]; then
# we don't have to set GOPATH because ~/go is the default
prependToPath $HOME/go/bin
fi
The problem, from my point of view, is that it’s rather broken:
- even with pygments installed, I can’t figure out how to get syntax coloring
- next and previous are swapped for blog posts.
- some of the layout is broken, in particular the navigation in the most recent blog post
I can work around most of that, but I’d really like to get syntax coloring working, and I suspect that the layout problem reflects an underlying problem with how sass gets run. (On further investigation the layout is fixable, with a little cleanup.)