discontinue old Ubuntu 18.04 LTS, e.g. it cannot build documentation "prog-prove";
--- a/Admin/cronjob/README Mon Apr 05 22:45:01 2021 +0200
+++ b/Admin/cronjob/README Mon Apr 05 22:46:41 2021 +0200
@@ -21,7 +21,7 @@
Build Log Database Server
=========================
-- Ubuntu 18.04 LTS Linux Server standard installation
+- Ubuntu 20.04 LTS Linux Server standard installation
https://help.ubuntu.com/lts/serverguide
- apt install unattended-upgrades
--- a/src/Doc/System/Misc.thy Mon Apr 05 22:45:01 2021 +0200
+++ b/src/Doc/System/Misc.thy Mon Apr 05 22:46:41 2021 +0200
@@ -77,7 +77,7 @@
of \<^verbatim>\<open>apt-get install\<close> within the underlying Linux distribution.
Option \<^verbatim>\<open>-P\<close> refers to high-level package collections: \<^verbatim>\<open>X11\<close> or \<^verbatim>\<open>latex\<close> as
- provided by \<^verbatim>\<open>isabelle build_docker\<close> (assuming Ubuntu 18.04 LTS). This
+ provided by \<^verbatim>\<open>isabelle build_docker\<close> (assuming Ubuntu 20.04 LTS). This
imposes extra weight on the resulting Docker images. Note that \<^verbatim>\<open>X11\<close> will
only provide remote X11 support according to the modest GUI quality
standards of the late 1990-ies.
--- a/src/Doc/System/Phabricator.thy Mon Apr 05 22:45:01 2021 +0200
+++ b/src/Doc/System/Phabricator.thy Mon Apr 05 22:46:41 2021 +0200
@@ -63,7 +63,7 @@
section \<open>Quick start\<close>
text \<open>
- The starting point is a fresh installation of \<^bold>\<open>Ubuntu 18.04 or 20.04
+ The starting point is a fresh installation of \<^bold>\<open>Ubuntu 20.04
LTS\<close>\<^footnote>\<open>\<^url>\<open>https://ubuntu.com/download\<close>\<close>: this version is mandatory due to
subtle dependencies on system packages and configuration that is assumed by
the Isabelle setup tool.
@@ -233,7 +233,7 @@
@{verbatim [display] \<open> systemctl reload apache2\<close>}
\<^item> Install \<^verbatim>\<open>certbot\<close> from \<^url>\<open>https://certbot.eff.org\<close> following the
- description for Apache and Ubuntu 18.04 or 20.04 on
+ description for Apache and Ubuntu 20.04 on
\<^url>\<open>https://certbot.eff.org/lets-encrypt/ubuntubionic-apache\<close>. Run
\<^verbatim>\<open>certbot\<close> interactively and let it operate on the domain
\<^verbatim>\<open>vcs.example.org\<close>.
@@ -390,7 +390,7 @@
text \<open>
The @{tool_def phabricator_setup} tool installs a fresh Phabricator instance
- on Ubuntu 18.04 or 20.04 LTS:
+ on Ubuntu 20.04 LTS:
@{verbatim [display] \<open>Usage: isabelle phabricator_setup [OPTIONS]
Options are:
@@ -428,9 +428,9 @@
Option \<^verbatim>\<open>-M:\<close> installs a standard Mercurial release from source --- the one
that is used by the Phabricator hosting service
\<^url>\<open>https://admin.phacility.com\<close>. This avoids various problems with the
- package provided by Ubuntu 18.04 or 20.04. Alternatively, an explicit file
- path or URL the source archive (\<^verbatim>\<open>.tar.gz\<close>) may be given here. This option
- is recommended for production use, but it requires to \<^emph>\<open>uninstall\<close> existing
+ package provided by Ubuntu 20.04. Alternatively, an explicit file path or
+ URL the source archive (\<^verbatim>\<open>.tar.gz\<close>) may be given here. This option is
+ recommended for production use, but it requires to \<^emph>\<open>uninstall\<close> existing
Mercurial packages provided by the operating system.
Option \<^verbatim>\<open>-n\<close> provides an alternative installation name. The default name
--- a/src/Pure/System/linux.scala Mon Apr 05 22:45:01 2021 +0200
+++ b/src/Pure/System/linux.scala Mon Apr 05 22:46:41 2021 +0200
@@ -45,7 +45,6 @@
override def toString: String = description
def is_ubuntu: Boolean = id == "Ubuntu"
- def is_ubuntu_18_04: Boolean = is_ubuntu && release == "18.04"
def is_ubuntu_20_04: Boolean = is_ubuntu && release == "20.04"
}
--- a/src/Pure/Tools/phabricator.scala Mon Apr 05 22:45:01 2021 +0200
+++ b/src/Pure/Tools/phabricator.scala Mon Apr 05 22:46:41 2021 +0200
@@ -21,31 +21,22 @@
/* required packages */
- val packages_ubuntu_18_04: List[String] =
+ val packages_ubuntu_20_04: List[String] =
Build_Docker.packages :::
List(
// https://secure.phabricator.com/source/phabricator/browse/master/scripts/install/install_ubuntu.sh 15e6e2adea61
"git", "mysql-server", "apache2", "libapache2-mod-php", "php", "php-mysql",
"php-gd", "php-curl", "php-apcu", "php-cli", "php-json", "php-mbstring",
// more packages
- "php-xml", "php-zip", "python-pygments", "ssh", "subversion", "python-pygments",
+ "php-xml", "php-zip", "python3-pygments", "ssh", "subversion", "python-pygments",
// mercurial build packages
- "make", "gcc", "python", "python-dev", "python-docutils", "python-openssl")
-
- val packages_ubuntu_20_04: List[String] =
- packages_ubuntu_18_04.map(
- {
- case "python-pygments" => "python3-pygments"
- case "python-dev" => "python2-dev"
- case name => name
- })
+ "make", "gcc", "python", "python2-dev", "python-docutils", "python-openssl")
def packages: List[String] =
{
val release = Linux.Release()
- if (release.is_ubuntu_18_04) packages_ubuntu_18_04
- else if (release.is_ubuntu_20_04) packages_ubuntu_20_04
- else error("Bad Linux version: expected Ubuntu 18.04 or 20.04 LTS")
+ if (release.is_ubuntu_20_04) packages_ubuntu_20_04
+ else error("Bad Linux version: expected Ubuntu 20.04 LTS")
}