<?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>SurlyJake</title>
	<atom:link href="http://www.surlyjake.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.surlyjake.com</link>
	<description></description>
	<lastBuildDate>Thu, 29 Mar 2012 17:18:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Easily Test Packages From Arch Linux Testing Repositories</title>
		<link>http://www.surlyjake.com/2012/03/easily-test-packages-from-arch-linux-testing-repositories/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=easily-test-packages-from-arch-linux-testing-repositories</link>
		<comments>http://www.surlyjake.com/2012/03/easily-test-packages-from-arch-linux-testing-repositories/#comments</comments>
		<pubDate>Thu, 29 Mar 2012 17:18:05 +0000</pubDate>
		<dc:creator>jacob</dc:creator>
				<category><![CDATA[Arch]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Arch Linux]]></category>
		<category><![CDATA[dependencies]]></category>
		<category><![CDATA[nvidia]]></category>
		<category><![CDATA[pacman]]></category>
		<category><![CDATA[repository]]></category>
		<category><![CDATA[update]]></category>

		<guid isPermaLink="false">http://www.surlyjake.com/?p=926</guid>
		<description><![CDATA[Sometimes, when a new kernel or application that I use a lot comes out, I want to quickly download and test it on my system. It is simple enough to edit /etc/pacman.conf and enable the testing repositories, then update your system. Problem is, enabling the testing and/or community-testing repos at their default position will update [...]]]></description>
			<content:encoded><![CDATA[<p>Sometimes, when a new kernel or application that I use a lot comes out, I want to quickly download and test it on my system. It is simple enough to edit /etc/<a href="http://www.surlyjake.com/tag/pacman/" class="st_tag internal_tag" rel="tag" title="Posts tagged with pacman">pacman</a>.conf and enable the testing repositories, then <a href="http://www.surlyjake.com/tag/update/" class="st_tag internal_tag" rel="tag" title="Posts tagged with update">update</a> your system. Problem is, enabling the testing and/or community-testing repos at their default position will <a href="http://www.surlyjake.com/tag/update/" class="st_tag internal_tag" rel="tag" title="Posts tagged with update">update</a> all packages which have versions in testing.</p>
<p>If you put the <code>[testing]</code> and <code>[community-testing]</code> repos after <code>[core]</code> and <code>[community]</code> accordingly. This will tell pacman to prefer the stable versions of packages. Running <code>pacman -Syu</code> will result in the same set of packages as before.</p>
<p>Once pacman is configured with the testing repositories enabled as described above, you can selectively run versions of applications that are in testing with all of their testing <a href="http://www.surlyjake.com/tag/dependencies/" class="st_tag internal_tag" rel="tag" title="Posts tagged with dependencies">dependencies</a> without messing about. If you want to <a href="http://www.surlyjake.com/tag/install/" class="st_tag internal_tag" rel="tag" title="Posts tagged with install">install</a> a package from the testing <a href="http://www.surlyjake.com/tag/repository/" class="st_tag internal_tag" rel="tag" title="Posts tagged with repository">repository</a>, you simply prefix it with the <a href="http://www.surlyjake.com/tag/repository/" class="st_tag internal_tag" rel="tag" title="Posts tagged with repository">repository</a>&#8217;s name. Here is an example:</p>
<p>Linus releases a new kernel and you have read that it fixes some bug that has been plaguing you for months. It&#8217;s in <code>[testing]</code>, but you just can&#8217;t wait. You can:</p>
<ol>
<li>Go to the Arch packages site and manually download the .pkg.xz files of the kernel and all it&#8217;s dependencies, then install them with pacman -U.</li>
<li>Enable the <code>[testing]</code> repo and run an update. This might give you a lot more than you bargained for.</li>
<li>If you configured pacman as I described above, you can simply run <code>pacman -Syu testing/<a href="http://www.surlyjake.com/tag/linux/" class="st_tag internal_tag" rel="tag" title="Posts tagged with Linux">linux</a></code></li>
</ol>
<p>If you have already installed a package which requires an older package than the one you are instaling, pacman will prompt you with the problem like this</p>
<pre><code>error: failed to prepare transaction (could not satisfy dependencies) :: <a href="http://www.surlyjake.com/tag/nvidia/" class="st_tag internal_tag" rel="tag" title="Posts tagged with nvidia">nvidia</a>: requires linux</code></pre>
<p>You can usually sove this by installing a newer version of that dependency. The solution in this case is to also install the nvidia package from testing:</p>
<pre><code>pacman -Syu testing/linux testing/nvidia</code></pre>
<p>Now It should go through.</p>
<p><strong>Disclaimer</strong>: Obviously running something from testing is done at your own risk. Be sure to read up on the repositories you enable here: <a title="https://wiki.archlinux.org/index.php/Official_Repositories" href="https://wiki.archlinux.org/index.php/Official_Repositories" target="_blank">https://wiki.archlinux.org/index.php/Official_Repositories</a></p>
<div class="none"><div class="g-plusone" data-href="http://www.surlyjake.com/2012/03/easily-test-packages-from-arch-linux-testing-repositories/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.surlyjake.com/2012/03/easily-test-packages-from-arch-linux-testing-repositories/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New ArchLinux mirror</title>
		<link>http://www.surlyjake.com/2012/03/new-archlinux-mirror/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=new-archlinux-mirror</link>
		<comments>http://www.surlyjake.com/2012/03/new-archlinux-mirror/#comments</comments>
		<pubDate>Thu, 15 Mar 2012 20:36:05 +0000</pubDate>
		<dc:creator>jacob</dc:creator>
				<category><![CDATA[Arch]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Arch Linux]]></category>

		<guid isPermaLink="false">http://www.surlyjake.com/?p=911</guid>
		<description><![CDATA[I love Arch linux and have been using it for a few months now. When I started, many of the mirrors I used were slow or would go offline and/or out of date. When I saw an offer for a VPS which should allow me to host a mirror of the archlinux package archives, I [...]]]></description>
			<content:encoded><![CDATA[<p>I love Arch <a href="http://www.surlyjake.com/tag/linux/" class="st_tag internal_tag" rel="tag" title="Posts tagged with Linux">linux</a> and have been using it for a few months now. When I started, many of the mirrors I used were slow or would go offline and/or out of date. When I saw an offer for a VPS which should allow me to host a mirror of the archlinux package archives, I snatched it up. If you run arch, you can point <a href="http://www.surlyjake.com/tag/pacman/" class="st_tag internal_tag" rel="tag" title="Posts tagged with pacman">pacman</a> at my server by adding this line in /etc/<a href="http://www.surlyjake.com/tag/pacman/" class="st_tag internal_tag" rel="tag" title="Posts tagged with pacman">pacman</a>.d/mirrorlist:</p>
<pre><code>Server = http://archlinux.surlyjake.com/archlinux/$repo/os/$arch</code></pre>
<p>I threw together a quick page showing some general stats for the server which you can view at <a title="Arch Linux mirror" href="http://archlinux.surlyjake.com/" target="_blank">http://archlinux.surlyjake.com/</a>.The server has been added as an <a title="Arch Linux mirror" href="http://www.archlinux.org/mirrors/archlinux.surlyjake.com/" target="_blank">official Arch Linux mirror</a>, but is not in the pacman-mirrorlist package (I&#8217;m not sure what the process for that is).</p>
<div class="none"><div class="g-plusone" data-href="http://www.surlyjake.com/2012/03/new-archlinux-mirror/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.surlyjake.com/2012/03/new-archlinux-mirror/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Review After One Year of QuickWeb VPS Hosting</title>
		<link>http://www.surlyjake.com/2012/02/review-after-one-year-of-quickweb-vps-hosting/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=review-after-one-year-of-quickweb-vps-hosting</link>
		<comments>http://www.surlyjake.com/2012/02/review-after-one-year-of-quickweb-vps-hosting/#comments</comments>
		<pubDate>Sun, 19 Feb 2012 17:05:42 +0000</pubDate>
		<dc:creator>jacob</dc:creator>
				<category><![CDATA[Hosting]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[VM]]></category>

		<guid isPermaLink="false">http://www.surlyjake.com/?p=903</guid>
		<description><![CDATA[One year ago, I purchased a VPS from QuickWeb. I found the deal at my one of my favorite sites for cheap hosting: www.lowendbox.com. The deal was: OpenVZ VPS 256MB RAM/386 Burst 10G disk space 250GB bandwidth/ Month on 1 IP $35.88/ 1 Year I ordered without much of a problem and my Debian server [...]]]></description>
			<content:encoded><![CDATA[<p>One year ago, I purchased a VPS from QuickWeb. I found the deal at my one of my favorite sites for cheap hosting: www.lowendbox.com. The deal was:</p>
<ul>
<li>OpenVZ VPS</li>
<li>256MB RAM/386 Burst</li>
<li>10G disk space</li>
<li>250GB bandwidth/ Month on 1 IP</li>
<li>$35.88/ 1 Year</li>
</ul>
<p>I ordered without much of a problem and my <a href="http://www.surlyjake.com/tag/debian/" class="st_tag internal_tag" rel="tag" title="Posts tagged with Debian">Debian</a> server was provisioned within a few minutes. I was a happy camper. $2.99/month is a great deal for root access to a server, even one with such meager specs. I&#8217;ve had a decent year of hosting with QuickWeb, but I decided to take my business elsewhere when my plan came up for renewal. To help explain why,  I want to share the three support tickets I had to open with them. This will give you the clearest idea of what you get for the money. I Would have included the full text of these exchanges, but they insert a privacy notice in the signature of their support emails, so i&#8217;m worried that I may have agreed to something in their TOS.</p>
<ol>
<li>The server that QuickWeb provisioned for me was fully loaded. For me, that wasn&#8217;t such a good thing. The server already had web, DNS, and mail server software installed and running (apache, named, and postfix IIRC).  I wasn&#8217;t comfortable with that because I prefer to start from scratch, planned on using nginx and didn&#8217;t need to run a DNS and public mail server. I opened a ticket asking if i could get a server provisioned that only includes the base Debian <a href="http://www.surlyjake.com/tag/install/" class="st_tag internal_tag" rel="tag" title="Posts tagged with install">install</a>. The response from QuickWeb was that they don&#8217;t have a minimal template &#8216;yet&#8217;, but that I could uninstall packages that i don&#8217;t need using apt-get. Thanks.</li>
<li>In July of last year, there was a service interruption. This site was down.  Not just me, I checked stuff like connecting from a few other servers that I have access too and, of course, http://www.downforeveryoneorjustme.com/. I opened a ticket. An hour and a half later, a response told me that I had sent the ticket to sales instead of the helpdesk and next time, to use the helpdesk for faster response. Another hour and a half later, they replied and told me that the VPS was actually up the whole time, but there was a brief network interruption in their management network, so I wan&#8217;t able to connect to check the status of my VPS. I had to reiterrate that whether or not the server was UP, It was unreachable over the network for an hour and a half.  The last reply from them came 8 hours in. They asked me to do stuff like turn off IPtables and give them a traceroute.<br />
I gave them a ticket without a lot of information, somehow sent it into their sales queue, but it took them 8 hours to get me a semi-intelligent response.  They never acknowleged a problem with public connectivity to my server.</li>
<li>The isue that sealed the deal for me happened this December when QuickWeb changed the IP of my server. Despite their claims to have notified me, I never got an email from them. I used a gmail account to handle all their communication with me.  Yes, even checked the spam folder. No notice. I submitted a ticket for this one too and all they did was tell me that they sent me emails about it while I told them that they didn&#8217;t.</li>
</ol>
<p>The server this site is runing on now is a KVM VPS from bitcable. So far the support there is night and day compared with QuickWeb.  Preetam helped me set up the virtIO drivers on <a href="http://www.surlyjake.com/tag/freebsd/" class="st_tag internal_tag" rel="tag" title="Posts tagged with FreeBSD">FreeBSD</a>. More on that later.</p>
<div class="none"><div class="g-plusone" data-href="http://www.surlyjake.com/2012/02/review-after-one-year-of-quickweb-vps-hosting/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.surlyjake.com/2012/02/review-after-one-year-of-quickweb-vps-hosting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Create a custom application launcher in GNOME3</title>
		<link>http://www.surlyjake.com/2011/12/create-a-custom-application-launcher-in-gnome3/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=create-a-custom-application-launcher-in-gnome3</link>
		<comments>http://www.surlyjake.com/2011/12/create-a-custom-application-launcher-in-gnome3/#comments</comments>
		<pubDate>Fri, 30 Dec 2011 15:26:51 +0000</pubDate>
		<dc:creator>jacob</dc:creator>
				<category><![CDATA[Arch]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[GNOME]]></category>
		<category><![CDATA[IDE]]></category>
		<category><![CDATA[svg]]></category>

		<guid isPermaLink="false">http://www.surlyjake.com/?p=879</guid>
		<description><![CDATA[On Arch, the system-wide shortcuts are stored in /usr/share/applications. Each one is a .desktop file with a few parameters. user-specific icons are stored in ~/.local/share/applications. I downloaded eclipse and extracted it in my home directory, so I&#8217;ll use eclipse as the example application. Create the .desktop file: nano ~/.local/share/applications/Eclipse.desktop Paste this in: [Desktop Entry] Encoding=UTF-8 [...]]]></description>
			<content:encoded><![CDATA[<p>On Arch, the system-wide shortcuts are stored in /usr/share/applications. Each one is a .desktop file with a few parameters. user-specific icons are stored in ~/.local/share/applications. I downloaded eclipse and extracted it in my home directory, so I&#8217;ll use eclipse as the example application.</p>
<ol>
<li><strong>Create the .desktop file:</strong>
<pre><code>nano ~/.local/share/applications/Eclipse.desktop</code></pre>
<p>Paste this in:</p>
<pre><code>[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
NoDisplay=false
Exec=/path/to/eclipse/eclipse
Name=Eclipse Comment=Launcher for Eclipse</code></pre>
<p>Each line is pretty self-explanatory. Edit to suit your needs. As soon as you save the file, you will be able to see your new shortcut in the list.</li>
<li><strong>(Optional) Give the shortcut a nice-looking icon:</strong><br />
You probably noticed that your icon is an ugly diamond. To pretty it up, you simply have to add one more line to the desktop file.</p>
<pre><code> Icon=/path/to/eclipse/eclipse.<a href="http://www.surlyjake.com/tag/svg/" class="st_tag internal_tag" rel="tag" title="Posts tagged with svg">svg</a></code></pre>
<p>Your application may have included a png icon, but to make it really look nice, you should grab an SVG file of the logo from somewhere. Arch has a very simple packaging process which lets you examine all of the package building elements through their webpage at http://www.archlinux.org/packages/. I was able to grab the SVG which the package uses like this:</p>
<pre><code>wget -O eclipse.svg http://projects.archlinux.org/svntogit/packages.git/plain/trunk/eclipse.svg\?h\=packages/eclipse</code></pre>
</li>
</ol>
<div class="none"><div class="g-plusone" data-href="http://www.surlyjake.com/2011/12/create-a-custom-application-launcher-in-gnome3/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.surlyjake.com/2011/12/create-a-custom-application-launcher-in-gnome3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress HTTPS secure login</title>
		<link>http://www.surlyjake.com/2011/12/wordpress-https-secure-login-with-nginx/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=wordpress-https-secure-login-with-nginx</link>
		<comments>http://www.surlyjake.com/2011/12/wordpress-https-secure-login-with-nginx/#comments</comments>
		<pubDate>Wed, 21 Dec 2011 03:36:11 +0000</pubDate>
		<dc:creator>jacob</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.surlyjake.com/?p=862</guid>
		<description><![CDATA[Back when I started with WordPress, I had to create server rewrites to force my browser to use HTTPS. That changed back in 2008, but this is the first i&#8217;ve heard of it. WordPress 2.6 (released in July, 2008) and newer include the tools do do this out of the box! Using this documentation, you [...]]]></description>
			<content:encoded><![CDATA[<p>Back when I started with <a href="http://www.surlyjake.com/tag/wordpress/" class="st_tag internal_tag" rel="tag" title="Posts tagged with wordpress">WordPress</a>, I had to create server rewrites to force my browser to use HTTPS. That changed back in 2008, but this is the first i&#8217;ve heard of it.</p>
<p>WordPress 2.6 (released in July, 2008) and newer include the tools do do this out of the box! Using this documentation, you can get rid of some old .htaccess or nginx rewrite rules: <a title="http://codex.wordpress.org/Administration_Over_SSL" href="http://codex.wordpress.org/Administration_Over_SSL" target="_blank">http://codex.wordpress.org/Administration_Over_SSL</a>.  All you have to do is add the declaration in wp-config.php:</p>
<pre><code>define('FORCE_SSL_ADMIN', true);</code></pre>
<p>This forces logins and administrative sessions to use SSL.</p>
<p>Now, you can remove the old nginx rewrites. They aren&#8217;t needed anymore:</p>
<pre><code>rewrite ^/wp-login.php(.*) https://www.surlyjake.com/wp-login.php$1 permanent;</code>
<code>rewrite ^/wp-admin(.*) https://www.surlyjake.com/wp-admin$1 permanent;</code></pre>
<div class="none"><div class="g-plusone" data-href="http://www.surlyjake.com/2011/12/wordpress-https-secure-login-with-nginx/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.surlyjake.com/2011/12/wordpress-https-secure-login-with-nginx/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress Redirection Plugin</title>
		<link>http://www.surlyjake.com/2011/09/wordpress-redirection-plugin/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=wordpress-redirection-plugin</link>
		<comments>http://www.surlyjake.com/2011/09/wordpress-redirection-plugin/#comments</comments>
		<pubDate>Fri, 09 Sep 2011 20:10:17 +0000</pubDate>
		<dc:creator>jacob</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[web developer]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.surlyjake.com/?p=809</guid>
		<description><![CDATA[This blog is undergoing some changes.There is some content (like the zabbix pages) that I can no longer maintain since I no longer use them in my day-job. To keep everything working seamlessly, I wanted to create some 302 (permanently moved) redirectors for the content that I was taking down. In the past, I used [...]]]></description>
			<content:encoded><![CDATA[<p>This blog is undergoing some changes.There is some content (like the zabbix pages) that I can no longer maintain since I no longer use them in my day-job. To keep everything working seamlessly, I wanted to create some 302 (permanently moved) redirectors for the content that I was taking down. In the past, I used a plugin called &#8220;<a href="http://wordpress.org/extend/plugins/smart-404/" target="_blank">smart 404</a>&#8221; to intelligently redirect visitors to a good page instead of the dummy standard 404 page. Unfortunately, It looks like smart 404 is having some trouble in newer <a href="http://www.surlyjake.com/tag/wordpress/" class="st_tag internal_tag" rel="tag" title="Posts tagged with wordpress">WordPress</a> versions and wouldn&#8217;t create a smart suggestions on my 404 page.</p>
<p>Enter <a href="http://wordpress.org/extend/plugins/redirection/" target="_blank">Redirection</a>. Redirection gives you a menu in the admin interface which allows you to easily create and maintain 301 and 302 redirections (among other features). Here is a screenshot of what it looks like once activated:</p>
<p><a href="http://www.surlyjake.com/2011/09/wordpress-redirection-plugin/wordpress-redirection-plugin/" rel="attachment wp-att-818"><img class="size-large wp-image-818 alignnone" title="wordpress-redirection-plugin" src="http://www.surlyjake.com/wp-content/uploads/2011/09/wordpress-redirection-plugin-1024x389.jpg" alt="" width="570" height="216" /></a></p>
<p>From the screenshot, you can see that I was able to create a simple 301 redirect from a page on my WordPress instance to an external website where the content will live from now on.  The second rule allowed me to match the URL using a regular expression and redirect it to another page on my site. This is a great piece of software.</p>
<p>One issue I ran into when testing the plugin was that edits I made did not seem to be taking effect. This turned out to simply be my browser caching the 301 response. I recommend that you either manually clear the cache or download the <a href="http://chrispederick.com/work/web-developer/" target="_blank">web developer toolbar</a> and disable cache.  I should also note that my server runs nginx and not the Apache web server. I simply deleted the redirection &#8216;module&#8217; for Apache which attempts to create .htaccess rules to perform the redirections. Without the Apache module, WordPress handles the redirections.</p>
<p>Redirection Plugin documentation: <a href="http://urbangiraffe.com/plugins/redirection/" target="_blank">http://urbangiraffe.com/plugins/redirection/</a></p>
<div class="none"><div class="g-plusone" data-href="http://www.surlyjake.com/2011/09/wordpress-redirection-plugin/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.surlyjake.com/2011/09/wordpress-redirection-plugin/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Prevent samba from creating home directory for machine accounts.</title>
		<link>http://www.surlyjake.com/2011/08/prevent-samba-from-creating-home-directory-for-machine-accounts/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=prevent-samba-from-creating-home-directory-for-machine-accounts</link>
		<comments>http://www.surlyjake.com/2011/08/prevent-samba-from-creating-home-directory-for-machine-accounts/#comments</comments>
		<pubDate>Fri, 05 Aug 2011 22:34:29 +0000</pubDate>
		<dc:creator>jacob</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Samba]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.surlyjake.com/?p=367</guid>
		<description><![CDATA[Since this setup automatically creates a home directory for a user as soon as they access the machine (via samba, ssh, console), I noticed some directories being created for computer accounts.  To prevent this,  I have added a line that only &#8220;Domain Users&#8221; are allowed to authenticate.  To add this: wbinfo -n "Domain Users" It [...]]]></description>
			<content:encoded><![CDATA[<p>Since this setup automatically creates a home directory for a user as soon as they access the machine (via samba, ssh, console), I noticed some directories being created for computer accounts.  To prevent this,  I have added a line that only &#8220;Domain Users&#8221; are allowed to authenticate.  To add this:</p>
<pre><code>wbinfo -n "Domain Users"</code></pre>
<p>It will spit out the SID for the Domain Users group. Something like this:</p>
<pre><code>S-1-5-21-((some number))-((some number))-((some number)) Domain Group (2)</code></pre>
<p>Take that number and change the Pam_winbind.so line in /etc/pam.d/common-session to look like this:</p>
<pre><code>session sufficient pam_winbind.so require_membership_of=S-1-5-21-((some number))-((some number))-((some number)</code></pre>
<div class="none"><div class="g-plusone" data-href="http://www.surlyjake.com/2011/08/prevent-samba-from-creating-home-directory-for-machine-accounts/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.surlyjake.com/2011/08/prevent-samba-from-creating-home-directory-for-machine-accounts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Create a single standalone .exe from a Python program</title>
		<link>http://www.surlyjake.com/2011/03/create-a-single-standalone-exe-from-a-python-program/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=create-a-single-standalone-exe-from-a-python-program</link>
		<comments>http://www.surlyjake.com/2011/03/create-a-single-standalone-exe-from-a-python-program/#comments</comments>
		<pubDate>Mon, 28 Mar 2011 13:53:00 +0000</pubDate>
		<dc:creator>jacob</dc:creator>
				<category><![CDATA[Python]]></category>
		<category><![CDATA[configure]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.surlyjake.com/?p=754</guid>
		<description><![CDATA[I have been working on a small windows command line tool that I wanted to distribute it as a single executable file on windows. I tried cx_freeze and py2exe. Both of these tools worked well, but I couldn&#8217;t find an easy way to compress make the whole program into a .exe file. py2exe and cx_freeze [...]]]></description>
			<content:encoded><![CDATA[<p>I have been working on a small <a href="http://www.surlyjake.com/tag/windows/" class="st_tag internal_tag" rel="tag" title="Posts tagged with windows">windows</a> command line tool that I wanted to distribute it as a single executable file on <a href="http://www.surlyjake.com/tag/windows/" class="st_tag internal_tag" rel="tag" title="Posts tagged with windows">windows</a>. I tried cx_freeze and py2exe. Both of these tools worked well, but I couldn&#8217;t find an easy way to compress make the whole program into a .exe file. py2exe and cx_freeze both create working programs, but there are always some dependent .zip archive or .dll&#8217;s somewhere that need to be distributed with it. Pyinstaller, I found, actually compresses everything into a single .exe. This makes a pretty big executable (my small command line utility created a 5MB .exe file), but it&#8217;s simple and it works.</p>
<p>To use pyinstaller:</p>
<ol>
<li> grab pyinstaller 1.5rc (1.4 doesn&#8217;t work with <a href="http://www.surlyjake.com/tag/python-2/" class="st_tag internal_tag" rel="tag" title="Posts tagged with python">python</a> 2.7). <a href="http://www.surlyjake.com/tag/extract/" class="st_tag internal_tag" rel="tag" title="Posts tagged with extract">extract</a> the zip file anywhere.</li>
<li>change directories to the pyinstaller folder you just created.</li>
<li>Before you create your first executable, you will have to run this once.</li>
<pre><code>python <a href="http://www.surlyjake.com/tag/configure/" class="st_tag internal_tag" rel="tag" title="Posts tagged with configure">configure</a>.py</code></pre>
<li>Now, pyinstall needs to scan through your program and create what they call a spec file.</li>
<pre><code>python makespec.py --onefile path\to\program\program.py</code></pre>
<li>Now, run this command to generate the executable.</li>
<pre><code>python build.py program\program.spec</code></pre>
</ol>
<p>Once the command has finished, the standalone executable will be available in the program\dist folder inside of pyinstaller.<br />
Instructions for how to do this for a <a href="http://www.surlyjake.com/tag/linux/" class="st_tag internal_tag" rel="tag" title="Posts tagged with Linux">linux</a> executable on ubuntu <a href="http://www.surlyjake.com/tag/linux/" class="st_tag internal_tag" rel="tag" title="Posts tagged with Linux">linux</a> can be found here: <a href="http://excid3.com/blog/2009/12/pyinstaller-a-simple-tutorial/">http://excid3.com/blog/2009/12/pyinstaller-a-simple-tutorial/</a>. You can find more info on pyinstaller at their website: <a href="http://www.pyinstaller.org/">http://www.pyinstaller.org/</a>.</p>
<div class="none"><div class="g-plusone" data-href="http://www.surlyjake.com/2011/03/create-a-single-standalone-exe-from-a-python-program/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.surlyjake.com/2011/03/create-a-single-standalone-exe-from-a-python-program/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Install Open-VM-tools on Debian 6 squeeze</title>
		<link>http://www.surlyjake.com/2011/02/install-open-vm-tools-on-debian-6-squeeze/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=install-open-vm-tools-on-debian-6-squeeze</link>
		<comments>http://www.surlyjake.com/2011/02/install-open-vm-tools-on-debian-6-squeeze/#comments</comments>
		<pubDate>Tue, 08 Feb 2011 21:51:53 +0000</pubDate>
		<dc:creator>jacob</dc:creator>
				<category><![CDATA[Debian Squeeze]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[install]]></category>
		<category><![CDATA[squeeze]]></category>
		<category><![CDATA[virtual machine]]></category>
		<category><![CDATA[VM]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[vmware tools]]></category>

		<guid isPermaLink="false">http://www.surlyjake.com/?p=700</guid>
		<description><![CDATA[Installing Open Virtual Machine Tools is a nice alternative to managing and installing the vmware tools package that comes with Vmware&#8217;s hypervisor products.  It allows you to use APT to manage all the dependencies and updates. Module assistant will recompile the kernel modules for you automatically when you update kernels too. I have verified that [...]]]></description>
			<content:encoded><![CDATA[<p>Installing Open <a href="http://www.surlyjake.com/tag/virtual-machine/" class="st_tag internal_tag" rel="tag" title="Posts tagged with virtual machine">Virtual Machine</a> Tools is a nice alternative to managing and installing the <a href="http://www.surlyjake.com/tag/vmware-tools/" class="st_tag internal_tag" rel="tag" title="Posts tagged with vmware tools">vmware tools</a> package that comes with <a href="http://www.surlyjake.com/tag/vmware/" class="st_tag internal_tag" rel="tag" title="Posts tagged with VMware">Vmware</a>&#8217;s hypervisor products.  It allows you to use APT to manage all the <a href="http://www.surlyjake.com/tag/dependencies/" class="st_tag internal_tag" rel="tag" title="Posts tagged with dependencies">dependencies</a> and updates. Module assistant will recompile the kernel modules for you automatically when you <a href="http://www.surlyjake.com/tag/update/" class="st_tag internal_tag" rel="tag" title="Posts tagged with update">update</a> kernels too.</p>
<p>I have verified that this configuration works under ESXi 4.1.0, 260247 and a new <a href="http://www.surlyjake.com/tag/squeeze/" class="st_tag internal_tag" rel="tag" title="Posts tagged with squeeze">Squeeze</a> <a href="http://www.surlyjake.com/tag/install/" class="st_tag internal_tag" rel="tag" title="Posts tagged with install">install</a>. All of the essential functions like being able to see guest OS information on the Vsphere summary page and performing &#8220;Shut Down Guest&#8221; and &#8220;Restart Guest&#8221; all work as expected. If your experiences vary, please leave a comment</p>
<p><em>This should all be performed by the root user (otherwise prepend &#8216;sudo&#8217; to the commands if you must use sudo). </em><br />
The first thing you need to do is add the &#8216;contrib&#8217; archive to your apt sources config:</p>
<pre><code>nano /etc/apt/sources.list</code></pre>
<p>Add the &#8216;contrib&#8217; to the end of these source lines. I use the <a href="http://www.surlyjake.com/tag/debian/" class="st_tag internal_tag" rel="tag" title="Posts tagged with Debian">debian</a>.uchicago.edu <a href="http://www.surlyjake.com/tag/repository/" class="st_tag internal_tag" rel="tag" title="Posts tagged with repository">repository</a>, so mine look like this on a new install:</p>
<pre><code>deb http://debian.uchicago.edu/debian/ squeeze main contrib
deb-src http://debian.uchicago.edu/debian/ squeeze main contrib</code></pre>
<p>After you save changes to the file, simply update your package list and perform the install:</p>
<pre><code>apt-get update
apt-get install open-<a href="http://www.surlyjake.com/tag/vm/" class="st_tag internal_tag" rel="tag" title="Posts tagged with VM">vm</a>-tools open-<a href="http://www.surlyjake.com/tag/vm/" class="st_tag internal_tag" rel="tag" title="Posts tagged with VM">vm</a>-source</code></pre>
<p>You might see an error that looks like this:</p>
<pre><code>Loading open-vm-tools modules: vmhgfsFATAL: Module vmhgfs not found.
 vmmemctlFATAL: Module vmmemctl not found.
 vmsyncFATAL: Module vmsync not found.</code></pre>
<p>Don&#8217;t worry, this is because we have not installed the kernel modules for some of the more advanced VMware functions like the vmhgfs file system, Memory Balloon (vmmemctl) Driver,  and vmsync, which helps freeze the VM while taking snapshots.<br />
To install these kernel modules, we&#8217;re going to use module-assistant. It will compile the modules for your kernel:</p>
<pre><code>module-assistant auto-install open-vm -i</code></pre>
<p>The &#8216;-i&#8217; puts module assistant into non-interactive mode. It wont ask you to confirm any additional package installs necesarry to set up the build environment.<br />
If you&#8217;re running a server without a Graphical environment, you&#8217;re finished. If you want features such as automatically adjusting the VM&#8217;s monitor resolution or allowing your mouse to seamlessly move between your host system and the VM, you need to install one more package:</p>
<pre><code>apt-get install open-vm-toolbox</code></pre>
<p>Now you won&#8217;t need to use CTRL+ALT to switch back and forth.</p>
<div class="none"><div class="g-plusone" data-href="http://www.surlyjake.com/2011/02/install-open-vm-tools-on-debian-6-squeeze/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.surlyjake.com/2011/02/install-open-vm-tools-on-debian-6-squeeze/feed/</wfw:commentRss>
		<slash:comments>30</slash:comments>
		</item>
		<item>
		<title>Tar extract destination folder</title>
		<link>http://www.surlyjake.com/2011/02/tar-extract-destination-folder/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tar-extract-destination-folder</link>
		<comments>http://www.surlyjake.com/2011/02/tar-extract-destination-folder/#comments</comments>
		<pubDate>Tue, 08 Feb 2011 17:51:10 +0000</pubDate>
		<dc:creator>jacob</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[extract]]></category>
		<category><![CDATA[VMware]]></category>

		<guid isPermaLink="false">http://www.surlyjake.com/?p=698</guid>
		<description><![CDATA[Tar can redirect extracted files to a different folder. This can be handy if you want to unpack a tar archive stored on a cd or other read-only media and want to eliminate the step of first copying the archive, extracting it, then deleting the extra tar.  All you have to do is add a [...]]]></description>
			<content:encoded><![CDATA[<p>Tar can redirect extracted files to a different folder. This can be handy if you want to unpack a tar archive stored on a cd or other read-only media and want to eliminate the step of first copying the archive, extracting it, then deleting the extra tar.  All you have to do is add a &#8216;-C &lt;target folder&gt;&#8217; to the tar command.   So here&#8217;s an example using the <a href="http://www.surlyjake.com/tag/vmware-tools/" class="st_tag internal_tag" rel="tag" title="Posts tagged with vmware tools">VMware Tools</a> tarball:</p>
<pre><code># tar -C /root -zxvf /media/cdrom0/VMwareTools-8.3.2-257589.tar.gz</code></pre>
<p>This will redirect the extracted files into the /root folder. simple</p>
<div class="none"><div class="g-plusone" data-href="http://www.surlyjake.com/2011/02/tar-extract-destination-folder/" size="standard" count="true"></div></div>]]></content:encoded>
			<wfw:commentRss>http://www.surlyjake.com/2011/02/tar-extract-destination-folder/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 0.292 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2012-05-16 16:59:17 -->

