slsh/local-packages

G. Milde milde at users.sourceforge.net
Mon Apr 14 09:11:48 UTC 2008


Dear John, dear Alastair, dear Debian Jed Maintainers,

I would like to reach a consensus on handling the load path for slsh and Jed
in Debian and other UNIX systems.

The trigger is that on my Debian/testing system, after an update to slsh
(2.1.3-3) some jed-extra (e.g. ffap.sl) scripts failed to work. 

I could track this down to "/usr/share/slsh/" missing in the jed
library path.

The reason is given indirectly in slsh's changelog.Debian.gz

   * set SLSH_LOCALLIB_DIR="", as we don't ship a local-packages dir in 
      Debian (breaks FSSTND).

while the code in site.sl adds /usr/share/slsh/ to the library path only if
/usr/share/slsh/local-packages" exists.

It can be easily fixed by making site.sl more foolproof, a possible
patch is attached below:

However, consensus is still needed on

* where should additional S-Lang scripts for slsh and|or Jed be placed
  that are

  - installed by the "system" (e.g. a Debian package)
  
    proposals: /usr/share/slsh/      (together with the scripts from slsh)
            or /usr/share/slsh/site-packages/
  
  - installed by the administrator 
  
    proposal: /usr/local/share/slsh/

  - installed by the user
  
    proposal: leave that to the users discretion
    
* which of the above library-directories should be added to the
  jed-library-path in site.sl?


There was already a first round of discussion on pkg-jed-devel:

On 11.04.08, G. Milde wrote:
> Dear Jed package maintainers,
...
> What shall we do now:

> * file a bug-report to slsh that u/s/slsh/local-packages/ despite its
>   somewhat misleading name is used|required by jed and several
>   slang-modules?

> * patch site.sl (and mail the patch to John as well)?

>   In this case, the patch should include the addition of the slsh/help
>   dir currently done in /etc/jed.d/05jed-common.sl

> * change the install path of the slang-* module packages?

On 11.04.08, Jörg Sommer wrote:
> I prefer to patch site.sl.


On 11.04.08, Rafael Laboissiere wrote:
> I do not have a strong preference here but have a question about the third
> option: where should the modules be installed if we decide to change the
> path?


Thanks 
Guenter


--- /usr/share/jed/lib/site.sl	2007-09-09 19:41:00.000000000 +0200
+++ /home/milde/.jed/lib/test/site.sl	2008-04-14 10:36:19.000000000 +0200
@@ -3248,14 +3248,17 @@
 # ifexists _slang_install_prefix
 	     _slang_install_prefix,
 # endif
-	     guess_jed_install_prefix ()
+	     guess_jed_install_prefix (),
 	     ])
      {
 	$1 = ();
-	$1 = path_concat ($1, "share/slsh/local-packages");
+	$1 = path_concat ($1, "share/slsh");
+	if (2 != file_status ($1))
+	  continue;
+	set_jed_library_path (strcat (get_jed_library_path (), ",", $1));
+	$1 = path_concat ($1, "local-packages");
 	if (2 != file_status ($1))
 	  continue;
-	set_jed_library_path (strcat (get_jed_library_path (), ",", path_dirname ($1)));
 	set_jed_library_path (strcat (get_jed_library_path (), ",", $1));
 	break;
      }




More information about the Pkg-jed-devel mailing list