<?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>David North &#187; Debian</title>
	<atom:link href="http://www.dnorth.net/category/debian/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.dnorth.net</link>
	<description>The scribblings of an Oxford-based geek</description>
	<lastBuildDate>Sun, 29 Aug 2010 15:23:58 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Converting Word documents to PDF with OpenOffice and Python</title>
		<link>http://www.dnorth.net/2010/08/29/converting-word-documents-to-pdf-with-openoffice-and-python/</link>
		<comments>http://www.dnorth.net/2010/08/29/converting-word-documents-to-pdf-with-openoffice-and-python/#comments</comments>
		<pubDate>Sun, 29 Aug 2010 15:23:58 +0000</pubDate>
		<dc:creator>David North</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.dnorth.net/?p=265</guid>
		<description><![CDATA[The problem A word document (plain old .doc, not 2007) should be received by e-mail, fed to a script, turned into a PDF and published on a website. At my disposal My server running Debian &#8216;Lenny&#8217;, which does not have a display of any kind. How hard can it be? Harder than it should have [...]]]></description>
			<content:encoded><![CDATA[<h2>The problem</h2>
<p>A word document (plain old .doc, not 2007) should be received by e-mail, fed to a script, turned into a PDF and published on a website.</p>
<h2>At my disposal</h2>
<p>My server running Debian &#8216;Lenny&#8217;, which does not have a display of any kind.</p>
<h2>How hard can it be?</h2>
<p>Harder than it should have been, as ever. Here are my steps:</p>
<pre># aptitude install python-uno xvfb openoffice.org-java-common openoffice.org-writer unoconv
</pre>
<p>You&#8217;ll note the inclusion of <a href="http://en.wikipedia.org/wiki/Xvfb">Xvfb</a> there, because it turns out that &#8220;headless&#8221; mode in OpenOffice <a href="http://www.oooforum.org/forum/viewtopic.phtml?t=3600">isn&#8217;t really headless at all</a>. Sigh. Also sigh some more at the <a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=491456">broken dependencies of the unoconv Debian package</a>.</p>
<p>Now we can write our <a href="https://svn.dnorth.net/svn/dotfiles/trunk/pymodules/doc2pdf.py">script</a> to do the actual conversion. Shame it took twice as long as it should have&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dnorth.net/2010/08/29/converting-word-documents-to-pdf-with-openoffice-and-python/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>mod_wsgi delivers on the promise</title>
		<link>http://www.dnorth.net/2010/03/08/mod_wsgi-delivers-on-the-promise/</link>
		<comments>http://www.dnorth.net/2010/03/08/mod_wsgi-delivers-on-the-promise/#comments</comments>
		<pubDate>Mon, 08 Mar 2010 22:30:22 +0000</pubDate>
		<dc:creator>David North</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[SysAdmin]]></category>

		<guid isPermaLink="false">http://www.dnorth.net/?p=228</guid>
		<description><![CDATA[It&#8217;s been over a year since I deployed Django in production, and I wasn&#8217;t looking forward to it. Last time, I had a lot of trouble with mod_python, sessions and decimal objects refuising to pickle. Thankfully, all this really seems to have grown up in the last year &#8211; mod_wsgi is now the recommended way [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">It&#8217;s been over a year since I deployed <a href="http://www.djangoproject.com">Django</a> in production, and I wasn&#8217;t looking forward to it. Last time, I had a lot of trouble with mod_python, sessions and decimal objects refuising to pickle.</p>
<p style="text-align: justify;">Thankfully, all this really seems to have grown up in the last year &#8211; <a href="http://code.google.com/p/modwsgi/">mod_wsgi</a> is now the <a href="http://docs.djangoproject.com/en/dev/howto/deployment/modwsgi/">recommended way</a> of deploying Django in production, and following the <a href="http://code.google.com/p/modwsgi/wiki/IntegrationWithDjango">mod_wsgi django instructions</a>, I was in business in 20 minutes. No fuss, no mess, no drama, and best of all, using daemon mode, no noticeable performance hit when serving static files and PHP off the same Apache installation. The ability to run the django project as its own unprivileged user when using daemon mode is also real handy.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dnorth.net/2010/03/08/mod_wsgi-delivers-on-the-promise/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>On leaving Slicehost</title>
		<link>http://www.dnorth.net/2009/07/16/on-leaving-slicehost/</link>
		<comments>http://www.dnorth.net/2009/07/16/on-leaving-slicehost/#comments</comments>
		<pubDate>Thu, 16 Jul 2009 19:30:45 +0000</pubDate>
		<dc:creator>David North</dc:creator>
				<category><![CDATA[Debian]]></category>
		<category><![CDATA[SysAdmin]]></category>

		<guid isPermaLink="false">http://www.dnorth.net/?p=146</guid>
		<description><![CDATA[Just over 18 months ago, I signed up for a 256slice from Slicehost to host this website, my email, etc. Later this week, I shall be shutting the machine down and cancelling my account with them. For the record, this has nothing to do with the level of service I&#8217;ve received from them &#8211; I&#8217;ve [...]]]></description>
			<content:encoded><![CDATA[<p>Just over 18 months ago, I signed up for a 256slice from <a href="http://www.slicehost.com">Slicehost</a> to host this website, my email, etc. Later this week, I shall be shutting the machine down and cancelling my account with them.</p>
<p>For the record, this has nothing to do with the level of service I&#8217;ve received from them &#8211; I&#8217;ve always found their support team quick to respond and helpful, and their <a href="http://articles.slicehost.com">articles site</a> and <a href="http://wiki.slicehost.com">wiki</a> are both very handy.</p>
<p>However, a combination of fluctuations of the pound against the dollar, a surge in demand for RAM by my applications and sites, and my getting increasingly fed up with transatlantic ping times of 130ms meant the machine was becoming unfit for purpose and overloaded.</p>
<p>Thus, I have now found a reasonably cheap way to bring &#8220;my stuff&#8221; home to hosting in the UK. About <a href="http://www.splice.org.uk">which</a>, I will be writing more shortly!</p>
<p>So goodbye, Slicehost, and keep up the good work. I&#8217;d certainly recommend you to anyone who lives in America and needs a VM.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dnorth.net/2009/07/16/on-leaving-slicehost/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VPNC mysteriously broken in Intrepid</title>
		<link>http://www.dnorth.net/2009/01/30/vpnc-intrepid-fail/</link>
		<comments>http://www.dnorth.net/2009/01/30/vpnc-intrepid-fail/#comments</comments>
		<pubDate>Fri, 30 Jan 2009 21:59:48 +0000</pubDate>
		<dc:creator>David North</dc:creator>
				<category><![CDATA[Debian]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[SysAdmin]]></category>

		<guid isPermaLink="false">http://www.dnorth.net/?p=97</guid>
		<description><![CDATA[Edit: As Michael points out in the comments, Oxford users can avoid the mess below by simply disabling hybrid mode. So there I am, firing up the Advent to read my email between lectures when&#8230; $ sudo vpn-connect oxford vpnc-connect was built without openssl: Can't do hybrid or cert mode. Gah? The VPN client has [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Edit</strong>: As Michael points out in the comments, Oxford users can avoid the mess below by simply disabling hybrid mode.</p>
<p>So there I am, firing up the <a href="/2008/08/30/advent-4211/">Advent</a> to read my email between lectures when&#8230;<br />
<code><br />
$ sudo vpn-connect oxford<br />
vpnc-connect was built without openssl: Can't do hybrid or cert mode.<br />
</code><br />
Gah? The VPN client has always worked in the past, but following the upgrade to Ubuntu Intrepid, it doesn&#8217;t. A quick search lead to <a href="https://answers.launchpad.net/ubuntu/+source/vpnc/+question/32776">a solution</a> which can be summarised as:<br />
<code><br />
$ cd /tmp<br />
$ apt-get source vpnc<br />
$ cd vpnc-0.5.1r275<br />
$ $EDITOR Makefile<br />
</code><br />
Uncomment the lines beginning with OPENSSL<br />
Read <a href="http://www.gnome.org/~markmc/openssl-and-the-gpl.html">this</a> and despair for the future of open source software<br />
<code><br />
$ sudo apt-get build-dep vpnc<br />
$ dpkg-buildpkg<br />
</code><br />
Wonder why it all collapses in a heap<br />
Search and find <a href="https://lists.ubuntu.com/archives/ubuntu-users/2008-May/147855.html">this</a>.<br />
<code><br />
$ apt-get install libssl-dev<br />
$ dpkg-buildpkg<br />
$ cd ..<br />
$ sudo dpkg -i vpnc_0.5.1r275-1ubuntu1_i386.deb<br />
</code><br />
Wonder why this has changed between Hardy and Intrepid<br />
Seriously consider going back to Windows on this machine.</p>
<p>Sigh.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dnorth.net/2009/01/30/vpnc-intrepid-fail/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Ubuntu Intrepid on the Advent 4211</title>
		<link>http://www.dnorth.net/2008/10/31/ubuntu-intrepid-on-the-advent-4211/</link>
		<comments>http://www.dnorth.net/2008/10/31/ubuntu-intrepid-on-the-advent-4211/#comments</comments>
		<pubDate>Fri, 31 Oct 2008 14:28:24 +0000</pubDate>
		<dc:creator>David North</dc:creator>
				<category><![CDATA[Debian]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.dnorth.net/?p=69</guid>
		<description><![CDATA[I finally got round to putting Linux on my Advent 4211 yesterday. There are various ways and means of doing this; the ones which worked for me were: Use the installation image optimised for small screens Follow these instructions to make a bootable USB drive from the image (note: it&#8217;s &#8216;cat&#8217;, not &#8216;zcat&#8217; as the [...]]]></description>
			<content:encoded><![CDATA[<p>I finally got round to putting Linux on my Advent 4211 yesterday. There are various ways and means of doing this; the ones which worked for me were:</p>
<ul>
<li>Use the <a href="http://releases.ubuntu.com/8.10/ubuntu-8.10-rc-mobile-i386.img">installation image optimised for small screens</a></li>
<li>Follow <a href="http://www.debian.org/releases/stable/i386/ch04s04.html.en">these instructions</a> to make a bootable USB drive from the image (note: it&#8217;s &#8216;cat&#8217;, not &#8216;zcat&#8217; as the ubuntu image is not zipped. I know they&#8217;re Debian instructions, but they seem to work)</li>
<li>Use the script given in <a href="https://bugs.launchpad.net/ubuntu/+source/linux/+bug/246141/comments/125">this forum post</a> (run as root) to get the WiFi working.</li>
</ul>
<p>The end results are really rather impressive; here&#8217;s a pretty picture:</p>
<div id="attachment_70" class="wp-caption alignnone" style="width: 310px"><a href="http://www.dnorth.net/wp-content/uploads/2008/10/linux-advent.png"><img class="size-medium wp-image-70" title="linux-advent" src="http://www.dnorth.net/wp-content/uploads/2008/10/linux-advent.png" alt="Ubuntu Linux running on my Advent 4211" width="300" height="175" /></a><p class="wp-caption-text">Ubuntu Linux running on my Advent 4211</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.dnorth.net/2008/10/31/ubuntu-intrepid-on-the-advent-4211/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tightening up BIND9</title>
		<link>http://www.dnorth.net/2008/06/28/tightening-up-bind9/</link>
		<comments>http://www.dnorth.net/2008/06/28/tightening-up-bind9/#comments</comments>
		<pubDate>Sat, 28 Jun 2008 10:56:30 +0000</pubDate>
		<dc:creator>David North</dc:creator>
				<category><![CDATA[Debian]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[SysAdmin]]></category>

		<guid isPermaLink="false">http://www.dnorth.net/?p=37</guid>
		<description><![CDATA[I&#8217;ve been aware for some time that my DNS isn&#8217;t quite as securely configured as I&#8217;d like. http://crashrecovery.org/named/ looks pretty good, but the two main issues bugging me were: Anyone could do a &#8216;dig @ns.dnorth.net dnorth.net AXFR&#8217; to retrieve a listing of all my DNS records &#8211; not great from a security point of view. [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been aware for some time that my DNS isn&#8217;t quite as securely configured as I&#8217;d like. <a href="http://crashrecovery.org/named/">http://crashrecovery.org/named/</a> looks pretty good, but the two main issues bugging me were:</p>
<ol>
<li>Anyone could do a &#8216;dig @ns.dnorth.net dnorth.net AXFR&#8217; to retrieve a listing of <strong>all</strong> my DNS records &#8211; not great from a security point of view. This is a capability that should only be turned on for secondary DNS servers which need to fetch from the master.</li>
<li>The server would perform arbitrary lookups [for any domain] on request. This means it&#8217;s operating in &#8216;recursive mode&#8217;, which is a Bad Thing for various reasons.</li>
</ol>
<p>The solutions were:</p>
<ol>
<li>Add &#8220;allow-transfer { &#8220;slaves&#8221;; };&#8221; (without the double quotes) to the section of the configuration beginning &#8220;zone &#8216;dnorth.net&#8217;&#8221;. Then add a section defining the &#8220;slaves&#8221; access control list to be the local server, plus the secondaries: &#8220;acl slaves { 127.0.0.1; 123.45.67.89; }&#8221; replacing 123.45.67.89 by the IP address(es) of your secondary nameserver(s).</li>
<li>Add &#8220;recursion: no;&#8221; to the &#8220;options&#8221; section of the configuration.</li>
</ol>
<p>Then restart the BIND9 service &#8211; on Debian, this is &#8220;/etc/init.d/bind9 restart&#8221;.</p>
<p><strong>Health warning:</strong> Don&#8217;t do (2) above if you rely on your server to do its own DNS resolution &#8211; follow the crashrecovery tutorial above instead.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dnorth.net/2008/06/28/tightening-up-bind9/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Forget gq, try Luma for a quiet life</title>
		<link>http://www.dnorth.net/2008/05/05/forget-gq-try-luma-for-a-quiet-life/</link>
		<comments>http://www.dnorth.net/2008/05/05/forget-gq-try-luma-for-a-quiet-life/#comments</comments>
		<pubDate>Mon, 05 May 2008 12:09:11 +0000</pubDate>
		<dc:creator>David North</dc:creator>
				<category><![CDATA[Debian]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[SysAdmin]]></category>

		<guid isPermaLink="false">http://www.dnorth.net/?p=33</guid>
		<description><![CDATA[gq has been a necessary evil in my life for some time now. I need a graphical LDAP client for use on the CompSoc systems, but gq (to be fair, the versions of gq packaged for Ubuntu) seems to be very buggy, segfaulting all over the place if you try to do anything other than [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://gq-project.org/">gq</a> has been a necessary evil in my life for some time now. I need a graphical LDAP client for use on the <a href="http://www.ox.compsoc.net">CompSoc</a> systems, but gq (to be fair, the versions of gq packaged for <a href="http://www.ubuntu.com">Ubuntu</a>) seems to be very buggy, segfaulting all over the place if you try to do anything other than browse with it.</p>
<p>Last week, after upgrading to a 64bit version of Ubuntu for the first time, I finally ditched gq, after running into identical symptoms to <a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=444312">this</a> <a href="http://www.debian.org">Debian</a> bug.</p>
<p>The good news is that there&#8217;s an alternative that actually works: it&#8217;s called <a href="http://luma.sourceforge.net/">Luma</a>.</p>
<p>Have fun.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dnorth.net/2008/05/05/forget-gq-try-luma-for-a-quiet-life/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Getting serious about email</title>
		<link>http://www.dnorth.net/2008/03/15/getting-serious-about-email/</link>
		<comments>http://www.dnorth.net/2008/03/15/getting-serious-about-email/#comments</comments>
		<pubDate>Sat, 15 Mar 2008 12:23:14 +0000</pubDate>
		<dc:creator>David North</dc:creator>
				<category><![CDATA[Debian]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Microsoft vs Linux]]></category>
		<category><![CDATA[SysAdmin]]></category>

		<guid isPermaLink="false">http://www.dnorth.net/2008/03/15/getting-serious-about-email/</guid>
		<description><![CDATA[The epic tale of how my new mail setup was born My personal email has been on a rough ride over the years: from a reasonably nice (Microsoft based!) school email setup in 1999, which sadly got removed when Windows 98 was introduced, I went through three Hotmail accounts. I had a brief flirtation with [...]]]></description>
			<content:encoded><![CDATA[<p><em>The epic tale of how my new mail setup was born</em></p>
<p>My personal email has been on a rough ride over the years: from a reasonably nice (Microsoft based!) school email setup in 1999, which sadly got removed when Windows 98 was introduced, I went through three Hotmail accounts. I had a brief flirtation with GMail, but not being all that keen on the means of delivering advertising, I ended up back on Hotmail.</p>
<p>Registering dnorth.net last year at least ensured my email address would no longer change, but the technical capabilities of the two mail servers holding the mail still left much to be desired: flaky, unreliable spam scoring, no facilities for server-side filtering/sorting, sheer lack of customisability&#8230;</p>
<p>Last week, I finally did something about it. At my disposal was my <acronym title="Virtual Private Server"><a href="http://jasper.dnorth.net">VPS</a></acronym>, running Debian Linux 4 (&#8216;etch&#8217;). On the wishlist were:</p>
<ul>
<li>Accurate server-side spam scoring with SMTP-time rejection of the most obvious spam</li>
<li>Sender verification</li>
<li>Sieve filters for server-side sorting into folders</li>
<li>All mail stored on the server and accessible over secure IMAP</li>
</ul>
<p>Thankfully, none of the above is too difficult: some pretty good instructions are Out There for most of it. The ones I used were:</p>
<ul>
<li><a href="http://koivi.com/exim4-config/">Exim4 on Debian with SpamAssassin, ClamAV, Virtual Domain Alias Files and Message Size Limits per Domain</a></li>
<li><a href="http://dfoerster.de/opensource/exim-sieve-howto.html">Exim + Sieve + Avelsieve Howto</a></li>
<li><a href="http://www.debian-administration.org/articles/140">Handling mail for multiple virtual domains with exim4</a></li>
</ul>
<p><strong>Please remember, I am not responsible for the content of external sites (e.g., the links above), nor can I accept any responsibility for the consequences of acting on the points below&#8230;</strong></p>
<p>I ran into a couple of issues:</p>
<ul>
<li>Permissions on the .sievesource files generated by AvelSieve &#8211; I needed to chmod g+w on /var/lib/squirrelmail/data and chown it to www-data:www-data in order to reach a state where Exim could read the file, and Avelsieve could write it.</li>
<li>Exim4&#8242;s native sieve implementation only has the core features in it, not the extensions defined in <a href="http://www.ietf.org/rfc/rfc3431.txt">RFC 3431</a>. I dodged the issue by matching the number of *s in the X-Spam-Score header using string matching, rather than numeric checks on the X-Spam-Score.</li>
</ul>
<p>All in all, though, it&#8217;s working a treat. Email perfection at last!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dnorth.net/2008/03/15/getting-serious-about-email/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
