When installing the Chirpy theme through RubyGems.org, Jekyll can only read files in the folders /_data
, /_layouts
, /_includes
, /_sass
and /assets
, as well as a small part of options of the /_config.yml
file from the theme's gem. If you have ever installed this theme gem, you can use the command bundle info --path jekyll-theme-chirpy
to locate these files.
The Jekyll team claims that this is to leave the ball in the user’s court, but this also results in users not being able to enjoy the out-of-the-box experience when using feature-rich themes.
To fully use all the features of Chirpy, you need to copy the other critical files from the theme's gem to your Jekyll site. The following is a list of targets:
.
├── _config.yml
├── _plugins
├── _tabs
└── index.html
To save you time, and also in case you lose some files while copying, we extract those files/configurations of the latest version of the Chirpy theme and the CD workflow to here, so that you can start writing in minutes.
Follow the instructions in the Jekyll Docs to complete the installation of the basic environment. Git also needs to be installed.
Sign in to GitHub and use this template to generate a brand new repository and name it USERNAME.github.io
, where USERNAME
represents your GitHub username.
Then clone it to your local machine and run:
$ bundle
Please see the theme's docs.
This work is published under MIT License.
To set up a nix environment, run bash tools/nix-prepare
and then nix-shell
. You may need to edit the Gemfile.lock (as indicated in the Debugging section).
This repo comes with an example local.Gemfile.lock file for reference. Note that x86_64* strings are pulled off of certain gems and that the runtime system is set to "ruby"
Command to create new posts: bundle exec jekyll post "Joust" --timestamp-format "%Y-%m-%d %H:%M:%S %z"
Run locally bundle exec jekyll s
Root location of images https://raw.githubusercontent.com/OulipianSummer/oulipiansummer.github.io/main/assets/img/portoflio/
Debugging
- Make sure tags are lower case
- Issues with sass-embedded or x86_64 getting appended to Gemfile.lock, great article
https://blog.yuribocharov.dev/posts/2023/08/09/developing-a-jekyll-site-on-nixos
- Another good article with some general notes on how to set up the environment with bundix.
https://matthewrhone.dev/jekyll-in-nixos
- Try not to use a gemspec file on nix! This repo does come with one, but the Gemfile doesn't use it because bundix doesn't know how to handle gemspecs yet.
- Make sure x86_64 is not appended to any gems.
- Run using bundix (
nix-shell -p bundix
and thenbundix -l
to generategemset.nix
) - Run using a newer version of Ruby (3.2 preferred)