From owner-freebsd-ruby@FreeBSD.ORG Sun Nov 18 04:40:28 2012 Return-Path: Delivered-To: freebsd-ruby@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 67A2E434 for ; Sun, 18 Nov 2012 04:40:28 +0000 (UTC) (envelope-from pschmehl_lists@tx.rr.com) Received: from cdptpa-omtalb.mail.rr.com (cdptpa-omtalb.mail.rr.com [75.180.132.120]) by mx1.freebsd.org (Postfix) with ESMTP id 178D98FC12 for ; Sun, 18 Nov 2012 04:40:27 +0000 (UTC) X-Authority-Analysis: v=2.0 cv=KMfY/S5o c=1 sm=0 a=+L5dYfeubEW4PLvjDgtIXQ==:17 a=WAZfUmVf-EkA:10 a=EstpEZKyg6gA:10 a=05ChyHeVI94A:10 a=kj9zAlcOel0A:10 a=ayC55rCoAAAA:8 a=jhTWPf-NVpgA:10 a=bhHEUyJqAAAA:8 a=cIJ4of8vVMpmSA6RAu0A:9 a=CjuIK1q_8ugA:10 a=CChrTwsDDsUA:10 a=994rJZO4AJXS3l9X:21 a=ptBjTiHIRctmTjbR:21 a=+L5dYfeubEW4PLvjDgtIXQ==:117 X-Cloudmark-Score: 0 X-Authenticated-User: X-Originating-IP: 76.184.157.127 Received: from [76.184.157.127] ([76.184.157.127:65462] helo=[10.0.0.7]) by cdptpa-oedge02.mail.rr.com (envelope-from ) (ecelerity 2.2.3.46 r()) with ESMTP id E2/8E-01425-AB668A05; Sun, 18 Nov 2012 04:40:27 +0000 Date: Sat, 17 Nov 2012 22:40:25 -0600 From: Paul Schmehl To: FreeBSD Ruby List Subject: Re: More problems than I care to think about Message-ID: In-Reply-To: <50A57292.5050005@shatow.net> References: <76BB3E3F07A4F68477B30C11@utd71538.campus.ad.utdallas.edu> <50A57292.5050005@shatow.net> X-Mailer: Mulberry/4.0.8 (Mac OS X) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline Cc: Bryan Drewery X-BeenThere: freebsd-ruby@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: Paul Schmehl List-Id: FreeBSD-specific Ruby discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 18 Nov 2012 04:40:28 -0000 --On November 15, 2012 4:54:10 PM -0600 Bryan Drewery wrote: > On 11/15/2012 1:03 PM, Paul Schmehl wrote: >> I've been trying to port Snorby to FreeBSD. Emphasis on trying. I run >> into problems at every turn, and some seem unresolvable. Snorby >> requires ruby 1.9.2 or better. The default version on FreeBSD is 1.8. >> Putting RUBY_DEFAULT_VER=1.9 in /etc/make.conf breaks some of the >> rubygem ports that will only build on 1.8. >> >> sysutils/rubygem-bundler was giving me fits. I discovered that while >> the port version is 1.1.5, the current version, which fixes the problems >> I was having, is 1.2.2. I created a port update for that and was going >> to submit it, but then I discovered devel/rubygem-eventmachine "blows >> up" with a core dump if built with 1.9. >> >> This is beyond discouraging and has caused me to abandon the project >> entirely. >> >> It seems that we need a massive effort to update ruby and rails and all >> gems to the latest versions. Who is responsible for that? How can we >> get that done? >> > > I've had similar endeavors with the ruby ports. It's not that someone is > dropping the ball necessarily. Gems really do not work well as ports, in > their current form, due to their hard version dependencies. I've twice > now tried adding ports and given up, as it would mean adding multiple > new ports, copying some others for specific versions, and even > specifically for 1.9. It's all more trouble than it is worth. > > Note that I've had similar experiences with Debian as well. On my > production rails sites, I usually just give up and use gem/bundler > directly. > > I can envision this being fixed by letting gem do its own thing, and > registering those as packages, similar to bsdpan, but I don't think this > idea is popular, and I myself do not have time to implement even a > proof-of-concept. > I gave up on a port and resorted to installing gem directly, then running gem install rails and bundle install to download everything the app needs. After all that, the command 'bundle exec rake snorby:setup' failed because I had the wrong libmysqlclient.so.num file installed. (I had libmysqlclient.so.18, and the do_msql gem required libmysqlclient.so.15. Even symlinking the file failed, which is an old trick that often works.) That's beyond ridiculous. So I uninstalled the mysql client and installed the correct version. I ran the 'bundle exec' command again and got an error message that some function returned nil. At that point I REALLY gave up. Snorby might be the world's greatest app, but it is not worth the pain of rails and gem hell. Whoever designed that system had their head so far up their tookus they won't see daylight for years. Rule number one of programming is to write your programs so they're very forgiving of build dependencies. Anything above a certain version should work so long as the software is being actively maintained. But the do_mysql gem had a *hard-coded* dependency on mysql 5.0. Totally nuts. Who was the genius who decided that having hundreds of independently maintained gems was a good idea? Talk about begging for failure! I don't think there's any way the rails-gems mess could be made to work in the FreeBSD ports system. In fact, I think what's there should be stripped out. I understand the (FreeBSD ports) concern of wanting to make sure that the checksums match what you're downloading, but the rails-gems hell is not worthy of even running on FreeBSD and will never work in the FreeBSD ports system. That's the last time I'll ever try to port that mess to FreeBSD. Paul Schmehl, Senior Infosec Analyst As if it wasn't already obvious, my opinions are my own and not those of my employer. ******************************************* "It is as useless to argue with those who have renounced the use of reason as to administer medication to the dead." Thomas Jefferson "There are some ideas so wrong that only a very intelligent person could believe in them." George Orwell