<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Bit Mojo - Hiram Chirino &#187; Tools</title>
	<atom:link href="http://hiramchirino.com/blog/category/tools/feed/" rel="self" type="application/rss+xml" />
	<link>http://hiramchirino.com/blog</link>
	<description>My Ramblings on Hawt Tech</description>
	<lastBuildDate>Fri, 03 Feb 2012 14:25:48 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<item>
		<title>Blogware Switch</title>
		<link>http://hiramchirino.com/blog/2009/09/blogware-switch/</link>
		<comments>http://hiramchirino.com/blog/2009/09/blogware-switch/#comments</comments>
		<pubDate>Tue, 22 Sep 2009 18:29:05 +0000</pubDate>
		<dc:creator>Hiram Chirino</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://hiramchirino.com/blog/?p=36</guid>
		<description><![CDATA[Changed the blog over to WordPress from Blogger.  I am impressed how polished this app is.  Who would have thought a PHP app could get this good?]]></description>
			<content:encoded><![CDATA[<p><a href="wordpress.org"><img style="float:left; padding: 0 10px 10px 0" title="WordPress Logo" src="http://img.skitch.com/20090922-g543hs76g9yfp4p42a8xx5hpx8.png" alt="WordPress" width="105" height="66" /></a> Changed the blog over to WordPress from Blogger.  I am impressed how polished this app is.  Who would have thought a PHP app could get this good?</p>
]]></content:encoded>
			<wfw:commentRss>http://hiramchirino.com/blog/2009/09/blogware-switch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Checksum Plugin</title>
		<link>http://hiramchirino.com/blog/2008/08/new-checksum-plugin/</link>
		<comments>http://hiramchirino.com/blog/2008/08/new-checksum-plugin/#comments</comments>
		<pubDate>Sat, 02 Aug 2008 15:18:00 +0000</pubDate>
		<dc:creator>Hiram Chirino</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[checksum maven-plugin]]></category>

		<guid isPermaLink="false">http://hiramchirino.com/wordpress/2008/08/new-checksum-plugin/</guid>
		<description><![CDATA[So in my last post I was suggesting making it easier to include dependency checksums as part of a maven build. I decided that it should be simple enough to implement this as a Maven Plugin. For those of you interested, you can get the source to the new Checksum Plugin here. The basic problem [...]]]></description>
			<content:encoded><![CDATA[<p>So in <a href="http://hiramchirino.com/blog/2008/07/comments-on-maven-repository-security.html">my last post</a> I was suggesting making it easier to include dependency checksums as part of a maven build.  I decided that it should be simple enough to implement this as a Maven Plugin.  For those of you interested, you can get the source to the <a href="https://svn.apache.org/repos/asf/servicemix/maven-plugins/checksum-maven-plugin/trunk" onclick="pageTracker._trackPageview('/outgoing/svn.apache.org/repos/asf/servicemix/maven-plugins/checksum-maven-plugin/trunk?referer=');">new Checksum Plugin here</a>.</p>
<p>The basic problem the plugin is trying to solve is that it is possible that central repositories get hacked and the artifacts/dependencies of our builds get replaced with<br />malicious versions.  Right now we have no way to easily detect that<br />and we could potential create a release build of a project which<br />bundles one of those malicious dependencies.  In practice this rarely<br />occurs, but it&#8217;s not out of the realm of possibilities. </p>
<p>Basically the plugin supports generating a checksum.txt file that is included as part of the project build. This file holds all the checksums for the dependencies (including the dependencies&#8217; pom checksum).  Generating/updating is induced via the use of a maven profile.  This is only done when dependencies get updated.</p>
<p>In a normal build the plugin just validates the checksums of the downloaded dependencies against those stored in the checksum.txt file.</p>
<p>I wish I could move up the validation of the dependencies from their current maven life cycle locations, but it seems you can&#8217;t get the list of dependencies it gets moved up any more.  Any maven mojo hackers have any work arounds for that?</p>
]]></content:encoded>
			<wfw:commentRss>http://hiramchirino.com/blog/2008/08/new-checksum-plugin/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Comments on the Maven Repository Security Proposal</title>
		<link>http://hiramchirino.com/blog/2008/07/comments-on-the-maven-repository-security-proposal/</link>
		<comments>http://hiramchirino.com/blog/2008/07/comments-on-the-maven-repository-security-proposal/#comments</comments>
		<pubDate>Mon, 28 Jul 2008 20:07:00 +0000</pubDate>
		<dc:creator>Hiram Chirino</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[maven]]></category>

		<guid isPermaLink="false">http://hiramchirino.com/wordpress/2008/07/comments-on-the-maven-repository-security-proposal/</guid>
		<description><![CDATA[For those of you who don&#8217;t know, Maven is an awesome build tool. It uses centralized repositories to share build artifacts. Right now there is a problem, where if a repository is hacked, malicious code could be injected into those artifacts and distributed by other builds. Lots of folks object to using maven solely due [...]]]></description>
			<content:encoded><![CDATA[<p>For those of you who don&#8217;t know, Maven is an awesome build tool.  It uses centralized repositories to share build artifacts.  Right now there is a problem, where if a repository is hacked, malicious code could be injected into those artifacts and distributed by other builds.  Lots of folks <a href="https://issues.apache.org/jira/browse/HADOOP-3302" onclick="pageTracker._trackPageview('/outgoing/issues.apache.org/jira/browse/HADOOP-3302?referer=');">object to using maven</a> solely due to this possibility.  It&#8217;s a good thing that the maven teams seems to be working on fix those problems.</p>
<p>First off, I love the <a href="http://docs.codehaus.org/display/MAVEN/Repository+Security" onclick="pageTracker._trackPageview('/outgoing/docs.codehaus.org/display/MAVEN/Repository+Security?referer=');">Maven Repository Security Proposal</a>.  I think that the &#8216;Specified Checksums&#8217; idea is awesome.  I think it needs to be made so easy to use that folks always use it.  Right now it&#8217;s a little ugly because it makes the dependency declaration much more verbose.  Plus it does not seem to cover transitive dependencies that are being used during the build, and I think that those checksums NEED to be included too.</p>
<p>I think that what would be better is if maven provided the tools to update the checksum information in the pom.</p>
<p>Lets say that a build for a module is setup in some strict mode where only artifacts with known checksums are allowed.  If the pom is updated to add a new dependency, I think there should be some maven command which automatically adds the checksum for the new dependency (and transitive dependencies).  Artifacts that are signed with a trusted key get added without prompting, and a confirmation prompt would be given for artifacts that are not GPG trusted.</p>
<p>So the question is why go through all that trouble?  So that folks get a trusted source distribution (out of SCM or a signed tar ball), can do a build and have a high level of guarantee that the dependencies that are being used in the source build match what was intended by the developers of the source distribution.  Furthermore, it will not matter if the transitive dependencies are signed and have keys in the end user&#8217;s keyring since all the checksums are include in the build.</p>
<p>Now, since there could be lots of dependencies in a build, due to the use of build plugins and transitive dependencies, it might be worth storing the checksum data in a file external to pom.xml, or at least in a different xml section from the dependencies declaration.</p>
<p>Things to think about: Having SNAPSHOT dependencies in the build could complicate things, as the build would be tied to a particular SNAPSHOT/checksum, but maybe that&#8217;s a good thing.</p>
]]></content:encoded>
			<wfw:commentRss>http://hiramchirino.com/blog/2008/07/comments-on-the-maven-repository-security-proposal/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Docbook is dead.. Long live HTML</title>
		<link>http://hiramchirino.com/blog/2007/10/docbook-is-dead-long-live-html/</link>
		<comments>http://hiramchirino.com/blog/2007/10/docbook-is-dead-long-live-html/#comments</comments>
		<pubDate>Tue, 02 Oct 2007 16:22:00 +0000</pubDate>
		<dc:creator>Hiram Chirino</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[docbook]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[pdf]]></category>

		<guid isPermaLink="false">http://hiramchirino.com/wordpress/2007/10/docbook-is-dead-long-live-html/</guid>
		<description><![CDATA[Yay.. The Apache Camel project has started to generate some beautiful looking PDF documentation from standard HTML by using prince and the Boom style sheet against our wiki. We contacted the Boom folks and they cleared up the license terms of the Boom file so that it&#8217;s officially open source. The Boom folks have relicensed [...]]]></description>
			<content:encoded><![CDATA[<p>Yay.. The <a href="http://activemq.apache.org/camel" onclick="pageTracker._trackPageview('/outgoing/activemq.apache.org/camel?referer=');">Apache Camel</a> project has started to generate some beautiful looking <a href="http://people.apache.org/%7Echirino/camel-manual-1.1-SNAPSHOT.pdf" onclick="pageTracker._trackPageview('/outgoing/people.apache.org/_7Echirino/camel-manual-1.1-SNAPSHOT.pdf?referer=');">PDF documentation</a> from standard HTML by using <a href="http://www.princexml.com/" onclick="pageTracker._trackPageview('/outgoing/www.princexml.com/?referer=');">prince</a> and the <a href="http://www.alistapart.com/articles/boom" onclick="pageTracker._trackPageview('/outgoing/www.alistapart.com/articles/boom?referer=');">Boom</a> style sheet against our <a href="http://cwiki.apache.org/confluence/display/CAMEL/Index" onclick="pageTracker._trackPageview('/outgoing/cwiki.apache.org/confluence/display/CAMEL/Index?referer=');">wiki</a>.   We contacted the Boom folks and they cleared up the license terms of the Boom file so that it&#8217;s officially open source.  The Boom folks have <a href="http://people.opera.com/howcome/2005/ala/boom-mit.css" onclick="pageTracker._trackPageview('/outgoing/people.opera.com/howcome/2005/ala/boom-mit.css?referer=');">relicensed</a> under the very liberal MIT license.</p>
<p>Update:<br /><a href="http://www.theserverside.com/news/thread.tss?thread_id=47118" onclick="pageTracker._trackPageview('/outgoing/www.theserverside.com/news/thread.tss?thread_id=47118&amp;referer=');">An interesting thread</a> docbook and HTML is going on at The Server Side.</p>
]]></content:encoded>
			<wfw:commentRss>http://hiramchirino.com/blog/2007/10/docbook-is-dead-long-live-html/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

