Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial support for Panther #683

Open
wants to merge 1 commit into
base: go
Choose a base branch
from
Open

Initial support for Panther #683

wants to merge 1 commit into from

Conversation

larb0b
Copy link

@larb0b larb0b commented May 13, 2020

This adds initial support for Panther.

One would be able to curl -fsSkL raw.github.com/mistydemeo/tigerbrew/go/install_panther | sudo sh - and tigerbrew should be installed.

Further than just installing tigerbrew, install_panther installs tar 1.15 into /usr/local (tar builtin to Panther doesn't support --strip) and ruby 1.8.5 into /System/Library/Frameworks/Ruby.framework/Versions/Current (Panther has no Ruby in there by default at all, but tigerbrew shebangs scripts with that Ruby in numerous places). It also creates a symlink from /System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/ruby to /usr/local/bin/ruby.

@larb0b larb0b force-pushed the go branch 4 times, most recently from c7baa03 to 4a0487c Compare May 14, 2020 01:14
@larb0b
Copy link
Author

larb0b commented May 14, 2020

Note that even with this brew still seems to want to use /usr/bin/ruby at least when it's initially run.

@larb0b larb0b force-pushed the go branch 11 times, most recently from 7be54e5 to 9515315 Compare May 14, 2020 02:58
@larb0b larb0b marked this pull request as draft May 14, 2020 03:07
@larb0b larb0b marked this pull request as ready for review May 14, 2020 03:19
@larb0b
Copy link
Author

larb0b commented May 14, 2020

I'm now able to get as far as

/usr/local/bin/brew: line 219:  7906 Trace/BPT trap          "./$VENDOR_VERSION/bin/$VENDOR_NAME" --version >/dev/null 2>&1
Error: Failed to install vendor ruby.
Error: Failed to install vendor Ruby.

if I symlink /usr/local/bin/ruby to /usr/bin/ruby.

@mistydemeo
Copy link
Owner

This is amazing, thank you! 🙌🏻

I'm now able to get as far as

The vendor Ruby is built for Tiger, so I'm not surprised it doesn't run on Panther. We might have to build a new Ruby just for Panther in order to get something that runs.

There might be a few shebangs that need work to ensure everything runs using the vendored Ruby. This wasn't a huge issue on Tigerbrew because a lot of the most basic code has been written to support 1.8.2, but I think that stuff should get fixed up for sure.

@larb0b
Copy link
Author

larb0b commented May 14, 2020

There might be a few shebangs that need work to ensure everything runs using the vendored Ruby.

Yeah, I only took a cursory look at everything (I'm still not entirely sure how brew picks which ruby it's using before vendor Ruby installed), but it seems most things (at least in ENV) use /System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/ruby.

Maybe we could just have this install script to just install a Ruby as vendor Ruby for brew as a lazy hack?

The vendor Ruby is built for Tiger, so I'm not surprised it doesn't run on Panther. We might have to build a new Ruby just for Panther in order to get something that runs.

What version of Ruby would you want minimum for the vendor Ruby? There were some errors when I tried to build 2.7.1 (and it also requires that you build a newer GNU Make), but I'm sure they could be patched around if needed.

@larb0b
Copy link
Author

larb0b commented May 14, 2020

I tried doing it with 1.8.5 (https://github.com/larb0b/tigerbrew/blob/13cee23be41de95dd3278fc319199b0fb425fb33/Library/Homebrew/cmd/vendor-install.sh) but

$ brew
Error: Failed to install vendor ruby.
Error: Failed to install vendor Ruby.

it'd be nice to get more verbosity out of this!

By the way, I can supply SSH access to a Panther machine if any contributors would like to help.

@larb0b
Copy link
Author

larb0b commented May 15, 2020

https://github.com/larb0b/tigerbrew/blob/master/Library/Homebrew/utils/ruby.sh

This workaround works to get it around trying to install a vendor Ruby but 1.8.5 is too old to work for brew. There are numerous errors when compiling later versions on Panther, however.

@mistydemeo
Copy link
Owner

What version of Ruby would you want minimum for the vendor Ruby? There were some errors when I tried to build 2.7.1 (and it also requires that you build a newer GNU Make), but I'm sure they could be patched around if needed.

We're currently using Ruby 2.3, though I'll be upgrading later. What were the errors?

By the way, I can supply SSH access to a Panther machine if any contributors would like to help.

That'd be amazing! I currently don't have any hardware able to run Panther that could work on this.

@larb0b
Copy link
Author

larb0b commented Jan 21, 2021

I don't remember what the errors were and I don't think I have them saved anywhere, but I might try to reproduce my progress at some point.

I've set up a 1.33 GHz iBook G4 w/ the latest OpenSSH, if you send a key my way then I can provide access.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants