I like the idea of using ipkg to install third party programs. But one suggestion: Someone should define a directory structure first, so we don't get a big mixed-up disorder...
Allow me to start:
(1) Prior to installing the iLiad must be prepared:
mkdir /mnt/cf/opt && ln -s /mnt/cf/opt /opt
mkdir /mnt/card/opt && ln -s /mnt/card/opt /opt
One of these, as fs allows:
ln -s /opt/programs /mnt/cf/programs
ln -s /opt/programs /mnt/card/programs
(2) Installation packages should follow these rules:
- All files shall be installed into /opt, no other part of the filesystem may be touched.
- If the program is to be started directly (content lister sh-extension), it shall be installed into /opt/programs. It shall have its MANIFEST in its top-level folder (e.g. /opt/programs/fbreader/MANIFEST.xml).
- Common shared libraries (.so) go into /opt/lib.
- Configuration settings for into /opt/etc. Using a subfolder is recommended if having more than one file, e.g. /opt/etc/fbreader/.
- Programs that are to be started from the command line, or that are added as content handler to the content lister, go into /opt/bin.
I think putting a single link into the root fs is a better way to handle the CF/SD duality then creating two installation packages for each program. Now I just hope /opt is not yet taken, didn't check it...
Is this a reasonable start? What do you developers think about it?