FS#2931 - Install scripts fails if /bin/sh is not linked to bash.
|
Details
On my system /bin/sh points to ash, when I install a package
that contains an install script I get an error because
pacman uses 'source' to include the install script. 'source'
is bash specific and isn't supported by sh compliant
shells.
Below is a patch that fixes the problem by calling /bin/bash instead. The patch is against pacman-2.9.6. --- pacman-2.9.6/src/pacman.c.orig 2005-07-08 00:35:57.000000000 +0000 +++ pacman-2.9.6/src/pacman.c 2005-07-08 00:37:34.000000000 +0000 @@ -3374,10 +3374,10 @@ vprint("Executing %s script...\n", script); if(oldver) { - snprintf(cmdline, PATH_MAX, "echo \"umask 0022; source %s %s %s %s\" | /usr/sbin/chroot %s /bin/sh", + snprintf(cmdline, PATH_MAX, "echo \"umask 0022; source %s %s %s %s\" | /usr/sbin/chroot %s /bin/bash", scriptpath, script, ver, oldver, pmo_root); } else { - snprintf(cmdline, PATH_MAX, "echo \"umask 0022; source %s %s %s\" | /usr/sbin/chroot %s /bin/sh", + snprintf(cmdline, PATH_MAX, "echo \"umask 0022; source %s %s %s\" | /usr/sbin/chroot %s /bin/bash", scriptpath, script, ver, pmo_root); } vprint("%s\n", cmdline); |
This task depends upon
Closed by Judd Vinet (judd)
Friday, 08 July 2005, 01:11 GMT
Reason for closing: Fixed
Additional comments about closing: Fixed in CVS, Thanks.
Friday, 08 July 2005, 01:11 GMT
Reason for closing: Fixed
Additional comments about closing: Fixed in CVS, Thanks.
pacman-2.9.6-bash_call_fix.pa...