You are not logged in.
I am trying to install jekyll (the ruby-based static CMS), but get I this exception every time I try to launch it.
I am following the instruction on the wiki, which basically ask to
1. install ruby (I had it installed already)
2. update the installation with $> gem update
3. use gem to install jekyll with $> gem install jekyll
Installation went well and no problems were reported.
However, when I try to run jekyll i get the following
stefano@gorgias Projects $ jekyll
Traceback (most recent call last):
2: from /usr/bin/jekyll:22:in `<main>'
1: from /usr/lib/ruby/2.5.0/rubygems.rb:308:in `activate_bin_path'
/usr/lib/ruby/2.5.0/rubygems.rb:289:in `find_spec_for_exe': can't find gem jekyll (>= 0.a) with executable jekyll (Gem::GemNotFoundException)Looking at the code, it looks like ruby does not have the path set correctly, since it cannot find the gem I just installed. The problem seems to be rather common, as there are many discussions online, and even an old thread here on the forums. Common suggestions (mostly quite old, though), were to
- update gem
- move /usr/lib/ruby/site_ruby/ out of the way and update gem
- restore gems with "gem pristine --all
None of those worked.
I get the same exception when trying to run similar gems, such as bundler, which suggest the issue is gem-related and not jekyll-related.
Any suggestions?
Last edited by stefano (2018-03-28 22:56:47)
Offline
Does the AUR package work? Or the quarry repository?
Last edited by eschwartz (2018-03-28 22:22:58)
Managing AUR repos The Right Way -- aurpublish (now a standalone tool)
Offline
I was eventually able to solve the issue by:
1. Uninstalling jekyll and bundler with gem (it turns out I had two versions of both, for some reasons)
2. Manually removing /usr/bin/jekyll and /usr/bin/bundler, which gem should have removed (it asked), but didn't
3. Going through several iterations of installing jekyll and ruby-bundler from AUR.
I had to iterate several times because there were strange failures on the dependencies. For instance, the dependency ruby_http_parser.rb failed because it claimed that its dependency ruby-benchmark_suite did not exist in AUR (it does). Installing the package ruby-http_parser.rb on its own worked, instead. There were also other issues having to do with ruby executables and gems that gem should have removed but did not.
Eventually, it worked. I sure would like to know why using gem install did not, but I am not going to complain.
Marking as solved
Offline
Another way to get jekyll tool at your computer is to install `ruby-jekyll` package from quarry repository https://wiki.archlinux.org/index.php/Un … ies#quarry
Read it before posting http://www.catb.org/esr/faqs/smart-questions.html
Ruby gems repository done right https://bbs.archlinux.org/viewtopic.php?id=182729
Fast initramfs generator with security in mind https://wiki.archlinux.org/index.php/Booster
Offline