Bug 4248 - Port submission of Chimera 2.0a2 X-WWW Browser
Summary: Port submission of Chimera 2.0a2 X-WWW Browser
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: freebsd-ports (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 1997-08-08 10:10 UTC by bruce
Modified: 1997-11-26 07:57 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description bruce 1997-08-08 10:10:01 UTC
   Chimera 2.0 (alpha 2) adds full Wilbur (html 3.2) support, and in
this port the optional dependancies on jpeg and png support is enabled
and works (at least for me).  This *is* Alpha software, but about on
a par with many Betas.  It dies occasionally, and I've not gotten the
bookmarks to work, but it's an Athena based http:+file:+ftp: scheme
supporting GUI browser with a fairly low memory requirement.  MOST of
the code is GNU Public License or GNU Library license, and all of it
liberally licensed (e.g. BSD license).  

   In use, it's very much like an Athena Widgets based Mosaic.  
(Mosaic is Motif based and makes TERRIBLY with Lestif at least for me).

   Of course on today's web, you find many sites that tell you to go
away and install MSIE (vaporware) so you can see their ``frames''. As
distributed, it doesn't handle mailto: URLs, Java, JavaScript, ActiveX
or even Safe-Tcl - but it's under continuing development, and just a
few months after wilbur was codified, it's out and compliant.  Not bad
for what seems to be essentially a one person project at unlv.edu

   It seems to be QUITE standards compliant.  Pages with bad HTML
around the web come up blank on occasion - as is to be expected for
unterminated quotes, tags and tables.
 
   External files from Chimera v1 are no longer used.

   It's Imake based, and the patches are VERY minor at this point.
   
   As submitted, the port unpacks to `chimera2/'.  Since it's alpha
software, it's entirely possible that a person would want to have both
1.65 and 2.0a2 on the same machine.  Install WILL however, overwrite
an installed /usr/X11R6/bin/chimera without warning.

Fix: 

Some quick guesses on how to fix what's wrong in the browser, include:

1. Find out why the Bookmarks button is dead.  It seems to be identical
   to that in version 1.65 already in the ports collection which works
   quite well.  Any patches sould also be sent to the author.

1.a.  Once the bookmarks are working, I'd set some ``defaults'' to include
   standard path to the FreeBSD Handbook :)

2. Harden some threads or get them notified when the user gets impatient
   and goes on to another web page.  That (like Netscape) seems to be when
   it's most fragile.

3. Add at least the capacity to install an EXTERNAL handler (say Pine or
   xterm -e /bin/Mail  or something) for mailto:'s.  It seems to handle
   forms rather well, and does quite tolerably on tables.  External
   handlers for gopher: and wais: would be a good idea too, and the same
   functionality could spawn an X-Term based telnet for telnet: and 
   somewhat recognized rlogin: scheme URLs too.

4. Add the additional Cougar glyphs.    is getting VERY common, and
   I'm not sure (last time using both v1.65 and v2.0a2 in parallel) that
   this new version translates it into a non-breaking space.

5. A little more difficult would be to use some kind of scrolling canvas
   as the backing page, with placed scrollbars for internal and other
   frames.

6. And even more difficult, likely, support background images.  This
   version ignores all colors, and quite properly ignores tags it
   does not understand.

7. And finally - add stylesheet and at least safe-tcl... probably will
   off in the next version, if Microsoft doesn't BUY unlv.edu
How-To-Repeat: 
fetch ftp://ftp.freebsd.org/pub/FreeBSD/incoming/chimera-2.0a2.port.tgz
tar -xvzf chimera-2.0a2.port.tgz
cd chimera2/
make install
Comment 1 Bill Fenner freebsd_committer freebsd_triage 1997-11-24 00:15:22 UTC
State Changed
From-To: open->feedback

Chimera 2 is no longer available from the MASTER_SITE in the port. 
Perhaps you'd like to port Chimera 1.70, or follow up with a new 
MASTER_SITES? 

Comment 2 bgingery 1997-11-24 20:25:47 UTC
>Submitter-Id:   current-users
>Originator:     Bruce Gingery <bgingery@gtcs.com>
>Organization:   Advanced Integrators, LC
>Confidential:   no
>Synopsis:       ports/4248 moved ${MASTER_SITES}, update in version
>Severity:       non-critical
>Priority:       medium
>Category:       ports
>Release:        FreeBSD 2.2.1-RELEASE i386
>Class:          change-request
>Environment: 

	FreeBSD

>Description: 

	MASTER_SITES subdirectory changed, breaking earlier port.
	While correcting this, I've moved it to the latest release,
	which is v2.0a11 (original port submission was v2.0a2),
	and portlint'ed it.

	Since this is still in alpha, and v1.65 has been upgraded
	to v1.70, someone else would like to do that one, but I
	really don't see the reason, unless someone needs a pre-
	Wilbur spec HTML browser, deliberately.  From what I can
	see, this alpha version is at least as stable as v1.65.

>How-To-Repeat: 

	N/A

>Fix: 
	
	Patch to port tarball follows...
	FreeBSD patches above "patch-ac" deleted.  No files added to port.

==========[ Begin tarball patch ]===============
diff -uNr chimera2/Makefile chimera-2.0a11/Makefile
--- chimera2/Makefile	Thu Aug  7 04:52:52 1997
+++ chimera-2.0a11/Makefile	Mon Nov 24 11:35:44 1997
@@ -1,25 +1,27 @@
 # New ports collection makefile for:	chimera
-# Version required:     2.0a2
-# Date created:         
+# Version required:     2.0a11
+# Date created:         24 Nov 1997
 # Whom:                 Bruce Gingery <bgingery@gtcs.com>
 #
 # $Id:  Exp $
 #
 
-DISTNAME=	chimera-2.0a2
-PKGNAME=	chimera-2.0a2
+DISTNAME=	chimera-2.0a11
 CATEGORIES=	www x11
-MASTER_SITES=	ftp://ftp.cs.unlv.edu/pub/chimera/
+MASTER_SITES=	ftp://ftp.cs.unlv.edu/pub/chimera-alpha/
 
-LIB_DEPENDS=	jpeg\\.[67]\\.:${PORTSDIR}/graphics/jpeg \
-		png\\.0\\.:${PORTSDIR}/graphics/png	
+MAINTAINER=	bgingery@gtcs.com
 
-USE_IMAKE=	yes
+#LIB_DEPENDS=	jpeg\\.[67]\\.:${PORTSDIR}/graphics/jpeg \
+#		png\\.0\\.:${PORTSDIR}/graphics/png
+# I'm pretty sure that both dependencies have been removed.
+# Previous versions depended on libjpeg and libpng
 
-#MAINTAINER=	
+USE_IMAKE=	yes
 
 post-patch:
-		mv ${WRKSRC}/Common.tmpl.dist ${WRKSRC}/Common.tmpl
-		cp ${FILESDIR}/protopng.h ${WRKSRC}/image/
+		${MV} ${WRKSRC}/Common.tmpl.dist ${WRKSRC}/Common.tmpl
+		${CP} ${FILESDIR}/protopng.h ${WRKSRC}/image/
+		ln -s ${WRKSRC}/chimera ${WRKSRC}/main
 
 .include <bsd.port.mk>
diff -uNr chimera2/files/md5 chimera-2.0a11/files/md5
--- chimera2/files/md5	Thu Aug  7 00:47:21 1997
+++ chimera-2.0a11/files/md5	Mon Nov 24 10:30:31 1997
@@ -1 +1 @@
-MD5 (chimera-2.0a2.tar.gz) = 4366a7c3cd52e61f2f6bd0a31f2adad9
+MD5 (chimera-2.0a11.tar.gz) = c422accc01edcf2be5dfcea6df42f0cc
diff -uNr chimera2/patches/patch-aa chimera-2.0a11/patches/patch-aa
--- chimera2/patches/patch-aa	Thu Aug  7 06:39:01 1997
+++ chimera-2.0a11/patches/patch-aa	Mon Nov 24 10:36:32 1997
@@ -1,70 +1,50 @@
-*** Common.tmpl.dist	Mon May 19 20:43:17 1997
---- Common.tmpl	Thu Aug  7 06:38:01 1997
+*** Imakefile.orig	Sun Aug 17 23:18:18 1997
+--- Imakefile	Mon Nov 24 10:34:00 1997
 ***************
-*** 10,18 ****
-   * CHIMERA_MANDIR  - directory to hold the outdated man page.
-   */
-  /*
-! CHIMERA_PREFIX = /usr/local
-  CHIMERA_BINDIR = $(CHIMERA_PREFIX)/bin
-! CHIMERA_LIBDIR = $(CHIMERA_PREFIX)/lib/chimera
-  CHIMERA_MANDIR = $(CHIMERA_PREFIX)/man
-  */
-  
---- 10,18 ----
-   * CHIMERA_MANDIR  - directory to hold the outdated man page.
-   */
-  /*
-! CHIMERA_PREFIX = /usr/X11R6
-  CHIMERA_BINDIR = $(CHIMERA_PREFIX)/bin
-! CHIMERA_LIBDIR = $(CHIMERA_PREFIX)/lib/X11/chimera
-  CHIMERA_MANDIR = $(CHIMERA_PREFIX)/man
-  */
+*** 4,10 ****
   
+  #if HasGcc
+  #ifdef CDebugging
+! #define PassCDebugFlags "CDEBUGFLAGS=-g -Wall"
+  #else
+  #define PassCDebugFlags "CDEBUGFLAGS=-O -Wall"
+  #endif
+--- 4,10 ----
+  
+  #if HasGcc
+  #ifdef CDebugging
+! #define PassCDebugFlags "CDEBUGFLAGS=-g -Wall ${CFLAGS}"
+  #else
+  #define PassCDebugFlags "CDEBUGFLAGS=-O -Wall"
+  #endif
 ***************
-*** 33,54 ****
-  */
+*** 19,32 ****
+  SUBDIRS = port common image html plain proto mxw chimera
   
-  /* Uncomment and modify if you have the JPEG 6 library */
-! /*
-  #define Use_JPEG
-  JPEGDIR = /usr/local
-  JPEGINCLUDE = -I$(JPEGDIR)/include
-  JPEGLIB = -L$(JPEGDIR)/lib -ljpeg$(IMGLEXT)
-  JPEGDEPLIB = $(JPEGDIR)/lib/libjpeg$(IMGLEXT).a
-! */
-  
-  /* Uncomment and modify if you have the PNG library */
-! /*
-  #define Use_PNG
-  PNGDIR = /usr/local
-  PNGINCLUDE = -I$(PNGDIR)/include
-  PNGLIB = -L$(PNGDIR)/lib -lpng$(IMGLEXT) -lz$(IMGLEXT)
-  PNGDEPLIB = $(PNGDIR)/lib/libpng$(IMGLEXT).a $(PNGDIR)/lib/libz$(IMGLEXT).a
-! */
-  
-  /*
-   * Uncomment if you need GNU rx.  Not actually used right now.
---- 33,54 ----
-  */
-  
-  /* Uncomment and modify if you have the JPEG 6 library */
-! 
-  #define Use_JPEG
-  JPEGDIR = /usr/local
-  JPEGINCLUDE = -I$(JPEGDIR)/include
-  JPEGLIB = -L$(JPEGDIR)/lib -ljpeg$(IMGLEXT)
-  JPEGDEPLIB = $(JPEGDIR)/lib/libjpeg$(IMGLEXT).a
-! 
-  
-  /* Uncomment and modify if you have the PNG library */
-! 
-  #define Use_PNG
-  PNGDIR = /usr/local
-  PNGINCLUDE = -I$(PNGDIR)/include
-  PNGLIB = -L$(PNGDIR)/lib -lpng$(IMGLEXT) -lz$(IMGLEXT)
-  PNGDEPLIB = $(PNGDIR)/lib/libpng$(IMGLEXT).a $(PNGDIR)/lib/libz$(IMGLEXT).a
-! 
-  
-  /*
-   * Uncomment if you need GNU rx.  Not actually used right now.
+  MakeSubdirs($(SUBDIRS))
+! InstallSubdirs($(SUBDIRS))
+  DependSubdirs($(SUBDIRS))
+  CleanSubdirs($(SUBDIRS))
+  MakefileSubdirs($(SUBDIRS))
+! InstallManSubdirs($(SUBDIRS))
+  
+  myclean: clean
+  	$(RM) Common.tmpl Makefile Makefile.bak make.err make.out .depend
+! 	for i in $(SUBDIRS); do \
+  		$(RM) $$i/Makefile $$i/Makefile.bak $$i/.depend; \
+  	done
+--- 19,32 ----
+  SUBDIRS = port common image html plain proto mxw chimera
+  
+  MakeSubdirs($(SUBDIRS))
+! InstallSubdirs(main)
+  DependSubdirs($(SUBDIRS))
+  CleanSubdirs($(SUBDIRS))
+  MakefileSubdirs($(SUBDIRS))
+! InstallManSubdirs(main)
+  
+  myclean: clean
+  	$(RM) Common.tmpl Makefile Makefile.bak make.err make.out .depend
+! 	for i in $(SUBDIRS) $(SOSUBDIRS); do \
+  		$(RM) $$i/Makefile $$i/Makefile.bak $$i/.depend; \
+  	done
diff -uNr chimera2/patches/patch-ac chimera-2.0a11/patches/patch-ac
--- chimera2/patches/patch-ac	Thu Aug  7 01:36:10 1997
+++ chimera-2.0a11/patches/patch-ac	Thu Aug  7 01:57:30 1997
@@ -1,19 +1,12 @@
-*** common/uproc.c.orig	Fri Feb 28 19:49:55 1997
---- common/uproc.c	Thu Aug  7 01:35:55 1997
+*** image/image.c.orig	Fri Mar  7 22:52:04 1997
+--- image/image.c	Thu Aug  7 01:56:59 1997
 ***************
-*** 43,49 ****
-    do 
-    {
-      errno = 0;
-!     pid = wait3(&st, WNOHANG, 0);
-    }
-    while (pid <= 0 && errno == EINTR);
-  #else
---- 43,49 ----
-    do 
-    {
-      errno = 0;
-!     pid = wait3((int *)&st, WNOHANG, (struct rusage *)0);
-    }
-    while (pid <= 0 && errno == EINTR);
-  #else
+*** 33,38 ****
+--- 33,39 ----
+  #include "image_endian.h"
+  #include "imagep.h"
+  #include "image_format.h"
++ #include "protopng.h"
+  
+  #include "WWW.h"
+  
diff -uNr chimera2/patches/patch-ad chimera-2.0a11/patches/patch-ad
--- chimera2/patches/patch-ad	Thu Aug  7 01:57:30 1997
+++ chimera-2.0a11/patches/patch-ad	Wed Dec 31 17:00:00 1969
@@ -1,12 +0,0 @@
-*** image/image.c.orig	Fri Mar  7 22:52:04 1997
---- image/image.c	Thu Aug  7 01:56:59 1997
-***************
-*** 33,38 ****
---- 33,39 ----
-  #include "image_endian.h"
-  #include "imagep.h"
-  #include "image_format.h"
-+ #include "protopng.h"
-  
-  #include "WWW.h"
-  
diff -uNr chimera2/patches/patch-ae chimera-2.0a11/patches/patch-ae
--- chimera2/patches/patch-ae	Thu Aug  7 04:52:19 1997
+++ chimera-2.0a11/patches/patch-ae	Wed Dec 31 17:00:00 1969
@@ -1,50 +0,0 @@
-*** Imakefile.orig	Sat Feb  8 20:34:56 1997
---- Imakefile	Thu Aug  7 04:51:28 1997
-***************
-*** 3,9 ****
-  #define IHaveSubDirs
-  #ifdef CDebugging
-  #if HasGcc
-! #define PassCDebugFlags 'CDEBUGFLAGS=-g -Wall'
-  #else
-  #ifdef AlphaArchitecture
-  #define PassCDebugFlags 'CDEBUGFLAGS=-g -std1'
---- 3,9 ----
-  #define IHaveSubDirs
-  #ifdef CDebugging
-  #if HasGcc
-! #define PassCDebugFlags 'CDEBUGFLAGS=-g -O -Wall -m486'
-  #else
-  #ifdef AlphaArchitecture
-  #define PassCDebugFlags 'CDEBUGFLAGS=-g -std1'
-***************
-*** 26,39 ****
-  SUBDIRS = common www image html plain proto mxw main
-  
-  MakeSubdirs($(SUBDIRS))
-! InstallSubdirs($(SUBDIRS))
-  DependSubdirs($(SUBDIRS))
-  CleanSubdirs($(SUBDIRS))
-  MakefileSubdirs($(SUBDIRS))
-! InstallManSubdirs($(SUBDIRS))
-  
-  myclean: clean
-  	$(RM) Common.tmpl Makefile Makefile.bak make.err make.out .depend
-! 	for i in $(SUBDIRS); do \
-  		$(RM) $$i/Makefile $$i/Makefile.bak $$i/.depend; \
-  	done
---- 26,39 ----
-  SUBDIRS = common www image html plain proto mxw main
-  
-  MakeSubdirs($(SUBDIRS))
-! InstallSubdirs(main)
-  DependSubdirs($(SUBDIRS))
-  CleanSubdirs($(SUBDIRS))
-  MakefileSubdirs($(SUBDIRS))
-! InstallManSubdirs(main)
-  
-  myclean: clean
-  	$(RM) Common.tmpl Makefile Makefile.bak make.err make.out .depend
-! 	for i in $(SUBDIRS) $(SOSUBDIRS); do \
-  		$(RM) $$i/Makefile $$i/Makefile.bak $$i/.depend; \
-  	done
diff -uNr chimera2/patches/patch-af chimera-2.0a11/patches/patch-af
--- chimera2/patches/patch-af	Thu Aug  7 06:51:55 1997
+++ chimera-2.0a11/patches/patch-af	Wed Dec 31 17:00:00 1969
@@ -1,19 +0,0 @@
-*** main/Imakefile.orig	Fri Mar  7 04:50:04 1997
---- main/Imakefile	Thu Aug  7 06:51:27 1997
-***************
-*** 15,21 ****
-  
-  NormalProgramTarget(chimera, $(OBJS), $(CHIMERA_DEPLIBS), MyNull, MyNull)
-  
-! InstallProgram(chimera,$(CHIMERA_BINDIR))
-! InstallManPage(chimera,$(CHIMERA_MANDIR))
-  
-  DependTarget()
---- 15,21 ----
-  
-  NormalProgramTarget(chimera, $(OBJS), $(CHIMERA_DEPLIBS), MyNull, MyNull)
-  
-! InstallProgram(chimera,$(BINDIR))
-! InstallManPage(chimera,$(MANDIR))
-  
-  DependTarget()
diff -uNr chimera2/pkg/COMMENT chimera-2.0a11/pkg/COMMENT
--- chimera2/pkg/COMMENT	Thu Aug  7 01:12:23 1997
+++ chimera-2.0a11/pkg/COMMENT	Mon Nov 24 11:30:34 1997
@@ -1 +1 @@
-X/Athena World-Wide Web client - Wilbur compliant
+X/Athena World-Wide Web client - Wilbur (HTML3.2) compliant
diff -uNr chimera2/pkg/DESCR chimera-2.0a11/pkg/DESCR
--- chimera2/pkg/DESCR	Thu Aug  7 02:19:21 1997
+++ chimera-2.0a11/pkg/DESCR	Mon Nov 24 12:07:16 1997
@@ -3,13 +3,21 @@
 graphical interface using the X Window System and the Athena Widgets.
 
 While it does NOT do Frames, Java, JavaScript, or even embedded Tcl
-(yet at least), it *is* ``Wilbur'' (HTML v3.2) compliant.  This is
-an alpha version - so don't be surprised if something doesn't properly
-work (e.g. bookmarks?).   OTOH, it *does* do tables and forms, and 
-multiple windows.
+(yet at least), it *is* designed to be ``Wilbur'' (HTML v3.2) compliant,
+and handles .gif, .jpg and quite a number of other image formats
+internally.  Yet image handling is a little odd, as compared to other
+browsers.  Each image is *often* surrounded by scrollbars, rather than
+being resized to a specified size.  Hence it makes a good visual tool
+for proper sizing information.
+
+THIS IS AN ALPHA VERSION - so don't be surprised if something doesn't
+properly work OTOH, it *does* do tables and forms, and multiple windows.
 
 Unlike version 1.65 previously distributed, it is an all-in-one binary
 and depends upon X- resources settings for configuration.  It may
 be touchy about interrupted image fetches, or other things, as well.
+Each user is expected to create a ~/.chimera subdirectory for 
+bookmarks and personal preferences, and a ~/.chimera/cache (which may
+be a symlink to somewhere else).
 
-This is version 2.0 alpha 2 - essentially a complete rewrite
+Ref: <URL: http://www.unlv.edu/chimera/two/ >
================[ end Tarball patch ]========================
Comment 3 Thomas Gellekum freebsd_committer freebsd_triage 1997-11-26 07:55:52 UTC
State Changed
From-To: feedback->closed

Imported, thanks. 

I had to bring back some of your deleted patches, or chimera2  
would try to install into /. I also enabled PNG and JPEG support 
while I was at it.