• PROS:
    • Github / Gitlab Pages compatible
      (host your static blog on Github )
    • all gems embedded
      (good for migration / reinstallation / testing in local)
    • create easily new post with Octopress (embedded too)
  • CONS:
    • bad performance for generating static pages
      with big blogs (unlike with Hugo)
    • made in Ruby
    • CLI addicted :)

Install in Github Pages mode

  • use bundle 2.0
  • all gems are embedded in repository’s ./vendor/bundle folder
1git clone git@github.com:mmistakes/minimal-mistakes.git myrepo.github.io
2cd myrepo.github.io/
3rm Gemfile
4bundle init
5bundle install --path vendor/bundle              # embedded gems
6bundle add github-pages --group=jekyll_plugins
7bundle add minimal-mistakes-jekyll
8bundle exec jekyll serve --watch                 # run in reload mode

Add new content with Octopress

  • automate the creation of new posts and pages for easier management
1bundle add jekyll-paginate octopress
2bundle exec octopress new post "Blogging with Minimal Mistakes Jekyll theme"
3# TIP: alias for octopress
4cat << EOF >> $HOME/.bashrc
5alias octopress='bundle exec octopress'
6EOF

Deploy to Github Pages

1# NEED: create myrepo.github.io repository in your Github repo
2cd myrepo.github.io
3git remote set origin git@github.com:myrepo/myrepo.github.io.git
4git remote add upstream git@github.com:mmistakes/minimal-mistakes.git
5git add .
6git commit -am "My first post"
7git push -u origin --all
8xdg-open https://myrepo.github.io  # access to your personal blog
  • on your repository root directory:
    • set your custom domain
1cat <<EOF> CNAME
2mydomain.net
3EOF
4sed -ri 's#^(url.*: ).*#\1"https://mydomain.net"#' _config.yml
  • on https://github.com/myrepo:
    • Settings tab # Github pages > Custom domain : mydomain.net
    • Save
  • on your DNS provider:
    • Set A records with:
mydomain.net.             26735   IN      A       185.199.108.153
mydomain.net.             26735   IN      A       185.199.109.153
mydomain.net.             26735   IN      A       185.199.110.153
mydomain.net.             26735   IN      A       185.199.111.153

Sources