Re: rc.d provides and recent changes to rc.d scripts in base (was Re: Shared object "libsodium.so.13" not found, required by "dnscrypt-proxy")

From: Miguel Clara <miguelmclara_at_gmail.com>
Date: Tue, 24 Feb 2015 19:18:43 +0000
On Tue, Feb 24, 2015 at 6:58 PM, Garrett Cooper <yaneurabeya_at_gmail.com>
wrote:

> On Feb 24, 2015, at 10:53, Miguel Clara <miguelmclara_at_gmail.com> wrote:
>
> >
> > On Tue, Feb 24, 2015 at 6:13 PM, Garrett Cooper <yaneurabeya_at_gmail.com>
> wrote:
> > On Feb 24, 2015, at 6:35, Miguel Clara <miguelmclara_at_gmail.com> wrote:
> >
> > > ]# rcorder /etc/rc.d/* /usr/local/etc/rc.d/* >/dev/null
> > > rcorder: file `/usr/local/etc/rc.d/tcsd' is before unknown provision
> `kerberos'
> > > rcorder: file `/usr/local/etc/rc.d/tcsd' is before unknown provision
> `named'
> > > rcorder: file `/usr/local/etc/rc.d/dnscrypt-proxy' is before unknown
> provision `unbound'
> > > rcorder: Circular dependency on file `/usr/local/etc/rc.d/webcamd'.
> > > rcorder: Circular dependency on provision `dbus' in file
> `/usr/local/etc/rc.d/webcamd'.
> > > rcorder: Circular dependency on provision `ldconfig' in file
> `/usr/local/etc/rc.d/dnscrypt-proxy'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> `/etc/rc.d/devfs'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> `/etc/rc.d/mdconfig2'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> `/etc/rc.d/newsyslog'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> `/etc/rc.d/syslogd'.
> > > rcorder: Circular dependency on provision `NETWORKING' in file
> `/etc/rc.d/kdc'.
> > > rcorder: Circular dependency on provision `ldconfig' in file
> `/etc/rc.d/SERVERS'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> `/etc/rc.d/archdep'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> `/etc/rc.d/SERVERS'.
> > > rcorder: requirement `tpmd' in file `/usr/local/etc/rc.d/tcsd' has no
> providers.
> > > rcorder: Circular dependency on file `/usr/local/etc/rc.d/uuidd'.
> > > rcorder: requirement `usbd' in file `/usr/local/etc/rc.d/hald' has no
> providers.
> > >
> > > # rcorder /etc/rc.d/* /usr/local/etc/rc.d/* | awk
> ‘/SERVERS|cleanvar|ldconfig|dbus/ { print NR, $0 }’
> > > rcorder: file `/usr/local/etc/rc.d/tcsd' is before unknown provision
> `kerberos'
> > > rcorder: file `/usr/local/etc/rc.d/tcsd' is before unknown provision
> `named'
> > > rcorder: file `/usr/local/etc/rc.d/dnscrypt-proxy' is before unknown
> provision `unbound'
> > > rcorder: Circular dependency on file `/usr/local/etc/rc.d/webcamd'.
> > > rcorder: Circular dependency on provision `dbus' in file
> `/usr/local/etc/rc.d/webcamd'.
> > > rcorder: Circular dependency on provision `ldconfig' in file
> `/usr/local/etc/rc.d/dnscrypt-proxy'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> `/etc/rc.d/devfs'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> `/etc/rc.d/mdconfig2'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> `/etc/rc.d/newsyslog'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> `/etc/rc.d/syslogd'.
> > > rcorder: Circular dependency on provision `NETWORKING' in file
> `/etc/rc.d/kdc'.
> > > rcorder: Circular dependency on provision `ldconfig' in file
> `/etc/rc.d/SERVERS'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> `/etc/rc.d/archdep'.
> > > rcorder: Circular dependency on provision `mountcritremote' in file
> `/etc/rc.d/SERVERS'.
> > > rcorder: requirement `tpmd' in file `/usr/local/etc/rc.d/tcsd' has no
> providers.
> > > rcorder: Circular dependency on file `/usr/local/etc/rc.d/uuidd'.
> > > rcorder: requirement `usbd' in file `/usr/local/etc/rc.d/hald' has no
> providers.
> > > cleanvar: Command not found.
> > > dbus/: Command not found.
> > >
> > > Note that this is still with the change to dnscrypt-ptoxy REQUIRE
> (adding ldconfig)
> >
> > Your rcorder is 50 shades of broken :(. Please remove all local
> modifications to scripts, then repost the output of the rcorder commands
> again. I suspect what’s going wrong is the result of some of my changes to
> remove etc/rc.d based on build knobs…
> > Cheers,
> >
> > So much like the movies them... damn.... :X
> >
> > I don't recall any changes to the rc.d scripts except the one to
> dnscrypt-proxy (adding the ldconfig REQUIRE)
>
> Adding ldconfig can screw everything up, depending on what the ordering
> is. Dependency loops can be longer than you think.


Hum... removing it gives the same output.. and the issue with the order
already existed anyway, so I don't think the change to dnscrypt-proxy is
the main issue here...


> > I also don't really know what to make of the output... expect this part:
> >
> > "Circular dependency on provision", but the man says:
> > A set of files has a circular dependency which was    detected while
> processing the stated condition.
> >
> > So it should mean that 'A' requires 'B' but 'B' requires 'A'... but this
> does not seem to be the case…
>
> Not directly, but indirectly, maybe.
>
> > I guess I'll have to go one by one and see if I can identify issue. But
> first I'll make sure the ports that use those rc.d scripts are up to date.
>
> Some of your ports are depending on named (which is no longer in base),
> and unbound (which isn’t installed if MK_UNBOUND=no).
>
> It looks like you’re installing world with MK_KERBEROS=no.
>

I'm used the provided "GENERIC-NODEBUG" config, and I'm jus running "make
installworld" no options... just followed the guide (1).
make delete-old and make delete-old-libs were both run...



> I was going to create a dummy provider called “DNS” for all scripts to
> depend on (and named/unbound would PROVIDE: DNS), but it would require
> backporting that script everywhere (and I haven’t done that quite yet…).
>
> Please also run `make delete-old` and delete any stale rc.d scripts if
> prompted by mergemaster/etcupdate.


As stated above make delete-old was run and re-runing show nothing to
delete.

>
>
HTH,
>


(1) https://www.freebsd.org/doc/handbook/makeworld.html
Received on Tue Feb 24 2015 - 18:19:05 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:55 UTC