Bug#341234: New dash 0.5.3-1 breaks apt-move

2005-11-30 Thread Herbert Xu
On Tue, Nov 29, 2005 at 10:32:18PM +0100, Petr Vandrovec wrote:
 
 It seems to work.  Thanks.

Great.  I've just uploaded 4.2.26 to sourceforge with this fix.

Cheers,
-- 
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmVHI~} [EMAIL PROTECTED]
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt


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



Bug#341234: New dash 0.5.3-1 breaks apt-move

2005-11-29 Thread Petr Vandrovec
Package: apt-move
Version: 4.2.24-1
Severity: grave
Tags: patch

Hello,
  apt-move uses

if ! type exp  /dev/null 21; then
if type dash  /dev/null 21; then
exec dash $0 $@
else
exec ash $0 $@
fi
fi

to make sure that it is executing under dash or ash.  dash 0.5.3-1 breaks
this code, causing it to enter endless loop as dash lost its 'exp' builtin:

$ dpkg -l dash
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Name Version
  Description
+++---
ii  dash 0.5.2-8
  The Debian Almquist Shell
$ type exp
exp is a shell builtin

$ dpkg -l dash
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Name Version
  Description
+++---
ii  dash 0.5.3-1
  The Debian Almquist Shell
$ type exp
exp: not found

It is probably caused by this upstream change:

2005-02-28  Herbert Xu [EMAIL PROTECTED]

* Replaced EXEVAL with SKIPEVAL.
* Update funcnest atomically.
* Only set skipcount for break and continue.
* Removed expcmd built-in.
* Normalise input in likely/unlikely macros.

I've verified that upstream apt-move 4.2.25 still uses this detection.
If you believe that this detection is correct and dash is package with problem,
then feel free to reassign this to dash.  As Herbert is upstream maintainer 
for both dash and apt-move, it probably does not matter a lot, as it 
ends up in his mailbox this way or another.

For Debian I would apply patch below, which removes dash/ash detection and
forces dash through #!.
Thanks,
Petr Vandrovec


diff -urN apt-move-4.2.24/apt-move apt-move-4.2.24/apt-move
--- apt-move-4.2.24/apt-move2005-10-24 17:35:09.0 +0200
+++ apt-move-4.2.24/apt-move2005-11-29 13:42:54.0 +0100
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/dash
 #
 #  Copyright (c) 1999 Michael Merten [EMAIL PROTECTED]
 #  Copyright (c) 1999-2000 Gregory T. Norris [EMAIL PROTECTED]
@@ -18,14 +18,6 @@
 #
 set -e
 
-if ! type exp  /dev/null 21; then
-   if type dash  /dev/null 21; then
-   exec dash $0 $@
-   else
-   exec ash $0 $@
-   fi
-fi
-
 [ ${CDPATH+1} ]  unset CDPATH
 if [ ${LC_ALL+1} ]; then
export LC_MONETARY=$LC_ALL
diff -urN apt-move-4.2.24.go/debian/control apt-move-4.2.24/debian/control
--- apt-move-4.2.24.go/debian/control   2005-10-21 03:18:29.0 +0200
+++ apt-move-4.2.24/debian/control  2005-11-29 13:42:40.0 +0100
@@ -7,7 +7,7 @@
 
 Package: apt-move
 Architecture: any
-Depends: bc, dash | ash, ${shlibs:Depends}
+Depends: bc, dash, ${shlibs:Depends}
 Recommends: apt
 Description: Maintain Debian packages in a package pool
  apt-move is used to move a collection of Debian package files into a proper


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