When evaluating operating system for our next server, we have the following needs:

  1. An OS with a stable version of Python3 so that machine codes compiled from C/C++/etc. sources from our pip packages won't have to change for an extended period of time seldomly updated.

  2. A distribution that comes with latest version of PHP, and in particular PHP 7.4, so that we can invoke external Python and C programs without escaping the command string for the shell using the proc_open function.

CentOS is excluded from consideration by 2, and Ubuntu by 1; The update cycle of Fedora is too volatile for most servers, including ours.

For some people, whether for practical purposes or not, wants to have foreign packages on their system. One case in particular, would be using FreeBSD ports on Linux. I haven't tried it, but it should be theoretically possible.

The point of this question is that:

Q: I'd like some advice on some tricky areas, and in particular maintaining system integrity.

  • 1
    What exactly does (1) mean? Using pip you're usually installing something out of the distribution's control, so how can the distribution guarantee that it will work for any length of time? – muru Nov 18 '20 at 6:13
  • @muru For example, some Python modules comes with machine codes that're compiled from C, C++, etc. Those binary interface may not be compatible across different subversions of Python (e.g. Python 3.7 may not be able to use dlib compiled for Python 3.6). – DannyNiu Nov 18 '20 at 6:15
  • 1
    Ubuntu doesn't change subversions of Python within a given release, so what's the problem? – muru Nov 18 '20 at 6:18
  • @muru, I checked my WSL Ubuntu, and it has v3.6, v3.8, and v3.9. Are you certain that none of them gets removed from the distribution (within a particular Ubuntu version) over time? – DannyNiu Nov 18 '20 at 6:26
  • 1
    Yes, none of them will be removed in a given release. – Stephen Kitt Nov 18 '20 at 6:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.