OS support spring cleaning spree (#6386)

This commit is contained in:
Jakub Kuczys 2024-06-30 21:11:02 +02:00 committed by GitHub
parent 4242a7adf2
commit ad1e1aa2ba
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
15 changed files with 20 additions and 186 deletions

View File

@ -28,10 +28,6 @@ Next, your python :code:`path` can be fetched with the following commands:
$ source ~/redenv/bin/activate $ source ~/redenv/bin/activate
(redenv) $ /usr/bin/which python (redenv) $ /usr/bin/which python
# If redbot is installed in a pyenv virtualenv
$ pyenv shell <virtualenv_name>
(redenv) $ pyenv which python
Then create the new service file: Then create the new service file:
:code:`sudo nano /etc/systemd/system/red@.service` :code:`sudo nano /etc/systemd/system/red@.service`

View File

@ -1,19 +0,0 @@
To install/update pyenv, run the following command:
.. prompt:: bash
command -v pyenv && pyenv update || curl https://pyenv.run | bash
After this command, you will see a warning about 'pyenv' not being in the load path. To address this,
you should run these commands:
.. prompt:: bash
profile=$([ -n "$ZSH_VERSION" ] && echo ~/.zprofile || ([ -f ~/.bash_profile ] && echo ~/.bash_profile || echo ~/.profile))
rcfile=$([ -n "$ZSH_VERSION" ] && echo ~/.zshrc || echo ~/.bashrc)
printf '%s\n%s\n%s\n' 'export PYENV_ROOT="$HOME/.pyenv"' 'export PATH="$PYENV_ROOT/bin:$PATH"' "$([ -f "$profile" ] && cat "$profile")" > "$profile"
echo 'eval "$(pyenv init --path)"' >> "$profile"
echo 'eval "$(pyenv init -)"' >> "$rcfile"
echo 'eval "$(pyenv virtualenv-init -)"' >> "$rcfile"
Then **log out and log back in** and run the following command:

View File

@ -1,44 +0,0 @@
------------------------------
Creating a Virtual Environment
------------------------------
.. tip::
If you want to learn more about virtual environments, see page: `about-venvs`
We require installing Red into a virtual environment. Don't be scared, it's very
straightforward.
**************************
Using ``pyenv virtualenv``
**************************
Using ``pyenv virtualenv`` saves you the headache of remembering where you installed your virtual
environments. This option is only available if you installed Python with pyenv.
First, ensure your pyenv interpreter is set to python 3.8.1 or greater with the following command:
.. prompt:: bash
pyenv version
Now, create a virtual environment with the following command:
.. prompt:: bash
pyenv virtualenv <name>
Replace ``<name>`` with whatever you like. If you ever forget what you named it,
you can always use the command ``pyenv versions`` to list all virtual environments.
Now activate your virtualenv with the following command:
.. prompt:: bash
pyenv shell <name>
.. important::
You must activate the virtual environment with the above command every time you open a new
shell to run, install or update Red. You can check out other commands like ``pyenv local`` and
``pyenv global`` if you wish to keep the virtualenv activated all the time.

View File

@ -6,16 +6,14 @@
Installing the pre-requirements Installing the pre-requirements
------------------------------- -------------------------------
Red Hat Enterprise Linux (RHEL) 8.6-8.x and its derivatives have all required packages available in official repositories. Red Hat Enterprise Linux (RHEL) 8.8-8.x and its derivatives have all required packages available in official repositories.
Install them with dnf: Install them with dnf:
.. TODO: Use Python 3.11 once RHEL 8.6 goes EOL in 2024.
.. prompt:: bash .. prompt:: bash
sudo dnf -y update sudo dnf -y update
sudo dnf -y group install development sudo dnf -y group install development
sudo dnf -y install python39 python39-devel java-17-openjdk-headless nano git sudo dnf -y install python3.11 python3.11-devel java-17-openjdk-headless nano git
Set ``java`` executable to point to Java 17: Set ``java`` executable to point to Java 17:
@ -25,6 +23,6 @@ Set ``java`` executable to point to Java 17:
.. Include common instructions: .. Include common instructions:
.. include:: _includes/create-env-with-venv3.9.rst .. include:: _includes/create-env-with-venv3.11.rst
.. include:: _includes/install-and-setup-red-unix.rst .. include:: _includes/install-and-setup-red-unix.rst

View File

@ -6,17 +6,15 @@
Installing the pre-requirements Installing the pre-requirements
------------------------------- -------------------------------
Red Hat Enterprise Linux (RHEL) 9 and its derivatives have all required packages available in official repositories. Red Hat Enterprise Linux (RHEL) 9.2-9.x and its derivatives have all required packages available in official repositories.
Install them with dnf: Install them with dnf:
.. TODO: Use Python 3.11 once RHEL 9.0 goes EOL in 2024.
.. prompt:: bash .. prompt:: bash
sudo dnf -y install python39 python3-devel git java-17-openjdk-headless @development nano sudo dnf -y install python3.11 python3.11-devel git java-17-openjdk-headless @development nano
.. Include common instructions: .. Include common instructions:
.. include:: _includes/create-env-with-venv3.9.rst .. include:: _includes/create-env-with-venv3.11.rst
.. include:: _includes/install-and-setup-red-unix.rst .. include:: _includes/install-and-setup-red-unix.rst

View File

@ -1,27 +0,0 @@
----------------------------
Installing Python with pyenv
----------------------------
On distributions where Python 3.9 needs to be compiled from source, we recommend the use of pyenv.
This simplifies the compilation process and has the added bonus of simplifying setting up Red in a
virtual environment.
.. include:: _includes/_install-pyenv-and-setup-path.rst
.. prompt:: bash
CONFIGURE_OPTS=--enable-optimizations pyenv install 3.9.18 -v
This may take a long time to complete, depending on your hardware. For some machines (such as
Raspberry Pis and micro-tier VPSes), it may take over an hour; in this case, you may wish to remove
the ``CONFIGURE_OPTS=--enable-optimizations`` part from the front of the command, which will
drastically reduce the install time. However, be aware that this will make Python run about 10%
slower.
After that is finished, run:
.. prompt:: bash
pyenv global 3.9.18
Pyenv is now installed and your system should be configured to run Python 3.9.

View File

@ -18,20 +18,20 @@ Install the pre-requirements with pacman:
sudo pacman -Syu git jre17-openjdk-headless base-devel nano sudo pacman -Syu git jre17-openjdk-headless base-devel nano
On Arch Linux, Python 3.10 can be installed from the Arch User Repository (AUR) from the ``python310`` package. On Arch Linux, Python 3.11 can be installed from the Arch User Repository (AUR) from the ``python311`` package.
The manual build process is the Arch-supported install method for AUR packages. You can install ``python310`` package with the following commands: The manual build process is the Arch-supported install method for AUR packages. You can install ``python311`` package with the following commands:
.. prompt:: bash .. prompt:: bash
git clone https://aur.archlinux.org/python310.git /tmp/python310 git clone https://aur.archlinux.org/python311.git /tmp/python311
cd /tmp/python310 cd /tmp/python311
makepkg -sicL makepkg -sicL
cd - cd -
rm -rf /tmp/python310 rm -rf /tmp/python311
.. Include common instructions: .. Include common instructions:
.. include:: _includes/create-env-with-venv3.10.rst .. include:: _includes/create-env-with-venv3.11.rst
.. include:: _includes/install-and-setup-red-unix.rst .. include:: _includes/install-and-setup-red-unix.rst

View File

@ -1,46 +0,0 @@
.. _install-centos-7:
==========================
Installing Red on CentOS 7
==========================
.. include:: _includes/supported-arch-x64+aarch64.rst
.. include:: _includes/linux-preamble.rst
-------------------------------
Installing the pre-requirements
-------------------------------
Install the pre-requirements with yum:
.. prompt:: bash
sudo yum -y groupinstall development
sudo yum -y install gcc zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel tk-devel libffi-devel xz-devel java-11-openjdk-headless nano git
In order to install gcc 8, we'll use SCL repository:
.. prompt:: bash
sudo yum -y install centos-release-scl
sudo yum -y install devtoolset-8-gcc devtoolset-8-gcc-c++
echo "source scl_source enable devtoolset-8" >> ~/.bashrc
source ~/.bashrc
In order to install Git 2.11 or greater, we recommend adding the IUS repository:
.. prompt:: bash
sudo yum -y install https://repo.ius.io/ius-release-el7.rpm
sudo yum -y swap git git236
.. Include common instructions:
.. Python 3.10 requires OpenSSL 1.1.1 which CentOS 7 doesn't provide in base repository.
.. include:: _includes/install-python39-pyenv.rst
.. include:: _includes/create-env-with-pyenv-virtualenv.rst
.. include:: _includes/install-and-setup-red-unix.rst

View File

@ -1,7 +0,0 @@
.. _install-centos-stream-8:
=================================
Installing Red on CentOS Stream 8
=================================
.. include:: _includes/install-guide-rhel8-derivatives.rst

View File

@ -12,7 +12,7 @@ Installing Red on Fedora Linux
Installing the pre-requirements Installing the pre-requirements
------------------------------- -------------------------------
Fedora Linux 38 and above has all required packages available in official repositories. Install Fedora Linux 39 and above has all required packages available in official repositories. Install
them with dnf: them with dnf:
.. prompt:: bash .. prompt:: bash

View File

@ -17,8 +17,6 @@ we recommend **Ubuntu 24.04 LTS**.
alma-linux-9 alma-linux-9
amazon-linux-2023 amazon-linux-2023
arch arch
centos-7
centos-stream-8
centos-stream-9 centos-stream-9
debian-11 debian-11
debian-12 debian-12

View File

@ -1,7 +1,7 @@
.. _install-rhel-8: .. _install-rhel-8:
========================================================= =========================================================
Installing Red on Red Hat Enterprise Linux (RHEL) 8.6-8.x Installing Red on Red Hat Enterprise Linux (RHEL) 8.8-8.x
========================================================= =========================================================
.. include:: _includes/install-guide-rhel8-derivatives.rst .. include:: _includes/install-guide-rhel8-derivatives.rst

View File

@ -1,7 +1,7 @@
.. _install-rhel-9: .. _install-rhel-9:
=================================================== =========================================================
Installing Red on Red Hat Enterprise Linux (RHEL) 9 Installing Red on Red Hat Enterprise Linux (RHEL) 9.2-9.x
=================================================== =========================================================
.. include:: _includes/install-guide-rhel9-derivatives.rst .. include:: _includes/install-guide-rhel9-derivatives.rst

View File

@ -66,11 +66,6 @@ If you have Red 3.5.0 or newer, you can upgrade by following these steps:
source ~/redenv/bin/activate source ~/redenv/bin/activate
If you used ``pyenv`` for your virtual environment, use:
.. prompt:: bash
pyenv shell <name>
#. Update Red with this command: #. Update Red with this command:
.. prompt:: bash .. prompt:: bash
@ -138,11 +133,6 @@ If you have a Red version between 3.2.0 and 3.4.19, you can upgrade by following
source ~/redenv/bin/activate source ~/redenv/bin/activate
If you used ``pyenv`` for your virtual environment, use:
.. prompt:: bash
pyenv shell <name>
#. Update Red with this command: #. Update Red with this command:
.. prompt:: bash .. prompt:: bash

View File

@ -50,7 +50,7 @@ their end-of-life date.
================================ ======================= ============================================================ ================================ ======================= ============================================================
Operating system version Supported architectures Ideally supported until Operating system version Supported architectures Ideally supported until
================================ ======================= ============================================================ ================================ ======================= ============================================================
Windows 10 x86-64 `End/Retirement Date <https://docs.microsoft.com/en-us/lifecycle/products/windows-10-home-and-pro>`__ Windows 10 x86-64 2025-10-14 (`End/Retirement Date <https://docs.microsoft.com/en-us/lifecycle/products/windows-10-home-and-pro>`__)
Windows 11 x86-64 `Retirement Date <https://docs.microsoft.com/en-us/lifecycle/products/windows-11-home-and-pro-version-21h2>`__ Windows 11 x86-64 `Retirement Date <https://docs.microsoft.com/en-us/lifecycle/products/windows-11-home-and-pro-version-21h2>`__
macOS 12 (Monterey) x86-64, aarch64 ~2024-10 macOS 12 (Monterey) x86-64, aarch64 ~2024-10
macOS 13 (Ventura) x86-64, aarch64 ~2025-10 macOS 13 (Ventura) x86-64, aarch64 ~2025-10
@ -59,12 +59,9 @@ Alma Linux 8 x86-64, aarch64 2029-05-31 (`How lo
Alma Linux 9 x86-64, aarch64 2032-05-31 Alma Linux 9 x86-64, aarch64 2032-05-31
Amazon Linux 2023 x86-64, aarch64 2028-03-15 (`end-of-life <https://docs.aws.amazon.com/linux/al2023/release-notes/support-info-by-support-statement.html#support-info-by-support-statement-eol>`__) Amazon Linux 2023 x86-64, aarch64 2028-03-15 (`end-of-life <https://docs.aws.amazon.com/linux/al2023/release-notes/support-info-by-support-statement.html#support-info-by-support-statement-eol>`__)
Arch Linux x86-64 forever (support is only provided for an up-to-date system) Arch Linux x86-64 forever (support is only provided for an up-to-date system)
CentOS 7 x86-64, aarch64 2024-06-30 (`end of Maintenance Updates <https://wiki.centos.org/About/Product>`__)
CentOS Stream 8 x86-64, aarch64 2024-05-31 (`end of Maintenance Updates <https://wiki.centos.org/About/Product>`__)
CentOS Stream 9 x86-64, aarch64 2027-05-31 (`expected EOL <https://centos.org/stream9/#timeline>`__) CentOS Stream 9 x86-64, aarch64 2027-05-31 (`expected EOL <https://centos.org/stream9/#timeline>`__)
Debian 11 Bullseye x86-64, aarch64, armv7l ~2024-07 (`End of life <https://wiki.debian.org/DebianReleases#Production_Releases>`__) Debian 11 Bullseye x86-64, aarch64, armv7l ~2024-07 (`End of life <https://wiki.debian.org/DebianReleases#Production_Releases>`__)
Debian 12 Bookworm x86-64, aarch64, armv7l ~2026-09 (`End of life <https://wiki.debian.org/DebianReleases#Production_Releases>`__) Debian 12 Bookworm x86-64, aarch64, armv7l ~2026-09 (`End of life <https://wiki.debian.org/DebianReleases#Production_Releases>`__)
Fedora Linux 38 x86-64, aarch64 2024-05-14 (`End of Life <https://docs.fedoraproject.org/en-US/releases/lifecycle/#_maintenance_schedule>`__)
Fedora Linux 39 x86-64, aarch64 2024-11-12 (`End of Life <https://docs.fedoraproject.org/en-US/releases/lifecycle/#_maintenance_schedule>`__) Fedora Linux 39 x86-64, aarch64 2024-11-12 (`End of Life <https://docs.fedoraproject.org/en-US/releases/lifecycle/#_maintenance_schedule>`__)
Fedora Linux 40 x86-64, aarch64 2025-05-13 (`End of Life <https://docs.fedoraproject.org/en-US/releases/lifecycle/#_maintenance_schedule>`__) Fedora Linux 40 x86-64, aarch64 2025-05-13 (`End of Life <https://docs.fedoraproject.org/en-US/releases/lifecycle/#_maintenance_schedule>`__)
openSUSE Leap 15.5 x86-64, aarch64 2024-12-31 (`end of maintenance life cycle <https://en.opensuse.org/Lifetime#openSUSE_Leap>`__) openSUSE Leap 15.5 x86-64, aarch64 2024-12-31 (`end of maintenance life cycle <https://en.opensuse.org/Lifetime#openSUSE_Leap>`__)
@ -74,11 +71,11 @@ Oracle Linux 9 x86-64, aarch64 2032-06-31 (`End of
Raspberry Pi OS (Legacy) 11 armv7l ~2025-10 (approximate date of release of Raspberry Pi OS 13) Raspberry Pi OS (Legacy) 11 armv7l ~2025-10 (approximate date of release of Raspberry Pi OS 13)
Raspberry Pi OS 12 aarch64, armv7l ~2025-10 (approximate date of release of Raspberry Pi OS 13) Raspberry Pi OS 12 aarch64, armv7l ~2025-10 (approximate date of release of Raspberry Pi OS 13)
RHEL 8 (latest) x86-64, aarch64 2029-05-31 (`End of Maintenance Support <https://access.redhat.com/support/policy/updates/errata#Life_Cycle_Dates>`__) RHEL 8 (latest) x86-64, aarch64 2029-05-31 (`End of Maintenance Support <https://access.redhat.com/support/policy/updates/errata#Life_Cycle_Dates>`__)
RHEL 8.6 x86-64, aarch64 2024-05-31 (`End of Extended Update Support <https://access.redhat.com/support/policy/updates/errata#Extended_Update_Support>`__)
RHEL 8.8 x86-64, aarch64 2025-05-31 (`End of Extended Update Support <https://access.redhat.com/support/policy/updates/errata#Extended_Update_Support>`__) RHEL 8.8 x86-64, aarch64 2025-05-31 (`End of Extended Update Support <https://access.redhat.com/support/policy/updates/errata#Extended_Update_Support>`__)
RHEL 8.10 x86-64, aarch64 2029-05-31 (`End of Extended Update Support <https://access.redhat.com/support/policy/updates/errata#Extended_Update_Support>`__)
RHEL 9 (latest) x86-64, aarch64 2032-05-31 (`End of Maintenance Support <https://access.redhat.com/support/policy/updates/errata#Life_Cycle_Dates>`__) RHEL 9 (latest) x86-64, aarch64 2032-05-31 (`End of Maintenance Support <https://access.redhat.com/support/policy/updates/errata#Life_Cycle_Dates>`__)
RHEL 9.0 x86-64, aarch64 2024-05-31 (`End of Extended Update Support <https://access.redhat.com/support/policy/updates/errata#Extended_Update_Support>`__)
RHEL 9.2 x86-64, aarch64 2025-05-31 (`End of Extended Update Support <https://access.redhat.com/support/policy/updates/errata#Extended_Update_Support>`__) RHEL 9.2 x86-64, aarch64 2025-05-31 (`End of Extended Update Support <https://access.redhat.com/support/policy/updates/errata#Extended_Update_Support>`__)
RHEL 9.4 x86-64, aarch64 2026-04-30 (`End of Extended Update Support <https://access.redhat.com/support/policy/updates/errata#Extended_Update_Support>`__)
Rocky Linux 8 x86-64, aarch64 2029-05-31 (`end-of-life <https://rockylinux.org/download/>`__) Rocky Linux 8 x86-64, aarch64 2029-05-31 (`end-of-life <https://rockylinux.org/download/>`__)
Rocky Linux 9 x86-64, aarch64 2032-05-31 (`end-of-life <https://rockylinux.org/download/>`__) Rocky Linux 9 x86-64, aarch64 2032-05-31 (`end-of-life <https://rockylinux.org/download/>`__)
Ubuntu 20.04 LTS x86-64, aarch64 2025-06-30 (`End of Standard Support <https://wiki.ubuntu.com/Releases#Current>`__) Ubuntu 20.04 LTS x86-64, aarch64 2025-06-30 (`End of Standard Support <https://wiki.ubuntu.com/Releases#Current>`__)