Package: ess
Version: 5.2.6-1
Severity: normal

After sudo was upgraded to 1.6.8p7-1.3 due to a security fix it does
not seem to set SHELL environment variable anymore. This breaks "sudo
apt-get install ess". I am not sure if this should be seen as a bug in
ess or sudo so please feel free to reassign.

Steps to reproduce:
1) unset SHELL; apt-get install ess
OR
   sudo apt-get install ess

Expected results:
1) ess should be installed.

Actual results:
1) ess installation fails with the following messages:

Reading Package Lists... Done
Building Dependency Tree... Done
Suggested packages:
  xlispstat r-base pspp
The following NEW packages will be installed:
  ess
0 upgraded, 1 newly installed, 0 to remove and 1 not upgraded.
Need to get 786kB of archives.
After unpacking 4366kB of additional disk space will be used.
Get:1 http://kurp.hut.fi sarge/main ess 5.2.6-1 [786kB]
Fetched 786kB in 0s (11.6MB/s)
Selecting previously deselected package ess.
(Reading database ... 127460 files and directories currently installed.)
Unpacking ess (from .../archives/ess_5.2.6-1_all.deb) ...
Setting up ess (5.2.6-1) ...
install/ess: Handling install for emacsen flavor emacs21
loading 'ess-emcs ..
loading 'ess-cust ..
loading 'ess ..
loading 'ess-site ..
[ess-site:] after (eval-and-compile ..)
[ess-site:] Before requiring dialect 'essd-** ....
[ess-site:] require 'essd-r ...
[essd-r:] (require 'essl-s)
[essl-s:] (def** ) only ...
[essd-r:] (autoload ..) & (def** ..)
[ess-site:] require 'essd-sp3 ...
[ess-site:] require 'essd-sp5 ...
[ess-site:] require 'essd-sp6 ...
[ess-site:] require 'essd-sta ...
[ess-site:] require 'essd-xls ...
[ess-site:] require 'essd-vst ...
[ess-site:] require 'essd-arc ...
[ess-site:] require 'essd-sas ...
[essd-sas:] require 'comint & 'shell ...
[essd-sas:] require 'essl-sas ...
[essl-sas:] (require 'ess) ...
[essl-sas:] (require 'ess-mode) ...
[essl-sas:] (autoload ..) (def** ..) etc ...
Wrong type argument: stringp, nil
emacs-package-install: /usr/lib/emacsen-common/packages/install/ess emacs21 
emacs21 failed at /usr/lib/emacsen-common/emacs-package-install line 30, 
<TSORT> line 1.
dpkg: error processing ess (--configure):
 subprocess post-installation script returned error exit status 255
Errors were encountered while processing:
 ess
E: Sub-process /usr/bin/dpkg returned an error code (1)


Proposed fix:

A simple fix is to assume SHELL=/bin/sh if (getenv "SHELL") fails:

--- /usr/share/emacs/site-lisp/ess/essa-sas.el~ 2005-03-22 15:48:24.000000000 
+0200
+++ /usr/share/emacs/site-lisp/ess/essa-sas.el  2006-01-31 16:09:44.504163232 
+0200
@@ -220,7 +220,9 @@
       ;; this should avoid the necessity of each user needing to set this
       ;; variable correctly based on the shell that they use and provide
       ;; an environment where all shells are treated equally
-      (let* ((temp-shell (getenv "SHELL"))
+      (let* ((temp-shell (if (getenv "SHELL")
+                            (getenv "SHELL")
+                          "/bin/sh"))
             (temp-char (string-match "/" temp-shell)))

        (while temp-char



-- System Information:
Debian Release: 3.1
Architecture: i386 (i686)
Kernel: Linux 2.4.27-2-k7
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)

Versions of packages ess depends on:
ii  emacs21 [emacsen]             21.4a-1    The GNU Emacs editor

-- no debconf information


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to