The macOS 11 and 12 CIs were failing in the jobs for building the docs, because the brew install command for mactex-nogui was not finding the URL for the tarfile to download. This was probably because the formulae (package info) was outdated and needed to be updated. Since then, macOS 12 started working -- likely that GitHub had created a new image for that VM, which had a more recent list of brew packages.
For Ubuntu, we run apt-get update before running apt-get install, to ensure that we have the latest info. This PR does the same for brew, plus adds one place that was missing for apt-get (in the Toooba test, which has the install command in the yaml and not in a shell script that gets called).
One thing to note is that, by updating the formulae, we may cause brew to install new dependencies (for the new package to be installed) if those have new versions. This is fine for macOS 12 and 13, for which brew has pre-built binaries that are downloaded; but for macOS 11, which brew no longer supports in that way, the packages must be built from source, which can take a long time. I've increased the timeout for macOS jobs by 60 minutes, to account for the increase in time.
It could be worth investigating whether the source builds could be cached and reused (as long as the VM image identifier is still the same).
The macOS 11 and 12 CIs were failing in the jobs for building the docs, because the
brew install
command formactex-nogui
was not finding the URL for the tarfile to download. This was probably because the formulae (package info) was outdated and needed to be updated. Since then, macOS 12 started working -- likely that GitHub had created a new image for that VM, which had a more recent list of brew packages.For Ubuntu, we run
apt-get update
before runningapt-get install
, to ensure that we have the latest info. This PR does the same forbrew
, plus adds one place that was missing forapt-get
(in the Toooba test, which has the install command in the yaml and not in a shell script that gets called).One thing to note is that, by updating the formulae, we may cause
brew
to install new dependencies (for the new package to be installed) if those have new versions. This is fine for macOS 12 and 13, for whichbrew
has pre-built binaries that are downloaded; but for macOS 11, whichbrew
no longer supports in that way, the packages must be built from source, which can take a long time. I've increased the timeout for macOS jobs by 60 minutes, to account for the increase in time.It could be worth investigating whether the source builds could be cached and reused (as long as the VM image identifier is still the same).