If the build system for packages has a umask of `0077`, cloned
repositories will have no permissions for group and other. As the build
scripts for some packages just copy from clone git repos, this will
preserve the permissions in the package and prevent the following
services from startup:
* `bbb-html5`
* `etherpad`
* `bbb-pads`
* `bbb-export-annotations`
* `bbb-rap-*`
This patch grants everyone read permissions to the code in the packages.
yq package is now provided in the BigBlueButton support PPA for BBB 2.5,
so we can depend on the package now. Ensure the dependency is specific
to avoid an incompatible yq version 4 from being installed.
The BBB html5 client is huge and can be compressed easliy. As nginx
already services the static files, it can also handle service gzipped
files.
Ship compressed files with the package.
This resolves an issue where we were building the npm dependencies against Meteor matching Node 12 but were trying to install locally for Node 14.
An additional change to consider could be to include the correct Meteor version in the Dockerfile for BBB but that may mean different images per BBB version.
I also leave here some simple outputs for node, npm and meteor versions, to hopefully allow us to catch such discrepancies more easily in the future