mirror of https://github.com/zulip/zulip.git
install: Support Ubuntu 24.04.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
This commit is contained in:
parent
59b0548433
commit
066ea3ebf9
|
@ -145,6 +145,11 @@ jobs:
|
|||
os: jammy
|
||||
extra-args: ""
|
||||
|
||||
- docker_image: zulip/ci:noble
|
||||
name: Ubuntu 24.04 production install
|
||||
os: noble
|
||||
extra-args: ""
|
||||
|
||||
- docker_image: zulip/ci:bullseye
|
||||
name: Debian 11 production install with custom db name and user
|
||||
os: bullseye
|
||||
|
|
|
@ -54,6 +54,12 @@ jobs:
|
|||
os: bookworm
|
||||
include_documentation_tests: false
|
||||
include_frontend_tests: false
|
||||
# Ubuntu 24.04 ships with Python 3.12.2.
|
||||
- docker_image: zulip/ci:noble
|
||||
name: Ubuntu 24.04 (Python 3.12, backend)
|
||||
os: noble
|
||||
include_documentation_tests: false
|
||||
include_frontend_tests: false
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
name: ${{ matrix.name }}
|
||||
|
|
|
@ -19,7 +19,7 @@ One can install the Zulip development environment directly on a Linux
|
|||
host by following these instructions. Currently supported platforms
|
||||
are:
|
||||
|
||||
- Ubuntu 20.04, 22.04
|
||||
- Ubuntu 20.04, 22.04, 24.04
|
||||
- Debian 11, 12
|
||||
- CentOS 7 (beta)
|
||||
- Fedora 38 (beta)
|
||||
|
|
|
@ -50,7 +50,7 @@ a proxy to access the internet.)
|
|||
- **All**: 2GB available RAM, Active broadband internet connection,
|
||||
[GitHub account](#step-0-set-up-git--github).
|
||||
- **macOS**: macOS (10.11 El Capitan or newer recommended)
|
||||
- **Ubuntu LTS**: 20.04 or 22.04
|
||||
- **Ubuntu LTS**: 20.04, 22.04, or 24.04
|
||||
- **Debian**: 11 or 12
|
||||
- **Fedora**: tested for 36
|
||||
- **Windows**: Windows 64-bit (Windows 10 recommended), hardware
|
||||
|
|
|
@ -6,6 +6,7 @@ To run a Zulip server, you will need:
|
|||
- A supported OS:
|
||||
- Ubuntu 20.04
|
||||
- Ubuntu 22.04
|
||||
- Ubuntu 24.04
|
||||
- Debian 11
|
||||
- Debian 12
|
||||
- A supported CPU architecture:
|
||||
|
@ -37,7 +38,7 @@ on issues you'll encounter](install-existing-server.md).
|
|||
|
||||
#### Operating system
|
||||
|
||||
Ubuntu 20.04, Ubuntu 22.04, Debian 11, and Debian 12
|
||||
Ubuntu 20.04, Ubuntu 22.04, Ubuntu 24.04, Debian 11, and Debian 12
|
||||
are supported for running Zulip in production. You can also
|
||||
run Zulip on other platforms that support Docker using
|
||||
[docker-zulip][docker-zulip-homepage].
|
||||
|
|
|
@ -231,7 +231,7 @@ if [ -f /etc/os-release ]; then
|
|||
fi
|
||||
|
||||
case "$os_id $os_version_id" in
|
||||
'debian 11' | 'debian 12' | 'ubuntu 20.04' | 'ubuntu 22.04') ;;
|
||||
'debian 11' | 'debian 12' | 'ubuntu 20.04' | 'ubuntu 22.04' | 'ubuntu 24.04') ;;
|
||||
*)
|
||||
system_requirements_failure <<EOF
|
||||
Unsupported OS release: $os_id $os_version_id
|
||||
|
@ -241,6 +241,7 @@ Zulip in production is supported only on:
|
|||
- Debian 12
|
||||
- Ubuntu 20.04 LTS
|
||||
- Ubuntu 22.04 LTS
|
||||
- Ubuntu 24.04 LTS
|
||||
EOF
|
||||
;;
|
||||
esac
|
||||
|
|
|
@ -28,6 +28,11 @@ if [[ ! -e /usr/share/doc/groonga-apt-source/copyright ]]; then
|
|||
read -r release
|
||||
} <<<"$os_info"
|
||||
|
||||
if [ "$distribution" = ubuntu ] && [ "$release" = noble ]; then
|
||||
# PGroonga binaries are not yet provided for Ubuntu 24.04.
|
||||
exit
|
||||
fi
|
||||
|
||||
if [ "$distribution" = debian ] && [ "$release" = bookworm ]; then
|
||||
# As of Debian 12, the Groonga repository depends on the
|
||||
# Apache Arrow repository.
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
deb http://apt.postgresql.org/pub/repos/apt/ noble-pgdg main
|
||||
deb-src http://apt.postgresql.org/pub/repos/apt/ noble-pgdg main
|
|
@ -3,5 +3,6 @@ set -eux
|
|||
cd "$(dirname "${BASH_SOURCE[0]}")"
|
||||
docker build . --build-arg=BASE_IMAGE=ubuntu:20.04 --pull --tag=zulip/ci:focal
|
||||
docker build . --build-arg=BASE_IMAGE=ubuntu:22.04 --pull --tag=zulip/ci:jammy
|
||||
docker build . --build-arg=BASE_IMAGE=ubuntu:24.04 --pull --tag=zulip/ci:noble
|
||||
docker build . --build-arg=BASE_IMAGE=debian:11 --pull --tag=zulip/ci:bullseye
|
||||
docker build . --build-arg=BASE_IMAGE=debian:12 --pull --tag=zulip/ci:bookworm
|
||||
|
|
|
@ -86,6 +86,8 @@ elif vendor == "ubuntu" and os_version == "21.10": # impish
|
|||
POSTGRESQL_VERSION = "13"
|
||||
elif vendor == "ubuntu" and os_version == "22.04": # jammy
|
||||
POSTGRESQL_VERSION = "14"
|
||||
elif vendor == "ubuntu" and os_version == "24.04": # noble
|
||||
POSTGRESQL_VERSION = "16"
|
||||
elif vendor == "neon" and os_version == "20.04": # KDE Neon
|
||||
POSTGRESQL_VERSION = "12"
|
||||
elif vendor == "fedora" and os_version == "38":
|
||||
|
@ -126,11 +128,8 @@ UBUNTU_COMMON_APT_DEPENDENCIES = [
|
|||
"default-jre-headless", # Required by vnu-jar
|
||||
# Puppeteer dependencies from here
|
||||
"fonts-freefont-ttf",
|
||||
"gconf-service",
|
||||
"libappindicator1",
|
||||
"libatk-bridge2.0-0",
|
||||
"libgbm1",
|
||||
"libgconf-2-4",
|
||||
"libgtk-3-0",
|
||||
"libx11-xcb1",
|
||||
"libxcb-dri3-0",
|
||||
|
@ -160,7 +159,7 @@ COMMON_YUM_DEPENDENCIES = [
|
|||
|
||||
BUILD_GROONGA_FROM_SOURCE = False
|
||||
BUILD_PGROONGA_FROM_SOURCE = False
|
||||
if (vendor == "debian" and os_version in []) or (vendor == "ubuntu" and os_version in []):
|
||||
if (vendor == "debian" and os_version in []) or (vendor == "ubuntu" and os_version in ["24.04"]):
|
||||
# For platforms without a PGroonga release, we need to build it
|
||||
# from source.
|
||||
BUILD_PGROONGA_FROM_SOURCE = True
|
||||
|
@ -176,14 +175,6 @@ if (vendor == "debian" and os_version in []) or (vendor == "ubuntu" and os_versi
|
|||
]
|
||||
elif "debian" in os_families():
|
||||
DEBIAN_DEPENDENCIES = UBUNTU_COMMON_APT_DEPENDENCIES
|
||||
# The below condition is required since libappindicator is
|
||||
# not available for Debian 11. "libgroonga1" is an
|
||||
# additional dependency for postgresql-13-pgdg-pgroonga.
|
||||
#
|
||||
# See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=895037
|
||||
if vendor == "debian":
|
||||
DEBIAN_DEPENDENCIES.remove("libappindicator1")
|
||||
DEBIAN_DEPENDENCIES.append("libgroonga0")
|
||||
|
||||
# If we are on an aarch64 processor, ninja will be built from source,
|
||||
# so cmake is required
|
||||
|
|
Loading…
Reference in New Issue