<?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/"
	
xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"
>

<channel>
	<title>Pratik Sinha</title>
	<atom:link href="https://www.humbug.in/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.humbug.in</link>
	<description>Founder-Editor Alt News, Debunking Misinformation</description>
	<lastBuildDate>Fri, 18 Aug 2017 13:38:17 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=5.2.20</generator>
<atom:link rel="hub" href="https://pubsubhubbub.appspot.com"/><atom:link rel="hub" href="https://pubsubhubbub.superfeedr.com"/><site xmlns="com-wordpress:feed-additions:1">8161681</site>	<item>
		<title>Bookmarklet to Convert Mobile Facebook link to Desktop Facebook Link</title>
		<link>https://www.humbug.in/2017/bookmarklet-convert-mobile-facebook-link-desktop-facebook-link/</link>
				<comments>https://www.humbug.in/2017/bookmarklet-convert-mobile-facebook-link-desktop-facebook-link/#comments</comments>
				<pubDate>Fri, 18 Aug 2017 13:38:17 +0000</pubDate>
		<dc:creator><![CDATA[Pratik Sinha]]></dc:creator>
				<category><![CDATA[Guides]]></category>

		<guid isPermaLink="false">http://www.humbug.in/?p=1735</guid>
				<description><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2017/bookmarklet-convert-mobile-facebook-link-desktop-facebook-link/">Bookmarklet to Convert Mobile Facebook link to Desktop Facebook Link</a></p>
<p>If you&#8217;re on a Desktop browser, it is easy enough to see the Mobile version of a Facebook Link. All one has to do is replace the &#8216;www&#8216; in the URL with &#8216;m&#8216; and press Enter. However, if one is sent the mobile version of a Facebook link, it is not that straight forward to [&#8230;]</p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></description>
								<content:encoded><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2017/bookmarklet-convert-mobile-facebook-link-desktop-facebook-link/">Bookmarklet to Convert Mobile Facebook link to Desktop Facebook Link</a></p>
<p>If you&#8217;re on a Desktop browser, it is easy enough to see the Mobile version of a Facebook Link. All one has to do is replace the &#8216;<strong>www</strong>&#8216; in the URL with &#8216;<strong>m</strong>&#8216; and press <code>Enter</code>. However, if one is sent the mobile version of a Facebook link, it is not that straight forward to convert it into the desktop format if you&#8217;re surfing on a Desktop browser. The default format of the mobile link that Facebook generates is as follows: </p>
<p>https://m.facebook.com/story.php?story_fbid=10154615255996455&#038;substory_index=0&#038;id=13527056454</span></p>
<p>Unfortunately, just changing &#8216;m&#8217; to &#8216;www&#8217; will not get you to the desktop version of this Facebook link. Instead, it will give you &#8220;<strong>This page isn&#8217;t available</strong>&#8221; error. To actually get to the desktop link, it has to be converted into the following format:</p>
<p><span>https://www.facebook.com/13527056454/posts/10154615255996455</span></p>
<p>The &#8216;id&#8217; portion of the link became the first number in the above URL, while the &#8216;story_fbid&#8217; portion of the link became the second number. However, it is painful to do this manually every single time. Since the time I started working on <a href="https://www.altnews.in" target="_blank">Alt News</a>, I have had to do this exercise numerous times. To make it easier for me and everyone else out there, I created a small bookmarklet that can be dragged to the Bookmark bar.</p>
<p style="text-align: center;"><a style="display:moz-inline-box;display:inline-block;padding:3px 6px;height:32px;color:#fff;background:#32a0eb;webkit-border-radius:4px;moz-border-radius:4px;border-radius:4px;" class="bookmarklet" href="javascript:(function()%7Bfunction%20getParam(param)%20%7Bvar%20url%20%3D%20window.location.href.slice(window.location.href.indexOf('%3F')%20%2B%201).split('%26')%3Bfor%20(var%20i%3D0%3Bi%3Curl.length%3Bi%2B%2B)%20%7Bvar%20params%20%3D%20url%5Bi%5D.split(%22%3D%22)%3Bif(params%5B0%5D%20%3D%3D%20param)return%20params%5B1%5D%3B%7Dreturn%20false%3B%7Dlocation.href%3D'http%3A%2F%2Fwww.facebook.com%2F'%2BgetParam(%22id%22)%2B'%2Fposts%2F'%2BgetParam(%22story_fbid%22)%7D)()">M2D-FB</a></p>
<p>Drag the above link to your Bookmark bar, and whenever you are stuck with the mobile version of a Facebook post on a Desktop browser, click the above link to instantly convert it into a Desktop Facebook post.</p>
<p>The code for this bookmarklet is as follows:</p>
<pre>
function getParam(param) {
  var url = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
  for (var i=0;i&lt;url.length;i++) {
         var params = url[i].split("=");
         if(params[0] == param)
          return params[1];
  }
  return false;
}

location.href='http://www.facebook.com/'+getParam("id")+'/posts/'+getParam("story_fbid")
</pre>
<p>The <code>getParam</code> function has been borrowed from <a href="https://coderexample.com/fetch-query-string-parameters-from-url-in-javascript/" target="_blank">here</a>.</p>
<p>Bookmarklet creator at <a href="http://mrcoles.com/bookmarklet/" target="_blank">http://mrcoles.com/bookmarklet/</a> was used to convert the Javascript code into a Bookmarklet.</p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></content:encoded>
							<wfw:commentRss>https://www.humbug.in/2017/bookmarklet-convert-mobile-facebook-link-desktop-facebook-link/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
						<post-id xmlns="com-wordpress:feed-additions:1">1735</post-id>	</item>
		<item>
		<title>Find a Network Interface Mac Address Programatically on Linux</title>
		<link>https://www.humbug.in/2014/find-network-interface-mac-address-programatically-linux/</link>
				<comments>https://www.humbug.in/2014/find-network-interface-mac-address-programatically-linux/#respond</comments>
				<pubDate>Thu, 31 Jul 2014 22:36:43 +0000</pubDate>
		<dc:creator><![CDATA[Pratik Sinha]]></dc:creator>
				<category><![CDATA[Code-Snippets]]></category>

		<guid isPermaLink="false">http://www.humbug.in/?p=1715</guid>
				<description><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2014/find-network-interface-mac-address-programatically-linux/">Find a Network Interface Mac Address Programatically on Linux</a></p>
<p>Using the Mac Address of Network Interfaces in programs is a common requirement. The old age way of getting the mac address programatically on linux was to parse the not-so-machine-friendly ifconfig output. However with the sysfs file system mounted under /sys, accessing information from kernel sub-systems has become very easy. e.g. The Mac Address of [&#8230;]</p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></description>
								<content:encoded><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2014/find-network-interface-mac-address-programatically-linux/">Find a Network Interface Mac Address Programatically on Linux</a></p>
<p>Using the Mac Address of Network Interfaces in programs is a common requirement. The old age way of getting the mac address programatically on linux was to parse the not-so-machine-friendly <code>ifconfig</code> output. However with the sysfs file system mounted under /sys, accessing information from kernel sub-systems has become very easy. </p>
<p>e.g. The Mac Address of eth0 interface can be accessed by reading the <code>/sys/class/net/eth0/address</code> file. </p>
<p><a href="https://i2.wp.com/www.humbug.in/wp-content/uploads/2014/08/Wlan0-Eth0-Address-Programatically-sysfs.png"><img data-attachment-id="1720" data-permalink="https://www.humbug.in/2014/find-network-interface-mac-address-programatically-linux/wlan0-eth0-address-programatically-sysfs/" data-orig-file="https://i2.wp.com/www.humbug.in/wp-content/uploads/2014/08/Wlan0-Eth0-Address-Programatically-sysfs.png?fit=612%2C70&amp;ssl=1" data-orig-size="612,70" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}" data-image-title="Wlan0-Eth0-Address-Programatically-sysfs" data-image-description="" data-medium-file="https://i2.wp.com/www.humbug.in/wp-content/uploads/2014/08/Wlan0-Eth0-Address-Programatically-sysfs.png?fit=300%2C34&amp;ssl=1" data-large-file="https://i2.wp.com/www.humbug.in/wp-content/uploads/2014/08/Wlan0-Eth0-Address-Programatically-sysfs.png?fit=612%2C70&amp;ssl=1" src="https://i2.wp.com/www.humbug.in/wp-content/uploads/2014/08/Wlan0-Eth0-Address-Programatically-sysfs.png?resize=612%2C70" alt="Wlan0-Eth0-Address-Programatically-sysfs" width="612" height="70" class="aligncenter size-full wp-image-1720" srcset="https://i2.wp.com/www.humbug.in/wp-content/uploads/2014/08/Wlan0-Eth0-Address-Programatically-sysfs.png?w=612&amp;ssl=1 612w, https://i2.wp.com/www.humbug.in/wp-content/uploads/2014/08/Wlan0-Eth0-Address-Programatically-sysfs.png?resize=150%2C17&amp;ssl=1 150w, https://i2.wp.com/www.humbug.in/wp-content/uploads/2014/08/Wlan0-Eth0-Address-Programatically-sysfs.png?resize=300%2C34&amp;ssl=1 300w" sizes="(max-width: 612px) 100vw, 612px" data-recalc-dims="1" /></a></p>
<p>The code below is an example of how to use parse this information from within a C program.</p>
<pre class="vim">
<span class="PreProc">#include </span><span class="String">&lt;stdio.h&gt;</span>
<span class="PreProc">#include </span><span class="String">&lt;string.h&gt;</span>
<span class="PreProc">#include </span><span class="String">&lt;stdint.h&gt;</span>

<span class="Type">int</span> mac_get_ascii_from_file(<span class="Type">const</span> <span class="Type">char</span> *filename, <span class="Type">char</span> *addr) {
  <span class="Type">FILE</span> *fp;
  <span class="Type">int</span> i = <span class="Number">0</span>;
  <span class="Type">char</span> c;
  fp = fopen(filename, <span class="String">&quot;r&quot;</span>);
  <span class="Statement">if</span> (fp != <span class="Constant">NULL</span>) {
    <span class="Statement">while</span> (!feof(fp)) {
      c = fgetc(fp);
      <span class="Statement">if</span> (c == <span class="Constant">':'</span>)
        <span class="Statement">continue</span>;
      <span class="Statement">if</span> (c == <span class="Special">'\n'</span>)
        <span class="Statement">break</span>;
      addr[i++] = c;
    }
  }
  fclose(fp);
  <span class="Statement">return</span> <span class="Number">0</span>;
}

<span class="Type">int</span> mac_get_binary_from_file(<span class="Type">const</span> <span class="Type">char</span> *filename, <span class="Type">uint8_t</span> * mac) {
  <span class="Type">int</span> status = <span class="Number">1</span>;
  <span class="Type">char</span> buf[<span class="Number">256</span>];
  <span class="Type">FILE</span> *fp = fopen(filename, <span class="String">&quot;rt&quot;</span>);
  memset(buf, <span class="Number">0</span>, <span class="Number">256</span>);
  <span class="Statement">if</span> (fp) {
    <span class="Statement">if</span> (fgets(buf, <span class="Statement">sizeof</span> buf, fp) &gt; <span class="Number">0</span>) {
      sscanf(buf, <span class="String">&quot;</span><span class="Special">%hhx</span><span class="String">:</span><span class="Special">%hhx</span><span class="String">:</span><span class="Special">%hhx</span><span class="String">:</span><span class="Special">%hhx</span><span class="String">:</span><span class="Special">%hhx</span><span class="String">:</span><span class="Special">%hhx</span><span class="String">&quot;</span>, &amp;mac[<span class="Number">0</span>],
             &amp;mac[<span class="Number">1</span>], &amp;mac[<span class="Number">2</span>], &amp;mac[<span class="Number">3</span>], &amp;mac[<span class="Number">4</span>], &amp;mac[<span class="Number">5</span>]);
      status = <span class="Number">0</span>;
    }
    fclose(fp);
  }
  <span class="Statement">return</span> status;
}

<span class="Type">int</span> main(<span class="Type">void</span>) {
  <span class="Type">char</span> macaddr[<span class="Number">13</span>];
  <span class="Type">uint8_t</span> mac[<span class="Number">6</span>];
  memset(macaddr, <span class="Special">'\0'</span>, <span class="Number">13</span>);
  mac_get_ascii_from_file(<span class="String">&quot;/sys/class/net/eth0/address&quot;</span>, macaddr);
  printf(<span class="String">&quot;My Mac Address - </span><span class="Special">%s</span><span class="Special">\n</span><span class="String">&quot;</span>, macaddr);
  mac_get_binary_from_file(<span class="String">&quot;/sys/class/net/eth0/address&quot;</span>, mac);
  printf(<span class="String">&quot;My Mac Address - </span><span class="Special">%hhx</span><span class="String">:</span><span class="Special">%hhx</span><span class="String">:</span><span class="Special">%hhx</span><span class="String">:</span><span class="Special">%hhx</span><span class="String">:</span><span class="Special">%hhx</span><span class="String">:</span><span class="Special">%hhx</span><span class="Special">\n</span><span class="String">&quot;</span>, mac[<span class="Number">0</span>], mac[<span class="Number">1</span>], mac[<span class="Number">2</span>], mac[<span class="Number">3</span>], mac[<span class="Number">4</span>], mac[<span class="Number">5</span>]);
  <span class="Statement">return</span> <span class="Number">0</span>;
}
</pre>
<p>The sample output of the above program is shown below.</p>
<p><a href="https://i0.wp.com/www.humbug.in/wp-content/uploads/2014/08/Output-of-macaddr-program.png"><img data-attachment-id="1722" data-permalink="https://www.humbug.in/2014/find-network-interface-mac-address-programatically-linux/output-of-macaddr-program/" data-orig-file="https://i0.wp.com/www.humbug.in/wp-content/uploads/2014/08/Output-of-macaddr-program.png?fit=615%2C50&amp;ssl=1" data-orig-size="615,50" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}" data-image-title="Output-of-macaddr-program" data-image-description="" data-medium-file="https://i0.wp.com/www.humbug.in/wp-content/uploads/2014/08/Output-of-macaddr-program.png?fit=300%2C24&amp;ssl=1" data-large-file="https://i0.wp.com/www.humbug.in/wp-content/uploads/2014/08/Output-of-macaddr-program.png?fit=615%2C50&amp;ssl=1" src="https://i0.wp.com/www.humbug.in/wp-content/uploads/2014/08/Output-of-macaddr-program.png?resize=615%2C50" alt="Output-of-macaddr-program" width="615" height="50" class="aligncenter size-full wp-image-1722" srcset="https://i0.wp.com/www.humbug.in/wp-content/uploads/2014/08/Output-of-macaddr-program.png?w=615&amp;ssl=1 615w, https://i0.wp.com/www.humbug.in/wp-content/uploads/2014/08/Output-of-macaddr-program.png?resize=150%2C12&amp;ssl=1 150w, https://i0.wp.com/www.humbug.in/wp-content/uploads/2014/08/Output-of-macaddr-program.png?resize=300%2C24&amp;ssl=1 300w" sizes="(max-width: 615px) 100vw, 615px" data-recalc-dims="1" /></a></p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></content:encoded>
							<wfw:commentRss>https://www.humbug.in/2014/find-network-interface-mac-address-programatically-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
						<post-id xmlns="com-wordpress:feed-additions:1">1715</post-id>	</item>
		<item>
		<title>Using gatttool in a manual/non-interactive mode to read BLE devices</title>
		<link>https://www.humbug.in/2014/using-gatttool-manualnon-interactive-mode-read-ble-devices/</link>
				<comments>https://www.humbug.in/2014/using-gatttool-manualnon-interactive-mode-read-ble-devices/#comments</comments>
				<pubDate>Mon, 30 Jun 2014 10:51:25 +0000</pubDate>
		<dc:creator><![CDATA[Pratik Sinha]]></dc:creator>
				<category><![CDATA[Tips-N-Tricks]]></category>

		<guid isPermaLink="false">http://www.humbug.in/?p=1705</guid>
				<description><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2014/using-gatttool-manualnon-interactive-mode-read-ble-devices/">Using gatttool in a manual/non-interactive mode to read BLE devices</a></p>
<p>Gatttool is a tool distributed along with Bluez, the default linux bluetooth stack, to interact with Bluetooth Low Energy (BLE) devices. Currently I have a TI SensorTag with me for a project I&#8217;m working on and I&#8217;m playing around with it. Most of the examples on the internet which show how to use gatttool to [&#8230;]</p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></description>
								<content:encoded><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2014/using-gatttool-manualnon-interactive-mode-read-ble-devices/">Using gatttool in a manual/non-interactive mode to read BLE devices</a></p>
<p>Gatttool is a tool distributed along with Bluez, the default linux bluetooth stack, to interact with Bluetooth Low Energy (BLE) devices. Currently I have a <a href="http://www.ti.com/ww/en/wireless_connectivity/sensortag/index.shtml?INTC=SensorTag&#038;HQS=sensortag" target="_blank">TI SensorTag</a> with me for a project I&#8217;m working on and I&#8217;m playing around with it. Most of the examples on the internet which show how to use gatttool to read the TI Tag have shown how to use gatttool in its interactive mode (-I). For eg, to read the temperature sensor, you&#8217;d do the following using gatttool&#8217;s interactive mode</p>
<pre>
@~ $ sudo gatttool -b BC:6A:29:AE:CC:23 -I
[   ][BC:6A:29:AE:CC:23][LE]> <strong>connect</strong>
[CON][BC:6A:29:AE:CC:23][LE]> <strong>char-read-hnd 0x25</strong>
[CON][BC:6A:29:AE:CC:23][LE]> 
Characteristic value/descriptor: 00 00 00 00 
[CON][BC:6A:29:AE:CC:23][LE]> <strong>char-write-cmd 0x29 01</strong>
[CON][BC:6A:29:AE:CC:23][LE]> <strong>char-read-hnd 0x25</strong>
[CON][BC:6A:29:AE:CC:23][LE]> 
Characteristic value/descriptor: f0 fe 88 0e 
[CON][BC:6A:29:AE:CC:23][LE]> <strong>exit</strong>
</pre>
<p>However gatttool also offers a non-interactive mode which hasn&#8217;t been documented. To achieve the above result in manual, non-interactive mode, you would do the following;</p>
<pre>
@$ sudo hciconfig hci0 down; sudo hciconfig hci0 up
@$ sudo gatttool -b BC:6A:29:AE:CC:23 --char-read -a 0x25; sleep 1; sudo gatttool -b BC:6A:29:AE:CC:23 --char-write -a 0x29 -n 01; sleep 1; sudo gatttool -b BC:6A:29:AE:CC:23 --char-read -a 0x25; 
Characteristic value/descriptor: 00 00 00 00 
Characteristic value/descriptor: 36 ff 68 0e
</pre>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></content:encoded>
							<wfw:commentRss>https://www.humbug.in/2014/using-gatttool-manualnon-interactive-mode-read-ble-devices/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
						<post-id xmlns="com-wordpress:feed-additions:1">1705</post-id>	</item>
		<item>
		<title>Loading a Linux Library from a different path &#8211; LD_PRELOAD</title>
		<link>https://www.humbug.in/2014/loading-linux-library-different-path-ld_preload/</link>
				<comments>https://www.humbug.in/2014/loading-linux-library-different-path-ld_preload/#respond</comments>
				<pubDate>Fri, 27 Jun 2014 22:28:21 +0000</pubDate>
		<dc:creator><![CDATA[Pratik Sinha]]></dc:creator>
				<category><![CDATA[Tips-N-Tricks]]></category>

		<guid isPermaLink="false">http://www.humbug.in/?p=1703</guid>
				<description><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2014/loading-linux-library-different-path-ld_preload/">Loading a Linux Library from a different path &#8211; LD_PRELOAD</a></p>
<p>During the course of development, sometimes one needs to load a specific library from a specific path instead of the stock library that comes installed with the linux operating system. In such cases, LD_PRELOAD is a useful tool. For example, my Ubuntu 14.04 laptop has the Bluez (linux bluetooth stack) version 4.101-0ubuntu13 installed by default. [&#8230;]</p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></description>
								<content:encoded><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2014/loading-linux-library-different-path-ld_preload/">Loading a Linux Library from a different path &#8211; LD_PRELOAD</a></p>
<p>During the course of development, sometimes one needs to load a specific library from a specific path instead of the stock library that comes installed with the linux operating system. In such cases, <code>LD_PRELOAD</code> is a useful tool.</p>
<p>For example, my Ubuntu 14.04 laptop has the Bluez (linux bluetooth stack) version <code>4.101-0ubuntu13</code> installed by default. Thats a pretty old one. Since I wanted to use a newer version of the library for a project of mine and I didn&#8217;t want to overwrite my stock library, I installed the newer version (5.19) in a dedicated directory i.e. <code>/home/pratik/Developer/CL/bluez-5.19-install</code>. As a result, the newer version of the library resided at <code>/home/pratik/Developer/CL/bluez-5.19-install/lib/libbluetooth.so.3</code>. So now how do I explicity make a binary which is dependent on the bluetooth library use the one installed at the above mentioned location?</p>
<p>Trick is to use LD_PRELOAD. For eg. If I&#8217;m running a program called &#8216;a-bluetooth-program&#8217; and I want to run it against the new library, this is what I do.</p>
<pre>LD_PRELOAD=/home/pratik/Developer/CL/bluez-5.19-install/lib/libbluetooth.so.3 a-bluetooth-program</pre>
<p>How do I know the trick is working? Of course by using <code>ldd</code>.</p>
<pre>
@$ LD_PRELOAD=/home/pratik/Developer/CloudLeaf/bluez-5.19-install/lib/libbluetooth.so.3 <strong>ldd</strong> st
	linux-vdso.so.1 =>  (0x00007fffe1ee9000)
	<strong>/home/pratik/Developer/CloudLeaf/bluez-5.19-install/lib/libbluetooth.so.3</strong> (0x00007f1b5286f000)
	libncurses.so.5 => /lib/x86_64-linux-gnu/libncurses.so.5 (0x00007f1b52628000)
	libtinfo.so.5 => /lib/x86_64-linux-gnu/libtinfo.so.5 (0x00007f1b523fe000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f1b52038000)
	libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f1b51e34000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f1b52a90000)
</pre>
<p>If you look at the output of ldd command which is used to print the shared libraries required by a command, you will see that st is now linking to the newer version of the library.</p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></content:encoded>
							<wfw:commentRss>https://www.humbug.in/2014/loading-linux-library-different-path-ld_preload/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
						<post-id xmlns="com-wordpress:feed-additions:1">1703</post-id>	</item>
		<item>
		<title>Fix &#8216;Skype Always Online&#8217; Problem</title>
		<link>https://www.humbug.in/2014/fix-skype-always-online-problem/</link>
				<comments>https://www.humbug.in/2014/fix-skype-always-online-problem/#respond</comments>
				<pubDate>Mon, 05 May 2014 19:48:11 +0000</pubDate>
		<dc:creator><![CDATA[Pratik Sinha]]></dc:creator>
				<category><![CDATA[Tips-N-Tricks]]></category>

		<guid isPermaLink="false">http://www.humbug.in/?p=1694</guid>
				<description><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2014/fix-skype-always-online-problem/">Fix &#8216;Skype Always Online&#8217; Problem</a></p>
<p>Every since Microsoft bought off Skype, they have decided that they are NOT going to let you go offline. Thats how much they love you being online. So well, you have to knock off Microsoft from your Skype account to be able to go offline. Log on to your Skype online account settings => https://secure.skype.com/portal/account/settings [&#8230;]</p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></description>
								<content:encoded><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2014/fix-skype-always-online-problem/">Fix &#8216;Skype Always Online&#8217; Problem</a></p>
<p>Every since Microsoft bought off Skype, they have decided that they are NOT going to let you go offline. Thats how much they love you being online. So well, you have to knock off Microsoft from your Skype account to be able to go offline.</p>
<ul>
<li>Log on to your Skype online account settings => <a href="https://secure.skype.com/portal/account/settings" target="_blank">https://secure.skype.com/portal/account/settings</a>
</li>
<li>Unlink the Microsoft Account. Once unlinked, your Account settings page will look like the screenshot below.<br />
<a href="https://i0.wp.com/www.humbug.in/wp-content/uploads/2014/05/Skype-Always-Online-Problem.jpg"><img data-attachment-id="1695" data-permalink="https://www.humbug.in/2014/fix-skype-always-online-problem/skype-always-online-problem/" data-orig-file="https://i0.wp.com/www.humbug.in/wp-content/uploads/2014/05/Skype-Always-Online-Problem.jpg?fit=1201%2C591&amp;ssl=1" data-orig-size="1201,591" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}" data-image-title="Skype-Always-Online-Problem" data-image-description="" data-medium-file="https://i0.wp.com/www.humbug.in/wp-content/uploads/2014/05/Skype-Always-Online-Problem.jpg?fit=300%2C147&amp;ssl=1" data-large-file="https://i0.wp.com/www.humbug.in/wp-content/uploads/2014/05/Skype-Always-Online-Problem.jpg?fit=720%2C354&amp;ssl=1" src="https://i0.wp.com/www.humbug.in/wp-content/uploads/2014/05/Skype-Always-Online-Problem.jpg?resize=625%2C307" alt="Skype-Always-Online-Problem" width="625" height="307" class="aligncenter size-large wp-image-1695" srcset="https://i0.wp.com/www.humbug.in/wp-content/uploads/2014/05/Skype-Always-Online-Problem.jpg?resize=1024%2C503&amp;ssl=1 1024w, https://i0.wp.com/www.humbug.in/wp-content/uploads/2014/05/Skype-Always-Online-Problem.jpg?resize=150%2C73&amp;ssl=1 150w, https://i0.wp.com/www.humbug.in/wp-content/uploads/2014/05/Skype-Always-Online-Problem.jpg?resize=300%2C147&amp;ssl=1 300w, https://i0.wp.com/www.humbug.in/wp-content/uploads/2014/05/Skype-Always-Online-Problem.jpg?resize=624%2C307&amp;ssl=1 624w, https://i0.wp.com/www.humbug.in/wp-content/uploads/2014/05/Skype-Always-Online-Problem.jpg?w=1201&amp;ssl=1 1201w" sizes="(max-width: 625px) 100vw, 625px" data-recalc-dims="1" /></a></li>
<li>In a few seconds, knocking Microsoft out of your Skype account should bear results.</li>
<li>Follow suit for other (IT) problems in your life. Say no to Microsoft.</li>
</ul>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></content:encoded>
							<wfw:commentRss>https://www.humbug.in/2014/fix-skype-always-online-problem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
						<post-id xmlns="com-wordpress:feed-additions:1">1694</post-id>	</item>
		<item>
		<title>Sniffing Unix Domain Sockets</title>
		<link>https://www.humbug.in/2013/sniffing-unix-domain-sockets/</link>
				<comments>https://www.humbug.in/2013/sniffing-unix-domain-sockets/#respond</comments>
				<pubDate>Wed, 27 Nov 2013 18:06:10 +0000</pubDate>
		<dc:creator><![CDATA[Pratik Sinha]]></dc:creator>
				<category><![CDATA[Tips-N-Tricks]]></category>
		<category><![CDATA[socat]]></category>
		<category><![CDATA[unix domain sockets]]></category>

		<guid isPermaLink="false">http://www.humbug.in/?p=1658</guid>
				<description><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2013/sniffing-unix-domain-sockets/">Sniffing Unix Domain Sockets</a></p>
<p>Usually wireshark is used to sniff packets traversing a network. But how does one sniff a unix domain socket? Using socat as a proxy is a neat trick to capture packets traversing a unix socket. In the below command, /tmp/originalsocket is the socket the Unix Socket Server is listening on, while /tmp/duplicatesocket is the socket [&#8230;]</p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></description>
								<content:encoded><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2013/sniffing-unix-domain-sockets/">Sniffing Unix Domain Sockets</a></p>
<p>Usually wireshark is used to sniff packets traversing a network. But how does one sniff a unix domain socket? Using <code>socat</code> as a proxy is a neat trick to capture packets traversing a unix socket.</p>
<p>In the below command, <code>/tmp/originalsocket</code> is the socket the Unix Socket Server is listening on, while <code>/tmp/duplicatesocket</code> is the socket that the unix client should connect to. <code>socat</code> will dump all the transactions that go on in a hexadecimal format</p>
<pre>
sudo socat -t100 -x -v UNIX-LISTEN:/tmp/duplicatesocket,mode=777,reuseaddr,fork UNIX-CONNECT:/tmp/originalsocket
</pre>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></content:encoded>
							<wfw:commentRss>https://www.humbug.in/2013/sniffing-unix-domain-sockets/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
						<post-id xmlns="com-wordpress:feed-additions:1">1658</post-id>	</item>
		<item>
		<title>Restart Unity From the Terminal</title>
		<link>https://www.humbug.in/2013/restart-unity-terminal/</link>
				<comments>https://www.humbug.in/2013/restart-unity-terminal/#respond</comments>
				<pubDate>Wed, 20 Nov 2013 01:50:34 +0000</pubDate>
		<dc:creator><![CDATA[Pratik Sinha]]></dc:creator>
				<category><![CDATA[Tips-N-Tricks]]></category>
		<category><![CDATA[restart-unity]]></category>

		<guid isPermaLink="false">http://www.humbug.in/?p=1655</guid>
				<description><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2013/restart-unity-terminal/">Restart Unity From the Terminal</a></p>
<p>Restart Unity From the Terminal pkill --signal USR1 unity</p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></description>
								<content:encoded><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2013/restart-unity-terminal/">Restart Unity From the Terminal</a></p>
<p>Restart Unity From the Terminal</p>
<pre>pkill --signal USR1 unity</pre>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></content:encoded>
							<wfw:commentRss>https://www.humbug.in/2013/restart-unity-terminal/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
						<post-id xmlns="com-wordpress:feed-additions:1">1655</post-id>	</item>
		<item>
		<title>Multiple Github Accounts and SSH Keys</title>
		<link>https://www.humbug.in/2013/multiple-github-accounts-ssh-keys/</link>
				<comments>https://www.humbug.in/2013/multiple-github-accounts-ssh-keys/#respond</comments>
				<pubDate>Sun, 10 Nov 2013 10:40:43 +0000</pubDate>
		<dc:creator><![CDATA[Pratik Sinha]]></dc:creator>
				<category><![CDATA[Tips-N-Tricks]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[github]]></category>
		<category><![CDATA[ssh]]></category>

		<guid isPermaLink="false">http://www.humbug.in/?p=1651</guid>
				<description><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2013/multiple-github-accounts-ssh-keys/">Multiple Github Accounts and SSH Keys</a></p>
<p>Besides my regular Github freethinker account, I had to create a new github account for my new job. Problem was how to manage different ssh keys for different github accounts as Github doesn&#8217;t allow the same key for more than one account. The Solution is: 1) Create a new alias for github.com in the ~/.ssh/config [&#8230;]</p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></description>
								<content:encoded><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2013/multiple-github-accounts-ssh-keys/">Multiple Github Accounts and SSH Keys</a></p>
<p>Besides my regular Github <a href="https://github.com/freethinker">freethinker</a> account, I had to create a new github account for my new job. Problem was how to manage different ssh keys for different github accounts as Github doesn&#8217;t allow the same key for more than one account. The Solution is:</p>
<p>1) Create a new alias for github.com in the <code>~/.ssh/config</code> file.</p>
<pre>
Host GitHub-readme
  Hostname=github.com
  IdentityFile=~/.ssh/id_rsa_alt
</pre>
<p>This alias still points to github.com but when you ssh into github using the new alias, it will use the alternative SSH key. <strong>It should be noted that Github recognizes you not by your username but by your ssh key.</strong></p>
<p>Before you go on, do remember to <code>ssh-add</code> the key.</p>
<pre>
ssh-add ~/.ssh/id_rsa_alt
</pre>
<p>To verify whether the ssh key has been added or not</p>
<pre>
ssh-add -l 
</pre>
<p>2) Next, lets verify if our new configuration works with github. To do so, execute <code>ssh -T git@GitHub-readme</code>, where <code>GitHub-readme</code> is the new alias we created in step one with an alternative ssh key.</p>
<pre>
@~ $ ssh -T git@GitHub-readme
Hi pratikreadmesys! You've successfully authenticated, but GitHub does not provide shell access.
</pre>
<p>3) Finally either clone a new repository or edit the <code>.git/config</code> of your present repository. Use the new alias that we created in step 1 instead of &#8216;github.com&#8217; in the command line.</p>
<pre>
git clone git@<strong>GitHub-readme</strong>:ReadmeSystemsInc/testrepository.git
</pre>
<p>Alternatively if you have already checked out the repository, update the remote URL.</p>
<pre>
[remote "origin"]
  url = git@<strong>GitHub-readme</strong>:ReadmeSystemsInc/testrepository.git
  fetch = +refs/heads/*:refs/remotes/origin/*
</pre>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></content:encoded>
							<wfw:commentRss>https://www.humbug.in/2013/multiple-github-accounts-ssh-keys/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
						<post-id xmlns="com-wordpress:feed-additions:1">1651</post-id>	</item>
		<item>
		<title>Super Quick Setup for a Temporary Linux Router</title>
		<link>https://www.humbug.in/2012/super-quick-setup-for-a-temporary-linux-router/</link>
				<comments>https://www.humbug.in/2012/super-quick-setup-for-a-temporary-linux-router/#respond</comments>
				<pubDate>Mon, 26 Nov 2012 16:49:30 +0000</pubDate>
		<dc:creator><![CDATA[Pratik Sinha]]></dc:creator>
				<category><![CDATA[Guides]]></category>
		<category><![CDATA[dhcpd]]></category>
		<category><![CDATA[IPtables]]></category>
		<category><![CDATA[masquerade]]></category>
		<category><![CDATA[router]]></category>

		<guid isPermaLink="false">http://www.humbug.in/?p=1572</guid>
				<description><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2012/super-quick-setup-for-a-temporary-linux-router/">Super Quick Setup for a Temporary Linux Router</a></p>
<p>I often need to quickly setup a router using my linux laptop and hence documenting the general steps. Lets assume wlan0 is the internet facing interface while eth0 is the LAN interface. Add/Edit the following in /etc/sysctl.conf net.ipv4.ip_forward = 1 net.ipv6.conf.all.forwarding = 1 Execute the following command to setup the sysctl values. sudo sysctl -p [&#8230;]</p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></description>
								<content:encoded><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2012/super-quick-setup-for-a-temporary-linux-router/">Super Quick Setup for a Temporary Linux Router</a></p>
<p>I often need to quickly setup a router using my linux laptop and hence documenting the general steps.</p>
<p>Lets assume <code>wlan0</code> is the internet facing interface while <code>eth0</code> is the LAN interface.</p>
<p>Add/Edit the following in <code>/etc/sysctl.conf</code></p>
<pre>
net.ipv4.ip_forward = 1
net.ipv6.conf.all.forwarding = 1
</pre>
<p><span id="more-1572"></span><br />
Execute the following command to setup the sysctl values.</p>
<pre>
sudo sysctl -p /etc/sysctl.conf
</pre>
<p>Make sure the default route is pointing to <code>wlan0</code></p>
<p>Masquerade on the internet facing interface i.e. <code>wlan0</code></p>
<pre>
sudo iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
</pre>
<p>Now give <code>eth0</code> an IP and use an IP in the same broadcast range as <code>eth0</code> for the device sitting on the LAN. </p>
<p>For eg</p>
<pre>
sudo ifconfig eth0 192.168.137.1
</pre>
<p>And now use <code>192.168.137.2</code> for the device on the LAN network.</p>
<p>Additional step could be to setup a dhcpd server on the eth0 interface. Here&#8217;s a sample dhcpd configuration</p>
<pre>
default-lease-time 600;
max-lease-time 7200;
subnet 192.168.137.0 netmask 255.255.255.0 {
 range 192.168.137.2 192.168.137.254;
}
</pre>
<p>Now to run the dhcpd server on <code>eth0</code></p>
<pre>
sudo dhcpd -f -cf /etc/dhcpd.conf eth0
</pre>
<p>Remove the <code>-f</code> if you want to run dhcpd in background.</p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></content:encoded>
							<wfw:commentRss>https://www.humbug.in/2012/super-quick-setup-for-a-temporary-linux-router/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
						<post-id xmlns="com-wordpress:feed-additions:1">1572</post-id>	</item>
		<item>
		<title>Assertion &#8216;b&#8217; failed at pulsecore/memblock.c:454, function pa_memblock_acquire(). Aborting</title>
		<link>https://www.humbug.in/2012/assertion-b-failed-at-pulsecorememblock-c454-function-pa_memblock_acquire-aborting/</link>
				<comments>https://www.humbug.in/2012/assertion-b-failed-at-pulsecorememblock-c454-function-pa_memblock_acquire-aborting/#respond</comments>
				<pubDate>Sat, 24 Nov 2012 05:49:39 +0000</pubDate>
		<dc:creator><![CDATA[Pratik Sinha]]></dc:creator>
				<category><![CDATA[Tips-N-Tricks]]></category>
		<category><![CDATA[pulseaudio]]></category>
		<category><![CDATA[skype]]></category>

		<guid isPermaLink="false">http://www.humbug.in/?p=1568</guid>
				<description><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2012/assertion-b-failed-at-pulsecorememblock-c454-function-pa_memblock_acquire-aborting/">Assertion &#8216;b&#8217; failed at pulsecore/memblock.c:454, function pa_memblock_acquire(). Aborting</a></p>
<p>My skype started crashing all of a sudden with the above error. The suggested fix for now is to set enable-shm = no in /etc/pulse/daemon.conf or /etc/pulse/server.conf, whichever file your distribution uses. Restart X after updating the configuration.</p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></description>
								<content:encoded><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2012/assertion-b-failed-at-pulsecorememblock-c454-function-pa_memblock_acquire-aborting/">Assertion &#8216;b&#8217; failed at pulsecore/memblock.c:454, function pa_memblock_acquire(). Aborting</a></p>
<p>My skype started crashing all of a sudden with the above error. The suggested fix for now is to set <code>enable-shm = no</code> in <code>/etc/pulse/daemon.conf</code> or <code>/etc/pulse/server.conf</code>, whichever file your distribution uses. Restart X after updating the configuration.</p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></content:encoded>
							<wfw:commentRss>https://www.humbug.in/2012/assertion-b-failed-at-pulsecorememblock-c454-function-pa_memblock_acquire-aborting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
						<post-id xmlns="com-wordpress:feed-additions:1">1568</post-id>	</item>
		<item>
		<title>Enable Netfilter/Iptables on ArchLinux</title>
		<link>https://www.humbug.in/2012/enable-netfilteriptables-on-archlinux/</link>
				<comments>https://www.humbug.in/2012/enable-netfilteriptables-on-archlinux/#respond</comments>
				<pubDate>Sat, 24 Nov 2012 03:30:12 +0000</pubDate>
		<dc:creator><![CDATA[Pratik Sinha]]></dc:creator>
				<category><![CDATA[Tips-N-Tricks]]></category>
		<category><![CDATA[archlinux]]></category>
		<category><![CDATA[IPtables]]></category>

		<guid isPermaLink="false">http://www.humbug.in/?p=1566</guid>
				<description><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2012/enable-netfilteriptables-on-archlinux/">Enable Netfilter/Iptables on ArchLinux</a></p>
<p>I was surprised that iptables modules are not loaded automatically on ArchLinux. Here&#8217;s how you load them. Dump the following lines in any file (for eg. netfilter.conf) under modules-load.d and restart your machine. Alternatively load the modules manually if you want to avoid restarting. @~ 1028$ cat /etc/modules-load.d/netfilter.conf x_tables ip_tables iptable_filter iptable_mangle nf_conntrack nf_defrag_ipv4 nf_conntrack_ipv4 [&#8230;]</p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></description>
								<content:encoded><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2012/enable-netfilteriptables-on-archlinux/">Enable Netfilter/Iptables on ArchLinux</a></p>
<p>I was surprised that iptables modules are not loaded automatically on ArchLinux. Here&#8217;s how you load them. Dump the following lines in any file (for eg. netfilter.conf) under modules-load.d and restart your machine. Alternatively load the modules manually if you want to avoid restarting. </p>
<pre>
@~ 1028$ cat /etc/modules-load.d/netfilter.conf 
x_tables
ip_tables
iptable_filter
iptable_mangle
nf_conntrack
nf_defrag_ipv4
nf_conntrack_ipv4
nf_nat
iptable_nat
</pre>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></content:encoded>
							<wfw:commentRss>https://www.humbug.in/2012/enable-netfilteriptables-on-archlinux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
						<post-id xmlns="com-wordpress:feed-additions:1">1566</post-id>	</item>
		<item>
		<title>Sample Kernel Build with the new F2FS filesystem by Samsung</title>
		<link>https://www.humbug.in/2012/sample-kernel-build-with-the-new-f2fs-filesystem-by-samsung/</link>
				<comments>https://www.humbug.in/2012/sample-kernel-build-with-the-new-f2fs-filesystem-by-samsung/#respond</comments>
				<pubDate>Fri, 02 Nov 2012 21:08:07 +0000</pubDate>
		<dc:creator><![CDATA[Pratik Sinha]]></dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Embedded Systems]]></category>
		<category><![CDATA[F2FS]]></category>
		<category><![CDATA[Linux Kernel]]></category>

		<guid isPermaLink="false">http://www.humbug.in/?p=1555</guid>
				<description><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2012/sample-kernel-build-with-the-new-f2fs-filesystem-by-samsung/">Sample Kernel Build with the new F2FS filesystem by Samsung</a></p>
<p>Sample Kernel Build with the new F2FS filesystem by Samsung</p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></description>
								<content:encoded><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2012/sample-kernel-build-with-the-new-f2fs-filesystem-by-samsung/">Sample Kernel Build with the new F2FS filesystem by Samsung</a></p>
<p><a href="https://aur.archlinux.org/packages.php?ID=64214">Sample Kernel Build with the new F2FS filesystem by Samsung</a></p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></content:encoded>
							<wfw:commentRss>https://www.humbug.in/2012/sample-kernel-build-with-the-new-f2fs-filesystem-by-samsung/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
						<post-id xmlns="com-wordpress:feed-additions:1">1555</post-id>	</item>
		<item>
		<title>Embedded Systems Tip: Compress Kernel Modules to Save on Disk Space</title>
		<link>https://www.humbug.in/2012/embedded-systems-tip-compress-kernel-modules-to-save-on-disk-space/</link>
				<comments>https://www.humbug.in/2012/embedded-systems-tip-compress-kernel-modules-to-save-on-disk-space/#respond</comments>
				<pubDate>Fri, 02 Nov 2012 21:00:03 +0000</pubDate>
		<dc:creator><![CDATA[Pratik Sinha]]></dc:creator>
				<category><![CDATA[Tips-N-Tricks]]></category>
		<category><![CDATA[Embedded Systems]]></category>
		<category><![CDATA[kernel modules]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.humbug.in/?p=1551</guid>
				<description><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2012/embedded-systems-tip-compress-kernel-modules-to-save-on-disk-space/">Embedded Systems Tip: Compress Kernel Modules to Save on Disk Space</a></p>
<p>Just read about this package on AUR (Arch Linux User Repository) which compresses kernel modules using xz compression, so decided to make a note for myself that I should use this technique when required. https://aur.archlinux.org/packages.php?ID=64213</p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></description>
								<content:encoded><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2012/embedded-systems-tip-compress-kernel-modules-to-save-on-disk-space/">Embedded Systems Tip: Compress Kernel Modules to Save on Disk Space</a></p>
<p>Just read about this package on AUR (Arch Linux User Repository) which compresses kernel modules using xz compression, so decided to make a note for myself that I should use this technique when required.</p>
<p><a href="https://aur.archlinux.org/packages.php?ID=64213">https://aur.archlinux.org/packages.php?ID=64213</a></p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></content:encoded>
							<wfw:commentRss>https://www.humbug.in/2012/embedded-systems-tip-compress-kernel-modules-to-save-on-disk-space/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
						<post-id xmlns="com-wordpress:feed-additions:1">1551</post-id>	</item>
		<item>
		<title>Enable Mac OS X style Two Finger Scrolling in Linux with Gnome</title>
		<link>https://www.humbug.in/2012/enable-mac-os-x-style-two-finger-scrolling-in-linux-with-gnome/</link>
				<comments>https://www.humbug.in/2012/enable-mac-os-x-style-two-finger-scrolling-in-linux-with-gnome/#comments</comments>
				<pubDate>Sun, 21 Oct 2012 06:03:54 +0000</pubDate>
		<dc:creator><![CDATA[Pratik Sinha]]></dc:creator>
				<category><![CDATA[Guides]]></category>
		<category><![CDATA[archlinux]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[mac-os-x]]></category>

		<guid isPermaLink="false">http://www.humbug.in/?p=1528</guid>
				<description><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2012/enable-mac-os-x-style-two-finger-scrolling-in-linux-with-gnome/">Enable Mac OS X style Two Finger Scrolling in Linux with Gnome</a></p>
<p>I have been using a MacBook Pro at work for the past 6 months. I&#8217;m not a huge fan of either the MacBook or Mac OS X. OS X according to me is highly bloated and a very poor unix platform. Try entering a command line option at the end of a command &#8211; For [&#8230;]</p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></description>
								<content:encoded><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2012/enable-mac-os-x-style-two-finger-scrolling-in-linux-with-gnome/">Enable Mac OS X style Two Finger Scrolling in Linux with Gnome</a></p>
<p>I have been using a MacBook Pro at work for the past 6 months. I&#8217;m not a huge fan of either the MacBook or Mac OS X. OS X according to me is highly bloated and a very poor unix platform. Try entering a command line option at the end of a command &#8211; For eg. <code>ls * -l</code>. Applications are installed in their individual directories and are almost never in the path when one needs to execute them from the command line. However one of the features that I grew to love about MacBook is the multi-touch trackpad, especially the two-finger scrolling. Having shifted to Arch Linux for the past month or so, I had been missing the two-finger scrolling. The trackpad that comes with my Lenovo Thinkpad recognizes multi-touch gestures. So I decided to look up how to get two finger scrolling to work and it was surprisingly simple.<span id="more-1528"></span></p>
<p>You should install the <code>xf86-input-synaptics</code> package if you don&#8217;t have it already.</p>
<p>Step 1 is to update the Xorg Synaptics Configuration. In Arch Linux, this resides at <code>/etc/X11/xorg.conf.d/10-synaptics.conf</code>. </p>
<pre>
Section "InputClass"
Identifier "touchpad catchall"
Driver "synaptics"
MatchIsTouchpad "on"
MatchDevicePath "/dev/input/event*"
  Option "TapButton1" "1"
  Option "TapButton2" "2"
  Option "TapButton3" "3"
  Option "VertEdgeScroll" "on"
  Option "VertTwoFingerScroll" "on"
  Option "HorizEdgeScroll" "on"
  Option "HorizTwoFingerScroll" "on"
  Option "CircularScrolling" "on"
  Option "CircScrollTrigger" "2"
  Option "EmulateTwoFingerMinZ" "40"
  Option "EmulateTwoFingerMinW" "8"
  Option "CoastingSpeed" "0"
EndSection
</pre>
<p>Step 2: Logout and Login back into your Gnome/Unity Session</p>
<p>Step 3: Open the &#8216;Mouse and Touchpad&#8217; section under &#8216;System Settings&#8217; and enable &#8216;Two-finger scrolling&#8217;. Screenshot below.<br />
<a href="https://i0.wp.com/www.humbug.in/wp-content/uploads/2012/10/Screenshot-from-2012-10-20-225155.png"><img data-attachment-id="1535" data-permalink="https://www.humbug.in/2012/enable-mac-os-x-style-two-finger-scrolling-in-linux-with-gnome/screenshot-from-2012-10-20-225155/" data-orig-file="https://i0.wp.com/www.humbug.in/wp-content/uploads/2012/10/Screenshot-from-2012-10-20-225155.png?fit=869%2C485&amp;ssl=1" data-orig-size="869,485" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}" data-image-title="Two Finger Scrolling in Linux" data-image-description="" data-medium-file="https://i0.wp.com/www.humbug.in/wp-content/uploads/2012/10/Screenshot-from-2012-10-20-225155.png?fit=300%2C167&amp;ssl=1" data-large-file="https://i0.wp.com/www.humbug.in/wp-content/uploads/2012/10/Screenshot-from-2012-10-20-225155.png?fit=720%2C402&amp;ssl=1" src="https://i0.wp.com/www.humbug.in/wp-content/uploads/2012/10/Screenshot-from-2012-10-20-225155.png?resize=720%2C402" alt="Two Finger Scrolling in Linux" title="Two Finger Scrolling in Linux" width="720" height="402" class="aligncenter size-full wp-image-1535" data-recalc-dims="1" /></a></p>
<p>The above configurations were enough for me to get two finger scrolling to work. Awesome! </p>
<div class="note">
<div class="icon">
The above configuration also enables 2 finger tapping if you have &#8216;Enable mouse clicks with touchpad&#8217; enabled in &#8216;Mouse and Touchpad&#8217; settings. A 2 finger tap will result in the right click menu. Not something I use very often.
</div>
</div>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></content:encoded>
							<wfw:commentRss>https://www.humbug.in/2012/enable-mac-os-x-style-two-finger-scrolling-in-linux-with-gnome/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
						<post-id xmlns="com-wordpress:feed-additions:1">1528</post-id>	</item>
		<item>
		<title>Using Picasa as a Photo Viewer in Arch Linux</title>
		<link>https://www.humbug.in/2012/using-picasa-as-a-photo-viewer-in-arch-linux/</link>
				<comments>https://www.humbug.in/2012/using-picasa-as-a-photo-viewer-in-arch-linux/#respond</comments>
				<pubDate>Sun, 21 Oct 2012 05:21:51 +0000</pubDate>
		<dc:creator><![CDATA[Pratik Sinha]]></dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[archlinux]]></category>
		<category><![CDATA[picasa]]></category>

		<guid isPermaLink="false">http://www.humbug.in/?p=1530</guid>
				<description><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2012/using-picasa-as-a-photo-viewer-in-arch-linux/">Using Picasa as a Photo Viewer in Arch Linux</a></p>
<p>I just added a package on AUR which enables using Picasa as a Photo Viewer. Got the inspiration from here. If you already have yaourt installed, then installing the application is a breeze. yaourt -S picasa-photo-viewer Sample installation log is shown in the following screenshot Ubuntu Tweak is a good utility to change the default [&#8230;]</p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></description>
								<content:encoded><![CDATA[<p><a rel="nofollow" href="https://www.humbug.in/2012/using-picasa-as-a-photo-viewer-in-arch-linux/">Using Picasa as a Photo Viewer in Arch Linux</a></p>
<p>I just added a <a href="https://aur.archlinux.org/packages.php?ID=63792" target="_blank">package on AUR</a> which enables using Picasa as a Photo Viewer. Got the inspiration from <a href="http://www.caiacoa.de/wiki/index.php/Picasa_Photo_Viewer_(Linux_port)_for_Ubuntu" target="_blank">here</a>.</p>
<p>If you already have <code>yaourt</code> installed, then installing the application is a breeze.</p>
<pre><span class="syntax-COMMAND">
yaourt -S picasa-photo-viewer
</span></pre>
<p>Sample installation log is shown in the following screenshot</p>
<p><a href="https://i1.wp.com/www.humbug.in/wp-content/uploads/2012/10/Screenshot-from-2012-10-20-223126.png"><img data-attachment-id="1533" data-permalink="https://www.humbug.in/2012/using-picasa-as-a-photo-viewer-in-arch-linux/screenshot-from-2012-10-20-223126/" data-orig-file="https://i1.wp.com/www.humbug.in/wp-content/uploads/2012/10/Screenshot-from-2012-10-20-223126.png?fit=1551%2C876&amp;ssl=1" data-orig-size="1551,876" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}" data-image-title="Screenshot from 2012-10-20 22:31:26" data-image-description="" data-medium-file="https://i1.wp.com/www.humbug.in/wp-content/uploads/2012/10/Screenshot-from-2012-10-20-223126.png?fit=300%2C169&amp;ssl=1" data-large-file="https://i1.wp.com/www.humbug.in/wp-content/uploads/2012/10/Screenshot-from-2012-10-20-223126.png?fit=720%2C407&amp;ssl=1" src="https://i1.wp.com/www.humbug.in/wp-content/uploads/2012/10/Screenshot-from-2012-10-20-223126.png?resize=720%2C407" alt="" title="Screenshot from 2012-10-20 22:31:26" width="720" height="407" class="aligncenter size-full wp-image-1533" data-recalc-dims="1" /></a></p>
<p>Ubuntu Tweak is a good utility to change the default photo viewer to Picasa, looking for a &#8216;PicasaPhotoViewer&#8217; application in the list.</p>
<p><a rel="nofollow" href="https://www.humbug.in">Pratik Sinha - Founder-Editor Alt News, Debunking Misinformation</a></p>
]]></content:encoded>
							<wfw:commentRss>https://www.humbug.in/2012/using-picasa-as-a-photo-viewer-in-arch-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
						<post-id xmlns="com-wordpress:feed-additions:1">1530</post-id>	</item>
	</channel>
</rss>
