<?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>Kludget Widget Engine &#187; windows</title>
	<atom:link href="http://kludgets.com/tag/windows/feed/" rel="self" type="application/rss+xml" />
	<link>http://kludgets.com</link>
	<description>Klumsy, Lame, Ugly, Dumb, but Good Enough</description>
	<lastBuildDate>Sat, 17 Dec 2011 14:55:59 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Kludgets and Cygwin</title>
		<link>http://kludgets.com/2009/05/kludgets-and-cygwin/</link>
		<comments>http://kludgets.com/2009/05/kludgets-and-cygwin/#comments</comments>
		<pubDate>Wed, 13 May 2009 14:12:41 +0000</pubDate>
		<dc:creator>kludgeteer</dc:creator>
				<category><![CDATA[Features]]></category>
		<category><![CDATA[cygwin]]></category>
		<category><![CDATA[dashboard]]></category>
		<category><![CDATA[Kludgets]]></category>
		<category><![CDATA[widgets]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://kludgets.com/?p=124</guid>
		<description><![CDATA[Warning: This is a little bit of a technical post. When a widget is installed by the engine, it will prompt you to grant access permissions. There are a lot of widgets that will require system commands. They usually come in the form of shell commands like: /usr/bin/id or /usr/bin/curl And these commands are called [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>Warning: This is a little bit of a technical post.</p></blockquote>
<p>When a widget is installed by the engine, it will prompt you to grant access permissions. There are a lot of widgets that will require system commands. They usually come in the form of shell commands like:</p>
<p><code>/usr/bin/id</code><br />
or<br />
<code>/usr/bin/curl</code></p>
<p>And these commands are called in javascript through the <code>widget.system()</code> method.</p>
<p><span id="more-124"></span></p>
<p>These commands will require linux or linux-like environment like MacOS. (Is MacOS techincally linux?). On windows, we emulate this environment using Cygwin. It&#8217;s a linux-like environment for Windows.</p>
<p><a href="http://www.cygwin.com/">Go there.</a></p>
<p>Download the installer. Choose the packages you need. You&#8217;ll need to install a shell package like bash or sh. Installation is pretty easy and straight forward.</p>
<p>You then have to edit the engine preference and check &#8220;Run system commands inside a shell&#8221;. And point the shell path to your Cygwin shell. (There&#8217;s a default sample entry to help you out.)</p>
<p>With cygwin, a majority of widgets that use system command will now run smoothly. But there would still be commands that are available only on MacOS. </p>
<p>The Say Cheese, daily comics widget use <code>/usr/bin/pbcopy</code> to paste an comic image on the clipboard. <code>pbcopy</code> isn&#8217;t available in cygwin, so someone will have to port or make a version of that. This is one area where contributors can come in.</p>
<p>In true Kludget fashion, we use cygwin as a component to make the dashboard widgets work. Cygwin is several MBs of disk space, depending on you packages. Do you think it&#8217;s worth it? I&#8217;m interested in your comments.</p>
]]></content:encoded>
			<wfw:commentRss>http://kludgets.com/2009/05/kludgets-and-cygwin/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

