I notice that when I do a simple 66-info -T there seems to be no apparent sorting. Not alphabetical nor by process number. I suppose this may be simply ordered by the time they were started?
_______________root____________
Initialized: yes | Current: yes
Contains:       | Enabled: yes
├─(681,Enabled,longrun) dbus-log
├─(661,Enabled,classic) tty1
├─(662,Enabled,classic) zfs
├─(663,Enabled,classic) tty2
├─(0,Enabled,classic) wifi
├─(664,Enabled,classic) sddm-log
├─(665,Enabled,classic) sddm
└─(685,Enabled,longrun) dbus
Could be just me, but for the sake of simplicity this would be nice to read ordered alphabetically. Because really, when you issue this or similar commands to check on your services you are probably doing it because of one or two services specifically; which your eye will then have to scan for. Since the process ID can easily be 0 here, an alphabetical ordering makes sense to me. Maybe this could be an option in 66.conf, dunno...
I think they are ordered by process number, which as you say it is whatever gets to start first.
But what is wifi, is this your own custom service ? And why is it 0, does that mean it is unable to start?
It's basically just a little script to quickly connect to my open home network on boot. See this thread. It doesn't execute any long living process, so probably that's why it's 0 (not sure though).
If they were ordered by process number then dbus-log should be displayed right before dbus. Also if you check the boot tree, it's sort of apparent that it's getting sorted by whatever gets fired first.
Maybe it's an unnecessary proposal but personally I think it'd be nice to have :s
Look at task manager or htop and you will see the numbers are PID of either the process or s6-log.
So 0 means it is not running, possibly as you say it executed once and died. So why have it on the root-tree?
What if your lan fails, something goes off, or someone pulls a cable, does it try to make a connection again?
If you have ntpd running and issue a # killall ntpd it dies, and s6 restarts it. It gets a higher number PID, Only if you use 66-stop will the process stay dead.

So just from the numbers in 66-info you can tell if something has gone wrong and a service was interrupted and restarted.
this is ordered, coming from 66-info documentation
By default the first service displayed is the first service started, the second one is the second started and so on.
the first number found between '()' bracket is the corresponding pid of the service.

So, in your case the first services started is dbus-log then tty then zfs and so on.
(681,Enabled,longrun) dbus-log
in this case 681 is the PID of the dbus-log service which is a longrun. So if you 0 for a longrun or classic service that mean that something is wrong.

Services are started following the dependencies declaration, so dbus-log is started before dbus because dbus depends on dbus-log (equal for sddm and sddm-log).
Now we do not have dependencies between classic and 'atomic,bundle', that's why you can have classic 'inserted' between two atomic services.

Well, this thread show me two misconfigurations of daemon. The first one is my fault, the second one come from you.
Dbus should be started before sddm. Well, my bad i didn't declared dbus as dependencies in the sddm service file declaration and sddm should be a longrun instead of classic to be able to have dependencies for it.
The second one concern your wifi service. i didn't realize that you starts dhcpcd with -b options. In this case, you should use oneshot instead of classic service type because you don't have nothing to supervise, this is exactly the role of a oneshot service.

Be aware(need to put this somewhere in the documentation) of one thing, when you change the type of a service keeping the same name, you need first to disable and stop the service from the tree then enable and start the new one. For the moment a conversion file format do not exist with 66.
Hmm several interesting comments provoked by this :D
My real concern is still a proposal for an option to order this output alphabetically haha ;)

Thanks for the comments. I like the simplicity of just calling iw and dhcpcd but it's true that this is a fail prone solution and should be enhanced upon.
Also the clarification about oneshot was something I was actually struggling with these days. This helped. Thanks!
And also the detail about changing the service type.
Man it seems you were watching what I did today Eric...creepy hahaha
well well well
# 66-info -T boot | sort
and voilà your option is added :lol:
Have you actually tried that? Doesn't work very well to be honest. It puts service types in groups and then who knows what.
(Like clearly t comes before s in the alphabet and longrun dbus doesn't even group etc.) Weird.
____________root_____________
Contains:       | Enabled: yes
Initialized: yes | Current: yes
└─(677,Enabled,longrun) dbus
├─(0,Enabled,oneshot) wifi
├─(0,Enabled,oneshot) zfs
├─(645,Enabled,classic) tty1
├─(646,Enabled,classic) tty2
├─(647,Enabled,classic) sddm
├─(648,Enabled,classic) sddm-log
├─(673,Enabled,longrun) dbus-log
Think this is very unnecessary?

Powered by Obarun