Isaz
Isaz

Reputation: 405

Jekyll theme could not be found

Following the jekyll documentation found here: https://jekyllrb.com/docs/themes/ I was trying to install and change a gem based theme so I have chosen the jekyll-theme-primer for this and I've run the following command and instructed under the https://jekyllrb.com/docs/themes/#installing-a-theme section:

gem "jekyll-theme-primer"

and got this error:

ERROR:  While executing gem ... (Gem::CommandLineError)
    Unknown command jekyll-theme-awesome

After doing some research I've found that I should have added install to my query as described here: While executing gem, unknown command

After running this:

gem install "jekyll-theme-primer"

I successfully installed the primer gem based theme and got the following confirmation:

Successfully installed jekyll-theme-primer-0.5.2
Parsing documentation for jekyll-theme-primer-0.5.2
Done installing documentation for jekyll-theme-primer after 0 seconds
1 gem installed

First question: Was the official documentation incorrect or am I missing something?

I proceeded to run the bundle install command:

bundle install

and replaced my current minima theme from the _config.yml with the jekyll-theme-primer by adding/replacing this line:

theme: jekyll-theme-primer

Now when I tried to run either the:

jekyll serve

or the:

bundle exec jekyll serve

commands, I get the following error:

jekyll 3.5.2 | Error:  The jekyll-theme-primer theme could not be found.

So why it can't find the gem theme if the installation was successful?

Upvotes: 30

Views: 21995

Answers (1)

ashmaroli
ashmaroli

Reputation: 5444

From what I gather, it looks like you did not add jekyll-theme-primer to your Gemfile, but instead simply executed gem "jekyll-theme-primer" in the terminal and later installed the gem correctly after encountering the Gem::CommandLineError

So, in short, simply follow the steps below:

  • Add the theme-gem to your Gemfile
  • add the theme to your _config.yml (correctly done already..)
  • Run: bundle install (just to make sure Bundler is able to use it)
  • Run: bundle exec jekyll serve

Adding a theme-gem to a Gemfile:

Open your current Gemfile in a text-editor, and replace entire line gem "minima", "~> 2.0" with your theme gem. i.e. gem "jekyll-theme-primer", "~> 0.4"

Upvotes: 34

Related Questions