Where to get versions suitability sheet of neat and bourbon? - sass

I want so use libsass for compiling my scss (considering positive testimonials about it's speed against ruby native compiler). The compiling ends with an error, and my searching have driven me here: (my bourbon was 4.x): https://github.com/sass/libsass/issues/365. the current version of libsass cannot compile bourbon 4.x. and the issue is closed. Okay, lets install bourbon 3.x.
gem install bourbon -v 3
and then
gem install neat
and the damn thing installs the latest neat (1.7.x) and bourbon 4.x as a dependency for it (along with already installed bourbon 3.x). I cannot make it install neat precisely for bourbon 3.x, and I couldn't ever find any info about which neat version is compatible with bourbon 3.x. Not on bourbon.io, not on github.com, not on stackoverflow.com, not anywhere... Maybe it's just a matter of SASS version, but why gem installs the latest bourbon then? If there is already one in the system? Or maybe there is any gem option exists which tells gem to lower the version of requested package, if dependent packages versions indicate so?

The compatibility issues that Bourbon had with Libsass got sorted out quite some time ago, and that thread is from last year.
Do you mind posting your compiling error?
If you try to install a gem without a version, it will grab the newest one, so you would want to install a version of Neat that required a 3.x version of Bourbon. I don't think that should be necessary though if we can solve your compiling problem. Those commands also install the gems to your local system, rather than in your project directory, so you will want to use a Gemfile (for Ruby projects) or something like package.json (for npm projects).

Related

Bundler could not find compatible versions for gem "sysrandom"

After installing PentestBox for installing penetration testing tools on windows 10 It was working great but some of the tools was outdated like metasploit, so I tried updating all using PentestBox Update Manager, but after finishing the update msfconsole keeps giving me this error
Bundler could not find compatible versions for gem "sysrandom":
In Gemfile:
metasploit-framework x86-mingw32 was resolved to 5.0.0, which depends on sysrandom x86-mingw32
Could not find gem 'sysrandom', which is required by gem 'metasploit-framework', in any of the sources.
and i literally suck in ruby language on general so what should i do ?
The version of metasploit you linked to doesn't appear to have been updated in a few years. It doesn't list sysrandom as a dependency in the Gemfile.
There's a newer version which does have sysrandom as a dependency, here:
https://github.com/rapid7/metasploit-framework/blob/master/metasploit-framework.gemspec#L106
I'm not sure why pentestbox is using such an old version, but I'm assuming the "update" actually updates to the rapid7 version of metasploit (because it's looking for sysrandom which only exists there).
There are a few things you can try:
bundle install should install all the dependencies (without using the console tool built for pentestbox)
Deleting the Gemfile.lock and running bundle install. I don't usually recommend this but if there seems to be a version mismatch somewhere and sometimes this resolves dependencies errors. You should be able to re-check this file out again (assuming it's versioned locally)
If you can post the git commit hash of the metasploit version you've downloaded that might help provide additional suggestions for resolving.

Multiple versions of a gem

I'm currently using the gems scss-lint and compass; however scss-lint uses sass#3.3.0.rc.1 and this version isn't compatible with compass.
I have sass (3.3.0.rc.1, 3.2.12) installed, so is there a way I can essentially separate the two sass versions so that I can use compass and scss-lint side by side?
Due to the way the SASS dependency is set on both of those projects you cannot run both gems within the same gem set. If you are using scss-lint to do command line linting though, you could just have each of these under separate gem sets and switch between the two as needed. This does not preclude automation.
So the way I got around this was by installing the latest alpha version of compass. This meant that I can now use the two gems together :)

Best install flow for a new rvm/ruby/pg/rails setup

I've reformatted my Mac Mountain Lion machine due to lots errors in rails development, broken links, outdated versions, etc, etc. I'm trying to install RVM, Ruby, Postgresl and Rails. I've installed xcode command line tools and I'm looking for recommendations on which order to install the rest to reduce the likelihood that one can't find the other.
Should I install homebrew before any of these? I've read RVM has a new package manager with it that will do most of that stuff, even install homebrew - and not being a unix expert that is appealing. Does anyone have any experience with this?
Also would anyone recommend installing postgres before RVM or after RVM/Ruby/Rails is set up?
Xcode with command line tools
Homebrew
Git
RVM
Ruby
Rails
Postgres
You may at some point get a WARNING form Nokogiri about it being built with one version of LibXML but dynamically loaded with another. You are pretty much stuck with whatever version is being dynamically linked because the MacOS depends on it and it is loaded during boot and Nokogiri needs to be dynamically linked. If you are starting new with Mountain Lion you should be OK. If not, there are dozens of variations of solutions that all amount to compiling Nokogiri against whatever version of LibXML you have in your OS. Hopefully all you need to do if you do run into this problem at some point is
bundle exec gem pristine nokogiri

Ruby, Versions, Gems, Versions and more, Oh My

Apologies for the topic title, couldn't resist.
Basically, For no reason whatsoever apart from trying out different things. I want to implode RVM and try out rbenv. Nothing against RVM, just want to try different peoples software and try different things out.
I can get rid of RVM and install rbenv no problem. Could you guys confirm a few things for me.
Firstly, if I do the above, and then install a few different ruby versions. I know I can place a .ruby-version file in a projects root directory to specify a specific ruby version but then when I say gem install <gemname> I take it that is installed globally for that ruby version.
If I then use bundler per project to manage what gems are used and I specify a gem version, what happens if the version specified in the lock file is different to the currently installed version and what happens if it's vice versa?
I just need a bit of clarification on what's doing what in regards to ruby, versions, gems and their versions.
One of the (many) lovely things about rbenv is that you can so easily look right at your ruby installation to see what's going on. For example, on my machine I can open ~/.rbenv and there's versions containing my ruby installations, such as 1.9.3-p327. Opening that, I can keep drilling down to see my gems installed for that version of ruby (in ~/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems). It is then trivial to run gem list or gem install somegem and confirm that what's being affected is this very collection of gems - if this is the current ruby (set in rbenv global and starred in rbenv versions).
In short, everything about your system thinks that ruby means this version of ruby and that its library is this library.
For Bundler, you'll need to install rbenv-bundler. A nice tutorial (easily found with Google) is here: http://dan.carley.co/blog/2012/02/07/rbenv-and-bundler/

Easiest way to get Compass/Sass running on OSX

I first had to follow the instructions here to make sure that I had Ruby and Gems installed. Then I installed compass using Gems.
Then I tried to run compass and had some errors...
"Warning: Unable to load CarbonCore.
FSEvents will be unavailable compass"
I found a solution here, but it required me to install RVM via gems first and then following the instructions in the link above.
Is there an easier way to setup/run compass/sass on OSX?
This problem is described in the compass issue tracker. It's not a showtopper because it falls back to another (less efficient) method of watching for file changes that doesn't depend of fsevents. Still, it would be nice to fix, right?
Since you compiled your own version of ruby, you need to enable shared libraries for it as well. This is described on the rubycocoa getting started page.
More details can be found in this google groups discussion, particularly the advice from Brandon Mathis.
Installing last version of Compass gem (0.11.5) seems to solve the problem:
gem install compass
You have to update your gems:
sudo gem update –system

Resources