On 2007/10/07, Ulrich Mueller <[EMAIL PROTECTED]> wrote:
> Which leads me to the question: What is the recommended way to add a
> service to /etc/services?
FYI, attached is a list of ebuilds which touch /etc/services. I count
eight packages, which do it in either src_install, pkg_postinst, or
pkg_config. Plus a few ones with just some einfos about what should
be done by hand.
Maybe that's worth a small eclass, with a "useradd"-like function?
--
TGL.
app-emacs/[EMAIL PROTECTED]
app-emacs/[EMAIL PROTECTED] elisp-site-file-install
${FILESDIR}/50lookup-gentoo.el
app-emacs/[EMAIL PROTECTED]
app-emacs/[EMAIL PROTECTED]: if ! $(grep 2010/tcp /etc/services >/dev/null
2>&1) ; then
app-emacs/[EMAIL PROTECTED]: cp /etc/services ${T}/services
app-emacs/[EMAIL PROTECTED] cat >>${T}/services<<-EOF
app-emacs/[EMAIL PROTECTED] ndtp 2010/tcp
# Network Dictionary Transfer Protocol
app-emacs/[EMAIL PROTECTED] EOF
...
dev-db/[EMAIL PROTECTED] ln -s /var/log/firebird.log firebird.log
dev-db/[EMAIL PROTECTED] fi
dev-db/[EMAIL PROTECTED]
dev-db/[EMAIL PROTECTED]: # add gds_db to /etc/services
dev-db/[EMAIL PROTECTED]: if [ -z "`grep gds_db /etc/services`" ]
dev-db/[EMAIL PROTECTED] then
dev-db/[EMAIL PROTECTED]: echo -e "#\n#Service added for gds_db
(firebird)\n#" >> /etc/services
dev-db/[EMAIL PROTECTED]: echo "gds_db 3050/tcp" >>
/etc/services
dev-db/[EMAIL PROTECTED]: einfo "added gds_db to /etc/services"
dev-db/[EMAIL PROTECTED] fi
dev-db/[EMAIL PROTECTED]
dev-db/[EMAIL PROTECTED] # if found /etc/isc4.gdb from previous install,
backup, and restore as
...
media-gfx/[EMAIL PROTECTED]() {
media-gfx/[EMAIL PROTECTED] # What follows is modified from rpm -qp
--scripts Maya6_5-6.5-253.i686.rpm
media-gfx/[EMAIL PROTECTED]: cp ${ROOT}/etc/services ${T}/services.maya_save
media-gfx/[EMAIL PROTECTED]: awk '/mi-ray/ { found++; print ; next } {print}
END {if (0==found) print "mi-ray 7003/tcp" }' ${T}/services.maya_save >
${ROOT}/etc/services
media-gfx/[EMAIL PROTECTED]
media-gfx/[EMAIL PROTECTED]: cp ${ROOT}/etc/services ${T}/services.maya_save
media-gfx/[EMAIL PROTECTED]: awk '/mi-raysat/ { found++; print ; next }
{print} END {if (0==found) print "mi-raysat 7103/tcp" }'
${T}/services.maya_save > ${ROOT}/etc/services
media-gfx/[EMAIL PROTECTED]
media-gfx/[EMAIL PROTECTED] # update the magic file
media-gfx/[EMAIL PROTECTED] if [[ -e ${ROOT}/usr/share/magic ]]; then
...
media-libs/[EMAIL PROTECTED]() {
media-libs/[EMAIL PROTECTED] make DESTDIR=${D} install || die
media-libs/[EMAIL PROTECTED]
media-libs/[EMAIL PROTECTED]: # Add to /etc/services
media-libs/[EMAIL PROTECTED]: if ! grep -q ^ladcca /etc/services; then
media-libs/[EMAIL PROTECTED] dodir /etc
media-libs/[EMAIL PROTECTED] insinto /etc
media-libs/[EMAIL PROTECTED]: doins /etc/services
media-libs/[EMAIL PROTECTED]: echo -e "\nladcca\t\t14541/tcp\t\t\t#
LADCCA client/server protocol" >> ${D}/etc/services
media-libs/[EMAIL PROTECTED] fi
media-libs/[EMAIL PROTECTED]
media-libs/[EMAIL PROTECTED] dodoc AUTHORS ChangeLog NEWS README TODO
...
media-libs/[EMAIL PROTECTED]() {
media-libs/[EMAIL PROTECTED] make DESTDIR=${D} install || die
media-libs/[EMAIL PROTECTED]
media-libs/[EMAIL PROTECTED]: # Add to /etc/services
media-libs/[EMAIL PROTECTED]: if ! grep -q ^ladcca /etc/services; then
media-libs/[EMAIL PROTECTED] dodir /etc
media-libs/[EMAIL PROTECTED] insinto /etc
media-libs/[EMAIL PROTECTED]: doins /etc/services
media-libs/[EMAIL PROTECTED]: echo -e "\nladcca\t\t14541/tcp\t\t\t#
LADCCA client/server protocol" >> ${D}/etc/services
media-libs/[EMAIL PROTECTED] fi
media-libs/[EMAIL PROTECTED]
media-libs/[EMAIL PROTECTED] dodoc AUTHORS ChangeLog NEWS README TODO
...
media-sound/[EMAIL PROTECTED]() {
media-sound/[EMAIL PROTECTED] make DESTDIR=${D} install || die
media-sound/[EMAIL PROTECTED]
media-sound/[EMAIL PROTECTED]: # Add to /etc/services
media-sound/[EMAIL PROTECTED]: if ! grep -q ^lash /etc/services; then
media-sound/[EMAIL PROTECTED] dodir /etc
media-sound/[EMAIL PROTECTED] insinto /etc
media-sound/[EMAIL PROTECTED]: doins /etc/services
media-sound/[EMAIL PROTECTED]: echo -e "\nlash\t\t14541/tcp\t\t\t#
LASH client/server protocol" >> ${D}/etc/services
media-sound/[EMAIL PROTECTED] fi
media-sound/[EMAIL PROTECTED]
media-sound/[EMAIL PROTECTED] dodoc AUTHORS ChangeLog NEWS README TODO
...
media-sound/[EMAIL PROTECTED]() {
media-sound/[EMAIL PROTECTED] make DESTDIR=${D} install || die
media-sound/[EMAIL PROTECTED]
media-sound/[EMAIL PROTECTED]: # Add to /etc/services
media-sound/[EMAIL PROTECTED]: if ! grep -q ^lash /etc/services; then
media-sound/[EMAIL PROTECTED] dodir /etc
media-sound/[EMAIL PROTECTED] insinto /etc
media-sound/[EMAIL PROTECTED]: doins /etc/services
media-sound/[EMAIL PROTECTED]: echo -e "\nlash\t\t14541/tcp\t\t\t#
LASH client/server protocol" >> ${D}/etc/services
media-sound/[EMAIL PROTECTED] fi
media-sound/[EMAIL PROTECTED]
media-sound/[EMAIL PROTECTED] dodoc AUTHORS ChangeLog NEWS README TODO
...
net-ftp/[EMAIL PROTECTED]() {
net-ftp/[EMAIL PROTECTED]: einfo "Updating /etc/services"
net-ftp/[EMAIL PROTECTED]: { grep -v ^glftpd /etc/services;
net-ftp/[EMAIL PROTECTED] echo "glftpd 21/tcp"
net-ftp/[EMAIL PROTECTED]: } > /etc/services.new
net-ftp/[EMAIL PROTECTED]: mv -f /etc/services.new /etc/services
net-ftp/[EMAIL PROTECTED]
net-ftp/[EMAIL PROTECTED] einfo "Updating crontab"
net-ftp/[EMAIL PROTECTED] { crontab -l | grep -v "bin/reset"
...
net-ftp/[EMAIL PROTECTED]() {
net-ftp/[EMAIL PROTECTED]: einfo "Updating /etc/services"
net-ftp/[EMAIL PROTECTED]: { grep -v ^glftpd /etc/services;
net-ftp/[EMAIL PROTECTED] echo "glftpd 21/tcp"
net-ftp/[EMAIL PROTECTED]: } > /etc/services.new
net-ftp/[EMAIL PROTECTED]: mv -f /etc/services.new /etc/services
net-ftp/[EMAIL PROTECTED]
net-ftp/[EMAIL PROTECTED] einfo "Updating crontab"
net-ftp/[EMAIL PROTECTED] { crontab -l | grep -v "bin/reset"
...
net-misc/[EMAIL PROTECTED]
net-misc/[EMAIL PROTECTED] einstall || die
net-misc/[EMAIL PROTECTED]
net-misc/[EMAIL PROTECTED]: if ! $(grep 2010/tcp /etc/services >/dev/null
2>&1) ; then
net-misc/[EMAIL PROTECTED]: cp /etc/services ${T}/services
net-misc/[EMAIL PROTECTED] cat >>${T}/services<<-EOF
net-misc/[EMAIL PROTECTED] ndtp 2010/tcp
# Network Dictionary Transfer Protocol
net-misc/[EMAIL PROTECTED] EOF
...
net-proxy/[EMAIL PROTECTED]() {
net-proxy/[EMAIL PROTECTED] einfo "Add ufdbguard port to services:"
net-proxy/[EMAIL PROTECTED]: einfo 'echo "ufdbguardd 3977/tcp" >>
/etc/services '
net-proxy/[EMAIL PROTECTED]
...
sci-astronomy/[EMAIL PROTECTED]() {
sci-astronomy/[EMAIL PROTECTED] einfo "to use the clients the following line
will"
sci-astronomy/[EMAIL PROTECTED]: einfo "have to be inserted into
/etc/services"
sci-astronomy/[EMAIL PROTECTED] einfo "predict 1210/udp"
sci-astronomy/[EMAIL PROTECTED] einfo "the port can be changed to anything"
sci-astronomy/[EMAIL PROTECTED] einfo "the name predict is what is needed to
work"
...
sys-cluster/[EMAIL PROTECTED]() {
sys-cluster/[EMAIL PROTECTED]: einfo "Updating ${ROOT}/etc/services"
sys-cluster/[EMAIL PROTECTED]: { grep -v ^${PN} "${ROOT}"/etc/services;
sys-cluster/[EMAIL PROTECTED] echo "csync2 30865/tcp"
sys-cluster/[EMAIL PROTECTED]: } > "${ROOT}"/etc/services.new
sys-cluster/[EMAIL PROTECTED]: mv -f "${ROOT}"/etc/services.new
"${ROOT}"/etc/services
sys-cluster/[EMAIL PROTECTED]
sys-cluster/[EMAIL PROTECTED] if [ ! -f
"${ROOT}"/etc/${PN}/csync2_ssl_key.pem ]; then
sys-cluster/[EMAIL PROTECTED] einfo "Creating default certificate in
${ROOT}/etc/${PN}"
...
sys-cluster/[EMAIL PROTECTED]() {
sys-cluster/[EMAIL PROTECTED]: einfo "Updating ${ROOT}/etc/services"
sys-cluster/[EMAIL PROTECTED]: { grep -v ^${PN} "${ROOT}"/etc/services;
sys-cluster/[EMAIL PROTECTED] echo "csync2 30865/tcp"
sys-cluster/[EMAIL PROTECTED]: } > "${ROOT}"/etc/services.new
sys-cluster/[EMAIL PROTECTED]: mv -f "${ROOT}"/etc/services.new
"${ROOT}"/etc/services
sys-cluster/[EMAIL PROTECTED]
sys-cluster/[EMAIL PROTECTED] if [ ! -f
"${ROOT}"/etc/${PN}/csync2_ssl_key.pem ]; then
sys-cluster/[EMAIL PROTECTED] einfo "Creating default certificate in
${ROOT}/etc/${PN}"
...
sys-cluster/[EMAIL PROTECTED]() {
sys-cluster/[EMAIL PROTECTED] einfo "If you havent done so already please
execute the following command"
sys-cluster/[EMAIL PROTECTED] einfo "\"emerge --config =${CATEGORY}/${PF}\""
sys-cluster/[EMAIL PROTECTED]: einfo "to add xmlsysd to /etc/services."
sys-cluster/[EMAIL PROTECTED] einfo
sys-cluster/[EMAIL PROTECTED] einfo "Be sure to edit /etc/xinetd.d/xmylsysd
to suit your own options."
sys-cluster/[EMAIL PROTECTED] einfo
...
sys-cluster/[EMAIL PROTECTED]() {
sys-cluster/[EMAIL PROTECTED]: echo "xmlsysd 7887/tcp #
xmlsysd remote system stats" >> /etc/services
sys-cluster/[EMAIL PROTECTED]: einfo "Added xmlsysd to /etc/services"
sys-cluster/[EMAIL PROTECTED]
...
sys-fs/[EMAIL PROTECTED]() {
sys-fs/[EMAIL PROTECTED] einfo "with this release, you can configure the
used"
sys-fs/[EMAIL PROTECTED]: einfo "ports through /etc/services"
sys-fs/[EMAIL PROTECTED] einfo
sys-fs/[EMAIL PROTECTED] einfo "eg. use the default"
sys-fs/[EMAIL PROTECTED] einfo "rquotad 4003/tcp
# quota"