Hi Loic,
Loïc Minier wrote:
Thank you for your a lot of information. I understand they are specification of UME.Hi, On Mon, Aug 18, 2008, Mitsutaka Amano wrote:I checked some patches. First, I show you patch status as currently moblin-image-creator.Thanks!- 40_fsets.patch We'll merge it.Glad to read that; just a comment on the various changes in there: * Ubuntu MID doesn't use flash, even in the private builds, but the USB client packages are expected: remove flashplugin-nonfree and add mobile-usb-client-utils + mobile-usb-host-utils in the CrownBeach-Full-Mobile-Stack-with-Proprietary and Samsung-Full-Mobile-Stack-with-Proprietary meta-packages * telepathy dropped from GNOME-Mobile fset: I think telepathy was dropped because the empathy fork of moblin (mobile-chat) was dropped in favor of pidgin * Install only the ubuntu-mobile package in the Ubuntu-Mobile fset: we don't manage installed packages in Ubuntu MID by matters of fsets; instead we use the same mechanism as for all Ubuntu flavors which is "seeds". For instance, Ubuntu, Kubuntu, Xubuntu, Ubuntu Studio etc. all use seeds to define which packages should be installed. The ubuntu-mobile meta-package will install all packages in the mobile seed, so it's enough to install it to get Ubuntu MID installed; it would be a bad idea to duplicate the information in two places. * Install marvell-8686-firmware-9 in the CrownBeach-Full-Mobile-Stack-with-Proprietary fset; I guess this is to support a proprietary wifi chip which is present in some ODM hardware * Install Poulsbo 3D accelerated libs in CrownBeach-Full-Mobile-Stack-with-Proprietary fset: psb-video libgl1-mesa-dri-psb xorg-modules-xpsb
- 60_var-lib-projects.patch It's old patch. It doesn't need.Hmm older MICs would create a var/lib/moblin-image-creator/projects. I think it might be more elegant to create such a directory at install time rather than at runtime. Also, the mkdir is still present in current git MIC: self.config_path = os.path.join(self.var_dir, 'projects') if not os.path.isdir(self.config_path): os.mkdir(self.config_path) This triggerred Launchpad #232301 in the past; I can't check whether it still causes this bug as I currently get: % prefix/bin/image-creator Error: Must run image creator with sudo or run as root Example, run image creator: sudo image-creator
OK. I understand you said. So I think it shouldn't create empty directory. because empty directory can't add in git repository. But It correspond create .empty file in empty directory. so I recommend your patch and I'll modify code at Makefile for automake :-)
commit fce7eeeb2316f837e147e952063751d7d2ced958 Author: Prajwal Mohan <[EMAIL PROTECTED]> Date: Tue May 27 15:32:14 2008 -0700 * Make file creates projects dir in /usr/share/pdk. Moving it to /var/lib/mo blin-image-creatorSure, the location changed a while ago, but note that the creation of the directory is still done at runtime ATM, instead of build time as in the proposed patch (see above Launchpad reference).
yep. I understand it too.
- 61_skip-usr-share-projects.patch It was already implemented.Indeed! BTW this code has a note "I would think that after Jun-2008, we can delete this list"; perhaps time to drop it?
I glad to find it. I'll drop this note.
- 66_mount-boot.patch It was already implemented. commit 90c66f0a732a392a4abf844223762db98bfe2ee8 Author: Prajwal Mohan <[EMAIL PROTECTED]> Date: Mon Jul 14 10:45:39 2008 -0700 Checking in bug fix for 227013. /boot will be mounted rw on boot with disk i nitramfs scriptThat's indeed true for common-apt, however I would suspect common-yum's script suffers from the same issue. The scripts are almost identical in other respects, but I don't use common-yum so I can't really tell.
Perhaps I think it's same issue. I'll check it.
I think it would be nice to have a platform independent implementation of initramfs scripts if possible. Maintaining two flavors of this infrastructure is probably painful.
Sure. Currently I'm maintainning code and directory structure MIC. I'll have a TODO. I'll implement another timing. :-)
Could you perhaps resync the two scripts? I guess both might be able
to use /bin/sh instead of /bin/bash ("checkbashisms" reports no bashism
in them) and the "mount"s probably make sense for yum platforms.
Sure.
- 68_clean-default-kopts.patch We'll merge partial it.Ok; what part do you intend to merge / not to merge? The rationale here is that when you call "update-grub" on Ubuntu systems, you get two versions of the "kernel" command lines in menu.lst: one without splash and quiet and one with splash and quiet (the default). Hence, it's not necessary to add them explicitely (at least not on Ubuntu systems).
Oh. I didn't aware it.
- 69_run-update-grub.patch We'll merge partial it.This patch sets "kopt" in the comments of menu.lst, which is the mechanism used for update-grub's "automagic" kernel-entries generation I described earlier. Then it replaces the heavy sed usage with a simpler one which only sets kopt instead of touching all kernel entries, and calls update-grub to refresh the kernel entries. There's a bug in this support: when the image is created, /boot isn't a separate partition, it's just a directory. So when "update-grub -y" runs to generate the default menu.lst, it generates kernel entries relative to the partition holding /boot (which / at this point). This means the kernel entries are "/boot/something". A checksum of the initial menu.lst is then recorded. But then on the device /boot is a separate partition, this is why there is this /boot -> / sed to convert the kernel entries to "/something" (which will work in the target device). The problem here is that the next time you run update-grub, it compares the checksum which was computed with /boot entries with the new checksum with / entries and they don't match. This causes an user prompt which is annoying. Emmet Hikory worked around this bug by: a) removing the /boot -> / rewrite (so menu.lst mentions /boot in kernel entries, which is wrong) b) adding a /boot -> / symlink in /boot (/boot/boot points to "/" which is /boot) to allow grub to find the kernels named /boot/something below /boot => this works because the checksums now match again I would prefer an alternate implementation which would be to have a separate /boot (fake) when menu.lst is generated during "update-grub -y", but this is a bit harder. It probably requires mounting a tmpfs or something similar. Could you explain which parts of the patch you intend to keep/drop? What's your preferred way of solving this issue?
The line is applied there is a line is not applied. I adjust there. There are no problen as a code meaning.
- 70_menu-lst-default.patch We'll merge it. - 71_install_locale.patch We'll merge it. - 72_ume-platforms.patch We'll merge it. - 73_create-kernel-img-conf.patch We'll merge it.Cool; happy to give more details on what each patch does if you need any.- 74_boot-is-really-boot.patch We'll merge it.(That's the reminder of the /boot -> / symlinking I mentionned earlier.) Thanks for the review!
Thank you for your many comments! Regards, -- Mitsutaka Amano _______________________________________________ dev mailing list [email protected] https://www.moblin.org/mailman/listinfo/dev
