I decided to give GitHub Pages a try so that I do not have to bother with hosting these posts elsewhere. Take-off was quite smooth but not without a few hiccups.
First I hit the dreaded “my github page doesn’t show” problem. No idea what fixed it because according to GitHub it may take 10 minutes for the page to first come online and who has that much time to test every single attempt. It must have been a combination of
Curiously, after deleting README.md later, the original index.html finally showed up just fine,
even without any<!DOCTYPE html>
in it :o
Of course, I wanted to run Jekyll locally next. So I
but native gem compilation during Jekyll installation kept failing. Maybe only an issue under WSL, or maybe generic - cannot tell. Once I figured the solution out, it was just a chore:
INSTALL = ./install
toINSTALL = install
in the Makefilemkdir -p $(RUBYARCHDIR)
whenevermake install
fails to create the gem dirmake
by hand to compile the gemgem help install
Eventually you win,
dobundle exec jekyll serve --no-watch
and tada!, you have a server on localhost:4000.
(The flag is required due to WSL polling limitations and, of course,
you also need to say OK when Windows asks whether the server can bind to the port.)
EDIT 2020/07/09: a recent Windows update borked my Win 10, so I had to redo everything in Linux. For future reference, here are the steps that worked:
install rvm - download the installer script and run it via
bash ./nvm_installer.sh stable --ruby --autolibs=0
The last option ensures that it does not ask for sudo access. If it ends up compiling ruby for you, then you need to have the requisite packages installed, of course.
source ~/.rvm/scripts/rvm
rvm use current
ruby -v
gem install bundler
gem install jekyll
(might be obviated by the github-pages gem installation later but who has time to test that…)running jekyll fails if you do not have a file named Gemfile in the top level directory of your site. I forgot to add this file to the git repo when I first got Jekyll working, so I had to recreate it with contents
gem 'github-pages', group: :jekyll_plugin
gem install github-pages
bundle exec jekyll serve
(being on real Linux, the--no-watch
option is no longer necessary)