<?xml-stylesheet href="gen.xsl" type="text/xsl"?>
<slideshow title="LSB Packaging Summit" background="glass.png" background-position="bottom right" logo="logo.png">

  <slide title="Packaging for people who aren't distros">
    
    <center>
      <br/><br/>
      <b> <font size="22">autopackage and other problems</font> </b> <br/>
      Mike Hearn &lt;mike@plan99.net&gt;<p/>
      <img src="tux.png"/>
    </center>
    
  </slide>

  <slide title="Who am I?">
    <ul>
      <li>Was designer/maintainer of autopackage</li>
      <li>Am now Googler and not working on open source as much as before</li>
      <li>Generally controversial pest</li>
    </ul>
  </slide>

  <slide title="Why autopackage?">
    <center><img style="float:left; padding-right: 4em" src="autopackage_gui.png"/></center>
    <ul>
      <li> Distro centralisation doesn't scale </li>
      <li> Vendor lock in </li>
      <li> Currently use the AOL "walled garden" model. Neat, precise, small, sucky.<p/>
           <ul><li>We want the web model - messy, sprawling, large, awesome.</li></ul>
      </li>
      <li> Ease of use (original reason) </li>

    </ul>
  </slide>

  <slide title="What LSB needs from packaging">
    <ul>
      <li><i>"Many ISVs want to use a single installer framework"</i> - autopackage works on any distro</li>
      <li>
        <i>"It is too difficult to install applications on Linux compared to Windows." (Jon Udell)</i> <br/>
        autopackage designed to be as easy as possible: when it works, easiest/simplest experience of <u>any</u> platform<br/>
        but still much room for improvement in terms of denoising the ui
      </li>
      <li><i>"LSB needs to make it easier to do the right thing in this case (e.g., statitically link or bundle dynamic libraries).</i><br/>
          autopackage is "auto" for developers too - many tools to do binary analysis, relocatability, binary portability etc. <br/>
          Makes different kinds of linking trivial. These tools can be used separately from the packaging system.
      </li>
      <li>autopackage statistics framework let's you drill down and see why installs are failing (eg missing libraries)</li>
    </ul>
    
  </slide>

  <slide title="What packaging needs from LSB: a platform">
    <ul>
      <li> Revs often (every 6-12 months) to incorporate new technology, but is backwards compatible </li>
      <li> eg "Desktop Linux 1.0 compliant" apps should work on "Desktop Linux 1.5 compliant" distros </li>
      <li> Easy for devs to pick'n'mix features, ie app can run on 1.0 but runs better on 1.5 (really hard today)</li>
      <li> Large platform. Duplication, quality doesn't matter. It's OK to have 3 widget toolkits, 4 versions of the same API etc</li>
      <li> <b>ONLY</b> things that matter are:
         <ol><li>compatibility</li><li>size</li></ol>
      </li>
    </ul>
  </slide>

  <slide title="Checklist">
    <ul>
    <li> Easy to create - YES (visual tools, automation)</li>
    <li> Easy to install - YES (one click inside a web browser, one click to confirm)</li>
    <li> Install location - YES (fdbr)</li>
    <li> License viewing at install time - KINDA (we have a tool to do it at first run)</li>
    <li> Single object - YES</li>
    <li> Easy dep resolution - YES</li>
    <li> Updates/upgrades - KINDA (no automatic online checking/download, but easy to add)</li>
    <li> Clean uninstall - KINDA (no recursive removal)</li>
    <li> Performance/memory footprint - NO (bash is slow), but not important IMHO</li>
    <li> Root access - YES (security is complex, ap can do either)</li>
    <li> Mass installation support - YES (headless mode)</li>
    </ul>
  </slide>

  <slide title="Philosophical Problems">
    <ul>
      <li> Distros don't care -- by far the biggest problem </li>
      <li> Long discussions with Ubuntu, Fedora, Debian, Gentoo etc devs leads to the same conclusion</li>
      <li> Every distro wants to be Number 1</li>
      <li> Few if any distros today are LSB compliant out of the box -- ISVs target what people use</li>
      <li> None are interested in trading off flexibility for compatibility 
         <ul>
             <li> Guys at the top (eg Nat F, Mark S) tend to be more interested </li></ul>
      </li>
      <li> Often see themselves as being not Linux <i>"there's a reason Ubuntu doesn't have Linux in the name"</i>  <br/>
           (so why bother trying to have unified packaging at all)
      </li>
    </ul>

    <center><font color="red">THERE CAN BE NO PROGRESS WITH THIS MENTALITY</font></center>
  </slide>

  <slide title="Technical problems">
    <ul>
      <li> [insert usual complaints over lack of stability, etc] </li>
      <li> Linux is branding disaster-zone: user confusion, poor UI (skype website)</li>
      <li> ELF is broken and cannot be repaired (symbol scoping)   </li>
    </ul>

    <center><i>.... outlook not so good .... </i></center>
  </slide>

  <slide title="Security">
    <ul>
      <li>Complicated topic - talked for 20mins just on this at LUGradio Live</li>
      <li>Centralised distribution doesn't give security, just liability</li>
      <li>Thought experiment, "what if everybody did this?", where everybody == Microsoft</li>
      <li>Morally and legally questionable to appoint a bunch of random programmers judge, jury and executioner over ISVs</li>
      <li>Hard to prove or even define "evil" software in advance</li>
    </ul>
  </slide>
</slideshow>
