[maemo-developers] sbox2 & maemo
From: Lauri Leukkunen lle at rahina.orgDate: Thu Jul 26 02:52:04 EEST 2007
- Previous message: Patch to fix a hildon-1 bug
- Next message: sbox2 & maemo
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Hi, Scratchbox2 can now be found in debian, unstable and testing carry frequently updated releases of it. I've been going over a number of packages trying to test it. I think it's pretty good considering the limited amount of people using it, and the fact that the public maemo rootstraps are an insult to all root filesystems. Most problems arise from maemo being totally geared towards SB1, which is terribly unfortunate. It has resulted in rootstraps being stripped of many essential packages to make them even marginally useful, all because SB1 has kindly provided those and even pretended that its versions satisfy build-dependencies for them. Target images are quite a bit more useful, but require special tools to extract files out of jffs2 images, I'm not even sure if these tools are available outside Nokia? I know that internally Nokia has rootfs tarballs that are very close to what's needed by SB2, so not much needs to be done to improve the situation. I hope the right people read this. Continuing on the topic of build dependencies, SB2 has an open design issue regarding them. Since SB2 is using the host system to provide most (all) of the build tools, build dependencies of packages need to be checked against the host. But then again build dependencies contain -dev packages (libraries and headers) which need to be in the target buildroot, so the build dependencies need to be checked against the target as well. Obviously the easy solution would be to require all build deps on both host and the target, but this is not very practical. Therefore I would need some way of reliably identifying what should be checked from where. Any ideas are welcome. The raw mechanism is already in place to call dpkg-checkbuilddeps for both transparently, but now we'd need to figure out the logic. Now a little bit about target emulation, since that's always popping up when scratchbox is discussed. SB2 is *seriously* not going to do it in the default mode of operation. Instead there is so called "emulation mode", used through the -e switch to sb2. That's still using user-mode emulation with qemu, but effectively does a pseudo chroot. It's not as good as system-mode qemu, but useful for running apt, dpkg and related tools to maintain the target root. It also shouldn't be considered as a real target emulation environment to be used for application or system development. So people would normally do something like this when using sb2: sb2 -e apt-get update sb2 -e apt-get dist-upgrade cd ~/src/my_package sb2 dpkg-buildpackage -rfakeroot It might be a good idea to try to automate the use of emu mode for apt and dpkg, might save some headaches down the line. Shouldn't be too hard to detect normal invocations of them. Nokia and Maemo community really need to figure out an easy way for developers to use the real hardware and system-mode qemu. Those are the only adequate solutions for testing and debugging of software. Also note that SB2 is totally not interested in doing x86->x86 development, like what many people are doing today with SB1. People need to wake up, smell the coffee, integrate with debian proper and get with the program. It's stupid to maintain a lame x86 port of maemo which nobody wants when all the components should be pushed to debian and ubuntu and get those bigger communities involved in their development. One day we will anyway be running debian/stable with a few custom components on the tablets. That was the aim with this whole debian thing in the first place, remember? regards, Lauri
- Previous message: Patch to fix a hildon-1 bug
- Next message: sbox2 & maemo
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]