[maemo-developers] [maemo-developers] maemo weekly news anyone?

From: Larry Battraw lbattraw at gmail.com
Date: Sun Nov 12 22:54:54 EET 2006
   Hi Antonio, I'll try and field this one.  Your question is
difficult on several different levels.

  From the operation system maintainer's perspective they're now
looking at the issue of a doing an in-place upgrade as opposed to a
fresh install.  This is hard to do right and there are always issues,
regardless of whether you're running Windows or Linux.  What if a
installed application wants a particular version of a library and
we're installing a new (incompatible) version for the OS?  What about
configuration files with user-modified information in them?  Libraries
or system applications that have changed names (breaking dependency
checks)?  The biggest problem is that the OS install must cope with
whatever state the device is in.  It must break whatever incompatible
applications are present when it does the install to allow it to
function after the upgrade and resolve any dependency checks, all
without user input since we can't assume any level of technical
competence on the part of the user.

  This is clearly far more difficult to do than a fresh install.
After a fresh install, the user can identify any applications that are
incompatible as part of their individual re-installation process.

  Working from the other end -an attempt to "put back" all the missing
files after an install-, it's equally complex.  We can copy over any
files in the user's home directory, but we do take the risk of copying
in versions of the settings/resource files that are incompatible with
the new environment.  If we avoid any pre-existing files and only copy
over truly missing files we lose configuration information (i.e. we
now have an empty mailbox file because it's automatically created
after the OS install).  Applications are really messy.  With a blind
install of files, avoiding collisions, we end up with applications
that are broken almost immediately.  Pre-and-post-install steps are
not executed, things like mime types are not registered properly, and
then there's the issue of incompatible API and library changes in the
OS.  This is not a real option, just an attempt to explain things.

  Regardless of the approach, it's a difficult and unrewarding task.
With either method by the time you've sorted out all the breakage
post-upgrade, you've spent more time than just re-doing it.  Never
mind the odd issues you'll run into afterwards with things crashing or
just "not looking right".  I would advocate a high-level approach to
the problem, tracking the installs (and repository additions) done by
the user with the install tool.  After an upgrade the installer tool
could have an option to try and reinstall the applications they had
formerly installed.  Successful installations could be "checked-off"
the list of applications to install, failures marked as such.

  Just my two cents.

Regards,
Larry


On 11/12/06, Antonio Orlando <ant.o at libero.it> wrote:
> > Just to know, if I have to go through another difficult reinstall
> > process for another upgrade. I hope for the upgrade not the
> > reinstall;-)
>
> At this regard, I'd like to remember I'm still waiting for some reply to
> my previous mail:
>
> http://maemo.org/pipermail/maemo-developers/2006-November/006086.html
>
> --
> Antonio

More information about the maemo-developers mailing list