Re: Optification (was Re: PyMaemo (Python for Maemo) final release for Maemo 5 (Fremantle))

2009-11-13 Thread Anderson Lizardo
On Fri, Nov 13, 2009 at 3:18 AM, Yves-Alexis Perez  wrote:
> On mar., 2009-11-10 at 12:33 -0400, Anderson Lizardo wrote:
>> Nice to hear that! We decided to leave out the optification for the
>> final release, just not to delay it even more. But now I believe we
>> can work on it as an update through extras-devel (I just hope that
>> that QA process will take any possible regressions with the new
>> packages we upload).
>
> Hmhm so everything will install on OneNAND ? Or everything will install
> on eMMC ?

The current release installs on the flash root device, but we are
already working on a new version that will install into the eMMC.

Regards,
-- 
Anderson Lizardo
OpenBossa Labs - INdT
Manaus - Brazil
___
maemo-developers mailing list
maemo-developers@maemo.org
https://lists.maemo.org/mailman/listinfo/maemo-developers


Re: Optification (was Re: PyMaemo (Python for Maemo) final release for Maemo 5 (Fremantle))

2009-11-12 Thread Yves-Alexis Perez
On mar., 2009-11-10 at 12:33 -0400, Anderson Lizardo wrote:
> Nice to hear that! We decided to leave out the optification for the
> final release, just not to delay it even more. But now I believe we
> can work on it as an update through extras-devel (I just hope that
> that QA process will take any possible regressions with the new
> packages we upload). 

Hmhm so everything will install on OneNAND ? Or everything will install
on eMMC ?

-- 
Yves-Alexis


signature.asc
Description: This is a digitally signed message part
___
maemo-developers mailing list
maemo-developers@maemo.org
https://lists.maemo.org/mailman/listinfo/maemo-developers


Re: Optification (was Re: PyMaemo (Python for Maemo) final release for Maemo 5 (Fremantle))

2009-11-12 Thread Anderson Lizardo
On Thu, Nov 12, 2009 at 11:30 AM, Eero Tamminen  wrote:
> ext Anderson Lizardo wrote:
>> Do you think it can be made a generic dh_* like tool that handles this
>> automatically? This way it could be called from debian/rules as e.g.:
>>
>> maemo-python-optify /usr/lib/python2.5
>>
>> and the init scripts be generated automatically. What do you think?
>
> Are you suggesting that each python package would themselves do
> the bind mount?  And hide anything that was before in that directory?
>
> Saner solution is that the bind mount is done by something from which
> the package depends from (be it python package itself or something
> else).

No no, I'm just suggesting make it a generic, more automatic tool
(like maemo-optifier itself) that can be used by other bigger packages
that maemo-optify cannot handle generically (although I'm not aware of
any other cases). This is optional though, and for Python we will
handle it now instead of waiting for this tool to be written.

For Python, we will bind mount just the core python2.5 package. This
way, all packages that depend on python2.5 and install
modules/extensions to /usr/lib/python2.5 will benefit from it
transparently.

I should also remember that we have to handle packages that use
python-central/python-support too, as they move the extensions to
other places (directories under /usr/share/... and /var/lib/... IIRC).
They will be handled similarly as well.

We will also make sure all possible installation paths (fresh install,
upgrade from optified package, downgrade to non-optified package,
removal) are properly handled so that we can cleanly move in/out from
the "bind mount" solution and avoid upgrade breakages.

Regards,
-- 
Anderson Lizardo
OpenBossa Labs - INdT
Manaus - Brazil
___
maemo-developers mailing list
maemo-developers@maemo.org
https://lists.maemo.org/mailman/listinfo/maemo-developers


Re: Optification (was Re: PyMaemo (Python for Maemo) final release for Maemo 5 (Fremantle))

2009-11-12 Thread Eero Tamminen
Hi,

ext Anderson Lizardo wrote:
> On Tue, Nov 10, 2009 at 12:11 PM, Andrew Flegg  wrote:
>> On Tue, Nov 10, 2009 at 16:00, Anderson Lizardo
>>  wrote:
>>> The PyMaemo team is pleased to announce the final release of PyMaemo
>>> for Maemo 5!
>> BTW, I've tested with bind mounts and /opt.
>> [...]
> 
> Nice to hear that! We decided to leave out the optification for the
> final release, just not to delay it even more. But now I believe we
> can work on it as an update through extras-devel (I just hope that
> that QA process will take any possible regressions with the new
> packages we upload).
> 
>> I've done the following and it seems to work well:
>>
>>   * Created /opt/python2.5/lib
>>   * Moved the contents of /usr/lib/python2.5 to /opt/python2.5/lib
>>   * Created an init script, symlinked to S20python-optify, which does
>> (on start):
>>
>>mount --bind /opt/python2.5/lib /usr/lib/python2.5
>>
>> This freed up lots of space on the rootfs and does not seem to have
>> impacted start-up time of Python apps particularly noticably.
>>
>> I can share the startup/shutdown script and maybe even package this as
>> a "Python Optifier" if you want.
> 
> Do you think it can be made a generic dh_* like tool that handles this
> automatically? This way it could be called from debian/rules as e.g.:
> 
> maemo-python-optify /usr/lib/python2.5
> 
> and the init scripts be generated automatically. What do you think?

Are you suggesting that each python package would themselves do
the bind mount?  And hide anything that was before in that directory?

Saner solution is that the bind mount is done by something from which
the package depends from (be it python package itself or something
else).


>> I think this is one of the best ways of optifying Python and without
>> any patches. I'd suggest this gets included in the next release of
>> PyMaemo.
> 
> Did you do any kind of upgrade tests? I'm worried how that would work
> if you are upgrading from an older non-optitified python installation.
> 
> I also suppose that this implicitly moves files from other packages to
> /opt/python2.5 ? E.g. from python-hildon, python-gtk2 etc. ?
> 
> What about the /usr/bin/python2.5 binary (which takes some MB) did you
> move it to /opt too?


- Eero
___
maemo-developers mailing list
maemo-developers@maemo.org
https://lists.maemo.org/mailman/listinfo/maemo-developers


Re: Optification (was Re: PyMaemo (Python for Maemo) final release for Maemo 5 (Fremantle))

2009-11-10 Thread Andrew Flegg
On Tue, Nov 10, 2009 at 16:33, Anderson Lizardo
 wrote:
>
> Nice to hear that! We decided to leave out the optification for the
> final release, just not to delay it even more. But now I believe we
> can work on it as an update through extras-devel (I just hope that
> that QA process will take any possible regressions with the new
> packages we upload).

Agreed.

> Do you think it can be made a generic dh_* like tool that handles this
> automatically? This way it could be called from debian/rules as e.g.:
>
> maemo-python-optify /usr/lib/python2.5
>
> and the init scripts be generated automatically. What do you think?

Could do. After a discussion on #maemo, it seems something might have
to go in /etc/event.d and I tricked myself into thinking the mount
happened at boot.

> Did you do any kind of upgrade tests? I'm worried how that would work
> if you are upgrading from an older non-optitified python installation.

This should work as we're not replacing anything with a symlink (the
big problem with upgrading an existing install).

> I also suppose that this implicitly moves files from other packages to
> /opt/python2.5 ? E.g. from python-hildon, python-gtk2 etc. ?

There are two things we probably have to do:

   1) Install /opt/python2.5/lib/... using dpkg.
   2) Move anything left in /usr/lib/python2.5/ manually after install.

Future installs of something like python-hildon will be into the bind
mount, and so go to the right place automatically. maemo-optify will
be updated to not touch anything which depends on Python if we do
this, so Python libraries will continue to install into
/usr/lib/python2.5/site-packages. It's just that this will now be on
the eMMC.

> What about the /usr/bin/python2.5 binary (which takes some MB) did you
> move it to /opt too?

No, I didn't try that. Do you think a symlink should work for that?

Cheers,

Andrew

-- 
Andrew Flegg -- mailto:and...@bleb.org  |  http://www.bleb.org/
___
maemo-developers mailing list
maemo-developers@maemo.org
https://lists.maemo.org/mailman/listinfo/maemo-developers


Re: Optification (was Re: PyMaemo (Python for Maemo) final release for Maemo 5 (Fremantle))

2009-11-10 Thread Anderson Lizardo
On Tue, Nov 10, 2009 at 12:11 PM, Andrew Flegg  wrote:
> On Tue, Nov 10, 2009 at 16:00, Anderson Lizardo
>  wrote:
>>
>> The PyMaemo team is pleased to announce the final release of PyMaemo
>> for Maemo 5!
>
> BTW, I've tested with bind mounts and /opt.
> [...]

Nice to hear that! We decided to leave out the optification for the
final release, just not to delay it even more. But now I believe we
can work on it as an update through extras-devel (I just hope that
that QA process will take any possible regressions with the new
packages we upload).

> I've done the following and it seems to work well:
>
>   * Created /opt/python2.5/lib
>   * Moved the contents of /usr/lib/python2.5 to /opt/python2.5/lib
>   * Created an init script, symlinked to S20python-optify, which does
>     (on start):
>
>        mount --bind /opt/python2.5/lib /usr/lib/python2.5
>
> This freed up lots of space on the rootfs and does not seem to have
> impacted start-up time of Python apps particularly noticably.
>
> I can share the startup/shutdown script and maybe even package this as
> a "Python Optifier" if you want.

Do you think it can be made a generic dh_* like tool that handles this
automatically? This way it could be called from debian/rules as e.g.:

maemo-python-optify /usr/lib/python2.5

and the init scripts be generated automatically. What do you think?

> I think this is one of the best ways of optifying Python and without
> any patches. I'd suggest this gets included in the next release of
> PyMaemo.

Did you do any kind of upgrade tests? I'm worried how that would work
if you are upgrading from an older non-optitified python installation.

I also suppose that this implicitly moves files from other packages to
/opt/python2.5 ? E.g. from python-hildon, python-gtk2 etc. ?

What about the /usr/bin/python2.5 binary (which takes some MB) did you
move it to /opt too?

Regards,
-- 
Anderson Lizardo
OpenBossa Labs - INdT
Manaus - Brazil
___
maemo-developers mailing list
maemo-developers@maemo.org
https://lists.maemo.org/mailman/listinfo/maemo-developers