[DRE-maint] Bug#942596: jekyll and required bundles

ydirson at free.fr ydirson at free.fr
Sun Apr 19 17:28:24 BST 2020


Trying Jekyll for the first time, I get hit by the same issue.

Indeed this flag is a good start, but afterwards:

1. we have to gather we should change the Gemfile to use:

 source "file:///usr/lib/ruby/vendor_ruby"

2. we get hit by missing bundles, that should surely be added as Recommends:
(and it is a bit painful, as I'm testing using "bundle outdated" which only
complains one missing package at a time).  I could install the following:

* jekyll-theme-minima
* ruby-tzinfo

But then the following gem is missing, and apparently not available in Debian:

* tzinfo-data

I tried to remove it from the Gemfile, and the next problem is:

 Could not find gem 'jekyll (~> 3.8.6)' in any of the gem sources listed in your Gemfile.

... which is quite unfortunate, as obviously the Debian package is installed.


So it seems we cannot make use of full-local gems yet.  But back to the https source,
the install also fails to complete:

$ bundle install --path vendor/bundle
[DEPRECATED] The `--path` flag is deprecated because it relies on being remembered across bundler invocations, which bundler will no longer do in future versions. Instead please use `bundle config set path 'vendor/bundle'`, and stop using this flag
Fetching gem metadata from https://rubygems.org/...........
Fetching gem metadata from https://rubygems.org/.
Resolving dependencies...
Fetching public_suffix 4.0.4
Installing public_suffix 4.0.4
Fetching addressable 2.7.0
Installing addressable 2.7.0
Using bundler 2.1.4
Fetching colorator 1.1.0
Installing colorator 1.1.0
Fetching concurrent-ruby 1.1.6
Installing concurrent-ruby 1.1.6
Fetching eventmachine 1.2.7
Installing eventmachine 1.2.7 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    current directory: /home/yann/perso/blog/bar/vendor/bundle/ruby/2.7.0/gems/eventmachine-1.2.7/ext
/usr/bin/ruby2.7 -I /usr/lib/ruby/2.7.0 -r ./siteconf20200419-2300959-b7mzat.rb extconf.rb
mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h

You might have to install separate package for the ruby development
environment, ruby-dev or ruby-devel for example.

extconf failed, exit code 1

Gem files will remain installed in /home/yann/perso/blog/bar/vendor/bundle/ruby/2.7.0/gems/eventmachine-1.2.7 for inspection.
Results logged to /home/yann/perso/blog/bar/vendor/bundle/ruby/2.7.0/extensions/x86_64-linux/2.7.0/eventmachine-1.2.7/gem_make.out

An error occurred while installing eventmachine (1.2.7), and Bundler cannot continue.
Make sure that `gem install eventmachine -v '1.2.7' --source 'https://rubygems.org/'` succeeds before bundling.

In Gemfile:
  minima was resolved to 2.5.1, which depends on
    jekyll-feed was resolved to 0.13.0, which depends on
      jekyll was resolved to 3.8.6, which depends on
        em-websocket was resolved to 0.5.1, which depends on
          eventmachine



Now it I want to take the hint and use `gem install eventmachine -v '1.2.7' --source 'https://rubygems.org/'`, after following
the recommendation to do `bundle config set path 'vendor/bundle'`, that just seems to ignore the setting:

$ gem install eventmachine -v '1.2.7' --source 'https://rubygems.org/'
ERROR:  While executing gem ... (Gem::FilePermissionError)
    You don't have write permissions for the /var/lib/gems/2.7.0 directory.

... and it looks like `--source` and `--path` are incompatible anyway, if I use both, whatever the order, the second option
is reported as "Unknown switches"


Being quite a stranger to ruby things (which is usually a good starting point for validating a user documentation ;),
all this is extremely confusing :)


For a start, you could include a step-by-step instruction sheet to make use of jekyll in Debian.


Best regards,
-- 
Yann



More information about the Pkg-ruby-extras-maintainers mailing list