Perhaps something along the lines of data in the "root" directory, with DLLs in a "lib" directory and various executables in a "bin" directory, along with a "doc" directory for locating the documentation, and a "src" directory for the project source codes?
Or have I missed your point completely?
I tend to put the source code files in the "root" directory of a project with auxiliary directories under that for various things like data, documentation, etc.
My finished projects are installed into the standard directories: executables in one of the $PATH "bin"s (usually /usr/local/bin), shared libs in one of the standard "lib" directories (mainly /usr/lib). The data gets put into a dedicated directory: somewhere in /home if it's data that is short-term or it gets put somewhere on the "archive" filesystem if it's stuff that's "write once and keep for ever".
I'm afraid not. But it sounds very similar to Apple's policy to put all files for a project in one sub-directory tree. Put that under the /Applications directory.Then to uninstall the app, you merely have to delete the whole project directory-tree.
I am not conversant with OSX but the DMG format sounds similar to what you are thinking of.
It’s bad practice (or at least shady) to distribute software that modifies /var for example...
A honeypot server with navigable filesystem fits what you’re talking about perhaps, as does a game where logging in makes you create a user which is your character which is an RPG managed by bash scripts and the filesystem and various chroots are the “world” and in game you can level up and unlock passive auras which take the form of system daemons and gaining access to a new script is a spell...
Perhaps something along the lines of data in the "root" directory, with DLLs in a "lib" directory and various executables in a "bin" directory, along with a "doc" directory for locating the documentation, and a "src" directory for the project source codes?
Or have I missed your point completely?
I tend to put the source code files in the "root" directory of a project with auxiliary directories under that for various things like data, documentation, etc.
My finished projects are installed into the standard directories: executables in one of the $PATH "bin"s (usually /usr/local/bin), shared libs in one of the standard "lib" directories (mainly /usr/lib). The data gets put into a dedicated directory: somewhere in /home if it's data that is short-term or it gets put somewhere on the "archive" filesystem if it's stuff that's "write once and keep for ever".