diff options
Diffstat (limited to 'japanese/dserver/files/setup.sh.standalone')
-rw-r--r-- | japanese/dserver/files/setup.sh.standalone | 136 |
1 files changed, 136 insertions, 0 deletions
diff --git a/japanese/dserver/files/setup.sh.standalone b/japanese/dserver/files/setup.sh.standalone new file mode 100644 index 000000000000..be3579465b35 --- /dev/null +++ b/japanese/dserver/files/setup.sh.standalone @@ -0,0 +1,136 @@ +#!/bin/sh +echo "You have to do 4 things before using dserver." +echo "1. Add 'ndtp 2010/tcp' to /etc/services." +echo "2. Add startup command of dserver to PREFIX_DIR/etc/rc.d/" +echo "3. Add startup configration of mule-client to site-start.el." +echo "4. 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 + +# Add startup shell script to PREFIX_DIR/etc/rc.d +echo +echo "Adding startup shell script to PREFIX_DIR/etc/rc.d/" +echo "Do you like to add startup shell script automatically? (y/n) [y]" ; +(echo "# dserver - dictionary server" ; + echo "if [ -x PREFIX_DIR/lib/dserver/dserver ] ; then" ; + echo " PREFIX_DIR/lib/dserver/dserver &" ; + echo " echo -n ' dserver'" ; + echo "fi") > /tmp/dserver.sh +read ans; +case x${ans} in + xn*|xN*) + echo "Do you like to edit PREFIX_DIR/etc/rc.d/dserver.sh file by yourself? (y/n) [y]" ; + read choice ; + case x${choice} in + xn*|xN*) + echo "Okay, do nothing." + echo "rm /tmp/dserver.sh" + ;; + *) + echo "Edit dserver.sh file by yourself (Press Return)"; + read dummy; + vi /tmp/dserver.sh; + cp /tmp/dserver.sh PREFIX_DIR/etc/rc.d/ + chmod 755 PREFIX_DIR/etc/rc.d/dserver.sh + rm /tmp/dserver.sh + ;; + esac + ;; + *) + cp /tmp/dserver.sh PREFIX_DIR/etc/rc.d/ + chmod 755 PREFIX_DIR/etc/rc.d/dserver.sh + rm /tmp/dserver.sh + echo "dserver.sh is added to PREFIX_DIR/etc/rc.d/" +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." |