It recently became painfully obvious that I just don't know how I'm supposed to manage Python packages on my systems.
I simply MUST be able to know what all is installed and under what user IDs, since the Python community is coached that nothing should be installed as Root. . . . This leaves me with a serious problem!
In this instance, I'm using Fedora distributions, MOSTLY but not exclusively Fedora Server (all some form of Fedora Core) BUT, the question applies for other distributions, too, I'm sure.
Ultimately, the question is; how is a system manager supposed to deal with this PROPERLY?
Do note that I'm NOT asking about how to install Python itself, and I'm not talking about a development system, where if the developers screw up their own system, well, it only affects THEM, though that's still not great.
What I'm focused on is that SOME packages of software that use Python have their own sub-packages that aren't available via the usual platform package installation paradigm. And it was one of these that prompted this sudden discovery of the risk I have; Mailman3 is just such a package as installing it didn't also install all the needed sub-packages, so there were then some "pip install"s needed for those. And on discussing it with a colleague, he admitted screwing up a system that I am responsible for managing, only to learn he screwed it up via a Python package he pip installed...
...I feel like I may be forced to implement security so individual users CANNOT install Python packages and thus increase my own workload, not only to do that, but then to install packages they want FOR them and all the hassles that entails. I'm hoping I'm just clueless about some "feature" of Python! Otherwise, I think Python needs a serious re-think about how it does what it does as it surely appears to be very unfriendly for the system manager(s).