Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 8 Jan 2000 12:52:16 -0500 (EST)
From:      Will Andrews <andrews@technologist.com>
To:        FreeBSD-gnats-submit@FreeBSD.ORG
Subject:   ports/15995: new port: shells/flash
Message-ID:  <200001081752.MAA16083@shadow.blackdawn.com>

next in thread | raw e-mail | index | archive | help

>Number:         15995
>Category:       ports
>Synopsis:       new port: shells/flash
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sat Jan  8 10:00:00 PST 2000
>Closed-Date:
>Last-Modified:
>Originator:     Will Andrews
>Release:        FreeBSD 3.4-STABLE i386
>Organization:
none
>Environment:

FreeBSD shadow.blackdawn.com 3.4-STABLE FreeBSD 3.4-STABLE #0: Sat Jan  1 10:41:51 EST 2000     root@shadow.blackdawn.com:/usr/src/sys/compile/SHADOW  i386

>Description:

This is the (fixed) Flash port. The compiled
program (should) no longer coredump. The
templates still suck, but I doubt the average
admin is going to want generic ones anyway.

>How-To-Repeat:

Use the diff below to fix the current port.

>Fix:

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	flash
#	flash/files
#	flash/files/md5
#	flash/pkg
#	flash/pkg/COMMENT
#	flash/pkg/DESCR
#	flash/pkg/PLIST
#	flash/patches
#	flash/patches/patch-aa
#	flash/patches/patch-ab
#	flash/patches/patch-ac
#	flash/patches/patch-ad
#	flash/patches/patch-ae
#	flash/patches/patch-af
#	flash/patches/patch-ag
#	flash/patches/patch-ah
#	flash/patches/patch-ai
#	flash/patches/patch-aj
#	flash/patches/patch-ak
#	flash/patches/patch-al
#	flash/Makefile
#
echo c - flash
mkdir -p flash > /dev/null 2>&1
echo c - flash/files
mkdir -p flash/files > /dev/null 2>&1
echo x - flash/files/md5
sed 's/^X//' >flash/files/md5 << 'END-of-flash/files/md5'
XMD5 (flash-0.9.1.tar.gz) = 8b26c4d562b43d531b836b2279dad447
END-of-flash/files/md5
echo c - flash/pkg
mkdir -p flash/pkg > /dev/null 2>&1
echo x - flash/pkg/COMMENT
sed 's/^X//' >flash/pkg/COMMENT << 'END-of-flash/pkg/COMMENT'
Xncurses-based restriction shell.
END-of-flash/pkg/COMMENT
echo x - flash/pkg/DESCR
sed 's/^X//' >flash/pkg/DESCR << 'END-of-flash/pkg/DESCR'
XFlash is an attempt to create a secure menu-driver shell for UNIX-derived OSes,
Xwhile providing user-friendliness and easy configurability. An ideal situation
Xrequiring the use of flash would be a student-run telnet server which needs to:
X
Xa) shelter the users from some of the nastinesses of UNIX
Xb) shelter the system from nasty users
Xc) provide an easy way to launch applications
Xd) support multitasking/job control as elegantly as possible
Xe) support easy-to-get-right configuration by administrators
X
XWWW: http://www.netsoc.ucd.ie/flash/
XAuthor: Steve Fegan <flash@netsoc.ucd.ie>
END-of-flash/pkg/DESCR
echo x - flash/pkg/PLIST
sed 's/^X//' >flash/pkg/PLIST << 'END-of-flash/pkg/PLIST'
Xbin/flash
Xlib/flash/background
Xlib/flash/countdown
Xlib/flash/mailshell
Xlib/flash/system.bg.Netsoc.3
Xlib/flash/system.bg.Netsoc.4
Xlib/flash/system.flashlogin
Xlib/flash/system.maillogin
Xlib/flash/system.menu
Xlib/flash/system.menu.9798
Xlib/flash/system.menu.oldlast
Xlib/flash/system.menu.old
Xlib/flash/system.menu~
Xlib/flash/system.module
Xlib/flash/system.module.9798
Xlib/flash/system.rc
Xlib/flash/system.rc.mailshell
Xlib/flash/flashdocs/IrcHelp.txt
Xlib/flash/flashdocs/apropertelnet.txt
Xlib/flash/flashdocs/glossary.txt
Xlib/flash/flashdocs/howuseppgate.txt
Xlib/flash/flashdocs/howusesquid.txt
Xlib/flash/flashdocs/speedweb.txt
Xlib/flash/flashdocs/uselynx.txt
Xlib/flash/checkflash
X@dirrm lib/flash/flashdocs
X@dirrm lib/flash
END-of-flash/pkg/PLIST
echo c - flash/patches
mkdir -p flash/patches > /dev/null 2>&1
echo x - flash/patches/patch-aa
sed 's/^X//' >flash/patches/patch-aa << 'END-of-flash/patches/patch-aa'
X--- Makefile.in	Mon Jun 28 11:28:50 1999
X+++ Makefile.in.new	Sun Jan  2 21:49:48 2000
X@@ -7,9 +7,8 @@
X INITIALMENU = system.menu
X 
X # Directory to install everything to
X-prefix = /usr/slocal
X EXEC_PREFIX = ${prefix}
X-BINDIR = $(EXEC_PREFIX)/bin
X+BINDIR = $(EXEC_PREFIX)/sbin
X LIBDIR = $(prefix)/lib/flash
X MANDIR = $(prefix)/man/man1
X 
X@@ -23,29 +22,38 @@
X TAR = tar
X TAROPTIONS = zcvf
X RELNAME = $(PROGNAME).tar.gz
X+NCURSES ?=
X+NC_CFLAGS ?=
X+NC_LFLAGS ?=
X 
X # C Compiler
X CC = gcc
X DEBUG  = -g
X #DEBUG = -DDEBUG -g
X #CPPFLAGS = -I/usr/include/ncurses -DHAVE_CONFIG_H -DPREFIX=\"/usr/slocal\" #-DDEBUG
X-CPPFLAGS = -DHAVE_CONFIG_H -DPREFIX=\"/usr/slocal\" -DDONT_HIGHLIGHT_WITH_REVERSE #-DLITTLE_ENDIAN 
X+CPPFLAGS = $(NCURSES) $(NC_CFLAGS) -DHAVE_CONFIG_H -DPREFIX=\"$(prefix)\" -DDONT_HIGHLIGHT_WITH_REVERSE #-DLITTLE_ENDIAN 
X CFLAGS = -O2 $(CPPFLAGS) $(DEBUG) -Wall -rdynamic
X 
X-LDFLAGS = -rdynamic
X-LIBRARIES = -lncurses -ldl
X+LDFLAGS = -rdynamic $(NC_LFLAGS)
X+LIBRARIES = -lncurses
X 
X SCREEN_SOURCES = screens/nc_init.c screens/nc_lock.c screens/nc_about.c screens/nc_menus.c screens/nc_misc.c screens/nc_job.c screens/nc_module.c
X 
X+MODULE_PROGS = modules/countdown modules/background
X SOURCES = main.c parse.c string.c set.c misc.c menu.c exec.c rc.c tree.c parseline.c event.c sha.c module.c debug.c $(SCREEN_SOURCES)
X OBJECTS = $(SOURCES:.c=.o)
X 
X+all: $(PROGNAME)
X+
X .c.o:
X 		$(CC) $(CFLAGS) -c -o $@ $<
X 
X-$(PROGNAME):	$(OBJECTS)
X+$(PROGNAME):	$(OBJECTS) $(MODULE_PROGS)
X 		$(RM) $@
X 		$(CC) -o $@ $(OBJECTS) $(LDFLAGS) $(LIBRARIES)
X+
X+$(MODULE_PROGS):
X+		$(MAKE) -C modules && $(MAKE)
X 
X shacrypt:	
X 		$(CC) $(CFLAGS) -DO_WRAP -o $@ sha.c
END-of-flash/patches/patch-aa
echo x - flash/patches/patch-ab
sed 's/^X//' >flash/patches/patch-ab << 'END-of-flash/patches/patch-ab'
X--- exec.h	Wed Mar  5 06:59:11 1997
X+++ exec.h.new	Sat Dec 11 01:29:48 1999
X@@ -3,6 +3,7 @@
X 
X #include<signal.h>
X #include<termios.h>
X+#include <sys/types.h>
X 
X #include "parse.h"
X #include "menu.h"
END-of-flash/patches/patch-ab
echo x - flash/patches/patch-ac
sed 's/^X//' >flash/patches/patch-ac << 'END-of-flash/patches/patch-ac'
X--- menu.c	Sun Apr 13 12:43:26 1997
X+++ menu.c.new	Sat Dec 11 01:30:45 1999
X@@ -5,7 +5,7 @@
X #include <stdio.h>
X #include <stdlib.h>
X #include <string.h>
X-#include <malloc.h>
X+#include <stdlib.h>
X 
X #include "menu.h"
X #include "parse.h"
END-of-flash/patches/patch-ac
echo x - flash/patches/patch-ad
sed 's/^X//' >flash/patches/patch-ad << 'END-of-flash/patches/patch-ad'
X--- module.c	Tue Jun 29 05:36:28 1999
X+++ module.c.new	Sat Dec 11 01:34:45 1999
X@@ -25,7 +25,6 @@
X #include<stdlib.h>
X #include<pwd.h>
X #include<sys/types.h>
X-#include<sys/resource.h>
X #include<sys/wait.h>
X #include<sys/stat.h>
X #include<fcntl.h>
END-of-flash/patches/patch-ad
echo x - flash/patches/patch-ae
sed 's/^X//' >flash/patches/patch-ae << 'END-of-flash/patches/patch-ae'
X--- parseline.c	Tue Jun 29 05:36:47 1999
X+++ parseline.c.new	Sat Dec 11 01:34:21 1999
X@@ -25,7 +25,6 @@
X #include<string.h>
X #include<pwd.h>
X #include<sys/types.h>
X-#include<sys/resource.h>
X #include<sys/wait.h>
X #include<sys/stat.h>
X #include<fcntl.h>
END-of-flash/patches/patch-ae
echo x - flash/patches/patch-af
sed 's/^X//' >flash/patches/patch-af << 'END-of-flash/patches/patch-af'
X--- rc.c	Tue Jun 29 05:36:54 1999
X+++ rc.c.new	Sat Dec 11 01:34:05 1999
X@@ -25,7 +25,6 @@
X #include<stdlib.h>
X #include<pwd.h>
X #include<sys/types.h>
X-#include<sys/resource.h>
X #include<sys/wait.h>
X #include<sys/stat.h>
X #include<fcntl.h>
END-of-flash/patches/patch-af
echo x - flash/patches/patch-ag
sed 's/^X//' >flash/patches/patch-ag << 'END-of-flash/patches/patch-ag'
X--- screens/nc_menus.c	Tue Jun 29 05:42:18 1999
X+++ screens/nc_menus.c.new	Sat Dec 11 01:36:09 1999
X@@ -783,7 +783,6 @@
X   struct menu *menu;
X   struct menu_items *HK;
X   int noclobber,gotch;
X-  char c;
X 
X   if (!(firstmenu))
X     return;
END-of-flash/patches/patch-ag
echo x - flash/patches/patch-ah
sed 's/^X//' >flash/patches/patch-ah << 'END-of-flash/patches/patch-ah'
X--- modules/alarms.c	Tue Apr 15 18:34:15 1997
X+++ modules/alarms.c.new	Sun Jan  2 20:50:02 2000
X@@ -1,5 +1,14 @@
X+#ifdef HAVE_CONFIG_H
X+#include "../config.h"
X+#endif
X+
X+#ifdef HAVE_NCURSES_NCURSES_H
X+#include <ncurses/ncurses.h>
X+#include <ncurses/term.h>
X+#else
X #include <curses.h>
X #include <term.h>
X+#endif
X 
X #include <stdlib.h>
X #include <stdio.h>
END-of-flash/patches/patch-ah
echo x - flash/patches/patch-ai
sed 's/^X//' >flash/patches/patch-ai << 'END-of-flash/patches/patch-ai'
X--- modules/background.c	Sat Oct 25 11:34:23 1997
X+++ modules/background.c.new	Sun Jan  2 20:48:46 2000
X@@ -20,8 +20,17 @@
X 
X 	  */
X 
X+#ifdef HAVE_CONFIG_H
X+#include "../config.h"
X+#endif
X+
X+#ifdef HAVE_NCURSES_NCURSES_H
X+#include <ncurses/ncurses.h>
X+#include <ncurses/term.h>
X+#else
X #include <curses.h>
X #include <term.h>
X+#endif
X 
X #include <stdlib.h>
X #include <stdio.h>
END-of-flash/patches/patch-ai
echo x - flash/patches/patch-aj
sed 's/^X//' >flash/patches/patch-aj << 'END-of-flash/patches/patch-aj'
X--- modules/countdown.c	Wed Oct 29 13:42:28 1997
X+++ modules/countdown.c.new	Sun Jan  2 20:50:16 2000
X@@ -4,8 +4,17 @@
X 
X    */
X 
X+#ifdef HAVE_CONFIG_H
X+#include "../config.h"
X+#endif
X+
X+#ifdef HAVE_NCURSES_NCURSES_H
X+#include <ncurses/ncurses.h>
X+#include <ncurses/term.h>
X+#else
X #include <curses.h>
X #include <term.h>
X+#endif
X 
X #include <stdlib.h>
X #include <stdio.h>
END-of-flash/patches/patch-aj
echo x - flash/patches/patch-ak
sed 's/^X//' >flash/patches/patch-ak << 'END-of-flash/patches/patch-ak'
X--- modules/Makefile	Sat Oct 25 18:59:03 1997
X+++ modules/Makefile.new	Sun Jan  2 21:51:53 2000
X@@ -1,7 +1,7 @@
X CC = gcc
X DEBUG = #-g
X-CFLAGS = $(DEBUG) -O3 -fpic -shared -Wall
X-LDFLAGS = -shared 
X+CFLAGS = $(NCURSES) $(NC_CFLAGS) $(DEBUG) -O3 -fpic -shared -Wall
X+LDFLAGS = $(NC_LFLAGS) -lncurses -shared 
X 
X OBJECTS = background test alarms countdown
X 
END-of-flash/patches/patch-ak
echo x - flash/patches/patch-al
sed 's/^X//' >flash/patches/patch-al << 'END-of-flash/patches/patch-al'
X--- main.c	Tue Jun 29 05:39:36 1999
X+++ main.c.new	Sun Jan  2 22:25:20 2000
X@@ -99,6 +99,7 @@
X int 
X main (int argc, char *argv[])
X {
X+  int debug_file=0;
X   struct passwd *ppwd, pwd;
X   struct sigaction s_act;
X   char c;
X@@ -183,6 +184,7 @@
X 	    exit(1);
X 	  }
X 	set_debug_file(optarg);
X+	debug_file=1;
X 	break;
X       case 'h':
X 	usage ();
X@@ -264,7 +266,9 @@
X     syslog (LOG_LOCAL1 | LOG_INFO, "%d: flash finished",
X 	    getpid ());
X 
X-  close_debug_file();
X+  if (debug_file) {
X+  	close_debug_file();
X+  }
X 
X   /* we outtie */
X   exit (0);
END-of-flash/patches/patch-al
echo x - flash/Makefile
sed 's/^X//' >flash/Makefile << 'END-of-flash/Makefile'
X# New ports collection makefile for:	flash
X# Version required:	0.9.1
X# Date created:		11 Dec 1999
X# Whom:			Will Andrews <andrews@technologist.com>
X#
X# $FreeBSD$
X#
X
XDISTNAME=	flash-0.9.1
XCATEGORIES=	shells
XMASTER_SITES=	ftp://ftp.netsoc.ucd.ie/pub/computing/flash/
X
XMAINTAINER=	andrews@technologist.com
X
X.include <bsd.port.pre.mk>
X
X# outdated version of ncurses in non-CURRENT
X.if ${OSVERSION} < 400000
XLIB_DEPENDS=	ncurses.4:${PORTSDIR}/devel/ncurses
X.endif
X
XGNU_CONFIGURE=	yes
XUSE_GMAKE=	yes
XMAKE_ENV=	prefix=${PREFIX}
XWRKSRC=		${WRKDIR}/flash
XMAN1=		flash.1
X
Xpre-configure:
X.if ${OSVERSION} < 400000
XMAKE_ENV+=	NCURSES=-DHAVE_NCURSES_NCURSES_H \
X		NC_CFLAGS="-I${LOCALBASE}/include" \
X		NC_LFLAGS="-L${LOCALBASE}/lib"
X.endif
X
Xpre-build:
X	@${RM} -rf ${WRKSRC}/modules/countdown ${WRKSRC}/modules/background
X
Xdo-install:
X	@${INSTALL_PROGRAM} ${WRKSRC}/flash ${PREFIX}/bin
X	@${MKDIR} ${PREFIX}/lib/flash/flashdocs/
X.for DOC in checkflash system.bg.Netsoc.3 system.bg.Netsoc.4 system.flashlogin \
X	    system.maillogin system.module system.module.9798 system.rc system.rc.mailshell
X	@${INSTALL_DATA} ${WRKSRC}/orcasetup/${DOC} ${PREFIX}/lib/flash/
X.endfor
X.for PROG in background countdown
X	@${INSTALL_PROGRAM} ${WRKSRC}/modules/${PROG} ${PREFIX}/lib/flash/
X.endfor
X.for SCRIPT in mailshell system.menu system.menu.9798 system.menu.oldlast system.menu~ \
X	       system.menu.old
X	@${PERL} -pi -e "s:/usr/slocal:${PREFIX}:g" ${WRKSRC}/orcasetup/${SCRIPT}
X	@${INSTALL_SCRIPT} ${WRKSRC}/orcasetup/${SCRIPT} ${PREFIX}/lib/flash
X.endfor
X	@${INSTALL_DATA} ${WRKSRC}/orcasetup/flashdocs/* ${PREFIX}/lib/flash/flashdocs/
X	@${INSTALL_MAN} ${WRKSRC}/flash.1 ${PREFIX}/man/man1
X	@${INSTALL_PROGRAM} ${WRKSRC}/flash ${PREFIX}/bin
X
Xpost-install:
X	@${ECHO} "Updating /etc/shells"
X	@${CP} /etc/shells /etc/shells.bak
X	@(${GREP} -v ${PREFIX}/bin/flash /etc/shells.bak; \
X	${ECHO} ${PREFIX}/bin/flash) > /etc/shells
X	@${RM} /etc/shells.bak
X	@${ECHO}
X	@${ECHO} "  -------------------- WARNING --------------------------  "
X	@${ECHO} "This software is not yet ready-to-go on your system. You "
X	@${ECHO} "need to configure flash in ${PREFIX}/lib/flash in order for"
X	@${ECHO} "it to work properly."
X	@${ECHO}
X
X.include <bsd.port.mk>
END-of-flash/Makefile
exit


>Release-Note:
>Audit-Trail:
>Unformatted:


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200001081752.MAA16083>