Users can install their own apps by compiling it themselves, but this is a mess and users with the same app needs cause duplicates.
An alternative is to allow them to invoke apt-get install/remove without root privileges (but run setuid root) in which case restrictions appy to avoid them to mess up the system.
I submit this idea, because there is need and because it emphasizes reuse of both the existing package management mechanisms and reuse of functionality between users.