1

I am trying to install Snorby on a CentOS 6.6 machine and keep getting an issue with ruby and my Gemfile. I believe I either have to edit my Gemfile or it has something to do with an installation path. Any help would be much appreciated.

bundle exec rake snorby:setup

Error Message

The gemspec at /var/www/html/snorby/vendor/bundle/ruby/1.9.1/bundler/gems/snorby_cas_authenticatable-/devise_cas_authenticatable.gemspec is not valid. The validation error was

duplicate dependency on devise (>= 1.0.6), (>= 0) use:
add_runtime_dependency 'devise', '>= 1.0.6', '>= 0'
sebix
  • 4,175
  • 2
  • 25
  • 45
rubyhelp
  • 11
  • 2

2 Answers2

1

I got it working by adding the 1.0.6 dependency in the devise_case_authenticable gemspec file /usr/local/rvm/gems/ruby-1.9.3-p551/bundler/gems/snorby_cas_authenticatable-281a58b36368/devise_cas_authenticatable.gemspec:

if s.respond_to? :specification_version then
    s.specification_version = 3
    if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
      s.add_runtime_dependency(%q<devise>, [">= 0"])
      s.add_development_dependency(%q<ruby-debug>, [">= 0"])
      s.add_development_dependency(%q<jeweler>, [">= 0"])
      **s.add_runtime_dependency(%q<devise>, [">= 1.0.6"])**
      s.add_runtime_dependency(%q<rubycas-client>, [">= 2.2.1"])
    else
      s.add_dependency(%q<devise>, [">= 0"])
      s.add_dependency(%q<ruby-debug>, [">= 0"])
      s.add_dependency(%q<jeweler>, [">= 0"])
      **s.add_dependency(%q<devise>, [">= 1.0.6"])**
      s.add_dependency(%q<rubycas-client>, [">= 2.2.1"])
    end
  else
    s.add_dependency(%q<devise>, [">= 0"])
    s.add_dependency(%q<ruby-debug>, [">= 0"])
    s.add_dependency(%q<jeweler>, [">= 0"])
    **s.add_dependency(%q<devise>, [">= 1.0.6"])**
    s.add_dependency(%q<rubycas-client>, [">= 2.2.1"])
  end
end

and then changing

gem 'devise_cas_authenticatable',  :git => 'https://github.com/Snorby/snorby_cas_authenticatable.git'

in the Snorby gemfile in the snorby www root to

gem 'devise_cas_authenticatable'

My guess is that this will only work after if failing once, so that the devise_cas_authenticable gem is installed

jdes
  • 11
  • 1
0

That didn't work for me, instead I went to the file you mentioned:

/usr/local/rvm/gems/ruby-1.9.3-p551/bundler/gems/snorby_cas_authenticatable-281a58b36368/devise_cas_authenticatable.gemspec

But here I commented these three lines:

if s.respond_to? :specification_version then
    s.specification_version = 3
    if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
      #####s.add_runtime_dependency(%q<devise>, [">= 0"])
      s.add_development_dependency(%q<ruby-debug>, [">= 0"])
      s.add_development_dependency(%q<jeweler>, [">= 0"])
      s.add_runtime_dependency(%q<devise>, [">= 1.0.6"])
      s.add_runtime_dependency(%q<rubycas-client>, [">= 2.2.1"])
    else
      #####s.add_dependency(%q<devise>, [">= 0"])
      s.add_dependency(%q<ruby-debug>, [">= 0"])
      s.add_dependency(%q<jeweler>, [">= 0"])
      s.add_dependency(%q<devise>, [">= 1.0.6"])
      s.add_dependency(%q<rubycas-client>, [">= 2.2.1"])
    end
  else
    #####s.add_dependency(%q<devise>, [">= 0"])
    s.add_dependency(%q<ruby-debug>, [">= 0"])
    s.add_dependency(%q<jeweler>, [">= 0"])
    s.add_dependency(%q<devise>, [">= 1.0.6"])
    s.add_dependency(%q<rubycas-client>, [">= 2.2.1"])
  end
end

Worked well afterwards.

masegaloeh
  • 17,978
  • 9
  • 56
  • 104