<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0" xmlns:admin="http://webns.net/mvcb/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:html="http://www.w3.org/1999/html" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>Ross Burton</title><link>http://www.burtonini.com/blog</link><description>A potted account of Ross' life</description><language>en</language><ttl>60</ttl><dc:creator>Ross Burton</dc:creator><admin:generatorAgent rdf:resource="http://pyblosxom.sourceforge.net/"/><admin:errorReportsTo rdf:resource="mailto:ross@burtonini.com"/><item><title>Managing an APT Repository via WebDAV</title><guid isPermaLink="false">computers/apt-webdav-2006-12-06-11-30</guid><link>http://www.burtonini.com/blog/computers/apt-webdav-2006-12-06-11-30</link><description>At work we've just bought online another server, so we have a true public/private server split. The private server is ...</description><content:encoded><![CDATA[    <!-- -*- Mode: html -*- -->
    <p>
      At <a href="http://o-hand.com/">work</a> we've just bought online another
      server, so we have a true public/private server split.  The private server
      is only accessible via secure methods, and the public server only has a
      few users to reduce the possibility of people brute-forcing their way in.
      However, the public server holds the APT repositories for <a
      href="http://debian.o-hand.com/">debian.o-hand.com</a> and <a
      href="http://maemo.o-hand.com/">maemo.o-hand.com</a>.  Before the split
      this was not a problem, after building the package <tt>dput</tt> was used
      with the <tt>scp</tt> method, and then <tt>mini-dinstall</tt> was run as
      the user to update the repository.  Now that there are minimal accounts on
      the new server, we can't <tt>scp</tt> the packages to the server, or
      <tt>ssh</tt> in to run mini-dinstall.  Running m-d in daemon mode solves
      the latter, but there is still the problem of getting the files on the
      server in the first place.
    </p>
    <p>
      Enter WebDAV.  The public server already has a number of WebDAV shares
      (secure client shares, Subversion, and so on) so it was trivial to export
      the <tt>mini-dinstall</tt> incoming queues over WebDAV.  With a <a
      href="http://burtonini.com/computing/mini-dinstall">custom init script</a>
      to start <tt>mini-dinstall</tt> in daemon mode, anyone with the right
      permissions can upload files via WebDAV.  One option here is to use
      Nautilus, but I like the safety of <tt>dput</tt>.  A day of hacking, with
      lots of screaming at Python's <tt>urllib2</tt>, produced <a
      href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=142023">this patch
      to dput that adds HTTP uploading</a>.  I've been using it for a few days
      now and it seems to be working well, so hopefully it will be merged into
      Sid soon.
    </p>

    <p>
      <small>NP: <cite>Xmas in Frisko</cite>, soma.fm</small>
    </p>
]]></content:encoded><dc:date>2006-12-06T11:30:00Z</dc:date></item></channel></rss>