[txmt-dev] Yosemite breaks some bundles

Attila Györffy attila.gyorffy at gmail.com
Wed Jun 4 21:18:41 UTC 2014


Hi all,

I know this is a little bit early to start talking about the new OS X but I’m an early adopter and try to fix issues that arise prior to the final release so the time most people upgrade, tools that mean a lot to me (like TextMate itself) can be used without having to worry a lot.

On Mavericks the default Ruby interpreter became version 2.0, although 1.8 was still in place. With the end of support I can understand why Apple decided to ditch Ruby 1.8 from their upcoming system, and therefore 1.8 is gone for good.

As a fair amount of the Bundles are using the system built-in Ruby version as the shebang line, this is now breaking:
#!/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby

On the current system the frameworks look like this:

ll /System/Library/Frameworks/Ruby.framework/Versions/
total 8
drwxr-xr-x  7 root  wheel   238B Jun  4 10:51 2.0
lrwxr-xr-x  1 root  wheel     3B Jun  3 15:26 Current -> 2.0

As I mentioned above, 1.8 is gone and has been replaced with a ‘Current’ symlink that (as of writing) points to version 2.0 (I guess this could be Apple’s move to support new default Rubies later on in a consistent manner.)

I appreciate that we can’t just easily change the commands and point them to the new version as that would break TextMate bundles for most users, but I have no idea currently how we could support multiple OS versions.

Is there a way to pass down a command dynamically to different interpreters? I guess using /usr/bin/env as the shebang line won’t help as it can be literally anything that is inherited from the user’s PATH.

One option might be to wrap the commands with a shell script that finds a compatible Ruby version (either 2.0 or 1.8 if exists) and then passes down the arguments.

Any other ideas?

Allan, how can I start working on this?

Cheers,

— Attila
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macromates.com/textmate-dev/attachments/20140604/cfed4bbc/attachment.html>


More information about the textmate-dev mailing list