<?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>Shantanu's Technophilic Musings &#187; Linux</title>
	<atom:link href="http://tech.shantanugoel.com/category/linux/feed" rel="self" type="application/rss+xml" />
	<link>http://tech.shantanugoel.com</link>
	<description>Shantanu's Gadgets, Gizmos, Hacks, Tips, Tricks, Technology...and your kitchen sink</description>
	<lastBuildDate>Wed, 05 Oct 2011 20:23:23 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Remote Bandwidth Stats</title>
		<link>http://tech.shantanugoel.com/2011/08/21/remote-bandwidth-stats.html</link>
		<comments>http://tech.shantanugoel.com/2011/08/21/remote-bandwidth-stats.html#comments</comments>
		<pubDate>Sun, 21 Aug 2011 17:44:24 +0000</pubDate>
		<dc:creator>Shantanu Goel</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Asus]]></category>
		<category><![CDATA[Asus WL-500W]]></category>
		<category><![CDATA[bandwidth monitor]]></category>
		<category><![CDATA[remote-bandwidth-stats]]></category>

		<guid isPermaLink="false">http://tech.shantanugoel.com/?p=351</guid>
		<description><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>This post is about my open source remote bandwidth usage stats logger project.</p> <p>I&#8217;ve been wanting to log the internet bandwidth usage at my home for quite some time since I don&#8217;t really find the stats put out by my ISP to be completely accurate. But I have multiple devices at home that access the <p>Continue reading <a href="http://tech.shantanugoel.com/2011/08/21/remote-bandwidth-stats.html">Remote Bandwidth Stats</a></p>]]></description>
			<content:encoded><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>This post is about my open source remote bandwidth usage stats logger project.</p>
<p>I&#8217;ve been wanting to log the internet bandwidth usage at my home for quite some time since I don&#8217;t really find the stats put out by my ISP to be completely accurate. But I have multiple devices at home that access the internet so it is not feasible to install a bandwidth monitor individually on all these devices as I&#8217;d still need to add up all logs and many of such devices don&#8217;t even have a way to install a monitoring software installed (e.g. my PS3, my TV, my media players, etc). So, I thought of monitoring the usage at my router. It is a smart one (Asus wl-500w) and I can install various linux software on it but then it requires a hard disk to run most of them which I don&#8217;t turn on all the time. Moreover, even if I could run the software directly from router flash, it doesn&#8217;t have enough space to store the logs (neither is it a good idea to keep writing to the flash often).</p><!--test --><script type="text/javascript"><!--
google_ad_client = "ca-pub-7364296987674978";
/* 468x60, created 10/6/08 */
google_ad_slot = "0345781418";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
<p>Hence I came up with the idea of a light weight remote bandwidth usage logger where in the router has to do the bare minimum possible (here, it just has to make a GET call to a webpage with current status of received and transmitted bytes, accomplished by a single line of wget command). The system is completely open source and is intelligent enough to keep track of things even if router reboots or the bytes count wraps around the 4 GB limit (because of 32 bit data structures used). The logging and parsing is all done on server side and provides various useful things.<span id="more-351"></span></p>
<p>Few of the features of the system:</p>
<ul>
<li>Very lightweight in CPU/RAM resource usage on host as well as server</li>
<li>Outputs easy to browse html and graphs</li>
<li>User defined directory structure to decide the granularity that is wanted</li>
<li>yearly, monthly, daily stats and graphs</li>
<li>Provides quick access to extra stats like last time the host connected, last known host IP etc</li>
<li>Provides total download/upload numbers as well as detailed</li>
<li>Estimates uptime of remote host</li>
<li>Can use a DNS name or IP to avoid (or call out) spurious amounts of usage logged by a spurious IP</li>
</ul>
<div>The code and all files can be found at github: <strong><a title="Remote Bandwidth Stats" href="http://github.com/shantanugoel/remote-bandwidth-stats" target="_blank">Remote-Bandwidth-Stats</a></strong></div>
<div>The screenshots of the web pages generated by the system can be seen below. Please let me know if you find any issues with the programs or would like to request any new features.</div>
<div>
<div class="wp-caption alignnone" style="width: 310px"><a href="http://tech.shantanugoel.com/uploads/remote-bandwidth-stats-year.png"><img title="Remote Bandwidth Stats Yearly Stats" src="http://tech.shantanugoel.com/uploads/remote-bandwidth-stats-year-thumb.png" alt="Remote Bandwidth Stats Yearly Stats" width="300" height="156" /></a><p class="wp-caption-text">Remote Bandwidth Stats Yearly Stats</p></div>
<div class="wp-caption alignnone" style="width: 310px"><a href="http://tech.shantanugoel.com/uploads/remote-bandwidth-stats-month.png"><img title="Remote Bandwidth Stats Monthly Stats" src="http://tech.shantanugoel.com/uploads/remote-bandwidth-stats-month-thumb.png" alt="Remote Bandwidth Stats Monthly Stats" width="300" height="156" /></a><p class="wp-caption-text">Remote Bandwidth Stats Monthly Stats</p></div>
<div class="wp-caption alignnone" style="width: 310px"><a href="http://tech.shantanugoel.com/uploads/remote-bandwidth-stats-day.png"><img title="Remote Bandwidth Stats Daily Stats" src="http://tech.shantanugoel.com/uploads/remote-bandwidth-stats-day-thumb.png" alt="Remote Bandwidth Stats Daily Stats" width="300" height="156" /></a><p class="wp-caption-text">Remote Bandwidth Stats Daily Stats</p></div>
</div>
<p>&nbsp;</p>
<p style='border:thin dotted black; padding:3mm;'><a href="http://tech.shantanugoel.com/terms-of-use">©</a> <a href="http://tech.shantanugoel.com/">Shantanu Goel</a> | This article, titled <strong><a href="http://tech.shantanugoel.com/2011/08/21/remote-bandwidth-stats.html">Remote Bandwidth Stats</a></strong>, was originally published on <a href="http://tech.shantanugoel.com/">Shantanu's Technophilic Musings</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.shantanugoel.com/2011/08/21/remote-bandwidth-stats.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Ubuntu Maverick uinput Problem Solved</title>
		<link>http://tech.shantanugoel.com/2011/02/22/ubuntu-maverick-uinput-problem-solved.html</link>
		<comments>http://tech.shantanugoel.com/2011/02/22/ubuntu-maverick-uinput-problem-solved.html#comments</comments>
		<pubDate>Mon, 21 Feb 2011 19:33:37 +0000</pubDate>
		<dc:creator>Shantanu Goel</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[sudo]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[ubuntu maverick uinput]]></category>
		<category><![CDATA[uinput]]></category>

		<guid isPermaLink="false">http://tech.shantanugoel.com/?p=327</guid>
		<description><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>I&#8217;ve been playing around with linux uinput infrastructure for one of my ideas (Details coming soon ). &#8220;uinput&#8221; is basically a mechanism in linux that allows user space applications to inject input events (mouse/keyboard or anything else) into the system. But the problem I faced was that my programs were compiling and running without any <p>Continue reading <a href="http://tech.shantanugoel.com/2011/02/22/ubuntu-maverick-uinput-problem-solved.html">Ubuntu Maverick uinput Problem Solved</a></p>]]></description>
			<content:encoded><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>I&#8217;ve been playing around with linux uinput infrastructure for one of my ideas (Details coming soon <img src='http://tech.shantanugoel.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  ). &#8220;uinput&#8221; is basically a mechanism in linux that allows user space applications to inject input events (mouse/keyboard or anything else) into the system. But the problem I faced was that my programs were compiling and running without any errors but I just couldn&#8217;t see the effect happening, i.e., the events weren&#8217;t getting injected into the system. I am using Ubuntu Maverick Meerkat (10.10) and when I searched on the net, I saw various other folks are facing the same issue. I finally got it working and here is how.</p><!--test --><script type="text/javascript"><!--
google_ad_client = "ca-pub-7364296987674978";
/* 468x60, created 10/6/08 */
google_ad_slot = "0345781418";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
<p>First problem I came across was that I was using &#8220;/dev/input/uinput&#8221; path in my programs but it seems it is changed to &#8220;/dev/uinput&#8221; in Ubuntu. Changing this got me past some runtime errors I was getting.</p>
<p>Then I thought that the issue was because uinput module wasn&#8217;t getting loaded because even after specifically doing a modprobe, I still couldn&#8217;t see it loaded when I did lsmod. This was strange because the /dev/uinput node was present. On looking under /lib, I couldn&#8217;t even find the uinput.ko file. But then I found that the reason for this is that in Ubuntu Maverick, uinput is not a module anymore. It is built into the kernel now. (See this <a title="uinput built into kernel" rel="external nofollow" href="https://bugs.launchpad.net/ubuntu/+source/bluez/+bug/584812" target="_blank">launchpad bug</a>.)</p>
<p>So, having figured that the above was a false alarm, I was at a loss how to explain this. But then I tried just changing the permissions of the uinput node to 0666 (i.e. writable by all users) and ran my program without sudo and it worked like a charm. Searching for sudo along with uinput lead me to <a rel="external nofollow" href="https://bugs.launchpad.net/ubuntu/+source/sudo/+bug/609645" target="_blank">these</a> <a rel="external nofollow" href="http://www.sudo.ws/bugs/show_bug.cgi?id=388" target="_blank">bugs</a> which confirms that the problem is because of this only. So, if you are facing this issue, you can either change the uinput node permissions or install the sudo patch described in the bug discussion page.</p>
<p>Let me know if this worked for you as well <img src='http://tech.shantanugoel.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p style='border:thin dotted black; padding:3mm;'><a href="http://tech.shantanugoel.com/terms-of-use">©</a> <a href="http://tech.shantanugoel.com/">Shantanu Goel</a> | This article, titled <strong><a href="http://tech.shantanugoel.com/2011/02/22/ubuntu-maverick-uinput-problem-solved.html">Ubuntu Maverick uinput Problem Solved</a></strong>, was originally published on <a href="http://tech.shantanugoel.com/">Shantanu's Technophilic Musings</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.shantanugoel.com/2011/02/22/ubuntu-maverick-uinput-problem-solved.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>What does caret (^) in an apt-get command mean?</title>
		<link>http://tech.shantanugoel.com/2010/10/23/apt-get-caret.html</link>
		<comments>http://tech.shantanugoel.com/2010/10/23/apt-get-caret.html#comments</comments>
		<pubDate>Sat, 23 Oct 2010 18:03:06 +0000</pubDate>
		<dc:creator>Shantanu Goel</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[apt-get]]></category>
		<category><![CDATA[apt-get caret]]></category>
		<category><![CDATA[lamp]]></category>
		<category><![CDATA[tasksel]]></category>
		<category><![CDATA[tasksel apt-get]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://tech.shantanugoel.com/?p=312</guid>
		<description><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>If you have come across a tutorial or just someone on a forum who tells you to install something in Debian/Ubuntu that involves using apt-get, it is ok for you but when they tell you that you need to use a caret symbol (^) at the end, that&#8217;s where you become curious. What is even <p>Continue reading <a href="http://tech.shantanugoel.com/2010/10/23/apt-get-caret.html">What does caret (^) in an apt-get command mean?</a></p>]]></description>
			<content:encoded><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>If you have come across a tutorial or just someone on a forum who tells you to install something in Debian/Ubuntu that involves using apt-get, it is ok for you but when they tell you that you need to use a caret symbol (^) at the end, that&#8217;s where you become curious. What is even more weird is that when you search for the name of the package that the given command seems to install cannot be found using apt-cache search. e.g. You will see this used most often when someone tells you how to install LAMP server setup (Linux-Apache-MySQL-PHP) by using the command &#8220;sudo apt-get install lamp-server^&#8221;. If you miss the caret at the end or try to search for lamp-server, it just doesn&#8217;t work.</p><!--test --><script type="text/javascript"><!--
google_ad_client = "ca-pub-7364296987674978";
/* 468x60, created 10/6/08 */
google_ad_slot = "0345781418";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
<p>Well, the answer is that the caret symbol is a short form for performing a task that otherwise the program &#8220;tasksel&#8221; would have done with the given package name. tasksel is a program to ease the installation of commonly used things that go together for a particular use. e.g. In the above instance of LAMP, the four packages and their dependencies are always used together, so tasksel provides a sort of a meta-package or meta-task that can be run by the user with a single command and then tasksel will take it upon itself to install all of them and set them up correctly for your use. Now, apt-get provides a way to perform that same task by itself without you having to install tasksel first and all you have to do is to give that same package name to apt-get but just append a caret at the end to tell apt-get that it is a tasksel package/task identifier and not a regular package name in debian/ubuntu repositories.</p>
<p>Hope that clears things up <img src='http://tech.shantanugoel.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p style='border:thin dotted black; padding:3mm;'><a href="http://tech.shantanugoel.com/terms-of-use">©</a> <a href="http://tech.shantanugoel.com/">Shantanu Goel</a> | This article, titled <strong><a href="http://tech.shantanugoel.com/2010/10/23/apt-get-caret.html">What does caret (^) in an apt-get command mean?</a></strong>, was originally published on <a href="http://tech.shantanugoel.com/">Shantanu's Technophilic Musings</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.shantanugoel.com/2010/10/23/apt-get-caret.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Clearing the FUD around Ubuntu Application Review Process</title>
		<link>http://tech.shantanugoel.com/2010/09/22/clearing-the-fud-around-ubuntu-application-review-process.html</link>
		<comments>http://tech.shantanugoel.com/2010/09/22/clearing-the-fud-around-ubuntu-application-review-process.html#comments</comments>
		<pubDate>Tue, 21 Sep 2010 19:44:24 +0000</pubDate>
		<dc:creator>Shantanu Goel</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[FUD]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[ubuntu application review process]]></category>
		<category><![CDATA[ubuntu extras]]></category>

		<guid isPermaLink="false">http://tech.shantanugoel.com/2010/09/22/clearing-the-fud-around-ubuntu-application-review-process.html</guid>
		<description><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>An application review process was announced today for getting your apps into Ubuntu “extras” repository. But like most other announcements of new things, this one was met as well with as much criticism as the praise it got. A lot of the criticism is FUD though, although mostly unintentional and caused by ignorance of some <p>Continue reading <a href="http://tech.shantanugoel.com/2010/09/22/clearing-the-fud-around-ubuntu-application-review-process.html">Clearing the FUD around Ubuntu Application Review Process</a></p>]]></description>
			<content:encoded><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>An application review process was <a title="Ubuntu Application Review Process Announcement" href="http://www.jonobacon.org/2010/09/20/announcing-the-ubuntu-application-review-process/" rel="external nofollow" target="_blank">announced today</a> for getting your apps into Ubuntu “extras” repository. But like most other announcements of new things, this one was met as well with as much criticism as the praise it got. A lot of the criticism is FUD though, although mostly unintentional and caused by ignorance of some facts behind it. I’ll try to address some of these concerns here to the best of my knowledge from what I’ve been reading over the past some time about this development.</p><!--test --><script type="text/javascript"><!--
google_ad_client = "ca-pub-7364296987674978";
/* 468x60, created 10/6/08 */
google_ad_slot = "0345781418";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
<p>Before we begin, here are the terms listed out for an app to be eligible for the new repository:</p>
<blockquote><p>only new applications that are not present in an existing official Ubuntu repository (such as main/universe) are eligible in this process (e.g a new version of an application in an existing official repository is not eligible). Also no other software can depend on the application being submitted (e.g. development libraries are not eligible), only executable applications (and content that is part of them) are eligible, and not stand-alone content, documentation or media, and applications must be Open Source and available under an OSI approved license.</p>
</blockquote>
<p>  <span id="more-302"></span>
<p>Now, the concerns that are floating around are many. Some are genuine queries and many are straight attacks dishing out evil conspiracy theories <img src='http://tech.shantanugoel.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> . The concerns can be summarised as:</p>
<ul>
<li>Closed source and paid apps are being given the boot by Ubuntu. They should have allowed them. </li>
<li>Why can’t we have updates for existing apps in this repository? </li>
<li>Why only standalone apps are allowed. Libraries are equally important. </li>
<li>Why should the software be packaged for /opt. This involves more headache for the developers. </li>
<li>Standalone media and content should have been allowed. </li>
</ul>
<p>Well, to answer these, all you need to understand is the “premise” and concept behind the repository where this software will go and the reasoning behind the review process will unfold itself. The repository governed by this review process is meant to be for “maintainable” pieces of software that would generally go to other universe/main etc repos but couldn’t make it into this release of Ubuntu because the developers were a bit late. This process and feature now gives a chance to the developers to still get their app to public instead of waiting for next release cycle and also allows end-users to use new apps without having to upgrade their version of Ubuntu . There is a separate “partners” repository where closed source and paid apps can go so there is no conflict there.</p>
<p>Only allowing standalone apps and not updates and dependencies is so obvious. It would soon go out of hand exponentially if you allowed dependencies since one thing needs another library updated, then that would need another and yet another and so on and before you know it, you would be back at square one, that is upgrading to the next version of Ubuntu itself.</p>
<p>The only thing that I found out of the place was not allowing standalone content but probably they didn’t allow it because such content can be had by end users without a repo easily and would ease the burden of repo maintainers and reviewers by lessening the entries.</p>
<p>I’d also like to point out that this is just a beginning and the process (and the people behind it) would definitely be maturing from all the feedback they get from the community. Think of it as an alpha release <img src='http://tech.shantanugoel.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> . Jono Bacon summed it up very nicely in this comment of his that he made elsewhere:</p>
<blockquote><p>this is an *experimental* process; it is a work in progress, it will evolve, and the kinks will be ironed out. The process was approved by the Ubuntu Technical Board who are all seasoned Ubuntu developers (Matt Zimmerman, Colin Watson, Martin Pitt, Mark Shuttleworth, and Kees Cook), and much of what you refer to as &quot;restrictions&quot; were requested by them for the purpose of delivering a nimble process that is stable and secure.</p>
<p>To be clear: you can think of this process as a &quot;light-weight&quot; equivalent to our traditional MOTU development process; it is intended to provide a method in which app devs can get content in Ubuntu, whereas our traditional development processes have be orientated around the needs of Operating System integrators.</p>
<p>As such, this is a first step; sure it is not perfect, but I would like to invite you to make it better; I think this would be a more valuable contribution than just ranting about it on here. Our goal is to make Ubuntu better and to make it more attractive to app developers, and this process will evolve and improve (as was made clear throughout the discussion of this).</p>
<p>&#160;</p>
</blockquote>
<p><font style="background-color: #eff7f7" face="Georgia">So, what do you think about it? I, for one, am pretty excited..</font></p>
<p style='border:thin dotted black; padding:3mm;'><a href="http://tech.shantanugoel.com/terms-of-use">©</a> <a href="http://tech.shantanugoel.com/">Shantanu Goel</a> | This article, titled <strong><a href="http://tech.shantanugoel.com/2010/09/22/clearing-the-fud-around-ubuntu-application-review-process.html">Clearing the FUD around Ubuntu Application Review Process</a></strong>, was originally published on <a href="http://tech.shantanugoel.com/">Shantanu's Technophilic Musings</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.shantanugoel.com/2010/09/22/clearing-the-fud-around-ubuntu-application-review-process.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Mute (or Answer) Skype Calls with BT Headset Button in Linux</title>
		<link>http://tech.shantanugoel.com/2010/07/09/mute-answer-skype-calls-bluetooth-headset-button-in-linux.html</link>
		<comments>http://tech.shantanugoel.com/2010/07/09/mute-answer-skype-calls-bluetooth-headset-button-in-linux.html#comments</comments>
		<pubDate>Thu, 08 Jul 2010 18:31:55 +0000</pubDate>
		<dc:creator>Shantanu Goel</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Hack]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[blueman]]></category>
		<category><![CDATA[headset button skype linux]]></category>
		<category><![CDATA[mute calls skype linux]]></category>
		<category><![CDATA[skype]]></category>
		<category><![CDATA[skype linux]]></category>

		<guid isPermaLink="false">http://tech.shantanugoel.com/?p=285</guid>
		<description><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>Skype on linux works great but the problem that I faced was that it does not handle the buttons on the bluetooth headsets. My wife uses skype to call into her work related conference calls and was pretty frustrated that she had to keep sitting in front of my laptop (her laptop didn&#8217;t allow to <p>Continue reading <a href="http://tech.shantanugoel.com/2010/07/09/mute-answer-skype-calls-bluetooth-headset-button-in-linux.html">Mute (or Answer) Skype Calls with BT Headset Button in Linux</a></p>]]></description>
			<content:encoded><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>Skype on linux works great but the problem that I faced was that it does not handle the buttons on the bluetooth headsets. My wife uses skype to call into her work related conference calls and was pretty frustrated that she had to keep sitting in front of my laptop (her laptop didn&#8217;t allow to install skype) just to switch mute on and off. So, I whipped up this little trick to do so. Here is how:</p>
<p>1. First I looked at the skype API (pretty simple, based on dbus). Also found a sample script somewhere that allowed to answer and hang up calls through skype API.</p><!--test --><script type="text/javascript"><!--
google_ad_client = "ca-pub-7364296987674978";
/* 468x60, created 10/6/08 */
google_ad_slot = "0345781418";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
<p>2. Modified the script to switch the mute on and off instead of answering/hanging up. Script can be downloaded at the end of this article. You can also modify it to take some other action that you want.</p>
<p>3. Install &#8220;blueman&#8221;. If you are using Ubuntu, just type &#8220;sudo apt-get install blueman&#8221; in shell.</p>
<p>4. Once blueman is installed and you have done your headset pairing etc, right click on the blueman icon in the system tray and click on &#8220;Local Services&#8221;.</p>
<p>5. In local services, click on headset tab and you can see a input box where you can give the path of a program/script which will be run whenever the &#8220;answer button&#8221; on the headset is pressed. This is important to note that blueman only supports the answer button and nothing else and I didn&#8217;t have the inclination to develop a full-fledged AVRCP compliant program to capture other buttons as all I was interested in mute functionality. You can see the screenshot of this below:<span id="more-285"></span><br />
<a href="http://tech.shantanugoel.com/uploads/blueman-skype-bluetooth-mute-button.png" target="_blank"><img src="http://tech.shantanugoel.com/uploads/blueman-skype-bluetooth-mute-button-thumb.png" alt="Skype Headset Button Settings for Blueman" /></a></p>
<p><a href="http://tech.shantanugoel.com/uploads/blueman-skype-bluetooth-mute-button.png" target="_blank"></a>6. Make sure that you give the path where you saved the script that you downloaded in step 4 and you are all set now. Make a call and click on the answer button of your headset to see the magic happen <img src='http://tech.shantanugoel.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p>Let me know if you have your own hacks like this or know of a way to have a full fledged capturing of all headset buttons.</p>
<p><strong><a title="Skype Bluetooth Mute Button Linux" href="http://tech.shantanugoel.com/resources/downloads/skype-bluetooth-mute-button.zip">DOWNLOAD: Skype Bluetooth Mute Button Script</a></strong></p>
<p style='border:thin dotted black; padding:3mm;'><a href="http://tech.shantanugoel.com/terms-of-use">©</a> <a href="http://tech.shantanugoel.com/">Shantanu Goel</a> | This article, titled <strong><a href="http://tech.shantanugoel.com/2010/07/09/mute-answer-skype-calls-bluetooth-headset-button-in-linux.html">Mute (or Answer) Skype Calls with BT Headset Button in Linux</a></strong>, was originally published on <a href="http://tech.shantanugoel.com/">Shantanu's Technophilic Musings</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.shantanugoel.com/2010/07/09/mute-answer-skype-calls-bluetooth-headset-button-in-linux.html/feed</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Automatic Login For Beam Cable</title>
		<link>http://tech.shantanugoel.com/2010/04/14/beam-cable-automatic-login.html</link>
		<comments>http://tech.shantanugoel.com/2010/04/14/beam-cable-automatic-login.html#comments</comments>
		<pubDate>Wed, 14 Apr 2010 04:33:37 +0000</pubDate>
		<dc:creator>Shantanu Goel</dc:creator>
				<category><![CDATA[Hack]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Asus WL-500W]]></category>
		<category><![CDATA[automatic login to beam cable]]></category>
		<category><![CDATA[beam cable login settings]]></category>
		<category><![CDATA[beam cable pppoe settings]]></category>
		<category><![CDATA[beam telecom]]></category>
		<category><![CDATA[beam-cable]]></category>
		<category><![CDATA[beamtele]]></category>

		<guid isPermaLink="false">http://tech.shantanugoel.com/2010/04/14/beam-cable-automatic-login.html</guid>
		<description><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>This article will tell you a simple way to login automatically to beam cable (Beam-Telecom) internet connection instead of using the web login manually. Not only that, I’ll also tell you how to do this auto-login through your router if you have one with a custom linux firmware. I took a beam cable connection a <p>Continue reading <a href="http://tech.shantanugoel.com/2010/04/14/beam-cable-automatic-login.html">Automatic Login For Beam Cable</a></p>]]></description>
			<content:encoded><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p><strong>This article will tell you a simple way to login automatically to beam cable (Beam-Telecom) internet connection instead of using the web login manually.</strong> Not only that, I’ll also tell you how to do this auto-login through your router if you have one with a custom linux firmware. I took a beam cable connection a few days ago. The price is excellent and speeds are good but the only thing that bothered me was the web based login. You need to open up a browser and login through their online portal before you can access the internet. Now, if you don’t log off, then the login may persist even across PC/router reboots but many times it doesn’t. But in these times, it becomes a pain in the wrong place when I am just looking to play online on my PS3 or one of my various net-capable devices, scattered around the house, are trying to pull data and this forces me to open up my laptop just to login. Even for people who use the internet only on their PC, they might not be using the browser all the time and find it a hassle, minor one but still a hassle, to open a browser and login. Hence, I set out to find a way to do this automatically. (BTW, I’ll also be listing out how I came onto the solution in case you are in interested. If you are not, feel free to skip some paragraphs below to move to the solution)</p><!--test --><script type="text/javascript"><!--
google_ad_client = "ca-pub-7364296987674978";
/* 468x60, created 10/6/08 */
google_ad_slot = "0345781418";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
<p> <span id="more-266"></span>
<p>First off, I came to know that Beam cable supports PPPoE logins, but for the life of me, I (and any of my friends) couldn’t get it working. So, I thought of an alternative approach. Since, this was just a login through a web page, there was a good chance that I could automate it through perl/wget/curl etc. I immediately opened up their portal and took a look at the source code in the hopes of finding out the login form, which I could use to find the POST data that they want and submit it through wget. But what I found was that they are using javascript to do the login process, so no direct way of finding this out. And on top of that, the functions are not embedded in the page but loaded through an external script.</p>
<p>Hmm, a setback but a minor one. Javascript is still a client-side executed environment so all hope wasn’t lost. I could have waded through the browser cache to find the js files loaded by the portal and went through the functions to reconstruct the data that I need but I chose an easier way. There is this excellent addon for firefox called “Live Headers”. It shows you all the transactions happening between your browser and the server. So, I just fired it up, filled in my login details in the portal and hit “Login”. On seeing the live headers log, I found out the exact url as well as the POST data that they were sending to do the actual login and from there it was a piece of cake. With “wget”, it is as simple as executing </p>
<blockquote><p>wget &lt;url&gt; &#8211;post-data=&lt;data&gt;</p>
</blockquote>
<p>So, by substituting the information that I got, this is the command that you need to execute on your PC (For linux/mac it is already installed generally and for windows, you will need to download from <a title="wget for windows" href="http://gnuwin32.sourceforge.net/packages/wget.htm" rel="external nofollow" target="_blank">here</a>)</p>
<blockquote><p>wget <a href="http://123.176.37.2/newportal/Ajax.php">http://123.176.37.2/newportal/Ajax.php</a> &#8211;post-data=&quot;function=ExecuteLogin&amp;user=YOURBEAMUSERNAME&amp;pwd=YOURBEAMPASSWORD&amp;remember=false&amp;timestamp=1271186686298&quot;</p>
</blockquote>
<p>Please remember to replace YOURBEAMUSERNAME and YOURBEAMPASSWORD with your actual username and password respectively. Also, please note that the above command is all one single line (it might appear in multiple lines in your browser).</p>
<p>So, everytime you need to login just run this command. Now, how to do this automatically? For linux, just put it inside a shell script for linux and set it to run automatically on bootup. For windows, paste the command in a text file, and save it as beam_login.bat and put it in your start up folder so that it runs everytime on boot. (You might want to put some delays in there as it might take some time to get connected to the network or you can query the network interface to run it when the network is up. Let me know if you want to know how to do this for your platform and I can help you).</p>
<p>So, this is for the PC, now how about if I need to use non-browser capable devices. This is easy if you have a router with a custom linux firmware (because they generally have wget installed or allow you to install it). I have an Asus wl-500w with oleg’s custom firmware installed and it was a piece of cake with it. I just created the following shell script</p>
<blockquote><p>#!/bin/sh </p>
<p>if [ -e Ajax.php ]     <br />then      <br />&#160; rm Ajax.php      <br />fi </p>
<p>#Limit the number of retries to prevent the router from going into continuous loop     <br />num_retries=10 </p>
<p>while [ $num_retries -gt 0 ]     <br />do      <br />wget <a href="http://123.176.37.2/newportal/Ajax.php">http://123.176.37.2/newportal/Ajax.php</a> &#8211;post-data=&quot;function=ExecuteLogin&amp;user=YOURBEAMUSERNAME&amp;pwd=YOURBEAMPASSWORD&amp;remember=false&amp;timestamp=1271186686298&quot;      <br />if [ -e Ajax.php ]      <br />then      <br />&#160; rm Ajax.php      <br />&#160; break      <br />else      <br />&#160; sleep 2s      <br />&#160; num_retries=`expr $num_retries &#8211; 1`      <br />fi      <br />done</p>
</blockquote>
<p>Then I set it to run on boot and voila!! A tip for other users of any of the asus routers with oleg’s firmware (like wl-500g, wl-520gu, wl-500gp etc). The firmware has some scripts in the /local/sbin folder that are run at various times. I suggest you put the above code inside the <strong>post-firewall</strong> script. (Do not forget to run “flashfs save &amp;&amp; flasfs commit &amp;&amp; flashfs enable” to save your changes). Now, every time my router reboots, it automatically logs in to the connection <img src='http://tech.shantanugoel.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Hope I have been clear in the isntructions. If you are unclear about anything or need any help in implementing it for your specific platform, do let me know.</p>
<p style='border:thin dotted black; padding:3mm;'><a href="http://tech.shantanugoel.com/terms-of-use">©</a> <a href="http://tech.shantanugoel.com/">Shantanu Goel</a> | This article, titled <strong><a href="http://tech.shantanugoel.com/2010/04/14/beam-cable-automatic-login.html">Automatic Login For Beam Cable</a></strong>, was originally published on <a href="http://tech.shantanugoel.com/">Shantanu's Technophilic Musings</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.shantanugoel.com/2010/04/14/beam-cable-automatic-login.html/feed</wfw:commentRss>
		<slash:comments>38</slash:comments>
		</item>
		<item>
		<title>Continuous Monitoring With Tail Fails</title>
		<link>http://tech.shantanugoel.com/2009/12/23/continuous-monitor-tail-fails.html</link>
		<comments>http://tech.shantanugoel.com/2009/12/23/continuous-monitor-tail-fails.html#comments</comments>
		<pubDate>Wed, 23 Dec 2009 18:10:44 +0000</pubDate>
		<dc:creator>Shantanu Goel</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[continuous monitoring files]]></category>
		<category><![CDATA[monitor file]]></category>
		<category><![CDATA[tail]]></category>
		<category><![CDATA[tail -f]]></category>

		<guid isPermaLink="false">http://tech.shantanugoel.com/2009/12/23/continuous-monitor-tail-fails.html</guid>
		<description><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>If you can&#8217;t get tail command to continuously monitor a file, then read on. I was working on a script yesterday, a part of which depended on continuous monitoring of a text file. I had used our trusty old &#8220;tail&#8221; command for this but while testing by manually putting in some data into the file, <p>Continue reading <a href="http://tech.shantanugoel.com/2009/12/23/continuous-monitor-tail-fails.html">Continuous Monitoring With Tail Fails</a></p>]]></description>
			<content:encoded><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>If you can&#8217;t get tail command to continuously monitor a file, then read on. I was working on a script yesterday, a part of which depended on continuous monitoring of a text file. I had used our trusty old &#8220;tail&#8221; command for this but while testing by manually putting in some data into the file, it was failing but curiously it was working fine when used in actual scenario. Befuddled, I did a simple test. I created a simple text file &#8220;a.txt&#8221; with a few lines of data and then ran the following command. </p><!--test --><script type="text/javascript"><!--
google_ad_client = "ca-pub-7364296987674978";
/* 468x60, created 10/6/08 */
google_ad_slot = "0345781418";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
<blockquote><p>tail -f a.txt</p>
</blockquote>
<p>It showed the last few lines of the file and kept waiting. So far so good. Then I opened the file in vim editor, wrote a few more lines, saved the file and then waited but nothing in the window that was running the tail command. Thinking that the data might be buffered and not flushed to the disc yet, I ran the sync command but still nothing. </p>
<p><span id="more-261"></span>
<p>Then I got a hint that when I used the &#8220;-F&#8221; or &#8220;&#8211;follow=name&#8221; option instead of &#8220;-f&#8221;, the tail command was able to detect the change just fine, the only problem being that in this mode, it prints the last few lines again, not just the newly added line. The main difference in these new options is that tail command tracks the file for changes by its name and not by the file descriptor, and then it dawned on me. The problem is not in the tail command but my testing method itself. When I save the file opened in vim, it creates a new file with a new inode while the one opened by tail is still the old one (which is now a temporary file which has actually been deleted). When I quit tail, then the kernel deletes the file automatically. This is also confirmed by running &#8220;lsof | grep a.txt&#8221; (lsof lists the open files and then we find the ones related to a.txt). The output shown is;</p>
<blockquote><p>tail      11966   shantanu    3r      REG                8,6        8     224954 /home/shantanu/dev/perl/plot/a.txt~ (deleted)</p>
</blockquote>
<blockquote><p>vim       12576   shantanu    9u      REG                8,6    12288     210918 /home/shantanu/dev/perl/plot/.a.txt.swp</p>
</blockquote>
<p>which shows what we had discussed above. This gets worked around when I use the -F option because then tail periodically reopens the file by name and reads it again, thus bypassing the above issue. Then I simply tried running tail again on the same file and doing something like &#8220;echo abc &gt;&gt; a.txt&#8221; and I could see the behaviour as expected with tail immediately detecting the change and displaying it in its window. Hope this helps if you have been pulling out your hair thinking you have gone crazy as your favourite little tool that you have been using for so many years has suddenly stopped working and no one else apart from you is even complaining <img src='http://tech.shantanugoel.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p style='border:thin dotted black; padding:3mm;'><a href="http://tech.shantanugoel.com/terms-of-use">©</a> <a href="http://tech.shantanugoel.com/">Shantanu Goel</a> | This article, titled <strong><a href="http://tech.shantanugoel.com/2009/12/23/continuous-monitor-tail-fails.html">Continuous Monitoring With Tail Fails</a></strong>, was originally published on <a href="http://tech.shantanugoel.com/">Shantanu's Technophilic Musings</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.shantanugoel.com/2009/12/23/continuous-monitor-tail-fails.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>grub and knetworkmanager problems in Kubuntu Karmic</title>
		<link>http://tech.shantanugoel.com/2009/11/08/grub-knetworkmanager-kubuntu-karmic.html</link>
		<comments>http://tech.shantanugoel.com/2009/11/08/grub-knetworkmanager-kubuntu-karmic.html#comments</comments>
		<pubDate>Sun, 08 Nov 2009 12:08:00 +0000</pubDate>
		<dc:creator>Shantanu Goel</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[grub2]]></category>
		<category><![CDATA[karmic koala]]></category>
		<category><![CDATA[knetworkmanager]]></category>
		<category><![CDATA[kubuntu karmic]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[wicd]]></category>

		<guid isPermaLink="false">http://tech.shantanugoel.com/2009/11/08/grub-knetworkmanager-kubuntu-karmic.html</guid>
		<description><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>I generally move from LTS to LTS releases of Ubuntu but reluctantly had to update my system to Karmic when my old HDD gave in. I also thought of trying out Kubuntu (KDE based) this time as I had heard that its doing a lot of interesting things (Akonadi/Nepomuk etc) and that with 4.3.1 it <p>Continue reading <a href="http://tech.shantanugoel.com/2009/11/08/grub-knetworkmanager-kubuntu-karmic.html">grub and knetworkmanager problems in Kubuntu Karmic</a></p>]]></description>
			<content:encoded><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>I generally move from <a href="http://tech.shantanugoel.com/2008/05/21/ubuntu-what-exactly-does-lts-mean.html" title="What Does LTS Mean" target="_blank">LTS</a> to LTS releases of Ubuntu but reluctantly had to update my system to Karmic when my old HDD gave in. I also thought of trying out Kubuntu (KDE based) this time as I had heard that its doing a lot of interesting things (Akonadi/Nepomuk etc) and that with 4.3.1 it is stable as well. The installation went fine, all over within less than half an hour and then the problems started. Here are the 2 main issues that I faced along with their solutions, in the hope that if someone else runs into same issues does not have to waste time (and hair) on it <img src='http://tech.shantanugoel.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p><!--test --><script type="text/javascript"><!--
google_ad_client = "ca-pub-7364296987674978";
/* 468x60, created 10/6/08 */
google_ad_slot = "0345781418";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
<p><strong>1. Bootloader Issue:</strong> I dual boot my system along with Win XP (Needed for some office work) and generally install the bootloader onto a separate boot partition instead of overwriting the MBR. But this time when I did the same, I couldn&#8217;t boot (not even the grub menu). When I did this, the very helpful message that I got on restarting after installing kubuntu was “Error loading operating system”. I could still go back to my good windows install by setting the boot flag onto its partition. I mucked around with it a lot, trying to install grub2 again and found that actually it fails when I try to do the above (install on a partition). I also tried copying the boot sector from my /boot partition to C: and use ntldr to boot into linux but that also didn’t work. This lead me to believe that the same thing happened during my main installation and the installer failed to tell me anything about it. I tried then to install it on MBR but that also mucked up things and I couldn’t even get the error message, a cursor just kept blinking. Finally, the solution. I had to install kubuntu again and this time selected to overwrite MBR (this is default, BTW). </p>
<p><strong>2. Wi-Fi Connection Issue:</strong> Second immediate issue was with knetworkmanager. It failed to start my wi-fi module (even after installing restricted drivers). I disabled and enabled wi-fi, so that brought some life to it (wi-fi led started glowing) but it still couldn’t scan for any access points. I could do the scan through command line and see my AP but my AP is WPA2 secured and I didn’t want to mess around with wpa-supplicant stuff. Solution: Installed Wicd. And it worked automagically.</p>
<p>Hope this helps someone else who faces the same issue. Looks like my idea of moving to kubuntu wasn’t a good one (especially because I had 2 lockups during the 1 hour I used it for in the wee hours of this morning). I’ll probably give it another week or so before taking the decision whether to move back to ubuntu or not. </p>
<p>One good thing to take away from this though: For the first time I could really appreciate the live CD installer that these linux distros give. As I could search about the various issues I had without having a second computer. But then again, it’s not that good as well because it means that so far I never had any installation issues at all…</p>
<p style='border:thin dotted black; padding:3mm;'><a href="http://tech.shantanugoel.com/terms-of-use">©</a> <a href="http://tech.shantanugoel.com/">Shantanu Goel</a> | This article, titled <strong><a href="http://tech.shantanugoel.com/2009/11/08/grub-knetworkmanager-kubuntu-karmic.html">grub and knetworkmanager problems in Kubuntu Karmic</a></strong>, was originally published on <a href="http://tech.shantanugoel.com/">Shantanu's Technophilic Musings</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.shantanugoel.com/2009/11/08/grub-knetworkmanager-kubuntu-karmic.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Making Frets On Fire Work With Pulse Aludio &#8211; pasuspender</title>
		<link>http://tech.shantanugoel.com/2009/08/23/make-frets-on-fire-work-pulse-audio-pasuspender.html</link>
		<comments>http://tech.shantanugoel.com/2009/08/23/make-frets-on-fire-work-pulse-audio-pasuspender.html#comments</comments>
		<pubDate>Sun, 23 Aug 2009 18:18:45 +0000</pubDate>
		<dc:creator>Shantanu Goel</dc:creator>
				<category><![CDATA[Gaming]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[FoFix]]></category>
		<category><![CDATA[FretsOnFire]]></category>
		<category><![CDATA[pasuspender]]></category>
		<category><![CDATA[PS3]]></category>
		<category><![CDATA[Pulse Audio]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://tech.shantanugoel.com/2009/08/23/make-frets-on-fire-work-pulse-audio-pasuspender.html</guid>
		<description><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>I recently got hold of a Guitar Hero controller for my PS3 but the game still had some time to come so I tried it out on my laptop with Frets on Fire (rather FoFix). But when I started it, it was crashing with some weird error about not being able to open mixer devices. <p>Continue reading <a href="http://tech.shantanugoel.com/2009/08/23/make-frets-on-fire-work-pulse-audio-pasuspender.html">Making Frets On Fire Work With Pulse Aludio &#8211; pasuspender</a></p>]]></description>
			<content:encoded><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>I recently got hold of a Guitar Hero controller for my PS3 but the game still had some time to come so I tried it out on my laptop with Frets on Fire (rather FoFix). But when I started it, it was crashing with some weird error about not being able to open mixer devices. Searching on the google, I came to know this is happening because of Pulse Audio as this application needs direct access to the sound devices and finally I came upon <b>pasuspender. </b>This little tool allows you to do that with ease. Just run it in the following way:<br />
<blockquote>pasuspender &#8212; ./FretsOnFire</p><!--test --><script type="text/javascript"><!--
google_ad_client = "ca-pub-7364296987674978";
/* 468x60, created 10/6/08 */
google_ad_slot = "0345781418";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br /></blockquote>
<p>And it will start working just fine. You can use the same trick for any other application that needs direct access to the sound devices. What pasuspender does is that it will suspend pulse audio and allow the application to access them directly and when the application is terminated, normal functioning will resume.</p>
<p style='border:thin dotted black; padding:3mm;'><a href="http://tech.shantanugoel.com/terms-of-use">©</a> <a href="http://tech.shantanugoel.com/">Shantanu Goel</a> | This article, titled <strong><a href="http://tech.shantanugoel.com/2009/08/23/make-frets-on-fire-work-pulse-audio-pasuspender.html">Making Frets On Fire Work With Pulse Aludio &#8211; pasuspender</a></strong>, was originally published on <a href="http://tech.shantanugoel.com/">Shantanu's Technophilic Musings</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.shantanugoel.com/2009/08/23/make-frets-on-fire-work-pulse-audio-pasuspender.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why You Should Not Upgrade to Ubuntu Jaunty Jackalope (9.04)</title>
		<link>http://tech.shantanugoel.com/2009/05/04/ubuntu-904-jaunty-jackalope-upgrade-graphics-problem.html</link>
		<comments>http://tech.shantanugoel.com/2009/05/04/ubuntu-904-jaunty-jackalope-upgrade-graphics-problem.html#comments</comments>
		<pubDate>Mon, 04 May 2009 17:46:40 +0000</pubDate>
		<dc:creator>Shantanu Goel</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[3D support]]></category>
		<category><![CDATA[ATi]]></category>
		<category><![CDATA[ATi Catalyst]]></category>
		<category><![CDATA[fglrx]]></category>
		<category><![CDATA[graphics card]]></category>
		<category><![CDATA[Jaunty Jackalop]]></category>
		<category><![CDATA[linux graphics drivers]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[Ubuntu 9.04]]></category>
		<category><![CDATA[X.org]]></category>
		<category><![CDATA[X.org server 1.6]]></category>

		<guid isPermaLink="false">http://tech.shantanugoel.com/2009/05/04/ubuntu-904-jaunty-jackalope-upgrade-graphics-problem.html</guid>
		<description><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>Update: It has come to my notice that many people do not know about this (and other problems listed in comments of this post). Please digg and reddit this post so that more people can be made aware of it before they upgrade unknowingly.</p> <p>You should not upgrade to Ubuntu 9.04 (aka Jaunty Jackalope), released <p>Continue reading <a href="http://tech.shantanugoel.com/2009/05/04/ubuntu-904-jaunty-jackalope-upgrade-graphics-problem.html">Why You Should Not Upgrade to Ubuntu Jaunty Jackalope (9.04)</a></p>]]></description>
			<content:encoded><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p><strong>Update: It has come to my notice that many people do not know about this (and other problems listed in comments of this post). Please </strong><a title="Why You Should Not Upgrade to Ubuntu Jaunty Jackalope (9.04)" href="http://digg.com/linux_unix/Why_You_Should_Not_Upgrade_to_Ubuntu_Jaunty_Jackalope_9_04" target="_blank" rel="nofollow"><strong>digg</strong></a><strong> and </strong><a title="Why You Should Not Upgrade to Ubuntu Jaunty Jackalope (9.04)" href="http://www.reddit.com/r/linux/comments/8hzkt/why_you_should_not_upgrade_to_ubuntu_jaunty/" target="_blank" rel="nofollow"><strong>reddit</strong></a><strong> this post so that more people can be made aware of it before they upgrade unknowingly.</strong></p><!--test --><script type="text/javascript"><!--
google_ad_client = "ca-pub-7364296987674978";
/* 468x60, created 10/6/08 */
google_ad_slot = "0345781418";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
<p>You should not upgrade to Ubuntu 9.04 (aka Jaunty Jackalope), released a few weeks ago, if:</p>
<ol>
<li>You have an older ATI graphics card (prior to R500, .e.g xpress 200m) </li>
<li>You like to have 3D support (read compiz/games, etc) </li>
</ol>
<p>This is because of the following reasons:</p>
<ul>
<li>Ubuntu Jaunty Jackalope has the new version of X.org server (1.6) </li>
<li>The open source graphics drivers for ATI do not have 3D support </li>
<li>The only version of the ATI properietary drivers (fglrx\Catalyst) compatible with X.org server 1.6 is 9.4 </li>
<li>Support for older cards (mentioned above) was dropped from fglrx 9.4 </li>
</ul>
<p>So, basically right now you are in a soup and it seems to me that this is going to remain this way unless someone figures out how to backport x.org 1.5 onto Jauntu, which is going to be a hell of a task, IMHO <img src='http://tech.shantanugoel.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p>But, if you are a simple person, who looks beyond the gloss of the 3D and marvels at the beauty that the rest of the system holds, then go right ahead and dive in <img src='http://tech.shantanugoel.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p style='border:thin dotted black; padding:3mm;'><a href="http://tech.shantanugoel.com/terms-of-use">©</a> <a href="http://tech.shantanugoel.com/">Shantanu Goel</a> | This article, titled <strong><a href="http://tech.shantanugoel.com/2009/05/04/ubuntu-904-jaunty-jackalope-upgrade-graphics-problem.html">Why You Should Not Upgrade to Ubuntu Jaunty Jackalope (9.04)</a></strong>, was originally published on <a href="http://tech.shantanugoel.com/">Shantanu's Technophilic Musings</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.shantanugoel.com/2009/05/04/ubuntu-904-jaunty-jackalope-upgrade-graphics-problem.html/feed</wfw:commentRss>
		<slash:comments>54</slash:comments>
		</item>
	</channel>
</rss>

