Giter VIP home page Giter VIP logo

Comments (5)

derekbrokeit avatar derekbrokeit commented on May 23, 2024

I just wanted to add that brew seemed to work acceptably with the old version of brew when I modified global.rb to have RUBY_PATCHLEVEL=0 (just to give it a value). However, I didn't actually play with it too much since I ended up installing my own ruby193 to get other things working. At the time, I didn't realize the requirement for HOMEBREW_CACHE to be set, which is why I said that I needed a new version of ruby.

I am actually quite surprised at how few formulas need modification to install properly, there is definitely great potential in this project! It would be good to widdle down the OSX specific stuff in Library/Homebrew first, since many strange errors occur on various function calls such as brew --config.

from legacy-linuxbrew.

MikeMcQuaid avatar MikeMcQuaid commented on May 23, 2024

@scicalculator Issues like this would be best answered with pull requests if possible.

from legacy-linuxbrew.

derekbrokeit avatar derekbrokeit commented on May 23, 2024

@MikeMcQuaid normally, I would agree, but I am not sure if we already know the minimum ruby requirements or perhaps we want to make homebrew-core 1.8.x compatible.

I decided to go through some testing with my older version of ruby ruby 1.8.5 (2006-08-25) [x86_64-linux] to see if there was a way to make homebrew cross platform enough to work on much older versions of ruby.

Known limitations to using brew with 1.8.5:

  • RUBY_PATCHLEVEL is not defined
  • instance_variable_defined? is not defined
  • pathname.rb:223 - 'Digest::SHA2' => 'Digest::SHA256' is necessary

If it is desirable to make homebrew more compatible with 1.8.5, I would be glad to go in and try to update the core, but for now, I have not changed the library.

Unfortunately, there seem to be a number of ruby defined functions/variables being used that would need to be explicitly fixed in the Homebrew library. Because of the added junk that might be necessary, I thought it would be best to simply state that 1.8.6 is a minimum requirement. However, I am having other troubles on 1.8.6 and I am not sure if this is a ruby problem or not. However, after installing ruby193, brew works very well on my system after fixing the compiler optimizations.

Also, #3 makes me think that ruby 2.0 may not work, but I have not tested this myself. If this was patched then it would be best to simply say anything newer than 1.8.6.

from legacy-linuxbrew.

MikeMcQuaid avatar MikeMcQuaid commented on May 23, 2024

Sure. I think if there are non-invasive patches to Homebrew that make it work they'd be accepted. However instance_variable_defined? seems a pretty big problem here. Stating 1.8.6 as required in the README (and making a pull request to edit the README) would be great if you can!

from legacy-linuxbrew.

mistydemeo avatar mistydemeo commented on May 23, 2024

I have these changes made in Tigerbrew for Ruby 1.8.2 already. However, I'm not sure how much it's worth making these changes for Homebrew/Linuxbrew. Tigerbrew is in a situation where changing the Ruby version isn't really practical, and a few features have to be sacrificed to work with such an old Ruby version.

from legacy-linuxbrew.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.