Issue #18205 has been updated by Jesse Endahl. Status changed from Closed to Re-opened
So I did more research on this, and found this thread from 2010 where Gary and Nigel, among others, discussed this very issue. Here's the thread: https://groups.google.com/forum/?fromgroups=#!topic/instadmg-dev/gJqaiQ9duJk Here's the smoking gun post from a user named larkost: https://groups.google.com/d/msg/instadmg-dev/gJqaiQ9duJk/Y8Ruikq3rggJ He explains that this is actually due to an Apple bug regarding symlinks, which he filed as Radar 7758836. I also found an Open Radar for it here: http://openradar.appspot.com/9202152. The bug, as he explains it: > We have all been chasing around the symlinks, and it turns out one of them is > wrong, so this is a bug on Apple's part. The problem child is: > > /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/site_ruby > > (note: the 1.8 is usually done as "Current", but this symlink resolves to > "1.8" in the same directory on 10.6) > > This resolves to: > > ../../../../../../../../../../Library/Ruby/Site > > If you count the back-references you will get 10, but there are only 9 levels > in the absolute path. When you are booted the extra level gets swallowed as a > non-fatal (and non warning) error (try: "cd /; cd.."). *However, if the > filesystem is mounted anywhere other than root* (as it is in InstaDMG) this > will cause a problem since you can ../ one more directory out, but then there > is no /Library/Ruby/Site in that outer folder. > > So this is all a bug on Apple's part in the symlinks, and it looks like it > has been a problem since 10.5 (I just checked . I am going to report it right > now. But the Puppet package is probably going to have to work around this for > now by not trying to have the package follow the torturous list of softlinks, > but install stuff straight to /Library/Ruby/Site. larkost explains that the workaround that Puppet could do is to install straight to /Library/Ruby/Site instead of trying to follow the symlinks. To which Nigel said: > Well done Karl. I really should have thought of actually counting the damn levels :) > This brings me back to having to produce different packages for 10.4 and 10.5+ though :( > What do you all think of the option of fixing the symlink in a preinstall if on 10.5/6 ? And that's where the thread died. ---------------------------------------- Bug #18205: Ruby libraries are broken under osx mountain lion https://projects.puppetlabs.com/issues/18205#change-90721 * Author: Ben Ford * Status: Re-opened * Priority: Normal * Assignee: * Category: * Target version: * Affected Puppet version: 2.7.20 * Keywords: * Branch: ---------------------------------------- See https://ask.puppetlabs.com/question/67/unable-to-run-puppet-on-osx-mountain-lion/ Puppet opensource cannot require libraries because the rubylib has apparently changed. Any puppet scripts exit with: `/usr/bin/puppet:3:in `require': no such file to load -- puppet/util/command_line (LoadError) from /usr/bin/puppet:3` As a hacky workaround, I made symlinks, like sudo ln -s /usr/lib/ruby/site_ruby/1.8/puppet /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/site_ruby/1.8/puppet sudo ln -s /usr/lib/ruby/site_ruby/1.8/puppet.rb /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/site_ruby/1.8/puppet.rb sudo ln -s /usr/lib/ruby/site_ruby/1.8/semver.rb /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/site_ruby/1.8/semver.rb -- You have received this notification because you have either subscribed to it, or are involved in it. To change your notification preferences, please click here: http://projects.puppetlabs.com/my/account -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/puppet-bugs?hl=en. For more options, visit https://groups.google.com/groups/opt_out.
