Hi all,
While browsing through '/etc', I have stumbled upon ldomd(8) rc.d(8) script:
/etc/rc.d/ldomd
and two entries referring to it:
- one in rc(8):
start_daemon ldomd sshd snmpd ldpd ripd ospfd ospf6d bgpd ifstated
- and one in rc.conf(8):
ldomd_flags=NO # for normal use: ""
Given that ldomd is sparc64-only, shouldn't the file and the entries be
only available on that architecture?
While looking into the above I have also noticed that login.conf(5) is
machine-dependent, even though it is identical an *all* architectures -
it is only different on alpha where the timestamp is off by one second
(or two characters):
< # $OpenBSD: login.conf,v 1.2 2014/04/22 11:03:39 reyk Exp $
---
> # $OpenBSD: login.conf,v 1.2 2014/04/22 11:03:40 reyk Exp $
I have prepared a diff which addresses both of the above (ldomd and
login.conf) but if you think that it is an overkill to make rc and
rc.conf machine-dependent, then feel free to only use the part which
makes login.conf machine-independent.
Since the diff is massive (15k+), I wouldn't dare including it here in
full but am adding the diff to the Makefile at the very least:
Index: etc/Makefile
===================================================================
RCS file: /cvs/src/etc/Makefile,v
retrieving revision 1.400
diff -u -p -r1.400 Makefile
--- etc/Makefile 3 Dec 2014 20:13:49 -0000 1.400
+++ etc/Makefile 13 Jan 2015 22:50:40 -0000
@@ -31,10 +31,10 @@ kernels: bootblocks ${ALL_KERNELS}
BINOWN= root
BINGRP= wheel
MUTABLE=changelist csh.cshrc csh.login csh.logout daily \
- etc.${MACHINE}/disktab etc.${MACHINE}/login.conf ftpusers \
- gettytab group ksh.kshrc locate.rc mailer.conf man.conf \
- moduli monthly netstart networks newsyslog.conf \
- pf.os protocols rc rc.conf rpc services shells syslog.conf weekly
+ etc.${MACHINE}/disktab login.conf ftpusers gettytab group ksh.kshrc \
+ locate.rc mailer.conf man.conf moduli monthly netstart networks \
+ newsyslog.conf pf.os protocols etc.${MACHINE}/rc \
+ etc.${MACHINE}/rc.conf rpc services shells syslog.conf weekly
# -rw-r--r--
EXAMPLES=chio.conf dhclient.conf dhcpd.conf exports ftpchroot hosts.lpd \
@@ -52,12 +52,15 @@ EXAMPLES_600=bgpd.conf dvmrpd.conf hosta
# -r-xr-xr-x
RCDAEMONS=amd apmd bgpd bootparamd cron dhcpd dhcrelay dvmrpd ftpd ftpproxy \
- hostapd hotplugd httpd identd ifstated iked inetd isakmpd iscsid \
- ldapd ldattach ldomd ldpd lockd lpd mopd mountd mrouted nfsd \
- npppd nsd ntpd ospf6d ospfd pflogd portmap rarpd rbootd relayd \
- ripd route6d rtadvd sasyncd sensorsd slowcgi smtpd sndiod \
- snmpd spamd spamlogd sshd statd syslogd tftpd tftpproxy unbound \
- watchdogd wsmoused xdm ypbind ypldap yppasswdd ypserv
+ hostapd hotplugd httpd identd ifstated iked inetd isakmpd iscsid ldapd \
+ ldattach ldpd lockd lpd mopd mountd mrouted nfsd npppd nsd ntpd ospf6d \
+ ospfd pflogd portmap rarpd rbootd relayd ripd route6d rtadvd sasyncd \
+ sensorsd slowcgi smtpd sndiod snmpd spamd spamlogd sshd statd syslogd \
+ tftpd tftpproxy unbound watchdogd wsmoused xdm ypbind ypldap yppasswdd \
+ ypserv
+.if ${MACHINE} == "sparc64"
+RCDAEMONS+= ldomd
+.endif
MISETS= base${OSrev}.tgz comp${OSrev}.tgz man${OSrev}.tgz
game${OSrev}.tgz
The remaining commands should be something along the lines of:
cd /usr/src/etc # using /usr/src as the source directory
cp etc.alpha/login.conf .
for i in etc.* ; do rm $i/login.conf
cp rc rc.conf etc.sparc64
# edit rc and rc.conf and removed references to ldomd
for i in etc.* ; do cp -i rc rc.conf $i ; done # ignoring etc.sparc64
rm rc rc.conf
# and obviously the necessary cvs add/remove, etc.
I hope all of the above makes sense :^)
Cheers,
Raf