Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Jekyll theme could not be found

Tags:

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?

like image 871
Isaz Avatar asked Sep 23 '17 14:09

Isaz


People also ask

How does the Jekyll theme work?

How do themes work? # Jekyll themes allow you to contain all the templating and presentational code within a Ruby gem, much in the same way Jekyll plugins are contained. This means the design can be easily applied to a site, used on multiple sites, and the site codebase isn't cluttered by the presentational layer.

What is the default GitHub Pages theme?

The Primer theme. Primer is a Jekyll theme for GitHub Pages. You can preview the theme to see what it looks like, or even use it today.


1 Answers

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"

like image 71
ashmaroli Avatar answered Sep 21 '22 05:09

ashmaroli