On Tue, 2013-11-12 at 09:55 +0100, Łukasz Stelmach wrote: > It was <2013-11-08 pią 18:34>, when Jacek Bukarewicz wrote: > > > 2) RD-PQ userspace image consists of 3 parts - platform.img, > > data.img, ums.img. Only platform.img is mounted which results in /opt > > directory missing. Seems like "mic create loop" command puts hardcoded > > values into /etc/fstab. The workaround is to remove DATA and UMS > > partition from RD-PQ.ks file or edit /etc/fstab so 2 missing paritions > > are mounted on /opt and /opt/usr. We are working on a proper > > solution. > > There seem to be a problem with mic not generating fstab properly. I am > working to fix it.
(writing in hurry, so e-mail is messy, if you need more info, ask specific questions please) The new policy is that MIC should not generate /etc/fstab at all. And not only this, but also many other files from /etc. In general, MIC should simply install packages, everything else - not MIC's business. Hardcoding anything in MIC for /etc/fstab is a dirty hack. I mean, currently MIC does generate a lot of stuff, but the policy is that we do not change this, and do not add more. Instead, if something needs to change, it starts using the new scheme called "installer framework plugins". So the solution we agreed on is so-called installer framework. It is currently only implemented for the boot-loader and is used in Tizen IVI. For /etc/fstab it is not implemented, but should be. It would work like this. Tizen profile implements its own project, say, setup-fstab-mobile. This project contains a script which creates /etc/fstab and populates it with data. MIC calls this script. At the moment it is implemented like this. MIC defines a bunch of environment variables which contain all the information about partitioning. The setup-efi-mobile scirpt uses them for generating /etc/fstab. The installer framework scripts are executed from the KS file as of today. For example, see the Tizen IVI KS file, we call setup-efi-ivi script from there. The script is in tizen.org in the setup-efi-ivi project, you can take a look. This script sets up the boot-loader configuration, etc. It uses installer framework environment variables to get the information about partitions. http://download.tizen.org/releases/daily/tizen/ivi/ivi/tizen_20131107.5/images/ivi-efi-i586/ivi-efi-i586.ks Later this may be a different mechanism, but now we use KS file's "post" section. So if you want to change the way fstab is generated, you should write your own script and file a ticket against MIC to make it stop generating /etc/fstab and instead, rely on an external script. See in the KS file we have: installerfw_plugins "bootloader" which means: do not run your hacks for installing bootloader, we'll do this ourselves. And nice thing is - we now do not have to touch MIC if we want to change anythign in the bootloader config file, like timeout delay, or menu. We control this. For fstab, this would be something like: installerfw_plugins "fstab" meaning: disable your fstab hacks, we'll generate it ourselves. And then you'd have something like %post setup-fstab-mobile which would generate fstab _you_ need, and which would come from tizen.org. Here is, BTW, the our 'setup-efi-ivi' script: https://review.tizen.org/git/?p=profile/ivi/setup-efi-ivi.git;a=blob;f=setup-efi-ivi;h=cc66d09b363a48355c9a6eec938e36638b1bb088;hb=HEAD Here are the installer framework variables currently defined: INSTALLERFW_DISTRO_NAME - distribution name (Tizen) INSTALLERFW_KERNEL_OPTS - kernel options from the KS file INSTALLERFW_MOUNT_PREFIX - "/" , in case of pc-installer it will be the target disk root directory, for example "/mnt/target_system/" INSTALLERFW_INSTALLER_NAME - "mic", in case of pc-installer it will be "pc-installer" INSTALLERFW_PTABLE_FORMAT - "mbr" or "gpt" INSTALLERFW_PART_COUNT - count of partitions For every partition x (from 0 to INSTALLERFW_PART_COUNT-1) INSTALLERFW_PARTx_FSTYPE - "ext4", "btrfs", "vfat", etc INSTALLERFW_PARTx_FSOPTS - file-system mount options INSTALLERFW_PARTx_UUID - file-system UUID INSTALLERFW_PARTx_BOOTFLAG - whether the partition has the "boot" flag set, "True" of "False" INSTALLERFW_PARTx_PARTUUID - partition UUID (GUID) in case of the GPT partition table INSTALLERFW_PARTx_SIZE - partition size in Megabytes INSTALLERFW_PARTx_MOUNTPOINT - partition mount-point relative to INSTALLERFW_MOUNT_PREFIX INSTALLERFW_PARTx_DEVNODE - device node of the partition in Tizen OS environment when it will actually run INSTALLERFW_PARTx_LABEL - file-system label INSTALLERFW_PARTx_TYPE_ID - file-system type GUID in case of GPT partitions INSTALLERFW_PARTx_ALIGN - partition alignment in 512-byte sectors -- Best Regards, Artem Bityutskiy _______________________________________________ Dev mailing list [email protected] https://lists.tizen.org/listinfo/dev
