1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-04 22:33:27 +00:00
freebsd-ports/japanese/dserver/files/setup.sh.inetd
Masafumi Max NAKANE 520b21cc72 New port, dserver:
A CD-ROM dictionary lookup facility (server and clients).

Submitted by:	Yoshio MITA <mita@jp.freebsd.org>
(Closing PR #2311.)
1997-01-29 03:56:05 +00:00

140 lines
6.1 KiB
Bash

#!/bin/sh
echo "You have to do 5 things before using dserver via inetd."
echo "1. Add 'ndtp 2010/tcp' to /etc/services."
echo "2. Add 'ndtp stream tcp nowait root /usr/local/lib/dserver dserver'"
echo " to /etc/inetd.conf"
echo "3. Add startup configration of mule-client to site-start.el."
echo "4. Restart inetd by 'kill -HUP `cat /var/run/inetd.pid`'."
echo "5. Mount cdrom (or copy files) to PREFIX_DIR/dict/dserver/cdrom/."
# Hack /etc/services
echo
echo "Updating /etc/services";
cp /etc/services /etc/services.bak;
(grep -v ndtp /etc/services.bak ; echo "ndtp 2010/tcp # Network Dictionary Transfer Protocol") > /tmp/services
echo "Do you like to update /etc/services automatically? (y/n) [y]" ;
read ans;
case x${ans} in
xn*|xN*)
echo "Do you like to change /etc/services file by yourself? (y/n) [y]" ;
read choice ;
case x${choice} in
xn*|xN*)
echo "Okay, do nothing.";;
*)
echo "Edit /etc/services file by yourself (Press Return)";
read dummy;
vi -c /ndtp /tmp/services;
cp /tmp/services /etc/services; rm /tmp/services ;;
esac ;;
*)
echo "original file is saved in /etc/services.bak" ;
cp /tmp/services /etc/services; rm /tmp/services ;;
esac
# Hack /etc/inetd.conf
echo
echo "Updating /etc/inetd.conf";
cp /etc/inetd.conf /etc/inetd.conf.bak;
(grep -v ndtp /etc/inetd.conf.bak ; echo "ndtp stream tcp nowait root /usr/local/lib/dserver/dserver dserver") > /tmp/inetd.conf
echo "Do you like to update /etc/inetd.conf automatically? (y/n) [y]" ;
read ans;
case x${ans} in
xn*|xN*)
echo "Do you like to change /etc/inetd.conf file by yourself? (y/n) [y]" ;
read choice ;
case x${choice} in
xn*|xN*)
echo "Okay, do nothing.";;
*)
echo "Edit /etc/inetd.conf file by yourself (Press Return)";
read dummy;
vi -c /ndtp /tmp/inetd.conf;
cp /tmp/inetd.conf /etc/inetd.conf; rm /tmp/inetd.conf ;;
esac ;;
*)
echo "original file is saved in /etc/inetd.conf.bak" ;
cp /tmp/inetd.conf /etc/inetd.conf; rm /tmp/inetd.conf ;;
esac
echo "Do you want to restart inetd right now? (y/n) [y]" ;
read ans;
case x${ans} in
xn*|xN*)
echo "Remember to restart inetd (or reboot)."
;;
*)
echo "Restart inetd."
kill -HUP `cat /var/run/inetd.pid`
;;
esac
# Hack PREFIX_DIR/lib/mule/site-lisp/site-start.el
rm -f /tmp/hack-site-start.el
echo "(defun hack-site-start ()" >> /tmp/hack-site-start.el
echo " (interactive)" >> /tmp/hack-site-start.el
echo " (message \"Updating site-start.el. \")" >> /tmp/hack-site-start.el
echo " (let* ((args command-line-args-left)" >> /tmp/hack-site-start.el
echo " (fname (expand-file-name (nth 0 args)))" >> /tmp/hack-site-start.el
echo " (dir (nth 1 args)))" >> /tmp/hack-site-start.el
echo " (setq command-line-args-left (cdr (cdr command-line-args-left)))" >> /tmp/hack-site-start.el
echo " (set-buffer (get-buffer-create \" *x*\"))" >> /tmp/hack-site-start.el
echo " (erase-buffer)" >> /tmp/hack-site-start.el
echo " (if (file-exists-p fname)" >> /tmp/hack-site-start.el
echo " (insert-file-contents fname))" >> /tmp/hack-site-start.el
echo " (goto-char (point-min))" >> /tmp/hack-site-start.el
echo " (if (search-forward \";;; diclookup-mule: Online dictionary\" nil t)" >> /tmp/hack-site-start.el
echo " (message \"No changes made.\")" >> /tmp/hack-site-start.el
echo " (goto-char (point-max))" >> /tmp/hack-site-start.el
echo " (insert \"\n;;; diclookup-mule: Online dictionary\n\")" >> /tmp/hack-site-start.el
echo " (insert \"(autoload 'online-dictionary \\\"diclookup-mule\\\" \")" >> /tmp/hack-site-start.el
echo " (insert \"\\\"Online dictionary.\\\" t nil)\n\")" >> /tmp/hack-site-start.el
echo " (insert \"(autoload 'od:lookup-pattern-edit \\\"diclookup-mule\\\" \")" >> /tmp/hack-site-start.el
echo " (insert \"\\\"Look up a word.\\\" t nil)\n\")" >> /tmp/hack-site-start.el
echo " (insert \"(setq od-chujiten-flag t) ; diclookup-mule\n\")" >> /tmp/hack-site-start.el
echo " (insert \"(setq od-dictfile-list '(\\\"od-chujiten\\\" \\\"od-kojien\\\" \\\"od-readers\\\" \\\"od-crown\\\")) \")" >> /tmp/hack-site-start.el
echo " (insert \"; diclookup-mule\n\")" >> /tmp/hack-site-start.el
echo " (insert \"(setq dserver-server-list '(\\\"localhost\\\")) ; diclookup-mule\n\")" >> /tmp/hack-site-start.el
echo " (insert \"(setq od-frame-geometry \\\"+0-0\\\" od-hide-frame \")" >> /tmp/hack-site-start.el
echo " (insert \"'make-invisible) ; diclookup-mule\n\")" >> /tmp/hack-site-start.el
echo " (insert \"(add-hook 'od-really-quit-hook 'od-delete-frame) \")" >> /tmp/hack-site-start.el
echo " (insert \"; diclookup-mule\n\")" >> /tmp/hack-site-start.el
echo " (insert \"(define-key-after menu-bar-file-menu [dictionary] \")" >> /tmp/hack-site-start.el
echo " (insert \"; diclookup-mule\n\")" >> /tmp/hack-site-start.el
echo " (insert \" '(\\\"Online Dictionary\\\" . online-dictionary) 'calendar) \")" >> /tmp/hack-site-start.el
echo " (insert \"; diclookup-mule\n\")" >> /tmp/hack-site-start.el
echo " (write-file fname))))" >> /tmp/hack-site-start.el
# Hack site-start.el
echo
echo "Updating PREFIX_DIR/lib/mule/site-lisp/site-start.el";
cp PREFIX_DIR/lib/mule/site-lisp/site-start.el PREFIX_DIR/lib/mule/site-lisp/site-start.el.bak
echo "Do you like to update site-start.el automatically? (y/n) [y]" ;
read ans;
case x${ans} in
xn*|xN*)
echo "Do you like to change site-start.el file by yourself?(y/n) [y]" ;
read choice ;
case x${choice} in
xn*|xN*)
echo "Okay, Do nothing."
rm -f PREFIX_DIR/lib/mule/site-lisp/site-start.el.bak ;;
*)
mule -batch -q -l /tmp/hack-site-start.el -f hack-site-start \
PREFIX_DIR/lib/mule/site-lisp/site-start.el ;
echo "Edit site-start.el file by yourself (Press Return)";
read dummy;
vi -c /diclookup PREFIX_DIR/lib/mule/site-lisp/site-start.el ;
echo "original file is saved in PREFIX_DIR/lib/mule/site-lisp/site-start.el.bak";;
esac;;
*)
mule -batch -q -l /tmp/hack-site-start.el -f hack-site-start \
PREFIX_DIR/lib/mule/site-lisp/site-start.el ;
echo "original file is saved in PREFIX_DIR/lib/mule/site-lisp/site-start.el.bak" ;;
esac
rm -f /tmp/hack-site-start.el
echo "Now startup configuration is done."
echo "Remember to mount cdrom to PREFIX_DIR/dict/dserver/cdrom."