Hi,

I recently compiled Coot-svn (manually) in Ubuntu and was somewhat
annoyed by all the Guile library dependencies which are not available
as distribution packages. The reason turns out to be that there are
new replacements for some of these libraries in modern distributions.
This is the case at least for Goosh, Greg and Guile-gtk.

The dependency on Goosh can be easily dropped, since guile-lib contains
an almost exact copy of Goosh in the os process module. Attached is a patch
which replaces Goosh with os process.

Guile-lib also contains a unit testing framework, which possibly could
be used to replace Greg. The modern way of interfacing with gtk in
guile seems to be guile-gnome. Changing to these libraries would
require larger changes to the scheme code in Coot, but would bring
distribution packages of Coot itself closer to reality.

Best,

Teemu
From dc1278d0b957f73b39b9bed959eab36220ea3323 Mon Sep 17 00:00:00 2001
From: Teemu Ikonen <tpiko...@gmail.com>
Date: Tue, 11 Aug 2009 23:00:56 +0200
Subject: [PATCH] Replace goosh module with os process from guile-lib

---
 build-web-page-builder.scm    |    2 +-
 cycle-page-builder.scm        |    2 +-
 macros/net-http-goosh.m4      |   21 ---------------------
 scheme/coot-crash-catcher.scm |    2 +-
 scheme/coot-utils.scm         |    3 +--
 scheme/snarf-coot-docs.scm    |    3 +--
 6 files changed, 5 insertions(+), 28 deletions(-)

diff --git a/build-web-page-builder.scm b/build-web-page-builder.scm
index 1c121e6..bcdd378 100644
--- a/build-web-page-builder.scm
+++ b/build-web-page-builder.scm
@@ -5,7 +5,7 @@
 	     (ice-9 string-fun)
 	     (ice-9 popen)
 	     (net http)
-	     (goosh)
+	     (os process)
 	     (ice-9 regex))
 
 (use-syntax (ice-9 syncase))
diff --git a/cycle-page-builder.scm b/cycle-page-builder.scm
index 4f32262..f7cbecd 100644
--- a/cycle-page-builder.scm
+++ b/cycle-page-builder.scm
@@ -7,7 +7,7 @@
 	     (ice-9 rdelim)
 	     (ice-9 receive)
 	     (net http)
-	     (goosh)
+	     (os process)
 	     (ice-9 regex))
 
 (use-syntax (ice-9 syncase))
diff --git a/macros/net-http-goosh.m4 b/macros/net-http-goosh.m4
index e1f9add..f610fc9 100644
--- a/macros/net-http-goosh.m4
+++ b/macros/net-http-goosh.m4
@@ -26,27 +26,6 @@ fi
 ])
 
 
-AC_DEFUN([AM_GUILE_GOOSH],
-[
-AC_MSG_CHECKING([for Guile Goosh])
-if test -z "$ac_cv_path_GUILE" ; then 
-   have_goosh=not_installed
-else 
-   guile -c '(use-modules (goosh))'
-   if test "$?" = 0  ; then 
-      have_goosh=yes
-   else 
-      have_goosh=no
-   fi
-fi
-AC_MSG_RESULT([$have_goosh])
-if test "$have_goosh" = no  ; then 
-   echo Must install goosh for guile.
-   exit 2
-fi
-])
-
-
 AC_DEFUN([AM_GUILE_LIB],
 [
 AC_MSG_CHECKING([for Guile-Lib])
diff --git a/scheme/coot-crash-catcher.scm b/scheme/coot-crash-catcher.scm
index 3eec6a2..00dfd7e 100644
--- a/scheme/coot-crash-catcher.scm
+++ b/scheme/coot-crash-catcher.scm
@@ -26,7 +26,7 @@
 	     (ice-9 string-fun)
 	     (ice-9 regex)
 	     (ice-9 rdelim))
-(use-modules (goosh))
+(use-modules (os process))
 
 
 ;;; What was the executable?  Let's pass that on the command line to
diff --git a/scheme/coot-utils.scm b/scheme/coot-utils.scm
index fa71575..5e4f566 100644
--- a/scheme/coot-utils.scm
+++ b/scheme/coot-utils.scm
@@ -22,8 +22,7 @@
 	     (ice-9 string-fun)
 	     (ice-9 format)
 	     (ice-9 rdelim))
-;; (use-modules (goosh goosh))
-(use-modules (goosh)) 
+(use-modules (os process))
 
 ;; 3D annotations - a bit of a hack currently
 (define *annotations* '())
diff --git a/scheme/snarf-coot-docs.scm b/scheme/snarf-coot-docs.scm
index e607712..cc5a2dd 100644
--- a/scheme/snarf-coot-docs.scm
+++ b/scheme/snarf-coot-docs.scm
@@ -3,8 +3,7 @@
              (ice-9 string-fun)
 	     (ice-9 regex))
 
-; (use-modules (goosh goosh))
-(use-modules (goosh))
+(use-modules (os process))
 
 (define is-valid-model-molecule 1) ;; hack to get past problem loading
 				   ;; coot-utils on bubbles
-- 
1.6.0.4

Reply via email to