<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
<channel>
	<title>Comments for Infotropism</title>
	
	<link>http://infotrope.net/blog</link>
	<description>Kirrily Robert's blog</description>
	<lastBuildDate>Wed, 30 Dec 2009 00:12:07 -0800</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/InfotropismComments" /><feedburner:info uri="infotropismcomments" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:browserFriendly></feedburner:browserFriendly><item>
		<title>Comment on CPAN FAIL by @thorfi</title>
		<link>http://infotrope.net/blog/2009/12/18/cpan-fail/comment-page-1/#comment-3219</link>
		<dc:creator>@thorfi</dc:creator>
		<pubDate>Wed, 30 Dec 2009 00:12:07 +0000</pubDate>
		<guid isPermaLink="false">http://infotrope.net/blog/?p=476#comment-3219</guid>
		<description>I am not a lawyer either, but I have a fair bit of experience in intellectual property fu and such. That license is pretty clear that you can't take their gcc and make out of the distributed Xcode bundle and redistribute.

The GPL is also pretty clear that Apple have to provide source for their modifications to gcc and make... which they have.

The reasons why nobody has done it yet will be:

1. Xcode is conveniently available and maintained professionally and provided for free by Apple.
2. gcc + make (built from the Apple sources) is not necessarily going to be enough to actually get you a working compiled binary. It may be, but it's a lot of work to find out, given 1.</description>
		<content:encoded><![CDATA[<p>I am not a lawyer either, but I have a fair bit of experience in intellectual property fu and such. That license is pretty clear that you can&#8217;t take their gcc and make out of the distributed Xcode bundle and redistribute.</p>
<p>The GPL is also pretty clear that Apple have to provide source for their modifications to gcc and make&#8230; which they have.</p>
<p>The reasons why nobody has done it yet will be:</p>
<p>1. Xcode is conveniently available and maintained professionally and provided for free by Apple.<br />
2. gcc + make (built from the Apple sources) is not necessarily going to be enough to actually get you a working compiled binary. It may be, but it&#8217;s a lot of work to find out, given 1.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on CPAN FAIL by Telemachus</title>
		<link>http://infotrope.net/blog/2009/12/18/cpan-fail/comment-page-1/#comment-3215</link>
		<dc:creator>Telemachus</dc:creator>
		<pubDate>Tue, 29 Dec 2009 19:49:09 +0000</pubDate>
		<guid isPermaLink="false">http://infotrope.net/blog/?p=476#comment-3215</guid>
		<description>Apple does provide source, and all I can say is that as a normal person (i.e., not a lawyer), it certainly &lt;em&gt;sounds&lt;/em&gt; as though the license I quoted is saying that you can't take their gcc and make and release them separately from the rest. (Also, given that a reasonable number of people always seem to want this, I figure that there must be a reason that nobody has done it yet.)

Anyhow, here is a link to &lt;a href="http://opensource.apple.com/" rel="nofollow"&gt;Apple's online downloadable sources&lt;/a&gt;.</description>
		<content:encoded><![CDATA[<p>Apple does provide source, and all I can say is that as a normal person (i.e., not a lawyer), it certainly <em>sounds</em> as though the license I quoted is saying that you can&#8217;t take their gcc and make and release them separately from the rest. (Also, given that a reasonable number of people always seem to want this, I figure that there must be a reason that nobody has done it yet.)</p>
<p>Anyhow, here is a link to <a href="http://opensource.apple.com/" rel="nofollow">Apple&#8217;s online downloadable sources</a>.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on CPAN FAIL by @thorfi</title>
		<link>http://infotrope.net/blog/2009/12/18/cpan-fail/comment-page-1/#comment-3214</link>
		<dc:creator>@thorfi</dc:creator>
		<pubDate>Tue, 29 Dec 2009 09:26:42 +0000</pubDate>
		<guid isPermaLink="false">http://infotrope.net/blog/?p=476#comment-3214</guid>
		<description>Assuming you can get Apple to give you the appropriate gcc source code and then compile it yourself, then okay.

The GPL does not prevent people from putting extra conditions in their license, provided those extra conditions do not violate the GPL directly.

So simply "unbundling" the copy of gcc provided in the Xcode bundle is pretty clearly against the license conditions for Xcode as described above, and the GPL doesn't magically grant you an exception to disobey license conditions.

In addition to that, just because the original gcc is GPL does not necessarily mean that the gcc contained in Xcode is GPL - or rather, there may be things which are used by the version of gcc in Xcode which are non-GPL.</description>
		<content:encoded><![CDATA[<p>Assuming you can get Apple to give you the appropriate gcc source code and then compile it yourself, then okay.</p>
<p>The GPL does not prevent people from putting extra conditions in their license, provided those extra conditions do not violate the GPL directly.</p>
<p>So simply &#8220;unbundling&#8221; the copy of gcc provided in the Xcode bundle is pretty clearly against the license conditions for Xcode as described above, and the GPL doesn&#8217;t magically grant you an exception to disobey license conditions.</p>
<p>In addition to that, just because the original gcc is GPL does not necessarily mean that the gcc contained in Xcode is GPL &#8211; or rather, there may be things which are used by the version of gcc in Xcode which are non-GPL.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on CPAN FAIL by Adam Kennedy</title>
		<link>http://infotrope.net/blog/2009/12/18/cpan-fail/comment-page-1/#comment-3208</link>
		<dc:creator>Adam Kennedy</dc:creator>
		<pubDate>Sun, 27 Dec 2009 15:44:22 +0000</pubDate>
		<guid isPermaLink="false">http://infotrope.net/blog/?p=476#comment-3208</guid>
		<description>It's make and gcc. Apple doesn't own it, and I'm not sure how they could be able to say anything about what we do with it.</description>
		<content:encoded><![CDATA[<p>It&#8217;s make and gcc. Apple doesn&#8217;t own it, and I&#8217;m not sure how they could be able to say anything about what we do with it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on CPAN FAIL by Telemachus</title>
		<link>http://infotrope.net/blog/2009/12/18/cpan-fail/comment-page-1/#comment-3198</link>
		<dc:creator>Telemachus</dc:creator>
		<pubDate>Thu, 24 Dec 2009 14:53:26 +0000</pubDate>
		<guid isPermaLink="false">http://infotrope.net/blog/?p=476#comment-3198</guid>
		<description>I love the sound of this idea, but I think it's not legal (or at least that Apple is trying to prevent it). 

Section 3 of the license for the installer package of Xcode has this:

&lt;blockquote&gt;
You may not rent, lease, lend, redistribute, sublicense or transfer any Developer Software that has been modified or replaced under Section 2H above. All components of the Developer Software are provided as part of a bundle and may not be separated from the bundle and distributed as standalone applications.  
&lt;/blockquote&gt;

Section 2H is the paragraph in the license about the open-source components.</description>
		<content:encoded><![CDATA[<p>I love the sound of this idea, but I think it&#8217;s not legal (or at least that Apple is trying to prevent it). </p>
<p>Section 3 of the license for the installer package of Xcode has this:</p>
<blockquote><p>
You may not rent, lease, lend, redistribute, sublicense or transfer any Developer Software that has been modified or replaced under Section 2H above. All components of the Developer Software are provided as part of a bundle and may not be separated from the bundle and distributed as standalone applications.
</p></blockquote>
<p>Section 2H is the paragraph in the license about the open-source components.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on CPAN FAIL by Adam Kennedy</title>
		<link>http://infotrope.net/blog/2009/12/18/cpan-fail/comment-page-1/#comment-3196</link>
		<dc:creator>Adam Kennedy</dc:creator>
		<pubDate>Thu, 24 Dec 2009 06:37:49 +0000</pubDate>
		<guid isPermaLink="false">http://infotrope.net/blog/?p=476#comment-3196</guid>
		<description>If it comes down to XCode evasion, why even bother with third-party generated versions?

If the binaries themselves aren't hard-coded to live in a specific path, then why not just pull the binaries out of XCode itself (since they are open source) and then just repackage in a form that installs to a private location?

CPAN.pm could be taught that on Mac, if it can't find make and GCC, it should download some random tarball from somewhere and unpack it into $directory and use that as a fallback...</description>
		<content:encoded><![CDATA[<p>If it comes down to XCode evasion, why even bother with third-party generated versions?</p>
<p>If the binaries themselves aren&#8217;t hard-coded to live in a specific path, then why not just pull the binaries out of XCode itself (since they are open source) and then just repackage in a form that installs to a private location?</p>
<p>CPAN.pm could be taught that on Mac, if it can&#8217;t find make and GCC, it should download some random tarball from somewhere and unpack it into $directory and use that as a fallback&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on CPAN FAIL by Telemachus</title>
		<link>http://infotrope.net/blog/2009/12/18/cpan-fail/comment-page-1/#comment-3194</link>
		<dc:creator>Telemachus</dc:creator>
		<pubDate>Thu, 24 Dec 2009 05:32:51 +0000</pubDate>
		<guid isPermaLink="false">http://infotrope.net/blog/?p=476#comment-3194</guid>
		<description>A slight side-note about Unix tools and OSX, since many people have mentioned Fink and MacPorts. Fink and MacPorts are both excellent projects that aim to provide Mac users with a very full range of *nix toys. However, they both require the full Xcode suite as a prerequisite. I suppose that with modern drives, disc space doesn't really matter, but it galls me to install 2 gigs of stuff into /Developer, simply to get gcc and make onto a Mac. (To my knowledge there is no other way to get gcc for a Mac. I would love to hear if there's something I'm missing.)

One alternative that I don't see mentioned often is &lt;a href="http://rudix.org/" rel="nofollow"&gt;Rudix&lt;/a&gt;. It's a great small project that provides a very full range of tools (including make) in binary form. It's not a full solution for most developers since you can't get a compiler (no gcc) from Rudix, but it's a good middle ground for someone who literally just wants make or Ruby 1.9 or the GNU coreutils or find on a Mac.</description>
		<content:encoded><![CDATA[<p>A slight side-note about Unix tools and OSX, since many people have mentioned Fink and MacPorts. Fink and MacPorts are both excellent projects that aim to provide Mac users with a very full range of *nix toys. However, they both require the full Xcode suite as a prerequisite. I suppose that with modern drives, disc space doesn&#8217;t really matter, but it galls me to install 2 gigs of stuff into /Developer, simply to get gcc and make onto a Mac. (To my knowledge there is no other way to get gcc for a Mac. I would love to hear if there&#8217;s something I&#8217;m missing.)</p>
<p>One alternative that I don&#8217;t see mentioned often is <a href="http://rudix.org/" rel="nofollow">Rudix</a>. It&#8217;s a great small project that provides a very full range of tools (including make) in binary form. It&#8217;s not a full solution for most developers since you can&#8217;t get a compiler (no gcc) from Rudix, but it&#8217;s a good middle ground for someone who literally just wants make or Ruby 1.9 or the GNU coreutils or find on a Mac.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on CPAN FAIL by John</title>
		<link>http://infotrope.net/blog/2009/12/18/cpan-fail/comment-page-1/#comment-3190</link>
		<dc:creator>John</dc:creator>
		<pubDate>Wed, 23 Dec 2009 16:20:49 +0000</pubDate>
		<guid isPermaLink="false">http://infotrope.net/blog/?p=476#comment-3190</guid>
		<description>The pattern I follow on OS X is to always install the developer tools first thing, and then via `sudo` install the most recent Perl into its own `/opt/perl-n.m.o`. Then make an `/opt/perl` symlink to that `/opt/perl-n.m.o` dir. This way, the path to perl on the Mac is the same as on my servers.

Then the `cpanp` shell to install everything else. I've been using `cpanp` rather than CPAN.pm for a while (well, ever since it looked like it was going to replace CPAN.pm).</description>
		<content:encoded><![CDATA[<p>The pattern I follow on OS X is to always install the developer tools first thing, and then via `sudo` install the most recent Perl into its own `/opt/perl-n.m.o`. Then make an `/opt/perl` symlink to that `/opt/perl-n.m.o` dir. This way, the path to perl on the Mac is the same as on my servers.</p>
<p>Then the `cpanp` shell to install everything else. I&#8217;ve been using `cpanp` rather than CPAN.pm for a while (well, ever since it looked like it was going to replace CPAN.pm).</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on CPAN FAIL by @thorfi</title>
		<link>http://infotrope.net/blog/2009/12/18/cpan-fail/comment-page-1/#comment-3168</link>
		<dc:creator>@thorfi</dc:creator>
		<pubDate>Mon, 21 Dec 2009 03:23:45 +0000</pubDate>
		<guid isPermaLink="false">http://infotrope.net/blog/?p=476#comment-3168</guid>
		<description>@kd: Not what I intended to say... I certainly have done big projects in Perl (in which case I recommend Perl::Critic and Perl::Tidy with Damian Conway's .perltidyrc as an enforced checkin trigger), but they can't be done just by relying on using the CPAN module install method.  If you do that, you will have massive version dependency hell failures within a short number of weeks.</description>
		<content:encoded><![CDATA[<p>@kd: Not what I intended to say&#8230; I certainly have done big projects in Perl (in which case I recommend Perl::Critic and Perl::Tidy with Damian Conway&#8217;s .perltidyrc as an enforced checkin trigger), but they can&#8217;t be done just by relying on using the CPAN module install method.  If you do that, you will have massive version dependency hell failures within a short number of weeks.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on CPAN FAIL by Ben</title>
		<link>http://infotrope.net/blog/2009/12/18/cpan-fail/comment-page-1/#comment-3165</link>
		<dc:creator>Ben</dc:creator>
		<pubDate>Sun, 20 Dec 2009 21:25:33 +0000</pubDate>
		<guid isPermaLink="false">http://infotrope.net/blog/?p=476#comment-3165</guid>
		<description>@kd New developers don't by default use Catalyst ;) The main problem is when you write software for people that are on shared hosts, they haven't got root access, and more often than not you can't rely on CPAN to work right. I've got a few installer CGI scripts that will use CPAN, change it's config so it DWIW, but then you run into problems where some build scripts (I think Module::Install is guilty of this to an extent) will just not allow for unattended installs. E.g. you can tell Module::Install to always accept the defaults, which is often what you want, but sometimes it's not. Even if you tell CPAN you want to follow all pre-requisites, you still sometimes end up having to whack enter or give another form of input.

One way or the other, what people end up with most of the time is a handrolled system that totally bypasses CPAN -- I've been in the guts of those things more times than I care to remember. 

Just one of my pet peeves really, that there is no 'easy' way to do a totally unattended installation of modules off CPAN that can be used from, say, a CGI script, or any other application where people cannot access the shell and all they have is web access. 

The only idea I've got as far as that goes is a wacky combination of PAR, PAR::Dist, PAR::Repository and a build farm to turn all of CPAN into a PAR repository. No time though...</description>
		<content:encoded><![CDATA[<p>@kd New developers don&#8217;t by default use Catalyst ;) The main problem is when you write software for people that are on shared hosts, they haven&#8217;t got root access, and more often than not you can&#8217;t rely on CPAN to work right. I&#8217;ve got a few installer CGI scripts that will use CPAN, change it&#8217;s config so it DWIW, but then you run into problems where some build scripts (I think Module::Install is guilty of this to an extent) will just not allow for unattended installs. E.g. you can tell Module::Install to always accept the defaults, which is often what you want, but sometimes it&#8217;s not. Even if you tell CPAN you want to follow all pre-requisites, you still sometimes end up having to whack enter or give another form of input.</p>
<p>One way or the other, what people end up with most of the time is a handrolled system that totally bypasses CPAN &#8212; I&#8217;ve been in the guts of those things more times than I care to remember. </p>
<p>Just one of my pet peeves really, that there is no &#8216;easy&#8217; way to do a totally unattended installation of modules off CPAN that can be used from, say, a CGI script, or any other application where people cannot access the shell and all they have is web access. </p>
<p>The only idea I&#8217;ve got as far as that goes is a wacky combination of PAR, PAR::Dist, PAR::Repository and a build farm to turn all of CPAN into a PAR repository. No time though&#8230;</p>
]]></content:encoded>
	</item>
</channel>
</rss>
