Installing debian package independent from system
A user would like the latest and greatest zsh and we have
a deb package for it. For security purposes I want to
keep the slightly older version of zsh obtained and maintained
from debian packages as the system default zsh.
I'm willing to install the later version of zsh in an alternate directory,
say under their home or in /usr/local for the one user.
I thought perhaps dpkg --root /usr/local/zsh with a copy of
/var/lib/dpkg placed under /usr/local/zsh would do the trick,
but it isn't happy as some part of this still believes we
are working on the main system dpkg path:
dpkg --root /usr/local/zsh -i ~username/zsh_4.3.12-1_i386.deb
(Reading database ... 73404 files and directories currently installed.)
Preparing to replace zsh 4.3.10-14 (using
dpkg (subprocess): unable to execute old pre-removal script
(/var/lib/dpkg/info/zsh.prerm): No such file or directory
dpkg: warning: subprocess old pre-removal script returned error exit status 2
dpkg - trying script from the new package instead ...
dpkg (subprocess): unable to execute new pre-removal script
(/var/lib/dpkg/tmp.ci/prerm): No such file or directory
dpkg: error processing /home/username/zsh_4.3.12-1_i386.deb (--install):
subprocess new pre-removal script returned error exit status 2
dpkg (subprocess): unable to execute installed post-installation
script (/var/lib/dpkg/info/zsh.postinst): No such file or directory
dpkg: error while cleaning up:
subprocess installed post-installation script returned error exit status 2
Errors were encountered while processing:
Building from source would work too, but typically has care and feeding steps
just to get all the deps in line.
What is the best way to use a deb package and not have it as part
of the system's knowledge of installed packages? It is OK if at runtime
zsh has dependancy on system libs.