I'm having a hard time understanding the dependencies of software on (the combination of) Ubuntu distributions, desktop environments, window managers, file managers and what have you.
What I'm particularly worried about is that I might install software that doesn't play nice with any of the aforementioned processes and that it messes up those processes and/or uses different config files, spread in different locations, etc.
Could you give a short overview of what elementary knowledge, about the architecture of linux systems, is needed to determine whether a software package is suitable for a particular set-up?