Installing Jekyll on Arch/Manjaro is a little bit tricky. Jekyll built on top of Ruby Gems. Ruby gems in Arch/Manjaro Linux can be installed per user or system wide.
The official guidance, do not apply well in Arch/Manjaro Linux. So we need a little more detail, on how we suppose todo it in Arch/Manjaro Linux.
This article choose the system wide gems. Since Jekyll is not available in the official repository, there are a few more steps to utilize AUR package.
Install Ruby
$ sudo pacman -S ruby
$ gem list
Install Jekyll
The official site
Gems per User
$ gem install jekyll
This will result
$ jekyll
bash: jekyll: command not found
I will explore this later. So I decide to trash my ~/.gem directory
System Wide Gems
We will install ruby-jekyll with all their dependecies using yaourt. If you have trouble with yaourt, you can 1install them separately.
This ruby-jekyll package require ruby-sass.
Arch Linux
$ yaourt ruby-sass
Manjaro
It is in community repository
$ sudo pacman -S ruby-sass
$ yaourt ruby-jekyll
Running Jekyll
Test Installation
Let’s see if we have done the installation properly.
$ jekyll -v
There is no manual page in command line for jekyll. So this is all we got:
$ jekyll --help
Jekyll Server
Prepare your directory. And run Jekyll in your directory.
$ cd /media/Works/Development/
$ mkdir test-jekyll
$ cd test-jekyll
$ jekyll build
$ jekyll serve
Since your diretory is currently empty. This will run empty site.
You should see the site in your favorite browser runnng on port 4000.
- http://localhost:4000/
Generate blog
Clear all files, and let’s generate site skeleton.
$ jekyll new .
$ ls -l
You will see, some new directory and files required to run a simple Jekyll Blog.
Jekyll Plugin
Let’s go further. My site is using jekyll-paginate.
In _config.yml
gems:
- jekyll-paginate
If you run Jekyll serve on it, it will complain about dependency error.
All we need is to install standard plugin using yaourt.
$ yaourt jekyll-paginate
Now you can have your Jekyll Site running smoothly.
You can check on port 4000.
Thank you for reading.