Jekyll is simple static site generator with Ruby. It takes html templates and posts written in Markdown to generate static website which is ready to deploy on your favorite server.

I use Jekyll for my blog, somehow I prefer to use RVM (Ruby Version Manager) instead of installing Ruby directly. It much easier to maintaince and trouble shotting if incompatible gems or ruby happen.

Ok, you need some package installed because some version of ruby binary are not available for Fedora via RVM, for example below:

$ rvm install ruby
Searching for binary rubies, this might take some time.
No binary rubies available for: fedora/30/x86_64/ruby-2.6.3.
Continuing with compilation. Please read 'rvm help mount' to get more information on binary rubies.

So, rvm will help you to compile the package on your system but unfortunately RVM unable to properly download this package automatically. So let install this package manually.

$ sudo dnf install autoconf automake bison gcc-c++ libffi-devel libtool libyaml-devel readline-devel sqlite-devel zlib-devel openssl-devel

We are going to install RVM

$ gpg2 --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
$ \curl -sSL https://get.rvm.io | bash -s stable
$ rvm install ruby

To start using RVM you need to run source $HOME/.rvm/scripts/rvm in all your open shell windows in rare cases you need to reopen all shell windows.

$ rvm -v
rvm 1.29.8 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io]

Next, install gems for Jekyll and Bundler

$ gem install jekyll
$ gem install bundler 

Done! You may install new Jekyll site and test it locally :)

Extra: Inside Jekyll project directory, run bundler update --bundler && bundler install to update and install the gems needed, then use bundle exec jekyll serve -d public --incremental --verbose --watch to run Jekyll on localhost.