[maemo-developers] [maemo-developers] Re: Repositories

From: Miko Nieminen ext-miko.nieminen at nokia.com
Date: Tue Sep 5 11:48:24 EEST 2006
ext Devesh Kothari wrote:
> ext Andrey Khurri wrote:
>> Hi all,
>> I am now a bit puzzled with this repositories stuff. I've been always
>> aware of that repository.maemo.org MUST NOT be used on a host
>> workstation or PC. This is clear.
>> However, how should I interpret all those warnings that this repository
>> is 'ONLY' meant for using inside Scratchbox? This 'ONLY' sounds
>> ambiguously to me when I look at i.e. ApplicationCatalog2006 and see
>> there lots of packages meant for Nokia 770 device and available from
>> repository.maemo.org. Doesn't this mean that repository.maemo.org should
>> be included in /etc/apt/sources.list on Nokia 770 in order to get those
>> packages installed?
>> Or is the difference that one could fetch packages from
>> repository.maemo.org and install them on Nokia 770 BUT could NOT use
>> this repository to upgrade tablet (like 'apt-get upgrade')?
Personally, I think that it would be very logical that you can use maemo
repositories with your device. Like you said, these repositories
contains a lot of application which are mend to be used on the device
(maemo-dm, nfs client modules, ssh, etc...). I think that one of the
major causes to this whole mess was that the use of these repositories
at the device was too obvious and we never tested what happens in that
case. Now I am quite embarrassed about this mess, but I have learned my
lesson. Second lesson I learned was that think more when doing
code-clean-ups. This caused the mess with constant reboot cycles,
because I broke gst-plugings-farsight package. For my defense, I could
say that I didn't have that much time to do those clean-ups and we
needed those sources out. By the way fixed gst-plugins-farsight package
is now at the repository.

> Correct. We need to look into organizing the repositories better
> In most ideal and correct case, the apt-get upgrade from
> repository.maemo.org should not do anything on the device so
> validate perfect sync between packages on the device and packages
> in the maemo repository. The problem starts from the fact that
> maemo integration team takes these packages from internal package
> repository for device and then
> - reorganize them in a different (free/non-free) components then available
>   internally
This doesn't cause any problems.
> - some source packages are cleaned to meet legal requirements (these cleanup
>   patches are filled as bugs in internal bugzilla, but sometimes not
> applied internally
>   promptly, causing a different versions of binary packages produced)
This is a major problem and in the future this should be fixed and there
shouldn't be any problems related to this.
> - some device binary packages are replaced with  packages delivered
> specifically
>   for maemo e.g binary input method, themes, bitmaps, multimedia (codecs
> etc)
This shouldn't cause any problems, if dependencies of these packages are
properly defined.
> >From this repo, then the developer rootfs is produced, in idea case,
> apt-upgrade on
> this developer rootfs should be OK.
There is also this binary-only tar.gz package which contains some
packages which are needed for the rootfs and it is distributed under
EUSA (I hope this is the correct acronym) and can be downloaded from:
>> I was also thinking that any package installable inside SB environment
>> (in an armel target) can be installed on Nokia 770? If this is right can
>> the same repositories be used both inside SB and on N770?
> The problem is with upgrade :( I have put this on the agenda to be
> discussed and fixed.
In the future this issue should be fixed. There are two problems:
1) When application manager is restarted, all application launched by it
are terminated and thus there are processes which are system critical
processes which will be killed. When any of these is terminated then
lifeguard service will reboot the device in the middle of upgrade
process (this is a bit simplified explanation).
2) When we do clean-ups and sdk specific fixes, we will change the
version number and this will cause unnecessary upgrade of packages. If
such package contains a system critical application it might cause
device to reboot in the middle of upgrade.

First problem should be fixed quite soon and it's possible that the fix
for this already exists at the sardine, I'm not sure.
The second problem should be fixed so that we don't need to do sdk
specific fixes and clean-ups and I strongly believe that this issue will
be fixed in the next sdk release.

If you upgrade system critical applications then you should disable
lifeguard before that. This can be done with command
"/path/to/flasher-2.0 --set-rd-flags=no-lifeguard-reset". After this you
should run "apt-get upgrade" and reboot the device.

We really have learned a lesson over here and I hope we won't make these
same mistakes again, if we do we wouldn't be very smart :-)


Miko Nieminen
ext-miko.nieminen at nokia.com

More information about the maemo-developers mailing list