diff -r 289ded3c342f -r 6fbda9453c1b src/Pure/Tools/phabricator.scala --- a/src/Pure/Tools/phabricator.scala Sat Jan 04 16:22:05 2025 +0100 +++ b/src/Pure/Tools/phabricator.scala Sat Jan 04 20:59:41 2025 +0100 @@ -42,12 +42,24 @@ // mercurial build packages "make", "gcc", "python3", "python3-dev", "python3-docutils") + val packages_ubuntu_24_04: List[String] = + Docker_Build.packages ::: + List( + // https://secure.phabricator.com/source/phabricator/browse/master/scripts/install/install_ubuntu.sh 15e6e2adea61 + "git", "mysql-server", "php", "php-mysql", "php-gd", "php-curl", "php-apcu", "php-cli", + "php-json", "php-mbstring", + // more packages + "php-xml", "php-zip", "python3-pygments", "ssh", "subversion", + // mercurial build packages + "make", "gcc", "gettext", "python3", "python3-dev", "python3-docutils", "python3-setuptools") + def packages(webserver: Webserver): List[String] = { val release = Linux.Release() val pkgs = if (release.is_ubuntu_20_04) packages_ubuntu_20_04 else if (release.is_ubuntu_22_04) packages_ubuntu_22_04 - else error("Bad Linux version: expected Ubuntu 20.04 or 22.04 LTS") + else if (release.is_ubuntu_24_04) packages_ubuntu_24_04 + else error("Bad Linux version: expected Ubuntu 20.04 or 22.04 or 24.04 LTS") pkgs ::: webserver.packages() } @@ -205,7 +217,8 @@ def standard_mercurial_source: String = { val release = Linux.Release() if (release.is_ubuntu_20_04) "https://www.mercurial-scm.org/release/mercurial-3.9.2.tar.gz" - else "https://www.mercurial-scm.org/release/mercurial-6.1.4.tar.gz" + else if (release.is_ubuntu_22_04) "https://www.mercurial-scm.org/release/mercurial-6.1.4.tar.gz" + else "https://www.mercurial-scm.org/release/mercurial-6.8.2.tar.gz" }