Why can't I build a Jekyll site locally with this downloaded theme?

New to Ruby/Jekyll, but I am trying to install Jekyll locally on my Windows machine, and build a site with a downloaded theme. I am really struggling to get it to run. The theme I am trying to use is the Contrast theme. The steps I have taken are as follows:

  1. Following the instructions, first installed Ruby using the Ruby Installer here (choosing version Ruby+Devkit 3.3.7-1 [x64]). At the end of the installation, ran the ridk install option, and installed the MSYS2 base installation and the MSYS2 and MINGW development toolchain.

  2. In a command prompt, ran gem install jekyll bundler, which results in the following:

>bundler -v
Bundler version 2.6.7

>gem -v
3.5.22

>jekyll -v
jekyll 4.4.1 
  1. Downloaded the Contrast theme as a zip file and extracted it. This results in the following files:
myuser@mymachine MINGW64 ~/contrast-master
$ ls
_config.yml  _includes/  _posts/  404.html      assets/  Gemfile.lock  README.md
_data/       _layouts/   _sass/   archive.html  Gemfile  index.html    UNLICENSE.txt
  1. Navigated to the theme’s local directory with a command terminal, and ran bundler install, which installed a series of required gems:
C:\Users\myuser\contrast-master>bundler install

Fetching gem metadata from https://rubygems.org/...........
Resolving dependencies...
Fetching rexml 3.4.1
Fetching rouge 3.30.0
Fetching unicode-display_width 1.8.0
Fetching sassc 2.4.0
Installing rexml 3.4.1
Installing unicode-display_width 1.8.0
Installing rouge 3.30.0
Fetching terminal-table 2.0.0
Installing sassc 2.4.0 with native extensions
Installing terminal-table 2.0.0
Fetching jekyll-sass-converter 2.2.0
Installing jekyll-sass-converter 2.2.0
Fetching jekyll 4.2.2
Installing jekyll 4.2.2
Fetching jekyll-feed 0.17.0
Installing jekyll-feed 0.17.0
Bundle complete! 3 Gemfile dependencies, 30 gems now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
  1. Tried to build the jekyll site using bundle exec jekyll build, but it failed with a series of messages:
C:\Users\myuser\contrast-master>bundle exec jekyll build

C:/Ruby33-x64/bin/jekyll:25: warning: csv was loaded from the standard library, but will no longer be part of the default gems starting from Ruby 3.4.0.
You can add csv to your Gemfile or gemspec to silence this warning.
C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/safe_yaml-1.0.5/lib/safe_yaml/load.rb:22: warning: base64 was loaded from the standard library, but will no longer be part of the default gems starting from Ruby 3.4.0.
You can add base64 to your Gemfile or gemspec to silence this warning.
C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/liquid-4.0.4/lib/liquid.rb:72: warning: bigdecimal was loaded from the standard library, but will no longer be part of the default gems starting from Ruby 3.4.0.
You can add bigdecimal to your Gemfile or gemspec to silence this warning.
                    ------------------------------------------------
      Jekyll 4.2.2   Please append `--trace` to the `build` command
                     for any additional information or backtrace.
                    ------------------------------------------------
C:/Ruby33-x64/lib/ruby/3.3.0/logger.rb:384:in `level': undefined method `[]' for nil (NoMethodError)

    @level_override[Fiber.current] || @level
                   ^^^^^^^^^^^^^^^
        from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/jekyll-4.2.2/lib/jekyll/log_adapter.rb:45:in `adjust_verbosity'
        from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/jekyll-4.2.2/lib/jekyll/commands/build.rb:27:in `process'
        from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/jekyll-4.2.2/lib/jekyll/command.rb:91:in `block in process_with_graceful_fail'
        from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/jekyll-4.2.2/lib/jekyll/command.rb:91:in `each'
        from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/jekyll-4.2.2/lib/jekyll/command.rb:91:in `process_with_graceful_fail'
        from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/jekyll-4.2.2/lib/jekyll/commands/build.rb:18:in `block (2 levels) in init_with_program'
        from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `block in execute'
        from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `each'
        from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `execute'
        from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/mercenary-0.4.0/lib/mercenary/program.rb:44:in `go'
        from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/mercenary-0.4.0/lib/mercenary.rb:21:in `program'
        from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/jekyll-4.2.2/exe/jekyll:15:in `<top (required)>'
        from C:/Ruby33-x64/bin/jekyll:25:in `load'
        from C:/Ruby33-x64/bin/jekyll:25:in `<main>'

Can anyone help see why this is not building, and help me fix it?

googling that comes up with:

Did you see that?

I would guess the issue is jekyll itself not the theme? can you create a new jekyll site successfully? jekyll new my-site in a different directory.

The error is pointing to the following line:

C:/Ruby33-x64/lib/ruby/3.3.0/logger.rb:384

which is actually the built-in code for the Logger module that gets installed as part of Ruby itself. I am surprised that this code is still part of Ruby 3.3.7 since that line of code is a bit outdated.

Anyways, the fix for this is to simply add gem "logger" to your Gemfile, run bundle install and you should be good to go.