Commit Graph

8 Commits

Author SHA1 Message Date
Jordan Rose
0b9a142268 Make Desktop Linux build reproducible, like the Java/Android build
These docker settings have been copied over from how Signal-Desktop
itself builds reproducibly.
2025-01-14 12:19:17 -08:00
Jordan Rose
d0b1821888 node: Upload dump_syms output to releases instead of raw debug info 2024-07-19 16:19:53 -07:00
Jordan Rose
db18a102f2 Use Docker's ADD command for remote resources 2024-06-21 11:35:08 -07:00
Jordan Rose
e2106b6184 Node: The prebuild Docker image only works as an x86_64 guest 2024-01-10 17:16:11 -08:00
Jordan Rose
90bbc3b156 Install git in the Node Dockerfile to satisfy boring-sys
boring-sys expects git to be present to apply patches, even though we
don't actually have any patches to apply.
2023-10-18 09:50:17 -07:00
moiseev-signal
840a1906c7 Update prost to version 0.12 2023-09-20 14:00:54 -07:00
Jordan Rose
8a2bdc758d node: Use Debian Bullseye (base of Ubuntu 20.04) for Docker prebuilds
Signal Desktop only supports Ubuntu 20.04 and newer, so we no longer
need to build against Ubuntu 16.04 to ensure compatibility. And
bullseye-slim is a smaller base image than the Ubuntu images, so if we
don't specifically need an Ubuntu package this should be an easy
improvement.
2023-07-19 14:18:15 -07:00
Jordan Rose
eff149b398 GitHub: Build Ubuntu Node releases using Docker, for Ubuntu 16 compat
The only supported way to target an older glibc is to build against
that glibc; consequently, we need to build on an Ubuntu 16 system (or
similar) to target Ubuntu 16. This requires downloading second-party
versions of Clang and CMake, which are too old in the default Ubuntu
repository, as well as building our own Python.

Do all this in a new Dockerfile based on Ubuntu 16.04. This isn't as
rigorous as the Java "reproducible build" Dockerfile, since we're not
pinning the base image or the repositories we're fetching from, but
it's still an image with the environment and tools we need.
2022-08-01 15:59:29 -07:00