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)

2015-02-24 Thread Garrett Cooper
On Feb 24, 2015, at 10:53, Miguel Clara miguelmcl...@gmail.com wrote:

 
 On Tue, Feb 24, 2015 at 6:13 PM, Garrett Cooper yaneurab...@gmail.com wrote:
 On Feb 24, 2015, at 6:35, Miguel Clara miguelmcl...@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.

 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 wasdetected 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 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 

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)

2015-02-24 Thread Miguel Clara
On Tue, Feb 24, 2015 at 6:58 PM, Garrett Cooper yaneurab...@gmail.com
wrote:

 On Feb 24, 2015, at 10:53, Miguel Clara miguelmcl...@gmail.com wrote:

 
  On Tue, Feb 24, 2015 at 6:13 PM, Garrett Cooper yaneurab...@gmail.com
 wrote:
  On Feb 24, 2015, at 6:35, Miguel Clara miguelmcl...@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 wasdetected 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