diff options
Diffstat (limited to 'gfx/wr/ci-scripts/docker-image')
-rw-r--r-- | gfx/wr/ci-scripts/docker-image/Dockerfile | 9 | ||||
-rwxr-xr-x | gfx/wr/ci-scripts/docker-image/setup.sh | 56 |
2 files changed, 65 insertions, 0 deletions
diff --git a/gfx/wr/ci-scripts/docker-image/Dockerfile b/gfx/wr/ci-scripts/docker-image/Dockerfile new file mode 100644 index 0000000000..3b7805195d --- /dev/null +++ b/gfx/wr/ci-scripts/docker-image/Dockerfile @@ -0,0 +1,9 @@ +FROM debian:bullseye-20221205 + +COPY setup.sh /root +RUN cd /root && ./setup.sh + +RUN useradd -d /home/worker -s /bin/bash -m worker +USER worker +WORKDIR /home/worker +CMD /bin/bash diff --git a/gfx/wr/ci-scripts/docker-image/setup.sh b/gfx/wr/ci-scripts/docker-image/setup.sh new file mode 100755 index 0000000000..ccf36d1be1 --- /dev/null +++ b/gfx/wr/ci-scripts/docker-image/setup.sh @@ -0,0 +1,56 @@ +#!/usr/bin/env bash + +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +set -o errexit +set -o nounset +set -o pipefail +set -o xtrace + +test "$(whoami)" == 'root' + +# Install stuff we need +apt-get -y update +apt-get install -y \ + bison \ + bzip2 \ + cmake \ + curl \ + flex \ + gcc \ + git \ + g++ \ + libfontconfig1-dev \ + libgl1-mesa-dev \ + libx11-dev \ + llvm-dev \ + ninja-build \ + pkg-config \ + python3-pip \ + python3-six \ + python3-setuptools \ + python3-mako \ + software-properties-common \ + clang + +# some reftests fail with freetype >= 2.10, so downgrade to the version in +# Debian buster. See bug 1804782. +apt-get -y remove libfreetype-dev +curl -LO http://snapshot.debian.org/archive/debian/20220718T031307Z/pool/main/f/freetype/libfreetype6_2.9.1-3%2Bdeb10u3_amd64.deb +curl -LO http://snapshot.debian.org/archive/debian/20220718T031307Z/pool/main/f/freetype/libfreetype6-dev_2.9.1-3%2Bdeb10u3_amd64.deb + +dpkg -i libfreetype6*.deb +rm libfreetype6*.deb + +# Other stuff we need + +# Normally, we'd +# pip3 install servo-tidy==0.3.0 +# but the last version of servo-tidy published on pypi doesn't have the +# python3 fixes that are in the servo repo. +git clone -n https://github.com/servo/servo/ +git -C servo checkout 65a4d1646da46c37fe748add6dcf24b62ebb602a +pip3 install servo/python/tidy +rm -rf servo |