Can I use apt-get or aptitude to install software to non standard location?

Solution 1:

Most programs are looking for files they need (like config files, GUI ressources, ...) on a few hardcoded places and will refuse to works if those files aren't there. To change this places you usually need to recompile the programs (but sometimes you can use command line options or environment variables instead).

dpkg and apt offer a way to change the install location (as far as I remember it's --root= with dpkg and Dir::Root in the apt config - but check the docs if you really need it). This is so you can mount another systems's root dir on your system and install packages on it (like if you have diskless systems mounting their root via NFS from a server).

Solution 2:

For what i know the directories where it will install the desire software is inside the .deb package. If you need to change that, you need to change the package altogether. This is because the way to install and where to install it must be a standard between packages originating from a deb package so no chaotic installs are made. The structure of the deb package, where each type of file goes to ensure the correct standardization of the software for debian based packages must be always the same. This way everyone knows where a certain package always installs the software it has inside the package.