Tiny Core Linux
Tiny Core Base => TCB Q&A Forum => Topic started by: perthie on October 14, 2009, 10:36:06 AM
-
I am still unclear on the role of dep files in my tce folder during bootup.
Are they used at all?
Are they used to verify that all the dependencies are present?
Are they actually used to load extensions in a specific order?
How do dep files interact with my tcz2ram list?
-
Starting from tc-2.4 the boot sequence takes the dep files in the /tce folder into account if present.
Taking dbus.tczl.dep as an example, since it contains expat2.tczl, it means that expat2 will be loaded before dbus. If this dep file is not present, the boot sequence will load in alphabetical order and since expat2 is required for dbus to start, the start-up script for dbus will fail.
-
What happens if an extension is listed in my tcz2ram list but is also listed in the dep file of another extension? Which one takes priority?
[Edit]
For example, what happens if my tcz2ram file accidentally has dbus listed before expat2? Or what if extension "aardvark" mistakenly lists dbus as a dependency but not expat2?
Perhaps a solution to this issue could work as follows:
1. Load all extensions in any order, ignoring the dep files.
2. When done, examine the dep files to ensure that all necessary dependent extensions are present.
3. Run all post-install scripts in a batch.
-
Starting from tc-2.4 the boot sequence takes the dep files in the /tce folder into account if present.
Taking dbus.tczl.dep as an example, since it contains expat2.tczl, it means that expat2 will be loaded before dbus. If this dep file is not present, the boot sequence will load in alphabetical order and since expat2 is required for dbus to start, the start-up script for dbus will fail.
Interesting. There are common components used by different extensions, like gtk2, glibc, dbus, and such. Different extension authors my have different order in their dep files. It means that a new extension executed earlier can override order intended by another extension/order so for this one it doesn't work!