WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: The role of dep files  (Read 1840 times)

Offline perthie

  • Full Member
  • ***
  • Posts: 118
The role of dep files
« 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?

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 14819
Re: The role of dep files
« Reply #1 on: October 14, 2009, 11:50:34 AM »
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.

Offline perthie

  • Full Member
  • ***
  • Posts: 118
Re: The role of dep files
« Reply #2 on: October 14, 2009, 11:57:56 AM »
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.
« Last Edit: October 14, 2009, 12:50:02 PM by perthie »

Offline bmarkus

  • Administrator
  • Hero Member
  • *****
  • Posts: 7183
    • My Community Forum
Re: The role of dep files
« Reply #3 on: October 14, 2009, 02:52:07 PM »
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!
Béla
Ham Radio callsign: HA5DI

"Amateur Radio: The First Technology-Based Social Network."