my Top page便利な大福帳ドジ話の目次前のドジ話次のドジ話

初めて Ports を取得しました!

  1998年6月13日(土)

  PC-UNIX 関連のファイルはインターネット上にごろごろと転がっています。
その中で、面白いメーラー( Mew:Messaging in the Emacs World)があります。
結構多くの方が使っておられますので興味を持っていました。
でも、標準では FreeBSD には添付されていません。でも、こうした
標準添付以外のプログラムでも、自動的に取得してインストールする
簡単な方法が FreeBSD プロジェクトによって用意されています。
# 本当にありがたいことです。
# 簡単といっても私みたいにやった事の無い者にとっては???ですが・・・
 インストールを自動でやるツールを Ports と言います。
その Mew を自動インストールする Ports を FTP で取得してきました。
他にも取得しました。
# Netscape の FTP 機能を使えば間単に取得できます。

やった事がありませんので、また色々トラブルとは思いますが、UNIX の
世界で生きていく為には、避けて通る事の出来ない関門のような気がします。
この技術を身に付ければ、標準では添付されていなくても、色んな最新の
ツール群をどんどん使っていくことができます。

今回は、これに挑戦していきます。

# あっ、それと Becky が V1.2413 にバージョンアップされていました。
# FreeBSD から FTP でファイルを取得しました。
# UNIX 環境でバージョンアップファイルを取得して、WinNT 環境にしてファイル
# の解凍インストールを行い無事、Becky v12413 にバージョンアップ出来ました。
# めでたしめでたし。
# でも、殆ど使う事の無いメーラーをバージョンアップしても仕様がないのにとは
# 思いますが、思わずやってしまいます。

取得した Ports の参考です。私は、これで内容を勉強したいと思います。どんな
風にして作られているのか、興味があります。自分でも作れるのだろうか? 難しそう!
# いくら見ても判らない! 方に賭けようかなあ!

--------------------------- 参考 Ports (seyon.tar )----------------------------------------
% cat seyon.tar   ・・・・cat でないと中身を見れませんでした。
pub/FreeBSD/FreeBSD-current/ports/comms/seyon/ 40755      0    317          0 6511142677  16434 5ustar  rootpub/FreeBSD/FreeBSD-current/ports/comms/seyon/files/ 40755      0    317          0 6417416312  17531 5ustar  rootpub/FreeBSD/FreeBSD-current/ports/comms/seyon/files/md5100644      0    317         73 5724456134  20204 0ustar  rootMD5 (Seyon-2.14b-tar.Z) = bc4903422dcedd245cffedd49e923a79
pub/FreeBSD/FreeBSD-current/ports/comms/seyon/patches/ 40755      0    317          0 6431172724  20060 5ustar  rootpub/FreeBSD/FreeBSD-current/ports/comms/seyon/patches/patch-aa100644      0    317       5346 6006424060  21555 0ustar  rootdiff -c ./Imakefile ../seyon.new/Imakefile
*** ./Imakefile Sat Mar 27 22:20:12 1993
--- ../seyon.new/Imakefile      Fri Feb  3 07:51:12 1995
***************
*** 11,16 ****
--- 11,19 ----
  DEPLIBS = 
  LOCAL_LIBRARIES = XawClientLibs
  
+ /* We need seyon to be sgid dialer */
+ INSTPGMFLAGS = -s -m 2755 -o bin -g dialer
+ 
  /* SYS_LIBRARIES = -lm */
  
  SRCS  = Seyon.c SeActions.c SeScan.c SeDial.c SeErr.c SeGeneric.c \
Only in .: Makefile
diff -c ./SePort.c ../seyon.new/SePort.c
*** ./SePort.c  Wed Apr 21 15:38:31 1993
--- ../seyon.new/SePort.c       Fri Feb  3 07:37:50 1995
***************
*** 627,645 ****
  #endif
        break;
  #if USE_NONSTD_BAUD
- #ifdef linux
      case 57600:
        baudrate = B38400;
        ser_io.flags &= ~ASYNC_SPD_MASK;
        ser_io.flags |= ASYNC_SPD_HI;
        break;
      case 115200:
        baudrate = B38400;
        ser_io.flags &= ~ASYNC_SPD_MASK;
        ser_io.flags |= ASYNC_SPD_VHI;
        break;
  #endif
- #endif
      default:
        return (-1);
      }
--- 627,651 ----
  #endif
        break;
  #if USE_NONSTD_BAUD
      case 57600:
+ #ifdef linux
        baudrate = B38400;
        ser_io.flags &= ~ASYNC_SPD_MASK;
        ser_io.flags |= ASYNC_SPD_HI;
+ #else
+               baudrate = B57600;
+ #endif 
        break;
      case 115200:
+ #ifdef linux
        baudrate = B38400;
        ser_io.flags &= ~ASYNC_SPD_MASK;
        ser_io.flags |= ASYNC_SPD_VHI;
+ #else
+               baudrate = B115200;
+ #endif 
        break;
  #endif
      default:
        return (-1);
      }
***************
*** 691,696 ****
--- 697,710 ----
  #endif
  #endif
        return 38400;
+ #if USE_NONSTD_BAUD
+ #ifndef linux
+   case B57600:
+               return(57600);
+   case B115200:
+               return(115200);
+ #endif 
+ #endif 
    }
  
    SeError("Consistency error in baud rate");
Only in ../seyon.new: SePort.c.orig
diff -c ./SeSubs.c ../seyon.new/SeSubs.c
*** ./SeSubs.c  Fri Apr 23 12:24:17 1993
--- ../seyon.new/SeSubs.c       Fri Feb  3 07:47:37 1995
***************
*** 249,254 ****
--- 249,256 ----
  
      if (setuid(getuid()) < 0)
        SePError("Failed to set effective uid");
+     if (setgid(getgid()) < 0)
+       SePError("Failed to set effective gid");
  
      if (*scmd == '\0') {
        SeNotice(FmtString1("Executing the shell ``%s''", shell));
diff -c ./config.h ../seyon.new/config.h
*** ./config.h  Wed Apr 21 14:47:48 1993
--- ../seyon.new/config.h       Fri Feb  3 07:37:50 1995
***************
*** 81,86 ****
--- 81,94 ----
  #define HAVE_USLEEP         YES
  #endif
  
+ #ifdef __FreeBSD__
+ #define USE_NONSTD_BAUD     YES
+ #define LF_PATH                               "/var/spool/lock"
+ #define LF_PREFIX           "LCK.."
+ #define LF_USE_ASCII_PID      YES
+ #define LF_USE_DEV_NUMBERS    NO
+ #endif 
+ 
  #ifdef SVR4
  #define HAVE_TERMIOS        YES
  #define HAVE_MODEM_CONTROL  YES
pub/FreeBSD/FreeBSD-current/ports/comms/seyon/patches/patch-ab100644      0    317       1343 6130762556  21564 0ustar  root--- SePort.c.orig   Thu Apr  4 11:44:26 1996
+++ SePort.c    Thu Apr  4 11:51:54 1996
@@ -1011,6 +1011,7 @@
   pid_t           pid,
                   lckpid;
   char           *modemname;
+  int            killret;
 #if LF_USE_ASCII_PID
   char            pidstr[20],
                   lckpidstr[20];
@@ -1077,11 +1078,13 @@
 #endif
 
       lockPid = (pid_t) lckpid;
-      if (kill(lckpid, 0) == 0) {
-               SeErrorF("Device %s is locked by process %d", modem_port, lckpid, "");
-               unlink(ltmp);
-               return -1;
-      }
+      killret = kill(lockPid, 0);
+        if(killret == 0 || (killret == -1 && errno != ESRCH)) {
+         SeErrorF("Device %s is locked by process %d.",
+                  modem_port, lckpid, "");
+         unlink(ltmp);
+         return -1;
+       }
     }
   }
 
pub/FreeBSD/FreeBSD-current/ports/comms/seyon/patches/patch-ac100644      0    317        610 6431133523  21527 0ustar  root--- SeDecl.h.orig   Sat Nov  8 08:56:16 1997
+++ SeDecl.h    Sat Nov  8 10:53:12 1997
@@ -56,7 +56,9 @@
 extern FILE    *open_file(),
                *open_file_va();
 extern void     send_break(),
-                usleep(),
+               #if !defined(__FreeBSD__) || (__FreeBSD__ < 3)
+                       usleep(),
+               #endif
                 show(),
                 showf(),
                 SeyonMessage(),
pub/FreeBSD/FreeBSD-current/ports/comms/seyon/Makefile100644      0    317        727 6511142676  20156 0ustar  root# New ports collection makefile for:        seyon
# Version required:     2.14b or 2.14c
# Date created:         3 October 1994
# Whom:                 Michael Elbel (me)
#
# $Id: Makefile,v 1.7 1998/04/03 04:20:48 jseger Exp $
#

DISTNAME=       Seyon-2.14b
PKGNAME=        seyon-2.14b
CATEGORIES=     comms x11
MASTER_SITES=   ftp://sipb.mit.edu/pub/seyon/
DISTFILES=      Seyon-2.14b-tar.Z

MAINTAINER=     me@FreeBSD.org

WRKSRC=         ${WRKDIR}/seyon
USE_IMAKE=      yes
BROKEN=         Installs file in ${HOME}/.seyon

.include 
pub/FreeBSD/FreeBSD-current/ports/comms/seyon/pkg/ 40755      0    317          0 6417416313  17211 5ustar  rootpub/FreeBSD/FreeBSD-current/ports/comms/seyon/pkg/COMMENT100644      0    317         62 6227100725  20265 0ustar  rootA communications package for the X Window system.
pub/FreeBSD/FreeBSD-current/ports/comms/seyon/pkg/DESCR100644      0    317       1713 5644267027  20102 0ustar  rootSeyon is a complete full-featured telecommunications package for
the X Window System. Its features include:

        - Dialing directory that supports an unlimited number of entries.
        - Terminal emulation window using any terminal emulation program
          that supports X. This defaults to xterm.
        - Script language to automate tedious tasks such as logging into
          remote hosts.
        - Unlimited number of slots for external file transfer protocols.
        - Support for zmodem auto-download.
        - Translation modes. Seyon can perfrom useful trasnlations on the 
          user's input.
        - interactive setting of program parameters
        - on-line help
        - modem speeds up to 115200 bps
        - software (XON/XOFF) and hardware (RTS/CTS) flow control
        - session capture to a file
        - temporary running of a local shell in the terminal emulation window.

Seyon is intended to be both simple and extensively configurable.
Almost every aspect of Seyon can be configured via the resources
to suit the user's taste.

pub/FreeBSD/FreeBSD-current/ports/comms/seyon/pkg/PLIST100644      0    317        155 6244065475  20114 0ustar  rootbin/seyon
lib/X11/app-defaults/Seyon
lib/X11/app-defaults/Seyon-color
lib/X11/seyon.help
man/man1/seyon.1.gz

%


my Top page便利な大福帳ドジ話の目次前のドジ話次のドジ話